package Color import ( "fmt" "regexp" "runtime" ) var ( Success = Green Info = Teal Warning = Yellow Fatal = Red ) var ( Black = Color("\033[1;30m%s\033[0m") Red = Color("\033[1;31m%s\033[0m") Green = Color("\033[1;32m%s\033[0m") Yellow = Color("\033[1;33m%s\033[0m") Purple = Color("\033[1;34m%s\033[0m") Magenta = Color("\033[1;35m%s\033[0m") Teal = Color("\033[1;36m%s\033[0m") White = Color("\033[1;37m%s\033[0m") ) func init() { if runtime.GOOS != "windows" { return } Black = Color("%s") Red = Color("%s") Green = Color("%s") Yellow = Color("%s") Purple = Color("%s") Magenta = Color("%s") Teal = Color("%s") White = Color("%s") } func Color(colorString string) func(...interface{}) string { var sprint func(args ...interface{}) string = func(args ...interface{}) string { return fmt.Sprintf(colorString, fmt.Sprint(args...)) } return sprint } func Strip(s string) string { var ( reg *regexp.Regexp res string ) reg = regexp.MustCompile(`\033\[.{1,4}m`) res = reg.ReplaceAllString(s, "${1}") return res }