From b7eaf941fb68aed3b9ff0b10a407231fa84f6dff Mon Sep 17 00:00:00 2001 From: Dan Jones Date: Mon, 9 Mar 2026 16:45:18 -0500 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20Add=20option=20to=20print=20config?= =?UTF-8?q?=20from=20config=20command?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cli/config.go | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/cli/config.go b/cli/config.go index 0512bb4..99d4414 100644 --- a/cli/config.go +++ b/cli/config.go @@ -22,12 +22,13 @@ import ( fp "path/filepath" "codeberg.org/danjones000/my-log/config" + "github.com/pelletier/go-toml/v2" "github.com/spf13/cobra" ) var ConfigCmd = &cobra.Command{ Use: "config", - Short: "Save default config to file", + Short: "Save default config to file, or print the current config value", SilenceUsage: true, RunE: func(cmd *cobra.Command, args []string) (err error) { print, _ := cmd.Flags().GetBool("print") @@ -35,6 +36,24 @@ var ConfigCmd = &cobra.Command{ fmt.Fprintln(cmd.OutOrStdout(), config.DefaultPath()) return nil } + + if len(args) > 0 { + v, _ := config.RetrieveFromContext(cmd.Context()) + val := v.Get(args[0]) + var out []byte + if val == nil { + out = []byte("") + } else { + var err error + out, err = toml.Marshal(val) + if err != nil { + return err + } + } + fmt.Fprintln(cmd.OutOrStdout(), string(out)) + return nil + } + force, _ := cmd.Flags().GetBool("force") configPath := config.DefaultPath() if !force {