Zsh 提示对齐问题

Zsh 提示对齐问题

以下是我的 zsh 提示配置。在 Emacs (eterm) 和 Intellij 终端中,显示受到损害。下面是显示的示意图。

%                                             |                                                                                                                                            
ari@machine:~% →   [16:38:14]

问题是:

  1. 最上面一行存在指示非特权 shell 的百分比符号
  2. 光标(注意垂直条)位于配置的左、右提示上方,并且位于屏幕右侧
  3. 左右提示彼此相邻,而不是位于屏幕的两端

有人发现这两种提示配置有任何问题吗?

precmd() {
  vcs_info
}

zstyle ':vcs_info:git*' formats '%b'

setopt PROMPT_SUBST

BRANCH_MARK=$'\ue0a0'
ARROW_PROMPT=$'\u2192'
STATUS="%(?:%{$fg[green]%}$ARROW_PROMPT:%{$fg[red]%}$ARROW_PROMPT)"

scm_branch() {
  if [ -n "${vcs_info_msg_0_}" ]; then
    echo -e "${BRANCH_MARK} ${vcs_info_msg_0_}"
  fi
}

PROMPT='%n@%m:%{$fg[cyan]%}%~%{$reset_color%}%# ${STATUS} %{$reset_color%}'
RPROMPT='$(scm_branch) [%*]'

相关内容