昨天刚开始使用zsh,但是我在使主题工作方面遇到了很多麻烦。 以下是我的ZSH提示中显示的内容:
$fg[cyan][$fg[white] keithy $fg[cyan]] [$fg[white]~/Desktop$fg[cyan]] >$reset_color
我的〜/ .zshrc
source ~/.antigen.zsh
antigen theme jdavis/zsh-files themes/jdavis
由于
答案 0 :(得分:6)
TL; DR:更正.zshrc
位于底部。您可能想先尝试一下,看看它是否正常工作,然后再回过头来阅读解释。
检查antigen.zsh
和jdavis.zsh-theme
,看起来您有两个问题:
您尚未在任何地方加载并执行colors
function。添加
autoload -U colors && colors
到.zshrc
。
PROMPT
是单引号,未解析。您需要使用PROMPT_SUBST
option选项来解析提示字符串。添加
setopt promptsubst
到.zshrc
。根据链接文档,该选项的作用是什么:
如果设置,则会在提示中执行参数扩展,命令替换和算术扩展。提示中的替换不会影响命令状态。
所以你的.zshrc
应该是
source ~/.antigen.zsh
autoload -U colors && colors
setopt promptsubst
antigen theme jdavis/zsh-files themes/jdavis
答案 1 :(得分:0)
您似乎正在尝试使用来自Oh-my-zsh的颜色代码的提示,也许您还没有定义这些颜色。尝试将来自Oh-my-zsh的(不够,请参阅注释)将提示中的颜色重新定义为默认值zsh colors。您可以使用spectrum.zsh
文件(如果您不想运行整个软件包)添加到源列表中,或spectrum_ls
中定义的spectrum.zsh
函数或通过更改此单行中的数值(051是明亮的青色)来使用颜色:
zsh -c 'print -P -- "%F{051}Hello, World%f"'
以下是未定义颜色的提示(顶部)的示例,以及在定义PROMPT
(底部)之前已提供Oh-my-zsh的提示:
请参阅4ae1e1的答案,了解各个要求(Oh-my-zsh自动设置它们)。
答案 2 :(得分:0)
PATH
默认为单引号,因此未解析。用双引号字符串重写var
PATH="$PATH"
source ~/.antigen.zsh
antigen theme jdavis/zsh-files themes/jdavis