From: yamaoka Date: Thu, 24 Dec 1998 03:35:29 +0000 (+0000) Subject: New public branch gnus-6_10. X-Git-Tag: gnus-6_10-199812241900 X-Git-Url: http://git.chise.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7fe52f687d840b24dde7bd4c4efa61653325bacf;p=elisp%2Fgnus.git- New public branch gnus-6_10. --- diff --git a/ChangeLog b/ChangeLog index 66e3023..ff3f30b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,1752 +1,214 @@ -1998-12-22 Katsumi Yamaoka - - * lisp/gnus-art.el (gnus-article-prepare-display): Set - `gnus-article-current-summary' to `gnus-summary-buffer'. - -1998-12-18 Katsumi Yamaoka - - * lisp/gnus-start.el (gnus-read-newsrc-el-file): Bug (referring to - unbounded variable) fix. - -1998-12-17 Katsumi Yamaoka - - * lisp/gnus-start.el (gnus-read-newsrc-el-file): Don't load newsrc - file if it does not exist. - -1998-12-14 Katsumi Yamaoka - - * lisp/gnus.el: (gnus-version-number): Update to 6.9.2. - - * lisp/nnheader.el (nnheader-find-file-noselect): Call - `find-file-noselect-as-coding-system' with CODING-SYSTEM as the - 1st arg. - - * lisp/nnmail.el (nnmail-find-file): Call - `insert-file-contents-as-coding-system' with CODING-SYSTEM as the - 1st arg. - * lisp/nnheader.el (nnheader-insert-file-contents): Likewise. - - * lisp/gnus-start.el (gnus-save-newsrc-file): Call - `write-region-as-coding-system' with CODING-SYSTEM as the 1st arg. - (gnus-read-newsrc-el-file): Call - `insert-file-contents-as-coding-system' with CODING-SYSTEM as the - 1st arg. - - * lisp/gnus-cache.el (gnus-cache-save-buffers): Call - `gnus-write-buffer-as-coding-system' with CODING-SYSTEM as the 1st - arg. - - * lisp/gnus-util.el (gnus-write-buffer-as-coding-system): Be - CODING-SYSTEM the 1st arg. - - * lisp/nnmail.el (nnmail-write-region): Call - `write-region-as-coding-system' with CODING-SYSTEM as the 1st arg. - * lisp/gnus-start.el (gnus-save-newsrc-file): Likewise. - * lisp/gnus-agent.el (gnus-agent-expire): Likewise. - (gnus-agent-fetch-headers): Likewise. - (gnus-agent-flush-cache): Likewise. - (gnus-agent-fetch-articles): Likewise. - (gnus-agent-save-history): Likewise. - (gnus-agent-save-groups): Likewise. - (gnus-agent-save-active): Likewise. - -1998-12-14 Katsumi Yamaoka - - * lisp/nnheader.el (nnheader-find-file-noselect): Use - `find-file-noselect-as-coding-system' (renamed from - `find-file-noselect-as-specified-coding-system'). - - * lisp/nnmail.el (nnmail-find-file): Use - `insert-file-contents-as-coding-system' (renamed from - `insert-file-contents-as-specified-coding-system'). - * lisp/nnheader.el (nnheader-insert-file-contents): Likewise. - - * lisp/gnus-start.el (gnus-save-newsrc-file): Use - `write-region-as-coding-system' (renamed from - `write-region-as-specified-coding-system'). - (gnus-read-newsrc-el-file): Use - `insert-file-contents-as-coding-system' (renamed from - `insert-file-contents-as-specified-coding-system'). - - * lisp/gnus-cache.el (gnus-cache-save-buffers): Use - `gnus-write-buffer-as-coding-system' (renamed from - `gnus-write-buffer-as-specified-coding-system'). - - * lisp/gnus-util.el (gnus-write-buffer-as-coding-system): - Renamed from `gnus-write-buffer-as-specified-coding-system'. - - * lisp/nnmail.el (nnmail-write-region): Use - `write-region-as-coding-system' (renamed from - `write-region-as-specified-coding-system'). - * lisp/gnus-start.el (gnus-save-newsrc-file): Likewise. - * lisp/gnus-agent.el (gnus-agent-expire): Likewise. - (gnus-agent-fetch-headers): Likewise. - (gnus-agent-flush-cache): Likewise. - (gnus-agent-fetch-articles): Likewise. - (gnus-agent-save-history): Likewise. - (gnus-agent-save-groups): Likewise. - (gnus-agent-save-active): Likewise. - -1998-12-11 Katsumi Yamaoka - - * lisp/nnheader.el (nnheader-find-file-noselect): Call - `find-file-noselect-as-specified-coding-system' directly. - -1998-12-10 Katsumi Yamaoka - - * lisp/pop3.el (pop3-movemail): Use `write-region-as-binary' - instead of `append-to-file'. - (pop3-movemail-file-coding-system): Abolished. - - * lisp/nnheader.el (nnheader-find-file-noselect): Use - `find-file-noselect-as-specified-coding-system' instead of - `find-file-noselect'. - - * lisp/nnmail.el (nnmail-find-file): Use - `insert-file-contents-as-specified-coding-system' instead of - `insert-file-contents'. - * lisp/nnheader.el (nnheader-insert-file-contents): Likewise. - - * lisp/message.el (message-send-mail-with-qmail): Enclose - `call-process-region' with `as-binary-process'. - (message-send-mail-with-sendmail): Likewise. - (message-send-coding-system): Abolished. - - * lisp/gnus-start.el (gnus-save-newsrc-file): Emulate - `save-buffer' with `write-region-as-specified-coding-system'. - (gnus-read-newsrc-el-file): Emulate `load' with - `insert-file-contents-as-specified-coding-system' and - `eval-region'. - - * lisp/gnus-cache.el (gnus-cache-save-buffers): Use - `gnus-write-buffer-as-specified-coding-system' instead of - `gnus-write-buffer'. - - * lisp/gnus-util.el (gnus-output-to-mail): Use - `write-region-as-binary' instead of `append-to-file'. - (gnus-output-to-mail): Use `gnus-write-buffer-as-binary' instead - of `gnus-write-buffer'. - (gnus-write-buffer-as-specified-coding-system): New function. - (gnus-write-buffer-as-binary): New function. - - * lisp/nnmail.el (nnmail-write-region): Use - `write-region-as-specified-coding-system' instead of - `write-region'. - * lisp/gnus-start.el (gnus-save-newsrc-file): Likewise. - * lisp/gnus-agent.el (gnus-agent-expire): Likewise. - (gnus-agent-fetch-headers): Likewise. - (gnus-agent-flush-cache): Likewise. - (gnus-agent-fetch-articles): Likewise. - (gnus-agent-save-history): Likewise. - (gnus-agent-save-groups): Likewise. - (gnus-agent-save-active): Likewise. - -1998-12-08 Katsumi Yamaoka - - * lisp/smtp.el (smtp-via-smtp): Use `open-network-stream-as-binary' - instead of `open-network-stream'. - * lisp/pop3.el (pop3-open-server): Likewise. - * lisp/nntp.el (nntp-open-network-stream): Likewise. - * lisp/gnus-gl.el (bbb-connect-to-bbbd): Likewise. - - * lisp/nntp.el (nntp-open-rlogin): Enclose `start-process' with - `as-binary-process'. - (nntp-open-telnet): Likewise. - - * lisp/smtp.el (smtp-coding-system): Abolished. - - * lisp/nntp.el (nntp-coding-system-for-write): Abolished. - (nntp-coding-system-for-read): Abolished. - - * lisp/nntp.el: Don't require `tcp'. - * lisp/nndb.el: Likewise. - -1998-12-07 Katsumi Yamaoka - - * lisp/message.el (message-get-parameter-with-eval): Call - `message-get-parameter' with arg `key' first. - -1998-11-26 Yoshiki Hayashi +1998-12-24 Katsumi Yamaoka - * lisp/gnus.el: (gnus-version-number): Update to 6.9.1. - (gnus-version): Modified for SEMI 1.11, FLIM 1.12. + * lisp/gnus.el: (gnus-version-number): Update to 6.10.1. - * lisp/gnus-draft.el: (gnus-draft-decoding-buffer): Call - `mime-edit-decode-message-in-buffer' instead of - `mime-edit-decode-buffer'. - - * lisp/gnus-sum.el: (gnus-structured-field-decoder): Use - `eword-decode-and-unfold-structured-field-body' instead of - 'eword-decode-and-unfold-structured-field'. - (gnus-unstructured-field-decoder): remove `must-unfold'. - -1998-11-26 Katsumi Yamaoka - - * lisp/gnus-msg.el (gnus-summary-supersede-article): Bind - `gnus-message-setup-hook' to nil. - - * lisp/message.el (message-supersede-setup-for-mime-edit): New - function. - (message-supersede-setup-function): New user option. Use - `message-supersede-setup-for-mime-edit' in default. - (message-supersede): Call `message-supersede-setup-function' if it - is non-nil. - (message-supersede-setup-hook): New user option. - - * lisp/message.el (message-bounce-setup-for-mime-edit): Don't - delete header separator. It is up to MIME-Edit to do so. - -1998-11-25 Hasebe Satoshi - - * lisp/gnus-util.el: Require RMAIL in a different way. - -1998-11-24 Tatsuya Ichikawa - - * lisp/pop3-fma.el (pop3-fma-save-password-information): New - variable. Do not save password information when - `pop3-fma-save-password-information' set to nil (in default). - (pop3-fma-encode-string): abolished - because of difference of - FLIM API. - (pop3-fma-decode-string): Likewise. +1998-12-22 Katsumi Yamaoka -1998-11-24 Katsumi Yamaoka + * lisp/gnus-art.el (mime-preview-over-to-next-method-alist): Use + `gnus-summary-next-article' in `gnus-original-article-mode'. + (mime-preview-over-to-previous-method-alist): Use + `gnus-summary-prev-article' in `gnus-original-article-mode'. + (gnus-article-mode-map): Define almost undefined keys to + `gnus-article-read-summary-keys'. + (gnus-article-prepare-display): Set `gnus-article-current-summary' + to `gnus-summary-buffer'. - * lisp/dgnushack.el (dgnushack-compile): Dismiss "gnus-bbdb.el" - from the list if BBDB has not been installed. +1998-12-21 Tatsuya Ichikawa -1998-11-20 Tatsuya Ichikawa + * lisp/pop3-fma.el (pop3-fma-movemail): Work with movemail.exe + with APOP extention. - * lisp/gnus-util.el: Require `rmail' only if RMAIL has been - installed. +1998-12-18 Katsumi Yamaoka -1998-11-19 Keiichi Suzuki + * lisp/gnus-xmas.el (gnus-xmas-group-startup-message): Show version. + (gnus-xmas-logo-color-style): Default to `sky'. - * lisp/message.el (message-get-reply-buffer): Abolished. - (message-get-original-reply-buffer): Abolished. - (message-get-parameter): New inline function. - (message-get-parameter-with-eval): New macro. - (message-fetch-reply-field): Do not use `message-get-reply-buffer'. - (message-yank-original): Ditto. - (message-setup): Use `message-get-parameter'. - (message-mime-insert-article): Use - `message-get-parameter-with-eval' instead of - `message-get-original-reply-buffer'. + * lisp/gnus.el (gnus-group-startup-message): Show version. + (gnus-splash-face): Shorten a wavelength. - * lisp/gnus-msg.el (gnus-inews-add-send-actions): Do not add - `set-window-configuration' to action when - `message-use-multi-frames' is non-`nil'. + * lisp/gnus-bbdb.el (toplevel): Define `bbdb-pop-up-elided-display' + for avoiding byte-compile warning. -1998-11-19 Katsumi Yamaoka + * lisp/gnus-agent.el (gnus-agent-file-coding-system): Default to + `raw-text'. - * lisp/gnus.el (gnus-version-number): Update to 6.8.20. +1998-12-17 Katsumi Yamaoka - * Sync up with Gnus 5.6.45. + * lisp/*.el: Ebola eradication. -1998-11-18 Katsumi Yamaoka +1998-12-01 MORIOKA Tomohiko - * lisp/message.el (message-mimic-kill-buffer): Rewrite. + * Abolish smtp.el and smtpmail.el (moved to FLIM). 1998-11-18 Katsumi Yamaoka - * lisp/message.el (message-mimic-kill-buffer): New function. - (message-mode-map): Use it for `C-x k'. - -1998-11-18 Keiichi Suzuki + * lisp/message.el (message-mode-map): Use + `message-mimic-kill-buffer' for `C-x k'. - * lisp/message.el (message-dont-send): Use `message-delete-frame'. +1998-11-17 Tsukamoto Tetsuo -1998-11-14 Kenji Itoh - - * lisp/nnmail.el (nnmail-read-passwd): Use `read-passwd' if it - exists as a function. - - * lisp/pop3.el (pop3-read-passwd): Likewise. + * lisp/message.el (message-dont-send): Use `message-save-drafts' + instead of `save-buffer'. 1998-11-16 Katsumi Yamaoka - * make.bat: Replace line endings from `LF' to `CRLF'. + * lisp/message.el (message-send-mail): Protect against errors. + (message-send-news): Likewise. + (message-maybe-split-and-send-mail): New function. + (message-maybe-split-and-send-news): New function. -1998-11-16 Katsumi Yamaoka +1998-11-13 Katsumi Yamaoka - * README-gnus-bbdb.en, README-gnus-bbdb.ja: New files. - - * lisp/gnus-bbdb.el: Replace string in comment "Nana-" to "Semi-". - -1998-11-13 Keiichi Suzuki - - * lisp/gnus-msg.el (gnus-setup-message): Setup - `message-startup-parameter-alist' for starting `message-mode'. - - * lisp/message.el (message-parameter-alist): New variable. - (message-startup-parameter-alist): New variable. - (message-eval-parameter): New function. - (message-get-reply-buffer): New function. - (message-get-original-reply-buffer): New function. - (message-mode): Make new local variable `message-parameter-alist'. - (message-fetch-reply-field): Use `message-get-reply-buffer'. - (message-yank-original): Ditto. - (message-setup): Get message reply buffer from - `message-parameter-alist'. - (message-mime-insert-article): Use - `message-get-original-reply-buffer'. - - * lisp/gnus-bbdb.el: New file. Interface for BBDB. - -1998-11-12 Katsumi Yamaoka - - * lisp/gnus-msg.el (gnus-summary-resend-bounced-mail): Bind - `gnus-message-setup-hook' to nil. - - * lisp/message.el (message-bounce-setup-for-mime-edit): New - function. - (message-bounce-setup-function): New user option. Use - `message-bounce-setup-for-mime-edit' in default. - (message-bounce): Call `message-bounce-setup-function' if it is - non-nil. - (message-bounce-setup-hook): New user option. - - * lisp/gnus-art.el (gnus-article-edit-done): Remove - `gnus-article-mime-edit-article-unwind' from - `gnus-article-mode-hook' before run `gnus-article-edit-exit'. - (gnus-article-edit-article): Call - `gnus-article-edit-article-setup-function' if it is non-nil. - (gnus-article-edit-article-setup-function): New user option. Use - `gnus-article-mime-edit-article-setup' in default. - (gnus-article-mime-edit-article-setup-hook): New hook. - (gnus-article-mime-edit-exit): New function. Use - `gnus-article-make-full-mail-header'. - (gnus-article-mime-edit-article-setup): Ditto. - (gnus-article-mime-edit-article-unwind): New function. - (gnus-article-make-full-mail-header): New function. - (gnus-article-prepare-display): New function. - (gnus-article-prepare): Use it. - -1998-11-11 Tatsuya Ichikawa - - * lisp/message.el (message-mode-map): Add new command key - `C-x C-s' for `message-save-drafts'. - -1998-11-11 Keiichi Suzuki - - * lisp/message.el (message-8bit-encoding-list): New variable. - (message-send-mail): Use `message-check-mail-syntax'. - (message-check-news-body-syntax): Use `message-check-8bit'. - (message-check-mail-syntax): New function. - (message-check-mail-header-syntax): New function. - (message-check-mail-body-syntax): New function. - (message-check-8bit): New function. + * lisp/gnus-art.el (gnus-article-header-presentation-method): Use + `mime-insert-header' instead of `mime-insert-decoded-header'. 1998-11-09 Tatsuya Ichikawa - * lisp/pop3-fma.el: Set the value of `nnmail-read-passwd' as a - symbol `pop3-fma-read-passwd'. - -1998-11-04 Yoshiki Hayashi - - * lisp/message.el: (message-do-fcc): Don't run message-header-hook - and message-before-do-fcc-hook. - -1998-11-02 Yoshiki Hayashi - - * lisp/message.el: (message-make-in-reply-to): Generate - In-Reply-To header according to draft-ietf-drums-msg-fmt-05. - -1998-10-30 Tatsuya Ichikawa - - * lisp/gnus.el: Add autoload setting for `pop3-fma'. - -1998-10-28 Tatsuya Ichikawa - - * lisp/pop3-fma.el: Determin base64 encode/decode function by FLIM. - -1998-10-26 Tatsuya Ichikawa - - * lisp/message.el (message-save-drafts): New function. - To save drafts in network code. - (message-save-buffer): New variable. - - * lisp/pop3-fma.el: Require `mel-b-el' if `mel-b' does not exist. - -1998-10-23 Katsumi Yamaoka - - * lisp/gnus-msg.el (gnus-message-make-user-agent): New function. - -1998-10-21 Katsumi Yamaoka - - * lisp/gnus-xmas.el (gnus-tilde-pad-form): Guard for non string - symbol. - -1998-10-17 Tatsuya Ichikawa - - * lisp/pop3-fma.el (pop3-fma-init-message-hook): Change - message-send-hook to mime-edit-translate-hook. - -1998-10-14 Katsumi Yamaoka - - * lisp/pop3-fma.el (pop3-fma-read-char-exclusive): New macro. Use - `next-command-event' instead of `read-char-exclusive' under XEmacs. - (pop3-fma-read-noecho): Use it. - -1998-10-13 Katsumi Yamaoka - - * lisp/nnheaderxm.el (nnheader-xmas-Y-or-n-p): New function. - It will be used for the substitute of `nnheader-Y-or-n-p' under - XEmacs. - - * lisp/nnheader.el (nnheader-Y-or-n-p): Rewrite for Emacs 19 or - later except for XEmacs. - -1998-10-08 Katsumi Yamaoka - - * lisp/message.el (message-mode-map): Define key `C-x k'. - (message-kill-buffer): Change the prompt string. - (message-kill-buffer): Refer to - `message-kill-buffer-query-function'. - (message-kill-buffer-query-function): New user option. - - * lisp/nnheader.el (nnheader-Y-or-n-p): New function. - -1998-10-07 Yoshiki Hayashi - - * lisp/nnagent.el (nnagent-open-server): Small bug fix. - -1998-10-07 Keiichi Suzuki - - * TODO.ja: New file. - -1998-10-05 Yoshiki Hayashi - - * lisp/gnus.el (gnus-info-filename): New variable. - (gnus-info-find-node): Use `gnus-info-filename' and - `current-language-environment'. - -1998-10-03 MORIOKA Tomohiko - - * lisp/gnus-draft.el (gnus-draft-send): Call - `message-send-news-function' or `message-send-mail-function' - instead of `message-send-and-exit'. - -1998-10-01 Tatsuya Ichikawa - - * lisp/pop3-fma.el (pop3-fma-movemail): Bug fix. - Delete variable pop3-fma-movemail options. - Add new variabel pop3-fma-commandline-arguments. - -1998-09-30 MORIOKA Tomohiko - - * lisp/message.el (message-make-user-agent): New implementation. - -1998-08-25 Shuhei KOBAYASHI - - * lisp/gnus-msg.el (gnus-bug-message): About Semi-gnus. - (gnus-extended-version): Return gnus version only. - (gnus-bug): Add Semi-gnus developers to recipients. - - * lisp/message.el (message-make-user-agent): New function. - (message-generate-headers): Use it. - -1998-06-12 Shuhei KOBAYASHI - - * lisp/message.el (message-required-news-headers): `X-Newsreader' - was replaced by `User-Agent'. - (message-required-mail-headers): `X-Mailer' was replaced by - `User-Agent'. - (message-header-format-alist): `X-Mailer' and `X-Newsreader' were - replaced by `User-Agent'. - (message-generate-headers): Ditto. - - (message-user-agent): New variable. - (message-newsreader): Replaced by `message-user-agent'. - (message-mailer): Ditto. - (message-mode): `message-mailer' and `message-newsreader' were - replaced by `message-user-agent'. - - * lisp/gnus-msg.el (gnus-inews-add-send-actions): `message-mailer' - and `message-newsreader' were replaced by `message-user-agent'. - (gnus-extended-version): Generate "PRODUCT/VERSION" style strings. - - * lisp/gnus-soup.el (gnus-soup-send-packet): `message-mailer' and - `message-newsreader' were replaced by `message-user-agent'. - -1998-09-17 Tatsuya Ichikawa - - * lisp/gnus-draft.el (gnus-draft-edit-message): Use - `gnus-draft-setup-for-editing' instead of `gnus-draft-setup'. - (gnus-draft-send): Use `gnus-draft-setup-for-sending' instead of - `gnus-draft-setup'. - (gnus-draft-setup-for-editing): New function (renamed from - `gnus-draft-setup'). - (gnus-draft-setup-for-sending): New function. - (gnus-draft-send-draft-buffer): New variable. - -1998-09-26 Katsumi Yamaoka - - * lisp/gnus.el (gnus-version-number): Update to 6.8.19. - - * Sync up with Gnus 5.6.44. - -1998-09-16 Katsumi Yamaoka - - * Makefile.in: Add entry `info-ja'. - * texi/Makefile.in: Add entry `ja'. - -1998-09-11 MORIOKA Tomohiko - - * lisp/message.el (message-send): Don't call - `message-fix-before-sending' before `message-encode-function' is - called. - -1998-09-06 Tatsuya Ichikawa - - * lisp/pop3-fma.el: Add error handle and fix typo. - -1998-08-28 Keiichi Suzuki - - * lisp/message.el: Repair `multi frame control'. - -1998-08-27 Tatsuya Ichikawa - - * lisp/gnus.el (gnus-version-number): Update to 6.8.16. - - * Sync up with Gnus 5.6.41. - -1998-08-26 Katsumi Yamaoka - - * lisp/gnus-spec.el (gnus-parse-simple-format): Use - `gnus-tilde-pad-form' instead of the padding faculty of `format' - under XEmacs-mule. - - * lisp/gnus-xmas.el - (gnus-xmas-redefine): Redifine `gnus-truncate-string', - `gnus-tilde-max-form' and `gnus-tilde-cut-form' for XEmacs-mule. - (gnus-xmas-define): New function 'gnus-tilde-pad-form' for - XEmacs-mule. - -1998-08-26 Shuhei KOBAYASHI - - * lisp/gnus-art.el (gnus-article-narrow-to-signature): - Removed TM stuff. - (gnus-article-display-mime-message): - Set `mime-button-mother-dispatcher' in correct buffer. - (gnus-url-mailto): Use `gnus-setup-message'. - (gnus-button-mailto): Ditto. - (gnus-button-reply): Ditto. - - * lisp/gnus-ems.el (gnus-mule-max-width-function): Removed. - (gnus-truncate-string): Use `truncate-string-to-width' if available. - (gnus-tilde-max-form): New implementation. - (gnus-tilde-cut-form): Ditto. - - * lisp/gnus-msg.el (gnus-summary-mail-digest): New function. - (gnus-summary-post-digest): New function. - - * lisp/gnus-sum.el (gnus-summary-make-menu-bar): Use - `gnus-summary-mail-digest' and `gnus-summary-post-digest' instead - of `gnus-uu-digest-mail-forward' and `gnus-uu-digest-post-forward'. - - * lisp/gnus-util.el (gnus-truncate-string): Ignore more than two - arguments. - - * lisp/message.el (message-forward-end-separator): Use - `text/plain' tag. - -1998-08-23 Shuhei KOBAYASHI - - * lisp/message.el: Suppress some byte-compile warnings. - (message-make-forward-subject): Failed to sync. - (message-setup): Ditto. - (message-clone-locals): Modify regexp. - -1998-08-23 Shuhei KOBAYASHI - - * lisp/gnus-agent.el (gnus-agent-braid-nov): Use - `nnheader-insert-file-contents'. - - * lisp/gnus-i18n.el (gnus-set-summary-default-charset): Sync up - with "akr" branch. - -1998-08-23 Tatsuya Ichikawa - - * lisp/gnus.el (gnus-version-number): Update to 6.8.15. - - * Sync up with Gnus 5.6.39. - - * lisp/pop3-fma.el (pop3-fma-movemail): Enable to get from APOP server. - (pop3-fma-set-pop3-password) Enable to get from APOP server. - -1998-08-20 Yoshiki Hayashi - - * lisp/message.el (message-clone-locals): Add `user-full-name' - and `user-mail-address' to regexp. - -1998-08-20 Tatsuya Ichikawa - - * lisp/gnus.el (gnus-version-number): Update to 6.8.14. - - * Sync up with Gnus 5.6.38. - -1998-08-20 Keiichi Suzuki - - * lisp/message.el (message-frames): New custom group. - (message-original-frame): New variable. - (message-use-multi-frames): New variable. - (message-delete-frame-on-exit): New variable. - (message-send-and-exit): Delete frame which made for editing - message. - (message-kill-buffer): Ditto. - (message-delete-frame): New function. - (message-pop-to-buffer): Make new frame when edit message. - -1998-08-18 Tatsuya Ichikawa - - * lisp/gnus.el (gnus-version-number): Update to 6.8.13. - - * Sync up with Gnus 5.6.37. - -1998-08-16 Yoshiki Hayashi - - * lisp/gnus-sum.el (gnus-summary-scroll-down): Failed to sync. - -1998-08-16 Tatsuya Ichikawa - - * lisp/gnus.el (gnus-version-number): Update to 6.8.12. - - * Sync up with Gnus 5.6.36. - -1998-08-15 Yoshiki Hayashi - - * texi/gnus-ja.texi: Update. - -1998-08-14 Katsumi Yamaoka - - * lisp/gnus-start.el (gnus-save-newsrc-file): Bind - `coding-system-for-write' by `gnus-startup-file-coding-system' - while saving the quick newsrc file. - - * lisp/gnus-start.el (gnus-startup-file-coding-system): Change - default value to `ctext'. - -1998-08-13 Tatsuya Ichikawa - - * lisp/gnus.el (gnus-version-number): Fix typo. - - * lisp/gnus.el (gnus-version-number): Update to 6.8.11. - - * Sync up with Gnus 5.6.34. - -1998-08-12 Tatsuya Ichikawa - - * lisp/gnus.el (gnus-version-number): Update to 6.8.10. - - * Sync up with Gnus 5.6.33. - -1998-08-11 Tatsuya Ichikawa - - * lisp/gnus.el (gnus-version-number): Update to 6.8.9. - - * Sync up with Gnus 5.6.31. - -1998-08-10 Tatsuya Ichikawa - - * lisp/gnus.el (gnus-version-number): Update to 6.8.8. - - * Sync up with Gnus 5.6.30. - -1998-08-10 Keiichi Suzuki - - * lisp/message.el (message-yank-original): For citing any message. - -1998-08-10 Shuhei KOBAYASHI - - * lisp/gnus.el (gnus-version-number): Update to 6.8.7. - -1998-08-06 Katsumi Yamaoka - - * lisp/smtp.el: Do not insert empty line at the end of message. - -1998-08-06 Tatsuya Ichikawa - - * lisp/gnus.el (gnus-version-number): Update to 6.8.6. - - * Sync up with Gnus 5.6.29. - -1998-08-05 Tatsuya Ichikawa - - * lisp/gnus-start.el (gnus-read-init-file): Fix indent. - * lisp/gnus-ems.el (gnus-tilde-max-form): Redefine instead of - (gnus-summary-line-format-spec) to display Japanese character - correctly in Gnus summaly. - -1998-08-05 Keiichi Suzuki - - * lisp/gnus-start.el (gnus-read-init-file): Don't restrict - `coding-system-for-read' by `binary' when loading `.gnus'. - -1998-08-04 Tatsuya Ichikawa - - * lisp/gnus.el (gnus-version-number): Update to 6.8.5. - - * Sync up with Gnus 5.6.28. - -1998-07-27 Tatsuya Ichikawa - - * lisp/gnus.el (gnus-version-number): Update to 6.8.4. - - * Sync up with Gnus 5.6.27. - -1998-07-27 Yoshiki Hayashi - - * texi/message-ja.texi: Japanese translation of "message.texi". - -1998-07-26 Tatsuya Ichikawa - - * lisp/gnus.el (gnus-version-number): Update to 6.8.3. - - * Sync up with Gnus 5.6.26. - -1998-07-23 Shuhei KOBAYASHI - - * lisp/gnus.el (gnus-version-number): Update to 6.8.2. - (gnus-version): Change to "Semi-gnus". Change comment format. - -1998-07-21 Keisuke Mori - - * texi/gnus-ja.texi: Add "Appendices". - -1998-07-21 Yoshiki Hayashi - - * texi/gnus-ja.texi: Add "Appendices". - -1998-07-16 Shuhei KOBAYASHI - - * lisp/gnus.el (gnus-version-number): Update to 6.8.1. - - * Sync up with Gnus 5.6.24. - -1998-07-10 Keiichi Suzuki - - * lisp/gnus-ems.el (gnus-mule-cite-add-face): Fix problem when multi - bytes charactors are used in cite prefix. (for Emacs 20.1 and 20.2) - (gnus-ems-redefine): for Emacs 20.1 and 20.2 - - * lisp/gnus-cite.el (gnus-cite-add-face): Abolish my last bogus change. - -1998-07-09 Keiichi Suzuki - - * lisp/gnus-cite.el (gnus-cite-add-face): Fix problem when multi - bytes charactors are used in cite prefix. - -1998-07-07 Yoshiki Hayashi - - * texi/gnus-ja.texi: Add "The End". - -1998-07-06 Keisuke Mori - - * texi/gnus-ja.texi: Add "Various". - -1998-07-06 Yoshiki Hayashi - - * texi/gnus-ja.texi: Add "Various". - * texi/gnus-ja.texi: Sync up with Gnus 5.6.22 - -1998-07-02 MORIOKA Tomohiko - - * lisp/message.el (message-header-format-alist): Repair to use - `message-fill-references' for References. - -1998-07-01 MORIOKA Tomohiko - - * lisp/gnus-art.el (gnus-article-header-presentation-method): - Delete nil optional arguments. - - Delete setting for `mime-raw-representation-type-alist'. - -1998-07-01 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to 6.8.0. - (gnus-version): Modify for FLIM 1.8. - - * lisp/gnus-art.el (gnus-article-header-presentation-method): - Modify for FLIM 1.8. - -1998-06-30 Keisuke Mori - - * texi/gnus-ja.texi: Add "Scroing". - -1998-06-30 Yoshiki Hayashi - - * texi/gnus-ja.texi: Add "Scoring". - -1998-06-30 Tatsuya Ichikawa - - * Sync up with Gnus 5.6.22 - * lisp/gnus.el (gnus-version-number): Update to 6.7.8. - * lisp/pop3-fma.el : Enable to get localhost mail spool. - -1998-06-29 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to 6.7.7. - - * lisp/gnus-art.el (gnus-article-prepare): Set up - `gnus-article-current-summary' of gnus-article-buffer. - (gnus-request-article-this-buffer): Don't set up - `gnus-article-current-summary'. - -1998-06-27 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to 6.7.6. - -1998-06-27 MORIOKA Tomohiko - - * lisp/gnus-art.el (gnus-mime-preview-quitting-method): Renamed - from `mime-preview-quitting-method-for-gnus'. - -1998-06-27 MORIOKA Tomohiko - - * lisp/gnus-sum.el (gnus-summary-preview-mime-message): New - implementation. - - * lisp/gnus-art.el (mime-preview-quitting-method-for-gnus): Use - `gnus-article-show-summary' is `gnus-show-mime' is not nil. - -1998-06-27 MORIOKA Tomohiko - - * texi/ChangeLog, texi/gnus.texi, texi/message.texi, - lisp/ChangeLog, lisp/gnus.el, lisp/nngateway.el, lisp/nnfolder.el, - lisp/message.el, lisp/gnus-sum.el, lisp/gnus-soup.el: Sync up with - Gnus 5.6.20. - -1998-06-26 MORIOKA Tomohiko - - * README, texi/ChangeLog, texi/gnus.texi, texi/message.texi, - lisp/ChangeLog, lisp/nnweb.el, lisp/nnmail.el, lisp/nndoc.el, - lisp/message.el, lisp/lpath.el, lisp/gnus.el, lisp/gnus-util.el, - lisp/gnus-topic.el, lisp/gnus-sum.el, lisp/gnus-score.el, - lisp/gnus-group.el, lisp/gnus-ems.el, lisp/gnus-demon.el, - lisp/gnus-art.el: Sync up with Gnus 5.6.16. - -1998-06-26 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to 6.7.3. - - * lisp/gnus-sum.el (gnus-summary-move-article): Use - `gnus-request-article-this-buffer'. - (gnus-request-partial-message): Likewise. - - * lisp/gnus-art.el (gnus-article-prepare): Use - `gnus-request-article-this-buffer'. - (gnus-request-article-this-buffer): Renamed from - `gnus-request-original-article'; abolish conventional - implementation. - - Abolish unused setting for `mime-view-show-summary-method'. - -1998-06-26 MORIOKA Tomohiko - - * readme, texi/ChangeLog, texi/gnus.texi, texi/message.texi, - lisp/ChangeLog, lisp/gnus.el, lisp/nnmail.el, lisp/nnheader.el, - lisp/nngateway.el, lisp/nnfolder.el, lisp/nnagent.el, - lisp/message.el, lisp/gnus-sum.el, lisp/gnus-score.el, - lisp/gnus-salt.el, lisp/gnus-msg.el, lisp/gnus-cus.el, - lisp/gnus-cache.el, lisp/gnus-art.el: Sync up with Gnus 5.6.15. - -1998-06-24 MORIOKA Tomohiko + * lisp/gnus-ofsetup.el: New file - setting function for + gnus-offline. - * texi/gnus.texi, texi/message.texi, texi/ChangeLog: Sync up with - Gnus 5.6.13. +1998-11-03 MORIOKA Tomohiko -1998-06-14 Tatsuya Ichikawa + * lisp/nnmh.el (nnmh-retrieve-headers): Don't use + `nnheader-fold-continuation-lines'. - * Sync up with Gnus 5.6.13. +1998-10-30 Katsumi Yamaoka -1998-06-24 MORIOKA Tomohiko + * lisp/gnus-art.el (gnus-article-decode-rfc1522): Use + `mime-decode-header-in-buffer' instead of `eword-decode-header'. + * lisp/gnus-draft.el (gnus-draft-decoding-function): Likewise. - * lisp/gnus-art.el (gnus-article-display-mime-message): Don't - `save-excursion'. - (gnus-article-prepare): Use `mime-fetch-field' instead of - `mime-entity-fetch-field'. +1998-10-29 MORIOKA Tomohiko -1998-06-19 MORIOKA Tomohiko - - * lisp/gnus-art.el (gnus-article-display-mime-message): Use - `mime-display-message' instead of `mime-view-buffer'. - (gnus-article-display-traditional-message): Set - `gnus-article-buffer'. - (gnus-article-display-message-with-encoded-word): Modify for - `gnus-article-display-traditional-message'. - (gnus-article-prepare): Use `mime-parse-buffer' and - `mime-entity-fetch-field'; don't set gnus-article-buffer. - -1998-06-19 MORIOKA Tomohiko - - * lisp/gnus-sum.el (gnus-summary-move-article): Use - `gnus-request-original-article' instead of - `gnus-request-article-this-buffer'. - -1998-06-19 MORIOKA Tomohiko - - * texi/gnus-ja.texi, texi/gnus.texi (Using MIME): Modify - description about new display mechanism. - -1998-06-19 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to 6.6.0. - (gnus-version): Modify for this branch. - - * lisp/gnus-art.el (gnus-article-display-method-for-mime): New - variable; abolish `gnus-show-mime-method'. - (gnus-article-display-method-for-encoded-word): New variable; - abolish `gnus-decode-encoded-word-method'. - (gnus-article-display-method-for-traditional): New variable. - (gnus-article-display-mime-message): New function; abolish - `gnus-article-preview-mime-message'. - (gnus-article-display-traditional-message): New function. - (gnus-article-display-message-with-encoded-word): New function; - abolish `gnus-article-decode-encoded-word'. - (gnus-article-prepare): Change display mechanism; use - `gnus-request-original-article' instead of - `gnus-request-article-this-buffer'. - (gnus-request-original-article): New function. - -1998-06-22 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to 6.6.0. - (gnus-version): Modify for SEMI 1.8. - - * lisp/gnus-sum.el: Modify for interface change in SEMI 1.8 about - automatic message/partial combining. - -1998-06-19 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to 6.5.0. - (gnus-version): Modify for SEMI 1.7. - - * lisp/gnus-sum.el: Rename - `mime-method-to-combine-message/partial-pieces' to - `mime-combine-message/partial-pieces-automatically'. - - * lisp/gnus-art.el (gnus-article-preview-mime-message): Use - `mime-view-buffer'. - (gnus-article-decode-encoded-word): Fix DOC-string. - (gnus-article-header-presentation-method): New function; abolish - `gnus-content-header-filter'. - Modify for SEMI 1.7. - -1998-06-18 Keisuke Mori - - * texi/gnus-ja.texi: Add "Select Methods". - -1998-06-18 Yoshiki Hayashi - - * texi/gnus-ja.texi: Add "Select Methods". - -1998-06-17 Tatsuya Ichikawa - - * lisp/pop3-fma.el: Small bug fix. - - * lisp/pop3-fma.el: Delete variable pop3-fma-cypher-key - Use base64-encode-string , base64-decode-string instead. - Both change by Yasuo OKABE - -1998-06-13 Tatsuya Ichikawa - - * lisp/pop3-fma.el: New function pop3-fma-cypher-string - New variable pop3-fma-cypher-key - -1998-06-07 MORIOKA Tomohiko - - * lisp/gnus-art.el: Delete setting for - `article-de-quoted-unreadable' and - `article-mime-decode-quoted-printable' because they have been - already abolished. - -1998-06-07 MORIOKA Tomohiko - - * texi/gnus-ja.texi: Sync up with latest gnus.texi. - - * texi/gnus.texi: Modify for Semi-gnus 6.4.0. - -1998-06-06 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-extract-address-components): Add - `std11-extract-address-components' as a choice. - -1998-06-06 Yoshiki Hayashi - - * texi/gnus-ja.texi: Add "Composing Messages". - -1998-06-04 MORIOKA Tomohiko - - * lisp/gnus-ems.el (gnus-ems-redefine): Must require 'path-util - before call `module-installed-p'. - - * lisp/gnus.el (gnus-version-number): Update to 6.4.0. - (gnus-version): Modify for SEMI 1.5. - - * lisp/gnus-art.el: Modify for SEMI 1.5 API. - -1998-06-04 Tatsuya Ichikawa - - * lisp/pop3-fma.el: New file. To handle multiple POP account. - - * lisp/gnus.el (gnus-version-number): Update to 6.3.4. - And fix typo 5.6.10 -> 5.6.11. - -1998-06-03 Shuhei KOBAYASHI - - * lisp/gnus.el (gnus-version-number): Update to 6.3.3. - - * Sync up with Gnus 5.6.11. - -1998-06-03 Keisuke Mori - - * texi/gnus-ja.texi: Add "The Article Buffer". - -1998-06-03 Yoshiki Hayashi - - * texi/gnus-ja.texi: Add "The Summary Buffer". - -1998-06-02 Tatsuya Ichikawa - - * lisp/gnus.el (gnus-version-number): Update to 6.3.2. - - * Sync up with Gnus 5.6.10. - -1998-05-30 Shuhei KOBAYASHI - - * README.semi: Add description of `shuhei-k' branch. - -1998-05-17 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to 6.3.1. - -1998-05-17 MORIOKA Tomohiko - - * lisp/gnus-util.el (gnus-output-to-rmail): Guard as binary. - - * lisp/gnus-util.el (gnus-output-to-mail): Guard as binary. - -1998-04-24 Yoshiki Hayashi - - * texi/gnus-ja.texi: Add "The Active File". - -1998-05-04 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to 6.3.0. - (gnus-version): Modify for SEMI 1.4. - - * lisp/gnus-sum.el: Use 'mime-add-condition to set up - acting-condition. - -1998-05-04 MORIOKA Tomohiko - - * lisp/lpath.el: Must add "flim" instead of "mel" to load-path. - -1998-05-03 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to 6.2.5. - - * texi/gnus.texi, lisp/ChangeLog: Sync up with Gnus v5.6.9. - - * lisp/gnus.el, lisp/message.el, lisp/gnus-sum.el, - lisp/gnus-msg.el, lisp/gnus-draft.el, lisp/gnus-agent.el: Sync up - with Gnus v5.6.9. - -1998-04-30 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to 6.2.4. - - * texi/gnus.texi, lisp/ChangeLog: Sync up with Gnus 5.6.7. - - * lisp/gnus.el, lisp/message.el, lisp/gnus-sum.el, - lisp/gnus-msg.el, lisp/gnus-cache.el, lisp/gnus-art.el: Sync up - with Gnus 5.6.7. - -1998-04-28 Shuhei KOBAYASHI - - * lisp/gnus.el (gnus-version-number): Update to 6.2.3. - - * Sync up with Gnus 5.6.6. - -1998-04-27 MORIOKA Tomohiko - - * lisp/nnheader.el: Sync up with Gnus 5.6.5. - -1998-04-26 Shuhei KOBAYASHI - - * lisp/gnus.el (gnus-version-number): Update to 6.2.2. - - * Sync up with Gnus 5.6.5. - - * texi/custom.texi, texi/widget.texi: Removed from Semi-gnus. - -1998-04-25 MORIOKA Tomohiko - - * README.semi (How to get? (via CVS)): Modify descriptions about - TAG. - -1998-04-23 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to 6.2.1. - -1998-04-23 MORIOKA Tomohiko + * lisp/gnus-draft.el (gnus-draft-decoding-function): Use + `mime-edit-decode-buffer' simply as initial value. * lisp/message.el (message-make-forward-subject): Use - `eword-decode-unstructured-field-body' for subject. - - * lisp/gnus-msg.el (gnus-summary-mail-forward): Make local - variable `default-mime-charset' of `gnus-original-article-buffer' - and set up by `default-mime-charset' of `gnus-summary-buffer'. - -1998-04-23 MORIOKA Tomohiko - - * texi/gnus-ja.texi: Fix typos. - - * texi/gnus.texi: Modify for Semi-gnus. - -1998-04-23 Yoshiki Hayashi - - * texi/gnus-ja.texi: Add "Auto Save". - -1998-04-22 Yoshiki Hayashi - - * texi/gnus-ja.texi: Add "Startup Files". - -1998-04-21 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to 6.2.0. - (gnus-version): Modify for SEMI 1.3. - - * lisp/gnus-sum.el: Use 'ctree-set-calist-strictly instead of - 'set-atype to set up for 'mime-acting-condition. - -1998-04-21 Yoshiki Hayashi - - * texi/gnus-ja.texi: Add "Changing Servers". - -1998-04-20 MORIOKA Tomohiko - - * texi/gnus-ja.texi: Modify styles. - - * texi/gnus.texi: Modify for Semi-gnus (sync up with - gnus-ja.texi). - -1998-04-20 Yoshiki Hayashi - - * texi/gnus-ja.texi: Add "New Groups". - -1998-04-20 Yoshiki Hayashi - - * texi/gnus-ja.texi: Modify styles. - -1998-04-18 MORIOKA Tomohiko - - * texi/gnus-ja.texi: Check and modify for Semi-gnus. - -1998-04-18 Yoshiki Hayashi - - * texi/gnus-ja.texi: New file. - -1998-04-19 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to 6.1.3. - -1998-04-19 MORIOKA Tomohiko - - * lisp/gnus-art.el (gnus-following-method): New function; set up - for 'mime-view-following-method-alist. - -1998-04-18 MORIOKA Tomohiko - - * texi/gnus.texi: Add and modify description for Semi-gnus. - -1998-04-16 MORIOKA Tomohiko - - * texi/gnus.texi: "Gnus 5.6.4" -> "Semi-gnus 6.1.2". - (Top): "Gnus" -> "gnus". - (Starting Up): "Gnus" -> "gnus". - -1998-04-10 Shuhei KOBAYASHI - - * lisp/ChangeLog, lisp/gnus-agent.el: Sync up with Gnus 5.6.4. - -1998-04-08 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to 6.1.2. - (gnus-version): Include corresponding SEMI version. - - * lisp/gnus.el, lisp/nnkiboze.el, lisp/message.el, - lisp/gnus-sum.el, lisp/gnus-agent.el: Sync up with Gnus 5.6.4. - -1998-03-27 Shuhei KOBAYASHI - - * README.semi: Change descriptions of sending bug report. - -1998-03-20 Shuhei KOBAYASHI - - * lisp/gnus.el (gnus-version-number): Update to 6.1.1. - (gnus-version): Include corresponding SEMI version. - - * Sync up with Gnus 5.6.3. - -1998-03-15 Shuhei KOBAYASHI - - * lisp/gnus-agent.el (gnus-agent-crosspost): Use - `nnheader-insert-file-contents'. - (gnus-agent-braid-nov): Ditto. - (gnus-agent-expire): Ditto. - - * lisp/gnus-cache.el (gnus-cache-request-article): Ditto. - (gnus-cache-retrieve-headers): Ditto. - (gnus-cache-change-buffer): Ditto. - (gnus-cache-braid-nov): Ditto. - - * lisp/gnus-sum.el (gnus-summary-import-article): Ditto. - - * lisp/nnkiboze.el (nnkiboze-retrieve-headers): Ditto. - - * lisp/message.el (message-generate-headers): Fix regexp. - (cf. [semi-gnus-ja:107]) - -1998-03-14 MORIOKA Tomohiko - - * lisp/gnus-art.el: Add setting for - `mime-raw-buffer-coding-system-alist'. - -1998-03-13 MORIOKA Tomohiko - - * lisp/gnus-art.el: Rename `mime-view-quitting-method-for-gnus' -> - `mime-preview-quitting-method-for-gnus'. - - * lisp/gnus-art.el: Rename `mime-view-quitting-method-alist' -> - `mime-preview-quitting-method-alist'. - - * lisp/gnus-art.el: Rename `mime-view-kill-buffer' -> - `mime-preview-kill-buffer'. - - * lisp/gnus.el (gnus-version-number): Update to 6.0.10. - - * lisp/gnus-sum.el: Add code to check latest SEMI. - (mime-acting-condition): Separate type and subtype; rename - `mime-combine-message/partials-automatically' -> - `mime-method-to-combine-message/partial-pieces'. - -1998-03-08 Shuhei KOBAYASHI - - * lisp/gnus.el (gnus-version-number): Update to 6.0.9. - - * README.semi (How to get?): Add description of daily snapshot. - (How to join development): Change mailing list command address. - - * Sync up with Gnus 5.6.2. - -1998-03-01 Tatsuya Ichikawa - - * lisp/gnus-ems.el: Change variable name - gnus-bdf-image-file to gnus-mule-bitmap-image-file. - -1998-02-28 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to 6.0.8. - - * lisp/gnus.el: Sync up with qgnus-0.34. - -1998-02-28 MORIOKA Tomohiko - - * lisp/message.el: Sync up with qgnus-0.33. - - * lisp/gnus-ems.el (gnus-bdf-image-file): New variable; moved from - gnus.el. - (gnus-mule-group-startup-message): New function; moved and renamed - from `gnus-group-startup-message' of gnus.el. - - * lisp/gnus.el, lisp/gnus-sum.el, lisp/gnus-art.el, - lisp/gnus-agent.el: Sync up with qgnus-0.33. - -1998-02-28 Tatsuya Ichikawa - - * lisp/gnus.el (gnus-bdf-image-file): New variable. - (gnus-mule-group-startup-message): Display bitmap image using - bitmap.el running with Emacs 20. - - * lisp/gnus-agent.el (gnus-agent-fetch-headers): Fix problem when - Xref field is not exist. - -1998-02-26 MORIOKA Tomohiko - - * README.semi (How to join development): Modify for Semi-gnus - mailing list. - - * lisp/gnus.el (gnus-version-number): Update to 6.0.7. - - * lisp/gnus.el (gnus-article-display-hook): Delete - `gnus-article-de-quoted-unreadable' from options. - - * lisp/gnus-sum.el (gnus-article-make-menu-bar): Delete key for - `gnus-article-de-quoted-unreadable'. - (gnus-summary-make-menu-bar): Delete menu for - `gnus-article-de-quoted-unreadable'. - - * lisp/gnus-art.el (gnus-article-make-menu-bar): Delete menu for - `gnus-article-de-quoted-unreadable'. - -1998-02-24 MORIOKA Tomohiko - - * lisp/gnus.el, lisp/message.el: Sync up with qgnus-0.32. - -1998-02-23 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to 6.0.6. - - * lisp/message.el (message-fill-references): Abolish unused local - variables. - - * lisp/pop3.el, lisp/message.el, lisp/gnus.el, lisp/gnus-sum.el, - lisp/gnus-art.el: Sync up with qgnus-0.31. - - * lisp/gnus.el, lisp/message.el, lisp/gnus-sum.el, - lisp/gnus-art.el: Sync up with qgnus-0.30. - -1998-02-20 Christophe Broult - - * README.semi (How to get?): The command `update' must come before - `-r semi-gnus'. (cf. [tm-en:1559]) - -1998-02-17 MORIOKA Tomohiko - - * lisp/gnus.el: Sync up with qgnus-0.29. - - * lisp/gnus.el, lisp/message.el: Sync up with qgnus-0.28. - - * lisp/message.el: Abolish variable - `message-references-generator'. Abolish function - `message-generate-filled-references', - `message-generate-folded-references' and - `message-generate-unfolded-references'. - (message-reply): Don't use `message-references-generator'. - (message-followup): Don't use `message-references-generator'. - - (message-fill-references): New function. - (message-header-format-alist): Use `message-fill-references' for - References. - -1998-02-17 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to 6.0.5. - -1998-02-17 MORIOKA Tomohiko - - * lisp/gnus-sum.el: Check SEMI-0.118.2 (Otomaru) or later. - (gnus-structured-field-decoder): Use + `nnheader-decode-subject' instead of + `eword-decode-unstructured-field-body'. + + * lisp/nnheader.el (nnheader-decode-subject): New alias. + (nnheader-decode-from): New alias. + (make-full-mail-header): Use `nnheader-decode-subject' and + `nnheader-decode-from' instead of + `eword-decode-and-unfold-unstructured-field' and `eword-decode-and-unfold-structured-field'. - * lisp/gnus-art.el (gnus-article-decode-rfc1522): Use charset - conversion option of `eword-decode-header'. - (gnus-article-decode-encoded-word): Use charset conversion option - of `eword-decode-header'; use `gnus-run-hooks'. - (gnus-content-header-filter): Use charset conversion option of - `eword-decode-header'. - - * README.semi (How to get?): Should specify "-r semi-gnus". - -1998-02-16 MORIOKA Tomohiko - - * lisp/gnus-art.el (gnus-article-decode-rfc1522): Decode header by - localized code. - -1998-02-16 MORIOKA Tomohiko - - * lisp/gnus-msg.el: Delete commented-out function - `gnus-inews-insert-mime-headers'. - - * lisp/gnus.el, lisp/message.el, lisp/gnus-sum.el, - lisp/gnus-art.el: Sync up with qgnus-0.27. - -1998-02-16 MORIOKA Tomohiko - - * lisp/nnheader.el: Use original. - - * lisp/gnus.el, lisp/pop3.el, lisp/message.el, lisp/gnus-sum.el, - lisp/gnus-msg.el, lisp/gnus-draft.el, lisp/gnus-art.el: Sync up - with qgnus-0.26. - -1998-02-15 MORIOKA Tomohiko - - * lisp/nnmail.el, lisp/nnmh.el: Use original. - - * lisp/gnus.el, lisp/gnus-draft.el, lisp/gnus-sum.el, - lisp/message.el, lisp/gnus-art.el: Sync up with qgnus-0.25. - -1998-02-11 Shuhei Kobayashi - - * texi/message.texi, texi/gnus.texi, texi/ChangeLog, - lisp/message.el, lisp/gnus.el, lisp/gnus-uu.el, - lisp/gnus-topic.el, lisp/gnus-sum.el, lisp/gnus-start.el, - lisp/gnus-score.el, lisp/gnus-group.el, lisp/gnus-art.el, - lisp/gnus-agent.el, lisp/ChangeLog: Importing qgnus-0.24 +1998-10-22 Katsumi Yamaoka -1998-02-10 MORIOKA Tomohiko + * lisp/gnus-cache.el (gnus-cache-possibly-enter-article): Use + `mime-fetch-field' for getting Subject and From field. - * lisp/gnus-art.el (gnus-article-prepare): Don't bind coding - systems. +1998-10-20 MORIOKA Tomohiko - * lisp/gnus.el (gnus-version-number): Update to 6.0.4. - (gnus-version): Sync with qgnus-0.23. + * lisp/nnheader.el (nnheader-insert-nov): Use `mime-fetch-field' + for Subject and From field. - * lisp/pop3.el, lisp/nnmh.el, lisp/nnheader.el, lisp/message.el, - lisp/gnus-sum.el, lisp/gnus-msg.el, lisp/gnus-draft.el, - lisp/gnus-art.el: Merge qgnus-0.23. +1998-10-20 Katsumi Yamaoka -1998-02-09 Shuhei Kobayashi + * lisp/nnheader.el (nnheader-parse-nov): Use + `make-full-mail-header'. - * texi/message.texi, texi/gnus.texi, texi/ChangeLog, lisp/nntp.el, - lisp/nnheader.el, lisp/message.el, lisp/gnus.el, - lisp/gnus-xmas.el, lisp/gnus-sum.el, lisp/gnus-start.el, - lisp/gnus-msg.el, lisp/gnus-group.el, lisp/gnus-draft.el, - lisp/gnus-art.el, lisp/gnus-agent.el, lisp/ChangeLog: Importing - qgnus-0.23 +1998-10-20 MORIOKA Tomohiko -1998-02-04 MORIOKA Tomohiko + * lisp/nnheader.el (nnheader-parse-head): Use + `make-full-mail-header'. - * lisp/message.el (message-references-generator): New variable. - (message-generate-filled-references): New function. - (message-generate-folded-references): New function. - (message-generate-unfolded-references): New function. - (message-reply): Refer `message-references-generator'. - (message-followup): Refer `message-references-generator'. +1998-10-20 Katsumi Yamaoka -1998-01-17 MORIOKA Tomohiko + * lisp/nnheader.el (make-full-mail-header): Sync up with + "chao-gnus-6_12" branch. + (mail-header-set-xref): Use `mime-entity-set-xref-internal'. + (mail-header-xref): Use `mime-entity-xref-internal' + (mail-header-set-lines): mime-entity-set-lines-internal'. + (mail-header-lines): Use `mime-entity-lines-internal' + (mail-header-set-chars): Use `mime-entity-set-chars-internal'. + (mail-header-chars): Use `mime-entity-chars-internal'. + (mail-header-set-references): Use + `mime-entity-set-references-internal'. + (mail-header-references): Use `mime-entity-references-internal'. + (mail-header-set-message-id): Use + `mime-entity-set-message-id-internal'. + (mail-header-message-id): Use `mime-entity-message-id-internal'. + (mail-header-set-date): Use `mime-entity-set-date-internal'. + (mail-header-date): Use `mime-entity-date-internal'. + (mail-header-set-from): Use + `mime-entity-set-decoded-from-internal'. + (mail-header-from): Use `mime-entity-decoded-from-internal'. + (mail-header-set-subject): Use + `mime-entity-set-decoded-subject-internal'. + (mail-header-subject): Use `mime-entity-decoded-subject-internal'. + All changes are imported from "chao-gnus-6_12" branch. - * lisp/message.el (message-send-mail-with-sendmail): Guard - `coding-system-for-write' by binary. - (message-send-mail-with-qmail): Likewise. + * lisp/message.el (message-reply): Use + `make-full-mail-header-from-decoded-header`. + (message-followup): Likewise. -1998-01-16 MORIOKA Tomohiko + * lisp/gnus-art.el (gnus-article-display-method-for-encoded-word): + Abolished. + (gnus-article-display-message-with-encoded-word): Abolished. - * lisp/lpath.el: Require path-util; add load-path of APEL, MEL and - SEMI. +1998-10-16 Katsumi Yamaoka -1998-01-12 MORIOKA Tomohiko + * lisp/gnus-msg.el (gnus-message-setup-hook): Replace the default + value to `gnus-maybe-setup-default-charset'. + (gnus-maybe-setup-default-charset): New function. It is called + `message-maybe-setup-default-charset' at one time. - * lisp/message.el: Require smtp.el when compile. + * lisp/message.el (message-maybe-setup-default-charset): Abolished. - * lisp/message.el (message-send-mail-with-smtp): Use - `(current-buffer)' instead of `tembuf'; rename - `smtp-recipient-address-list' -> `recipient-address-list'. +1998-10-15 Keiichi Suzuki -1998-01-12 MORIOKA Tomohiko + * lisp/gnus-spec.el (gnus-update-format-specifications): Force + update `gnus-format-specs' when `gnus-version' is differ from + saved version. - * lisp/smtp.el (smtp-deduce-address-list): Don't use - `smtp-recipient-address-list' as global variable. +1998-10-14 MORIOKA Tomohiko - * lisp/message.el (message-send-mail-with-smtp): Don't use - `smtp-recipient-address-list' as global variable. + * lisp/gnus-sum.el (gnus-summary-line-format-alist): Use + `mime-read-field', `std11-address-string' and + `std11-full-name-string' instead of + `gnus-extract-address-components'. + (gnus-article-sort-by-author): Likewise. - * lisp/smtpmail.el (smtpmail-recipient-address-list): New - variable; renamed from `smtp-recipient-address-list'. - (smtpmail-send-it): Remove `(not (null ...))'. - (smtpmail-send-queued-mail): Likewise. +1998-10-12 MORIOKA Tomohiko -1998-01-12 MORIOKA Tomohiko + * lisp/nnheader.el (make-full-mail-header-from-decoded-header): + New function. - * lisp/message.el (message-send-mail-with-smtp): Don't generate - temporary buffer for message; don't generate and kill - `smtp-address-buffer' for `smtp-deduce-address-list'. +1998-10-05 MORIOKA Tomohiko - * lisp/smtpmail.el (smtpmail-send-it): Don't generate and kill - `smtp-address-buffer' for `smtp-deduce-address-list'. + * lisp/gnus-art.el (gnus-article-display-mime-message): Set up + buffer local variable `default-mime-charset' of + `gnus-original-article-buffer' and `gnus-article-buffer'. - * lisp/smtp.el (smtp-deduce-address-list): Bind and generate - `smtp-address-buffer' in itself. - -1998-01-12 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to version 6.0.3. - -1998-01-11 MORIOKA Tomohiko - - * lisp/smtp.el: New file. - - * lisp/smtpmail.el: Split basic features into smtp.el. - - * lisp/message.el (message-send-mail-function): Add - `message-send-mail-with-smtp' as an item. - (message-send-mail-with-smtp): New function. - - * ChangeLog: New file. - -1998-01-08 MORIOKA Tomohiko - - * lisp/smtpmail.el (smtpmail-via-smtp): Bind - `coding-system-for-read' by `smtpmail-coding-system' to avoid - dead-locking in Emacs 20. - - * lisp/gnus.el: gnus.el (gnus-version-number): Update to version - 6.0.2. - -1998-01-07 MORIOKA Tomohiko - - * lisp/nnmail.el, lisp/message.el: Sync with Quassia Gnus v0.22. - - * lisp/gnus.el: Delete autoload setting for `metamail-buffer'. - - * lisp/gnus.el, lisp/gnus-sum.el: Sync with Quassia Gnus v0.22. - - * lisp/gnus-msg.el: Abolish function - `gnus-inews-insert-mime-headers'. - - * lisp/gnus-msg.el, lisp/gnus-draft.el, lisp/gnus-art.el: Sync - with Quassia Gnus v0.22. - - * lisp/smtpmail.el (smtpmail-coding-system): New variable; abolish - `smtpmail-code-conv-from'. - (smtpmail-via-smtp): Guard `coding-system-for-write' by - `smtpmail-coding-system'. - - * lisp/smtpmail.el: Imported from Emacs 20.2. - - * lisp/pop3.el (pop3-movemail-file-coding-system): Change default - value to `binary'. - (pop3-open-server): Guard `coding-system-for-read' by `binary'. - -1998-01-06 Shuhei Kobayashi - - * texi/message.texi, texi/gnus.texi, texi/ChangeLog, lisp/nnoo.el, - lisp/nnml.el, lisp/message.el, lisp/gnus.el, lisp/gnus-sum.el, - lisp/gnus-start.el, lisp/gnus-ems.el, lisp/gnus-draft.el, - lisp/gnus-agent.el, lisp/ChangeLog: Importing qgnus-0.22 - - * texi/message.texi, texi/gnus.texi, lisp/gnus.el, lisp/ChangeLog: - Importing qgnus-0.21 - - * texi/message.texi, texi/gnus.texi, texi/ChangeLog, - lisp/nnvirtual.el, lisp/nnsoup.el, lisp/nnoo.el, lisp/nnmh.el, - lisp/nnmail.el, lisp/nndraft.el, lisp/gnus.el, lisp/gnus-xmas.el, - lisp/gnus-sum.el, lisp/gnus-start.el, lisp/gnus-score.el, - lisp/gnus-msg.el, lisp/gnus-group.el, lisp/gnus-draft.el, - lisp/gnus-art.el, lisp/ChangeLog: Importing qgnus-0.20 - - * texi/message.texi, texi/gnus.texi, texi/ChangeLog, lisp/pop3.el, - lisp/nntp.el, lisp/nnml.el, lisp/nnmail.el, lisp/nndoc.el, - lisp/message.el, lisp/gnus.el, lisp/gnus-uu.el, - lisp/gnus-topic.el, lisp/gnus-sum.el, lisp/gnus-start.el, - lisp/gnus-score.el, lisp/gnus-group.el, lisp/gnus-cache.el, - lisp/gnus-agent.el, lisp/ChangeLog: Importing qgnus-0.19 - -1997-12-27 MORIOKA Tomohiko - - * lisp/gnus.el (gnus-version-number): Update to version 6.0.1. +1998-09-30 MORIOKA Tomohiko - * lisp/message.el (message-resend): Enclose `message-setup' with - `(let (message-setup-hook) ...)' to avoid to `turn-on-mime-edit'; - must setup `message-encoding-buffer' and `message-edit-buffer' for - `message-send-mail'. + * lisp/nnheader.el: Use `mime-entity' as gnus-header structure. + (mail-header-number): Use `mime-entity-location-internal'. + (mail-header-set-number): Use `mime-entity-set-location-internal'. + - Change other `mail-header-*' and `mail-header-set-*' to alias of + reference and set functions for mime-entity-internal. -1997-12-08 Shuhei Kobayashi + * lisp/mmgnus.el: New module. - * lisp/pop3.el, lisp/message.el, lisp/gnus.el, lisp/gnus-sum.el, - lisp/gnus-art.el, lisp/ChangeLog: Synch'ed up to qgnus-0.18. + * lisp/gnus-sum.el: Abolish variable + `gnus-structured-field-decoder' and + `gnus-unstructured-field-decoder'. + (gnus-nov-parse-line): Don't decode from and subject. + (gnus-get-newsgroup-headers): Likewise. - * texi/message.texi, texi/gnus.texi, texi/ChangeLog, - lisp/smiley.el, lisp/pop3.el, lisp/nnweb.el, lisp/nntp.el, - lisp/nnml.el, lisp/nnmail.el, lisp/nnheader.el, lisp/nndraft.el, - lisp/message.el, lisp/lpath.el, lisp/gnus.el, lisp/gnus-util.el, - lisp/gnus-sum.el, lisp/gnus-start.el, lisp/gnus-picon.el, - lisp/gnus-nocem.el, lisp/gnus-mh.el, lisp/gnus-group.el, - lisp/gnus-ems.el, lisp/gnus-cite.el, lisp/gnus-art.el, - lisp/gnus-agent.el, lisp/dgnushack.el, lisp/ChangeLog: Importing - qgnus-0.18 + * lisp/gnus-score.el (gnus-header-index): Modify to use + mime-entity structure as gnus-header structure. -1997-11-29 MORIOKA Tomohiko + * lisp/gnus-art.el (gnus-article-prepare-display): Use content of + `gnus-current-headers' as mime-message-structure. - * README.semi: New file. +1998-09-29 MORIOKA Tomohiko - * lisp/gnus.el (gnus-version): Rename to "Semi-gnus". + * lisp/gnus-sum.el (gnus-update-summary-mark-positions): Use + `make-full-mail-header'. -1997-11-28 MORIOKA Tomohiko +1998-08-16 Tatsuya Ichikawa - * lisp/gnus-draft.el (gnus-draft-decoding-function): New variable. - (gnus-draft-setup): Use `gnus-draft-decoding-function'. - -1997-11-27 MORIOKA Tomohiko - - * lisp/nnmail.el, lisp/nnheader.el, lisp/message.el, lisp/gnus.el, - lisp/gnus-sum.el, lisp/gnus-msg.el, lisp/gnus-art.el: sync with - qgnus-0.17. - - * texi/message.texi, texi/gnus.texi, lisp/smiley.el, lisp/nnoo.el, - lisp/nnml.el, lisp/nnmail.el, lisp/nnheader.el, - lisp/messagexmas.el, lisp/message.el, lisp/gnus.el, - lisp/gnus-xmas.el, lisp/gnus-util.el, lisp/gnus-sum.el, - lisp/gnus-start.el, lisp/gnus-spec.el, lisp/gnus-score.el, - lisp/gnus-picon.el, lisp/gnus-move.el, lisp/gnus-msg.el, - lisp/gnus-kill.el, lisp/gnus-group.el, lisp/gnus-draft.el, - lisp/gnus-demon.el, lisp/gnus-cite.el, lisp/gnus-art.el, - lisp/ChangeLog: Quassia Gnus v0.17. - - * lisp/gnus-i18n.el: New file. - - * lisp/nnmail.el (nnmail-file-coding-system): Use `raw-text' in - default. - - * lisp/nnheader.el (nnheader-file-coding-system): Use `raw-text' - in default. - - * lisp/message.el (message-encode-function): New variable. - (message-forward-start-separator): Modify for mime-edit. - (message-forward-end-separator): Modify for mime-edit. - (message-setup-hook): Use `(message-maybe-setup-default-charset - turn-on-mime-edit)' in default. - (message-header-hook): Use `(eword-encode-header)' in default. - - (message-send): Use local variable `message-encoding-buffer', - `message-edit-buffer' and `message-mime-mode' as public variables; - use `message-encode-function'. - (message-send-mail): Use `message-encoding-buffer' to get contents - of body; abolish `message-encode-mail-hook'; use - `mime-edit-maybe-split-and-send'; use `message-edit-buffer' to - refer original editing buffer. - (message-send-news): Use `message-encoding-buffer' to get contents - of body; abolish `message-encode-news-hook'; use - `mime-edit-maybe-split-and-send'; use `message-edit-buffer' to - refer original editing buffer. - (message-check-news-syntax): Call `message-check-news-body-syntax' - in `mime-edit-buffer'. - (message-do-fcc): Use `message-encoding-buffer' to get contents; - run `message-header-hook'. - (message-cancel-news): Use `std11-extract-address-components' - instead of `mail-extract-address-components'; bind - `message-encoding-buffer' and `message-edit-buffer'. - - (message-maybe-setup-default-charset): New function. - (message-maybe-encode): New function. - (message-mime-insert-article): New function. - Add setting for mime-view. - - * lisp/gnus.el (gnus-version-number): for version number for Open - gnus. - (gnus-version): Modify for Open gnus. - - * lisp/gnus-sum.el: Autoload gnus-i18n. - - (gnus-show-mime): `t' in default. - (gnus-structured-field-decoder): Use - `eword-decode-structured-field-body' in default. - (gnus-unstructured-field-decoder): Use - `eword-decode-unstructured-field-body' in default. - - (gnus-parse-headers-hook): Use - `(gnus-set-summary-default-charset)' in default. - - (gnus-summary-mode-map): Add binding for - `gnus-summary-scroll-down' and - `gnus-summary-preview-mime-message'. - - (gnus-summary-preview-mime-message): New function. - (gnus-mime-partial-preview-function): New function. - Add setting for mime-view. - - * lisp/gnus-msg.el (gnus-summary-cancel-article): Display - `gnus-article-buffer' instead ofb `gnus-original-article-buffer'. - (gnus-extended-version): Don't return version of emacsen. - (gnus-inews-do-gcc): Refer `message-encoding-buffer'. - - * lisp/gnus-art.el (gnus-show-mime-method): Use - `gnus-article-preview-mime-message' instead of `metamail-buffer' - in default. - (gnus-decode-encoded-word-method): Use - `gnus-article-decode-encoded-word' instead of - `gnus-article-de-quoted-unreadable' in default. - - Abolish `gnus-hack-decode-rfc1522', `gnus-decode-rfc1522', - `article-decode-rfc1522', `article-de-quoted-unreadable', - `article-mime-decode-quoted-printable-buffer' and - `article-mime-decode-quoted-printable'. - (gnus-article-decode-rfc1522): New implementation (use - `eword-decode-header'). - - (gnus-article-preview-mime-message): New function. - (gnus-article-decode-encoded-word): New function. - (gnus-content-header-filter): New function. - (mime-view-quitting-method-for-gnus): New function. - Add setting for mime-view. - - * lisp/message.el: Abolish `message-max-size' because it is not - used. - - * lisp/message.el: sync with qgnus-0.16. - - * texi/Makefile, texi/message.texi, texi/gnus.texi, lisp/nnweb.el, - lisp/nnmh.el, lisp/nnheader.el, lisp/nnfolder.el, lisp/message.el, - lisp/gnus.el, lisp/gnus-xmas.el, lisp/gnus-uu.el, - lisp/gnus-sum.el, lisp/gnus-srvr.el, lisp/gnus-picon.el, - lisp/gnus-group.el, lisp/gnus-cite.el, lisp/gnus-art.el: Quassia - Gnus v0.16. - - * lisp/nnmh.el (nnmh-request-list-1): fix maybe. - - * lisp/message.el (message-do-fcc): Guard - `coding-system-for-write' by `raw-text'; run - `message-before-do-fcc-hook'. - - * lisp/gnus-msg.el (gnus-inews-do-gcc): Guard - `coding-system-for-write' by `raw-text'; run - `gnus-before-do-gcc-hook'. - - * texi/message.texi, texi/gnus.texi, texi/ChangeLog, lisp/nntp.el, - lisp/nnoo.el, lisp/nnml.el, lisp/nndraft.el, lisp/nnbabyl.el, - lisp/message.el, lisp/gnus.el, lisp/gnus-xmas.el, lisp/gnus-uu.el, - lisp/gnus-util.el, lisp/gnus-sum.el, lisp/gnus-start.el, - lisp/gnus-spec.el, lisp/gnus-soup.el, lisp/gnus-score.el, - lisp/gnus-msg.el, lisp/gnus-gl.el, lisp/gnus-ems.el, - lisp/gnus-draft.el, lisp/gnus-cache.el, lisp/gnus-audio.el, - lisp/gnus-art.el, lisp/gnus-agent.el, lisp/ChangeLog: Quassia Gnus - v0.15. - - * lisp/message.el, lisp/ChangeLog: sync with qgnus-0.14. - - * texi/Makefile, texi/gnus.texi: Quassia Gnus v0.14. - - * texi/dir: New file. - - * texi/dir, lisp/pop3.el, lisp/nntp.el, lisp/nnml.el, - lisp/nnmail.el, lisp/nnfolder.el, lisp/message.el, lisp/lpath.el, - lisp/gnus.el, lisp/gnus-win.el, lisp/gnus-util.el, - lisp/gnus-topic.el, lisp/gnus-sum.el, lisp/gnus-start.el, - lisp/gnus-score.el, lisp/gnus-msg.el, lisp/gnus-mh.el, - lisp/gnus-cus.el, lisp/gnus-art.el, lisp/gnus-agent.el, - lisp/ChangeLog: Quassia Gnus v0.14. - - * lisp/message.el, lisp/ChangeLog: sync with qgnus-0.13. - - * texi/gnus.texi, texi/ChangeLog, lisp/pop3.el, lisp/nnweb.el, - lisp/nnmail.el: Quassia Gnus v0.13. - - * lisp/nnlistserv.el: New file. - - * lisp/nnlistserv.el, lisp/message.el, lisp/md5.el, lisp/lpath.el, - lisp/gnus.el, lisp/gnus-topic.el, lisp/gnus-sum.el, - lisp/gnus-score.el, lisp/gnus-picon.el, lisp/gnus-msg.el, - lisp/gnus-group.el, lisp/gnus-art.el, lisp/gnus-agent.el, - lisp/dgnushack.el, lisp/ChangeLog, GNUS-NEWS: Quassia Gnus v0.13. - - * lisp/message.el: sync with qgnus-0.12. - - * texi/message.texi, texi/gnus.texi, texi/gnus-faq.texi, - texi/ChangeLog, lisp/nntp.el, lisp/nnmh.el, lisp/nnmail.el, - lisp/nndraft.el, lisp/messcompat.el, lisp/message.el, - lisp/gnus.el, lisp/gnus-xmas.el, lisp/gnus-uu.el, - lisp/gnus-sum.el, lisp/gnus-score.el, lisp/gnus-salt.el, - lisp/gnus-msg.el, lisp/gnus-int.el, lisp/gnus-group.el, - lisp/gnus-demon.el, lisp/gnus-cache.el, lisp/gnus-art.el, - lisp/gnus-agent.el, lisp/ChangeLog, GNUS-NEWS: Quassia Gnus v0.12. - - * lisp/message.el (message-send-news-function): Use - `message-send-news-with-gnus' in default. - (message-send-via-news): Use `message-send-news' instead of - `message-send-news-function'. - (message-send-mail): Don't avoid text properties; run - `message-encode-mail-hook'. - (message-send-news): Don't avoid text properties; run - `message-encode-news-hook'; use `message-send-news-function'. - (message-send-news-with-gnus): New function. - (message-cancel-news): Use `message-send-news' instead of - `message-send-news-function'. + * lisp/gnus-offline.el : New file. diff --git a/ChangeLog.1 b/ChangeLog.1 new file mode 100644 index 0000000..268160c --- /dev/null +++ b/ChangeLog.1 @@ -0,0 +1,1747 @@ +1998-12-18 Katsumi Yamaoka + + * lisp/gnus-start.el (gnus-read-newsrc-el-file): Bug (referring to + unbounded variable) fix. + +1998-12-17 Katsumi Yamaoka + + * lisp/gnus-start.el (gnus-read-newsrc-el-file): Don't load newsrc + file if it does not exist. + +1998-12-14 Katsumi Yamaoka + + * lisp/gnus.el: (gnus-version-number): Update to 6.9.2. + + * lisp/nnheader.el (nnheader-find-file-noselect): Call + `find-file-noselect-as-coding-system' with CODING-SYSTEM as the + 1st arg. + + * lisp/nnmail.el (nnmail-find-file): Call + `insert-file-contents-as-coding-system' with CODING-SYSTEM as the + 1st arg. + * lisp/nnheader.el (nnheader-insert-file-contents): Likewise. + + * lisp/gnus-start.el (gnus-save-newsrc-file): Call + `write-region-as-coding-system' with CODING-SYSTEM as the 1st arg. + (gnus-read-newsrc-el-file): Call + `insert-file-contents-as-coding-system' with CODING-SYSTEM as the + 1st arg. + + * lisp/gnus-cache.el (gnus-cache-save-buffers): Call + `gnus-write-buffer-as-coding-system' with CODING-SYSTEM as the 1st + arg. + + * lisp/gnus-util.el (gnus-write-buffer-as-coding-system): Be + CODING-SYSTEM the 1st arg. + + * lisp/nnmail.el (nnmail-write-region): Call + `write-region-as-coding-system' with CODING-SYSTEM as the 1st arg. + * lisp/gnus-start.el (gnus-save-newsrc-file): Likewise. + * lisp/gnus-agent.el (gnus-agent-expire): Likewise. + (gnus-agent-fetch-headers): Likewise. + (gnus-agent-flush-cache): Likewise. + (gnus-agent-fetch-articles): Likewise. + (gnus-agent-save-history): Likewise. + (gnus-agent-save-groups): Likewise. + (gnus-agent-save-active): Likewise. + +1998-12-14 Katsumi Yamaoka + + * lisp/nnheader.el (nnheader-find-file-noselect): Use + `find-file-noselect-as-coding-system' (renamed from + `find-file-noselect-as-specified-coding-system'). + + * lisp/nnmail.el (nnmail-find-file): Use + `insert-file-contents-as-coding-system' (renamed from + `insert-file-contents-as-specified-coding-system'). + * lisp/nnheader.el (nnheader-insert-file-contents): Likewise. + + * lisp/gnus-start.el (gnus-save-newsrc-file): Use + `write-region-as-coding-system' (renamed from + `write-region-as-specified-coding-system'). + (gnus-read-newsrc-el-file): Use + `insert-file-contents-as-coding-system' (renamed from + `insert-file-contents-as-specified-coding-system'). + + * lisp/gnus-cache.el (gnus-cache-save-buffers): Use + `gnus-write-buffer-as-coding-system' (renamed from + `gnus-write-buffer-as-specified-coding-system'). + + * lisp/gnus-util.el (gnus-write-buffer-as-coding-system): + Renamed from `gnus-write-buffer-as-specified-coding-system'. + + * lisp/nnmail.el (nnmail-write-region): Use + `write-region-as-coding-system' (renamed from + `write-region-as-specified-coding-system'). + * lisp/gnus-start.el (gnus-save-newsrc-file): Likewise. + * lisp/gnus-agent.el (gnus-agent-expire): Likewise. + (gnus-agent-fetch-headers): Likewise. + (gnus-agent-flush-cache): Likewise. + (gnus-agent-fetch-articles): Likewise. + (gnus-agent-save-history): Likewise. + (gnus-agent-save-groups): Likewise. + (gnus-agent-save-active): Likewise. + +1998-12-11 Katsumi Yamaoka + + * lisp/nnheader.el (nnheader-find-file-noselect): Call + `find-file-noselect-as-specified-coding-system' directly. + +1998-12-10 Katsumi Yamaoka + + * lisp/pop3.el (pop3-movemail): Use `write-region-as-binary' + instead of `append-to-file'. + (pop3-movemail-file-coding-system): Abolished. + + * lisp/nnheader.el (nnheader-find-file-noselect): Use + `find-file-noselect-as-specified-coding-system' instead of + `find-file-noselect'. + + * lisp/nnmail.el (nnmail-find-file): Use + `insert-file-contents-as-specified-coding-system' instead of + `insert-file-contents'. + * lisp/nnheader.el (nnheader-insert-file-contents): Likewise. + + * lisp/message.el (message-send-mail-with-qmail): Enclose + `call-process-region' with `as-binary-process'. + (message-send-mail-with-sendmail): Likewise. + (message-send-coding-system): Abolished. + + * lisp/gnus-start.el (gnus-save-newsrc-file): Emulate + `save-buffer' with `write-region-as-specified-coding-system'. + (gnus-read-newsrc-el-file): Emulate `load' with + `insert-file-contents-as-specified-coding-system' and + `eval-region'. + + * lisp/gnus-cache.el (gnus-cache-save-buffers): Use + `gnus-write-buffer-as-specified-coding-system' instead of + `gnus-write-buffer'. + + * lisp/gnus-util.el (gnus-output-to-mail): Use + `write-region-as-binary' instead of `append-to-file'. + (gnus-output-to-mail): Use `gnus-write-buffer-as-binary' instead + of `gnus-write-buffer'. + (gnus-write-buffer-as-specified-coding-system): New function. + (gnus-write-buffer-as-binary): New function. + + * lisp/nnmail.el (nnmail-write-region): Use + `write-region-as-specified-coding-system' instead of + `write-region'. + * lisp/gnus-start.el (gnus-save-newsrc-file): Likewise. + * lisp/gnus-agent.el (gnus-agent-expire): Likewise. + (gnus-agent-fetch-headers): Likewise. + (gnus-agent-flush-cache): Likewise. + (gnus-agent-fetch-articles): Likewise. + (gnus-agent-save-history): Likewise. + (gnus-agent-save-groups): Likewise. + (gnus-agent-save-active): Likewise. + +1998-12-08 Katsumi Yamaoka + + * lisp/smtp.el (smtp-via-smtp): Use `open-network-stream-as-binary' + instead of `open-network-stream'. + * lisp/pop3.el (pop3-open-server): Likewise. + * lisp/nntp.el (nntp-open-network-stream): Likewise. + * lisp/gnus-gl.el (bbb-connect-to-bbbd): Likewise. + + * lisp/nntp.el (nntp-open-rlogin): Enclose `start-process' with + `as-binary-process'. + (nntp-open-telnet): Likewise. + + * lisp/smtp.el (smtp-coding-system): Abolished. + + * lisp/nntp.el (nntp-coding-system-for-write): Abolished. + (nntp-coding-system-for-read): Abolished. + + * lisp/nntp.el: Don't require `tcp'. + * lisp/nndb.el: Likewise. + +1998-12-07 Katsumi Yamaoka + + * lisp/message.el (message-get-parameter-with-eval): Call + `message-get-parameter' with arg `key' first. + +1998-11-26 Yoshiki Hayashi + + * lisp/gnus.el: (gnus-version-number): Update to 6.9.1. + (gnus-version): Modified for SEMI 1.11, FLIM 1.12. + + * lisp/gnus-draft.el: (gnus-draft-decoding-buffer): Call + `mime-edit-decode-message-in-buffer' instead of + `mime-edit-decode-buffer'. + + * lisp/gnus-sum.el: (gnus-structured-field-decoder): Use + `eword-decode-and-unfold-structured-field-body' instead of + 'eword-decode-and-unfold-structured-field'. + (gnus-unstructured-field-decoder): remove `must-unfold'. + +1998-11-26 Katsumi Yamaoka + + * lisp/gnus-msg.el (gnus-summary-supersede-article): Bind + `gnus-message-setup-hook' to nil. + + * lisp/message.el (message-supersede-setup-for-mime-edit): New + function. + (message-supersede-setup-function): New user option. Use + `message-supersede-setup-for-mime-edit' in default. + (message-supersede): Call `message-supersede-setup-function' if it + is non-nil. + (message-supersede-setup-hook): New user option. + + * lisp/message.el (message-bounce-setup-for-mime-edit): Don't + delete header separator. It is up to MIME-Edit to do so. + +1998-11-25 Hasebe Satoshi + + * lisp/gnus-util.el: Require RMAIL in a different way. + +1998-11-24 Tatsuya Ichikawa + + * lisp/pop3-fma.el (pop3-fma-save-password-information): New + variable. Do not save password information when + `pop3-fma-save-password-information' set to nil (in default). + (pop3-fma-encode-string): abolished - because of difference of + FLIM API. + (pop3-fma-decode-string): Likewise. + +1998-11-24 Katsumi Yamaoka + + * lisp/dgnushack.el (dgnushack-compile): Dismiss "gnus-bbdb.el" + from the list if BBDB has not been installed. + +1998-11-20 Tatsuya Ichikawa + + * lisp/gnus-util.el: Require `rmail' only if RMAIL has been + installed. + +1998-11-19 Keiichi Suzuki + + * lisp/message.el (message-get-reply-buffer): Abolished. + (message-get-original-reply-buffer): Abolished. + (message-get-parameter): New inline function. + (message-get-parameter-with-eval): New macro. + (message-fetch-reply-field): Do not use `message-get-reply-buffer'. + (message-yank-original): Ditto. + (message-setup): Use `message-get-parameter'. + (message-mime-insert-article): Use + `message-get-parameter-with-eval' instead of + `message-get-original-reply-buffer'. + + * lisp/gnus-msg.el (gnus-inews-add-send-actions): Do not add + `set-window-configuration' to action when + `message-use-multi-frames' is non-`nil'. + +1998-11-19 Katsumi Yamaoka + + * lisp/gnus.el (gnus-version-number): Update to 6.8.20. + + * Sync up with Gnus 5.6.45. + +1998-11-18 Katsumi Yamaoka + + * lisp/message.el (message-mimic-kill-buffer): Rewrite. + +1998-11-18 Katsumi Yamaoka + + * lisp/message.el (message-mimic-kill-buffer): New function. + (message-mode-map): Use it for `C-x k'. + +1998-11-18 Keiichi Suzuki + + * lisp/message.el (message-dont-send): Use `message-delete-frame'. + +1998-11-14 Kenji Itoh + + * lisp/nnmail.el (nnmail-read-passwd): Use `read-passwd' if it + exists as a function. + + * lisp/pop3.el (pop3-read-passwd): Likewise. + +1998-11-16 Katsumi Yamaoka + + * make.bat: Replace line endings from `LF' to `CRLF'. + +1998-11-16 Katsumi Yamaoka + + * README-gnus-bbdb.en, README-gnus-bbdb.ja: New files. + + * lisp/gnus-bbdb.el: Replace string in comment "Nana-" to "Semi-". + +1998-11-13 Keiichi Suzuki + + * lisp/gnus-msg.el (gnus-setup-message): Setup + `message-startup-parameter-alist' for starting `message-mode'. + + * lisp/message.el (message-parameter-alist): New variable. + (message-startup-parameter-alist): New variable. + (message-eval-parameter): New function. + (message-get-reply-buffer): New function. + (message-get-original-reply-buffer): New function. + (message-mode): Make new local variable `message-parameter-alist'. + (message-fetch-reply-field): Use `message-get-reply-buffer'. + (message-yank-original): Ditto. + (message-setup): Get message reply buffer from + `message-parameter-alist'. + (message-mime-insert-article): Use + `message-get-original-reply-buffer'. + + * lisp/gnus-bbdb.el: New file. Interface for BBDB. + +1998-11-12 Katsumi Yamaoka + + * lisp/gnus-msg.el (gnus-summary-resend-bounced-mail): Bind + `gnus-message-setup-hook' to nil. + + * lisp/message.el (message-bounce-setup-for-mime-edit): New + function. + (message-bounce-setup-function): New user option. Use + `message-bounce-setup-for-mime-edit' in default. + (message-bounce): Call `message-bounce-setup-function' if it is + non-nil. + (message-bounce-setup-hook): New user option. + + * lisp/gnus-art.el (gnus-article-edit-done): Remove + `gnus-article-mime-edit-article-unwind' from + `gnus-article-mode-hook' before run `gnus-article-edit-exit'. + (gnus-article-edit-article): Call + `gnus-article-edit-article-setup-function' if it is non-nil. + (gnus-article-edit-article-setup-function): New user option. Use + `gnus-article-mime-edit-article-setup' in default. + (gnus-article-mime-edit-article-setup-hook): New hook. + (gnus-article-mime-edit-exit): New function. Use + `gnus-article-make-full-mail-header'. + (gnus-article-mime-edit-article-setup): Ditto. + (gnus-article-mime-edit-article-unwind): New function. + (gnus-article-make-full-mail-header): New function. + (gnus-article-prepare-display): New function. + (gnus-article-prepare): Use it. + +1998-11-11 Tatsuya Ichikawa + + * lisp/message.el (message-mode-map): Add new command key + `C-x C-s' for `message-save-drafts'. + +1998-11-11 Keiichi Suzuki + + * lisp/message.el (message-8bit-encoding-list): New variable. + (message-send-mail): Use `message-check-mail-syntax'. + (message-check-news-body-syntax): Use `message-check-8bit'. + (message-check-mail-syntax): New function. + (message-check-mail-header-syntax): New function. + (message-check-mail-body-syntax): New function. + (message-check-8bit): New function. + +1998-11-09 Tatsuya Ichikawa + + * lisp/pop3-fma.el: Set the value of `nnmail-read-passwd' as a + symbol `pop3-fma-read-passwd'. + +1998-11-04 Yoshiki Hayashi + + * lisp/message.el: (message-do-fcc): Don't run message-header-hook + and message-before-do-fcc-hook. + +1998-11-02 Yoshiki Hayashi + + * lisp/message.el: (message-make-in-reply-to): Generate + In-Reply-To header according to draft-ietf-drums-msg-fmt-05. + +1998-10-30 Tatsuya Ichikawa + + * lisp/gnus.el: Add autoload setting for `pop3-fma'. + +1998-10-28 Tatsuya Ichikawa + + * lisp/pop3-fma.el: Determin base64 encode/decode function by FLIM. + +1998-10-26 Tatsuya Ichikawa + + * lisp/message.el (message-save-drafts): New function. + To save drafts in network code. + (message-save-buffer): New variable. + + * lisp/pop3-fma.el: Require `mel-b-el' if `mel-b' does not exist. + +1998-10-23 Katsumi Yamaoka + + * lisp/gnus-msg.el (gnus-message-make-user-agent): New function. + +1998-10-21 Katsumi Yamaoka + + * lisp/gnus-xmas.el (gnus-tilde-pad-form): Guard for non string + symbol. + +1998-10-17 Tatsuya Ichikawa + + * lisp/pop3-fma.el (pop3-fma-init-message-hook): Change + message-send-hook to mime-edit-translate-hook. + +1998-10-14 Katsumi Yamaoka + + * lisp/pop3-fma.el (pop3-fma-read-char-exclusive): New macro. Use + `next-command-event' instead of `read-char-exclusive' under XEmacs. + (pop3-fma-read-noecho): Use it. + +1998-10-13 Katsumi Yamaoka + + * lisp/nnheaderxm.el (nnheader-xmas-Y-or-n-p): New function. + It will be used for the substitute of `nnheader-Y-or-n-p' under + XEmacs. + + * lisp/nnheader.el (nnheader-Y-or-n-p): Rewrite for Emacs 19 or + later except for XEmacs. + +1998-10-08 Katsumi Yamaoka + + * lisp/message.el (message-mode-map): Define key `C-x k'. + (message-kill-buffer): Change the prompt string. + (message-kill-buffer): Refer to + `message-kill-buffer-query-function'. + (message-kill-buffer-query-function): New user option. + + * lisp/nnheader.el (nnheader-Y-or-n-p): New function. + +1998-10-07 Yoshiki Hayashi + + * lisp/nnagent.el (nnagent-open-server): Small bug fix. + +1998-10-07 Keiichi Suzuki + + * TODO.ja: New file. + +1998-10-05 Yoshiki Hayashi + + * lisp/gnus.el (gnus-info-filename): New variable. + (gnus-info-find-node): Use `gnus-info-filename' and + `current-language-environment'. + +1998-10-03 MORIOKA Tomohiko + + * lisp/gnus-draft.el (gnus-draft-send): Call + `message-send-news-function' or `message-send-mail-function' + instead of `message-send-and-exit'. + +1998-10-01 Tatsuya Ichikawa + + * lisp/pop3-fma.el (pop3-fma-movemail): Bug fix. + Delete variable pop3-fma-movemail options. + Add new variabel pop3-fma-commandline-arguments. + +1998-09-30 MORIOKA Tomohiko + + * lisp/message.el (message-make-user-agent): New implementation. + +1998-08-25 Shuhei KOBAYASHI + + * lisp/gnus-msg.el (gnus-bug-message): About Semi-gnus. + (gnus-extended-version): Return gnus version only. + (gnus-bug): Add Semi-gnus developers to recipients. + + * lisp/message.el (message-make-user-agent): New function. + (message-generate-headers): Use it. + +1998-06-12 Shuhei KOBAYASHI + + * lisp/message.el (message-required-news-headers): `X-Newsreader' + was replaced by `User-Agent'. + (message-required-mail-headers): `X-Mailer' was replaced by + `User-Agent'. + (message-header-format-alist): `X-Mailer' and `X-Newsreader' were + replaced by `User-Agent'. + (message-generate-headers): Ditto. + + (message-user-agent): New variable. + (message-newsreader): Replaced by `message-user-agent'. + (message-mailer): Ditto. + (message-mode): `message-mailer' and `message-newsreader' were + replaced by `message-user-agent'. + + * lisp/gnus-msg.el (gnus-inews-add-send-actions): `message-mailer' + and `message-newsreader' were replaced by `message-user-agent'. + (gnus-extended-version): Generate "PRODUCT/VERSION" style strings. + + * lisp/gnus-soup.el (gnus-soup-send-packet): `message-mailer' and + `message-newsreader' were replaced by `message-user-agent'. + +1998-09-17 Tatsuya Ichikawa + + * lisp/gnus-draft.el (gnus-draft-edit-message): Use + `gnus-draft-setup-for-editing' instead of `gnus-draft-setup'. + (gnus-draft-send): Use `gnus-draft-setup-for-sending' instead of + `gnus-draft-setup'. + (gnus-draft-setup-for-editing): New function (renamed from + `gnus-draft-setup'). + (gnus-draft-setup-for-sending): New function. + (gnus-draft-send-draft-buffer): New variable. + +1998-09-26 Katsumi Yamaoka + + * lisp/gnus.el (gnus-version-number): Update to 6.8.19. + + * Sync up with Gnus 5.6.44. + +1998-09-16 Katsumi Yamaoka + + * Makefile.in: Add entry `info-ja'. + * texi/Makefile.in: Add entry `ja'. + +1998-09-11 MORIOKA Tomohiko + + * lisp/message.el (message-send): Don't call + `message-fix-before-sending' before `message-encode-function' is + called. + +1998-09-06 Tatsuya Ichikawa + + * lisp/pop3-fma.el: Add error handle and fix typo. + +1998-08-28 Keiichi Suzuki + + * lisp/message.el: Repair `multi frame control'. + +1998-08-27 Tatsuya Ichikawa + + * lisp/gnus.el (gnus-version-number): Update to 6.8.16. + + * Sync up with Gnus 5.6.41. + +1998-08-26 Katsumi Yamaoka + + * lisp/gnus-spec.el (gnus-parse-simple-format): Use + `gnus-tilde-pad-form' instead of the padding faculty of `format' + under XEmacs-mule. + + * lisp/gnus-xmas.el + (gnus-xmas-redefine): Redifine `gnus-truncate-string', + `gnus-tilde-max-form' and `gnus-tilde-cut-form' for XEmacs-mule. + (gnus-xmas-define): New function 'gnus-tilde-pad-form' for + XEmacs-mule. + +1998-08-26 Shuhei KOBAYASHI + + * lisp/gnus-art.el (gnus-article-narrow-to-signature): + Removed TM stuff. + (gnus-article-display-mime-message): + Set `mime-button-mother-dispatcher' in correct buffer. + (gnus-url-mailto): Use `gnus-setup-message'. + (gnus-button-mailto): Ditto. + (gnus-button-reply): Ditto. + + * lisp/gnus-ems.el (gnus-mule-max-width-function): Removed. + (gnus-truncate-string): Use `truncate-string-to-width' if available. + (gnus-tilde-max-form): New implementation. + (gnus-tilde-cut-form): Ditto. + + * lisp/gnus-msg.el (gnus-summary-mail-digest): New function. + (gnus-summary-post-digest): New function. + + * lisp/gnus-sum.el (gnus-summary-make-menu-bar): Use + `gnus-summary-mail-digest' and `gnus-summary-post-digest' instead + of `gnus-uu-digest-mail-forward' and `gnus-uu-digest-post-forward'. + + * lisp/gnus-util.el (gnus-truncate-string): Ignore more than two + arguments. + + * lisp/message.el (message-forward-end-separator): Use + `text/plain' tag. + +1998-08-23 Shuhei KOBAYASHI + + * lisp/message.el: Suppress some byte-compile warnings. + (message-make-forward-subject): Failed to sync. + (message-setup): Ditto. + (message-clone-locals): Modify regexp. + +1998-08-23 Shuhei KOBAYASHI + + * lisp/gnus-agent.el (gnus-agent-braid-nov): Use + `nnheader-insert-file-contents'. + + * lisp/gnus-i18n.el (gnus-set-summary-default-charset): Sync up + with "akr" branch. + +1998-08-23 Tatsuya Ichikawa + + * lisp/gnus.el (gnus-version-number): Update to 6.8.15. + + * Sync up with Gnus 5.6.39. + + * lisp/pop3-fma.el (pop3-fma-movemail): Enable to get from APOP server. + (pop3-fma-set-pop3-password) Enable to get from APOP server. + +1998-08-20 Yoshiki Hayashi + + * lisp/message.el (message-clone-locals): Add `user-full-name' + and `user-mail-address' to regexp. + +1998-08-20 Tatsuya Ichikawa + + * lisp/gnus.el (gnus-version-number): Update to 6.8.14. + + * Sync up with Gnus 5.6.38. + +1998-08-20 Keiichi Suzuki + + * lisp/message.el (message-frames): New custom group. + (message-original-frame): New variable. + (message-use-multi-frames): New variable. + (message-delete-frame-on-exit): New variable. + (message-send-and-exit): Delete frame which made for editing + message. + (message-kill-buffer): Ditto. + (message-delete-frame): New function. + (message-pop-to-buffer): Make new frame when edit message. + +1998-08-18 Tatsuya Ichikawa + + * lisp/gnus.el (gnus-version-number): Update to 6.8.13. + + * Sync up with Gnus 5.6.37. + +1998-08-16 Yoshiki Hayashi + + * lisp/gnus-sum.el (gnus-summary-scroll-down): Failed to sync. + +1998-08-16 Tatsuya Ichikawa + + * lisp/gnus.el (gnus-version-number): Update to 6.8.12. + + * Sync up with Gnus 5.6.36. + +1998-08-15 Yoshiki Hayashi + + * texi/gnus-ja.texi: Update. + +1998-08-14 Katsumi Yamaoka + + * lisp/gnus-start.el (gnus-save-newsrc-file): Bind + `coding-system-for-write' by `gnus-startup-file-coding-system' + while saving the quick newsrc file. + + * lisp/gnus-start.el (gnus-startup-file-coding-system): Change + default value to `ctext'. + +1998-08-13 Tatsuya Ichikawa + + * lisp/gnus.el (gnus-version-number): Fix typo. + + * lisp/gnus.el (gnus-version-number): Update to 6.8.11. + + * Sync up with Gnus 5.6.34. + +1998-08-12 Tatsuya Ichikawa + + * lisp/gnus.el (gnus-version-number): Update to 6.8.10. + + * Sync up with Gnus 5.6.33. + +1998-08-11 Tatsuya Ichikawa + + * lisp/gnus.el (gnus-version-number): Update to 6.8.9. + + * Sync up with Gnus 5.6.31. + +1998-08-10 Tatsuya Ichikawa + + * lisp/gnus.el (gnus-version-number): Update to 6.8.8. + + * Sync up with Gnus 5.6.30. + +1998-08-10 Keiichi Suzuki + + * lisp/message.el (message-yank-original): For citing any message. + +1998-08-10 Shuhei KOBAYASHI + + * lisp/gnus.el (gnus-version-number): Update to 6.8.7. + +1998-08-06 Katsumi Yamaoka + + * lisp/smtp.el: Do not insert empty line at the end of message. + +1998-08-06 Tatsuya Ichikawa + + * lisp/gnus.el (gnus-version-number): Update to 6.8.6. + + * Sync up with Gnus 5.6.29. + +1998-08-05 Tatsuya Ichikawa + + * lisp/gnus-start.el (gnus-read-init-file): Fix indent. + * lisp/gnus-ems.el (gnus-tilde-max-form): Redefine instead of + (gnus-summary-line-format-spec) to display Japanese character + correctly in Gnus summaly. + +1998-08-05 Keiichi Suzuki + + * lisp/gnus-start.el (gnus-read-init-file): Don't restrict + `coding-system-for-read' by `binary' when loading `.gnus'. + +1998-08-04 Tatsuya Ichikawa + + * lisp/gnus.el (gnus-version-number): Update to 6.8.5. + + * Sync up with Gnus 5.6.28. + +1998-07-27 Tatsuya Ichikawa + + * lisp/gnus.el (gnus-version-number): Update to 6.8.4. + + * Sync up with Gnus 5.6.27. + +1998-07-27 Yoshiki Hayashi + + * texi/message-ja.texi: Japanese translation of "message.texi". + +1998-07-26 Tatsuya Ichikawa + + * lisp/gnus.el (gnus-version-number): Update to 6.8.3. + + * Sync up with Gnus 5.6.26. + +1998-07-23 Shuhei KOBAYASHI + + * lisp/gnus.el (gnus-version-number): Update to 6.8.2. + (gnus-version): Change to "Semi-gnus". Change comment format. + +1998-07-21 Keisuke Mori + + * texi/gnus-ja.texi: Add "Appendices". + +1998-07-21 Yoshiki Hayashi + + * texi/gnus-ja.texi: Add "Appendices". + +1998-07-16 Shuhei KOBAYASHI + + * lisp/gnus.el (gnus-version-number): Update to 6.8.1. + + * Sync up with Gnus 5.6.24. + +1998-07-10 Keiichi Suzuki + + * lisp/gnus-ems.el (gnus-mule-cite-add-face): Fix problem when multi + bytes charactors are used in cite prefix. (for Emacs 20.1 and 20.2) + (gnus-ems-redefine): for Emacs 20.1 and 20.2 + + * lisp/gnus-cite.el (gnus-cite-add-face): Abolish my last bogus change. + +1998-07-09 Keiichi Suzuki + + * lisp/gnus-cite.el (gnus-cite-add-face): Fix problem when multi + bytes charactors are used in cite prefix. + +1998-07-07 Yoshiki Hayashi + + * texi/gnus-ja.texi: Add "The End". + +1998-07-06 Keisuke Mori + + * texi/gnus-ja.texi: Add "Various". + +1998-07-06 Yoshiki Hayashi + + * texi/gnus-ja.texi: Add "Various". + * texi/gnus-ja.texi: Sync up with Gnus 5.6.22 + +1998-07-02 MORIOKA Tomohiko + + * lisp/message.el (message-header-format-alist): Repair to use + `message-fill-references' for References. + +1998-07-01 MORIOKA Tomohiko + + * lisp/gnus-art.el (gnus-article-header-presentation-method): + Delete nil optional arguments. + - Delete setting for `mime-raw-representation-type-alist'. + +1998-07-01 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to 6.8.0. + (gnus-version): Modify for FLIM 1.8. + + * lisp/gnus-art.el (gnus-article-header-presentation-method): + Modify for FLIM 1.8. + +1998-06-30 Keisuke Mori + + * texi/gnus-ja.texi: Add "Scroing". + +1998-06-30 Yoshiki Hayashi + + * texi/gnus-ja.texi: Add "Scoring". + +1998-06-30 Tatsuya Ichikawa + + * Sync up with Gnus 5.6.22 + * lisp/gnus.el (gnus-version-number): Update to 6.7.8. + * lisp/pop3-fma.el : Enable to get localhost mail spool. + +1998-06-29 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to 6.7.7. + + * lisp/gnus-art.el (gnus-article-prepare): Set up + `gnus-article-current-summary' of gnus-article-buffer. + (gnus-request-article-this-buffer): Don't set up + `gnus-article-current-summary'. + +1998-06-27 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to 6.7.6. + +1998-06-27 MORIOKA Tomohiko + + * lisp/gnus-art.el (gnus-mime-preview-quitting-method): Renamed + from `mime-preview-quitting-method-for-gnus'. + +1998-06-27 MORIOKA Tomohiko + + * lisp/gnus-sum.el (gnus-summary-preview-mime-message): New + implementation. + + * lisp/gnus-art.el (mime-preview-quitting-method-for-gnus): Use + `gnus-article-show-summary' is `gnus-show-mime' is not nil. + +1998-06-27 MORIOKA Tomohiko + + * texi/ChangeLog, texi/gnus.texi, texi/message.texi, + lisp/ChangeLog, lisp/gnus.el, lisp/nngateway.el, lisp/nnfolder.el, + lisp/message.el, lisp/gnus-sum.el, lisp/gnus-soup.el: Sync up with + Gnus 5.6.20. + +1998-06-26 MORIOKA Tomohiko + + * README, texi/ChangeLog, texi/gnus.texi, texi/message.texi, + lisp/ChangeLog, lisp/nnweb.el, lisp/nnmail.el, lisp/nndoc.el, + lisp/message.el, lisp/lpath.el, lisp/gnus.el, lisp/gnus-util.el, + lisp/gnus-topic.el, lisp/gnus-sum.el, lisp/gnus-score.el, + lisp/gnus-group.el, lisp/gnus-ems.el, lisp/gnus-demon.el, + lisp/gnus-art.el: Sync up with Gnus 5.6.16. + +1998-06-26 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to 6.7.3. + + * lisp/gnus-sum.el (gnus-summary-move-article): Use + `gnus-request-article-this-buffer'. + (gnus-request-partial-message): Likewise. + + * lisp/gnus-art.el (gnus-article-prepare): Use + `gnus-request-article-this-buffer'. + (gnus-request-article-this-buffer): Renamed from + `gnus-request-original-article'; abolish conventional + implementation. + - Abolish unused setting for `mime-view-show-summary-method'. + +1998-06-26 MORIOKA Tomohiko + + * readme, texi/ChangeLog, texi/gnus.texi, texi/message.texi, + lisp/ChangeLog, lisp/gnus.el, lisp/nnmail.el, lisp/nnheader.el, + lisp/nngateway.el, lisp/nnfolder.el, lisp/nnagent.el, + lisp/message.el, lisp/gnus-sum.el, lisp/gnus-score.el, + lisp/gnus-salt.el, lisp/gnus-msg.el, lisp/gnus-cus.el, + lisp/gnus-cache.el, lisp/gnus-art.el: Sync up with Gnus 5.6.15. + +1998-06-24 MORIOKA Tomohiko + + * texi/gnus.texi, texi/message.texi, texi/ChangeLog: Sync up with + Gnus 5.6.13. + +1998-06-14 Tatsuya Ichikawa + + * Sync up with Gnus 5.6.13. + +1998-06-24 MORIOKA Tomohiko + + * lisp/gnus-art.el (gnus-article-display-mime-message): Don't + `save-excursion'. + (gnus-article-prepare): Use `mime-fetch-field' instead of + `mime-entity-fetch-field'. + +1998-06-19 MORIOKA Tomohiko + + * lisp/gnus-art.el (gnus-article-display-mime-message): Use + `mime-display-message' instead of `mime-view-buffer'. + (gnus-article-display-traditional-message): Set + `gnus-article-buffer'. + (gnus-article-display-message-with-encoded-word): Modify for + `gnus-article-display-traditional-message'. + (gnus-article-prepare): Use `mime-parse-buffer' and + `mime-entity-fetch-field'; don't set gnus-article-buffer. + +1998-06-19 MORIOKA Tomohiko + + * lisp/gnus-sum.el (gnus-summary-move-article): Use + `gnus-request-original-article' instead of + `gnus-request-article-this-buffer'. + +1998-06-19 MORIOKA Tomohiko + + * texi/gnus-ja.texi, texi/gnus.texi (Using MIME): Modify + description about new display mechanism. + +1998-06-19 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to 6.6.0. + (gnus-version): Modify for this branch. + + * lisp/gnus-art.el (gnus-article-display-method-for-mime): New + variable; abolish `gnus-show-mime-method'. + (gnus-article-display-method-for-encoded-word): New variable; + abolish `gnus-decode-encoded-word-method'. + (gnus-article-display-method-for-traditional): New variable. + (gnus-article-display-mime-message): New function; abolish + `gnus-article-preview-mime-message'. + (gnus-article-display-traditional-message): New function. + (gnus-article-display-message-with-encoded-word): New function; + abolish `gnus-article-decode-encoded-word'. + (gnus-article-prepare): Change display mechanism; use + `gnus-request-original-article' instead of + `gnus-request-article-this-buffer'. + (gnus-request-original-article): New function. + +1998-06-22 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to 6.6.0. + (gnus-version): Modify for SEMI 1.8. + + * lisp/gnus-sum.el: Modify for interface change in SEMI 1.8 about + automatic message/partial combining. + +1998-06-19 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to 6.5.0. + (gnus-version): Modify for SEMI 1.7. + + * lisp/gnus-sum.el: Rename + `mime-method-to-combine-message/partial-pieces' to + `mime-combine-message/partial-pieces-automatically'. + + * lisp/gnus-art.el (gnus-article-preview-mime-message): Use + `mime-view-buffer'. + (gnus-article-decode-encoded-word): Fix DOC-string. + (gnus-article-header-presentation-method): New function; abolish + `gnus-content-header-filter'. + Modify for SEMI 1.7. + +1998-06-18 Keisuke Mori + + * texi/gnus-ja.texi: Add "Select Methods". + +1998-06-18 Yoshiki Hayashi + + * texi/gnus-ja.texi: Add "Select Methods". + +1998-06-17 Tatsuya Ichikawa + + * lisp/pop3-fma.el: Small bug fix. + + * lisp/pop3-fma.el: Delete variable pop3-fma-cypher-key + Use base64-encode-string , base64-decode-string instead. + Both change by Yasuo OKABE + +1998-06-13 Tatsuya Ichikawa + + * lisp/pop3-fma.el: New function pop3-fma-cypher-string + New variable pop3-fma-cypher-key + +1998-06-07 MORIOKA Tomohiko + + * lisp/gnus-art.el: Delete setting for + `article-de-quoted-unreadable' and + `article-mime-decode-quoted-printable' because they have been + already abolished. + +1998-06-07 MORIOKA Tomohiko + + * texi/gnus-ja.texi: Sync up with latest gnus.texi. + + * texi/gnus.texi: Modify for Semi-gnus 6.4.0. + +1998-06-06 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-extract-address-components): Add + `std11-extract-address-components' as a choice. + +1998-06-06 Yoshiki Hayashi + + * texi/gnus-ja.texi: Add "Composing Messages". + +1998-06-04 MORIOKA Tomohiko + + * lisp/gnus-ems.el (gnus-ems-redefine): Must require 'path-util + before call `module-installed-p'. + + * lisp/gnus.el (gnus-version-number): Update to 6.4.0. + (gnus-version): Modify for SEMI 1.5. + + * lisp/gnus-art.el: Modify for SEMI 1.5 API. + +1998-06-04 Tatsuya Ichikawa + + * lisp/pop3-fma.el: New file. To handle multiple POP account. + + * lisp/gnus.el (gnus-version-number): Update to 6.3.4. + And fix typo 5.6.10 -> 5.6.11. + +1998-06-03 Shuhei KOBAYASHI + + * lisp/gnus.el (gnus-version-number): Update to 6.3.3. + + * Sync up with Gnus 5.6.11. + +1998-06-03 Keisuke Mori + + * texi/gnus-ja.texi: Add "The Article Buffer". + +1998-06-03 Yoshiki Hayashi + + * texi/gnus-ja.texi: Add "The Summary Buffer". + +1998-06-02 Tatsuya Ichikawa + + * lisp/gnus.el (gnus-version-number): Update to 6.3.2. + + * Sync up with Gnus 5.6.10. + +1998-05-30 Shuhei KOBAYASHI + + * README.semi: Add description of `shuhei-k' branch. + +1998-05-17 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to 6.3.1. + +1998-05-17 MORIOKA Tomohiko + + * lisp/gnus-util.el (gnus-output-to-rmail): Guard as binary. + + * lisp/gnus-util.el (gnus-output-to-mail): Guard as binary. + +1998-04-24 Yoshiki Hayashi + + * texi/gnus-ja.texi: Add "The Active File". + +1998-05-04 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to 6.3.0. + (gnus-version): Modify for SEMI 1.4. + + * lisp/gnus-sum.el: Use 'mime-add-condition to set up + acting-condition. + +1998-05-04 MORIOKA Tomohiko + + * lisp/lpath.el: Must add "flim" instead of "mel" to load-path. + +1998-05-03 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to 6.2.5. + + * texi/gnus.texi, lisp/ChangeLog: Sync up with Gnus v5.6.9. + + * lisp/gnus.el, lisp/message.el, lisp/gnus-sum.el, + lisp/gnus-msg.el, lisp/gnus-draft.el, lisp/gnus-agent.el: Sync up + with Gnus v5.6.9. + +1998-04-30 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to 6.2.4. + + * texi/gnus.texi, lisp/ChangeLog: Sync up with Gnus 5.6.7. + + * lisp/gnus.el, lisp/message.el, lisp/gnus-sum.el, + lisp/gnus-msg.el, lisp/gnus-cache.el, lisp/gnus-art.el: Sync up + with Gnus 5.6.7. + +1998-04-28 Shuhei KOBAYASHI + + * lisp/gnus.el (gnus-version-number): Update to 6.2.3. + + * Sync up with Gnus 5.6.6. + +1998-04-27 MORIOKA Tomohiko + + * lisp/nnheader.el: Sync up with Gnus 5.6.5. + +1998-04-26 Shuhei KOBAYASHI + + * lisp/gnus.el (gnus-version-number): Update to 6.2.2. + + * Sync up with Gnus 5.6.5. + + * texi/custom.texi, texi/widget.texi: Removed from Semi-gnus. + +1998-04-25 MORIOKA Tomohiko + + * README.semi (How to get? (via CVS)): Modify descriptions about + TAG. + +1998-04-23 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to 6.2.1. + +1998-04-23 MORIOKA Tomohiko + + * lisp/message.el (message-make-forward-subject): Use + `eword-decode-unstructured-field-body' for subject. + + * lisp/gnus-msg.el (gnus-summary-mail-forward): Make local + variable `default-mime-charset' of `gnus-original-article-buffer' + and set up by `default-mime-charset' of `gnus-summary-buffer'. + +1998-04-23 MORIOKA Tomohiko + + * texi/gnus-ja.texi: Fix typos. + + * texi/gnus.texi: Modify for Semi-gnus. + +1998-04-23 Yoshiki Hayashi + + * texi/gnus-ja.texi: Add "Auto Save". + +1998-04-22 Yoshiki Hayashi + + * texi/gnus-ja.texi: Add "Startup Files". + +1998-04-21 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to 6.2.0. + (gnus-version): Modify for SEMI 1.3. + + * lisp/gnus-sum.el: Use 'ctree-set-calist-strictly instead of + 'set-atype to set up for 'mime-acting-condition. + +1998-04-21 Yoshiki Hayashi + + * texi/gnus-ja.texi: Add "Changing Servers". + +1998-04-20 MORIOKA Tomohiko + + * texi/gnus-ja.texi: Modify styles. + + * texi/gnus.texi: Modify for Semi-gnus (sync up with + gnus-ja.texi). + +1998-04-20 Yoshiki Hayashi + + * texi/gnus-ja.texi: Add "New Groups". + +1998-04-20 Yoshiki Hayashi + + * texi/gnus-ja.texi: Modify styles. + +1998-04-18 MORIOKA Tomohiko + + * texi/gnus-ja.texi: Check and modify for Semi-gnus. + +1998-04-18 Yoshiki Hayashi + + * texi/gnus-ja.texi: New file. + +1998-04-19 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to 6.1.3. + +1998-04-19 MORIOKA Tomohiko + + * lisp/gnus-art.el (gnus-following-method): New function; set up + for 'mime-view-following-method-alist. + +1998-04-18 MORIOKA Tomohiko + + * texi/gnus.texi: Add and modify description for Semi-gnus. + +1998-04-16 MORIOKA Tomohiko + + * texi/gnus.texi: "Gnus 5.6.4" -> "Semi-gnus 6.1.2". + (Top): "Gnus" -> "gnus". + (Starting Up): "Gnus" -> "gnus". + +1998-04-10 Shuhei KOBAYASHI + + * lisp/ChangeLog, lisp/gnus-agent.el: Sync up with Gnus 5.6.4. + +1998-04-08 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to 6.1.2. + (gnus-version): Include corresponding SEMI version. + + * lisp/gnus.el, lisp/nnkiboze.el, lisp/message.el, + lisp/gnus-sum.el, lisp/gnus-agent.el: Sync up with Gnus 5.6.4. + +1998-03-27 Shuhei KOBAYASHI + + * README.semi: Change descriptions of sending bug report. + +1998-03-20 Shuhei KOBAYASHI + + * lisp/gnus.el (gnus-version-number): Update to 6.1.1. + (gnus-version): Include corresponding SEMI version. + + * Sync up with Gnus 5.6.3. + +1998-03-15 Shuhei KOBAYASHI + + * lisp/gnus-agent.el (gnus-agent-crosspost): Use + `nnheader-insert-file-contents'. + (gnus-agent-braid-nov): Ditto. + (gnus-agent-expire): Ditto. + + * lisp/gnus-cache.el (gnus-cache-request-article): Ditto. + (gnus-cache-retrieve-headers): Ditto. + (gnus-cache-change-buffer): Ditto. + (gnus-cache-braid-nov): Ditto. + + * lisp/gnus-sum.el (gnus-summary-import-article): Ditto. + + * lisp/nnkiboze.el (nnkiboze-retrieve-headers): Ditto. + + * lisp/message.el (message-generate-headers): Fix regexp. + (cf. [semi-gnus-ja:107]) + +1998-03-14 MORIOKA Tomohiko + + * lisp/gnus-art.el: Add setting for + `mime-raw-buffer-coding-system-alist'. + +1998-03-13 MORIOKA Tomohiko + + * lisp/gnus-art.el: Rename `mime-view-quitting-method-for-gnus' -> + `mime-preview-quitting-method-for-gnus'. + + * lisp/gnus-art.el: Rename `mime-view-quitting-method-alist' -> + `mime-preview-quitting-method-alist'. + + * lisp/gnus-art.el: Rename `mime-view-kill-buffer' -> + `mime-preview-kill-buffer'. + + * lisp/gnus.el (gnus-version-number): Update to 6.0.10. + + * lisp/gnus-sum.el: Add code to check latest SEMI. + (mime-acting-condition): Separate type and subtype; rename + `mime-combine-message/partials-automatically' -> + `mime-method-to-combine-message/partial-pieces'. + +1998-03-08 Shuhei KOBAYASHI + + * lisp/gnus.el (gnus-version-number): Update to 6.0.9. + + * README.semi (How to get?): Add description of daily snapshot. + (How to join development): Change mailing list command address. + + * Sync up with Gnus 5.6.2. + +1998-03-01 Tatsuya Ichikawa + + * lisp/gnus-ems.el: Change variable name + gnus-bdf-image-file to gnus-mule-bitmap-image-file. + +1998-02-28 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to 6.0.8. + + * lisp/gnus.el: Sync up with qgnus-0.34. + +1998-02-28 MORIOKA Tomohiko + + * lisp/message.el: Sync up with qgnus-0.33. + + * lisp/gnus-ems.el (gnus-bdf-image-file): New variable; moved from + gnus.el. + (gnus-mule-group-startup-message): New function; moved and renamed + from `gnus-group-startup-message' of gnus.el. + + * lisp/gnus.el, lisp/gnus-sum.el, lisp/gnus-art.el, + lisp/gnus-agent.el: Sync up with qgnus-0.33. + +1998-02-28 Tatsuya Ichikawa + + * lisp/gnus.el (gnus-bdf-image-file): New variable. + (gnus-mule-group-startup-message): Display bitmap image using + bitmap.el running with Emacs 20. + + * lisp/gnus-agent.el (gnus-agent-fetch-headers): Fix problem when + Xref field is not exist. + +1998-02-26 MORIOKA Tomohiko + + * README.semi (How to join development): Modify for Semi-gnus + mailing list. + + * lisp/gnus.el (gnus-version-number): Update to 6.0.7. + + * lisp/gnus.el (gnus-article-display-hook): Delete + `gnus-article-de-quoted-unreadable' from options. + + * lisp/gnus-sum.el (gnus-article-make-menu-bar): Delete key for + `gnus-article-de-quoted-unreadable'. + (gnus-summary-make-menu-bar): Delete menu for + `gnus-article-de-quoted-unreadable'. + + * lisp/gnus-art.el (gnus-article-make-menu-bar): Delete menu for + `gnus-article-de-quoted-unreadable'. + +1998-02-24 MORIOKA Tomohiko + + * lisp/gnus.el, lisp/message.el: Sync up with qgnus-0.32. + +1998-02-23 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to 6.0.6. + + * lisp/message.el (message-fill-references): Abolish unused local + variables. + + * lisp/pop3.el, lisp/message.el, lisp/gnus.el, lisp/gnus-sum.el, + lisp/gnus-art.el: Sync up with qgnus-0.31. + + * lisp/gnus.el, lisp/message.el, lisp/gnus-sum.el, + lisp/gnus-art.el: Sync up with qgnus-0.30. + +1998-02-20 Christophe Broult + + * README.semi (How to get?): The command `update' must come before + `-r semi-gnus'. (cf. [tm-en:1559]) + +1998-02-17 MORIOKA Tomohiko + + * lisp/gnus.el: Sync up with qgnus-0.29. + + * lisp/gnus.el, lisp/message.el: Sync up with qgnus-0.28. + + * lisp/message.el: Abolish variable + `message-references-generator'. Abolish function + `message-generate-filled-references', + `message-generate-folded-references' and + `message-generate-unfolded-references'. + (message-reply): Don't use `message-references-generator'. + (message-followup): Don't use `message-references-generator'. + + (message-fill-references): New function. + (message-header-format-alist): Use `message-fill-references' for + References. + +1998-02-17 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to 6.0.5. + +1998-02-17 MORIOKA Tomohiko + + * lisp/gnus-sum.el: Check SEMI-0.118.2 (Otomaru) or later. + (gnus-structured-field-decoder): Use + `eword-decode-and-unfold-structured-field'. + + * lisp/gnus-art.el (gnus-article-decode-rfc1522): Use charset + conversion option of `eword-decode-header'. + (gnus-article-decode-encoded-word): Use charset conversion option + of `eword-decode-header'; use `gnus-run-hooks'. + (gnus-content-header-filter): Use charset conversion option of + `eword-decode-header'. + + * README.semi (How to get?): Should specify "-r semi-gnus". + +1998-02-16 MORIOKA Tomohiko + + * lisp/gnus-art.el (gnus-article-decode-rfc1522): Decode header by + localized code. + +1998-02-16 MORIOKA Tomohiko + + * lisp/gnus-msg.el: Delete commented-out function + `gnus-inews-insert-mime-headers'. + + * lisp/gnus.el, lisp/message.el, lisp/gnus-sum.el, + lisp/gnus-art.el: Sync up with qgnus-0.27. + +1998-02-16 MORIOKA Tomohiko + + * lisp/nnheader.el: Use original. + + * lisp/gnus.el, lisp/pop3.el, lisp/message.el, lisp/gnus-sum.el, + lisp/gnus-msg.el, lisp/gnus-draft.el, lisp/gnus-art.el: Sync up + with qgnus-0.26. + +1998-02-15 MORIOKA Tomohiko + + * lisp/nnmail.el, lisp/nnmh.el: Use original. + + * lisp/gnus.el, lisp/gnus-draft.el, lisp/gnus-sum.el, + lisp/message.el, lisp/gnus-art.el: Sync up with qgnus-0.25. + +1998-02-11 Shuhei Kobayashi + + * texi/message.texi, texi/gnus.texi, texi/ChangeLog, + lisp/message.el, lisp/gnus.el, lisp/gnus-uu.el, + lisp/gnus-topic.el, lisp/gnus-sum.el, lisp/gnus-start.el, + lisp/gnus-score.el, lisp/gnus-group.el, lisp/gnus-art.el, + lisp/gnus-agent.el, lisp/ChangeLog: Importing qgnus-0.24 + +1998-02-10 MORIOKA Tomohiko + + * lisp/gnus-art.el (gnus-article-prepare): Don't bind coding + systems. + + * lisp/gnus.el (gnus-version-number): Update to 6.0.4. + (gnus-version): Sync with qgnus-0.23. + + * lisp/pop3.el, lisp/nnmh.el, lisp/nnheader.el, lisp/message.el, + lisp/gnus-sum.el, lisp/gnus-msg.el, lisp/gnus-draft.el, + lisp/gnus-art.el: Merge qgnus-0.23. + +1998-02-09 Shuhei Kobayashi + + * texi/message.texi, texi/gnus.texi, texi/ChangeLog, lisp/nntp.el, + lisp/nnheader.el, lisp/message.el, lisp/gnus.el, + lisp/gnus-xmas.el, lisp/gnus-sum.el, lisp/gnus-start.el, + lisp/gnus-msg.el, lisp/gnus-group.el, lisp/gnus-draft.el, + lisp/gnus-art.el, lisp/gnus-agent.el, lisp/ChangeLog: Importing + qgnus-0.23 + +1998-02-04 MORIOKA Tomohiko + + * lisp/message.el (message-references-generator): New variable. + (message-generate-filled-references): New function. + (message-generate-folded-references): New function. + (message-generate-unfolded-references): New function. + (message-reply): Refer `message-references-generator'. + (message-followup): Refer `message-references-generator'. + +1998-01-17 MORIOKA Tomohiko + + * lisp/message.el (message-send-mail-with-sendmail): Guard + `coding-system-for-write' by binary. + (message-send-mail-with-qmail): Likewise. + +1998-01-16 MORIOKA Tomohiko + + * lisp/lpath.el: Require path-util; add load-path of APEL, MEL and + SEMI. + +1998-01-12 MORIOKA Tomohiko + + * lisp/message.el: Require smtp.el when compile. + + * lisp/message.el (message-send-mail-with-smtp): Use + `(current-buffer)' instead of `tembuf'; rename + `smtp-recipient-address-list' -> `recipient-address-list'. + +1998-01-12 MORIOKA Tomohiko + + * lisp/smtp.el (smtp-deduce-address-list): Don't use + `smtp-recipient-address-list' as global variable. + + * lisp/message.el (message-send-mail-with-smtp): Don't use + `smtp-recipient-address-list' as global variable. + + * lisp/smtpmail.el (smtpmail-recipient-address-list): New + variable; renamed from `smtp-recipient-address-list'. + (smtpmail-send-it): Remove `(not (null ...))'. + (smtpmail-send-queued-mail): Likewise. + +1998-01-12 MORIOKA Tomohiko + + * lisp/message.el (message-send-mail-with-smtp): Don't generate + temporary buffer for message; don't generate and kill + `smtp-address-buffer' for `smtp-deduce-address-list'. + + * lisp/smtpmail.el (smtpmail-send-it): Don't generate and kill + `smtp-address-buffer' for `smtp-deduce-address-list'. + + * lisp/smtp.el (smtp-deduce-address-list): Bind and generate + `smtp-address-buffer' in itself. + +1998-01-12 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to version 6.0.3. + +1998-01-11 MORIOKA Tomohiko + + * lisp/smtp.el: New file. + + * lisp/smtpmail.el: Split basic features into smtp.el. + + * lisp/message.el (message-send-mail-function): Add + `message-send-mail-with-smtp' as an item. + (message-send-mail-with-smtp): New function. + + * ChangeLog: New file. + +1998-01-08 MORIOKA Tomohiko + + * lisp/smtpmail.el (smtpmail-via-smtp): Bind + `coding-system-for-read' by `smtpmail-coding-system' to avoid + dead-locking in Emacs 20. + + * lisp/gnus.el: gnus.el (gnus-version-number): Update to version + 6.0.2. + +1998-01-07 MORIOKA Tomohiko + + * lisp/nnmail.el, lisp/message.el: Sync with Quassia Gnus v0.22. + + * lisp/gnus.el: Delete autoload setting for `metamail-buffer'. + + * lisp/gnus.el, lisp/gnus-sum.el: Sync with Quassia Gnus v0.22. + + * lisp/gnus-msg.el: Abolish function + `gnus-inews-insert-mime-headers'. + + * lisp/gnus-msg.el, lisp/gnus-draft.el, lisp/gnus-art.el: Sync + with Quassia Gnus v0.22. + + * lisp/smtpmail.el (smtpmail-coding-system): New variable; abolish + `smtpmail-code-conv-from'. + (smtpmail-via-smtp): Guard `coding-system-for-write' by + `smtpmail-coding-system'. + + * lisp/smtpmail.el: Imported from Emacs 20.2. + + * lisp/pop3.el (pop3-movemail-file-coding-system): Change default + value to `binary'. + (pop3-open-server): Guard `coding-system-for-read' by `binary'. + +1998-01-06 Shuhei Kobayashi + + * texi/message.texi, texi/gnus.texi, texi/ChangeLog, lisp/nnoo.el, + lisp/nnml.el, lisp/message.el, lisp/gnus.el, lisp/gnus-sum.el, + lisp/gnus-start.el, lisp/gnus-ems.el, lisp/gnus-draft.el, + lisp/gnus-agent.el, lisp/ChangeLog: Importing qgnus-0.22 + + * texi/message.texi, texi/gnus.texi, lisp/gnus.el, lisp/ChangeLog: + Importing qgnus-0.21 + + * texi/message.texi, texi/gnus.texi, texi/ChangeLog, + lisp/nnvirtual.el, lisp/nnsoup.el, lisp/nnoo.el, lisp/nnmh.el, + lisp/nnmail.el, lisp/nndraft.el, lisp/gnus.el, lisp/gnus-xmas.el, + lisp/gnus-sum.el, lisp/gnus-start.el, lisp/gnus-score.el, + lisp/gnus-msg.el, lisp/gnus-group.el, lisp/gnus-draft.el, + lisp/gnus-art.el, lisp/ChangeLog: Importing qgnus-0.20 + + * texi/message.texi, texi/gnus.texi, texi/ChangeLog, lisp/pop3.el, + lisp/nntp.el, lisp/nnml.el, lisp/nnmail.el, lisp/nndoc.el, + lisp/message.el, lisp/gnus.el, lisp/gnus-uu.el, + lisp/gnus-topic.el, lisp/gnus-sum.el, lisp/gnus-start.el, + lisp/gnus-score.el, lisp/gnus-group.el, lisp/gnus-cache.el, + lisp/gnus-agent.el, lisp/ChangeLog: Importing qgnus-0.19 + +1997-12-27 MORIOKA Tomohiko + + * lisp/gnus.el (gnus-version-number): Update to version 6.0.1. + + * lisp/message.el (message-resend): Enclose `message-setup' with + `(let (message-setup-hook) ...)' to avoid to `turn-on-mime-edit'; + must setup `message-encoding-buffer' and `message-edit-buffer' for + `message-send-mail'. + +1997-12-08 Shuhei Kobayashi + + * lisp/pop3.el, lisp/message.el, lisp/gnus.el, lisp/gnus-sum.el, + lisp/gnus-art.el, lisp/ChangeLog: Synch'ed up to qgnus-0.18. + + * texi/message.texi, texi/gnus.texi, texi/ChangeLog, + lisp/smiley.el, lisp/pop3.el, lisp/nnweb.el, lisp/nntp.el, + lisp/nnml.el, lisp/nnmail.el, lisp/nnheader.el, lisp/nndraft.el, + lisp/message.el, lisp/lpath.el, lisp/gnus.el, lisp/gnus-util.el, + lisp/gnus-sum.el, lisp/gnus-start.el, lisp/gnus-picon.el, + lisp/gnus-nocem.el, lisp/gnus-mh.el, lisp/gnus-group.el, + lisp/gnus-ems.el, lisp/gnus-cite.el, lisp/gnus-art.el, + lisp/gnus-agent.el, lisp/dgnushack.el, lisp/ChangeLog: Importing + qgnus-0.18 + +1997-11-29 MORIOKA Tomohiko + + * README.semi: New file. + + * lisp/gnus.el (gnus-version): Rename to "Semi-gnus". + +1997-11-28 MORIOKA Tomohiko + + * lisp/gnus-draft.el (gnus-draft-decoding-function): New variable. + (gnus-draft-setup): Use `gnus-draft-decoding-function'. + +1997-11-27 MORIOKA Tomohiko + + * lisp/nnmail.el, lisp/nnheader.el, lisp/message.el, lisp/gnus.el, + lisp/gnus-sum.el, lisp/gnus-msg.el, lisp/gnus-art.el: sync with + qgnus-0.17. + + * texi/message.texi, texi/gnus.texi, lisp/smiley.el, lisp/nnoo.el, + lisp/nnml.el, lisp/nnmail.el, lisp/nnheader.el, + lisp/messagexmas.el, lisp/message.el, lisp/gnus.el, + lisp/gnus-xmas.el, lisp/gnus-util.el, lisp/gnus-sum.el, + lisp/gnus-start.el, lisp/gnus-spec.el, lisp/gnus-score.el, + lisp/gnus-picon.el, lisp/gnus-move.el, lisp/gnus-msg.el, + lisp/gnus-kill.el, lisp/gnus-group.el, lisp/gnus-draft.el, + lisp/gnus-demon.el, lisp/gnus-cite.el, lisp/gnus-art.el, + lisp/ChangeLog: Quassia Gnus v0.17. + + * lisp/gnus-i18n.el: New file. + + * lisp/nnmail.el (nnmail-file-coding-system): Use `raw-text' in + default. + + * lisp/nnheader.el (nnheader-file-coding-system): Use `raw-text' + in default. + + * lisp/message.el (message-encode-function): New variable. + (message-forward-start-separator): Modify for mime-edit. + (message-forward-end-separator): Modify for mime-edit. + (message-setup-hook): Use `(message-maybe-setup-default-charset + turn-on-mime-edit)' in default. + (message-header-hook): Use `(eword-encode-header)' in default. + + (message-send): Use local variable `message-encoding-buffer', + `message-edit-buffer' and `message-mime-mode' as public variables; + use `message-encode-function'. + (message-send-mail): Use `message-encoding-buffer' to get contents + of body; abolish `message-encode-mail-hook'; use + `mime-edit-maybe-split-and-send'; use `message-edit-buffer' to + refer original editing buffer. + (message-send-news): Use `message-encoding-buffer' to get contents + of body; abolish `message-encode-news-hook'; use + `mime-edit-maybe-split-and-send'; use `message-edit-buffer' to + refer original editing buffer. + (message-check-news-syntax): Call `message-check-news-body-syntax' + in `mime-edit-buffer'. + (message-do-fcc): Use `message-encoding-buffer' to get contents; + run `message-header-hook'. + (message-cancel-news): Use `std11-extract-address-components' + instead of `mail-extract-address-components'; bind + `message-encoding-buffer' and `message-edit-buffer'. + + (message-maybe-setup-default-charset): New function. + (message-maybe-encode): New function. + (message-mime-insert-article): New function. + Add setting for mime-view. + + * lisp/gnus.el (gnus-version-number): for version number for Open + gnus. + (gnus-version): Modify for Open gnus. + + * lisp/gnus-sum.el: Autoload gnus-i18n. + + (gnus-show-mime): `t' in default. + (gnus-structured-field-decoder): Use + `eword-decode-structured-field-body' in default. + (gnus-unstructured-field-decoder): Use + `eword-decode-unstructured-field-body' in default. + + (gnus-parse-headers-hook): Use + `(gnus-set-summary-default-charset)' in default. + + (gnus-summary-mode-map): Add binding for + `gnus-summary-scroll-down' and + `gnus-summary-preview-mime-message'. + + (gnus-summary-preview-mime-message): New function. + (gnus-mime-partial-preview-function): New function. + Add setting for mime-view. + + * lisp/gnus-msg.el (gnus-summary-cancel-article): Display + `gnus-article-buffer' instead ofb `gnus-original-article-buffer'. + (gnus-extended-version): Don't return version of emacsen. + (gnus-inews-do-gcc): Refer `message-encoding-buffer'. + + * lisp/gnus-art.el (gnus-show-mime-method): Use + `gnus-article-preview-mime-message' instead of `metamail-buffer' + in default. + (gnus-decode-encoded-word-method): Use + `gnus-article-decode-encoded-word' instead of + `gnus-article-de-quoted-unreadable' in default. + + Abolish `gnus-hack-decode-rfc1522', `gnus-decode-rfc1522', + `article-decode-rfc1522', `article-de-quoted-unreadable', + `article-mime-decode-quoted-printable-buffer' and + `article-mime-decode-quoted-printable'. + (gnus-article-decode-rfc1522): New implementation (use + `eword-decode-header'). + + (gnus-article-preview-mime-message): New function. + (gnus-article-decode-encoded-word): New function. + (gnus-content-header-filter): New function. + (mime-view-quitting-method-for-gnus): New function. + Add setting for mime-view. + + * lisp/message.el: Abolish `message-max-size' because it is not + used. + + * lisp/message.el: sync with qgnus-0.16. + + * texi/Makefile, texi/message.texi, texi/gnus.texi, lisp/nnweb.el, + lisp/nnmh.el, lisp/nnheader.el, lisp/nnfolder.el, lisp/message.el, + lisp/gnus.el, lisp/gnus-xmas.el, lisp/gnus-uu.el, + lisp/gnus-sum.el, lisp/gnus-srvr.el, lisp/gnus-picon.el, + lisp/gnus-group.el, lisp/gnus-cite.el, lisp/gnus-art.el: Quassia + Gnus v0.16. + + * lisp/nnmh.el (nnmh-request-list-1): fix maybe. + + * lisp/message.el (message-do-fcc): Guard + `coding-system-for-write' by `raw-text'; run + `message-before-do-fcc-hook'. + + * lisp/gnus-msg.el (gnus-inews-do-gcc): Guard + `coding-system-for-write' by `raw-text'; run + `gnus-before-do-gcc-hook'. + + * texi/message.texi, texi/gnus.texi, texi/ChangeLog, lisp/nntp.el, + lisp/nnoo.el, lisp/nnml.el, lisp/nndraft.el, lisp/nnbabyl.el, + lisp/message.el, lisp/gnus.el, lisp/gnus-xmas.el, lisp/gnus-uu.el, + lisp/gnus-util.el, lisp/gnus-sum.el, lisp/gnus-start.el, + lisp/gnus-spec.el, lisp/gnus-soup.el, lisp/gnus-score.el, + lisp/gnus-msg.el, lisp/gnus-gl.el, lisp/gnus-ems.el, + lisp/gnus-draft.el, lisp/gnus-cache.el, lisp/gnus-audio.el, + lisp/gnus-art.el, lisp/gnus-agent.el, lisp/ChangeLog: Quassia Gnus + v0.15. + + * lisp/message.el, lisp/ChangeLog: sync with qgnus-0.14. + + * texi/Makefile, texi/gnus.texi: Quassia Gnus v0.14. + + * texi/dir: New file. + + * texi/dir, lisp/pop3.el, lisp/nntp.el, lisp/nnml.el, + lisp/nnmail.el, lisp/nnfolder.el, lisp/message.el, lisp/lpath.el, + lisp/gnus.el, lisp/gnus-win.el, lisp/gnus-util.el, + lisp/gnus-topic.el, lisp/gnus-sum.el, lisp/gnus-start.el, + lisp/gnus-score.el, lisp/gnus-msg.el, lisp/gnus-mh.el, + lisp/gnus-cus.el, lisp/gnus-art.el, lisp/gnus-agent.el, + lisp/ChangeLog: Quassia Gnus v0.14. + + * lisp/message.el, lisp/ChangeLog: sync with qgnus-0.13. + + * texi/gnus.texi, texi/ChangeLog, lisp/pop3.el, lisp/nnweb.el, + lisp/nnmail.el: Quassia Gnus v0.13. + + * lisp/nnlistserv.el: New file. + + * lisp/nnlistserv.el, lisp/message.el, lisp/md5.el, lisp/lpath.el, + lisp/gnus.el, lisp/gnus-topic.el, lisp/gnus-sum.el, + lisp/gnus-score.el, lisp/gnus-picon.el, lisp/gnus-msg.el, + lisp/gnus-group.el, lisp/gnus-art.el, lisp/gnus-agent.el, + lisp/dgnushack.el, lisp/ChangeLog, GNUS-NEWS: Quassia Gnus v0.13. + + * lisp/message.el: sync with qgnus-0.12. + + * texi/message.texi, texi/gnus.texi, texi/gnus-faq.texi, + texi/ChangeLog, lisp/nntp.el, lisp/nnmh.el, lisp/nnmail.el, + lisp/nndraft.el, lisp/messcompat.el, lisp/message.el, + lisp/gnus.el, lisp/gnus-xmas.el, lisp/gnus-uu.el, + lisp/gnus-sum.el, lisp/gnus-score.el, lisp/gnus-salt.el, + lisp/gnus-msg.el, lisp/gnus-int.el, lisp/gnus-group.el, + lisp/gnus-demon.el, lisp/gnus-cache.el, lisp/gnus-art.el, + lisp/gnus-agent.el, lisp/ChangeLog, GNUS-NEWS: Quassia Gnus v0.12. + + * lisp/message.el (message-send-news-function): Use + `message-send-news-with-gnus' in default. + (message-send-via-news): Use `message-send-news' instead of + `message-send-news-function'. + (message-send-mail): Don't avoid text properties; run + `message-encode-mail-hook'. + (message-send-news): Don't avoid text properties; run + `message-encode-news-hook'; use `message-send-news-function'. + (message-send-news-with-gnus): New function. + (message-cancel-news): Use `message-send-news' instead of + `message-send-news-function'. diff --git a/README.branch b/README.branch index eaf63bf..714a27f 100644 --- a/README.branch +++ b/README.branch @@ -85,6 +85,7 @@ Public Branches gnus-6_7 Semi-gnus for SEMI 1.8, FLIM 1.7 API gnus-6_8 Semi-gnus for SEMI 1.8, FLIM 1.8 API (stable) gnus-6_9 Semi-gnus for SEMI 1.11, FLIM 1.12 API (develop) + gnus-6_10 Semi-gnus for SEMI 1.12, FLIM 1.12 API (develop) Personal Branches @@ -98,6 +99,7 @@ Personal Branches ichikawa Owner: Tatsuya Ichikawa akr Owner: Tanaka Akira shuhei-k Owner: Shuhei KOBAYASHI + pgnus-ichikawa Owner: Tatsuya Ichikawa "semi-gnus" Tag diff --git a/README.branch.ja b/README.branch.ja index bbb2875..3ac1ac2 100644 --- a/README.branch.ja +++ b/README.branch.ja @@ -85,6 +85,7 @@ Public Branches gnus-6_7 Semi-gnus for SEMI 1.8, FLIM 1.7 API gnus-6_8 Semi-gnus for SEMI 1.8, FLIM 1.8 API (stable) gnus-6_9 Semi-gnus for SEMI 1.11 FLIM 1.12 API (develop) + gnus-6_10 Semi-gnus for SEMI 1.12 FLIM 1.12 API (develop) Personal Branches @@ -99,6 +100,7 @@ Personal Branches ichikawa Owner: Tatsuya Ichikawa akr Owner: Tanaka Akira shuhei-k Owner: Shuhei KOBAYASHI + pgnus-ichikawa Owner: Tatsuya Ichikawa "semi-gnus" Tag diff --git a/README.semi b/README.semi index 3dd5f49..47fffb0 100644 --- a/README.semi +++ b/README.semi @@ -1,4 +1,4 @@ -This package contains Semi-gnus 6.9. +This package contains Semi-gnus 6.10. What is Semi-gnus? ================== @@ -7,12 +7,13 @@ What is Semi-gnus? all features of Gnus and gnus-mime, so there are no need to install Gnus to use it, and you must not use gnus-mime for SEMI. - It requires SEMI package, so please get and install SEMI package -before to install it. Semi-gnus 6.9 requires SEMI 1.11. You can get -SEMI from -ftp://ftp.jaist.ac.jp/pub/elisp/semi/ + It requires APEL, FLIM and SEMI packages, so please get and install +them before to install it. Semi-gnus 6.10 requires APEL 9,12 or later, +the latest FLIM 1.12 and SEMI 1.12. You can get these packages from +ftp://ftp.jaist.ac.jp/pub/GNU/elisp/semi/ Required environment for SEMI is written in README.en of SEMI package. + How to get? (via CVS) ===================== @@ -42,7 +43,7 @@ Major tags are following: semi-gnus assigned to the latest stable version. It is very conservative. - for-semi-N1_N2 assigned to the latest stable version for SEMI + for-semi-N1_N2 assigned to the latest stable version for SEMI API N1.N2 (N1 and N2 are natural number). (e.g. `for-semi-1_3' is for SEMI API 1.3) diff --git a/README.semi.ja b/README.semi.ja index e944dbc..f193362 100644 --- a/README.semi.ja +++ b/README.semi.ja @@ -1,4 +1,4 @@ -$B$3$N%Q%C%1!<%8$K$O(B Semi-gnus 6.9 $B$,F~$C$F$$$^$9!#(B +$B$3$N%Q%C%1!<%8$K$O(B Semi-gnus 6.10 $B$,F~$C$F$$$^$9!#(B Semi-gnus $B$H$O!)(B ================== @@ -8,10 +8,11 @@ Semi-gnus $B$H$O!)(B $B$k$?$a$K(B Gnus $B$r%$%s%9%H!<%k$9$kI,MW$O$J$/!"(BSEMI $B$N$?$a$N(B gnus-mime $B$O(B $B;HMQ$7$F$O$$$1$^$;$s!#(B - SEMI $B%Q%C%1!<%8$rMW5a$7$^$9$N$G!"%$%s%9%H!<%k$9$kA0$K(B SEMI $B%Q%C%1!<(B -$B%8$r%$%s%9%H!<%k$7$F$/$@$5$$!#(BSemi-gnus 6.9 $B$O(B SEMI 1.11 $B$rMW5a$7$^$9!#(B -SEMI $B$O(B -ftp://ftp.jaist.ac.jp/pub/elisp/semi/ + APEL, FLIM $B$*$h$S(B SEMI $B%Q%C%1!<%8$,I,MW$G$9$N$G!"%$%s%9%H!<%k$9$kA0(B +$B$K$=$l$i$r%$%s%9%H!<%k$7$F$/$@$5$$!#(BSemi-gnus 6.10 $B$O(B APEL 9.12 $B0J>e!"(B +$B:G?7$N(B FLIM 1.12 $B$*$h$S(B SEMI 1.12 $B$rI,MW$H$7$^$9!#(B +$B$=$l$i$N%Q%C%1!<%8$O(B +ftp://ftp.jaist.ac.jp/pub/elisp/semi/ $B$+$iH$7$F(B $B$/$@$5$$!#(B @@ -60,7 +61,7 @@ ftp://ftp.jaist.ac.jp/pub/elisp/semi/ ichikawa ichikawa branch pgnus-ichikawa ichikawa branch. Based on pGnus - + akr akr branch shuhei-k shuhei-k branch diff --git a/lisp/gnus-agent.el b/lisp/gnus-agent.el index d37bd7b..8b8c9dd 100644 --- a/lisp/gnus-agent.el +++ b/lisp/gnus-agent.el @@ -2,6 +2,7 @@ ;; Copyright (C) 1997,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen +;; Katsumi Yamaoka ;; This file is part of GNU Emacs. ;; GNU Emacs is free software; you can redistribute it and/or modify @@ -92,7 +93,7 @@ If nil, only read articles will be expired." (defvar gnus-agent-spam-hashtb nil) (defvar gnus-agent-file-name nil) (defvar gnus-agent-send-mail-function nil) -(defvar gnus-agent-file-coding-system 'no-conversion) +(defvar gnus-agent-file-coding-system 'raw-text) ;; Dynamic variables (defvar gnus-headers) diff --git a/lisp/gnus-art.el b/lisp/gnus-art.el index b46cf8b..e60a1dc 100644 --- a/lisp/gnus-art.el +++ b/lisp/gnus-art.el @@ -391,13 +391,6 @@ The function is called from the article buffer." :group 'gnus-article-mime :type 'function) -(defcustom gnus-article-display-method-for-encoded-word - 'gnus-article-display-message-with-encoded-word - "*Function to display a message with MIME encoded-words. -The function is called from the article buffer." - :group 'gnus-article-mime - :type 'function) - (defcustom gnus-article-display-method-for-traditional 'gnus-article-display-traditional-message "*Function to display a traditional message. @@ -848,7 +841,7 @@ characters to translate to." (when (search-forward "\n\n" nil t) (let ((buffer-read-only nil)) (while (search-forward "\b" nil t) - (let ((next (following-char)) + (let ((next (char-after)) (previous (char-after (- (point) 2)))) ;; We do the boldification/underlining by hiding the ;; overstrikes and putting the proper text property @@ -881,7 +874,7 @@ characters to translate to." (adaptive-fill-mode t)) (while (not (eobp)) (and (>= (current-column) (min fill-column (window-width))) - (/= (preceding-char) ?:) + (not (eq (char-before) ?:)) (fill-paragraph nil)) (end-of-line 2)))))) @@ -965,7 +958,7 @@ characters to translate to." (let ((charset (save-excursion (set-buffer gnus-summary-buffer) default-mime-charset))) - (eword-decode-header charset) + (mime-decode-header-in-buffer charset) ))) (defun article-hide-pgp (&optional arg) @@ -1840,8 +1833,28 @@ If variable `gnus-use-long-file-name' is non-nil, it is "\M-^" gnus-article-read-summary-keys "\M-g" gnus-article-read-summary-keys) -(substitute-key-definition - 'undefined 'gnus-article-read-summary-keys gnus-article-mode-map) +;; Define almost undefined keys to `gnus-article-read-summary-keys'. +(mapcar + (lambda (key) + (unless (lookup-key gnus-article-mode-map key) + (define-key gnus-article-mode-map key + 'gnus-article-read-summary-keys))) + (delq nil + (append + (mapcar + (lambda (elt) + (let ((key (car elt))) + (and (> (length key) 0) + (not (eq 'menu-bar (aref key 0))) + (symbolp (lookup-key gnus-summary-mode-map key)) + key))) + (accessible-keymaps gnus-summary-mode-map)) + (let ((c 127) + keys) + (while (>= c 32) + (push (char-to-string c) keys) + (decf c)) + keys)))) (defun gnus-article-make-menu-bar () (gnus-turn-off-edit-menu 'article) @@ -1968,11 +1981,15 @@ commands: (defun gnus-article-display-mime-message () "Article display method for MIME message." ;; called from `gnus-original-article-buffer'. - (let ((default-mime-charset (save-excursion - (set-buffer gnus-summary-buffer) - default-mime-charset))) + (let ((charset (with-current-buffer gnus-summary-buffer + default-mime-charset))) + (make-local-variable 'default-mime-charset) + (setq default-mime-charset charset) (mime-display-message mime-message-structure - gnus-article-buffer nil gnus-article-mode-map)) + gnus-article-buffer nil gnus-article-mode-map) + (make-local-variable 'default-mime-charset) + (setq default-mime-charset charset) + ) ;; `mime-display-message' changes current buffer to `gnus-article-buffer'. (make-local-variable 'mime-button-mother-dispatcher) (setq mime-button-mother-dispatcher @@ -1986,20 +2003,6 @@ commands: (erase-buffer) (insert-buffer-substring gnus-original-article-buffer))) -(defun gnus-article-display-message-with-encoded-word () - "Article display method for message with encoded-words." - (let ((charset (save-excursion - (set-buffer gnus-summary-buffer) - default-mime-charset))) - (gnus-article-display-traditional-message) - (let (buffer-read-only) - (eword-decode-header charset) - (goto-char (point-min)) - (if (search-forward "\n\n" nil t) - (decode-mime-charset-region (match-end 0) (point-max) charset))) - (mime-maybe-hide-echo-buffer)) - (gnus-run-hooks 'gnus-mime-article-prepare-hook)) - (defun gnus-article-make-full-mail-header (&optional number charset) "Create a new mail header structure in a raw article buffer." (unless (and number charset) @@ -2144,11 +2147,8 @@ If ALL-HEADERS is non-nil, no headers are hidden." (let ((method (if gnus-show-mime (progn - (mime-parse-buffer) - (if (or (not gnus-strict-mime) - (mime-fetch-field "MIME-Version")) - gnus-article-display-method-for-mime - gnus-article-display-method-for-encoded-word)) + (setq mime-message-structure gnus-current-headers) + gnus-article-display-method-for-mime) gnus-article-display-method-for-traditional))) (gnus-run-hooks 'gnus-tmp-internal-hook) (gnus-run-hooks 'gnus-article-prepare-hook) @@ -3391,7 +3391,7 @@ forbidden in URL encoding." ;;; (defun gnus-article-header-presentation-method (entity situation) - (mime-insert-decoded-header entity) + (mime-insert-header entity) ) (set-alist 'mime-header-presentation-method-alist @@ -3421,6 +3421,18 @@ forbidden in URL encoding." (set-alist 'mime-preview-following-method-alist 'gnus-original-article-mode #'gnus-following-method) +(set-alist 'mime-preview-over-to-previous-method-alist + 'gnus-original-article-mode + (lambda () + (gnus-article-read-summary-keys + nil (gnus-character-to-event ?P)))) + +(set-alist 'mime-preview-over-to-next-method-alist + 'gnus-original-article-mode' + (lambda () + (gnus-article-read-summary-keys + nil (gnus-character-to-event ?N)))) + ;;; @ end ;;; diff --git a/lisp/gnus-bbdb.el b/lisp/gnus-bbdb.el index 10b1acc..6caef29 100644 --- a/lisp/gnus-bbdb.el +++ b/lisp/gnus-bbdb.el @@ -1,4 +1,4 @@ -;; gnus-bbdb.el --- Interface to Semi-gnus. +;; gnus-bbdb.el --- Interface to Semi-gnus ;; Copyright (c) 1991,1992,1993 Jamie Zawinski . ;; Copyright (C) 1995,1996,1997 Shuhei KOBAYASHI @@ -34,13 +34,13 @@ (eval-when-compile (require 'gnus-win)) -(defvar gnus-bbdb/decode-field-body-function 'eword-decode-string +(defvar gnus-bbdb/decode-field-body-function 'nnheader-decode-field-body "*Field body decoder.") (defmacro gnus-bbdb/decode-field-body (field-body field-name) `(or (and (functionp gnus-bbdb/decode-field-body-function) (funcall gnus-bbdb/decode-field-body-function - ,field-body)) + ,field-body ,field-name)) ,field-body)) ;;;###autoload @@ -110,6 +110,8 @@ This buffer will be in bbdb-mode, with associated keybindings." (bbdb-display-records (list record)) (error "unperson")))) +;; Avoid byte-compile warning. +(defvar bbdb-pop-up-elided-display) (defun gnus-bbdb/pop-up-bbdb-buffer (&optional offer-to-create) "Make the *BBDB* buffer be displayed along with the GNUS windows, diff --git a/lisp/gnus-cache.el b/lisp/gnus-cache.el index 436baad..7f48584 100644 --- a/lisp/gnus-cache.el +++ b/lisp/gnus-cache.el @@ -202,8 +202,8 @@ it's not cached." ;; [number subject from date id references chars lines xref] (insert (format "%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t\n" (mail-header-number headers) - (mail-header-subject headers) - (mail-header-from headers) + (mime-fetch-field 'Subject headers) + (mime-fetch-field 'From headers) (mail-header-date headers) (mail-header-id headers) (or (mail-header-references headers) "") diff --git a/lisp/gnus-draft.el b/lisp/gnus-draft.el index d794f0d..1b9b333 100644 --- a/lisp/gnus-draft.el +++ b/lisp/gnus-draft.el @@ -183,11 +183,7 @@ ;;; Utility functions (defcustom gnus-draft-decoding-function - (function - (lambda () - (mime-edit-decode-message-in-buffer nil) - (eword-decode-header) - )) + #'mime-edit-decode-message-in-buffer "*Function called to decode the message from network representation." :group 'gnus-agent :type 'function) diff --git a/lisp/gnus-group.el b/lisp/gnus-group.el index d56f5ce..af57904 100644 --- a/lisp/gnus-group.el +++ b/lisp/gnus-group.el @@ -1327,7 +1327,7 @@ If FIRST-TOO, the current line is also eligible as a target." (beginning-of-line) (forward-char (or (cdr (assq 'process gnus-group-mark-positions)) 2)) (subst-char-in-region - (point) (1+ (point)) (following-char) + (point) (1+ (point)) (char-after) (if unmark (progn (setq gnus-group-marked (delete group gnus-group-marked)) diff --git a/lisp/gnus-msg.el b/lisp/gnus-msg.el index 116ad34..c1f30d5 100644 --- a/lisp/gnus-msg.el +++ b/lisp/gnus-msg.el @@ -5,6 +5,7 @@ ;; Lars Magne Ingebrigtsen ;; MORIOKA Tomohiko ;; Shuhei KOBAYASHI +;; Katsumi Yamaoka ;; Keywords: mail, news, MIME ;; This file is part of GNU Emacs. @@ -93,7 +94,7 @@ Thank you. The first %s will be replaced by the Newsgroups header; the second with the current group name.") -(defvar gnus-message-setup-hook nil +(defvar gnus-message-setup-hook '(gnus-maybe-setup-default-charset) "Hook run after setting up a message buffer.") (defvar gnus-bug-create-help-buffer t @@ -145,7 +146,6 @@ Please describe the bug in annoying, painstaking detail. Thank you for your help in stamping out bugs. " - gnus-product-name (if (string= gnus-product-name "Semi-gnus") "" @@ -352,7 +352,7 @@ This is done simply by taking the old article and adding a Supersedes header line with the old Message-ID." (interactive) (let ((article (gnus-summary-article-number)) - gnus-message-setup-hook) + (gnus-message-setup-hook '(gnus-maybe-setup-default-charset))) (gnus-setup-message 'reply-yank (gnus-summary-select-article t) (set-buffer gnus-original-article-buffer) @@ -544,10 +544,6 @@ If SILENT, don't prompt the user." -;; Dummy to avoid byte-compile warning. -(defvar nnspool-rejected-article-hook) -(defvar xemacs-codename) - (defun gnus-extended-version () "Stringified gnus version." (interactive) @@ -954,7 +950,7 @@ this is a reply." (interactive "P") (gnus-summary-select-article t) (set-buffer gnus-original-article-buffer) - (let (gnus-message-setup-hook) + (let ((gnus-message-setup-hook '(gnus-maybe-setup-default-charset))) (gnus-setup-message 'compose-bounce (let* ((references (mail-fetch-field "references")) (parent (and references (gnus-parent-id references)))) @@ -1189,6 +1185,24 @@ this is a reply." (insert (car val) ": " (cdr val) "\n")) (gnus-pull (car val) gnus-message-style-insertions))))) + +;;; @ for MIME Edit mode +;;; + +(defun gnus-maybe-setup-default-charset () + (let ((charset + (and (boundp 'gnus-summary-buffer) + (buffer-live-p gnus-summary-buffer) + (save-excursion + (set-buffer gnus-summary-buffer) + default-mime-charset)))) + (if charset + (progn + (make-local-variable 'default-mime-charset) + (setq default-mime-charset charset) + )))) + + ;;; Allow redefinition of functions. (gnus-ems-redefine) diff --git a/lisp/gnus-nocem.el b/lisp/gnus-nocem.el index d678531..0a69970 100644 --- a/lisp/gnus-nocem.el +++ b/lisp/gnus-nocem.el @@ -271,7 +271,7 @@ matches an previously scanned and verified nocem message." gnus-nocem-real-group-hashtb) ;; Valid group. (beginning-of-line) - (while (= (following-char) ?\t) + (while (eq (char-after) ?\t) (forward-line -1)) (setq id (buffer-substring (point) (1- (search-forward "\t")))) (unless (gnus-gethash id gnus-nocem-hashtb) @@ -279,7 +279,7 @@ matches an previously scanned and verified nocem message." (gnus-sethash id t gnus-nocem-hashtb) (push id ncm)) (forward-line 1) - (while (= (following-char) ?\t) + (while (eq (char-after) ?\t) (forward-line 1)))))) (when ncm (setq gnus-nocem-touched-alist t) diff --git a/lisp/gnus-offline.el b/lisp/gnus-offline.el new file mode 100644 index 0000000..a04544f --- /dev/null +++ b/lisp/gnus-offline.el @@ -0,0 +1,854 @@ +;;; gnus-offline.el --- To process mail & news at offline environment. +;;; $Id: gnus-offline.el,v 1.1.4.1 1998-12-24 03:34:46 yamaoka Exp $ + +;;; Copyright (C) 1998 Tatsuya Ichikawa +;;; Yukihiro Ito +;;; Author: Tatsuya Ichikawa +;;; Yukihiro Ito +;;; Hidekazu Nakamura + +;;; Version: 2.01 +;;; Keywords: news , mail , offline , gnus +;;; +;;; SPECIAL THANKS +;;; Keiichi Suzuki +;;; KORIYAMA Naohiro +;;; Katsumi Yamaoka + +;;; This file is part of Semi-gnus. +;;; +;;; GNU Emacs is free software; you can redistribute it and/or modify +;;; it under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 2, or (at your option) +;;; any later version. + +;;; GNU Emacs is distributed in the hope that it will be useful, +;;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. + +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Emacs; see the file COPYING. If not, write to the +;;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, +;;; Boston, MA 02111-1307, USA. +;;; +;;;; Commentary: +;;; Note. +;;; This file works only with after version of Emacs 19.30. +;;; This file needs miee.el and SEMI. +;;; If you set gnus-offline-drafts-queue-type to 'agent , you don't need +;;; miee.el +;;; You must use Semi-gnus 6.X.X. +;;; +;;; How to use. +;;; +;;; Add following code at the end in your .emacs +;;; +;;; (load "gnus-ofsetup") +;;; (gnus-setup-for-offline) +;;; (load gnus-offline-setting-file) +;;; +;;; If you use gnus-agent as souper , put gnus-agent setup code in you .gnus.el +;;; +;;; If you use nnspool as souper , put following code in your .emacs before +;;; gnus-offline setting. +;;; +;;; Then , put hang.exe in exec-path directory. +;;; +;;; In Gnus group buffer , type g to get all news and mail. +;;; Then send mail and news in spool directory. +;;; +;;; Variables. +;;; gnus-offline-dialup-program-arguments +;;; ... List of dialup program arguments. +;;; gnus-offline-hangup-program-arguments +;;; ... List of hangup program arguments. +;;; gnus-offline-mail-treat-environ ... toggle sending mail online/offline. +;;; gnus-offline-articles-to-fetch ... toggle fetch articles. +;;; both->mail->news->both... +;;; gnus-offline-load-hook ... hook before gnus-offline load. +;;; gnus-offline-before-online-hook ... hook before all online jobs. +;;; gnus-offline-after-online-hook ... hook after all online jobs. +;;; gnus-offline-interval-time ... Interval time to do all online jobs. +;;; (minutes) +;;; gnus-offline-dialup-function ... Function to diualup. +;;; gnus-offline-hangup-function ... Function to hangup. + +;;; Code: + +(eval '(run-hooks 'gnus-offline-load-hook)) + +(require 'cl) +(require 'custom) +(require 'pop3-fma) +(require 'easymenu) + +(unless (and (condition-case () + (require 'custom) + (file-error nil)) + (fboundp 'defgroup) + (fboundp 'defcustom)) + (require 'backquote) + (defmacro defgroup (&rest args)) + (defmacro defcustom (symbol value &optional doc &rest args) + (` (defvar (, symbol) (, value) (, doc)))) + ) +(defgroup gnus-offline nil + "Offline backend utility for Gnus." + :prefix "gnus-offline-" + :group 'mail + :group 'news) + +(defconst gnus-offline-version-number "2.02") +(defconst gnus-offline-codename +;; "Beta5" ; Beta +;; "This is the time" ; 2.00 +;; "A matter of trust" + "Modern Woman" +;; "Code of silence" + ) + +(defconst gnus-offline-version (format "Gnus offline backend utiliy v%s" + gnus-offline-version-number)) + +(defcustom gnus-offline-dialup-program-arguments nil + "*Program arguments of gnus-offline-dialup-program." + :group 'gnus-offline + :type '(repeat (string :tag "Argument"))) + +(defcustom gnus-offline-hangup-program-arguments nil + "*Program arguments of gnus-offline-hangup-program." + :group 'gnus-offline + :type '(repeat (string :tag "Argument"))) + +(defcustom gnus-offline-auto-hangup t + "*Whether dialup-network automatically hang up when all online jobs has done." + :group 'gnus-offline + :type 'boolean) + +(defcustom gnus-offline-load-hook nil + "*Hook to be run after the gnus-offline package has been loaded." + :group 'gnus-offline + :type 'hook) + +(defcustom gnus-offline-before-online-hook nil + "*Hook to be run before all online jobs." + :group 'gnus-offline + :type 'hook) + +(defcustom gnus-offline-after-online-hook nil + "*Hook to be run after all online jobs." + :group 'gnus-offline + :type 'hook) + +(defcustom gnus-offline-mail-treat-environ 'offline + "*If online , gnus-offline send all mail under online environ. +If offline , gnus-offline send all mail temporary to spool dir." + :group 'gnus-offline + :type '(choice (const offline) + (const online))) + +(defcustom gnus-offline-articles-to-fetch 'both + "*If both , gnus-offline fetch mail and news articles. +If mail , gnus-offline only fetch mail articles. + If news , gnus-offline only fetch news articles." + :group 'gnus-offline + :type '(choice (const both) + (const mail) + (const news))) + +(defcustom gnus-offline-interval-time 0 + "*Interval time(minutes) to do online jobs. +If set to 0 , timer call is disabled." + :group 'gnus-offline + :type 'integer) + +(defcustom gnus-offline-mail-group-level 1 + "*Group level for mail group." + :group 'gnus-offline + :type 'integer) + +(defcustom gnus-offline-after-empting-spool-hook nil + "*Hook to be run before empting spool." + :group 'gnus-offline + :type 'hook) + +(defcustom gnus-offline-before-empting-spool-hook nil + "*Hook to be run after empting spool." + :group 'gnus-offline + :type 'hook) + +(defcustom gnus-offline-dialup-function 'gnus-offline-connect-server + "*Function to dialup." + :group 'gnus-offline + :type 'function) + +(defcustom gnus-offline-hangup-function 'gnus-offline-hangup-line + "*Function to hangup." + :group 'gnus-offline + :type 'function) + +;;; Internal variables. +(defvar gnus-offline-connected nil + "*If value is t , dialup line is connected status. +If value is nil , dialup line is disconnected status.") + +(defvar gnus-offline-news-fetch-method nil + "*Method to fetch news articles.") + +(defvar gnus-offline-mail-fetch-method nil + "*Method to fetch mail articles.") + +(defvar gnus-offline-header-string + (format "%s - \"%s\"" + gnus-offline-version + gnus-offline-codename) + "*Header string for gnus-offline.") + +(defvar gnus-offline-stored-group-level nil + "*Mail Group level before changing.") + +(defvar gnus-offline-movemail-arguments nil + "*All command line arguments of exec-directory/movemail.") + +;;; Temporary variable: +(defvar string) +(defvar hdr) +(defvar str) +(defvar ver) +(defvar passwd) +(defvar num) +(defvar gnus-offline-error-buffer " *Error*") +(defvar gnus-offline-map (make-sparse-keymap)) + +;;; To silence byte compiler +(and + (fboundp 'eval-when-compile) + (eval-when-compile + (save-excursion + (beginning-of-defun) + (eval-region (point-min) (point))) + (let (case-fold-search) + (mapcar + (function + (lambda (symbol) + (unless (boundp symbol) + (make-local-variable symbol) + (eval (list 'setq symbol nil))))) + '(:group + :prefix :type + sendmail-to-spool-directory + news-spool-request-post-directory + nnspool-version + nnagent-version + msspool-news-server + msspool-news-service + gnspool-get-news + mail-spool-send + news-spool-post + gnus-agent-handle-level + )) + (make-local-variable 'byte-compile-warnings) + (setq byte-compile-warnings nil)))) + +(put 'gnus-offline-set-unplugged-state 'menu-enable 'gnus-offline-connected) +(if (eq system-type 'windows-nt) + (define-process-argument-editing "/hang\\.exe\\'" + (lambda (x) (general-process-argument-editing-function + x nil t t nil t t)))) +;;; Functions +;; +;; Setting up... +;; +(defun gnus-offline-setup () + "*Initialize gnus-offline function" + + ;; Load setting file - required. + (load gnus-offline-setting-file) + + ;; Menu and keymap + (gnus-offline-define-menu-and-key) + + ;; To transfer Mail/News function. + (cond ((eq gnus-offline-mail-treat-environ 'offline) + ;; send mail under offline environ. + (gnus-offline-set-offline-sendmail-function)) + ((eq gnus-offline-mail-treat-environ 'online) + ;; send mail under offline environ. + (gnus-offline-set-online-sendmail-function)))) +;; (add-hook 'gnus-group-mode-hook 'gnus-offline-setup)) + +;; +;; Setting Error check. +(defun gnus-offline-error-check () + ;; Check gnus-agent and nnspool setting. + (cond ((eq gnus-offline-news-fetch-method 'nnagent) + ;; nnagent and gnus-agent loaded ?? + (if (not (and (featurep 'gnus-agent) + (featurep 'nnagent))) + (progn + (get-buffer-create gnus-offline-error-buffer) + (set-buffer gnus-offline-error-buffer) + (erase-buffer) + (insert "WARNING!!: gnus-agent.el or nnagent.el is not loaded.\n") + (insert "Please check your .emacs or .gnus.el to work gnus-agent fine.") + (pop-to-buffer gnus-offline-error-buffer)))) + + ((eq gnus-offline-news-fetch-method 'nnspool) + (if (not (featurep 'nnspool)) + (progn + (get-buffer-create gnus-offline-error-buffer) + (set-buffer gnus-offline-error-buffer) + (erase-buffer) + (insert "WARNING!!: nnspool.el is not loaded.\n") + (insert "Please check your .emacs or .gnus.el to work nnspool fine.") + (pop-to-buffer gnus-offline-error-buffer)))))) +;; +;; +(defun gnus-offline-set-offline-sendmail-function () + "*Initialize sendmail-function when unplugged status." + (if (eq gnus-offline-drafts-queue-type 'miee) + (progn + (if (eq gnus-offline-news-fetch-method 'nnagent) + (setq gnus-agent-send-mail-function 'sendmail-to-spool-in-gnspool-format)) + (setq message-send-mail-function 'sendmail-to-spool-in-gnspool-format)) + (setq gnus-agent-send-mail-function (gnus-offline-set-online-sendmail-function) + message-send-mail-function 'gnus-agent-send-mail))) +;; +(defun gnus-offline-set-online-sendmail-function () + "*Initialize sendmail-function when plugged status." + (if (eq gnus-offline-MTA-type 'smtp) + (setq message-send-mail-function 'message-send-mail-with-smtp) + (setq message-send-mail-function 'message-send-mail-with-sendmail))) +;; +(defun gnus-offline-set-offline-post-news-function () + "*Initialize sendnews-function when unplugged status." + (if (eq gnus-offline-drafts-queue-type 'miee) + (setq message-send-news-function 'gnspool-request-post))) +;; +(defun gnus-offline-set-online-post-news-function () + "*Initialize sendnews-function when plugged status." + (setq message-send-news-function 'message-send-news-with-gnus)) +;; +;; Get new news jobs. (gnus-agent and nnspool) +;; +(defun gnus-offline-gnus-get-new-news (&optional arg) + "*Override function \"gnus-group-get-new-news\"." + (interactive "P") + (run-hooks 'gnus-offline-before-online-hook) + (if (functionp gnus-offline-dialup-function) + (funcall gnus-offline-dialup-function)) + (gnus-offline-get-new-news-function) + (gnus-group-get-new-news arg)) + +;; +;; dialup... +;; +(defun gnus-offline-connect-server () + "*Dialup function." + ;; Dialup if gnus-offline-dialup-program is specified + (if (stringp gnus-offline-dialup-program) + (progn + (message "Dialing ...") + (apply 'call-process gnus-offline-dialup-program nil nil nil + gnus-offline-dialup-program-arguments) + (sleep-for 1) + (message "Dialing ... done.")))) + +;; +;; Jobs before get new news , send mail and post news. +;; +(defun gnus-offline-get-new-news-function () + "*Prepare to get new news/mail." + ;; Set mail group level + (if (eq gnus-offline-articles-to-fetch 'mail) + (gnus-offline-set-mail-group-level gnus-offline-mail-group-level)) + + ;; Set to online environ. + (setq gnus-offline-connected t) + + ;; Set send mail/news functions to online functions. + (gnus-offline-set-online-sendmail-function) + (gnus-offline-set-online-post-news-function) + (message "Set to online status.") + + ;; fetch only news + (if (eq gnus-offline-articles-to-fetch 'news) + (gnus-offline-disable-fetch-mail)) + + ;; fetch both mail and news. or Only mail. + (gnus-offline-enable-fetch-news) + (if (memq gnus-offline-articles-to-fetch '(both mail)) + (gnus-offline-enable-fetch-mail)) + + ;; fetch only mail for gnus-agent + (if (and (eq gnus-offline-news-fetch-method 'nnagent) + (eq gnus-offline-articles-to-fetch 'mail)) + (setq gnus-agent-handle-level gnus-offline-mail-group-level))) + +;; +;; Change mail group level to handle only mail. +;; +(defun gnus-offline-set-mail-group-level (level) + "*Set nnm* group level." + (switch-to-buffer gnus-group-buffer) + (goto-char (point-min)) + + ;; Save current level + (if (not gnus-offline-stored-group-level) + (while (re-search-forward " nnm" nil t) + (setq gnus-offline-stored-group-level + (append gnus-offline-stored-group-level + (list (gnus-group-group-level))))) + (forward-line 1) + (beginning-of-line)) + ;; + (goto-char (point-min)) + (while (re-search-forward " nnm" nil t) + (gnus-group-set-current-level 1 level) + (forward-line 1) + (beginning-of-line)) + t) +;; +;; Restore mail group level +;; +(defun gnus-offline-restore-mail-group-level () + "*Restore nnm* group level." + (switch-to-buffer gnus-group-buffer) + (goto-char (point-min)) + (setq num 0) + (while (re-search-forward " nnm" nil t) + (gnus-group-set-current-level 1 (nth num gnus-offline-stored-group-level)) + (forward-line 1) + (setq num (+ num 1)) + (beginning-of-line))) +;; +;; Jobs after getting new news. +;; +(defun gnus-offline-after-get-new-news () + "*After getting news and mail jobs." + (if (memq gnus-offline-articles-to-fetch '(both mail)) + (progn + ;; Mail/both + ;; send mail/news in spool + (gnus-offline-empting-spool) + (if (eq gnus-offline-articles-to-fetch 'mail) + (progn + ;; Send only mail and hang up... + (if (and gnus-offline-connected + gnus-offline-auto-hangup) + (gnus-offline-set-unplugged-state)) + ;; Disable fetch mail. + (gnus-offline-disable-fetch-mail) + (gnus-offline-after-jobs-done))))) + + ;; News/Both + (if (memq gnus-offline-articles-to-fetch '(both news)) + (progn + (if gnus-offline-connected + (cond ((eq gnus-offline-news-fetch-method 'nnagent) + ;; Get New News (gnus-agent) + (gnus-agent-toggle-plugged t) + + ;; fetch articles + (gnus-agent-fetch-session) + + ;; Hang Up line. then set to offline status. + (if (and gnus-offline-connected + gnus-offline-auto-hangup) + (gnus-offline-set-unplugged-state)) + + ;; All online jobs has done. + (gnus-offline-after-jobs-done)) + (t + (if (eq gnus-offline-news-fetch-method 'nnspool) + ;; Get New News (nnspool) + (gnspool-get-news)))))))) +;; +;; Disable fetch mail +;; +(defun gnus-offline-disable-fetch-mail () + "*Set do not fetch mail." + (setq nnmail-spool-file nil)) +;; +;; Enable fetch mail +;; +(defun gnus-offline-enable-fetch-mail () + "*Set to fetch mail." + (setq gnus-offline-mail-fetch-method 'nnmail) + (setq nnmail-movemail-program 'pop3-fma-movemail) + (setq nnmail-spool-file (append + pop3-fma-local-spool-file-alist + (mapcar + (lambda (spool) + (car spool)) + pop3-fma-spool-file-alist)))) +;; +;; Enable fetch news +;; +(defun gnus-offline-enable-fetch-news () + "*Set to fetch news." + (if (eq gnus-offline-news-fetch-method 'nnagent) + (progn + (setq gnus-agent-handle-level gnus-level-subscribed) + (gnus-agent-toggle-plugged t)))) + +;; +;; Add your custom header. +;; +(defun gnus-offline-add-custom-header (header string) + "*Add X-Gnus-Offline-Backend header to Mail/News message." + (let ((delimline + (progn (goto-char (point-min)) + (re-search-forward + (concat "^" (regexp-quote mail-header-separator) "\n")) + (point-marker)))) + (goto-char (point-min)) + (or (re-search-forward (concat "^" header) delimline t) + (progn + (goto-char delimline) + (forward-line -1) + (beginning-of-line) + (setq hdr (concat header " ")) + (setq str (concat hdr string)) + (setq hdr (concat str "\n")) + (insert-string hdr))))) +;; +;; Add X-Offline-Backend header. +;; +(defun gnus-offline-message-add-header () + "*Add X-Gnus-Offline-Backend header to Mail/News message." + (if (eq gnus-offline-mail-treat-environ 'offline) + (progn + (if (eq gnus-offline-news-fetch-method 'nnagent) + (setq ver nnagent-version) + (setq ver nnspool-version)) + (setq str (format "\n with %s" ver) + string (concat gnus-offline-header-string str)) + (gnus-offline-add-custom-header "X-Gnus-Offline-Backend:" string)))) + + +;; +;; Toggle plugged/unplugged +;; +(defun gnus-offline-toggle-plugged (plugged) + "*Override function \"Jj\" - gnus-agent-toggle-plugged." + (interactive (list (not gnus-offline-connected))) + (if plugged + (progn + (setq gnus-offline-connected plugged) + (gnus-agent-toggle-plugged plugged) + ;; Set send mail/news function to offline functions. + (gnus-offline-set-online-sendmail-function) + (gnus-offline-set-online-post-news-function)) + ;; Set to offline status + (gnus-offline-set-unplugged-state))) +;; +;; Function of hang up line. +;; +(defun gnus-offline-set-unplugged-state () + "*Set to unplugged state." + (interactive) + ;; Hang Up Line. + (if (functionp gnus-offline-hangup-function) + (funcall gnus-offline-hangup-function)) + (setq gnus-offline-connected nil) + (if (eq gnus-offline-news-fetch-method 'nnagent) + (gnus-agent-toggle-plugged nil)) + + ;; Set send mail/news function to offline functions. + (gnus-offline-set-offline-sendmail-function) + (gnus-offline-set-offline-post-news-function) + ;; + (setenv "MAILHOST" nil)) +;; +;; Hangup line function +;; +(defun gnus-offline-hangup-line () + "*Hangup line function." + (message "Hang up line ... ") + (if (stringp gnus-offline-hangup-program) + (apply 'start-process "hup" nil gnus-offline-hangup-program + gnus-offline-hangup-program-arguments)) + (message "Hang up line ... done.")) +;; +;; Hang Up line routine whe using nnspool +;; +(defun gnus-offline-nnspool-hangup-line () + (if (and gnus-offline-connected + gnus-offline-auto-hangup) + (gnus-offline-set-unplugged-state)) + (gnus-offline-after-jobs-done)) +;; +;; Function of all jobs has done. +;; +(defun gnus-offline-after-jobs-done () + "*Jobs after all online jobs." + (run-hooks 'gnus-offline-after-online-hook) + (if (eq gnus-offline-articles-to-fetch 'mail) + (gnus-offline-restore-mail-group-level)) + (if (eq gnus-offline-news-fetch-method 'nnagent) + (or (featurep 'xemacs) + (gnus-offline-agent-expire))) + (if (and (featurep 'xemacs) + (fboundp 'play-sound-file)) + (ding nil 'drum) + (ding)) + (gnus-group-save-newsrc) + (message "All online jobs has done.")) + + +;; +;; Toggle auto hang up +;; +(defun gnus-offline-toggle-auto-hangup () + "*Toggle auto hangup flag." + (interactive) + (setq string "Auto hang up logic") + (if gnus-offline-auto-hangup + (progn + (setq gnus-offline-auto-hangup nil + str "disabled.")) + (setq gnus-offline-auto-hangup t + str "enabled.")) + (message (format "%s %s" string str))) +;; +;; Toggle offline/online to send mail. +;; +(defun gnus-offline-toggle-on/off-send-mail () + "*Toggel online/offline sendmail." + (interactive) + (if (eq gnus-offline-mail-treat-environ 'offline) + (progn + ;; Sending mail under online environ. + (gnus-offline-set-online-sendmail-function) + (setq gnus-offline-mail-treat-environ 'online) + (message "Sending mail immidiately.")) + ;; Sending mail under offline environ. + (gnus-offline-set-offline-sendmail-function) + (setq gnus-offline-mail-treat-environ 'offline) + (message "Sending mail temporary to spool directory."))) +;; +;; Toggle articles to fetch ... both -> mail -> news -> both +;; +(defun gnus-offline-toggle-articles-to-fetch () + "*Set articles to fetch... both(Mail/News) -> mail only -> News only -> both" + (interactive) + (setq string "Articles fetch from server.") + (cond ((eq gnus-offline-articles-to-fetch 'both) + (setq gnus-offline-articles-to-fetch 'mail + str "Only Mail")) + ((eq gnus-offline-articles-to-fetch 'mail) + (setq gnus-offline-articles-to-fetch 'news + str "Only News")) + (t + (setq gnus-offline-articles-to-fetch 'both + str "Mail/News both"))) + (message (format "%s %s" string str))) +;; +;; Toggle movemail program pop3.el -> movemail -> pop3.el +;; +(defun gnus-offline-toggle-movemail-program () + "*Toggle movemail program movemail -> pop3.el -> movemail ->..." + (interactive) + (setq string "Set nnmail-movemail-program") + (cond ((eq pop3-fma-movemail-type 'lisp) + (setq pop3-fma-movemail-type 'exe + str "to movemail")) + (t + (setq pop3-fma-movemail-type 'lisp + str "to pop3.el"))) + (message (format "%s %s" string str))) +;; +;; Send mail and Post news using Miee or gnus-agent. +;; +(defun gnus-offline-empting-spool () + "*Send all drafts on queue." + (run-hooks 'gnus-offline-before-empting-spool-hook) + (if (eq gnus-offline-drafts-queue-type 'miee) + ;; Send queued message by miee.el. + (progn + (if (eq gnus-offline-mail-treat-environ 'offline) + (progn + (message "Sending mails in spool ...") + ;; Using miee to send mail. + (mail-spool-send) + (message "Sending mails in spool ... done."))) + (message "Posting news in spool ...") + ;; Using miee to post news. + (if (and (not (stringp msspool-news-server)) + (not msspool-news-service)) + (progn + (setq msspool-news-server (nth 1 gnus-select-method)) + (setq msspool-news-service 119))) + (news-spool-post) + (message "Posting news in spool ... done.")) + ;; Send queued message by gnus-agent + (message "Sending messages in spool ...") + (gnus-group-send-drafts) + (message "Sending messages in spool ... done.")) + ;; + (run-hooks 'gnus-offline-after-empting-spool-hook)) +;; +;; Set interval time +;; +(defun gnus-offline-set-interval-time () + "*Set interval time for gnus-daemon." + (interactive) + (setq gnus-offline-interval-time + (string-to-int (read-from-minibuffer + (format "Interval time (now %s minutes) : " + gnus-offline-interval-time) + nil))) + (if (< gnus-offline-interval-time 2) + (progn + (message "Retrieving message logic by timer is disabled.") + (setq gnus-offline-interval-time 0)) + (message (format "Interval time set to %d minutes" gnus-offline-interval-time))) + (gnus-offline-processed-by-timer)) +;; +;; Expire articles using gnus-agent. +;; +(defun gnus-offline-agent-expire () + "*Expire expirable article on News group." + (interactive) + (gnus-agent-expire)) +;; +;; Menu. +;; +(defun gnus-offline-define-menu-and-key () + "*Set key and menu." + (if (eq gnus-offline-drafts-queue-type 'miee) + (if (featurep 'xemacs) + (add-hook 'gnus-group-mode-hook 'gnus-offline-define-menu-on-miee) + (gnus-offline-define-menu-on-miee)) + (add-hook 'gnus-group-mode-hook 'gnus-offline-define-menu-on-agent)) + (add-hook 'gnus-group-mode-hook + '(lambda () + (local-set-key "\C-coh" 'gnus-offline-set-unplugged-state) + (local-set-key "\C-com" 'gnus-offline-toggle-movemail-program) + (local-set-key "\C-cof" 'gnus-offline-toggle-articles-to-fetch) + (local-set-key "\C-coo" 'gnus-offline-toggle-on/off-send-mail) + (local-set-key "\C-cox" 'gnus-offline-toggle-auto-hangup) + (local-set-key "\C-cos" 'gnus-offline-set-interval-time) + (substitute-key-definition + 'gnus-group-get-new-news 'gnus-offline-gnus-get-new-news + gnus-group-mode-map) + (if (eq gnus-offline-news-fetch-method 'nnagent) + (progn + (substitute-key-definition + 'gnus-agent-toggle-plugged 'gnus-offline-toggle-plugged + gnus-agent-group-mode-map) + (local-set-key "\C-coe" 'gnus-offline-agent-expire))))) + (if (eq gnus-offline-news-fetch-method 'nnagent) + (add-hook 'gnus-summary-mode-hook + '(lambda () + (substitute-key-definition + 'gnus-agent-toggle-plugged 'gnus-offline-toggle-plugged + gnus-agent-summary-mode-map)))) + (if (featurep 'xemacs) + ;; Overwrite the toolbar spec for gnus-group-mode. + (add-hook 'gnus-startup-hook + (lambda () + (let ((i 0) (stat t) but) + (while (and stat (setq but (nth i gnus-group-toolbar))) + (and (equal 'gnus-group-get-new-news (aref but 1)) + (aset but 1 'gnus-offline-gnus-get-new-news) + (setq stat nil)) + (setq i (1+ i)))))))) +;; +;; +(defun gnus-offline-define-menu-on-miee () + "*Set and change menu bar on MIEE menu." + (if (featurep 'meadow) + (easy-menu-change + nil + "Miee" + '( + ["Spool $B$K$"$k5-;v$NAw?.(B" news-spool-post t] + ["Spool $B$K$"$k(B Mail $B$NAw?.(B" mail-spool-send t] + "----" + ["Offline $B>uBV$X(B" message-offline-state (not message-offline-state)] + ["Online $B>uBV$X(B" message-online-state message-offline-state] + "----" + ("Gnus Offline" + ["movemail $B$N@ZBX$((B" gnus-offline-toggle-movemail-program t] + ["$BC$9(B" gnus-offline-agent-expire (eq gnus-offline-news-fetch-method 'nnagent)] + ["$B5-;vC$9(B" gnus-offline-agent-expire (eq gnus-offline-news-fetch-method 'nnagent)] + ["$B5-;v gnus-offline-interval-time 0) + (not gnus-offline-connected)) + ;; Timer call + (gnus-demon-add-handler 'gnus-offline-gnus-get-new-news + gnus-offline-interval-time + gnus-offline-interval-time)) + (if (= gnus-offline-interval-time 0) + (gnus-demon-remove-handler 'gnus-offline-gnus-get-new-news t))) +;; +;; +(provide 'gnus-offline) +;;; gnus-offline.el ends here diff --git a/lisp/gnus-ofsetup.el b/lisp/gnus-ofsetup.el new file mode 100644 index 0000000..2f03ac7 --- /dev/null +++ b/lisp/gnus-ofsetup.el @@ -0,0 +1,317 @@ +;;; gnus-ofsetup.el --- Setup advisor for Offline reading for Mail/News. +;;; +;;; $Id: gnus-ofsetup.el,v 1.1.4.1 1998-12-24 03:34:48 yamaoka Exp $ +;;; +;;; Copyright (C) 1998 Tatsuya Ichikawa +;;; Author: Tatsuya Ichikawa +;;; +;;; This file is part of Semi-gnus. +;;; +;;; GNU Emacs is free software; you can redistribute it and/or modify +;;; it under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 2, or (at your option) +;;; any later version. + +;;; GNU Emacs is distributed in the hope that it will be useful, +;;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. + +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Emacs; see the file COPYING. If not, write to the +;;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, +;;; Boston, MA 02111-1307, USA. +;;; +;;;; Commentary: +;;; How to use. +;;; +;;; M-x load[RET]gnus-ofsetup +;;; M-x gnus-setup-for-offline +;;; + +;;; Code: + +(defvar gnus-offline-setting-file "~/.gnus-offline.el") +(defvar gnus-offline-use-miee nil) +(defvar gnus-offline-news-fetch-method nil) +(defvar gnus-offline-mail-fetch-method nil) +(defvar gnus-offline-hangup-program nil) +(defvar gnus-offline-dialup-program nil) +(defvar pop3-fma-spool-file-alist nil) +(defvar pop3-fma-movemail-type nil) +(defvar pop3-fma-movemail-arguments nil) +(defvar use-miee nil) +(defvar address) +(defvar options) + +;;; To silence byte compiler +(and + (fboundp 'eval-when-compile) + (eval-when-compile + (save-excursion + (beginning-of-defun) + (eval-region (point-min) (point))) + (let (case-fold-search) + (mapcar + (function + (lambda (symbol) + (unless (boundp symbol) + (make-local-variable symbol) + (eval (list 'setq symbol nil))))) + '(:group + :prefix :type + sendmail-to-spool-directory + news-spool-request-post-directory + nnspool-version + nnagent-version + msspool-news-server + msspool-news-service + gnspool-get-news + mail-spool-send + news-spool-post + gnus-agent-handle-level + )) + (make-local-variable 'byte-compile-warnings) + (setq byte-compile-warnings nil)))) + +(defun gnus-setup-for-offline () + "*Set up Gnus for offline environment." + (interactive) + + (if (not (file-exists-p gnus-offline-setting-file)) + (progn + (let ((news-method + (completing-read + "Method for offline News reading (TAB to completion): " + '(("gnus-agent" 1) ("nnspool" 2)) + nil t nil)) + (mail-method 'nnmail) + (program + (read-file-name "Dialup/Hangup program(type nil you do not use): ")) + (mta-type + (completing-read + "Select MTA type for sending mail (TAB to completion): " + '(("smtp" 1) ("sendmail" 2)) + nil t nil)) + (num-of-address + (read-from-minibuffer "How many e-mail address do you have: ")) + ) + (if (string-equal news-method "nnspool") + (setq use-miee t) + (setq use-miee (y-or-n-p "Use MIEE post/send message "))) + ;; + ;; Set variables. + (if (string-equal news-method "gnus-agent") + (setq gnus-offline-news-fetch-method 'nnagent) + (setq gnus-offline-news-fetch-method 'nnspool)) + ;; + (setq gnus-offline-mail-fetch-method mail-method) + (setq gnus-offline-use-miee use-miee) + + ;; Set programs. + (if (string-equal program "nil") + (progn + (setq gnus-offline-hangup-program nil) + (setq gnus-offline-dialup-program nil)) + (let ((options + (read-from-minibuffer "Dialup program options: "))) + (setq gnus-offline-dialup-program-arguments + (split-string options "[\t ]+"))) + (let ((options + (read-from-minibuffer "Hangup program options: "))) + (setq gnus-offline-hangup-program-arguments + (split-string options "[\t ]+"))) + (setq gnus-offline-hangup-program program) + (setq gnus-offline-dialup-program program)) + + ;; Set spool directory for outgoing messages. + (if use-miee + (progn + ;; Setting for MIEE with nnspool. + (let ((news-spool + (read-from-minibuffer + "News spool directory for sending: " + "/usr/spool/news.out")) + (mail-spool + (read-from-minibuffer + "Mail spool directory for sending: " + "/usr/spool/mail.out"))) + (setq gnus-offline-mail-spool-directory mail-spool) + (setq gnus-offline-news-spool-directory news-spool) + (setq gnus-offline-drafts-queue-type 'miee) + + ;; Load MIEE. + (load "miee") + ;; Set news post function for MIEE. + (setq message-send-news-function 'gnspool-request-post) + ;; Spool directory setting - MIEE. + (if (not (file-exists-p gnus-offline-mail-spool-directory)) + (make-directory gnus-offline-mail-spool-directory t)) + (setq sendmail-to-spool-directory + gnus-offline-mail-spool-directory) + (if (not (file-exists-p gnus-offline-news-spool-directory)) + (make-directory gnus-offline-news-spool-directory t)) + (setq news-spool-request-post-directory + gnus-offline-news-spool-directory))) + + ;; Set drafts type gnus-agent. + (setq gnus-offline-drafts-queue-type 'agent)) + + ;; Setting for gnus-agent. + (if (eq gnus-offline-news-fetch-method 'nnagent) + (let ((agent-directory + (read-from-minibuffer "Agent directory: " "~/News/agent"))) + (setq gnus-agent-directory agent-directory))) + + ;; Determin MTA type. + (if (string-equal mta-type "smtp") + (setq gnus-offline-MTA-type 'smtp) + (setq gnus-offline-MTA-type 'sendmail) + ) + ;; + ;; Set E-Mail Address and pop3 movemail type. + (setq i (string-to-int num-of-address)) + (setq address nil) + (while (> i 0) + (setq address + (append address + (list + (list + (concat "po:" + (read-from-minibuffer + "Email address (user@mailhost): ")) + (completing-read + "Authentification Method (TAB to completion): " + '(("pass" 1) ("apop" 2)) nil t nil))))) + (setq i (- i 1))) + + ;; Replace "hoge" -> 'hoge + (mapcar + (lambda (x) + (if (string-equal (nth 1 x) "pass") + (setcar (cdr x) 'pass) + (setcar (cdr x) 'apop))) + address) + (setq pop3-fma-spool-file-alist address) + + ;; Set movemail type. + (let ((movemail-type + (completing-read + "Select movemail type for retreave mail (TAB to completion): " + '(("exe" 1) ("lisp" 2)) + nil t nil)) + ) + (if (string-equal movemail-type "exe") + (let ((options + (read-from-minibuffer "movemail options: "))) + (setq pop3-fma-movemail-arguments (split-string options "[\t ]+")))) + (if (string-equal movemail-type "exe") + (setq pop3-fma-movemail-type 'exe) + (setq pop3-fma-movemail-type 'lisp)))) + + ;; Write to setting file. + (setq tmp-buffer (get-buffer-create "* Setting")) + (set-buffer "* Setting") + (erase-buffer) + (insert ";;\n"); + (insert ";; This file is created by gnus-ofsetup.el\n") + (insert ";; Creation date : ") + (insert (current-time-string)) + (insert "\n") + (insert ";;\n") + + ;; write Basic setting + (insert "(setq gnus-offline-news-fetch-method '") + (insert (prin1-to-string gnus-offline-news-fetch-method)) + (insert ")\n") + (insert "(setq gnus-offline-mail-fetch-method '") + (insert (prin1-to-string gnus-offline-mail-fetch-method)) + (insert ")\n") + (insert "(setq gnus-offline-use-miee ") + (insert (prin1-to-string gnus-offline-use-miee)) + (insert ")\n") + (insert "(setq gnus-offline-dialup-program ") + (insert (prin1-to-string gnus-offline-dialup-program)) + (insert ")\n") + + ;; write dialup/hangup program and options. + (if (stringp gnus-offline-dialup-program) + (progn + (insert "(setq gnus-offline-dialup-program-arguments '") + (insert (prin1-to-string gnus-offline-dialup-program-arguments)) + (insert ")\n"))) + (insert "(setq gnus-offline-hangup-program ") + (insert (prin1-to-string gnus-offline-hangup-program)) + (insert ")\n") + (if (stringp gnus-offline-hangup-program) + (progn + (insert "(setq gnus-offline-hangup-program-arguments '") + (insert (prin1-to-string gnus-offline-hangup-program-arguments)) + (insert ")\n"))) + + ;; write setting about MIEE. + (if gnus-offline-use-miee + (progn + (insert "(setq gnus-offline-mail-spool-directory ") + (insert (prin1-to-string gnus-offline-mail-spool-directory)) + (insert ")\n") + (insert "(setq gnus-offline-news-spool-directory ") + (insert (prin1-to-string gnus-offline-news-spool-directory)) + (insert ")\n") + (insert "(setq sendmail-to-spool-directory gnus-offline-mail-spool-directory)\n") + (insert "(setq news-spool-request-post-directory gnus-offline-news-spool-directory)\n") + (insert "(load \"miee\")\n") + (insert "(setq message-send-news-function '") + (insert (prin1-to-string message-send-news-function)) + (insert ")\n"))) + + ;; write setting about nnspool and gnus-agent. + (if (equal gnus-offline-news-fetch-method 'nnspool) + (insert "(message-offline-state)\n") + (insert "(setq gnus-agent-directory ") + (insert (prin1-to-string gnus-agent-directory)) + (insert ")\n")) + + ;; write setting about queue type -- MIEE or nnagent. + (insert "(setq gnus-offline-drafts-queue-type '") + (insert (prin1-to-string gnus-offline-drafts-queue-type)) + (insert ")\n") + (insert "(setq gnus-offline-MTA-type '") + (insert (prin1-to-string gnus-offline-MTA-type)) + (insert ")\n") + + ;; Offline setting for gnus-nntp-* + (insert "(setq gnus-nntp-service nil)\n") + (insert "(setq gnus-nntp-server nil)\n") + (insert "(setq nnmail-spool-file nil)\n") + + ;; Write setting about hooks. + (insert "(add-hook 'gnus-group-mode-hook 'gnus-offline-processed-by-timer t)\n") + (insert "(add-hook 'gnus-group-mode-hook 'gnus-offline-error-check t)\n") + (insert "(add-hook 'gnus-after-getting-new-news-hook 'gnus-offline-after-get-new-news)\n") + (insert "(add-hook 'gnus-after-getting-news-hook 'gnus-offline-after-get-new-news)\n") + (if (eq gnus-offline-news-fetch-method 'nnspool) + (insert "(add-hook 'after-getting-news-hook 'gnus-offline-nnspool-hangup-line)\n")) + (insert "(add-hook 'message-send-hook 'gnus-offline-message-add-header)\n") + (insert "(autoload 'gnus-offline-setup \"gnus-offline\")\n") + (insert "(add-hook 'gnus-load-hook 'gnus-offline-setup)\n") + + ;; Write setting about pop3-fma. + (insert "(require 'pop3-fma)\n") + (insert "(add-hook 'message-send-hook 'pop3-fma-message-add-header)\n") + (insert "(setq pop3-fma-spool-file-alist '") + (insert (prin1-to-string pop3-fma-spool-file-alist)) + (insert ")\n") + (insert "(setq pop3-fma-movemail-type '") + (insert (prin1-to-string pop3-fma-movemail-type)) + (insert ")\n") + (if (eq pop3-fma-movemail-type 'exe) + (progn + (insert "(setq pop3-fma-movemail-arguments '") + (insert (prin1-to-string pop3-fma-movemail-arguments)) + (insert ")\n"))) + (write-region (point-min) (point-max) gnus-offline-setting-file) + (kill-buffer "* Setting")) + ) + (load gnus-offline-setting-file)) +;; gnus-ofsetup.el Ends here. diff --git a/lisp/gnus-picon.el b/lisp/gnus-picon.el index 1fd1f06..a3b5418 100644 --- a/lisp/gnus-picon.el +++ b/lisp/gnus-picon.el @@ -117,7 +117,7 @@ Some people may want to add \"unknown\" to this list." :type '(repeat string) :group 'picons) -(defcustom gnus-picons-display-article-move-p nil +(defcustom gnus-picons-display-article-move-p t "*Whether to move point to first empty line when displaying picons. This has only an effect if `gnus-picons-display-where' has value `article'." :type 'boolean @@ -145,14 +145,9 @@ please tell me so that we can list it." :group 'picons) (defface gnus-picons-xbm-face '((t (:foreground "black" :background "white"))) - "Face to show xbm picons in." + "Face to show X face" :group 'picons) -(defcustom gnus-picons-setup-hook nil - "Hook run in Picons buffers." - :group 'picons - :type 'hook) - ;;; Internal variables: (defvar gnus-picons-processes-alist nil @@ -189,9 +184,9 @@ arguments necessary for the job.") (defun gnus-get-buffer-name (variable) "Returns the buffer name associated with the contents of a variable." - (let ((buf (gnus-get-buffer-create - (gnus-window-to-buffer-helper - (cdr (assq variable gnus-window-to-buffer)))))) + (let ((buf (gnus-get-buffer-create (gnus-window-to-buffer-helper + (cdr + (assq variable gnus-window-to-buffer)))))) (and buf (buffer-name buf)))) @@ -208,8 +203,8 @@ arguments necessary for the job.") (defun gnus-picons-kill-buffer () (let ((buf (get-buffer (gnus-picons-buffer-name)))) - (when (buffer-live-p buf) - (kill-buffer buf)))) + (if (buffer-live-p buf) + (kill-buffer buf)))) (defun gnus-picons-setup-buffer () (let ((name (gnus-picons-buffer-name))) @@ -219,7 +214,6 @@ arguments necessary for the job.") (set-buffer (gnus-get-buffer-create name)) (buffer-disable-undo) (setq buffer-read-only t) - (run-hooks 'gnus-picons-setup-hook) (add-hook 'gnus-summary-prepare-exit-hook 'gnus-picons-kill-buffer)) (current-buffer)))) @@ -261,8 +255,8 @@ arguments necessary for the job.") (setq gnus-picons-processes-alist (delq process gnus-picons-processes-alist)) (gnus-picons-set-buffer) - (gnus-picons-make-annotation - (make-glyph gnus-picons-x-face-file-name) nil 'text) + (gnus-picons-make-annotation (make-glyph gnus-picons-x-face-file-name) + nil 'text) (when (file-exists-p gnus-picons-x-face-file-name) (delete-file gnus-picons-x-face-file-name)))) @@ -285,8 +279,8 @@ To use: (setq gnus-article-x-face-command 'gnus-picons-display-x-face)" nil 'text nil nil nil t))) ;; convert the x-face header to a .xbm file (let* ((process-connection-type nil) - (process (start-process-shell-command - "gnus-x-face" nil gnus-picons-convert-x-face))) + (process (start-process-shell-command "gnus-x-face" nil + gnus-picons-convert-x-face))) (push process gnus-picons-processes-alist) (process-kill-without-query process) (set-process-sentinel process 'gnus-picons-x-face-sentinel) @@ -314,15 +308,6 @@ To use: (setq gnus-article-x-face-command 'gnus-picons-display-x-face)" ".")))) (gnus-picons-prepare-for-annotations) (gnus-group-display-picons) - (unless gnus-picons-display-article-move-p - (save-restriction - (let ((buffer-read-only nil)) - (when (re-search-forward "^From: " nil t) - (narrow-to-region (point) (gnus-point-at-eol)) - (when (search-forward from nil t) - (gnus-put-text-property - (match-beginning 0) (match-end 0) - 'invisible t)))))) (if (null gnus-picons-piconsearch-url) (progn (gnus-picons-display-pairs (gnus-picons-lookup-pairs @@ -349,42 +334,27 @@ 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* ((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)) - (unless gnus-picons-display-article-move-p - (save-restriction - (let ((buffer-read-only nil)) - (goto-char (point-min)) - (when (re-search-forward "^Newsgroups:" nil t) - (narrow-to-region (point) (gnus-point-at-eol)) - (when (search-forward group nil t) - (gnus-put-text-property - (match-beginning 0) (match-end 0) - 'invisible t)))))) - (if (null gnus-picons-piconsearch-url) - (gnus-picons-display-pairs - (gnus-picons-lookup-pairs - (reverse (split-string group "\\.")) - gnus-picons-news-directories) - t ".") - (push (list 'gnus-group-annotations 'search nil - (split-string group "\\.") - (if (listp gnus-picons-news-directories) - gnus-picons-news-directories - (list gnus-picons-news-directories)) - nil) - gnus-picons-jobs-alist) - (gnus-picons-next-job)) - - (add-hook 'gnus-summary-exit-hook 'gnus-picons-remove-all)))))) + (save-excursion + (gnus-picons-prepare-for-annotations) + (if (null gnus-picons-piconsearch-url) + (gnus-picons-display-pairs + (gnus-picons-lookup-pairs + (reverse (message-tokenize-header + (gnus-group-real-name gnus-newsgroup-name) + ".")) + gnus-picons-news-directories) + t ".") + (push (list 'gnus-group-annotations 'search nil + (message-tokenize-header + (gnus-group-real-name gnus-newsgroup-name) ".") + (if (listp gnus-picons-news-directories) + gnus-picons-news-directories + (list gnus-picons-news-directories)) + nil) + gnus-picons-jobs-alist) + (gnus-picons-next-job)) + + (add-hook 'gnus-summary-exit-hook 'gnus-picons-remove-all)))) (defun gnus-picons-lookup-internal (addrs dir) (setq dir (expand-file-name dir gnus-picons-database)) @@ -446,8 +416,7 @@ none, and whose CDR is the corresponding element of DOMAINS." "Display picons in list PAIRS." (let ((domain-p (and gnus-picons-display-as-address dot-p)) pair picons) - (when (and bar-p domain-p right-p - gnus-picons-display-article-move-p) + (when (and bar-p domain-p right-p) (setq picons (gnus-picons-display-glyph (let ((gnus-picons-file-suffixes '("xbm"))) (gnus-picons-try-face @@ -482,7 +451,6 @@ none, and whose CDR is the corresponding element of DOMAINS." glyph)) (defun gnus-picons-display-glyph (glyph &optional part rightp) - (set-glyph-baseline glyph 70) (let ((new (gnus-picons-make-annotation glyph (point) 'text nil nil nil rightp))) (when (and part gnus-picons-display-as-address) @@ -520,10 +488,8 @@ none, and whose CDR is the corresponding element of DOMAINS." ;;; Query a remote DB. This requires some stuff from w3 ! -(eval-and-compile - (ignore-errors - (require 'url) - (require 'w3-forms))) +(require 'url) +(require 'w3-forms) (defun gnus-picons-url-retrieve (url fn arg) (let ((old-asynch (default-value 'url-be-asynchronous)) @@ -618,6 +584,7 @@ none, and whose CDR is the corresponding element of DOMAINS." ;;; picon network display functions : (defun gnus-picons-network-display-internal (sym-ann glyph part right-p) + (gnus-picons-set-buffer) (gnus-picons-display-picon-or-name glyph part right-p) (gnus-picons-next-job-internal)) @@ -738,31 +705,29 @@ none, and whose CDR is the corresponding element of DOMAINS." ;;; Main jobs dispatcher function (defun gnus-picons-next-job-internal () - (when (setq gnus-picons-job-already-running (pop gnus-picons-jobs-alist)) - (let* ((job gnus-picons-job-already-running) - (sym-ann (pop job)) - (tag (pop job))) - (when tag - (cond - ((stringp tag);; (SYM-ANN "..." RIGHT-P) - (gnus-picons-network-display-internal - sym-ann nil tag (pop job))) - ((eq 'bar tag) - (gnus-picons-network-display-internal - sym-ann - (let ((gnus-picons-file-suffixes '("xbm"))) - (gnus-picons-try-face - gnus-xmas-glyph-directory "bar.")) - nil (pop job))) - ((eq 'search tag);; (SYM-ANN 'search USER ADDRS DBS RIGHT-P) - (gnus-picons-network-search - (pop job) (pop job) (pop job) sym-ann (pop job))) - ((eq 'picon tag);; (SYM-ANN 'picon URL PART RIGHT-P) - (gnus-picons-network-display - (pop job) (pop job) sym-ann (pop job))) - (t - (setq gnus-picons-job-already-running nil) - (error "Unknown picon job tag %s" tag))))))) + (if (setq gnus-picons-job-already-running (pop gnus-picons-jobs-alist)) + (let* ((job gnus-picons-job-already-running) + (sym-ann (pop job)) + (tag (pop job))) + (if tag + (cond ((stringp tag);; (SYM-ANN "..." RIGHT-P) + (gnus-picons-network-display-internal sym-ann nil tag + (pop job))) + ((eq 'bar tag) + (gnus-picons-network-display-internal + sym-ann + (let ((gnus-picons-file-suffixes '("xbm"))) + (gnus-picons-try-face + gnus-xmas-glyph-directory "bar.")) + nil (pop job))) + ((eq 'search tag);; (SYM-ANN 'search USER ADDRS DBS RIGHT-P) + (gnus-picons-network-search + (pop job) (pop job) (pop job) sym-ann (pop job))) + ((eq 'picon tag);; (SYM-ANN 'picon URL PART RIGHT-P) + (gnus-picons-network-display + (pop job) (pop job) sym-ann (pop job))) + (t (setq gnus-picons-job-already-running nil) + (error "Unknown picon job tag %s" tag))))))) (defun gnus-picons-next-job () "Start processing the job queue if it is not in progress." diff --git a/lisp/gnus-salt.el b/lisp/gnus-salt.el index e98762e..da62e48 100644 --- a/lisp/gnus-salt.el +++ b/lisp/gnus-salt.el @@ -702,7 +702,7 @@ Two predefined functions are available: (while (progn (forward-line -1) (forward-char col) - (= (following-char) ? )) + (eq (char-after) ? )) (delete-char 1) (insert (caddr gnus-tree-parent-child-edges))) (goto-char beg))) diff --git a/lisp/gnus-score.el b/lisp/gnus-score.el index c429950..76cc2a3 100644 --- a/lisp/gnus-score.el +++ b/lisp/gnus-score.el @@ -435,20 +435,20 @@ of the last successful match.") (defconst gnus-header-index ;; Name to index alist. - '(("number" 0 gnus-score-integer) - ("subject" 1 gnus-score-string) - ("from" 2 gnus-score-string) - ("date" 3 gnus-score-date) - ("message-id" 4 gnus-score-string) - ("references" 5 gnus-score-string) - ("chars" 6 gnus-score-integer) - ("lines" 7 gnus-score-integer) - ("xref" 8 gnus-score-string) + '(("number" 1 gnus-score-integer) + ("subject" 8 gnus-score-string) + ("from" 9 gnus-score-string) + ("date" 10 gnus-score-date) + ("message-id" 11 gnus-score-string) + ("references" 12 gnus-score-string) + ("chars" 13 gnus-score-integer) + ("lines" 14 gnus-score-integer) + ("xref" 15 gnus-score-string) ("head" -1 gnus-score-body) ("body" -1 gnus-score-body) ("all" -1 gnus-score-body) - ("followup" 2 gnus-score-followup) - ("thread" 5 gnus-score-thread))) + ("followup" 9 gnus-score-followup) + ("thread" 12 gnus-score-thread))) ;;; Summary mode score maps. diff --git a/lisp/gnus-soup.el b/lisp/gnus-soup.el index 3d97829..1fdd83f 100644 --- a/lisp/gnus-soup.el +++ b/lisp/gnus-soup.el @@ -380,12 +380,12 @@ though the two last may be nil if they are missing." (push (vector (gnus-soup-field) (gnus-soup-field) (gnus-soup-field) - (and (eq (preceding-char) ?\t) + (and (eq (char-before) ?\t) (gnus-soup-field)) - (and (eq (preceding-char) ?\t) + (and (eq (char-before) ?\t) (string-to-int (gnus-soup-field)))) areas) - (when (eq (preceding-char) ?\t) + (when (eq (char-before) ?\t) (beginning-of-line 2))) (kill-buffer (current-buffer)))) areas)) @@ -403,7 +403,7 @@ file. The vector contain three strings, [prefix name encoding]." (push (vector (gnus-soup-field) (gnus-soup-field) (gnus-soup-field)) replies) - (when (eq (preceding-char) ?\t) + (when (eq (char-before) ?\t) (beginning-of-line 2))) (kill-buffer (current-buffer))) replies)) diff --git a/lisp/gnus-spec.el b/lisp/gnus-spec.el index 2a1e355..2b06fa8 100644 --- a/lisp/gnus-spec.el +++ b/lisp/gnus-spec.el @@ -169,7 +169,10 @@ ;; See whether all the stored info needs to be flushed. (when (or force (not (equal emacs-version - (cdr (assq 'version gnus-format-specs))))) + (cdr (assq 'version gnus-format-specs)))) + (not (equal gnus-version + (cdr (assq 'gnus-version gnus-format-specs))))) + (message "%s" "Force update format specs.") (setq gnus-format-specs nil)) ;; Go through all the formats and see whether they need updating. @@ -214,7 +217,9 @@ (set (intern (format "gnus-%s-line-format-spec" type)) val))))) (unless (assq 'version gnus-format-specs) - (push (cons 'version emacs-version) gnus-format-specs))) + (push (cons 'version emacs-version) gnus-format-specs)) + (unless (assq 'gnus-version gnus-format-specs) + (push (cons 'gnus-version gnus-version) gnus-format-specs))) (defvar gnus-mouse-face-0 'highlight) (defvar gnus-mouse-face-1 'highlight) @@ -391,9 +396,9 @@ (t nil))) ;; User-defined spec -- find the spec name. - (when (= (setq spec (following-char)) ?u) + (when (eq (setq spec (char-after)) ?u) (forward-char 1) - (setq user-defined (following-char))) + (setq user-defined (char-after))) (forward-char 1) (delete-region spec-beg (point)) diff --git a/lisp/gnus-srvr.el b/lisp/gnus-srvr.el index 21abf17..955a258 100644 --- a/lisp/gnus-srvr.el +++ b/lisp/gnus-srvr.el @@ -706,7 +706,7 @@ buffer. (save-excursion (beginning-of-line) ;; If this group it killed, then we want to subscribe it. - (when (= (following-char) ?K) + (when (eq (char-after) ?K) (setq sub t)) (setq group (gnus-browse-group-name)) (when (and sub diff --git a/lisp/gnus-start.el b/lisp/gnus-start.el index 1237936..9a5aa09 100644 --- a/lisp/gnus-start.el +++ b/lisp/gnus-start.el @@ -1772,13 +1772,13 @@ newsgroup." (progn (skip-chars-forward " \t") (not - (or (= (following-char) ?=) - (= (following-char) ?x) - (= (following-char) ?j))))) + (or (eq (char-after) ?=) + (eq (char-after) ?x) + (eq (char-after) ?j))))) (progn (set group (cons min max)) ;; if group is moderated, stick in moderation table - (when (= (following-char) ?m) + (when (eq (char-after) ?m) (unless gnus-moderated-hashtb (setq gnus-moderated-hashtb (gnus-make-hashtable))) (gnus-sethash (symbol-name group) t @@ -1813,7 +1813,7 @@ newsgroup." ;; Let the Gnus agent save the active file. (when (and gnus-agent real-active) (gnus-agent-save-groups method)) - + (goto-char (point-min)) ;; We split this into to separate loops, one with the prefix ;; and one without to speed the reading up somewhat. @@ -1836,7 +1836,7 @@ newsgroup." (let (min max group) (while (not (eobp)) (condition-case () - (when (= (following-char) ?2) + (when (eq (char-after) ?2) (read cur) (read cur) (setq min (read cur) max (read cur)) @@ -2056,7 +2056,7 @@ If FORCE is non-nil, the .newsrc file is read." (unless (boundp symbol) (set symbol nil)) ;; It was a group name. - (setq subscribed (= (following-char) ?:) + (setq subscribed (eq (char-after) ?:) group (symbol-name symbol) reads nil) (if (eolp) @@ -2080,7 +2080,7 @@ If FORCE is non-nil, the .newsrc file is read." (read buf))) (widen) ;; If the next character is a dash, then this is a range. - (if (= (following-char) ?-) + (if (eq (char-after) ?-) (progn ;; We read the upper bound of the range. (forward-char 1) @@ -2102,8 +2102,8 @@ If FORCE is non-nil, the .newsrc file is read." (push num1 reads)) ;; If the next char in ?\n, then we have reached the end ;; of the line and return nil. - (/= (following-char) ?\n)) - ((= (following-char) ?\n) + (not (eq (char-after) ?\n))) + ((eq (char-after) ?\n) ;; End of line, so we end. nil) (t diff --git a/lisp/gnus-sum.el b/lisp/gnus-sum.el index c78156c..7466be1 100644 --- a/lisp/gnus-sum.el +++ b/lisp/gnus-sum.el @@ -666,22 +666,6 @@ is not run if `gnus-visual' is nil." :group 'gnus-summary-visual :type 'hook) -(defcustom gnus-structured-field-decoder - #'eword-decode-and-unfold-structured-field-body - "Function to decode non-ASCII characters in structured field for summary." - :group 'gnus-various - :type 'function) - -(defcustom gnus-unstructured-field-decoder - (function - (lambda (string) - (eword-decode-unstructured-field-body - (std11-unfold-string string)) - )) - "Function to decode non-ASCII characters in unstructured field for summary." - :group 'gnus-various - :type 'function) - (defcustom gnus-parse-headers-hook '(gnus-set-summary-default-charset) "*A hook called before parsing the headers." @@ -821,9 +805,10 @@ which it may alter in any way.") (?S ,(macroexpand '(mail-header-subject gnus-tmp-header)) ?s) (?s gnus-tmp-subject-or-nil ?s) (?n gnus-tmp-name ?s) - (?A (car (cdr (funcall gnus-extract-address-components gnus-tmp-from))) - ?s) - (?a (or (car (funcall gnus-extract-address-components gnus-tmp-from)) + (?A (std11-address-string + (car (mime-read-field 'From gnus-tmp-header))) ?s) + (?a (or (std11-full-name-string + (car (mime-read-field 'From gnus-tmp-header))) gnus-tmp-from) ?s) (?F gnus-tmp-from ?s) (?x ,(macroexpand '(mail-header-xref gnus-tmp-header)) ?s) @@ -2237,7 +2222,7 @@ marks of articles." (while (setq point (pop config)) (when (and (< point (point-max)) (goto-char point) - (= (following-char) ?\n)) + (eq (char-after) ?\n)) (subst-char-in-region point (1+ point) ?\n ?\r))))) ;; Various summary mode internalish functions. @@ -2371,7 +2356,8 @@ marks of articles." (let ((gnus-summary-line-format-spec spec) (gnus-newsgroup-downloadable '((0 . t)))) (gnus-summary-insert-line - [0 "" "" "" "" "" 0 0 ""] 0 nil 128 t nil "" nil 1) + (make-full-mail-header 0 "" "" "" "" "" 0 0 "") + 0 nil 128 t nil "" nil 1) (goto-char (point-min)) (setq pos (list (cons 'unread (and (search-forward "\200" nil t) (- (point) 2))))) @@ -3041,7 +3027,7 @@ Returns HEADER if it was entered in the DEPENDENCIES. Returns nil otherwise." (defmacro gnus-nov-read-integer () '(prog1 - (if (= (following-char) ?\t) + (if (eq (char-after) ?\t) 0 (let ((num (ignore-errors (read buffer)))) (if (numberp num) num 0))) @@ -3071,10 +3057,8 @@ Returns HEADER if it was entered in the DEPENDENCIES. Returns nil otherwise." (setq header (make-full-mail-header number ; number - (funcall - gnus-unstructured-field-decoder (gnus-nov-field)) ; subject - (funcall - gnus-structured-field-decoder (gnus-nov-field)) ; from + (gnus-nov-field) ; subject + (gnus-nov-field) ; from (gnus-nov-field) ; date (or (gnus-nov-field) (nnheader-generate-fake-message-id)) ; id @@ -3470,14 +3454,15 @@ If LINE, insert the rebuilt thread starting on line LINE." (defsubst gnus-article-sort-by-author (h1 h2) "Sort articles by root author." (string-lessp - (let ((extract (funcall - gnus-extract-address-components - (mail-header-from h1)))) - (or (car extract) (cadr extract) "")) - (let ((extract (funcall - gnus-extract-address-components - (mail-header-from h2)))) - (or (car extract) (cadr extract) "")))) + (let ((addr (mime-read-field 'From h1))) + (or (std11-full-name-string addr) + (std11-address-string addr) + "")) + (let ((addr (mime-read-field 'From h2))) + (or (std11-full-name-string addr) + (std11-address-string addr) + "")) + )) (defun gnus-thread-sort-by-author (h1 h2) "Sort threads by root author." @@ -4388,7 +4373,7 @@ The resulting hash table is returned, or nil if no Xrefs were found." (subst-char-in-region (point-min) (point-max) ?\t ? t) (gnus-run-hooks 'gnus-parse-headers-hook) (let ((case-fold-search t) - in-reply-to header p lines chars) + in-reply-to header p lines chars ctype) (goto-char (point-min)) ;; Search to the beginning of the next header. Error messages ;; do not begin with 2 or 3. @@ -4403,7 +4388,7 @@ The resulting hash table is returned, or nil if no Xrefs were found." ;; doesn't always go hand in hand. (setq header - (vector + (make-full-mail-header ;; Number. (prog1 (read cur) @@ -4417,21 +4402,20 @@ The resulting hash table is returned, or nil if no Xrefs were found." (progn (goto-char p) (if (search-forward "\nsubject: " nil t) - (funcall - gnus-unstructured-field-decoder (nnheader-header-value)) + (buffer-substring (match-end 0) (std11-field-end)) "(none)")) ;; From. (progn (goto-char p) (if (search-forward "\nfrom: " nil t) - (funcall - gnus-structured-field-decoder (nnheader-header-value)) + (buffer-substring (match-end 0) (std11-field-end)) "(nobody)")) ;; Date. (progn (goto-char p) (if (search-forward "\ndate: " nil t) - (nnheader-header-value) "")) + (buffer-substring (match-end 0) (std11-field-end)) + "")) ;; Message-ID. (progn (goto-char p) @@ -4451,11 +4435,10 @@ The resulting hash table is returned, or nil if no Xrefs were found." (progn (setq end (point)) (prog1 - (nnheader-header-value) + (buffer-substring (match-end 0) (std11-field-end)) (setq ref (buffer-substring (progn - (end-of-line) (search-backward ">" end t) (1+ (point))) (progn @@ -4465,7 +4448,9 @@ The resulting hash table is returned, or nil if no Xrefs were found." ;; were no references and the in-reply-to header looks ;; promising. (if (and (search-forward "\nin-reply-to: " nil t) - (setq in-reply-to (nnheader-header-value)) + (setq in-reply-to + (buffer-substring (match-end 0) + (std11-field-end))) (string-match "<[^>]+>" in-reply-to)) (let (ref2) (setq ref (substring in-reply-to (match-beginning 0) @@ -4495,7 +4480,13 @@ The resulting hash table is returned, or nil if no Xrefs were found." (progn (goto-char p) (and (search-forward "\nxref: " nil t) - (nnheader-header-value))))) + (buffer-substring (match-end 0) (std11-field-end)))))) + (goto-char p) + (if (and (search-forward "\ncontent-type: " nil t) + (setq ctype + (buffer-substring (match-end 0) (std11-field-end)))) + (mime-entity-set-content-type-internal + header (mime-parse-Content-Type ctype))) (when (equal id ref) (setq ref nil)) @@ -4579,7 +4570,7 @@ This is meant to be called in `gnus-article-internal-prepare-hook'." (save-restriction (nnheader-narrow-to-headers) (goto-char (point-min)) - (when (or (and (eq (downcase (following-char)) ?x) + (when (or (and (eq (downcase (char-after)) ?x) (looking-at "Xref:")) (search-forward "\nXref:" nil t)) (goto-char (1+ (match-end 0))) @@ -5124,12 +5115,12 @@ gnus-exit-group-hook is called with no arguments if that value is non-nil." (gnus-kill-buffer buf))) (setq gnus-current-select-method gnus-select-method) (pop-to-buffer gnus-group-buffer) - ;; Clear the current group name. (if (not quit-config) (progn (goto-char group-point) (gnus-configure-windows 'group 'force)) (gnus-handle-ephemeral-exit quit-config)) + ;; Clear the current group name. (unless quit-config (setq gnus-newsgroup-name nil))))) @@ -7787,21 +7778,21 @@ marked." (defun gnus-summary-update-mark (mark type) (let ((forward (cdr (assq type gnus-summary-mark-positions))) - (buffer-read-only nil)) + (buffer-read-only nil)) (re-search-backward "[\n\r]" (gnus-point-at-bol) 'move-to-limit) (when (looking-at "\r") (incf forward)) (when (and forward - (<= (+ forward (point)) (point-max))) + (<= (+ forward (point)) (point-max))) ;; Go to the right position on the line. (goto-char (+ forward (point))) ;; Replace the old mark with the new mark. - (subst-char-in-region (point) (1+ (point)) (following-char) mark) + (subst-char-in-region (point) (1+ (point)) (char-after) mark) ;; Optionally update the marks by some user rule. (when (eq type 'unread) - (gnus-data-set-mark - (gnus-data-find (gnus-summary-article-number)) mark) - (gnus-summary-update-line (eq mark gnus-unread-mark)))))) + (gnus-data-set-mark + (gnus-data-find (gnus-summary-article-number)) mark) + (gnus-summary-update-line (eq mark gnus-unread-mark)))))) (defun gnus-mark-article-as-read (article &optional mark) "Enter ARTICLE in the pertinent lists and remove it from others." diff --git a/lisp/gnus-util.el b/lisp/gnus-util.el index cba9137..6c3400e 100644 --- a/lisp/gnus-util.el +++ b/lisp/gnus-util.el @@ -2,6 +2,7 @@ ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen +;; Katsumi Yamaoka ;; Keywords: mail, news, MIME ;; This file is part of GNU Emacs. diff --git a/lisp/gnus-xmas.el b/lisp/gnus-xmas.el index 41d5116..26245b3 100644 --- a/lisp/gnus-xmas.el +++ b/lisp/gnus-xmas.el @@ -2,6 +2,7 @@ ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen +;; Katsumi Yamaoka ;; Keywords: news ;; This file is part of GNU Emacs. @@ -56,7 +57,7 @@ automatically." (september "#bf9900" "#ffcc00")) "Color alist used for the Gnus logo.") -(defcustom gnus-xmas-logo-color-style 'moss +(defcustom gnus-xmas-logo-color-style 'sky "*Color styles used for the Gnus logo." :type '(choice (const flame) (const pine) (const moss) (const irish) (const sky) (const tin) @@ -668,8 +669,13 @@ the resulting string may be narrower than END-COLUMN. (goto-char (point-min)) (let* ((pheight (+ 20 (count-lines (point-min) (point-max)))) (wheight (window-height)) - (rest (- wheight pheight))) - (insert (make-string (max 0 (* 2 (/ rest 3))) ?\n)))) + (rest (1- (- wheight pheight)))) + (insert (make-string (max 0 (* 2 (/ rest 3))) ?\n))) + (goto-char (point-min)) + (insert-char ?\ ;;; + (max 0 (/ (- (window-width) (length gnus-version)) 2))) + (insert gnus-version "\n") + (put-text-property (point-min) (1- (point)) 'face 'gnus-splash-face)) (t (insert (format " %s @@ -700,8 +706,13 @@ the resulting string may be narrower than END-COLUMN. (forward-line 1) (let* ((pheight (count-lines (point-min) (point-max))) (wheight (window-height)) - (rest (- wheight pheight))) + (rest (1- (- wheight pheight)))) (insert (make-string (max 0 (* 2 (/ rest 3))) ?\n))) + (save-excursion + (goto-char (point-min)) + (insert-char ? ;;; + (max 0 (/ (- (window-width) (length gnus-version)) 2))) + (insert gnus-version "\n")) ;; Paint it. (put-text-property (point-min) (point-max) 'face 'gnus-splash-face))) (setq modeline-buffer-identification diff --git a/lisp/gnus.el b/lisp/gnus.el index 2157444..e36f1e6 100644 --- a/lisp/gnus.el +++ b/lisp/gnus.el @@ -253,11 +253,11 @@ is restarted, and sometimes reloaded." (defconst gnus-product-name "Semi-gnus" "Product name of this version of gnus.") -(defconst gnus-version-number "6.9.2" +(defconst gnus-version-number "6.10.1" "Version number for this version of gnus.") (defconst gnus-version - (format "%s %s (based on Gnus 5.6.45; for SEMI 1.11, FLIM 1.12)" + (format "%s %s (based on Gnus 5.6.45; for SEMI 1.12, FLIM 1.12)" gnus-product-name gnus-version-number) "Version string for this version of gnus.") @@ -642,10 +642,10 @@ be set in `.emacs' instead." (defface gnus-splash-face '((((class color) (background dark)) - (:foreground "ForestGreen")) + (:foreground "#05deff")) (((class color) (background light)) - (:foreground "ForestGreen")) + (:foreground "#049acc")) (t ())) "Level 1 newsgroup face.") @@ -701,7 +701,7 @@ be set in `.emacs' instead." __ " - "")) + "")) ;; And then hack it. (gnus-indent-rigidly (point-min) (point-max) (/ (max (- (window-width) (or x 46)) 0) 2)) @@ -709,8 +709,13 @@ be set in `.emacs' instead." (forward-line 1) (let* ((pheight (count-lines (point-min) (point-max))) (wheight (window-height)) - (rest (- wheight pheight))) + (rest (1- (- wheight pheight)))) (insert (make-string (max 0 (* 2 (/ rest 3))) ?\n))) + (save-excursion + (goto-char (point-min)) + (insert-char ?\ ;;; + (max 0 (/ (- (window-width) (length gnus-version)) 2))) + (insert gnus-version "\n")) ;; Fontify some. (put-text-property (point-min) (point-max) 'face 'gnus-splash-face) (goto-char (point-min)) diff --git a/lisp/mailheader.el b/lisp/mailheader.el index 5e2b097..6eb5669 100644 --- a/lisp/mailheader.el +++ b/lisp/mailheader.el @@ -60,7 +60,7 @@ that name." start end) (while (and (setq start (point)) (> (skip-chars-forward "^\0- :") 0) - (= (following-char) ?:) + (eq (char-after) ?:) (setq end (point)) (progn (forward-char) (> (skip-chars-forward " \t") 0))) diff --git a/lisp/message.el b/lisp/message.el index 82923d6..21576e3 100644 --- a/lisp/message.el +++ b/lisp/message.el @@ -4,7 +4,8 @@ ;; Author: Lars Magne Ingebrigtsen ;; MORIOKA Tomohiko ;; Shuhei KOBAYASHI -;; Keiichi Suzuki +;; Keiichi Suzuki +;; Katsumi Yamaoka ;; Keywords: mail, news, MIME ;; This file is part of GNU Emacs. @@ -480,8 +481,7 @@ variable isn't used." :group 'message-headers :type 'boolean) -(defcustom message-setup-hook - '(message-maybe-setup-default-charset turn-on-mime-edit) +(defcustom message-setup-hook '(turn-on-mime-edit) "Normal hook, run each time a new outgoing message is initialized. The function `message-setup' runs this hook." :group 'message-various @@ -602,8 +602,6 @@ If stringp, use this; if non-nil, use no host name (user name only)." (defvar message-reply-buffer nil) (defvar message-reply-headers nil) -(defvar message-newsreader nil) -(defvar message-mailer nil) (defvar message-sent-message-via nil) (defvar message-checksum nil) (defvar message-send-actions nil @@ -1083,12 +1081,12 @@ The cdr of ech entry is a function for applying the face to a region.") (not paren)))) (push (buffer-substring beg (point)) elems) (setq beg (match-end 0))) - ((= (following-char) ?\") + ((eq (char-after) ?\") (setq quoted (not quoted))) - ((and (= (following-char) ?\() + ((and (eq (char-after) ?\() (not quoted)) (setq paren t)) - ((and (= (following-char) ?\)) + ((and (eq (char-after) ?\)) (not quoted)) (setq paren nil)))) (nreverse elems))))) @@ -1321,7 +1319,7 @@ Return the number of headers removed." (define-key message-mode-map "\t" 'message-tab) (define-key message-mode-map "\C-x\C-s" 'message-save-drafts) - (define-key message-mode-map "\C-xk" 'message-kill-buffer)) + (define-key message-mode-map "\C-xk" 'message-mimic-kill-buffer)) (easy-menu-define message-mode-menu message-mode-map "Message Menu." @@ -1979,8 +1977,7 @@ The text will also be indented the normal way." (defun message-dont-send () "Don't send the message you have been editing." (interactive) - (set-buffer-modified-p t) - (save-buffer) + (message-save-drafts) (let ((actions message-postpone-actions) (frame (selected-frame)) (org-frame message-original-frame)) @@ -2146,11 +2143,56 @@ the user from the mailer." (eval (car actions))))) (pop actions))) +(defsubst message-maybe-split-and-send-mail () + "Split a message if necessary, and send it via mail. +Returns nil if sending succeeded, returns any string if sending failed. +This sub function is for exclusive use of `message-send-mail'." + (let ((mime-edit-split-ignored-field-regexp + mime-edit-split-ignored-field-regexp) + (case-fold-search t) + failure) + (while (string-match "Message-ID" mime-edit-split-ignored-field-regexp) + (setq mime-edit-split-ignored-field-regexp + (concat (substring mime-edit-split-ignored-field-regexp + 0 (match-beginning 0)) + "Hey_MIME-Edit,_there_is_an_inviolable_Message_ID" + "_so_don't_rape_it!" + (substring mime-edit-split-ignored-field-regexp + (match-end 0))))) + (setq failure + (or + (catch 'message-sending-mail-failure + (mime-edit-maybe-split-and-send + (function + (lambda () + (interactive) + (save-restriction + (std11-narrow-to-header mail-header-separator) + (goto-char (point-min)) + (when (re-search-forward "^Message-ID:" nil t) + (delete-region (match-end 0) (std11-field-end)) + (insert " " (message-make-message-id)))) + (condition-case err + (funcall message-send-mail-function) + (error + (throw 'message-sending-mail-failure err)))))) + nil) + (condition-case err + (progn + (funcall message-send-mail-function) + nil) + (error err)))) + (when failure + (if (eq 'error (car failure)) + (cadr failure) + (prin1-to-string failure))))) + (defun message-send-mail (&optional arg) (require 'mail-utils) (let ((tembuf (message-generate-new-buffer-clone-locals " message temp")) (case-fold-search nil) - (news (message-news-p))) + (news (message-news-p)) + failure) (save-restriction (message-narrow-to-headers) ;; Insert some headers. @@ -2162,7 +2204,6 @@ the user from the mailer." (if (not (message-check-mail-syntax)) (progn (message "") - ;;(message "Posting not performed") nil) (unwind-protect (save-excursion @@ -2172,25 +2213,24 @@ the user from the mailer." ;; Remove some headers. (save-restriction (message-narrow-to-headers) + ;; Remove some headers. (message-remove-header message-ignored-mail-headers t)) (goto-char (point-max)) ;; require one newline at the end. - (or (= (preceding-char) ?\n) + (or (eq (char-before) ?\n) (insert ?\n)) (when (and news (or (message-fetch-field "cc") (message-fetch-field "to"))) (message-insert-courtesy-copy)) - (mime-edit-maybe-split-and-send - (function - (lambda () - (interactive) - (funcall message-send-mail-function) - ))) - (funcall message-send-mail-function)) + (setq failure (message-maybe-split-and-send-mail))) (kill-buffer tembuf)) (set-buffer message-edit-buffer) - (push 'mail message-sent-message-via)))) + (if failure + (progn + (message "Couldn't send message via mail: %s" failure) + nil) + (push 'mail message-sent-message-via))))) (defun message-send-mail-with-sendmail () "Send off the prepared buffer with sendmail." @@ -2317,143 +2357,64 @@ to find out how to use this." (mh-send-letter))) (defun message-send-mail-with-smtp () - "Send the prepared message buffer with SMTP." - (require 'smtp) - (let ((errbuf (if mail-interactive - (generate-new-buffer " smtp errors") - 0)) - (case-fold-search nil) - resend-to-addresses - delimline) - (unwind-protect - (save-excursion - (goto-char (point-max)) - ;; require one newline at the end. - (or (= (preceding-char) ?\n) - (insert ?\n)) - ;; Change header-delimiter to be what sendmail expects. - (goto-char (point-min)) - (re-search-forward - (concat "^" (regexp-quote mail-header-separator) "\n")) - (replace-match "\n") - (backward-char 1) - (setq delimline (point-marker)) - (run-hooks 'message-send-mail-hook) - ;; (sendmail-synch-aliases) - ;; (if mail-aliases - ;; (expand-mail-aliases (point-min) delimline)) - (goto-char (point-min)) - ;; ignore any blank lines in the header - (while (and (re-search-forward "\n\n\n*" delimline t) - (< (point) delimline)) - (replace-match "\n")) - (let ((case-fold-search t)) - (goto-char (point-min)) - (goto-char (point-min)) - (while (re-search-forward "^Resent-to:" delimline t) - (setq resend-to-addresses - (save-restriction - (narrow-to-region (point) - (save-excursion - (end-of-line) - (point))) - (append (mail-parse-comma-list) - resend-to-addresses)))) -;;; Apparently this causes a duplicate Sender. -;;; ;; If the From is different than current user, insert Sender. -;;; (goto-char (point-min)) -;;; (and (re-search-forward "^From:" delimline t) -;;; (progn -;;; (require 'mail-utils) -;;; (not (string-equal -;;; (mail-strip-quoted-names -;;; (save-restriction -;;; (narrow-to-region (point-min) delimline) -;;; (mail-fetch-field "From"))) -;;; (user-login-name)))) -;;; (progn -;;; (forward-line 1) -;;; (insert "Sender: " (user-login-name) "\n"))) - ;; Don't send out a blank subject line - (goto-char (point-min)) - (if (re-search-forward "^Subject:[ \t]*\n" delimline t) - (replace-match "")) - ;; Put the "From:" field in unless for some odd reason - ;; they put one in themselves. - (goto-char (point-min)) - (if (not (re-search-forward "^From:" delimline t)) - (let* ((login user-mail-address) - (fullname (user-full-name))) - (cond ((eq mail-from-style 'angles) - (insert "From: " fullname) - (let ((fullname-start (+ (point-min) 6)) - (fullname-end (point-marker))) - (goto-char fullname-start) - ;; Look for a character that cannot appear unquoted - ;; according to RFC 822. - (if (re-search-forward "[^- !#-'*+/-9=?A-Z^-~]" - fullname-end 1) - (progn - ;; Quote fullname, escaping specials. - (goto-char fullname-start) - (insert "\"") - (while (re-search-forward "[\"\\]" - fullname-end 1) - (replace-match "\\\\\\&" t)) - (insert "\"")))) - (insert " <" login ">\n")) - ((eq mail-from-style 'parens) - (insert "From: " login " (") - (let ((fullname-start (point))) - (insert fullname) - (let ((fullname-end (point-marker))) - (goto-char fullname-start) - ;; RFC 822 says \ and nonmatching parentheses - ;; must be escaped in comments. - ;; Escape every instance of ()\ ... - (while (re-search-forward "[()\\]" fullname-end 1) - (replace-match "\\\\\\&" t)) - ;; ... then undo escaping of matching parentheses, - ;; including matching nested parentheses. - (goto-char fullname-start) - (while (re-search-forward - "\\(\\=\\|[^\\]\\(\\\\\\\\\\)*\\)\\\\(\\(\\([^\\]\\|\\\\\\\\\\)*\\)\\\\)" - fullname-end 1) - (replace-match "\\1(\\3)" t) - (goto-char fullname-start)))) - (insert ")\n")) - ((null mail-from-style) - (insert "From: " login "\n"))))) - ;; Insert an extra newline if we need it to work around - ;; Sun's bug that swallows newlines. - (goto-char (1+ delimline)) - (if (eval mail-mailer-swallows-blank-line) - (newline)) - ;; Find and handle any FCC fields. - (goto-char (point-min)) - (if (re-search-forward "^FCC:" delimline t) - (mail-do-fcc delimline)) - (if mail-interactive - (save-excursion - (set-buffer errbuf) - (erase-buffer)))) - ;; - ;; - ;; - (let ((recipient-address-list - (or resend-to-addresses - (smtp-deduce-address-list (current-buffer) - (point-min) delimline)))) - (smtp-do-bcc delimline) - - (if recipient-address-list - (if (not (smtp-via-smtp recipient-address-list - (current-buffer))) - (error "Sending failed; SMTP protocol error")) - (error "Sending failed; no recipients")) - )) - (if (bufferp errbuf) - (kill-buffer errbuf))))) + "Send off the prepared buffer with SMTP." + (require 'smtp) ; XXX + (let ((case-fold-search t) + recipients) + (save-restriction + (message-narrow-to-headers) + (setq recipients + ;; XXX: Should be replaced by better one. + (smtp-deduce-address-list (current-buffer) + (point-min) (point-max))) + ;; Remove BCC lines. + (message-remove-header "bcc")) + ;; replace the header delimiter with a blank line. + (goto-char (point-min)) + (re-search-forward + (concat "^" (regexp-quote mail-header-separator) "\n")) + (replace-match "\n") + (backward-char 1) + (run-hooks 'message-send-mail-hook) + (if recipients + (let ((result (smtp-via-smtp user-mail-address + recipients + (current-buffer)))) + (unless (eq result t) + (error "Sending failed; " result))) + (error "Sending failed; no recipients")))) + +(defsubst message-maybe-split-and-send-news (method) + "Split a message if necessary, and send it via news. +Returns nil if sending succeeded, returns t if sending failed. +This sub function is for exclusive use of `message-send-news'." + (let ((mime-edit-split-ignored-field-regexp + mime-edit-split-ignored-field-regexp) + (case-fold-search t)) + (while (string-match "Message-ID" mime-edit-split-ignored-field-regexp) + (setq mime-edit-split-ignored-field-regexp + (concat (substring mime-edit-split-ignored-field-regexp + 0 (match-beginning 0)) + "Hey_MIME-Edit,_there_is_an_inviolable_Message_ID" + "_so_don't_rape_it!" + (substring mime-edit-split-ignored-field-regexp + (match-end 0))))) + (or + (catch 'message-sending-news-failure + (mime-edit-maybe-split-and-send + (function + (lambda () + (interactive) + (save-restriction + (std11-narrow-to-header mail-header-separator) + (goto-char (point-min)) + (when (re-search-forward "^Message-ID:" nil t) + (delete-region (match-end 0) (std11-field-end)) + (insert " " (message-make-message-id)))) + (unless (funcall message-send-news-function method) + (throw 'message-sending-news-failure t))))) + nil) + (not (funcall message-send-news-function method))))) (defun message-send-news (&optional arg) (let ((tembuf (message-generate-new-buffer-clone-locals " *message temp*")) @@ -2475,9 +2436,7 @@ to find out how to use this." (run-hooks 'message-header-hook)) (message-cleanup-headers) (if (not (message-check-news-syntax)) - (progn - ;;(message "Posting not performed") - nil) + nil (unwind-protect (save-excursion (set-buffer tembuf) @@ -2491,29 +2450,17 @@ to find out how to use this." (message-remove-header message-ignored-news-headers t)) (goto-char (point-max)) ;; require one newline at the end. - (or (= (preceding-char) ?\n) + (or (eq (char-before) ?\n) (insert ?\n)) - (mime-edit-maybe-split-and-send - (function - (lambda () - (interactive) - (save-restriction - (std11-narrow-to-header mail-header-separator) - (goto-char (point-min)) - (when (re-search-forward "^Message-Id:" nil t) - (delete-region (match-end 0)(std11-field-end)) - (insert (concat " " (message-make-message-id))) - )) - (funcall message-send-news-function method) - ))) - (setq result (funcall message-send-news-function method))) + (setq result (message-maybe-split-and-send-news method))) (kill-buffer tembuf)) (set-buffer message-edit-buffer) (if result - (push 'news message-sent-message-via) - (message "Couldn't send message via news: %s" - (nnheader-get-report (car method))) - nil)))) + (progn + (message "Couldn't send message via news: %s" + (nnheader-get-report (car method))) + nil) + (push 'news message-sent-message-via))))) ;; 1997-09-29 by MORIOKA Tomohiko (defun message-send-news-with-gnus (method) @@ -2873,8 +2820,8 @@ to find out how to use this." (concat "^" (regexp-quote mail-header-separator) "$")) (while (not (eobp)) (when (not (looking-at "[ \t\n]")) - (setq sum (logxor (ash sum 1) (if (natnump sum) 0 1) - (following-char)))) + (setq sum (logxor (ash sum 1) (if (natnump sum) 0 1) + (char-after)))) (forward-char 1))) sum)) @@ -3287,7 +3234,9 @@ Headers already prepared in the buffer are not modified." (progn ;; The header was found. We insert a space after the ;; colon, if there is none. - (if (/= (following-char) ? ) (insert " ") (forward-char 1)) + (if (eq (char-after) ? ) + (forward-char 1) + (insert " ")) ;; Find out whether the header is empty... (looking-at "[ \t]*$"))) ;; So we find out what value we should insert. @@ -3396,7 +3345,7 @@ Headers already prepared in the buffer are not modified." (goto-char (point-min)) (while (not (eobp)) (skip-chars-forward "^,\"" (point-max)) - (if (or (= (following-char) ?,) + (if (or (eq (char-after) ?,) (eobp)) (when (not quoted) (if (and (> (current-column) 78) @@ -3468,7 +3417,7 @@ Headers already prepared in the buffer are not modified." (search-backward ":" ) (widen) (forward-char 1) - (if (= (following-char) ? ) + (if (eq (char-after) ? ) (forward-char 1) (insert " "))) (t @@ -3765,7 +3714,8 @@ OTHER-HEADERS is an alist of header/value pairs." (if wide to-address nil))) (setq message-reply-headers - (vector 0 subject from date message-id references 0 0 "")) + (make-full-mail-header-from-decoded-header + 0 subject from date message-id references 0 0 "")) (message-setup `((Subject . ,subject) @@ -3890,7 +3840,8 @@ responses here are directed to other newsgroups.")) cur) (setq message-reply-headers - (vector 0 subject from date message-id references 0 0 "")))) + (make-full-mail-header-from-decoded-header + 0 subject from date message-id references 0 0 "")))) ;;;###autoload @@ -4063,10 +4014,12 @@ the message." (let ((funcs message-make-forward-subject-function) (subject (if message-wash-forwarded-subjects (message-wash-subject - (or (eword-decode-unstructured-field-body - (message-fetch-field "Subject")) "")) - (or (eword-decode-unstructured-field-body - (message-fetch-field "Subject")) "")))) + (or (nnheader-decode-subject + (message-fetch-field "Subject")) + "")) + (or (nnheader-decode-subject + (message-fetch-field "Subject")) + "")))) ;; Make sure funcs is a list. (and funcs (not (listp funcs)) @@ -4290,7 +4243,7 @@ which specify the range to operate on." (goto-char (min start end)) (while (< (point) end1) (or (looking-at "[_\^@- ]") - (insert (following-char) "\b")) + (insert (char-after) "\b")) (forward-char 1))))) ;;;###autoload @@ -4304,7 +4257,7 @@ which specify the range to operate on." (move-marker end1 (max start end)) (goto-char (min start end)) (while (re-search-forward "\b" end1 t) - (if (eq (following-char) (char-after (- (point) 2))) + (if (eq (char-after) (char-after (- (point) 2))) (delete-char -2)))))) (defalias 'message-exchange-point-and-mark 'exchange-point-and-mark) @@ -4428,19 +4381,6 @@ regexp varstr." ;;; @ for MIME Edit mode ;;; -(defun message-maybe-setup-default-charset () - (let ((charset - (and (boundp 'gnus-summary-buffer) - (buffer-live-p gnus-summary-buffer) - (save-excursion - (set-buffer gnus-summary-buffer) - default-mime-charset)))) - (if charset - (progn - (make-local-variable 'default-mime-charset) - (setq default-mime-charset charset) - )))) - (defun message-maybe-encode () (when message-mime-mode (run-hooks 'mime-edit-translate-hook) diff --git a/lisp/mmgnus.el b/lisp/mmgnus.el new file mode 100644 index 0000000..a2f5d2c --- /dev/null +++ b/lisp/mmgnus.el @@ -0,0 +1,62 @@ +;;; mmgnus.el --- MIME entity implementation for gnus-article + +;; Copyright (C) 1998 Free Software Foundation, Inc. + +;; Author: MORIOKA Tomohiko +;; Keywords: MIME, multimedia, mail, news + +;; This file is part of Chao-gnus. + +;; This program is free software; you can redistribute it and/or +;; modify it under the terms of the GNU General Public License as +;; published by the Free Software Foundation; either version 2, or (at +;; your option) any later version. + +;; This program is distributed in the hope that it will be useful, but +;; WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +;; General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with GNU Emacs; see the file COPYING. If not, write to the +;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, +;; Boston, MA 02111-1307, USA. + +;;; Code: + +(require 'mmbuffer) + +(mm-define-backend gnus (generic)) + +(mm-define-method entity-buffer ((entity gnus)) + ;; (if (with-current-buffer gnus-summary-buffer + ;; (eq gnus-current-article (mail-header-number entity))) + ;; ...) + (unless (mime-entity-header-start-internal entity) + (set-buffer gnus-original-article-buffer) + (mime-entity-set-header-start-internal entity (point-min)) + (mime-entity-set-body-end-internal entity (point-max)) + (goto-char (point-min)) + (if (re-search-forward "^$" nil t) + (progn + (mime-entity-set-header-end-internal entity (match-end 0)) + (mime-entity-set-body-start-internal + entity + (if (= (mime-entity-header-end-internal entity) + (mime-entity-body-end-internal entity)) + (mime-entity-body-end-internal entity) + (1+ (mime-entity-header-end-internal entity)) + )) + ) + (mime-entity-set-header-end-internal entity (point-min)) + (mime-entity-set-body-start-internal entity (point-min)) + )) + gnus-original-article-buffer) + + +;;; @ end +;;; + +(provide 'mmgnus) + +;;; mmgnus.el ends here diff --git a/lisp/nnheader.el b/lisp/nnheader.el index 7ef13f2..9e6024d 100644 --- a/lisp/nnheader.el +++ b/lisp/nnheader.el @@ -1,9 +1,11 @@ -;;; nnheader.el --- header access macros for Gnus and its backends +;;; nnheader.el --- header access macros for Semi-gnus and its backends ;; Copyright (C) 1987,88,89,90,93,94,95,96,97,98 Free Software Foundation, Inc. ;; Author: Masanobu UMEDA -;; Lars Magne Ingebrigtsen -;; Keywords: news +;; Lars Magne Ingebrigtsen +;; MORIOKA Tomohiko +;; Katsumi Yamaoka +;; Keywords: mail, news, MIME ;; This file is part of GNU Emacs. @@ -40,6 +42,7 @@ (eval-when-compile (require 'cl)) (require 'mail-utils) +(require 'mime) (defvar nnheader-max-head-length 4096 "*Max length of the head of articles.") @@ -68,86 +71,78 @@ on your system, you could say something like: (defmacro mail-header-number (header) "Return article number in HEADER." - `(aref ,header 0)) + `(mime-entity-location-internal ,header)) (defmacro mail-header-set-number (header number) "Set article number of HEADER to NUMBER." - `(aset ,header 0 ,number)) + `(mime-entity-set-location-internal ,header ,number)) -(defmacro mail-header-subject (header) - "Return subject string in HEADER." - `(aref ,header 1)) +(defalias 'mail-header-subject 'mime-entity-decoded-subject-internal) +(defalias 'mail-header-set-subject 'mime-entity-set-decoded-subject-internal) -(defmacro mail-header-set-subject (header subject) - "Set article subject of HEADER to SUBJECT." - `(aset ,header 1 ,subject)) +(defalias 'mail-header-from 'mime-entity-decoded-from-internal) +(defalias 'mail-header-set-from 'mime-entity-set-decoded-from-internal) -(defmacro mail-header-from (header) - "Return author string in HEADER." - `(aref ,header 2)) +(defalias 'mail-header-date 'mime-entity-date-internal) +(defalias 'mail-header-set-date 'mime-entity-set-date-internal) -(defmacro mail-header-set-from (header from) - "Set article author of HEADER to FROM." - `(aset ,header 2 ,from)) +(defalias 'mail-header-message-id 'mime-entity-message-id-internal) +(defalias 'mail-header-id 'mime-entity-message-id-internal) +(defalias 'mail-header-set-message-id 'mime-entity-set-message-id-internal) +(defalias 'mail-header-set-id 'mime-entity-set-message-id-internal) -(defmacro mail-header-date (header) - "Return date in HEADER." - `(aref ,header 3)) +(defalias 'mail-header-references 'mime-entity-references-internal) +(defalias 'mail-header-set-references 'mime-entity-set-references-internal) -(defmacro mail-header-set-date (header date) - "Set article date of HEADER to DATE." - `(aset ,header 3 ,date)) +(defalias 'mail-header-chars 'mime-entity-chars-internal) +(defalias 'mail-header-set-chars 'mime-entity-set-chars-internal) -(defalias 'mail-header-message-id 'mail-header-id) -(defmacro mail-header-id (header) - "Return Id in HEADER." - `(aref ,header 4)) +(defalias 'mail-header-lines 'mime-entity-lines-internal) +(defalias 'mail-header-set-lines 'mime-entity-set-lines-internal) -(defalias 'mail-header-set-message-id 'mail-header-set-id) -(defmacro mail-header-set-id (header id) - "Set article Id of HEADER to ID." - `(aset ,header 4 ,id)) +(defalias 'mail-header-xref 'mime-entity-xref-internal) +(defalias 'mail-header-set-xref 'mime-entity-set-xref-internal) -(defmacro mail-header-references (header) - "Return references in HEADER." - `(aref ,header 5)) +(defalias 'nnheader-decode-subject + (mime-find-field-decoder 'Subject 'nov)) +(defalias 'nnheader-decode-from + (mime-find-field-decoder 'From 'nov)) -(defmacro mail-header-set-references (header ref) - "Set article references of HEADER to REF." - `(aset ,header 5 ,ref)) - -(defmacro mail-header-chars (header) - "Return number of chars of article in HEADER." - `(aref ,header 6)) - -(defmacro mail-header-set-chars (header chars) - "Set number of chars in article of HEADER to CHARS." - `(aset ,header 6 ,chars)) - -(defmacro mail-header-lines (header) - "Return lines in HEADER." - `(aref ,header 7)) - -(defmacro mail-header-set-lines (header lines) - "Set article lines of HEADER to LINES." - `(aset ,header 7 ,lines)) - -(defmacro mail-header-xref (header) - "Return xref string in HEADER." - `(aref ,header 8)) - -(defmacro mail-header-set-xref (header xref) - "Set article xref of HEADER to xref." - `(aset ,header 8 ,xref)) +(defsubst make-full-mail-header (&optional number subject from date id + references chars lines xref) + "Create a new mail header structure initialized with the parameters given." + (make-mime-entity-internal + 'gnus number + nil + nil nil nil + (if subject + (nnheader-decode-subject subject) + ) + (if from + (nnheader-decode-from from) + ) + date id references + chars lines xref + (list (cons 'Subject subject) + (cons 'From from)) + )) + +(defsubst make-full-mail-header-from-decoded-header + (&optional number subject from date id references chars lines xref) + "Create a new mail header structure initialized with the parameters given." + (make-mime-entity-internal + 'gnus number + nil + nil nil nil + subject + from + date id references + chars lines xref)) (defun make-mail-header (&optional init) "Create a new mail header structure initialized with INIT." - (make-vector 9 init)) - -(defun make-full-mail-header (&optional number subject from date id - references chars lines xref) - "Create a new mail header structure initialized with the parameters given." - (vector number subject from date id references chars lines xref)) + (make-full-mail-header init init init init init + init init init init)) ;; fake message-ids: generation and detection @@ -183,7 +178,7 @@ on your system, you could say something like: ;; about twice as fast, even though it looks messier. You ;; can't have everything, I guess. Speed and elegance ;; don't always go hand in hand. - (vector + (make-full-mail-header ;; Number. (if naked (progn @@ -270,17 +265,15 @@ on your system, you could say something like: (defmacro nnheader-nov-read-integer () '(prog1 - (if (= (following-char) ?\t) + (if (eq (char-after) ?\t) 0 (let ((num (ignore-errors (read (current-buffer))))) (if (numberp num) num 0))) (or (eobp) (forward-char 1)))) -;; (defvar nnheader-none-counter 0) - (defun nnheader-parse-nov () (let ((eol (gnus-point-at-eol))) - (vector + (make-full-mail-header (nnheader-nov-read-integer) ; number (nnheader-nov-field) ; subject (nnheader-nov-field) ; from @@ -290,7 +283,7 @@ on your system, you could say something like: (nnheader-nov-field) ; refs (nnheader-nov-read-integer) ; chars (nnheader-nov-read-integer) ; lines - (if (= (following-char) ?\n) + (if (eq (char-after) ?\n) nil (nnheader-nov-field)) ; misc ))) @@ -299,8 +292,8 @@ on your system, you could say something like: (princ (mail-header-number header) (current-buffer)) (insert "\t" - (or (mail-header-subject header) "(none)") "\t" - (or (mail-header-from header) "(nobody)") "\t" + (or (mime-fetch-field 'Subject header) "(none)") "\t" + (or (mime-fetch-field 'From header) "(nobody)") "\t" (or (mail-header-date header) "") "\t" (or (mail-header-id header) (nnmail-message-id)) diff --git a/lisp/nnheaderxm.el b/lisp/nnheaderxm.el index 7c1435c..8a38564 100644 --- a/lisp/nnheaderxm.el +++ b/lisp/nnheaderxm.el @@ -2,6 +2,7 @@ ;; Copyright (C) 1996,97,98 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen +;; Katsumi Yamaoka ;; Keywords: news ;; This file is part of GNU Emacs. diff --git a/lisp/nnmail.el b/lisp/nnmail.el index 8e8359e..524bb4b 100644 --- a/lisp/nnmail.el +++ b/lisp/nnmail.el @@ -838,7 +838,7 @@ is a spool. If not using procmail, return GROUP." (when (and (or (bobp) (save-excursion (forward-line -1) - (= (following-char) ?\n))) + (eq (char-after) ?\n))) (save-excursion (forward-line 1) (while (looking-at ">From \\|From ") @@ -867,7 +867,7 @@ is a spool. If not using procmail, return GROUP." (when (and (or (bobp) (save-excursion (forward-line -1) - (= (following-char) ?\n))) + (eq (char-after) ?\n))) (save-excursion (forward-line 1) (while (looking-at ">From \\|From ") @@ -1740,11 +1740,11 @@ If ARGS, PROMPT is used as an argument to `format'." (goto-char (point-min)) (while (re-search-forward "[^ \t=]+" nil t) (setq name (match-string 0)) - (if (not (= (following-char) ?=)) + (if (not (eq (char-after) ?=)) ;; Implied "yes". (setq value "yes") (forward-char 1) - (if (not (= (following-char) ?\")) + (if (not (eq (char-after) ?\")) (if (not (looking-at "[^ \t]")) ;; Implied "no". (setq value "no") diff --git a/lisp/nnmh.el b/lisp/nnmh.el index 8aafd7d..3a4c27a 100644 --- a/lisp/nnmh.el +++ b/lisp/nnmh.el @@ -110,7 +110,6 @@ (when large (nnheader-message 5 "nnmh: Receiving headers...done")) - (nnheader-fold-continuation-lines) 'headers)))) (deffoo nnmh-open-server (server &optional defs) diff --git a/lisp/nnsoup.el b/lisp/nnsoup.el index e764150..76160f9 100644 --- a/lisp/nnsoup.el +++ b/lisp/nnsoup.el @@ -687,7 +687,7 @@ backend for the messages.") (message-remove-header message-ignored-mail-headers t)) (goto-char (point-max)) ;; require one newline at the end. - (or (= (preceding-char) ?\n) + (or (eq (char-before) ?\n) (insert ?\n)) (let ((case-fold-search t)) ;; Change header-delimiter to be what sendmail expects. diff --git a/lisp/nntp.el b/lisp/nntp.el index d7665b5..f38c4b7 100644 --- a/lisp/nntp.el +++ b/lisp/nntp.el @@ -390,7 +390,7 @@ If this variable is nil, which is the default, no timers are set.") (cond ;; A result that starts with a 2xx code is terminated by ;; a line with only a "." on it. - ((eq (following-char) ?2) + ((eq (char-after) ?2) (if (re-search-forward "\n\\.\r?\n" nil t) t nil)) diff --git a/lisp/pop3-fma.el b/lisp/pop3-fma.el index 293efe6..90db4d2 100644 --- a/lisp/pop3-fma.el +++ b/lisp/pop3-fma.el @@ -3,7 +3,7 @@ ;; Yasuo Okabe ;; Author: Tatsuya Ichikawa ;; Yasuo OKABE -;; Version: 1.16 +;; Version: 1.17 ;; Keywords: mail , gnus , pop3 ;; ;; SPECIAL THANKS @@ -92,7 +92,8 @@ ;; "Goodbye Game" ; 1.12 ;; "Love is Gamble" ; 1.13 ;; "Lonely" ; 1.14 - "Feel the wind" ; 1.16 +;; "Feel the wind" ; 1.16 + "Sadness like snow" ; 1.17 ) (defconst pop3-fma-version (format "Multiple POP3 account utiliy for Gnus v%s - \"%s\"" pop3-fma-version-number @@ -211,8 +212,8 @@ If there is any problem , please set this variable to nil(default). (substring inbox (match-end (string-match "^po:" inbox)) (- (match-end (string-match "^.*@" inbox)) 1))))) (pop3-authentication-scheme - (nth 1 (assoc inbox pop3-fma-spool-file-alist))) - (pop3-fma-movemail-type (pop3-fma-get-movemail-type inbox))) + (nth 1 (assoc inbox pop3-fma-spool-file-alist)))) +;; (pop3-fma-movemail-type (pop3-fma-get-movemail-type inbox))) (if (eq pop3-authentication-scheme 'pass) (message "Checking new mail user %s at %s using USER/PASS ..." pop3-maildrop pop3-mailhost) (message "Checking new mail user %s at %s using APOP ..." pop3-maildrop pop3-mailhost)) @@ -223,13 +224,22 @@ If there is any problem , please set this variable to nil(default). (if (and (not (memq pop3-password pop3-fma-commandline-arguments)) (not (memq (concat "po:" pop3-maildrop) pop3-fma-commandline-arguments))) (progn - (setq pop3-fma-commandline-arguments - (append - pop3-fma-movemail-arguments - (list - (concat "po:" pop3-maildrop) - crashbox - pop3-password))))) + (if (eq pop3-authentication-scheme 'apop) + (setq pop3-fma-commandline-arguments + (append + pop3-fma-movemail-arguments + (list + "-A" + (concat "po:" pop3-maildrop) + crashbox + pop3-password))) + (setq pop3-fma-commandline-arguments + (append + pop3-fma-movemail-arguments + (list + (concat "po:" pop3-maildrop) + crashbox + pop3-password)))))) (if (not (get-buffer movemail-output-buffer)) (get-buffer-create movemail-output-buffer)) (set-buffer movemail-output-buffer) diff --git a/lisp/rfc2045.el b/lisp/rfc2045.el deleted file mode 100644 index c8028db..0000000 --- a/lisp/rfc2045.el +++ /dev/null @@ -1,39 +0,0 @@ -;;; rfc2045.el --- Functions for decoding rfc2045 headers -;; Copyright (C) 1998 Free Software Foundation, Inc. - -;; Author: Lars Magne Ingebrigtsen -;; This file is part of GNU Emacs. - -;; GNU Emacs is free software; you can redistribute it and/or modify -;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation; either version 2, or (at your option) -;; any later version. - -;; GNU Emacs is distributed in the hope that it will be useful, -;; but WITHOUT ANY WARRANTY; without even the implied warranty of -;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;; GNU General Public License for more details. - -;; You should have received a copy of the GNU General Public License -;; along with GNU Emacs; see the file COPYING. If not, write to the -;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, -;; Boston, MA 02111-1307, USA. - -;;; Commentary: - -;;; Code: - -(require 'ietf-drums) - -(defun rfc2045-encode-string (param value) - "Return and PARAM=VALUE string encoded according to RFC2045." - (if (or (string-match (concat "[" ietf-drums-no-ws-ctl-token "]") value) - (string-match (concat "[" ietf-drums-tspecials "]") value) - (string-match "[ \n\t]" value) - (not (string-match (concat "[" ietf-drums-text-token "]") value))) - (concat param "=" (format "%S" value)) - (concat param "=" value))) - -(provide 'rfc2045) - -;;; rfc2045.el ends here diff --git a/lisp/smiley.el b/lisp/smiley.el index e6c13f7..87ea5e0 100644 --- a/lisp/smiley.el +++ b/lisp/smiley.el @@ -294,7 +294,7 @@ Mouse button3 - menu")) (save-excursion (goto-char start) (when (and (re-search-backward "[()]" nil t) - (= (following-char) ?\() + (eq (char-after) ?\() (goto-char end) (or (not (re-search-forward "[()]" nil t)) (= (char-after (1- (point))) ?\())) diff --git a/lisp/smtp.el b/lisp/smtp.el deleted file mode 100644 index 1954200..0000000 --- a/lisp/smtp.el +++ /dev/null @@ -1,451 +0,0 @@ -;;; smtp.el --- basic functions to send mail with SMTP server - -;; Copyright (C) 1995, 1996, 1998 Free Software Foundation, Inc. - -;; Author: Tomoji Kagatani -;; ESMTP support: Simon Leinen -;; Keywords: SMTP, mail - -;; This file is part of GNU Emacs. - -;; GNU Emacs is free software; you can redistribute it and/or modify -;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation; either version 2, or (at your option) -;; any later version. - -;; GNU Emacs is distributed in the hope that it will be useful, -;; but WITHOUT ANY WARRANTY; without even the implied warranty of -;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;; GNU General Public License for more details. - -;; You should have received a copy of the GNU General Public License -;; along with GNU Emacs; see the file COPYING. If not, write to the -;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, -;; Boston, MA 02111-1307, USA. - -;;; Code: - -(defgroup smtp nil - "SMTP protocol for sending mail." - :group 'mail) - -(defcustom smtp-default-server nil - "*Specify default SMTP server." - :type '(choice (const nil) string) - :group 'smtp) - -(defcustom smtp-server - (or (getenv "SMTPSERVER") smtp-default-server) - "*The name of the host running SMTP server." - :type '(choice (const nil) string) - :group 'smtp) - -(defcustom smtp-service 25 - "*SMTP service port number. smtp or 25 ." - :type 'integer - :group 'smtp) - -(defcustom smtp-local-domain nil - "*Local domain name without a host name. -If the function (system-name) returns the full internet address, -don't define this value." - :type '(choice (const nil) string) - :group 'smtp) - -(defcustom smtp-debug-info nil - "*smtp debug info printout. messages and process buffer." - :type 'boolean - :group 'smtp) - - -(defun smtp-fqdn () - (if smtp-local-domain - (concat (system-name) "." smtp-local-domain) - (system-name))) - -(defun smtp-via-smtp (recipient smtp-text-buffer) - (let ((process nil) - (host smtp-server) - (port smtp-service) - response-code - greeting - process-buffer - (supported-extensions '())) - (unwind-protect - (catch 'done - ;; get or create the trace buffer - (setq process-buffer - (get-buffer-create - (format "*trace of SMTP session to %s*" host))) - - ;; clear the trace buffer of old output - (save-excursion - (set-buffer process-buffer) - (erase-buffer)) - - ;; open the connection to the server - (setq process (open-network-stream-as-binary - "SMTP" process-buffer host port)) - (and (null process) (throw 'done nil)) - - ;; set the send-filter - (set-process-filter process 'smtp-process-filter) - - (save-excursion - (set-buffer process-buffer) - (make-local-variable 'smtp-read-point) - (setq smtp-read-point (point-min)) - - (if (or (null (car (setq greeting (smtp-read-response process)))) - (not (integerp (car greeting))) - (>= (car greeting) 400)) - (throw 'done nil) - ) - - ;; EHLO - (smtp-send-command process (format "EHLO %s" (smtp-fqdn))) - - (if (or (null (car (setq response-code (smtp-read-response process)))) - (not (integerp (car response-code))) - (>= (car response-code) 400)) - (progn - ;; HELO - (smtp-send-command process (format "HELO %s" (smtp-fqdn))) - - (if (or (null (car (setq response-code (smtp-read-response process)))) - (not (integerp (car response-code))) - (>= (car response-code) 400)) - (throw 'done nil))) - (let ((extension-lines (cdr (cdr response-code)))) - (while extension-lines - (let ((name (intern (downcase (substring (car extension-lines) 4))))) - (and name - (cond ((memq name '(verb xvrb 8bitmime onex xone - expn size dsn etrn - help xusr)) - (setq supported-extensions - (cons name supported-extensions))) - (t (message "unknown extension %s" - name))))) - (setq extension-lines (cdr extension-lines))))) - - (if (or (member 'onex supported-extensions) - (member 'xone supported-extensions)) - (progn - (smtp-send-command process (format "ONEX")) - (if (or (null (car (setq response-code (smtp-read-response process)))) - (not (integerp (car response-code))) - (>= (car response-code) 400)) - (throw 'done nil)))) - - (if (and smtp-debug-info - (or (member 'verb supported-extensions) - (member 'xvrb supported-extensions))) - (progn - (smtp-send-command process (format "VERB")) - (if (or (null (car (setq response-code (smtp-read-response process)))) - (not (integerp (car response-code))) - (>= (car response-code) 400)) - (throw 'done nil)))) - - (if (member 'xusr supported-extensions) - (progn - (smtp-send-command process (format "XUSR")) - (if (or (null (car (setq response-code (smtp-read-response process)))) - (not (integerp (car response-code))) - (>= (car response-code) 400)) - (throw 'done nil)))) - - ;; MAIL FROM: - (let ((size-part - (if (member 'size supported-extensions) - (format " SIZE=%d" - (save-excursion - (set-buffer smtp-text-buffer) - ;; size estimate: - (+ (- (point-max) (point-min)) - ;; Add one byte for each change-of-line - ;; because or CR-LF representation: - (count-lines (point-min) (point-max)) - ;; For some reason, an empty line is - ;; added to the message. Maybe this - ;; is a bug, but it can't hurt to add - ;; those two bytes anyway: - 2))) - "")) - (body-part - (if (member '8bitmime supported-extensions) - ;; FIXME: - ;; Code should be added here that transforms - ;; the contents of the message buffer into - ;; something the receiving SMTP can handle. - ;; For a receiver that supports 8BITMIME, this - ;; may mean converting BINARY to BASE64, or - ;; adding Content-Transfer-Encoding and the - ;; other MIME headers. The code should also - ;; return an indication of what encoding the - ;; message buffer is now, i.e. ASCII or - ;; 8BITMIME. - (if nil - " BODY=8BITMIME" - "") - ""))) -; (smtp-send-command process (format "MAIL FROM:%s@%s" (user-login-name) (smtp-fqdn))) - (smtp-send-command process (format "MAIL FROM: <%s>%s%s" - user-mail-address - size-part - body-part)) - - (if (or (null (car (setq response-code (smtp-read-response process)))) - (not (integerp (car response-code))) - (>= (car response-code) 400)) - (throw 'done nil) - )) - - ;; RCPT TO: - (let ((n 0)) - (while (not (null (nth n recipient))) - (smtp-send-command process (format "RCPT TO: <%s>" (nth n recipient))) - (setq n (1+ n)) - - (setq response-code (smtp-read-response process)) - (if (or (null (car response-code)) - (not (integerp (car response-code))) - (>= (car response-code) 400)) - (throw 'done nil) - ) - )) - - ;; DATA - (smtp-send-command process "DATA") - - (if (or (null (car (setq response-code (smtp-read-response process)))) - (not (integerp (car response-code))) - (>= (car response-code) 400)) - (throw 'done nil) - ) - - ;; Mail contents - (smtp-send-data process smtp-text-buffer) - - ;;DATA end "." - (smtp-send-command process ".") - - (if (or (null (car (setq response-code (smtp-read-response process)))) - (not (integerp (car response-code))) - (>= (car response-code) 400)) - (throw 'done nil) - ) - - ;;QUIT -; (smtp-send-command process "QUIT") -; (and (null (car (smtp-read-response process))) -; (throw 'done nil)) - t )) - (if process - (save-excursion - (set-buffer (process-buffer process)) - (smtp-send-command process "QUIT") - (smtp-read-response process) - -; (if (or (null (car (setq response-code (smtp-read-response process)))) -; (not (integerp (car response-code))) -; (>= (car response-code) 400)) -; (throw 'done nil) -; ) - (delete-process process)))))) - -(defun smtp-process-filter (process output) - (save-excursion - (set-buffer (process-buffer process)) - (goto-char (point-max)) - (insert output))) - -(defun smtp-read-response (process) - (let ((case-fold-search nil) - (response-strings nil) - (response-continue t) - (return-value '(nil ())) - match-end) - - (while response-continue - (goto-char smtp-read-point) - (while (not (search-forward "\r\n" nil t)) - (accept-process-output process) - (goto-char smtp-read-point)) - - (setq match-end (point)) - (setq response-strings - (cons (buffer-substring smtp-read-point (- match-end 2)) - response-strings)) - - (goto-char smtp-read-point) - (if (looking-at "[0-9]+ ") - (let ((begin (match-beginning 0)) - (end (match-end 0))) - (if smtp-debug-info - (message "%s" (car response-strings))) - - (setq smtp-read-point match-end) - - ;; ignore lines that start with "0" - (if (looking-at "0[0-9]+ ") - nil - (setq response-continue nil) - (setq return-value - (cons (string-to-int - (buffer-substring begin end)) - (nreverse response-strings))))) - - (if (looking-at "[0-9]+-") - (progn (if smtp-debug-info - (message "%s" (car response-strings))) - (setq smtp-read-point match-end) - (setq response-continue t)) - (progn - (setq smtp-read-point match-end) - (setq response-continue nil) - (setq return-value - (cons nil (nreverse response-strings))) - ) - ))) - (setq smtp-read-point match-end) - return-value)) - -(defun smtp-send-command (process command) - (goto-char (point-max)) - (if (= (aref command 0) ?P) - (insert "PASS \r\n") - (insert command "\r\n")) - (setq smtp-read-point (point)) - (process-send-string process command) - (process-send-string process "\r\n")) - -(defun smtp-send-data-1 (process data) - (goto-char (point-max)) - - (if smtp-debug-info - (insert data "\r\n")) - - (setq smtp-read-point (point)) - ;; Escape "." at start of a line - (if (eq (string-to-char data) ?.) - (process-send-string process ".")) - (process-send-string process data) - (process-send-string process "\r\n") - ) - -(defun smtp-send-data (process buffer) - (let - ((data-continue t) - (sending-data nil) - this-line - this-line-end) - - (save-excursion - (set-buffer buffer) - (goto-char (point-min))) - - (while data-continue - (save-excursion - (set-buffer buffer) - (beginning-of-line) - (setq this-line (point)) - (end-of-line) - (setq this-line-end (point)) - (setq sending-data nil) - (setq sending-data (buffer-substring this-line this-line-end)) - (if (or (/= (forward-line 1) 0) (eobp)) - (setq data-continue nil))) - - (smtp-send-data-1 process sending-data) - ) - ) - ) - -(defun smtp-deduce-address-list (smtp-text-buffer header-start header-end) - "Get address list suitable for smtp RCPT TO:
." - (require 'mail-utils) ;; pick up mail-strip-quoted-names - (let ((case-fold-search t) - (simple-address-list "") - this-line - this-line-end - addr-regexp - (smtp-address-buffer (generate-new-buffer " *smtp-mail*"))) - (unwind-protect - (save-excursion - ;; - (set-buffer smtp-address-buffer) - (erase-buffer) - (insert-buffer-substring smtp-text-buffer - header-start header-end) - (goto-char (point-min)) - ;; RESENT-* fields should stop processing of regular fields. - (save-excursion - (if (re-search-forward "^RESENT-TO:" header-end t) - (setq addr-regexp - "^\\(RESENT-TO:\\|RESENT-CC:\\|RESENT-BCC:\\)") - (setq addr-regexp "^\\(TO:\\|CC:\\|BCC:\\)"))) - - (while (re-search-forward addr-regexp header-end t) - (replace-match "") - (setq this-line (match-beginning 0)) - (forward-line 1) - ;; get any continuation lines - (while (and (looking-at "^[ \t]+") (< (point) header-end)) - (forward-line 1)) - (setq this-line-end (point-marker)) - (setq simple-address-list - (concat simple-address-list " " - (mail-strip-quoted-names - (buffer-substring this-line this-line-end)))) - ) - (erase-buffer) - (insert-string " ") - (insert-string simple-address-list) - (insert-string "\n") - ;; newline --> blank - (subst-char-in-region (point-min) (point-max) 10 ? t) - ;; comma --> blank - (subst-char-in-region (point-min) (point-max) ?, ? t) - ;; tab --> blank - (subst-char-in-region (point-min) (point-max) 9 ? t) - - (goto-char (point-min)) - ;; tidyness in case hook is not robust when it looks at this - (while (re-search-forward "[ \t]+" header-end t) (replace-match " ")) - - (goto-char (point-min)) - (let (recipient-address-list) - (while (re-search-forward " \\([^ ]+\\) " (point-max) t) - (backward-char 1) - (setq recipient-address-list - (cons (buffer-substring (match-beginning 1) (match-end 1)) - recipient-address-list)) - ) - recipient-address-list) - ) - (kill-buffer smtp-address-buffer)) - )) - -(defun smtp-do-bcc (header-end) - "Delete BCC: and their continuation lines from the header area. -There may be multiple BCC: lines, and each may have arbitrarily -many continuation lines." - (let ((case-fold-search t)) - (save-excursion - (goto-char (point-min)) - ;; iterate over all BCC: lines - (while (re-search-forward "^BCC:" header-end t) - (delete-region (match-beginning 0) (progn (forward-line 1) (point))) - ;; get rid of any continuation lines - (while (and (looking-at "^[ \t].*\n") (< (point) header-end)) - (replace-match "")) - ) - ) ;; save-excursion - ) ;; let - ) - -(provide 'smtp) - -;;; smtp.el ends here diff --git a/lisp/smtpmail.el b/lisp/smtpmail.el deleted file mode 100644 index 77a5947..0000000 --- a/lisp/smtpmail.el +++ /dev/null @@ -1,285 +0,0 @@ -;;; smtpmail.el --- simple SMTP protocol (RFC 821) for sending mail - -;; Copyright (C) 1995, 1996 Free Software Foundation, Inc. - -;; Author: Tomoji Kagatani -;; Maintainer: Brian D. Carlstrom -;; ESMTP support: Simon Leinen -;; Keywords: mail - -;; This file is part of GNU Emacs. - -;; GNU Emacs is free software; you can redistribute it and/or modify -;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation; either version 2, or (at your option) -;; any later version. - -;; GNU Emacs is distributed in the hope that it will be useful, -;; but WITHOUT ANY WARRANTY; without even the implied warranty of -;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;; GNU General Public License for more details. - -;; You should have received a copy of the GNU General Public License -;; along with GNU Emacs; see the file COPYING. If not, write to the -;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, -;; Boston, MA 02111-1307, USA. - -;;; Commentary: - -;; Send Mail to smtp host from smtpmail temp buffer. - -;; Please add these lines in your .emacs(_emacs). -;; -;;(setq send-mail-function 'smtpmail-send-it) -;;(setq smtp-default-server "YOUR SMTP HOST") -;;(setq smtp-service "smtp") -;;(setq smtp-local-domain "YOUR DOMAIN NAME") -;;(setq smtp-debug-info t) -;;(autoload 'smtpmail-send-it "smtpmail") -;;(setq user-full-name "YOUR NAME HERE") - -;; To queue mail, set smtpmail-queue-mail to t and use -;; smtpmail-send-queued-mail to send. - - -;;; Code: - -(require 'smtp) -(require 'sendmail) -(require 'time-stamp) - -;;; - -(defcustom smtpmail-queue-mail nil - "*Specify if mail is queued (if t) or sent immediately (if nil). -If queued, it is stored in the directory `smtpmail-queue-dir' -and sent with `smtpmail-send-queued-mail'." - :type 'boolean - :group 'smtp) - -(defcustom smtpmail-queue-dir "~/Mail/queued-mail/" - "*Directory where `smtpmail.el' stores queued mail." - :type 'directory - :group 'smtp) - -(defvar smtpmail-queue-index-file "index" - "File name of queued mail index, -This is relative to `smtpmail-queue-dir'.") - -(defvar smtpmail-queue-index (concat smtpmail-queue-dir - smtpmail-queue-index-file)) - -(defvar smtpmail-recipient-address-list nil) - - -;;; -;;; -;;; - -(defun smtpmail-send-it () - (require 'mail-utils) - (let ((errbuf (if mail-interactive - (generate-new-buffer " smtpmail errors") - 0)) - (tembuf (generate-new-buffer " smtpmail temp")) - (case-fold-search nil) - resend-to-addresses - delimline - (mailbuf (current-buffer))) - (unwind-protect - (save-excursion - (set-buffer tembuf) - (erase-buffer) - (insert-buffer-substring mailbuf) - (goto-char (point-max)) - ;; require one newline at the end. - (or (= (preceding-char) ?\n) - (insert ?\n)) - ;; Change header-delimiter to be what sendmail expects. - (goto-char (point-min)) - (re-search-forward - (concat "^" (regexp-quote mail-header-separator) "\n")) - (replace-match "\n") - (backward-char 1) - (setq delimline (point-marker)) -;; (sendmail-synch-aliases) - (if mail-aliases - (expand-mail-aliases (point-min) delimline)) - (goto-char (point-min)) - ;; ignore any blank lines in the header - (while (and (re-search-forward "\n\n\n*" delimline t) - (< (point) delimline)) - (replace-match "\n")) - (let ((case-fold-search t)) - (goto-char (point-min)) - (goto-char (point-min)) - (while (re-search-forward "^Resent-to:" delimline t) - (setq resend-to-addresses - (save-restriction - (narrow-to-region (point) - (save-excursion - (end-of-line) - (point))) - (append (mail-parse-comma-list) - resend-to-addresses)))) -;;; Apparently this causes a duplicate Sender. -;;; ;; If the From is different than current user, insert Sender. -;;; (goto-char (point-min)) -;;; (and (re-search-forward "^From:" delimline t) -;;; (progn -;;; (require 'mail-utils) -;;; (not (string-equal -;;; (mail-strip-quoted-names -;;; (save-restriction -;;; (narrow-to-region (point-min) delimline) -;;; (mail-fetch-field "From"))) -;;; (user-login-name)))) -;;; (progn -;;; (forward-line 1) -;;; (insert "Sender: " (user-login-name) "\n"))) - ;; Don't send out a blank subject line - (goto-char (point-min)) - (if (re-search-forward "^Subject:[ \t]*\n" delimline t) - (replace-match "")) - ;; Put the "From:" field in unless for some odd reason - ;; they put one in themselves. - (goto-char (point-min)) - (if (not (re-search-forward "^From:" delimline t)) - (let* ((login user-mail-address) - (fullname (user-full-name))) - (cond ((eq mail-from-style 'angles) - (insert "From: " fullname) - (let ((fullname-start (+ (point-min) 6)) - (fullname-end (point-marker))) - (goto-char fullname-start) - ;; Look for a character that cannot appear unquoted - ;; according to RFC 822. - (if (re-search-forward "[^- !#-'*+/-9=?A-Z^-~]" - fullname-end 1) - (progn - ;; Quote fullname, escaping specials. - (goto-char fullname-start) - (insert "\"") - (while (re-search-forward "[\"\\]" - fullname-end 1) - (replace-match "\\\\\\&" t)) - (insert "\"")))) - (insert " <" login ">\n")) - ((eq mail-from-style 'parens) - (insert "From: " login " (") - (let ((fullname-start (point))) - (insert fullname) - (let ((fullname-end (point-marker))) - (goto-char fullname-start) - ;; RFC 822 says \ and nonmatching parentheses - ;; must be escaped in comments. - ;; Escape every instance of ()\ ... - (while (re-search-forward "[()\\]" fullname-end 1) - (replace-match "\\\\\\&" t)) - ;; ... then undo escaping of matching parentheses, - ;; including matching nested parentheses. - (goto-char fullname-start) - (while (re-search-forward - "\\(\\=\\|[^\\]\\(\\\\\\\\\\)*\\)\\\\(\\(\\([^\\]\\|\\\\\\\\\\)*\\)\\\\)" - fullname-end 1) - (replace-match "\\1(\\3)" t) - (goto-char fullname-start)))) - (insert ")\n")) - ((null mail-from-style) - (insert "From: " login "\n"))))) - ;; Insert an extra newline if we need it to work around - ;; Sun's bug that swallows newlines. - (goto-char (1+ delimline)) - (if (eval mail-mailer-swallows-blank-line) - (newline)) - ;; Find and handle any FCC fields. - (goto-char (point-min)) - (if (re-search-forward "^FCC:" delimline t) - (mail-do-fcc delimline)) - (if mail-interactive - (save-excursion - (set-buffer errbuf) - (erase-buffer)))) - ;; - ;; - ;; - (setq smtpmail-recipient-address-list - (or resend-to-addresses - (smtp-deduce-address-list tembuf (point-min) delimline))) - - (smtp-do-bcc delimline) - ; Send or queue - (if (not smtpmail-queue-mail) - (if smtpmail-recipient-address-list - (if (not (smtp-via-smtp - smtpmail-recipient-address-list tembuf)) - (error "Sending failed; SMTP protocol error")) - (error "Sending failed; no recipients")) - (let* ((file-data (concat - smtpmail-queue-dir - (time-stamp-strftime - "%02y%02m%02d-%02H%02M%02S"))) - (file-elisp (concat file-data ".el")) - (buffer-data (create-file-buffer file-data)) - (buffer-elisp (create-file-buffer file-elisp)) - (buffer-scratch "*queue-mail*")) - (save-excursion - (set-buffer buffer-data) - (erase-buffer) - (insert-buffer tembuf) - (write-file file-data) - (set-buffer buffer-elisp) - (erase-buffer) - (insert (concat - "(setq smtpmail-recipient-address-list '" - (prin1-to-string smtpmail-recipient-address-list) - ")\n")) - (write-file file-elisp) - (set-buffer (generate-new-buffer buffer-scratch)) - (insert (concat file-data "\n")) - (append-to-file (point-min) - (point-max) - smtpmail-queue-index) - ) - (kill-buffer buffer-scratch) - (kill-buffer buffer-data) - (kill-buffer buffer-elisp)))) - (kill-buffer tembuf) - (if (bufferp errbuf) - (kill-buffer errbuf))))) - -(defun smtpmail-send-queued-mail () - "Send mail that was queued as a result of setting `smtpmail-queue-mail'." - (interactive) - ;;; Get index, get first mail, send it, get second mail, etc... - (let ((buffer-index (find-file-noselect smtpmail-queue-index)) - (file-msg "") - (tembuf nil)) - (save-excursion - (set-buffer buffer-index) - (beginning-of-buffer) - (while (not (eobp)) - (setq file-msg (buffer-substring (point) (save-excursion - (end-of-line) - (point)))) - (load file-msg) - (setq tembuf (find-file-noselect file-msg)) - (if smtpmail-recipient-address-list - (if (not (smtp-via-smtp smtpmail-recipient-address-list tembuf)) - (error "Sending failed; SMTP protocol error")) - (error "Sending failed; no recipients")) - (delete-file file-msg) - (delete-file (concat file-msg ".el")) - (kill-buffer tembuf) - (kill-line 1)) - (set-buffer buffer-index) - (save-buffer smtpmail-queue-index) - (kill-buffer buffer-index) - ))) - - -;;; - -(provide 'smtpmail) - -;;; smtpmail.el ends here diff --git a/texi/gnus-ja.texi b/texi/gnus-ja.texi index b742de3..12cf1d0 100644 --- a/texi/gnus-ja.texi +++ b/texi/gnus-ja.texi @@ -1,7 +1,7 @@ \input texinfo @c -*-texinfo-*- @setfilename gnus-ja -@settitle Semi-gnus 6.9.2 Manual +@settitle Semi-gnus 6.10 Manual @synindex fn cp @synindex vr cp @synindex pg cp @@ -345,7 +345,7 @@ into another language, under the above conditions for modified versions. @tex @titlepage -@title Semi-gnus 6.9.2 Manual +@title Semi-gnus 6.10 Manual @author by Lars Magne Ingebrigtsen @author by members of Semi-gnus mailing-list @@ -399,7 +399,7 @@ Semi-gnus $B$O!"Bg$-$J3($,F~$C$F$$$?$j$5$^$6$^$J7A<0$rMQ$$$?$j$7$F$$$k$A$g$C(B $B$J8@8l7w$r:9JL$7$^$;$s!#$"$"!"%/%j%s%4%s$NJ}$O(B Unicode Next Generation$B$r(B $B$*BT$A$/$@$5$$!#(B -$B$3$N@bL@=q$O(B Semi-gnus 6.9.2 $B$KBP1~$7$^$9!#(B +$B$3$N@bL@=q$O(B Semi-gnus 6.10 $B$KBP1~$7$^$9!#(B @end ifinfo @@ -18126,7 +18126,7 @@ Gnus $B$OH"$+$i=P$7$F$9$0$K(B @emph{$BHs>o$K(B} $B$h$/F0:n$7$^$9(B---$B2? @item @kbd{M-x gnus-version} $B$r;n$7$F2<$5$$!#$b$7!"(B -@samp{Semi-gnus 6.9.2 (based on Gnus 5.6.45; for SEMI 1.11, FLIM 1.12)} +@samp{Semi-gnus 6.10 (based on Gnus 5.6.45; for SEMI 1.12, FLIM 1.12)} $B$N$h$&$J$b$N$,=P$F$-$?$J$i!"@5$7$$%U%!%$%k$,FI$_9~$^$l$F$$$^$9!#(B $B$b$7!"(B@samp{NNTP 3.x} $B$d(B @samp{nntp flee} $B$N$h$&$J$b$N$,=P$F$-$?$H$-$O!"(B $B$=$3$K$"$k$$$/$D$+$N8E$$(B @file{.el} $B%U%!%$%k$,FI$_9~$^$l$F$$$^$9!#$=$l$i(B diff --git a/texi/gnus.texi b/texi/gnus.texi index cf3105c..68372f6 100644 --- a/texi/gnus.texi +++ b/texi/gnus.texi @@ -1,7 +1,7 @@ \input texinfo @c -*-texinfo-*- @setfilename gnus -@settitle Semi-gnus 6.9.2 Manual +@settitle Semi-gnus 6.10 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 Semi-gnus 6.9.2 Manual +@title Semi-gnus 6.10 Manual @author by Lars Magne Ingebrigtsen @page @@ -361,7 +361,7 @@ internationalization/localization and multiscript features based on MULE API. So Semi-gnus does not discriminate various language communities. Oh, if you are a Klingon, please wait Unicode Next Generation. -This manual corresponds to Semi-gnus 6.9.2. +This manual corresponds to Semi-gnus 6.10. @end ifinfo