return { "nvim-neo-tree/neo-tree.nvim", dependencies = { "nvim-lua/plenary.nvim", "nvim-tree/nvim-web-devicons", "MunifTanjim/nui.nvim" }, cmd = "Neotree", keys = { { "\\", ":Neotree reveal", { desc = "Neotree reveal" }}, }, opts = { filesystem = { window = { mappings = { ["\\"] = "close_window", } } } }, config = function (_, opts) local function on_move(data) Snacks.rename.on_rename_file(data.source, data.destination) end local events = require("neo-tree.events") opts.event_handlers = opts.event_handlers or {} vim.list_extend(opts.event_handlers, { { event = events.FILE_MOVED, handler = on_move }, { event = events.FILE_RENAMED, handler = on_move }, }) require("neo-tree").setup(opts) end }