ASCIIコードを印刷する代わりに、Emacsシェルモードで色をレンダリング(または無視)するにはどうすればよいですか?
質問
問題の症状は、「[0m [27m [24m [J [34; 1"これは、端末では青色に変換されます。
-A
解決 2
現在、ある程度の成功を収めている解決策は、シェル関数をANSI用語として再定義することです。
;; shell-mode
(defun sh ()
(interactive)
(ansi-term "/bin/zsh"))
他のヒント
.emacs
(add-hook 'shell-mode-hook 'ansi-color-for-comint-mode-on)
" ignore"の場合代わりに、" alias ls = ls
"のようなものを置きます。または" 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
所属していません StackOverflow