Skip to content


Subversion checkout URL

You can clone with
Download ZIP
My vim directory
VimL Perl Ruby TeX Python Shell XSLT
Branch: master
Pull request Compare This branch is 33 commits ahead, 22 commits behind adamhjk:master.
Failed to load latest commit information.
autoload Add tagbar, update themes, cleanup vimrc
colors Latest fugitive and NERD_tree
compiler Initial commit
ftdetect added arduino file types
ftplugin Adding textile support
indent Initial commit
nerdtree_plugin Latest fugitive and NERD_tree
perl-support Updating perl support, adding fugitive
plugin support windows
ruby Add ruby fuzzy_file_finder implementation to alleviate need for gem
syntax added arduino file types
.gitignore Add tags to ignored files
README.perlsupport Updating perl support, adding fugitive
README.rdoc Adding textile support
gist.vim.vimup Added update.rb to update plugins, updated all plugins Create
update.rb Added update.rb to update plugins, updated all plugins
vimrc support windows


Adam's vimrc

This is the contents of my .vim directory. It includes my vimrc, which you should symlink to ~/.vimrc in order to get the goodness.

It includes several plugins: Git-vim, NERDtree, FuzzyFinder, FuzzyFinderTextmate, lots of color schemes, updated ruby bindings, and more.

To use, copy this directory to ~/.vim and symlink ~/.vim/vimrc to ~/.vimrc.

Once you are running, in command mode:


Fugitive provides:

NerdTree provides:

  • A TextMate style 'project drawer'

  • A built in filesystem explorer

FuzzyFinder(Textmate) provides:

  • A TextMate style 'cmd-t' buffer switching interface

  • An 'open buffers' tab-esque interface

Ack provides:

  • Awesome code grepping

Taglist provides:

  • Easy source code browsing

  • Must have exuberant ctags installed

  • Set to auto-populate behind the scenes

Surround provides:

  • Setting or replacing text that surrounds lines

NERD_Commenter provides:

  • Super smart comment control

Gist provides:

  • Integrated gist support



:GitAdd <file>

git-add <file> or current file if not specified.

:GitCommit <args>



Show git-status of current file or repository.


Show git-log of current file or repository.

:GitCheckout <args>

git-checkout. Completes git commits.

:GitDiff <args>

git-diff. Completes git commits.

:GitPull <args>



git-pull –rebase.

:GitPush <args>

git-push. Defaults to +git push origin <current-branch>+.

:GitCatFile <args>


:Git <args>

Does any git command.


Experimental. Call this command on unmerged file to enter vimdiff mode.


Call this command after merging.



Takes options, a pattern, and a directory. Shows results in a quickbuffer.


Like Ack + grepadd - adds to, rather than replaces, the quickbuffer.


Ack + lgrep - opens in location-list


Appends to the location list



Opens the tag list window


Toggle the tag list window


Details follow on the exact semantics, but first, consider the following examples. An asterisk (*) is used to denote the cursor position.

Old text                  Command     New text ~
"Hello *world!"           ds"         Hello world!
[123+4*56]/2              cs])        (123+456)/2
"Look ma, I'm *HTML!"     cs"<q>      <q>Look ma, I'm HTML!</q>
if *x>3 {                 ysW(        if ( x>3 ) {
my $str = *whee!;         vlllls'     my $str = 'whee!';

Delete surrounding - use the character or a 't' for tag (ds“, dst)


Change surrounding - first what to change, then what to change to


Takes a motion and surrounds it with the second argument, like cs


In visual mode, wraps the text with the character argument



Comment the current line, or selected text in visual mode


Toggle the comment


Toggles the set of lines individually (like “c ”, but assumes each line may have different settings)


Comment Sexily - up close to the start of each line


Append a comment to the end of the line


Comment and align on the left side


Comment and align on both sides


Uncomment the selected lines



post the whole text to gist


post the selected text to gist

:Gist -p

post wholet ext to gist with private

:Gist -a

post the whole text to gist with anonymous

:Gist -e

Edit the gist

:Gist -e foo.js

Edit the gist with the name 'foo.js'


Get gist

:Gist -c XXXXX

Get gist and put to clipboard

:Gist -l

List my gists

:Gist -la

List gists from all



:TextilePreview - render textile to a temp file, open in browser


:TextileRenderTab - render textile to a new tab


:TextileREdnerFile - render to a file



Toggle NERDtree










:GitDiff –cached








:GitAdd <cfile>



In git-status buffer


:GitAdd <cfile>

Something went wrong with that request. Please try again.