当窗口调整大小或提示重置时,Zsh 提示符会消失

当窗口调整大小或提示重置时,Zsh 提示符会消失

我在 Zsh 中有一个简单的提示符。它仅包含提示符字符»N在正常模式下替换为,因为我使用 ZLE 的 Vi 模式)。

每当窗口调整大小时,提示字符就会消失,就像被退格了一样。无论我是否处于正常模式,都会发生这种情况。

我怎样才能解决这个问题?

我的提示主题(最小可重现案例):

# Functionality for displaying normal mode indicator in Vi mode.
function zle-line-init zle-keymap-select {
  local return_status="»"
  zle reset-prompt
}
zle -N zle-line-init
zle -N zle-keymap-select
# End Vi mode functionality

PROMPT='${return_status}'

答案1

可能发生的情况是,在重置提示期间未启动该提示,或者zle-line-init变量zle-keymap-select未定义。localreturn_status

当然,这意味着你的PROMPT现在是空的。

删除local限定符应该可以解决您的问题并让您重新获得美丽的 unicode 提示字符:)

相关内容