0
tmux,zsh,vi模式,oh-my-zsh,TERM設置爲screen-256color 我用Esc K滾動命令歷史,每個命令我都可以左右移動,並且我可以擦除字符,但只要我嘗試插入命令字符串就會出現亂碼。此外,只有當命令長於終端寬度時纔會發生這種情況。zsh/zle編輯長命令,特別是試圖插入字符,亂寫命令字符串
zshrc: 出口ZSH = $ {HOME}/OH-MY-的zsh
ZSH_THEME="robbyrussell-ay"
CASE_SENSITIVE="true"
plugins=(git)
if [ -f $HOME/.aliases ]; then
source $HOME/.aliases
fi
export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
if [ -f $ZSH/oh-my-zsh.sh ]; then
source $ZSH/oh-my-zsh.sh
fi
export LANG=en_US.UTF-8
export KEYTIMEOUT=1
setopt nosharehistory
bindkey -v
PATH=$PATH:${HOME}/bin
export PATH="$HOME/.plenv/bin:$PATH"
eval "$(plenv init - zsh)"`
提示設置在 「robbyrussell-AY」:
local ret_status="%(?:%{$fg_bold[green]%}➜ :%{$fg_bold[red]%}➜)"
PROMPT=$'[%D{%Y-%m-%d %H:%M:%S}]$fg[cyan][%[email protected]%m]$reset_color $fg[yellow]%~ $fg[green]$(git_prompt_info)\n${ret_status}${reset_color} '
ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[blue]%}git:(%{$fg[red]%}"
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} "
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}✗"
ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})"
你實際使用'screen'或' tmux'?如果是這樣,哪一個?如果不是'TERM'不應該是'screen-256color'。在'tmux'的情況下:你是否在'tmux'配置('〜/ .tmux.conf')或'zsh'配置中設置了'TERM'?它應該是第一個,在shell配置中設置「TERM」幾乎總是錯誤的。 – Adaephon
謝謝@Adaephon,我使用tmux,TERM設置在〜/ .tmux.conf中'set-option -g default-terminal screen-256color' – Alex
發佈完整的'.zshrc'及其包含的任何文件。通常問題是在零寬度序列周圍缺少'%{...%}'的提示。在[unix.se]上做這個,這個網站是關於編程的。 – Gilles