Go and colors in console

huangapple go评论105阅读模式
英文:

Go and colors in console

问题

在Go语言中,如果你不想使用任何库,想要在控制台中打印彩色输出,你可以使用ANSI转义序列来实现。ANSI转义序列是一种特殊的字符序列,用于控制终端的文本样式和颜色。

要在控制台中打印彩色输出,你可以在要打印的字符串前面添加相应的ANSI转义序列。例如,要打印黄色的文本,你可以在字符串前面添加"\033[33m"。这个转义序列表示切换到黄色文本的颜色代码。

然而,需要注意的是,并非所有的终端都支持ANSI转义序列。如果你的终端不支持,你可能无法看到彩色输出。

希望这可以帮助到你!

英文:

How do I print color out in to my console in Go? I don't want to use any libraries I'm trying learn how the coloring works. I've adding "\033[33m" in front of my string still no color.

答案1

得分: 6

你可以按照 @jub0bs 的建议,研究这个库的源代码。它非常容易理解。

这段代码会以蓝色打印出"Hello"。

我从这里获取了34,从这里获取了Sprintf

package main

import (
	"fmt"
)

func main() {
	colored := fmt.Sprintf("\x1b[%dm%s\x1b[0m", 34, "Hello")
	fmt.Println(colored)
}
英文:

What you can do is study the source code of this library as suggested out by @jub0bs already. It is pretty easy to follow.

This code prints hello in blue.

I got 34 from here and Sprintf from here

package main

import (
	"fmt"
)

func main() {
	colored := fmt.Sprintf("\x1b[%dm%s\x1b[0m", 34, "Hello")
	fmt.Println(colored)
}

huangapple
  • 本文由 发表于 2021年5月24日 01:10:52
  • 转载请务必保留本文链接:https://go.coder-hub.com/67662427.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定