return { { "LazyVim/LazyVim", opts = { colorscheme = "catppuccin", }, }, { "folke/noice.nvim", opts = function(_, opts) table.insert(opts.routes, { filter = { any = { { event = "notify", find = "No information available" }, { event = "msg_show", find = "fewer lines" }, { event = "msg_show", find = "more lines" }, { event = "lsp", kind = "progress", find = "Checking document", cond = function(message) local client = vim.tbl_get(message.opts, "progress", "client") return client == "ltex" -- skip checking document indicators end, }, }, }, opts = { skip = true }, }) opts.presets.lsp_doc_border = false end, }, { "folke/persistence.nvim", keys = function() -- stylua: ignore return { { "as", function() require("persistence").load() end, desc = "Restore Session", }, { "al", function() require("persistence").load({ last = true }) end, desc = "Restore Last Session", }, { "ad", function() require("persistence").stop() end, desc = "Don't Save Current Session", }, } end, }, { "nvim-neo-tree/neo-tree.nvim", opts = { enable_normal_mode_for_inputs = true, window = { mappings = { ["o"] = "open" } }, }, }, { "NeogitOrg/neogit", dependencies = "nvim-lua/plenary.nvim", opts = { disable_commit_confirmation = true, }, keys = { { "gg", "Neogit kind=replace", desc = "Open Neogit" }, { "gG", "Neogit cwd=%:p:h", desc = "Open Neogit (cwd)" }, }, }, { "ahmedkhalf/project.nvim", opts = { detection_methods = { "pattern" }, }, event = "VeryLazy", config = function(_, opts) require("project_nvim").setup(opts) require("telescope").load_extension("projects") end, keys = { { "fp", "Telescope projects", desc = "Projects" }, }, }, { "stevearc/dressing.nvim", opts = { input = { insert_only = false }, }, }, { "akinsho/toggleterm.nvim", config = true, cmd = "ToggleTerm", keys = { { [[]], "ToggleTerm", desc = "Toggle Terminal" }, }, opts = { -- TODO: Add in keymaps for for toggleterm open_mapping = [[bm", function() harpoon.ui:toggle_quick_menu(harpoon:list()) end, desc = "Open Harpoon Menu", }, { "bb", function() harpoon:list():append() end, desc = "Add To Harpoon", }, { "1", function() harpoon:list():select(1) end }, { "2", function() harpoon:list():select(2) end }, { "3", function() harpoon:list():select(3) end }, { "4", function() harpoon:list():select(4) end }, } end, }, { "windwp/nvim-autopairs", event = "InsertEnter", opts = {}, -- this is equivalent to setup({}) function }, { "NoahTheDuke/vim-just", event = { "BufReadPre", "BufNewFile" }, ft = { "\\cjustfile", "*.just", ".justfile" }, }, }