diff options
| author | Charles Cabergs <me@cacharle.xyz> | 2020-08-09 22:43:01 +0200 |
|---|---|---|
| committer | Charles Cabergs <me@cacharle.xyz> | 2020-08-09 22:43:01 +0200 |
| commit | 5b707cea9131b1a459b9b8aeb7f73ee7492ff8dd (patch) | |
| tree | b6bacc7e361cf7da53c6b6d84df1b654d6708d8f /dmenu.c | |
| parent | 9b38fda6feda68f95754d5b8932b1a69471df960 (diff) | |
| download | dmenu-5b707cea9131b1a459b9b8aeb7f73ee7492ff8dd.tar.gz dmenu-5b707cea9131b1a459b9b8aeb7f73ee7492ff8dd.tar.bz2 dmenu-5b707cea9131b1a459b9b8aeb7f73ee7492ff8dd.zip | |
Added vim bindings Ctrl-j/k
Diffstat (limited to 'dmenu.c')
| -rw-r--r-- | dmenu.c | 26 |
1 files changed, 21 insertions, 5 deletions
@@ -334,17 +334,17 @@ keypress(XKeyEvent *ev) case XK_g: ksym = XK_Escape; break; case XK_h: ksym = XK_BackSpace; break; case XK_i: ksym = XK_Tab; break; - case XK_j: /* fallthrough */ + /* case XK_j: #<{(| fallthrough |)}># */ case XK_J: /* fallthrough */ case XK_m: /* fallthrough */ case XK_M: ksym = XK_Return; ev->state &= ~ControlMask; break; case XK_n: ksym = XK_Down; break; case XK_p: ksym = XK_Up; break; - case XK_k: /* delete right */ - text[cursor] = '\0'; - match(); - break; + /* case XK_k: #<{(| delete right |)}># */ + /* text[cursor] = '\0'; */ + /* match(); */ + /* break; */ case XK_u: /* delete left */ insert(NULL, 0 - cursor); break; @@ -371,6 +371,22 @@ keypress(XKeyEvent *ev) case XK_bracketleft: cleanup(); exit(1); + + // ADDED Ctrl-j/k for selection + case XK_j: + /* case XK_Down: */ + if (sel && sel->right && (sel = sel->right) == next) { + curr = next; + calcoffsets(); + } + break; + case XK_k: + if (sel && sel->left && (sel = sel->left)->right == curr) { + curr = prev; + calcoffsets(); + } + break; + default: return; } |
