問題の症状は "[0m[27m[24m[J[34;1"] のように見え、端末では青色に変換されます。
-A
私は私の中に次のものを持っています.emacs
(add-hook 'shell-mode-hook 'ansi-color-for-comint-mode-on)
現在私にある程度の成功をもたらしている解決策は、シェル関数を ansi 用語として再定義することです。
;; shell-mode
(defun sh ()
(interactive)
(ansi-term "/bin/zsh"))
「無視」の代わりに、「alias ls=ls
」または「unset LS_COLORS
」のようなものを~/.emacs_{bash,tsch,whatever-your-shell-is-called}
ファイルに入れます。このファイルは、emacs によって作成されたすべての従属シェルで実行されます。
Emacsは新しいシェルにファイルの内容を
~/.emacs_shellname
入力として送信します (存在する場合)。ここで、shellname
はシェルがロードされたファイルの名前です。たとえば、bash を使用する場合、送信されるファイルは~/.emacs_bash
. このファイルが見つからない場合、Emacs は にフォールバックしようとし~/.emacs.d/init_shellname.sh
ます。
以下は、.bash_profileまたは.bashrcで機能するはずです。
case $TERM in
xterm-color)
export PS1='\[\e]0;\W\007\]\[\e[34;1m\]\W\[\e[0m\]\$ '
;;
*)
export PS1='\W\$ '
;;
esac