]> code.delx.au - gnu-emacs/commitdiff
2001-02-07 ShengHuo ZHU <zsh@cs.rochester.edu>
authorShengHuo ZHU <zsh@cs.rochester.edu>
Wed, 7 Feb 2001 22:08:26 +0000 (22:08 +0000)
committerShengHuo ZHU <zsh@cs.rochester.edu>
Wed, 7 Feb 2001 22:08:26 +0000 (22:08 +0000)
* message.el (message-make-forward-subject): Argument decoded.
(message-forward): Use it when digest.

* gnus-uu.el (gnus-uu-grab-articles): Shoot down original article
buffer.

* gnus-sum.el (gnus-summary-make-menu-bar): Don't share menu bar
in Emacs.

* gnus-art.el (gnus-article-make-menu-bar): Make
gnus-article-post-menu.

lisp/gnus/ChangeLog
lisp/gnus/gnus-art.el
lisp/gnus/gnus-sum.el
lisp/gnus/gnus-uu.el
lisp/gnus/message.el

index 83bbc9201bb7dc53430315538b94b20b9aa87e31..3bf886c5e7da8392390a18bd50f0ef27dda205b8 100644 (file)
@@ -1,3 +1,17 @@
+2001-02-07  ShengHuo ZHU  <zsh@cs.rochester.edu>
+
+       * message.el (message-make-forward-subject): Argument decoded.
+       (message-forward): Use it when digest.
+
+       * gnus-uu.el (gnus-uu-grab-articles): Shoot down original article
+       buffer.
+
+       * gnus-sum.el (gnus-summary-make-menu-bar): Don't share menu bar
+       in Emacs.
+
+       * gnus-art.el (gnus-article-make-menu-bar): Make
+       gnus-article-post-menu.
+
 2001-02-06  Dave Love  <fx@gnu.org>
 
        * qp.el (quoted-printable-encode-region): Remove redundant code
index 55e51d8c128d9b38a6b756aee0ff1224aa30edb5..d535cefbd80ebe6b31b83853981d3450616c400b 100644 (file)
@@ -2289,8 +2289,9 @@ This format is defined by the `gnus-article-time-format' variable."
                                 gnus-newsgroup-name 'highlight-words t)))
             gnus-emphasis-alist)))))
 
-(defvar gnus-summary-article-menu)
-(defvar gnus-summary-post-menu)
+(eval-when-compile
+  (defvar gnus-summary-article-menu)
+  (defvar gnus-summary-post-menu))
 
 ;;; Saving functions.
 
@@ -2662,6 +2663,8 @@ If variable `gnus-use-long-file-name' is non-nil, it is
 (substitute-key-definition
  'undefined 'gnus-article-read-summary-keys gnus-article-mode-map)
 
+(defvar gnus-article-post-menu nil)
+
 (defun gnus-article-make-menu-bar ()
   (gnus-turn-off-edit-menu 'article)
   (unless (boundp 'gnus-article-article-menu)
@@ -2692,8 +2695,15 @@ If variable `gnus-use-long-file-name' is non-nil, it is
     ;; Note "Commands" menu is defined in gnus-sum.el for consistency
 
     (when (boundp 'gnus-summary-post-menu)
+      (cond 
+       ((not (keymapp gnus-summary-post-menu))
+       (setq gnus-article-post-menu gnus-summary-post-menu))
+       ((not gnus-article-post-menu)
+       ;; Don't share post menu.
+       (setq gnus-article-post-menu
+             (copy-keymap gnus-summary-post-menu))))
       (define-key gnus-article-mode-map [menu-bar post]
-       (cons "Post" gnus-summary-post-menu)))
+       (cons "Post" gnus-article-post-menu)))
 
     (gnus-run-hooks 'gnus-article-menu-hook)))
 
@@ -2716,13 +2726,13 @@ commands:
 \\[gnus-article-describe-briefly]\t Describe the current mode briefly
 \\[gnus-info-find-node]\t Go to the Gnus info node"
   (interactive)
-  (when (gnus-visual-p 'article-menu 'menu)
-    (gnus-article-make-menu-bar))
   (gnus-simplify-mode-line)
   (setq mode-name "Article")
   (setq major-mode 'gnus-article-mode)
   (make-local-variable 'minor-mode-alist)
   (use-local-map gnus-article-mode-map)
+  (when (gnus-visual-p 'article-menu 'menu)
+    (gnus-article-make-menu-bar))
   (gnus-update-format-specifications nil 'article-mode)
   (set (make-local-variable 'page-delimiter) gnus-page-delimiter)
   (make-local-variable 'gnus-page-broken)
index 6ffecba1bd47ceb31817fe473e4d89fccab68a9d..4e6a939e0343501f9bf110297ff22aba7a594dfa 100644 (file)
@@ -1315,6 +1315,8 @@ increase the score of each group you read."
 
 (put 'gnus-summary-mode 'mode-class 'special)
 
+(defvar gnus-article-commands-menu)
+
 (when t
   ;; Non-orthogonal keys
 
@@ -1815,9 +1817,15 @@ increase the score of each group you read."
        gnus-summary-article-menu gnus-summary-mode-map ""
        (cons "Article" innards))
 
-      (easy-menu-define
-       gnus-article-commands-menu gnus-article-mode-map ""
-       (cons "Commands" innards)))
+      (if (not (keymapp gnus-summary-article-menu))
+         (easy-menu-define
+           gnus-article-commands-menu gnus-article-mode-map ""
+           (cons "Commands" innards))
+       ;; in Emacs, don't share menu.
+       (setq gnus-article-commands-menu 
+             (copy-keymap gnus-summary-article-menu))
+       (define-key gnus-article-mode-map [menu-bar commands]
+         (cons "Commands" gnus-article-commands-menu))))
 
     (easy-menu-define
      gnus-summary-thread-menu gnus-summary-mode-map ""
index f4ff2ea154b8ea31d7981d5088e9daa55637cb24..a5c660ea9faa4f1ad478e56eed86e5bc47ca9589 100644 (file)
@@ -1,6 +1,6 @@
 ;;; gnus-uu.el --- extract (uu)encoded files in Gnus
-;; Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1996, 1997, 1998, 2000
-;;        Free Software Foundation, Inc.
+;; Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1996, 1997, 1998, 2000,
+;;        2001 Free Software Foundation, Inc.
 
 ;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org>
 ;; Created: 2 Oct 1993
@@ -531,7 +531,7 @@ didn't work, and overwrite existing files.  Otherwise, ask each time."
              n nil))
     (gnus-setup-message 'forward
       (setq gnus-uu-digest-from-subject nil)
-      (setq gnus-uu-digest-buffer 
+      (setq gnus-uu-digest-buffer
            (gnus-get-buffer-create " *gnus-uu-forward*"))
       (gnus-uu-decode-save n file)
       (switch-to-buffer gnus-uu-digest-buffer)
@@ -878,7 +878,7 @@ When called interactively, prompt for REGEXP."
              ;; These two are necessary for XEmacs 19.12 fascism.
              (put-text-property (point-min) (point-max) 'invisible nil)
              (put-text-property (point-min) (point-max) 'intangible nil))
-           (when (and message-forward-as-mime 
+           (when (and message-forward-as-mime
                       message-forward-show-mml
                       gnus-uu-digest-buffer)
              (mm-enable-multibyte)
@@ -921,7 +921,7 @@ When called interactively, prompt for REGEXP."
                (insert sorthead)
                (goto-char (point-min))
                (when (re-search-forward "^Subject: \\(.*\\)$" nil t)
-                 (setq subj (buffer-substring (match-beginning 1) 
+                 (setq subj (buffer-substring (match-beginning 1)
                                               (match-end 1))))
                (goto-char (point-max))
                (insert body))
@@ -965,7 +965,7 @@ When called interactively, prompt for REGEXP."
                (with-current-buffer gnus-uu-digest-buffer
                  (goto-char (point-max))
                  (insert-buffer "*gnus-uu-body*"))
-             (let ((coding-system-for-write mm-text-coding-system) 
+             (let ((coding-system-for-write mm-text-coding-system)
                    (file-name-coding-system nnmail-pathname-coding-system))
                (write-region
                 (point-min) (point-max) gnus-uu-saved-article-name t)))))
@@ -1393,6 +1393,9 @@ When called interactively, prompt for REGEXP."
          (while article-series
            (gnus-summary-tick-article (pop article-series) t)))))
 
+    ;; The original article buffer is hosed, shoot it down.
+    (gnus-kill-buffer gnus-original-article-buffer)
+
     result-files))
 
 (defun gnus-uu-grab-view (file)
@@ -1570,7 +1573,7 @@ Gnus might fail to display all of it.")
              (unless
                  (unwind-protect
                      (with-current-buffer buffer
-                       (insert (substitute-command-keys 
+                       (insert (substitute-command-keys
                                 gnus-uu-unshar-warning))
                        (goto-char (point-min))
                        (display-buffer buffer)
index 7cfd964e650fde6f8eac5fd38099813dd79d4210..bab176fe86ea42c2a60133f5c8c396688d946b2a 100644 (file)
@@ -4160,7 +4160,7 @@ The form is: Fwd: Subject, where Subject is the original subject of
 the message."
   (concat "Fwd: " subject))
 
-(defun message-make-forward-subject ()
+(defun message-make-forward-subject (&optional decoded)
   "Return a Subject header suitable for the message in the current buffer."
   (save-excursion
     (save-restriction
@@ -4169,7 +4169,9 @@ the message."
            (subject (message-fetch-field "Subject")))
        (setq subject
              (if subject
-                 (mail-decode-encoded-word-string subject)
+                 (if decoded 
+                     subject
+                   (mail-decode-encoded-word-string subject))
                ""))
        (if message-wash-forwarded-subjects
            (setq subject (message-wash-subject subject)))
@@ -4191,9 +4193,9 @@ the message."
 Optional NEWS will use news to forward instead of mail.
 Optional DIGEST will use digest to forward."
   (interactive "P")
-  (let* ((cur (current-buffer))
-        (subject (message-make-forward-subject))
-        art-beg)
+  (let ((cur (current-buffer))
+       (subject (message-make-forward-subject digest))
+       art-beg)
     (if news
        (message-news nil subject)
       (message-mail nil subject))