From 9e55d90f33d181194f5e1799b895fc3289152490 Mon Sep 17 00:00:00 2001 From: ichikawa Date: Thu, 3 Dec 1998 15:28:18 +0000 Subject: [PATCH] Importing pgnus-0.62 --- lisp/ChangeLog | 46 +++++++++++++++++++ lisp/gnus-art.el | 19 ++++---- lisp/gnus-msg.el | 9 ++++ lisp/gnus-picon.el | 12 +++-- lisp/gnus-sum.el | 5 ++ lisp/gnus.el | 2 +- lisp/mailcap.el | 2 +- lisp/mm-decode.el | 8 ++++ lisp/mm-encode.el | 1 + lisp/mm-view.el | 8 +--- lisp/mml.el | 10 ++-- lisp/nntp.el | 4 +- make.bat | 128 ++++++++++++++++++++++++++-------------------------- texi/ChangeLog | 9 ++++ texi/gnus.texi | 25 ++++++++-- texi/message.texi | 6 +-- 16 files changed, 196 insertions(+), 98 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 0bb8429..3381321 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,49 @@ +Thu Dec 3 12:53:58 1998 Lars Magne Ingebrigtsen + + * gnus.el: Pterodactyl Gnus v0.62 is released. + +1998-12-03 13:38:36 Lars Magne Ingebrigtsen + + * gnus-art.el (gnus-mime-view-all-parts): Work with multiparts. + +1998-12-03 Hrvoje Niksic + + * mm-view.el (mm-inline-text): Use `point-min-marker' and + `point-max-marker'. + +1998-12-03 13:22:57 Lars Magne Ingebrigtsen + + * mailcap.el (mailcap-mime-extensions): Use image/xpm for xpms. + + * gnus-art.el (gnus-mime-display-single): Check for attachment + before other tests. + +1998-12-03 Didier Verna + + * gnus-msg.el (gnus-configure-posting-styles): find a + posting-style entry in the group parameters, if any, and honor it + at the end. + +1998-12-03 13:03:37 Felix Lee + + * nntp.el (nntp-after-change-function): Fix. + +1998-12-03 12:44:30 Mike McEwan + + * mml.el (mml-generate-mime-1): Insert literally. + +1998-12-03 00:23:17 Lars Magne Ingebrigtsen + + * mml.el (mml-insert-mime-headers): Removed debug. + +1998-12-02 22:22:03 Lars Magne Ingebrigtsen + + * gnus-sum.el (gnus-summary-show-article): Destroy parts when + prefixed. + + * mm-encode.el (mm-content-transfer-encoding-defaults): Default + application/emacs-lisp to 8bit. + Wed Dec 2 20:24:27 1998 Lars Magne Ingebrigtsen * gnus.el: Pterodactyl Gnus v0.61 is released. diff --git a/lisp/gnus-art.el b/lisp/gnus-art.el index e6a757f..0144dee 100644 --- a/lisp/gnus-art.el +++ b/lisp/gnus-art.el @@ -2349,16 +2349,17 @@ If ALL-HEADERS is non-nil, no headers are hidden." (goto-char (posn-point pos)) (funcall response)))) -(defun gnus-mime-view-all-parts () +(defun gnus-mime-view-all-parts (&optional handles) "View all the MIME parts." (interactive) (save-current-buffer (set-buffer gnus-article-buffer) - (let ((handles gnus-article-mime-handles) + (let ((handles (or 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)))))) + (if (stringp (car handles)) + (gnus-mime-view-all-parts (cdr handles)) + (mapcar 'mm-display-part handles))))) (defun gnus-mime-save-part () "Save the MIME part under point." @@ -2635,13 +2636,13 @@ If ALL-HEADERS is non-nil, no headers are hidden." (while ignored (when (string-match (pop ignored) type) (throw 'ignored nil))) - (if (and (mm-automatic-display-p type) - (or (mm-inlinable-part-p type) - (mm-automatic-external-display-p type)) - (setq not-attachment + (if (and (setq not-attachment (or (not (mm-handle-disposition handle)) (equal (car (mm-handle-disposition handle)) - "inline")))) + "inline"))) + (mm-automatic-display-p type) + (or (mm-inlinable-part-p type) + (mm-automatic-external-display-p type))) (setq display t) (when (equal (car (split-string type "/")) "text") diff --git a/lisp/gnus-msg.el b/lisp/gnus-msg.el index 09a3f47..2fed927 100644 --- a/lisp/gnus-msg.el +++ b/lisp/gnus-msg.el @@ -1058,6 +1058,15 @@ this is a reply." (gnus-newsgroup-name (or gnus-newsgroup-name "")) style match variable attribute value value-value) (make-local-variable 'gnus-message-style-insertions) + ;; If the group has a posting-style parameter, add it at the end with a + ;; regexp matching everything, to be sure it takes precedence over all + ;; the others. + (unless (eq 0 (length gnus-newsgroup-name)) + (let ((tmp-style (gnus-group-find-parameter gnus-newsgroup-name + 'posting-style t))) + (and tmp-style + (setq styles (append styles (list (cons ".*" tmp-style))))) + )) ;; Go through all styles and look for matches. (while styles (setq style (pop styles) diff --git a/lisp/gnus-picon.el b/lisp/gnus-picon.el index fe7caef..9ccbf4e 100644 --- a/lisp/gnus-picon.el +++ b/lisp/gnus-picon.el @@ -343,11 +343,13 @@ To use: (setq gnus-article-x-face-command 'gnus-picons-display-x-face)" (or (null gnus-picons-group-excluded-groups) (not (string-match gnus-picons-group-excluded-groups gnus-newsgroup-name)))) - (let ((groups - (if gnus-picons-display-article-move-p - (list (gnus-group-real-name gnus-newsgroup-name)) - (split-string (mail-fetch-field "newsgroups") ","))) - group) + (let* ((newsgroups (mail-fetch-field "newsgroups")) + (groups + (if (or gnus-picons-display-article-move-p + (not newsgroups))(mail-fetch-field "newsgroups") + (list (gnus-group-real-name gnus-newsgroup-name)) + (split-string newsgroups ","))) + group) (save-excursion (gnus-picons-prepare-for-annotations) (while (setq group (pop groups)) diff --git a/lisp/gnus-sum.el b/lisp/gnus-sum.el index 77b9bd3..d32bf79 100644 --- a/lisp/gnus-sum.el +++ b/lisp/gnus-sum.el @@ -6994,6 +6994,11 @@ article massaging functions being run." gnus-display-mime-function gnus-break-pages gnus-visual) + ;; Destroy any MIME parts. + (when (gnus-buffer-live-p gnus-article-buffer) + (save-excursion + (set-buffer gnus-article-buffer) + (mm-destroy-parts gnus-article-mime-handles))) (gnus-summary-select-article nil 'force))) (gnus-summary-goto-subject gnus-current-article) (gnus-summary-position-point)) diff --git a/lisp/gnus.el b/lisp/gnus.el index 015498e..879d239 100644 --- a/lisp/gnus.el +++ b/lisp/gnus.el @@ -254,7 +254,7 @@ is restarted, and sometimes reloaded." :link '(custom-manual "(gnus)Exiting Gnus") :group 'gnus) -(defconst gnus-version-number "0.61" +(defconst gnus-version-number "0.62" "Version number for this version of Gnus.") (defconst gnus-version (format "Pterodactyl Gnus v%s" gnus-version-number) diff --git a/lisp/mailcap.el b/lisp/mailcap.el index 9a8307e..1145c64 100644 --- a/lisp/mailcap.el +++ b/lisp/mailcap.el @@ -749,7 +749,7 @@ this type is returned." (".wav" . "audio/x-wav") (".wrl" . "x-world/x-vrml") (".xbm" . "image/xbm") - (".xpm" . "image/x-pixmap") + (".xpm" . "image/xpm") (".xwd" . "image/windowdump") (".zip" . "application/zip") (".ai" . "application/postscript") diff --git a/lisp/mm-decode.el b/lisp/mm-decode.el index 6f12485..06d6e29 100644 --- a/lisp/mm-decode.el +++ b/lisp/mm-decode.el @@ -67,6 +67,8 @@ (eq (device-type) 'x))) ("image/xpm" mm-inline-image (and window-system (featurep 'xpm))) + ("image/x-pixmap" mm-inline-image + (and window-system (featurep 'xpm))) ("image/bmp" mm-inline-image (and window-system (featurep 'bmp))) ("text/plain" mm-inline-text t) @@ -543,6 +545,12 @@ This overrides entries in the mailcap file." "Return an image instance based on HANDLE." (let ((type (cadr (split-string (car (mm-handle-type handle)) "/"))) spec) + ;; Allow some common translations. + (setq type + (cond + ((equal type "x-pixmap") + "xpm") + (t type))) (or (mm-handle-cache handle) (mm-with-unibyte-buffer (insert-buffer-substring (mm-handle-buffer handle)) diff --git a/lisp/mm-encode.el b/lisp/mm-encode.el index 30bc8cd..6db01ca 100644 --- a/lisp/mm-encode.el +++ b/lisp/mm-encode.el @@ -29,6 +29,7 @@ (defvar mm-content-transfer-encoding-defaults '(("text/.*" quoted-printable) + ("application/emacs-lisp" 8bit) (".*" base64)) "Alist of regexps that match MIME types and their encodings.") diff --git a/lisp/mm-view.el b/lisp/mm-view.el index 64abdc3..ccc513c 100644 --- a/lisp/mm-view.el +++ b/lisp/mm-view.el @@ -66,9 +66,7 @@ handle `(lambda () (let (buffer-read-only) - (delete-region - ,(set-marker (make-marker) (point-min)) - ,(set-marker (make-marker) (point-max))))))))) + (delete-region ,(point-min-marker) ,(point-max-marker)))))))) ((equal type "html") (mm-setup-w3) (setq text (mm-get-part handle)) @@ -89,9 +87,7 @@ (remove-specifier (face-property 'default prop) (current-buffer))) '(background background-pixmap foreground)) - (delete-region - ,(set-marker (make-marker) (point-min)) - ,(set-marker (make-marker) (point-max))))))))) + (delete-region ,(point-min-marker) ,(point-max-marker)))))))) ((or (equal type "enriched") (equal type "richtext")) (save-excursion diff --git a/lisp/mml.el b/lisp/mml.el index 5184ace..1e2f6ab 100644 --- a/lisp/mml.el +++ b/lisp/mml.el @@ -102,7 +102,10 @@ (eq charset current))) ;; The initial charset was ascii. ((eq current 'ascii) - (setq current charset)) + (setq current charset + space nil + newline nil + paragraph nil)) ;; We have a change in charsets. (t (push (append @@ -214,7 +217,7 @@ (setq coded (buffer-string))) (mm-with-unibyte-buffer (if (setq filename (cdr (assq 'filename cont))) - (insert-file-contents filename) + (insert-file-contents-literally filename) (insert (cdr (assq 'contents cont)))) (setq encoding (mm-encode-buffer type) coded (buffer-string)))) @@ -313,9 +316,8 @@ cont '(name access-type expiration size permission))) (not (equal type "text/plain"))) (when (consp charset) - (debug) (error - "Can't encode a part with several charsets. Insert a <#part>.")) + "Can't encode a part with several charsets.")) (insert "Content-Type: " type) (when charset (insert "; " (mail-header-encode-parameter diff --git a/lisp/nntp.el b/lisp/nntp.el index f6d06d3..9539b46 100644 --- a/lisp/nntp.el +++ b/lisp/nntp.el @@ -945,7 +945,9 @@ password contained in '~/.nntp-authinfo'." ;; we only care about insertions at eob (when (and (eq 0 len) (eq (point-max) end)) (save-match-data - (nntp-async-trigger (get-buffer-process (current-buffer))))) + (let ((proc (get-buffer-process (current-buffer)))) + (when proc + (nntp-async-trigger proc))))) ;; any throw from after-change-functions will leave it ;; set to nil. so we reset it here, if necessary. (when quit-flag diff --git a/make.bat b/make.bat index b203277..c3c9e2e 100755 --- a/make.bat +++ b/make.bat @@ -1,64 +1,64 @@ -@echo off - -rem Written by David Charlap - -rem There are two catches, however. The emacs.bat batch file may not exist -rem in all distributions. It is part of the Voelker build of Emacs 19.34 -rem (http://www.cs.washington.edu/homes/voelker/ntemacs.html). If the user -rem installs Gnus with some other build, he may have to replace calls to -rem %1\emacs.bat with something else. -rem -rem Also, the emacs.bat file that Voelker ships does not accept more than 9 -rem parameters, so the attempts to compile the .texi files will fail. To -rem fix that (at least on NT. I don't know about Win95), the following -rem change should be made to emacs.bat: -rem -rem %emacs_dir%\bin\emacs.exe %1 %2 %3 %4 %5 %6 %7 %8 %9 -rem -rem should become -rem -rem %emacs_dir%\bin\emacs.exe %* -rem -rem which will allow the batch file to accept an unlimited number of -rem parameters. - -rem Clear PWD so emacs doesn't get confused -set GNUS_PWD_SAVE=%PWD% -set PWD= - -if "%1" == "" goto usage - -cd lisp -call %1\bin\emacs.bat -batch -q -no-site-file -l ./dgnushack.el -f dgnushack-compile -if not "%2" == "copy" goto info -copy *.el* %1\lisp - -:info -cd ..\texi -call %1\bin\emacs.bat -batch -q -no-site-file gnus.texi -l texinfmt -f texinfo-every-node-update -f texinfo-format-buffer -f save-buffer -call %1\bin\emacs.bat -batch -q -no-site-file message.texi -l texinfmt -f texinfo-every-node-update -f texinfo-format-buffer -f save-buffer -if not "%2" == "copy" goto done -copy gnus %1\info -copy gnus-?? %1\info -copy message %1\info - -:etc -cd ..\etc -copy gnus-tut.txt %1\etc - -:done -cd .. -goto end - -:usage -echo Usage: make ^ [copy] -echo. -echo where: ^ is the directory you installed emacs in -echo eg. d:\emacs\19.34 -echo copy indicates that the compiled files should be copied to your -echo emacs lisp, info, and etc directories - -rem Restore PWD so whoever called this batch file doesn't get confused -set PWD=%GNUS_PWD_SAVE% -set GNUS_PWD_SAVE= -:end +@echo off + +rem Written by David Charlap + +rem There are two catches, however. The emacs.bat batch file may not exist +rem in all distributions. It is part of the Voelker build of Emacs 19.34 +rem (http://www.cs.washington.edu/homes/voelker/ntemacs.html). If the user +rem installs Gnus with some other build, he may have to replace calls to +rem %1\emacs.bat with something else. +rem +rem Also, the emacs.bat file that Voelker ships does not accept more than 9 +rem parameters, so the attempts to compile the .texi files will fail. To +rem fix that (at least on NT. I don't know about Win95), the following +rem change should be made to emacs.bat: +rem +rem %emacs_dir%\bin\emacs.exe %1 %2 %3 %4 %5 %6 %7 %8 %9 +rem +rem should become +rem +rem %emacs_dir%\bin\emacs.exe %* +rem +rem which will allow the batch file to accept an unlimited number of +rem parameters. + +rem Clear PWD so emacs doesn't get confused +set GNUS_PWD_SAVE=%PWD% +set PWD= + +if "%1" == "" goto usage + +cd lisp +call %1\bin\emacs.bat -batch -q -no-site-file -l ./dgnushack.el -f dgnushack-compile +if not "%2" == "copy" goto info +copy *.el* %1\lisp + +:info +cd ..\texi +call %1\bin\emacs.bat -batch -q -no-site-file gnus.texi -l texinfmt -f texinfo-every-node-update -f texinfo-format-buffer -f save-buffer +call %1\bin\emacs.bat -batch -q -no-site-file message.texi -l texinfmt -f texinfo-every-node-update -f texinfo-format-buffer -f save-buffer +if not "%2" == "copy" goto done +copy gnus %1\info +copy gnus-?? %1\info +copy message %1\info + +:etc +cd ..\etc +copy gnus-tut.txt %1\etc + +:done +cd .. +goto end + +:usage +echo Usage: make ^ [copy] +echo. +echo where: ^ is the directory you installed emacs in +echo eg. d:\emacs\19.34 +echo copy indicates that the compiled files should be copied to your +echo emacs lisp, info, and etc directories + +rem Restore PWD so whoever called this batch file doesn't get confused +set PWD=%GNUS_PWD_SAVE% +set GNUS_PWD_SAVE= +:end diff --git a/texi/ChangeLog b/texi/ChangeLog index 6db832d..e9ea709 100644 --- a/texi/ChangeLog +++ b/texi/ChangeLog @@ -1,3 +1,12 @@ +1998-12-03 13:34:48 James Troup + + * gnus.texi (MIME Commands): Typo fix. + +1998-12-03 Didier Verna + + * gnus.texi (Group Parameters): update for the posting-style group + parameter. + 1998-12-02 01:04:22 Lars Magne Ingebrigtsen * gnus.texi (Emacsen): Addition. diff --git a/texi/gnus.texi b/texi/gnus.texi index fb0d0f1..e67cf14 100644 --- a/texi/gnus.texi +++ b/texi/gnus.texi @@ -1,7 +1,7 @@ \input texinfo @c -*-texinfo-*- @setfilename gnus -@settitle Pterodactyl Gnus 0.61 Manual +@settitle Pterodactyl Gnus 0.62 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 Pterodactyl Gnus 0.61 Manual +@title Pterodactyl Gnus 0.62 Manual @author by Lars Magne Ingebrigtsen @page @@ -354,7 +354,7 @@ can be gotten by any nefarious means you can think of---@sc{nntp}, local spool or your mbox file. All at the same time, if you want to push your luck. -This manual corresponds to Pterodactyl Gnus 0.61. +This manual corresponds to Pterodactyl Gnus 0.62. @end ifinfo @@ -2165,6 +2165,23 @@ something like @code{(dummy-variable (ding))} in the parameters of that group. @code{dummy-variable} will be set to the result of the @code{(ding)} form, but who cares? +@item posting-style +You can store additional posting style information for this group only +here (@pxref{Posting Styles}). The format is that of an entry in the +@code{gnus-posting-styles} alist, except that there's no regexp matching +the group name (of course). Style elements in this group parameter will +take precedence over the ones found in @code{gnus-posting-styles}. + +For instance, if you want a funky name and signature in this group only, +instead of hacking @code{gnus-posting-styles}, you could put something +like this in the group parameters: + +@example +(posting-style + (name "Funky Name") + (signature "Funky Signature")) +@end example + @end table Use the @kbd{G p} command to edit group parameters of a group. You @@ -6922,7 +6939,7 @@ signature after all. @cindex MIME decoding @table @kbd -@item M-tgnus-summary-display-buttonized +@item M-t @kindex M-t (Summary) @findex gnus-summary-display-buttonized Toggle the buttonized display of the article buffer diff --git a/texi/message.texi b/texi/message.texi index b9fac90..17f53c0 100644 --- a/texi/message.texi +++ b/texi/message.texi @@ -1,7 +1,7 @@ \input texinfo @c -*-texinfo-*- @setfilename message -@settitle Pterodactyl Message 0.61 Manual +@settitle Pterodactyl Message 0.62 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 Pterodactyl Message 0.61 Manual +@title Pterodactyl Message 0.62 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 Pterodactyl Message 0.61. Message is +This manual corresponds to Pterodactyl Message 0.62. Message is distributed with the Gnus distribution bearing the same version number as this manual. -- 1.7.10.4