我在 RHEL 6.4 机器上安装了 zsh 4.3.10。我不确定为什么会发生这种情况,但是当我Tab自动完成事情时,它还添加制表符。
例如:
rocket@rhelbox www % vim vim
external command
----------------
vim vimdiff vimtutor
因此,当我输入VIMTab后,Tab它会向我的控制台添加一个选项卡,然后完成自动完成操作。该命令运行良好,只是很烦人。我也无法退格来删除它。我不知道是什么原因造成的。
这是我的.zshrc
:
# Initialize Autocompletion and Autocorrection
autoload -U compinit promptinit
compinit
promptinit
#prompt redhat
zstyle ':completion:*:descriptions' format '%U%B%d%b%u'
zstyle ':completion:*:warnings' format '%BSorry, no matches for: %d%b'
zstyle ':completion::complete:*' use-cache 1
setopt correctall
# Custom PS1
autoload -U colors && colors
# http://www.understudy.net/custom.html#Z_color
fg_purple=$'\e[0;35m'
#PS1="%n@%m %c %% "
PS1="${fg_purple}%n@%m %{$fg[yellow]%}%c %% %{$reset_color%}"
# cd is automagically added
setopt autocd
# Save History
HISTSIZE=1000
SAVEHIST=1000
HISTFILE=~/.bash_history
setopt hist_ignore_all_dups
# Keybindings
bindkey "^[OH" beginning-of-line
bindkey "^[OF" end-of-line
bindkey '^?' backward-delete-char
bindkey "\e[3~" delete-char
# Aliases
alias ls="ls --color=auto"
# Set (SVN) Editor to vim
export SVN_EDITOR=vim
export EDITOR=vim
答案1
这可能是由于您设置的提示混淆了 zsh 光标在终端中的位置。您已在提示中包含终端控制字符,但没有让 zsh 知道这些字符实际上不会显示在终端上。
%{
这需要通过用和包围提示的这些部分来完成%}
。这在将颜色设置为黄色和重置颜色时已经完成,但在开始将颜色设置为紫色时尚未完成。