They just said :wq in school, so thanks for the tip. Hard to believe it saves even when the file hasn't been changed if you use :wq. What is the use case for that? If the file gets changed in another program and you want to revert??
Edit: Just saw the comment about the modification times being updated.
Heh yeah and it's not like it makes any difference; they're effectively the same thing. :wq just updates modification time even if there were no changes – same as doing :w and :q separately – but :x doesn't. Super intuitive interface 😅
I don't do a lot of text editing in terminal, but I used to have to at my last job and I always reached for nano and gave instructions fot nano since it's just pick up and use.
Nano is a fantastic default editor for gui-focused distros. If you aren't a command line wizard, nano is a better default because it's a lot more straightforward.
That said, nano is incredibly limited and if you have any experience with vi/vim/nvim, it's the best solution full stop. It's so much faster and more powerful but hot damn is it unintuitive for noobs.
I was using vim for the first time the other day and I was running through the built in vimtutor. I got a call from a friend and they asked what I was up to, and I said I was doing a tutorial for a text editor. At that moment, I felt simultaneously very silly and very smart.
Well yeah, I'd say the same concept applies to using anything tech related these days. It'd be like if you "knew" where all of the keys on a keyboard layout that you don't normally use are located - you'd still need muscle memory to actually use it efficiently.
Yeah, again, I don't do much terminal text editing. I have an IDE. If I'm trying to help someone across the country 1000 miles away fix something on the machine I develop for, I'm going to give them instructions on something that will be incredibly easy to use. I don't want to have to explain why the arrow keys aren't working and why they have to use jkl; to navigate or explain how enter edit mode or how so save and exit. Keep it simple stupid.
I mean it does support LSP, natively, I found that ultimately that's all the plugins I really need. It working out of the box and not requiring megabytes of configuration files is one of its great strengths.
If all you need is some customisation it's perfectly possible to write custom commands that execute sequences of commands. Including calling out to the shell and piping to and from external programs. Strictly static sequences though unlike the abomination that is vimscript they're not making keybindings a scripting language...
I'm a vim and emacs user for some decades already. I had this urge one day to try and work with helix. It kind of misses some things such as file manager or editorconfig support. Nine months later I'm still using helix. It still misses these things, but I really started to like how I don't need any plugins to work with it and I need about five lines of configuration to have a usable editor. Probably going to continue using it.
And it is written in Rust, which is my main language and I can just jump in to the editor source and fix things if needed.
I miss magit and org from emacs a lot though. Every time I need to write an article, I do it in emacs.
Indeed. Make sure to start it with hx --tutor the first time around so you know how to quit :)
And no matter what you do when giving it a try do it in a time and place where you can go at least a week without vi as the command grammar is close yet different enough to completely confuse your muscle memory, you don't want to mix them up (helix uses a strict selection-action command set so you get 'wd' instead of 'dw' and stuff).