Add `C-u C-u g' for showing raw articles, and change `C-u g' to show semi-cooked...
authorLars Magne Ingebrigtsen <larsi@quimbies.gnus.org>
Sun, 31 Oct 2010 21:32:43 +0000 (22:32 +0100)
committerLars Magne Ingebrigtsen <larsi@quimbies.gnus.org>
Sun, 31 Oct 2010 21:32:43 +0000 (22:32 +0100)
lisp/ChangeLog
lisp/gnus-art.el
lisp/gnus-sum.el
texi/ChangeLog
texi/gnus.texi
todo

index 72f5fb6..5f45093 100644 (file)
@@ -1,7 +1,12 @@
 2010-10-31  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 
 2010-10-31  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 
+       * gnus-sum.el (gnus-summary-show-article): Add `C-u C-u g' for showing
+       the raw article, and change `C-u g' to show the article without doing
+       treatments.
+
        * gnus-art.el (gnus-mime-display-alternative): Actually pass the type
        on to `gnus-treat-article'.
        * gnus-art.el (gnus-mime-display-alternative): Actually pass the type
        on to `gnus-treat-article'.
+       (gnus-inhibit-article-treatments): New variable.
 
        * gnus.el: Autoload gnus-article-fill-cited-long-lines.
 
 
        * gnus.el: Autoload gnus-article-fill-cited-long-lines.
 
index f71ca24..b1d28ca 100644 (file)
@@ -8255,6 +8255,8 @@ For example:
 ;;; Treatment top-level handling.
 ;;;
 
 ;;; Treatment top-level handling.
 ;;;
 
+(defvar gnus-inhibit-article-treatments nil)
+
 (defun gnus-treat-article (condition &optional part-number total-parts type)
   (let ((length (- (point-max) (point-min)))
        (alist gnus-treatment-function-alist)
 (defun gnus-treat-article (condition &optional part-number total-parts type)
   (let ((length (- (point-max) (point-min)))
        (alist gnus-treatment-function-alist)
@@ -8277,6 +8279,7 @@ For example:
              (symbol-value (car elem))))
       (when (and (or (consp val)
                     treated-type)
              (symbol-value (car elem))))
       (when (and (or (consp val)
                     treated-type)
+                (not gnus-inhibit-article-treatments)
                 (gnus-treat-predicate val)
                 (or (not (get (car elem) 'highlight))
                     highlightp))
                 (gnus-treat-predicate val)
                 (or (not (get (car elem) 'highlight))
                     highlightp))
index b3ea8bb..7de7a0a 100644 (file)
@@ -9393,9 +9393,10 @@ article currently."
 If ARG (the prefix) is a number, show the article with the charset
 defined in `gnus-summary-show-article-charset-alist', or the charset
 input.
 If ARG (the prefix) is a number, show the article with the charset
 defined in `gnus-summary-show-article-charset-alist', or the charset
 input.
-If ARG (the prefix) is non-nil and not a number, show the raw article
-without any article massaging functions being run.  Normally, the key
-strokes are `C-u g'."
+If ARG (the prefix) is non-nil and not a number, show the article,
+but without running any of the article treatment functions
+article.  Normally, the keystroke is `C-u g'.  When using `C-u
+C-u g', show the raw article."
   (interactive "P")
   (cond
    ((numberp arg)
   (interactive "P")
   (cond
    ((numberp arg)
@@ -9437,7 +9438,8 @@ strokes are `C-u g'."
    ((not arg)
     ;; Select the article the normal way.
     (gnus-summary-select-article nil 'force))
    ((not arg)
     ;; Select the article the normal way.
     (gnus-summary-select-article nil 'force))
-   (t
+   ((equal arg '(16))
+    ;; C-u C-u g
     ;; We have to require this here to make sure that the following
     ;; dynamic binding isn't shadowed by autoloading.
     (require 'gnus-async)
     ;; We have to require this here to make sure that the following
     ;; dynamic binding isn't shadowed by autoloading.
     (require 'gnus-async)
@@ -9455,6 +9457,9 @@ strokes are `C-u g'."
          ;; Set it to nil for safety reason.
          (setq gnus-article-mime-handle-alist nil)
          (setq gnus-article-mime-handles nil)))
          ;; Set it to nil for safety reason.
          (setq gnus-article-mime-handle-alist nil)
          (setq gnus-article-mime-handles nil)))
+      (gnus-summary-select-article nil 'force)))
+   (t
+    (let ((gnus-inhibit-article-treatments t))
       (gnus-summary-select-article nil 'force))))
   (gnus-summary-goto-subject gnus-current-article)
   (gnus-summary-position-point))
       (gnus-summary-select-article nil 'force))))
   (gnus-summary-goto-subject gnus-current-article)
   (gnus-summary-position-point))
index 778d36c..2dc6647 100644 (file)
@@ -1,3 +1,7 @@
+2010-10-31  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+       * gnus.texi (Paging the Article): Document C-u g/C-u C-u g.
+
 2010-10-29  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 
        * gnus.texi (Client-Side IMAP Splitting): Mention
 2010-10-29  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 
        * gnus.texi (Client-Side IMAP Splitting): Mention
index 0a0f96b..1ad6fd4 100644 (file)
@@ -6153,8 +6153,9 @@ Scroll the current article one line backward
 @vindex gnus-summary-show-article-charset-alist
 (Re)fetch the current article (@code{gnus-summary-show-article}).  If
 given a prefix, fetch the current article, but don't run any of the
 @vindex gnus-summary-show-article-charset-alist
 (Re)fetch the current article (@code{gnus-summary-show-article}).  If
 given a prefix, fetch the current article, but don't run any of the
-article treatment functions.  This will give you a ``raw'' article, just
-the way it came from the server.
+article treatment functions.  If given a prefix twice (i.e., @kbd{C-u
+C-u g'}), show a completely ``raw'' article, just the way it came from
+the server.
 
 @cindex charset, view article with different charset
 If given a numerical prefix, you can do semi-manual charset stuff.
 
 @cindex charset, view article with different charset
 If given a numerical prefix, you can do semi-manual charset stuff.
diff --git a/todo b/todo
index 6f17e32..73c54bc 100644 (file)
--- a/todo
+++ b/todo
    X-Loop, and all of the other random headers that often work would be
    very cool.
 
    X-Loop, and all of the other random headers that often work would be
    very cool.
 
-* Agent (Can someone write some subtopics here? I don't use it myself
-  so I don't know what is lacking.)
+* Agent:
 
 
+* A better interface to the agent download scoring rules, like the one
+  for the other scoring rules.
+
+* Editing of messages in the agents cache.
+  
 * Support for encrypted folders. Even if the mail arrives unencrypted
   Gnus should be able to encrypt the *folder* for added safety. This
   should go for both Gnus' own folders and the folders Gnus reads from
 * Support for encrypted folders. Even if the mail arrives unencrypted
   Gnus should be able to encrypt the *folder* for added safety. This
   should go for both Gnus' own folders and the folders Gnus reads from
   - meanwhile, we should still be able to associate certain mail sources with
     certain backends.
 
   - meanwhile, we should still be able to associate certain mail sources with
     certain backends.
 
-* A better interface to the agent download scoring rules, like the one
-  for the other scoring rules.
-
-* Editing of messages in the agents cache.
-
 * More article marks (like '!' or '?').
   Maybe user defined marks that can be displayed as any choosen charakter,
   so one could do things like limiting on, to do whatever one likes with
 * More article marks (like '!' or '?').
   Maybe user defined marks that can be displayed as any choosen charakter,
   so one could do things like limiting on, to do whatever one likes with