github.com/safing/portbase@v0.19.5/log/formatting_windows.go (about) 1 package log 2 3 import ( 4 "github.com/safing/portbase/utils/osdetail" 5 ) 6 7 const ( 8 rightArrow = ">" 9 leftArrow = "<" 10 ) 11 12 const ( 13 // colorBlack = "\033[30m" 14 colorRed = "\033[31m" 15 // colorGreen = "\033[32m" 16 colorYellow = "\033[33m" 17 colorBlue = "\033[34m" 18 colorMagenta = "\033[35m" 19 colorCyan = "\033[36m" 20 // colorWhite = "\033[37m" 21 ) 22 23 var ( 24 colorsSupported bool 25 ) 26 27 func init() { 28 colorsSupported = osdetail.EnableColorSupport() 29 } 30 31 func (s Severity) color() string { 32 if colorsSupported { 33 switch s { 34 case DebugLevel: 35 return colorCyan 36 case InfoLevel: 37 return colorBlue 38 case WarningLevel: 39 return colorYellow 40 case ErrorLevel: 41 return colorRed 42 case CriticalLevel: 43 return colorMagenta 44 default: 45 return "" 46 } 47 } 48 return "" 49 } 50 51 func endColor() string { 52 if colorsSupported { 53 return "\033[0m" 54 } 55 return "" 56 }