mirror of
https://github.com/traxys/Nixfiles.git
synced 2026-02-15 03:40:20 +01:00
91 lines
2 KiB
Lua
91 lines
2 KiB
Lua
vim.lsp.set_log_level("debug")
|
|
|
|
local lsp_status = require('lsp-status')
|
|
lsp_status.register_progress()
|
|
|
|
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
|
capabilities.textDocument.completion.completionItem.snippetSupport = true
|
|
capabilities = vim.tbl_extend('keep', capabilities, lsp_status.capabilities)
|
|
|
|
require('lspkind').init({})
|
|
local lspconfig = require'lspconfig'
|
|
local configs = require'lspconfig/configs'
|
|
local util = require 'lspconfig/util'
|
|
|
|
if not lspconfig.rsh_lsp then
|
|
configs.rsh_lsp = {
|
|
default_config = {
|
|
cmd = {'rsh-lsp'},
|
|
filetypes = {'rsh'},
|
|
root_dir = util.path.dirname,
|
|
settings = {},
|
|
};
|
|
}
|
|
end
|
|
|
|
lspconfig.rust_analyzer.setup{
|
|
on_attach=lsp_status.on_attach,
|
|
settings = {
|
|
["rust-analyzer"] = {
|
|
procMacro = {
|
|
enable = true
|
|
},
|
|
cargo = {
|
|
allFeatures = true,
|
|
loadOutDirsFromCheck = true
|
|
},
|
|
updates = {
|
|
channel = "nightly"
|
|
},
|
|
}
|
|
},
|
|
capabilities = capabilities
|
|
}
|
|
lspconfig.jsonls.setup{
|
|
on_attach=lsp_status.on_attach,
|
|
cmd = { "json-languageserver", "--stdio" },
|
|
capabilities = capabilities
|
|
}
|
|
lspconfig.bashls.setup{
|
|
on_attach=lsp_status.on_attach,
|
|
capabilities = capabilities
|
|
}
|
|
lspconfig.rsh_lsp.setup{
|
|
on_attach=lsp_status.on_attach,
|
|
capabilities = capabilities
|
|
}
|
|
lspconfig.clangd.setup{
|
|
on_attach = lsp_status.on_attach,
|
|
handlers = lsp_status.extensions.clangd.setup(),
|
|
init_options = { clangdFileStatus = true},
|
|
capabilities = capabilities
|
|
}
|
|
lspconfig.texlab.setup{
|
|
on_attach = lsp_status.on_attach,
|
|
capabilities = capabilities
|
|
}
|
|
|
|
lspconfig.rnix.setup{
|
|
on_attach = lsp_status.on_attach,
|
|
capabilities = capabilities
|
|
}
|
|
|
|
lspconfig.dartls.setup{
|
|
on_attach = lsp_status.on_attach,
|
|
capabilities = capabilities,
|
|
cmd = {"dart", vim.fn.expand("$DART_SDK") .. "/snapshots/analysis_server.dart.snapshot", "--lsp"}
|
|
}
|
|
|
|
lspconfig.vuels.setup{
|
|
on_attach = lsp_status.on_attach,
|
|
capabilities = capabilities,
|
|
config = {
|
|
vetur = {
|
|
defaultFormatter = {
|
|
js = "prettier",
|
|
ts = "prettier",
|
|
html = "prettier"
|
|
}
|
|
}
|
|
}
|
|
}
|