Go language: console output color characters

Print color characters on console & terminal output

The corresponding sequence of colors in Golang:

前景色   背景色  
30  	40	  黑色
31  	41	  红色
32  	42	  绿色
33  	43    黄色
34  	44    蓝色
35  	45 	  紫色
36  	46 	  青色
37  	47	  白色

Directly use Sprintf to format characters and return, example:

fmt.Sprintf("\x1b[0;%dm%s\x1b[0m", color, str)

%dOutput standard decimal format, here corresponds to the color table sequence. %sString representing the output

Code example:

const (
	textBlack = iota + 30
	textRed
	textGreen
	textYellow
	textBlue
	textPurple
	textCyan
	textWhite
)

func Black(str string) string {
	return textColor(textBlack, str)
}

func Red(str string) string {
	return textColor(textRed, str)
}
func Yellow(str string) string {
	return textColor(textYellow, str)
}
func Green(str string) string {
	return textColor(textGreen, str)
}
func Cyan(str string) string {
	return textColor(textCyan, str)
}
func Blue(str string) string {
	return textColor(textBlue, str)
}
func Purple(str string) string {
	return textColor(textPurple, str)
}
func White(str string) string {
	return textColor(textWhite, str)
}

func textColor(color int, str string) string {
	return fmt.Sprintf("\x1b[0;%dm%s\x1b[0m", color, str)
}

Call output:

 fmt.Println(White("test"))
Published 6 original articles · praised 0 · visits 273

Guess you like

Origin blog.csdn.net/heartsk/article/details/105453015