summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris <[email protected]>2021-07-28 19:03:29 -0400
committerChris <[email protected]>2021-07-28 19:03:29 -0400
commited71e50593406e3e12f46fd13317cc78e8419814 (patch)
treeb0331e1aeaf363b022155667668f0a13586bc086
parentf73da2a1b27f26a61cf62e6a648bce67ef4c1f8e (diff)
refactor capabilites function
-rw-r--r--lua/default-config.lua24
-rw-r--r--lua/lsp/init.lua24
-rw-r--r--lua/lsp/utils.lua13
3 files changed, 30 insertions, 31 deletions
diff --git a/lua/default-config.lua b/lua/default-config.lua
index 0fc9ee4e..93dfa421 100644
--- a/lua/default-config.lua
+++ b/lua/default-config.lua
@@ -57,8 +57,8 @@ lvim = {
}
local schemas = nil
-local common_on_attach = require("lsp").common_on_attach
-local common_capabilities = require("lsp").common_capabilities()
+local common_on_attach = require("lsp.utils").common_on_attach
+local common_capabilities = require("lsp.utils").common_capabilities()
local status_ok, jsonls_settings = pcall(require, "nlspsettings.jsonls")
if status_ok then
schemas = jsonls_settings.get_default_schemas()
@@ -640,8 +640,8 @@ lvim.lang = {
lsp = {
provider = "puppet",
setup = {
- on_attach = require("lsp").common_on_attach,
- capabilities = require("lsp").common_capabilities(),
+ on_attach = common_on_attach,
+ capabilities = common_capabilities,
},
},
},
@@ -662,8 +662,8 @@ lvim.lang = {
DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server",
"--stdio",
},
- on_attach = require("lsp").common_on_attach,
- capabilities = require("lsp").common_capabilities(),
+ on_attach = common_on_attach,
+ capabilities = common_capabilities,
},
},
},
@@ -684,8 +684,8 @@ lvim.lang = {
DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server",
"--stdio",
},
- on_attach = require("lsp").common_on_attach,
- capabilities = require("lsp").common_capabilities(),
+ on_attach = common_on_attach,
+ capabilities = common_capabilities,
},
},
},
@@ -903,8 +903,8 @@ lvim.lang = {
DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server",
"--stdio",
},
- on_attach = require("lsp").common_on_attach,
- capabilities = require("lsp").common_capabilities(),
+ on_attach = common_on_attach,
+ capabilities = common_capabilities,
},
},
},
@@ -925,8 +925,8 @@ lvim.lang = {
DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server",
"--stdio",
},
- on_attach = require("lsp").common_on_attach,
- capabilities = require("lsp").common_capabilities(),
+ on_attach = common_on_attach,
+ capabilities = common_capabilities,
},
},
},
diff --git a/lua/lsp/init.lua b/lua/lsp/init.lua
index c0457ab6..ba22b931 100644
--- a/lua/lsp/init.lua
+++ b/lua/lsp/init.lua
@@ -6,6 +6,11 @@ function lsp_config.config()
require("lsp.handlers").setup()
require("lsp.signs").setup()
require("lsp.keybinds").setup()
+ require("core.autocmds").define_augroups {
+ _general_lsp = {
+ { "FileType", "lspinfo", "nnoremap <silent> <buffer> q :q<CR>" },
+ },
+ }
end
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
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)
local lang_server = lvim.lang[lang].lsp
local provider = lang_server.provider
diff --git a/lua/lsp/utils.lua b/lua/lsp/utils.lua
index f8241610..3969a202 100644
--- a/lua/lsp/utils.lua
+++ b/lua/lsp/utils.lua
@@ -98,4 +98,17 @@ function M.common_on_attach(client, bufnr)
lsp_highlight_document(client)
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