The ~/.vim directory that we share at work
Vim script
Switch branches/tags
Nothing to show
Pull request Compare This branch is 62 commits ahead, 330 commits behind akitaonrails:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.

README.textile

IMPORTANT

You should read this readme carefully before you start, otherwise there could be issues with some plugins.

Tweaks by Nils

I forked this from Fabio Akita and made some tweaks to fit my personal needs.

For example I changed the Leader-Key to ‘,’ and added some more key mappings which are located in key_mappings.vim. But I will probably reorganize the storage of the mappings soon.

I also added some new submodules like mirah, vim-latex and gist. (see below)

Vim

It is recommended that you use gVim in either Windows or Linux and MacVim for
Mac. Download from:

Bundled Plugins

  • Ack – type :Ack [search pattern] to search your entire project
  • Align – align blocks of text using equal sign, make comment boxes and more
  • bufexplorer – manage your file buffers
  • Command-T – the fastest and most intuitive way for opening files in your project
  • cucumber – support for cucumber features such as syntax highlight, indentation, etc
  • endwise – support to close Ruby blocks such as ‘if’, ‘do’ with ‘end’
  • fugitive – support for Git, adding convenient commands such as :Gstatus, :Gread, :Gmove
  • FuzzyFinder – Search your buffer or your open buffers fuzzy.
  • gist-vim – nice interface to gist
  • haml – syntax highlight for HAML
  • L9 – L9 script collection
  • markdown – syntax highlight for Markdown
  • mirah-vim – script for the Mirah language
  • NERD_commenter – support to comment lines of code
  • NERD_tree – project pane that you can open with [leader] p
  • ragtag – easier way to create tags for html, erb, etc
  • rails – lot’s of tools to make it easier to manage your Rails projects
  • snipmate – support for textmate-like snippets for several languages
  • supertab – pseudo auto-complete with tab
  • surround – add, change, remove surrounding parentheses, brackets, quotes, etc
  • syntastic – checks for syntax errors in many languages
  • textile – syntax highlight for Textile
  • vim-coffee-script – syntax highlight for Coffee Script
  • vim-jquery – synteac highlight for JQuery
  • vim-latex – nice scripts to work with latex
  • vim-preview – [leader] P previews Markdown, Rdoc, Textile, html. Requires Ruby and other gems.
  • vim-ruby-sinatra – syntax highlight for Sinatra
  • vim-ruby – syntax highlight, smart identation, auto-complete for Ruby
  • vim-textobj-rubyblock – smart block selection in Ruby code
  • vividchalk – color scheme inspired by the classic Vibrant for Textmate
  • Zencoding – powerful way for HTML abbreviations (learn here: http://code.google.com/p/zen-coding/). Type abbreviation and press Ctrl+Y+comma (c-y ,)

Usage

Troubleshoot: Because of the large amount of submodules, if you ever have any
trouble after pulling from the repository, it will be easier to just back up
your old .vim folder and just git clone a new version.

Clone this repo into your home directory either as .vim (linux/mac) or
vimfiles (Windows). Such as:


git clone git://github.com/akitaonrails/vimfiles.git ~/.vim

Then ‘cd’ into the repo and run this to get the snippets submodule:


git submodule update --init

Now you should create a new .vimrc file in your home directory that
loads the pre-configured one that comes bundled in this package. You can do it
on Linux/Mac like this:


echo "source ~/.vim/vimrc" > ~/.vimrc

On Windows you should create a _vimrc (underline instead of dot) and add
the following line inside:


source ~/vimfiles/vimrc

This way you can override the default configuration by adding your own inside
this file.

You should also create a new .gvimrc file in your home directory. You can do
it on Linux/Mac like this:


echo "source ~/.vim/gvimrc" > ~/.gvimrc

On Windows you should create a _gvimrc (underline instead of dot) and add
the following line inside:


source ~/vimfiles/gvimrc

This way you can override the default GUI configuration by adding your own inside
this file.

Help Tags

At first usage of vim, type “:” while in command mode and execute:

call pathogen#helptags()

This will make the plugins documentations available upon :help

Ubuntu 11.04 and/or Vim 7.3.35

Ubuntu 11.04 comes bundled with Vim 7.3.35, which has “flaky” Ruby support.
Even if you do everything right, you might see the following crashes when
trying to use Command-T:


Vim: Caught deadly signal SEGV
Vim: Finished.

Segmentation fault

If this happens to you, update Vim to 7.3.154:


hg clone https://vim.googlecode.com/hg/ ~/vim
cd ~/vim
hg update -C v7-3-154
./configure --enable-rubyinterp
make
sudo make install

More details can be found here .

Dependencies

You will need these dependencies figured out:

  • Ruby (for the fuzzy finder plugin)
  • Exuberant Ctags (http://ctags.sourceforge.net/)
  • Ncurses-term (in Linux only)
  • Ack (On Ubuntu one needs to install ack-grep for Ack to work)
  • git (for gist-vim)
  • curl (for gist-vim)

In Ubuntu, for example, you will have to do


apt-get install exuberant-ctags ncurses-term ack-grep curl git

In OS X, you can install ctags with homebrew


brew install ctags

On Windows you have to download Ctags and add ctags.exe in your PATH.

Mac OS X and most Linux distros come with Ruby already, though I recommend to install it with the Ruby Version Manager . If you’re in Windows
look for Luis Lavena’s latest Ruby Installer (http://rubyforge.org/projects/rubyinstaller/)

IMPORTANT: Setting up gist-vim

You have to set some global configuration values for git to be able to use gist-vim with your github account:


git config --global github.user  your-user-name
git config --global github.token  your-token

To get your token go to “Account Settings → Account Admin” at github.

IMPORTANT: Command-T

The latest version replaces the old Fuzzy Finder with a new one called
“Command-T” form wincent.com. I’ve replaced the old “Command-T” key
binding that used to open new tabs and assigned it to this new plugin
so it behaves the same as Textmate.

You may have problems in Mac/Linux because this plugin requires a native
extension, so you will have to do this:


rvm use system # use this line if using rvm
cd ~/.vim/bundle/Command-T/ruby/command-t
ruby extconf.rb
make

This means that you need to have your Ruby source files and GCC also
installed. A binary for Windows is already bundled so it should just
work. I’ve also included a binary compiled for Ruby Enterprise Edition,
but if you are using other Ruby distros, you will need to recompile.

There are binaries for Mac and Windows. The Mac version is compiled
against the default system Ruby for Mac OS X 10.6.5. The Windows version
is compiled against Ruby Installer 1.8.7-p330.

Learn Vim

Visit the following sites to learn more about Vim:

There are many sites teaching Vim, if you know of any other that are easy
to follow for newcomers, let me know.

Credits

  • Original project and most of the heavy lifting: @scrooloose
  • All the cool plugins for Rails, Cucumber and more: @timpope
  • Great Command-T plugin by: Wincent
  • Hacks and some snippets: @akitaonrails
  • Some minor additions: @NilsHaldenwang