Graphical vi-vim Cheat Sheet and Tutorial
Learning vi or vim is not easy. But it doesn't have to be that difficult, either. It is, in any case, faster,
more powerful, and more productive than editing with any other editor, so you would do very well in investing the
time and effort to learn it.
Being a vi lover myself, I came up with the idea of providing a graphical cheat sheet for those learning vi or vim,
and I also found out it was a very good way to structure a tutorial. Here are the results for your learning enjoyment
(or your colleagues').
Graphical cheat sheet
This is a single page describing the full vi/vim input model, the function of all keys, and all major
features. You can see it as a compressed vi/vim manual. Click on the image below to access the full-size bitmap image,
or download the vector-based, scalable SVG version
(zip-compressed - and be sure to view &
print the SVG with the open source application Inkscape or the Adobe plug-in for
Internet Explorer, Firefox breaks the layout for some reason, apart from rendering it with no anti-alias!).
Graphical cheat sheet based tutorial
The tutorial above is structured in 7 lessons that cover the major commands in vi/vim. They
are structured so that you will learn the simplest and most useful first, and the more advanced ones afterwards.
Actually, using just the commands shown in lesson 1, you can already start editing in vi/vim in a similar way to
how you would on a regular editor.
Lesson 2 introduces the very powerful, and vi/vim-exclusive operators, and the rest of
the lessons advance from there. Each thumbnail links to a high-resolution bitmap version. You can also download
the full tutorial in a
single zip file with all the bitmaps or a
single zip file with all the SVGs
(see the note above about incorrect rendering on Firefox).
Notes
vim is an incredible editor by Bram Molenaar, based on the
original vi by Bill Joy, adding a ton of improvements over it.
Nowadays, you should choose vim over vi every time you can.
The cheat sheet and tutorial cover most important functions of vi's input model, leaving out the more
advanced regular expressions/ex command line material. This should be a very good beginning to becoming
a vi/vim wizard.
With the single exception of the external filter feature ("!"), all functions shown are supported by ViEmu,
my commercial add-in that provides advanced vi-vim emulation in Visual Studio.