aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHirokazu Hata <h.hata.ai.t@gmail.com>2020-03-10 02:13:31 +0900
committerGitHub <noreply@github.com>2020-03-10 02:13:31 +0900
commit56a9268de428acee307f67fc11c08b575e96004c (patch)
treef322c12e11614947a6d3f96cbffbc1b63fec3c9c
parent[docgen] Update README.md (diff)
parentREADME.md: add how to override default_config (diff)
downloadnvim-lspconfig-56a9268de428acee307f67fc11c08b575e96004c.tar
nvim-lspconfig-56a9268de428acee307f67fc11c08b575e96004c.tar.gz
nvim-lspconfig-56a9268de428acee307f67fc11c08b575e96004c.tar.bz2
nvim-lspconfig-56a9268de428acee307f67fc11c08b575e96004c.tar.lz
nvim-lspconfig-56a9268de428acee307f67fc11c08b575e96004c.tar.xz
nvim-lspconfig-56a9268de428acee307f67fc11c08b575e96004c.tar.zst
nvim-lspconfig-56a9268de428acee307f67fc11c08b575e96004c.zip
Merge pull request #149 from h-michael/override-default
default_config: let user specify default_config yourself.
-rw-r--r--README.md13
-rw-r--r--lua/nvim_lsp/configs.lua8
-rw-r--r--lua/nvim_lsp/util.lua8
3 files changed, 22 insertions, 7 deletions
diff --git a/README.md b/README.md
index 7e3e0ba5..1213a296 100644
--- a/README.md
+++ b/README.md
@@ -116,6 +116,19 @@ end
nvim_lsp.foo_lsp.setup{}
```
+### Example: orverride default config
+
+If you want to change default configs for all servers, you can override default_config like this.
+
+```lua
+local nvim_lsp = require'nvim_lsp'
+nvim_lsp.util.default_config = vim.tbl_extend(
+ "force",
+ nvim_lsp.util.default_config,
+ { log_level = lsp.protocol.MessageType.Warning.Error }
+)
+```
+
### Installing a language server
Configs may provide an `install()` function. Then you can use
diff --git a/lua/nvim_lsp/configs.lua b/lua/nvim_lsp/configs.lua
index 3d64a988..1ee1a744 100644
--- a/lua/nvim_lsp/configs.lua
+++ b/lua/nvim_lsp/configs.lua
@@ -23,13 +23,7 @@ function configs.__newindex(t, config_name, config_def)
local M = {}
- local default_config = tbl_extend("keep", config_def.default_config, {
- log_level = lsp.protocol.MessageType.Warning;
- message_level = lsp.protocol.MessageType.Warning;
- settings = vim.empty_dict();
- init_options = vim.empty_dict();
- callbacks = {};
- })
+ local default_config = tbl_extend("keep", config_def.default_config, util.default_config)
-- Force this part.
default_config.name = config_name
diff --git a/lua/nvim_lsp/util.lua b/lua/nvim_lsp/util.lua
index 82767905..33eff0c9 100644
--- a/lua/nvim_lsp/util.lua
+++ b/lua/nvim_lsp/util.lua
@@ -7,6 +7,14 @@ local fn = vim.fn
local M = {}
+M.default_config = {
+ log_level = lsp.protocol.MessageType.Warning;
+ message_level = lsp.protocol.MessageType.Warning;
+ settings = vim.empty_dict();
+ init_options = vim.empty_dict();
+ callbacks = {};
+}
+
function M.validate_bufnr(bufnr)
validate {
bufnr = { bufnr, 'n' }