我在 Cygwin 中将 ZSH 与 oh-my-zsh 一起使用,并且正在使用“云”主题,它将云表情符号 (☁) 放在提示符前面。我喜欢这样,但想尝试稍微定制它以显示不同的图像。但是,某些表情符号字符(至少我尝试过的那些)显然无法正确呈现。
这是 ohmyzsh 附带的云主题:
if [[ -z $ZSH_THEME_CLOUD_PREFIX ]]; then
ZSH_THEME_CLOUD_PREFIX='☁'
fi
PROMPT='%{$fg_bold[cyan]%}$ZSH_THEME_CLOUD_PREFIX %{$fg_bold[green]%}%p %{$fg[green]%}%c % {$fg_bold[cyan]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}'
这就是该主题的外观:
我尝试用另一个替换云表情符号,如下所示:
if [[ -z $ZSH_THEME_PAW_PREFIX ]]; then
ZSH_THEME_PAW_PREFIX=''
fi
PROMPT='%{$fg_bold[yellow]%}$ZSH_THEME_PAW_PREFIX %{$fg_bold[green]%}%p %{$fg[green]%}%c %{$fg_bold[cyan]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}'
但是,它在我的控制台中只显示了一半的表情符号图像:
我会注意到我在这两种情况下都使用Source Code Pro等宽字体。在我看来,表情符号在第二个示例中被渲染在更窄的空间中。有没有办法解决这个问题?或者更确切地说,为什么会有差异?这些表情符号是如何编码的?