diff --git a/vim/plugin/settings/rspec_pending_to_xit.vim b/vim/plugin/settings/rspec_pending_to_xit.vim new file mode 100644 index 0000000..1800b44 --- /dev/null +++ b/vim/plugin/settings/rspec_pending_to_xit.vim @@ -0,0 +1,22 @@ +" Does not work on pending 'blocks', only single lines +" +" Given: +" it "foo bar" do +" pending("bla bla" +" +" Produce: +" xit "foo bar" do +" +function! ChangePendingRspecToXit() + " Find the next occurrence of pending + while(search("pending(") > 0) + " Delete it + normal dd + " Search backwards to the it block + ?it\s + " add an 'x' to the 'it' to make it 'xit' + normal ix + endwhile +endfunction + +map ,rxit :call ChangePendingRspecToXit()