Настраиваемое приглашение командной строки, не работающее с ansi-term

Я использую Emacs ansi-term какое-то время, и обычно это работает, более или менее. Недавно, однако, ansi-term начал интерпретировать символы на правой стороне моего терминала как часть команд, которые я печатаю. Вот код для моего приглашения (используя oh-my-zsh):

PROMPT='%{$fg_bold[red]%}➜ %{$fg_bold[green]%}%p %{$fg[cyan]%}$(get_pwd) %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} %{$reset_color%}'

function get_pwd() {
  print -D $PWD
}

return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})"

RPROMPT='${return_code} %{$fg_bold[cyan]%}$(rvm-prompt)%{$reset_color%}$(git_prompt_status)%{$reset_color%}'


ZSH_THEME_GIT_PROMPT_PREFIX="git:(%{$fg[red]%}"
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}✗%{$reset_color%}"
ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})"
#GIT_PS1_SHOWUPSTREAM=verbose

ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[green]%} ✚"
ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[blue]%} ✹"
ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%} ✖"
ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[magenta]%} ➜"
ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[yellow]%} ═"
ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[cyan]%} ✭"

Вот как это выглядит:

➜  ~/.emacs.d git:(master)                                     ruby-2.1.0 ✖ ✹ ✭

И вот что делает ansi-term:

➜  ~/.emacs.d git:(master) ✗ ls                                                                                    2 ↵ ruby-2.1.0 ✖ ✹ ✭
ls: cannot access 2: No such file or directory
ls: cannot access ↵: No such file or directory
ls: cannot access ruby-2.1.0: No such file or directory
ls: cannot access ✖: No such file or directory
ls: cannot access ✹: No such file or directory
ls: cannot access ✭: No such file or directory

Я не уверен, что случилось, что вызвало бы эту проблему, хотя я недавно обновил все свои пакеты. Есть ли обходной путь?

0 ответов

Другие вопросы по тегам