diff options
| author | Gilles Querret <g.querret@riverside-software.fr> | 2023-04-06 03:44:44 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-04-06 09:44:44 +0800 |
| commit | 7910b3cc8a26893969897a32a6b544ebcfde810e (patch) | |
| tree | 0cf20332d62daf70b7e68b447586ff76f2966628 /lua | |
| parent | docs: update server_configurations.md (diff) | |
| download | nvim-lspconfig-7910b3cc8a26893969897a32a6b544ebcfde810e.tar nvim-lspconfig-7910b3cc8a26893969897a32a6b544ebcfde810e.tar.gz nvim-lspconfig-7910b3cc8a26893969897a32a6b544ebcfde810e.tar.bz2 nvim-lspconfig-7910b3cc8a26893969897a32a6b544ebcfde810e.tar.lz nvim-lspconfig-7910b3cc8a26893969897a32a6b544ebcfde810e.tar.xz nvim-lspconfig-7910b3cc8a26893969897a32a6b544ebcfde810e.tar.zst nvim-lspconfig-7910b3cc8a26893969897a32a6b544ebcfde810e.zip | |
feat: add openedge support (#2513)
* feat: add openedge support
---------
Co-authored-by: Raphael <glephunter@gmail.com>
Diffstat (limited to 'lua')
| -rw-r--r-- | lua/lspconfig/server_configurations/openedge_ls.lua | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/lua/lspconfig/server_configurations/openedge_ls.lua b/lua/lspconfig/server_configurations/openedge_ls.lua new file mode 100644 index 00000000..682b6830 --- /dev/null +++ b/lua/lspconfig/server_configurations/openedge_ls.lua @@ -0,0 +1,55 @@ +local util = require 'lspconfig.util' + +return { + default_config = { + filetypes = { 'progress' }, + root_dir = util.root_pattern 'openedge-project.json', + on_new_config = function(config) + if not config.cmd and config.oe_jar_path then + config.cmd = { + 'java', + '--add-opens=java.base/java.lang=ALL-UNNAMED', + '--add-opens=java.base/java.math=ALL-UNNAMED', + '--add-opens=java.base/java.util=ALL-UNNAMED', + '--add-opens=java.base/java.util.concurrent=ALL-UNNAMED', + '--add-opens=java.base/java.net=ALL-UNNAMED', + '--add-opens=java.base/java.text=ALL-UNNAMED', + } + if config.debug then + config.cmd[#config.cmd + 1] = '-Dorg.slf4j.simpleLogger.defaultLogLevel=DEBUG' + end + config.cmd[#config.cmd + 1] = '-jar' + config.cmd[#config.cmd + 1] = config.oe_jar_path + if config.dlc then + config.cmd[#config.cmd + 1] = '--dlc' + config.cmd[#config.cmd + 1] = config.dlc + end + if config.trace then + config.cmd[#config.cmd + 1] = '--trace' + end + end + end, + }, + docs = { + description = [[ +[Language server](https://github.com/vscode-abl/vscode-abl) for Progress OpenEdge ABL. + +For manual installation, download abl-lsp.jar from the [VSCode +extension](https://github.com/vscode-abl/vscode-abl/releases/latest). + +Configuration + +```lua +require('lspconfig').['openedge_ls'].setup { + oe_jar_path = '/path/to/abl-lsp.jar', + dlc = '12.2:/path/to/dlc-12.2', -- Version number and OpenEdge root directory (colon separator) + debug = false, -- Set to true for debug logging + trace = false -- Set to true for trace logging (REALLY verbose) +} +``` +]], + default_config = { + root_dir = [[root_pattern('openedge-project.json')]], + }, + }, +} |
