commit 0cd5117a2cfc4134712de748ec416be0655838b2 from: Quentin Rameau via: Christoph Lohmann <20h@r-36.net> date: Sat Jan 30 08:45:23 2016 UTC Add -n option for setting WM_CLASS instance name Signed-off-by: Christoph Lohmann <20h@r-36.net> commit - bd5fdbe64c8abfb624ad59939ed9b221c8b04eef commit + 0cd5117a2cfc4134712de748ec416be0655838b2 blob - fe2e731dc13f9f80548549d5d8e7ba53659b09d9 blob + 1e3f1d44985eb5cbaf361de3064ee4c158d7105b --- st.1 +++ st.1 @@ -10,6 +10,8 @@ st \- simple terminal .IR font ] .RB [ \-g .IR geometry ] +.RB [ \-n +.IR name ] .RB [ \-o .IR iofile ] .RB [ \-T @@ -32,6 +34,8 @@ st \- simple terminal .IR font ] .RB [ \-g .IR geometry ] +.RB [ \-n +.IR name ] .RB [ \-o .IR iofile ] .RB [ \-T @@ -68,6 +72,9 @@ for further details. .B \-i will fixate the position given with the -g option. .TP +.BI \-n " name" +defines the window instance name (default $TERM). +.TP .BI \-o " iofile" writes all the I/O to .I iofile. blob - 2bbf48488217bc3aafb5d0b46dc25df4d0df145f blob + 38abffbd65a59202e3a4004ee94f2ee80c6da6e1 --- st.c +++ st.c @@ -524,14 +524,15 @@ static int cmdfd; static pid_t pid; static Selection sel; static int iofd = 1; -static char **opt_cmd = NULL; -static char *opt_io = NULL; -static char *opt_title = NULL; -static char *opt_embed = NULL; +static char **opt_cmd = NULL; static char *opt_class = NULL; -static char *opt_font = NULL; -static char *opt_line = NULL; -static int oldbutton = 3; /* button event on startup: 3 = release */ +static char *opt_embed = NULL; +static char *opt_font = NULL; +static char *opt_io = NULL; +static char *opt_line = NULL; +static char *opt_name = NULL; +static char *opt_title = NULL; +static int oldbutton = 3; /* button event on startup: 3 = release */ static char *usedfont = NULL; static double usedfontsize = 0; @@ -3240,7 +3241,8 @@ xclear(int x1, int y1, int x2, int y2) void xhints(void) { - XClassHint class = {termname, opt_class ? opt_class : termname}; + XClassHint class = {opt_name ? opt_name : termname, + opt_class ? opt_class : termname}; XWMHints wm = {.flags = InputHint, .input = 1}; XSizeHints *sizeh = NULL; @@ -4332,13 +4334,12 @@ run(void) void usage(void) { - die("usage: %s [-aiv] [-c class] [-f font] [-g geometry]" - " [-o file] [-T title]\n" - " [-t title] [-w windowid] [[-e] command [args ...]]\n" - " %s [-aiv] [-c class] [-f font] [-g geometry]" - " [-o file] [-T title]\n" - " [-t title] [-w windowid] -l line [stty_args ...]\n", - argv0, argv0); + die("usage: %s " + "[-aiv] [-c class] [-f font] [-g geometry] [-n name] [-o file]\n " + " [-T title] [-t title] [-w windowid] [[-e] command [args ...]\n " + " %s [-aiv] [-c class] [-f font] [-g geometry] [-n name] [-o file]\n " + " [-o file] [-T title] [-t title] [-w windowid] -l line" + " [stty_args ...]\n", argv0, argv0); } void @@ -4383,6 +4384,9 @@ main(int argc, char *argv[]) case 'l': opt_line = EARGF(usage()); break; + case 'n': + opt_name = EARGF(usage()); + break; case 't': case 'T': opt_title = EARGF(usage());