Rails テストが成功したか失敗したかをそれぞれ緑色または赤色のバーで表示する既知の Vim プラグインはありますか。私は個人的に、Growl の通知が非常に気を散らしていると感じており、代替手段を探していますが、何も見つかりません。これに似た何かが私が目指しているものです。.
編集:OSX 10.6でMacVimを使用しています
Rails テストが成功したか失敗したかをそれぞれ緑色または赤色のバーで表示する既知の Vim プラグインはありますか。私は個人的に、Growl の通知が非常に気を散らしていると感じており、代替手段を探していますが、何も見つかりません。これに似た何かが私が目指しているものです。.
編集:OSX 10.6でMacVimを使用しています
これは私が私の$VIMFILES/ftplugin/python/tests.vim
ファイルに持っているものです:
function! RunAllTests(args)
silent ! echo -e "\033[1;36mRunning all unit tests\033[0m"
if filereadable(getcwd() . "/runtests.py")
set makeprg=./runtests.py\ --with-machineout
elseif filereadable(getcwd() . "/manage.py") && filereadable(getcwd() . "/settings.py")
set makeprg=./manage.py\ test\ --with-machineout\ --verbosity=0
else
set makeprg=nosetests\ --with-machineout
endif
exec "make! " . a:args
endfunction
function! JumpToError()
if getqflist() != []
for error in getqflist()
if error['valid']
break
endif
endfor
let error_message = substitute(error['text'], '^ *', '', 'g')
silent cc!
if error['bufnr'] != 0
exec ":sbuffer " . error['bufnr']
endif
call RedBar()
echo error_message
else
call GreenBar()
echo "All tests passed"
endif
endfunction
function! RedBar()
hi RedBar ctermfg=white ctermbg=red guibg=red
echohl RedBar
echon repeat(" ",&columns - 1)
echohl None
endfunction
function! GreenBar()
hi GreenBar ctermfg=white ctermbg=green guibg=green
echohl GreenBar
echon repeat(" ",&columns - 1)
echohl None
endfunction
let maplocalleader=","
nmap <LocalLeader>a :call RunAllTests("--machine-out")<cr>:redraw<cr>:call JumpToError()<cr>
nmap <LocalLeader>A :call RunAllTests("")<cr>
私はもともとGaryの.vimrcに基づいており、次にいくつかのものを移動して、バーを表示するメソッドを再コーディングしました。
私はそれがルビーとそれがテスト実行に使用するものなら何でも簡単に適応できると確信しています(私はルビーの男ではありません)。これは現在、Pythonテストを実行するためにnosetestsを使用しています。
お役に立てば幸いです。