aboutsummaryrefslogtreecommitdiffstats
path: root/lua
diff options
context:
space:
mode:
authorMichael Lingelbach <m.j.lbach@gmail.com>2021-03-11 10:47:39 -0800
committerGitHub <noreply@github.com>2021-03-11 10:47:39 -0800
commit5d0ff389aa6d97490cb7a06b2fd6c4c51214fbe8 (patch)
tree4737767fe094b33eb73cf627fa4dc44b6edb9b7a /lua
parent[docgen] Update CONFIG.md (diff)
parentAdd support for the Haxe Language Server (diff)
downloadnvim-lspconfig-5d0ff389aa6d97490cb7a06b2fd6c4c51214fbe8.tar
nvim-lspconfig-5d0ff389aa6d97490cb7a06b2fd6c4c51214fbe8.tar.gz
nvim-lspconfig-5d0ff389aa6d97490cb7a06b2fd6c4c51214fbe8.tar.bz2
nvim-lspconfig-5d0ff389aa6d97490cb7a06b2fd6c4c51214fbe8.tar.lz
nvim-lspconfig-5d0ff389aa6d97490cb7a06b2fd6c4c51214fbe8.tar.xz
nvim-lspconfig-5d0ff389aa6d97490cb7a06b2fd6c4c51214fbe8.tar.zst
nvim-lspconfig-5d0ff389aa6d97490cb7a06b2fd6c4c51214fbe8.zip
Merge pull request #707 from ngscheurich/haxe-language-server
Add support for the Haxe Language Server
Diffstat (limited to 'lua')
-rw-r--r--lua/lspconfig/haxe_language_server.lua48
1 files changed, 48 insertions, 0 deletions
diff --git a/lua/lspconfig/haxe_language_server.lua b/lua/lspconfig/haxe_language_server.lua
new file mode 100644
index 00000000..8660ea1e
--- /dev/null
+++ b/lua/lspconfig/haxe_language_server.lua
@@ -0,0 +1,48 @@
+local configs = require 'lspconfig/configs'
+local util = require 'lspconfig/util'
+
+configs.haxe_language_server = {
+ default_config = {
+ cmd = {"haxe-language-server"};
+ filetypes = {"haxe"};
+ root_dir = util.root_pattern("*.hxml");
+ settings = {
+ haxe = {
+ executable = "haxe";
+ };
+ };
+ init_options = {
+ displayArguments = {"build.hxml"};
+ };
+ };
+ docs = {
+ description = [[
+https://github.com/vshaxe/haxe-language-server
+
+The Haxe language server can be built by running the following commands from
+the project's root directory:
+
+ npm install
+ npx lix run vshaxe-build -t language-server
+
+This will create `bin/server.js`. Note that the server requires Haxe 3.4.0 or
+higher.
+
+After building the language server, set the `cmd` setting in your setup
+function:
+
+```lua
+lspconfig.haxe_language_server.setup({
+ cmd = {"node", "path/to/bin/server.js"},
+})
+```
+
+By default, an HXML compiler arguments file named `build.hxml` is expected in
+your project's root directory. If your file is named something different,
+specify it using the `init_options.displayArguments` setting.
+]],
+ default_config = {
+ root_dir = [[root_pattern("*.hxml")]];
+ };
+ }
+}