2013-11-14 2 views
3

Мое приглашение работает нормально с обычным терминалом bash, но оно выглядит сломанным (или оно отображается сломанным) в терминале emss bash ansi-term.Как исправить сломанное приглашение в ansi-term emacs?

Это мой PS1:

\[\e[00;31m\]\u\[\e[00;33m\]@\h\[\e[00;32m\] \W\[\e[1;34m\] $\[\e[0m\] 

И это выглядит в нормальном Баш: Normal Prompt

И вот как это выглядит в Emacs ANSI-терм (Баш): Broken Prompt emacs

Я уже проверил, что default-process-coding-system переменная (utf-8-unix . utf-8-unix)

Думаю, мне нужно что-то избежать в моем приглашении, но я не могу понять, что.

EDIT:

Я попытался упростить ее, выполнив export PS1='a' и я до сих пор этот мусор (0;[email protected]:~/directory) в передней части строки. больше идей? Я действительно вошел в эту машину через ssh; возможно ли, что это действительно что-то делает с PS1 после того, как я его установил?

+1

Похоже, что у вашего PS1 может быть больше, чем вы его разместили, поскольку второе изображение показывает два разных пути, которые предполагают, что может быть что-то, что пытается, например, установить строку заголовка xterm. В любом случае может быть уже ответ на SO: http://stackoverflow.com/questions/17579662/shell-prompt-repeating-when-using-ssh-in-ansi-term – ArtemB

+0

это все, что есть в моем .bashrc для PS1; Я не уверен, однако, если все escape-символы верны. они должны быть только цвета: красный, желтый, зеленый, жирный синий, по умолчанию (белый?) –

ответ

2

Проверьте, есть ли у вас что-либо для переменной окружения PROMPT_COMMAND.

Очистите его unset PROMPT_COMMAND, и я подозреваю, что вы перестанете видеть неожиданное поведение.

Смежные вопросы