Emacs M-x外壳内vt100/ansi颜色转义的非特殊方式

Emacs M-x外壳内vt100/ansi颜色转义的非特殊方式,emacs,terminal,ansi-colors,Emacs,Terminal,Ansi Colors,IM-xshell运行一个程序,试图产生漂亮的颜色输出。但我得到: ?- true. ^[[1mtrue.^[[0m -是的。 ^[1正确。^[0米 这显然不是EMACS的错误,因为它将环境变量项设置为dumb,只是我调用的程序忽略了这些信息 我知道上的ansi color for comint mode以一种特别的方式解决了这个问题:环境变量项仍然是哑的。也就是说,相应地解释这个变量的程序根本不会使用转义 是否有一种不太特别的方法来解决这个问题,设置术语或类似的术语?也许,根据下面的例子: (

I
M-xshell
运行一个程序,试图产生漂亮的颜色输出。但我得到:

?- true. ^[[1mtrue.^[[0m -是的。 ^[1正确。^[0米 这显然不是EMACS的错误,因为它将环境变量项设置为dumb,只是我调用的程序忽略了这些信息

我知道上的ansi color for comint mode以一种特别的方式解决了这个问题:环境变量项仍然是哑的。也就是说,相应地解释这个变量的程序根本不会使用转义


是否有一种不太特别的方法来解决这个问题,设置术语或类似的术语?

也许,根据下面的例子:

(setenv "DISPLAY" ":0")

(setenv "PATH" (concat "/home/an_user/bin:"
                (getenv "PATH")))
你可以试试:

(setenv "TERM" ....)

或者这不是你想要的吗?

如果comint模式下的M-x ansi颜色启用了它,那么定制comint模式下的ansi颜色应该就是你所需要的了。

你可以使用
M-x ansi术语来代替其他shell(
M-x shell
M-x术语
M-x eshell
).Ansi术语设计用于使用Ansi颜色的现成术语。更妙的是,我建议您使用(您可以阅读更多关于它的信息,并它基本上支持ansi术语的所有功能,并且能够轻松地在终端之间切换,并定义哪些键盘快捷键被发送到终端,哪些快捷键被Emacs捕获和解释。

是的,我认为值得一试。删除?你说的“哑”是什么意思完全正确吗?就像我在EMACSET中说“代码>回声$术语/代码>不清楚什么是你可能认为是一个非特设的解决方案。打开代码<代码> ANSI颜色对于COMIT模式似乎不是特别的。如果程序坚持在TTY上输出颜色,除了解释(或忽略)之外,你还能做什么?他们?换一种说法:默认的M-x术语有什么原因吗?@false-我个人在需要Emacs中的全功能终端时使用
M-x ansi术语
。漫画模式下的
M-x ansi颜色
M-x ansi术语
有何不同?@user273158:你的解决方案是最不特别的。@false,我刚刚讨论过补充我的评论作为回答。