move colors into constants
This commit is contained in:
@@ -20,6 +20,13 @@ var (
|
||||
Host = flag.String("host", "google.com", "host to ping")
|
||||
)
|
||||
|
||||
//goland:noinspection ALL
|
||||
const (
|
||||
CritColor = "ff5050"
|
||||
WarnColor = "ffbf00"
|
||||
ResetColor = "{F-}"
|
||||
)
|
||||
|
||||
type WaybarOut struct {
|
||||
Class string `json:"class"`
|
||||
Text string `json:"text"`
|
||||
@@ -29,31 +36,25 @@ func formatLine(stats *probing.Statistics) {
|
||||
if stats.PacketLoss >= 100.0 {
|
||||
// fontawesome/forkawesome doesn't have the fitting icon...
|
||||
// so this is the utf-8 icon/emoji
|
||||
fmt.Println("%{F#ff7070}🚫")
|
||||
fmt.Printf("%%{F#%s}🚫\n", CritColor)
|
||||
return
|
||||
}
|
||||
|
||||
var rttColor string
|
||||
var packetColor string
|
||||
rttColor := ResetColor
|
||||
packetColor := ResetColor
|
||||
|
||||
switch {
|
||||
case stats.AvgRtt.Milliseconds() < 50:
|
||||
rttColor = "%{F-}"
|
||||
case stats.AvgRtt.Milliseconds() < 100:
|
||||
rttColor = "%{F#e87205}"
|
||||
default:
|
||||
rttColor = "%{F#d60606}"
|
||||
case int(stats.AvgRtt.Milliseconds()) >= *PingWarningLimit:
|
||||
rttColor = fmt.Sprintf("%%{F#%s}", WarnColor)
|
||||
case int(stats.AvgRtt.Milliseconds()) >= *PingCritLimit:
|
||||
rttColor = fmt.Sprintf("%%{F#%s}", CritColor)
|
||||
}
|
||||
|
||||
switch {
|
||||
case stats.PacketLoss == 0:
|
||||
packetColor = "%{F-}"
|
||||
case stats.PacketLoss < 10:
|
||||
packetColor = "%{F#f9dd04}"
|
||||
case stats.PacketLoss < 25:
|
||||
packetColor = "%{F#e87205}"
|
||||
default:
|
||||
packetColor = "%{F#d60606}"
|
||||
case int(math.Round(stats.PacketLoss)) >= *PacketLossWarnLimit:
|
||||
packetColor = fmt.Sprintf("%%{F#%s}", WarnColor)
|
||||
case int(math.Round(stats.PacketLoss)) >= *PacketLossCritLimit:
|
||||
packetColor = fmt.Sprintf("%%{F#%s}", CritColor)
|
||||
}
|
||||
|
||||
fmt.Printf("%s\uE4E2 %dms %s\uF1B2 %d%%\n", rttColor, stats.AvgRtt.Milliseconds(), packetColor, int(math.Round(stats.PacketLoss)))
|
||||
|
Reference in New Issue
Block a user