Skip to content

alterego-labs/vim-rspec

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

82 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vim-rspec

ABOUT

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

GreenScreenshot

HISTORY

INSTALL

External dependencies

Because of ending of hpricot gem maintenance was made decision about moving into nokogiri. So this gem is required for vim-rspec work. You may install it manually by run gem install nokogiri or go into plugin folder and run bundle.

VIM plugin managers

Pathogen

Install with pathogen: clone/submodule into vim/bundle

VIM-PLUG

Added into ~/.vimrc the following line:

call plug#begin('~/.vim/plugged')

Plug '<path-to-repo>'

call plug#end()

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

  • 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
  • Support for RSpec1 and RSpec2 (@thenoseman)
  • Automatically find the window with the spec (@thenoseman)

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
  • 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.

About

Beautiful rspec output in vim.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • HTML 45.5%
  • Ruby 30.5%
  • Vim Script 23.5%
  • Makefile 0.5%