aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBuck Evan <buck.evan@sentry.io>2024-08-23 01:19:49 -0500
committerGitHub <noreply@github.com>2024-08-23 14:19:49 +0800
commitc75b0fccbde8978583daf474306dfd5282a4cd10 (patch)
tree4ad76716ebb369e5921bce153073739018a88f80
parentdocs: update server_configurations.md (diff)
downloadnvim-lspconfig-c75b0fccbde8978583daf474306dfd5282a4cd10.tar
nvim-lspconfig-c75b0fccbde8978583daf474306dfd5282a4cd10.tar.gz
nvim-lspconfig-c75b0fccbde8978583daf474306dfd5282a4cd10.tar.bz2
nvim-lspconfig-c75b0fccbde8978583daf474306dfd5282a4cd10.tar.lz
nvim-lspconfig-c75b0fccbde8978583daf474306dfd5282a4cd10.tar.xz
nvim-lspconfig-c75b0fccbde8978583daf474306dfd5282a4cd10.tar.zst
nvim-lspconfig-c75b0fccbde8978583daf474306dfd5282a4cd10.zip
fix(rescripls): enable typechecking, improve doc (#3281)
I was very confused to find that I got no typechecking by default, since ReScript is meant to be a very-strongly-typed language. The intent seems to be to use the "askToStartBuild" option to start an external build, which integrates with the lsp for typing, but that prompt is much too buggy, and the incremental typing (enabled in this PR) works well for me.
-rw-r--r--lua/lspconfig/server_configurations/rescriptls.lua26
1 files changed, 25 insertions, 1 deletions
diff --git a/lua/lspconfig/server_configurations/rescriptls.lua b/lua/lspconfig/server_configurations/rescriptls.lua
index 882a1100..f7869b34 100644
--- a/lua/lspconfig/server_configurations/rescriptls.lua
+++ b/lua/lspconfig/server_configurations/rescriptls.lua
@@ -8,7 +8,17 @@ return {
settings = {},
init_options = {
extensionConfiguration = {
+ -- buggy, prompts much too often, superseded by incrementalTypechecking, below
askToStartBuild = false,
+
+ allowBuiltInFormatter = true, -- lower latency
+ incrementalTypechecking = { -- removes the need for external build process
+ enabled = true,
+ acrossFiles = true,
+ },
+ cache = { projectConfig = { enabled = true } }, -- speed up latency dramatically
+ codeLens = true,
+ inlayHints = { enable = true },
},
},
},
@@ -21,7 +31,21 @@ ReScript Language Server can be installed via npm:
npm install -g @rescript/language-server
```
-See the init_options supported (see https://github.com/rescript-lang/rescript-vscode/tree/master/server/config.md):
+See [package.json](https://github.com/rescript-lang/rescript-vscode/blob/master/package.json#L139)
+for init_options supported.
+
+For example, in order to disable the `inlayHints` option:
+```lua
+require'lspconfig'.pylsp.setup{
+ settings = {
+ rescript = {
+ settings = {
+ inlayHints = { enable = false },
+ },
+ },
+ }
+}
+```
]],
root_dir = [[root_pattern('bsconfig.json', 'rescript.json', '.git')]],
},