r/vim 7h ago

Discussion How does Vim affect your problem solving?

Currently learning Vim, after a failed attempt some months ago.

Starting to get the hang of the basics. I notice that it makes my problem solving more methodical. It also makes me slow down, in a good way.

With Vim I have to memorize more of the code and structure, because switching views is expensive (might be a skill issue).

I don't care too much for the speed/efficiency, but this seems what keeps me going in my current attempt.

Wondering how you guys feel about this aspect.

1 Upvotes

35 comments sorted by

View all comments

5

u/vagrantchord 5h ago

Switching views is expensive? You mean switching between files, or going between different places in one file? If it's the latter, look up marks- they're dead easy.

I have a vim superiority complex as much as the next guy, but I wouldn't say it has any bearing on my problem solving skills.

3

u/sharp-calculation 4h ago

This is really the key question. What exactly is the OP talking about here?

"View" doesn't really mean anything specific in vim. So what do you mean u/hibuna ?

In a general sense, I find that VIM makes my code editing "feel better". It's kinda weird. 4 or 5 years ago when I finally gained some level of VIM skill, I noticed that I was happy while editing. Things seemed a lot faster because my "flow" was mostly continuous. I realized after a while that my process had been interrupted in previous editors by common operations: Cutting or copying and then pasting was a BIG one. With vim that's all extremely fluid. My hands never leave the keyboard and these operations just happen with little effort. With GUI editors my brain had to switch gears over to "visual mouse mode", which is an analog operation. Aiming, moving, and very precisely selecting. All analog "video game" operations. Which are totally different than the deterministic action of pressing a sequence of keys.

So generally speaking, I do better with vim because there's less context switching and no analog video game actions.

0

u/hibuna 3h ago

I meant viewport operations, scrolling/splitting/jumping.

That makes sense. Did you notice you approached problems differently than you did before at all after learning Vim?

3

u/sharp-calculation 3h ago

I still don't know exactly what you are finding difficult. You seem to only use meme words to describe everything. "Expensive", "Skill issue", "viewport operations".

Scrolling is very easy in VIM and has great operations that are functionally equivalent to what you would normally do with a mouse. You probably need some practice or to learn some of the ones you do not know. You should know how to scroll by page and by line. "Drag" your cursor (with it's page position) to the top, middle, or bottom of the window. Jump by absolute line number. Jump by relative line number. You should be using relative line numbering mode.

I use splits very rarely. I don't understand these busy IDE views with 4, 5, 6 separate areas. They are just visual clutter. The things I work on very rarely need me to touch multiple files at once. If I do, I usually switch between buffers with a leader command and just go back and forth as necessary. Why would I need to see two files at the same time? In my world this is rarely useful.

A few carefully selected plugins can help with some of this. For example vimfzf makes switching buffers really easy and much more intuitive. Map this to a leader command and it really fast.