Helix: A Neovim inspired editor, written in Rust (https://github.com/helix-editor/helix)
449 points by behnamoh at 1665369925 | hide | past | favorite | 306 comments.
Comments
exDM69 at 1665395705

I&#x27;ve used Helix for all my recreational programming projects (in Rust) for about 6 months and I&#x27;ve written about 10kLOC of code with it. Still using vim at $WORK for a variety of reasons (giant c++ codebase that does not easily plug in to clangd&#x2F;LSP), but I might be doing the switch soon.<p>Installation was easy and the default configuration is good. Plugging in rust-analyzer still needed a line or two of config file editing, but that should not be necessary for very long. Hint: use `hx --health` to check that all the tools are properly installed and configured (it shows a matrix of programming languages and their associated tooling, with red&#x2F;green check marks).<p>My Helix config file is about 5 lines long, but my Vim config is in the hundreds of lines.<p>I had very little friction coming from Vim and a little bit of Kakoune.<p>I particularly like the fact that all the important features are built-in and not half baked scripts with unintended side effects (e.g. opening a Makefile in Vim triggers a ftplugin script that messes editor-global config instead of buffer-local, with the default out of the box scripts).<p>Lots of people are requesting a plugin extension system, which is kinda understandable since every editor seems to have one. But I haven&#x27;t had a need to add any kind of plugin, and it&#x27;s easy enough to fork a shell for an external process if needed.<p>It&#x27;s still rough around the edges, but good enough for a daily driver.<p>Thanks to everyone working on the project.

reply
p-e-w at 1665382434

I fully expect Helix to replace Vim, Neovim, and Kakoune for most users in the long run.<p>Helix is built from the ground up around Tree-Sitter and LSP. This means you get the best syntax highlighting available, and IDE-like functionality, with zero configuration required other than installing the appropriate language server.<p>Those are <i>by far</i> the most important features for a text editor to have, and crucially, they are fully integrated into Helix, but are an afterthought in (Neo)vim and Kakoune. The quality difference is obvious the moment you try it side by side. Nothing else really matters. Vim&#x27;s and Kakoune&#x27;s syntax highlighting is terrible, and while Neovim can now use Tree-Sitter as well, there always seem to be some additional hoops the user needs to jump through in order to get it to work. Not so with Helix.<p>Regrettably, Helix has inherited Vim&#x27;s worst design flaw, namely being unusable with non-English keyboard layouts, but all other Vim derivatives share this flaw as well so I don&#x27;t see that stopping Helix from steamrolling the competition once it matures and the word spreads.

reply
wvh at 1665396466

I have been trying out Helix for the last few months as part of my now 24 year quest to incorporate some form of vi into my daily routine. This time, it&#x27;s looking good. What sets it apart are the (zero-conf) built-in LSP and tree-sitter highlighting, and the select-verb modal keybindings instead of vi&#x27;s verb-object syntax, where you see what you&#x27;re about to do before you do it. Some of the key combinations also show a reminder menu, aiding the learning process, which is a nice touch over plain old vi which has zero discoverability. General performance is also very good, the editor feels a lot snappier than a fully loaded Neovim or Doom Emacs, or a monster like Visual Code.<p>I think there are plans to see if a graphical editor could be built on top of it, which would be an interesting project. As a new Rust graphical tree-sitter based editor, it would probably rival the upcoming open-or-not Zed editor by the Atom folks.

reply
archseer at 1665448185

Helix author here: I think the poster chose an unfortunate headline.<p>1) Helix was written to replace my neovim setup but is in fact kakoune inspired. 2) It&#x27;s written in Rust but I don&#x27;t draw focus to it precisely because RiiR&#x2F;&quot;X in Rust&quot; posts are getting a bit tiring to see.

reply
psuresh at 1665402869

Does this &#x27;written in Rust, written in Zig, written in Go&#x27; make any difference in the user experience? See this often nowadays.

reply
doix at 1665385545

Super cool to see another competitor in this space. There&#x27;s no support for tabs, I really hope it&#x27;s coming and they implement them in the same way vim does. So far the buffer&#x2F;window implementation matches vim (as far as I can tell), so I really hope the tab implementation matches as well.<p>If they could implement the client&#x2F;server architecture of kakoune, then this would really best editor (for me). It&#x27;s a shame each editor implements a different subset of all the features I like and I&#x27;m always choosing between them.<p>Edit: Looks like there&#x27;s an issue for tabs: <a href="https:&#x2F;&#x2F;github.com&#x2F;helix-editor&#x2F;helix&#x2F;issues&#x2F;2295" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;helix-editor&#x2F;helix&#x2F;issues&#x2F;2295</a> , doesn&#x27;t have too much traction. I hope someone picks it up, unfortunately my rust sucks far too much to get it done in any reasonable amount of time.

reply
cloverr20 at 1665390230

I have not tried the editor itself, but one thing that puts me off is how some people are claiming its going to replace vim&#x2F;nevoim and others by the virtue of its great LSP and tree sitter support. I am working as a full time developer for the last 4-5 years and I never needed to use auto complete (for long words C-x n is there) and the current syntax highlighting seems fine. Vim is working great for me and I don&#x27;t feel any reason to switch to others. Instead of bashing other editors, maybe just tell what makes your editor unique and why people would want to use it?

reply
scblock at 1665413010

I gave Helix a try last week and I think there are a lot of things to like about it, but until it supports soft text wrapping for prose documents it&#x27;s effectively useless to me. I&#x27;m not going to bounce back and forth between neovim and helix depending on whether I&#x27;m editing code, documentation, or personal notes.<p>The comments on the open issue in Github are not particularly encouraging.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;helix-editor&#x2F;helix&#x2F;issues&#x2F;136" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;helix-editor&#x2F;helix&#x2F;issues&#x2F;136</a>

reply
Protostome at 1665423180

I&#x27;m a big fan of open source software and have tons of respect for any OSS developer, regardless of the software he&#x2F;she develops.<p>But I have to say, as a developer who has been taking part in the OSS scence for the last 20 years, it is very strange to me that some developers feel obliged to indicate they wrote a piece of code with Rust.<p>If I&#x27;m a user, I care much more that this is a usable software than what kind of programming language was used. For all I care, write it in binary. Rust may be a great programming language, but it is only a mean to an end.

reply
cercatrova at 1665382327

See also Lapce, an editor also written in Rust although it&#x27;s trying to compete more with VSCode rather than Vim.<p>Also, RIP OniVim 2, it was great having been written in a similarly fast ReasonML&#x2F;OCaml but the creator ran out of funding and had to get a job. A shame, it even had compatibility with VSCode extensions.

reply