From f09d2907bd0baf2849af2abfb6a969ad2a919d59 Mon Sep 17 00:00:00 2001 From: Christian Muehlhaeuser Date: Mon, 25 Nov 2019 04:25:58 +0100 Subject: [PATCH] Use a plain-text renderer when not printing to Terminal --- main.go | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/main.go b/main.go index 1837a82..2ab8192 100644 --- a/main.go +++ b/main.go @@ -10,6 +10,7 @@ import ( "os" "strings" + "github.com/mattn/go-isatty" "github.com/spf13/cobra" "github.com/charmbracelet/gold" @@ -80,12 +81,16 @@ func execute(cmd *cobra.Command, args []string) error { return err } defer in.Close() - b, _ := ioutil.ReadAll(in) - r, err := gold.NewTermRenderer(style) - if err != nil { - return err + + r := gold.NewPlainTermRenderer() + if isatty.IsTerminal(os.Stdout.Fd()) { + r, err = gold.NewTermRenderer(style) + if err != nil { + return err + } } + out := r.RenderBytes(b) fmt.Printf("%s", string(out)) return nil