无法使用 zsh 回显单个字符

无法使用 zsh 回显单个字符

设置:OSX 10.11.5 El Capitan。默认(5.0.8)和/或 brew 安装 zsh(5.2)。

我在使用 zsh 时遇到了一些奇怪的问题,它似乎:a) 屏蔽单个字符,b) 添加奇怪的控制字符。这会导致管道和解析出现问题。似乎 zsh 正在添加或删除额外的字符。它并不总是这样做,所以我认为这可能是配置问题。

我认为这两个问题是相关的,并且第一个问题更容易复制。

如果我将 shell 设置为 bash,那么我可以运行以下命令:

Phils-MBP-7:~ phil-mac$ echo -n A
APhils-MBP-7:~ phil-mac$ 

现在,如果我将 shell 设置为 zsh:

Phils-MBP-7:~ phil-mac$ chsh -s /bin/zsh
...
Phils-MBP-7% echo -n A
Phils-MBP-7% 
Phils-MBP-7% echo -n AA
AA%                                                                             Phils-MBP-7% 

请注意,没有单字符版本,AA 版本似乎添加了换行符。这肯定与 zsh 尝试使输出美观但失败有关。

此外,不确定是否相关,但在终端中按下回车键后,上面的行上会出现一个蓝色的小左方括号。

有什么想法吗?提前致谢。

编辑:

直接运行 /bin/zsh 的结果:

Phils-MBP-7:~ phil-mac$ /bin/zsh
Phils-MBP-7% echo $PS1/$PROMPT
%m%# /%m%# 
Phils-MBP-7% echo -n A
Phils-MBP-7% 
Phils-MBP-7% 

编辑2:是的,没有配置它仍然存在:

Phils-MBP-7:~ phil-mac$ zsh -f
Phils-MBP-7% echo -n A
Phils-MBP-7% 

再次运行 echo:

Phils-MBP-7% echo -E $PS1
%m%# 

并且在预命令挂钩中没有打印任何内容(我认为这就是你的意思@Adaephon):

Phils-MBP-7% whence precmd preexec $precmd_functions $preexec_functions
Phils-MBP-7% 

相关内容