|
@@ -16,9 +16,12 @@ return {
|
|
|
"ts_ls",
|
|
"ts_ls",
|
|
|
"tinymist",
|
|
"tinymist",
|
|
|
"marksman",
|
|
"marksman",
|
|
|
- -- "typst_lsp",
|
|
|
|
|
"html",
|
|
"html",
|
|
|
- "r_language_server", --[[ "vscode-html-language-server" ]]
|
|
|
|
|
|
|
+ "r_language_server",
|
|
|
|
|
+ },
|
|
|
|
|
+ -- IMPORTANT: let rustaceanvim manage rust-analyzer
|
|
|
|
|
+ automatic_enable = {
|
|
|
|
|
+ exclude = { "rust_analyzer" },
|
|
|
},
|
|
},
|
|
|
})
|
|
})
|
|
|
end,
|
|
end,
|
|
@@ -28,15 +31,30 @@ return {
|
|
|
config = function()
|
|
config = function()
|
|
|
local capabilities = require("cmp_nvim_lsp").default_capabilities()
|
|
local capabilities = require("cmp_nvim_lsp").default_capabilities()
|
|
|
|
|
|
|
|
- -- After setting up mason-lspconfig you may set up servers via lspconfig
|
|
|
|
|
- require("lspconfig").lua_ls.setup({ capabilities = capabilities })
|
|
|
|
|
- -- require("lspconfig").rust_analyzer.setup({capabilities = capabilities})
|
|
|
|
|
- require("lspconfig").r_language_server.setup({ capabilities = capabilities })
|
|
|
|
|
- require("lspconfig").marksman.setup({ capabilities = capabilities })
|
|
|
|
|
- require("lspconfig").html.setup({ capabilities = capabilities })
|
|
|
|
|
- require("lspconfig").tinymist.setup({
|
|
|
|
|
|
|
+ -- lua_ls
|
|
|
|
|
+ vim.lsp.config("lua_ls", {
|
|
|
|
|
+ capabilities = capabilities,
|
|
|
|
|
+ })
|
|
|
|
|
+
|
|
|
|
|
+ -- R
|
|
|
|
|
+ vim.lsp.config("r_language_server", {
|
|
|
capabilities = capabilities,
|
|
capabilities = capabilities,
|
|
|
- offset_encoding = "utf-8",
|
|
|
|
|
|
|
+ })
|
|
|
|
|
+
|
|
|
|
|
+ -- Markdown
|
|
|
|
|
+ vim.lsp.config("marksman", {
|
|
|
|
|
+ capabilities = capabilities,
|
|
|
|
|
+ })
|
|
|
|
|
+
|
|
|
|
|
+ -- HTML
|
|
|
|
|
+ vim.lsp.config("html", {
|
|
|
|
|
+ capabilities = capabilities,
|
|
|
|
|
+ })
|
|
|
|
|
+
|
|
|
|
|
+ -- Typst / tinymist
|
|
|
|
|
+ vim.lsp.config("tinymist", {
|
|
|
|
|
+ capabilities = capabilities,
|
|
|
|
|
+ offset_encoding = "utf-8",
|
|
|
root_dir = function(filename, bufnr)
|
|
root_dir = function(filename, bufnr)
|
|
|
return vim.fn.getcwd()
|
|
return vim.fn.getcwd()
|
|
|
end,
|
|
end,
|
|
@@ -48,24 +66,9 @@ return {
|
|
|
},
|
|
},
|
|
|
},
|
|
},
|
|
|
})
|
|
})
|
|
|
- -- require("lspconfig").typst_lsp.setup({
|
|
|
|
|
- -- capabilities = capabilities,
|
|
|
|
|
- -- offset_encoding = "utf-8",
|
|
|
|
|
- --
|
|
|
|
|
- -- settings = {
|
|
|
|
|
- -- exportPdf = "never", -- Choose onType, onSave or never.
|
|
|
|
|
- -- experimentalFormatterMode = "on",
|
|
|
|
|
- -- -- serverPath = "" -- Normally, there is no need to uncomment it.
|
|
|
|
|
- -- },
|
|
|
|
|
- -- })
|
|
|
|
|
- -- require("lspconfig").tinymist.setup({
|
|
|
|
|
- -- offset_encoding = "utf-8",
|
|
|
|
|
- -- settings = {
|
|
|
|
|
- -- formatterMode = "typstyle",
|
|
|
|
|
- -- exportPdf = "onSave",
|
|
|
|
|
- -- },
|
|
|
|
|
- -- })
|
|
|
|
|
- require("lspconfig").ts_ls.setup({
|
|
|
|
|
|
|
+
|
|
|
|
|
+ -- Typescript (ts_ls)
|
|
|
|
|
+ vim.lsp.config("ts_ls", {
|
|
|
-- capabilities = capabilities,
|
|
-- capabilities = capabilities,
|
|
|
init_options = {
|
|
init_options = {
|
|
|
plugins = {},
|
|
plugins = {},
|
|
@@ -79,9 +82,16 @@ return {
|
|
|
},
|
|
},
|
|
|
})
|
|
})
|
|
|
|
|
|
|
|
- -- You must make sure volar is setup
|
|
|
|
|
- -- e.g. require'lspconfig'.volar.setup{}
|
|
|
|
|
- -- See volar's section for more information
|
|
|
|
|
|
|
+ -- finally, enable the servers
|
|
|
|
|
+ vim.lsp.enable({
|
|
|
|
|
+ "lua_ls",
|
|
|
|
|
+ "r_language_server",
|
|
|
|
|
+ "marksman",
|
|
|
|
|
+ "html",
|
|
|
|
|
+ "tinymist",
|
|
|
|
|
+ "ts_ls",
|
|
|
|
|
+ -- "rust_analyzer", -- rustaceanvim config the LSP
|
|
|
|
|
+ })
|
|
|
end,
|
|
end,
|
|
|
},
|
|
},
|
|
|
}
|
|
}
|