From VS Code to Helix
90 comments
·October 29, 2025eviks
bccdee
> And the way out is the same as with vim - just pick someone else who has done it
I think the crucial thing here is that most people don't do it, because it works out of the box. You can change any of the keybindings and any of a few hundred settings if you want, but the defaults are good, so you don't have to. My helix config sets the theme and soft-wrap and that's about it.
eviks
In what way do vim default keybinds not work vs Helix's since they seem to be very similar (outside of the whole selection-first behavior inversion)?
In general, I agree that good defaults is the way to go, and vim is worse here (except for the theme, helix's default is bad), though again, the alternative isn't a many knobs paralysis, but a better starting set.
KaiserPro
I'm not sure I follow the argument being made here.
"I don't like vim as you need to install plugins to make it work"
"helix is a dumb editor, so it needs a language server."
Then they go and list the number of plugins they install. This seems to argue against what their main point
I now use VScode most of the time, however to me its a fancy VIM variant, because I'm so used to vim bindings.
I can and do use raw vim, although not for any serious programming recently. If I were then I'd have syntastic installed and possibly some more advanced linter.
However! If it makes them happy, then this is a good thing™.
jsmailes
Helix and other new editors (kakoune comes to mind) always appealed to me because they seemed to have slightly more intuitive approaches to editing than vim, but I just don't think I can ever switch, purely because vim just exists everywhere I need it. It (or vi) is installed on practically every system I ever touch by default, and almost every IDE/editor under the sun supports vim keybinds either natively or via well-maintained plugins.
It's the same problem with keyboard layouts: I'm sure I could learn to be slightly faster on dvorak/colemak, but nothing beats the convenience of always having guaranteed access to qwerty, everywhere I go.
lycopodiopsida
> I'm sure I could learn to be slightly faster on dvorak/colemak, but nothing beats the convenience of always having guaranteed access to qwerty, everywhere I go.
Colemak/Dvorak is not about speed, but about comfort and avoiding RSI (though I would place the actual layout somewhere far down on the list, a proper ergonomic KB is top priority). Also, in my ~8 years on Colemak lack of access to it was a problem exactly 0 times. I don't type books on other people's computers, and if I would, typing blind on a keyboard I am not used to is anyway a hopeless endeavor.
stronglikedan
> avoiding RSI
I tried all manner of keyboards over the years, and in my opinion, none of them solve RSI. I'm now back to a standard qwerty for the same reason as OP - they're just immediately available everywhere.
What did help my no-longer-existent RSI was simple - I don't rest my wrists any more like I was taught in high school typing class (by an instructor that would whack our hands with a ruler if we were caught resting our wrists).
I do have a bit of De Quervain's Tenosynovitis from the mouse, but I'm solving that with one of those hand stretchers that hook to your fingers and provide resistance when opening the hand. 100 reps a day (25x4) and I haven't really felt it in weeks. Turns out that working out the muscles opposite to the ones you think is the key (therapy putty did nothing).
milch
Personally I started getting wrist pain 2 or 3 years ago. I have been using Colemak anyway for more than 15 years - my original reason for switching was because the German QWERTZ layout I grew up with is not very programming friendly, symbols like []<>{}/\ are hidden away behind hard to type chords. I found as a nice side benefit that my typing speed increased by 20-30 or so WPM... I did also have typing classes in school, so it is not simply because I started paying more attention to learning how to type with the new system.
After switching to a split keyboard my pain went away, and I think I learned that at least for me it was caused by exactly these symbols - on both US QWERTY and Colemak when you constantly type [];:{}| and so on, your pinky has to reach over to do it. At least for me that meant contorting my hand a bit to reach over. On my split keyboard all the symbols are behind a layer on the home row, and I barely use the pinky for anything, which fixes the issue. I also learned to hover while switching to the split keyboard, but that did nothing for my wrist pain when going back to my laptop's built in keyboard - after a full day of programming there the pain is back.
tracker1
I find that just going from a membrane keyboard to a physical key switch keyboard with bump that it helps a lot... I type relatively lightly. I really like the original buckling spring keyboards from Unicomp, but others around me prefer me using my Cherry MX Brown switch keyboards which are relatively close.
The physical bump helps you type without bottoming out with practice it helps a lot with RSI, at least from my N:1 experience.
lycopodiopsida
I've tried a lot of keyboards over the years – ergonomic ones, such KA2 and Glove80 (now) absolutely did solve my RSI issues. Pain may have many issues, such joints, posture problems (pinching nerves in shoulders/elbow) but getting a proper chair and ergonomic split keyboard is still my number 1 advice. Also more sport, if it is not too severe.
Going to a doctor should also be high on the list, but unfortunately, I have yet to see one willing to do a proper diagnosis. My experience there is more than mixed, so you have to experiment yourself.
trostaft
Do you have any opinions on ergoKB? I've begun to notice some pain, not in my wrists, but in my upper forearms and am thinking about something to fix that.
boterock
And regarding availability, Colemak is now included in Windows 11, which makes it available out of the box in all 3 major OS's. Also, Colemak is an easy way to upgrade comfort in cases where you can't change the keyboard, like a laptop or shared computer.
lordleft
This is what is keeping me from trying Helix in a serious way. I don't want to learn slightly distinct vi-like keybindings and mess up my muscle memory.
dkdcio
same -- I wish Helix would just have a full vi-compatible mode, it would probably be enough to get me to switch
the other thing for me is lack of the GitHub Copilot extension. I am far too used to having tab-complete. there's some effort for Helix extensions to handle this but it's not close to on-par last time I checked
airstrike
Ask and you shall receive
noir_lord
It's a classic switching cost problem, to make it worth switching the effort either needs be below a threshold or the outcome has to be much better otherwise people won't switch - i.e. a killer feature/features.
hajile
> I'm sure I could learn to be slightly faster on dvorak/colemak
The speed is about the same. The big colmak win for me was that my hands/arms didn't ache after long typing sessions. Ergonomics and not getting repetitive motion injuries matter to me more than compatibility (though I can still type in qwerty even if it's slower these days).
eviks
> nothing beats the convenience of always having guaranteed access to qwerty, everywhere I go.
(less so for keyboard layout since it's harder to fix in other machines) but the ergonomics of your 99% use cases - using your own keyboard/your own editor config with 1% awkwardness when you can't copy a config beats the health-hazardous use 100% of the time.
> via well-maintained plugins
so those can read your vim config and maintain your better keybinds, right?
allknowingfrog
I switched from Qwerty to Dvorak in my 20s, and now from Vim to Helix in my 30s. Both transitions were rough for a couple of weeks, but honestly less difficult than expected. Neither choice turned me into a 10x developer, but neither one has ever caused a problem that I cared about either.
Do you spend a lot of time on systems that you don't control? Dvorak discourages other people from helping themselves to my keyboard, which is honestly worth more to me than being able to go the opposite direction.
lenkite
I don't understand. VIM has a visual mode too if you want it. Just press `v`, do your selection and then operate on the selection. But frankly, the operator-motion is better, esp if you have repetitive editing to do. It is easier to repeat the same or combine the into a macro.
Feel less efficient with Helix motions:
https://www.reddit.com/r/HelixEditor/comments/1h5qqg7/i_feel...
null
preommr
> Microsoft is also based in the USA, and the political climate over there makes me want to depend as little as possible on American tools. I know that’s a long, uphill battle, but we have to start somewhere.
I miss the days when we had militant, but more entertaining zealots like Stallman. Whatever else you can say about his antics, Stallman was comitted. And that craziness wrapped back around to being entertaining.
Now we just get whatever this is - basically the equivalent of someone declaring they're going to try being vegetarian by not eating the tips of chicken wings anymore. Like dude, fork Vscode and start hosting it on your own custom vc system that was hacked together as a side project.
Where's the fire and passion behind the resistance?
janice1999
> Where's the fire and passion behind the resistance?
The working class are exhausted and a paycheck away from losing their homes. People don't have the time or energy to fight back for privacy/sovereignty/whatever inconveniences those in power. Stallman grew up privileged, went to the best universities at the best possible time and worked in academia. He had plenty of time to devote to political causes.
monooso
I'm not sure if this counts as an act of "resistance", but either way its value isn't dependent upon the amount of faffing involved.
dkdcio
I recently learned about the whole “GNU/Linux” naming thing and got a good kick out of it
allknowingfrog
Helix is great if you just want something fast that gets out of your way. If you want plugins and integrations and other magic, it's probably not for you. I used Vim for the past decade, because it fits the way my brain works. Helix captures that same spirit, but with some polish and friendliness that can only come from starting fresh, and abandoning years of entrenched design decisions.
Helix is a fantastic terminal-based editor. I would rather type in mittens than use a GUI editor. If that resonates with you, maybe give it a try. If you love your GUI, I don't think Helix will be the thing that changes your mind.
NoboruWataya
I do almost all my development on JetBrains IDEs (Rust, Python, Kotlin). IME they are unmatched for giving you code insights and suggested fixes (combined with "click here to do that") out of the box. But they are absolute resource hogs and I don't trust that they (or their best features) will always remain free.
I've tried to get into neovim a few times. It's fine for basic editing and I use it a bit when I am ssh'd into a box without a graphical environment, or I'm just not bothered booting up a full IDE. But the UI still feels less intuitive to me than JetBrains, and by the time I've installed and configured the various plugins that should give me anything approaching JetBrains' functionality the whole setup feels very fragile, like it could break at any moment and I wouldn't easily be able to fix it. In the regard, Helix having more stuff OOTB feels like it could be a definite improvement.
dkarl
25 years ago, naive me thought we'd eventually figure out how to use text editors as components within other applications like IDEs. A protocol would evolve to let IDEs and editors work together. The same protocol would allow every text box in a browser to be your favorite editor.
LSP is much more practical, but much less than I hoped for.
f311a
I was using it for 10 years, and now I'm using Helix and occasionally open JetBrains tools to do some refactoring.
I just hate the idea of opening two IDEs because my work repo is in Go and Python. Also, the IDEs are not getting faster, only slower.
lgunsch
I've been using JetBrains IDEs for the last 11 years. Before that I used Emacs and Sublime Text. I've tried VSCode, Zed, and others. There's just no comparison on the code insights and code manipulation tools. LSP is far behind what JetBrains can do, although it's slowly catching up these days. I still use VSCode from time to time for other languages like Zig.
I've never experienced sluggishness, but, I also keep track of how much memory it's using and ensure I don't run low. It's clearly a huge resource hog, but I'm also glad for that. It's using all of my computers resources to analyze the code in amazing ways which help me develop fast. Emacs, Sublime Text, and others were all about typing speed. Fast development goes far beyond just typing speed.
Cthulhu_
I'm also on the jetbrains train, but I stopped using it for a while because they're sluggish. An editor's interface should never lock up, an editor should never have popups that demand focus, etc but both intellij and vs code do this.
At the moment I'm on VS Code again because Sublime Text isn't keeping up to date anymore (its ecosystem has mostly been dormant since 2014 or 2016) and Zed is still fully in development and doesn't have some of the extensions and tools that I sometimes use in VS Code.
If I were to go back to e.g. Java I'd probably use IntelliJ again, but then, the enterprise I work for would be shelling out for it.
null
roywiggins
I ended up switching to Zed after VS Code lost connection to my dev VM and locked up one too many times. I am not sure what the issue is- maybe the VM is just running out of memory and nuking the VSCode daemon? But either way, Zed has not had this problem at all.
I never had much problem with feeling VSCode was slow (outside of those lockups) but Zed surprised me by feeling actively fast. I do miss several extensions a lot though!
sorcercode
> I never had much problem with feeling VSCode was slow (outside of those lockups) but Zed surprised me by feeling actively fast.
well said. this is exactly how I felt too. when other folks ask why zed, and i tell them it's fast - i couldn't quite capture that feeling but this comment nails it.
Zed actively feels faster than VSCode or equivalent editors; but once you get comfortable with Zed's speed, it's hard to go back.
KronisLV
> But they are absolute resource hogs and I don't trust that they (or their best features) will always remain free.
I use quite a few of their IDEs for various use cases (Java, .NET, Python, Go, JS projects and some DB interaction) and ended up just buying their ultimate pack. For individual use, it was like 360 EUR with VAT per year that went down to 216 EUR by year 3 of staying subscribed. Just so I wouldn't have to deal with any artificial limitations and could use all of their tools instead of some Frankenstein setup where I have to install all sorts of plugins into IntelliJ.
Their AI tools are also pretty decent (Junie was lovely to use, despite the rate limits), the idea behind the free Fleet editor was also cool but it kinda sucked in comparison to VSC. That said, if the JetBrains IDEs ever get enshittified, I'm throwing them into the trash and moving over to just VSC with a frickload of plugins and AI slop coding to make up for the lack of comparably good refactoring tools and such. Until then, I'm okay with paying for their software, same as I pay for MobaXTerm and support FreeFileSync etc., I guess my point is that I largely view them as a commercial product and wouldn't count on that much being or remaining free.
gaoshan
I used Helix for a couple of days and really liked it for the most part. However, I would sometimes encounter a small, simple thing that I do without thinking in VS Code but just did not know the command for in Helix. I would look it up, think, "Sweet, that's efficient" and move on. This kept happening and finally I was in a situation where I just needed to move fast and did not have time to investigate how to do it in Helix so I switched back and... never returned.
It was a learning curve issue for me, not a functionality issue. I'll probably return at some point (like when the EOY season becomes slower and I have more time to explore) but for now I'm back to cruising in VS Code.
wuhhh
I have a similar story but with neovim (and for the same reason as the author; growing unease with big tech). Tried and failed to make the switch a few times but made a concerted effort to stick with it throughout a specific project and now it’s second nature. I found it useful to research idiomatic (n)vim ways of doing things whenever I’d get frustrated or feel I’d be doing something more quickly in VSCode and commit them to memory by using new commands a few times over. Right now I’d say search/replace is the only thing that’s still not as ergonomic for me in vim as it is in Code. What I do is visually highlight my search phrase, hit asterisk then :%s//replaced - I learned that you can omit the search pattern using this technique.
Anyway nvim and helix are both amazing and terminal editors are both cool and sexy, so why wouldn’t you? ;)
pigcat
Woah, how did I not know about that tip about omitting the search pattern? Love it and will be using that lots!
As a thank you, I'll leave you with the way I learned to search/replace, just to give you a slightly different flavour: asterisk, cgn ([c]hange [g]o [n]ext), type replaced, then . (period, to repeat) until I'm done.
wuhhh
Right back at you, that’s super neat!
e12e
I'm a mostly happy helix user - but I'm still struggling to get debugging to work - both with ruby/rails and typescript/node (Adonis).
Apparently DAP protocol support has been merged - but I find the documentation lacking, and afaik for typescript/javascript it won't work out of the box, as helix needs a pointers to the dap server (and that can't simply be in PATH)?
How are everyone debugging with Helix?
kace91
A few days ago I was randomly reading about ed (after stumbling with the 'ed is the standard editor' joke) and reflecting over how much historical baggage we accumulate in computing.
Commands like a for appending text are unchanged from the teletype era, which are so old that most people don't know computers used printers as an output before screens!
It's pushed me to learn about projects that try to move beyond acumulated baggage and rethink principles.
I've been taking a look at Nushell for example, and even though I was initially skeptical of Helix because of how universal vim commands are, perhaps it's time to take a deeper look.
conartist6
Come check out BABLR! https://github.com/bablr-lang https://discord.gg/NfMNyYN6cX
We'll have a major release announcement any day now, but we're looking hard at the accumulated baggage and we think we can lose a lot of that weight while giving people a level of power they never had before
anticodon
> Commands like a for appending text are unchanged from the teletype era
I don't find these commands a historical baggage. They're quite useful even today. Also commands like A, I, P, O in vim are super-useful when recording macros (macros are easier to record and more robust because they less depend on the context where they would be run).
donpdonp
The best part of this article for me is the link to these well made 3rd party docs for helix.
https://helix-nikita-revencos-projects.vercel.app/start-here...
linsomniac
Just yesterday I think I reached the breaking point with vim. Been using vi and derivatives for 40 years, but the amount of tweaking to get a usable setup is really annoying me. I've gotten to the point where LSP is a must have.
Yesterday I was trying to switch my Astro VIM setup from using black to using "ruff format", which lead me down the path of installing astro from scratch, re-configuring it for my "must haves", and then trying again to get my formatter switched to ruff. I reinstalled because the docs looked like there may be a new way to do it since my last install 6 months ago.
The documentation for Astro VIM is really incomplete. Claude was fairly helpful, maybe Claude Code would be better, since it'll have the context of my exact configs rather than Claude giving me 3-5 options for making the change.
I've got a helix cheatsheet on my desk that I had Claude make me ~3 months ago. I started my work journal in helix this morning, but the install on that system must be broken because I couldn't even exit insert mode, pressing ESC did nothing.
I'm at the point where I think vim is a great library for building a text editor, but nobody has built a great text editor in it yet. I really liked LunarVim but that got abandoned for reasons I don't fully understand.
> Being a lazy person, I never bothered looking up VS Code shortcuts. Because the learning curve for Helix is slightly steeper, you have to learn those shortcuts that make moving around feel so easy.
This doesn't make sense: if you were truly lazy, you wouldn't spend any effort learning a more complicated app, you'd simply not switch!
> with a few knobs for minor preferences. I am subject to choice paralysis, so making me configure an editor before I’ve even started editing is the best way to tank my productivity.
There are a couple of hundreds of options https://docs.helix-editor.com/editor.html and even more hundreds of keybinds https://docs.helix-editor.com/keymap.html to reconfigure, so you can knob yourself to death with Helix just like with any other configurable app. And the way out is the same as with vim - just pick someone else who has done it and has published the results before dying and use those!