Vim script to run the spec command
Switch branches/tags
Pull request Compare This branch is 28 commits behind skwp:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
plugin
syntax
.gitignore
Makefile
README.md

README.md

vim-rspec

Beautiful, colorized RSpec tests in Vim with direct access to the line where the error occurred.

GreenScreenshot

HISTORY

INSTALL

  • Requires: gem install hpricot
  • Install with pathogen: clone/submodule into vim/bundle

USAGE

  • :RunSpec for current file
  • :RunSpecLine for current line (current 'it' block)
  • :RunSpecs for all files in spec dir
  • A split will open vertically on the right (if you prefer vertical, let g:RspecSplitHorizontal=0)
  • You can hit 'n' to go to the next error, or navigate to it and hit Enter to go to the line in the file.

Enhancements by @skwp (Yan Pritzker)

  • Run rspec on current line (execute a single 'it' block)
  • Failures and Success is now displayed prominently at the top in green or red
  • Improved colors (for Solarized, specifically)
  • Run in same window, do not create a new window for every run
  • When browsing errors in rspec window, hitting enter takes you to the code in other split (do not create new window)
  • Ability to hit 'n' in the rspec output to go to the next error (and the corresponding code in the split)
  • Unescape html so that brackets in stacktraces are correctly displayed
  • Took out xslt support to focus the project on a ruby-based formatter
  • Default to horizontal split, use "let g:RspecSplitHorizontal=0" in vimrc to split vertical

Suggested Key Mappings

By default you get these keymappings. If you don't want them, turn them off with:

let g:RspecKeymap=0

Run using Cmd-Shift-R:

map <D-R> :RunSpec<cr>

Run on current line (current 'it' block) Cmd-Shift-L:

map <D-L> :RunSpecLine<cr>

TODO

  • Further refactoring to improve maintainability
  • Support for rspec2 (longer term, as I currently don't use it myself)
  • Custom paths for RunSpecs (e.g. fast_specs dir)
  • Support for other testing frameworks (test/unit, shoulda), maybe

NOTE: This version is drastically different from the original taq/vim-rspec fork due to a large refactoring of the main codebase into a modularized form. If you have an old fork with custom changes, you may want to look at what's been done here.