The 10 stages of Vim
- Vat iz ziz Vim you speek ov?
- You have installed it and managed to quit (maybe by killing the process or turning your computer off).
- Inserted some text, moved around (using the cursor keys), worked out how to quit thanks to a stackoverflow search.
- Vim is now slightly more useful than notepad - you can yank (yank?!) a line, delete a word, go to the bottom of a file, maybe you went through the tutor and survived.
- You have now added in some plugins, probably something from tpope, probably
surround, you have a
.vimrcgoing, you have picked a colour scheme, solarized?
.vimrcis growing as you have been trawling vimrc’s on github and you have picked up some useful mappings. You are aware of the difference between
vmapbut you still have to look it up. You have watched some screencasts. You are creating splits (and/or tabs), probably too many and so you lose where you are typing. You always have NerdTREE open. You have chosen a colour scheme that is more you
- You have written your first vimscript function, cobbled together from other vimscript that has somehow found its way into your config. The
.vimrcis now up to 500 odd lines and so you have put in fold markers to make it manageable again. You have customised the status line but probably just using default Airline. NerdTREE is open less and you are now using a fuzzy finder. Maybe you have dabbled in golfing.
- Customisation is picking up speed - custom text objects, custom folding, totally customised status line, totally customised minutiae such as
listchars. You have profiled startup and maybe syntax highlighting and done a plugin purge. Multiple times. “Autocmds” are your best / kludgiest friend.
- You have written at least one plugin and/or colour scheme, probably a few. Vim has spilled out into other terminal programs - VI mode in tmux and bash/fish/zsh, you are using ranger, mutt and Vimwiki. If it doesn’t have a VI mode it’s a no go or it’s a go until you work out how to replace it this month. You either have a 1000+
.vimrcor you now have everything in separate files or you have gone back to Vanilla.
autoloadhave grown in size. You have written custom syntax highlighting and you are all about
\vand all those
gcommands are in muscle memory.
- You have started to lose touch with reality but reality isn’t Vim so this is a good thing. Everything is modal or it’s just plain wrong. You may have installed Emacs and Evil mode only because you can then use Vim to do everything else. Vimium isn’t enough - now it’s pentadactyl or qutebrowser or gtfo.
Time to level up!?