我是Vim的新手。我正在试验vim-powerline和tmux(和病原体和vundle)。
在那个过程中我试图删除powerline并且tmux开始收到此错误。
我的.tmux.conf文件为空。如何找到tmux尝试运行此命令的位置?
答案 0 :(得分:2)
我建议你查看shell的配置文件。如果您使用例如使用bash,检查 $ HOME /。{bashrc,profile} 或 $ HOME / .zshrc 以获取zsh。可能有像
这样的行. {repository_root}/powerline/bindings/bash/powerline.sh
答案 1 :(得分:2)
我也有这个问题,但是在第一个tmux窗口中没有。它只发生在后续窗口中。我找到了解决方案,但不完全是问题的原因。
简短版本是在您获取bash绑定之前设置行中POWERLINE_COMMAND
的{{1}}变量的值。对我来说,这意味着:
.bashrc
我不确切地知道为什么会在后续的tmux窗口中发生这种情况,但我在bash绑定中添加了一些export POWERLINE_COMMAND="$HOME/powerline/scripts/powerline"
. $HOME/powerline/powerline/bindings/bash/powerline.sh
行以找出发生了什么。当绑定来自后续窗口时,echo
已设置为POWERLINE_COMMAND
,因此它会跳过检查设置它的正确位置的代码。但是,我无法弄清楚它已经设定的位置,方式或原因。
这是从bash绑定开始执行检查的代码:
powerline
由于它在第一个窗口中工作,我只是将if test -z "${POWERLINE_COMMAND}" ; then
if which powerline-client &>/dev/null ; then
export POWERLINE_COMMAND=powerline-client
elif which powerline &>/dev/null ; then
export POWERLINE_COMMAND=powerline
else
# `$0` is set to `-bash` when using SSH so that won't work
export POWERLINE_COMMAND="$(dirname "$BASH_SOURCE")/../../../scripts/powerline"
fi
fi
设置为指向它在第一个窗口中指向的命令。在获取bash绑定之前设置它会跳过整个检查。