2015-06-10 45 views
2

我跑我的測試文件中像這樣的:返回上次運行shell命令外殼輸出

:!bundle exec rspec my_file_spec.rb 

當我運行該命令會顯示我的測試結果在另一個窗口,我得到「按Enter鍵或輸入命令繼續「返回到vim。這一切都工作。

我想要做的是回到先前的輸出,一旦我離開它。這是否可能?

我沒有看到它在我的緩衝區列表中,我真的不需要保持在一個單獨的窗口/拆分輸出。

回答

2

:!命令的輸出直接打印到終端(或GVIM的內置仿真器);這是不是保存。要做到這一點,你可以重定向到一個外部文件,tee

:!bundle exec rspec my_file_spec.rb | tee a.out 
:split a.out 

或者,您在命令的輸出直接打開臨時緩衝區:read

:new +setl\ buftype=nofile | 0read !bundle exec rspec my_file_spec.rb 

這樣做的缺點是你只有在外部命令結束後才能看到輸出。