diff options
author | delthas <delthas@dille.cc> | 2022-02-13 14:21:59 +0100 |
---|---|---|
committer | delthas <delthas@dille.cc> | 2022-02-13 14:21:59 +0100 |
commit | 31f90336bed276b0ff9e71647a030c11fa838294 (patch) | |
tree | 0495b6d6698131a078fb0aaa703e5606aae03318 /ui | |
parent | /query: only send MONITOR, ... if the buffer is new (diff) |
Make CTRL+C alternatively clear the input and set '/quit' in it
Diffstat (limited to 'ui')
-rw-r--r-- | ui/editor.go | 13 | ||||
-rw-r--r-- | ui/ui.go | 4 |
2 files changed, 17 insertions, 0 deletions
diff --git a/ui/editor.go b/ui/editor.go index f4bd247..606bf8d 100644 --- a/ui/editor.go +++ b/ui/editor.go @@ -214,6 +214,19 @@ func (e *Editor) Clear() bool { return true } +func (e *Editor) Set(text string) { + r := []rune(text) + e.text[e.lineIdx] = r + e.cursorIdx = len(r) + e.computeTextWidth() + e.offsetIdx = 0 + for e.width < e.textWidth[e.cursorIdx]-e.textWidth[e.offsetIdx]+16 { + e.offsetIdx++ + } + e.autoCache = nil + e.backsearchEnd() +} + func (e *Editor) Right() { e.right() e.autoCache = nil @@ -318,6 +318,10 @@ func (ui *UI) InputClear() bool { return ui.e.Clear() } +func (ui *UI) InputSet(text string) { + ui.e.Set(text) +} + func (ui *UI) InputBackSearch() { ui.e.BackSearch() } |