ubuntu上的zsh标签完成错误

ubuntu上的zsh标签完成错误,ubuntu,zsh,gnome-terminal,Ubuntu,Zsh,Gnome Terminal,我这里有一个非常讨厌的bug: %git s变成 % git sgit s send-email -- send collection of patches as emails send-pack -- push objects over git protocol to another repository ... 它只是复制命令。如果我调整屏幕大小,它会恢复正常:git s 我该如何解决这个问题?我知道了!该死。这是我的提示 而不是: PS1=$'%B%F{$f

我这里有一个非常讨厌的bug:

%git s
变成

% git   sgit  s  
send-email   -- send collection of patches as emails  
send-pack     -- push objects over git protocol to another repository  
...
它只是复制命令。如果我调整屏幕大小,它会恢复正常:
git s


我该如何解决这个问题?

我知道了!该死。这是我的提示

而不是:

PS1=$'%B%F{$fg[绿色]]}${PWD/#$HOME/~}%{$reset\u color%}`git提示符`${VIMODE}'

我应该这么做

PS1=$'%{$fg\u粗体[绿色]]}${PWD/#$HOME/~}%{$reset\u color%}`git提示符`${VIMODE}


现在一切都正常了……

我在macOS上遇到了这个问题,我想和大家分享一下我是如何解决的

据我所知,当自定义提示出现问题时,就会发生这种情况。我有:

PROMPT='%{$fg[green]%}%n@%m%{$reset_color%}:%{$fg[cyan]%}${(%):-%~}$reset_color%}$ '
仔细检查后,我发现最后一次换色(
$reset\u color
)包装不正确。然后我更改了提示,如下所示:

PROMPT='%{$fg[green]%}%n@%m%{$reset_color%}:%{$fg[cyan]%}${(%):-%~}%{$reset_color%}$ ' 提示符=“%{$fg[绿色]]}%n@%m%{$reset_color%}:%{$fg[青色]]}${(%):-%~}%{$reset_color%}$”
我不再有这个问题。

什么是您的
术语
环境变量?你在用哪个终端?我只是用默认的ubuntu终端。我的术语是xterm默认的Ubuntu终端是什么?Hrm,我无法在我的Ubuntu 12.04上使用
gnome终端
TERM=xterm
zsh
重现这个问题。如果您无法解决此问题,请使用
^L
在每次出现此问题时要求重新绘制终端。这比调整窗口的大小要快得多。是的,
^L
可以做到这一点。但我想修复这个愚蠢的错误:(