aboutsummaryrefslogtreecommitdiffstats
path: root/lua/lspconfig/server_configurations/purescriptls.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/lspconfig/server_configurations/purescriptls.lua')
-rw-r--r--lua/lspconfig/server_configurations/purescriptls.lua27
1 files changed, 27 insertions, 0 deletions
diff --git a/lua/lspconfig/server_configurations/purescriptls.lua b/lua/lspconfig/server_configurations/purescriptls.lua
new file mode 100644
index 00000000..92f7122e
--- /dev/null
+++ b/lua/lspconfig/server_configurations/purescriptls.lua
@@ -0,0 +1,27 @@
+local util = require 'lspconfig/util'
+
+local bin_name = 'purescript-language-server'
+if vim.fn.has 'win32' == 1 then
+ bin_name = bin_name .. '.cmd'
+end
+
+return {
+ default_config = {
+ cmd = { bin_name, '--stdio' },
+ filetypes = { 'purescript' },
+ root_dir = util.root_pattern('bower.json', 'psc-package.json', 'spago.dhall'),
+ },
+ docs = {
+ package_json = 'https://raw.githubusercontent.com/nwolverson/vscode-ide-purescript/master/package.json',
+ description = [[
+https://github.com/nwolverson/purescript-language-server
+`purescript-language-server` can be installed via `npm`
+```sh
+npm install -g purescript-language-server
+```
+]],
+ default_config = {
+ root_dir = [[root_pattern("spago.dhall, 'psc-package.json', bower.json")]],
+ },
+ },
+}