Skip to content

jtimberman/dotvim

 
 

Repository files navigation

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, Gist, 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.

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>

git-commit.

:GitStatus

Show git-status of current file or repository.

:GitLog

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.

:GitPullRebase

git-pull –rebase.

:GitPush <args>

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

:GitCatFile <args>

git-cat-file.

:Git <args>

Does any git command.

:GitVimDiffMerge

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

:GitVimDiffMergeDone

Call this command after merging.

:Ack

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

:AckAdd

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

:LAck

Ack + lgrep - opens in location-list

:LAckAdd

Appends to the location list

:TlistOpen

Opens the tag list window

:TlistToggle

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!';
ds
cs
ys
s
,cc
,c
,ci
,cs
,cA
,cl
,cb
,cu
:Gist
:‘<,’>Gist
:Gist -p
:Gist -a
:Gist -e
:Gist -e foo.js
:Gist XXXXX
:Gist -c XXXXX
:Gist -l
:Gist -la
,rp
,rt
,rf
,d
,t
,b
,l
,gd

:GitDiff

,gD

:GitDiff –cached

,gs

:GitStatus

,gl

:GitLog

,ga

:GitAdd

,gA

:GitAdd <cfile>

,gc

:GitCommit

,ws

Remove trailing whitespace

<Enter>

:GitAdd <cfile>

You can use the rake ‘install’ task to install this in your home directory.

This will also work on Windows. A few notes.

Windows default vimrc location is C:Usersusername_vimrc. User home directory doesn’t have plugins, syntax, etc, use C:Program FilesVimvim72. PowerShell works for sure. cmd.exe might not. May need to start PowerShell/CMD as Administrator to get it to install.

People who have worked on this Vim configuration are:

Joshua Timberman github.com/jtimberman/dotvim Email: joshua@opscode.com

AJ Christensen github.com/fujin/dotvim Email: aj@opscode.com

Adam Jacob github.com/adamhjk/adam-vim/ Email: adam@opscode.com

Original: Bram Moolenaar <Bram@vim.org> Last change: 2002 Sep 19

About

My modifications to Adam's vim setup.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Vim Script 95.0%
  • Ruby 2.3%
  • Perl 1.5%
  • C 1.1%
  • Shell 0.1%