mirror of
https://gitee.com/lauix/HFish
synced 2025-05-12 04:48:01 +08:00
85 lines
1.5 KiB
Go
85 lines
1.5 KiB
Go
|
package color
|
||
|
|
||
|
import (
|
||
|
"fmt"
|
||
|
"runtime"
|
||
|
)
|
||
|
|
||
|
const (
|
||
|
TextBlack = iota + 30
|
||
|
TextRed
|
||
|
TextGreen
|
||
|
TextYellow
|
||
|
TextBlue
|
||
|
TextMagenta
|
||
|
TextCyan
|
||
|
TextWhite
|
||
|
)
|
||
|
|
||
|
func Black(str string) string {
|
||
|
return textColor(TextBlack, str)
|
||
|
}
|
||
|
|
||
|
func Red(str string) string {
|
||
|
return textColor(TextRed, str)
|
||
|
}
|
||
|
|
||
|
func Green(str string) string {
|
||
|
return textColor(TextGreen, str)
|
||
|
}
|
||
|
|
||
|
func Yellow(str string) string {
|
||
|
return textColor(TextYellow, str)
|
||
|
}
|
||
|
|
||
|
func Blue(str string) string {
|
||
|
return textColor(TextBlue, str)
|
||
|
}
|
||
|
|
||
|
func Magenta(str string) string {
|
||
|
return textColor(TextMagenta, str)
|
||
|
}
|
||
|
|
||
|
func Cyan(str string) string {
|
||
|
return textColor(TextCyan, str)
|
||
|
}
|
||
|
|
||
|
func White(str string) string {
|
||
|
return textColor(TextWhite, str)
|
||
|
}
|
||
|
|
||
|
func textColor(color int, str string) string {
|
||
|
if IsWindows() {
|
||
|
return str
|
||
|
}
|
||
|
|
||
|
switch color {
|
||
|
case TextBlack:
|
||
|
return fmt.Sprintf("\x1b[0;%dm%s\x1b[0m", TextBlack, str)
|
||
|
case TextRed:
|
||
|
return fmt.Sprintf("\x1b[0;%dm%s\x1b[0m", TextRed, str)
|
||
|
case TextGreen:
|
||
|
return fmt.Sprintf("\x1b[0;%dm%s\x1b[0m", TextGreen, str)
|
||
|
case TextYellow:
|
||
|
return fmt.Sprintf("\x1b[0;%dm%s\x1b[0m", TextYellow, str)
|
||
|
case TextBlue:
|
||
|
return fmt.Sprintf("\x1b[0;%dm%s\x1b[0m", TextBlue, str)
|
||
|
case TextMagenta:
|
||
|
return fmt.Sprintf("\x1b[0;%dm%s\x1b[0m", TextMagenta, str)
|
||
|
case TextCyan:
|
||
|
return fmt.Sprintf("\x1b[0;%dm%s\x1b[0m", TextCyan, str)
|
||
|
case TextWhite:
|
||
|
return fmt.Sprintf("\x1b[0;%dm%s\x1b[0m", TextWhite, str)
|
||
|
default:
|
||
|
return str
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func IsWindows() bool {
|
||
|
if runtime.GOOS == "windows" {
|
||
|
return true
|
||
|
} else {
|
||
|
return false
|
||
|
}
|
||
|
}
|