Vim is built different
Vim is built different
Vim is built different
I don't know why there's so much hate for Vim. It's simple- just use it as your default text editor since you first started using computers, and keep using it forever, and problem solved!
:set nocompat
Why VIM decided to make itself run just like VI (by default) is beyond me. Isn’t the long name “VI Improved”?
Vims defaults are quite crap overall. It is why everyone needs 100s of lines of configs and many plugins to turn it into something decent. Well worth the setup but it could go a long way to making things nicer to use out the box.
I switched from vi to vim in 1994 and found it immediately obvious how to quit — it was just like vi!
I guess I'll never understand these memes.
Personally, I have seen so many memes about exiting vim that by the time I got to use it for the first time, exiting it was a no-brainer.
For any newbies out there, the command is
:wq
also worth noting you open vim the first time, you get a huge ass splash screen telling you how to exit
Only if you don’t immediately open a file.
And if you panicked before and fucked up the opened file while hammering on the keyboard:
:q!
There's also ZZ
👉😎👉 Same caveats apply, smash that fukken esc key (for bonus points rebind caps lock as esc) then ZZ Top your way out of that shit.
This is the most correct answer.
Rebind Caps to Esc.
ZZ (or ZQ if you don't want to save the file).
:x
is also an alternative to save and quit.
Equally valid for the facial expression you'd make upon finding that out.
I'm going to stick with my current process of accidentally opening vim, typing semi-random things that feel like they should work for a minute and then eventually looking up how to quit on my phone.
I've recently started administering windows headless. PowerShell over SSH.
Don't have this problem on windows server!
It doesn't even have a terminal text editor
I have to install nano or use powershell commands through hoops of fire just to edit a line in a file.
Or download the file via scp, edit and reupload.
Pure Insanity.
Clearly you should install Edit.
Classic DOS editor for text files, batch coding, and QBasic coding. Good times.
Ok that's really cool. It looks like it's really new? Like 3 months old?
I installed vim/nvim on my work windows pc. I don't often need to edit text files in terminal, but its nice having its functionality.
My actual issue is I need approval to install anything on any server. This might get approved since it's MS though! Thanks.
Is edlin still around?
Go beyond the lazy memes and see for yourself why it has such a loyal cult!
I use VS Code mainly and I always want to go to the end of a line and beginning. On Mac it's like CTRL+E and CTRL+A respectively. On Windows, I was like, I guess I could do Windows Key and arrows but it felt off. Installing Vim bindings on VS Code just fixed this all for me. I love it.
[edit] for non-VIM users, you can skip words and go-to braces (and delete what's in them) and highlight within quotes very easily ... for function search, the built-in VS Code is really good too. I also have Harpoon installed to hop between files. If it doesn't appeal to you, then that's cool too! Whatever keeps you in there. [/edit]
I've tried setting up my own vim stuff and I always bail out because I can't figure something out. I feel like I need to really sit with it and I'd have the perfect set up for me.
Lastly, I've installed vim for zsh and it's the best. I can hop all around my terminal and highlight and remove things. It's so beautiful.
I'm more fan of the https://www.vim-hero.com/.
Also, one think I was surprised by when I switched to Lazyvim/Ideavim/vscodevim setup few months ago - it's a lot of fun. Learning vim properly is like the dark souls of typing. Sure, you probably won't be as efficient for the first few years, but learning new motion combos is pretty fun, to the point where the minor loss in efficiency doesn't really bother me. Blasting out combos you've been practicing to do that one move efficiently, or discovering another new cool way how to do something is a continuous and fun process. It's basically gamifying typing.
So, if you want a boost in efficiency, just learn all the keybinds your current text editor has (jump to next param/function, multi-line editting, go to definition without using mouse, etc.), and start using them. You'll probably master all of them in few weeks and be much more efficient.
If, however, you enjoy slowly mastering something, vim will give you years of stuff to learn and master. Is it worth it? Probably not, but it's suprisingly satisfying!
Very well said and thanks for the great link though I am not gonna lie I am a tiny bit disappointed that url doesn't redirect to https://www.vim-villain.com/
Or be actually productive and use Emacs.
Because they grew up with it? I cant think of any other reason. I used it in college for a class bcz my old as fuck professor required it. Its obtuse, old, and doesn't have a lot of functionality of modern code editors.
The only people who want to use it are people who started with it decades ago, or people who were forced to use it, and now think they're superior somehow to everyone else who doesn't use it.
I don't fit into any of those categories.
Its obtuse, old, and doesn't have a lot of functionality of modern code editors
Obtuse? Yeah. The keyboard focus means natural discoverability is low. But I immediately preferred modal editing once I learned it.
Old? Eh, most people use Neovim nowadays and write plugins in lua. Even in OG Vim, Vim9script broke compatibility for a better dev experience.
Functionality? Out of the box, it is just a text editor. But only VSCode might have a more active plugin ecosystem. ALE has been a thing for ages if it's LSP support you're looking for.
It's not better, it's not worse, I'm not in any way superior for using it, but I love it for a reason.
The only people who want to use it are people who started with it decades ago, or people who were forced to use it, and now think they're superior somehow to everyone else who doesn't use it.
oof now that is a lazy argument, I hope you were being sarcastic!
I was also forced to use it at uni (a few decades ago), but didn't start using it until professionally until several years into my dev career. I promise that I don't think I'm superior because I use it. But I do encourage junior developers to learn it for reasons that appealed to me.
Among other things, appealing things are modal editing (the biggest advantage IMO), it runs on pretty much on any server you will be ssh'ing into, less IDE lock in. And, there's a bunch of additional things that other editors do that I think Vim does better: regex is first class in the environment, extensible workflows, macros. Then there are definite advantages being able to quickly navigate from the home row.
I agree that some people will demonstrate their enthusiasm by bragging and being pretentious. But I don't think that's why they stick with Vim.
If you can't think of a reason, then you could have just asked. Or read a few threads here or somewhere else. But instead you went forward typing your oh so very informed opinion, which itself is a good invitation for "shut up, lousy know-nothing type of human" kind of response. I do hope you'll do better next time you see a piece of lore and culture you have no clue about
try ex
Recently I decided to try ed for real and used it exclusively for a coding project. There is a certain joy in the simplicity, but ultimately I found myself printing lines and searching files more than I liked. And rewriting long lines instead of getting the substitutions wrong again.
An old Buffalo NAS box made me learn vi. Because that's all it had.
Yes, this comic speaks to me.
Vim is pretty amazing. Almost everywhere now too.
Honestly if there was an award for keybindings for style in terms of the way something like the MLA style guide would describe "good style" in the context of english, Vim would easily win it. It is one of the oldest, most coherent, extendable, fast, joyful and resilient conceptions of how to manipulate text with a keyboard ever created and it is awesome how it is such a compelling idea that it no longer exists as a literal codebase at this point, but rather a style and philosophy of keybindings.
It is shockingly beautiful even if you find it annoying to use in practice (I get it).
For example, the Qutebrowser is just awesome, I don't care if you don't like vim you can't argue with the power, ease of use and minimal UI the system requires in exchange for all the control you could want for navigating web pages without needing a mouse.
The utility of vim keybindings in my opinion extends further into a lot of unexplored accessibility benefits because any vim style input scheme to a program is going to be by definition a nice limited set of inputs someone can custom map to their accessibility hardware or software to have full control over a software and they won't have to worry about needing a mouse at super annoying parts because they know that is against The Core Commandments Of Vim.
When making a custom or 3rd party controller to a software, there is always the problem of how many control inputs are you going to need, some softwares go nuts with unnecessary keybindings for silly things that becomes a nightmare to try to map a custom hardware/software controller to. Vim keybindings on the other hand well... it is the keyboard proper and that is it, boom done....
So true
‘vimtutor’ is your friend. Nobody sane uses vim as an IDE, but if you have to ssh to a host to fuck with a config file it’s pretty nice to know because you can guarantee that most distros have at least vi, if not vim.
Nobody sane uses vim as an IDE
Huh? Many people do this. With the right plugins and config it is just as capable as any IDE.
If you're just doing a quick config edit, nano is significantly easier to use and is also present in most distros.
Vi/Vim is useful as a customizable dev environment, but in the present there are better, more feature-rich development tools - unless you are specifically doing a lot of development in a GUI-free system, for some reason.
I mean, if youre continually updating files on remote take the time to learn vim. My God it's a million times more efficient. Even using the keybindings in an ide makes sense.
That and Im not aware that rhel distros at all have nano built in. Nothing on a random rocky 9 box I randomly sshed into just now.
vim is more feature rich than nano, nano is easier to use for the first time, after you learn the very basics vim is pretty much just as easy to use and way more feature rich
Im completely lost on Nano. Vim is SO much quicker.
What editor is more feature-rich then vim? Out the box it is lacking some sane config but it is one of the more powerful and flexible editors out there - more then a rival for any modern IDE.
If using vim makes people insane, then what does using ed makes me?
A wizard.
And if not they have sed or ed or echo and cat.
Nobody sane uses vim as an IDE
True, same people use unix as their IDE and vim as the editor therein.