diff --git a/VERSION b/VERSION index 0e24a92f..7ac4e5e3 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.1.12 +0.1.13 diff --git a/packages/tui/internal/tui/app.go b/packages/tui/internal/tui/app.go index e913f1ce..4975c0fd 100644 --- a/packages/tui/internal/tui/app.go +++ b/packages/tui/internal/tui/app.go @@ -964,6 +964,32 @@ func (m Model) Update(msg tea.Msg) (tea.Model, tea.Cmd) { return m, nil case "/": + // Check if we're editing text fields that might need "/" character + // Don't intercept "/" if we're editing text in NewEvaluationScreen + if m.currentScreen == NewEvaluationScreen && m.evalState != nil && m.evalState.currentField <= 1 { + // Handle "/" character directly in text fields + s := "/" + switch m.evalState.currentField { + case 0: // AgentURL + runes := []rune(m.evalState.AgentURL) + m.evalState.AgentURL = string(runes[:m.evalState.cursorPos]) + s + string(runes[m.evalState.cursorPos:]) + m.evalState.cursorPos++ + case 1: // JudgeModel + runes := []rune(m.evalState.JudgeModel) + m.evalState.JudgeModel = string(runes[:m.evalState.cursorPos]) + s + string(runes[m.evalState.cursorPos:]) + m.evalState.cursorPos++ + } + return m, nil + } + // Don't intercept "/" if we're editing text in ConfigurationScreen + if m.currentScreen == ConfigurationScreen && m.configState != nil && + m.configState.IsEditing && m.configState.ActiveField == ConfigFieldServerURL { + // Handle "/" character directly in server URL field + m.configState.ServerURL = m.configState.ServerURL[:m.configState.CursorPos] + + "/" + m.configState.ServerURL[m.configState.CursorPos:] + m.configState.CursorPos++ + return m, nil + } // If on scenarios screen, forward to editor for search if m.currentScreen == ScenariosScreen { m.scenarioEditor, cmd = m.scenarioEditor.Update(msg)