summary refs log tree commit diff
path: root/input.c
diff options
context:
space:
mode:
Diffstat (limited to 'input.c')
-rw-r--r--input.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/input.c b/input.c
index 5a1a3bc..e5a4a00 100644
--- a/input.c
+++ b/input.c
@@ -70,6 +70,10 @@ input_keycodetrans(KeyCode kc, u_int state,
 		case XK_U:
 			*ctl = CTL_WIPE;
 			break;
+		case XK_h:
+		case XK_H:
+			*ctl = CTL_ERASEONE;
+			break;
 		case XK_a:
 		case XK_A:
 			*ctl = CTL_ALL;
@@ -77,6 +81,21 @@ input_keycodetrans(KeyCode kc, u_int state,
 		}
 	}
 
+	if (*ctl == CTL_NONE && (state & Mod1Mask)) {
+		switch (ks) {
+		case XK_j:
+		case XK_J:
+			/* Vi "down" */
+			*ctl = CTL_DOWN;
+			break;
+		case XK_k:
+		case XK_K:
+			/* Vi "up" */
+			*ctl = CTL_UP;
+			break;
+		}
+	}
+
 	if (*ctl != CTL_NONE)
 		return (0);