improve version display start message

This commit is contained in:
Kevin Pham
2023-11-30 22:14:50 -06:00
parent ac00c7f172
commit ef50c81aa6
3 changed files with 20 additions and 8 deletions

View File

@@ -21,7 +21,7 @@ tmp_dir = "tmp"
poll = false
poll_interval = 0
post_cmd = []
pre_cmd = ["echo 'dev' > handlers/VERSION echo 'dev' > cmd/VERSION"]
pre_cmd = ["git rev-parse --short HEAD > handlers/VERSION; git rev-parse --short HEAD > cmd/VERSION"]
rerun = false
rerun_delay = 500
send_interrupt = false

View File

@@ -189,6 +189,6 @@ func main() {
app.All("/*", handlers.NewProxySiteHandler(proxyOpts))
fmt.Println(cli.StartupMessage("1.0.0", *port, *ruleset))
fmt.Println(cli.StartupMessage(version, *port, *ruleset))
log.Fatal(app.Listen(":" + *port))
}

View File

@@ -1,6 +1,9 @@
package cli
import "fmt"
import (
"fmt"
"strings"
)
var art string = `
_____╬═╬____________________________________________
@@ -10,21 +13,30 @@ var art string = `
|___|╬═╬|___██▪ ▄█▀▀█ ▐█· ▐█▌▐█· ▐█▌▐▀▀▪▄▐▀▀▄ __|_|
|_|__╬═╬___|▐█▌▐▌▐█ ▪▐▌██. ██ ██. ██ ▐█▄▄▌▐█•█▌|___|
|___|╬═╬|___.▀▀▀ ▀ ▀ ▀▀▀▀▀• ▀▀▀▀▀• ▀▀▀ .▀ ▀__|_|
|_|__╬═╬___|___|___|__ VERSION %s __|___|___|___|
|_|__╬═╬___|___|___|_ VERSION %-7s__|___|___|___|
|___|╬═╬|____|___|___|___|___|___|___|___|___|___|_|
╬═╬
╬═╬ %s
`
func StartupMessage(version string, port string, ruleset string) string {
buf := fmt.Sprintf(art, version)
buf += fmt.Sprintf("\n > listening on http://localhost:%s\n", port)
version = strings.Trim(version, " ")
version = strings.Trim(version, "\n")
link := createHyperlink("http://localhost:" + port)
buf := fmt.Sprintf(art, version, link)
if ruleset == "" {
buf += " ! no ruleset specified.\n > for better performance, use a ruleset using --ruleset\n"
buf += "\n ! no ruleset specified.\n > for better performance, use a ruleset using --ruleset\n"
} else {
buf += fmt.Sprintf(" > using ruleset: %s\n", ruleset)
buf += fmt.Sprintf("\n > using ruleset: %s\n", ruleset)
}
return colorizeNonASCII(buf)
}
func createHyperlink(url string) string {
//return fmt.Sprintf("\033]8;;%s\a%s\033]8;;\a", url, url)
return fmt.Sprintf("\033[4m%s\033[0m", url)
}
func colorizeNonASCII(input string) string {
result := ""
for _, r := range input {