◇ Mew 1.94 -> Mew 2 移行メモ Author: Tatsuya Kinoshita Created: Oct 22, 2001 Revised: Mar 25, 2003 Unlimited permission is granted to use, copy, distribute, and/or modify this file. There is NO WARRANTY. --- Contents --- * Mew 2の特徴 * 移行時の注意点 * 設定の移行手順 * .mew.el sample * Q & A --- Mew 2の特徴 --- * 高速化。(メール送受信、Summaryの更新、ソート等) * スレッド表示。(Summaryモードでtを2回押すと切り替わる) * MIMEエディタ。(マルチパート・メッセージを再編集できる) * Configの強化。(返信するメールのヘッダーに応じたcaseの推測、 送信時点のサーバー環境を使う+queueフォルダでのメール送信、 Emacs Lispによる柔軟な設定) * 不正な書式のメールへの対応。(文字コード推測機能の強化、言語 環境・文字コードの指定、警告表示) * POP biff。(定期的にPOPサーバーへ自動アクセスすることにより、 新着メールを確認できる) * 外部コマンドとの連携。(w3m, mg, wvHtml等) * Multipart/Alternative、Multipart/Relatedへの対応。 * +mdropフォルダ。(POPサーバーに残っているメールを一覧表示して、 それぞれのメールについて受信・削除できる。Mew 2.1以降で対応) * メールのコピー(リンク)。(Summaryモードで`c'を押すと、現在の フォルダも含む`o'として機能する。Mew 2.1以降で対応) --- 移行時の注意点 --- * Mew 2では、IMは使われなくなった。Mew 1.94 + IMにはあった 機能がMew 2では失なわれている場合がある。 * Mew 2では、Mew 1.94での設定の多く(主にIMに関する部分)が そのままでは使えない。 * Mew 2では、古いEmacsen (Emacs 19, Mule 2.3, XEmacs 20.4等) はサポートされていない。Emacs 20.7以上(Emacs 21を含む)または XEmacs 21.1.14以上が推奨されている。 --- 設定の移行手順 --- * ~/.im/Addrbookを~/Mail/Addrbookへ移動する。 IMを使い続けるなら、~/.im/Configに 「AddrBookFile=${HOME}/Mail/Addrbook」と設定する。 * ~/.im/Configに設定していた内容を、~/.mew.elへ移行する。 自動的には移行できないので、新たに設定しなおす必要がある。 (「.mew.el sample」を参照) * POPを使わずにローカルのメールボックスから受信したい場合、 ~/.mew.elで次のように設定する。 (setq mew-mailbox-type 'mbox) (setq mew-mbox-command "imget") (setq mew-mbox-command-arg "-s local -d") なお、Mew 2.2以降ではincmコマンドが付属しており、次のように 設定することで利用できる。 (setq mew-mailbox-type 'mbox) (setq mew-mbox-command "incm") ;; incorporate mails from Maildir or mbox (setq mew-mbox-command-arg "-a") ;; see also the incm manual * Mew 1.94でフォルダ一覧をキャッシュするために使われていたファ イル~/Mail/.foldersは、不要になったので削除しても(しなくても) かまわない。Mew 2では~/Mail/.mew-folder-list等が使われる。 なお、削除する際には、別のアプリケーションで使われている ~/.foldersを誤って削除しないよう注意する。 --- .mew.el sample --- ;;; .mew.el --- a sample of the init file for Mew -*-mode: emacs-lisp;-*- ;;; Code: ;; ;; Config ;; (setq mew-config-alist '( ("default" ;; case ;;; ("mail-domain" . "EXAMPLE.net") ;; From: name ;;; ("user" . "foo") ;; (user-login-name) ;;; ("name" . "Foo Bar") ;; (user-full-name) ;;; ("smtp-server" . "bar.EXAMPLE.net") ;; "localhost" ;;; ("mailbox-type" . pop) ;; 'pop, 'mbox, or 'imap ;;; ("pop-server" . "bar.EXAMPLE.net") ;; "localhost" ;;; ("pop-user" . "foo") ;; (user-login-name) ;;; ("pop-auth" . apop) ;; 'apop, 'pass, or t (SASL) ;;; ("pop-size" . 55296) ;; limit size of a message. 0 means unlimited. ;;; ("pop-delete" . t) ;; t, nil, or N (keep N days) ;; ;;; ("fcc" . "+backup") ;;; ("dcc" . "bar@EXAMPLE.net") ;; nil ;;; ("cc" . "bar@EXAMPLE.net") ;; nil ;;; ("reply-to" . nil) ;;; ("organization" . "FooBar") ;; nil ;;; ("header-alist" . (("X-Baz1:" . "baz1") ("X-Baz2:" . "baz2"))) ;; nil ;;; ("queue-folder" . "+queue") ;;; ("inbox-folder" . "+inbox") ;;; ("signature-file" . "~/.signature") ;;; ("pop-ssh-server" . "foo@bar.EXAMPLE.org") ;; nil ;;; ("pop-port" . "110") ;; "pop3" ;;; ("pop-body-lines" . 0) ;; 40 ;;; ("smtp-ssh-server" . "foo@bar.EXAMPLE.org") ;; nil ;;; ("smtp-port" . "25") ;; "smtp" ;;; ("smtp-user" . nil) ;;; ("smtp-mail-from" . "bar@EXAMPLE.net") ;; nil (From:) ;;; ("smtp-msgid-user" . "foo") ;; nil (mew-user) ;;; ("smtp-msgid-domain" . "bar.EXAMPLE.net") ;; nil (mew-mail-domain) ;;; ("smtp-helo-domain" . "localhost") ;;; ("content-type" . "Application/Octet-Stream") ;; "Text/Plain" ) ;;; ("example-org" ;; case ;;; ("mail-domain" . "EXAMPLE.org") ; From: name ;;; ("user" . "foo") ;;; ("name" . "Foo Bar") ;;; ("smtp-server" . "bar.EXAMPLE.org") ;;; ("mailbox-type" . mbox) ;; 'pop, 'mbox, or 'imap ;;; ("mbox-command" . "incm") ;;; ("mbox-command-arg" . "-a") ;;; ;;("inbox-folder" . "+inbox2") ;;; ;;("signature-file" . "~/.signature.org") ;;; ("smtp-ssh-server" . nil) ;;; ) )) ;; ;; Case guess ;; ;; Mew 1.94: mew-config-* ;;;(setq mew-config-insert-when-prepared t) ;;;(setq mew-config-insert-when-composed nil) ;;;(setq mew-config-guess-alist ;;; '( ;;; ("\\(From\\|To\\|Cc\\):" ;;; ("\\" . "example-org") ;;; ) ;;; ("\\(To\\|Cc\\):" ;;; ("\\" . "default") ;;; ) ;;; )) ;; Mew 2: mew-case-* ;;;(setq mew-case-guess-alist mew-config-guess-alist) ;; nil ;;;(setq mew-case-guess-when-prepared mew-config-insert-when-prepared) ;; t ;;;(setq mew-case-guess-when-composed mew-config-insert-when-composed) ;; nil ;;;(setq mew-case-guess-when-replied-alist mew-config-guess-alist) ;; nil ;;;(setq mew-case-guess-when-replied t) ;;;(setq mew-case-guess-addition nil) ;; ;; Refile ;; ;;;(setq mew-refile-guess-alist ;;; '( ;;; ("List-Unsubscribe:" ;;; (", \t\n]+\\)-ctl@debian\\.or\\.jp\\>" . "+G/debian-jp-\\1") ;;; (", \t\n]+\\)-ctl@" . "+G/\\1") ;;; (", \t\n]+\\)-request@" . "+G/\\1") ;;; (", \t\n]+\\)-unsubscribe@" . "+G/\\1") ;;; ("=unsubscribe%20\\([^<>, \t\n]+\\)>" . "+G/\\1") ;;; ) ;;; ("Mailing-List:" ;;; ("^contact \\([^<>, \t\n]+\\)-help@" . "+G/\\1") ;;; ) ;;; ("X-ML-Info:" ;;; ("to the address \\([^<>, \t\n]+\\)-ctl@" . "+G/\\1") ;;; (", \t\n]+\\)-admin@" . "+G/\\1") ;;; ) ;;; ("X-ML-Name:" ;;; ("^\\([^<>, \t\n]+\\)" . "+G/\\1") ;;; ) ;;; ("X-Sequence:" ;;; ("^\\([^<>, \t\n]+\\) [0-9]+$" . "+G/\\1") ;;; ) ;;; ("Newsgroups:" ;;; ("^fj\\.\\([^<>, \t\n]+\\)" . "+G/fj.\\1") ;;; ("^gnu\\.\\([^<>, \t\n]+\\)" . "+G/gnu.\\1") ;;; ;;("^\\([^<>, \t\n]+\\)" . "+G/\\1") ;;; ) ;;; )) ;;;(setq mew-refile-guess-control ;;; '(mew-refile-guess-by-alist ;;; ;;mew-refile-ctrl-throw ;;; ;;mew-refile-guess-by-newsgroups ;;; ;;mew-refile-guess-by-folder ;;; mew-refile-ctrl-throw ;;; mew-refile-ctrl-auto-boundary ;;; mew-refile-guess-by-thread ;;; ;;mew-refile-ctrl-throw ;;; ;;mew-refile-guess-by-from-folder ;;; ;;mew-refile-ctrl-throw ;;; ;;mew-refile-guess-by-from ;;; ;;mew-refile-ctrl-throw ;;; ;;mew-refile-guess-by-default ;;; )) ;;;(setq mew-refile-ctrl-multi nil) ;; t ;; ;; Reply ;; ;;;(setq mew-noreplyto-to-list '("Mail-Followup-To:" "Mail-Reply-To:" "From:")) ;;;(setq mew-noreplyto-cc-list '("Cc:" "Original-Cc:" "X-Cc:" ;;; "To:" "Original-To:" "X-To:" "Apparently-To:")) ;;;(setq mew-replyto-to-list '("Mail-Followup-To:" "Reply-To:" ;;; "Mail-Reply-To:" "From:")) ;;;(setq mew-replyto-cc-list '("Cc:" "Original-Cc:" "X-Cc:" ;;; "To:" "Original-To:" "X-To:" "Apparently-To:")) ;;;(setq mew-fromme-to-list '("Mail-Followup-To:" "Mail-Reply-To:" "Reply-To:" ;;; "To:" "Original-To:" "X-To:" "Apparently-To:")) ;;;(setq mew-fromme-cc-list '("Cc:" "Original-Cc:" "X-Cc:")) ;; ;; In Draft mode, you can complete these fields: ;;;(add-to-list 'mew-fields "In-Reply-To:") ;;;(add-to-list 'mew-fields "References:") ;;;(add-to-list 'mew-fields "Mail-Reply-To:") ;;;(add-to-list 'mew-fields "Mail-Followup-To:") ;; ;; Cite label ;; ;;;(setq mew-cite-fields '("Date:" "Subject:" "From:")) ;;;(setq mew-cite-format "On %s\nin %s\n%s wrote:\n\n") ;;;(setq mew-cite-prefix-function nil) ;; ;; Scan-form ;; ;;;(setq mew-scan-max-field-length 10) ;; 5 ;;;;;(setq mew-scan-wait-for 50000) ;; 10000 (micro seconds) ;;;(setq mew-scan-form-mark-delete nil) ;;;(setq mew-scan-form-mark-review nil) ;;;(setq mew-scan-form-size-unit '("" "k")) ;; '("" "k" "M" "G" "T") ;;;(setq mew-scan-form-size-0k t) ;; nil ;;;(setq mew-scan-form-size-huge nil) ;; t ;;;(setq mew-scan-form-list-string-type 'regex) ;;;(setq mew-scan-form-list-list-type 'regex) ;; 'recursive ;;;(setq mew-scan-form-list ;;; '( ;;; (("[+/]inbox$" "[+/]backup$") ;; see mew-scan-form-list-list-type ;;; (-5 type (5 date) " " (5 time) " " ;;; (17 from) " " t (-4 size) " " (0 subj))) ;;; (("^\\+queue" "^\\+postq") ;;; (-4 type (5 date) " " ;;; (17 from) " " t (-4 size) " " (0 subj))) ;;; ("^\\+draft$" ;; see mew-scan-form-list-string-type ;;; (-4 type (5 date) " " ;;; (17 from) " " t " " (0 subj))) ;;; (t ;;; (-5 type (5 date) " " ;;; (17 my-just-from) " " t (-4 size) " " (0 subj))) ;;; ;;(t ;;; ;; (type (5 date) " " (14 from) " " t (0 subj))) ;;; )) ;;;(defun mew-scan-form-my-just-from () ;;; (mew-replace-white-space (MEW-FROM))) ;; ;; Grep ;; ;;;(setq mew-prog-grep "grep") ;; `C-u ?' ;;;(setq mew-prog-grep-opts '("-i" "-l" "-e")) ;; '("-l" "-e") ;;;(setq mew-prog-vgrep "grep") ;; Virtual mode ;;;(setq mew-prog-vgrep-opts '("-i" "-l" "-e")) ;; '("-l" "-e") ;; ;;;(define-key mew-summary-mode-map "\C-c?" 'my-mew-summary-search-mark-ja) ;;;(defun my-mew-summary-search-mark-ja () ;;; ;; mg: multi-line grep (http://www.srekcah.org/~utashiro/perl/scripts/mg/) ;;; (interactive) ;;; (let ((mew-prog-grep "mg") ;;; (mew-prog-grep-opts '("-z" "nkf -e -m" "-j" "euc" "-l" "-i" "-e"))) ;;; (mew-summary-search-mark 'arg))) ;;;(defun my-mew-summary-search-mark-ja () ;;; ;; mewpick: http://reed1200.tripod.co.jp/emacs/mew.html#summary_grep ;;; (interactive) ;;; (let ((mew-prog-grep "mewpick") ;;; (mew-prog-grep-opts nil)) ;;; (mew-summary-search-mark 'arg))) ;; ;; Multipart/Alternative ;; ;;;(setq mew-use-alternative t) ;;;(setq mew-mime-multipart-alternative-list ;;; '("Text/Html" "Text/Plain" "*.")) ;; `(,mew-ct-txt ".*") ;; ;;;(condition-case nil ;;; (require 'mew-w3m) ;;; (file-error nil)) ;;;(setq mew-w3m-auto-insert-image nil) ;;;;;(setq mew-use-w3m-minor-mode t) ;; nil ;;;;;(add-hook 'mew-message-hook 'mew-w3m-minor-mode-setter) ;; ;; Password ;; ;; WARNING: Password is stored in Emacs with RAW format. ;; ;;;(setq mew-use-cached-passwd t) ;; nil ;;;(setq mew-passwd-timer-unit 10) ;; 10 (minutes) ;;;(setq mew-passwd-lifetime 30) ;; 2 ;; ;; Biff ;; ;;;(setq mew-use-biff t) ;; nil ;;;(setq mew-use-biff-bell t) ;; nil ;;;(setq mew-pop-biff-interval 10) ;; 5 (minutes) ;; ;; Color ;; ;; Mew 1.94: mew-highlight-header-color-subject, ... ;; Mew 2: See mew-theme.el ;; ;; If you want to customize coloring, copy mew-theme.el from Mew's ;; sources to ~/.mew-theme.el, and edit it. ;;;(setq mew-theme-file "~/.mew-theme") ;; "mew-theme" ;; ;;;(setq mew-use-highlight-mark nil) ;;;(setq mew-use-highlight-header t) ;;;(setq mew-use-highlight-body t) ;;;(setq mew-highlight-body-max-size 10000) ;;;(setq mew-use-highlight-url nil) ;;;(setq mew-use-cursor-mark nil) ;;;(setq mew-use-highlight-cursor-line t) ;;;(setq mew-use-highlight-mouse-line nil) ;;;(setq mew-use-highlight-x-face nil) ;; ;; PGP ;; ;; GnuPG ;;;(setq mew-prog-gpg "gpg") ;;;(setq mew-prog-pgp mew-prog-gpg) ;; PGP version 6 ;;;(setq mew-prog-pgp6 "pgp6") ;; "pgp" is used by default. ;;;(setq mew-prog-pgp mew-prog-pgp6) ;; PGP version 5 ;;;(setq mew-prog-pgp5 "pgp5") ;; "pgp" is used by default. ;;;(setq mew-prog-pgp mew-prog-pgp5) ;; PGP version 2 ;;;(setq mew-prog-pgp2 "pgp2") ;; "pgp" is used by default. ;;;(setq mew-prog-pgp mew-prog-pgp2) ;; ;; Image ;; ;; Mew 1.94: mew-prog-image, mew-prog-jpeg, ... ;; ;;;(setq mew-prog-image '(mew-mime-image/* mew-mime-image/*-ext)) ;;;(setq mew-prog-image/*-ext "display") ;;;(setq mew-prog-image/*-ext-arg '("-geometry" "+0+0")) ;; ;; Misc ;; ;;;(setq mew-auto-get nil) ;; t ;;;(setq mew-auto-flush-queue nil) ;; t ;;;(setq mew-demo nil) ;; t ;;;(setq mew-demo-picture nil) ;;;(setq mew-break-pages nil) ;; t ;;;(setq mew-summary-show-direction 'down) ;; 'next ;;;(setq mew-summary-mark-direction 'down) ;; 'next ;;;(setq mew-regex-folder-candidate "^[^.]") ;; "^[^.0-9]\\|^[0-9].*[^0-9]" ;;;(setq mew-use-8bit t) ;; nil ;;;(setq mew-charset-m17n "utf-8") ;;;(setq mew-ask-mark-process t) ;; nil ;;;(setq mew-ask-fcc t) ;; nil ;;;(setq mew-decode-broken t) ;;;(setq mew-case-synchronize t) ;;;(setq mew-lisp-max-length 10000) ;; 2000 ;;;;;(add-hook 'mew-draft-mode-hook 'delete-other-windows) ;; `Draft' only ;;;(add-hook 'mew-draft-mode-hook ;;; (function ;;; (lambda () ;;; ;; delete `Message' window ;;; (if (get-buffer (mew-buffer-message)) ;;; (delete-windows-on (mew-buffer-message))) ;;; ;; resize `Draft' window ;;; (let ((siz (- (/ (* (frame-height) 2) 3) (window-height)))) ;;; (if (> siz 0) ;;; (enlarge-window siz)))))) ;;;;;(setq mew-debug 'net) ;; 'decode, 'encode, 'net, 'pgp, 'thread, t, or nil ;;; .mew.el ends here --- Q & A --- Q: 複数のアカウントを使い分けたい。(IMでのConfig/case) A: mew-config-alistに設定できる。 Summaryモードでの`C'やDraftモードでの`C-c C-o'によって、 メールアドレス、POP/SMTPサーバー等を動的に変更できる。 (「.mew.el sample」を参照) Q: Draftモードでのcaseを、条件によって自動的に設定したい。 A: mew-case-guess-alist等に設定できる。 なおMew 1.94と比べて、変数名が変更になっているほか、 返信相手のメールを参照できる機能が追加されている (mew-case-guess-when-replied-alist)。 詳しくはマニュアルのCustomize - configを参照。 Q: APOPでなくUSER/PASS (plain password)で認証したい。 A: (setq mew-pop-auth 'pass) Q: mew-config-alistで("pop-auth" . 'pass)としてもAPOPになってしまう。 A: 「'pass」ではなく「pass」とする。 (全体を「'」でquoteしている中で、余分に「'」を付けないように) Q: 大きなメールだと、Tマークが付いて途中までしか受信できない。 A: Tマークの付いたメールの位置でIを押すと、全文を受信できる。 Q: Tマークの付いたメールを、全文受信せずにPOPサーバーから削除したい。 A: +mdropフォルダを使えば、POPサーバー上のメールを選んで削除できる。 (Mew 2.1以降で対応。Mew 3では$inboxフォルダを使う。Summaryから `g $ TAB RET'で移動できる) Q: +mdropフォルダの使い方がわからない。 A: `s': サーバーに残っているメールを一覧表示。(ヘッダーのみ取得) `d': サーバーから削除。(Dマーク) `o': サーバーから移動(受信と削除)。(oマーク) `c': サーバーからコピー(受信のみ)。(oマーク) `x': マークの処理を実行。 (Mew 3.0.67以降では、リモートフォルダ(POP($)/IMAP(%)/NNTP(-))から ローカルに取り込むには、oマークではなく、`lc'、または*マークを 付けてから`mlc'でキャッシュをコピーする。Tマークの付いたメールの 全文をコピーするには、あらかじめIを押してキャッシュに取り込んで おく必要がある) Q: 大きなメールでも、切らずに(Tマーク付きにせずに)全文を受信したい。 A: mew-pop-sizeで調整できる。デフォルトでは54KB未満なら全文を受信する。 (setq mew-pop-size 1000000) ;; 1,000,000バイト未満なら全文受信 (setq mew-pop-size 0) ;; 無制限 Q: 受信したメールを数日間のみPOPサーバーに残したい。(IMでのKeep=n) A: (setq mew-pop-delete 3) ;; 最近3日以内のメールを残す。4日以上なら削除。 (Mew 2.1以降で対応) Q: mew-pop-deleteをt以外からtに変更したのに、サーバーに残っている メールが削除されない。 A: +mdropフォルダを使って削除する。 Q: 「Unknown service "POP3", nil」というエラーが出て、受信できない。 A: (setq mew-pop-port "110") または、/etc/servicesにpop3の設定を加える。 Q: メールをqueueに溜めてから、まとめて送信したい。(IMでのJustQueuing=yes) A: Draftモードで`C-c C-m'とすれば、メールは+queueフォルダに入る。 Summaryモードで`C-c C-c'とすれば、+queueフォルダに溜まっている メールを送信できる。 このときのSMTPサーバー(その他付随情報)は、Draftモードで指定した caseではなく、送信時点でのcase(mew-case-output)によって決まる。 `C-u C-c C-c'とすれば、mew-case-outputとは別のcaseを指定できる。 また、デフォルトではメール受信時にも送信される。 Q: メール受信時には+queueフォルダのメールを送信してほしくない。 A: (setq mew-auto-flush-queue nil) Q: Mew以外のプログラムやMewの旧バージョンを使って作ったフォルダが 認識されない。 A: Summaryで`C-u Z'を押せば、認識されるようになる。 (Mew 3では、`C-u Z'のほかに、ローカルフォルダのみ更新する`1Z'、 NNTPリモートフォルダ用の`2Z'、IMAPリモートフォルダ用の`3Z'がある) Q: `C-u Z'で数字のみのフォルダ(たとえば"+200104")が認識されず、 `g'などで補完が効かない。 A: (setq mew-regex-folder-candidate "^[^.]") デフォルトでは、ディレクトリ一覧を取る処理の高速化のため、 数字のみならファイルとみなしている。 Q: 色付けの設定が効かなくなった。 A: Mew 1.94での変数mew-highlight-header-color-subject等は使われなくなった。 mew-theme.elを参考にして、設定しなおす必要がある。 また、mew-field-specを独自に変更している場合にも色が付かなくなること がある。この場合、Mew 2でのmew-field-specに合うよう修正する。 Q: メールを日本語で検索したい。 A: 日本語を検索できるプログラム(mg, mewpick等)をmew-prog-grep, mew-prog-grep-optsに設定する。Summaryモードで`C-u ?'とすれば 検索できる。 mg: http://www.srekcah.org/~utashiro/perl/scripts/mg/ mewpick: http://reed1200.tripod.co.jp/emacs/mew.html#summary_grep Q: mew-organizationの設定が有効にならない。 A: mew-header-alistに`Organization:'の設定が残っているなら、それを 削除する。(mew-header-alistの内容で上書きされる) Q: Emacs 20からEmacs 21にアップグレードすると、caseの切り替えや Sortができなくなった。(`No match: Input/Output case value (default):', `No match: date', `Text is read-only'といったメッセージが表示される) A: Emacs 20とEmacs 21とでバイトコンパイルしたファイルの互換性が無いため。 Emacs 21でバイトコンパイルしなおすとよい。 Q: mew-make-message-hookに登録していたispell-message関数が、うまく 動かなくなった。 A: Mew 3.2.50で修正済。Mew 2では、mew-make-message-hookの代わりに mew-send-hookを使うことで対処できる。 Q: 原因不明のエラーが発生する。アップグレードするとうまく動かなくなった。 A: Mewのバージョンに依存した変数・関数等を使って設定をしていると、 アップグレードに伴ない誤動作を起こすようになる。また、ほかの ソフトウェアとの兼ね合いも考えられる。原因を探るには、 ~/.emacsや~/.mew.elを最低限の設定にして試してみるとよい。 バグレポートの書き方(http://www.Mew.org/bugreport/)も参照。 Q: ~/.emacsと~/.mew.elの違いは? A: ~/.mew.elはMew起動時に(評価後に)読み込まれるので、Mew内部の関数 等が利用できる。通常、Mewの設定には~/.emacsではなく~/.mew.elを 使うとよい。ただし、Mewを起動するための設定が必要な場合には、 ~/.mew.elではなく~/.emacs等を使う。 Q: (setq mew-window-use-full t)が有効にならない。 A: Mew 2ではmew-use-full-windowに変更された。 なお、Mew 2.1以降では「返信時にSummaryとDraftとの2分割画面にする」 という目的には使えない。 (tなら、Mewの画面をフレームいっぱいに使う(フレーム内にMew以外の ウィンドウがあれば消す)、というのが本来の仕様) Q: 返信時にSummaryとDraftとの2分割画面にしたい。 A: (add-hook 'mew-draft-mode-hook (function (lambda () ;; Delete `Message' window (if (get-buffer (mew-buffer-message)) (delete-windows-on (mew-buffer-message))) ;; Resize `Draft' window (let ((siz (- (/ (* (frame-height) 2) 3) (window-height)))) (if (> siz 0) (enlarge-window siz)))))) Q: 返信時のDraftを、フレームいっぱいに広くしたい。 A: (add-hook 'mew-draft-mode-hook 'delete-other-windows) Q: 複数のサーバから一括で受信したい。(IMでのAssoc=foo;bar) A: 標準では対応していない。 SAITO Takuyaさんにより公開されているmew-summary-retrieve-multiを 使えば可能。(http://reed1200.tripod.co.jp/emacs/mew.html#summary_inc) Q: imgetなど外部コマンドを使ってメールを受信(`i')したい。 A: Local mailboxのためのAPI仕様に沿ったコマンドが使える。 ただし、POPなどパスワード入力が必要になる局面には対応していない。 (00api, contrib/00readmeを参照) ;; imgetでlocal mailboxから受信 (imget -s local -d +inbox) (setq mew-mailbox-type 'mbox) (setq mew-mbox-command "imget") (setq mew-mbox-command-arg "-s local -d") Q: 未読管理できない。 A: Mew自体では対応していないが、別途Prom-Mewを使うことで可能。 Mew 2.0に対応したProm-Mew 2.00がリリースされている。 (http://www001.upp.so-net.ne.jp/nytheta/software/prom.html) なお、Mew 2.1以降で動かすためのパッチがTATEISHI Katsuyukiさん により公開されている。 (http://home.jp.FreeBSD.org/cgi-bin/showmail/ports-jp/12346) DebianパッケージでもMew 2.1以降に対応している。 (http://packages.debian.org/prom-mew) Q: Summaryモードの表示形式を変更したい。(IMでのForm=%...) A: mew-scan-formまたはmew-scan-form-listで設定できる。 mew-scan-form-listではフォルダごとに別の書式を指定できる。 (「.mew.el sample」を参照) Q: Summaryモードで、本文の一部が表示できない。(IMでのForm=%b) A: 標準では対応していない。(Mew 4で対応予定) SAITO Takuyaさんにより公開されているmew-my-scan-forms.elを使えば可能。 (http://reed1200.tripod.co.jp/emacs/mew.html#summary_scan_form) Q: Mewを終了する際に、確認なしにマークが処理されるようになった。 確認メッセージを表示してほしい。 A: (setq mew-ask-mark-process t) ;; default value is nil Q: 希望するユーザーオプションがマニュアルに見あたらない。 A: ユーザーオプションがまとめられているソースファイルmew-vars.el を参照するとよい。 customizeによる設定も可能(M-x customize-group RET mew RET)。 (customizeによる設定を~/.emacsに保存したとしても、~/.mew.elの 方の設定が優先されることに注意) Q: IMAP4で受信できない。 A: 対応していない。(Mew 3で対応。%inboxフォルダ等が使える) Q: NetNewsが読み書きできない。 A: 対応していない。 (Mew 3で対応。-fj.mail.reader.mewフォルダ等が使える。ただしMew 3.2 の時点では、未読処理や、不要記事のキャッシュを削除したり隠したりする 機能は実装されていない) Q: UTF-8の日本語が読み書きできない。 Mule-UCSが必要。(ftp://ftp.m17n.org/pub/mule/Mule-UCS/) なお、GNU Emacs 21.3の場合、Mule-UCS 0.84はうまく動作しないので、 Mule-UCS 0.85 release candidate (2003-01-15)以降が必要。 Q: S/MIMEでの一時ファイルのフルパス名を相手に知られてしまう。 A: Mew 2.3で修正済み。同名のファイルが次回の処理でも使われており、他の ユーザーからの攻撃が心配されたが、攻撃は成功しないものと思われる。 Q: 送信するメールの内容が、その直前に送った内容に差し替わってしまう ことがある。 A: Mew 3.0.69で修正済み。[mew-dist 22434], Dec 6, 2002に Mew 2.2/2.3用のパッチがある。 Debian woodyのmewパッケージだと、version 1:2.2-3.1で修正されている。 Q: Mewの情報はどこにある? バグレポート等はどこへ送ればよい? A: Mew Official Homepage (http://www.Mew.org/) Mew FAQ (http://www.Mew.org/FAQ/) メーリングリストについて (http://www.Mew.org/ML/) バグレポートの書き方 (http://www.Mew.org/bugreport/) --- ends here ---