X-Git-Url: https://git.xinqibao.xyz/dmenu.git/blobdiff_plain/eededaa76fb12c10d6de3cb5fcf1479efd39ad75..29686bd1b8513ba7512ab089cfdbc7df44986409:/dmenu.c?ds=sidebyside diff --git a/dmenu.c b/dmenu.c index 6177906..4c87d6a 100644 --- a/dmenu.c +++ b/dmenu.c @@ -394,6 +394,14 @@ kpress(XKeyEvent * e) { switch (ksym) { default: /* ignore other control sequences */ return; + case XK_a: + case XK_A: + cursor = 0; + break; + case XK_e: + case XK_E: + cursor = strlen(text); + break; case XK_c: case XK_C: ksym = XK_Escape; @@ -768,6 +776,9 @@ main(int argc, char *argv[]) { } else if(!strcmp(argv[i], "-b")) topbar = False; + else if(!strcmp(argv[i], "-e")) { + if(++i < argc) root = atoi(argv[i]); + } else if(!strcmp(argv[i], "-l")) { vlist = True; calcoffsets = calcoffsetsv; @@ -801,7 +812,8 @@ main(int argc, char *argv[]) { if(!(dpy = XOpenDisplay(NULL))) eprint("dmenu: cannot open display\n"); screen = DefaultScreen(dpy); - root = RootWindow(dpy, screen); + if(!root) + root = RootWindow(dpy, screen); if(isatty(STDIN_FILENO)) { readstdin();