local MP = ... do local ok ok, _G.nixInfo = pcall(require, vim.g.nix_info_plugin_name) if not ok then package.loaded[vim.g.nix_info_plugin_name] = setmetatable({}, { __call = function(_, default) return default end, }) _G.nixInfo = require(vim.g.nix_info_plugin_name) end nixInfo.isNix = vim.g.nix_info_plugin_name ~= nil nixInfo.utils = require(MP:relpath("utils")) nixInfo.lze = setmetatable(require("lze"), getmetatable(require("lzextras"))) function nixInfo.get_nix_plugin_path(name) return nixInfo(nil, "plugins", "lazy", name) or nixInfo(nil, "plugins", "start", name) end end nixInfo.lze.register_handlers({ nixInfo.utils.auto_enable_handler, nixInfo.utils.for_cat_handler, nixInfo.lze.lsp, }) nixInfo.lze.h.lsp.set_ft_fallback(nixInfo.utils.lsp_ft_fallback) nixInfo.lze.load({ { import = MP:relpath("plugins") }, { import = MP:relpath("format") }, { import = MP:relpath("lint") }, { import = MP:relpath("LSPs") }, { "base46", lazy = false, auto_enable = true, event = "VimEnter", after = function(_) require("base46").setup() end, }, { "vim-startuptime", auto_enable = true, cmd = { "StartupTime" }, before = function(_) vim.g.startuptime_event_width = 0 vim.g.startuptime_tries = 10 vim.g.startuptime_exe_path = nixInfo(vim.v.progpath, "progpath") end, }, { "mini.surround", auto_enable = true, event = "DeferredUIEnter", after = function(_) require("mini.surround").setup() end, }, { "mini.pick", lazy = true, auto_enable = true, keys = { { "ff", desc = "File finder" }, { "bb", desc = "List open buffers" }, { "sg", desc = "Live grep" }, { "/", desc = "Grep" }, }, after = function(_) require("mini.pick").setup({ vim.keymap.set("n", "ff", "Pick files", { desc = "File finder" }), vim.keymap.set("n", "bb", "Pick buffers", { desc = "List open buffers" }), vim.keymap.set("n", "sg", "Pick grep_live", { desc = "live grep" }), vim.keymap.set("n", "/", "Pick grep", { desc = "Grep" }), }) end, }, }) vim.cmd.colorscheme("matugen")