From 024449375f679962c83083e8506aae4d67823f6f Mon Sep 17 00:00:00 2001 From: six-ddc Date: Tue, 23 Nov 2021 10:13:07 +0800 Subject: [PATCH] Update flag name to avoid kingpin bugs --- README.md | 2 +- main.go | 4 ++-- print.go | 8 ++++---- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index a49957b..ab5d605 100644 --- a/README.md +++ b/README.md @@ -124,7 +124,7 @@ Flags: --resp-timeout=DURATION Timeout for full response reading --socks5=ip:port Socks5 proxy --auto-open-browser Specify whether auto open browser to show Web charts - --not-clear Don't clear the histogram bar once its finished + --[no-]clean Clean the histogram bar once its finished. Default is true --version Show application version. Flags default values also read from env PLOW_SOME_FLAG, such as PLOW_TIMEOUT=5s equals to --timeout=5s diff --git a/main.go b/main.go index f8cb8d9..3c1ef3c 100644 --- a/main.go +++ b/main.go @@ -35,7 +35,7 @@ var ( socks5 = kingpin.Flag("socks5", "Socks5 proxy").PlaceHolder("ip:port").String() autoOpenBrowser = kingpin.Flag("auto-open-browser", "Specify whether auto open browser to show Web charts").Bool() - notClearBar = kingpin.Flag("not-clear", "Don't clear the histogram bar once its finished").Bool() + clean = kingpin.Flag("clean", "Clean the histogram bar once its finished. Default is true").Default("true").NegatableBool() url = kingpin.Arg("url", "request url").Required().String() ) @@ -208,6 +208,6 @@ func main() { } // terminal printer - printer := NewPrinter(*requests, *duration, *notClearBar) + printer := NewPrinter(*requests, *duration, !*clean) printer.PrintLoop(report.Snapshot, *interval, *seconds, report.Done()) } diff --git a/print.go b/print.go index 47f72e5..705e407 100644 --- a/print.go +++ b/print.go @@ -32,11 +32,11 @@ type Printer struct { pbInc int64 pbNumStr string pbDurStr string - notClearBar bool + noClean bool } -func NewPrinter(maxNum int64, maxDuration time.Duration, notClearBar bool) *Printer { - return &Printer{maxNum: maxNum, maxDuration: maxDuration, notClearBar: notClearBar} +func NewPrinter(maxNum int64, maxDuration time.Duration, noCleanBar bool) *Printer { + return &Printer{maxNum: maxNum, maxDuration: maxDuration, noClean: noCleanBar} } func (p *Printer) updateProgressValue(rs *SnapshotReport) { @@ -221,7 +221,7 @@ func (p *Printer) buildHistogram(snapshot *SnapshotReport, useSeconds bool, isFi if isFinal { row = append(row, fmt.Sprintf("%.2f%%", math.Floor(float64(bin.Count)*1e4/float64(hisSum)+0.5)/100.0)) } - if !isFinal || p.notClearBar { + if !isFinal || p.noClean { barLen := 0 if maxCount > 0 { barLen = (bin.Count*maxBarLen + maxCount/2) / maxCount