Xinqi Bao's Git
projects
/
st.git
/ commitdiff
summary
|
log
|
commit
|
diff
|
tree
raw
|
patch
|
inline
| side by side (parent:
bd5fdbe
)
Add -n option for setting WM_CLASS instance name
author
Quentin Rameau <
[email protected]
>
Fri, 29 Jan 2016 21:03:01 +0000
(22:03 +0100)
committer
Christoph Lohmann <
[email protected]
>
Sat, 30 Jan 2016 08:45:23 +0000
(09:45 +0100)
Signed-off-by: Christoph Lohmann <
[email protected]
>
st.1
patch
|
blob
|
history
st.c
patch
|
blob
|
history
diff --git
a/st.1
b/st.1
index
fe2e731
..
1e3f1d4
100644
(file)
--- a/
st.1
+++ b/
st.1
@@
-10,6
+10,8
@@
st \- simple terminal
.IR font ]
.RB [ \-g
.IR geometry ]
.IR font ]
.RB [ \-g
.IR geometry ]
+.RB [ \-n
+.IR name ]
.RB [ \-o
.IR iofile ]
.RB [ \-T
.RB [ \-o
.IR iofile ]
.RB [ \-T
@@
-32,6
+34,8
@@
st \- simple terminal
.IR font ]
.RB [ \-g
.IR geometry ]
.IR font ]
.RB [ \-g
.IR geometry ]
+.RB [ \-n
+.IR name ]
.RB [ \-o
.IR iofile ]
.RB [ \-T
.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
.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.
.BI \-o " iofile"
writes all the I/O to
.I iofile.
diff --git
a/st.c
b/st.c
index
2bbf484
..
38abffb
100644
(file)
--- a/
st.c
+++ b/
st.c
@@
-524,14
+524,15
@@
static int cmdfd;
static pid_t pid;
static Selection sel;
static int iofd = 1;
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_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;
static char *usedfont = NULL;
static double usedfontsize = 0;
@@
-3240,7
+3241,8
@@
xclear(int x1, int y1, int x2, int y2)
void
xhints(void)
{
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;
XWMHints wm = {.flags = InputHint, .input = 1};
XSizeHints *sizeh = NULL;
@@
-4332,13
+4334,12
@@
run(void)
void
usage(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
}
void
@@
-4383,6
+4384,9
@@
main(int argc, char *argv[])
case 'l':
opt_line = EARGF(usage());
break;
case 'l':
opt_line = EARGF(usage());
break;
+ case 'n':
+ opt_name = EARGF(usage());
+ break;
case 't':
case 'T':
opt_title = EARGF(usage());
case 't':
case 'T':
opt_title = EARGF(usage());