vim Vundle 的 PluginInstall 与 Archlinux 中的 fish 冲突

vim Vundle's PluginInstall conflict with fish in Archlinux

在Arch中,当我使用Vim Vundle的PluginInstall/PluginUpdate时,它会显示很多错误信息

Processing 'tpope/vim-fugitive'
Error detected while processing function vundle#installer#new..<SNR>146_process..vundle#installer#run..vundle#installer#ins
tall..<SNR>146_sync..<SNR>146_make_sync_command..<SNR>146_get_current_origin_url..<SNR>146_system:
line    1:
E484: Can't open file /tmp/v8J8IUB/7
Error detected while processing function vundle#installer#new..<SNR>146_process..vundle#installer#run..vundle#installer#ins
tall..<SNR>146_sync:
line    6:
E714: List required
Error detected while processing function vundle#installer#new..<SNR>146_process:
line   13:
E121: Undefined variable: s:last_status
E15: Invalid expression: 'error' == s:last_status
line   17:
E121: Undefined variable: s:last_status
-- More --

我必须重复输入 Enter 以便它可以 process 下一个插件,并且在处理每个插件时,它会显示相同的错误消息:

Processing 'sjl/gundo.vim'
Error detected while processing function vundle#installer#new..<SNR>146_process..vundle#installer#run..vundle#installer#ins
tall..<SNR>146_sync..<SNR>146_make_sync_command..<SNR>146_get_current_origin_url..<SNR>146_system:
line    1:
E484: Can't open file /tmp/v8J8IUB/12
Error detected while processing function vundle#installer#new..<SNR>146_process..vundle#installer#run..vundle#installer#ins
tall..<SNR>146_sync:
line    6:
E714: List required
Error detected while processing function vundle#installer#new..<SNR>146_process:
line   13:
E121: Undefined variable: s:last_status
E15: Invalid expression: 'error' == s:last_status
line   17:
E121: Undefined variable: s:last_status

当我设置 fish shell 为默认 shell 时,它会发生冲突。当我切换回 zsh 时,它会正常工作。我该怎么办?

至少更新到 Vim 7.4.276,即 adds support for fish,或者将 Vim 使用的 shell 设置为您的 [=15] 版本=] 支持(如 zsh):

set shell=/usr/bin/zsh