return { -- Autopairs { "windwp/nvim-autopairs", event = "InsertEnter", config = function() require("nvim-autopairs").setup({}) end, }, -- Flash.nvim for navigation { "folke/flash.nvim", event = "VeryLazy", opts = { modes = { search = { enabled = true, }, }, }, keys = { { "s", mode = { "n", "x", "o" }, function() require("flash").jump() end, desc = "Flash" }, { "S", mode = { "n", "x", "o" }, function() require("flash").treesitter() end, desc = "Flash Treesitter" }, { "r", mode = "o", function() require("flash").remote() end, desc = "Remote Flash" }, { "R", mode = { "o", "x" }, function() require("flash").treesitter_search() end, desc = "Treesitter Search" }, { "", mode = { "c" }, function() require("flash").toggle() end, desc = "Toggle Flash Search" }, }, }, -- Surround { "kylechui/nvim-surround", version = "*", event = "VeryLazy", opts = {}, }, -- Folds { "kevinhwang91/nvim-ufo", dependencies = { "kevinhwang91/promise-async" }, event = "BufReadPost", opts = { provider_selector = function() return { "treesitter", "indent" } end, }, keys = { { "zR", function() require("ufo").openAllFolds() end, desc = "Open all folds" }, { "zM", function() require("ufo").closeAllFolds() end, desc = "Close all folds" }, }, }, -- Supermaven inline suggestions (accepted with Tab) { "supermaven-inc/supermaven-nvim", event = "InsertEnter", config = function(_, opts) require("supermaven-nvim").setup(opts) end, opts = { keymaps = { accept_suggestion = "", clear_suggestion = "", accept_word = "", }, disable_keymaps = false, ignore_filetypes = { gitcommit = true }, color = { suggestion_color = vim.api.nvim_get_hl(0, { name = "Comment" }).fg, cterm = 244, }, log_level = "info", disable_inline_completion = false, }, }, }