为SBT /播放如何有色端子输出被禁用?
-
27-09-2019 - |
题
我想禁用颜色转义码从SBT /播放记录。这可能吗?如果它是,是否有一种方法来做到这一点而不进行更改到配置 - 即通过命令行开关或系统属性
解决方案
您可以简单地设置系统属性sbt.log.noformat
到true
。如果你想例如使用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的挂钩,但在我看来,提供了一个更好的接口:
不隶属于 StackOverflow