this post was submitted on 02 Feb 2024
303 points (95.8% liked)
Programmer Humor
32453 readers
596 users here now
Post funny things about programming here! (Or just rant about your favourite programming language.)
Rules:
- Posts must be relevant to programming, programmers, or computer science.
- No NSFW content.
- Jokes must be in good taste. No hate speech, bigotry, etc.
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
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:-).
Even when Emacs had two GUI versions, the default keys were pretty much the same between them, as far as I recall, excepting features missing from one or the other. For a very long time now, it's all been reconciled as GNU Emacs, anyhow, whether CLI or XWin GUI, or even on a Mac or (shudder) MS Windows. I just use my local running Emacs, with my preferred configuration, to edit files anywhere, such as inside a running container on a remote server in AWS, so it's pretty consistent for me.
Thanks for the update - I so rarely use emacs that I might be guilty of misinformation here, as in what may have been true two decades ago is not any longer. I'll try to remember that.:-)