Skip to content

Commit

Permalink
Add Common Workflow language.
Browse files Browse the repository at this point in the history
  • Loading branch information
manateelazycat committed Sep 22, 2024
1 parent a0dfa49 commit 0aa36e4
Show file tree
Hide file tree
Showing 5 changed files with 34 additions and 25 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -377,6 +377,7 @@ If your language supports mixed multi-language servers, it is recommended to che
| | [ccls](https://github.com/MaskRay/ccls) | `lsp-bridge-c-lsp-server` set to `ccls`, you need to configure `compile_commands.json` first |
| C | [clangd](https://github.com/clangd/clangd) | You need to configure `compile_commands.json` or `CMakeLists.txt` files in root directory of project |
| | [ccls](https://github.com/MaskRay/ccls) | `lsp-bridge-c-lsp-server` set to `ccls`, you need to configure `compile_commands.json` first |
| Common Workflow | [benten](https://github.com/rabix/benten) | `pip3 install benten` |
| D | [serve-d](https://github.com/Pure-D/serve-d) | `serve-d` does not support single file mode, please init `.git` repository under project root at first or custom `lsp-bridge-get-project-path-by-filepath` function |
| Dart | [dart-analysis-server](https://github.com/dart-lang/sdk/tree/master/pkg/analysis_server) | |
| Deno | [deno](https://deno.land) | Deno runtime use TypeScript as source code, you need customize option `lsp-bridge-get-single-lang-server-by-project` that return result "deno" when project-path match Deno project. |
Expand Down
1 change: 1 addition & 0 deletions README.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -372,6 +372,7 @@ lsp-bridge 针对许多语言都提供 2 个以上的语言服务器支持,
| | [ccls](https://github.com/MaskRay/ccls) | `lsp-bridge-c-lsp-server` 设置成 `ccls`, 需要在项目根目录配置好 `compile_commands.json` |
| C | [clangd](https://github.com/clangd/clangd) | 需要在项目根目录配置好 `compile_commands.json``CMakeLists.txt` 文件 |
| | [ccls](https://github.com/MaskRay/ccls) | `lsp-bridge-c-lsp-server` 设置成 `ccls`, 需要在项目根目录配置好 `compile_commands.json` |
| Common Workflow | [benten](https://github.com/rabix/benten) | `pip3 install benten` |
| D | [serve-d](https://github.com/Pure-D/serve-d) | serve-d 不支持单文件模式, 使用前请先在项目目录下初始 git 仓库或者自定义 `lsp-bridge-get-project-path-by-filepath` 返回项目目录 |
| Dart | [dart-analysis-server](https://github.com/dart-lang/sdk/tree/master/pkg/analysis_server) | |
| Deno | [deno](https://deno.land) | Deno 使用 TypeScript 来编程, 你需要定制选项 `lsp-bridge-get-single-lang-server-by-project` 当工程是 Deno 项目的路径时, 返回 "deno" 字符串 |
Expand Down
8 changes: 8 additions & 0 deletions langserver/benten.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"name": "benten",
"languageId": "cwl",
"command": [
"benten"
],
"settings": {}
}
3 changes: 3 additions & 0 deletions lsp-bridge.el
Original file line number Diff line number Diff line change
Expand Up @@ -587,6 +587,7 @@ Possible choices are basedpyright_ruff, pyright_ruff, pyright-background-analysi
(solidity-mode . "solidity")
(gleam-ts-mode . "gleam")
(ada-mode . "ada-language-server")
(cwl-mode . "benten")
(odin-mode . "ols")
(ballerina-mode . "ballerina-lang-server")
(bibtex-mode . "citation-langserver")
Expand Down Expand Up @@ -709,6 +710,7 @@ Possible choices are basedpyright_ruff, pyright_ruff, pyright-background-analysi
solidity-mode-hook
gleam-ts-mode-hook
ada-mode-hook
cwl-mode-hook
odin-mode-hook
ballerina-mode-hook
bibtex-mode-hook
Expand Down Expand Up @@ -785,6 +787,7 @@ you can customize `lsp-bridge-get-workspace-folder' to return workspace folder p
(raku-mode . raku-indent-offset) ; Perl6/Raku
(erlang-mode . erlang-indent-level) ; Erlang
(ada-mode . ada-indent) ; Ada
(cwl-mode . lsp-bridge-indent-four-level) ; Common Workflow
(odin-mode . lsp-bridge-indent-eight-level) ; Odin
(ballerina-mode . ballerina-indent-offset) ; Ballerina
(bibtex-mode . lsp-bridge-indent-two-level) ; BibTex
Expand Down
46 changes: 21 additions & 25 deletions todo.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,50 +6,46 @@ Below LSP server haven't supported, PR are welcome. ;)

3. **Coq**: coq-lsp (Looks is multiple language LSP server)

4. **Delphi**: Embarcadero (Proprietary - DelphiLSP) (Need found the full path of DelphiLSP.exe in Windows)
4. **Delphi**: Embarcadero (Proprietary - DelphiLSP) (Need find the full path of DelphiLSP.exe in Windows)

5. **JSON-LD**: [github.com/ajuvercr/jsonld-lsp](https://github.com/ajuvercr/jsonld-lsp) (Emacs haven't mode to support JSON-LD file)

6. **Xtext** (Any Language): [github.com/eclipse/xtext-core](https://github.com/eclipse/xtext-core)
6. **ActionScript3**: [github.com/BowlerHatLLC/vscode-nextgenas/tree/master/language-server](https://github.com/BowlerHatLLC/vscode-nextgenas/tree/master/language-server) (Need find full start path in Windows)

7. **ActionScript3**: [github.com/BowlerHatLLC/vscode-nextgenas/tree/master/language-server](https://github.com/BowlerHatLLC/vscode-nextgenas/tree/master/language-server)
7. **Raku**: [github.com/bscan/RakuNavigator](https://github.com/bscan/RakuNavigator) (Raku start path is not clear, see https://github.com/neovim/nvim-lspconfig/blob/master/doc/server_configurations.md#raku_navigator)

8. **Raku**: [github.com/bscan/RakuNavigator](https://github.com/bscan/RakuNavigator)
8. **Flux**: [github.com/influxdata/flux-lsp](https://github.com/influxdata/flux-lsp) (Emacs haven't mode to support flux language)

9. **Flux**: [github.com/influxdata/flux-lsp](https://github.com/influxdata/flux-lsp)
9. **SPARQL**: [github.com/stardog-union/stardog-language-servers/tree/master/packages/sparql-language-server](https://github.com/stardog-union/stardog-language-servers/tree/master/packages/sparql-language-server) (Emacs haven't mode to support Stardog language)

10. **SPARQL**: [github.com/stardog-union/stardog-language-servers/tree/master/packages/sparql-language-server](https://github.com/stardog-union/stardog-language-servers/tree/master/packages/sparql-language-server)
10. **Turtle**: [github.com/stardog-union/stardog-language-servers/tree/master/packages/turtle-language-server](https://github.com/stardog-union/stardog-language-servers/tree/master/packages/turtle-language-server)(Emacs haven't mode to support Stardog language)

11. **Turtle**: [github.com/stardog-union/stardog-language-servers/tree/master/packages/turtle-language-server](https://github.com/stardog-union/stardog-language-servers/tree/master/packages/turtle-language-server)
11. **Smalltalk/Pharo**: [github.com/badetitou/Pharo-LanguageServer](https://github.com/badetitou/Pharo-LanguageServer)

12. **Common Workflow Language (CWL)**: Rabix/Benten
12. **DreamMaker**: [github.com/SpaceManiac/SpacemanDMM/tree/master/crates/dm-langserver](https://github.com/SpaceManiac/SpacemanDMM/tree/master/crates/dm-langserver)

13. **Smalltalk/Pharo**: [github.com/badetitou/Pharo-LanguageServer](https://github.com/badetitou/Pharo-LanguageServer)
13. **Grain**: [github.com/grain-lang/grain](https://github.com/grain-lang/grain)

14. **DreamMaker**: [github.com/SpaceManiac/SpacemanDMM/tree/master/crates/dm-langserver](https://github.com/SpaceManiac/SpacemanDMM/tree/master/crates/dm-langserver)
14. **V**: [github.com/vlang/v-analyzer](https://github.com/vlang/v-analyzer)

15. **Grain**: [github.com/grain-lang/grain](https://github.com/grain-lang/grain)
15. **TTCN-3**: [github.com/nokia/ntt](https://github.com/nokia/ntt)

16. **V**: [github.com/vlang/v-analyzer](https://github.com/vlang/v-analyzer)
16. **Red**: [github.com/bitbegin/redlangserver](https://github.com/bitbegin/redlangserver)

17. **TTCN-3**: [github.com/nokia/ntt](https://github.com/nokia/ntt)
17. **Fennel**: [git.sr.ht/~xerool/fennel-ls](https://git.sr.ht/~xerool/fennel-ls)

18. **Red**: [github.com/bitbegin/redlangserver](https://github.com/bitbegin/redlangserver)
18. **Erg**: [github.com/erg-lang/erg/tree/main/crates/els](https://github.com/erg-lang/erg/tree/main/crates/els)

19. **Fennel**: [git.sr.ht/~xerool/fennel-ls](https://git.sr.ht/~xerool/fennel-ls)
19. **Fuzion**: [github.com/tokiwa-software/fuzion-lsp-server](https://github.com/tokiwa-software/fuzion-lsp-server)

20. **Erg**: [github.com/erg-lang/erg/tree/main/crates/els](https://github.com/erg-lang/erg/tree/main/crates/els)
20. **Imandra Protocol Language**: [github.com/AestheticIntegration/ipl-vscode](https://github.com/AestheticIntegration/ipl-vscode)

21. **Fuzion**: [github.com/tokiwa-software/fuzion-lsp-server](https://github.com/tokiwa-software/fuzion-lsp-server)
21. **MOCA**: [github.com/mrglassdanny/moca-language-server](https://github.com/mrglassdanny/moca-language-server)

22. **Imandra Protocol Language**: [github.com/AestheticIntegration/ipl-vscode](https://github.com/AestheticIntegration/ipl-vscode)
22. **openVALIDATION**: [github.com/openvalidation/ov-language-server](https://github.com/openvalidation/ov-language-server)

23. **MOCA**: [github.com/mrglassdanny/moca-language-server](https://github.com/mrglassdanny/moca-language-server)
23. **Veryl**: [github.com/dalance/veryl/tree/master/crates/languageserver](https://github.com/dalance/veryl/tree/master/crates/languageserver)

24. **openVALIDATION**: [github.com/openvalidation/ov-language-server](https://github.com/openvalidation/ov-language-server)
24. **Standard ML**: Millet

25. **Veryl**: [github.com/dalance/veryl/tree/master/crates/languageserver](https://github.com/dalance/veryl/tree/master/crates/languageserver)

26. **Standard ML**: Millet

27. **Systemtap**: Systemtap LSP
25. **Systemtap**: Systemtap LSP

0 comments on commit 0aa36e4

Please sign in to comment.