最近,我尝试了我的zsh,一切看起来都不错,直到我尝试virtualevn和virtualenvwrapper.当我激活virtualenv(例如测试)时,在正常的bash上,我会看到virtualenv名称,如:
(test)abc@abc:
但是当我切换到zsh时,我看不到virtualenv的名字.尽管如此,我还是在我的zsh的插件中添加了virtualenv和virtualenvwrapper.我还检查了我的virtualenv的激活文件,它包含:
f [ -z "${VIRTUAL_ENV_DISABLE_PROMPT-}" ] ; then _OLD_VIRTUAL_PS1="$PS1" if [ "x" != x ] ; then PS1="$PS1" else PS1="(`basename \"$VIRTUAL_ENV\"`) $PS1" fi export PS1 fi
是因为比较[“x”!= x]返回真实吗?
更新:
我试图在激活文件中回显$PS1,并得到了这个:
(test) %{$fg[magenta]%}%n%{$reset_color%}%{$fg[cyan]%}@%{$reset_color%}%{$fg[yellow]%}%m%{$reset_color%}%{$fg[red]%}:%{$reset_color%}%{$fg[cyan]%}%0~%{$reset_color%}%{$fg[red]%}|%{$reset_color%}%{$fg[cyan]%}⇒%{$reset_color%}
似乎$PS1是正确的,但是当我在终端回应$PS1时,(测试)消失了.似乎$PS1被其他东西覆盖!