Live data from Hacker News

Ten Years of Vim

matthias-endler.de

101–110 of 123 posts

Re: Ten Years of Vim

#101

One current problem I have with Vim is those linux distributions where someone - maybe the VPS vendor/hosting company - put in some mystery .vimrc file somewhere that makes the editor apparently more friendly for new users. So you copy and paste a line to your mysql config file, to restart the database service and find that nothing has changed. So then you edit the file again and discover that the mystery .vimrc file…

This is why I keep my vim config in GitHub. On a new server, I can be up and running in seconds.

Re: Ten Years of Vim

#102
post #29

Earlier quoted context omitted.

> Out of the box the things I want to do are easy Easy what? Easy to learn or easy to do? They are arguably easier to do in vim once you learn the proper method. Just not as easy to learn. That a common trade-off shared by rather elaborate tools.

Yeah "once you learn the proper method" is the key phrase here. The proper method being "use rote memorization to learn about things which could have easily been made available via some discoverable visual mechanism". GUIs make things easy to learn and easy to do. Especially on an OS like Windows where you can drive the entire UI with just the keyboard and about a handful of well-known keyboard shortcuts. So what's y…

> The proper method being "use rote memorization to learn about things which could have easily been made available via some discoverable visual mechanism"

I already said that this is a trade-off. Nobody's claiming that the vim way is the "right way" to do text editing. If you prefer a discoverable visual mechanism, you can go with it.

But some people clearly prefer to "use rote memorization" because they obviously gain something out of it.

And believe it or not, "rote memorization" is an essential part of our everyday life. Without it, you can do nothing. I don't see any harm in somebody deciding to apply it to text editing as well. Obviously thousands of people decided to do that, looking at vim's popularity.

And lastly, the memory we are talking about here is the muscle memory. You put something there once and it's done. Using vim is very much like riding a bicyle in that sense.

Would you prefer to have a bike that has labels on the pedals, brakes, gears; and prefer to go through those labels each the you need to use one of them?

Memorization allows you to do things without thinking. The mantra of vim and similar tools is to enable you to become one with the tool just like you become one with your bike, your tennis racket, your sword (!), whatever. Touch typing really helps here as well.

You can't understand that without investing enough time to that. (You don't have to. But you don't have to criticize it without really knowing what you are talking about either.)

I use Arch Linux. Keyboard accelaration is perfect.

Re: Ten Years of Vim

#103
post #37

I use (Vim IMproved - not vi) vim all the time. I find it interesting to see what features other people tend to use in vim, there seems to be some minor differences in their workflows, but it's not clear who "wins" the productivity battle. I only use a very small number of it's features: * `:tabe` Create a new tab * `:e .` Start browsing files in that tab * `:w` Write the file * `:q` Quit the file (`:q!`, seriously,…

>Vim IMproved Oh, so you are using an improved version of Vi IMproved? ;)

That's neovim, right?

Re: Ten Years of Vim

#104
post #102

Earlier quoted context omitted.

Yeah "once you learn the proper method" is the key phrase here. The proper method being "use rote memorization to learn about things which could have easily been made available via some discoverable visual mechanism". GUIs make things easy to learn and easy to do. Especially on an OS like Windows where you can drive the entire UI with just the keyboard and about a handful of well-known keyboard shortcuts. So what's y…

> The proper method being "use rote memorization to learn about things which could have easily been made available via some discoverable visual mechanism" I already said that this is a trade-off. Nobody's claiming that the vim way is the "right way" to do text editing. If you prefer a discoverable visual mechanism, you can go with it. But some people clearly prefer to "use rote memorization" because they obviously ga…

Define rote: mechanical or habitual repetition of something to be learned. This is not something that is part of every day life at all. After school the only time I had to repeat something over and over with any kind of frequency at all was when I was learning vim.

> Would you prefer to have a bike that has labels on the pedals, brakes, gears; and prefer to go through those labels each the you need to use one of them?

That's not a really good analogy because my memory also works for GUI apps. However, I didn't have to use a rote method to get there. I just use the GUI with its labels and visuals helping me along the way. If I don't use something for a while, the labels and other visual elements are there to help me out.

> Memorization allows you to do things without thinking.

Yes and your memory works with GUIs too. But again, I didn't have to put myself through weeks of exercises to use a GUI.

> You put something there once and it's done.

I don't think so. Time is a thing and particularly with regards to lesser used features - you'll find yourself looking up things that you once knew.

> I use Arch Linux. Keyboard accelaration is perfect.

Sure it does... at least until the next update amirite?

Re: Ten Years of Vim

#105
One thing I noticed when working with people who are only familiar with IDEs for coding and GUIs for version control: they're helpless on remote servers. If they need to jump on a box and debug an issue live, they just can't do it. For me, using tmux + vim + git cli locally, my workflow remains exactly the same remotely.

Tools are nice, but don't let them make you weaker.

Re: Ten Years of Vim

#106
post #102

Earlier quoted context omitted.

> The proper method being "use rote memorization to learn about things which could have easily been made available via some discoverable visual mechanism" I already said that this is a trade-off. Nobody's claiming that the vim way is the "right way" to do text editing. If you prefer a discoverable visual mechanism, you can go with it. But some people clearly prefer to "use rote memorization" because they obviously ga…

Define rote: mechanical or habitual repetition of something to be learned. This is not something that is part of every day life at all. After school the only time I had to repeat something over and over with any kind of frequency at all was when I was learning vim. > Would you prefer to have a bike that has labels on the pedals, brakes, gears; and prefer to go through those labels each the you need to use one of them…

[deleted]

Re: Ten Years of Vim

#107
post #102

Earlier quoted context omitted.

> The proper method being "use rote memorization to learn about things which could have easily been made available via some discoverable visual mechanism" I already said that this is a trade-off. Nobody's claiming that the vim way is the "right way" to do text editing. If you prefer a discoverable visual mechanism, you can go with it. But some people clearly prefer to "use rote memorization" because they obviously ga…

Define rote: mechanical or habitual repetition of something to be learned. This is not something that is part of every day life at all. After school the only time I had to repeat something over and over with any kind of frequency at all was when I was learning vim. > Would you prefer to have a bike that has labels on the pedals, brakes, gears; and prefer to go through those labels each the you need to use one of them…

> Define rote: mechanical or habitual repetition of something to be learned. This is not something that is part of every day life at all.

I can understand that. It was already clear that you are not the type to give time to learn about rather elaborate tools that have higher learning curves than the average. That's ok. It may not be a part of YOUR everyday life. But not everybody is living your life.

The difference between you and me is that you are implying that vim is pointless and wrong. I'm saying that everybody should go with whatever works best for them and that every approach has their benefits.

Also, attacking my operating system has nothing to do with this discussion. Not a very effective rhetorical method.

Re: Ten Years of Vim

#108

I know you said that you like maintaining a super minimal .vimrc, but fwiw there's a couple of plugins that really helped me with the workflow issues you mentioned struggling with: > Jumping around in longer texts: I know the basics, like searching (/), jumping to a matching bracket (%) or jumping to specific lines (for line 10, type 10G), but I still could use symbols more often for navigation. vim-sneak is real nic…

Ok, I've found my easymotion replacement: I love vim-sneak! And it's justinmk, so you know it's gonna be solid. Thanks, just when I think I know the plugin landscape, someone reminds me of something new.

Re: Ten Years of Vim

#109
post #56

Earlier quoted context omitted.

'[d|c]iw', to delete/change the word your inside of is another small improvement.

I'm also a big fan of `ci[(|'|"]` to change all the text between a pair of delimiters. I can type `ci"` while my cursor's at the start of the line, and it'll jump to the first set of double quotes, remove the text that's currently between them, and enter edit mode.

You can also use `cib` to change text between braces and `ciB` to change text between curly braces.

Re: Ten Years of Vim

#110
post #107

Earlier quoted context omitted.

Define rote: mechanical or habitual repetition of something to be learned. This is not something that is part of every day life at all. After school the only time I had to repeat something over and over with any kind of frequency at all was when I was learning vim. > Would you prefer to have a bike that has labels on the pedals, brakes, gears; and prefer to go through those labels each the you need to use one of them…

> Define rote: mechanical or habitual repetition of something to be learned. This is not something that is part of every day life at all. I can understand that. It was already clear that you are not the type to give time to learn about rather elaborate tools that have higher learning curves than the average. That's ok. It may not be a part of YOUR everyday life. But not everybody is living your life. The difference b…

I agree that everybody should use what works best for them. So there’s definitely value in that.

Typically when I pose an argument in a thread like this, about a technology that I don’t prefer, it’s due to the fact that a multitude of users have badgered me over my own preferences elsewhere, saying that their technology is clearly superior.

I use Windows, Linux and Mac in that order of frequency and I like them all for different reasons and I dislike them all for different reasons. A ton of users on HN react badly to anyone who isn’t just like them. So, I was being a bit defensive sorry.

Post reply on HN