aboutsummaryrefslogtreecommitdiffstats
path: root/lua/lspconfig/server_configurations/rescriptls.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/lspconfig/server_configurations/rescriptls.lua')
-rw-r--r--lua/lspconfig/server_configurations/rescriptls.lua42
1 files changed, 42 insertions, 0 deletions
diff --git a/lua/lspconfig/server_configurations/rescriptls.lua b/lua/lspconfig/server_configurations/rescriptls.lua
new file mode 100644
index 00000000..c6bbd912
--- /dev/null
+++ b/lua/lspconfig/server_configurations/rescriptls.lua
@@ -0,0 +1,42 @@
+local util = require 'lspconfig/util'
+
+return {
+ default_config = {
+ cmd = {},
+ filetypes = { 'rescript' },
+ root_dir = util.root_pattern('bsconfig.json', '.git'),
+ settings = {},
+ },
+ docs = {
+ description = [[
+https://github.com/rescript-lang/rescript-vscode
+
+ReScript language server
+
+**By default, rescriptls doesn't have a `cmd` set.** This is because nvim-lspconfig does not make assumptions about your path.
+You have to install the language server manually.
+
+You can use the bundled language server inside the [vim-rescript](https://github.com/rescript-lang/vim-rescript) repo.
+
+Clone the vim-rescript repo and point `cmd` to `server.js` inside `server/out` directory:
+
+```lua
+cmd = {'node', '<path_to_repo>/server/out/server.js', '--stdio'}
+
+```
+
+If you have vim-rescript installed you can also use that installation. for example if you're using packer.nvim you can set cmd to something like this:
+
+```lua
+cmd = {
+ 'node',
+ '/home/username/.local/share/nvim/site/pack/packer/start/vim-rescript/server/out/server.js',
+ '--stdio'
+}
+```
+
+Another option is to use vscode extension [release](https://github.com/rescript-lang/rescript-vscode/releases).
+Take a look at [here](https://github.com/rescript-lang/rescript-vscode#use-with-other-editors) for instructions.
+]],
+ },
+}