Introduction
Introduction Statistics Contact Development Disclaimer Help
Add a -1 option flag - slstatus - status monitor
git clone git://git.suckless.org/slstatus
Log
Files
Refs
README
LICENSE
---
commit aaf279f6ddfb48146fc1a579efd83a55722910b5
parent d1b23e5509863fd0790261b2b388e687d5218d53
Author: Daniel Moch <[email protected]>
Date: Tue, 23 Jun 2020 16:35:43 -0400
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)
Diffstat:
M slstatus.1 | 5 ++++-
M slstatus.c | 9 ++++++---
2 files changed, 10 insertions(+), 4 deletions(-)
---
diff --git a/slstatus.1 b/slstatus.1
@@ -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
diff --git a/slstatus.c b/slstatus.c
@@ -41,7 +41,7 @@ difftimespec(struct timespec *res, struct timespec *a, struct…
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);
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.