2016-12-19 59 views
0

我要到遠程服務器不直接相關的部署上使用Capistrano的對任務的自定義設置,這將是對我有用的,如果我可以使用Capistrano的啓動Vim,我已經試過這一點:是否可以從capistrano任務啓動vim?

set :pty, true 
execute "vim #{shared_path}/my_file.txt" 

但我收到這個(原因很明顯)

01 stdin: is not a tty 
    01 Vim: Warning: Output is not to a terminal 
    01 Vim: Warning: Input is not from a terminal 

它的存在,無論如何,使其工作?

回答

0

據我所知,你不能在沒有終端的情況下啓動vim。你可以用vim啓動一個終端,這裏有幾種方法可以做到這一點:

啓動一個像st,xterm或類似的終端。示例:

x-terminal-emulator -e vim 

st -e vim 

xterm -e vim 

該解決方案不是最好的,因爲終端仿真器可以有不同的開關來執行呼叫中的命令。 -e正在爲st和xterm工作。

更好的解決方案是啓動像的zsh,bash或類似的殼,因爲幾乎每一個殼具有相同的開關,這是-c直接在它啓動一個程序工作。例如:

zsh -c vim 

bash -c vim 
相關問題