Rmailには、送信メールを送るための複数のコマンドがあります。Messageモードの使い方(Rmailでも動作する特別な機能を含む)に関する情報は、メールの送信を参照してください。このセクションでは、送信メッセージ作成に使用する、mailバッファーに入るエンターするためのRmailの特別なコマンドを説明します。メールを送信するための通常のキー — C-x m、C-x 4 m、C-x 5 m — は、Rmailモードでも通常どおり機能することに注意してください。
メッセージを送信します(rmail-mail
)。
すでに編集を開始した送信メッセージの編集を続けます(rmail-continue
)。
カレントRmailメッセージにたいする返信を送信します(rmail-reply
)。
カレントメッセージを他のユーザーに転送します(rmail-forward
)。
カレントメッセージを他のユーザーに再送します(rmail-resend
)。
送信に失敗して戻ってきたメッセージにたいして、2回目の送信を試みます(rmail-retry-failure
)。
Rmailにいるときにメッセージを送信する理由でもっとも一般的なのは、読んでいるメールに返信するときでしょう。これを行なうには、r
(rmail-reply
)とタイプします。これはC-x 4
mのように、別ウィンドウにメール作成バッファーを表示しますが、ヘッダーフィールド‘Subject’、‘To’、‘CC’、‘In-reply-To’、‘References’は、返信するメッセージにもとづいて、事前に初期化されています。‘To’フィールドには、返信するメッセージを送信した人のアドレスがセットされ、‘CC’にはそのメッセージを受け取った、他のすべての人のアドレスがセットされます。
変数mail-dont-reply-to-names
を使用して、自動的に返信に含まれる受信者から、特定の受信者を除外することができます。この変数の値には正規表現を指定します。正規表現にマッチする受信者は、‘CC’フィールドから除外されます。その受信者を除外することにより‘To’フィールドが空になる場合を除き、‘To’フィールドからも除外されます。この変数がnil
の場合、最初に返信を作成するときに、あなた自身のアドレスにマッチするデフォルト値に初期化されます。
元メッセージの送信者だけにリプライするには、C-u rまたは1 rのように、数引数とともに返信コマンドをエンターします。特定の返信にたいして‘CC’フィールドを完全に省略するには、返信コマンドに数引数を指定します。これは、元のメッセージを送信した人だけに返信することを意味します。
1度メール作成バッファーが初期化されると、後は通常どおりメールの編集と送信を行なうことができます(メールの送信を参照してください)。事前にセットされたヘッダーフィールドが適切でない場合は、それを編集することができます。C-c C-yのようなコマンドを使うこともできます。これは返信するメッセージをyankします(メールコマンドを参照してください)。Rmailバッファーに切り替えて、異なるメッセージを選択してから、また戻って新しいカレントメッセージにyankすることもできます。
メッセージが送信先に届かないこともあります。そのような場合メーラーは通常、失敗メッセージ(failure
message)をあなたに返信します。RmailコマンドのM-m
(rmail-retry-failure
)は、同じメッセージの2回目の送信を準備をします。これは前と同じテキストとヘッダーフィールドで、メール作成バッファーをセットアップします。そこですぐにC-c
C-cをタイプすると、初回とまったく同じメッセージを再送します。テキストやヘッダーを編集してから送信することもできます。変数rmail-retry-ignored-headers
は、失敗したメッセージを再試行するとき除外するヘッダーを制御し、フォーマットはrmail-ignored-headers
(メッセージの表示を参照してください)と同じです。
Rmailからメールを送信する他のよくある理由に、カレントメッセージを他のユーザーに転送(forward)することです。f
(rmail-forward
)は、メール作成バッファーのテキストとsubjectを、カレントメッセージで事前に初期化することにより、これを簡単に行なえるようにします。subjectは[from:
subject]
という形式で初期化されます。fromとsubjectには、元のメッセージの送信者とsubjectが入ります。あなたが行なう必要があるのは、送信先を記述して、それを送信することだけです。メッセージを転送するとき、受信者が受け取るメッセージのfromはあなたになり、メールの内容は元のメッセージと同じになります。
Rmailは転送メッセージにたいして2つのフォーマットを提供します。デフォルトはMIMEフォーマットを使用します(メッセージの表示を参照してください)。これは元のメッセージを別の部分に含めます。変数rmail-enable-mime-composing
をnil
にセットすることにより、もっと簡単なフォーマットを使うこともできます。この場合、Rmailは元のメッセージを2つの区切り行で囲むだけです。これは各行の行頭に‘- ’を挿入することにより、各行の変更も行ないます。このフォーマットによる転送メッセージを受信した場合、それに普通のテキスト以外の何か —
たとえばプログラムのソースコード —
が含まれている場合、この変更を取り消せたら便利だと思うかもしれません。これを行なうには、転送されたメッセージを選択して、M-x
unforward-rmail-messageとタイプします。このコマンドは、挿入された文字列‘- ’を削除して、転送されたメッセージのオリジナルを抽出し、カレントメッセージの直後に、別のメッセージとしてRmailファイルに挿入します。
再送(Resending)は、転送と似た別の方法です。違いは、再送により送信されるメッセージは、あなたが受け取ったときのように、元の送信者がfromになり、追加のヘッダーフィールド(‘Resent-From’と‘Resent-To’)により、それがあなたを通じて送られたことを示すことです。Rmailでメッセージを再送するには、C-u
fを使用します(fはrmail-forward
を実行し、数引数を指定するとrmail-resend
を呼び出します)。
m
(rmail-mail
)を使用することにより、返信ではない送信用のメールの編集を開始します。これはヘッダーフィールドを空のままにします。C-x
4 mとの違いは、rのようにC-c C-yでRmailにアクセスできることです。
c
(rmail-continue
)コマンドは、既に編集を開始した送信用メッセージの編集を終えるために、または送信したメッセージを変更するために、メール作成バッファーでの編集を再開します。
変数rmail-mail-new-frame
を非nil
にセットした場合、メッセージの送信を開始するすべてのコマンドは、それを編集するために新しいフレームを作成します。このフレームは、そのメッセージを送信すると削除されます(ただしそれがカレントディスプレイで唯一の可視なフレームか、テキストモードフレームの場合を除く)。メッセージを送信した際にそのフレームを削除できなければ、Emacsは後続のメッセージの作成用にそのフレームの再利用を試みます。
メッセージを送信するすべてのRmailコマンドは、選択されたメール作成方法を使用します(メール作成方法を参照してください)。