次: Mail Mode, 前: Mail Headers, 上: Sending Mail
~/.mailrcという名前のファイルでメイルの別名 (mail alias)を定義できます。 メイルの別名とは、複数のメイルアドレスやそれらのグループに付けた 覚えやすい短い名前のことです。 他の多くのメイルプログラムと同様に、 `To'、`From'、`CC'、`BCC'、`Reply-to'のフィールドに 別名が現れるとEmacsは別名を展開し、 当該フィールドの先頭に`Resent-'を付加します。
~/.mailrcファイルで別名を定義するには、 以下のような形式の行を書きます。
alias shortaddress fulladdresses
fulladdressesは1つ以上のメイルアドレスであり、 shortaddressをそれらのアドレスに展開します。 複数のアドレスを書く場合は、空白で区切ります。 アドレスに空白が含まれる場合は、 アドレス全体をダブルクォート`"'で括ります。
たとえば、gnu@gnu.org
とあなたのローカルアドレスに対する別名を
maingnu
とするには、
つぎのように書きます。
alias maingnu gnu@gnu.org local-gnu
また、Emacsは`.mailrc'ファイル内の「取り込み」コマンドも認識します。 つぎのように書きます。
source filename
ファイル~/.mailrcは主に他のメイル閲覧プログラムが使用するものです。 このファイルには、他にもさまざまなコマンドを指定できます。 Emacsは、このファイル内の別名定義(`alias')と 取り込みコマンド(`source')以外はすべて無視します。
Emacsの中だけでメイルの別名を定義する別の方法は、
define-mail-alias
コマンドを使うことです。
このコマンドは、別名と完全なアドレスを順次尋ねてきます。
これを使えば、つぎのようにして
個人の.emacsファイルで別名を定義できます。
(define-mail-alias "maingnu" "gnu@gnu.org")
define-mail-alias
は、
mail-aliases
という変数に別名を追加記録します。
Lispのリスト操作に慣れているなら、
mail-aliases
に直接設定してもかまいません。
変数mail-alias
の初期値はt
となっていて、
Emacsは.mailrcから別名定義を読み込むという指定です。
~/.mailrcのかわりに使う別のファイルの名前は、
変数mail-personal-alias-file
に設定します。
通常、Emacsはメッセージ送信時に別名を展開します。 送信に先だってみずからメイルアドレスを展開する必要はありませんが、 メイルが実際にどこへ送信されるか確認したければ別名を展開することもできます。 そうするには、コマンドM-x expand-mail-aliasesを使います。 アドレスを保持するメイルヘッダに書かれている すべてのメイルの別名を展開します。
もし好みに合うなら、メイルの別名を打ち込んだらただちに 略語展開することもできます(see Abbrevs)。 この機能を使うにはつぎのようにします。
(add-hook 'mail-setup-hook 'mail-abbrevs-setup)
これを個人の.emacsファイルに入れてもかまいません。
See Hooks。
この機能を使う場合には、define-mail-alias
のかわりに
define-mail-abbrev
を使う必要があります。
前者は、このパッケージでは動作しません。
メイル用略語パッケージでは、mail-aliases
のかわりに
変数mail-abbrevs
を使い、さらに、
すべての別名は小文字に変換されます。
メイル用略語パッケージには、C-c C-a
(mail-interactive-insert-alias
)コマンドもあって、
別名を(補完を使って)読み取り、その定義をポイント位置に挿入します。
この機能は、Emacsが別名を通常展開しない本文や`Subject'フィールドなど
を編集しているときに便利です。
単語の区切り文字を挿入したあとで略語が展開されることに注意してください。 しかし、C-nとM->を再定義して 展開が行われるように設定することもできます。 つぎのようにします。
(add-hook 'mail-setup-hook '(lambda () (substitute-key-definition 'next-line 'mail-abbrev-next-line mail-mode-map global-map) (substitute-key-definition 'end-of-buffer 'mail-abbrev-end-of-buffer mail-mode-map global-map)))