6 ms·
> vim is the closest any editor comes to interfacing directly with my brain. It's funny you mention that. Just today, I had this moment where I realized that i
by arcanemachiner 3y ago
> vim is the closest any editor comes to interfacing directly with my brain.
It's funny you mention that. Just today, I had this moment where I realized that if someone asked me which key letters are used to move up/down/left/right, I'd have to pause and think about it.
I've been using Vim for years. Like, my index finger rests on the down key, so J is down. I think? And so on... My middle finger rests on the up key, so K goes up? Do I actually have to move my index finger to go left? What is my pinky doing most of the time?
It's just funny how all this stuff is burned into my brain but I wouldn't even be able to tell someone the basics without a keyboard in front of me.
- tylerhou 3y agoj goes down because it looks like a down arrow.
- jolmg 3y agohttps://en.wikipedia.org/wiki/ADM-3A#Legacy https://en.wikipedia.org/wiki/ADM-3A#Legacy > The use of the HJKL keys for moving the cursor in the vi editor and its descendants originated from the ADM-3A [...] The ←, ↓, ↑, → and Home labels printed on the H, J, K, L, and ~ ^ keys were a visual reference to the control characters Ctrl+H, Ctrl+J, Ctrl+K, Ctrl+L, and Ctrl+~ ^ that were required to move the cursor left, down, up, right, and to the top/left corner (or "Home" position) of the terminal, respectively [...] The Ctrl+H and Ctrl+J functions were the standard ASCII backspace and line feed respectively, but the interpretations of Ctrl+K, Ctrl+L, and Ctrl+~ ^ were new to the ADM-3A. Seems almost a happy accident. I personally like the placement because the most common movement in a document is down and it's placed right under the most dextrous finger, the index finger, by a coincidence between ASCII encoding and the QWERTY layout. Up being the second most common movement was put under the second most dextrous finger. Nice.
- yjftsjthsd-h 3y agoIt really is funny how much vi's odd-looking key choices aren't odd at all once you see the keyboard it was developed on:)
- gjvc 3y agoThe value of being taught something by an expert.
- tylerhou 3y agoI didn't know about the history, thanks for sharing! (j = downarrow was a mnemonic I used while learning vim.)
- semi-extrinsic 3y agoHere is a direct link to the ADM-3A keyboard layout: https://en.wikipedia.org/wiki/ADM-3A#/media/File:KB_Terminal_ADM3A.svg https://en.wikipedia.org/wiki/ADM-3A#/media/File:KB_Terminal...
- woleium 3y agoGreat, now I want a "here is" key
- arcanemachiner 3y agoI just looked down at my keyboard... The letter 'j' has been rubbed off.
- taneq 3y agoNone of the keys on my keyboard have markings on them. :D
- fuzztester 3y agoJust worn out from use, or do you have a Das keyboard, the kind with blank keycaps? I knew a developer who had one. https://en.m.wikipedia.org/wiki/Das_Keyboard https://en.m.wikipedia.org/wiki/Das_Keyboard
- taneq 3y agoDas Keyboard, yep.
- quickthrower2 3y agoLet me guess: Dvorak
- gsich 3y agoeasy, the arrow keys.
- Izkata 3y ago> so J is down. I think? And so on... My middle finger rests on the up key, so K goes up? Nope, j is down. J combines the current line with the next line, reducing whitespace between to 1 space. Back when I first figured out what J was doing (having typo'd it regularly) I thought it was useless, then one day I just started reflexively using it when manipulating function arguments. Likewise, k is up, K looks up the word under the cursor in a man page.
- pxeger1 3y agoI think they were using uppercase to make the keys stand out, but they know they're not used with the shift key.
- d-lisp 3y agoFor their defence, keyboards are annotated with uppercase letters.
- fuzztester 3y ago>Nope, j is down. J combines the current line with the next line, reducing whitespace between to 1 space. And so J stands for Join (the next line to the current line), IIRC.
- byttemos 3y agoPretty novice Vim user here. I FOR SURE think about it, and it costs me quite a bit of brain power to navigate. I made my own way pf remembering: H = the leftmost key, so left L = the rightmost key, so right J = jeet (yeet), so down K = klimb (climb), so up I look forward to the day this is just burned into my subconscious, but until then, this works I suppose
- fuzztester 3y agoThat's exactly the reason the keys were assigned that way. Pat yourself on the back, kid ;-)
- fsckboy 3y agoexactly the reason starting with ^H is backspace (left) and ^J is linefeed (down)
- fuzztester 3y agoHa ha, good one. Does the analogy hold for ^M which is carriage return? Anyway, I remember that stuff. Had a lot of "fun" on Unixes back in the day using things like ^J, ^M, ^H, stty sane, stty -a, stty icrnl, stty onlcr (or is it the other way around), fiddling with termcap and terminfo, and much more ...
- Lio 3y agoIt's even weirder for me as I use the Colemak keyboard layout. When I first switched to Colemak, around 2010, I remapped the movement keys so that they were in the same physical location as hjkl on qwerty. Then I realised I'd lost compatibility with other readline based software. So I just learned to use the new, not particularly ergonomic, positions under Colemak. At this point it's almost always from muscle memory now and couldn't tell you what I press half the time. Vim is like the Great Glass Elevator, it has a button for moving in every direction and using it since the 90s has been like learning to play a musical instrument.
- fuzztester 3y ago>Vim is like the Great Glass Elevator, it has a button for moving in every direction Actually vim is more like the Great Glass Elevator cum Excavator, because it has buttons and levers (to extend your simile) for moving in every direction and performing operations of every kind, and most importantly, all sorts of combinations of the two: >https://news.ycombinator.com/item?id=37018215 https://news.ycombinator.com/item?id=37018215 So, if tomorrow, either more movements or more operations were added to vim, they would automatically play well with the older ones. This is orthogonality (1), and genius, IMO :) (1) As they mean in microprocessor ISA design (, I think, not being a hardware guy, but have just read about it a little here and there, while doing assembly language programming years ago).
- fsckboy 3y ago>Vim is like the Great Glass Elevator, it has a button for moving in every direction vim is like the Great Glass Elevator, if the Great Glass Elevator was modal
- fragmede 3y agoPasswords are the same way for me. I can type my password on a keyboard, but if I have to enter it on my phone, I have no idea what it actually is. Thankfully, a password manager deals with most of my passwords but there is a few that I don't use it for.
- arp242 3y agoA few weeks ago I was unsure of my PIN code because I got it wrong on the first try, the keypad somehow seemed different (I was getting cash, which I don't often do), and I just completely blanked. I got something from a store and paid by PIN there to make sure I got the right code, and then got my cash. I've had the same PIN code for over 20 years.