Snow Leopard中Ant的AnsiColorLogger问题

Nat*_*ate 4 ant macos colors osx-snow-leopard

我已将Ant配置为使用AnsiColorLogger.在Mac OS 10.5中,一切都很好.自升级到Snow Leopard以来,AnsiColorLoggger不再有效.我看到Ant输出(未着色)一秒然后它就消失了.有没有其他人在Snow Leopard工作?其他ANSI颜色在Terminal.app中工作正常(彩色ls输出,我的提示中的颜色).

另外,这对SuperUser来说是一个更好的问题吗?

Dav*_*son 6

更新:我已经解决了这个问题.它与ANT一起提供了适用于linux xterm的转义序列,但Mac OS X无法正确解释它.可以过滤ANT输出以转换这些序列并恢复彩色输出.

故事的寓意是这个包装脚本将实现彩色输出:

# cat /workspace/SDK/bin/ant-wrapper.sh
/usr/bin/ant -logger org.apache.tools.ant.listener.AnsiColorLogger "$@" | perl -pe 's/(?<=\e\[)2;//g'

# alias ant='/workspace/SDK/bin/ant-wrapper.sh' 

# ant publish 
(output has lots of pretty colors;  well, maybe not so pretty, more like an easter egg)

原帖(和调试步骤):

我对AnsiColorLogger没有显示颜色的问题也有类似的问题.我不确定作者的意思是"[输出出现]一秒然后它就会消失".这似乎是终端上发生的奇怪问题.

我的盒子:

# uname -a
Darwin Dave-Dopsons-MacBook-Pro.local 10.7.0 Darwin Kernel Version 10.7.0: Sat Jan 29 15:17:16 PST 2011; root:xnu-1504.9.37~1/RELEASE_I386 i386

这是我们使用的ANT Logger:http: //ant.apache.org/manual/listeners.html#AnsiColorLogger

这是一个相关的论坛帖子(试过给出的建议,但无济于事):http://ant.1045680.n5.nabble.com/Macosx-and-AnsiColorLogger-td1355310.html

我做了"蚂蚁|少",我看到转义序列,但仍然没有颜色:

Buildfile: /workspace/Words/words_blackberry/build.xml
ESC[2;32m
publish:ESC[m

仍然阻止这一点,如果有人让它在OSX上工作,他会喜欢建议

得到它了!

所以这是彩色ls的输出:

# CLICOLOR_FORCE=exfxcxdxbxegedabagacad ls -lGF | less
total 112
-rw-r--r--  1 ddopson  admin  6511 May 29 12:41 build.xml
drwxr-xr-x  6 ddopson  admin   204 May 28 23:59 ESC[34meclipse-binESC[mESC[m/
lrwxr-xr-x  1 ddopson  admin    35 May 23 21:24 ESC[35mfilesESC[mESC[m@ -> ../artwork/output/blackberry/files/
lrwxr-xr-x  1 ddopson  admin    36 May 23 21:20 ESC[35mimagesESC[mESC[m@ -> ../artwork/output/blackberry/images/

注意转义序列是如何微妙地不同的; 他们没有'2;' 像ANT那样......

所以要测试这个理论:ant -logger org.apache.tools.ant.listener.AnsiColorLogger发布| sed's/2; // g'

...并且输出是COLORIZED!胜利!