Extending Ruby LSP with Prism
The article discusses the extension of Ruby LSP using Prism to enhance the coding experience in Ruby projects. It highlights the implementation of a 'go to definition' feature for render calls in view templates, which was previously available in rails.vim. The author provides insights into the mechanics of language servers and the process of creating custom add-ons for Ruby LSP.
- ▪Ruby LSP is built on top of Prism, Rubydex, and RBS, offering various features for Ruby code editing.
- ▪The author transitioned from Vim to Zed and found Ruby LSP to provide modern editor functionalities.
- ▪The article details how to implement a 'go to definition' feature for render calls in Ruby LSP.
Opening excerpt (first ~120 words) tap to expand
May 26, 2026 Extending Ruby LSP with Prism Ruby LSP is a wonderful language server built on top of Prism, Rubydex and RBS. It implements a variety of features that enrich the code editing experience in Ruby projects. Its add-on architecture allows extending it with Rails features, Rubocop support and custom functionality. Coming from Vim, I was really used to rails.vim. When I switched to Zed, I started using Ruby LSP. In some ways I felt like I’ve gained superpowers, as now I had all these modern editor features that are possible because my Ruby code is actually being parsed. On the other hand, I found there were some features I was missing. One such feature was following render calls in view templates.
…
Excerpt limited to ~120 words for fair-use compliance. The full article is at Janko Marohnić.