aboutsummaryrefslogtreecommitdiff
path: root/plugin/40-lsp.lua
diff options
context:
space:
mode:
authorPolesznyák Márk <contact@pml68.dev>2026-04-04 03:16:27 +0200
committerPolesznyák Márk <contact@pml68.dev>2026-04-04 10:12:16 +0200
commit8bb513a86e8bea07fdb8cea71d254d46ffc7806b (patch)
tree745bd411d173e4da9355b214dc74edde08f42692 /plugin/40-lsp.lua
parentfeat: enable ui2, add back LspLog command (diff)
downloadnvim-8bb513a86e8bea07fdb8cea71d254d46ffc7806b.tar.gz
feat!: migrate to vim.pack
Diffstat (limited to '')
-rw-r--r--plugin/40-lsp.lua (renamed from lua/pml68/configs/mason.lua)25
1 files changed, 20 insertions, 5 deletions
diff --git a/lua/pml68/configs/mason.lua b/plugin/40-lsp.lua
index 8635109..af95c47 100644
--- a/lua/pml68/configs/mason.lua
+++ b/plugin/40-lsp.lua
@@ -1,6 +1,5 @@
-return {
+local opts = {
ensure_installed = {
- -- "asm-lsp",
"bash-language-server",
"termux-language-server",
"lua-language-server",
@@ -19,9 +18,6 @@ return {
"kotlin-lsp",
"jdtls",
"csharp-language-server",
- "gopls",
- "gofumpt",
- "golines",
"unocss-language-server",
},
PATH = "skip",
@@ -44,3 +40,22 @@ return {
},
max_concurrent_installers = 10,
}
+
+vim.api.nvim_create_user_command("MasonInstallAll", function ()
+ if opts.ensure_installed and #opts.ensure_installed > 0 then
+ vim.cmd("MasonInstall " .. table.concat(opts.ensure_installed, " "))
+ end
+end, {
+ desc = "Install all required mason packages",
+})
+
+vim.pack.add({
+ "https://github.com/neovim/nvim-lspconfig",
+ "https://github.com/mason-org/mason.nvim",
+})
+
+require("mason").setup(opts)
+
+if not (vim.uv or vim.loop).fs_stat(vim.g.mason_path) then
+ vim.cmd("MasonInstallAll")
+end