From e71d4f10cad08756504fe07393979b0e06d2f894 Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Mon, 24 Apr 2023 08:30:40 -0500 Subject: [PATCH] hack some output. grab STDOUT damnit Signed-off-by: Jeff Carr --- log/log.go | 12 ++++++++++++ toolkit/gocui/log.go | 20 ++++++++++++-------- 2 files changed, 24 insertions(+), 8 deletions(-) diff --git a/log/log.go b/log/log.go index 9862291..d460539 100644 --- a/log/log.go +++ b/log/log.go @@ -23,6 +23,7 @@ import ( "runtime" "runtime/pprof" golog "log" + "fmt" "time" "reflect" "github.com/davecgh/go-spew/spew" @@ -42,6 +43,8 @@ var debugToolkit bool = false // does spew stuff? var Where string = "gui/log" +var externalLog func(...any) + type Spewt struct { a bool } @@ -126,6 +129,11 @@ func Log(a ...any) { } golog.Println(a...) + if (externalLog == nil) { + // golog.Println(a...) + } else { + externalLog(fmt.Sprint(a...)) + } } func loggo() { @@ -147,3 +155,7 @@ func logindent(depth int, format string, a ...interface{}) { func SetOutput(f *os.File) { golog.SetOutput(f) } + +func SetToolkitOutput(newLog func(...any)) { + externalLog = newLog +} diff --git a/toolkit/gocui/log.go b/toolkit/gocui/log.go index b649eb9..e818814 100644 --- a/toolkit/gocui/log.go +++ b/toolkit/gocui/log.go @@ -19,6 +19,17 @@ var outputS []string func log(a ...any) { witlog.Where = "wit/gocui" witlog.Log(a...) +} + +func sleep(a ...any) { + witlog.Sleep(a...) +} + +func exit(a ...any) { + witlog.Exit(a...) +} + +func newLog(a ...any) { s := fmt.Sprint(a...) tmp := strings.Split(s, "\n") outputS = append(outputS, tmp...) @@ -34,14 +45,7 @@ func log(a ...any) { } } -func sleep(a ...any) { - witlog.Sleep(a...) -} - -func exit(a ...any) { - witlog.Exit(a...) -} - func setOutput(f *os.File) { witlog.SetOutput(f) + witlog.SetToolkitOutput(newLog) }