-- You can also add or configure plugins by creating files in this `plugins/` folder -- PLEASE REMOVE THE EXAMPLES YOU HAVE NO INTEREST IN BEFORE ENABLING THIS FILE -- Here are some examples: ---@type LazySpec return { -- == Examples of Adding Plugins == "andweeb/presence.nvim", { "ray-x/lsp_signature.nvim", event = "BufRead", config = function() require("lsp_signature").setup() end, }, -- == Examples of Overriding Plugins == -- customize dashboard options { "folke/snacks.nvim", opts = { dashboard = { preset = { header = table.concat({ " █████ ███████ ████████ ██████ ██████ ", "██ ██ ██ ██ ██ ██ ██ ██", "███████ ███████ ██ ██████ ██ ██", "██ ██ ██ ██ ██ ██ ██ ██", "██ ██ ███████ ██ ██ ██ ██████ ", "", "███  ██ ██  ██ ██ ███  ███", "████  ██ ██  ██ ██ ████  ████", "██ ██  ██ ██  ██ ██ ██ ████ ██", "██  ██ ██  ██  ██  ██ ██  ██  ██", "██   ████   ████   ██ ██      ██", }, "\n"), }, }, }, }, -- You can disable default plugins as follows: { "max397574/better-escape.nvim", enabled = false }, -- You can also easily customize additional setup of plugins that is outside of the plugin's setup call { "L3MON4D3/LuaSnip", keys = { { "", function() local ls = require "luasnip" if ls.choice_active() then ls.change_choice(1) end end, }, }, config = function(plugin, opts) require "astronvim.plugins.configs.luasnip"(plugin, opts) -- include the default astronvim config that calls the setup call -- add more custom luasnip configuration such as filetype extend or custom snippets local ls = require "luasnip" ls.filetype_extend("javascript", { "javascriptreact" }) require("luasnip.loaders.from_lua").load { paths = { "~/.config/snippets/" } } end, }, -- { -- "sagen/blink.cmp", -- opts = { -- sources = { -- providers = { -- cmdline = { -- enabled = function() -- -- ignores cmdline completions when executing shell commands -- return vim.fn.getcmdtype ~= ":" or not vim.fn.getcmdline():match "^[%%0-9,'<>%-]*!" -- end, -- }, -- }, -- }, -- }, -- }, { "windwp/nvim-autopairs", config = function(plugin, opts) require "astronvim.plugins.configs.nvim-autopairs"(plugin, opts) -- include the default astronvim config that calls the setup call -- add more custom autopairs configuration such as custom rules local npairs = require "nvim-autopairs" local Rule = require "nvim-autopairs.rule" local cond = require "nvim-autopairs.conds" npairs.add_rules( { Rule("$", "$", { "tex", "latex" }) -- don't add a pair if the next character is % :with_pair(cond.not_after_regex "%%") -- don't add a pair if the previous character is xxx :with_pair( cond.not_before_regex("xxx", 3) ) -- don't move right when repeat character :with_move(cond.none()) -- don't delete if the next character is xx :with_del(cond.not_after_regex "xx") -- disable adding a newline when you press :with_cr(cond.none()), }, -- disable for .vim files, but it work for another filetypes Rule("a", "a", "-vim") ) end, }, -- { -- "vimwiki/vimwiki", -- event = "BufEnter *.md", -- ft = "md", -- lazy = false, -- keys = { -- { "W", desc = "VimWiki" }, -- { "Ww", "VimwikiIndex", desc = "VimWiki Index" }, -- { "Ws", "VimwikiUISelect", desc = "VimWiki UI Select" }, -- { "Wt", "VimwikiTabIndex", desc = "VimWiki Tab Index" }, -- { "Wi", "VimwikiDiaryIndex", desc = "VimWiki Diary Index" }, -- { "W", desc = "VimWiki Diary" }, -- { "Ww", "VimwikiMakeDiaryNote", desc = "VimWiki Diary: Today" }, -- { "Wt", "VimwikiTabMakeDiaryNote", desc = "VimWiki Diary: Today (Tab)" }, -- { "Wi", "Vimwiki", desc = "VimWiki Diary: Generate Links" }, -- { "Wm", "Vimwiki", desc = "VimWiki Diary: Tomorrow" }, -- { "Wy", "Vimwiki", desc = "VimWiki Diary: Yesterday" }, -- }, -- -- init = function() -- vim.g.vimwiki_list = { { -- path = "~/vimwiki/", -- syntax = "markdown", -- ext = ".md", -- } } -- -- vim.g.vimwiki_ext2syntax = { -- [".md"] = "markdown", -- [".markdown"] = "markdown", -- [".mdown"] = "markdown", -- } -- -- vim.g.vimwiki_global_ext = 0 -- end, -- }, { "kylechui/nvim-surround", version = "*", event = "VeryLazy", -- config = function() -- require("nvim-surround").setup { opts = { keymaps = { normal = ",s", normal_line = "gS", delete = "d,s", visual = ",S", visual_line = ",S", change = "cgs", change_line = "cgS", }, }, -- } -- end, }, { "stevearc/oil.nvim", keys = { { "-", desc = "🛢️Oil toggle", mode = { "n" }, require("oil").toggle_float }, }, }, }