我刚刚安装了(很棒的)oh-my-zsh软件包以自定义我的zsh提示符,但是我遇到了这个奇怪的问题:

如果我在命令名称上使用自动补全功能(例如sou<TAB>-> source),那么一切都会按预期进行。但是,如果我对文件名使用自动补全功能(例如source .zshr<TAB>-> source .zshrc),则整个命令的字体都会变为灰色粗体。我在PROMPT和颜色中都使用了粗体,但没有使用灰色,所以我不知道颜色的来源。也只有在完成文件名时才会发生的事实使我感到困惑。

这是我的PROMPTRPROMPT(灵感来自Steve Losh的prose主题)。

PROMPT='
%B%F{208}%n%{$reset_color%}%{$fg_bold[white]%}@%B%F{039}$(box_name)
%{$reset_color%}:%{$fg_bold[green]%}${PWD/#$HOME/~}%{$reset_color%}
$(hg_prompt_info)$(git_prompt_info)
$(virtualenv_info)$(prompt_char) '

RPROMPT='${return_status}%{$reset_color%}[%t]'

提前致谢。

最佳答案

实际上,解决方案非常简单:%B和%F引入的颜色和重量更改必须由%b和%f进行封闭,而不是由$ reset_color进行封闭……仅此而已。

关于fonts - (oh-my-)zsh文件名完成更改当前字体,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6496806/

10-14 16:30