diff --git a/dmenu.1 b/dmenu.1 index bbee17d..f5ee529 100644 --- a/dmenu.1 +++ b/dmenu.1 @@ -22,6 +22,8 @@ dmenu \- dynamic menu .IR color ] .RB [ \-sf .IR color ] +.RB [ \-term +.IR command ] .RB [ \-v ] .P .BR dmenu_run " ..." diff --git a/dmenu.c b/dmenu.c index 8d9bbb6..d20697b 100644 --- a/dmenu.c +++ b/dmenu.c @@ -55,6 +55,7 @@ static Item *prev, *curr, *next, *sel; static Window win; static XIC xic; static int mon = -1; +static const char *term = NULL; #include "config.h" @@ -99,6 +100,8 @@ main(int argc, char *argv[]) { selbgcolor = argv[++i]; else if(!strcmp(argv[i], "-sf")) /* selected foreground color */ selfgcolor = argv[++i]; + else if(!strcmp(argv[i], "-term")) + term = argv[++i]; else usage(); @@ -367,6 +370,8 @@ keypress(XKeyEvent *ev) { break; case XK_Return: case XK_KP_Enter: + if(term) + printf("%s -e ", term); puts((sel && !(ev->state & ShiftMask)) ? sel->text : text); if(!(ev->state & ControlMask)) exit(EXIT_SUCCESS);