intellij-lsp-server
vim-local-history
intellij-lsp-server | vim-local-history | |
---|---|---|
2 | 2 | |
314 | 32 | |
- | - | |
0.0 | 10.0 | |
about 5 years ago | over 3 years ago | |
Kotlin | Python | |
GNU General Public License v3.0 or later | MIT License |
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.
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.
vim-local-history
-
Auto formatting in shared repo's/projects
There is a similar nvim plugin, but I'm not sure if it is still compatible: https://github.com/dinhhuy258/vim-local-history
-
Why LSP?
Didn't realize I was talking to the person who worked both on IntelliJ Rust and rust-analyzer!
This is the best case I've ever heard for IDEs. Thank you!!
1 and 3 seem to me to require extensions/improvements to the LSP protocol.
2, and 6 seem like one could build them off of treesitter (but I don't think anyone has as of yet).
5 seems already implemented in a vim plugin[0].
Thanks for 4 and 7 (the "myriad of small, polished details") also, I feel like I have to spend a week using an IDE to get a feel for them.
[0] https://github.com/dinhhuy258/vim-local-history
What are some alternatives?
language-server-protocol - Defines a common protocol for language servers.
trouble.nvim - 🚦 A pretty diagnostics, references, telescope results, quickfix and location list to help you solve all the trouble your code is causing.
neovim - Vim-fork focused on extensibility and usability
AstroNvim - AstroNvim is an aesthetic and feature-rich neovim config that is extensible and easy to use with a great set of plugins
nvim-lspconfig - Quickstart configs for Nvim LSP
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
formatter.nvim
eglot - A client for Language Server Protocol servers
ncm2 - :heart: Slim, Fast and Hackable Completion Framework for Neovim