zshはオートコンプリート時にタブ文字を追加します。

zshはオートコンプリート時にタブ文字を追加します。

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に通知せずに、プロンプトに端末制御文字を含めました。

%{これは、プロンプトの対応する部分をおよびで囲むことによって実行する必要があります%}。これは、色を黄色に設定して色をリセットするときに行われますが、色を紫に設定し始めるときには行われません。

関連情報