-
Notifications
You must be signed in to change notification settings - Fork 24
Open
Description
Here is my full lspconfig file which I basically just copy and pasted from yours with some additional other languages.
When I open a go project, there is no LSP. Other languages seems to work fine. it's just gopls and ts_ls but gopls is my priority.
local on_attach = require("nvchad.configs.lspconfig").on_attach
local on_init = require("nvchad.configs.lspconfig").on_init
local capabilities = require("nvchad.configs.lspconfig").capabilities
-- local lspconfig = require("lspconfig") -- pre nvim 0.11
local lspconfig = require("nvchad.configs.lspconfig") -- nvim 0.11
-- list of all servers configured.
lspconfig.servers = {
"lua_ls",
-- "pyright",
"gopls",
"ts_ls",
"eslint",
"cssls",
"html",
-- "djlsp", // removed to avoid ensure_installed error
"bashls",
-- "htmx",
"tailwindcss",
-- "templ",
"dockerls",
-- "denols",
-- "clangd",
-- "hls",
-- "ols",
"vue_ls",
}
-- list of servers configured with default config.
local default_servers = {
"cssls",
"html",
"djlsp",
-- "volar",
"bashls",
-- "htmx",
"tailwindcss",
"templ",
"dockerls",
-- "denols",
-- "ruff",
}
-- lsps with default config
for _, lsp in ipairs(default_servers) do
-- lspconfig[lsp].setup({
vim.lsp.config(lsp, {
on_attach = on_attach,
on_init = on_init,
capabilities = capabilities,
})
end
-- lspconfig.eslint.setup({ -- pre nvim 0.11
vim.lsp.config("eslint", {
on_attach = on_attach,
on_init = on_init,
capabilities = capabilities,
})
-- lspconfig.ts_ls.setup({ -- pre nvim 0.11
vim.lsp.config("ts_ls", {
on_attach = on_attach,
on_init = on_init,
capabilities = capabilities,
init_options = {
preferences = {
disableSuggestions = true,
},
},
})
-- NOTE: removed custom pyright config to fixe
-- issues with loading pyright twice
-- - lspconfig.pyright.setup({
-- on_attach = on_attach,
-- on_init = on_init,
-- capabilities = capabilities,
--
-- settings = {
-- python = {
-- analysis = {
-- typeCheckingMode = "off", -- Disable type checking diagnostics
-- },
-- },
-- },
-- })
-- lspconfig.clangd.setup({
-- on_attach = function(client, bufnr)
-- client.server_capabilities.documentFormattingProvider = false
-- client.server_capabilities.documentRangeFormattingProvider = false
-- on_attach(client, bufnr)
-- end,
-- on_init = on_init,
-- capabilities = capabilities,
-- })
-- lspconfig.gopls.setup({ -- pre nvim 0.11
vim.lsp.config("gopls", {
on_attach = function(client, bufnr)
client.server_capabilities.documentFormattingProvider = false
client.server_capabilities.documentRangeFormattingProvider = false
on_attach(client, bufnr)
end,
on_init = on_init,
capabilities = capabilities,
cmd = { "gopls" },
filetypes = { "go", "gomod", "gotmpl", "gowork" },
-- root_dir = lspconfig.util.root_pattern("go.work", "go.mod", ".git"),
root_dir = require("lspconfig.util").root_pattern("go.work", "go.mod", ".git"),
settings = {
gopls = {
analyses = {
unusedparams = true,
},
completeUnimported = true,
usePlaceholders = true,
staticcheck = true,
},
},
})
-- lspconfig.hls.setup({
-- on_attach = function(client, bufnr)
-- client.server_capabilities.documentFormattingProvider = false
-- client.server_capabilities.documentRangeFormattingProvider = false
-- on_attach(client, bufnr)
-- end,
--
-- on_init = on_init,
-- capabilities = capabilities,
-- })
-- lspconfig.lua_ls.setup({ -- pre nvim 0.11
vim.lsp.config("lua_ls", {
on_attach = on_attach,
on_init = on_init,
capabilities = capabilities,
settings = {
Lua = {
diagnostics = {
enable = false, -- Disable all diagnostics from lua_ls
-- globals = { "vim" },
},
workspace = {
library = {
vim.fn.expand("$VIMRUNTIME/lua"),
vim.fn.expand("$VIMRUNTIME/lua/vim/lsp"),
vim.fn.stdpath("data") .. "/lazy/ui/nvchad_types",
vim.fn.stdpath("data") .. "/lazy/lazy.nvim/lua/lazy",
"${3rd}/love2d/library",
},
maxPreload = 100000,
preloadFileSize = 10000,
},
},
},
})
-- lspconfig.tailwindcss.setup({ -- pre nvim 0.11
vim.lsp.config("tailwindcss", {
settings = {
editor = {
tabSize = 2,
},
},
})
Metadata
Metadata
Assignees
Labels
No labels