changeset 111059:938faaa83cf1

shr.el (shr-find-fill-point): Shorten line if the preceding char is kinsoku-eol regardless of shr-kinsoku-shorten.
author Katsumi Yamaoka <yamaoka@jpl.org>
date Wed, 20 Oct 2010 00:44:28 +0000
parents ea17726e9043
children 82b54d9bfc91
files lisp/gnus/ChangeLog lisp/gnus/shr.el
diffstat 2 files changed, 14 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/gnus/ChangeLog	Wed Oct 20 00:02:35 2010 +0000
+++ b/lisp/gnus/ChangeLog	Wed Oct 20 00:44:28 2010 +0000
@@ -1,3 +1,8 @@
+2010-10-20  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+	* shr.el (shr-find-fill-point): Shorten line if the preceding char is
+	kinsoku-eol regardless of shr-kinsoku-shorten.
+
 2010-10-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 
 	* shr.el (shr-find-fill-point): Don't leave blanks at the start of some
--- a/lisp/gnus/shr.el	Wed Oct 20 00:02:35 2010 +0000
+++ b/lisp/gnus/shr.el	Wed Oct 20 00:44:28 2010 +0000
@@ -272,13 +272,19 @@
 	  ;; Don't put kinsoku-bol characters at the beginning of a line,
 	  ;; or kinsoku-eol characters at the end of a line,
 	  (let ((count 4))
-	    (if shr-kinsoku-shorten
+	    (if (or shr-kinsoku-shorten
+		    (and (aref (char-category-set (preceding-char)) ?<)
+			 (progn
+			   (setq count (1- count))
+			   (backward-char 1)
+			   t)))
 		(while (and
-			(> count 0)
+			(>= (setq count (1- count)) 0)
+			(not (memq (preceding-char) (list ?\C-@ ?\n ? )))
 			(or (aref (char-category-set (preceding-char)) ?<)
 			    (aref (char-category-set (following-char)) ?>)))
 		  (backward-char 1))
-	      (while (and (> count 0)
+	      (while (and (>= (setq count (1- count)) 0)
 			  (aref (char-category-set (following-char)) ?>))
 		(forward-char 1)))
 	    (when (eq (following-char) ? )