local overrides = require "custom.configs.overrides" local utils = require "core.utils" ---@type NvPluginSpec[] local plugins = { -- Override plugin definition options { "neovim/nvim-lspconfig", config = function() require "plugins.configs.lspconfig" require "custom.configs.lspconfig" end, -- Override to setup mason-lspconfig }, -- override plugin configs { "williamboman/mason.nvim", opts = overrides.mason, }, { "nvim-treesitter/nvim-treesitter", opts = overrides.treesitter, }, { "nvim-tree/nvim-tree.lua", opts = overrides.nvimtree, }, -- Install a plugin { "max397574/better-escape.nvim", event = "InsertEnter", config = function() require("better_escape").setup() end, }, { "stevearc/conform.nvim", -- for users those who want auto-save conform + lazyloading! -- event = "BufWritePre" config = function() require "custom.configs.conform" end, }, { "ggandor/leap.nvim", lazy = false, config = function() require("core.utils").load_mappings "leap" end, }, { "ggandor/flit.nvim", lazy = false, config = function() require("flit").setup { keys = { f = "f", F = "F", t = "t", T = "T" }, -- A string like "nv", "nvo", "o", etc. labeled_modes = "v", multiline = true, -- Like `leap`s similar argument (call-specific overrides). -- E.g.: opts = { equivalence_classes = {} } opts = {}, } end, }, { "kdheepak/lazygit.nvim", lazy = false, keys = { "gg" }, cmd = "LazyGit", -- optional for floating window border decoration dependencies = { "nvim-lua/plenary.nvim", }, init = function() require("core.utils").load_mappings "lazygit" end, }, { "folke/which-key.nvim", keys = { "", "", "", "", '"', "'", "`", "c", "v", "g" }, }, { "echasnovski/mini.trailspace", lazy = false, event = { "BufReadPost", "BufNewFile" }, opts = {} }, } return plugins