diff options
| -rw-r--r-- | bot.go | 28 | ||||
| -rw-r--r-- | tui.go | 2 |
2 files changed, 7 insertions, 23 deletions
@@ -48,10 +48,9 @@ var ( chunkParser ChunkParser lastToolCall *models.FuncCall lastRespStats *models.ResponseStats - - outputHandler OutputHandler - cliPrevOutput string - cliRespDone chan bool + outputHandler OutputHandler + cliPrevOutput string + cliRespDone chan bool ) type OutputHandler interface { @@ -65,30 +64,15 @@ type TUIOutputHandler struct { } func (h *TUIOutputHandler) Write(p string) { - if h.tv != nil { - fmt.Fprint(h.tv, p) - } - if cfg != nil && cfg.CLIMode { - fmt.Print(p) - cliPrevOutput = p - } + fmt.Fprint(h.tv, p) } func (h *TUIOutputHandler) Writef(format string, args ...interface{}) { - s := fmt.Sprintf(format, args...) - if h.tv != nil { - fmt.Fprint(h.tv, s) - } - if cfg != nil && cfg.CLIMode { - fmt.Print(s) - cliPrevOutput = s - } + fmt.Fprintf(h.tv, format, args...) } func (h *TUIOutputHandler) ScrollToEnd() { - if h.tv != nil { - h.tv.ScrollToEnd() - } + h.tv.ScrollToEnd() } type CLIOutputHandler struct{} @@ -230,7 +230,6 @@ func initTUI() { tview.Styles = colorschemes["default"] app = tview.NewApplication() pages = tview.NewPages() - outputHandler = &TUIOutputHandler{tv: textView} shellInput = tview.NewInputField(). SetLabel(fmt.Sprintf("[%s]$ ", cfg.FilePickerDir)). // dynamic prompt SetFieldWidth(0). @@ -349,6 +348,7 @@ func initTUI() { // calling it explicitly makes text streaming to look more smooth app.Draw() }) + outputHandler = &TUIOutputHandler{tv: textView} notificationWidget = tview.NewTextView(). SetTextAlign(tview.AlignCenter). SetDynamicColors(true). |
