changeset: 6511:aec82c4dd826
user:      Derek Schrock <[email protected]>
date:      Sun Sep 20 20:37:47 2015 -0400
link:      http://dev.mutt.org/hg/mutt/rev/aec82c4dd826

Add new optional index_format expandos %r and %R.

These generate a comma separated list of all the To and Cc recipients.

Also, increase the attribution buffer size to accommodate these new
expandos.

diffs (73 lines):

diff -r 93c6ae1ef01b -r aec82c4dd826 UPDATING
--- a/UPDATING  Mon Sep 21 10:28:22 2015 +0800
+++ b/UPDATING  Sun Sep 20 20:37:47 2015 -0400
@@ -4,6 +4,10 @@
 The keys used are:
   !: modified feature, -: deleted feature, +: new feature
 
+default (unreleased):
+  + New expandos %r and %R for comma separated list of To: and Cc:
+    recipients respectively
+
 1.5.24 (2015-08-31):
 
   + terminal status-line (TS) support, a.k.a. xterm title. see the
diff -r 93c6ae1ef01b -r aec82c4dd826 hdrline.c
--- a/hdrline.c Mon Sep 21 10:28:22 2015 +0800
+++ b/hdrline.c Sun Sep 20 20:37:47 2015 -0400
@@ -219,6 +219,8 @@
  * %N = score
  * %O = like %L, except using address instead of name
  * %P = progress indicator for builtin pager
+ * %r = comma separated list of To: recipients
+ * %R = comma separated list of Cc: recipients
  * %s = subject
  * %S = short message status (e.g., N/O/D/!/r/-)
  * %t = `to:' field (recipients)
@@ -548,6 +550,22 @@
       strfcpy(dest, NONULL(hfi->pager_progress), destlen);
       break;
 
+    case 'r':
+      buf2[0] = 0;
+      rfc822_write_address(buf2, sizeof(buf2), hdr->env->to, 1);
+      if (optional && buf2[0] == '\0')
+        optional = 0;
+      mutt_format_s (dest, destlen, prefix, buf2);
+      break;
+
+    case 'R':
+      buf2[0] = 0;
+      rfc822_write_address(buf2, sizeof(buf2), hdr->env->cc, 1);
+      if (optional && buf2[0] == '\0')
+        optional = 0;
+      mutt_format_s (dest, destlen, prefix, buf2);
+      break;
+
     case 's':
       
       if (flags & M_FORMAT_TREE && !hdr->collapsed)
diff -r 93c6ae1ef01b -r aec82c4dd826 init.h
--- a/init.h    Mon Sep 21 10:28:22 2015 +0800
+++ b/init.h    Sun Sep 20 20:37:47 2015 -0400
@@ -1311,6 +1311,8 @@
   **            stashed the message: list name or recipient name
   **            if not sent to a list
   ** .dt %P .dd progress indicator for the built-in pager (how much of the 
file has been displayed)
+  ** .dt %r .dd comma separated list of ``To:'' recipients
+  ** .dt %R .dd comma separated list of ``Cc:'' recipients
   ** .dt %s .dd subject of the message
   ** .dt %S .dd status of the message (``N''/``D''/``d''/``!''/``r''/\(as)
   ** .dt %t .dd ``To:'' field (recipients)
diff -r 93c6ae1ef01b -r aec82c4dd826 send.c
--- a/send.c    Mon Sep 21 10:28:22 2015 +0800
+++ b/send.c    Sun Sep 20 20:37:47 2015 -0400
@@ -398,7 +398,7 @@
 
 void mutt_make_attribution (CONTEXT *ctx, HEADER *cur, FILE *out)
 {
-  char buffer[STRING];
+  char buffer[LONG_STRING];
   if (Attribution)
   {
     mutt_make_string (buffer, sizeof (buffer), Attribution, ctx, cur);

Reply via email to