Coders or lemmy, what editors do you use? Is it worth learning a new one?
-
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?
-
P [email protected] shared this topic on
-
I use Jetbrains' products for all my coding needs.
-
Do you use "home" "end" "ctrl-arrow" or any other interesting keybindings?
-
Netbeaners! Unite!
-
I use neovim but i think helix is honestly better ootb.
-
If I'm working on a Qt project, I use Qt Creator, for a Java project I use Eclipse, otherwise I use VSCode.
-
Helix is absolutely wonderful.
Used to use Vim/Neovim, but the hassle of setting it up and maintaining huge configuration files was a pain (for me).
Also I never really got it working the way I wanted and never had LSP working for all the languages I needed.
Helix on the other hand. My config file is under 20 lines, LSP works super for all my needs. Well thought out keybindings (mostly) and overall a joy to use.
Nice features and fast.
Still a bunch of things missing, it is a rather young piece of software, but I have been using it as my only editor for the last 1 1/2 years.
-
MicroEmacs http://www.jasspa.com/
No unicode support though. For that try
https://bionic.bloovis.com/cgit/microemacs/
.. but for work I still use Eclipse (sigh)
-
I took a look at Helix when I was trying to learn vim and found it very easy to get started with, but was concerned about missing out on learning more standard vim bindings and functionality.
I found LazyVim + NeoVim got me pretty much the same experience without diverging as much from vim. Mostly I appreciate having access to a cheatsheet for commands.
-
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.
-
I used to use Jetbrains when I was using C# (mostly stopped now), because it was better that VS and tooling elsewhere is mediocre, on purpose by ms. But beyond that I don't see the point. I say that as someone who has it for free through a student license. They're such heavy editors, only kinda cross language, extension ecosystem not as good as vscode.
Great default keybindings though, I've adopted a lot of them elsewhere too
-
I use either the default GUI text editor from each distro or Vim with stock configuration. I must say it does take surprisingly little to get up to speed with Vim, but I still struggle with specific things like moving code across files.
I haven't changed any keybindings in firefox, but heard qutebrowser is nice for such use case.
-
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.
-
I keep hearing about how modal editing is faster and I would like to switch to a more performant editor.
Honestly I've yet to hear a good argument for this. It feels like such a major investment to switch to vi-like editors, I need a pretty good argument before considering it
Also a good argument for "why does it matter"? Speed of editing is rarely a bottleneck when editing code. If it is, you might want to consider why your code is so verbose and repetitive to make it so
-
Yeah, keybindings are well thought out. The most off-putting thing of default vim is that there are about 5 different "delete" commands. One for a character, one for the whole line, one for selected text, one for end of line. In helix, this is all just "delete selected text" and then "x" is for selecting a line. Make so much more sense.
-
was concerned about missing out on learning more standard vim bindings and functionality.
What do you mean? Do the standard vim bindings have some specific quality that you are after?
Or do you work with many different servers and would have to use what ever editor is installed there? -
Well, I've successfully used LSP for Sublime Text before. Would probably still use it if I hadn't transitioned to Neovim recently.
-
I use Helix
TLDR: Yes I think helix is worth trying out. It has some missing features but it is an amazing piece of software.
Yes I use helix daily. It is very fun to use and you can do many things faster. It is particularly good when navigating a (large) codebase you know fairly well. You are able to jump around and find/edit relevant code very quickly.
Compared to vs code:
- it is much faster and more minimal
- It might be harder to get things up and running than in vs code, e.g. to get auto-completion working in helix you need to have the LSP for that language installed. It can be a bit confusing if you have never done it before but it is easy once you have done it a few times.
Compared to neovim I think it is:
- easier to learn
- slightly faster - especially with large files
- you will have a much smaller/simpler configuration. AFAIK Helix has more features working out of the box than neovim (file picker, lsp support ect) and needs less configuration to get things to a workable state.
The downside of helix compared to both neovim and vscode is that it does not have plugin support yet so you will need to use other tools in combination with it to get an equivalent experience. Here are some tools that are commonly used with helix:
- yazi - terminal file manager
- gitui or lazygit - terminal git user interface
- zellij - terminal pane manager
Helix really shines when performance matters. I have edited files with millions of lines and had no trouble on codebases where my colleagues IDE's become very slow.
I recommend you use the tutor (
hx --tutor
) for a few minutes each day to learn the keybidings. -
On windows i use vscodium, on linux neovim.
As others say i think helix is cool, but the limited customization is kind of meh for me. I love the keybinds for it though.
-
I use Emacs and love it. It's an amazingly frustrating (and just plain amazing) piece of software, but it's hard to move away from it because it's the only thing like it. Maybe if Lem every gets mature enough I might switch.
I probably wouldn't recommend it though as it's doesn't sound like what you're looking for.