diff options
| author | Grail Finder <wohilas@gmail.com> | 2026-02-21 10:15:36 +0300 |
|---|---|---|
| committer | Grail Finder <wohilas@gmail.com> | 2026-02-21 10:15:36 +0300 |
| commit | 85b11fa9ffd5f72b0b76200d2fa590960273410b (patch) | |
| tree | f2e46eaea08ab673d75d4a196e4093948e96ee63 | |
| parent | 1675af98d40a3f1a1d2dd57caaa7a51896fd0b01 (diff) | |
Chore: status line, linter complaints
| -rw-r--r-- | helpfuncs.go | 26 | ||||
| -rw-r--r-- | main.go | 20 | ||||
| -rw-r--r-- | popups.go | 4 | ||||
| -rw-r--r-- | tables.go | 1 | ||||
| -rw-r--r-- | tui.go | 1 |
5 files changed, 26 insertions, 26 deletions
diff --git a/helpfuncs.go b/helpfuncs.go index 09751e3..d407d1e 100644 --- a/helpfuncs.go +++ b/helpfuncs.go @@ -354,10 +354,15 @@ func makeStatusLine() string { } // Get model color based on load status for local llama.cpp models modelColor := getModelColor() - statusLine := fmt.Sprintf(indexLineCompletion, boolColors[botRespMode], botRespMode, activeChatName, + statusLine := fmt.Sprintf(statusLineTempl, boolColors[botRespMode], botRespMode, activeChatName, boolColors[cfg.ToolUse], cfg.ToolUse, modelColor, chatBody.Model, boolColors[cfg.SkipLLMResp], cfg.SkipLLMResp, cfg.CurrentAPI, boolColors[isRecording], isRecording, persona, - botPersona, boolColors[injectRole], injectRole) + botPersona) + // completion endpoint + if !strings.Contains(cfg.CurrentAPI, "chat") { + roleInject := fmt.Sprintf(" | role injection [%s:-:b]%v[-:-:-] (alt+7)", boolColors[injectRole], injectRole) + statusLine += roleInject + } return statusLine + imageInfo + shellModeInfo } @@ -741,7 +746,6 @@ func scanFiles(dir, filter string) []string { const maxDepth = 3 const maxFiles = 50 var files []string - var scanRecursive func(currentDir string, currentDepth int, relPath string) scanRecursive = func(currentDir string, currentDepth int, relPath string) { if len(files) >= maxFiles { @@ -750,39 +754,33 @@ func scanFiles(dir, filter string) []string { if currentDepth > maxDepth { return } - entries, err := os.ReadDir(currentDir) if err != nil { return } - for _, entry := range entries { if len(files) >= maxFiles { return } - name := entry.Name() if strings.HasPrefix(name, ".") { continue } - fullPath := name if relPath != "" { fullPath = relPath + "/" + name } - if entry.IsDir() { // Recursively scan subdirectories scanRecursive(filepath.Join(currentDir, name), currentDepth+1, fullPath) - } else { - // Check if file matches filter - if filter == "" || strings.HasPrefix(strings.ToLower(fullPath), strings.ToLower(filter)) { - files = append(files, fullPath) - } + continue + } + // Check if file matches filter + if filter == "" || strings.HasPrefix(strings.ToLower(fullPath), strings.ToLower(filter)) { + files = append(files, fullPath) } } } - scanRecursive(dir, 0, "") return files } @@ -5,16 +5,16 @@ import ( ) var ( - boolColors = map[bool]string{true: "green", false: "red"} - botRespMode = false - editMode = false - roleEditMode = false - injectRole = true - selectedIndex = int(-1) - shellMode = false - thinkingCollapsed = false - indexLineCompletion = "F12 to show keys help | llm turn: [%s:-:b]%v[-:-:-] (F6) | chat: [orange:-:b]%s[-:-:-] (F1) | toolUseAdviced: [%s:-:b]%v[-:-:-] (ctrl+k) | model: [%s:-:b]%s[-:-:-] (ctrl+l) | skip LLM resp: [%s:-:b]%v[-:-:-] (F10)\nAPI: [orange:-:b]%s[-:-:-] (ctrl+v) | recording: [%s:-:b]%v[-:-:-] (ctrl+r) | writing as: [orange:-:b]%s[-:-:-] (ctrl+q) | bot will write as [orange:-:b]%s[-:-:-] (ctrl+x) | role injection (alt+7) [%s:-:b]%v[-:-:-]" - focusSwitcher = map[tview.Primitive]tview.Primitive{} + boolColors = map[bool]string{true: "green", false: "red"} + botRespMode = false + editMode = false + roleEditMode = false + injectRole = true + selectedIndex = int(-1) + shellMode = false + thinkingCollapsed = false + statusLineTempl = "help (F12) | llm turn: [%s:-:b]%v[-:-:-] (F6) | chat: [orange:-:b]%s[-:-:-] (F1) |tool-use: [%s:-:b]%v[-:-:-] (ctrl+k) | model: [%s:-:b]%s[-:-:-] (ctrl+l) | skip LLM resp: [%s:-:b]%v[-:-:-] (F10)\nAPI: [orange:-:b]%s[-:-:-] (ctrl+v) | voice recording: [%s:-:b]%v[-:-:-] (ctrl+r) | writing as: [orange:-:b]%s[-:-:-] (ctrl+q) | bot will write as [orange:-:b]%s[-:-:-] (ctrl+x)" + focusSwitcher = map[tview.Primitive]tview.Primitive{} ) func main() { @@ -388,7 +388,7 @@ func showFileCompletionPopup(filter string) { app.SetFocus(widget) } -func updateWidgetColors(theme tview.Theme) { +func updateWidgetColors(theme *tview.Theme) { bgColor := theme.PrimitiveBackgroundColor fgColor := theme.PrimaryTextColor borderColor := theme.BorderColor @@ -476,7 +476,7 @@ func showColorschemeSelectionPopup() { tview.Styles = theme go func() { app.QueueUpdateDraw(func() { - updateWidgetColors(theme) + updateWidgetColors(&theme) }) }() } @@ -1046,6 +1046,7 @@ func makeFilePicker() *tview.Flex { if bracketPos := strings.Index(itemText, " ["); bracketPos != -1 { actualItemName = itemText[:bracketPos] } + // nolint: gocritic if strings.HasPrefix(actualItemName, "../") { targetDir = path.Dir(currentDisplayDir) } else if strings.HasSuffix(actualItemName, "/") { @@ -835,6 +835,7 @@ func init() { lastMsg := chatBody.Messages[len(chatBody.Messages)-1] cleanedText := models.CleanText(lastMsg.Content) if cleanedText != "" { + // nolint: errcheck go orator.Speak(cleanedText) } } |
