But I never use vim by itself, I use it in other apps. And there's a perfectly good Helix plugin for VSCode, but I also use vim mode in Obsidian (since I'm constantly switching back and forth between Obsidian and VSCode) and there is currently no plugin for anything else. I need my code editor and my note editor to have the same controls, otherwise my brain gets confused.
Once a Helix or Kakoune plugin is created for Obsidian, I am switching straight away.
I fully agree – but why use two separate editors, then? (Full disclosure – I'm a long-time Emacs user, making most of my notes in Org-mode.)
Which one?
Oh... For my part, other binds are weird and less ergonomic from far. I'm vey used to vi-style: I mostly work in text mode (no GUI, no mouse) and I like to talk to my editor what I want...
My editor stack has been Zellij, Helix and gitui as of late, and, there's still a few important things missing for me, but still working on it...
Stress on the good ol wrists and digits though? Not really sure. If there is a reason to switch, it’d be based on that.
My preferred layout is HHKB/Tsangan, a minor variant on QWERTY that replaces Caps Lock with Control, moves Esc to the number row, collapses F-keys into a number row layer, and moves Backspace down where backslash/pipe are and even with that standard keyboards can be frustrating (you don’t realize how hard standard Esc and Backspace positions are to reach until you’ve tried this layout). I can’t imagine what it’d be like if I were using DVORAK or something.
Swapping wasn't hard, but it sure wasn't easy. Did you find going from B -> C (-> D?) easier than A -> B?
For me, going from B -> C and C -> D (and then a long period of tweaking) was significantly easier than from A -> B.
I had an acquaintance that told how he had spent years investing in Dvorak. He came back to QWERTY because he got a job where he had to jump onto others computers on occasion. The friction he felt fighting against his muscle memory was more annoying than any benefit he got from the supposed better Dvorak layout.
I now use VSCode for 90% of my stuff and I use vim whenever I ssh into boxes or if I really need a quick edit from the CLI. But I keep vim totally stock, not a single thing in my dot file. There are aspects of my previous highly-customized and personalized vim setup that I miss - but I am free from the frustration of them not being there.
As I get older, freedom from frustration has become more important than the marginal improvements of customization for efficiency.
I'm incredibly skeptical, however, that VSCode has as-good of a vim emulation layer as evil-mode. Evil-mode is just fantastic. Customized Emacs w/ evil-mode gives me everything I'd get from a fancy IDE, and keeps my vim muscle memory intact for those times when I am using regular vim.
This has been my pattern for a decade and it's glorious. GLORIOUS, I tell you! Few things give me joy in computing like the balance in the Force that I've managed to strike between Emacs and vim
Using mnemonic key bindings is much friendlier than dozens of random key combinations. There's a popular key-chord package[1] that minimizes this discomfort, but without editing modes, users need to be concerned with the chords clashing with their actual text, which is absurd. Modes address this issue gracefully.
I still use some basic combinations like M-x, but I would be completely lost in Emacs if it weren't for evil-mode. <3
The thing with modal UIs is that you want to use them everywhere. So I also enable vi-mode in my shells, and in any application that uses readline.
[1]
I use the native one as it's a little less "pure" about VIM and integrates better with VSCode things. Overall it's less evil than evil. ;)
If I need to program, I just copy my Emacs configuration to that machine. I have never encountered a situation where I'm forced to use stock Emacs, or someone else's Emacs configuration. If I need to make a quick edit from the CLI, using plain Vim is fine, but I feel more "at home" with my own tweaks. None of these things are hurdles that would make me settle for an editor that someone else has preconfigured for me.
At the end of the day, this will depend on how important you find customizing your working environment to your liking. If you're fine with someone else making that decision for you, you'd probably find the stock configuration, or someone else's configuration, acceptable. If OTOH you have strong opinions about the way you want to use your editor, then the time and effort invested in configuring it and managing that configuration is not an issue.
This goes beyond just text editors, and applies to computing in general. Some people are fine with using stock software as it comes from the manufacturer. Most software, in fact, is not deeply configurable. Apple devices and software are wildly popular despite lacking configuration. But the reason we choose operating systems like Linux, and text editors like Vim and Emacs is precisely because they give us the freedom to use our computers in the way we want to use them, not as someone else thinks we ought to.
And also consider Colemak-DH over Dvorak.
If you're worried about having to relearn Vim commands, it's not a big deal. You're not remembering the key positions but the mnemonics, so "dta" means "delete to a" not some key positions. You'll be fine.
Oh man, this was so difficult for me with a split ortho keyboard. I realized that most of my bindings now i don't actually "know". It's 100% muscle memory.
I had to keep a keyboard handy to "do the thing i want on the unplugged keyboard" to see what the bind was. Kinda mind blowing to me hah.
I did switch to a BEAKL layout, and then to my own layout.
So maybe we learn things differently?
it was used against the fish shell for example. yet eventually it started getting acceptance. the same may happen with kakoune. i tried using it myself. i wasn't so much bothered by the changes. i had different issues. i got burned by kakoune overwriting a file without warning me. vim would not have done that. and i couldn't get over the fact that kak means shit in some languages. it will take some more effort to overcome that and give it another try.
1) Few people will have benefit of learning Dvorak. What benefits they see comes from learning how to properly touch type by forcefully breaking bad habits with their original (usually QWERTY) keyboard layout.
2) Switch to Colemak or any more modern layout that takes advantage of bigrams/trigrams better. Colemak is genuinely superior to QWERTY beyond just learning to touch type.
I used to type 170~ WPM on QWERTY. Sustained. By all means an accomplished typist. I learned Dvorak well enough to get back up to 120~ WPM but saw no real benefits of using it: I already knew how to touch type. But QWERTY was causing my hands to cramp up over time and so I was on the search for improving that. I gave Colemak a try and it was a great relief. I only type 150~ WPM on Colemak after some years of using it but the lack of pain from typing for long periods of time is worth the small hit to my typing speed.
Almost every single person I see who touts benefits of learning Dvorak was typing <60WPM in QWERTY and did not know how to properly touch type. The benefits they see weren't from using Dvorak: it was from finally learning how to touch type properly.
Apologies as I know Dvorak wasn't really the focus of your post here. But in an attempt to perhaps make it still relevant: change every now and then is good. It can break you out of bad habits you didn't know you had learned and sometimes open you up to new ways of accomplishing something. As other replies have mentioned - I'm a big fan of Helix and gave up Neovim for it.
Xah Lee wrote an analysis on why he believes Dvorak is better than Colemak: <http://xahlee.info/kbd/dvorak_vs_colemak.html> and he brings up the frequency of the "th" digram, which on Colemak is a bit of an issue due to the finger travel.
That's an absurd speed.
I can touch type on QWERTY, and last I measured I hovered at around 100 WPM on my best efforts. But TBH typing speed is really not something I'm concerned about. When I'm programming, accuracy is more important than speed, and I spend much more time thinking than actually typing. And when I'm writing prose, I also make pauses to rethink what I'm writing, and go back and forth, refining the text to match my thoughts. So even if I typed much faster, my overall speed of communication or programming wouldn't improve.
I also haven't had any discomfort after decades of typing on QWERTY keyboards. I find it hard to believe that a different layout would reduce discomfort more than using an ergonomic keyboard, with proper wrist support and posture.
Typing on an actually ergonomic keyboard (currently a Keyboardio Model01) is a much more significant comfort difference.
Both together scratches an itch that I recognize not everyone has, but if you do have that itch, scratching it feels damn good.
Speaking from my own personal experience, I learned to touch type (properly) on QWERTY first, but after a while I switched to Colemak. After yet another while, I switched to Dvorak, and have been using it for several years now. For me, Dvorak has been slightly more comfortable than Colemak (which, in turn, was much more comfortable than QWERTY); though I have to admit I’ve never experienced significant pain or cramps just from typing. In any case, I find both layouts to be a great improvement over QWERTY, and certainly not only because of touch typing.
There's always a handful of exceptions to every rule but by and large from my experiences in the altkey layout communities the people who touted Dvorak the loudest largely didn't know how to type properly before learning Dvorak and it was their first alternative layout learned. So it's colored my view a bit.
I have regularly typed for >8 hours/day - nearly every day - since age 8. The hand pains didn't really start until I was in my 20's.
With that I fully agree, but then again - in my mind that exactly is the value proposition of any non-QWERTY-layout.
I also agree that ergonomics is more important than peek throughput.
But you neglect the cost. The cost of ruining shortcuts in many applications and/or complex OS settings just to be able to type. There are workarounds and solutions for most but I haven't been convinced it is a net gain.
So in my opinion, stay and invest in QWERTY instead. Regarding ergonomics use a split ortholinear keyboard. I am in doubt any layout will be as liberating as that and orders of magnitude less investment in time.
Everytime I use or think of a staggered keyboard I'm amazed at the design. Put your right hand over the right hand of the keyboard as if to type, the columns kind of naturally go with your fingers - not bad at all really. Then do the same with your left hand and it is just a clusterfuck.
Though I do have to acknowledge two things, you can of course use and benefit from an alternative layout on an ortholinear keyboard as well. And the cost of only feeling at home on a bespoke keyboard (not that it is different enough for you to not be able to use a normal keyboard) isn't negligible depending on your situation either.
It's significantly less valuable, but still worth learning an alternative keyboard layout, though Dvorak specifically isn't nearly as good as modern alternative like Colemak or Workman.
Vim is incredible for every reason except its keybinds. Technically, you can remap them, but that quickly devolves into dependency hell... learning to type using the Workman layout is why I'm an Emacs user today. One of these days I'll get around to making a truly configurable modular editor...that will most likely be an Emacs config.
1. Vim is muscle memory for a lot of us. Something that is so similar but not quite the same just fucks with my brain. I have an easier time using stock Emacs bindings than Kakoune, as my brain is not in Vim mode while using it.
2. VS Code, Fat Visual Studio, IntelliJ, Emacs, most IDEs/text editors, fuck even Compiler Explorer have Vim plugins that range in quality from acceptable to fantastic. You can get a fix for your vim needs even in a disgusting corporate Windows crackhouse environment.
3. If you're a purist, Vim itself has a great ecosystem, and can be reasonably used for a lot of tasks.