如何让鱼壳提示显示主机名?

lon*_*its 5 shell prompt fish

我试图让我的 Fish 提示看起来像旧的 Gentoo shell。

user@hostname ~ % 其中 user@hostname 为绿色,$PWD 和符号为蓝色。

现在它只显示:user@ ~ %,没有主机名。

aaron@ ~ % su -
Password: 
Welcome to fish, the friendly interactive shell
Type help for instructions on how to use fish
root@ ~ % hostname
rpi
root@ ~ % cat .config/fish/functions/fish_prompt.fish 
function fish_prompt
      if not set -q $__fish_prompt_hostname
        set -g __fish_prompt_hostname (hostname)
     end
     set_color -o red
     echo -n -s "$USER" @ "$__fish_prompt_hostname" " "
     set_color -o blue
     echo -n (prompt_pwd)
     echo -n " % "
     set_color normal
end
Run Code Online (Sandbox Code Playgroud)

另一个奇怪的事情......在我重新启动之前,它正确显示:

在此处输入图片说明

gle*_*man 4

你想要set -q __fish_prompt_hostname 没有$

您会注意到,在精美的文档中:

set ( -q | --query ) [SCOPE_OPTIONS] VARIABLE_NAMES...
# ............................................^^^^
Run Code Online (Sandbox Code Playgroud)