nvim: Restructure lua dir
Moved plugins into individual component module files which are automatically required by lazy.nvim. Should make everything a tiny bit more modular, or at least prepare the way for true modularity if I ever have the time on my hands to ensure everything works with missing modules. Moved core settings into their own directory (`core`), and created a `personal` folder which contains functions/plugins I wrote that do not necessarily have to be their own imported plugin yet. Finally, extended the utility functions a little, so we can detect if a plugin exists and change e.g. key maps based on that (once again, extending modularity a little more). Some simple attempts have been made at that in the `mappings.lua` file, though it is nowhere near extensive yet - most keymaps are still set regardless of plugin availability. However, with this slimmer base to work off of, I feel more confident in changing future things about this setup a little more ad-hoc without having as many ripple repercussions as before.
This commit is contained in:
parent
f343b1a76d
commit
f33b4c9c37
38 changed files with 1221 additions and 908 deletions
73
nvim/.config/nvim/lua/plugins/ide.lua
Normal file
73
nvim/.config/nvim/lua/plugins/ide.lua
Normal file
|
|
@ -0,0 +1,73 @@
|
|||
return {
|
||||
-- vista-like outline view for code
|
||||
{ "simrat39/symbols-outline.nvim", config = true, cmd = "SymbolsOutline" },
|
||||
-- show a signature whenever editing a function or similar
|
||||
{ "ray-x/lsp_signature.nvim", config = true, event = "VeryLazy" },
|
||||
{
|
||||
"junnplus/lsp-setup.nvim",
|
||||
dependencies = {
|
||||
"neovim/nvim-lspconfig",
|
||||
{
|
||||
"williamboman/mason.nvim",
|
||||
cmd = {
|
||||
"Mason",
|
||||
"MasonInstall",
|
||||
"MasonUninstall",
|
||||
"MasonUninstallAll",
|
||||
"MasonLog",
|
||||
"MasonUpdate",
|
||||
},
|
||||
build = ":MasonUpdate",
|
||||
},
|
||||
{
|
||||
"williamboman/mason-lspconfig.nvim",
|
||||
cmd = { "LspInstall", "LspUninstall" },
|
||||
},
|
||||
{
|
||||
"jose-elias-alvarez/null-ls.nvim",
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim",
|
||||
"jay-babu/mason-null-ls.nvim",
|
||||
},
|
||||
event = "VeryLazy",
|
||||
},
|
||||
},
|
||||
event = "BufReadPost",
|
||||
config = function()
|
||||
require("plugins.config.lsp")
|
||||
end,
|
||||
},
|
||||
{
|
||||
"hrsh7th/nvim-cmp",
|
||||
branch = "main",
|
||||
dependencies = {
|
||||
"andersevenrud/cmp-tmux",
|
||||
"cbarrete/completion-vcard",
|
||||
"f3fora/cmp-spell",
|
||||
"hrsh7th/cmp-nvim-lsp",
|
||||
"hrsh7th/cmp-path",
|
||||
"hrsh7th/cmp-buffer",
|
||||
"hrsh7th/cmp-calc",
|
||||
"hrsh7th/cmp-cmdline",
|
||||
"hrsh7th/cmp-nvim-lua",
|
||||
"dmitmel/cmp-digraphs",
|
||||
"jc-doyle/cmp-pandoc-references",
|
||||
"kdheepak/cmp-latex-symbols",
|
||||
"lukas-reineke/cmp-rg",
|
||||
"crispgm/cmp-beancount",
|
||||
"ray-x/cmp-treesitter",
|
||||
"saadparwaiz1/cmp_luasnip",
|
||||
{
|
||||
"L3MON4D3/LuaSnip",
|
||||
dependencies = { "rafamadriz/friendly-snippets" },
|
||||
},
|
||||
},
|
||||
config = function()
|
||||
require("plugins.config.cmp")
|
||||
end,
|
||||
event = { "InsertEnter", "CmdlineEnter", "VeryLazy" },
|
||||
},
|
||||
-- loading animations for some LSP
|
||||
{ "j-hui/fidget.nvim", config = true, tag = "legacy", event = "VeryLazy" },
|
||||
-- a pretend-lsp for formatters and linters
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue