每次我使用 zsh 的 tab 自动补全功能而不是补全当前字符串时,它都会给我一个新字符串 + 选项来补全。这很难解释,所以这里有一个例子。这就是我输入“ls Nue”并按下 tab 键时会发生的情况。
[me@mbp:/Volumes/hdd/music]: ls Neu ls Neu
Neuraxis/ Neurosis/ Neutral\ Milk\ Hotel/
如果我删除第二个“ls Nue”,我无法删除空格和第一个。如果我按回车键,就好像我刚刚输入了一个空行。有人知道发生了什么吗?谷歌搜索表明这是我的提示的问题。
"%{$fg[blue]%}[%n@%m%{$fg_bold[magenta]%}:%d%{$reset_color%}%{$reset_color%}$fg[blue]]$reset_color%}: "
答案1
我不确定这是否会导致您的问题,但您的提示可能需要一些%{%}
围绕颜色序列或其他非打印元素的配对。如果您显示的值$PS1
是什么,我可以检查一下。
答案2
您应该将此错误报告给zsh 用户邮件列表或询问他们IRC 频道。