diff options
| author | Kyren223 <Kyren223@proton.me> | 2025-01-14 19:14:18 +0200 |
|---|---|---|
| committer | Kyren223 <Kyren223@proton.me> | 2025-01-14 19:14:18 +0200 |
| commit | 2f1ee548be16a2007cc64a174c7c716fc0d8f9d2 (patch) | |
| tree | 157b497a73eeb2f2bae7d6110712c260bdb20ef5 | |
| parent | 58c6a6d38a5ebbd7bfc9c698227b931a2252e140 (diff) | |
viminput can now be exited with ctrl+q in insert mode
| -rw-r--r-- | internal/client/ui/core/chat/chat.go | 5 | ||||
| -rw-r--r-- | internal/client/ui/viminput/viminput.go | 1 |
2 files changed, 4 insertions, 2 deletions
diff --git a/internal/client/ui/core/chat/chat.go b/internal/client/ui/core/chat/chat.go index bebb72f..4aa4612 100644 --- a/internal/client/ui/core/chat/chat.go +++ b/internal/client/ui/core/chat/chat.go @@ -136,8 +136,9 @@ func (m Model) Update(msg tea.Msg) (Model, tea.Cmd) { if m.locked { if key, ok := msg.(tea.KeyMsg); ok { - InNormal := m.vi.Mode() == viminput.NormalMode - if key.String() == "q" && InNormal { + inNormalQ := key.String() == "q" && m.vi.Mode() == viminput.NormalMode + inInsertCtrlQ := key.String() == "ctrl+q" && m.vi.Mode() == viminput.InsertMode + if inNormalQ || inInsertCtrlQ { m.locked = false m.Prerender() return m, nil diff --git a/internal/client/ui/viminput/viminput.go b/internal/client/ui/viminput/viminput.go index 7f1a248..af21915 100644 --- a/internal/client/ui/viminput/viminput.go +++ b/internal/client/ui/viminput/viminput.go @@ -631,6 +631,7 @@ func (m *Model) handleInsertModeKeys(key tea.KeyMsg) { Paste: false, }) m.Yank(paste) + return } if key.Type == tea.KeyTab || key.Type == tea.KeyShiftTab { |
