如何将zsh的提示斜体化(哦,我的zsh,iTerm2)?
我想在iTerm2中使用oh my zsh将zsh的提示符(特别是正确的提示符/RPROMPT)斜体化,到目前为止,我在这方面遇到了一些问题。我已经检查过终端是否可以使用如何将zsh的提示斜体化(哦,我的zsh,iTerm2)?,zsh,prompt,iterm2,oh-my-zsh,Zsh,Prompt,Iterm2,Oh My Zsh,我想在iTerm2中使用oh my zsh将zsh的提示符(特别是正确的提示符/RPROMPT)斜体化,到目前为止,我在这方面遇到了一些问题。我已经检查过终端是否可以使用echo-e”\e[3mitalic\e[0m”输出和查看斜体字体 到目前为止我已经尝试过的事情: RPROMPT='\e[3m Hello\e[0m':输出是一个文字引号\e[3m Hello\e[0m 从那时起,我试过了 并且输出仍然有\e[3m和\e[0m部分 从开始,我尝试使用\x1b[3m而不是\e[3m:仍然输出\x
echo-e”\e[3mitalic\e[0m”
输出和查看斜体字体
到目前为止我已经尝试过的事情:
RPROMPT='\e[3m Hello\e[0m'
:输出是一个文字引号\e[3m Hello\e[0m
\e[3m
和\e[0m
部分
\x1b[3m
而不是\e[3m
:仍然输出\x1b[3m
和\x1b[0m
我希望使用斜体格式,因此非常感谢您的帮助。您可以使用
RPROMPT=$“带特殊转义的字符串”
()
它可能有一些问题,例如左提示符被编辑。根据Grapeaple的答案进行进一步测试后,我找到了一个不会干扰左提示符的解决方案。根据,您需要使用字符串引号
%{…%}
来包装转义序列格式,例如:
RPROMPT=$'%{\x1b[34;1;3m%}你好%{\x1b[0m%}
为了更好的兼容性(如果有一天你用不同的术语运行zsh),我不会硬编码转义序列,而是使用
RPROMPT="$(tput sitm) Hello $(tput sgr0)"
参见man terminfo了解sitm
和sgr0
谢谢,前面的美元符号正是我所需要的!是否要将您的评论转换为答案,我将其标记为已回答?根据您的答案,我设法找到了一个不会干扰左侧提示的解决方案。您需要使用字符串引号%{…%}
环绕转义序列格式,例如RPROMPT=$'%{\x1b[3m%}hello%{\x1b[0m%}'
RPROMPT="$(tput sitm) Hello $(tput sgr0)"