zsh中\ [... \]的等效项是什么?

时间:2019-12-02 13:05:40

标签: bash zsh

在我的 .bashrc 文件中,当我给提示符上色时,我使用\[ ... \]来防止新的bash行覆盖以前的bash行(还防止写入缓冲区上溢/下溢或出现文本溢出的情况)在随机位置输入)。这仅在使用颜色时发生。在我的 .bashrc 文件中:

WHITE="\[$(tty -s && tput setaf 254)\]";

PS1+="${WHITE} @ " 

但是\[转义在 .zshrc

中的 zsh 上不起作用

请问该如何解决?

1 个答案:

答案 0 :(得分:2)

等效的zsh%{ ... %}。但是,并不需要那么频繁,因为zsh具有一组更丰富的提示转义,从而消除了使用原始转义序列的需要。例如,使用%F转义符可以通过名称或数字选择前景色。 zsh已经知道如何在终端上查询要使用的确切字节,zsh也知道这些字节不应计入提示的宽度。

PS1+="%F{white} @ "

PS1+="%F{254} @ "