在Windows XP中使用Groovy ANSI色彩支持
-
22-08-2019 - |
题
试行上 pleac.sf.net 时,我发现了示例没有抽到的ANSI颜色为例,在我的WinXP箱的工作(在MacOS上正常工作)。我发现的是我的WinXP机器上,在这两个Cygwin的与DOS提示,请 groovysh --color
(和 'groovysh --terminal = UNIX')显示转义码,而不是预期的有色提示。的 grep --color
强>工作在cygwin终端就好了。我找不到任何明显的是,我做错了。任何想法?
注意:强>我使用Groovy 1.6.0
更新:我已经尝试添加ANSI.SYS到在这里提到我CONFIG.NT的 Groovy的开发邮件列表,但它并没有解决(重启也尝试过)的问题。
解决方案
的事情是,你必须DOSONLY添加到您的CONFIG.NT以及使ANSI.SYS驱动程序的工作,那就只对其中COMMAND.COM模拟DOS 5.0工作。常规命令提示(CMD.EXE)不支持ANSI颜色在所有,AFAICT。
我不知道很多有关cygwin的如何处理它。
其他提示
我有同样的问题,我的解决办法是难看但简单:管道常规输出到cygwin的cat.exe 假设你的脚本red.groovy是:
println "\u001B[31mI'm Red\u001B[0m Now not"
然后,从命令解释程序
groovy.bat red.groovy | cat
将显示正确的颜色。 当然,你可以写自己的原生代码,处理ANSI代码。
在Groovy的网站说,为cygwin的做到这一点:
groovysh --terminal=unix
有关winxp的命令外壳,据我所知,没有ANSI支持可言,甚至不与ANSI.SYS。颜色是通过一些MS API仅支持。
在cygwin的一种解决方法是启动xterm或rxvt的并运行它。
不隶属于 StackOverflow