The symptom of the problem looks like "[0m[27m[24m[J[34;1" which on a terminal translates into the color blue.
-A
The symptom of the problem looks like "[0m[27m[24m[J[34;1" which on a terminal translates into the color blue.
-A
I've got the following in my .emacs
(add-hook 'shell-mode-hook 'ansi-color-for-comint-mode-on)
The solution that is currently giving me some success is to redefine the shell function as an ansi term:
;; shell-mode
(defun sh ()
(interactive)
(ansi-term "/bin/zsh"))
For the "ignore" alternative, put something like "alias ls=ls
" or "unset LS_COLORS
" in your ~/.emacs_{bash,tsch,whatever-your-shell-is-called}
file. This file is executed in all subordinate shells created by emacs.
Emacs sends the new shell the contents of the file
~/.emacs_shellname
as input, if it exists, whereshellname
is the name of the file that the shell was loaded from. For example, if you use bash, the file sent to it is~/.emacs_bash
. If this file is not found, Emacs tries to fallback on~/.emacs.d/init_shellname.sh
.
The following should work in your .bash_profile or .bashrc
case $TERM in
xterm-color)
export PS1='\[\e]0;\W\007\]\[\e[34;1m\]\W\[\e[0m\]\$ '
;;
*)
export PS1='\W\$ '
;;
esac