ここでは、Mew のデフォルトの動作を変更し、自分好みの Mew にする方法を説 明します。主に ~/.emacs で設定して下さい。
ここでは、以下の変数について説明します。
Draft モードでは、`text-mode-hook'、`mew-draft-mode-hook' の順 で評価します。`text-mode-hook' で `auto-fill-mode' の設定して いない人は、 `mew-draft-mode-hook' を以下のように設定するのがよいか もしれません。
(setq mew-draft-mode-hook (function (lambda () (auto-fill-mode 1))))
毎回 Fcc: でバックアップを取りたい人は、以下を .emacs に設定して下さい。
(setq mew-fcc "+Backup")
自分へ Cc:(Dcc:) したい人は `mew-cc'(`mew-dcc')を設定して下さ い。
いつも Emacs のウインドウ全体で Mew を使いたい人は、以下の設定をして下さ い。
(setq mew-window-use-full t)
Summary モードの `SPC' は、`mew-summary-show-direction' によっ て、次のメールの表示の仕方が変わります。以下の値を設定できます。
デフォルトは `next' です。いつもメールを下から読む人は、以下のよう にすればよいでしょう。
(setq mew-summary-show-direction 'up)
ここでは、以下の変数について説明します。
Emacs 19のハイライトの機能は、`mew-highlight-lines-use' で制御しま す。`t' の場合、マウスのある行に色がつきます。真中のボタンをクリッ クしながら、マウスだけでメールを読む際にはとても便利です。しかし、この機 能は遅いので、デフォルトでは `nil' になっています。
Emacs 19を使っている際に、Summary モードで下線を引く機能は、 `mew-underline-lines-use' で制御します。`t' で引き、`nil' で引きません。デフォルトは `t' です。
いつも入れて欲しいヘッダは、`mew-header-alist' に連想リスト形式で定 義して下さい。以下に例を示します。
'(("X-fingerprint:" . "6B 63 38 88 67 5E 96 8E CE A4 62 73 3F 11 64 94") ("X-URL:" . "http://fukuda.aist-nara.ac.jp/~kazu/")) )
ここでは、以下の変数について説明します。
Mew の終了時に、Summary モードのマークをきちんと処理するには、以下のよう に `mew-init-hook' を定義する必要があります。
(setq mew-init-hook (function (lambda () (add-hook 'kill-emacs-hook (function mew-mark-process-all-folders)))))
Message モードや Draft モードでヘッダを色分けしたい人のために、以下に例 を示します。色は自分の好みを選んで下さい。
(cond ((and window-system (string-match "^19" emacs-version)) (setq hilit-mode-enable-list nil hilit-background-mode 'light hilit-inhibit-hooks nil hilit-inhibit-rebinding nil) (require 'hilit19) ;; (add-hook 'mew-message-hook 'hilit-rehighlight-buffer-quietly) (hilit-set-mode-patterns '(mew-message-mode) '(("^Subject:.*$" nil msg-subject) ("^From:.*$" nil msg-from) ("^X-.*:.*$" nil msg-quote) ("^>.*$" nil msg-quote) ("^[A-Za-z][A-Za-z0-9-]+:" nil msg-header))) ;; (add-hook 'mew-draft-mode-hook 'hilit-rehighlight-buffer-quietly) (hilit-set-mode-patterns '(mew-draft-mode) '(("^Subject:.*$" nil msg-subject) ("^From:.*$" nil msg-from) ("^>.*$" nil msg-quote) ("^[A-Za-z][A-Za-z0-9-]+:" nil msg-header))) ) )
引用ラベルは、引用するフィールドを `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 'mew-cite-prefix-username)
Mew で用意されているフックをまとめます。
長い間使うと Mew の起動が次第に遅くなる理由は、フォルダ数が増えているか らです。Mew は、起動時にフォルダ名の一覧を集めていることを思い出して下さ い。
Mew は起動時に以下の MH のコマンドを起動します。
folders -recurse -fast
このコマンドは非常に遅いのですが、アルゴリズムの改良により10倍以上速くな ります。folders は、最下層のフォルダも、その下にフォルダがないか調べます。 しかし、その下にフォルダがないのは、そのディレクトリのリンク数が 2 であ れば明らかです。よって、リンク数が 2 のディレクトリの下は、検索しないよ うにすればいいのです。
このように folders を速くするには、附属のパッチ (patches/mh/folder.c.patch)を MH の uip/folder.c に当てて下さい。
この方法がいやな人は、cron で folders を叩き ~/Mail/.folders に結果を入 れておけばいいでしょう。Mew は ~/Mail/.folders がある場合はこちらを読み 込み、folders を実行しなくなります。
folders -recurse -fast > ~/Mail/.folders
Go to the first, previous, next, last section, table of contents.