I've been using Vim as my main text editor for 18 years, but for most of that time I've been using something very close to the default configuration: my vimrc contained not much more than preferences for indentation and how to visually indicate white space characters like tabs. Last but not least, I've used a single colour scheme for most of that time: Zenburn.

In 20151 I started exploring a few Vim plugins2. To manage them, I started by choosing a plugin manager, Pathogen3. Recently I noticed that the plugin's author, Tim Pope, now recommends new users just use Vim's built in package management instead. I got curious about Tim Pope's other plugins: He has written a great deal of them.

Given I've spent most of two decades with a barely-configured Vim, you can imagine that I don't want to radically alter the way it works, and so I did not expect to want to use a lot of plugins. The utility of a plugin would have to outweight the disadvantages of coming to rely on one. But when browsing Tim's plugins, time and time again, I found myself reacting to description with How did I manage without this?. And so, I've ended up installing all of the following, all by Tim Pope:

  • vim-characterize — add unicode character names to output of ga
  • vim-dispatch — An out-of-band system for making ":Make" non-blocking
  • vim-fugitive — high quality Git integration
  • vim-rsi - readline key mappings in a few sensible places
  • vim-sleuth — Figure out whitespace preferences (tabs, indentation level) from the current buffer
  • vim-speeddating — handle dates (YYYY-MM-DD) properly with the increment/decrement functions (<C-A>, <C-X>)
  • vim-surround — mappings to manage "pairs" of characters nicely (e.g. brackets, quotes)
  • vim-unimpaired — pairs of complementary mappings, e.g. short mappings for :cnext and :cprevious
  • vim-vinegar — quality-of-live improvements to netrw, Vim's built-in file browser

  1. I had to look this up, probably because I started at redhat↩
  2. I have opinions about Plugins, what supporting them means architecturally for your application, the interaction with Open Source, and stuff like that, perhaps for another post.↩
  3. To try out Vim plugins the first thing you need to figure out is how to manage them (install, activate, configure). Vim grew a Plugin manager in version 8 (2016). Prior to that, people wrote third-party ones. For this reason there is a frankly absurd number of Plugin managers, including: Vim's own; Vim Plug; Vundle; Dein; Volt and Pathogen.↩

Comments

Comments on this page are closed.