C++ with Vim

I usually program C++ with Vim. Here is a list of handy plug-ins and auxiliary tools that I use.

  • The ctags program extracts all the functions and variable definitions from your program. Vim can read the ctags file and allows you to jump to the definition with Ctrl ]. This is extremely useful. In order to automatically keep the ctags up to date, use the gutentags plugin.
  • Compilation is done in a separate terminal with CMake and Ninja-Build.
  • In order to quickly change between files in the current directory I use vinegar in conjunction with dirvish.
  • For snippets I use SnipMate, other people prefer UltiSnips.
  • I like the Molokai color scheme.
  • The syntastic plugin runs a syntax check (static analysis) over the current file when you save it. A lot of times it directly finds bugs and one does not even need to compile to see it.
  • With the fswitch you can quickly toggle between header and source files.
  • surround makes it easy to surround some selection with delimiters like parentheses, brackets, braces, quotes and so on.
  • The unimpaired packages has some nice bindings that let you move to the next and previous files and other things.