这很奇怪。我在中定义了以下提示zsh
:
local user_host='%{$terminfo[bold]$fg[green]%}%n @ %m%{$reset_color%}'
local current_dir='%{$terminfo[bold]$fg[blue]%} %~%{$reset_color%}'
local git_branch='$(git_prompt_info)%{$reset_color%}'
local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})"
PROMPT="╭─${user_host} %D{[%a, %b %d %I:%M:%S]} ${current_dir} ${git_branch}
╰─%B$%b "
RPS1="${return_code}"
它gnome-terminal
在ansi-term
Emacs M-x ansi-term
(
multi-term
但是,它在 Emacs中不能很好地工作,如下所示:
我认为multi-term
能够解释终端喜欢 gnome-terminal
或ansi-term
所做的同一组转义字符。为什么它不能git-prompt_info
正确解释和其他人返回的转义字符?
我也试过:
- M-x
set-terminal-coding-system
并将其设置为utf-8-unix
TERM=eterm-color
在多术语终端内,或在调用 Emacs 之前等。TERM=
在多术语终端内,或在调用 Emacs 之前等。export TERM
从我的删除任何.zshrc
更新(2014 年 1 月 29 日):
到目前为止,最好的解决方案似乎是执行以下操作:
TERM=xterm-256color
但会导致我在这里报告的另一个问题:Passing escape sequences to shells within ansi-term in Emacs。