dwm/patches/dwm-setstatus-6.2.diff

50 lines
1.3 KiB
Diff

From dbfb346a86c79b50bfa27c75547b42e34cb54715 Mon Sep 17 00:00:00 2001
From: aleks <aleks.stier@icloud.com>
Date: Fri, 11 Sep 2020 17:42:50 +0200
Subject: [PATCH] Apply setstatus-6.2
Enables to set the status with dwm itself. No more xsetroot bloat!
To change the status to `foo bar` execute:
dwm -s "foo bar"
Piping into `dwm -s` is currently not supported but you can set the
status to the output of any command by doing something like:
dwm -s "$(run_command_which_outputs_the_status)"
For example to set the status to the current date run:
dwm -s "$(date)"
---
dwm.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/dwm.c b/dwm.c
index 4465af1..b3c8f71 100644
--- a/dwm.c
+++ b/dwm.c
@@ -2129,12 +2129,17 @@ main(int argc, char *argv[])
{
if (argc == 2 && !strcmp("-v", argv[1]))
die("dwm-"VERSION);
- else if (argc != 1)
+ else if (argc != 1 && strcmp("-s", argv[1]))
die("usage: dwm [-v]");
if (!setlocale(LC_CTYPE, "") || !XSupportsLocale())
fputs("warning: no locale support\n", stderr);
if (!(dpy = XOpenDisplay(NULL)))
die("dwm: cannot open display");
+ if (argc > 1 && !strcmp("-s", argv[1])) {
+ XStoreName(dpy, RootWindow(dpy, DefaultScreen(dpy)), argv[2]);
+ XCloseDisplay(dpy);
+ return 0;
+ }
checkotherwm();
setup();
#ifdef __OpenBSD__
--
2.28.0