mirror of
https://github.com/LunarVim/LunarVim.git
synced 2025-09-01 08:15:20 +02:00
refactor capabilites function
This commit is contained in:
parent
f73da2a1b2
commit
ed71e50593
3 changed files with 30 additions and 31 deletions
|
@ -57,8 +57,8 @@ lvim = {
|
||||||
}
|
}
|
||||||
|
|
||||||
local schemas = nil
|
local schemas = nil
|
||||||
local common_on_attach = require("lsp").common_on_attach
|
local common_on_attach = require("lsp.utils").common_on_attach
|
||||||
local common_capabilities = require("lsp").common_capabilities()
|
local common_capabilities = require("lsp.utils").common_capabilities()
|
||||||
local status_ok, jsonls_settings = pcall(require, "nlspsettings.jsonls")
|
local status_ok, jsonls_settings = pcall(require, "nlspsettings.jsonls")
|
||||||
if status_ok then
|
if status_ok then
|
||||||
schemas = jsonls_settings.get_default_schemas()
|
schemas = jsonls_settings.get_default_schemas()
|
||||||
|
@ -640,8 +640,8 @@ lvim.lang = {
|
||||||
lsp = {
|
lsp = {
|
||||||
provider = "puppet",
|
provider = "puppet",
|
||||||
setup = {
|
setup = {
|
||||||
on_attach = require("lsp").common_on_attach,
|
on_attach = common_on_attach,
|
||||||
capabilities = require("lsp").common_capabilities(),
|
capabilities = common_capabilities,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -662,8 +662,8 @@ lvim.lang = {
|
||||||
DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server",
|
DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server",
|
||||||
"--stdio",
|
"--stdio",
|
||||||
},
|
},
|
||||||
on_attach = require("lsp").common_on_attach,
|
on_attach = common_on_attach,
|
||||||
capabilities = require("lsp").common_capabilities(),
|
capabilities = common_capabilities,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -684,8 +684,8 @@ lvim.lang = {
|
||||||
DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server",
|
DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server",
|
||||||
"--stdio",
|
"--stdio",
|
||||||
},
|
},
|
||||||
on_attach = require("lsp").common_on_attach,
|
on_attach = common_on_attach,
|
||||||
capabilities = require("lsp").common_capabilities(),
|
capabilities = common_capabilities,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -903,8 +903,8 @@ lvim.lang = {
|
||||||
DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server",
|
DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server",
|
||||||
"--stdio",
|
"--stdio",
|
||||||
},
|
},
|
||||||
on_attach = require("lsp").common_on_attach,
|
on_attach = common_on_attach,
|
||||||
capabilities = require("lsp").common_capabilities(),
|
capabilities = common_capabilities,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -925,8 +925,8 @@ lvim.lang = {
|
||||||
DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server",
|
DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server",
|
||||||
"--stdio",
|
"--stdio",
|
||||||
},
|
},
|
||||||
on_attach = require("lsp").common_on_attach,
|
on_attach = common_on_attach,
|
||||||
capabilities = require("lsp").common_capabilities(),
|
capabilities = common_capabilities,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
|
@ -6,6 +6,11 @@ function lsp_config.config()
|
||||||
require("lsp.handlers").setup()
|
require("lsp.handlers").setup()
|
||||||
require("lsp.signs").setup()
|
require("lsp.signs").setup()
|
||||||
require("lsp.keybinds").setup()
|
require("lsp.keybinds").setup()
|
||||||
|
require("core.autocmds").define_augroups {
|
||||||
|
_general_lsp = {
|
||||||
|
{ "FileType", "lspinfo", "nnoremap <silent> <buffer> q :q<CR>" },
|
||||||
|
},
|
||||||
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
local function no_formatter_on_attach(client, bufnr)
|
local function no_formatter_on_attach(client, bufnr)
|
||||||
|
@ -16,25 +21,6 @@ local function no_formatter_on_attach(client, bufnr)
|
||||||
client.resolved_capabilities.document_formatting = false
|
client.resolved_capabilities.document_formatting = false
|
||||||
end
|
end
|
||||||
|
|
||||||
function lsp_config.common_capabilities()
|
|
||||||
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
|
||||||
capabilities.textDocument.completion.completionItem.snippetSupport = true
|
|
||||||
capabilities.textDocument.completion.completionItem.resolveSupport = {
|
|
||||||
properties = {
|
|
||||||
"documentation",
|
|
||||||
"detail",
|
|
||||||
"additionalTextEdits",
|
|
||||||
},
|
|
||||||
}
|
|
||||||
return capabilities
|
|
||||||
end
|
|
||||||
|
|
||||||
require("core.autocmds").define_augroups {
|
|
||||||
_general_lsp = {
|
|
||||||
{ "FileType", "lspinfo", "nnoremap <silent> <buffer> q :q<CR>" },
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
function lsp_config.setup(lang)
|
function lsp_config.setup(lang)
|
||||||
local lang_server = lvim.lang[lang].lsp
|
local lang_server = lvim.lang[lang].lsp
|
||||||
local provider = lang_server.provider
|
local provider = lang_server.provider
|
||||||
|
|
|
@ -98,4 +98,17 @@ function M.common_on_attach(client, bufnr)
|
||||||
lsp_highlight_document(client)
|
lsp_highlight_document(client)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function M.common_capabilities()
|
||||||
|
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
||||||
|
capabilities.textDocument.completion.completionItem.snippetSupport = true
|
||||||
|
capabilities.textDocument.completion.completionItem.resolveSupport = {
|
||||||
|
properties = {
|
||||||
|
"documentation",
|
||||||
|
"detail",
|
||||||
|
"additionalTextEdits",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
return capabilities
|
||||||
|
end
|
||||||
|
|
||||||
return M
|
return M
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue