如何让Emacs shell模式呈现(或忽略)我的颜色而不是打印ASCII代码?

StackOverflow https://stackoverflow.com/questions/256264

  •  05-07-2019
  •  | 
  •  

问题的症状看起来像是“[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
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top