如何在 zsh 提示符中将文本变为斜体?
How to italicise text in zsh prompt?
我很难理解如何将我的 zsh 提示符的一部分设为斜体(使用 prezto)。
我的提示目前是这样的:
PROMPT='%F{yellow}%T %F{magenta}${SSH_TTY:+%n@%m }%F{cyan}%1~%f${vcs_info}\
55 %(!.%B%F{red}#%f%b.%B %(?.%F{green}.%F{red})❯%f%b) '
假设我想让 vcs_info 变成斜体,我该怎么做?
理论上,ANSI转义码\e[3m
设置斜体SGR。所以要回答你的问题,这应该有效:
PROMPT='...%{\x1b[3m%}${vcs_info}%{\x1b[0m...%}'
不幸的是,italic text
是 not widely supported in terminals emulators。有些只是忽略它,有些则反转颜色而不是斜体文本。要测试您的终端仿真器,请检查 echo -e "\e[3mitalic\e[0m"
的输出。如果不打印 italic
,您需要使用可以打印的终端仿真器,例如 gnome-terminal。
我很难理解如何将我的 zsh 提示符的一部分设为斜体(使用 prezto)。
我的提示目前是这样的:
PROMPT='%F{yellow}%T %F{magenta}${SSH_TTY:+%n@%m }%F{cyan}%1~%f${vcs_info}\
55 %(!.%B%F{red}#%f%b.%B %(?.%F{green}.%F{red})❯%f%b) '
假设我想让 vcs_info 变成斜体,我该怎么做?
理论上,ANSI转义码\e[3m
设置斜体SGR。所以要回答你的问题,这应该有效:
PROMPT='...%{\x1b[3m%}${vcs_info}%{\x1b[0m...%}'
不幸的是,italic text
是 not widely supported in terminals emulators。有些只是忽略它,有些则反转颜色而不是斜体文本。要测试您的终端仿真器,请检查 echo -e "\e[3mitalic\e[0m"
的输出。如果不打印 italic
,您需要使用可以打印的终端仿真器,例如 gnome-terminal。