From 139fa208bb7826e2245b47c99fa8027f45b58943 Mon Sep 17 00:00:00 2001 From: ichikawa Date: Sat, 28 Nov 1998 05:45:57 +0000 Subject: [PATCH] Sync up with pgnus-0.55 --- ChangeLog | 6 +++ lisp/ChangeLog | 54 +++++++++++++++++++++++++++ lisp/gnus-art.el | 99 +++++++++++++++++++++++++++++++------------------- lisp/gnus-mailcap.el | 4 +- lisp/gnus-sum.el | 25 ++++++++++--- lisp/gnus.el | 4 +- lisp/lpath.el | 2 + lisp/message.el | 10 ++--- lisp/mm-decode.el | 33 +++++++++++++++-- lisp/mm-util.el | 12 +++++- lisp/mm-view.el | 43 +++++++++++++--------- lisp/nneething.el | 15 ++++++++ lisp/nntp.el | 14 +++---- lisp/nnvirtual.el | 1 + lisp/pop3.el | 2 +- texi/ChangeLog | 7 ++++ texi/gnus-ja.texi | 6 +-- texi/gnus.texi | 36 ++++++++++++++++-- texi/message-ja.texi | 6 +-- texi/message.texi | 6 +-- 20 files changed, 288 insertions(+), 97 deletions(-) diff --git a/ChangeLog b/ChangeLog index c42e3b0..1966a8b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +1998-11-28 Tatsuya Ichikawa + + * lisp/gnus.el (gnus-version-number): Update to 6.10.041. + + * Sync up with Pterodactyl Gnus 0.55. + 1998-11-26 Katsumi Yamaoka * lisp/gnus-msg.el (gnus-summary-supersede-article): Bind diff --git a/lisp/ChangeLog b/lisp/ChangeLog index b24c945..1c065cd 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,57 @@ +Fri Nov 27 12:26:10 1998 Lars Magne Ingebrigtsen + + * gnus.el: Pterodactyl Gnus v0.55 is released. + +1998-11-27 12:38:52 Lars Magne Ingebrigtsen + + * mm-view.el (mm-setup-w3): New function. + + * mm-decode.el (mm-content-id-get-contents): New function. + (mm-content-id-get-type): Ditto. + (mm-content-id-get-encoding): Ditto. + (mm-get-handle-by-content-id): Removed. + +1998-11-25 Colin Rafferty + + * message.el (message-generate-new-buffers): Fix tag. + +1998-11-25 10:43:28 Lars Magne Ingebrigtsen + + * message.el (message-buffer-name): Check for unique first. + + * gnus-art.el (gnus-unbuttonized-mime-type-p): use + gnus-inhibit-mime-unbuttonizing. + + * gnus-sum.el (t): Bind M-t. + (gnus-inhibit-unbuttonizing): New variable. + (gnus-summary-toggle-display-buttonized): New command. + + * gnus-art.el (gnus-display-mime): Select article window. + (article-strip-trailing-space): New command and keystroke. + + * nneething.el (nneething-include-files): New variable. + (nneething-create-mapping): Use it. + + * nntp.el (nntp-possibly-change-group): Use nntp-send-command. + + * nnvirtual.el (nnvirtual-request-update-mark): Only yodate + ayto-expirable marks. + +1998-11-24 21:00:02 Lars Magne Ingebrigtsen + + * gnus-art.el (gnus-mime-view-all-parts): Set buffer. + + * gnus-sum.el (gnus-summary-display-buttonized): Don't pass on + ARG. + + * gnus-art.el (gnus-article-mode-line-format): Doc fix. + +Tue Nov 24 14:57:41 1998 Shenghuo ZHU + + * mm-util.el (mm-binary-coding-system): New variable. + (mm-with-unibyte-buffer): Use mm-binary-coding-system. + * mm-decode.el (mm-display-external): Ditto. + Tue Nov 24 10:43:06 1998 Lars Magne Ingebrigtsen * gnus.el: Pterodactyl Gnus v0.54 is released. diff --git a/lisp/gnus-art.el b/lisp/gnus-art.el index 8d92c4f..8ccba9b 100644 --- a/lisp/gnus-art.el +++ b/lisp/gnus-art.el @@ -412,7 +412,12 @@ beginning of a line." (defcustom gnus-article-mode-line-format "Gnus: %g %S%m" "*The format specification for the article mode line. -See `gnus-summary-mode-line-format' for a closer description." +See `gnus-summary-mode-line-format' for a closer description. + +The following additional specs are available: + +%w The article washing status. +%m The number of MIME parts in the article." :type 'string :group 'gnus-article-various) @@ -1237,6 +1242,16 @@ always hide." (while (re-search-forward "^[ \t]+" nil t) (replace-match "" t t))))) +(defun article-strip-trailing-space () + "Remove all white space from the end of the lines in the article." + (interactive) + (save-excursion + (let ((inhibit-point-motion-hooks t) + buffer-read-only) + (article-goto-body) + (while (re-search-forward "[ \t]+$" nil t) + (replace-match "" t t))))) + (defun article-strip-blank-lines () "Strip leading, trailing and multiple blank lines." (interactive) @@ -1939,6 +1954,7 @@ If variable `gnus-use-long-file-name' is non-nil, it is article-strip-leading-blank-lines article-strip-multiple-blank-lines article-strip-leading-space + article-strip-trailing-space article-strip-blank-lines article-strip-all-blank-lines article-date-local @@ -2354,12 +2370,13 @@ If ALL-HEADERS is non-nil, no headers are hidden." (defun gnus-mime-view-all-parts () "View all the MIME parts." (interactive) - (gnus-article-check-buffer) - (let ((handles gnus-article-mime-handles) - (rfc2047-default-charset gnus-newsgroup-default-charset) - (mm-charset-iso-8859-1-forced gnus-newsgroup-iso-8859-1-forced)) - (while handles - (mm-display-part (pop handles))))) + (save-current-buffer + (set-buffer gnus-article-buffer) + (let ((handles gnus-article-mime-handles) + (rfc2047-default-charset gnus-newsgroup-default-charset) + (mm-charset-iso-8859-1-forced gnus-newsgroup-iso-8859-1-forced)) + (while handles + (mm-display-part (pop handles)))))) (defun gnus-mime-save-part () "Save the MIME part under point." @@ -2380,7 +2397,8 @@ If ALL-HEADERS is non-nil, no headers are hidden." (interactive) (gnus-article-check-buffer) (let ((data (get-text-property (point) 'gnus-data)) - (url-standalone-mode (not gnus-plugged))) + ;(url-standalone-mode (not gnus-plugged)) + ) (mm-interactively-view-part data))) (defun gnus-mime-copy-part (&optional handle) @@ -2407,7 +2425,7 @@ If ALL-HEADERS is non-nil, no headers are hidden." (gnus-article-check-buffer) (let* ((data (get-text-property (point) 'gnus-data)) (contents (mm-get-part data)) - (url-standalone-mode (not gnus-plugged)) + ;(url-standalone-mode (not gnus-plugged)) (b (point)) buffer-read-only) (if (mm-handle-undisplayer data) @@ -2425,7 +2443,7 @@ If ALL-HEADERS is non-nil, no headers are hidden." (interactive) (gnus-article-check-buffer) (let* ((handle (or handle (get-text-property (point) 'gnus-data))) - (url-standalone-mode (not gnus-plugged)) + ;(url-standalone-mode (not gnus-plugged)) (mm-user-display-methods nil) (rfc2047-default-charset gnus-newsgroup-default-charset) (mm-charset-iso-8859-1-forced gnus-newsgroup-iso-8859-1-forced)) @@ -2551,30 +2569,34 @@ If ALL-HEADERS is non-nil, no headers are hidden." (defun gnus-display-mime (&optional ihandles) "Insert MIME buttons in the buffer." - (let* ((handles (or ihandles (mm-dissect-buffer) (mm-uu-dissect))) - handle name type b e display) - (unless ihandles - ;; Top-level call; we clean up. - (mm-destroy-parts gnus-article-mime-handles) - (setq gnus-article-mime-handles handles - gnus-article-mime-handle-alist nil) - ;; We allow users to glean info from the handles. - (when gnus-article-mime-part-function - (gnus-mime-part-function handles))) - (when (and handles - (or (not (stringp (car handles))) - (cdr handles))) + (save-selected-window + (let ((window (get-buffer-window gnus-article-buffer))) + (when window + (select-window window))) + (let* ((handles (or ihandles (mm-dissect-buffer) (mm-uu-dissect))) + handle name type b e display) (unless ihandles - ;; Clean up for mime parts. - (article-goto-body) - (delete-region (point) (point-max))) - (if (stringp (car handles)) - (if (equal (car handles) "multipart/alternative") - (let ((id (1+ (length gnus-article-mime-handle-alist)))) - (push (cons id handles) gnus-article-mime-handle-alist) - (gnus-mime-display-alternative (cdr handles) nil nil id)) - (gnus-mime-display-mixed (cdr handles))) - (gnus-mime-display-single handles))))) + ;; Top-level call; we clean up. + (mm-destroy-parts gnus-article-mime-handles) + (setq gnus-article-mime-handles handles + gnus-article-mime-handle-alist nil) + ;; We allow users to glean info from the handles. + (when gnus-article-mime-part-function + (gnus-mime-part-function handles))) + (when (and handles + (or (not (stringp (car handles))) + (cdr handles))) + (unless ihandles + ;; Clean up for mime parts. + (article-goto-body) + (delete-region (point) (point-max))) + (if (stringp (car handles)) + (if (equal (car handles) "multipart/alternative") + (let ((id (1+ (length gnus-article-mime-handle-alist)))) + (push (cons id handles) gnus-article-mime-handle-alist) + (gnus-mime-display-alternative (cdr handles) nil nil id)) + (gnus-mime-display-mixed (cdr handles))) + (gnus-mime-display-single handles)))))) (defun gnus-mime-part-function (handles) (if (stringp (car handles)) @@ -2638,11 +2660,12 @@ If ALL-HEADERS is non-nil, no headers are hidden." (defun gnus-unbuttonized-mime-type-p (type) "Say whether TYPE is to be unbuttonized." - (catch 'found - (let ((types gnus-unbuttonized-mime-types)) - (while types - (when (string-match (pop types) type) - (throw 'found t)))))) + (unless gnus-inhibit-mime-unbuttonizing + (catch 'found + (let ((types gnus-unbuttonized-mime-types)) + (while types + (when (string-match (pop types) type) + (throw 'found t))))))) (defun gnus-article-insert-newline () "Insert a newline, but mark it as undeletable." diff --git a/lisp/gnus-mailcap.el b/lisp/gnus-mailcap.el index 923e5b0..c262922 100644 --- a/lisp/gnus-mailcap.el +++ b/lisp/gnus-mailcap.el @@ -412,7 +412,7 @@ If FORCE, re-parse even if already parsed." (downcase-region name-pos (point)) (setq name (buffer-substring name-pos (point))) (skip-chars-forward " \t\n") - (if (not (eq (or (char-after (point)) 0) ?=)) ; There is no value + (if (not (eq (char-after (point)) ?=)) ; There is no value (setq value nil) (skip-chars-forward " \t\n=") (setq val-pos (point)) @@ -426,7 +426,7 @@ If FORCE, re-parse even if already parsed." (error (goto-char (point-max))))) (while (not done) (skip-chars-forward "^;") - (if (eq (or (char-after (1- (point))) 0) ?\\ ) + (if (eq (char-after (1- (point))) ?\\ ) (progn (subst-char-in-region (1- (point)) (point) ?\\ ? ) (skip-chars-forward ";")) diff --git a/lisp/gnus-sum.el b/lisp/gnus-sum.el index bc37277..98b73fd 100644 --- a/lisp/gnus-sum.el +++ b/lisp/gnus-sum.el @@ -830,6 +830,7 @@ which it may alter in any way.") (defvar gnus-scores-exclude-files nil) (defvar gnus-page-broken nil) +(defvar gnus-inhibit-mime-unbuttonizing nil) (defvar gnus-original-article nil) (defvar gnus-article-internal-prepare-hook nil) @@ -1464,7 +1465,8 @@ increase the score of each group you read." "m" gnus-article-strip-multiple-blank-lines "a" gnus-article-strip-blank-lines "A" gnus-article-strip-all-blank-lines - "s" gnus-article-strip-leading-space) + "s" gnus-article-strip-leading-space + "e" gnus-article-strip-trailing-space) (gnus-define-keys (gnus-summary-help-map "H" gnus-summary-mode-map) "v" gnus-version @@ -1571,7 +1573,8 @@ increase the score of each group you read." ["Trailing" gnus-article-remove-trailing-blank-lines t] ["All of the above" gnus-article-strip-blank-lines t] ["All" gnus-article-strip-all-blank-lines t] - ["Leading space" gnus-article-strip-leading-space t]) + ["Leading space" gnus-article-strip-leading-space t] + ["Trailing space" gnus-article-strip-trailing-space t]) ["Overstrike" gnus-article-treat-overstrike t] ["Dumb quotes" gnus-article-treat-dumbquotes t] ["Emphasis" gnus-article-emphasize t] @@ -9202,12 +9205,22 @@ save those articles instead." ;;; MIME Commands ;;; -(defun gnus-summary-display-buttonized (&optional arg) - "Display the current buffer fully MIME-buttonized." - (interactive "P") +(defun gnus-summary-display-buttonized () + "Display the current article buffer fully MIME-buttonized." + (interactive) (require 'gnus-art) (let ((gnus-unbuttonized-mime-types nil)) - (gnus-summary-show-article arg))) + (gnus-summary-show-article))) + +(defun gnus-summary-toggle-display-buttonized () + "Toggle the buttonizing of the article buffer." + (interactive) + (require 'gnus-art) + (if (setq gnus-inhibit-mime-unbuttonizing + (not gnus-inhibit-mime-unbuttonizing)) + (let ((gnus-unbuttonized-mime-types nil)) + (gnus-summary-show-article)) + (gnus-summary-show-article))) (gnus-ems-redefine) diff --git a/lisp/gnus.el b/lisp/gnus.el index be2abe6..17c4c8c 100644 --- a/lisp/gnus.el +++ b/lisp/gnus.el @@ -259,10 +259,10 @@ is restarted, and sometimes reloaded." (defconst gnus-product-name "T-gnus" "Product name of this version of gnus.") -(defconst gnus-version-number "6.10.040" +(defconst gnus-version-number "6.10.041" "Version number for this version of gnus.") -(defconst gnus-original-version-number "0.54" +(defconst gnus-original-version-number "0.55" "Version number for this version of Gnus.") (defconst gnus-original-product-name "Pterodactyl Gnus" diff --git a/lisp/lpath.el b/lisp/lpath.el index 1c2f9be..439cdba 100644 --- a/lisp/lpath.el +++ b/lisp/lpath.el @@ -60,6 +60,8 @@ adaptive-fill-first-line-regexp adaptive-fill-regexp url-current-mime-headers)) (maybe-fbind '(color-instance-rgb-components + glyph-width annotation-glyph window-pixel-width glyph-height + window-pixel-height make-color-instance color-instance-name specifier-instance device-type device-class get-popup-menu-response event-object x-defined-colors read-color add-submenu set-font-family diff --git a/lisp/message.el b/lisp/message.el index ee36b7f..7b21aa8 100644 --- a/lisp/message.el +++ b/lisp/message.el @@ -330,7 +330,7 @@ should return the new buffer name." :group 'message-buffers :type '(choice (const :tag "off" nil) (const :tag "unique" unique) - (const :tag "unsuniqueent" unsent) + (const :tag "unsent" unsent) (function fun))) (defcustom message-kill-buffer-on-exit nil @@ -3639,10 +3639,6 @@ Headers already prepared in the buffer are not modified." (defun message-buffer-name (type &optional to group) "Return a new (unique) buffer name based on TYPE and TO." (cond - ;; Check whether `message-generate-new-buffers' is a function, - ;; and if so, call it. - ((message-functionp message-generate-new-buffers) - (funcall message-generate-new-buffers type to group)) ;; Generate a new buffer name The Message Way. ((eq message-generate-new-buffers 'unique) (generate-new-buffer-name @@ -3654,6 +3650,10 @@ Headers already prepared in the buffer are not modified." "") (if (and group (not (string= group ""))) (concat " on " group) "") "*"))) + ;; Check whether `message-generate-new-buffers' is a function, + ;; and if so, call it. + ((message-functionp message-generate-new-buffers) + (funcall message-generate-new-buffers type to group)) ((eq message-generate-new-buffers 'unsent) (generate-new-buffer-name (concat "*unsent " type diff --git a/lisp/mm-decode.el b/lisp/mm-decode.el index fef9441..916a82a 100644 --- a/lisp/mm-decode.el +++ b/lisp/mm-decode.el @@ -137,6 +137,8 @@ (error nil))) description)))) (when id + (when (string-match " *<\\(.*\\)> *" id) + (setq id (match-string 1 id))) (push (cons id result) mm-content-id-alist)) result)))) @@ -241,7 +243,7 @@ external if displayed external." (select-window win))) (switch-to-buffer (generate-new-buffer "*mm*"))) (buffer-disable-undo) - (mm-set-buffer-file-coding-system 'binary) + (mm-set-buffer-file-coding-system mm-binary-coding-system) (insert-buffer-substring cur) (message "Viewing with %s" method) (let ((mm (current-buffer))) @@ -264,8 +266,7 @@ external if displayed external." (setq file (expand-file-name (file-name-nondirectory filename) dir)) (setq file (make-temp-name (expand-file-name "mm." dir)))) - (write-region (point-min) (point-max) - file nil 'nomesg nil 'binary) + (write-region (point-min) (point-max) file nil 'nomesg) (message "Viewing with %s" method) (unwind-protect (setq process @@ -451,6 +452,8 @@ This overrides entries in the mailcap file." (when (or (not (file-exists-p file)) (yes-or-no-p (format "File %s already exists; overwrite? " file))) + ;; Now every coding system is 100% binary within mm-with-unibyte-buffer + ;; Is text still special? (let ((coding-system-for-write (if (equal "text" (car (split-string (car (mm-handle-type handle)) "/"))) @@ -526,6 +529,30 @@ This overrides entries in the mailcap file." (< (glyph-height (annotation-glyph image)) (window-pixel-height))))) +(defun url-cid (url) + (set-buffer (get-buffer-create url-working-buffer)) + (let ((content-type nil) + (encoding nil) + (part nil) + (data nil)) + (if (not (string-match "^cid:\\(.*\\)" url)) + (message "Malformed CID URL: %s" url) + (setq url (url-unhex-string (match-string 1 url)) + part (mm-get-content-id url)) + (if (not part) + (message "Unknown CID encounterred: %s" url) + (setq data (buffer-string nil nil (mm-handle-buffer part)) + content-type (mm-handle-type part) + encoding (symbol-name (mm-handle-encoding part))) + (if (= 0 (length content-type)) (setq content-type "text/plain")) + (if (= 0 (length encoding)) (setq encoding "8bit")) + (setq url-current-content-length (length data) + url-current-mime-type content-type + url-current-mime-encoding encoding + url-current-mime-headers (list (cons "content-type" content-type) + (cons "content-encoding" encoding))) + (and data (insert data)))))) + (provide 'mm-decode) ;; mm-decode.el ends here diff --git a/lisp/mm-util.el b/lisp/mm-util.el index 51ab0f0..29c65ac 100644 --- a/lisp/mm-util.el +++ b/lisp/mm-util.el @@ -24,6 +24,11 @@ ;;; Code: +(defvar mm-binary-coding-system + (if (string-match "XEmacs" emacs-version) + 'binary 'no-conversion) + "100% binary coding system.") + (defvar mm-default-coding-system nil "The default coding system to use.") @@ -42,8 +47,9 @@ (iso-8859-7 greek-iso8859-7) (iso-8859-8 hebrew-iso8859-8) (iso-8859-9 latin-iso8859-9) + (iso-2022-jp-2 japanese-jisx0208) (iso-2022-jp latin-jisx0201 - japanese-jisx0208-1978 japanese-jisx0208) + japanese-jisx0208-1978) (euc-kr korean-ksc5601) (cn-gb-2312 chinese-gb2312) (cn-big5 chinese-big5-1 chinese-big5-2) @@ -220,7 +226,9 @@ See also `with-temp-file' and `with-output-to-string'." (get-buffer-create (generate-new-buffer-name " *temp*"))) (unwind-protect (with-current-buffer ,temp-buffer - (let ((buffer-file-coding-system 'binary)) + (let ((buffer-file-coding-system mm-binary-coding-system) + (coding-system-for-read mm-binary-coding-system) + (coding-system-for-write mm-binary-coding-system)) ,@forms)) (and (buffer-name ,temp-buffer) (kill-buffer ,temp-buffer)))) diff --git a/lisp/mm-view.el b/lisp/mm-view.el index d7a94b1..d366bdc 100644 --- a/lisp/mm-view.el +++ b/lisp/mm-view.el @@ -39,17 +39,21 @@ (set-extent-property annot 'mm t) (set-extent-property annot 'duplicable t))) +(defvar mm-w3-setup nil) +(defun mm-setup-w3 () + (unless mm-w3-setup + (w3-do-setup) + (require 'url) + (require 'w3-vars) + (url-register-protocol 'cid nil 'url-identity-expander) + (setq mm-w3-setup t))) + (defun mm-inline-text (handle) (let ((type (cadr (split-string (car (mm-handle-type handle)) "/"))) text buffer-read-only) (cond ((equal type "plain") - (with-temp-buffer - (insert-buffer-substring (mm-handle-buffer handle)) - (mm-decode-content-transfer-encoding - (mm-handle-encoding handle) - (car (mm-handle-type handle))) - (setq text (buffer-string))) + (setq text (mm-get-part handle)) (let ((b (point))) (insert text) (save-restriction @@ -65,21 +69,24 @@ ,(set-marker (make-marker) (point-min)) ,(set-marker (make-marker) (point-max))))))))) ((equal type "html") - (let ((width (window-width))) + (mm-setup-w3) + (setq text (mm-get-part handle)) + (let ((b (point)) + (width (window-width))) (save-excursion - (w3-do-setup) - (mm-with-unibyte-buffer - (insert-buffer-substring (mm-handle-buffer handle)) - (mm-decode-content-transfer-encoding - (mm-handle-encoding handle) - (car (mm-handle-type handle))) - (require 'url) + (insert text) + (save-restriction + (narrow-to-region b (point)) (save-window-excursion - (require 'w3-vars) (let ((w3-strict-width width)) - (w3-region (point-min) (point-max))) - (setq text (buffer-string)))))) - (mm-insert-inline handle text)) + (w3-region (point-min) (point-max))))) + (mm-handle-set-undisplayer + handle + `(lambda () + (let (buffer-read-only) + (delete-region + ,(set-marker (make-marker) (point-min)) + ,(set-marker (make-marker) (point-max))))))))) ((or (equal type "enriched") (equal type "richtext")) (save-excursion diff --git a/lisp/nneething.el b/lisp/nneething.el index 8048849..61e8276 100644 --- a/lisp/nneething.el +++ b/lisp/nneething.el @@ -45,6 +45,11 @@ "Regexp saying what files to exclude from the group. If this variable is nil, no files will be excluded.") +(defvoo nneething-include-files nil + "Regexp saying what files to include in the group. +If this variable is non-nil, only files matching this regexp will be +included.") + ;;; Internal variables. @@ -211,6 +216,16 @@ If this variable is nil, no files will be excluded.") (setq files (cdr files))) (setq prev f)) (setq f (cdr f))))) + ;; Remove files not matching the inclusion regexp. + (when nneething-include-files + (let ((f files) + prev) + (while f + (if (not (string-match nneething-include-files (car f))) + (if prev (setcdr prev (cdr f)) + (setq files (cdr files))) + (setq prev f)) + (setq f (cdr f))))) ;; Remove deleted files from the map. (let ((map nneething-map) prev) diff --git a/lisp/nntp.el b/lisp/nntp.el index 32cb196..1025869 100644 --- a/lisp/nntp.el +++ b/lisp/nntp.el @@ -936,11 +936,12 @@ password contained in '~/.nntp-authinfo'." (nntp-inside-change-function t)) (setq nntp-process-callback nil) (save-excursion - (funcall callback (buffer-name - (get-buffer nntp-process-to-buffer))))))))) + (funcall callback + (buffer-name (get-buffer + nntp-process-to-buffer))))))))) - ;; any throw from after-change-functions will leave it - ;; set to nil. so we reset it here, if necessary. + ;; Any throw from after-change-functions will leave it + ;; set to nil. So we reset it here, if necessary. (when quit-flag (setq after-change-functions (list 'nntp-after-change-function-callback))))) @@ -985,10 +986,7 @@ password contained in '~/.nntp-authinfo'." (save-excursion (set-buffer (process-buffer (car entry))) (erase-buffer) - (nntp-send-string (car entry) (concat "GROUP " group)) - ;; allow for unexpected responses, since this can be called - ;; from a timer with quit inhibited - (nntp-wait-for-string "^[245].*\n") + (nntp-send-command "^[245].*\n" "GROUP" group) (setcar (cddr entry) group) (erase-buffer)))))) diff --git a/lisp/nnvirtual.el b/lisp/nnvirtual.el index b1d4119..1a676ea 100644 --- a/lisp/nnvirtual.el +++ b/lisp/nnvirtual.el @@ -287,6 +287,7 @@ to virtual article number.") ;; The component group might be a virtual group. (nmark (gnus-request-update-mark cgroup (cdr nart) mark))) (when (and nart + (memq mark gnus-auto-expirable-marks) (= mark nmark) (gnus-group-auto-expirable-p cgroup)) (setq mark gnus-expirable-mark))) diff --git a/lisp/pop3.el b/lisp/pop3.el index f13f28d..16eaa8c 100644 --- a/lisp/pop3.el +++ b/lisp/pop3.el @@ -166,7 +166,7 @@ Return the response string if optional second argument is non-nil." (setq match-end (point)) (goto-char pop3-read-point) (if (looking-at "-ERR") - (error (buffer-substring (point) (- match-end 2))) + (signal 'error (list (buffer-substring (point) (- match-end 2)))) (if (not (looking-at "+OK")) (progn (setq pop3-read-point match-end) nil) (setq pop3-read-point match-end) diff --git a/texi/ChangeLog b/texi/ChangeLog index 14c28f6..856010a 100644 --- a/texi/ChangeLog +++ b/texi/ChangeLog @@ -1,3 +1,10 @@ +1998-11-25 10:56:08 Lars Magne Ingebrigtsen + + * gnus.texi (To From Newsgroups): Addition. + (Anything Groups): Addition. + (Article Washing): Addition. + (MIME Commands): Addition. + 1998-11-19 04:05:15 Lars Magne Ingebrigtsen * gnus.texi (Really Various Summary Commands): Addition. diff --git a/texi/gnus-ja.texi b/texi/gnus-ja.texi index 80a510a..24b2f0a 100644 --- a/texi/gnus-ja.texi +++ b/texi/gnus-ja.texi @@ -1,7 +1,7 @@ \input texinfo @c -*-texinfo-*- @setfilename gnus-ja -@settitle Semi-gnus 6.10.040 Manual +@settitle Semi-gnus 6.10.041 Manual @synindex fn cp @synindex vr cp @synindex pg cp @@ -345,7 +345,7 @@ into another language, under the above conditions for modified versions. @tex @titlepage -@title Semi-gnus 6.10.040 Manual +@title Semi-gnus 6.10.041 Manual @author by Lars Magne Ingebrigtsen @author by members of Semi-gnus mailing-list @@ -399,7 +399,7 @@ Semi-gnus $B$O!"Bg$-$J3($,F~$C$F$$$?$j$5$^$6$^$J7A<0$rMQ$$$?$j$7$F$$$k$A$g$C(B $B$J8@8l7w$r:9JL$7$^$;$s!#$"$"!"%/%j%s%4%s$NJ}$O(B Unicode Next Generation$B$r(B $B$*BT$A$/$@$5$$!#(B -$B$3$N@bL@=q$O(B Semi-gnus 6.10.040 $B$KBP1~$7$^$9!#(B +$B$3$N@bL@=q$O(B Semi-gnus 6.10.041 $B$KBP1~$7$^$9!#(B @end ifinfo diff --git a/texi/gnus.texi b/texi/gnus.texi index 77ab99c..4336903 100644 --- a/texi/gnus.texi +++ b/texi/gnus.texi @@ -1,7 +1,7 @@ \input texinfo @c -*-texinfo-*- @setfilename gnus -@settitle Semi-gnus 6.10.040 Manual +@settitle Semi-gnus 6.10.041 Manual @synindex fn cp @synindex vr cp @synindex pg cp @@ -318,7 +318,7 @@ into another language, under the above conditions for modified versions. @tex @titlepage -@title Semi-gnus 6.10.040 Manual +@title Semi-gnus 6.10.041 Manual @author by Lars Magne Ingebrigtsen @page @@ -361,7 +361,7 @@ internationalization/localization and multiscript features based on MULE API. So Semi-gnus does not discriminate various language communities. Oh, if you are a Klingon, please wait Unicode Next Generation. -This manual corresponds to Semi-gnus 6.10.040. +This manual corresponds to Semi-gnus 6.10.041. @end ifinfo @@ -3483,6 +3483,17 @@ In summary, you'd typically do something like the following: "Your Name Here") @end lisp +Now, this is mostly useful for mail groups, where you have control over +the @sc{nov} files that are created. However, if you can persuade your +nntp admin to add: + +@example +Newsgroups:full +@end example + +to the end of her @file{overview.fmt} file, then you can use that just +as you would the extra headers from the mail groups. + @node Summary Buffer Mode Line @subsection Summary Buffer Mode Line @@ -6682,6 +6693,12 @@ Remove all blank lines Remove all white space from the beginning of all lines of the article body (@code{gnus-article-strip-leading-space}). +@item W E e +@kindex W E e (Summary) +@findex gnus-article-strip-trailing-space +Remove all white space from the end of all lines of the article +body (@code{gnus-article-strip-trailing-space}). + @end table @xref{Customizing Articles} for how to wash articles automatically. @@ -6910,6 +6927,12 @@ signature after all. @cindex MIME decoding @table @kbd +@item M-tgnus-summary-display-buttonized +@kindex M-t (Summary) +@findex gnus-summary-display-buttonized +Toggle the buttonized display of the article buffer +(@code{gnus-summary-toggle-display-buttonized}). + @item W M w @kindex W M w (Summary) Decode RFC2047-encoded words in the article headers @@ -8288,6 +8311,8 @@ extension: The @dfn{wash status} of the article. This is a short string with one character for each possible article wash operation that may have been performed. +@item m +The number of @sc{mime} parts in the article. @end table @vindex gnus-break-pages @@ -10774,6 +10799,11 @@ in this directory, which defaults to @file{~/.nneething/}. All files that match this regexp will be ignored. Nice to use to exclude auto-save files and the like, which is what it does by default. +@item nneething-include-files +@vindex nneething-include-files +Regexp saying what files to include in the group. If this variable is +non-@code{nil}, only files matching this regexp will be included. + @item nneething-map-file @vindex nneething-map-file Name of the map files. diff --git a/texi/message-ja.texi b/texi/message-ja.texi index c7e3e07..764763e 100644 --- a/texi/message-ja.texi +++ b/texi/message-ja.texi @@ -1,7 +1,7 @@ \input texinfo @c -*-texinfo-*- @setfilename message-ja -@settitle Message 6.10.040 Manual +@settitle Message 6.10.041 Manual @synindex fn cp @synindex vr cp @synindex pg cp @@ -60,7 +60,7 @@ into another language, under the above conditions for modified versions. @tex @titlepage -@title Message 6.10.040 Manual +@title Message 6.10.041 Manual @author by Lars Magne Ingebrigtsen @translated by members of Semi-gnus mailing-list @@ -112,7 +112,7 @@ Gnus $B$NA4$F$N%a%C%;!<%8$N:n@.(B ($B%a!<%k$H%K%e!<%9$NN>J}(B) $B$O%a%C%;!< * Key Index:: $B%a%C%;!<%8%b!<%I%-!<$N0lMw!#(B @end menu -$B$3$N%^%K%e%"%k$O(B Message 6.10.040 $B$KBP1~$7$^$9!#(BMessage $B$O$3$N%^%K%e%"%k$H(B +$B$3$N%^%K%e%"%k$O(B Message 6.10.041 $B$KBP1~$7$^$9!#(BMessage $B$O$3$N%^%K%e%"%k$H(B $BF1$8HGHV9f$N(B Gnus $B$NG[I[$H6&$KG[I[$5$l$^$9!#(B diff --git a/texi/message.texi b/texi/message.texi index 8727d50..ff6fe14 100644 --- a/texi/message.texi +++ b/texi/message.texi @@ -1,7 +1,7 @@ \input texinfo @c -*-texinfo-*- @setfilename message -@settitle Message 6.10.040 Manual +@settitle Message 6.10.041 Manual @synindex fn cp @synindex vr cp @synindex pg cp @@ -42,7 +42,7 @@ into another language, under the above conditions for modified versions. @tex @titlepage -@title Message 6.10.040 Manual +@title Message 6.10.041 Manual @author by Lars Magne Ingebrigtsen @page @@ -83,7 +83,7 @@ Message mode buffers. * Key Index:: List of Message mode keys. @end menu -This manual corresponds to Message 6.10.040. Message is +This manual corresponds to Message 6.10.041. Message is distributed with the Gnus distribution bearing the same version number as this manual. -- 1.7.10.4