Since a while now I have decided as goal that I wanted an efficient text editor which is cross-compatible and supports a lot of programming languages. I found that a lot of people used the vim editor, which I tried out one time but could not use at all. Well, now I have finally decided to begin learning vim and to use it everywhere.

Vim uses a lot of keyboard shortcuts to make your life writing code is easier but which is hard since changing your nature is painful. The main thing is to not use the arrow keys and not to use the mouse anymore. It is a good choice to unbind the arrow keys in the .vimrc file.

" No arrow keys
noremap <Up> <NOP>
noremap <Down> <NOP>
noremap <Left> <NOP>
noremap <Right> <NOP>

For moving around in a file, I do not use the hjkl keys at all, which is the same as the arrow keys but more akward since the keys are in a row. Instead I use the wW, eE, bB keys for movement. They basically move around words very fast. When I want to navigate to a character in a word, I use the f and t keys. Basically “fa” would move the cursor on the next “a” in the word. And “ta” would move the cursor before the next “a”. See my full .vimrc.

There are a ton of awesome and useful plugins. Plugins for Git Integration, a plugin for file browsing and tons more.

To sum it up, vim is a great editor that takes a while to learn. Using only the keyboard and not using the mouse is a great thing and keeps you focused on where you write.