Most of the readers will have an idea of what Vim is but in case you don’t, here’s a quick description.
If you’re used to using Notepad or Notepad++ (Windows), Sublime Text (Windows / Mac), Nano (Linux), Visual Studio Code (Windows / Mac / Linux) or any text editor, Vim is just another program that allows you to write and edit text.
In ’15, the Stack Overflow developer survey found Vim to be the third most popular text editor. Most of the developers opts for Vim as their text editor for their projects, despite having a plethora of options at their disposal. Why is that, though? What makes Vim special? Let’s find out more about this text editor.
It is absolutely everywhere
You’ll find it already installed in most of the Linux distros: while many other editors such as nano or Emacs may or may not be available, Vim is almost guaranteed to be there. And not just Linux, as mentioned above its found in practically every OS out there, so whether you’re using a Mac, Windows, or any other OS, Vim’s got you covered.
So, if you are someone that works with several machines, you will be able to keep using the same editor in all of them. And that editor will be Vim.
It is super efficient
This is a pretty great aspect of Vim, which is that it’s super efficient. And there’s a number of angles from which it approaches efficiency.
The thing that most people spend more time editing existing text than writing new one is at the heart of the Vim’s belief. Let’s face it most of us software engineers spend more time editing existing code to enhance and maintain it rather than writing new one. And this isn’t only true for software engineers, remember when you were writing essays in college, it probably took you days sometimes even weeks to reach the finished product but that’s because you revised it along the way and proofread it several times after finishing your initial draft.
This text editor allows you to be efficient by forcing you to only use the keyboard, meaning you can do pretty much any task without touching your mouse – even once. Now, this may seem like a very odd, and unproductive idea for some. But it does makes total sense practically. An experienced user can type in a speed simple mouse cursor could never catch.
You can use existing keyboard shortcuts as well as customize and create new ones for completing repetitive tasks quickly. This ability to customize Vim to suit your typing needs is what ultimately lets Vim shred through text at the speed of thought!
All that efficiency, however, needs to be learned.
It is like a separate language
As mentioned above, you’ll have to learn Vim in order to unlock its ultimate efficiency. Learning Vim commands is not that hard but its also not that easy, its just like learning a separate language. It will be a little tricky at start, but once you get the basics and see how things work, everything makes so much sense.
Once you start to think in Vim, you’ll be able to easily concatenate together commands just like you would concatenate together words in a sentence. One doesn’t have to memorize every possible sentence before they can speak. No, we just use sentence structures and plug in the appropriate words.
Similar to a language, it also has the concept of verbs, nouns, and adjectives. For instance, you will have to type the command “dw” in order to delete a word, this means “delete the word.” You have an action: delete and an object: word. If you want to perform a different action on that noun, then use a different action command. For instance, you would have to use “cw” (“c”hange & “w”ord) to change the text of a word.
To delete everything contained within a pair of quotes, you can use the command ‘di”‘, which can be thought of as “d”elete (an action), “i”nside (an adjective), and quotes (an object). If you want to delete five words, you can use the command “d5w” which literally means to “delete 5 words.” It’s a complex task that can be triggered with just 3 buttons!
I put all these commands here just for demonstration purpose there’s no need to get hung up on any of these at this point. I just wanted to show you how easy it can be to think in Vim and how it’s actually more efficient than manually learning a plethora of commands for every little situation you might encounter.
So, learning to use Vim is like teaching yourself a whole new language. Which brings me to my next point…
Using it is difficult, but rewarding
Now, i have mentioned a few of its qualities above but know this i haven’t even scratched the surface of what it can do yet. Despite all of its qualities and how great it is, there is a reason why not everyone uses it and the reason is its steep learning curve. So, don’t expect to become an expert in Vim overnight. At first, even doing the most basic tasks can turn out to be very tedious. Now, you will also find people out there that will say the learning curve is over exaggerated — you can totally get up and running and become productive in Vim after following a 30 minutes or so tutorial. I guess the truth is somewhere in the middle.
Now, you’ll definitely take sometime (if not a lot of time) to learn both the basics and more advanced things. But, once you do, however, you will be rewarded with brilliant efficiency (which is key to online business success everywhere).
At some point of using this text editor, you’ll know it so well, that you’ll be able to perform even the most difficult combinations of tasks in just a few seconds of typing.
Now add that to the fact you can use it on pretty much any OS on any platform. Can you already see a picture emerging?
With all of those things together, it may mean that Vim may be the only text editor tool you will ever need. And that’s what makes it great. It’s complex, unusual, but always available and very rewarding. All-in-all this text editor is definitely worth checking out.
Thank you for reading!