-- ============================================================================ -- Neo-tree - File Explorer -- ============================================================================ return { { 'nvim-neo-tree/neo-tree.nvim', version = '*', dependencies = { 'nvim-lua/plenary.nvim', 'nvim-tree/nvim-web-devicons', 'MunifTanjim/nui.nvim', }, cmd = 'Neotree', keys = { { 'e', 'Neotree toggle right', desc = 'Explorer toggle' }, { 'ef', 'Neotree focus filesystem right', desc = 'Explorer focus' }, { 'eb', 'Neotree focus buffers right', desc = 'Explorer buffers' }, { 'eg', 'Neotree focus git_status right', desc = 'Explorer git' }, }, config = function() require('neo-tree').setup({ close_if_last_window = false, popup_border_style = 'rounded', enable_git_status = true, enable_diagnostics = true, default_component_configs = { indent = { indent_size = 2, padding = 1, with_markers = true, indent_marker = '│', last_indent_marker = '└', with_expanders = true, expander_collapsed = '', expander_expanded = '', }, icon = { folder_closed = '', folder_open = '', folder_empty = '󰜌', default = '*', }, modified = { symbol = '[+]', }, git_status = { symbols = { added = '', modified = '', deleted = '✖', renamed = '➜', untracked = '★', ignored = '◌', unstaged = '✗', staged = '✓', conflict = '', } }, }, window = { position = 'right', width = 35, mappings = { [''] = 'none', ['<2-LeftMouse>'] = 'open', [''] = 'open', ['S'] = 'open_split', ['s'] = 'open_vsplit', ['t'] = 'open_tabnew', ['C'] = 'close_node', ['z'] = 'close_all_nodes', ['R'] = 'refresh', ['a'] = { 'add', config = { show_path = 'relative' } }, ['d'] = 'delete', ['r'] = 'rename', ['y'] = 'copy_to_clipboard', ['x'] = 'cut_to_clipboard', ['p'] = 'paste_from_clipboard', ['q'] = 'close_window', ['?'] = 'show_help', } }, filesystem = { filtered_items = { visible = false, hide_dotfiles = false, hide_gitignored = false, hide_by_name = { 'node_modules' }, never_show = { '.DS_Store', }, }, follow_current_file = { enabled = true, leave_dirs_open = false, }, use_libuv_file_watcher = true, }, }) end, }, }