[PATCH v3] Add home and end keybinds for the TextInput widget
Export this patch
readline accepts these an analogs for ctrl+a and ctrl+e.
Signed-off-by: Tristan Partin <tristan@partin.io>
---
src/widgets/TextInput.zig | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/widgets/TextInput.zig b/src/widgets/TextInput.zig
index bd08851..fc1bbf3 100644
--- a/src/widgets/TextInput.zig
+++ b/src/widgets/TextInput.zig
@@ -55,9 +55,9 @@ pub fn update(self: *TextInput, event: Event) !void {
if (self.cursor_idx > 0) self.cursor_idx -= 1;
} else if (key.matches(Key.right, .{}) or key.matches('f', .{ .ctrl = true })) {
if (self.cursor_idx < self.grapheme_count) self.cursor_idx += 1;
- } else if (key.matches('a', .{ .ctrl = true })) {
+ } else if (key.matches('a', .{ .ctrl = true }) or key.matches(Key.home, .{})) {
self.cursor_idx = 0;
- } else if (key.matches('e', .{ .ctrl = true })) {
+ } else if (key.matches('e', .{ .ctrl = true }) or key.matches(Key.end, .{})) {
self.cursor_idx = self.grapheme_count;
} else if (key.matches('k', .{ .ctrl = true })) {
try self.deleteToEnd();
--
Tristan Partin
https://tristan.partin.io