return { "nvim-neo-tree/neo-tree.nvim", cond = not vim.g.vscode, branch = "v2.x", dependencies = { "nvim-lua/plenary.nvim", "nvim-tree/nvim-web-devicons", -- not strictly required, but recommended "MunifTanjim/nui.nvim", }, cmd = "Neotree", init = function() vim.g.neo_tree_remove_legacy_commands = 1 vim.keymap.set("n", "nn", "Neotree reveal reveal_force_cwd") end, config = true, opts = { close_if_last_window = true, use_popups_for_input = false, filesystem = { window = { mappings = { ["Z"] = "expand_all_nodes", [""] = "toggle_node", }, }, filtered_items = { hide_dotfiles = false, }, group_empty_dirs = true, hijack_netrw_behavior = "open_current", }, buffers = { bind_to_cwd = true, follow_current_file = true, group_empty_dirs = true, }, git_status = { group_empty_dirs = true, }, source_selector = { winbar = true, statusline = false, }, }, }