2002-12-31 Reiner Steib <4uce.02.r.steib@gmx.net>
[gnus] / lisp / deuglify.el
index e3a9bf3..ca0e7c2 100644 (file)
 ;;; User Customizable Variables:
 
 (defgroup gnus-outlook-deuglify nil
-  "Deuglify articles generated by broken user agents like MS 
-Outlook (Express).")
+  "Deuglify articles generated by broken user agents like MS Outlook (Express).")
 
 ;;;###autoload
 (defcustom gnus-outlook-deuglify-unwrap-min 45
@@ -251,21 +250,18 @@ Outlook (Express).")
   :group 'gnus-outlook-deuglify)
 
 (defcustom gnus-outlook-deuglify-unwrap-stop-chars nil ;; ".?!" or nil
-  "Characters that inhibit unwrapping if they are the last one on the
-cited line above the possible wrapped line."
+  "Characters that inhibit unwrapping if they are the last one on the cited line above the possible wrapped line."
   :type 'string
   :group 'gnus-outlook-deuglify)
 
 (defcustom gnus-outlook-deuglify-no-wrap-chars "`"
-  "Characters that inhibit unwrapping if they are the first one in the
-possibly wrapped line."
+  "Characters that inhibit unwrapping if they are the first one in the possibly wrapped line."
   :type 'string
   :group 'gnus-outlook-deuglify)
 
 (defcustom  gnus-outlook-deuglify-attrib-cut-regexp
   "\\(On \\|Am \\)?\\(Mon\\|Tue\\|Wed\\|Thu\\|Fri\\|Sat\\|Sun\\),[^,]+, "
-  "Regular expression matching the beginning of an attribution line
-that should be cut off."
+  "Regular expression matching the beginning of an attribution line that should be cut off."
   :type 'string
   :group 'gnus-outlook-deuglify)
 
@@ -284,11 +280,10 @@ that should be cut off."
 
 ;; Functions
 
-;; TODO: don't kill MIME parts
 ;;;###autoload
 (defun gnus-outlook-unwrap-lines ()
-  "Unwrap lines that appear to be wrapped citation lines.  You can
-control what lines will be unwrapped by frobbing
+  "Unwrap lines that appear to be wrapped citation lines.
+You can control what lines will be unwrapped by frobbing
 `gnus-outlook-deuglify-unwrap-min' and
 `gnus-outlook-deuglify-unwrap-max', indicating the miminum and maximum
 length of an unwrapped citation line."
@@ -315,7 +310,6 @@ length of an unwrapped citation line."
                  (replace-match "\\1\\2 \\3")
                  (goto-char (match-beginning 0))))))))))
 
-;; TODO: respect signatures, don't kill MIME parts
 (defun gnus-outlook-rearrange-article (from-where)
   "Put the text from `from-where' to the end of buffer at the top of
 the article buffer."
@@ -323,12 +317,11 @@ the article buffer."
     (let ((inhibit-read-only t)
          (cite-marks gnus-outlook-deuglify-cite-marks))
       (gnus-with-article-buffer
-       (unless (search-forward-regexp
-                  (concat "^[ \t]*[^" cite-marks "\n]") nil t)
-         (kill-region from-where (point-max))
-         (article-goto-body)
-         (yank)
-         (insert "\n"))))))
+       (beginning-of-buffer)
+       (re-search-forward "^$")
+       (transpose-regions (point) (- from-where 1)
+                          from-where (point-max) t)))))
+
 
 ;; John Doe <john.doe@some.domain> wrote in message
 ;; news:a87usw8$dklsssa$2@some.news.server...
@@ -430,7 +423,7 @@ the article buffer."
   (interactive)
   (gnus-outlook-deuglify-article)
   (with-current-buffer (or gnus-article-buffer (current-buffer))
-    (gnus-article-prepare-display)))
+    (gnus-article-highlight t)))
 
 (provide 'deuglify)