From: Simon Josefsson <jas@extundo.com>
Subject: Re: message-subject-re
Date: Wed, 29 Aug 2001 21:33:19 +0200 [thread overview]
Message-ID: <ilu4rqqr79c.fsf@barbar.josefsson.org> (raw)
In-Reply-To: <m3elpu3do0.fsf@multivac.cwru.edu> (prj@po.cwru.edu's message of "Wed, 29 Aug 2001 14:48:25 -0400")
prj@po.cwru.edu (Paul Jarc) writes:
> Michael.Cook@cisco.com wrote:
> > prj@po.cwru.edu (Paul Jarc) writes:
>>> Michael.Cook@cisco.com wrote:
>>> > i wanted to inhibit gnus from inserting "Re:" at the beginning of
>>>> subject lines. but it seems that that behavior is hard-coded into
>>>> message.el. here's a patch to unharden that code.
>>>
>>> I'd like to see something more general. In particular, I'd like
>>> "(was:.*" to be removed from the Subject: in responses. Maybe a hook
>>> is in order?
>>
>> i think you might have misunderstood. message-subject-re is the
>> string that gnus inserts into the subject line when you start
>> composing a reply (or follow-up).
>
> I understand. I'd like to have a more general facility for modifying
> the subject when composing a response. This could incorporate adding
> "Re: " and removing a trailing "(was:.*". Maybe also remove
> "Re\[[0-9]+\]:" or something.
Inspired by `message-make-forward-subject-function':
Index: message.el
===================================================================
RCS file: /usr/local/cvsroot/gnus/lisp/message.el,v
retrieving revision 6.117
diff -u -u -w -u -w -r6.117 message.el
--- message.el 2001/08/19 02:01:24 6.117
+++ message.el 2001/08/29 19:33:23
@@ -228,6 +228,29 @@
:group 'message-various
:type 'regexp)
+(defcustom message-subject-re "Re: "
+ "*The string to insert at the beginning of subject lines when replying."
+ :group 'message-various
+ :type 'string)
+
+(defcustom message-make-re-subject-function '(message-strip-list-identifiers
+ message-strip-subject-re
+ message-add-subject-re)
+ "*List of functions called to massage subject lines when replying.
+The subject generated by the previous function is passed into each
+successive function.
+
+The provided functions (which both are used by default) are:
+
+* `message-strip-list-identifiers' (Removes `gnus-list-identifiers'.)
+* `message-strip-subject-re' (Removes `message-subject-re-regexp'.)
+* `message-add-subject-re' (Prepends \"Re: \".)
+"
+ :group 'message-various
+ :type '(radio (function-item message-strip-subject-re)
+ (function-item message-strip-list-identifiers)
+ (repeat :tag "List of functions" function)))
+
;;;###autoload
(defcustom message-signature-separator "^-- *$"
"Regexp matching the signature separator."
@@ -1291,6 +1314,25 @@
(substring subject (match-end 0))
subject))
+(defun message-add-subject-re (subject)
+ "Prepend \"Re:\" to SUBJECT."
+ (concat message-subject-re subject))
+
+(defun message-make-re-subject (subject)
+ "Return a Subject header suitable for replying in the current buffer."
+ (let ((funcs message-make-re-subject-function))
+ ;; Make sure funcs is a list.
+ (and funcs
+ (not (listp funcs))
+ (setq funcs (list funcs)))
+ ;; Apply funcs in order, passing subject generated by previous
+ ;; func to the next one.
+ (while funcs
+ (when (message-functionp (car funcs))
+ (setq subject (funcall (car funcs) subject)))
+ (setq funcs (cdr funcs)))
+ subject))
+
(defun message-remove-header (header &optional is-regexp first reverse)
"Remove HEADER in the narrowed buffer.
If IS-REGEXP, HEADER is a regular expression.
@@ -4179,10 +4221,7 @@
date (message-fetch-field "date")
from (message-fetch-field "from")
subject (or (message-fetch-field "subject") "none"))
- (when gnus-list-identifiers
- (setq subject (message-strip-list-identifiers subject)))
- (setq subject (concat "Re: " (message-strip-subject-re subject)))
-
+ (setq subject (message-make-re-subject subject))
(when (and (setq gnus-warning (message-fetch-field "gnus-warning"))
(string-match "<[^>]+>" gnus-warning))
(setq message-id (match-string 0 gnus-warning)))
@@ -4255,9 +4294,7 @@
(let ((case-fold-search t))
(string-match "world" distribution)))
(setq distribution nil))
- (if gnus-list-identifiers
- (setq subject (message-strip-list-identifiers subject)))
- (setq subject (concat "Re: " (message-strip-subject-re subject)))
+ (setq subject (message-make-re-subject subject))
(widen))
(message-pop-to-buffer (message-buffer-name "followup" from newsgroups))
next prev parent reply other threads:[~2001-08-29 19:33 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-08-29 18:25 message-subject-re Michael.Cook
2001-08-29 18:29 ` message-subject-re Paul Jarc
2001-08-29 18:34 ` message-subject-re Michael.Cook
2001-08-29 18:48 ` message-subject-re Paul Jarc
2001-08-29 19:33 ` Simon Josefsson [this message]
2001-08-29 19:40 ` message-subject-re Henrik Enberg
2001-08-29 19:46 ` message-subject-re Paul Jarc
2001-08-29 20:08 ` message-subject-re Michael.Cook
2001-08-29 19:51 ` message-subject-re Frank Schmitt
2001-08-29 20:11 ` message-subject-re Michael.Cook
2001-08-29 23:52 ` message-subject-re Daniel Pittman
2001-08-30 1:50 ` message-subject-re Michael.Cook
2001-08-30 2:31 ` message-subject-re Daniel Pittman
2001-08-30 4:44 ` message-subject-re Paul Jarc
2001-08-30 16:32 ` message-subject-re Michael.Cook
2001-08-30 16:39 ` message-subject-re Jesper Harder
2001-08-30 13:38 ` message-subject-re Per Abrahamsen
2001-08-29 19:43 ` message-subject-re Paul Jarc
2001-08-29 19:51 ` message-subject-re Simon Josefsson
2001-08-30 14:17 ` message-subject-re Per Abrahamsen
2001-08-31 23:26 ` message-subject-re Simon Josefsson
2001-09-01 14:34 ` message-subject-re Per Abrahamsen
2001-08-30 2:16 ` message-subject-re Steve Youngs
2001-09-05 15:02 ` message-change-subject-interactively (was: message-subject-re) Toby Speight
2001-09-05 15:12 ` message-subject-re Colin Marquardt
2001-09-05 16:10 ` message-subject-re Michael.Cook
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ilu4rqqr79c.fsf@barbar.josefsson.org \
--to=jas@extundo.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).