typescript-lan
intellij-lsp-server
typescript-lan | intellij-lsp-server | |
---|---|---|
2 | 2 | |
- | 314 | |
- | - | |
- | 0.0 | |
- | about 5 years ago | |
Kotlin | ||
- | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
typescript-lan
-
Let's write an Emacs treesitter major mode
That was interesting, thanks for pointing it out
I was tremendously sad to see that the Typescript Language Server wasn't owned by Microsoft <https://microsoft.github.io/language-server-protocol/impleme...>, since if there was any sanity in the world a spec bump would travel with a reference implementation showing how they envision such a thing being used
But, I found that the Typescript Language Server that they did list does indeed have a semantic-tokens module in it, although it's much shorter than I would have expected from reading that section in the spec: https://github.com/typescript-language-server/typescript-lan...
-
Why LSP?
One thing I have difficulty understanding is that given MS is (was?) the primary proponent of LSP, why do community projects like typescript-language-server need to exist ?
Why can't arbitrary LSP clients connect directly to tsserver (maintained by MS) ?
[1] https://github.com/typescript-language-server/typescript-lan...
intellij-lsp-server
-
Why LSP?
I once had the idea of implementing an LSP server by embedding it as an IntelliJ plugin and backgrounding the IDE while doing the actual coding in Emacs.
It kind of worked, but once I stopped needing to use Java for my job it became too much of a hassle to flesh out.
https://github.com/Ruin0x11/intellij-lsp-server
-
Rust-Analyzer Architecture
The LSP means every single language server has to reinvent the wheel again and again.
It’d have been much more useful to build bindings for IDEA plugins so they could be integrated into arbitrary editors, especially as the IDEA plugins for most languages even after several years of LSP development are still superior.
All in all it’s like the whole JVM vs. WASM, Java vs Electron story again, with someone deciding to reinvent the wheel but worse.
There’s even bindings like https://github.com/Ruin0x11/intellij-lsp-server or https://plugins.jetbrains.com/plugin/10209-lsp-support to glue it all back together.
It’d have been much simpler to reuse an existing ecosystem from the start.
What are some alternatives?
leo-editor - Leo is an Outliner, Editor, IDE and PIM written in 100% Python.
language-server-protocol - Defines a common protocol for language servers.
neovim - Vim-fork focused on extensibility and usability
trouble.nvim - 🚦 A pretty diagnostics, references, telescope results, quickfix and location list to help you solve all the trouble your code is causing.
nvim-lspconfig - Quickstart configs for Nvim LSP
lsp-mode - Emacs client/library for the Language Server Protocol
rust-analyzer - A Rust compiler front-end for IDEs [Moved to: https://github.com/rust-lang/rust-analyzer]
rust-analyzer - A Rust compiler front-end for IDEs
tree-sitter-module - Building script for tree-sitter language definitions
eglot - A client for Language Server Protocol servers