The reason is b/c vim predates GUIs. Yes, as in all of them:-D. (Or rather, its predecessor vi did and vim unlike others very much remained true to its origins)
Even now, there are many places e.g. when doing server maintenance or accessing a compute cluster via SSH, sometimes you do not have a handy GUI environment accessible, at which point your choices become extremely limited, and it helps that vim has been installed on every Unix-i/Linux-ish machine since the 80s.
GUIs are superior, ofc, when they work. On a daily basis I even use a GUI for vim - MacVim (for Windows there used to be Cream but I am very out of date there), and there is always gVim. I could use something else but I am familiar with vim and it is EXTREMELY powerful - e.g. I could indent 100,000 lines in the middle of a file without having to manually select all of them at once first, or better still only do the indentation based on matching a pattern.
It is very advanced, and thus not for everyone, and even those of us that use it often prefer the GUI way for simple tasks like select a contiguous block of 5 lines, but it offers the benefit that it works in the widest possible number of scenarios - e.g. more than nano. emacs does too, except its commands are so configurable that the X-windows GUI number 1, X-windows GUI number 2, and command-line versions all use entirely different shortcuts, so a cheat sheet would not help. vim offers consistency that, afaik, is absolutely unmatched anywhere.
I was shoved into Linux by a nearly dead HPC expert who was definitely angry about the advent of electricity.
Wasn’t given any indication of a text editor, I ran across vim for one reason or another and enjoyed his Palpatine-like reaction from seeing me using vim enough to keep using it. And if you’re enjoying something, why not
Having a mentor like this is unfathomably valuable. The kind that knows exactly when a printer problem should be fixed with a sledgehammer and are not afraid to apply the “fix”.
So then what makes vim special? From what I understand it’s just a “standard” for shortcuts to features that can be shared between different editors, right?
The special thing about vim are the different modes. In a editor which does not support modal editing, you can’t bind a letter key directly to a function, or else you can’t type that letter any more.
This is bound to be an unpopular opinion here but I hate vim.
Shortcuts in vim make no sense whatsoever. They’re not the fastest possible shortcuts nor are they intuitive.
Sure it’s got useful features if you let the awful design brow beat you into memorising an absurd number of shortcuts that lack any form of logic.
You could have a cheat sheet on another monitor but at that point why not have an editor that has a gui.
You can change shortcuts
The reason is b/c vim predates GUIs. Yes, as in all of them:-D. (Or rather, its predecessor vi did and vim unlike others very much remained true to its origins)
Even now, there are many places e.g. when doing server maintenance or accessing a compute cluster via SSH, sometimes you do not have a handy GUI environment accessible, at which point your choices become extremely limited, and it helps that vim has been installed on every Unix-i/Linux-ish machine since the 80s.
GUIs are superior, ofc, when they work. On a daily basis I even use a GUI for vim - MacVim (for Windows there used to be Cream but I am very out of date there), and there is always gVim. I could use something else but I am familiar with vim and it is EXTREMELY powerful - e.g. I could indent 100,000 lines in the middle of a file without having to manually select all of them at once first, or better still only do the indentation based on matching a pattern.
It is very advanced, and thus not for everyone, and even those of us that use it often prefer the GUI way for simple tasks like select a contiguous block of 5 lines, but it offers the benefit that it works in the widest possible number of scenarios - e.g. more than nano. emacs does too, except its commands are so configurable that the X-windows GUI number 1, X-windows GUI number 2, and command-line versions all use entirely different shortcuts, so a cheat sheet would not help. vim offers consistency that, afaik, is absolutely unmatched anywhere.
Now you know:-).
I was shoved into Linux by a nearly dead HPC expert who was definitely angry about the advent of electricity.
Wasn’t given any indication of a text editor, I ran across vim for one reason or another and enjoyed his Palpatine-like reaction from seeing me using vim enough to keep using it. And if you’re enjoying something, why not
But yeah, it has some drawbacks lol
Having a mentor like this is unfathomably valuable. The kind that knows exactly when a printer problem should be fixed with a sledgehammer and are not afraid to apply the “fix”.
Its more about using your own shortcuts if you dont like some which is what you should do whatever editor you use
So then what makes vim special? From what I understand it’s just a “standard” for shortcuts to features that can be shared between different editors, right?
The special thing about vim are the different modes. In a editor which does not support modal editing, you can’t bind a letter key directly to a function, or else you can’t type that letter any more.