RPROMPT 未在初始提示中显示

RPROMPT not showing on initial prompt

我在尝试使用 RPROMPT 配置我的 zsh 提示符时遇到了一个奇怪的问题。我没有使用 oh-my-zsh 或任何其他插件管理器。这是我的 .zshrc 文件:

function zle-line-init {
  RPROMPT="foo"
  zle reset-prompt
}

zle -N zle-line-init

但是,在 first 提示符下(打开新的 shell 或新的 tmux window/pane 时),foo 不会不显示。 (然后我按回车键,RPROMPT 显示新提示。)

为什么第一个没有显示?

zsh 第一次打印初始提示时,RPROMPT 未设置,因此该功能被禁用。只需将 RPROMPT 设置为 zle-line-init 函数之外的任何值。