diff options
| -rw-r--r-- | lua/default-config.lua | 24 | ||||
| -rw-r--r-- | lua/lsp/init.lua | 24 | ||||
| -rw-r--r-- | lua/lsp/utils.lua | 13 | 
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 | 
