繁体   English   中英

zsh更改提示输入颜色

[英]zsh change prompt input color

我想更改zsh中输入文本的颜色(我为每个命令键入的文本)。 例如:在user@host> ls ~/我希望ls ~/ 黄色从标准输出中脱颖而出。

我知道我可以用bash来完成这个

export PS1=" $BIGreen \u@\h \w \$ $IYellow" 

在提示结束时,颜色设置为黄色,输入文本I类型为黄色(定义了适当的颜色变量)。 接着

trap 'echo -ne "\e[0m"' DEBUG

当显示我的命令输出时,会将颜色重置为正常。

我怎样才能在zsh中实现这一目标? 目前,我有

PROMPT=$'{$fg[green]%}%n@%{$fg[green]%}%m %# %{$fg[yellow]%}'

在.zshrc中(最后将颜色设置为黄色)但它不起作用。 (我也不知道如何在命令后将颜色设置回白色)。

尝试这个:

PROMPT="%F{green}%n@%m %# %F{yellow}"
preexec () { echo -ne "\e[0m" }

我尝试使用trap ,但看起来DEBUG直到命令运行/下一个提示之前才会发生,所以命令最终以黄色执行。 preexec()函数在命令执行之前被调用,因此您可以在那里恢复默认颜色。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM