Add a -1 option flag

Allow slstatus to be used by programs that can grab status by calling
an external program on a periodic basis (e.g. tmux)
This commit is contained in:
Daniel Moch 2020-06-23 16:35:43 -04:00 committed by Aaron Marcher
parent d1b23e5509
commit aaf279f6dd
2 changed files with 10 additions and 4 deletions

View File

@ -1,4 +1,4 @@
.Dd 2017-08-10
.Dd 2020-06-23
.Dt SLSTATUS 1
.Os
.Sh NAME
@ -7,6 +7,7 @@
.Sh SYNOPSIS
.Nm
.Op Fl s
.Op Fl 1
.Sh DESCRIPTION
.Nm
is a suckless status monitor for window managers that use WM_NAME (e.g. dwm) or
@ -18,6 +19,8 @@ outputs to WM_NAME.
.Bl -tag -width Ds
.It Fl s
Write to stdout instead of WM_NAME.
.It Fl 1
Write once to stdout and quit.
.El
.Sh CUSTOMIZATION
.Nm

View File

@ -41,7 +41,7 @@ difftimespec(struct timespec *res, struct timespec *a, struct timespec *b)
static void
usage(void)
{
die("usage: %s [-s]", argv0);
die("usage: %s [-s] [-1]", argv0);
}
int
@ -56,6 +56,9 @@ main(int argc, char *argv[])
sflag = 0;
ARGBEGIN {
case '1':
done = 1;
/* fallthrough */
case 's':
sflag = 1;
break;
@ -78,7 +81,7 @@ main(int argc, char *argv[])
die("XOpenDisplay: Failed to open display");
}
while (!done) {
do {
if (clock_gettime(CLOCK_MONOTONIC, &start) < 0) {
die("clock_gettime:");
}
@ -125,7 +128,7 @@ main(int argc, char *argv[])
}
}
}
}
} while (!done);
if (!sflag) {
XStoreName(dpy, DefaultRootWindow(dpy), NULL);