78 lines
2.4 KiB
Diff
78 lines
2.4 KiB
Diff
|
ask when sending list message replies to author only - Armin Wolfermann (aw)
|
||
|
|
||
|
diff --git a/PATCHES b/PATCHES
|
||
|
index cb66d17..e5bc9de 100644
|
||
|
--- a/PATCHES
|
||
|
+++ b/PATCHES
|
||
|
@@ -1,3 +1,4 @@
|
||
|
+patch-1.5.9.aw.listreply.1
|
||
|
nion.sidebar-color
|
||
|
patch-1.5.19.sidebar.20090522.txt
|
||
|
patch-1.5.19.rr.compressed.1
|
||
|
diff --git a/init.h b/init.h
|
||
|
index 82f3c7d..210d259 100644
|
||
|
--- a/init.h
|
||
|
+++ b/init.h
|
||
|
@@ -1329,6 +1329,13 @@ struct option_t MuttVars[] = {
|
||
|
** The locale used by \fCstrftime(3)\fP to format dates. Legal values are
|
||
|
** the strings your system accepts for the locale environment variable \fC$$$LC_TIME\fP.
|
||
|
*/
|
||
|
+ { "list_reply", DT_QUAD, R_NONE, OPT_LISTREPLY, M_NO },
|
||
|
+ /*
|
||
|
+ ** .pp
|
||
|
+ ** When set, address replies to the mailing list the original message came
|
||
|
+ ** from (instead to the author only). Setting this option to ``ask-yes'' or
|
||
|
+ ** ``ask-no'' will ask if you really intended to reply to the author only.
|
||
|
+ */
|
||
|
{ "mail_check", DT_NUM, R_NONE, UL &BuffyTimeout, 5 },
|
||
|
/*
|
||
|
** .pp
|
||
|
diff --git a/mutt.h b/mutt.h
|
||
|
index fd42004..ef78e11 100644
|
||
|
--- a/mutt.h
|
||
|
+++ b/mutt.h
|
||
|
@@ -290,6 +290,7 @@ enum
|
||
|
#endif
|
||
|
OPT_SUBJECT,
|
||
|
OPT_VERIFYSIG, /* verify PGP signatures */
|
||
|
+ OPT_LISTREPLY,
|
||
|
|
||
|
/* THIS MUST BE THE LAST VALUE. */
|
||
|
OPT_MAX
|
||
|
diff --git a/send.c b/send.c
|
||
|
index 047b2b4..d46327a 100644
|
||
|
--- a/send.c
|
||
|
+++ b/send.c
|
||
|
@@ -453,6 +453,7 @@ static int include_reply (CONTEXT *ctx, HEADER *cur, FILE *out)
|
||
|
static int default_to (ADDRESS **to, ENVELOPE *env, int flags, int hmfupto)
|
||
|
{
|
||
|
char prompt[STRING];
|
||
|
+ ADDRESS *tmp;
|
||
|
|
||
|
if (flags && env->mail_followup_to && hmfupto == M_YES)
|
||
|
{
|
||
|
@@ -466,6 +467,23 @@ static int default_to (ADDRESS **to, ENVELOPE *env, int flags, int hmfupto)
|
||
|
if (flags & SENDLISTREPLY)
|
||
|
return 0;
|
||
|
|
||
|
+ /* If this message came from a mailing list, ask the user if he really
|
||
|
+ * intended to reply to the author only.
|
||
|
+ */
|
||
|
+ if (!(flags & SENDGROUPREPLY) && mutt_is_list_cc (0, env->to, env->cc)) {
|
||
|
+ switch (query_quadoption (OPT_LISTREPLY,
|
||
|
+ _("Message came from a mailing list. Reply to author only?")))
|
||
|
+ {
|
||
|
+ case M_NO:
|
||
|
+ tmp = find_mailing_lists (env->to, env->cc);
|
||
|
+ rfc822_append (to, tmp, 0);
|
||
|
+ rfc822_free_address (&tmp);
|
||
|
+ return 0;
|
||
|
+ case -1:
|
||
|
+ return -1; /* abort */
|
||
|
+ }
|
||
|
+ }
|
||
|
+
|
||
|
if (!option(OPTREPLYSELF) && mutt_addr_is_user (env->from))
|
||
|
{
|
||
|
/* mail is from the user, assume replying to recipients */
|