Is it worth to learn Vim in 2018?

…and why you should give it a try

The easiest way to start Vim is just to run a vim command in your terminal.

Vim is a very popular text editor widely used from 90’s to our days. It’s actively used by programmers, writers, system administrators, DevOps and other people who work with text files. But is it really worth to learn Vim in 2018 when we live in a time of different modern text editors?

Productivity improvement

This is the main reason why I personally use Vim. As a full-time JavaScript programmer, I edit different code files, configurations etc, all my working day. The idea of mode based editing behind Vim is very simple and at the same time extremely powerful. In simple words, almost every action that you perform often with a text (e.g. delete a word, delete a line or copy a sentence, etc) can be done with a simple keystroke command. Moreover, you can repeat commands, record macros and much more.

After some time of using Vim (one or two weeks), all the actions you perform will come from muscle memory. Everything related to the text editing or the file navigation you will be able to do in less than a second.

Of course, productivity is not only about the workflow. Vim has an amazing performance and it can be loaded very fast. More about benchmarks and comparison with other text editors you can find in an amazing article Why I Still Use Vim.

Learning curve

This is one of the top myths about Vim — it’s super hard to learn. But that’s actually not true.

Like any other tool, Vim has its own learning curve. A lot of people get frustrated when they try to use Vim for the first time. But the reason is not that Vim is so hard, but because they have strict expectations about text editing process in general.

The reality is that Vim is pretty simple and you can learn basics in a one day. Like any other tool, the more experience you have the easier to learn new features. Just keep practicing and after around two weeks (or less) of everyday learning, you will be able to work with Vim on a full-time basis.

The main sources to learn Vim are:

IDE-like behavior

A lot of people asking if that’s possible to configure Vim behave like a modern IDE. What if you want to use tools like linters, smart autocomplete or fuzzy search? It’s all possible with plugins. Vim has an awesome community support that does it even more powerful is a great community support and an endless amount of plugins.

Example of my current Vim configuration.

To review more examples of the modern vim configurations you can visit vimporn subreddit.

Vim-mode plugin for your editor

It’s not a recommended way of learning a “true” Vim, but what if you work in some kind of special environment, like XCode, Qt Designer, or you just in love with your Sublime Text configuration, but you still want to try Vim? Vim-mode is a compromise variant between your current editor and Vim.

Almost every popular editor has vim-mode plugin or embedded functionality, so you just need to find a way how to activate it. What it does is brings Vim command into your editor, so you can start to use with Vim commands in your usual text editor.

Some of the most popular Vim emulators:

In conclusion

Vim — is one of the best time investments that you can do as a developer or writer. It takes no more than a couple of weeks to learn Vim, but you can think about it as a long-term perspective. It will save you weeks or months of text editing time in your future life.

Feel free to ask me any question in comments.
Are you already a Vim user? Write down below why you use it.
Have you found a typo? Drop me a comment below or email semanser(at)gmail.com