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)
%d
Output standard decimal format, here corresponds to the color table sequence. %s
String 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"))