Created: 2011-07-14 05:53
Updated: 2013-10-29 12:15

vgod's vimrc

Author: Tsung-Hsiang (Sean) Chang

Fork me on GITHUB


  1. Check out from github

     $ git clone ~/.vim
     $ cd ~/.vim
     $ git submodule update --init
  2. Install ~/.vimrc and ~/.gvimrc

     $ ./
  3. (Optional, if you want Command-T) Compile the Command-T plugin

     $ cd .vim/bundle/command-t/ruby/command-t
     $ ruby extconf.rb
     $ make


All plugins (except vim-latex) were checked out as git submodules, which can be upgraded with git pull. For example, to upgrade Command-T

 $ cd ~/.vim/bundle/command-t
 $ git pull


see the "USEFUL SHORTCUTS" section in vimrc to learn my shortcuts.


  • Pathogen: Pathogen let us install a plugin as a bundle in ~/.vim/bundle seprately.

  • Nerd Tree: A tree explorer plugin for navigating the filesystem.

    Useful commands:

    • :Bookmark [name] - bookmark any directory as name
    • :NERDTree [name] - open the bookmark [name] in Nerd Tree
  • AutoClose: Inserts matching bracket, paren, brace or quote.

  • vim-surround: deal with pairs of surroundings.

  • matchit: extended % matching for HTML, LaTeX, and many other languages.

  • xmledit: XML/HTML tags will be completed automatically.

  • Command-T: open and navigate between files with cmd-t.

  • SuperTab: Do all your insert-mode completion with Tab.

  • snipMate: TextMate-style snippets for Vim

    :help snipMate to see more info.

  • YankRing: Maintains a history of previous yanks, changes and deletes

    :help yankring to see more info.

  • VisIncr: Produce increasing/decreasing columns of numbers, dates, or daynames.

  • Cute Error Marker: showing error and warning icons on line.

    Note: MacVim users need to enable "Use experimental renderer" to see graphical icons.

  • vim-latex: Latex support.

  • OmniCppComplete: C/C++ omni-completion with ctags database.

  • JavaComplete: Java Omni-completion.

Language specific supports

  • Latex: Read :help latex-suite.txt
  • Restructured Text: ctrl-u 1~5 inserts Part/Chapter/Section headers
  • HTML, Javascript, Python, CSS, C, C++, Java: use TAB to do omni-completion.
  • HTML/XML: End tags are automatically completed after typing a begin tag. (Typing > twice pushes the end tag to a new line.)

Other good references

Cookies help us deliver our services. By using our services, you agree to our use of cookies Learn more