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

Programming

18320 readers
242 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 [email protected]



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?

(page 2) 50 comments
sorted by: hot top controversial new old
[–] [email protected] 4 points 1 week ago* (last edited 1 week ago)

VS, VSCode, Sublime, Neovim,

I use Sublime for short scripts in Python, VSCode for angular|typescript, VS for c# and neovim for elixir, elm and all new stuff I learn on my own.

[–] RandomVideos 4 points 1 week ago

I use the godot integrated code editor, but i am debating switching to writing the code in google slides and copying the text into notepad in a virtual machine

[–] [email protected] 3 points 1 week ago

neovim. i much prefer the motions of helix, but there’s just some plugins i can’t live without.

[–] [email protected] 3 points 1 week ago* (last edited 1 week ago)

I've used everything, vim, nvim, emacs, visual studio, vscode, sublime, codeblocks, android studio, xcode, bloodshed, intellij, eclipse, VB, geany, dreamweaver, qt, atom, and cursor (even though it’s really just a plugin)

It doesn't matter. It will never matter. I use vscode today because it handles everything I throw at it and it's easy to make extensions for. Or cursor if I'm feeling lazy, the agentic mode with claude is pretty damn good if your codebase is well established.

Don't get hung up on the editor, just use the tools available to get the job done, at the end of the day programming is converting concepts to text.

[–] [email protected] 3 points 1 week ago

I've moved on from vim to neovim, and I think I'll continue using something in that family in the future. It's a pretty stable experience overall, but the inclusion of LSPs and tree-sitter have been good improvements too.

Ultimately editors are tools, similar to keyboards, os-es, screens, chairs, shoes and so on. There are some objective quality differences between a well-constructed tool and some slapdash nonsense, and there are a huge amount of subjective quality differences. What suits me may not suit you, and vice versa.

It's generally good to try out some new (to you) stuff and see if you like it. If you do, great; if you don't, well, now you know. I think my worst experience was with Acme (or Wily? can't remember), during a phase where I experimented with Plan 9 stuff. Ultimately very not my cup of tea, but apparently Rob Pike (who made it) and some other gophers still enjoy it? Which is good for them, just like it's good for me that I can choose not to use it. It's just personal tastes, and I still think it's good that I gave it a go.

The debate over holding down modifier keys vs modes is also a part of the Emacs vs vi debate from many decades ago. There might be some statistics for what works best for the most people now, but again, use what suits you. And try some new stuff when you get curious, it's generally good for you.

[–] [email protected] 3 points 1 week ago* (last edited 1 week ago)

VSCode with the Vim plugin most of the time. Vim if I'm just editing something small and was already in a terminal.

Every IDE worth trying has Vim mode or a plugin for it, you don't need to use actual Vim to benefit from it!

[–] [email protected] 3 points 1 week ago

VS Code with your favorite plugins is pretty fantastic for any editing in my experience. I've tried others and they do seem to work well, but not well enough to warrant switching, and they often come with quirks that are just annoying enough to make me want to switch back.

I suggest trying others to know what's out there, even if you ultimately end up back on VS Code.

[–] 0101100101 3 points 1 week ago* (last edited 1 week ago)

Amateurs. I use butterflies.

https://xkcd.com/378/

[–] Feyd 3 points 1 week ago (2 children)

I keep hearing about how modal editing is faster

I've always been skeptical that optimizing text input speed would make a significant difference to overall performance. IMO if you are unhappy with your setup then look around but if you're not you don't need to have FOMO about it.

[–] verstra 2 points 1 week ago

That's the thing: I do feel vscode being slow. On my work machine, it's fine - it takes about two seconds to open a project from start. But on my older laptop, that's a solid 10 sec before I can start editing.

load more comments (1 replies)
[–] [email protected] 3 points 1 week ago

Mostly emacs, vi, or what IDE I happen to be using like Eclipse.

[–] [email protected] 2 points 1 week ago (1 children)

Well, I've successfully used LSP for Sublime Text before. Would probably still use it if I hadn't transitioned to Neovim recently.

load more comments (1 replies)
[–] [email protected] 2 points 1 week ago

If I'm working on a Qt project, I use Qt Creator, for a Java project I use Eclipse, otherwise I use VSCode.

[–] RustyShackleford 2 points 1 week ago* (last edited 1 week ago)

Zed and Helix for the GNU/Linux side, and VSCodium for the Windows side.

[–] [email protected] 2 points 1 week ago

Most code I write is Java and I use IntelliJ for that. When I write Python I use PyCharm, anything else, Visual Studio Code or VSCodium.

All of these have plugins for vim keybindings which are always the first thing I install. I almost never disable them.

[–] [email protected] 2 points 1 week ago

I use JetBrains Rider for dotnet (with Vim emulation), VS Code for general misc code editing (with Vim emulation), and NeoVim for quick in-terminal edits and Git workflows. I even have vi-mode enabled in my terminals, but I haven’t bothered trying to do it in browser yet.

My experience is that modal editing is only a little faster, but it’s much more comfy, even fun! I enjoy coding with modal editing much more so than modeless. Being able to zip around the code without having to move my fingers to the arrow cluster just feels nice.

[–] [email protected] 2 points 1 week ago

Sublime text, vi, eclipse, emacs depending what I'm doing

[–] Kissaki 2 points 1 week ago* (last edited 1 week ago) (2 children)

I mainly work with C#, where I use Visual Studio. I think I mainly changed bindings for expand selection, and go to definition, declaration, implementation (ALT+A/+S/+D). All other bindings work out for me.

Cursor and selection "jumping" with CTRL and SHIFT, and using multiple cursors is a regular occurrence for me. I largely keep using keyboard, but for navigating I do often switch to or combine it with mouse.

When it's not C#, it's often VS Code, or otherwise Notepad++ for non-IDE simple editing. For even simpler quick edits I also use Double Commanders integrated text editor.

I use TortoiseGit, and its diff editor. I sometimes make changes there too. I also occasionally use KDiff or Winmerge.


I think whether it's worth to learn a new one should be determined by 1. what are your pain points/shortcomings, 2. what are the promises or your hopes, and 3. testing it out.

If you explore a promise and quickly find it not useful to you, it may be easy and simple to dismiss a switch without investing more.

load more comments (2 replies)
[–] [email protected] 2 points 1 week ago

vscodium. Easy to use for beginners (i'm a beginner too), fully open-source, all microsoft tracking binaries removed. Aviable for Windows, Linux, macOS, darwin, propably bsd, or even as a webview, and supports a lot of architectures. Great for intrepeted languages, but supports compiled ones too

[–] [email protected] 2 points 1 week ago

vscodium and neovim extension

[–] [email protected] 2 points 1 week ago

Helix because it's easy to setup and hassle free, and it runs well on my 2009 ASUS Eee

[–] [email protected] 2 points 1 week ago

Why do people use vscode over codium? (Minus the two people who actually know the answer)

[–] [email protected] 2 points 1 week ago

@verstra I use Jetbrains for pretty much anything except C++, their editors are the best. I use it for PHP, Go, Java/Kotlin, C#, databases, Typescript and I'm probably missing something.

[–] [email protected] 2 points 1 week ago

Helix’s is amazing. It’s pretty simple and it has tons of out of the box features like lsp support. I switched from vim and never looked back tbh. It’s far superior

load more comments
view more: ‹ prev next ›