如何使用ansi代码为scala中的标准输出着色

Bru*_*eth 1 scala scala-macros

是否有一个 Scala 库可以帮助对写入标准输出的文本进行着色?

这个库应该利用 scala 字符串插值机制。

Bru*_*eth 5

如果您使用的是 Scala 2.11+,则可以使用此库:https : //github.com/backuity/ansi-interpolator

它使用宏在编译时转换字符串,并支持嵌套:

ansi"Text containing ansi tags such as %bold{bold text} or %underline{can be %yellow{nested}}"

// you can also use string interpolation:
val someMsg = "hey"
ansi"My msg %bold{in bold: $someMsg}"
Run Code Online (Sandbox Code Playgroud)