Here is my Vim configuration as of May 2009. It is a work in progress (and will always be), and is designed on a number of pragmatical choices and compromises, rather than on a universal guideline.

That been said, I think my configuration has become pretty neat. See for yourself :-)

I only use Vim in the terminal, but most of the configuration also works in gVim (you may have to modify some of the bindings for the special characters like <C-Space>).

Although the .vimrc is long, I have tried to avoid making the configuration too heavy, so you will only find mappings that I actually use. Usually, I discover a work pattern that I want to speed up, and create a binding. Then I try it some time to see if I will get used to it; if not, I remove again. That’s the methodology :-)

Major features

  • Usable with both the Colemak and Qwerty layout
  • Readable colorscheme
  • Makes heavy use of alt/meta bindings (as alt is easier to hit than control)
  • Efficient tabbed navigation
  • Custom status line
  • Quick access to often used Ex commands
  • Many navigation improving bindings (examples: next occurence of visual selection, tag jump in new tab reusing existing tabs, search outline ({{{), open visual selection in split window)
  • Plugins are configured to be pervasive (they will not get in your way; at least not my way :-) )

As of writing, I use these external plugins, which you may download from vim.org.

  • AlignPlugin
  • NERD_commenter
  • a (alternate)
  • imaps
  • matchit
  • project
  • rhs (not yet published)
  • securemodelines
  • surround
  • taglist
  • timestamp
  • vcssvn

Of “major” filetype plugins, I use haskellmode and latexsuite.

These are the files of interest. Enjoy :-)

  • Facebook
  • Twitter
  • Digg
  • Reddit
  • del.icio.us
  • StumbleUpon

Related posts:

  1. Split screen from visual mode in Vim
  2. XMonad config (July 2009)
  3. Using existing tabs when jumping to tags and files in Vim