Live data from Hacker News

How Did Vim Become So Popular?

pragmaticpineapple.com

251–260 of 507 posts

Re: How Did Vim Become So Popular?

#251

I’ve been using Vim professionally for like ten years now and I can’t tell you what benefits do I get out it exactly. I still use a mouse and I don’t see what’s so bad about it.the whole home row argument has never been convincing.

This is like someone saying they've used a DSLR professionally for a decade and couldn't say what benefits they get out of it over a point and shoot because they've never done anything other than leave it in automatic mode. You owe it to yourself to explore and embrace the power of your tools as a professional. Vi(m) in particular requires a deliberate effort from the user to learn its features, because of how it sta…

I’m pretty good at using vim, There’s really nothing I don’t know, and I’ve watched tons of courses and read tons of tutorials. I got my own vimrc like plenty of people. But People still use macvim, and hit Apple S, and Use the mouse, I’m hardly the only one. See Yehudas “everyone who tried to teach me to use vim was wrong”

When I was younger I cared more about it, but it’s all just yak shaving.

What there isn’t are obvious benefits to keeping your fingers in the home row, just vastly overhyped anecdotes.

By the way expert photographers will tell you that it’s not about the tools and that today’s phones are good enough.

That’s one of the things that are annoying, I’m the dumb one for putting a dissenting opinion, but no one is willing to explain why using the mouse is worse, and definitely not in a way that satisfies me

Re: How Did Vim Become So Popular?

#252
post #228

Earlier quoted context omitted.

There's too many little things to mention, they do all add up to be quite significant in the course of programming. Here's a tiny sample of some stuff I use constantly: Move cursor forward word at a time: w ignoring punctuation: W reverse: b B Move cursor to next occurrence of character Z: fZ reverse: FZ Delete forward to next occurrence of character Z: dfZ reverse: dFZ Change forward to next occurrence of character…

Honestly, I can do almost all of these things with any standard editor as well, with standard shortcuts. The ones I can't do directly, I can do via Search/Replace functionality that is also standard in most modern editors. Your example about refactoring a function by using text editing capabilities is actually pretty bad unless you mean Vim can actually parse your programming language and perform the refactoring over…

One neat trick that vim has out of the box that most other editors/IDEs don’t is a tree based undo system.

So if you undo something a few steps and try something different but decide you want to go back you can’t... but you can in vim with g+ and g-

If you add the Gundo plugin you can visualise this as a tree of diffs in a side window.

I’m sure that’s been added to IDEs as a plugin but in vim it’s standard.

It also persists undo state to disc if you want so if you return to a file on another day it’s still all there.

Re: How Did Vim Become So Popular?

#253

Speaking personally, I've been a professional developer for almost decade and even in my relatively short career I've seen a lot of technologies come and go. I was reluctantly roped into it by my first boss, an enthusiastic Vim advocate. And since, almost nothing else (save for maybe git) beat learning vim from a return on investment perspective. From the default mac OS installation to some old Fedora box that has no…

This is really interesting.

I'm quite the opposite. I keep trying to make vim my main devtool but I just can't stay away from a fully fledged ide. At the same time, having heard from literally everyone that once you do get used to it, vim is way faster to do everything in.

What advice do you have for someone like me to proper get used it once and for all? Are there any good resources you used to learn all the vim shortcuts?

Re: How Did Vim Become So Popular?

#254
post #228

Earlier quoted context omitted.

Honestly, I can do almost all of these things with any standard editor as well, with standard shortcuts. The ones I can't do directly, I can do via Search/Replace functionality that is also standard in most modern editors. Your example about refactoring a function by using text editing capabilities is actually pretty bad unless you mean Vim can actually parse your programming language and perform the refactoring over…

> Honestly, I can do almost all of these things with any standard editor as well, with standard shortcuts. WTF is a standard editor and standard shortcuts? Would that be ISO or ANSI?

Also what is “almost all” in this context?

Isn’t that just another way of saying I can’t do these things but don’t care? The Blub argument effectively.

Re: How Did Vim Become So Popular?

#255
post #253

Speaking personally, I've been a professional developer for almost decade and even in my relatively short career I've seen a lot of technologies come and go. I was reluctantly roped into it by my first boss, an enthusiastic Vim advocate. And since, almost nothing else (save for maybe git) beat learning vim from a return on investment perspective. From the default mac OS installation to some old Fedora box that has no…

This is really interesting. I'm quite the opposite. I keep trying to make vim my main devtool but I just can't stay away from a fully fledged ide. At the same time, having heard from literally everyone that once you do get used to it, vim is way faster to do everything in. What advice do you have for someone like me to proper get used it once and for all? Are there any good resources you used to learn all the vim sho…

There are a number of vim plugins (like YouCompleteMe [https://ycm-core.github.io/YouCompleteMe/]) that can turn Vim into an IDE. If that isn't enough, you could try Emacs (yes, I know) with an evil-mode based distribution like DOOM Emacs [https://github.com/hlissner/doom-emacs].

Re: How Did Vim Become So Popular?

#256

Speaking personally, I've been a professional developer for almost decade and even in my relatively short career I've seen a lot of technologies come and go. I was reluctantly roped into it by my first boss, an enthusiastic Vim advocate. And since, almost nothing else (save for maybe git) beat learning vim from a return on investment perspective. From the default mac OS installation to some old Fedora box that has no…

Definitely, even now as I use emacs, I'm a 100% evil. It's just so natural (once you get it), that I don't know how other bindings (like ctrl-[whatever]) are prevalent in most other software, it's not like they are more memorable or intuitive. Fun story: I was into Free/Libre software as a teen, when I learnt how to move around in vi(m) and in my first tech gig (as a sysadmin), I was interviewed by some greybeard who…

Such a thing is a proxy character trade and probably told him enough. I'm in bioinformatics, if an applicant tells me they studied biology but have always run a Linux server at home, I can also stop the interview: hired.

Re: How Did Vim Become So Popular?

#257

Earlier quoted context omitted.

> Go down 5 lines Look at the beginning of a target line, remember the number (takes up a slot in our limited short-term memory), switch to command mode, type the command. vs Hold/mash "down" button until cursor is there. After watching a few vim coding screen-casts I have the impression that the second way is more popular in vim too.

> switch to command mode Why? Just use the 'relativenumber' option and do 5j. > the second way is more popular in vim too. Maybe for moving down 5 lines, but (I hope) not for things like "replace the inside of the brackets with what's in my A register". Otherwise you're really better off using a different editor.

> Why?

To be sure that the editor isn't in insert mode. Using another slot of short-term memory to keep an editor's mode seems wasteful.

Re: How Did Vim Become So Popular?

#258
post #252
post #228

Earlier quoted context omitted.

Honestly, I can do almost all of these things with any standard editor as well, with standard shortcuts. The ones I can't do directly, I can do via Search/Replace functionality that is also standard in most modern editors. Your example about refactoring a function by using text editing capabilities is actually pretty bad unless you mean Vim can actually parse your programming language and perform the refactoring over…

One neat trick that vim has out of the box that most other editors/IDEs don’t is a tree based undo system. So if you undo something a few steps and try something different but decide you want to go back you can’t... but you can in vim with g+ and g- If you add the Gundo plugin you can visualise this as a tree of diffs in a side window. I’m sure that’s been added to IDEs as a plugin but in vim it’s standard. It also p…

Another neat thing:

You select some text, either via keyboard or mouse. You realise you’ve missed a bit at the start of your selection.

In vim without having to start over you press o and it moves your cursor the other end of the selection and you can now extend it.

Deselect accidentally and want the selection again? Press gv.

I’m sure these little features are available in other editors but not always or not always by default.

Re: How Did Vim Become So Popular?

#259

Does anyone have a good video comparing vim speed coding vs vscode using built in editor features? I’ve been using vscode for years and the YouTube videos that demo vim features are shallow (like how to enter a blank line - really?). I can do the same thing I have seen in vim videos without memorizing a bunch of strange key bindings all while being able to edit code instantly without changing modes. I would love to s…

I've found keyboard-only vim is much slower than a mouse for editing papers, because the edits are often random-access and vim isn't great at that. You also can't use SyncTeX (which is amazing) without a mouse.

Why would you use vim keyboard only since vim supports using a mouse in the terminal?

It even supports using a mouse over ssh.

I don’t know SyncTex so can’t comment on that.

Post reply on HN