946
you are viewing a single comment's thread
view the rest of the comments
[-] pineapplelover@lemm.ee 41 points 7 months ago

I refuse to see how vim and emacs is worth learning. I only use it because that's the only option when editing server files. Beyond this, I couldn't imagine coding in these environments from scratch.

[-] Hexarei@programming.dev 44 points 7 months ago

The biggest benefit of (neo)vim is the motions.

Honestly if you don't use vim motions in your ide of choice, you're missing out big time. Being able to do things like "Delete everything inside these parentheses". di( or "wrap this line and the two lines below in a pair of {}" ys2j{ , or "swap this parameter with the next one" cxia]a. with a single shortcut is game changing.

Even just being able to repeat an action a number of times is ridiculously useful. I use relative line numbers, so I can see how many lines away a target is and just go "I need to move down 17 lines" and hit 17j.

Absolutely insane how much quicker it is too do stuff with vim motions than ctrl-shift-arrows and the like.

[-] FizzyOrange@programming.dev 42 points 7 months ago

Honestly those things just don't sound like common enough actions to be worth shaving 0.5 seconds off. How often do you know exactly how many lines to move a line by? And how often do you even need to move a line that far?

I still don't buy it.

[-] pearable@lemmy.ml 18 points 7 months ago

Relative lines means each line except the one your cursor is on is relative to your current line. Like this:

5 5k jumps here

4

3

2

1

6 your cursor is here

1

2

3

4

5

6

7

8 8j jumps here

The main reason I like it is I don't like mouse ergonomics. Keeping my hands on the keyboard just feels better

[-] FizzyOrange@programming.dev 3 points 7 months ago

Yes I understood that. My point is how often do you know you need to move a line exactly 17 lines? Do you count them? Clearly much slower than doing it interactively by holding down ctrl-shift-down for a bit.

[-] YIj54yALOJxEsY20eU@lemm.ee 19 points 7 months ago

You ain't understanding it dog

[-] pearable@lemmy.ml 15 points 7 months ago* (last edited 7 months ago)

I just look at the line number. If the code I want to edit is 17 lines up there's a 17 next to it. My ide window looks like my comment. Normally an ide would look like this

1

2

3

4

5

6

7

8

9

10

11

[-] lunarul@lemmy.world 3 points 7 months ago

As a vim user myself, I don't understand why you need relative lines either. I can just as easily type :23 to go to line 23.

[-] pearable@lemmy.ml 1 points 7 months ago

Mostly a matter of taste I think. One benefit is one less key press since relative keys shouldn't need to press enter at the end of the command. I mostly use it because it came default with LazyVim.

[-] mexicancartel@lemmy.dbzer0.com 8 points 7 months ago

Thoose are line numbers in IDE. You don't count them, you see them

[-] FizzyOrange@programming.dev 1 points 7 months ago

Line numbers are absolute, not relative (normally anyway; I think some editors allow showing relative line numbers). Anyway I think holding down (page) up/down is going to be just as fast.

[-] mexicancartel@lemmy.dbzer0.com 2 points 7 months ago

There are both modes for absolute and relative line numbers in vim. Holding up/down might be intuitive nd easy to remember, but saving 1 second everytime you need to do this can add up pretty fast

[-] Hexarei@programming.dev 2 points 7 months ago

Not "move the current line of code", but instead "jump the cursor a number of lines"

[-] FizzyOrange@programming.dev -2 points 7 months ago

Oh so like page up/down then? Not exactly showing the raw power of Vim when you can use an existing key press! ๐Ÿ˜„

[-] Hexarei@programming.dev 6 points 7 months ago

I can't tell if you're trolling; Page up and page down are different from "I need to jump 10 lines down" with 10j. Or 11 lines with 11j. Or "Delete the line I'm on and the six below it" with d6j.

[-] FizzyOrange@programming.dev 0 points 7 months ago

They're not significantly different. Maybe it takes you 1s and me 2s. Not worth the effort of learning. Especially because Vim comes with significant downsides compared to full IDEs that will make you slower overall.

[-] Hexarei@programming.dev 3 points 7 months ago

Name a downside, I'll tell you how you're probably wrong

[-] FizzyOrange@programming.dev 0 points 7 months ago

You can't have a full integrated debug session with a watch window, locals (with an expandable tree for objects), stack, breakpoint list all visible at once. I.e. something comparable to this.

[-] Hexarei@programming.dev 1 points 7 months ago

You can get pretty close to the same experience with https://github.com/mfussenegger/nvim-dap, any others?

[-] FizzyOrange@programming.dev 0 points 7 months ago

If you consider that "pretty close" then I think you're going to dismiss anything else I say as insignificant anyway.

[-] Hexarei@programming.dev 1 points 7 months ago

I do; you're only dismissing it because it's formatted differently from the exact workflow you're describing, but it's certainly just as powerful if not more so

load more comments (26 replies)
load more comments (67 replies)
this post was submitted on 08 Apr 2024
946 points (98.1% liked)

Programmer Humor

19623 readers
1 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS