Vim Motions
And their catastrophic flaw

Vim Motions, And their catastrophic flaw

Firstly there are some ground rules and background points to be covered before I can outline the catastrophic flaw with vim motions.

Vim motions are not vim or a derivative of, like neovim. They are a method of moving around and editing a text file. h, j, k, l are how to move left, down, up and right, but there are many more, like w, b to move the next or previous word. It also allows to select and edit text quickly. For example caw selects around the current word under the cursor, removes the word and starts insert mode. And my current favorite is dt<character>, which deletes the from under the cursor up to the character stated on that line. What might not be clear is each letter in a command is it's own command. This means you can combine them in different ways, daw & ct<character>.

I will not try convince you that you should be using vim as an editor. It is really powerful and you should try it at least. Currently I use the vim motion plugin/features in Goland and Obsidian. I would miss the debugger from Goland to much. If your an emacs user, sure. I don't know anything about it, never tried it, did see it being used by one person once. But I do expect emacs may suffer from a similar flaw.

The last point to cover is what qualifies me to say that vim motions has a catastrophic flaw. My history with vim motions is really only about three or four months long. Yes, I could use them before that but that is about how long I have being forcing myself to use them. If an application has vim motions support, I turn it on. To give myself a grade in my proficiency with them, maybe a C or possibly only a D. So by no means am I a master, but the flaw still affects me every day. I honestly don't know how someone with mastery manages.

Enough with beating around the bush.

Vim Motions Catastrophic Flaw

 The flaw is you will try use the motions everywhere, even in place that do not support them. Writing a PR description on GitHub, you will put random characters in the text. You will wonder how to move to the edit of the line and don't talk about select text to reword in the middle of a sentence. I am very sure my chat messages have random vim motion command scattered thought out them. Then there is the applications that use those keybinding to do other things. I use thunderbird as my email client. j marks a mail as junk, granted most mail probably is junk, but all I want to do is move up the list. Yes, I filter my emails by starting at the bottom of the list. I have a nice work flow to give me a zero mail inbox.

The flaw is how good the motions are. When trying to edit text with out them feels so clumsy to the point it kinda makes me feel stupid. And if there is anyone watching, wow, how much worse it feels.

This is way I justified my experience, I do not have a lot and I can see how powerful vim motions are. When you get into stuff with macros, wrapping selected text with new text, things can get crazy. I have only touched the tip of the iceberg that vim motions can do. You can use vim motions to sort a list of items. That's not something you need every day but it's there when you do, which is awesome.

Wrapping things up

 Vim motions greatest strength is also it's greatest weakness. They are really good, like really good, working with them is so productive once you get over that first hump in the skill level required. Because of this first skill level hump mass adoption by the general public will never happen. So there will always be forms, sites and applications that we will be required to interact with that will never support the motions.

Hopefully as my skill level improves more, I can learn to switch to arcane method of using mouse movements to select and edit text in places which don't support the motions. That maybe be part of the mastery of vim motions, being able to switch between multiply editing styles.

If you have not guessed by now this is not a dig at vim motions, but on the contrary, it is parse for them. If you have never tired them, never seen them being used, give them a go. Check out some videos of people showing the basics and showing their skills off. If you do a lot of text editing you own it to yourself.

Vim Motions
Jim Fitzpatrick 3 May, 2024
Share this post
Our blogs
Archive
Sign in to leave a comment
Application Binaries Management Problem
What it means for a developer and general user.