Live data from Hacker News

Helix: A Neovim inspired editor, written in Rust

github.com

211–220 of 321 posts

Re: Helix: A Neovim inspired editor, written in Rust

#211
post #114

I've used Helix for all my recreational programming projects (in Rust) for about 6 months and I'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/LSP), but I might be doing the switch soon. Installation was easy and the default configuration is good. Plugging in rust-analyzer still needed a line or two of config file e…

>I've used Helix for all my recreational programming projects (in Rust) for about 6 months and I'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/LSP), but I might be doing the switch soon. Do you have some supernatural ability to quickly (re)learn muscle memory for new keybindings? I’d consider myself a fairly advanc…

what does `ci"` do in vim? I'm decent with vim, but it didn't make sense to me - then I tried it and it didn't do anything.

Re: Helix: A Neovim inspired editor, written in Rust

#212
post #201

Earlier quoted context omitted.

You can also use `gh` and `gl` for start and end of line (and `gs` for first non-whitespace character in line). These options (among others) pop up when using helix and typing `g`.

Ok, so in vim I'd type 'd$' as "delete to end of line". What is the equivalent in helix? EDIT: while I'm here, where are the sentence and paragraph movements?

[deleted]

Re: Helix: A Neovim inspired editor, written in Rust

#213
post #120

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'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's verb-object syntax, where you see what you're about to do before you do it. Some of the key combinations also show…

Man, I don't know what has happened but the spur for new editors has.been delightful. I have been using Zed for a bit since I made it into the closed beta, but it has been very nice to use. VSCode does the job pretty well, but it just feels more clunky to me, and I have hitches quite often. It is not bad, but I want something more performant while giving me the style of vim and emacs. Zed definitely has some rough ed…

> Man, I don't know what has happened

My guess is that 4coder kicked all this off.

Re: Helix: A Neovim inspired editor, written in Rust

#214
post #211

Earlier quoted context omitted.

>I've used Helix for all my recreational programming projects (in Rust) for about 6 months and I'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/LSP), but I might be doing the switch soon. Do you have some supernatural ability to quickly (re)learn muscle memory for new keybindings? I’d consider myself a fairly advanc…

what does `ci"` do in vim? I'm decent with vim, but it didn't make sense to me - then I tried it and it didn't do anything.

Deletes text inside the nearest quotes and puts you in insert mode. You probably tried it without being inside a quoted string, that's why it did nothing.

Re: Helix: A Neovim inspired editor, written in Rust

#215
post #209
post #201

Earlier quoted context omitted.

Ok, so in vim I'd type 'd$' as "delete to end of line". What is the equivalent in helix? EDIT: while I'm here, where are the sentence and paragraph movements?

The fastest way to do this in Helix would be `t d`. edit: Paragraph and other object movement/selection is done by the `[`, `]` menu. `]p` for the next paragraph. Surrounds are done by the `m` menu.

Thanks, that's helpful.

I get it - so 't' is 'to' and enter is new line. Makes sense.

The menu under `[` looks good, but very code-focused and lacking sentences.

EDIT: I am finding it a bit weird to have 'go to's as different to movements. There isn't a distinction in vim, which is useful. I'm learning that 'ge' will take me to the end of file, but I can't do 'ged' to delete to there.

Re: Helix: A Neovim inspired editor, written in Rust

#216
post #211

Earlier quoted context omitted.

>I've used Helix for all my recreational programming projects (in Rust) for about 6 months and I'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/LSP), but I might be doing the switch soon. Do you have some supernatural ability to quickly (re)learn muscle memory for new keybindings? I’d consider myself a fairly advanc…

what does `ci"` do in vim? I'm decent with vim, but it didn't make sense to me - then I tried it and it didn't do anything.

Change inside doublequotes. You can also do `ci{` or similar to Change inside curly-braces or `di[` to Delete inside square brackets

Re: Helix: A Neovim inspired editor, written in Rust

#217
post #114

I've used Helix for all my recreational programming projects (in Rust) for about 6 months and I'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/LSP), but I might be doing the switch soon. Installation was easy and the default configuration is good. Plugging in rust-analyzer still needed a line or two of config file e…

> But I haven't had a need to add any kind of plugin, and it's easy enough to fork a shell for an external process if needed.

For me, coming from writing Clojure with Neovim + vim-sexp + vim-fireplace, I would need Paredit and REPL integration.

Paredit is doable with Treesitter, and I'm actually really excited about Helix's Treesitter integration--- every time I write a non-Lisp language, I miss structural editing, so it'll be nice for other languages catch up to Lisp on that front. It doesn't really look like it's quite there yet, though. The built-operations that use Treesitter are spare [0], and while you could implement operations like promote, slurp, and barf with them, you'd have to clobber some register. I don't see at all how you could implement splice without an actual language, since you would need a way to select all siblings of the current node.

REPL integration absolutely needs a plugin language. Unlike the LSP, there isn't a standard protocol for communicating with a REPL, so each language requires its own REPL client. Unless they want to ship a REPL client for every language under the sun, they'll have to provide some way for users to implement their own clients. That said, every time I look at Conjure, they've added REPL clients for more and more languages [1], so maybe it is feasible to have it built into the editor.

[0] https://docs.helix-editor.com/keymap.html

[1] https://github.com/Olical/conjure/

Re: Helix: A Neovim inspired editor, written in Rust

#218
post #142

Earlier quoted context omitted.

I actually think that the place where it could potentially really shine is when you have to do remote shell work. I don't know if you can specify the runtime folder but if you use it as a simple replacement for nano on old machines that don't have a proper editor this would be perfect.

vscode is very good at this, and is the primary reason why I even use it. Frankly speaking the vim/emacs lines are yet to catch up with this sort of thinking. vscode feels like you are editing on the local machine. The experience is seamless and feels magical.

>> when you have to do remote shell work

> vscode is very good at this

I'm sorry, but what? VSCode over ssh? Huh?

Re: Helix: A Neovim inspired editor, written in Rust

#219
post #218
post #142

Earlier quoted context omitted.

vscode is very good at this, and is the primary reason why I even use it. Frankly speaking the vim/emacs lines are yet to catch up with this sort of thinking. vscode feels like you are editing on the local machine. The experience is seamless and feels magical.

>> when you have to do remote shell work > vscode is very good at this I'm sorry, but what? VSCode over ssh? Huh?

VSCode remote ssh extension [0] allows you to develop remotely almost like locally.

[0] -- https://code.visualstudio.com/docs/remote/ssh

Re: Helix: A Neovim inspired editor, written in Rust

#220
I don't understand why "in Rust" makes these irrelevant posts somethign worth of the HN frontpage. All it means is that you won't be able to compile it yourself unless you use a fast rolling distro or out of repository tools to get this month's compatible rustc with rustup or curl|sh, etc.
Post reply on HN