local key = require("utils.map") local keyopts = key.new_opts return { "nvim-lua/plenary.nvim", { "echasnovski/mini.surround", keys = { "s", { "S", mode = "x" } }, config = function(plugin) require(plugin.name).setup({ silent = true, highlight_duration = 100, search_method = "cover_or_next", }) vim.keymap.set("x", "S", [[:lua MiniSurround.add("visual")]], { silent = true }) end, }, { "stevearc/oil.nvim", init = function(plugin) local arg = vim.fn.argv(0) if vim.fn.isdirectory(arg) > 0 then LAZYLOAD(plugin.name) end end, keys = { "-", "\\", "o" }, config = function() require("plugin.config.oil").setup() end, }, { "ThePrimeagen/harpoon", dependencies = "nvim-lua/plenary.nvim", branch = "harpoon2", lazy = false, -- keys = "m", config = function() local harpoon = require("harpoon") harpoon:setup() --stylua: ignore key.nmap({ { "ma", function() harpoon:list():add() end }, { "mm", function() harpoon.ui:toggle_quick_menu(harpoon:list()) end }, { "", function() harpoon:list():select(1) end }, { "", function() harpoon:list():select(2) end }, { "", function() harpoon:list():select(3) end }, { "", function() harpoon:list():select(4) end }, }) end, }, { "mbbill/undotree", keys = { "uu" }, config = function() local g = vim.g g.undotree_HelpLine = 0 g.undotree_WindowLayout = 2 g.undotree_SplitWidth = 45 g.undotree_SetFocusWhenToggle = 1 key.nmap({ { "uu", "UndotreeToggle" }, }) end, } }