Github messages for mblaze
 help / color / mirror / Atom feed
* [PR PATCH] mdirs: add Maildir profile key
@ 2023-07-25 13:47 meudwy
  2023-07-25 13:53 ` meudwy
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: meudwy @ 2023-07-25 13:47 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 415 bytes --]

There is a new pull request by meudwy against master on the mblaze repository

https://github.com/meudwy/mblaze mdirs-profile
https://github.com/leahneukirchen/mblaze/pull/245

mdirs: add Maildir profile key
When `mdirs` is executed without any arguments, look for the `Maildir` key in the profile and use that instead (if set).

A patch file from https://github.com/leahneukirchen/mblaze/pull/245.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-mdirs-profile-245.patch --]
[-- Type: text/x-diff, Size: 3374 bytes --]

From 33fb6a11b62c320492dcfc97cd539561fcf3d52a Mon Sep 17 00:00:00 2001
From: Meudwy <meudwy@meudwy.uk>
Date: Tue, 25 Jul 2023 14:28:09 +0100
Subject: [PATCH] mdirs: add Maildir profile key

When `mdirs` is executed without any arguments, look for the `Maildir`
key in the profile and use that instead (if set).
---
 GNUmakefile          |  8 ++++----
 man/mblaze-profile.5 |  4 ++++
 man/mdirs.1          | 20 +++++++++++++++++++-
 mdirs.c              | 16 +++++++++++++---
 4 files changed, 40 insertions(+), 8 deletions(-)

diff --git a/GNUmakefile b/GNUmakefile
index c90e9383..357053bf 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -26,10 +26,10 @@ SCRIPT = mcolor mcom mless mmkdir mquote museragent
 all: $(ALL) museragent
 
 $(ALL) : % : %.o
-maddr magrep mdeliver mexport mflag mflow mgenmid mhdr mpick mscan msed mshow \
-  msort mthread : blaze822.o mymemmem.o mytimegm.o
-maddr magrep mdeliver mexport mflag mgenmid mhdr mlist mpick mscan msed mseq \
-  mshow msort mthread : seq.o slurp.o mystrverscmp.o
+maddr magrep mdeliver mdirs mexport mflag mflow mgenmid mhdr mpick mscan msed \
+  mshow msort mthread : blaze822.o mymemmem.o mytimegm.o
+maddr magrep mdeliver mdirs mexport mflag mgenmid mhdr mlist mpick mscan msed \
+  mseq mshow msort mthread : seq.o slurp.o mystrverscmp.o
 maddr magrep mflow mhdr mpick mscan mshow : rfc2047.o
 magrep mflow mhdr mshow : rfc2045.o
 mshow : filter.o safe_u8putstr.o rfc2231.o pipeto.o
diff --git a/man/mblaze-profile.5 b/man/mblaze-profile.5
index fe583095..d9aaad5c 100644
--- a/man/mblaze-profile.5
+++ b/man/mblaze-profile.5
@@ -49,6 +49,10 @@ The fully qualified domain name used for
 .Li Message\&-Id\&:
 generation in
 .Xr mgenmid 1 .
+.It Li Maildir\&:
+If set,
+.Xr mdirs 1
+will use this maildir when no directories are supplied.
 .It Li Outbox\&:
 If set,
 .Xr mcom 1
diff --git a/man/mdirs.1 b/man/mdirs.1
index 44ffae40..89885086 100644
--- a/man/mdirs.1
+++ b/man/mdirs.1
@@ -17,6 +17,14 @@ for maildir
 folders and prints them,
 separated by newlines.
 .Pp
+If
+.Ar dirs
+is not present then use 
+.Sq Li Maildir\&:
+from
+.Pa "${MBLAZE:-$HOME/.mblaze}/profile"
+.Pq if set .
+.Pp
 To
 .Nm ,
 a maildir folder is a directory containing
@@ -36,10 +44,20 @@ Print folders separated by a NUL character.
 .It Fl a
 Traverse into all subfolders, without considering the maildir++ name conventions.
 .El
+.Sh ENVIRONMENT
+.Bl -tag -width Ds
+.It Ev MBLAZE
+Directory containing mblaze configuration.
+.Po
+Default:
+.Pa $HOME/.mblaze
+.Pc
+.El
 .Sh EXIT STATUS
 .Ex -std
 .Sh SEE ALSO
-.Xr find 1
+.Xr find 1 ,
+.Xr mblaze-profile 5
 .Sh AUTHORS
 .An Leah Neukirchen Aq Mt leah@vuxu.org
 .Sh LICENSE
diff --git a/mdirs.c b/mdirs.c
index 5f49906f..df8ea30b 100644
--- a/mdirs.c
+++ b/mdirs.c
@@ -5,6 +5,7 @@
 #include <limits.h>
 #include <stdio.h>
 #include <stdlib.h>
+#include <string.h>
 #include <unistd.h>
 
 #include "blaze822.h"
@@ -86,11 +87,20 @@ main(int argc, char *argv[])
 			exit(1);
 		}
 
-	if (argc == optind)
-		goto usage;
-
 	xpledge("stdio rpath", "");
 
+	if (argc == optind) {
+		char *f = blaze822_home_file("profile");
+		struct message *config = blaze822(f);
+		char *v;
+
+		if (config && (v = blaze822_hdr(config, "maildir"))) {
+			mdirs(v);
+			return 0;
+		}
+		goto usage;
+	}
+
 	char toplevel[PATH_MAX];
 	if (!getcwd(toplevel, sizeof toplevel)) {
 		perror("mdirs: getcwd");

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2023-07-27 12:08 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-07-25 13:47 [PR PATCH] mdirs: add Maildir profile key meudwy
2023-07-25 13:53 ` meudwy
2023-07-25 14:09 ` leahneukirchen
2023-07-25 14:37 ` [PR PATCH] [Updated] " meudwy
2023-07-25 14:39 ` meudwy
2023-07-25 14:50 ` leahneukirchen
2023-07-25 14:54 ` [PR PATCH] [Updated] " meudwy
2023-07-25 14:55 ` meudwy
2023-07-27 12:08 ` [PR PATCH] [Closed]: " leahneukirchen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).