*** pub/pgnus/lisp/gnus-art.el Mon Aug 31 23:03:36 1998 --- pgnus/lisp/gnus-art.el Tue Sep 1 10:28:25 1998 *************** *** 399,405 **** :type 'regexp :group 'gnus-article-various) ! (defcustom gnus-article-mode-line-format "Gnus: %%b %S" "*The format specification for the article mode line. See `gnus-summary-mode-line-format' for a closer description." :type 'string --- 399,405 ---- :type 'regexp :group 'gnus-article-various) ! (defcustom gnus-article-mode-line-format "Gnus: %g %S" "*The format specification for the article mode line. See `gnus-summary-mode-line-format' for a closer description." :type 'string *************** *** 955,975 **** buffer-read-only) (rfc2047-decode-region (point-min) (point-max))))) ! (defun gnus-article-decode-charset () ! "Decode charset-encoded text in the article." ! (interactive) (save-excursion (set-buffer gnus-article-buffer) (let* ((inhibit-point-motion-hooks t) ! (ct (message-fetch-field "Content-Type")) ! (cte (message-fetch-field "Content-Transfer-Encoding")) ! (charset (and ct (mm-content-type-charset ct))) buffer-read-only) (save-restriction (goto-char (point-min)) (search-forward "\n\n" nil 'move) (narrow-to-region (point) (point-max)) ! (mm-decode-body charset (and cte (intern (downcase cte)))))))) (defalias 'gnus-decode-rfc1522 'article-decode-rfc1522) (defalias 'gnus-article-decode-rfc1522 'article-decode-rfc1522) --- 955,984 ---- buffer-read-only) (rfc2047-decode-region (point-min) (point-max))))) ! (defun gnus-article-decode-charset (&optional prompt) ! "Decode charset-encoded text in the article. ! If PROMPT (the prefix), prompt for a coding system to use." ! (interactive "P") (save-excursion (set-buffer gnus-article-buffer) (let* ((inhibit-point-motion-hooks t) ! (ct (message-fetch-field "Content-Type" t)) ! (cte (message-fetch-field "Content-Transfer-Encoding" t)) ! (charset (cond ! (prompt ! (mm-read-coding-system "Charset to decode: ")) ! (ct ! (mm-content-type-charset ct)) ! (gnus-newsgroup-name ! (gnus-group-find-parameter ! gnus-newsgroup-name 'charset)))) buffer-read-only) (save-restriction (goto-char (point-min)) (search-forward "\n\n" nil 'move) (narrow-to-region (point) (point-max)) ! (mm-decode-body ! charset (and cte (intern (downcase (gnus-strip-whitespace cte))))))))) (defalias 'gnus-decode-rfc1522 'article-decode-rfc1522) (defalias 'gnus-article-decode-rfc1522 'article-decode-rfc1522) *** pub/pgnus/lisp/gnus-sum.el Mon Aug 31 22:15:46 1998 --- pgnus/lisp/gnus-sum.el Tue Sep 1 10:28:27 1998 *************** *** 504,510 **** :group 'gnus-threading :type 'string) ! (defcustom gnus-summary-mode-line-format "Gnus: %%b [%A] %Z" "*The format specification for the summary mode line. It works along the same lines as a normal formatting string, with some simple extensions: --- 504,510 ---- :group 'gnus-threading :type 'string) ! (defcustom gnus-summary-mode-line-format "Gnus: %g [%A] %Z" "*The format specification for the summary mode line. It works along the same lines as a normal formatting string, with some simple extensions: *** pub/pgnus/lisp/gnus.el Mon Aug 31 23:03:36 1998 --- pgnus/lisp/gnus.el Tue Sep 1 10:28:28 1998 *************** *** 250,256 **** :link '(custom-manual "(gnus)Exiting Gnus") :group 'gnus) ! (defconst gnus-version-number "0.12" "Version number for this version of Gnus.") (defconst gnus-version (format "Pterodactyl Gnus v%s" gnus-version-number) --- 250,256 ---- :link '(custom-manual "(gnus)Exiting Gnus") :group 'gnus) ! (defconst gnus-version-number "0.13" "Version number for this version of Gnus.") (defconst gnus-version (format "Pterodactyl Gnus v%s" gnus-version-number) *** pub/pgnus/lisp/mm-bodies.el Mon Aug 31 23:03:36 1998 --- pgnus/lisp/mm-bodies.el Tue Sep 1 10:28:28 1998 *************** *** 94,100 **** (setq mule-charset (mm-charset-to-coding-system charset)) (not (mm-coding-system-equal buffer-file-coding-system mule-charset))) ! (mm-decode-coding-region (point-min) (point-max) charset)))))) (provide 'mm-bodies) --- 94,100 ---- (setq mule-charset (mm-charset-to-coding-system charset)) (not (mm-coding-system-equal buffer-file-coding-system mule-charset))) ! (mm-decode-coding-region (point-min) (point-max) mule-charset)))))) (provide 'mm-bodies) *** pub/pgnus/lisp/mm-util.el Mon Aug 31 22:15:47 1998 --- pgnus/lisp/mm-util.el Tue Sep 1 10:28:28 1998 *************** *** 170,176 **** (defun mm-content-type-charset (header) "Return the charset parameter from HEADER." (when (string-match "charset *= *\"? *\\([-0-9a-zA-Z_]+\\)\"? *$" header) ! (intern (match-string 1 header)))) (provide 'mm-util) --- 170,182 ---- (defun mm-content-type-charset (header) "Return the charset parameter from HEADER." (when (string-match "charset *= *\"? *\\([-0-9a-zA-Z_]+\\)\"? *$" header) ! (intern (downcase (match-string 1 header))))) ! ! (defun mm-read-coding-system (prompt) ! "Prompt the user for a coding system." ! (completing-read ! prompt (mapcar (lambda (s) (list (symbol-name (car s)))) ! mm-mime-mule-charset-alist))) (provide 'mm-util) *** pub/pgnus/lisp/ChangeLog Mon Aug 31 23:03:36 1998 --- pgnus/lisp/ChangeLog Tue Sep 1 10:28:25 1998 *************** *** 1,3 **** --- 1,32 ---- + Tue Sep 1 10:29:33 1998 Lars Magne Ingebrigtsen + + * gnus.el: Pterodactyl Gnus v0.13 is released. + + 1998-09-01 09:14:33 Lars Magne Ingebrigtsen + + * gnus-util.el (gnus-strip-whitespace): Already defined. + Removed. + + * gnus-art.el (gnus-article-decode-charset): Strip whitespace. + + * gnus-util.el (gnus-strip-whitespace): New function. + + * mm-util.el (mm-content-type-charset): Downcase. + + 1998-08-31 23:04:29 Lars Magne Ingebrigtsen + + * gnus-art.el (gnus-article-decode-charset): Accept a prefix. + (gnus-article-decode-charset): Don't fetch all headers. + + * mm-util.el (mm-read-coding-system): New function. + + * mm-bodies.el (mm-decode-body): Check the right charset. + + * gnus-sum.el (gnus-summary-mode-line-format): Ditto. + + * gnus-art.el (gnus-article-mode-line-format): Use short group + format. + Mon Aug 31 23:03:13 1998 Lars Magne Ingebrigtsen * gnus.el: Pterodactyl Gnus v0.12 is released. *** pub/pgnus/Makefile.in Sat Aug 29 22:25:20 1998 --- pgnus/Makefile.in Tue Sep 1 10:28:28 1998 *************** *** 10,35 **** all: lick info lick: ! cd lisp && $(MAKE) EMACS=$(EMACS) lispdir=$(lispdir) all install: ! cd lisp && $(MAKE) EMACS=$(EMACS) lispdir=$(lispdir) install ! cd texi && $(MAKE) EMACS=$(EMACS) install # Rule for Lars and nobody else. some: ! cd lisp && $(MAKE) EMACS=$(EMACS) some l: ! cd lisp && $(MAKE) EMACS=$(EMACS) clever info: ! cd texi && $(MAKE) EMACS=$(EMACS) all clean: rm -f */*.orig */*.rej *.orig *.rej xsome: ! cd lisp && $(MAKE) EMACS=$(XEMACS) some elclean: rm lisp/*.elc --- 10,35 ---- all: lick info lick: ! cd lisp && $(MAKE) EMACS="$(EMACS)" lispdir="$(lispdir)" all install: ! cd lisp && $(MAKE) EMACS="$(EMACS)" lispdir="$(lispdir)" install ! cd texi && $(MAKE) EMACS="$(EMACS)" install # Rule for Lars and nobody else. some: ! cd lisp && $(MAKE) EMACS="$(EMACS)" some l: ! cd lisp && $(MAKE) EMACS="$(EMACS)" clever info: ! cd texi && $(MAKE) EMACS="$(EMACS)" all clean: rm -f */*.orig */*.rej *.orig *.rej xsome: ! cd lisp && $(MAKE) EMACS="$(XEMACS)" some elclean: rm lisp/*.elc *** pub/pgnus/texi/gnus.texi Mon Aug 31 23:03:37 1998 --- pgnus/texi/gnus.texi Tue Sep 1 10:28:30 1998 *************** *** 1,7 **** \input texinfo @c -*-texinfo-*- @setfilename gnus ! @settitle Pterodactyl Gnus 0.12 Manual @synindex fn cp @synindex vr cp @synindex pg cp --- 1,7 ---- \input texinfo @c -*-texinfo-*- @setfilename gnus ! @settitle Pterodactyl Gnus 0.13 Manual @synindex fn cp @synindex vr cp @synindex pg cp *************** *** 318,324 **** @tex @titlepage ! @title Pterodactyl Gnus 0.12 Manual @author by Lars Magne Ingebrigtsen @page --- 318,324 ---- @tex @titlepage ! @title Pterodactyl Gnus 0.13 Manual @author by Lars Magne Ingebrigtsen @page *************** *** 354,360 **** spool or your mbox file. All at the same time, if you want to push your luck. ! This manual corresponds to Pterodactyl Gnus 0.12. @end ifinfo --- 354,360 ---- spool or your mbox file. All at the same time, if you want to push your luck. ! This manual corresponds to Pterodactyl Gnus 0.13. @end ifinfo *************** *** 2120,2125 **** --- 2120,2130 ---- Gnus, but provide a place for you to store information on particular groups. + @item charset + Elements that look like @code{(charset . iso-8859-1)} will make + @code{iso-8859-1} the default charset; that is, the charset that will be + used for all articles that do not specify a charset. + @item @var{(variable form)} You can use the group parameters to set variables local to the group you are entering. If you want to turn threading off in @samp{news.answers}, *************** *** 3193,3198 **** --- 3198,3204 ---- * Saving Articles:: Ways of customizing article saving. * Decoding Articles:: Gnus can treat series of (uu)encoded articles. * Article Treatment:: The article buffer can be mangled at will. + * MIME Commands:: Doing MIMEy things with the articles. * Article Commands:: Doing various things with the article buffer. * Summary Sorting:: Sorting the summary buffer in various ways. * Finding the Parent:: No child support? Get the parent. *************** *** 6759,6764 **** --- 6765,6795 ---- signature after all. + @node MIME Commands + @section MIME Commands + @cindex MIME decoding + + @table @kbd + @item W M w + @kindex W M w (Summary) + Decode RFC2047-encoded words in the article headers + (@code{gnus-article-decode-mime-words}). + + @item W M c + @kindex W M c (Summary) + Decode encoded article bodies as well as charsets + (@code{gnus-article-decode-charset}). + + This command looks in the @code{Content-Type} header to determine the + charset. If there is no such header in the article, you can give it a + prefix, which will prompt for the charset to decode as. In regional + groups where people post using some common encoding (but do not include + MIME headers), you can set the @code{charset} group/topic parameter to + the required charset (@pxref{Group Parameters}). + + @end table + + @node Article Commands @section Article Commands *************** *** 14358,14364 **** @item summary-highlight Do highlights in the summary buffer. @item article-highlight ! Do highlights in the article buffer. @item highlight Turn on highlighting in all buffers. @item group-menu --- 14389,14396 ---- @item summary-highlight Do highlights in the summary buffer. @item article-highlight ! Do highlights according to @code{gnus-article-display-hook} in the ! article buffer. @item highlight Turn on highlighting in all buffers. @item group-menu *** pub/pgnus/texi/message.texi Mon Aug 31 23:03:37 1998 --- pgnus/texi/message.texi Tue Sep 1 10:28:30 1998 *************** *** 1,7 **** \input texinfo @c -*-texinfo-*- @setfilename message ! @settitle Pterodactyl Message 0.12 Manual @synindex fn cp @synindex vr cp @synindex pg cp --- 1,7 ---- \input texinfo @c -*-texinfo-*- @setfilename message ! @settitle Pterodactyl Message 0.13 Manual @synindex fn cp @synindex vr cp @synindex pg cp *************** *** 42,48 **** @tex @titlepage ! @title Pterodactyl Message 0.12 Manual @author by Lars Magne Ingebrigtsen @page --- 42,48 ---- @tex @titlepage ! @title Pterodactyl Message 0.13 Manual @author by Lars Magne Ingebrigtsen @page *************** *** 83,89 **** * Key Index:: List of Message mode keys. @end menu ! This manual corresponds to Pterodactyl Message 0.12. Message is distributed with the Gnus distribution bearing the same version number as this manual has. --- 83,89 ---- * Key Index:: List of Message mode keys. @end menu ! This manual corresponds to Pterodactyl Message 0.13. Message is distributed with the Gnus distribution bearing the same version number as this manual has. *** pub/pgnus/texi/ChangeLog Mon Aug 31 12:43:23 1998 --- pgnus/texi/ChangeLog Tue Sep 1 10:28:30 1998 *************** *** 1,6 **** --- 1,8 ---- 1998-08-31 11:46:57 Lars Magne Ingebrigtsen * gnus.texi (Mail Folders): Addition. + (Group Parameters): Addition. + (MIME Commands): New. 1998-08-27 07:29:17 Lars Magne Ingebrigtsen