this post was submitted on 26 Oct 2024
638 points (96.9% liked)

Programmer Humor

32348 readers
553 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 9 points 6 days ago (3 children)

Just switch to visual mode and select the text and yank it.

Press v where you want to start the selection from (switches to visual mode), hjkl (or arrow keys) to move the cursor to the end, then you can yank it from there. It'll highlight what you're selecting just like you're using your mouse, but you're using the keyboard.

If you want to get really fancy there are 3 different kinds of visual mode, but lower case is the most often one that I use because it's char by char, V is line by line, Ctrl+v is "block" (you can select chunks across several lines omitting things at the beginning or end of lines).

Ctrl+V to do the block mode is nice if you need to edit the same part of several lines that all line up vertically, you just Ctrl+v, jk to select the lines, then I (shift+i) to insert on all those lines (if you're in vim you can delete things in insert mode also, if you're in vi you'll need to delete first then insert)

[–] [email protected] 6 points 6 days ago

Had not heard of block mode. I need to try this.

[–] [email protected] 3 points 5 days ago

Yeah, when I then used Visual Block mode to do the multi-line cursor, I realized I probably could've selected+yanked it that way, too.

But that is some good info nonetheless. I wasn't actually aware of the different Visual modes...

[–] [email protected] 2 points 5 days ago (1 children)

y6jjp is generally faster, tho, as long as you know you need exactly 7 lines or happen to have :set nu rnu in your config. Also, if using nvim, having yanks highlighted helps immensely

[–] [email protected] 3 points 5 days ago (1 children)

I might be in a minority of this, but using numbers that way breaks my flow for 2 reasons: Firstly, any number of lines greater than around 3 or 4 means I have to stop and manually count. Not that counting to 6 takes a long time, but it does use some mental capacity while I want my mind focused on the actual code. Secondly, I don't have touch typing in my fingers for the number line on my keyboard. If I need to type a number, I either have to look down at my keyboard, or move my hand over to the numpad. In both cases it would be quicker for me to Vjjjjjy.

[–] [email protected] 2 points 5 days ago

manually count

That's why rnu (i.e. relative numbering) is mentioned, tho