From: keiichi Date: Wed, 7 Oct 1998 03:06:22 +0000 (+0000) Subject: * Sync up with Semi-gnus 6.8.19 X-Git-Tag: nana-gnus-6_8-199811302358~10 X-Git-Url: http://git.chise.org/gitweb/?a=commitdiff_plain;h=798f246240802efb86ba923205fe7f8ca8efb300;p=elisp%2Fgnus.git- * Sync up with Semi-gnus 6.8.19 * Change version number to "6.8.19.2". * Small bug fix in message.el. --- diff --git a/ChangeLog b/ChangeLog index cdb2e56..68ce06c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,8 +1,20 @@ 1998-10-07 Keiichi Suzuki + * lisp/gnus.el (gnus-version-number): Change to "6.8.19.2" + + * lisp/message.el (message-mime-insert-article): Bug fix. + + * Sync up with Semi-gnus 6.8.19 + +1998-10-07 Keiichi Suzuki + * lisp/gnus.el (gnus-version-number): Change to "6.8.19.1" (gnus-version): Change to "Nana-gnus". +1998-10-07 Keiichi Suzuki + + * TODO.ja: New file. + 1998-10-06 Keiichi Suzuki * lisp/message.el (message-parameter-alist): New variable. @@ -25,6 +37,24 @@ * lisp/gnus-msg.el (gnus-setup-message): Setup `message-startup-parameter-alist'. +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 Keiichi Suzuki * Sync up with Semi-gnus 6.8.19. @@ -35,6 +65,17 @@ * Sync up with Gnus 5.6.44. +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-16 Katsumi Yamaoka * Makefile.in: Add entry `info-ja'. diff --git a/TODO.ja b/TODO.ja new file mode 100644 index 0000000..36bef6e --- /dev/null +++ b/TODO.ja @@ -0,0 +1,124 @@ +-*- mode: text; left-margin: 4; fill-column: 70; -*- + +To do list. + +;; 対策済のものは、適当なタイミング(リリース時?)で削除してください。 +;; また、各 personal branch で対策中、または対策済のものに関してはその +;; 旨を記載してください。 + +------------ 不明 ------------ + +*1998/10/02-2 設定ファイル群読み込み時の coding-system 問題 + +----------- 未対策 ----------- + +*1998/09/25-1 message/partial の結合機能の改良 + + Subject で summary を検索する代わりに、gnus-newsgroup-headers な + どの情報を使って、確実に自動結合できるようにする。 + +*1998/10/02-1 Draft の編集・送信時の encode / decode 問題 + + 編集中のメッセージを draft 内に保存する場合、通常のテキスト・デー + タとして保存しているが、これを network 形式で保存するように変更し、 + 再編集は decode してから行い、送信はそのままの形式で行うようにする。 + +*1998/10/02-4 Offline 時に作成したメッセージの Message-Id 問題 + + Offline 時にメッセージを作成した場合、 Message-Id の形式が不当なも + のになってしまう。 + +*1998/10/02-5 Edit article 時にメッセージを破壊する問題 + + nnml 等で保存してあるメッセージで edit article を使用して編集を行っ + た場合、 MIME entity を破壊してしまう。 + +*1998/10/02-6 smtpmail.el 削除 + + 現在、 Semi-gnus では smtpmail.el を使用していないので削除する。 + +*1998/10/02-7 smtp.el 移動 + + smtp.el は、他の package でも使用する可能性があるので、 FLIM に移 + 動する。 + その前に、 shuhei-k 枝の smtp.el との仕様を共通化する必要がある。 + +*1998/10/02-9 In-Reply-To ヘッダー形式変更 + + draft-ietf-drums-msg-fmt-05.txt に従った形式に変更する。 + +*1998/10/02-10 はじめて gnus-agent を使用したときの問題 + + 以下のような方法(起動時から unplugged にする)で、はじめて + gnus-agent を使用した場合、起動時に“nntp open error”となる。 + + (gnus-agentize) + (gnus-agent-toggle-plugged nil) + + [補足] + + .emacs に (setq gnus-plugged nil) + .gnus.el に (gnus-agentize) として使用した方がよいのではないか? + +*1998/10/02-11 message.el の独立した使用時の問題 + + message.el は単独(Semi-gnusが起動されていない状態)で使用される可能 + 性があるので、 Semi-gnus 本体に依存している部分を排除する。 + +*1998/10/02-12 ヘッダー・フィールドに対する不要な decode を排除 + + 既に decode されているヘッダー・フィールドを再度 decode してしまう + 個所があるようなので、それを排除する。 + +*1998/10/02-13 .gnus.el のテンプレート作成 + + .gnus.el のテンプレート・ファイルと、その解説書を作成する。 + +*1998/10/05-1 大盛りパッケージ作成 + + SEMI / FLIM / APEL / Semi-gnus のバージョン不一致による混乱を避け + るためにこれらを一つのパッケージとして、配布するようにする。 + +----------- 対策中 ----------- + + ここには、他ブランチで対策中または、対策済で gnus-V1_V2 枝に取り込 + まれていないものを含む。 + +*1998/10/02-3 message/partial 使用時の Message-Id 問題 + + message/partial 形式でメッセージを送信した場合、全パートの + Messge-Id が同じものになってしまう。 + + [対策] + + 現状では、各メッセージに Message-Id を付加しないという方法で対策済。 + + [案] + + ただし、それぞれに Message-Id を付加する実装があれば、そちらに変更 + する。(ichikawa 枝の実装?) + +*1998/10/03-01 任意メッセージ cite 機能の実装方法変更 (keiichi branch) + + 任意のメッセージを cite するための機能を以前追加したが、この変更に + よって message-mime-insert-article() でメッセージを破壊してしまう + ようになった。 + +*1998/10/03-2 Info (gnus/gnus-ja) の選択 + + semi-gnus-ja : No.1271, 1272 で出た話題 + + Gnusでは C-c TABでそれぞれのbufferに対応するinfoのnodeを開くことが + できるようになってるので日本語Infoも読めるようにする。(動的に選択 + できるようにする。) + + [補足] + + Semi-gnusの成果のひとつである日本語Infoをそのまま読めるようにした + い。gnus/gnus-jaは動的に選択できるようにしたい。 + +----------- 対策済 ----------- + +*1998/10/02-8 User-Agent ヘッダー・フィールド採用 + + 1998/10/05 - 完了 diff --git a/lisp/gnus-draft.el b/lisp/gnus-draft.el index 7a3ca8a..f428731 100644 --- a/lisp/gnus-draft.el +++ b/lisp/gnus-draft.el @@ -95,9 +95,11 @@ (interactive) (let ((article (gnus-summary-article-number))) (gnus-summary-mark-as-read article gnus-canceled-mark) - (gnus-draft-setup article gnus-newsgroup-name) + (gnus-draft-setup-for-editing article gnus-newsgroup-name) (set-buffer-modified-p t) (save-buffer) + (let ((gnus-verbose-backends nil)) + (gnus-request-expire-articles (list article) gnus-newsgroup-name t)) (push `((lambda () (when (gnus-buffer-exists-p ,gnus-summary-buffer) @@ -119,7 +121,7 @@ (defun gnus-draft-send (article &optional group) "Send message ARTICLE." - (gnus-draft-setup article (or group "nndraft:queue")) + (gnus-draft-setup-for-sending article (or group "nndraft:queue")) (let ((message-syntax-checks 'dont-check-for-anything-just-trust-me) message-send-hook type method) ;; We read the meta-information that says how and where @@ -134,13 +136,25 @@ (message-remove-header gnus-agent-meta-information-header))) ;; Then we send it. If we have no meta-information, we just send ;; it and let Message figure out how. - (when (if type - (let ((message-this-is-news (eq type 'news)) - (message-this-is-mail (eq type 'mail)) - (gnus-post-method method) - (message-post-method method)) - (message-send-and-exit)) - (message-send-and-exit)) + (when (let ((mail-header-separator "")) + (cond ((eq type 'news) + (mime-edit-maybe-split-and-send + (function + (lambda () + (interactive) + (funcall message-send-news-function method) + ))) + (funcall message-send-news-function method) + ) + ((eq type 'mail) + (mime-edit-maybe-split-and-send + (function + (lambda () + (interactive) + (funcall message-send-mail-function) + ))) + (funcall message-send-mail-function) + t))) (let ((gnus-verbose-backends nil)) (gnus-request-expire-articles (list article) (or group "nndraft:queue") t))))) @@ -183,8 +197,7 @@ ;;;!!!This has been fixed in recent versions of Emacs and XEmacs, ;;;!!!but for the time being, we'll just run this tiny function uncompiled. -(progn -(defun gnus-draft-setup (narticle group) +(defun gnus-draft-setup-for-editing (narticle group) (gnus-setup-message 'forward (let ((article narticle)) (message-mail) @@ -198,7 +211,19 @@ (forward-char -1) (insert mail-header-separator) (forward-line 1) - (message-set-auto-save-file-name)))))) + (message-set-auto-save-file-name))))) +;; +(defvar gnus-draft-send-draft-buffer " *send draft*") +(defun gnus-draft-setup-for-sending (narticle group) + (let ((article narticle)) + (if (not (get-buffer gnus-draft-send-draft-buffer)) + (get-buffer-create gnus-draft-send-draft-buffer)) + (set-buffer gnus-draft-send-draft-buffer) + (erase-buffer) + (if (not (gnus-request-restore-buffer article group)) + (error "Couldn't restore the article") + ))) +;; For draft TEST (defun gnus-draft-article-sendable-p (article) "Say whether ARTICLE is sendable." diff --git a/lisp/gnus-msg.el b/lisp/gnus-msg.el index 0feffe5..5774e25 100644 --- a/lisp/gnus-msg.el +++ b/lisp/gnus-msg.el @@ -121,7 +121,13 @@ the second with the current group name.") (defvar gnus-message-group-art nil) (defconst gnus-bug-message - "Sending a bug report to the Gnus Towers. + (format "Sending a bug report to the Gnus Towers. +======================================== + +This gnus is the %s%s. +If you think the bug is a Semi-gnus bug, send a bug report to Semi-gnus +Developers. (the addresses below are mailing list addresses) + ======================================== The buffer below is a mail buffer. When you press `C-c C-c', it will @@ -138,7 +144,12 @@ and include the backtrace in your bug report. 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") + "" + ", a modified version of Semi-gnus"))) (eval-and-compile (autoload 'gnus-uu-post-news "gnus-uu" nil t) @@ -218,7 +229,7 @@ Thank you for your help in stamping out bugs. (setq message-post-method `(lambda (arg) (gnus-post-method arg ,gnus-newsgroup-name))) - (setq message-newsreader (setq message-mailer (gnus-extended-version))) + (setq message-user-agent (gnus-extended-version)) (message-add-action `(set-window-configuration ,winconf) 'exit 'postpone 'kill) (message-add-action @@ -535,13 +546,10 @@ If SILENT, don't prompt the user." (defvar nnspool-rejected-article-hook) (defvar xemacs-codename) -;;; Since the X-Newsreader/X-Mailer are ``vanity'' headers, they might -;;; as well include the Emacs version as well. -;;; The following function works with later GNU Emacs, and XEmacs. (defun gnus-extended-version () "Stringified gnus version." (interactive) - gnus-version) + (concat gnus-product-name "/" gnus-version-number)) ;;; @@ -807,7 +815,8 @@ If YANK is non-nil, include the original article." (insert gnus-bug-message) (goto-char (point-min))) (message-pop-to-buffer "*Gnus Bug*") - (message-setup `((To . ,gnus-maintainer) (Subject . ""))) + (message-setup + `((To . ,gnus-maintainer) (Cc . ,semi-gnus-developers) (Subject . ""))) (when gnus-bug-create-help-buffer (push `(gnus-bug-kill-buffer) message-send-actions)) (goto-char (point-min)) diff --git a/lisp/gnus-soup.el b/lisp/gnus-soup.el index 08f8176..3d97829 100644 --- a/lisp/gnus-soup.el +++ b/lisp/gnus-soup.el @@ -540,8 +540,7 @@ Return whether the unpacking was successful." (search-forward "\n\n") (forward-char -1) (insert mail-header-separator) - (setq message-newsreader (setq message-mailer - (gnus-extended-version))) + (setq message-user-agent (gnus-extended-version)) (cond ((string= (gnus-soup-reply-kind (car replies)) "news") (gnus-message 5 "Sending news message to %s..." diff --git a/lisp/gnus-start.el b/lisp/gnus-start.el index 95a3527..8c73a33 100644 --- a/lisp/gnus-start.el +++ b/lisp/gnus-start.el @@ -711,6 +711,8 @@ prompt the user for the name of an NNTP server to use." (gnus-group-first-unread-group) (gnus-configure-windows 'group) (gnus-group-set-mode-line) + ;; For reading Info. + (set-language-info "Japanese" 'gnus-info "gnus-ja") (gnus-run-hooks 'gnus-started-hook)))))) (defun gnus-start-draft-setup () diff --git a/lisp/gnus.el b/lisp/gnus.el index d454418..bb1ed1d 100644 --- a/lisp/gnus.el +++ b/lisp/gnus.el @@ -250,12 +250,15 @@ is restarted, and sometimes reloaded." :link '(custom-manual "(gnus)Exiting Gnus") :group 'gnus) -(defconst gnus-version-number "6.8.19.1" +(defconst gnus-product-name "Nana-gnus" + "Product name of this version of gnus.") + +(defconst gnus-version-number "6.8.19.2" "Version number for this version of gnus.") (defconst gnus-version - (format "Nana-gnus %s (based on Gnus 5.6.44; for SEMI 1.8, FLIM 1.8/1.9)" - gnus-version-number) + (format "%s %s (based on Gnus 5.6.44; for SEMI 1.8, FLIM 1.8/1.9)" + gnus-product-name gnus-version-number) "Version string for this version of gnus.") (defcustom gnus-inhibit-startup-message nil @@ -1481,14 +1484,30 @@ want." "bugs@gnus.org (The Gnus Bugfixing Girls + Boys)" "The mail address of the Gnus maintainers.") +(defconst semi-gnus-developers + "Semi-gnus Developers: + semi-gnus-en@meadow.scphys.kyoto-u.ac.jp (In English),\ + semi-gnus-ja@meadow.scphys.kyoto-u.ac.jp (In Japanese);" + "The mail address of the Semi-gnus developers.") + +(defcustom gnus-info-filename nil + "*Controls language of gnus Info. +If nil and current-language-environment is Japanese, go to gnus-ja. +Otherwise go to corresponding Info. +This variable can be nil, gnus or gnus-ja." + :group 'gnus-start + :type '(choice (const nil) + (const :tag "English" gnus) + (const :tag "Japanese" gnus-ja))) + (defvar gnus-info-nodes - '((gnus-group-mode "(gnus)The Group Buffer") - (gnus-summary-mode "(gnus)The Summary Buffer") - (gnus-article-mode "(gnus)The Article Buffer") - (mime/viewer-mode "(gnus)The Article Buffer") - (gnus-server-mode "(gnus)The Server Buffer") - (gnus-browse-mode "(gnus)Browse Foreign Server") - (gnus-tree-mode "(gnus)Tree Display")) + '((gnus-group-mode "The Group Buffer") + (gnus-summary-mode "The Summary Buffer") + (gnus-article-mode "The Article Buffer") + (mime/viewer-mode "The Article Buffer") + (gnus-server-mode "The Server Buffer") + (gnus-browse-mode "Browse Foreign Server") + (gnus-tree-mode "Tree Display")) "Alist of major modes and related Info nodes.") (defvar gnus-group-buffer "*Group*") @@ -2020,7 +2039,11 @@ If ARG, insert string at point." (interactive) ;; Enlarge info window if needed. (let (gnus-info-buffer) - (Info-goto-node (cadr (assq major-mode gnus-info-nodes))) + (Info-goto-node (format "(%s)%s" + (or gnus-info-filename + (get-language-info current-language-environment 'gnus-info) + "gnus") + (cadr (assq major-mode gnus-info-nodes)))) (setq gnus-info-buffer (current-buffer)) (gnus-configure-windows 'info))) diff --git a/lisp/message.el b/lisp/message.el index 78c22a6..ab9229d 100644 --- a/lisp/message.el +++ b/lisp/message.el @@ -3,6 +3,7 @@ ;; Author: Lars Magne Ingebrigtsen ;; MORIOKA Tomohiko +;; Shuhei KOBAYASHI ;; Keiichi Suzuki ;; Keywords: mail, news, MIME @@ -187,11 +188,11 @@ shorten-followup-to existing-newsgroups buffer-file-name unchanged." (defcustom message-required-news-headers '(From Newsgroups Subject Date Message-ID (optional . Organization) Lines - (optional . X-Newsreader)) + (optional . User-Agent)) "*Headers to be generated or prompted for when posting an article. RFC977 and RFC1036 require From, Date, Newsgroups, Subject, Message-ID. Organization, Lines, In-Reply-To, Expires, and -X-Newsreader are optional. If don't you want message to insert some +User-Agent are optional. If don't you want message to insert some header, remove it from this list." :group 'message-news :group 'message-headers @@ -199,10 +200,10 @@ header, remove it from this list." (defcustom message-required-mail-headers '(From Subject Date (optional . In-Reply-To) Message-ID Lines - (optional . X-Mailer)) + (optional . User-Agent)) "*Headers to be generated or prompted for when mailing a message. RFC822 required that From, Date, To, Subject and Message-ID be -included. Organization, Lines and X-Mailer are optional." +included. Organization, Lines and User-Agent are optional." :group 'message-mail :group 'message-headers :type '(repeat sexp)) @@ -633,6 +634,10 @@ actually occur." :group 'message-sending :type 'sexp) +;;; XXX: This symbol is overloaded! See below. +(defvar message-user-agent nil + "String of the form of PRODUCT/VERSION. Used for User-Agent header field.") + ;; Ignore errors in case this is used in Emacs 19. ;; Don't use ignore-errors because this is copied into loaddefs.el. ;;;###autoload @@ -969,8 +974,7 @@ The cdr of ech entry is a function for applying the face to a region.") (Expires) (Message-ID) (References . message-fill-references) - (X-Mailer) - (X-Newsreader)) + (User-Agent)) "Alist used for formatting headers.") (eval-and-compile @@ -1387,8 +1391,7 @@ C-c C-r message-caesar-buffer-body (rot13 the message body)." (setq paragraph-separate paragraph-start) (make-local-variable 'message-reply-headers) (setq message-reply-headers nil) - (make-local-variable 'message-newsreader) - (make-local-variable 'message-mailer) + (make-local-variable 'message-user-agent) (make-local-variable 'message-post-method) (make-local-variable 'message-sent-message-via) (setq message-sent-message-via nil) @@ -3096,6 +3099,24 @@ give as trustworthy answer as possible." (or mail-host-address (message-make-fqdn))) +(defun message-make-user-agent () + "Return user-agent info." + (if message-user-agent + (save-excursion + (goto-char (point-min)) + (let ((case-fold-search t) + user-agent beg p end) + (if (re-search-forward "^User-Agent:[ \t]*" nil t) + (progn + (setq beg (match-beginning 0) + p (match-end 0) + end (std11-field-end) + user-agent (buffer-substring p end)) + (delete-region beg (1+ end)) + (concat message-user-agent " " user-agent) + ) + message-user-agent))))) + (defun message-generate-headers (headers) "Prepare article HEADERS. Headers already prepared in the buffer are not modified." @@ -3112,9 +3133,7 @@ Headers already prepared in the buffer are not modified." (To nil) (Distribution (message-make-distribution)) (Lines (message-make-lines)) - (X-Newsreader message-newsreader) - (X-Mailer (and (not (message-fetch-field "X-Newsreader")) - message-mailer)) + (User-Agent (message-make-user-agent)) (Expires (message-make-expires)) (case-fold-search t) header value elem) @@ -4310,10 +4329,10 @@ regexp varstr." (interactive) (let ((message-cite-function 'mime-edit-inserted-message-filter) (message-reply-buffer (message-get-original-reply-buffer)) - ) + (start (point))) (message-yank-original nil) (save-excursion - (narrow-to-region (goto-char (mark)) + (narrow-to-region (goto-char start) (if (search-forward "\n\n" nil t) (1- (point)) (point-max))) diff --git a/lisp/pop3-fma.el b/lisp/pop3-fma.el index e95c147..18638a1 100644 --- a/lisp/pop3-fma.el +++ b/lisp/pop3-fma.el @@ -3,7 +3,7 @@ ;; Yasuo Okabe ;; Author: Tatsuya Ichikawa ;; Yasuo OKABE -;; Version: 1.11 +;; Version: 1.12 ;; Keywords: mail , gnus , pop3 ;; ;; SPECIAL THANKS @@ -90,7 +90,7 @@ :group 'mail :group 'news) -(defconst pop3-fma-version-number "1.11") +(defconst pop3-fma-version-number "1.12") (defconst pop3-fma-codename ;; "Feel the wind" ; 0.10 ;; "My home town" ; 0.11 @@ -100,8 +100,8 @@ ;; "Still 19" ; 0.21 ;; "J boy" ; 1.00 ;; "Blood line" ; 1.10 - "Star ring" ; 0.xx -;; "Goodbye Game" ; 0.xx +;; "Star ring" ; 1.11 + "Goodbye Game" ; 1.12 ) (defconst pop3-fma-version (format "Multiple POP3 account utiliy for Gnus v%s - \"%s\"" pop3-fma-version-number @@ -149,9 +149,9 @@ Please do not set this valiable non-nil if you do not use Meadow.") (defvar hdr nil) (defvar passwd nil) (defvar str nil) -(defvar pop3-fma-movemail-options pop3-fma-movemail-arguments) (defvar spool nil) (defvar movemail-output-buffer " *movemail-out*") +(defvar pop3-fma-commandline-arguments nil) (defun pop3-fma-init-message-hook () (add-hook 'message-send-hook 'pop3-fma-message-add-header)) @@ -188,12 +188,12 @@ Please do not set this valiable non-nil if you do not use Meadow.") (eq pop3-fma-movemail-type 'exe)) (progn (setenv "MAILHOST" pop3-mailhost) - (if (and (not (memq pop3-password pop3-fma-movemail-arguments)) - (not (memq (concat "po:" pop3-maildrop) pop3-fma-movemail-arguments))) + (if (and (not (memq pop3-password pop3-fma-commandline-arguments)) + (not (memq (concat "po:" pop3-maildrop) pop3-fma-commandline-arguments))) (progn - (setq pop3-fma-movemail-arguments nil) - (setq pop3-fma-movemail-arguments - (append pop3-fma-movemail-options + (setq pop3-fma-commandline-arguments + (append + pop3-fma-movemail-arguments (list (concat "po:" pop3-maildrop) crashbox @@ -206,7 +206,7 @@ Please do not set this valiable non-nil if you do not use Meadow.") exec-directory pop3-fma-movemail-program) nil movemail-output-buffer nil - pop3-fma-movemail-arguments) + pop3-fma-commandline-arguments) (let ((string (buffer-string))) (if (> (length string) 0) (progn @@ -343,4 +343,3 @@ Argument PROMPT ." (provide 'pop3-fma) ;; ;; pop3-fma.el ends here. -