如何让Emacs shell模式呈现(或忽略)我的颜色而不是打印ASCII代码?
题
问题的症状看起来像是“[0m [27m [24m] [J [34; 1”]。它在终端上转换成蓝色。
-A
解决方案 2
目前给我一些成功的解决方案是将shell函数重新定义为ansi术语:
;; shell-mode
(defun sh ()
(interactive)
(ansi-term "/bin/zsh"))
其他提示
我的 .emacs
(add-hook 'shell-mode-hook 'ansi-color-for-comint-mode-on)
对于“忽略”替代方案,像“ alias ls = ls
”这样的东西。或“ unset LS_COLORS
"在〜/ .emacs_ {bash,tsch,whatever-your-shell-is-called}
文件中。此文件在emacs创建的所有从属shell中执行。
Emacs 发送新shell文件
〜/ .emacs_shellname
的内容作为输入(如果存在),其中shellname
是从中加载shell的文件的名称。例如,如果使用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