【问题标题】:How to fix broken prompt in ansi-term emacs? [closed]如何修复 ansi-term emacs 中损坏的提示? [关闭]
【发布时间】: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 中的全部内容;但是,我不确定是否所有转义字符都正确。它们应该只是颜色:红色、黄色、绿色、粗蓝色、默认(白色?)

标签: bash emacs ansi-term


【解决方案1】:

检查您是否为PROMPT_COMMAND 环境变量设置了任何内容。

使用unset PROMPT_COMMAND 清除它,我怀疑您将不再看到意外行为。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-02-22
    • 1970-01-01
    • 2011-03-18
    • 1970-01-01
    • 1970-01-01
    • 2012-12-31
    • 1970-01-01
    相关资源
    最近更新 更多