Skip to content

muhrizkiakbar/vim-rspec

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rspec.vim

This is a lightweight RSpec runner for Vim and MacVim.

Installation

Recommended installation with vundle:

Plugin 'muhrizkiakbar/vim-rspec'

If using zsh on OS X it may be necessary to move /etc/zshenv to /etc/zshrc.

Configuration

Key mappings

Add your preferred key mappings to your .vimrc file.

" RSpec.vim mappings
map <Leader>t :call RunCurrentSpecFile()<CR>
map <Leader>s :call RunNearestSpec()<CR>
map <Leader>l :call RunLastSpec()<CR>
map <Leader>a :call RunAllSpecs()<CR>

Custom command

Overwrite the g:rspec_command variable to execute a custom command.

Example:

let g:rspec_command = "!rspec --drb {spec}"

If you want running spec with debugger(pry, debugger, etc), just declare this in your vim config.

  • Press a/i to insert mode if you wanna debug.
  • Press Ctrl+\ and Ctrl+n if you wanna normal mode(scrollable).
let g:rspec_with_debug = 1

This g:rspec_command variable can be used to support any number of test runners or pre-loaders. For example, to use Dispatch:

let g:rspec_command = "Dispatch rspec {spec}"

Or, Dispatch and Zeus together:

let g:rspec_command = "compiler rspec | set makeprg=zeus | Make rspec {spec}"

Custom runners

Overwrite the g:rspec_runner variable to set a custom launch script. At the moment there are two MacVim-specific runners, i.e. os_x_terminal and os_x_iterm. The default is os_x_terminal, but you can set this to anything you want, provided you include the appropriate script inside the plugin's bin/ directory.

iTerm instead of Terminal

If you use iTerm, you can set g:rspec_runner to use the included iterm launching script. This will run the specs in the last session of the current terminal.

let g:rspec_runner = "os_x_iterm"

If you use the iTerm2 nightlies, the os_x_iterm runner will not work (due to AppleScript incompatibilities between the old and new versions of iTerm2).

Instead use the os_x_iterm2 runner, configure it like so:

let g:rspec_runner = "os_x_iterm2"

Running tests

Tests are written using vim-vspec and run with vim-flavor.

Install the vim-flavor gem, install the dependencies and run the tests:

gem install vim-flavor
vim-flavor install
rake

About

Run Rspec specs from Vim

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Vim Script 78.8%
  • AppleScript 20.4%
  • Ruby 0.8%