;ELC ;;; compiled by kwzh@nutrimat.gnu.ai.mit.edu on Wed Jul 17 16:43:19 1996 ;;; from file /gd/gnu/emacs/19.0/lisp/gnus-msg.el ;;; emacs version 19.31.94.1. ;;; bytecomp version FSF 2.10 ;;; optimization is on. ;;; this file uses opcodes which do not exist in Emacs 18. (if (and (boundp 'emacs-version) (or (and (boundp 'epoch::version) epoch::version) (string-lessp emacs-version "19.29"))) (error "`gnus-msg.el' was compiled for Emacs 19.29 or later")) (byte-code "!!!" [require gnus gnus-ems message] 2) #@507 *Preferred method for posting USENET news. If this variable is nil, Gnus will use the current method to decide which method to use when posting. If it is non-nil, it will override the current method. This method will not be used in mail groups and the like, only in "real" newsgroups. The value must be a valid method as discussed in the documentation of `gnus-select-method'. It can also be a list of methods. If that is the case, the user will be queried for what select method to use when posting. (defvar gnus-post-method nil (#$ . -542)) #@439 *All outgoing messages will be put in this group. If you want to store all your outgoing mail and articles in the group "nnml:archive", you set this variable to that value. This variable can also be a list of group names. If you want to have greater control over what group to put each message in, you can set this variable to a function that checks the current newsgroup name and then returns a suitable group name (or list of names). (defvar gnus-outgoing-message-group nil (#$ . -1097)) #@199 *Regexp matching groups that are really mailing lists. This is useful when you're reading a mailing list that has been gatewayed to a newsgroup, and you want to followup to an article in the group. (defvar gnus-mailing-list-groups nil (#$ . -1596)) #@52 File where Gnus saves a cache of sent message ids. (defvar gnus-sent-message-ids-file (nnheader-concat gnus-directory "Sent-Message-IDs") (#$ . 1851)) #@41 The number of sent Message-IDs to save. (defvar gnus-sent-message-ids-length 1000 (#$ . 2008)) (byte-code "! B! B!! B$\"\"\"\"\"\"!S BŇ" [boundp gnus-message-buffer "*Mail Gnus*" current-load-list gnus-article-copy nil gnus-last-posting-server autoload gnus-uu-post-news "gnus-uu" t news-setup "rnewspost" news-reply-mode rmail-dont-reply-to "mail-utils" rmail-output "rmailout" gnus-define-keys-1 (gnus-summary-send-map "S" gnus-summary-mode-map) ("p" gnus-summary-post-news "f" gnus-summary-followup "F" gnus-summary-followup-with-original "c" gnus-summary-cancel-article "s" gnus-summary-supersede-article "r" gnus-summary-reply "R" gnus-summary-reply-with-original "m" gnus-summary-mail-other-window "u" gnus-uu-post-news "om" gnus-summary-mail-forward "op" gnus-summary-post-forward "Om" gnus-uu-digest-mail-forward "Op" gnus-uu-digest-post-forward) (gnus-send-bounce-map "D" gnus-summary-send-map) ("b" gnus-summary-resend-bounced-mail "r" gnus-summary-resend-message) gnus-article-reply] 5) (defalias 'gnus-setup-message '(macro . #[(config &rest forms) "!!!B B\fBBBB \fFBBE\"+BBBB" [make-symbol "winconf" "buffer" "article" article buffer winconf let ((current-window-configuration)) ((current-buffer)) ((and gnus-article-reply (gnus-summary-article-number))) ((message-header-setup-hook (copy-sequence message-header-setup-hook))) (add-hook (quote message-header-setup-hook) (quote gnus-inews-insert-gcc)) (add-hook (quote message-header-setup-hook) (quote gnus-inews-insert-archive-gcc)) append forms gnus-inews-add-send-actions (setq gnus-message-buffer (current-buffer)) gnus-configure-windows config (t)] 11])) (defalias 'gnus-inews-add-send-actions #[(winconf buffer article) "!$\nEE  D$DD:DEE\"" [gnus-make-local-hook message-sent-hook gnus-add-hook gnus-inews-do-gcc nil t lambda (arg) gnus-post-method arg gnus-newsgroup-name message-post-method gnus-extended-version message-mailer message-newsreader message-add-action set-window-configuration winconf exit postpone kill when buffer-name buffer save-excursion set-buffer article gnus-summary-mark-article-as-replied send] 7]) (byte-code "###" [put gnus-setup-message lisp-indent-function 1 lisp-indent-hook edebug-form-spec (form body)] 4) #@25 Start composing a mail. (defalias 'gnus-group-mail #[nil " p `\"\f!)`\"  ! \n \f\"\" \f \n#p\"," [current-window-configuration gnus-article-reply get-text-property gnus-intangible to gnus-summary-goto-subject gnus-number gnus-summary-last-subject copy-sequence message-header-setup-hook article buffer winconf add-hook gnus-inews-insert-gcc gnus-inews-insert-archive-gcc message-mail gnus-inews-add-send-actions gnus-message-buffer gnus-configure-windows message t] 6 (#$ . 4383) nil]) #@110 Start composing a news message. If ARG, post to the group under point. If ARG is 1, prompt for a group name. (defalias 'gnus-group-post-news #[(&optional arg) "!U $ \n\n\")" [arg prefix-numeric-value 1 completing-read "Newsgroup: " gnus-active-hashtb nil gnus-read-active-file-p gnus-group-group-name "" gnus-newsgroup-name gnus-post-news post] 5 (#$ . 4922) "P"]) #@33 Start composing a news message. (defalias 'gnus-summary-post-news #[nil " \"" [gnus-set-global-variables gnus-post-news post gnus-newsgroup-name] 3 (#$ . 5321) nil]) #@113 Compose a followup to an article. If prefix argument YANK is non-nil, original article is yanked automatically. (defalias 'gnus-summary-followup #[(yank &optional force-news) " \f @!Ë`\"!)`\") \n8  \f \f &*" [gnus-set-global-variables yank gnus-summary-goto-subject ((gnus-summary-select-article)) 3 get-text-property gnus-intangible to gnus-number gnus-summary-last-subject gnus-newsgroup-data gnus-newsgroup-name headers gnus-post-news nil gnus-article-buffer force-news] 9 (#$ . 5500) (list (and current-prefix-arg (gnus-summary-work-articles 1)))]) #@68 Compose a followup to an article and include the original article. (defalias 'gnus-summary-followup-with-original #[(n &optional force-news) "\n! \"" [gnus-summary-followup gnus-summary-work-articles n force-news] 3 (#$ . 6102) "P"]) (defalias 'gnus-inews-yank-articles #[(articles) " A@2ċ  \n&!* c \nb*" [nil article beg articles ((byte-code "q‰ $ !" [gnus-summary-buffer gnus-summary-select-article nil article gnus-summary-remove-process-mark] 5)) gnus-copy-article-buffer gnus-article-copy gnus-current-headers message-reply-headers message-reply-buffer message-yank-original mark t "\n" push-mark] 2]) #@31 Cancel an article you posted. (defalias 'gnus-summary-cancel-article #[(n) " \n!EE \n\nA\n@kƉ$c \"ԎJ!O! ,`\"! !+" [gnus-set-global-variables gnus-summary-work-articles n lambda (arg) gnus-post-method nil gnus-newsgroup-name article message-post-method articles gnus-summary-select-article t selected-window GnusStartBufferWindow gnus-original-article-buffer buf get-buffer-window visible w ((select-window GnusStartBufferWindow)) select-window pop-to-buffer message-cancel-news gnus-summary-mark-as-read gnus-canceled-mark gnus-cache-remove-article 1 gnus-article-hide-headers-if-wanted gnus-summary-remove-process-mark] 6 (#$ . 6766) "P"]) #@167 Compose an article that will supersede a previous article. This is done simply by taking the old article and adding a Supersedes header line with the old Message-ID. (defalias 'gnus-summary-supersede-article #[nil " `\" !)`\"  p ;`\"1 !)`\";  ! \f \"\"!q BBECB \f#p\"-" [gnus-set-global-variables get-text-property gnus-intangible to gnus-summary-goto-subject gnus-number gnus-summary-last-subject article current-window-configuration gnus-article-reply copy-sequence message-header-setup-hook article buffer winconf add-hook gnus-inews-insert-gcc gnus-inews-insert-archive-gcc gnus-summary-select-article t gnus-original-article-buffer message-supersede lambda nil gnus-cache-possibly-remove-article (nil nil nil t) message-send-actions gnus-inews-add-send-actions gnus-message-buffer gnus-configure-windows reply-yank] 6 (#$ . 7493) nil]) (defalias 'gnus-copy-article-buffer #[(&optional article-buffer) "!\n!\n\f>\n\fB lj \n ! !! q~ \"qeb!RyE` #^`\n\nq ceb#u`| \n#*\n," [get-buffer-create " *gnus article copy*" gnus-article-copy buffer-disable-undo gnus-buffer-list article-buffer gnus-article-buffer nil contents beg end get-buffer buffer-name format "%s" buffer-string gnus-original-article-buffer looking-at message-unix-mail-delimiter 1 search-forward "\n\n" t erase-buffer insert-buffer-substring] 5]) (defalias 'gnus-post-news #[(post &optional group header article-buffer yank subject force-news) "  p\n)`\"!)`\")  ! \f \"\"F\"\"\"|\"\"ߔTO)!!\"\"H#\"$!&q $\n!D*B*&q!,,!. \f#p/,5>=>\"-" [article-buffer gnus-copy-article-buffer gnus-article-reply current-window-configuration get-text-property gnus-intangible to gnus-summary-goto-subject gnus-number gnus-summary-last-subject copy-sequence message-header-setup-hook article buffer winconf add-hook gnus-inews-insert-gcc gnus-inews-insert-archive-gcc group gnus-newsgroup-name pgroup nil to-address to-group mailing-list to-list gnus-group-get-parameter gnus-mailing-list-groups string-match gname ":[^:]+$" 0 gnus-news-group-p force-news header gnus-current-article post message-news gnus-article-copy message-followup message-mail gnus-inews-add-to-address message-send-actions message-wide-reply yank gnus-inews-yank-articles gnus-inews-add-send-actions gnus-message-buffer gnus-configure-windows reply-yank reply message t] 6]) #@85 Return the posting method based on GROUP and ARG. If SILENT, don't prompt the user. (defalias 'gnus-post-method #[(arg group &optional silent) " ! \fV VV # =#\nV 1\f-\f@<-\fB\f@<@\fB\fC C\nC$\n\f \n\nA\n@;q! | @; \" A@Ϛ@!\">P!P!A@DC\"**\"\"T B T \"\f!\fB%\f\"A@,V\fC\n\"?\n\"C\fV \"U\n\"U\nV )" [gnus-find-method-for-group group group-method arg gnus-post-method gnus-select-method message-post-method 0 append gnus-secondary-select-methods methods nil method-alist post-methods method "" gnus-server-to-method gnus-server-extend-method symbol-name method-name address assoc gnus-valid-select-methods intern "-address" gnus-method-option-p post post-mail mapcar #[(m) "A@@!RD" [m " (" symbol-name ")"] 4] silent gnus-last-posting-server completing-read "Posting method: " t gnus-member-of-valid] 8 (#$ . 10204)]) (defalias 'gnus-inews-narrow-to-headers #[nil "~eb !Q#ǔd}eb" [re-search-forward "^" regexp-quote mail-header-separator "$" nil t 0] 5]) (byte-code "! B‡" [boundp gnus-inews-sent-ids nil current-load-list] 2) #@51 Check whether this message has already been sent. (defalias 'gnus-inews-reject-message #[nil " !)ɏ1\"!?B F ġ!!f!!f!\"׎DEp\"qed%,*" [gnus-sent-message-ids-file gnus-inews-narrow-to-headers mail-fetch-field "message-id" nil end message-id gnus-inews-sent-ids (byte-code "#" [load t] 4) ((error)) gnus-yes-or-no-p format "Message %s already sent. Send anyway? " gnus-sent-message-ids-length nnheader-set-temp-buffer generate-new-buffer-name " *nnheader temp*" nnheader-temp-cur-buffer nnheader-temp-file file-directory-p file-name-directory make-directory t ((byte-code " !\n !" [buffer-name nnheader-temp-cur-buffer kill-buffer] 2)) prin1 setq quote write-region nomesg] 7 (#$ . 11493)]) (byte-code " B" [nnspool-rejected-article-hook current-load-list] 2) #@44 Stringified Gnus version and Emacs version (defalias 'gnus-extended-version #[nil "\f\"\fƔƕOP-\f\",\fƔƕO\n #P-\fQ" [gnus-version "/" string-match "^\\([0-9]+\\.[0-9]+\\)\\.[.0-9]+$" emacs-version "Emacs " 1 "\\([A-Z]*[Mm][Aa][Cc][Ss]\\)" format " %d.%d" emacs-major-version emacs-minor-version] 7 (#$ . 12376) nil]) (defalias 'gnus-inews-insert-mime-headers #[nil "ebeb\nQ##\n!^c^~eb#)M!Bc!^c^!Vc!^c)" [search-forward "\n" mail-header-separator nil t search-backward "\n\n" "" mail-position-on-field "Mime-Version" "1.0" re-search-forward "[-]" "Content-Type" "text/plain; charset=ISO-8859-1" "Content-Transfer-Encoding" "8bit" "text/plain; charset=US-ASCII" "7bit"] 4]) #@106 Reply mail to news author. If prefix argument YANK is non-nil, original article is yanked automatically. (defalias 'gnus-summary-reply #[(&optional yank) " \f @! p\f.`\"$!)`\". \f!\f \"\" q։\"# ] ! #p rނs\"-" [gnus-set-global-variables yank gnus-summary-goto-subject t gnus-article-reply current-window-configuration get-text-property gnus-intangible to gnus-number gnus-summary-last-subject copy-sequence message-header-setup-hook article buffer winconf add-hook gnus-inews-insert-gcc gnus-inews-insert-archive-gcc gnus-summary-select-article gnus-copy-article-buffer message-reply nil gnus-group-get-parameter gnus-newsgroup-name broken-reply-to gnus-inews-yank-articles gnus-inews-add-send-actions gnus-message-buffer gnus-configure-windows reply-yank reply] 7 (#$ . 13144) (list (and current-prefix-arg (gnus-summary-work-articles 1)))]) #@50 Reply mail to news author with original article. (defalias 'gnus-summary-reply-with-original #[(n) "\n!!" [gnus-summary-reply gnus-summary-work-articles n] 3 (#$ . 14069) "P"]) #@46 Forward the current message to another user. (defalias 'gnus-summary-mail-forward #[(&optional post) " p\n!`\" !)`\"! \n!\n \f \"\" q! \f #p\"," [gnus-set-global-variables current-window-configuration gnus-article-reply get-text-property gnus-intangible to gnus-summary-goto-subject gnus-number gnus-summary-last-subject copy-sequence message-header-setup-hook article buffer winconf add-hook gnus-inews-insert-gcc gnus-inews-insert-archive-gcc gnus-summary-select-article gnus-original-article-buffer message-forward post gnus-inews-add-send-actions gnus-message-buffer gnus-configure-windows forward t] 6 (#$ . 14255) "P"]) #@40 Resend the current article to ADDRESS. (defalias 'gnus-summary-resend-message #[(address) " q !)" [gnus-summary-select-article gnus-original-article-buffer message-resend address] 2 (#$ . 14941) "sResend message to: "]) #@45 Forward the current article to a newsgroup. (defalias 'gnus-summary-post-forward #[nil "!" [gnus-summary-mail-forward t] 2 (#$ . 15174) nil]) #@89 Format string to insert in nastygrams. The current group name will be inserted at "%s". (defvar gnus-nastygram-message "The following article was inappropriately posted to %s.\n" (#$ . 15325)) #@56 Send a nastygram to the author of the current article. (defalias 'gnus-summary-mail-nastygram #[(n) "\n! !q \f\"c )" [gnus-expert-user gnus-y-or-n-p "Really send a nastygram to the author of the current article? " gnus-newsgroup-name group gnus-summary-reply-with-original n gnus-message-buffer format gnus-nastygram-message message-send-and-exit] 3 (#$ . 15524) "P"]) #@31 Compose mail in other window. (defalias 'gnus-summary-mail-other-window #[nil " p `\"\f!)`\"  ! \n \f\"\" \f \n#p\"," [current-window-configuration gnus-article-reply get-text-property gnus-intangible to gnus-summary-goto-subject gnus-number gnus-summary-last-subject copy-sequence message-header-setup-hook article buffer winconf add-hook gnus-inews-insert-gcc gnus-inews-insert-archive-gcc message-mail gnus-inews-add-send-actions gnus-message-buffer gnus-configure-windows message t] 6 (#$ . 15920) nil]) (defalias 'gnus-mail-parse-comma-list #[nil "wmd`w `} b#/TU:˂<\"+UOwwx `{\nBww\n*" [nil beg accumulated " " "^," 0 i logand search-forward "\"" t 2 "," ", "] 5]) (defalias 'gnus-mail-yank-original #[nil "!)\n !" [mail-yank-original nil mail-yank-hooks mail-citation-hook run-hooks news-reply-header-hook] 2 nil nil]) (defalias 'gnus-inews-add-to-address #[(group) "!  \nB\")" [mail-fetch-field "to" to-address gnus-alive-p gnus-group-add-parameter group to-list] 5]) #@59 Put the current message in some group and return to Gnus. (defalias 'gnus-put-message #[nil " \n  ! # \f\"J% \"~  <!A!)db ֱ~* ! n;j؂k!) @q A A!\f\f!+" [gnus-article-reply gnus-prev-winconf gnus-newsgroup-name group winconf reply gnus-group-read-only-p read-string "Put in group: " nil gnus-writable-groups intern-soft gnus-newsrc-hashtb error "No such group: %s" gnus-inews-narrow-to-headers gnus-deletable-headers message-news-p message-generate-headers message-required-news-headers message-required-mail-headers "Gcc: " "\n" gnus-inews-do-gcc get-buffer gnus-group-buffer buffer buffer-name gnus-summary-mark-article-as-replied set-window-configuration] 5 (#$ . 17044) nil]) #@91 Send a reply to the address near point. If YANK is non-nil, include the original article. (defalias 'gnus-article-mail #[(yank) "#`T)#`S){) !) AC!)" [re-search-backward "[ \n]" nil t re-search-forward address message-reply yank gnus-inews-yank-articles gnus-article-current] 6 (#$ . 17815) "P"]) #@44 Send a bug report to the Gnus maintainers. (defalias 'gnus-bug #[nil " p `\"\f!)`\"  ! \n \f\"\" ! ceb!BB!Beb !Q!y  cc eb#!\f \n#p/\"," [current-window-configuration gnus-article-reply get-text-property gnus-intangible to gnus-summary-goto-subject gnus-number gnus-summary-last-subject copy-sequence message-header-setup-hook article buffer winconf add-hook gnus-inews-insert-gcc gnus-inews-insert-archive-gcc delete-other-windows switch-to-buffer "*Gnus Help Bug*" erase-buffer gnus-bug-message message-pop-to-buffer "*Gnus Bug*" message-setup To gnus-maintainer ((Subject . "")) (gnus-bug-kill-buffer) message-send-actions re-search-forward "^" regexp-quote mail-header-separator "$" 1 gnus-version "\n" emacs-version "\n\n\n\n\n" gnus-debug search-forward "Subject: " nil t message "" gnus-inews-add-send-actions gnus-message-buffer gnus-configure-windows bug] 6 (#$ . 18143) nil]) (defalias 'gnus-bug-kill-buffer #[nil "! !" [get-buffer "*Gnus Help Bug*" kill-buffer] 2]) #@139 Attemps to go through the Gnus source file and report what variables have been changed. The source file has to be in the Emacs load path. (defalias 'gnus-debug #[nil "\"!!qp!  @K @;K @!@P!R A-!eb#n#,e`}ebڏ,܏uA&p!) c @!Ꮘ @! Aceb#׉#." [("gnus.el" "gnus-msg.el" "gnus-score.el" "nnmail.el" "message.el") nil sym olist expr dirs file files gnus-message 4 "Please wait while we snoop your variables..." sit-for 0 get-buffer-create " *gnus bug info*" buffer-disable-undo erase-buffer load-path file-exists-p file-name-as-directory insert-file-contents re-search-forward "^;;* *Internal variables" t "Malformed sources in file %s" (byte-code "p!" [read] 2) ((error)) (byte-code "@=+8;+8!#8!8J+A@B" [expr defvar 3 boundp 1 eval 2 olist] 3) ((error)) kill-buffer "------------------ Environment follows ------------------\n\n" boundp (byte-code "\n@\n@J: 9& =& =&\n@JD)\n@JEp\"" [pp setq olist sym nil t quote] 5) ((error)) ";; (makeunbound '" symbol-name ")\n" "\n\n" "[]" replace-match ""] 7 (#$ . 19230) nil]) #@259 Re-mail the current message. This only makes sense if the current message is a bounce message than contains some mail you have written which has been bounced back to you. If FETCH, try to fetch the article that this is a reply to, if indeed this is a reply. (defalias 'gnus-summary-resend-bounced-mail #[(&optional fetch) "!\nq p\f'`\"!)`\"' \f!\f \"\"!J! cc!c * #p\"," [gnus-summary-select-article t gnus-original-article-buffer current-window-configuration gnus-article-reply get-text-property gnus-intangible to gnus-summary-goto-subject gnus-number gnus-summary-last-subject copy-sequence message-header-setup-hook article buffer winconf add-hook gnus-inews-insert-gcc gnus-inews-insert-archive-gcc mail-fetch-field "references" references gnus-parent-id parent message-bounce fetch gnus-summary-refer-article gnus-summary-show-all-headers gnus-inews-add-send-actions gnus-message-buffer gnus-configure-windows compose-bounce] 6 (#$ . 20448) "P"]) (defalias 'gnus-inews-do-gcc #[(&optional gcc) " \n#pʼn \n!~\n\"  A @\"J8]@!!@=]}\"J88y\"J88}!!!#\"!\n!eb!Q#Ɖ##!$!p!)0." [gnus-alive-p message-narrow-to-headers gcc mail-fetch-field "gcc" nil t method group groups cur message-remove-header message-tokenize-header " ," gnus-check-server 2 intern-soft gnus-newsrc-hashtb gnus-message-archive-method gnus-server-to-method gnus-group-method 4 gnus-request-group gnus-request-create-group nnheader-set-temp-buffer " *acc*" insert-buffer-substring re-search-forward "^" regexp-quote mail-header-separator "$" replace-match "" gnus-request-accept-article gnus-message 1 "Couldn't store article in group %s: %s" gnus-status-message sit-for kill-buffer] 7]) #@60 Insert Gcc headers based on `gnus-outgoing-message-group'. (defalias 'gnus-inews-insert-gcc #[nil " 9 ! < @=)&\n 1\n;0\nC1\nL;CI#˱," [gnus-inews-narrow-to-headers gnus-outgoing-message-group group form fboundp lambda gcc "Gcc: " mapconcat identity " " "\n"] 6 (#$ . 22347)]) #@60 Insert the Gcc to say where the article is to be archived. (defalias 'gnus-inews-insert-archive-gcc #[(&optional group) "\n ł ;\" C *ł <9 @;9 9H!S