【发布时间】:2013-11-14 02:56:28
【问题描述】:
我的提示在普通 bash 终端上运行良好,但在 ansi-term emacs bash 终端中显示已损坏(或显示已损坏)。
这是我的 PS1:
\[\e[00;31m\]\u\[\e[00;33m\]@\h\[\e[00;32m\] \W\[\e[1;34m\] $\[\e[0m\]
在普通的 bash 中看起来像这样:
这就是它在 emacs ansi-term (bash) 中的样子:
我已经检查过default-process-coding-system 变量是(utf-8-unix . utf-8-unix)
我认为我需要在提示符中转义某些内容,但我不知道是什么。
编辑:
我试图通过执行export PS1='a' 来简化它,但提示符前面仍然有那个垃圾(0;mbax2ct2@kilburn:~/directory)。还有什么想法吗?
我实际上是通过 ssh 登录到那台机器的;在我设置之后,这是否可能对 PS1 做其他事情?
【问题讨论】:
-
看起来您的 PS1 中可能有更多您发布的内容,因为您的第二张图片显示了两条不同的路径,这表明可能存在某些尝试,例如设置 xterm 标题栏。无论如何,SO上可能已经有答案:stackoverflow.com/questions/17579662/…
-
这就是我在 PS1 的 .bashrc 中的全部内容;但是,我不确定是否所有转义字符都正确。它们应该只是颜色:红色、黄色、绿色、粗蓝色、默认(白色?)