64 lines
1.9 KiB
Lua
64 lines
1.9 KiB
Lua
-- Neo-tree is a Neovim plugin to browse the file system
|
|
-- https://github.com/nvim-neo-tree/neo-tree.nvim
|
|
|
|
local neotree_helper = require 'custom.plugins.neotree-helper'
|
|
|
|
return {
|
|
'nvim-neo-tree/neo-tree.nvim',
|
|
version = '*',
|
|
dependencies = {
|
|
'nvim-lua/plenary.nvim',
|
|
'nvim-tree/nvim-web-devicons', -- not strictly required, but recommended
|
|
'MunifTanjim/nui.nvim',
|
|
'folke/snacks.nvim', -- optional for image preview
|
|
'saifulapm/neotree-file-nesting-config', -- optional for VSCode like file nesting
|
|
},
|
|
lazy = false,
|
|
keys = {
|
|
-- { '<C-o>', ':Neotree reveal<CR>', desc = 'NeoTree reveal', silent = true },
|
|
},
|
|
opts = {
|
|
hide_root_node = true, -- recommanded config for VSCode like file nesting
|
|
retain_hidden_root_indent = true, -- recommanded config for VSCode like file nesting
|
|
filesystem = {
|
|
filtered_items = {
|
|
show_hidden_count = false, -- recommanded config for VSCode like file nesting
|
|
never_show = { -- recommanded config for VSCode like file nesting
|
|
'.DS_Store',
|
|
},
|
|
},
|
|
window = {
|
|
mappings = {
|
|
['<C-o>'] = {
|
|
'close_window',
|
|
desc = 'close neo-tree',
|
|
},
|
|
['T'] = {
|
|
'trash',
|
|
desc = 'trash file',
|
|
},
|
|
},
|
|
},
|
|
commands = {
|
|
trash = neotree_helper.trash,
|
|
trash_visual = neotree_helper.trash_visual,
|
|
},
|
|
},
|
|
default_component_configs = {
|
|
indent = {
|
|
with_expanders = true,
|
|
expander_collapsed = '',
|
|
expander_expanded = '',
|
|
},
|
|
},
|
|
},
|
|
config = function(_, opts)
|
|
-- Adding rules from plugin
|
|
opts.nesting_rules = require('neotree-file-nesting-config').nesting_rules
|
|
require('neo-tree').setup(opts)
|
|
end,
|
|
}
|
|
|
|
-- The line beneath this is called `modeline`. See `:help modeline`
|
|
-- vim: ts=2 sts=2 sw=2 et
|