Vim is built different
-
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.
-
This post did not contain any content.
Vim is pretty amazing. Almost everywhere now too.
-
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.
Iโve met both the good kind of insane genius that uses it as an IDE and the crazy-board nutjob that uses it as an IDE, but both are decidedly not sane.
-
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
:x
is also an alternative to save and quit.Equally valid for the facial expression you'd make upon finding that out.
-
Agree with your point on nano. I used it as a beginner too, but once you get past the basic typing something in, vim is king.
However, I disagree with the rest of your post. Hjkl are superior to arrow keys once you get used to them. I thought that day would never come, but I got used to it way quicker than initially anticipated.
As a 60% owner and 34 key ergo advocator, also disagree with the last point.
Hjkl are superior to arrow keys once you get used to them.
I disagree with this point. I am able to use them quite functionally and I still want my arrow keys, because they are arrow keys. Also, you can use them without exiting
INSERT
mode.I do however, agree with your last point.^[I agree with the fact that you disagree with me. Nothing else.]
Oh, and I also don't like the pseudo ergonomics of mechanical keyboards.
All they do is make it harder to use with a more relaxed hand position. -
Hjkl are superior to arrow keys once you get used to them.
I disagree with this point. I am able to use them quite functionally and I still want my arrow keys, because they are arrow keys. Also, you can use them without exiting
INSERT
mode.I do however, agree with your last point.^[I agree with the fact that you disagree with me. Nothing else.]
Oh, and I also don't like the pseudo ergonomics of mechanical keyboards.
All they do is make it harder to use with a more relaxed hand position.Just FYI I am not downvoting you.
-
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
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.
-
Clearly you should install Edit.
Ok that's really cool. It looks like it's really new? Like 3 months old?
-
I'm not an old hat programmer and have never been forced to use VIM, but I started learning how to navigate because of the potential efficiencies that comes with it, and because I like to learn new things. I'm not good at it, but I've gotten a lot better, and I will continue to do so because it's enjoyable, neovim is extremely customizable, and the vim key bindings can be used in vscode for when I use that. I also use Linux, so it felt like the right direction to go, but mostly for the memes.
I don't use it for high level language coding like python, JS, and definitely nothing.net related like c#, but it's solid for lower level like C.
You don't have to enjoy it, but there are some extremely skilled programmers out there that can code laps around other extremely skills programmers just because they use vim/neovim and can navigate at a stupid fast rate. Watching some like the Primeagen on YT is humbling.
wrote on last edited by [email protected]I agree with you wholeheartedly but I wanted to elaborate in a complimentary direction to your point, I think the benefits of knowing how to navigate only using a keyboard with Vim (which importantly is much less prone to RSI than something like emacs or mouse centric workflows for most people) gives a programmer are the same as they do for someone writing a book in markdown using vim.
When you describe the advantage of vim's modal keybindings and navigation, it sounds like you are describing an advantage in speed but it is really like a decrease in executive function load about the how which frees you up to think farther ahead and consider more interesting questions... kind of like how people describe the mystical power of AI except not bullshit, just a basic benefit to tooling that slots into your body mechanics and mind like a finely tuned instrument... but at the same time nobody NEEDs to learn vim. If you don't like it, forget it, what we are saying is don't bash it without understanding the beauty to Vim style keybindings independent of any particular software including vim or vi themselves.
-
Vim is pretty amazing. Almost everywhere now too.
wrote on last edited by [email protected]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....
-
Go beyond the lazy memes and see for yourself why it has such a loyal cult!
wrote on last edited by [email protected]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!
-
Ok that's really cool. It looks like it's really new? Like 3 months old?
wrote on last edited by [email protected]It was announced in may on microsoft build event ^^
I call it nano for windows haha -
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/
-
How about
did it work?!
-
โ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
True, same people use unix as their IDE and vim as the editor therein.
-
did it work?!
I feel free, so... I guess?
-
Setup for the overused joke - I've been using vim since I first started using a computer, I just can't quit.
VIM really does have everything. Even a fully functional internet browser.
-
VIM really does have everything. Even a fully functional internet browser.
yeah, but emacs still wins out in capabilities. https://xkcd.com/378/