0

我已经使用 Emacsansi-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

尽管我最近确实升级了所有软件包,但我不确定发生了什么会引发此问题。有解决方法吗?

4

0 回答 0