gookit/color - Go语言命令行色彩使用库教程
1.安装
go
go get github.com/gookit/color
2.基础颜色(16-color)
提供通用的API方法:Print Printf Println Sprint Sprintf
1、例如:
go
color.Yellow.Println("bold message")
color.Blue.Println("bold message")
color.White.Println("bold message")
2、特例,仅仅设置前景和背景颜色:
go
// 仅使用前景色
color.FgCyan.Printf("Simple to use %s\n", "color")
// 仅使用背景色
color.BgRed.Printf("Simple to use %s\n", "color")
3、构建风格
go
// 完全自定义: 前景色 背景色 选项(字体)
style := color.New(color.FgRed, color.BgBlack, color.OpBold)
style.Println("custom color style")
4、直接设置控制台属性
go
// 设置console颜色
_, err := color.Set(color.FgCyan)
if err != nil {
return
}
// 输出信息
fmt.Print("message")
5、扩展风格方法
go
color.Info.Println("Info message")
color.Note.Println("Note message")
color.Notice.Println("Notice message")
全部扩展风格:
go
// Info color style
Info = &Theme{"info", Style{OpReset, FgGreen}}
// Note color style
Note = &Theme{"note", Style{OpBold, FgLightCyan}}
// Warn color style
Warn = &Theme{"warning", Style{OpBold, FgYellow}}
// Light color style
Light = &Theme{"light", Style{FgLightWhite, BgBlack}}
// Error color style
Error = &Theme{"error", Style{FgLightWhite, BgRed}}
// Danger color style
Danger = &Theme{"danger", Style{OpBold, FgRed}}
// Debug color style
Debug = &Theme{"debug", Style{OpReset, FgCyan}}
// Notice color style
Notice = &Theme{"notice", Style{OpBold, FgCyan}}
// Comment color style
Comment = &Theme{"comment", Style{OpReset, FgYellow}}
// Success color style
Success = &Theme{"success", Style{OpBold, FgGreen}}
// Primary color style
Primary = &Theme{"primary", Style{OpReset, FgBlue}}
// Question color style
Question = &Theme{"question", Style{OpReset, FgMagenta}}
// Secondary color style
Secondary = &Theme{"secondary", Style{FgDarkGray}}
6、简约提示风格
go
color.Info.Tips("Info tips message")
color.Notice.Tips("Notice tips message")
color.Error.Tips("Error tips message")
7、着重提示风格
go
color.Info.Prompt("Info prompt message")
color.Error.Prompt("Error prompt message")
color.Danger.Prompt("Danger prompt message")
8、强调提示风格
go
color.Warn.Block("Warn block message")
color.Debug.Block("Debug block message")
color.Question.Block("Question block message")
3.256色彩/RGB风格
参考官方文档: