From 28ccec344b1e800314ca9785b372e341dfc20235 Mon Sep 17 00:00:00 2001 From: Andy Stewart Date: Mon, 23 Sep 2024 07:44:03 +0800 Subject: [PATCH] Support Fennel language. --- README.md | 1 + README.zh-CN.md | 1 + langserver/fennel-ls.json | 8 ++++++++ lsp-bridge.el | 3 +++ todo.md | 20 +++++++++----------- 5 files changed, 22 insertions(+), 11 deletions(-) create mode 100644 langserver/fennel-ls.json diff --git a/README.md b/README.md index a767a95484..c13baef202 100644 --- a/README.md +++ b/README.md @@ -387,6 +387,7 @@ If your language supports mixed multi-language servers, it is recommended to che | | [nextls](https://github.com/elixir-tools/next-ls) | | | Elm | [elm-language-server](https://github.com/elm-tooling/elm-language-server) | | | Erlang | [erlang-ls](https://github.com/erlang-ls/erlang_ls) | | +| Fennel | [fennel-ls](https://git.sr.ht/~xerool/fennel-ls) | | | Fortran | [fortls](https://github.com/gnikit/fortls) | | | Futhark | [futhark-lsp](https://futhark-lang.org) | | | F# | [fsautocomplete](https://github.com/fsharp/FsAutoComplete) | | diff --git a/README.zh-CN.md b/README.zh-CN.md index dec73cb15f..ac3c47ba9a 100644 --- a/README.zh-CN.md +++ b/README.zh-CN.md @@ -382,6 +382,7 @@ lsp-bridge 针对许多语言都提供 2 个以上的语言服务器支持, | | [nextls](https://github.com/elixir-tools/next-ls) | | | Elm | [elm-language-server](https://github.com/elm-tooling/elm-language-server) | | | Erlang | [erlang-ls](https://github.com/erlang-ls/erlang_ls) | | +| Fennel | [fennel-ls](https://git.sr.ht/~xerool/fennel-ls) | | | Fortran | [fortls](https://github.com/gnikit/fortls) | | | Futhark | [futhark-lsp](https://futhark-lang.org) | | | F# | [fsautocomplete](https://github.com/fsharp/FsAutoComplete) | | diff --git a/langserver/fennel-ls.json b/langserver/fennel-ls.json new file mode 100644 index 0000000000..271fc9e3d8 --- /dev/null +++ b/langserver/fennel-ls.json @@ -0,0 +1,8 @@ +{ + "name": "fennel-ls", + "languageId": "fennel", + "command": [ + "fennel-ls" + ], + "settings": {} +} diff --git a/lsp-bridge.el b/lsp-bridge.el index c6836637dc..f5327beb5d 100644 --- a/lsp-bridge.el +++ b/lsp-bridge.el @@ -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") + (fennel-mode . "fennel-ls") (ttcn3-mode . "ntt") (v-mode . "v-analyzer") (cwl-mode . "benten") @@ -712,6 +713,7 @@ Possible choices are basedpyright_ruff, pyright_ruff, pyright-background-analysi solidity-mode-hook gleam-ts-mode-hook ada-mode-hook + fennel-mode-hook ttcn3-mode-hook v-mode-hook cwl-mode-hook @@ -791,6 +793,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 + (fennel-mode . lsp-bridge-indent-two-level) ; Fennel (ttcn3-mode . lsp-bridge-indent-four-level) ; TTCN3 (v-mode . lsp-bridge-indent-four-level) ; V (cwl-mode . lsp-bridge-indent-four-level) ; Common Workflow diff --git a/todo.md b/todo.md index 1df2fcfcec..bcf32d2596 100644 --- a/todo.md +++ b/todo.md @@ -26,22 +26,20 @@ Below LSP server haven't supported, PR are welcome. ;) 13. **Grain**: [github.com/grain-lang/grain](https://github.com/grain-lang/grain) (Emacs haven't mode to support grain language) -14. **Red**: [github.com/bitbegin/redlangserver](https://github.com/bitbegin/redlangserver) +14. **Red**: [github.com/bitbegin/redlangserver](https://github.com/bitbegin/redlangserver) (Emacs haven't mode to support red language) -15. **Fennel**: [git.sr.ht/~xerool/fennel-ls](https://git.sr.ht/~xerool/fennel-ls) +15. **Erg**: [github.com/erg-lang/erg/tree/main/crates/els](https://github.com/erg-lang/erg/tree/main/crates/els) -16. **Erg**: [github.com/erg-lang/erg/tree/main/crates/els](https://github.com/erg-lang/erg/tree/main/crates/els) +16. **Fuzion**: [github.com/tokiwa-software/fuzion-lsp-server](https://github.com/tokiwa-software/fuzion-lsp-server) -17. **Fuzion**: [github.com/tokiwa-software/fuzion-lsp-server](https://github.com/tokiwa-software/fuzion-lsp-server) +17. **Imandra Protocol Language**: [github.com/AestheticIntegration/ipl-vscode](https://github.com/AestheticIntegration/ipl-vscode) -18. **Imandra Protocol Language**: [github.com/AestheticIntegration/ipl-vscode](https://github.com/AestheticIntegration/ipl-vscode) +18. **MOCA**: [github.com/mrglassdanny/moca-language-server](https://github.com/mrglassdanny/moca-language-server) -19. **MOCA**: [github.com/mrglassdanny/moca-language-server](https://github.com/mrglassdanny/moca-language-server) +19. **openVALIDATION**: [github.com/openvalidation/ov-language-server](https://github.com/openvalidation/ov-language-server) -20. **openVALIDATION**: [github.com/openvalidation/ov-language-server](https://github.com/openvalidation/ov-language-server) +20. **Veryl**: [github.com/dalance/veryl/tree/master/crates/languageserver](https://github.com/dalance/veryl/tree/master/crates/languageserver) -21. **Veryl**: [github.com/dalance/veryl/tree/master/crates/languageserver](https://github.com/dalance/veryl/tree/master/crates/languageserver) +21. **Standard ML**: Millet -22. **Standard ML**: Millet - -23. **Systemtap**: Systemtap LSP +22. **Systemtap**: Systemtap LSP