From 57773b6c2d1fcf78e94820ea47916ebecc4ce5a4 Mon Sep 17 00:00:00 2001 From: Sean Liao Date: Tue, 20 Feb 2018 22:24:48 +0800 Subject: [PATCH] add config.String() to pretty print default config in valid json --- cmd.go | 5 ++--- config.go | 11 +++++++++++ 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/cmd.go b/cmd.go index 7642a772..23f1e9d8 100644 --- a/cmd.go +++ b/cmd.go @@ -273,12 +273,11 @@ func sudoLoopBackground() { func sudoLoop() { for { - updateSudo() + updateSudo() time.Sleep(298 * time.Second) } } - func updateSudo() { for { cmd := exec.Command("sudo", "-v") @@ -398,7 +397,7 @@ func handleVersion() { func handlePrint() (err error) { switch { case cmdArgs.existsArg("d", "defaultconfig"): - fmt.Printf("%#v", config) + fmt.Printf("%v", config) case cmdArgs.existsArg("n", "numberupgrades"): err = printNumberOfUpdates() case cmdArgs.existsArg("u", "upgrades"): diff --git a/config.go b/config.go index 409c51bb..65eb221e 100644 --- a/config.go +++ b/config.go @@ -1,6 +1,7 @@ package main import ( + "bytes" "encoding/json" "fmt" "os" @@ -194,3 +195,13 @@ func continueTask(s string, def string) (cont bool) { return true } + +func (config Configuration) String() string { + var buf bytes.Buffer + enc := json.NewEncoder(&buf) + enc.SetIndent("", "\t") + if err := enc.Encode(config); err != nil { + fmt.Println(err) + } + return buf.String() +}