summaryrefslogtreecommitdiff
path: root/shed_non_vi.c
diff options
context:
space:
mode:
authorJakob Kaivo <jkk@x1-nano.kaivo.local>2023-04-01 22:46:34 -0400
committerJakob Kaivo <jkk@x1-nano.kaivo.local>2023-04-01 22:46:34 -0400
commit23e9c66180b95e5b1ba03ae739c04ebefa183e05 (patch)
tree91dd9ac0d4270208b770bbc85766d5918c8e2d5a /shed_non_vi.c
parent73611cd92215d478a549a6c869450376efc26393 (diff)
begin work on command history (need to fix so it doesn't clear screen)
Diffstat (limited to 'shed_non_vi.c')
-rw-r--r--shed_non_vi.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/shed_non_vi.c b/shed_non_vi.c
index eda2cc6..b299122 100644
--- a/shed_non_vi.c
+++ b/shed_non_vi.c
@@ -47,6 +47,12 @@ int shed_handle_non_vi(struct shed *e, struct termios *t, char c)
if (c == '\033') {
char esc[2];
read(STDIN_FILENO, esc, 2);
+ if (esc[1] == 'A') {
+ return shed_history_backward(e);
+ }
+ if (esc[1] == 'B') {
+ return shed_history_forward(e);
+ }
if (esc[1] == 'C') {
return shed_move_forward(e);
}
@@ -75,9 +81,9 @@ int shed_handle_non_vi(struct shed *e, struct termios *t, char c)
case CTRL_K: return shed_delete_toend(e);
case CTRL_L: return shed_redraw(e);
case CTRL_M: return shed_execute(e);
- case CTRL_N: // return history_forward(e);
+ case CTRL_N: return shed_history_forward(e);
case CTRL_O: // return ??? /* ??? */
- case CTRL_P: // return history_backward(e);
+ case CTRL_P: return shed_history_backward(e);
case CTRL_Q: // /* TTY START */
case CTRL_R: // return history_backsearch(e);
case CTRL_S: // /* TTY STOP */