this post was submitted on 09 Feb 2025
109 points (99.1% liked)

Programming

18142 readers
180 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 2 years ago
MODERATORS
 

When I was in high school I found Sublime Text and learned "multiple cursors". Since then, I've transitioned to vscode, mainly because I need LSP (without too much configuration work) for my work.

I keep hearing about how modal editing is faster and I would like to switch to a more performant editor. I've been looking at helix, as the 4th generation of the vi line of editors. Is anyone using it? Is it any good for the main code editor?

The problem that I have is that learning new editing keybindings would probably take me a month of time, before I get to the same amount of productivity (if I ever get here at all). So I'm looking for advice of people who have already done that before.

My code editing does involve a lot of "ctrl-arrow" to move around words, "ctrl-shift-arrow" to select words, "home/end" to move to beginning/end of the line, "ctrl-d" for "new cursor at next occurrence", "shift-alt-down" for "new cursor in the line below", "ctrl-shift-f" for "format file" and a few more to move around using LSP-provided "declaration"/"usages".

I would have to unlearn all of that.

Also, I do use "ctrl-arrow" to edit this post. Have you changed keybindings in firefox too?

you are viewing a single comment's thread
view the rest of the comments
[–] steventhedev@lemmy.world 7 points 1 day ago (2 children)

Throughout my career, I have used (in no particular order)

  • Eclipse (as Android Studio)
  • IntelliJ (as Android Studio)
  • SublimeText
  • VS Code
  • IntelliJ (as IntelliJ)
  • various CLI editors when sshing into servers (vim, nano, a few others)

Switching your muscle memory takes a long time, which is why you have things like spacemacs, or different keybind presets for almost all of these editors.

There is more value in understanding how to extend and customize your editor than in searching for a new one. Use whatever your workplace provides the best support for, and then customize it from there.

[–] Dark_Arc@social.packetloss.gg 3 points 1 day ago* (last edited 1 day ago)

There is more value in understanding how to extend and customize your editor than in searching for a new one. Use whatever your workplace provides the best support for, and then customize it from there.

I think there's something to be said for shaking up your environment periodically as well and trying new things. Sure, there's a week where you edit at a snails pace, followed by a month where you edit a bit slower than normal, but different tools really do have different pros and cons.

For the code bases I've worked in, this evolved from necessity as the code files were so large many editors were struggling, the rules for the style so custom that editors can't be properly configured to match, or the editor performance in general was questionable.

I went through a journey of sorts from IDEs to Electron based editors to Emacs and currently am working with Kakoune (and I've passed over a bunch of other editors like Sublime, Helix, and Zed that couldn't meet my requirements or didn't match my sensibilities -- even though a thing or two here or there really was excellent). Pretty much every change has been the result of the editor pain points that couldn't be addressed without actually working on the editor itself.

[–] abbadon420@lemm.ee 2 points 1 day ago

That's how I ended up with a latex plugin for intellij