3 "nvim-neo-tree/neo-tree.nvim",
6 "nvim-lua/plenary.nvim",
7 "nvim-tree/nvim-web-devicons", -- you already have this
8 "MunifTanjim/nui.nvim",
12 { "<leader>fe", "<cmd>Neotree toggle left<cr>", desc = "Files (toggle sidebar)" },
13 { "<leader>fE", "<cmd>Neotree reveal left<cr>", desc = "Files (reveal current)" },
14 { "<leader>fgs", "<cmd>Neotree float git_status<cr>", desc = "Git status (float)" },
17 close_if_last_window = true,
18 popup_border_style = "rounded",
19 enable_git_status = true,
20 enable_diagnostics = false,
21 default_component_configs = {
22 indent = { padding = 1 },
23 name = { use_git_status_colors = true },
25 symbols = { unstaged = "●", staged = "✓", untracked = "★", renamed = "➡", deleted = "✖" },
30 hide_dotfiles = false,
31 hide_gitignored = true,
33 follow_current_file = { enabled = true },
34 hijack_netrw_behavior = "open_default",
35 use_libuv_file_watcher = true,
44 ["<cr>"] = "open_with_window_picker",
46 ["v"] = "open_vsplit",
47 ["C"] = "close_all_nodes",
49 ["a"] = { "add", config = { show_path = "relative" } },
52 ["y"] = "copy_to_clipboard",
53 ["x"] = "cut_to_clipboard",
54 ["p"] = "paste_from_clipboard",
57 source_selector = { winbar = true, statusline = false }, -- nice tabs for Files/Git/Buffers
60 -- Optional: open the sidebar when you start in a directory or no file
61 if vim.fn.argc() == 0 then
62 vim.api.nvim_create_autocmd("VimEnter", {
65 vim.cmd("Neotree show left")