Live data from Hacker News

I set all 376 Vim options and I'm still a fool

evanhahn.com

111–120 of 142 posts

Re: I set all 376 Vim options and I'm still a fool

#111
post #91

Earlier quoted context omitted.

Hm, I doubt the precision can match and avoid under/overshootings, especially at high enough repeat speed to match, and it's a global change that can affect even regular typing, so you're suggesting specialized training (to minimizeerrors) for a less effective workflow

The main issue with precise jumps (for me) is that they require you to - already exactly know where you want to go - figure out the relative distance either by looking to the side at relative line numbers or calculating - move your hands to the numbers row to input numbers and back (I don't have small hands, but that still translates into a small amount of arm movement for me). Whereas just using repeat input on jklh…

> - already exactly know where you want to go

Same as with moving down by 1x10? How are you even choosing cursor direction if you don't know where to go to?

> - figure out the relative distance either by looking to the side

Ok, how is that an issue? You also have to figure out the distance by looking down when moving down with the arrows, so eyes still move?

> move your hands to the numbers row to input numbers and back

No, you could maintain your hands on the home row and use a numpad layer containing it

> imagine you had to tell your hand "move 10 centimeters left"

Imagine you had to tell your hand "move 1 centimeter left 10 times"? The mouse is that extension where you don't "move by 1 pixel X times" and move in an analog way

Re: I set all 376 Vim options and I'm still a fool

#112
post #76

Stuff like typing "10j" made sense when text editing was high latency. Nowadays you can just hold j and stop precisely where you wanted to, even if you're ssh'ing into a server on the other side of the country. There's nothing wrong with it (and in fact I prefer it because of the 0 finger movement required). The only times I use "precise" movement commands like that is when I'm in the odd situation of having to ssh i…

It's slower to "stop precisely"on key hold/release, so 10j still makes more sense, only for a few lines tapping J a few times makes more sense, but not 10-20

I've tried so many times to make it work, I've really tried. But it just ends up being faster to spam j a couple of times instead of having to think about how many times I want to move, then type it, then be wrong, then try again...

For larger distances you wouldn't even see the text in the screen, so you don't even know how much to jump. In this situation I just spam ctrl+d, then tweak with j.

Re: I set all 376 Vim options and I'm still a fool

#113
post #111

Earlier quoted context omitted.

The main issue with precise jumps (for me) is that they require you to - already exactly know where you want to go - figure out the relative distance either by looking to the side at relative line numbers or calculating - move your hands to the numbers row to input numbers and back (I don't have small hands, but that still translates into a small amount of arm movement for me). Whereas just using repeat input on jklh…

> - already exactly know where you want to go Same as with moving down by 1x10? How are you even choosing cursor direction if you don't know where to go to? > - figure out the relative distance either by looking to the side Ok, how is that an issue? You also have to figure out the distance by looking down when moving down with the arrows, so eyes still move? > move your hands to the numbers row to input numbers and b…

No one is doing 1x10 key presses. That's now how humans process information. You repeatedly press a key one time until what you see on screen is what you want. The further away you are the faster you do it.

Re: I set all 376 Vim options and I'm still a fool

#114
post #111

Earlier quoted context omitted.

The main issue with precise jumps (for me) is that they require you to - already exactly know where you want to go - figure out the relative distance either by looking to the side at relative line numbers or calculating - move your hands to the numbers row to input numbers and back (I don't have small hands, but that still translates into a small amount of arm movement for me). Whereas just using repeat input on jklh…

> - already exactly know where you want to go Same as with moving down by 1x10? How are you even choosing cursor direction if you don't know where to go to? > - figure out the relative distance either by looking to the side Ok, how is that an issue? You also have to figure out the distance by looking down when moving down with the arrows, so eyes still move? > move your hands to the numbers row to input numbers and b…

Oh. Now I get why we're talking past each other. There's a thing most computers are configured to do out of the box, but yours might be different for some reason.

I'm going to assume you're using Windows. In that case go to Settings > Accessibility > Keyboard and configure "Character Repeat". What this will do is repeat a key you're holding as if you're pressing it multiple times! Configure it until it feels natural.

This is what people were referring to when we said we're holding a key. We're not pressing it 10 times, just holding it down and having the computer automatically repeat it until we're happy with the result (such as having moved where we wanted to). It's a bit like moving a mouse cursor, where you're also not calculating the offset you want to move your mouse in advance.

Re: I set all 376 Vim options and I'm still a fool

#115
post #38

I've been using vim for over 20 years as my primary editor. I'm faster and more comfortable in it than I am in any other editor, but I still feel like a vim noob I still have to look up how to do things I rarely do (like insert the contents of another file at the cursor position). And I don't really use many (if any) of vim's intermediate features, let alone advanced ones. I've tried various ways to get more fluent,…

I think vim's greatest problem is discoverability. It's a big enough problem that after six or so months working full time in neovim I went back to a GUI editor. I just about barely remember the most common commands, but I do not remember (at all) anything I only need occasionally. I also know myself well enough to know I will never remember this sort of thing well. I have a terrible memory for procedural / administrative / ritualistic knowledge.

I'm on Sublime right now. I like it a lot less than vim, but it's far less cryptic. If I need to tile four documents and move text around, I can do so trivially by dragging, without needing a PhD in vim esoterica that I would immediately forget the next day.

Re: I set all 376 Vim options and I'm still a fool

#116

I never understood this idea that you should min/max your typing. The editor should serve you, not the other way around. Then again, I'm an emacs user.

Another Emacs user here. I would argue that even Emacs is a bit of a struggle sometimes. More modern editors like Sublime Text, Kate, or even Notepad have an advantage of being intuitive. Typing on a letter always outputs that exact letter. The shift key does one thing and one thing only. Mouse integration allows for rather precise cursor placement in a way that utilizes a human's natural hand-eye coordination. The s…

> have an advantage of being intuitive

Emacs is incredibly intuitive - with a caveat. Once you internalize the model, things become incredibly intuitive. I love that EVERY single keypress, mouse movement and button press is nothing but the association to a piece of Lisp - documented, always available, fully modifiable, debuggable, profilable source. The intuition required is for Lisp only; once you grok that part, Emacs becomes an irreplaceable ally - nothing even comes close to what you can do in it with text.

And btw, Emacs is inherently a modal editor - just like Vim. Only because you're not using modality for "text editing", it doesn't mean it is not.

Re: I set all 376 Vim options and I'm still a fool

#117
post #72
post #70

Earlier quoted context omitted.

I have various issues with it (e.g. wrapping on resize is just broken) and miss iTerm a little, but the built-in tabs aren’t too bad (unlike Kitty’s hardline stance) and it’s available cross-platform, so I can have the same config on many machines.

> unlike Kitty’s hardline stance Are you maybe switching that up with alacritty? Kitty has built-in tabs and they work quite well.

Yes! Sorry Kitty for mixing you up!

Re: I set all 376 Vim options and I'm still a fool

#118
post #76

Earlier quoted context omitted.

It's slower to "stop precisely"on key hold/release, so 10j still makes more sense, only for a few lines tapping J a few times makes more sense, but not 10-20

I've tried so many times to make it work, I've really tried. But it just ends up being faster to spam j a couple of times instead of having to think about how many times I want to move, then type it, then be wrong, then try again... For larger distances you wouldn't even see the text in the screen, so you don't even know how much to jump. In this situation I just spam ctrl+d, then tweak with j.

Relative line numbers = no thinking

Look where you want to go, there's a number next to it. Type that number and then type j.

Re: I set all 376 Vim options and I'm still a fool

#119

Stuff like typing "10j" made sense when text editing was high latency. Nowadays you can just hold j and stop precisely where you wanted to, even if you're ssh'ing into a server on the other side of the country. There's nothing wrong with it (and in fact I prefer it because of the 0 finger movement required). The only times I use "precise" movement commands like that is when I'm in the odd situation of having to ssh i…

[deleted]
Post reply on HN