emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r109228: message.el: Make header fill


From: Katsumi Yamaoka
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r109228: message.el: Make header fill function work properly
Date: Fri, 27 Jul 2012 08:01:44 +0000
User-agent: Bazaar (2.5.0)

------------------------------------------------------------
revno: 109228
committer: Katsumi Yamaoka <address@hidden>
branch nick: trunk
timestamp: Fri 2012-07-27 08:01:44 +0000
message:
  message.el: Make header fill function work properly
modified:
  lisp/gnus/ChangeLog
  lisp/gnus/message.el
=== modified file 'lisp/gnus/ChangeLog'
--- a/lisp/gnus/ChangeLog       2012-07-25 22:10:37 +0000
+++ b/lisp/gnus/ChangeLog       2012-07-27 08:01:44 +0000
@@ -1,3 +1,9 @@
+2012-07-27  Katsumi Yamaoka  <address@hidden>
+
+       * message.el (message-kill-address): Don't kill last newline.
+       (message-skip-to-next-address): Don't move to the next header.
+       (message-fill-field-address): Work properly.
+
 2012-07-25  Julien Danjou  <address@hidden>
 
        * gnus-art.el (gnus-kill-sticky-article-buffers): Reintroduce.

=== modified file 'lisp/gnus/message.el'
--- a/lisp/gnus/message.el      2012-07-24 22:17:17 +0000
+++ b/lisp/gnus/message.el      2012-07-27 08:01:44 +0000
@@ -2603,7 +2603,7 @@
   (interactive)
   (let ((start (point)))
     (message-skip-to-next-address)
-    (kill-region start (point))))
+    (kill-region start (if (bolp) (1- (point)) (point)))))
 
 
 (autoload 'Info-goto-node "info")
@@ -6099,7 +6099,7 @@
     (while (and (not (= (point) end))
                (or (not (eq char ?,))
                    quoted))
-      (skip-chars-forward "^,\"" (point-max))
+      (skip-chars-forward "^,\"" end)
       (when (eq (setq char (following-char)) ?\")
        (setq quoted (not quoted)))
       (unless (= (point) end)
@@ -6136,17 +6136,22 @@
       (point-max))))
 
 (defun message-fill-field-address ()
-  (while (not (eobp))
-    (message-skip-to-next-address)
-    (let (last)
-      (if (and (> (current-column) 78)
-              last)
-         (progn
-           (save-excursion
-             (goto-char last)
-             (insert "\n\t"))
-           (setq last (1+ (point))))
-       (setq last (1+ (point)))))))
+  (let (end last)
+    (while (not end)
+      (message-skip-to-next-address)
+      (cond ((bolp)
+            (end-of-line 0)
+            (setq end 1))
+           ((eobp)
+            (setq end 0)))
+      (when (and (> (current-column) 78)
+                last)
+       (save-excursion
+         (goto-char last)
+         (delete-char (- (skip-chars-backward " \t")))
+         (insert "\n\t")))
+      (setq last (point)))
+    (forward-line end)))
 
 (defun message-fill-field-general ()
   (let ((begin (point))


reply via email to

[Prev in Thread] Current Thread [Next in Thread]