我使用ruby-test从emacs内部运行rails测试到* ruby-test *缓冲区。它工作得很好,除了输出混乱的ascii颜色控制字符(不确定正确的术语是什么)。
的例子:
MyTest:
^[[32m PASS^[[0m Test Passed (2.85s)
如果我在终端中运行测试,显示为绿色"PASS"。我能做些什么来让颜色显示在我的输出缓冲区吗?
有一个相关的问题,关于使用M-|运行的命令获得颜色,但我不知道如何将其用于通用缓冲区。
emacs shell命令输出不显示ANSI颜色,但代码
为了让Emacs猜测常规缓冲区的ansi-color模式,使用:
(require 'tty-format)
(add-hook 'find-file-hooks 'tty-format-guess)
您需要先下载ty格式的包。参见:https://unix.stackexchange.com/questions/19494/how-to-colorize-text-in-emacs
看代码,看起来作者做了一堆有问题的决定,但也许这将有助于:
(defadvice ruby-test-runner-sentinel (after add-ansi-colors activate compile)
(ansi-color-apply-on-region (point-min) (point-max)))
你们有ansi-color吗?El安装并激活?
尝试运行
ansi-color-for-coming-mode-on
函数