使用Swift命令行工具进行颜色输出

罗曼·波克莱特(Romain Pouclet)

我正在用Swift编写命令行工具,但无法在外壳中显示颜色。我正在使用以下代码:

println("\033[31;32mhey\033[39;39m")

甚至

NSFileHandle.fileHandleWithStandardOutput().writeData("\033[31;32mhey\033[39;39m".dataUsingEncoding(NSASCIIStringEncoding, allowLossyConversion: true)!)

当我在php中使用简单的echo时,它可以工作(文本显示为绿色),但是是否有理由在Swift命令行工具中不起作用?

谢谢!

cyt

Swift内置了unicode支持。这会使反斜杠的使用无效。因此,我使用带有“ \ u {}”语法的颜色代码。这是一个可以在终端上完美运行的println代码。

// \u{001B}[\(attribute code like bold, dim, normal);\(color code)m

// Color codes
// black   30
// red     31
// green   32
// yellow  33
// blue    34
// magenta 35
// cyan    36
// white   37

println("\u{001B}[0;33myellow")

希望能帮助到你。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章