This commit is contained in:
2025-12-06 20:43:53 +01:00
parent 620777f3fb
commit d413b9de71
11 changed files with 634 additions and 74 deletions

View File

@@ -82,16 +82,32 @@ cmp.setup({
}),
})
local lspconfig = require("lspconfig")
local capabilities = require("cmp_nvim_lsp").default_capabilities()
-- Keymaps
vim.keymap.set("n", "gd", vim.lsp.buf.definition, {})
vim.keymap.set("n", "K", vim.lsp.buf.hover, {})
vim.keymap.set("n", "<leader>rn", vim.lsp.buf.rename, {})
vim.keymap.set("n", "<leader>ca", vim.lsp.buf.code_action, {})
-- Setup language servers
lspconfig.lua_ls.setup({
-- Set default capabilities for all servers
vim.lsp.config("*", {
capabilities = capabilities,
})
-- Configure lua_ls with specific settings
vim.lsp.config("lua_ls", {
cmd = { "lua-language-server" },
root_markers = {
".luarc.json",
".luarc.jsonc",
".luacheckrc",
".stylua.toml",
"stylua.toml",
"selene.toml",
"selene.yml",
".git",
},
settings = {
Lua = {
runtime = { version = "LuaJIT" },
@@ -102,15 +118,20 @@ lspconfig.lua_ls.setup({
},
})
lspconfig.nil_ls.setup({ capabilities = capabilities })
lspconfig.rust_analyzer.setup({ capabilities = capabilities })
lspconfig.pylsp.setup({ capabilities = capabilities })
lspconfig.stylelint_lsp.setup({
-- Configure stylelint_lsp with custom cmd and filetypes
vim.lsp.config("stylelint_lsp", {
cmd = { "stylelint-lsp", "--stdio" },
filetypes = { "css", "scss", "rasi" },
capabilities = vim.lsp.protocol.make_client_capabilities(),
root_markers = { ".stylelintrc", ".stylelintrc.json", "stylelint.config.js", ".git" },
})
-- Enable all language servers
vim.lsp.enable("lua_ls")
vim.lsp.enable("nil_ls")
vim.lsp.enable("rust_analyzer")
vim.lsp.enable("pylsp")
vim.lsp.enable("stylelint_lsp")
-- Conform
require("conform").setup({
formatters_by_ft = {