I actually learned how to use vi like 30 years ago and I had all the commands memorized. Then, nano came along. All the commands are at the bottom of the screen to remind you. It was just too tempting to pass up. However, I can’t help but suspect that somewhere out there I might have left a vi session open because maybe I mistyped. I might have accidentally typed ;q! instead of :q! or something.
I’m feeling old now… I’ve been using vi for 35y now and was happy when I got vi.exe on a dos box, as I hated edit. I still don’t like ‘simple’ editors like nano/joe.
I used kill to get out of emacs when trying it agter 7y of vi usage, so I get the need to get mideval on editors users aren’t used off. ;)
vi has always been my bane because I’m a sloppy typist. I can’t count the number of files i had to fix because they ended with :q i like nano because the commands are ctrl + whatever. i don’t make a mess.
I’m a sloppy typer as well, but somehow I notice my mistakes while I make them and correct them on the go.
What doesn’t help is that the readout of the keyboard hasn’t changed (got faster) since decades, which sometimes hinders me more then my sloppyness.
All the commands are at the bottom of the screen to remind you. It was just too tempting to pass up.
But you already had the Vi commands memorized. Did you forget them in the meantime?
No. I sloppily typed them. Did you see my other comment?
No
You can :q! any time you want, but you can never leave.
Insert Mode tho
It’s really easy, just unplug your computer.
-
Esc
× 2CTRL-[
× 2CTRL-\
CTRL-N
× 2
-
:q
:qa
:wq
:wq!
:wqa
:x
ZZ
:q!
ZQ
:q!
:cq
-
It’s the hotel California of text editors >:)
You can ZZ any time you like, but you can never leave.
Nano is pretty good if you’re in a terminal. Used to use vim for ssh related stuff but since nano added syntax highlights I didn’t go back.
Nano’s only appeal is that it’s beginner-friendly, but you already know Vim, so why switch?
Because Nano just works. Vim is insane affront to good design and standards.
I’ve always used the stock configuration and never had issues
Don’t get it neither, vim is hard to start but once you’re a bit familiar with it it’s kind of time saving imo
I’m not even close to master it (just basics editing) and still find it quite better
@glibg10b @GreenMario Why question it? Nano fits their workflow better than vim. Same for me.
Because if there’s something that Nano does better than Vim, I’d love to know what it is so I can make use of it
Nano fits their workflow better than vim. Same for me.
What’s your workflow?
Because if there’s something that Nano does better than Vim, I’d love to know what it is so I can make use of it
What nano does better: being more user friendly and showing you the most common actions in the bottom part of the editor. A tool to do quick edits without needing to learn specific keystrokes for everything you want to do.
@GreenMario@lemm.ee already knows Vim, though:
Used to use vim for ssh related stuff
That’s why I asked:
Nano’s only appeal is that it’s beginner-friendly, but you already know Vim, so why switch?
Why would someone switch to a more user-friendly editor when they’re already used to their current editor?
What does user-friendliness have to do with workflow?
I barely know Vim compared to a seasoned programmer. I can open copy save and input mode just fine. All I use it for is fucking with config files and light scripting really.
I did start with vim tho because I didn’t know about nano and when I did it was bare bones. Today it has syntax highlights so that’s a great thing.
I keep vim around though but nano is way better than it was when Ubuntu first came out so shouldn’t be slept on. If you’re gonna do actual programming yes pls use vim I beg you 😂 or better yet an IDE.
Micro exists. It’s Nano with Lua plugins. Very robust and minimalist. No magic incantations. I actually use it to code simple stuff that I just don’t want to wait a minute for VSCode to spin its wheels.
Vim is crap. If a fucking text editor is hard to master, it’s just a bad text editor.
That’s a paddlin’
I respectfully disagree. Vim is an excellent editor and is the centerpiece of my dev tools. Counting out the newer features in Neovim like language server and treesitter support, traditional Vim is still a powerful modal text editor with robust features like text objects, macros, sed-like search and replace, rich syntax highlighting, code folding, online help, endless customizability through scripting, and multiple ways to exit. It is an acquired taste though, and I understand it’s not for everyone.
Exactly, you wouldn’t say that to your grandma ! only to other sysadmin sect members.
I like how this is so controversial, 12 upvotes 12 downvotes
tools with a high learning curve generally have a high payoff
It may seem that way because it’s a complete paradigm shift of how you interact with an editor. Once you understand that, then it becomes a very valuable tool that will make you more efficient. It is a big time investment but the payoff is worth it.
I still need to use IDEs for software development at work but I have to have some sort of Vim emulation on top of them.
I am curious
How does it pay off?
Ive used vim to edit some git commits. Thats really it
But a colleague use it for coding
It helped me break the habit of needing to use arrow keys / mouse for navigating around text. Why is this important? The 1-2 seconds to reach over from home row add up. For example, instead of scrolling the mouse several turns to get to the top of a file, I can just type
gg
. All without needing to strain my wrist to reach over for the less efficient methods.Once you master navigation with just keyboard (sans arrow keys) you really feel like a speed demon and the alternative begins to feel clunky. It may not seem like it at first because you have to retrain the way you interact with text files that goes against the habits you’re used too.
Apart from that, for any sort of Linux server management, vim or vi are usually installed so it’s a good skill to have if you quickly need to tweak a config for example. Nano works but is less efficient from an editing perspective.
I work in the terminal a lot and also use
tmux
with vim keybindings. I love being able to navigate entirely mouse free.I use Vim emulation wherever possible. I enjoy using a web browser with vim keybindings to navigate around and reduce mouse usage. Vim is a paradigm that many tools incorporate or have plugins to do so because it is just that useful once you learn it.
Vim is not meant to be an IDE. Things like intellisense don’t work (as) well from my experience. But I just use vim plugins in my IDEs so I can get best of both.
vimtutor
or if you are rich there this game
I know how to get out. But I still like nano a lot more.
WTF. Why? I could maybe see someone preferring emacs over vim, but not nano. Maybe there are nano features I don’t know about, but it just seems like Windows Notepad to me.
I normally just use VS Code with a VIM extension. Unless I’m ssh-ing into something, then I use vim.
Well, you kind of got it but also didn’t I guess. If I want to quickly edit a none critial config file or similar a terminal version of Notepad is perfectly fine and for more complex stuff I prefer a GUI anyway.
I edit in Micro. Which is Nano with Lua plugins. Come at me.
it’s funny because as much as I hate gnome desktop, I feel like gnu really does makes the best Linux software. disks utility, nano editor, I’d even argue gnu paint without the ability to undo is more intuitive and superior to most of the closed source commercial stuff of similar purpose you can find out there.
actually, some of the best looking desktops I’ve seen are heavily customized versions of gnome (pop os, nobara official) so maybe I’m wrong on that too.
You exit vim by unplugging the pc.
Removed by mod
I don’t think the joke is meant to be an attack on Vim. It’s just making light of a relatable experience
Now do
ed
…That’s how you learn Linux and Google: how to kill vim? kill -9 vim.
“vim” isn’t a valid PID. I think you meant
killall -9 vim
My main problem with vim is that they use hjkl instead of jkl; , it doesn’t make sense to me why they’d do that.
And my second problem is that I use my own custom keyboard layout instead of qwerty, so I’d have to remap all the keys. Why spend hours learning and then rebinding all the keys when I can instead play some Dota? /s
Been a vim user for decades but never used hjkl. Probably strongly correlated with the fact I’m non QWERTY as well (Dvorak). I just use the arrow keys combined with the jumps to start/end of lines/words or to characters.
You don’t need to remap anything aside from hjkl as the keybindings are mostly mnemonic and not location based.
On Dvorak at least, ^C is so easy to press that it’s great for switching modes, I never use Esc.
I find the more time you’ve spent in non-graphical shells, especially on low spec devices or laggy connections, the more you appreciate vim. Instead of pressing Del a bunch of times and having it overrun you can ct" to swap out that string. I even use vim keys in vscode, as my hands are so used to them.
My biggest complaint is logging into some legacy device that only has vi and not vim, when shortcuts like “dap” or “caw” don’t work
Huh, I thought most keybindings where tied to the position of the keys, being vim “motions”, as in how you move your fingers or something like that.
Maybe there are vim layouts for dvorak that I can use? Because I think I’d prefer to have the keybindings in the same place.
I use a dvorak-based layout personally, but spanish QWERTY at work. Some time ago I learned EMACS with qwerty, so when I switched to dvorak my muscle memory was ruined, even if I knew the keybindings. I wonder if it’s worth it learning 2 keybindings to be able to switch layouts
Not really key position based, they’re mostly things that match the letters like (i)nsert (a)fter (A)fter the whole line (d)elete (dd)elete a line ©hange ©hange rest of line.
Then the fancier ones like ct ©hange(t)o which will remove the text from the cursor to the next character you hit. i.e. go to the open quote of a string, ct" replaces everything up to the end quote.
©hange(a)(w)ord will replace a word, ©hange(a)(p)aragraph will replace a whole block… putting a number in front of the command will repeat it like 5dd to delete 5 lines.
I agree the muscle memory is a big thing but I use vim on both Dvorak and QWERTY (when I happen to be on site and not wanting to mess with changing keyboard layouts) and while I’m slower, it’s just the ordinary slowness that comes with not using QWERTY very often these days. I think of the commands as being the letters, not their positions.
More to the point would be that if you’re already an EMACS user maybe learning vim is not that important? Though it does tend to be more common to find some sort of vi on even minimal hardware than to find EMACS.
Strangely I use QWERTY on my phone and would find Dvorak odd for this purpose.
Edit: looks like ( c ) got turned into the copyright symbol thanks to some overeager parser
My main problem with vim is that they use hjkl instead of jkl; , it doesn’t make sense to me why they’d do that.
With qwerty you can be sure of layout of the letters and numbers across languages.
Makes sense. Spanish keyboards have Ñ instead of semicolon, so it’d break. But I’m sure other things break in France, where they use AZERTY. So it’s not that universal.
That makes me wonder, is there a way to get a keypress based on the position of the key, rather than the keycode? Would that be useful? Would assuming everyone is using a normal keyboard with letters in the same place even make sense? How would that interop with things like QMK?
Pssh, come on, it’s just :q or :q! - couldn’t be simpler or more intuitive!