;ELC   
;;; Compiled by amu@daemon on Thu Jan 11 15:04:13 2001
;;; from file /afs/sipb.mit.edu/contrib/emacs/packages/gnus-5.8.8/lisp/rfc1843.el
;;; in Emacs version 20.7.2
;;; with bytecomp version 2.56
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.
(if (and (boundp 'emacs-version)
	 (< (aref emacs-version (1- (length emacs-version))) ?A)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`rfc1843.el' was compiled for Emacs 19.29 or later"))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\305\306!\210\307\300!\204\f \310\300	B\307\302!\204 \311\302	B\307\303!\204$ \312\303	B\307\304!\2040 \313\304	B\305\207" [rfc1843-word-regexp current-load-list rfc1843-word-regexp-strictly rfc1843-hzp-word-regexp rfc1843-hzp-word-regexp-strictly require mm-util boundp "~\\({\\([!-w][!-~]\\| \\)+\\)\\(~}\\|$\\)" "~\\({\\([!-w][!-~]\\)+\\)\\(~}\\|$\\)" "~\\({\\([!-w][!-~]\\| \\)+\\|[<>]\\([!-}][!-~]\\| \\)+\\)\\(~}\\|$\\)" "~\\({\\([!-w][!-~]\\)+\\|[<>]\\([!-}][!-~]\\)+\\)\\(~}\\|$\\)"] 2)
#@125 Loosely check HZ encoding if non-nil.
When it is set non-nil, only buffers or strings with strictly
HZ-encoded are decoded.
(custom-declare-variable 'rfc1843-decode-loosely 'nil '(#$ . 1141) :type 'boolean :group 'gnus)
#@321 HZ+ decoding support if non-nil.
HZ+ specification (also known as HZP) is to provide a standardized
7-bit representation of mixed Big5, GB, and ASCII text for convenient
e-mail transmission, news posting, etc.
The document of HZ+ 0.78 specification can be found at
ftp://ftp.math.psu.edu/pub/simpson/chinese/hzp/hzp.doc
(custom-declare-variable 'rfc1843-decode-hzp 't '(#$ . 1368) :type 'boolean :group 'gnus)
#@52 Regexp of newsgroups in which might be HZ encoded.
(custom-declare-variable 'rfc1843-newsgroups-regexp '"chinese\\|hz" '(#$ . 1784) :type 'string :group 'gnus)
#@46 Decode HZ in the region between FROM and TO.
(defalias 'rfc1843-decode-region #[(from to) "\306\211\212\nb\210\204 \307\f\203 \202 \310#\205\217 \214\n}\210eb\210\307\f\2031 \2023 d\310#\203c \311\312\224\312\225\"\211\313H\314\315	\312\306O\313\224\313\225|\210\"\316=\203\\ \317\202] \320\"c\210\202' eb\210\321\322d\310#\205\216 \306f\323=\203\200 \324\325!\210\324\312!\210\202f \306f\326=\203f \324\312!\210\202f )+\207" [firstc str from rfc1843-decode-loosely rfc1843-decode-hzp rfc1843-hzp-word-regexp-strictly nil re-search-forward t buffer-substring-no-properties 1 0 mm-decode-coding-string rfc1843-decode 123 cn-gb-2312 cn-big5 search-forward "~" 10 delete-char -1 126 rfc1843-word-regexp-strictly to rfc1843-hzp-word-regexp rfc1843-word-regexp] 6 (#$ . 1950) "r"])
#@42 Decode HZ STRING and return the results.
(defalias 'rfc1843-decode-string #[(string) "\306\307!\204 \310\300!\203 \202 \306\311!\312\313\314!!\315\216r\nq\210	\203> \306\307!\204> \310\303!\203> \203> \316\317!\203> \317\320!\210\fc\210ed\"\321\211#$\212\"b\210%\204i \322&\203a '\202c (\320#\205\340 \214\"}\210eb\210\322&\203} )\202 *d\320#\203\264 \323\324\224\324\225\"\211$\325H#\326\327$\324\321O\325\224\325\225|\210#\"#\330=\203\255 \331\202\256 \332\"c\210\202r eb\210\333\334d\320#\205\337 \321f\335=\203\321 \336\337!\210\336\324!\210\202\267 \321f\340=\203\267 \336\324!\210\202\267 )+\210*\341 ,\207" [enable-multibyte-characters m #1=#:temp-buffer default-enable-multibyte-characters string to featurep xemacs boundp mule get-buffer-create generate-new-buffer-name " *temp*" ((byte-code "\301!\203\n \302!\210\301\207" [#1# buffer-name kill-buffer] 2)) fboundp set-buffer-multibyte t nil re-search-forward buffer-substring-no-properties 1 0 mm-decode-coding-string rfc1843-decode 123 cn-gb-2312 cn-big5 search-forward "~" 10 delete-char -1 126 buffer-string from firstc str rfc1843-decode-loosely rfc1843-decode-hzp rfc1843-hzp-word-regexp-strictly rfc1843-word-regexp-strictly rfc1843-hzp-word-regexp rfc1843-word-regexp] 6 (#$ . 2754)])
#@31 Decode HZ WORD and return it.
(defalias 'rfc1843-decode #[(word &optional firstc) "\305\306\307O\307\f\203 \f\310=\2031 T\211\nGW\203~ \nH\211\311=\204 \n	\312\\I\210\202 T\211\nGW\203~ \nH\211\311=\2041 	\313_\nTH\\\314\\\n	\315\245\f\316=\203_ \317\202` \320\\I\210	\315\246\nT\211	\211\321W\203w \322\202x \323\\I\210\2021 \n+\207" [word v s i firstc -1 0 nil 123 32 128 94 -3135 157 60 201 161 63 64 98] 5 (#$ . 4043)])
#@45 Decode HZ encoded text in the article body.
(defalias 'rfc1843-decode-article-body #[nil "\306\307\310Q	\206\n \311\"\205P \212\214\312 \210\313\313\314\315\313\"\211\205$ \316\317\320\217\211\2033 \306\321@\"\2043 \322db\210~\210\323y\210`d}\210\203J @\324\232\205N \325`d\".\207" [rfc1843-newsgroups-regexp gnus-newsgroup-name inhibit-point-motion-hooks case-fold-search ct ctl string-match "\\<\\(" "\\)\\>" "" message-narrow-to-head t message-fetch-field "Content-Type" #1=#:G89061 (mail-header-parse-content-type ct) ((error)) "/" nil 1 "text/plain" rfc1843-decode-region] 5 (#$ . 4495)])
(byte-code "\302\300!\204 \303\300	B\304	B\305	B\303\207" [rfc1843-old-gnus-decode-header-function current-load-list boundp nil gnus-decode-header-methods gnus-decode-encoded-word-methods] 2)
#@29 Setup HZ decoding for Gnus.
(defalias 'rfc1843-gnus-setup #[nil "\305\306!\210\305\307!\210\310\311\312\313#\210\314\315\n\316\317Q\320BC\244\f\316\317Q\321BC\244\211\207" [gnus-decode-encoded-word-function gnus-decode-header-function gnus-decode-encoded-word-methods rfc1843-newsgroups-regexp gnus-decode-header-methods require gnus-art gnus-sum add-hook gnus-article-decode-hook rfc1843-decode-article-body t gnus-multi-decode-encoded-word-string gnus-multi-decode-header "\\<\\(" "\\)\\>" rfc1843-decode-string rfc1843-decode-region] 4 (#$ . 5302)])
(provide 'rfc1843)
