(gnus-group-completing-read): Remove all newlines from group names. They mess up...
[gnus] / lisp / flow-fill.el
index a61e54e..2420577 100644 (file)
@@ -1,17 +1,17 @@
 ;;; flow-fill.el --- interpret RFC2646 "flowed" text
 
 ;; Copyright (C) 2000, 2001, 2002, 2003, 2004,
-;;   2005 Free Software Foundation, Inc.
+;;   2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
 
 ;; Author: Simon Josefsson <jas@pdc.kth.se>
 ;; Keywords: mail
 
 ;; This file is part of GNU Emacs.
 
-;; GNU Emacs is free software; you can redistribute it and/or modify
+;; GNU Emacs is free software: you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
 
 ;; GNU Emacs is distributed in the hope that it will be useful,
 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -19,9 +19,7 @@
 ;; GNU General Public License for more details.
 
 ;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-;; Boston, MA 02110-1301, USA.
+;; along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
 
 ;;; Commentary:
 
@@ -98,16 +96,17 @@ RFC 2646 suggests 66 characters for readability."
       t)))
 
 ;;;###autoload
-(defun fill-flowed (&optional buffer)
-  (save-excursion
-    (set-buffer (or (current-buffer) buffer))
+(defun fill-flowed (&optional buffer delete-space)
+  (with-current-buffer (or (current-buffer) buffer)
     (goto-char (point-min))
     ;; Remove space stuffing.
-    (while (re-search-forward "^ " nil t)
+    (while (re-search-forward "^\\( \\|>+ $\\)" nil t)
       (delete-char -1)
       (forward-line 1))
     (goto-char (point-min))
     (while (re-search-forward " $" nil t)
+      (when delete-space
+       (delete-char -1))
       (when (save-excursion
              (beginning-of-line)
              (looking-at "^\\(>*\\)\\( ?\\)"))
@@ -140,7 +139,8 @@ RFC 2646 suggests 66 characters for readability."
            (condition-case nil
                (let ((fill-prefix (when quote (concat quote " ")))
                      (fill-column (eval fill-flowed-display-column))
-                     filladapt-mode)
+                     filladapt-mode
+                     adaptive-fill-mode)
                  (fill-region (point-at-bol)
                               (min (1+ (point-at-eol))
                                    (point-max))
@@ -151,8 +151,7 @@ RFC 2646 suggests 66 characters for readability."
 
 ;; Test vectors.
 
-(eval-when-compile
-  (defvar show-trailing-whitespace))
+(defvar show-trailing-whitespace)
 
 (defvar fill-flowed-encode-tests
   `(
@@ -221,5 +220,4 @@ RFC 2646 suggests 66 characters for readability."
 
 (provide 'flow-fill)
 
-;;; arch-tag: addc0040-bc53-4f17-b4bc-1eb44eed6f0b
 ;;; flow-fill.el ends here