diff -durp mutt-1.3.22.1/doc/manual.sgml mutt-1.3.22.1.oe.%_.1/doc/manual.sgml --- mutt-1.3.22.1/doc/manual.sgml Wed Sep 5 02:52:17 2001 +++ mutt-1.3.22.1.oe.%_.1/doc/manual.sgml Wed Sep 5 03:01:26 2001 @@ -4103,6 +4103,7 @@ stashed the message: list name or recipi (2) at the top of a thread, or (3) `x-label' is different from preceding message's `x-label'. %Z message status flags +%_ toggle conversion to lowercase of subsequent %-expansions %{fmt} the date and time of the message is converted to sender's time zone, and ``fmt'' is expanded by the library function ``strftime''; a leading bang disables locales diff -durp mutt-0.94.12/hdrline.c mutt-0.94.12.oe.%_.1/hdrline.c --- mutt-0.94.12/hdrline.c Tue Oct 13 13:45:13 1998 +++ mutt-0.94.12.oe.%_.1/hdrline.c Tue Oct 13 17:10:22 1998 @@ -685,6 +685,10 @@ hdr_format_str (char *dest, else if (flags & M_FORMAT_OPTIONAL) mutt_FormatString (dest, destlen, elsestring, hdr_format_str, (unsigned long) hfi, flags); + /* Convert the result of the expansion to lowercase if that was specified. */ + if (flags & M_FORMAT_LOWERCASE) + mutt_strlower (dest); + return (src); #undef THREAD_NEW #undef THREAD_OLD diff -durp mutt-0.94.12/muttlib.c mutt-0.94.12.oe.%_.1/muttlib.c --- mutt-0.94.12/muttlib.c Tue Oct 13 13:45:26 1998 +++ mutt-0.94.12.oe.%_.1/muttlib.c Tue Oct 13 17:10:58 1998 @@ -911,6 +911,15 @@ void mutt_FormatString (char *dest, /* continue; } + /* toggle lowercasing of alphabetical chars in an expansion string */ + if (*src == '_') + { + flags = flags & M_FORMAT_LOWERCASE ? flags & ~M_FORMAT_LOWERCASE + : flags | M_FORMAT_LOWERCASE; + src++; + continue; + } + if (*src == '?') { flags |= M_FORMAT_OPTIONAL; diff -durp mutt-0.94.12/mutt.h mutt-0.94.12.oe.%_.1/mutt.h --- mutt-0.94.12/mutt.h Tue Oct 13 13:45:35 1998 +++ mutt-0.94.12.oe.%_.1/mutt.h Tue Oct 13 17:11:25 1998 @@ -132,7 +132,8 @@ typedef enum M_FORMAT_OPTIONAL = (1<<3), M_FORMAT_STAT_FILE = (1<<4), /* used by mutt_attach_fmt */ M_FORMAT_ARROWCURSOR = (1<<5), /* reserve space for arrow_cursor */ - M_FORMAT_INDEX = (1<<6) /* this is a main index entry */ + M_FORMAT_INDEX = (1<<6), /* this is a main index entry */ + M_FORMAT_LOWERCASE = (1<<7) /* print the alpha chars in lower case */ } format_flag; /* types for mutt_add_hook() */ --- mutt-0.94.7i/patchlist.c.orig Sat Sep 19 02:29:51 1998 +++ mutt-0.94.7i/patchlist.c Sat Sep 19 02:54:16 1998 @@ -16,6 +16,8 @@ + printf("Feature patch: %%_ 0.94.12 by O'Shaughnessy Evans\n"); + /* DO NOT MODIFY AFTER THIS LINE */