“无法放置”;X";右键提示以Zsh表示作业数
这个代码不适合我。我已将其所有代码粘贴到我的.zshrc 我的“无法放置”;X";右键提示以Zsh表示作业数,zsh,prompt,job-control,Zsh,Prompt,Job Control,这个代码不适合我。我已将其所有代码粘贴到我的.zshrc 我的.zshrc RPROMPT='%{\[0;33m%}%1v%{\[0m%}' 它应该表明你是否有工作。然而,这对我来说并不是这样 我希望在正确的提示符处显示一个X,以指示您正在运行作业 如果您在Zsh中有多个作业,您怎么会有一个显示X的右提示符?看起来您的ANSI转义序列中缺少了额外的左括号,而且我认为\[并没有达到您的预期效果 以下是您想要的: RPROMPT="%(1j.%{^[[33m%} X%{^[[0m%}.)" 但是
.zshrc
RPROMPT='%{\[0;33m%}%1v%{\[0m%}'
它应该表明你是否有工作。然而,这对我来说并不是这样
我希望在正确的提示符处显示一个X,以指示您正在运行作业
如果您在Zsh中有多个作业,您怎么会有一个显示X的右提示符?看起来您的ANSI转义序列中缺少了额外的左括号,而且我认为
\[
并没有达到您的预期效果
以下是您想要的:
RPROMPT="%(1j.%{^[[33m%} X%{^[[0m%}.)"
但是,提示显示后台有多少作业可能会更有用:
RPROMPT="%(1j.%{^[[33m%} (%j jobs)%{^[[0m%}.)"
注意:上面的
^[
是文本转义字符-例如,0x1B
。在命令行上(或在Vim的插入模式下,如果您使用Vim编辑.zshrc
)键入Control-V,然后键入Control-[插入转义字符。您正在使用的代码无法工作,因为它试图使用未设置的$psvar
变量。可能那篇文章在其他地方提到过它
无论如何,要在RPROMPT
中显示作业数,请使用
$> RPROMPT="%j Job(s)"
如果至少有一个作业正在运行,要使其显示“X”,请使用
$> RPROMPT="%1(j.X.)"
查看zshmisc
手册页的“提示”部分,或获取一个链接:。它解释了可用于在提示中显示信息的所有扩展序列。感谢您的回答!--我现在在.zshrc:RPROMPT=$(echo“{\033[32m%}%~%1(j.%j.)”中有以下内容.有没有办法写同样的短文?我没有回声就试过了,但没有成功。