1 我的ZSH配置中有一个调整后的提示。主要特点是,此提示符为红色,以便我可以轻松区分程序的输出。我的提示定义如下: PROMPT=$'\e[0;31m%n@%m:%~> \e[0m' 这种方法大部分工作都很好,但有时我的光标会切换到制表符完成时的另一个位置,并且屏幕上会留下一些字符并将命令行放大。这有点烦人,但如果有人知道解决方案,我会很感激。 command-line zsh — Mnementh source
2 您需要将非打印序列包装在%{ ... %}: PROMPT=$'%{\e[0;31m%}%n@%m:%~> %{\e[0m%}' 你应该能够做到: PROMPT=$'%F{red}%n@%m:%~> %f' 这更简单,更易于阅读,并适用于使用不同转义序列的终端类型。 — 丹尼斯威廉姆森 source 第二行对我不起作用,但第一行效果很好。非常感谢! — Mnementh 2010年 @Mnementh:对不起,第二行有一个拼写错误 - “F”丢失了。现在就试试。 — 丹尼斯威廉姆森2010年 谢谢,现在工作两行。如果可以的话,我会再次投票。:-) — Mnementh 2010年