diff lisp/gnus/gnus-sum.el @ 36:c53a95d3c46d r19-15b101

Import from CVS: tag r19-15b101
author cvs
date Mon, 13 Aug 2007 08:53:38 +0200
parents d620409f5eb8
children 1a767b41a199
line wrap: on
line diff
--- a/lisp/gnus/gnus-sum.el	Mon Aug 13 08:53:21 2007 +0200
+++ b/lisp/gnus/gnus-sum.el	Mon Aug 13 08:53:38 2007 +0200
@@ -1312,7 +1312,8 @@
     "t" gnus-article-remove-trailing-blank-lines
     "l" gnus-article-strip-leading-blank-lines
     "m" gnus-article-strip-multiple-blank-lines
-    "a" gnus-article-strip-blank-lines)
+    "a" gnus-article-strip-blank-lines
+    "s" gnus-article-strip-leading-space)
 
   (gnus-define-keys (gnus-summary-help-map "H" gnus-summary-mode-map)
     "v" gnus-version
@@ -1514,7 +1515,8 @@
 	 ["Leading" gnus-article-strip-leading-blank-lines t]
 	 ["Multiple" gnus-article-strip-multiple-blank-lines t]
 	 ["Trailing" gnus-article-remove-trailing-blank-lines t]
-	 ["All of the above" gnus-article-strip-blank-lines t])
+	 ["All of the above" gnus-article-strip-blank-lines t]
+	 ["Leading space" gnus-article-strip-leading-space t])
 	["Overstrike" gnus-article-treat-overstrike t]
 	["Emphasis" gnus-article-emphasize t]
 	["Word wrap" gnus-article-fill-cited-article t]
@@ -2460,6 +2462,21 @@
 If SHOW-ALL is non-nil, already read articles are also listed.
 If NO-ARTICLE is non-nil, no article is selected initially.
 If NO-DISPLAY, don't generate a summary buffer."
+  (let (result)
+    (while (and group
+		(null (setq result
+			    (gnus-summary-read-group-1
+			     group show-all no-article
+			     kill-buffer no-display)))
+		(eq gnus-auto-select-next 'quietly))
+      (set-buffer gnus-group-buffer)
+      (if (not (equal group (gnus-group-group-name)))
+	  (setq group (gnus-group-group-name))
+	(setq group nil)))
+    result))
+
+(defun gnus-summary-read-group-1 (group show-all no-article
+					kill-buffer no-display)
   ;; Killed foreign groups can't be entered.
   (when (and (not (gnus-group-native-p group))
 	     (not (gnus-gethash group gnus-newsrc-hashtb)))
@@ -2560,7 +2577,7 @@
 	       (not no-display))
 	  (progn
 	    ;; This newsgroup is empty.
-	    (gnus-summary-catchup-and-exit nil t) ;Without confirmations.
+	    (gnus-summary-catchup-and-exit nil t)
 	    (gnus-message 6 "No unread news")
 	    (when kill-buffer
 	      (gnus-kill-or-deaden-summary kill-buffer))
@@ -2916,17 +2933,18 @@
        (memq article gnus-newsgroup-expirable)
        ;; Only insert the Subject string when it's different
        ;; from the previous Subject string.
-       (unless (gnus-subject-equal
-		(condition-case ()
-		    (mail-header-subject
-		     (gnus-data-header
-		      (cadr
-		       (gnus-data-find-list
-			article
-			(gnus-data-list t)))))
-		  (error ""))
-		(mail-header-subject header))
-	 (mail-header-subject header))
+       (if (gnus-subject-equal
+	    (condition-case ()
+		(mail-header-subject
+		 (gnus-data-header
+		  (cadr
+		   (gnus-data-find-list
+		    article
+		    (gnus-data-list t)))))
+	      (error ""))
+	    (mail-header-subject header))
+	   (mail-header-subject header)
+	 "")
        nil (cdr (assq article gnus-newsgroup-scored))
        (memq article gnus-newsgroup-processable))
       (when length
@@ -3832,7 +3850,7 @@
 		     gnus-save-score
 		     list)
 	    (let* ((arts list)
-		   (prev (cons nil articles))
+		   (prev (cons nil list))
 		   (all prev))
 	      (while arts
 		(if (or (not (consp (car arts)))