diff options
author | cmacrae <calum0macrae@gmail.com> | 2018-11-20 14:47:53 +0000 |
---|---|---|
committer | cmacrae <calum0macrae@gmail.com> | 2018-11-20 14:47:53 +0000 |
commit | a760a13a0eb9f72097a302be19772b5b2a6142af (patch) | |
tree | 98e6d552f2ec308802bfea981fa9cc77311c1724 | |
parent | 804be3cfb8982f83e850f28bef5730672b6d04da (diff) |
keys: Implement basic readline movement keys
- C-b: left
- C-f: right
- C-a: beginning-of-line
- C-e: end-of-line
-rw-r--r-- | up.go | 10 |
1 files changed, 8 insertions, 2 deletions
@@ -326,14 +326,20 @@ func (e *Editor) HandleKey(ev *tcell.EventKey) bool { e.delete(-1) case key(tcell.KeyDelete): e.delete(0) - case key(tcell.KeyLeft): + case key(tcell.KeyLeft), + ctrlKey(tcell.KeyCtrlB): if e.cursor > 0 { e.cursor-- } - case key(tcell.KeyRight): + case key(tcell.KeyRight), + ctrlKey(tcell.KeyCtrlF): if e.cursor < len(e.value) { e.cursor++ } + case ctrlKey(tcell.KeyCtrlA): + e.cursor = 0 + case ctrlKey(tcell.KeyCtrlE): + e.cursor = e.lastw default: // Unknown key/combination, not handled return false |