diff options
| author | Nicholas Scheurich <nick@scheurich.me> | 2021-01-30 19:12:18 -0600 |
|---|---|---|
| committer | Nicholas Scheurich <nick@scheurich.me> | 2021-03-11 12:40:05 -0600 |
| commit | 3363f03902d0df5c73255e10c14e05d4c36beb4e (patch) | |
| tree | 566d874a8cd487b99510ee37b370c9bcc86d9c48 /lua | |
| parent | [docgen] Update CONFIG.md (diff) | |
| download | nvim-lspconfig-3363f03902d0df5c73255e10c14e05d4c36beb4e.tar nvim-lspconfig-3363f03902d0df5c73255e10c14e05d4c36beb4e.tar.gz nvim-lspconfig-3363f03902d0df5c73255e10c14e05d4c36beb4e.tar.bz2 nvim-lspconfig-3363f03902d0df5c73255e10c14e05d4c36beb4e.tar.lz nvim-lspconfig-3363f03902d0df5c73255e10c14e05d4c36beb4e.tar.xz nvim-lspconfig-3363f03902d0df5c73255e10c14e05d4c36beb4e.tar.zst nvim-lspconfig-3363f03902d0df5c73255e10c14e05d4c36beb4e.zip | |
Add support for the Haxe Language Server
This adds support for the language server used by the Visual Studio Code
Haxe Extension: https://github.com/vshaxe/haxe-language-server
I've found this language server to be tricky to properly attach to, but
this config should do the trick.
Diffstat (limited to 'lua')
| -rw-r--r-- | lua/lspconfig/haxe_language_server.lua | 48 |
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")]]; + }; + } +} |
