[ << ] [ < ] [ Up ] [ > ] [ >> ]         [Top] [Contents] [Index] [ ? ]

8 カスタマイズ

ここでは、Mew のデフォルトの動作を変更し、自分好みの Mew にする方法を説 明します。主に "~/.mew.el" で設定して下さい。


[ << ] [ < ] [ Up ] [ > ] [ >> ]         [Top] [Contents] [Index] [ ? ]

8.1 Summary mode

Summary モードの書式は、‘mew-summary-form’ で指定できます。以下に 初期値を示します。

(setq mew-summary-form '(type (5 date) " " (14 from) " " t (30 subj) "|" (0 body)))

このように、‘mew-summary-form’ は、リスト、シンボル、文字列のリストで す。

  1. 文字列はそのまま出力される
  2. リストは、整数とシンボルから構成される。シンボルは、呼び出す関数を意味す る。関数名は、"mew-summary-form-" とシンボル名を連結することで作られる。 (例: ’date というシンボルは、‘mew-summary-form-date’ という関数名 になる) あらかじめ定義されているシンボルには、’type、’time、’date、’year、 ’size、’from、’subj、’body がある。詳細は、 ‘mew-summary-form-<symbol>’ という名を持つ関数の説明を参照のこと。 整数は、関数が返す文字列が埋めるフィールドの幅を指定する。正の数は、左詰 めを意味する。負の数は、右詰めを意味する。もし、負の数を指定する場合、対 応する関数は ASCII 文字列を返す必要がある。0 は、行の残りを意味し、左詰 めとなる。
  3. t’ 以外のシンボルは、(1 シンボル) に等しい。
  4. mew-summary-form’ は、利用される際に先頭に (mark) が付け加えられる。
  5. t’ は、スレッドの際に段付けする位置を意味する。

例を以下に示します。

(setq mew-summary-form
      '(type (5 date) " " (-4 size) " " (14 from) " " t (30 subj) "|" (0 body)))

mew-summary-form-from-me-prefix’ は、自分から送信されたメッセージの宛 先の先頭に加えられる文字列です。初期値は "To:" です。

mew-summary-form-extract-rule’ は、From: フィールドからどの部分を切り 出すか指定するためのリストです。要素は、’name、’comment、’address、 ’nickname、あるいは正規表現である必要があります。初期値は ’(nickname) で す。

次の例を考えて下さい。

A: Kazu Yamamoto <kazu@example.org>
B: kazu@example.org (Kazu Yamamoto)
C: Kazuhiko Yamamoto (Kazu) <kazu@example.org>

それぞの要素は、以下のような意味を持ちます。

  1. ’name:: 名前の部分
    A. Kazu Yamamoto
    B. (No match)
    C. Kazuhiko Yamamoto (Kazu)
    
  2. ’comment:: コメントの部分
    A: (No match)
    B: Kazu Yamamoto
    C: (Kazu)
    
  3. ’address:: アドレスの部分
    A: kazu@example.org
    B: kazu@example.org
    C: kazu@example.org
    
  4. ’nickname:: ‘mew-addrbook-for-summary’ の値に応じたアドレス帳の個人 情報のある要素。‘mew-addrbook-for-summary’ の初期値は ‘'nickname’ なので、通常はニックネームに変換される。何が指定できる かは、See section Draft mode を参照のこと。
  5. (regex):: 最初に合致した文字列

ある要素が合致しない場合、次の要素が評価されます。どの要素も From: フィー ルドに合致しない場合か、この値が ‘nil’ の場合、From: フィールド全体 が利用されます。

mew-summary-form-mark-delete’ が ‘t’ の場合、重複しているメッセー ジに自動的に ‘D’ マークが付きます。初期値は ‘nil’ です。

mew-summary-form-mark-spam’ が ‘t’ の場合、本文の一部に対す る MD5 チェックサムが一致しているメッセージに自動的に ‘D’ マークが 付きます。初期値は ‘nil’ です。

mew-summary-form-mark-review’ が ‘t’ の場合、自分宛てのメッセー ジに自動的に ‘*’ マークが付きます。初期値は ‘nil’ です。

いつも Emacs のフレーム全体で Mew を使いたい人は、以下の設定をして下さい。

(setq mew-use-full-window t)

Summary モードの ‘SPC’ は、‘mew-summary-show-direction’ によっ て、次のメッセージの表示の仕方が変わります。また同様に、強いマークを付け た後カーソルが動く方向は ‘mew-summary-mark-direction’ により指定で きます。以下の値を設定できます。

up

上のメッセージを表示する。

down

下のメッセージを表示する。

next

読み進めている方向の次のメッセージを表示する。

stop

次は表示しない。

両方とも初期値は ‘next’ です。いつもメッセージを下から読む人は、以 下のようにすればよいでしょう。

(setq mew-summary-show-direction 'up)

[ << ] [ < ] [ Up ] [ > ] [ >> ]         [Top] [Contents] [Index] [ ? ]

8.2 Message mode

Emacs がサポートしてないデータ型のファイルは、Message バッファに直接表 示できません。そのデータをテキストに整形する外部コマンドをインストール すれば、Message バッファに表示可能になります。

"w3m" と "emacs-w3m" をインストールすると、Text/Html を Message バッ ファに表示できるようになります。(以下で説明する "wvHtml"、"xlhtml"、 "ppthtml" は、単なる "w3m" ではなく、国際化された "w3m-m17n" が必要で す。) 両者をインストールしたら、"~/.mew.el" に以下の設定を加えて下さい。

(condition-case nil
    (require 'mew-w3m)
  (file-error nil))

これで、あたかも Text/Plain であるかのように、Text/Html を Message バッ ファに表示できるようになります。この際も、以下で説明する ‘C-cC-e’ の操作は有効です。

"wvHtml"、"xlhtml"、"ppthtml" というコマンドをインストールすれば、それ ぞれ WORD、Excel、PowerPoint ファイルのテキスト部分を、Message バッファ に表示可能です。これらのコマンドは、HTML を利用するので、上記の Text/Html の設定を完了させて下さい。これで、たとえば WORD ファイルをあ たかもテキストのように、Message バッファに表示可能になります。

外部のプログラムの整形結果を Message バッファに表示する代わりに、外部の プログラム自身にそのデータを表示させることもできます。これには ‘C-cC-e’ を使います。

Message バッファに画像を表示することもできます。また ‘C-cC-e’ を使 い、外部のプログラムに表示させることも可能です。

HTML は ‘C-cC-e’ を使って外部のブラウザに表示できます。Windows や Mac ではデフォルトのブラウザが利用されます。Unix では、以下のように "mozilla" が初期値となっています。

(defvar mew-prog-text/html-ext '("mozilla" ("-remote" "openFile(%s)") t))

たとえば、これを "firefox" に変更するには以下のようにします。

(setq mew-prog-text/html-ext
      '("firefox" ("-a" "firefox" "-remote" "openFile(%s)") t))

Office 関連のファイルも、‘C-cC-e’ を使えば、それぞれのアプリケーショ ンで表示可能です。Windows や Mac では、文字通り Office のアプリケーショ ンが起動されます。Unix では、以下のように "ooffice" が初期値となってい ます。

(defvar mew-prog-msword-ext "ooffice")
(defvar mew-prog-msexcel-ext "ooffice")
(defvar mew-prog-mspowerpoint-ext "ooffice")

これを "soffice" に変更するには以下のようにします。

(setq mew-prog-msword-ext "soffice")
(setq mew-prog-msexcel-ext "soffice")
(setq mew-prog-mspowerpoint-ext "soffice")

また Office 関連のアプリケーションに対し、‘SPC’ などでは内容を表示 せず、‘C-cC-e’ では "wvHtml" などを使って Message バッファに表示す るには、以下のように設定します。

(setq mew-prog-msword  '(nil mew-mime-application/msword))
(setq mew-prog-msexcel '(nil mew-mime-application/msexcel))
(setq mew-prog-mspowerpoint '(nil mew-mime-application/mspowerpoint))

あらかじめ定められているコマンドではなく、任意の外部コマンドを呼び出し たい場合は、‘C-uC-cC-e’ と入力して下さい。

最近、Multipart/Alternative の中に Text/Plain と Text/Html の両方が入っ ており、どちらかを選ぶようになっているメッセージを多く見掛けます。Mew は、標準では Text/Plain の方を優先して表示します。"emacs-w3m" をインス トールすれば、Text/Html の方を優先したくなるかもしれません。その場合、 以下の設定を "~/.mew.el" に加えて下さい。(ここで See section MIME を表示する を読 み、‘:’ の使い方も思い出しておきましょう。)

(setq mew-mime-multipart-alternative-list
      '("Text/Html" "Text/Plain" ".*"))

ZIP で暗号化された添付ファイルは、‘zz’ で復号化し表示できます。


[ << ] [ < ] [ Up ] [ > ] [ >> ]         [Top] [Contents] [Index] [ ? ]

8.3 Draft mode

自分へ Cc: したい人は ‘mew-cc’ を設定して下さい。返答の際には、対象 のメッセージから、別途 Cc: が用意される場合があります。複数の Cc: がある 場合、送信時に 1 つにまとめられます。

バックアップのため、自分が送るメッセージを受け取りたいと考え、しかもヘッ ダに自分のアドレスを残したくないなら、Dcc: を使って下さい。 ‘mew-dcc’ に自分のアドレスを設定しましょう。

いつも入れて欲しいヘッダは、‘mew-header-alist’ に連想リスト形式で定 義して下さい。以下に例を示します。

(setq mew-header-alist
      '(("X-fingerprint:" "6B 63 38 88 67 5E 96 8E  CE A4 62 73 3F 11 64 94")
        ("X-URL:" "http://www.example.org/~kazu/")))

引用ラベルは、引用するフィールドを ‘mew-cite-fields’、ラベルの書式 を ‘mew-cite-format’ に定義します。引用記号は ‘mew-cite-prefix’ に指定します。初期値は、以下のようになっています。

(defvar mew-cite-fields '("From:" "Subject:" "Date:"))
(defvar mew-cite-format "From: %s\nSubject: %s\nDate: %s\n\n")
(defvar mew-cite-prefix "> ")

引用ラベルに Message-ID: を加えるには以下のようにします。

(setq mew-cite-fields '("From:" "Subject:" "Date:" "Message-ID:"))
(setq mew-cite-format "From: %s\nSubject: %s\nDate: %s\nMessage-ID: %s\n\n")

引用記号にアドレスのユーザ部分が付くようにするには以下のようにします。

(setq mew-cite-prefix-function (function mew-cite-prefix-username))

これで引用記号は以下のようになります。

From: SUMIKAWA Munechika <sumikawa@ebina.hitachi.co.jp>
Subject: Wine
Date: Wed, 23 Jul 1997 11:40:50 +0900

sumikawa> おはようからおやすみまでニートでおなじみの角川です。
sumikawa> 
sumikawa> さて、とろけるワイン作戦ですが、定石通り '89 のボルドーの
sumikawa> カベルネ・ソービニョンを狙いたいと思います。

引用ラベルの From: の部分と、引用記号は、アドレス帳の個人情報の要素に変 換できます。それぞれ、‘mew-addrbook-for-cite-label’、 ‘mew-addrbook-for-cite-prefix’ で指定できます。初期値はそれぞれ ‘nil’ と ‘'username’ です。以下のような値が設定できます。

’shortname

短縮名

’address

アドレス

’username

アドレスのユーザ部分

’nickname

ニックネーム

’name

正式な氏名

例として以下のような設定を考えてみましょう。

(setq mew-addrbook-for-cite-label 'nickname)
(setq mew-addrbook-for-cite-prefix 'nickname)

最初の設定でラベルの中のアドレスがニックネームに変わります。また、次の設 定で引用記号もニックネームに置き換わります。

From: すみっち
Subject: Wine
Date: Wed, 23 Jul 1997 11:40:50 +0900

すみっち> おはようからおやすみまでニートでおなじみの角川です。
すみっち> 
すみっち> さて、とろけるワイン作戦ですが、定石通り '89 のボルドーの
すみっち> カベルネ・ソービニョンを狙いたいと思います。

[ << ] [ < ] [ Up ] [ > ] [ >> ]         [Top] [Contents] [Index] [ ? ]

8.4 文字コード

See section 文字コードの決定 で説明したように、Mew ではメッセージを作成する際に 適切な文字コードを自動的に選択します。

もし複数の言語の文字が混在しており、国際化された文字コードを選択する必要 がある場合は、‘mew-charset-m17n’ の値を利用します。初期値は、 "utf-8" (Unicode と理解してよい)です。"iso-2022-jp-2" にしたい人は、以下 のように設定するとよいでしょう。

(setq mew-charset-m17n "iso-2022-jp-2")

メッセージを作成した際に、推測された文字コードを確認したい場合は、 ‘mew-ask-charset’ を設定して下さい。

nil

どのような文字コードが利用されても確認なし

文字コードのリスト

このリストに存在しない文字コードが利用された場合に確認

t

mew-charset-m17n’ が利用された場合に確認

たとえば、US-ASCII と ISO-2022-JP 以外の文字コードが選ばれた場合確認した いのであれば、以下のように設定して下さい。

(setq mew-ask-charset '("us-ascii" "iso-2022-jp"))

こう設定しているとき、たとえば "utf-8" が選択されると、以下のように訊か れます。

utf-8 is used. OK? (y or n) 

y’ を押すと、メッセージが送信されます(あるいは、キューに溜ります)。 ‘n’ を押すと、草稿が元の状態に戻ります。

ヨーロッパでは、Latin 1 (ISO-8859-1) の代りに、ユーロ記号を含む Latin 9 (ISO-8859-15、通称 Latin 0) が使われ始めています。草稿に、Latin 1 の文字 と Latin 9 の文字が混在していると、以下の手順によって、文字コードが決定 されます。

  1. unify-8859-on-decoding-mode’ を利用している場合:
    1. ISO-8859-1 に収まるなら "iso-8859-1" を利用
    2. そうでないなら "utf-8" を利用
  2. unify-8859-on-decoding-mode’ を利用していない場合:
    1. ISO-8859-1 と ISO-8859-15 のどちらにも収まる場合、"ISO-8859-1"
    2. ISO-8859-1 に収まるなら "iso-8859-1" を利用
    3. ISO-8859-15 に収まるなら "iso-8859-15" を利用
    4. そうでないなら、"utf-8" を利用

mew-charset-latin’ の初期値は、"iso-8859-15" です。"iso-8859-1" に したい場合は、以下のように設定します。

(setq mew-charset-latin "iso-8859-1")

もし、US-ASCII 以外の文字に対し、必ず UTF-8 を使いたいなら、以下のよう に設定して下さい。

(setq mew-cs-database-for-encoding
      `(((ascii) nil "7bit" "7bit")
        (nil utf-8 "base64" "B")))

[ << ] [ < ] [ Up ] [ > ] [ >> ]         [Top] [Contents] [Index] [ ? ]

8.5 色付け

mew-use-highlight-mark’ が ‘t’ の場合、マークの付いたメッセー ジに色が付きます。初期値は ‘t’ です。

mew-use-highlight-header’ が ‘t’ の場合、メッセージのヘッダに 色が付きます。初期値は ‘t’ です。

mew-use-highlight-body’ が ‘t’ の場合、メッセージの本文に色が 付きます。初期値は ‘t’ です。色を付ける上限は、 ‘mew-highlight-body-max-size’ で指定できます。初期値は 10000 バイト です。

mew-use-highlight-url’ が ‘t’ の場合、メッセージ中の URL に仕 掛けが施されて、マウスを持っていくと光るようになります。初期値は ‘t’ です。

mew-use-cursor-mark’ が ‘t’ の場合、Summary モードにおいて、 現在表示しているメッセージの行頭に、‘mew-cursor-mark’ で指定された 目印が付きます。初期値は ‘nil’ です。‘mew-cursor-mark’ の初期 値は ">" です。

mew-use-highlight-cursor-line’ が ‘t’ の場合、Summary モード でカーソルのある行に下線が引かれます。初期値は ‘t’ です。

mew-use-highlight-mouse-line’ が ‘t’ の場合、Emacs がマウスの 色付けをサポートしていれば、Summary モードでマウスのある行に色がつきます。 真中のボタンをクリックしながら、マウスだけでメッセージを読む際にはとても 便利です。初期値は ‘nil’ になっています。

mew-use-highlight-x-face’ が ‘t’ で、ヘッダ中の X-Face: が Message モードでアイコン化されます。初期値は ‘t’ です。この機能を 利用するには、"netpbm" と "compface" パッケージをインストールして下 さい。

色を変更するには、Mew のソースと一緒に配布されている "dot.theme" を 適当な名前でコピーし内容を変更します。ここでは、そのファイル名を "~/.mew-theme.el" としましょう。まず、この名前を ".mew.el" で ‘mew-theme-file’ に指定して下さい。

(setq mew-theme-file "~/.mew-theme.el")

次に中身を変更します。たとえば、以下のような設定が見つかります。

(mew-setface-bold header-subject
  :tty "red" :light "Firebrick" :dark "OrangeRed")

シンボル ‘header-subject’ は、ヘッダの "Subject:" の値を意味してい ます。:tty は Emacs をカラーの端末で起動した場合、:light と :dark は、 それぞれ Emacs をウインドウで起動したときの背景が白と黒の場合を意味して います。

端末では green 、背景が白なら ForestGreen、背景が黒なら LimeGreen と設 定するには、以下のようにします。

(mew-setface-bold header-subject
  :tty "green" :light "ForestGreen" :dark "LimeGreen")

シンボルに何があるのかは、"dot.mew" を見て下さい。

上記の方法では、ヘッダのすべてのフィールド名やフィールド値に対してシン ボルが定義されている訳ではありません。そこで、どんなフィールドの色でも 簡単に変更できるように、‘mew-header-color’ と ‘mew-header-color-bold’ という関数が用意されています。後者を使うと 太字に、前者を使うと普通の文字になります。たとえば、以下のように使いま す。

(mew-header-color-bold "Subject:" "LimeGreen" "OrangeRed")

この設定では、"Subject:" が LimeGreen の太字に、その値が OrangeRed の太 字になります。

この方法では、端末や背景の色を考慮した設定はできません。また、フィール ド値の色を省略すると、フィールド名と同じ色が使用されます。


[ << ] [ < ] [ Up ] [ > ] [ >> ]         [Top] [Contents] [Index] [ ? ]

8.6 フック

Mew で用意されているフックをまとめます。

mew-env-hook

Mew の起動時の環境が設定される前に評価される。

mew-init-hook

Mew の起動時に評価される。

mew-status-update-hook

状態の更新(‘Z’)のときに評価される。

mew-summary-mode-hook

Summary モードに入るときに評価される。

mew-virtual-mode-hook

Virtual モードに入るときに評価される。

mew-thread-display-hook

スレッドが表示された後に評価される。

mew-header-mode-hook

Header モードに入るときに評価される。

mew-draft-mode-hook

Draft モードに入るときに評価される。

mew-draft-mode-newdraft-hook

新しい草稿が用意された際に、Draft モードにおいて評価される。

mew-draft-mode-reedit-hook

+draft でないフォルダにある古い草稿を再編集した際に、Draft モードにおい て評価される。

mew-draft-mode-reedit-draft-hook

+draft でないフォルダにある草稿を再編集した際に、Draft モードにおいて評 価される。

mew-draft-mode-reedit-queue-hook

+queue または +postq フォルダにあるメッセージを再編集した際に、Draft モー ドにおいて評価される。

mew-draft-mode-edit-again-hook

古い形式で戻ってきたメッセージを再編集した際に、Draft モードにおいて評価 される。

mew-message-mode-hook

Message モードに入るときに評価される。

mew-message-hook

メッセージが Message モードで表示される度に評価される。

mew-make-message-hook

Draft モードで MIME メッセージを作る前、つまり ‘C-cC-m’ の際の最初 に評価される。例:(add-hook ’mew-make-message-hook ’ispell-message)

mew-send-hook

メッセージを SMTP で送信/キューイングする前に評価される。メッセージの最 終形が作られる前に評価されることに注意。

mew-post-hook

メッセージを NNTP で投稿/キューイングする前に評価される。メッセージの最 終形が作られる前に評価されることに注意。

mew-real-send-hook

メッセージを SMTP で送信/キューイングする前に評価される。メッセージの最 終形が作られた後に評価されることに注意。

mew-real-post-hook

メッセージを NNTP で送信/キューイングする前に評価される。メッセージの最 終形が作られた後に評価されることに注意。

mew-smtp-flush-hook

+queue フォルダにメッセージがある場合に、SMTP が起動される前に評価され る。

mew-nntp2-flush-hook

+postq フォルダにメッセージがある場合に、NNTP が起動される前に評価され る。

mew-smtp-sentinel-hook

SMTP が終了する際に評価される。

mew-nntp-sentinel-hook

受信用の NNTP が終了する際に評価される。

mew-nntp2-sentinel-hook

送信用の NNTP が終了する際に評価される。

mew-pop-sentinel-hook

POP が終了する際に評価される。

mew-pop-sentinel-non-biff-hook

Biff ではない POP が終了する際に評価される。

mew-imap-sentinel-hook

IMAP が終了する際に評価される。

mew-imap-sentinel-non-biff-hook

Biff ではない IMAP が終了する際に評価される。

mew-scan-sentinel-hook

Summary モードの ‘s’ が終了する際に評価される。

mew-summary-ls-no-scan-hook

Summary モードの ‘s’ がフォルダの一覧を取らなかった場合に評価される。

mew-summary-exec-hook

Summary モードの ‘x’ の実行が終了する際に評価される。

mew-refile-guess-by-from-learn-hook

mew-refile-guess-by-from-learn が実行される際に評価される。

mew-sort-hook

Summary モードの ‘M-s’ の実行が終了する際に評価される。

mew-pack-hook

Summary モードの ‘O’ の実行が終了する際に評価される。

mew-summary-delete-folder-hook

フォルダが削除されるときに評価される。

mew-summary-rename-folder-hook

フォルダ名が変更されるときに評価される。

mew-summary-toggle-disp-msg-hook

Summary モードの ‘v’ の実行が終了する際に評価される。

mew-syntax-format-hook

マルチパートの書式を作成する関数 ‘mew-syntax-format’ が呼ばれた際に 評価される。

mew-addrbook-mode-hook

アドレス帳の登録モードに入るときに評価される。

mew-cite-hook

Draft モードで引用する際に呼ばれる。通常 supercite を設定するために使う。

mew-before-cite-hook

Draft モードでメッセージを引用する直前に呼ばれる。

mew-suspend-hook

Mew を一時中断した際に評価される。

mew-quit-hook

Mew の終了時に評価される。

以下にフックの設定例を示します。

Draft モードでは、フックを ‘text-mode-hook’、 ‘mew-draft-mode-hook’ の順で評価します。‘text-mode-hook’ で ‘auto-fill-mode’ を設定していない人は、 ‘mew-draft-mode-hook’ を以下のように設定するのがよいかもしれません。

(add-hook 'mew-draft-mode-hook
          (lambda ()
            (auto-fill-mode 1)
            (set-fill-column 70)))

この例では、折り返しのカラム数を70に設定しています。


[ << ] [ < ] [ Up ] [ > ] [ >> ]         [Top] [Contents] [Index] [ ? ]

8.7 POP

Mew では、メッセージを受信する際に POP を利用できます。ここでは、POP を 制御するための以下の変数についてまとめます。

mew-pop-server

POP サーバの名前。

mew-pop-ssh-server

POP を SSH 経由で取得する場合の SSH サーバの名前。

mew-pop-ssl

POP over SSL を使うか否か。

mew-pop-ssl-port

POP over SSL のポート番号。

mew-pop-user

POP のアカウント名。初期値はログイン名。

mew-pop-auth

POP の認証方式。‘'pass’ は USER/PASS (生パスワード)、‘'apop’ は APOP、‘t’ は ‘mew-pop-auth-list’ に従った SASL を意味する。 初期値は ‘'apop’。

mew-pop-auth-list

SASL で利用する認証方式のリスト。優先順位の高い順に並べる。現在、 "CRAM-MD5" が利用可能。

mew-pop-delete

POP サーバからメッセージを取得後、POP サーバにあるメッセージを削除するか 否か。‘t’ なら削除。‘nil’ なら削除しない。数値 N なら、最初の アクセスから N 日後に削除する。初期値は ‘t’。

mew-pop-size

POP サーバから取得するメッセージの大きさの上限。初期値は 55296 バイト。0 に設定すると、上限なしの意味になり、すべてのメッセージを取得する。上限に 引っ掛かったメッセージの全体を取得する方法については、See section メッセージの取得 を参照のこと。

mew-pop-body-lines

大きさの上限にひっかかったメッセージの本文を何行取得するかという値。初 期値は 40。

mew-pop-header-only

POP でメッセージを取得する際に、ヘッダのみにするか、本文も取得するか。 ‘nil’ でなければ、ヘッダのみを取得。初期値は ‘nil’。


[ << ] [ < ] [ Up ] [ > ] [ >> ]         [Top] [Contents] [Index] [ ? ]

8.8 IMAP

Mew では、メッセージを受信する際に IMAP を利用できます。ここでは、IMAP を制御するための以下の変数についてまとめます。

mew-imap-server

IMAP サーバの名前。

mew-imap-ssh-server

IMAP を SSH 経由で取得する場合の SSH サーバの名前。

mew-imap-ssl

IMAP over SSL を使うか否か。

mew-imap-ssl-port

IMAP over SSL のポート番号。

mew-imap-user

IMAP のアカウント名。初期値はログイン名。

mew-imap-auth

IMAP の認証方式。‘nil’ は LOGIN (生パスワード)、‘t’ は ‘mew-imap-auth-list’ に基づいた SASL を意味する。初期値は ‘t’。

mew-imap-auth-list

SASL で利用する認証方式のリスト。優先順位の高い順に並べる。現在、 "CRAM-MD5" と "LOGIN" が利用可能。

mew-imap-delete

IMAP サーバからメッセージを取得後、IMAP サーバにあるメッセージを削除するか 否か。‘t’ なら削除。‘nil’ なら削除しない。数値 N なら、最初の アクセスから N 日後に削除する。初期値は ‘t’。

mew-imap-size

IMAP サーバから取得するメッセージの大きさの上限。初期値は 55296 バイト。 0 に設定すると、上限なしの意味になり、すべてのメッセージを取得する。上限 に引っ掛かったメッセージの全体を取得する方法については、 See section メッセージの取得 を参照のこと。

mew-imap-header-only

IMAP でメッセージを取得する際に、ヘッダのみにするか、本文も取得するか。 ‘nil’ でなければ、ヘッダのみを取得。初期値は ‘nil’。


[ << ] [ < ] [ Up ] [ > ] [ >> ]         [Top] [Contents] [Index] [ ? ]

8.9 NNTP

Mew では、ニュースを読み書きする際に NNTP を利用します。ここでは、NNTP を制御するための以下の変数についてまとめます。

mew-nntp-server

NNTP サーバの名前。

mew-nntp-ssh-server

NNTP を SSH 経由で取得する場合の SSH サーバの名前。

mew-nntp-ssl

NNTP over SSL を使うか否か。

mew-nntp-ssl-port

NNTP over SSL のポート番号。

mew-nntp-user

NNTP のアカウント名。もし ‘nil’ でなければ、認証の手続きが実行され る。(mew-nntp-auth という変数はないことに注意。)

mew-nntp-newsgroup

ニュースグループ名の初期値。

mew-nntp-size

NNTP サーバから取得するメッセージの大きさの上限。初期値は 55296 バイト。 0 に設定すると、上限なしの意味になり、すべてのメッセージを取得する。上限 に引っ掛かったメッセージの全体を取得する方法については、 See section メッセージの取得 を参照のこと。

mew-nntp-header-only

NNTP でメッセージを取得する際に、ヘッダのみにするか、本文も取得するか。 ‘nil’ でなければ、ヘッダのみを取得。初期値は ‘nil’。

mew-nntp-msgid-user

Message-Id: を作成するためのユーザ名。‘nil’ であれば ‘mew-user’ の値が利用される。初期値は ‘nil’。 Message-Id: の書式は以下を参照。

mew-nntp-msgid-domain

Message-Id: を作成するためのドメイン名。‘nil’ であれば ‘mew-mail-domain’ の値が利用される。初期値は ‘nil’。 Message-Id: の書式は以下を参照。

なお、NNTP 用の Message-Id: の値は以下のように作成されます。

message-id = *random*.nntp-msgid-user@nntp-msgid-domain

[ << ] [ < ] [ Up ] [ > ] [ >> ]         [Top] [Contents] [Index] [ ? ]

8.10 SMTP

Mew では、メッセージを送信する際に SMTP を利用します。SMTP サーバが認証 を要求した場合、Mew は自動的にユーザにバスワードの入力を求めます。ここ では、SMTP を制御するための以下の変数についてまとめます。

mew-smtp-server

SMTP サーバの名前。

mew-smtp-port

SMTP ポート番号。

mew-smtp-ssh-server

SSH 経由でメッセージを送る際の SSH サーバの名前。

mew-smtp-ssl

SMTP over SSL を使うか否か。

mew-smtp-ssl-port

SMTP over SSL のポート番号。

mew-smtp-user

SMTP AUTH で利用されるアカウント名。設定されない場合は、自動的にメール アドレスに設定される。

mew-smtp-auth-list

SMTP AUTH で利用する認証方式のリスト。優先順位の高い順に並べる。初期値 は、’("CRAM-MD5" "PLAIN" "LOGIN")。

mew-smtp-helo-domain

SMTP HELO コマンドで使われるサーバ名。初期値は "localhost"。

mew-smtp-mail-from

SMTP MAIL FROM コマンドで指定されるアドレス。‘nil’ の場合は、From: フィールドのアドレスが指定される。初期値は ‘nil’。

mew-smtp-msgid-user

Message-Id: を作成するためのユーザ名。‘nil’ であれば ‘mew-user’ の値が利用される。初期値は ‘nil’。 Message-Id: の書式は以下を参照。

mew-smtp-msgid-domain

Message-Id: を作成するためのドメイン名。‘nil’ であれば ‘mew-mail-domain’ の値が利用される。初期値は ‘nil’。 Message-Id: の書式は以下を参照。

mew-use-8bit

8 ビットテキストを符号化せずにそのまま送るか否か。‘nil’ の場合は、適 切な MIME 符号化が施される。初期値は ‘nil’。

なお、SMTP 用の Message-Id: の値は以下のように作成されます。

message-id = *random*.smtp-msgid-user@smtp-msgid-domain

Message Submission (ポート番号が 587 である送信用の SMTP)を使いたい場合 は、以下のように設定して下さい。

(setq mew-smtp-port "submission")

SSL (See section Secure Socket Layer)や TLS (See section Transport Layer Security) の章も参考にして下さい。

SMTP サーバの中には、認証なし、つまりパスワードを送られるとエラーと見な す設定であるにも関わらず、認証を要求してくるものがあります。Mew は、 SMTP サーバが認証を要求すると、ユーザにパスワードを尋ねて、入力されたパ スワードをサーバへ送ります。上記のようなおかしな SMTP サーバに対処する には、以下のように設定し、認証を要求されてもパスワードを送らなくすればよ いでしょう。

(setq mew-use-smtp-auth nil)
mew-use-smtp-auth

SMTP サーバが認証を要求したとき、パスワードを送るかどうか。デフォルトは ‘t’。‘nil’ にすると、SMTP サーバが認証を要求しても無視する。


[ << ] [ < ] [ Up ] [ > ] [ >> ]         [Top] [Contents] [Index] [ ? ]

8.11 送受信の動作変化

mew-config-alist’ を使うと、メッセージの送受信に関する動作に変化を つけられます。以下の設定例を使って説明します。

(setq mew-config-alist
      '((home
         (inbox-folder   "+inbox-home")
         (pop-server     "pop.iij4u.or.jp"))
        (ext
         (pop-ssh-server "ssh.example.org"))
        (default
         (proto          "%")
         (imap-server    "imap.example.org")
         (pop-server     "pop.example.org"))))

この例では、"home"、"ext"、"default" という 3 つのケースを定めています。 それぞれのケースに対して、いくつかのキーと値の対が設定されています。

この例を使って、‘mew-config-alist’ の意味を説明します。ケースを "home" にして "pop-server" を索くと、"pop.iij4u.or.jp" が得られます。ケー スを "ext" にして "pop-server" を索くと、"ext" には該当するキーがな いので、"default" を見て、"pop.example.org" が得られます。ケースを "default" にして "pop-server" を索くと、"pop.example.org" が得られます。

ケースを "home" にして "inbox-folder" を索くと、"+inbox-home" が得られま す。ケースを "ext" にして "inbox-folder" を索くと、"ext" には該当するキー がなく、さらに "default" にもないので、‘mew-inbox-folder’ という変 数の値が得られます。ケースを "default" にして "inbox-folder" を索いた場 合も、‘mew-inbox-folder’ の値が得られます。

"proto" (‘mew-proto’)は、‘M-x mew’ と入力された際に、どのフォ ルダに移動するか指定するために使います。(Mew を起動するために ‘M-x mew’ と入力する場合、"default" ケースの "proto" が利用されま す。Mew が起動している際に、‘M-x mew’ と入力するとケースに従って、 "proto" が選ばれます。)

値の候補は、"+"、"$"、"%"、"-" です。これらは標準では、"+inbox"、 "$inbox"、"%inbox"、"-fj.mail.reader.mew" を意味します。

mew-config-alist’ で設定できるキーは、‘mew-"キー"’ という変 数に対応しています。以下に設定できる項目を列挙します。

name, user, mail-domain, 
cc, fcc, dcc, reply-to, organization, header-alist, proto, 
smtp-server, smtp-port, smtp-ssh-server, smtp-ssl, smtp-ssl-port, 
smtp-user, smtp-auth-list, 
smtp-msgid-user, smtp-msgid-domain, smtp-helo-domain, smtp-mail-from, 
pop-server, pop-port, pop-ssh-server, pop-ssl, pop-ssl-port, 
pop-user, pop-auth, pop-auth-list, 
pop-size, pop-header-only, pop-delete, pop-body-lines,
pop-proxy-server, pop-proxy-port,
imap-server, imap-port, imap-ssh-server, imap-ssl, imap-ssl-port, 
imap-user, imap-auth, imap-auth-list, 
imap-size, imap-header-only, imap-delete, 
imap-trash-folder, imap-queue-folder, imap-spam-field, imap-spam-word,
imap-proxy-server, imap-proxy-port,
nntp-server, nntp-port, nntp-ssh-server, nntp-ssl, nntp-ssl-port, 
nntp-user, nntp-size, nntp-header-only, 
nntp-msgid-user, nntp-msgid-domain, 
ssl-cert-directory, ssl-verify-level, 
inbox-folder, queue-folder, postq-folder, 
mailbox-type, mbox-command, mbox-command-arg,
signature-file, content-type, refile-guess-alist, 
spam-prog, spam-prog-args, ham-prog, ham-prog-args, 
use-old-pgp, pgp-signer, smime-signer, privacy-method, 
protect-privacy-always, protect-privacy-always-type, 
protect-privacy-encrypted, protect-privacy-encrypted-type, 
protect-privacy-with-old-pgp-signature,
use-format-flowed

name、user、mail-domain は以下の規則にしたがって、From: の値になります。

from = name <user@mail-domain>

自分で ‘mew-from-list’ を設定していない場合は、上記のルールに従い各 ケースの from を集めて、‘mew-from-list’ が自動的に設定されます。 See section ヘッダの循環的な補完 を参照のこと。

mew-config-alist’ に設定したケース名をケースに指定できます。Mew の起動時のケースは、"default" になっています。

Summary モードにおいて、ケースを変更するには ‘C’ を利用します。ケー スには、‘TAB’ で補完、‘C-cTAB’ で循環的な補完が効きます。

ケースが "default" 以外の値をとった場合は、Summary モードのモードライン に表示されます。以下はケースが "home" となっている場合の例です。

(Summary home)

Draft モードでは、ケースが "default" でない場合、モードラインにその値が 表示されます。以下は、ケースが "home" である場合の例です。

(Draft home)

Draft モードにおいて、その草稿のケースを変更するには、‘C-cC-o’ を 用います。mail-domain キーや header-alist キーに対応する値に応じて、ヘッ ダが動的に変更されます。なお、このケースは、その Draft モードに固有にな ります。

Draft モードでは、ケースを自動的に設定することもできます。

mew-case-guess-when-prepared

この変数が ‘t’ の場合、草稿が用意されたときに、 ‘mew-case-guess-alist’ に従ってケースが設定される。初期値は ‘t’。

mew-case-guess-when-composed

この変数が ‘t’ の場合、メッセージが作成されたときに、 ‘mew-case-guess-alist’ に従ってケースが設定される。初期値は ‘nil

mew-case-guess-when-replied

この変数が ‘t’ の場合、返答によって草稿が用意されたときに、 ‘mew-case-guess-when-replied-alist’ に従ってケースが設定される。初 期値は ‘t’。

mew-case-guess-alist’ と ‘mew-case-guess-when-replied-alist’ の書式は、‘mew-refile-guess-alist’ と同じです。詳しくは、 See section 指定した規則から推測 を参照して下さい。

Draft モードで草稿を送信するために ‘C-cC-c’ を使うと、Draft モード のケースが SMTP/NNTP サーバなどを決定するために利用されます。Summary モー ドで +queue/+postq のメッセージを送り出すために ‘C-cC-c’ を利用す ると、Summary モードのケースが利用されます。たとえ、そのケースが Draft モードで指定されていたケースと違ってもです。Summary モードで ‘C-uC-cC-c’ を使うと、+queue/+postq のメッセージを送り出すためのケー スが指定できます。

以下にケースに関するコマンドをまとめます。

C

Summary モードにおいて、ケースを設定する。

C-cC-o

Draft モードにおいて、その草稿のケースを設定する。


[ << ] [ < ] [ Up ] [ > ] [ >> ]         [Top] [Contents] [Index] [ ? ]

8.12 設定の書式

Mew 6.1 から ".mew.el" の設定方法が改善されました。古い書式も有効ですが、 より簡単な新しい書式も利用できます。

以下に mew-config-alist を新しい書式で書いた例を示します。

(setq mew-config-alist
      '((home
         (imap-server       "imap.example.org")
         (imap-ssl          t)
         (imap-ssl-port     993)
         (smtp-server       "smtp.example.org")
         (smtp-port         "submission"))))

以下の古い書式と見比べて下さい。

(setq mew-config-alist
      '(("home"
         ("imap-server"   . "imap.example.org")
         ("imap-ssl"      . t)
         ("imap-ssl-port" . "993")
         ("smtp-server"   . "smtp.example.org")
         ("smtp-port"     . "submission"))))

繰り返しますが、Mew 6.1 では古い書式も有効です。古い書式と新しい書式を 混ぜて書いても構いません。


[ << ] [ < ] [ Up ] [ > ] [ >> ]         [Top] [Contents] [Index] [ ? ]

8.13 その他

環境によっては、添付ファイルをセーブする際に、ファイル名を SAMBA 形式に すると便利なことがあります。この場合、‘mew-use-samba-encoding’ を ‘t’ にして下さい。ファイル名として、どの文字コードを利用するかは、 ‘mew-cs-samba’ で指定できます。初期値は ‘shift_jis’ です。

Summary モードで ‘#’ と押すと、現在のメッセージを印刷できます。印 刷に利用する関数は ‘mew-print-function’ で定義します。初期値は、 ‘ps-print-buffer’ ですから、PostScript に変換されて印刷されます。 自分の作成した関数を利用するには、以下のように設定します。

(setq mew-print-function 'my-print-function)

ヘッダ中のどのフィールドを印刷するかは、‘mew-field-for-printing’ で指定できます。初期値は、以下のようになっています。

'("Subject:" "From:" "To:" "Cc:" "Date:")

たとえば、Subject:、From:、Date: のみを印刷するには、以下のように設定し ましょう。

(setq mew-field-for-printing '("Subject:" "From:" "Date:"))

[ << ] [ >> ]           [Top] [Contents] [Index] [ ? ]

This document was generated on August 4, 2015 using texi2html 5.0.