;ELC ;;; Compiled by pot@pot.cnuce.cnr.it on Tue Mar 18 15:47:34 2003 ;;; from file /home/pot/gnu/emacs-pretest.new/lisp/mail/mail-utils.el ;;; in Emacs version 21.3 ;;; with bytecomp version 2.85.4.1 ;;; 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 "`mail-utils.el' was compiled for Emacs 19.29 or later")) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (require 'lisp-mode) #@148 *If non-nil, use a full, hairy RFC822 parser on mail addresses. Otherwise, (the default) use a smaller, somewhat faster, and often correct parser. (custom-declare-variable 'mail-use-rfc822 'nil '(#$ . -649) :type 'boolean :group 'mail) (defalias 'mail-file-babyl-p #[(file) "\302\303!\304\216\212q\210\305 \306\307\310$\210\311\312!+\207" [buf file generate-new-buffer " *rmail-file-p*" ((kill-buffer buf)) insert-file-contents nil 0 100 looking-at "BABYL OPTIONS:"] 5]) #@102 Returns a string containing all of STRING except the part from START (inclusive) to END (exclusive). (defalias 'mail-string-delete #[(string start end) "\204 \303\nO\207 \303\nO \304OP\207" [end string start 0 nil] 4 (#$ . 1129)]) #@154 Convert a string to the "quoted printable" Q encoding. If the optional argument WRAPPER is non-nil, we add the wrapper characters =?ISO-8859-1?Q?....?=. (defalias 'mail-quote-printable #[(string &optional wrapper) "\305\306\307 \310\216\311\312 #\203' \305\224O\313\314 \305\224H\"\226Q\305\225\202 \f\2036\315 \316O\317R\202< \316OP,\207" [result i save-match-data-internal string wrapper 0 "" match-data ((set-match-data save-match-data-internal)) string-match "[?=\"\200-\377]" format "=%02x" "=?ISO-8859-1?Q?" nil "?="] 6 (#$ . 1371)]) (defalias 'mail-unquote-printable-hexdigit #[(char) "\301Y\203\f\301Z\302\\\207\303Z\207" [char 65 10 48] 2]) #@159 Undo the "quoted printable" encoding. If the optional argument WRAPPER is non-nil, we expect to find and remove the wrapper characters =?ISO-8859-1?Q?....?=. (defalias 'mail-unquote-printable #[(string &optional wrapper) "\305 \306\216 \203\307\310\n\"\203\311\312\n\"\313\314\307\315\n\f#\203N\n\f\313\224O B\n\312\224H\316U\204H\317\312\320\n\312\224H!\321_\320\n\312\224TH!\\\" B\313\225\202\322\323\n\f\314O B\237\",\207" [save-match-data-internal wrapper string strings i match-data ((set-match-data save-match-data-internal)) string-match "\\`=\\?ISO-8859-1\\?Q\\?\\([^?]*\\)\\?" match-string 1 0 nil "=\\(..\\|\n\\)" 10 make-string mail-unquote-printable-hexdigit 16 apply concat] 6 (#$ . 2048)]) #@185 Undo the "quoted printable" encoding in buffer from BEG to END. If the optional argument WRAPPER is non-nil, we expect to find and remove the wrapper characters =?ISO-8859-1?Q?....?=. (defalias 'mail-unquote-printable-region #[(beg end &optional wrapper) "\304 \305\216\212\214 \n}\210eb\210 \203\"\306\307!\203\"\310\225\n|\210`\310\224|\210\311\312\313\314#\205S\315\225b\210\316\310\224f\317U\203;\320\202L\321\310\322\310\224f!\323_\322\310\224Tf!\\\"\314\211#\210\202\",\207" [save-match-data-internal beg end wrapper match-data ((set-match-data save-match-data-internal)) looking-at "\\`=\\?ISO-8859-1\\?Q\\?\\([^?]*\\)\\?" 1 re-search-forward "=\\(..\\|\n\\)" nil t 0 replace-match 10 "" make-string mail-unquote-printable-hexdigit 16] 6 (#$ . 2774) "r\nP"]) #@173 Delete comments and quoted strings in an address list ADDRESS. Also delete leading/trailing whitespace and replace FOO with just BAR. Return a modified address list. (defalias 'mail-strip-quoted-names #[(address) "\205\302 \203\304\305!\210\306\307\310!\311#\207\312\313\314\"\203Wr\315\316!q\210\317 \210c\210\320 !\210\321b\210\322\323\312\324#\203M\325u\210\326\312x\210`\212\312\327\330\217\210`)|\210\2020\331 \317 \210)\202k\313\332\"\211\203k\333\334\312\211\335%\202W\313\336\"\210\335\225\313\337\335\225#O\335\313\340\n#\211\203\251G\335\225V\203\236\335\225H\341U\203\236\335\225\202}\333\334\312\211\342%\202}\313\343\"\211\203\300\333\344\345\"\312\346\342%\202\251)\207" [address mail-use-rfc822 pos lisp-mode-syntax-table require rfc822 mapconcat identity rfc822-addresses ", " nil string-match "[ ]*(\\([^)\\]\\|\\\\.\\|\\\\\n\\)*(" get-buffer-create " *temp*" erase-buffer set-syntax-table 1 search-forward "(" t -1 " " (forward-sexp 1) ((error (byte-code "db\207" [] 1))) buffer-string "[ ]*(\\([^)\\]\\|\\\\.\\|\\\\\n\\)*)" replace-match "" 0 "\\`[ \n]*" "[ \n]*\\'" "\\([ ]?\\)\\([ ]*\"\\([^\"\\]\\|\\\\.\\|\\\\\n\\)*\"[ \n]*\\)" 64 2 "\\(,\\s-*\\|\\`\\)\\([^,]*<\\([^>,:]*\\)>[^,]*\\)\\(\\s-*,\\|\\'\\)" match-string 3 literal] 6 (#$ . 3554)]) #@184 Returns string of mail addresses USERIDS sans any recipients that start with matches for `rmail-dont-reply-to-names'. Usenet paths ending in an element that matches are removed also. (defalias 'rmail-dont-reply-to #[(userids) "\204 \203 \306P\202\307\310\311 !\312PP\313\314\315\306\316\317\320\321\260\n\322\323\211\324  #\211\203\265G\325V\203\265\323\211\211\326  \327\216\324\330#\211\203q W\203qT?\202L*\203\250\324\330 #\203\212\324\330 #\202\261\331\307\323\211$\211\325OT\323OP S\202\261\331\307\323\211$+\202*\324\332\"\211\203\306\325 O\324\333\"\203\327\325\225\323O\202\331,\207" [rmail-dont-reply-to-names rmail-default-dont-reply-to-names epos pos case-fold-search match "\\|" "" regexp-quote user-login-name "\\>" "\\(^\\|,\\)[ \n]*" "\\([^,\n]*[!<]\\|\\)" "\\(" "\\([^,.<\"]\\|\"[^\"]*\"\\)*" "<\\(" "\\)" "\\)[^,]*" t nil string-match 0 match-data ((set-match-data save-match-data-internal)) "\"" replace-match "[ , \n]*\\'" "\\(\\s \\|,\\)*" userids last-quote-pos quote-pos inside-quotes save-match-data-internal] 11 (#$ . 4884)]) #@347 Return the value of the header field whose type is FIELD-NAME. The buffer is expected to be narrowed to just the header of the message. If second arg LAST is non-nil, use the last field of type FIELD-NAME. If third arg ALL is non-nil, concatenate all such fields with commas between. If 4th arg LIST is non-nil, return a list of all such fields. (defalias 'mail-fetch-field #[(field-name &optional last all list) "\212eb\210\306\307\310!\311Q \204\f\203q \205\312\313 \314\306#\203]`\315y\210\316\317!\204&\320u\210\321x\210\f\203F\322`\" B\202Y \211\312\230\203Q\312\202R\323\322`\"Q)\202\f\203e \202m \312\230?\205m )\202\240\313 \314\306#\205\240\203\206\313 \314\306#\204~`\315y\210\316\317!\204\211\320u\210\321x\210\322`\")+\207" [field-name name case-fold-search all list value t "^" regexp-quote "[ ]*:[ ]*" "" re-search-forward nil 1 looking-at "[ ]" -1 " " buffer-substring-no-properties ", " opoint last] 5 (#$ . 6038)]) (defalias 'mail-parse-comma-list #[nil "\302\211\303\302w\210m\204(`\304\302w\210\303\302x\210\305`\" B\304\302w\210\306\302w\210\202 *\207" [beg accumulated nil " \n" "^," buffer-substring-no-properties ", \n"] 3]) (defalias 'mail-comma-list-regexp #[(labels) "\302\303\304 \"\206\n\305 \303\306 #O\303\307 \"\211\203, \305O\310 \305\225\302OQ\202) \207" [pos labels nil string-match "[^ ]" 0 "[ ]*$" "[ ]*,[ ]*" "\\|"] 6]) (defalias 'mail-rfc822-time-zone #[(time) "\303!@\206\304\305 !\306\245\307\310 \304W\203\311\202\312\n\306\245\n\306\246$*\207" [time sec absmin current-time-zone 0 abs 60 format "%c%02d%02d" 45 43] 6]) (defalias 'mail-rfc822-date #[nil "\302 \303!\304\305 \"\210 \306\224\306\225O\307 \310\224\310\225O\307 \311\224\311\225O\307 \312\224\312\225O\307\313!\260 *\207" [time s current-time current-time-string string-match "[^ ]+ +\\([^ ]+\\) +\\([^ ]+\\) \\([^ ]+\\) \\([^ ]+\\)" 2 " " 1 4 3 mail-rfc822-time-zone] 10]) (provide 'mail-utils)