我想禁用颜色转义码从SBT /播放记录。这可能吗?如果它是,是否有一种方法来做到这一点而不进行更改到配置 - 即通过命令行开关或系统属性

有帮助吗?

解决方案

您可以简单地设置系统属性sbt.log.noformattrue。如果你想例如使用SBT Vim内部,你可以创建一个脚本是这样的:

#!/bin/bash
java -Dsbt.log.noformat=true $JAVA_OPTS -jar "${HOME}/bin/sbt-launch.jar" "$@"

其他提示

由于版本0.13.8(甚至更早),你现在可以简单地使用-no-colors选项SBT。 e.g。

sbt -no-colors test

这听起来像你的平台不实际的jline.terminal属性相匹配。我只是猜测,但在这里,当我传递参数丹尼尔Windows命令行我看到的颜色转义码以及对建议。

因此,你必须确保你的财产的平台,即WindowsTerminal匹配在Windows和UnixTerminal在Unix。

如果这样没有帮助,那么你可能会在不支持的平台在这种情况下,网站建议使用:

-Djline.terminal=jline.UnsupportedTerminal

好了,你可以的获得的Windows上的颜色通过安装Cygwin和通过此参数:

-Djline.terminal=jline.UnixTerminal

所以我仰望的JLine参数,看看有什么禁用颜色编码。

我能够通过向得到SBT在Cygwin的有色输出:

-Djline.terminal=jline.UnixTerminal

此外我想通了,我还需要以下的行添加到Cygwin.bat:

set CYGWIN=tty ntsec

在此之后加入SBT给出非常好的彩色输出。此外,我会建议寻找到Console2,因为它可以通过Cygwin的挂钩,但在我看来,提供了一个更好的接口:

http://sourceforge.net/projects/console/

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top