在 Vim 中运行 RSpec 测试

Vim · lvjian700 · 于 发布 · 最后由 chenge回复 · 1162 次阅读
30

自从转到 Ruby,Vim 已成为平时主要的开发工具。Vim 配合 iTerm 2 能很好的满足平时的开发需求。但是在运行 RSpec 的时候总是需要切换到 iTerm,尤其是在运行单个测试时,总是感觉不方便。

本文介绍插件 vim-rspec 插件,它可以直接从 Vim 中直接运行 RSpec:

vim-rspec

安装

vim-rspec 需要使用 vundle

Plugin 'thoughtbot/vim-rspec'

配置和使用

将如下配置添加到 .vimrc 中:

" 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>

" Link to current terminal app
let g:rspec_runner = "os_x_iterm"

在我的 Vim 中,<Leader> 键直接使用默认的 /

上述配置等同:

  • /t,运行当前测试
  • /s,运行当前的 it
  • /l,运行上一次测试
  • /a,运行所有测试

写在最后

Vim 是一个非常强大的工具,它可以让 Developer 双手保持的键盘上,熟练的使用 Vim 可以让我们保持专注,达到眼到手到的境界。对于如何学习 Vim,唯有大量的使用才能提升 Vim 的能力。 经过 10000 小时的练习后,Vim 会是 Developer 手上的瑞士军刀。


「软件匠艺社区」旨在传播匠艺精神,通过分享好的「工作方式」和「习惯」以帮助程序员更加快乐高效地编程。
共收到 9 条回复
1
hkliya · #1 ·

来做个 Vim 的入门分享吧,好多人还没上手呢。

30
lvjian700 · #2 ·

#1楼 @hkliya 哈哈,好啊。

改天来篇基础的 :)

1
hkliya · #3 ·

我用 tmux + dispatch,不用一直开着一个窗口运行测试啊。

30
lvjian700 · #4 ·

#3楼 @hkliya cool 我试试

30
lvjian700 · #5 ·

#3楼 @hkliya 是不是还需要 autorun 自动运行测试?

1
hkliya · #6 ·

#5楼 @lvjian700 不用的,只是把vim-rspec的命令改一下

46
chenge · #7 ·

/不是搜索么?试验失败。vim-plug

1
hkliya · #8 ·

#7楼 @chenge 你看看你的 Leader 键是哪一个

46
chenge · #9 ·

#8楼 @hkliya 这个怎么看呢?:/?这三个按键都会到底行命令,是这三个么?

需要 登录 后回复方可回复, 如果你还没有账号你可以 注册 一个帐号。