unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#33224: `message-simplify-subject' simplification (and extensibility)
@ 2018-11-01  6:21 Garreau, Alexandre
  2019-05-13 20:36 ` Lars Ingebrigtsen
  0 siblings, 1 reply; 2+ messages in thread
From: Garreau, Alexandre @ 2018-11-01  6:21 UTC (permalink / raw)
  To: 33224

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

Hi, here a patch simplyfing `message-simplify-subject' to make it
extensible (users can now add their own tailor-made one-arg function to
`message-simplify-subject-functions'), by removing all the explicit
checks and funcall, and just calling all the functions (implicit check
for `message-strip-list-identifiers' is moved to its body, and one for
`message-strip-subject-re' is removed based on previous patch from
<Bug#33200>).

This is my second patch, please tell-me if there’s a problem anywhere.
Not sure if I know how to make patch properly, nor to report bugs
properly.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: message-simplify-subject.patch --]
[-- Type: text/x-diff, Size: 2049 bytes --]

diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el
index 0c743bd3aa..acd581226a 100644
--- a/lisp/gnus/message.el
+++ b/lisp/gnus/message.el
@@ -2052,8 +2052,9 @@ see `message-narrow-to-headers-or-head'."
   (let ((regexp (if (stringp gnus-list-identifiers)
 		    gnus-list-identifiers
 		  (mapconcat 'identity gnus-list-identifiers " *\\|"))))
-    (if (string-match (concat "\\(\\(\\(Re: +\\)?\\(" regexp
-			      " *\\)\\)+\\(Re: +\\)?\\)") subject)
+    (if (and (not (equal regexp ""))
+             (string-match (concat "\\(\\(\\(Re: +\\)?\\(" regexp
+                                   " *\\)\\)+\\(Re: +\\)?\\)") subject))
 	(concat (substring subject 0 (match-beginning 1))
 		(or (match-string 3 subject)
 		    (match-string 5 subject))
@@ -6942,21 +6943,12 @@ Useful functions to put in this list include:
   :type '(repeat function))
 
 (defun message-simplify-subject (subject &optional functions)
-  "Return simplified SUBJECT."
-  (unless functions
-    ;; Simplify fully:
-    (setq functions message-simplify-subject-functions))
-  (when (and (memq 'message-strip-list-identifiers functions)
-	     gnus-list-identifiers)
-    (setq subject (message-strip-list-identifiers subject)))
-  (when (memq 'message-strip-subject-re functions)
-    (setq subject (message-strip-subject-re subject))))
-  (when (and (memq 'message-strip-subject-trailing-was functions)
-	     message-subject-trailing-was-query)
-    (setq subject (message-strip-subject-trailing-was subject)))
-  (when (memq 'message-strip-subject-encoded-words functions)
-    (setq subject (message-strip-subject-encoded-words subject)))
-  subject)
+  "Return simplified SUBJECT.
+Do so by calling each one-argument function in the list of functions
+specified by FUNCTIONS, if non-nil, or by the variable
+`message-simplify-subject-functions' otherwise."
+  (dolist (fun (or functions message-simplify-subject-functions) subject)
+    (setq subject (funcall fun subject))))
 
 ;;;###autoload
 (defun message-reply (&optional to-address wide switch-function)

[-- Attachment #3: Type: text/plain, Size: 106 bytes --]


Gnus v5.13
GNU Emacs 25.1.1 (i686-pc-linux-gnu, GTK+ Version 3.22.11)
 of 2017-09-15, modified by Debian

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

* bug#33224: `message-simplify-subject' simplification (and extensibility)
  2018-11-01  6:21 bug#33224: `message-simplify-subject' simplification (and extensibility) Garreau, Alexandre
@ 2019-05-13 20:36 ` Lars Ingebrigtsen
  0 siblings, 0 replies; 2+ messages in thread
From: Lars Ingebrigtsen @ 2019-05-13 20:36 UTC (permalink / raw)
  To: Garreau, Alexandre; +Cc: 33224

"Garreau, Alexandre" <galex-713@galex-713.eu> writes:

> Hi, here a patch simplyfing `message-simplify-subject' to make it
> extensible (users can now add their own tailor-made one-arg function to
> `message-simplify-subject-functions'), by removing all the explicit
> checks and funcall, and just calling all the functions (implicit check
> for `message-strip-list-identifiers' is moved to its body, and one for
> `message-strip-subject-re' is removed based on previous patch from
> <Bug#33200>).

I have no idea why that function was written in that strange way, and
I've applied your patch.

> This is my second patch, please tell-me if there’s a problem anywhere.
> Not sure if I know how to make patch properly, nor to report bugs
> properly.

Everything seems to work for me when testing.  As your total added lines
was less than ten, no FSF copyright assignment paperwork is needed, but
if you intend on contributing further, it might be nice to start that
process now.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





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

end of thread, other threads:[~2019-05-13 20:36 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-11-01  6:21 bug#33224: `message-simplify-subject' simplification (and extensibility) Garreau, Alexandre
2019-05-13 20:36 ` Lars Ingebrigtsen

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).