Even if we extend the flag to be an n-flag with a numerical input, we
already have other Unix-tools to take care of us much more flexibly,
e.g. with head(1) you can easily get the first 10 outputs with
slstatus -s | head -n 10,
but also e.g. discard the first one and then get the consecutive 10
outputs.
For the X11-root-window-name, you can limit the runtime with timeout(1)
or a comparable solution.
This reverts commit fa8b939990
.
master
@@ -6,7 +6,7 @@ | |||||
.Nd suckless status monitor | .Nd suckless status monitor | ||||
.Sh SYNOPSIS | .Sh SYNOPSIS | ||||
.Nm | .Nm | ||||
.Op Fl so | |||||
.Op Fl s | |||||
.Sh DESCRIPTION | .Sh DESCRIPTION | ||||
.Nm | .Nm | ||||
is a suckless status monitor for window managers that use WM_NAME (e.g. dwm) or | is a suckless status monitor for window managers that use WM_NAME (e.g. dwm) or | ||||
@@ -18,8 +18,6 @@ outputs to WM_NAME. | |||||
.Bl -tag -width Ds | .Bl -tag -width Ds | ||||
.It Fl s | .It Fl s | ||||
Write to stdout instead of WM_NAME. | Write to stdout instead of WM_NAME. | ||||
.It Fl o | |||||
Write only once and exit. | |||||
.El | .El | ||||
.Sh CUSTOMIZATION | .Sh CUSTOMIZATION | ||||
.Nm | .Nm | ||||
@@ -42,7 +42,7 @@ difftimespec(struct timespec *res, struct timespec *a, struct timespec *b) | |||||
static void | static void | ||||
usage(void) | usage(void) | ||||
{ | { | ||||
die("usage: %s [-so]", argv0); | |||||
die("usage: %s [-s]", argv0); | |||||
} | } | ||||
int | int | ||||
@@ -51,18 +51,15 @@ main(int argc, char *argv[]) | |||||
struct sigaction act; | struct sigaction act; | ||||
struct timespec start, current, diff, intspec, wait; | struct timespec start, current, diff, intspec, wait; | ||||
size_t i, len; | size_t i, len; | ||||
int sflag, oflag, ret; | |||||
int sflag, ret; | |||||
char status[MAXLEN]; | char status[MAXLEN]; | ||||
const char *res; | const char *res; | ||||
sflag = oflag = 0; | |||||
sflag = 0; | |||||
ARGBEGIN { | ARGBEGIN { | ||||
case 's': | case 's': | ||||
sflag = 1; | sflag = 1; | ||||
break; | break; | ||||
case 'o': | |||||
oflag = 1; | |||||
break; | |||||
default: | default: | ||||
usage(); | usage(); | ||||
} ARGEND | } ARGEND | ||||
@@ -112,10 +109,6 @@ main(int argc, char *argv[]) | |||||
XFlush(dpy); | XFlush(dpy); | ||||
} | } | ||||
if (oflag) { | |||||
done = 1; | |||||
} | |||||
if (!done) { | if (!done) { | ||||
if (clock_gettime(CLOCK_MONOTONIC, ¤t) < 0) { | if (clock_gettime(CLOCK_MONOTONIC, ¤t) < 0) { | ||||
die("clock_gettime:"); | die("clock_gettime:"); | ||||