From 1dcbe4468df08695e9eb530ca1fb31c0e541a6ec Mon Sep 17 00:00:00 2001 From: celogeek <65178+celogeek@users.noreply.github.com> Date: Sun, 2 Apr 2023 23:40:37 +0200 Subject: [PATCH] add reset option --- internal/converter/core.go | 1 + internal/converter/options/core.go | 10 ++++++++-- main.go | 12 ++++++++++++ 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/internal/converter/core.go b/internal/converter/core.go index 71d047b..ea47ec4 100644 --- a/internal/converter/core.go +++ b/internal/converter/core.go @@ -100,6 +100,7 @@ func (c *Converter) InitParse() { c.AddSection("Default config") c.AddBoolParam(&c.Options.Show, "show", false, "Show your default parameters") c.AddBoolParam(&c.Options.Save, "save", false, "Save your parameters as default") + c.AddBoolParam(&c.Options.Reset, "reset", false, "Reset your parameters to default") c.AddSection("Other") c.AddBoolParam(&c.Options.Help, "help", false, "Show this help message") diff --git a/internal/converter/options/core.go b/internal/converter/options/core.go index 858d0b4..28c32c1 100644 --- a/internal/converter/options/core.go +++ b/internal/converter/options/core.go @@ -34,8 +34,9 @@ type Options struct { LimitMb int `yaml:"limit_mb"` // Default Config - Show bool `yaml:"-"` - Save bool `yaml:"-"` + Show bool `yaml:"-"` + Save bool `yaml:"-"` + Reset bool `yaml:"-"` // Other Help bool `yaml:"-"` @@ -151,6 +152,11 @@ func (o *Options) ShowDefault() string { ) } +func (o *Options) ResetDefault() error { + New().SaveDefault() + return o.LoadDefault() +} + func (o *Options) SaveDefault() error { f, err := os.Create(o.FileName()) if err != nil { diff --git a/main.go b/main.go index 300c41f..64d64a8 100644 --- a/main.go +++ b/main.go @@ -33,6 +33,18 @@ func main() { return } + if cmd.Options.Reset { + cmd.Options.ResetDefault() + fmt.Fprintf( + os.Stderr, + "%s%s\n\nReset default to %s\n", + cmd.Options.Header(), + cmd.Options.ShowDefault(), + cmd.Options.FileName(), + ) + return + } + if err := cmd.Validate(); err != nil { cmd.Fatal(err) }