diff options
| author | Marcus Ramberg <marcus@means.no> | 2023-05-02 14:41:53 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-05-02 20:41:53 +0800 |
| commit | abd9bd6e2be609c269fa094cfb44192aa1f01ac9 (patch) | |
| tree | 1f56021b86f9504aa2ef67530b1dfd407bac4adb /lua/lspconfig/server_configurations | |
| parent | docs: update server_configurations.md (diff) | |
| download | nvim-lspconfig-abd9bd6e2be609c269fa094cfb44192aa1f01ac9.tar nvim-lspconfig-abd9bd6e2be609c269fa094cfb44192aa1f01ac9.tar.gz nvim-lspconfig-abd9bd6e2be609c269fa094cfb44192aa1f01ac9.tar.bz2 nvim-lspconfig-abd9bd6e2be609c269fa094cfb44192aa1f01ac9.tar.lz nvim-lspconfig-abd9bd6e2be609c269fa094cfb44192aa1f01ac9.tar.xz nvim-lspconfig-abd9bd6e2be609c269fa094cfb44192aa1f01ac9.tar.zst nvim-lspconfig-abd9bd6e2be609c269fa094cfb44192aa1f01ac9.zip | |
feat: Add support for the other nim language server (#2581)
* feat: add support for the other nim language server
* feat: windows support for nimlsp
Diffstat (limited to 'lua/lspconfig/server_configurations')
| -rw-r--r-- | lua/lspconfig/server_configurations/nim_langserver.lua | 29 | ||||
| -rw-r--r-- | lua/lspconfig/server_configurations/nimls.lua | 8 |
2 files changed, 36 insertions, 1 deletions
diff --git a/lua/lspconfig/server_configurations/nim_langserver.lua b/lua/lspconfig/server_configurations/nim_langserver.lua new file mode 100644 index 00000000..3a9877b3 --- /dev/null +++ b/lua/lspconfig/server_configurations/nim_langserver.lua @@ -0,0 +1,29 @@ +local util = require 'lspconfig.util' +local bin_name = 'nimlangserver' +local cmd = { bin_name } + +if vim.fn.has 'win32' == 1 then + cmd = { 'cmd.exe', '/C', bin_name } +end + +return { + default_config = { + cmd = cmd, + filetypes = { 'nim' }, + root_dir = function(fname) + return util.root_pattern '*.nimble'(fname) or util.find_git_ancestor(fname) + end, + single_file_support = true, + }, + docs = { + description = [[ +https://github.com/nim-lang/langserver + + +`nim-langserver` can be installed via the `nimble` package manager: +```sh +nimble install nimlangserver +``` + ]], + }, +} diff --git a/lua/lspconfig/server_configurations/nimls.lua b/lua/lspconfig/server_configurations/nimls.lua index 3c1aeb2b..82540afa 100644 --- a/lua/lspconfig/server_configurations/nimls.lua +++ b/lua/lspconfig/server_configurations/nimls.lua @@ -1,8 +1,14 @@ local util = require 'lspconfig.util' +local bin_name = 'nimlsp' +local cmd = { bin_name } + +if vim.fn.has 'win32' == 1 then + cmd = { 'cmd.exe', '/C', bin_name } +end return { default_config = { - cmd = { 'nimlsp' }, + cmd = cmd, filetypes = { 'nim' }, root_dir = function(fname) return util.root_pattern '*.nimble'(fname) or util.find_git_ancestor(fname) |
