在我的 emacs shell 中,我看到以下输出:
^[[J~% 回显 $PS1
回显 $PS1
%2c%%
在我的另一台机器上,这个东西根本就不显示。有人能给出原因和解决方法吗?
答案1
您的 shell 启动脚本正在配置PS1
变量以输出转义序列作为提示的一部分(可能是为了制作彩色文本或反向视频)。Emacs 缓冲区无法执行这些操作(至少不能使用转义序列),因此您看到的是原始转义序列。您应该能够TERM
在设置 的 shell 启动代码中测试 环境变量 的值。如果变量PS1
的值为,则不要将转义序列插入。TERM
emacs
PS1
答案2
您也可以尝试进入 shell 缓冲区并执行M-x ansi-color-for-comint-mode-on
。