The Mutt E-Mail Client <author>by Michael Elkins <htmlurl url="mailto:me@cs.hmc.edu" name="<me@cs.hmc.edu>"> <date>version 1.5.10 +20050813 <abstract> ``All mail clients suck. This one just sucks less.'' -me, circa 1995 </abstract> <toc> <sect>紹介 <p> <bf>Mutt</bf> は小さいながらも非常にパワフルなテキストベイス MIME メイルクライアントです。その高い柔軟性に加えて、キー割り当てや キーボードマクロ、メイルのスレッド表示、正規表現検索、さらには メッセイジ選択用の強力なパターン言語といった高度な機能により、 まさしくメイルのパワーユーザにぴったりであると言えます。 <quote>「メイルクライアントはぜんぶ腐ってる。こいつはそれほど腐っちゃいない ってだけのことさ」 - 作者 Michael Elkins, 1995 年頃の発言</quote> <sect1>ホウムペイジ <p> <htmlurl url="http://www.mutt.org/" name="http://www.mutt.org/"> <sect1>メイリングリスト <p> 以下のメイリングリストを講読するにはメッセイジ本文に <em>subscribe</em>と書いて <tt>mutt-○○</tt><em>-request</em><tt>@mutt.org</tt> に送ってください。 <itemize> <item><htmlurl url="mailto:mutt-announce-request@mutt.org" name="mutt-announce@mutt.org"> ― 流量の少ない、アナウンス用リスト <item><htmlurl url="mailto:mutt-users-request@mutt.org" name="mutt-users@mutt.org"> ― 質問、バグ報告、要望 <item><htmlurl url="mailto:mutt-dev-request@mutt.org" name="mutt-dev@mutt.org"> ― 開発メイリングリスト </itemize> <bf>メモ</bf>: <em>mutt-announce</em> への投稿は自動的に <em>mutt-users</em> に転送されるので、両方を講読する必要はありません。 <sect1>ソフトウェア配布サイト <p> <itemize> <item><htmlurl url="ftp://ftp.mutt.org/mutt/" name="ftp://ftp.mutt.org/mutt/"> </itemize> <p> ミラーサイトについては <htmlurl url="http://www.mutt.org/download.html" name="http://www.mutt.org/download.html"> をご覧ください。 <sect1>IRC <p> <htmlurl url="http://www.freenode.net/" name="irc.freenode.net (www.freenode.net)"> のチャンネル <em>#mutt</em> に行けば、Mutt に関心のある人と会話できます。 (訳注:ただし、英語。なお、このチャンネル利用者の心得が <htmlurl url="http://wiki.mutt.org/" name="wiki.mutt.org"> に書いてある。必ずしも即座に反応があるわけではないので、 「だれかいる?」というような質問をせず、だまって相談し、しばらく待つべし、 とのこと。日本語の Mutt チャンネルはどこかにあるのだろうか……。) <sect1>USENET <p> ニューズグループ <htmlurl url="news:comp.mail.mutt" name="comp.mail.mutt"> を見てください。 <sect1>Copyright (著作権) <p> Mutt is Copyright (C) 1996-2000 Michael R. Elkins <me@cs.hmc.edu> and others This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. <p>(参考訳)<p>このプログラムはフリーソフトウェアです。Free Software Foundation による GNU General Public License のヴァージョン 2 もしくはそれ以降のヴァージョン (自由選択) のいずれかに従う限り、自由に変更および再配布できます。<p>このプログラムは役に立つことを願って配布されていますが、「まったく無保証」です。商品能力や特定の目的への適性について、暗黙の保証さえありません。詳細は GNU General Public License を参照してください。<p>GNU General Public License の文面は、このプログラムに付いてきたはずです。そうでなければ、Free Software Foudation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA に手紙をください。 <sect>開始 <p> この章の目的は Mutt の使い方を概観することです。 ほかにもマニュアルの別の場所で説明されている機能はたくさんあります。 さらには Mutt FAQ や種々のウェブペイジで手に入る情報もあります。 詳しくは <htmlurl url="http://www.mutt.org/mutt/" name="Mutt Page"> を参照してください。 この章では、配布されているままの既定のキー割り当てで説明します。 自分のサイトではシステム管理者が既定値を変えてしまっている かもしれません。どのメニューでも &dquot;?&dquot; を押して 現在のキー割り当てを表示できます。 まず必要なのは Mutt を起動することです。コマンドラインから mutt と入力するだけです。コマンドラインの種々のオプションについては mutt の man ペイジか<ref id="commandline" name="「早見」の章" >を 参照してください。 <sect1>メニュー内で動きまわる <p> 情報はメニューの中に、ELM そっくりの形式で表示されます。 以下は各メニューでの操作に共通のキーの表です。 <tscreen><verb> j と Down next-entry 次の項目へ移動 k と Up previous-entry 前の項目へ移動 z と PageDn page-down 次のペイジに行く Z と PageUp page-up 前のペイジに行く = と Home first-entry 最初の項目に飛ぶ * と End last-entry 最後の項目に飛ぶ q quit 現在のメニューを終了 ? help 現在のメニューのキー割り当てを表示 </verb></tscreen> <sect1>入力領域を編集する<label id="editing" > <p> Muttには内蔵ラインエディタがあり、これが メイルアドレスやファイル名のような文字デイタ入力の主要な手段となっています。 編集中に動きまわるためのキーは Emacs によく似ています。 <tscreen><verb> ^A or <Home> bol 行頭に移動 ^B or <Left> backward-char 一文字戻る Esc B backward-word 一語戻る ^D or <Delete> delete-char カーソル位置の文字を削除 ^E or <End> eol 行末に移動 ^F or <Right> forward-char 一文字進む Esc F forward-word 一語進む <Tab> complete ファイル名やエイリアスを補完 ^T complete-query 問い合わせでアドレスを補完 ^K kill-eol 行末まで削除 ESC d kill-eow 単語の終わりまで削除 ^W kill-word カーソルの前の一語を消す ^U kill-line 一行全体を削除 ^V quote-char 次に入力するキーに引用符を付ける <Up> history-up 履歴から前の入力文字列を呼び出す <Down> history-down 履歴から次の入力文字列を呼び出す <BackSpace> backspace カーソルの前の一文字を削除 Esc u upcase-word 単語を大文字に変換 Esc l downcase-word 単語を小文字に変換 Esc c capitalize-word 単語の最初の文字を大文字に変換 ^G n/a 取消 <Return> n/a 編集を終了 </verb></tscreen> エディタ (<em>editor</em>) の関数を割り当て直すには <ref id="bind" name="bind" > コマンドを使います。 例えば、Delete キーを押したときに、カーソルの乗っている文字ではなく カーソルの前にある文字を消すようにするには、こうしてください。 <tt/bind editor <delete> backspace/ <sect1>メイルを読む ― インデックスとペイジャ <p> 他の多くのメイルクライアントと同様、Mutt ではメイルを読むモウドが二つあります。 第一のモウドはメイルボックス内のメッセイジ一覧です。 これを Mutt では「インデックス」 (index) と呼んでいます。 第二のモウドはメッセイジの内容表示です。これは「ペイジャ」 (pager) といいます。 続く数節で、これらのモウドそれぞれに提供されている関数を説明します。 <sect2>メッセイジインデックス <p> <tscreen><verb> c メイルボックスを変更 ESC c フォルダを読み出し専用モウドに変更 C 現在のメッセイジを別のメイルボックスにコピー ESC C メッセイジを復号化してフォルダにコピー ESC s メッセイジを復号化してフォルダにセイヴ (移動) D パターンに合致するメッセイジを削除 d 現在のメッセイジを削除 F 大事だとして印付け l パターンに合致するメッセイジを表示 N 新しいとして印付け o 現在の整列方法を変更 O メイルボックスを逆順に整列 q 変更を保存して終了 s メッセイジをセイヴ (移動) T パターンに合致するメッセイジにタグ付け t メッセイジのタグを切替 ESC t メッセイジスレッド全体のタグを切替 U パターンに合致するメッセイジの削除を解除 u メッセイジの削除を解除 v 添付ファイルを閲覧 x 変更を破棄して終了 <Return> メッセイジを表示 <Tab> 次の新しいメッセイジに飛ぶ @ 差出人の完全なメイルアドレスを表示 $ 変更をメイルボックスへ保存 / 検索 ESC / 逆順に検索 ^L 画面を消して再描画 ^T パターンに合致するメッセイジのタグをはずす </verb></tscreen> <sect3>ステイタスフラグ <p> メッセイジ送信者と題に加えて、各メッセイジの状態の短い要約が メッセイジ番号のそばに書かれます。 次の「フラグ」の中に適合するものがあれば表示されます。意味は以下の通りです。 <p> <descrip> <tag/D/ 削除メッセイジである (削除予定の印が付いている) <tag/d/ メッセイジ中に、削除予定の添付ファイルがある <tag/K/ PGP 公開鍵を含んでいる <tag/N/ メッセイジが新しい <tag/O/ メッセイジが古い <tag/P/ メッセイジが暗号化されている <tag/r/ メッセイジが返信済み <tag/S/ メッセイジが署名されており、その署名が検証済み <tag/s/ メッセイジが署名されている <tag/!/ メッセイジが重要フラグ付き <tag/*/ メッセイジがタグ付き </descrip> ステイタスフラグの一部は、次のコマンドを使ってオン/オフできます。 <itemize> <item><bf>set-flag</bf> (既定では w) <item><bf>clear-flag</bf> (既定では W) </itemize> <p> さらに、次のフラグはメッセイジが誰にあてられたものなのかを反映するものです。 これは <ref id="to_chars" name="$to_chars" > 変数によって 変更できます。 <p> <descrip> <tag/+/ メッセイジが To で自分だけに宛てられている <tag/T/ メッセイジが To で自分に宛てられているが、他の人にも To か Cc されている <tag/C/ メッセイジが自分に Cc されている <tag/F/ メッセイジが自分発 <tag/L/ メッセイジが購読しているメイリングリストに送られている </descrip> <sect2>ペイジャ <p> 既定では、Mutt は内蔵ペイジャを使ってメッセイジ本文を表示します。 このペイジャは Unix プログラムの <em>less</em> によく似ていますが、 <em>less</em> ほど多機能ではありません。 <tscreen><verb> <Return> 一行下に移動 <Space> 次のペイジ (メッセイジの終わりでは次のメッセイジ) を表示 - 前のペイジに戻る n 次の合致部分を検索 S 引用文を飛ばす T 引用文の表示を切替 ? キー割り当てを表示 / 正規表現 (パターン) を検索 ESC / 正規表現を逆順に検索 \ 検索パターン着色を切替 ^ メッセイジの一番上に飛ぶ $ メッセイジの一番下に飛ぶ </verb></tscreen> 上記に加えて、<em>インデックス</em>の関数の多くがペイジャでも使えます。 例えば <em>delete-message</em> (削除) や <em>copy-message</em> (コピー) などです (これは、外部ペイジャでメッセイジ閲覧するよりも 便利な点の一つです)。 また、内部ペイジャはさらに二つの優れた機能をサポートしています。 第一に、nroff の「標準」シークウェンスを受け付け、太字や下線を解釈します。 シーケンスは連続で「文字、バックスペイス (^H)、同じ文字」なら太字、 「文字、バックスペイス、&dquot;_&dquot;」なら下線付き文字です。 端末がサポートしていれば、これを Mutt はそれぞれ太字と下線付き文字として 表示しようとします。サポートしていなければ bold (太字) と underline (下線) という <ref id="color" name="color"> のオブジェクトを使って色属性か白黒属性を指定できます。 さらに、内部ペイジャは ANSI エスケイプシークウェンスの文字属性を サポートしています。 Mutt がそのシークウェンスを正しい色や文字設定に解釈してくれるのです。 Mutt がサポートしているシークウェンスは以下の通りです。 <p> <tscreen><verb> ESC [ Ps;Ps;Ps;...;Ps m Ps は 0 全属性解除 1 太字あり 4 下線付き 5 点滅あり 7 反転表示 3x 文字色を x に 4x 背景色を x に 色は 0 黒 1 赤 2 緑 3 黄 4 青 5 赤紫 (マゼンタ) 6 青緑 (シアン) 7 白 </verb></tscreen> Mutt はこれらの属性を text/enriched メッセイジの取り扱いに使いますし、 外部の <ref id="auto_view" name="自動閲覧" > スクリプトから 着色の目的で使うこともあります。 <bf>注意:</bf> 画面の色を変更すると、上記と違う色になります。 例えば xterm で color2 に対応する色を変更すると、 緑色のはずの部分に xterm ではその変更した色が使われます。 <sect2>スレッドモウド<label id="threads"> <p> メイルボックスが<em>スレッド</em>で<ref id="sort" name="整列">されているときは、さらにいくつかの関数が <em>インデックス</em>モウドと<em>ペイジャ</em>モウドで利用できます。 <tscreen><verb> ^D delete-thread 現在のスレッドのメッセイジをすべて削除 ^U undelete-thread 現在のスレッドのメッセイジの削除をすべて解除 ^N next-thread 次のスレッドの始点に飛ぶ ^P previous-thread 前のスレッドの始点に飛ぶ ^R read-thread 現在のスレッドを既読にする ESC d delete-subthread 現在のサブスレッドのメッセイジをすべて削除 ESC u undelete-subthread 現在のサブスレッドのメッセイジの削除予定をすべて解除 ESC n next-subthread 次のサブスレッドの始点に移動 ESC p previous-subthread 前のサブスレッドの始点に移動 ESC r read-subthread 現在のサブスレッドを既読にする ESC t tag-thread 現在のスレッドのタグを切替 ESC v collapse-thread 現在のスレッドの折りたたみを切替 ESC V collapse-all すべてのスレッドの折りたたみを切替 P parent-message スレッド中の親メッセイジに飛ぶ </verb></tscreen> <bf>メモ</bf>: スレッドを折りたたむと、スレッドの 最初のメッセイジだけが表示されて、他は隠れます。 これは、一つのスレッドにメッセイジがたくさん含まれていて、 画面にほんの一握りのスレッドしか見えないというときに便利です。 <ref id="index_format" name="$index_format" > の %M を見てください。例えば <ref id="index_format" name="$index_format" > に "%?M?(#%03M)&(%4l)?" という設定を使って、スレッドが折りたたまれているときに 隠れているメイルの数を表示するようにできます。 参照: <ref id="strict_threads" name="$strict_threads" > <sect2>その他の機能 <p><bf>エイリアスの作成</bf> / <bf>create-alias</bf><label id="create-alias" > (既定値: a)<newline> 現在のメッセイジをもとに (あるいは新規プロンプトで) 新しいエイリアスを 作成します。編集を終えると、 <ref id="alias_file" name="$alias_file" > で指定したファイルに <ref id="alias" name="alias" > コマンドが追加されて、あとから使えるようになります。 <bf>注意:</bf> <ref id="alias_file" name="$alias_file" > を指定しただけでは、中の alias を追加することになりません。そのファイルを <ref id="source" name="source" > する必要もあります。 <p><bf>伝統的 PGP のチェック</bf> / <bf>check-traditional-pgp</bf><label id="check-traditional-pgp" > (既定値: ESC P)<newline> この関数は現在のメッセイジを調べて、「伝統的な」方法で PGP の署名・暗号化がなされている内容を探します。 「伝統的」というのは、つまり適切な MIME タグのないもののことです。 技術的なことを言うと、この関数は、PGP デイタを含むパートの MIME content type を一時的に変更します。つまり <ref id="edit-type" name="edit-type" > 関数の効果と似ています。 <p><bf>へッダ間引きの切替</bf> / <bf>display-toggle-weed</bf><label id="display-toggle-weed" > (既定値: h)<newline> <ref id="ignore" name="ignore" > コマンドで指定された ヘッダフィールドの間引き表示を切り替えます。 <p><bf>編集</bf> / <bf>edit</bf><label id="edit" > (既定値: e)<newline> このコマンド (インデックスとペイジャで利用可) は、 現在のメッセイジを「なま」で編集する、つまり、 メイルフォルダにある姿のままで編集するコマンドです。 編集を終えると、変更されたメッセイジは現在いるフォルダに追加され、 オリジナルのメッセイジは削除のために印付けられます。 <bf>content-type の編集</bf> / <bf>edit-type</bf><label id="edit-type" ><newline> (既定値: 添付ファイルメニュー、ぺイジャ、およびインデックスメニューでは ^E, コンポウズメニューでは ^T) このコマンドは添付ファイルの content type を一時的に編集するために使い、 例えば偽装してある文字セットのパラメータを修正したりします。 インデックスやペイジャから使うと最上位の添付ファイルの content type を編集できます。<ref id="attach_menu" name="添付ファイルメニュー">から使えば、どの添付ファイルの content type でも変更できます。この変更は永続的なものではなく、 フォルダ変更によって消えてしまいます。 このコマンドは<ref id="compose_menu" name="コンポウズメニュー" >でも使える ということを覚えておいてください。このメニューでは、 送信する添付ファイルの性質を調整するために使います。 (訳注:この場合は永続的な変更) <p><bf>コマンドの入力</bf> / <bf>enter-command</bf><label id="enter-command" > (既定値: &dquot;:&dquot;)<newline> このコマンドは、通常だと設定ファイルの中に入れるようなコマンドを 動作中の Mutt 上で実行するために使います。 一般的な使い方としては、変数の設定をチェック (訳注:&dquot;:set ?変数名&dquot;) したり、 <ref id="macro" name="macro" > と組み合わせて動作中に設定を変更するために 使ったりします。 <p><bf>公開鍵の抽出</bf> / <bf>extract-keys</bf><label id="extract-keys" > (既定値: ^K)<newline> このコマンドは PGP 公開鍵を現在のメッセイジやタグ付きメッセイジから 抽出して自分の PGP 公開鍵束に追加します。 <p><bf>パスフレイズの忘却</bf> / <bf>forget-passphrase</bf><label id="forget-passphrase" > (既定値: ^F)<newline> このコマンドはパスフレイズをメモリ上から消去します。 パスフレイズを誤入力したときに使います。 <p><bf>メイリングリストへの返信</bf> / <bf>list-reply</bf><label id="list-reply" > (既定値: L)<newline> 現在のメッセイジやタグ付きメッセイジから <ref id="lists" name="lists や subscribe" > コマンドで指定されている正規表現に合致するアドレスを抽出して、 そこに返信するコマンドです。それだけではなく、もし <ref id="honor_followup_to" name="$honor_followup_to" > 変数が設定されていると <tt>Mail-Followup-To</tt> へッダを信用します。 メイリングリストに投稿されたメッセイジに返信するときに これを使えば、返信する元メッセイジの差出人とメイリングリストへ 二重に送信するのを避ける助けになります。 <bf>メッセイジのパイプ</bf> / <bf>pipe-message</bf><label id="pipe-message" > (既定値: |)<newline> 外部 Unix コマンドの入力を要求して、現在のメッセイジやタグ付き メッセイジをそこにパイプします。 <ref id="pipe_decode" name="$pipe_decode" >, <ref id="pipe_split" name="$pipe_split">, <ref id="pipe_sep" name="$pipe_sep">, <ref id="wait_key" name="$wait_key" > 変数が この関数の動作を精密に制御します。 <bf>メッセイジの再送</bf> / <bf>resend-message</bf><label id="resend-message" > (既定値: ESC e)<newline> resend-message を使うと、Mutt は現在のメッセイジを雛型として 新しいメッセイジを作成します。 この関数は「任意のフォルダの復元」と説明するのが最適でしょう。 MIME メッセイジを、もともとのメイル構造を保ったまま転送するのに便利です。 このときに含まれるへッダは <ref id="weed" name="$weed" > 変数に 依存しているということに注意してください。 (訳注:ただ添付ファイルごと転送したいだけであれば、添付ファイルメニューから すべてのファイルにタグを付けて「;f」、すなわち tag-prefix, forward-message をする方が、余計なヘッダが付かなくて良いかもしれない。) この関数は添付ファイルメニューからも利用できます。 これを使えば message/rfc822 パートとして転送されてきたメッセイジを 簡単に再送できます。 <bf>シェルコマンドの実行</bf> / <bf>shell-escape</bf><label id="shell-escape" > (既定値: !)<newline> 外部 UNIX コマンドの入力を要求し、それを実行します。<ref id="wait_key" name="$wait_key" > を使って、コマンドが終了したときに (おそらくコマンドの出力をユーザが読めるようにするため) 何かキーが押されるまで 待つかどうかをコマンドの戻り値で制御するようにできます。 (訳注:$wait_key が no だと、戻り値が 0 以外のときのみ キー入力を待つ。) <bf>引用文表示の切替</bf> / <bf>toggle-quoted</bf><label id="toggle-quoted" > (既定値: T)<newline> メッセイジ本文の表示中に、<em>ペイジャ</em>は <ref id="quote_regexp" name="$quote_regexp"> 変数を使って引用文を検出します。 この関数はメッセイジ中の引用部分を表示するかどうかを切り替えます。 特に、返事だけに興味があるのに大量の引用文があって邪魔だというようなときに 役に立ちます。 <bf>引用文をとばして移動</bf> / <bf>skip-quoted</bf><label id="skip-quoted" > (既定値: S)<newline> 内部ペイジャにおいて、この関数は、 引用文の行のあとの非引用文の行に移動します。 <sect1>メイルを送信する <p> 以下のコマンドがメイル送信のために<em>インデックス</em>で利用できます。 <tscreen><verb> m compose 新規メッセイジを作成 r reply 差出人へ返信 g group-reply 受信者全員へ返信 L list-reply メイリングリストのアドレスへ返信 f forward メッセイジを転送 b bounce メッセイジを中継 (再送) ESC k mail-key だれかに PGP 公開鍵を送信 </verb></tscreen> メッセイジの中継は、指定した宛先に「あるがまま」のメッセイジを送信します。 メッセイジの転送は、転送するメッセイジにコメントを付けたり変更したりできます。 これらに関しては次の節 <ref id="forwarding_mail" name="「メイルを転送・中継する」" > で詳しく論じられています。 上記のコマンドを使うと Mutt はコンポウズ (<em>compose</em>) メニューに入り、 &dquot;To:&dquot; ヘッダフィールドに入れる宛先の入力を促します。 次にメッセイジの &dquot;Subject:&dquot; フィールドを聞いてきますが、 メッセイジの返信や転送のときは既定値が入っています。 このとき Mutt がどう質問するのかを変更するには、 <ref id="askcc" name="$askcc" >, <ref id="askbcc" name="$askbcc" >, <ref id="autoedit" name="$autoedit" >, <ref id="fast_reply" name="$fast_reply" > を参照してください。 それから Mutt はメッセイジ本文に対して <ref id="editor" name="エディタ ($editor)" > を起動します。<ref id="edit_headers" name="$edit_headers" > 変数が設定されているときは、 メッセイジの上にヘッダもあります。 メッセイジには、返信するメッセイジが整列の順に取り込まれ、それぞれに適切な <ref id="attribution" name="由来 ($attribution)" >, <ref id="indent_string" name="引用文字列 ($indent_string)" >, <ref id="post_indent_string" name="引用終了文字列 ($post_indent_string)" > が付きます。メッセイジ転送時、<ref id="mime_forward" name="$mime_forward" > 変数が設定されていなければ、 転送するメッセイジのコピーも本文に取り込まれます。また、 <ref id="signature" name="署名ファイル ($signature)" > を指定してあれば、 そのファイルも付加されます。 送信メッセイジの本文を編集し終えると、<em>コンポウズ</em>メニューに戻ります。 以下の選択肢があります。 <tscreen><verb> a attach-file ファイルを添付 A attach-message メッセイジにメッセイジを添付 ESC k attach-key PGP 公開鍵を添付 d edit-description 添付ファイルの内容説明を編集 D detach-file 添付ファイルをはずす t edit-to To フィールドを編集 ESC f edit-from From フィールドを編集 r edit-reply-to Reply-To フィールドを編集 c edit-cc Cc フィールドを編集 b edit-bcc Bccフィールドを編集 y send-message メッセイジを送信 s edit-subject 題名を編集 S smime-menu S/MIME オプションを選択 f edit-fcc &dquot;Fcc&dquot; メイルボックスを指定 p pgp-menu PGP オプションを選択 P postpone-message メッセイジを次回まで延期 q quit メッセイジ送信を中断 (または中止) w write-fcc メッセイジをフォルダに書き込む i ispell 綴りを確認 (利用可能なシステムならば) ^F forget-passphrase メモリからパスフレイズを拭い去る </verb></tscreen> <bf>注意:</bf> attach-message 関数は、添付したいメッセイジのあるフォルダを 入力するよう促します。そこのフォルダでメッセイジにタグを付ければ、 そのメッセイジを送信メッセイジに添付できます。(訳注:タグを付けたあとは q でコンポウズメニューに戻れる。) このフォルダにいるときは新規メッセイジ作成や返信、転送などの操作が できないということに注意してください。<ref id="status_format" name="$status_format" > に %r があれば、 それが A に変わって、メッセイジ添付 (attach-message) モウドにいることを示します。 <sect2>メッセイジヘッダを編集する <p> 送信メッセイジのヘッダを編集するときには、 いくつか特別な機能が利用できます。 <tt/Fcc:/ <em>ファイル名</em><newline> を指定すると、あたかも<em>コンポウズ</em>メニューで <em>edit-fcc</em> 関数を使ったかのように<em>ファイル名</em>を扱います。 また、<newline> <tt/Attach:/ <em>ファイル名</em> [ <em>内容説明</em> ]<newline> を指定してメッセイジにファイルを添付することもできます。 ここで <em>ファイル名</em> は添付するファイルで、 <em>内容説明</em> は添付ファイルの説明に使う付加的な文字列です。 メッセイジに返信するときにヘッダフィールドから <em>In-Reply-To:</em> フィールドを削除すると Mutt は <em>Reference:</em> フィールドを生成しません。 このようにして新規のメッセイジスレッドを作成することができます。 <ref id="edit_headers" name="edit_headers" > も参照してください。 <sect2>Mutt で PGP を使う <p> PGP を使いたい場合は <tt/Pgp:/ [ <tt/E/ | <tt/S/ | <tt/S/<em/<id>/ ] <newline> を指定してください。&dquot;E&dquot; は暗号化、&dquot;S&dquot; は署名、 &dquot;S<id>&dquot; は指定した鍵で署名します。 鍵は <ref id="pgp_sign_as" name="$pgp_sign_as" > で 恒久的に設定できます。 メッセイジを PGP で暗号化するよう Mutt に言うと、 メッセイジを送信しようとするときに鍵選択プロセスを通るよう指示されます。 Mutt は、信用できるユーザ ID があってメッセイジ宛先のメイルアドレスに合致する鍵 については何も尋ねません。 しかしながら、鍵が複数あったり、ユーザ ID フィールドの信用度が弱かったり、 合致する鍵がひとつも見つからないという状況もありえます。 こういう場合には、鍵を選択できる一覧のメニューに行かされます。 そのメニューを終了したり、合致する鍵を Mutt が見つけられなかったりすると、 ユーザ ID の入力を促されます。普段どおり、このプロンプトは <tt>^G</tt> を使って中止できます。そうすると Mutt はコンポウズ画面に戻ります。 正しく鍵選択を完了すると、そのメッセイジは 選択した公開鍵を使って暗号化され送信されます。 鍵選択メニューの項目 (<ref id="pgp_entry_format" name="$pgp_entry_format" > も参照) の ほとんどのフィールドの意味は明白ですが、 能力 (capabilities), フラグ (flags), 信用度 (validity) のフィールドについて 少し説明しておいても良いでしょう。 フラグシークウェンス (%f) は以下のフラグのいずれかに展開されます。 <tscreen><verb> R 鍵は破棄されており、使えない X 鍵は期限切れになっており、使えない d 自分で鍵を使用不可に印付けた c 未知の重要な自己署名パケットがある </verb></tscreen> 能力フィールド (%c) は、鍵の能力を表わす二文字シークウェンスに展開されます。 第一の文字は暗号化能力です。 マイナス (<bf/-/) は暗号化に使えないという意味です。 ドット (<bf/./) はいずれかのユーザ ID の署名鍵として印付けられているけれども 暗号化にも使えるという意味です。&dquot;<bf>e</bf>&dquot; の文字は 暗号化 (encryption) に使えるという意味です。 第二の文字は鍵の署名能力を表しています。こちらもやはり、 &dquot;<bf/-/&dquot; は「署名用ではない」という意味で、&dquot;<bf/./&dquot; はあるユーザ ID の暗号化鍵として印付けられているという意味、 &dquot;<bf/s/&dquot; は署名に使えるという意味です。 最後に、信用度フィールド (%t) は ユーザ ID がどれほどしっかり確証されているかを示します。 疑問符 (<bf/?/) は信用度が未定義だという意味で、 マイナス (<bf/-/) は信用できない関係、 スペイス文字は部分的に信用できる関係、 プラス (<bf/+/) は完全な信用度を表しています。 <sect2>匿名メッセイジを Mixmaster 経由で送信する <p> Mutt を Mixmaster 匿名リメイラ (remailer) と共働するよう 設定してあるかもしれません。(訳注:日本では法律に抵触するかもしれない。) Mixmaster はリメイラのチェインを使って匿名でメッセイジを送信できます。 Mutt の Mixmaster サポートは Mixmaster version 2.04 (beta 45 が最新のようです) と 2.03 に対するものです。これ以前のヴァージョンと、これ以降の version 3 beta と呼ばれるヴァージョン (2.9b23 が最新のようです) は サポートしていません。 Mixmaster を使うにはいくつかの制限に従わなくてはなりません。 最も重要なのは <tt/Cc/ と <tt/Bcc/ へッダを使えないということです。 Mutt から Mixmaster を使うには、まずコンポウズメニューで mix 関数を使って リメイラチェインを選ばなくてはなりません。 チェイン選択画面はふたつの部分に分かれています。 上の (広い方の) 部分では使えるリメイラの一覧を見ることができます。 下の部分では現在選択されているリメイラチェインを参照できます。 このチェインの中を <tt>chain-prev</tt> 関数と <tt>chain-next</tt> 関数を使って渡り歩けます。 この関数は既定では左右の矢印キーと <tt>h</tt> と <tt>l</tt> キーに割り当てられています (vi のキーバインドを考えてください)。 新しいリメイラを現在のチェイン位置に挿入するには <tt>insert</tt> 関数を使ってください。 リメイラを現在のチェイン位置の後に追加するには <tt>select-entry</tt> か <tt>append</tt> を使ってください。 <tt/delete/ 関数を使ってチェインから項目を消すこともできます。 最後に、メニューをそのまま抜けて変更を破棄するか、 (既定値では) リターンキーを押して承認 (<tt>accept</tt>) してください。 リメイラごとに持っている能力が違うということに注意してください。 その能力はリメイラメニューの %c の項目で表示されています (<ref id="mix_entry_format" name="$mix_entry_format" > を参照してください)。 一番重要なのは大文字の &dquot;M&dquot; で示される &dquot;middleman&dquot; 能力です。 これは問題のリメイラが、チェインの最終要素にはなれないとはいえ、 他の mixmaster リメイラにメッセイジを転送することはできるという意味です。 他の能力の詳細については Mixmaster の文書を見てください。 <sect1>メイルを転送・中継する<label id="forwarding_mail" > <p> 中継と転送は、既存メッセイジを自分で指定した宛先に送信できる機能です。 メッセイジの中継とは、コピーを別のアドレスに送信することですが、 その際、あたかもそこが元々の宛先であるかのように送信する方法で <ref id="sendmail" name="sendmail" > コマンドを使います。 一方、メッセイジの転送は、再送の前にメッセイジを変更できます (例えばコメントを加えるなど)。 既定では次のキーが割り当てられています。 <tscreen><verb> f forward メッセイジを転送 b bounce メッセイジを中継 (再送) </verb></tscreen> 転送は <ref id="mime_forward" name="$mime_forward" > 変数の値によって、オリジナルのメッセイジを新規メッセイジの本文に (それとわかるように示す行で囲んで) 取り込むか、もしくは MIME 添付ファイルとして取り込みます。 添付ファイルをペイジャのように復号化するかどうかは、それぞれ <ref id="forward_decode" name="$forward_decode" > 変数と <ref id="mime_forward_decode" name="$mime_forward_decode"> 変数で制御できます。どちらの転送方法が良いかは内容によります。 そのため <em>$mime_forward</em> は四択オプション (quadoption) になっていて、例えば &dquot;ask-no&dquot; にすることができます (訳注: ask-no は「質問の際に Return だけ入力したときは no とみなす」 という意味)。 <ref id="mime_forward" name="$mime_forward" > が設定されていない限り、へッダの取り込みはその時点の <ref id="weed" name="$weed" > 変数の設定によって制御されます。 転送のためのメッセイジ編集は、新規送信や返信と同じ手順に従います。 <sect1>メイルを延期する<label id="postponing_mail" > <p> たまに、メッセイジをすでに書き始めたものの、 送信は後にしたいということがあります。 <em>postpone-message</em> 関数を<em>コンポウズ</em>メニューで 使うと、メイルの本文と添付ファイルは <ref id="postponed" name="$postponed" > 変数で指定されたメイルボックスに格納されます。 これはつまり、Mutt を終了して次回また起動したとしても、 そのメッセイジを呼び出せるということです。 メッセイジを延期したあとで再開するには、いくつかの方法があります。 コマンドラインからは &dquot;-p&dquot; オプションが使えますし、 <em>インデックス</em>や<em>ペイジャ</em>から新規作成 (<em>compose</em> 関数) を実行すると、延期したメッセイジがあるときには再開するかどうか聞かれます。 延期メッセイジが複数あるときは、<em>延期 (postponed)</em> メニューが出てきて、 どのメッセイジを再開したいか選択できます。 <bf>注意:</bf> メッセイジに対する返信を延期したならば、返信済みフラグが 更新されるのは返信メッセイジを実際に完成させて送信したときだけだということに 注意してください。しかも、その親メッセイジと同じフォルダにいなければ 状態がきちんと更新されません。 <ref id="postpone" name="$postpone" > という quadoption (四択オプション) についてもご覧下さい。 (訳注: postponed とは違う。末尾の &dquot;d&dquot; に注意!) <sect>設定 <p> 既定の設定 (すなわち初期値) は、そのままでも Mutt が使えるように なっていますが、Mutt を自分の好みにあわせて仕立てたいということもよくあります。 起動したとき、<ref id="commandline" name="コマンドライン" > オプションの &dquot;-n&dquot; が指定されていなければ Mutt は最初に「システム」設定ファイル (システム管理者が設定した既定値) を読み出そうとします。この設定ファイルは多くの場合、 <tt>/usr/local/share/mutt/Muttrc</tt> か <tt>/etc/Muttrc</tt> です (訳注:FreeBSD などでは <tt>/usr/local/etc/Muttrc</tt> も多いと思う)。 次に Mutt はホウムディレクトリの <tt/.muttrc/ というファイルがないか探します。 もしこのファイルが存在せず、ホウムディレクトリに <tt/.mutt/ というサブディレクトリがあれば、<tt>.mutt/muttrc</tt> というファイルを読み込もうとします。 <tt/.muttrc/ は、普段から自分用の<ref id="commands" name="コマンド" >を入れておいて Mutt を設定するためのファイルです。 それに加えて Mutt は、上で説明した既定のファイルの代わりに実行する、 特定ヴァージョンの設定ファイルをサポートしています。例えば システム設定ディレクトリに <tt/Muttrc-0.88/ というファイルがあって Mutt のヴァージョン 0.88 を使っていると、<tt/Muttrc/ ではなく そのファイルが読み込まれます。 ユーザ設定ファイルに関しても同じことが言えます。 ホウムディレクトリに <tt/.muttrc-0.88.6/ というファイルがあると、 ヴァージョン 0.88.6 の Mutt を走らせたときには 既定の <tt/.muttrc/ の代わりにこのファイルを読み込みます。 ヴァージョン番号は、<ref id="commandline" name="コマンドライン">スウィッチの &dquot;-v&dquot; を使ったり、インデックスメニューから <tt/show-version/ のキー (既定値: V) を使ったりして表示されるものと 同じです。 <sect1>初期化ファイルの構文<label id="muttrc-syntax" > <p> 初期化ファイルは一連の「コマンド」から成っています。 ファイルの各行には、ひとつでも複数でもコマンドを入れられます。 複数コマンドを使うときはセミコロン (;) で区切らなければなりません。 <tscreen><verb> set realname='Mutt ユーザ' ; ignore x- </verb></tscreen> ハッシュマーク、別名ポンド記号 (&dquot;#&dquot;) は 「コメント」文字として使われます。これは初期化ファイルへの注釈に使えます。 コメント文字以降の文章はすべて無視されます。例えば <tscreen><verb> my_hdr X-Disclaimer: Why are you listening to me? # ここはコメントです </verb></tscreen> シングルクウォウト (') とダブルクウォウト (&dquot;) を使って、 スペイスその他の特殊な文字を含む文字列を扱えます。 この二種類の引用符の違いは、多くの一般的なシェルプログラムに似ています。 つまり、シングルクウォウトはその字面どおりの (シェル変数にも変換されず、 バックスラッシュでの文字指定 [次の段落を参照] も変換されないままの) 文字列を指定するために使う一方、ダブルクウォウトは、中の文字列を解釈すべきだ ということを示します。 例えば、バックティック (`) はダブルクウォウトの中では解釈されますが、 シングルクウォウトの中では解釈され<bf>ません</bf>。 \ は、その次の文字をそのまま指定 (原語:quote) します。 ちょうど bash や zsh のようなシェルと同じです。 例えば引用符「&dquot;」を文字列の中に入れて使いたいときに 「\」を使って、解釈しない文字どおりの引用符にすることができます。 <tscreen><verb> set realname="Michael \"MuttDude\" Elkins" </verb></tscreen> 「\\」は「\」そのものを意味します。 「\n」と「\r」は通常の C での意味合いと同じで、 それぞれ改行 (LF = linefeed) と復帰 (CR = carriage-return) を意味します。 行末に \ を使えば、コマンドを複数の行に分割できます。 ただし分割地点がコマンド名の途中であってはなりません。 さらには初期化ファイルの中で、一部を Unix コマンドの出力に 置き換えることも可能です。 これはコマンドをバッククウォウト二つ (``) ではさむことによって行なえます。 例えば、 <tscreen><verb> my_hdr X-Operating-System: `uname -a` </verb></tscreen> この `uname -a` の部分は、行を実行する前に「uname -a」という Unix コマンドの 出力で置き換えられます。 ここで注意すべきなのは、初期化ファイルが行指向であるゆえ、 Unix コマンドの出力の最初の行だけにしか置換されないということです。 UNIX 環境変数には、sh や bash といったシェルでやるようにしてアクセスできます。 環境変数の名前の前に &dquot;$&dquot; を付けるのです。 例えばこうです。 <tscreen><verb> set record=+sent_on_$HOSTNAME </verb></tscreen> Mutt が解釈できるコマンドについては、次節以降で説明していきます。 全コマンド一覧は<ref id="commands" name="コマンド早見表" >を見てください。 <sect1>エイリアスを定義・使用する<label id="alias" > <p> 使い方: <tt/alias/ <em>エイリアス</em> <em>アドレス</em> [ , <em>アドレス</em>, ... ] 連絡を取ろうとしている人のアドレスをいちいち思い出したり入力したりするのは、 通常とても面倒なことです。 Mutt では、アドレスに割り当てる短い文字列「エイリアス (alias)」を作成できます。 <bf>注意:</bf> グループに対してエイリアスを作成したい (複数のメイルアドレスを指定したい) 場合は、アドレスを読点 (,) で区切る<bf>必要</bf>があります。 エイリアスを削除するには、こうします。 (&dquot;*&dquot; はエイリアス全部という意味です) <tt/unalias/ [ * | <em>キー</em> <em>...</em> ] <tscreen><verb> alias muttdude me@cs.hmc.edu (Michael Elkins) alias theguys manny, moe, jack </verb></tscreen> 他のメイラとは違い、Mutt は エイリアスを特別のファイルに定義する必要がありません。 コマンド <tt/alias/ は、<ref id="source" name="source" > などで読み込まれるファイルであれば、どこにでも書けます。 したがって、複数のエイリアスファイルを使うこともできますし、 muttrc の中にすべて定義してしまうこともできます。 その一方で、<ref id="create-alias" name="create-alias" > 関数は ひとつのファイルしか使えません。 <ref id="alias_file" name="$alias_file" > 変数 で指定されるファイルだけ (既定では <tt>˜/.muttrc</tt>) です。 しかし、このファイルは特別扱いされるわけではありません。 というのも、Mutt はどのファイルにでもエイリアスを追加できますし、 このファイルもきちんと <ref id="source" name="source" > しなければ 新規エイリアスが有効にならないのです。 例えばこうです。 <tscreen><verb> source /usr/local/share/Mutt.aliases source ~/.mail_aliases set alias_file=~/.mail_aliases </verb></tscreen> エイリアスの使い方は、いつでも Mutt が <em>To:</em> や <em>Cc:</em> といったプロンプトでアドレスの入力を促すときに、 エイリアスを入力するだけです。 また <ref id="edit_headers" name="$edit_headers" > 変数を設定してあれば、エディタでも適切なヘッダにエイリアスを入力できます。 加えて、種々のアドレス入力プロンプトにおいては、Tab を使えば 一部だけ入力したエイリアスから完全なエイリアスに展開させることができます。 合致するものが複数あると、Mutt は合致したエイリアスのメニューを出します。 エイリアスの完全な一覧を表示させるには、書きかけのエイリアスのない状態で Tab を打たなくてはなりません。 例えばプロンプトの最初や、アドレスが複数あることを示すコンマ (&dquot;,&dquot;) の後です。 エイリアスメニューでは、エイリアスを好きなだけ <em>select-entry</em> キー (既定値: RET) で選択してから <em>exit</em> キー (既定値: q) を使ってアドレスのプロンプトに戻れます。 <sect1>既定のキー割り当てを変更する<label id="bind" > <p> 使い方: <tt/bind/ <em/マップ/ <em/キー/ <em/関数/ このコマンドで既定のキー割り当て (キーを押したときに起動する命令) を変更することができます。 <em>マップ</em>は、その割り当てがどのメニューのものなのかを指定します。 複数のマップをコンマ (,) で区切って指定することもできます (ただし空白を入れてはいけません)。 現状で定義されているマップはこうなっています。 <label id="maps"> <descrip> <tag/generic/ これは実際のメニュー名ではなく、ペイジャとエディタ以外の全メニューにおける 最終候補となるものです。Mutt は、キーが実際のメニューで定義されていないとき、 generic の割り当てを使うのです。これによって、関数を複数のメニューのキーに 割り当てることができますので、同じ効果を得るためにいくつも bind を書かなくて済みます。 (訳注:ただし、いちど bind されたキーは noop に bind しても generic を見てくれないので、あまり意味がない。今ではマップを複数指定できるので、 alias,attach,browser,index,compose,postpone,pgp と書く方が確実。) <tag/alias/ エイリアスメニューは、muttrc に定義されている個人的エイリアスの一覧です。 短いエイリアス名から完全なメイルアドレスへの割り当てです。 <tag/attach/ この添付ファイルメニューを使って、受信したメッセイジの添付ファイルを扱います。 <tag/browser/ ブラウザは、ロウカルのディレクトリ構造を閲覧するためにも使いますし、 受信メイルボックスを一覧するためにも使います。 <tag/editor/ このエディタは、ユーザがテキストデイタを入力する一行エディタです。 <tag/index/ インデックスとは、メイルボックスに含まれているメッセイジの一覧です。 (訳注:このマニュアルやソースコウドでは「メインメニュー」とも呼ばれる。) <tag/compose/ コンポウズメニューは、新規メッセイジを送信するときに使われる画面のことです。 <tag/pager/ このペイジャは、メッセイジおよび添付ファイルのデイタや ヘルプ一覧を表示するために使われるモウドのことです。 <tag/pgp/ PGP メニューを使って、送信メッセイジの暗号に使う OpenPGP 鍵を選択します。 <tag/postpone/ 延期メニューはインデックスメニューに似ていますが、作成して送信せず 次回まで保存しておいたようなメッセイジを復元するときに使うものです。 </descrip> <em>キー</em> は割り当てたいキー (または キーシークウェンス = キーの組み合わせ) です。コントロウル文字を指定するには <em>\Cx</em> というキーシークウェンスを使ってください。 この <em/x/ がコントロウル文字です (例えば Control-A を指定するには &dquot;\Ca&dquot; とします)。<em/x/ と <em/\C/ が大文字であるか 小文字であるかは無視されるので注意してください。つまり <em/\CA/, <em/\Ca/, <em/\cA/, <em/\ca/ はすべて等価です。 別の方式は、&dquot;\&dquot; に続く三桁の 8 進数としてキーを指定します (例えば <em/\177/ は <em/\c?/ と等価です)。 さらに、これも <em/キー/ に含められます。 <tscreen><verb> \t タブ (Tab) <tab> タブ (Tab) <backtab> Backtab / Shift-Tab \r キャリッジリターン \n 改行 \e エスケイプ (Esc) <esc> エスケイプ (Esc) <up> 上矢印 (↑) <down> 下矢印 (↓) <left> 左矢印 (←) <right> 右矢印 (→) <pageup> Page Up <pagedown> Page Down <backspace> Backspace <delete> Delete <insert> Insert <enter> Enter <return> Return <home> Home <end> End <space> スペイス <f1> ファンクションキー 1 (F1) <f10> ファンクションキー 10 (F10) </verb></tscreen> <em>キー</em> は、スペイスを含まない限り引用符でくくる必要はありません。 <em>関数</em> は <em>キー</em> が押されたときに取る行動を指定します。 関数すべての一覧については <ref id="functions" name="関数早見表" > を参照して下さい。また、特殊な関数 noop を指定すると、 そのキーシークウェンスへの割り当てをなくします。 (訳注:はじめから割り当てられていないキーは generic が有効だが、 noop に割り当てられたキーは常に何もしない。) <sect1>文字セットのエイリアスを定義する <label id="charset-hook" > <p> 使い方: <tt/charset-hook/ <em/エイリアス/ <em/文字セット/<newline> 使い方: <tt/iconv-hook/ <em/文字セット/ <em/独自の文字セット/ <tt/charset-hook/ コマンドは文字セット (charset) へのエイリアスを定義します。 これは、Mutt の知らない文字セット名が付いたメッセイジを 正しく表示するために使えます。 <tt/iconv-hook/ コマンドは文字セットに対してシステム特有の名前を定義します。 これは、システムの文字変換ライブラリが、文字セットに システム特有のおかしな名前を使うよう主張するときの助けになります。 (訳注:拡張的な文字セットを使うときに、mutt-j:02343 のパッチを当てて &dquot;iconv-hook 標準的なセット名 拡張セット名&dquot; というような使い方も可能。) <sect1>メイルボックスに基づいて変数を設定する<label id="folder-hook" > <p> 使い方: <tt/folder-hook/ [!]<em/パターン/ <em/コマンド/ 多くの場合、どのメイルボックスを読んでいるかに合わせて 設定を変更できれば便利です。<tt/folder-hook/ コマンドは、 そのようにしてどんな設定コマンドでも実行できる手段を提供します。 <em>パターン</em>は、どのメイルボックスで (読み出す前に) <em>コマンド</em>を実行するかを指定する正規表現です。 メイルボックスが複数の folder-hook に合致したときには muttrc で出て来る順番に実行されます。 <bf>注意:</bf> もし <ref id="spoolfile" name="$spoolfile" > への ショートカットの &dquot;!&dquot; をパターンの最初に使うなら、 正規表現の論理演算子 <em/not/ (否定) と区別するために ダブルかシングルの引用符でくくらなければなりません。 設定はメイルボックスを出るときに復帰<em/しない/ので注意してください。 例えば、実行したいコマンド動作が、読み出すメイルボックスに合わせて 整列方法を変更することだとします。 <tscreen><verb> folder-hook mutt set sort=threads </verb></tscreen> このようにしたとしても、違うメイルボックスを読み出すときに整列方法が 以前の値に復帰するわけではありません。<em/既定/ のコマンドを指定するには &dquot;.&dquot; というパターンを使ってください。 <p> <tscreen><verb> folder-hook . set sort=date-sent </verb></tscreen> <p>(訳者の蛇足:つまり、上記のふたつの folder-hook を組み合わせて使えば、 普段は送信日付で整列するし、&dquot;mutt&dquot; というパターンに 合致するメイルボックスではスレッド整列になる。 &dquot;mutt&dquot; に合致するメイルボックスから 合致しないメイルボックスに移るときに送信日付へ戻すために、 二番目の folder-hook が必要だというわけ。) <sect1>キーボードマクロ<label id="macro" > <p> 使い方: <tt/macro/ <em/メニュー/ <em/キー/ <em/シークウェンス/ [ <em/説明/ ] マクロは、キーひとつで連続作業を実行したいときに便利です。 その<em>メニュー</em>でその<em>キー</em>を押すと、 <em>シークウェンス</em>を入力したのと同様に振る舞うのです。 ですから、よく連続して入力するコマンドがあれば、 マクロを作成してキーひとつでそのコマンドを実行するようにできます。 <em/メニュー/は、マクロを割り当てる<ref id="maps" name="マップ">です。 複数のマップを指定することもできます。 複数メニューをコンマ (,) で区切れば良いのです。 ただし、メニューとコンマの間に空白を使うことはできません。 <em>キー</em>と<em>シークウェンス</em>は<ref id="bind" name="キー割り当て" >と 同じルールで展開されます。ただ、いくつか追加があります。 第一点は、<em>シークウェンス</em>におけるコントロウル文字を <em/ˆx/ とも指定できることです。 カレット (&dquot;ˆ&dquot;) を使うには <em/ˆˆ/ とする必要があります。 第二に、<em/Up/ などの一部のキーを指定したり、 関数を直接起動したりするために <em><キー名></em> と <em><関数名></em> というフォーマットを使えます。 キー名の一覧については<ref id="bind" name="キー割り当ての節" >を 参照してください。関数は<ref id="functions" name="関数早見表" >で 一覧になっています。 マクロに関数名を直接使う利点は、それによって 動作時のキー割り当てと関係なくマクロが動くので、 特定のキー定義をしてあるユーザでなくとも使えるということです。 これでマクロは堅固かつ可搬 (ポータブル) になり、何人かで使うファイル (例えばシステムの Muttrc) の中でマクロを定義するのも容易になります。 (訳注:ここで逆に考えてみれば、関数名を直接指定<em/しない/マクロは、 folder-hook 等で bind を実行するたびに違う結果を得ることができるので 面白いことができるかもしれない。) 必須ではありませんが、説明文を<em/シークウェンス/の後ろに指定できます。 これはヘルプ画面に表示されます。 <bf>注意:</bf> ヘルプ画面に表示されるマクロ定義 (定義されていればですが) は、 自動的に画面の幅に切り取られてしまい、折り返し表示はされません。 <sect1>色と白黒の画面属性を使う<label id="color" > <p> 使い方: <tt/color/ <em/対象/ <em/前景/ <em/背景/ [ <em/正規表現/ ]<newline> 使い方: <tt/color/ index <em/前景/ <em/背景/ <em/パターン/<newline> 使い方: <tt/uncolor/ index <em/パターン/ [ <em/パターン/ ... ]<newline> 端末がカラー表示をサポートしていれば、独自の色構成を創作して 一味ちがう Mutt にすることができます。ある対象 (情報の型) の色を定義するには 前景色<bf/と/背景色の両方を指定しなければなりません (前景だけや背景だけを指定することは不可能です)。 <em>対象</em>は次のどれかになります。 <itemize> <item>attachment (添付ファイル情報) <item>body (メッセイジの本文で<em/正規表現/に合致する部分) <item>bold (メッセイジの本文の太字強調部分) <item>error (Mutt が出力するエラーメッセイジ) <item>header (メッセイジヘッダで<em/正規表現/に合致する部分) <item>hdrdefault (ペイジャにおけるメッセイジヘッダの既定の色) <item>index (メッセイジインデックスで<em/パターン/に合致する部分) <item>indicator (メニューで現在の項目を指し示す矢印もしくはバー [<ref id="arrow_cursor" name="$arrow_cursor"> 参照]) <item>markers (ペイジャで折り返された行の行頭にある &dquot;+&dquot; マーク) <item>message (情報メッセイジ [訳注:エラーでない情報、という意味のように思われる]) <item>normal (普通の部分) <item>quoted (メッセイジの本文で <ref id="quote_regexp" name="$quote_regexp"> に合致する文章) <item>quoted1, quoted2, ... quoted<bf/N/ (何段階か重なっている引用) <item>search (ペイジャでの検索語句の強調) <item>signature (署名) <item>status (モウドに合わせて、メイルボックスやメッセイジに関する情報を表示する行) <item>tilde (ペイジャの空行を埋める &dquot;˜&dquot; の部分) <item>tree (メッセイジインデックスと添付ファイルメニューで描かれる スレッドトゥリー) <item>underline (メッセイジ本文の下線つきパターンを強調する [訳注:カラーでは下線を使えないのでこれで代用する] ) </itemize> <em>前景</em>と<em>背景</em>には以下のどれかを使えます。 <itemize> <item>white <item>black <item>green <item>magenta <item>blue <item>cyan <item>yellow <item>red <item>default <item>color<em/x/ </itemize> <em>前景</em>には先頭に bright というキーワードを付けて 太字にすることもできます (例えば brightred)。 端末がサポートしていれば、特別なキーワードである <em/default/ を 透明色として使えます。また <em/brightdefault/ という値も有効です。 Mutt が <em/S-Lang/ ライブラリにリンクされていれば、 透明色が正しく動作するように <em/COLORFGBG/ 環境変数を 端末の既定色として設定しておく必要もあります。 例えば (Bourne 系シェルの場合) こうです。 <tscreen><verb> set COLORFGBG="green;black" export COLORFGBG </verb></tscreen> <bf>注意</bf>: この変数を設定するとき、<em/S-Lang/ ライブラリでは <em/white/ や <em/yellow/ を使わず、白には <em/lightgray/, 黄色には <em/brown/ というキーワードを使う必要があります。 <bf>注意</bf>: uncolor コマンドは index 対象にのみ適用できます。 これは項目をリストから消去します。 消去するには<bf/必ず/ color コマンドで指定したのと同じパターンを指定 しなければなりません。&dquot;*&dquot; というパターンは特別な印で、 color index のリストを全項目消去することを意味します。 Mutt は <em>color0</em>, <em>color1</em>, ..., <em>color</em><bf>N-1</bf> (<bf/N/ は端末でサポートされている色の数) といったキーワードも認識できます。 これは、画面の色を (例えば xterm の color2 に関連付けてある色を変更したりして) 割り当て直したときに有用です。色名が通常の意味を失ってしまうからです。 端末がカラー表示をサポートしていなくとも、画面属性を &dquot;mono&dquot; コマンドの使用によって変更することが可能です。 使い方: <tt/mono/ <it/<対象> <属性>/ [ <em/正規表現/ ]<newline> 使い方: <tt/mono/ index <em/属性/ <em/パターン/<newline> 使い方: <tt/unmono/ index <em/パターン/ [ <em/パターン/ ... ]<newline> <em>属性</em>の部分は以下のどれかです。 <itemize> <item>none <item>bold (太字) <item>underline (下線) <item>reverse (反転) <item>standout (点滅等 [語義:くっきりと見やすい]) </itemize> <sect1>不要なメッセイジヘッダを無視 (間引き) する <label id="ignore" > <p> 使い方: <tt/[un]ignore/ <em/パターン/ [ <em/パターン/ ... ] 多くのメッセイジには、自動処理システムによって付加された、すなわち、 画面に表示させても役に立つとは思えないようなヘッダフィールドが たくさん付いています。 このコマンドで、普段は見ないでいたいヘッダフィールドを指定することができます。 ヘッダフィールド名全体を指定する必要はありません。 例えば &dquot;ignore content-&dquot; は &dquot;content-&dquot; で始まるヘッダフィールドをすべて無視します。 以前に追加した項目をリストから外すには &dquot;unignore&dquot; コマンドを 使ってください。&dquot;unignore&dquot; コマンドは、指定したパターンの ヘッダフィールドを表示させます。例えば &dquot;ignore x-&dquot; としているとき、&dquot;unignore x-mailer&dquot; で x-mailer: を表示することができます。 &dquot;unignore *&dquot; は無視リストから全項目を消去します。 以下は一例です。 <tscreen><verb> # Sven の冷徹なヘッダ間引き設定 ignore * unignore from date subject to cc unignore organization organisation x-mailer: x-newsreader: x-mailing-list: unignore posted-to: </verb></tscreen> <sect1>代替アドレス<label id="alternates"> <p> 使い方: <tt/[un]alternates/ <em/正規表現/ [ <em/正規表現/ ... ]<newline> Mutt は種々の関数において、自分で送信したメッセイジか 他人から受信したメッセイジかに応じて違う扱い方をします。 例えば、かつて自分が別の団体へ送信したメッセイジに返信を書くとき、 Mutt は自動的にその元メッセイジの宛先へ返事を送るよう提案します。 多くの場合、自分に返事を書くなどということは意味をなさないからです。 (<ref id="reply_to" name="$reply_to"> 参照。) 多くのユーザは複数の異なるアドレスでメイルを受信します。 この場合 Mutt の機能をフル活用するには、どのアドレスで自分がメイルを 受信するのかを Mutt が理解できるようにしなくてはなりません。 これこそが <tt/alternates/ コマンドの目的とするところです。 このコマンドは正規表現のリストを受け取り、それらを使って、 自分がメイルを受信するアドレスを識別するのです。 <tt/unalternates/ コマンドを使えば、<tt/alternates/ のパターンに 例外を作ることができます。あるアドレスが <tt/alternates/ コマンドに 該当していて、しかしそれを自分のではないことにしたい場合には、 詳細なパターンを <tt/unalternates/ コマンドで指定することができるのです。 <tt/alternates/ のリストから正規表現を削除するには <tt/unalternates/ コマンドで完全に同一の <em/正規表現/ を指定します。 同様に、<tt/alternates/ コマンドの <em/正規表現/ が <tt/unalternates/ のリストにある項目と同じであれば、その <tt/unalternates/ の項目は 削除されます。もし <tt/unalternates/ の <em/正規表現/ が「*」であれば、 <tt/alternates/ の <em/全ての項目/ が削除されます。 <sect1>メイリングリスト<label id="lists" > <p> 使い方: <tt/[un]lists/ <em/正規表現/ [ <em/正規表現/ ... ]<newline> 使い方: <tt/[un]subscribe/ <em/正規表現/ [ <em/正規表現/ ... ] Mutt には<ref id="using_lists" name="メイリングリストの扱い" >に関する 優れた機能が幾つかあります。その益にあずかるには、 どのアドレスがメイリングリストに属するのか、 そして自分がどのメイリングリストを講読しているのかを指定しなければなりません。 そうすれば、<ref id="list-reply" name="list-reply" > 関数は 既知のメイリングリストすべてに動作します。 そのうえ、購読しているリストにメッセイジを送るときには Mutt が Mail-Followup-To へッダを付けて、返信を自分のアドレスにも送ることのないよう 他の人のメイルユーザエイジェント (原語:Mail User Agents = MUA) に 伝えてくれます。 ただ、Mail-Followup-To へッダは非標準的な拡張であって、すべての MUA でサポートされているわけではないことに注意してください。 このへッダを付けても、リストのメッセイジが自分宛てに CC: で来るのを防ぐ 防弾チョッキにはなりません。 Mail-Followup-To へッダの生成は設定変数 <ref id="followup_to" name="$followup_to" > によって制御されることも 覚えておいてください。 さらに正確に言うと、Mutt が管理しているのは、 既知および購読中のメイリングリストのアドレスを表すパターンのリストです。 購読しているメイリングリストはすべて既知になります。 あるメイリングリストを既知であるということにするには lists コマンドを使ってください。 購読中にするには subscribe コマンドを使います。 どちらのコマンドにも正規表現を使えます。 例えば、Mutt のバグトラッキングシステムにおける 各バグレポートのアドレスに送信されたメッセイジを、 メイリングリストのメイルであるということにするには &dquot;subscribe [0-9]*@bugs\.guug\.de&dquot; とすれば良いわけです。 多くの場合は、単にリストのメイルアドレスの一部分を指定するだけで十分です。 十分な長さでアドレスを指定して、あいまいさをなくしてください。 例えば、Mutt のメイリングリストを購読していれば <em>mutt-users@mutt.org</em> に宛てられたメイルを受信することになります。 それで、このアドレスがメイリングリストだということを Mutt に教えるには、 初期化ファイルに &dquot;lists mutt-users&dquot; を追加できます。 これを購読していることを Mutt に教えるには、代わりに &dquot;subscribe mutt-users&dquot; を追加してください。 万一 <em>mutt-users@example.com</em> というアドレスの人からメイルを 受け取ることがあるなら、&dquot;lists mutt-users@mutt\\.org&dquot; か &dquot;subscribe mutt-users@mutt\\.org&dquot; を使って、実際にリストから来たメイルにだけ一致させることができます。 unlists コマンドは、既知と購読中のメイリングリストのリストから 項目を消去するために使います。項目をすべて消去するには &dquot;unlists *&dquot; を使って下さい。 メイリングリストを、購読中のメイリングリストのリストからは消去しつつ、 既知のメイリングリストのリストに残しておくためには、 &dquot;unsubscribe&dquot; を使ってください。 <sect1>複数のスプールメイルボックスを使う<label id="mbox-hook" > <p> 使い方: <tt/mbox-hook/ [!]<em/パターン/ <em/メイルボックス/ このコマンドは、終了時やフォルダ変更時に、 既読メッセイジを特定のメイルボックスから違うメイルボックスへと、 自動で移動させるのに使います。 <em/パターン/は「スプール」のメイルボックスとして扱うメイルボックスを指定する 正規表現で、<em/メイルボックス/は、既読時にメイルをどこにセイヴ (移動) すべきかを指定します。 一部の <em/hook/ コマンドと違って、<em/最初に/合致したパターンだけが 使われます (既読メイルを一度に複数のメイルボックスへセイヴ [移動] することは できません)。 <sect1>メイルを受信するメイルボックスを定義する<label id="mailboxes" > <p> 使い方: <tt/mailboxes/ [!]<em/ファイル名/ [ <em/ファイル名/ ... ] このコマンドは、メイルを受信することがあるフォルダを指定します。 指定したフォルダは、新着メッセイジがあるかどうかチェックされることになります。 既定では、このフォルダのうちのいくつに新着メッセイジがあるかを、 メインメニュー (訳注:インデックスメニュー) のステイタス行が表示します。 <p> フォルダ変更時に<em>スペイス</em>を押すと、新着メイルのあるフォルダを 次々に表示します。<!-- 西岡氏か人見氏による cycle through の訳。うまい! --> <p> ディレクトリブラウザで TAB キーを押すと、 <tt/mailboxes/ コマンドで指定したファイルを表示するメニューが出ます。 コマンドラインから <tt/-y/ オプション付きで起動されると、 Mutt は自動的にこのモウドに入ります。 &dquot;unmailboxes&dquot; コマンドを使って、メイルを受信するフォルダの リストから項目を削除できます。すべて削除するには &dquot;unmailboxes *&dquot; を使います。 <p> <bf>注意:</bf> 新着メイルは、最終変更時刻と最終アクセス時刻との比較によって 検出されます。<tt/biff/ や <tt/frm/ のようなユーティリティや、 メイルボックスにアクセスするその他のプログラムがアクセス時刻を 適切に再設定しなければ、そのメイルボックスでは Mutt が新着メイルを 検出できなくなってしまいます。 バックアップツールもまた、アクセス時刻を更新してしまう一般的な原因です。 <p> <bf>注意:</bf> <tt/mailboxes/ コマンド中のファイル名は コマンド実行時に解決されますので、<ref id="shortcuts" name="ショートカット文字"> (&dquot;=&dquot; や &dquot;!&dquot; など) を含んでいるなら、その文字に影響する変数 (<ref id="folder" name="$folder"> や <ref id="spoolfile" name="$spoolfile" >など) の定義は <tt/mailboxes/ コマンドの 前に実行すべきです。 <sect1>ユーザ定義へッダ<label id="my_hdr" > <p> 使い方:<newline> <tt/my_hdr/ <em/文字列/<newline> <tt/unmy_hdr/ <em/フィールド/ [ <em/フィールド/ ... ] &dquot;my_hdr&dquot; コマンドで 自分独自のヘッダフィールドを創作できます。 このヘッダフィールドは送信するメッセイジすべてに付加されます。 例えば送信メッセイジすべてに &dquot;Organization:&dquot; ヘッダフィールドを 付加したいのであれば、 <quote> my_hdr Organization: 大会社 (株)<!-- A Really Big Company, Anytown, USA --> </quote> というコマンドを <tt/.muttrc/ に入れればいいのです。 <bf>注意:</bf> キーワードとコロン (&dquot;:&dquot;) の間に スペイスを入れることは許され<em/ません/。 電子メイルの規格 (RFC822 [訳注:現在は 2822 か]) で、 そこにスペイスを入れるのは違反だと言われています。 それで Mutt はその規則を強制するというわけです。 単独のメッセイジにヘッダフィールドを付加したい場合は、 <ref id="edit_headers" name="$edit_headers" > 変数を 設定しておくか、送信メニュー (訳注:コンポウズメニューのことか) で <em/edit-headers/ 関数 (既定値: E) を使うかのいずれかによって、 メッセイジの本文と一緒にヘッダを編集できます。 ユーザ定義のヘッダフィールドを消去するには &dquot;unmy_hdr&dquot; コマンドを使ってください。 アスタリスク (&dquot;*&dquot;) を指定して すべてのヘッダフィールドを消去することもできますし、 消去するフィールドを指定することもできます。 例えば、&dquot;To&dquot; と &dquot;Cc&dquot; ヘッダフィールドを すべて削除するには、こうすればよいのです。 <quote> unmy_hdr to cc </quote> <sect1> メッセイジ閲覧時のヘッダの順序を定義する<label id="hdr_order" > <p> 使い方: <tt/hdr_order/ <em/ヘッダ1/ [ <em/ヘッダ2/ <em/ヘッダ3/ ... ] このコマンドによって、 メッセイジ閲覧時に Mutt がヘッダを表示する順序を指定できます。 &dquot;unhdr_order *&dquot; は以前に指定したヘッダをすべて 順序リストから解除しますから、システム全体の初期化ファイルによって設定された ヘッダ順序の効果も消去してしまいます。 <tscreen><verb> hdr_order From Date: From: To: Cc: Subject: </verb></tscreen> <sect1>既定のセイヴファイル名を指定する<label id="save-hook" > <p> 使い方: <tt/save-hook/ [!]<em/パターン/ <em/ファイル名/ このコマンドは、メッセイジをセイヴ (移動) するときに使うファイル名の 既定値を上書きするのに使います。 <em/ファイル名/は、<em/正規表現パターン/に合致するアドレスが <em/From:/ のときか、自分が差出人でメッセイジの <em/To:/ が<em/正規表現パターン/ に合致するときに、既定のファイル名として使われます。 (訳注:send-hook, save-hook, fcc-hook, fcc-save-hook には printf風シークウェンスが使えるらしい。% 記号を使った書式については <ref id="index_format" name="$index_format"> と <ref id="status_format" name="$status_format"> を参照。) <em/パターン/の正確な書式の情報については<ref id="pattern_hook" name="「フックにおけるメッセイジの合致」の節" >を参照してください。 例: <tscreen><verb> save-hook me@(turing\\.)?cs\\.hmc\\.edu$ +elkins save-hook aol\\.com$ +spam </verb></tscreen> <ref id="fcc-save-hook" name="fcc-save-hook" > コマンドも参照して下さい。 <sect1>メッセイジ作成時の既定の Fcc: メイルボックスを指定する<label id="fcc-hook" > <p> 使い方: <tt/fcc-hook/ [!]<em/パターン/ <em/メイルボックス/ このコマンドは送信メッセイジを <ref id="record" name="$record" > 以外のメイルボックスに保存するために使います。 Mutt はまず、メッセイジ宛先リストの中で<em/正規表現パターン/を検索して、 最初に合致したものの<em/メイルボックス/を 既定の Fcc: メイルボックスとして使います。 合致するものが見付からなければ <ref id="record" name="$record" > つまり「記録」メイルボックスに保存します。 <em/パターン/の正確な書式の情報については<ref id="pattern_hook" name="「フックにおけるメッセイジの合致」の節" >を参照してください。 例: <tt>fcc-hook [@.]aol\\.com$ +spammers</tt> 上のようにすると、aol.com ドメインに行くことになっているメッセイジは すべて既定で +spammers メイルボックスにコピーが保存されます <ref id="fcc-save-hook" name="fcc-save-hook" > コマンドの節も参照してください。 <sect1>既定のセイヴファイル名と既定の Fcc: メイルボックスを同時に指定する<label id="fcc-save-hook" > <p> 使い方: <tt/fcc-save-hook/ [!]<em/パターン/ <em/メイルボックス/ このコマンドはショートカット (訳注:短縮コマンドのような意味) であり、 同じ引数で <ref id="fcc-hook" name="fcc-hook" > と <ref id="save-hook" name="save-hook" > を両方とも実行するのと等価です。 <sect1>メッセイジの宛先によって設定を変更する<label id="send-hook"><label id="reply-hook"><label id="send2-hook"> <p> 使い方: <tt/reply-hook/ [!]<em/パターン/ <em/コマンド/<newline> 使い方: <tt/send-hook/ [!]<em/パターン/ <em/コマンド/<newline> 使い方: <tt/send2-hook/ [!]<em/パターン/ <em/コマンド/ このコマンドを使って、メッセイジの宛先に基づいて任意のコマンドを実行できます。 <em/パターン/は望みのアドレスに合致する正規表現です。 <em/コマンド/は、<em/パターン/がメッセイジの宛先に合致するときに実行されます。 <tt/reply-hook/ は<em/送信する/メッセイジの代わりに<em/返信/<bf/元/<em/の/ メッセイジに対して検索されます。<tt/send-hook/ は<em/新規/メッセイジにも <em/返信/メッセイジに対しても検索されます。 <bf/注意:/ <tt/reply-hook/ はユーザの設定ファイルに指定されている順番に <bf/関わらず/ <tt/send-hook/ より<bf/先に/検索されます。 <tt/send2-hook/ はメッセイジが変更されるたびに実行されます。 すなわち、編集したか、コンポウズメニューで宛先や題名を変更したときです。 <tt/send2-hook/ は <tt/send-hook/ の後に実行されるので、 例えば <ref id="sendmail" name="$sendmail"> 変数のようなパラメータを 自分の送信アドレスに応じたものとするために使うことができます。 <tt/send-hook/ および <tt/reply-hook/ の各タイプとも、 複数の該当結果が生じたときにコマンドが実行される順番は (そのタイプのフックのうちでは) muttrc に書かれている順です。 (訳注:それで、変数の設定は後に実行されたほうが先の設定を上書きする。) <em/パターン/の正確な書式の情報については<ref id="pattern_hook" name="「フックにおけるメッセイジの合致」の節" >を参照してください。 例: <tt/send-hook mutt &dquot;set mime_forward signature=''&dquot;/ このコマンドの別の典型的な使い方は、署名と出典の言語を 宛先に応じて変更するために <ref id="attribution" name="$attribution" >, <ref id="signature" name="$signature" >, <ref id="locale" name="$locale" > 変数の値を切り換えることです。 <bf>注意</bf>: send-hook は最初に宛先リストができた直後に<em>《一度》</em> 実行されるだけです。返信を書いたり編集したりしてから宛先を追加しても、 send-hook は《実行され<em/ません/》。 また、宛先ヘッダや題名を変える my_hdr コマンドが send-hook から実行されたとき、そのメッセイジには何の影響も与えない ということにも注意してください。(訳注: unmy_hdr 等で変更されなければ、<em/次の/メッセイジには適用される) <sect1>メッセイジ整形前に設定を変更する<label id="message-hook" > <p> 使い方: <tt/message-hook/ [!]<em/パターン/ <em/コマンド/ このコマンドを使って、メッセイジの閲覧や整形の前に、 そのメッセイジに関する情報に基づいて任意の設定コマンドを実行できます。 表示しようとしているメッセイジに<em>パターン</em>が合致していれば <em>コマンド</em>が実行されます。(訳注:無限ループに入らないよう注意!) 複数の合致が生じるときは、muttrc にある順番でコマンドが実行されます。 <em/パターン/の正確な書式の情報については<ref id="pattern_hook" name="「フックにおけるメッセイジの合致」の節" >を参照してください。 例: <tscreen><verb> message-hook ~A 'set pager=builtin' message-hook '~f freshmeat-news' 'set pager="less \"+/^ subject: .*\""' </verb></tscreen> <sect1>宛先の人の暗号鍵を選ぶ<label id="crypt-hook" > <p> 使い方: <tt/crypt-hook/ <em/パターン/ <em/鍵ID/ メッセイジを暗号化するとき、 ある特定の鍵をそのメイルアドレスに自動で割り当てたいと思うかもしれません。 それは宛先の公開鍵が目的のアドレスからは推測できないからであったり、 Mutt の通常の選択をなんらかの理由で上書きする必要があるからであったりします。 crypt-hook コマンドは、特定の宛先へのメッセイジを暗号化するときに使う公開鍵の ID を指定する手段を提供するのです。 ここでは広い意味で「鍵 ID」と言っています。数字の鍵 ID を入れることも できますし、メイルアドレスも使えます。本名でも構いません。 <sect1>キーボードバッファにキーシークウェンスを加える<label id="push" > <p> 使い方: <tt/push/ <em/文字列/ このコマンドは、指名した文字列をキーボードバッファに入れます。この文字列には <ref id="macro" name="macro" > コマンドのシークウェンスのように、 コントロウル文字、キーの名前、関数名を含められます。 これを使って、起動時や特定のフォルダへの移動時に、 複数のコマンドを連続実行することもできます。<!-- run a sequence of commands --> (訳注:これぞ Mutt 最強のコマンド。修得すべし。) <sect1>関数を実行する<label id="exec" > <p> 使い方: <tt/exec/ <em/関数/ [ <em/関数/ ... ] このコマンドは、あらゆる関数の実行に使えます。 関数は<ref id="functions" name="関数早見表" >で一覧にしてあります。 &dquot;exec 関数&dquot; は &dquot;push <関数>&dquot; と等価です。 <sect1>メイルの得点付け<label id="score-command" > <p> 使い方: <tt/score/ <em/パターン/ <em/値/<newline> 使い方: <tt/unscore/ <em/パターン/ [ <em/パターン/ ... ] <tt/score/ コマンドは、<em/パターン/がメッセイジに合致するなら、指定した <em/値/をそのメッセイジの得点に加えます。<em/パターン/は<ref id="patterns" name="「パターン」" >の節に説明してある書式の文字列です (注意: 効率上の理由から、インデックスで扱えない情報を走査するパターン、 例えば <tt>˜b</tt>, <tt>˜B</tt>, <tt>˜h</tt> 等は 使えません)。 <em/値/は正か負の整数です。メッセイジの 最終的な得点は、合致する <tt/score/ コマンド<!-- entry -->すべての合計です。 しかしながら、<em/値/の前に等号 (=) を付けて、特定の score コマンド<!-- entry -->に合致すればそこで計算を止めさせる (訳注:確定させる) ということもできます。負数の最終得点は 0 に丸められます。 <tt/unscore/ コマンドは score コマンドのリストから項目<!-- entry -->を 除去します。<tt/score/ コマンドで指定したのと<bf/同じ/パターンを 指定しなければ除去できません。 &dquot;*&dquot; というパターンは score コマンド<!-- entry -->のリストを すべて消去するという意味の特殊記号です。 <sect1>スパム検出<label id="spam"> <p> 使い方: <tt/spam/ <em/パターン/ <em/書式/<newline> 使い方: <tt/nospam/ <em/パターン/ Mutt には、外部のスパム得点フィルタに対する一般化されたサポートがあります。 自分のスパムパターンを <tt/spam/ と <tt/nospam/ で定義することによって、 外部フィルタが決定したスパム属性にもとづいてメイルを <em/limit/ (表示制限)、<em/search/ (検索)、<em/sort/ (整列) することができるのです。さらに、スパム属性をインデックス画面に 表示することもできます。<tt/%H/ を <ref id="index_format" name="$index_format"> 変数に使うのです。(便利ワザ: <tt/%?H?[%H] ?/ としてみると、スパムタグがメッセイジに定義されている場合 のみ表示される。) はじめの一歩として、外部フィルタのスパムパターンを <tt/spam/ コマンドで 定義します。<em/パターン/ は正規表現で、メイルメッセイジのヘッダに 合致するものであるべきです。メイルボックス中のメッセイジは、 この正規表現に合致すると「スパムタグ」すなわち「スパム属性」を 受け取ります (ただし後述の <tt/nospam/ パターンに合致している場合は除く)。 この「属性」の表示方法は、自分で完全に制御することができます。 その制御をおこなうのは <em/書式/ パラメータです。<em/書式/ は 静的テキストでも構いませんが、<em/パターン/ からの後方参照を含めることも できます。(正規表現の「後方参照」とは、括弧の中に含まれた表現を参照するもの。) <tt/%1/ は正規表現中の最初の後方参照に置換され、<tt/%2/ は 二番目の後方参照に置換されるのです。 複数のスパムフィルタを利用していると、メッセイジに 複数のスパム関連ヘッダが付くことがあります。そこで、<tt/spam/ コマンドのパターンを各々のフィルタのために複数定義することができます。 メッセイジが複数のパターンに合致したとき、 <ref id="spam_separator" name="$spam_separator"> 変数が 文字列 (訳注:空文字列を含む) であれば、そのメッセイジのスパムタグは すべての <em/書式/ 文字列が連結されたものになります。その際、 それぞれの値が <ref id="spam_separator" name="$spam_separator"> 変数で区切られます。 例えば DCC, SpamAssassin, PureMessage を使っているとします。 すると、このようなスパム設定をするかもしれません。 <tscreen><verb> spam "X-DCC-.*-Metrics:.*(....)=many" "90+/DCC-%1" spam "X-Spam-Status: Yes" "90+/SA" spam "X-PerlMX-Spam: .*Probability=([0-9]+)%" "%1/PM" set spam_separator=", " </verb></tscreen> このとき、受信したメッセイジが DCC の Fuz2 チェックサムで many と判定され、 PureMessage でスパム確率が 97% と判定された場合に、そのメッセイジの スパムタグは <tt>90+/DCC-Fuz2, 97/PM</tt> となります。(DCC ヘッダで 「=many」の前の四文字は使用したチェックサムを示しています。この場合は Fuz2 でした。) <ref id="spam_separator" name="$spam_separator"> 変数が解除されていると、<em/spam/ パターンの合致は以前の合致を上書きします。 連結された <em/書式/ 文字列ではなく、最後の合致のみが返されることになります。 スパムタグは、<tt/%H/ を <tt/$index_format/ 変数で使用した際に インデックスへ表示される文字列です。また、<em/search/ (検索) および <em/limit/ (表示制限) 関数で <tt/˜H/ というパターン合致表現が合致する 文字列でもあります。さらに、スパム属性で整列する際に使うカギでもあります。 これは非常に混み入った例でした。ほとんどの人が実際に利用している環境では、 スパムフィルタはひとつだけでしょう。設定が単純であればあるほど、 Mutt の動作を効果的にすることができます。特に整列に関してそう言えます。 一般的に言って、スパムタグで整列する際に Mutt は <em/辞書的/ に、 すなわち、文字列を一文字ずつ英数字順に評価して整列します。しかしながら、 スパムタグがもしも数字で始まっているならば、まず数値順に整列して、 数値が同じ場合にのみ辞書的に整列します。(これは UNIX の <tt/sort -n/ に似ています。) スパム属性が何もないメッセイジ、すなわち、どの <tt/spam/ パターンも合致しなかったメッセイジは、最低の順位で整列されます。 数値がそれに続いて、0 から順に高い順位で整列されます。 最後に数字以外の文字列が整列されます。a は z より低い順位になります。 明らかにスパムタグの整列は、フィルタで強制的に数値を返させることが できれば、概して最も効果的になると言えます。しかし それができない場合でも、Mutt はまずまず有用な動作をするわけです。 <tt/nospam/ コマンドは <tt/spam/ パターンの例外を書くために使います。 もしヘッダが <tt/spam/ コマンドに合致した場合でもスパムタグを付けたくない 条件があるなら、そうしたより詳細なパターンを <tt/nospam/ コマンドで 列挙することができるのです。 <tt/nospam/ に与えられた <em/パターン/ が既存の <tt/spam/ リストにある <em/パターン/ とまったく同一のときには、例外を追加するのではなく <tt/spam/ リストからその項目を消去する効果があります。 同様に、<tt/spam/ コマンドの <em/パターン/ が <tt/nospam/ リストの 項目に合致する場合には、その <tt/nospam/ 項目が消去されます。 もし <tt/nospam/ の <em/パターン/ が &dquot;*&dquot; であれば、 <em/リスト双方のすべての項目/ が消去されます。<tt/spam/ や <tt/nospam/ を <tt/folder-hook/ と組み合わせて使う際にはこれを既定動作にすることでしょう。 <tt/spam/ コマンドと <tt/nospam/ コマンドは、いくつでも好きなだけ 使うことができます。Mutt だけで初歩的なスパム検出をすることも可能です。 例えば <tt/MAILER-DAEMON/ からのメイルをすべてスパムとみなすのであれば、 このように <tt/spam/ コマンドを使うことができるでしょう。 <tscreen><verb> spam "^From: .*MAILER-DAEMON" "999" </verb></tscreen> <sect1>変数を設定する<label id="set" > <p> 使い方: <tt/set/ [no|inv]<em/変数/[=<em/値/] [ <em/変数/ ... ]<newline> 使い方: <tt/toggle/ <em/変数/ [<em/変数/ ... ]<newline> 使い方: <tt/unset/ <em/変数/ [<em/変数/ ... ]<newline> 使い方: <tt/reset/ <em/変数/ [<em/変数/ ... ] このコマンドは<ref id="variables" name="設定変数" >を設定したり解除したり するのに使います。変数には基本的な四つの型があります。boolean (二値), number (数値), string (文字列), quadoption (四値) です。 <em/boolean/ の変数は <em/設定されている/ (真) か <em/設定されていない/ (偽) かのいずれかです (訳注:訳者の気分により、設定 (yes) と解除 (no) という表現も使う)。 <em/number/ 変数には正の整数を割り当てることができます。 <em/string/ 型の変数はいくつかの表示文字 (原語:printable characters, つまりコントロウル文字以外の文字) で構成されます。 スペイスやタブを含むならば引用符で括らなければなりません。 また &dquot;C&dquot; のエスケイプシークウェンス <bf/\n/ と <bf/\t/ を、それぞれ改行とタブの代わりに使用できます。 <em>quadoption</em> 型の変数は、特定の動作について実行前に質問<!-- prompted --> するかどうかを制御したり、既定 (訳注:リターンだけを押したとき) の 動作を指定したりするのに使います。<em>yes</em> という値は、あたかも質問に yes と答えたかのような動作<!-- 実際は action にかかっているわけではないが -->を 自動で引き起こします。それと同様、<em/no/ という値は、no と答えたかのような 動作を引き起こします。<em>ask-yes</em> という値は既定の答えを yes にして 質問しますし、<em>ask-no</em> は既定の答えを no にします。 &dquot;no&dquot; を変数の前に付けると、変数を解除します。 例: <tt>set noaskbcc</tt> <em>boolean</em> 型の変数に関しては、変数名の前に <tt>inv</tt> を付けて 値を切り替えられます (on ⇔ off)。これはマクロを書くときに便利です。 例: <tt>set invsmart_wrap</tt> <tt>toggle</tt> コマンドは、指定した変数すべての頭に自動で <tt/inv/ を付けます。 <tt>unset</tt> は指定した変数すべての頭に <tt>no</tt> を付けるコマンドです。 <em/インデックス/メニューで enter-command 関数を使えば、 変数の名前の前に疑問符を付けることによって、変数の値を問い合わせられます。 <tscreen><verb> set ?allow_8bit </verb></tscreen> この疑問符は、実際には boolean 変数と quadoption 変数にしか 必要ありません。(訳注:ほかは set だけで値を参照できる) <tt>reset</tt> コマンドは与えられた変数すべてをコンパイル時の既定値 (おそらく、このマニュアルに書いてある値) に戻します。 <tt>set</tt> コマンドで変数の前に &dquot;&&dquot; を付けると <tt>reset</tt> コマンドと同じ挙動となります。 <tt/reset/ コマンドには特別な変数 &dquot;all&dquot; が存在し、 これですべての変数をシステムの既定値に戻すことができます。 <sect1>初期化コマンドを別のファイルから読み込む<label id="source" > <p> 使い方: source <it>ファイル名</it> このコマンドで、初期化コマンドを他のファイルから取り込めます。 例えばエイリアスファイルを <tt>˜/.mail_aliases</tt> に配置すれば、 <tt>˜/.muttrc</tt> を (訳注:他ユーザから) 読めるようにしても、 エイリアスは秘密にしておけます。 ファイル名の最初がティルド (&dquot;˜&dquot;) であれば、 自分のホウムディレクトリのパスに展開されます。 ファイル名が縦線 (|) で終わっていれば、指定した<em/ファイル名/のファイルは 実行プログラムとみなされ、そこから入力を読み出します。(例: <tt>source ˜/bin/myscript|</tt>) <sect1>フックを取り除く<label id="unhook" > <p> 使い方: <tt/unhook/ [ * | <em/フック/ ] このコマンドで、それまでに設定してきたフックを流し去ることができます。 あらゆるフックを消すのも &dquot;*&dquot; を引数として与えることによって できますし、<tt>unhook send-hook</tt> のようにして特定のタイプのフックを すべて消すということもできます。 <sect>高度な使い方 <sect1>正規表現<label id="regexp" > <p> Mutt における文字列パターンは、より複雑な<ref id="patterns" name="パターン">における文字列パターンも含めて、すべて正規表現 (regular expressions = regexp) の「POSIX 拡張」文法 (egrep や GNU awk で使われている文法とほぼ同じです) を使って指定しなくてはなりません。 便宜のため、以下にこの文法の簡単な説明を含めました。 検索は、パターンに一つでも大文字があれば文字の大小を意識し、 それ以外は大小を意識しません。&dquot;\&dquot; を 初期化コマンド中の正規表現に使うには &dquot;\\&dquot; とする必要があるので注意してください。 正規表現は一つのパターンで何種類かの文字列を表します。<!-- 意訳すぎ? --> 正規表現は代数表現と同じように、 より小さな式を色々な演算子で組み合わせて構築されます。 正規表現は、「&dquot;」や「'」で囲んだり区切ったりできます。 これは正規表現が空白文字を含む場合に便利です。区切り記号「&dquot;」と「'」の 処理に関するさらに詳細な情報は、<ref id="muttrc-syntax" name="「初期化ファイルの構文」" >の項を参照してください。 そのままの記号として「&dquot;」や「'」に合致させるには、 記号の前に「\」(バックスラッシュ [訳注:半角「¥」が表示される フォントもあるが、英語圏では逆向きスラッシュ]) をつけてください。 基本となる単位は文字ひとつに合致する正規表現です。 すべてのアルファベットと数字を含めて、ほとんどの文字は 自分自身に合致する正規表現です。 特殊な意味を持つメタ文字記号は、前にバックスラッシュを付けることによって 本来の記号に合致します。(訳注:つまり &dquot;.&dquot; に合致する正規表現は &dquot;\.&dquot;) ピリオド &dquot;.&dquot; はどんな文字にでも合致します。 カレット &dquot;ˆ&dquot; とドル記号 &dquot;$&dquot; はそれぞれ、 行の最初と最後という、文字ではない部分に合致するメタ文字です。 文字を &dquot;[&dquot; と &dquot;]&dquot; で囲んだリストは、 その中のどの文字 (一字) にでも合致します。 そのリストの最初の文字がカレット &dquot;ˆ&dquot; であれば、 そのリストに<bf>ない</bf>文字に合致します。 例えば <bf>[0123456789]</bf> は十進数の数字ひとつに合致します。 ある範囲内における最初と最後の文字の間にハイフン &dquot;-&dquot; を置けば、その範囲の ASCII 文字全体を指定できます。 リストの中ではほとんどのメタ文字から特別な意味がなくなります。 &dquot;]&dquot; という記号そのものを含めるには、リストの最初に置きます。 同様に、&dquot;ˆ&dquot; そのものを含めたい場合はリストの最初以外のどこかに 置けば大丈夫です。そしてハイフン記号 &dquot;-&dquot; そのものを含めるにはリストの最後に置くというわけです。 あるクラスの文字は、前もって特定の名前で定義してあります。 文字クラスは、「[:クラスを表すキーワード:]」という構成です。 以下のクラスは POSIX 標準で定められているものです。 <descrip> <tag/[:alnum:]/ アルファベットと数字 <tag/[:alpha:]/ アルファベット <tag/[:blank:]/ スペイスとタブ <tag/[:cntrl:]/ コントロウル文字 <tag/[:digit:]/ 数字 <tag/[:graph:]/ 表示文字であり可視文字でもある文字 (スペイスは表示文字だが不可視。 一方で "a" は表示文字かつ可視な文字) <tag/[:lower:]/ 小文字のアルファベット <tag/[:print:]/ 表示文字 (コントロウル文字でない文字のこと) <tag/[:punct:]/ 記号 (アルファベット、数字、コントロウル文字、空間文字のどれでもない文字のこと) <tag/[:space:]/ 空間文字 (幾つか挙げてみると、 スペイス、タブ、改ペイジといったところ) <tag/[:upper:]/ 大文字のアルファベット <tag/[:xdigit:]/ 16 進数 </descrip> 文字クラスは、文字リストの括弧内の正規表現でのみ有効です。 注意してほしいのは、このクラス名に付いている角括弧はシンボル名の一部であり、 リストを囲む角括弧に加えて、さらに必要になるということです。 例えば <bf>[[:digit:]]</bf> が <bf>[0-9]</bf> と等価です。 さらに二つの特殊シークウェンスを文字リスト中で使えます。 これは非 ASCII 文字セットに適用されるもので、以下のように、 そうした文字セットでは単一のシンボル (照合要素 collating elements と呼ばれる) が、照合や整列において等価な複数の文字列や文字を 象徴することがあります。 <descrip> <tag>照合記号</tag> 照合記号は複数文字の照合要素を &dquot;[.&dquot; と &dquot;.]&dquot; で括ったもの。 例えば ch が照合要素だとすると、<bf/[[.ch.]]/ が この照合要素に合致する正規表現。一方、<bf/[ch]/ だと c または h のどちらかに合致する正規表現ということになってしまう <tag>等価クラス</tag> 等価クラスとは、特定の言語における一連の等価な文字を指す名前のこと。 その名前は &dquot;[=&dquot; と &dquot;=]&dquot; で括る。 例えば e という名前で、アクセント記号付きのものも含めた三種類の e を すべて表わせる。この場合 [[=e=]] は 右下がりアクセントの e (0xE8), 右上がりアクセントの e (0xE9), 普通の e のどれかであれば合致する正規表現である </descrip> 一字に合致する正規表現は、幾つかある繰り返し演算子のうちの いずれかを後に付けることができます。 <descrip> <tag/?/ この記号の前にあるアイテムは、あってもなくても良く、 あっても一回しか合致しない (訳注:0 〜 1 回) <tag/*/ この記号の前のアイテムは 0 回でもそれ以上でも合致する (訳注:0 〜 ∞回) <tag/+/ この記号の前のアイテムは一回以上あれば合致する (訳注:1 〜 ∞回) <tag/{n}/ この前のアイテムは、きっちり <em/n/ 回なら合致する <tag/{n,}/ この前のアイテムは <em/n/ 回以上で合致する (訳注:n 回も含む) <tag/{,m}/ この前のアイテムは <em/m/ 回まで合致する (訳注:0 〜 m 回) <tag/{n,m}/ この前のアイテムは <em/n/ 回以上 <em/m/ 回までなら合致する </descrip> 二つの正規表現を連結することができます。その結果できた正規表現が 合致するのは、それぞれに合致する文字列をその順番に並べたものです。 (訳注:訳が悪いので補足すると、例えば [A-Z][0-9] は、 A3 や B5 といった、大文字アルファベットの次に数字が来るような文字列 に合致する一つの正規表現である、ということ。) 二つの正規表現は中間演算子 &dquot;|&dquot; で連結することもでき、 二つをこのようにつないでできる正規表現は、 いずれかの「子表現」の合致する文字列に合致します。 (訳注:例えば [A-Z]|[0-9] だと、D2 等ではなく C や 0 や R に合致することになり、[A-Z0-9] と等価になる。 a1B2c3 という文字列に対して、[A-Z][0-9] は B2 にのみ合致し、 [A-Z]|[0-9] は 1 にも B にも 3 にも合致する。) 繰り返し演算子は単なる連結よりも優先されます。 連結はというと、こちらは代替表現<!-- 何? -->より優先されます。 子表現にしたい部分を括弧で囲めば、この優先順位を上書きできます。 (訳注:[a-z][0-9]+ は繰り返し演算子の効力が [0-9] にしかなくて、 aaa777 のうち a777 の部分に合致。 これを ([a-z][0-9])+ にすると括弧内全体に効力が及ぶので、 aaa777 に対しては a7 の部分にのみ合致。a7a7a7 なら全体に合致。) <bf>メモ:</bf> Mutt を GNU <em/rx/ パッケイジと共にコンパイルしていれば、 次の演算子も正規表現の中で使えます。 <descrip> <tag/\\y/ 単語が開始または終了する部分 (訳注:単語とスペイスの間の部分など) に合致する <tag/\\B/ 単語の内部 (訳注:文字と文字の間の部分) に合致する <tag/\\</ 単語の開始部分 (訳注:単語の最初の文字とその前のスペイスの間など) に合致する <tag/\\>/ 単語の終了部分 (訳注:最後の文字とそれに続くスペイスの間など) に合致する <tag/\\w/ 単語要員の文字 (アルファベット、十進数字、アンダスコア [下線]) の いずれにも合致する <tag/\\W/ 単語要員でないあらゆる文字に合致する <tag/\\`/ バッファ (文字列) の開始部分に合致する <tag/\\'/ バッファの終了部分に合致する </descrip> とはいえご注意いただきたいのは、 これらの演算子が POSIX で定められていないため、これらを 普段のライブラリで使えるシステムも使えないシステムもあるということです。 <sect1>パターン<label id="patterns" > <p> Mutt コマンドには、パターンを指定して合致したものにだけ適用することの できるものが多数あります (limit, tag-pattern, delete-pattern 等)。 いくつかの方法でメッセイジを選択できます。 <tscreen><verb> ~A 全てのメッセイジ ~b EXPR メッセイジ本文 (body) に EXPR を含むメッセイジ ~B EXPR メッセイジ全体のどこかに EXPR を含むメッセイジ ~c USER USER に CC 送付されているメッセイジ ~C EXPR To: か Cc: に EXPR のあるメッセイジ ~D 削除される (deleted) メッセイジ ~d [MIN]-[MAX] 送信日 ("date-sent") が範囲内にあるメッセイジ ~E 期限切れ (expired) メッセイジ ~e EXPR "Sender" フィールドに EXPR を含むメッセイジ ~F フラグ付き (flagged) メッセイジ ~f USER USER から送られた (from USER) メッセイジ ~g 暗号で署名されているメッセイジ ~G 暗号化されているメッセイジ ~H EXPR EXPR に合致するスパム属性を持つメッセイジ ~h EXPR ヘッダ (header) に EXPR を含むメッセイジ ~k PGP 鍵 (key) を含むメッセイジ ~i ID "Message-ID" フィールドに ID が合致するメッセイジ ~L EXPR EXPR が出したか受けとったか、いずれかのメッセイジ ~l 既知のメイリングリスト (list) へ宛てたメッセイジ ~m [MIN]-[MAX] 番号が MIN から MAX の範囲のメッセイジ *) ~n [MIN]-[MAX] 得点が MIN から MAX の範囲のメッセイジ *) ~N 新着 (new) メッセイジ ~O 古い (old) 未読メッセイジ ~p 自分宛てのメッセイジ (alternates を考慮する) ~P 自分が出したメッセイジ (alternates を考慮する) ~Q 返信済みのメッセイジ ~R 既読 (read) メッセイジ ~r [MIN]-[MAX] 受信日付 "date-received" が範囲内にあるメッセイジ ~S 置き換えられた (superseded) メッセイジ ~s SUBJECT "Subject" フィールドに SUBJECT を持つメッセイジ ~T タグ付き (tagged) メッセイジ ~t USER USER に宛てられた (to USER) メッセイジ ~U 未読 (unread) メッセイジ ~v 折りたたんだスレッドにあるメッセイジ ~x EXPR "References" フィールドに EXPR を含むメッセイジ ~y EXPR "X-Label" フィールドに EXPR を含むメッセイジ ~z [MIN]-[MAX] サイズが MIN から MAX までの範囲にあるメッセイジ *) ~= 重複しているメッセイジ ($duplicate_threads 参照) ~$ 参照されていないメッセイジ (スレッド表示が必要) </verb></tscreen> EXPR, USER, ID, SUBJECT の部分は<ref id="regexp" name="正規表現" >です。 *) <tt/<[MAX]/, <tt/>[MIN]/, <tt/[MIN]-/, <tt/-[MAX]/ という形式も使えます。 <sect2>パターン修飾子 <p> アドレスの「リスト」に合致させる種類のパターン (特に ˜c, ˜C, ˜p, ˜P, ˜t) は、 リストの中に一つでも合致するものがあれば合致してしまうので注意してください。 そのリストの要素すべてに合致する場合に限るには、 パターンの前に ^ を付ける必要があります。 これはドイツの人だけに宛てられたメイルすべてに合致する例です。 <tscreen><verb> ^~C \.de$ </verb></tscreen> <sect2>複雑なパターン <p> 複数の条件を指定することによって論理積 AND が計算されます。 例えば、 <tscreen><verb> ~t mutt ~f elkins </verb></tscreen> これは、宛先のリストに &dquot;mutt&dquot; という語を含み、<bf>かつ</bf> &dquot;From&dquot; ヘッダフィールドに &dquot;elkins&dquot; という語のある メッセイジを選択します。 Mutt は以下の演算子も認識するので、 さらに複雑な検索パターンを作成できます。 <itemize> <item>! -- 論理演算子 NOT (否定) <item>| -- 論理演算子 OR (論理和) <item>() -- グループ化論理演算子 </itemize> ここに、複雑な検索パターンをよく表している例があります。 このパターンは、メッセイジのうち、&dquot;mutt&dquot; を &dquot;To&dquot; および &dquot;Cc&dquot; フィールドに含まず、 かつ &dquot;elkins&dquot; から来ているものすべてを選択します。 <tscreen><verb> !(~t mutt|~c mutt) ~f elkins </verb></tscreen> 次は、空白を正規表現内で使う例です (「'」と「&dquot;」に注目してください)。 これが合致するのは、メイルの題名が &dquot;^Junk +From +Me$&dquot; に合致し、差出人が &dquot;Jim +Somebody&dquot; か &dquot;Ed +SomeoneElse&dquot; であるメッセイジです。 (訳注:「+」は一回以上の繰り返しを表すということを思い出してください。) <tscreen><verb> '~s "^Junk +From +Me$" ~f ("Jim +Somebody"|"Ed +SomeoneElse")' </verb></tscreen> 正規表現に括弧や垂直棒 ("|") があるときは<bf/必ず/ダブルクウォウトか シングルクウォウトで囲まなくてはなりません。それらの記号は Mutt のパターン言語において別の部分を区切るためにも使われるからです。例えば、 <tscreen><verb> ~f "me@(mutt\.org|cs\.hmc\.edu)" </verb></tscreen> これにクウォウトがなかったら、括弧が終わらないことになります。 「<em/˜f me@(mutt\.org/」と「<em/cs\.hmc\.edu)/」という 二つのパターンが OR されることになるのです。これは絶対に間違いですね。 <sect2>日付で検索する <p> Mutt は二種類の日付、すなわち<em>絶対日付</em>と <em>相対日付</em>に対応しています。 <bf>絶対日付</bf>。 日付は<bf>必ず</bf> DD/MM/YY という形式で指定しなければなりません (ただし、月と年は現在の月と年が既定になっており、省略できます)。 正しい日付範囲の例は次のとおり (訳注:limit 関数の例)。 <tscreen><verb> メッセイジの表示を制限するパターン: ~d 20/1/95-31/10 </verb></tscreen> 最小値 (一番目) の日付を省略して &dquot;-DD/MM/YY&dquot; だけ指定すると、 その日付<em>以前</em>のメッセイジがすべて選択されます。 最大値 (二番目) の日付を省略して &dquot;DD/MM/YY-&dquot; と指定すると、 その日付<em>以後</em>のメッセイジがすべて選択されます。 ダッシュ (&dquot;-&dquot;) なしでひとつだけ日付を指定すると、 その日付に送信されたメッセイジだけが選択されます。 <bf>誤差範囲</bf>。 絶対日付には誤差範囲を付けられます。誤差範囲は、 符号 (+ か -), 次に数字、その次に単位という形式で指定します。 <verb> y 年 m 月 w 週 d 日 </verb> 特例として、符号を &dquot;*&dquot; にすることができます。 これは正と負に同じだけ誤差を与えるのと等価です。 例: 2001 年 1 月 15 日の前後二週間ずつのメッセイジを選択するには、 次のようなパターンを使えます。 <tscreen><verb> メッセイジの表示を制限するパターン: ~d 15/1/2001*2w </verb></tscreen> <bf>相対日付</bf>。 このタイプの日付は、現在の日付から 相対的に見たものです。このように指定できます。 <itemize> <item>><em/offset/ (<em/offset/ より長く経過したメッセイジ) <item><<em/offset/ (経過期間が <em/offset/ より短いメッセイジ) <item>=<em/offset/ (ちょうど <em/offset/ だけ経過したメッセイジ) </itemize> <em/offset/ は正の数に以下の単位のいずれかを付けたものです。 <verb> y 年 m 月 w 週 d 日 </verb> 例: 生後一ヵ月未満のメッセイジを選択するには次のようにします。 <tscreen><verb> メッセイジの表示を制限するパターン: ~d <1m </verb></tscreen> <bf>注意</bf>: 検索時に使う日付はすべて<bf>ロウカル</bf>時間に対する 相対日付ですから、<ref id="index_format" name="$index_format" > の設定を変更して <tt/%[...]/ フォーマットを 含むようにしないと、必ずしもインデックスに表示されている日付と <bf>同じではありません</bf>。 <sect1>タグを使う<label id="tags"> <p> 操作を実行するときに、一通ずつ扱うよりも、ひとまとめにしたメッセイジを 一度に扱った方が良いことがあります。 例としては、あるメイリングリスト宛てのメッセイジを別のフォルダにセイヴ (移動) するとか、指定した題名のメッセイジをすべて削除するといったものがあるでしょう。 パターンに合致したメッセイジにタグをつけるには tag-pattern 関数を使います。 これは既定で &dquot;shift-T&dquot; に割り当てられています。 また、個々のメッセイジを手作業で選択するため &dquot;tag-message&dquot; 関数を使うこともできます。こちらは既定で &dquot;t&dquot; に割り当てられています。Mutt のパターン検索の構文については <ref id="patterns" name="「パターン」">の節を参照して下さい。 お望みのメッセイジにタグをつけたら、&dquot;tag-prefix&dquot; 演算子を使えます。 これは既定値では &dquot;;&dquot; (セミコロン) キーです。 &dquot;tag-prefix&dquot; 演算子が使われると、<bf>次の</bf>操作は、 タグの付いたメッセイジすべてに適用されます (そのような使い方の できる操作であれば、ですが)。 もし <ref id="auto_tag" name="$auto_tag"> 変数が セットされていれば、次の操作が自動的にタグ付きメッセイジへ適用されるので、 &dquot;tag-prefix&dquot; 演算子は必要ありません。 <ref id="macro" name="macro"> や <ref id="push" name="push"> コマンドには &dquot;tag-prefix-cond&dquot; 演算子を使うことができます。 タグの付いたメッセイジがない場合には Mutt が残りのマクロを「食って」、 実行されないようにしてくれるのです。 マクロに &dquot;end-cond&dquot; 演算子が出てきたところで食うのをやめて、 その後の残りのマクロは通常通りに実行されるようになります。 (訳注:特にパターンでタグを付ける際、 必ずしも一つ以上のメッセイジにタグが付いているとは限らない。 タグがない場合に単なる &dquot;tag-prefix&dquot; を使うと、 カーソルの位置にあるメッセイジへ操作が適用されてしまう。 それで、tag-prefix-cond が追加された。例えば <tt>macro index i <tag-pattern>˜d*1w\n<tag-prefix-cond><save-message>=recent\n<end-cond></tt> と設定すると、ここ一週間のメイルを移動するマクロができる。 注意すべき点は、これが単なる条件分岐であるということだ。 &dquot;tag-prefix-cond&dquot; から &dquot;end-cond&dquot; までの部分を タグ付きメッセイジすべてに適用するというわけではなく、 タグ付きメッセイジへ適用されるのは &dquot;tag-prefix&dquot; と同様、 &dquot;tag-prefix-cond&dquot; 直後の操作のみである。) <sect1>フックを使う<label id="hooks" > <p> <em>フック</em>とは EMACS エディタから借りてきた概念で、 ある操作の実行前に任意のコマンドを実行できるようにするものです。 例えば、読もうとしているメイルボックスや送ろうとしているメイルのあて先に 基づいて設定を調整したいと思うことがあります。 Mutt の世界において、<em>フック</em>は設定オプションやコマンドに合った <ref id="regexp" name="正規表現" >や<ref id="patterns" name="パターン" > で構成されます。 利用できる各種<em>フック</em>の詳細については、以下を参照してください。 <itemize> <item><ref id="folder-hook" name="folder-hook"> <item><ref id="send-hook" name="send-hook"> <item><ref id="message-hook" name="message-hook"> <item><ref id="save-hook" name="save-hook"> <item><ref id="mbox-hook" name="mbox-hook"> <item><ref id="fcc-hook" name="fcc-hook"> <item><ref id="fcc-save-hook" name="fcc-save-hook"> </itemize> <bf>注意:</bf> フックが設定を変更した場合、変更の効果は その mutt セッションの終わりまで続きます。 これは一般的に望み通りの動作ではありませんので、 既定のフックを他のフックの前に追加して 設定の既定値に復帰する必要があります。 次に挙げるのは send-hook と my_hdr 命令の例です。 (訳注:b@bab や b@b.b といったアドレスを To か Cc に含むメッセイジを 送信するときにのみ自分のアドレスを c@c.c とする、という設定。 最初の send-hook がないと、そのようなメッセイジを送ったあとは ずっと From: c@c.c のままになる。最初の send-hook があるおかげで 他の宛先には my_hdr が解除されて、from 変数の値が使用される。) <tscreen><verb> send-hook . 'unmy_hdr From:' send-hook ~C'^b@b\.b$' my_hdr from: c@c.c </verb></tscreen> <sect2>フックにおけるメッセイジ合致条件<label id="pattern_hook" > <p> メッセイジに対して働くフック (<tt>send-hook, save-hook, fcc-hook, message-hook</tt>) は、他とは少し違う方法で評価されます。 他のタイプのフックコマンドには<ref id="regexp" name="正規表現" >で十分ですが、 メッセイジを扱うときには、合致に関して、よりきめ細かな制御が必要です。 目的が異なれば、合致させたいと思う条件も異なるものだからです。 Mutt では、フックコマンドにおけるメッセイジ合致条件に <ref id="patterns" name="検索パターン" >言語を使えます。 これは、演算子のうち、メッセイジのへッダ (すなわち from, to, cc, date, subject 等) から抽出した情報に関するものしか使えない点を除けば、 メイルボックスを <em/search/ (検索) したり <em/limit/ (表示制限) したりするときとまったく同じように動作します。 例えば、送信メッセイジに基づいて返信先を特定のアドレスに設定したい場合、 次のようにすることができます。 <tscreen><verb> send-hook '~t ^me@cs\.hmc\.edu$' 'my_hdr From: Mutt User <user@host>' </verb></tscreen> これは、<em>me@cs.hmc.edu</em> 宛てにメイルを送るときに 所定のコマンドを実行する例です。 とはいえ、合致パターンは完全な形の検索言語で書かなければならない というわけではありません。 他のフック同様、単なる<em>正規表現</em>を使っても良く、 この場合 Mutt がそのパターンを完全な言語に翻訳してくれます。 翻訳には <ref id="default_hook" name="$default_hook" > 変数によって指定されている方法を使います。 パターンはそのフックが宣言された時点で翻訳されるので、 その当時有効だった <ref id="default_hook" name="$default_hook" > の値が使われます。 <sect1>アドレスの外部問い合わせ<label id="query" > <p> Mutt は、LDAP, ph/qi, bbdb, NIS といった 外部ディレクトリデイタベイスへの接続をサポートしており、これは 簡単なインタフェイスで Mutt に接続するラッパスクリプトを通して実現します。 <ref id="query_command" name="$query_command" > 変数を使って、 利用するラッパコマンドを指定します。例えばこうです。 <tscreen><verb> set query_command = "mutt_ldap_query.pl '%s'" </verb></tscreen> ラッパスクリプトはコマンドライン上で問い合わせを受け付けることになっています。 一行メッセイジを返し、次に合致結果がそれぞれ一行ずつ並び、 その各行は「アドレス、名前、その他付加情報」をこの順に タブ区切りで含んでいるべきです。 エラー時、および合致するアドレスがない場合は 0 以外の終了コウドと一行のエラーメッセイジを返します。 複数回答の出力例 <tscreen><verb> Searching database ... 20 entries ... 3 matching: me@cs.hmc.edu Michael Elkins mutt dude blong@fiction.net Brandon Long mutt and more roessler@guug.de Thomas Roessler mutt pgp </verb></tscreen> Mutt の問い合わせ機能にアクセスする仕組みは二つあります。 一つは問い合わせをインデックスメニューから query 関数 (既定値: Q) を使って行なう仕組みです。問い合わせ内容を聞かれるので入力すると、 問い合わせメニューが出て合致結果の一覧が表示されるのです。 問い合わせメニューからは、選んだアドレスにエイリアスを作成したり メイルしたりすることができます。 タグを付けて複数アドレスにメイルすることや、 新しく問い合わせを始める、つまり新規問い合わせを現在の結果内容に追加する こともできます。 問い合わせ機能にアクセスするもう一つの仕組みは、アドレス補完という、 エイリアス補完と同じような仕組みです。アドレス入力のプロンプトならどれででも complete-query 関数 (既定値: ^T) を使って、アドレスのうちの、 その時点までに入力済みの部分に基づいた問い合わせを実行できます。 エイリアス のように、どこまで入力済みかについて Mutt は 最後のスペイスかコンマまで戻って調べます。 その問い合わせに結果が一つだけであれば、Mutt はその場でアドレスを展開します。 結果が複数ならば Mutt は問い合わせメニューに移ります。問い合わせメニューでは、 プロンプトに追加するアドレスを一つでも複数でも選択することができます。 <sect1>メイルボックスの形式 <p> Mutt は四種類のメイルボックス ― mbox, MMDF, MH, Maildir ― の読み書きを サポートしています。メイルボックスの種類は自動判定されるので、 種類の違いを指示する必要はありません。<!-- flag は本来、旗ですよね。 そういう (旗のような) ものが必要ないということなのでしょう。 --> 新規メイルボックス作成時には <ref id="mbox_type" name="$mbox_type" > 変数で指定される既定値を使います。 <bf>mbox</bf>. これは UNIX でもっとも広く使われている形式です。 メッセイジは一つのファイルにすべて格納されます。各メッセイジには、 <tscreen><verb> From me@cs.hmc.edu Fri, 11 Apr 1997 11:44:56 PST </verb></tscreen> という形式の行が一行あり、メッセイジの始まりを表しています (これは しばしば &dquot;From_&dquot; 行として言及されます)。 <bf>MMDF</bf>. これは <em>mbox</em> 形式の亜種です。それぞれのメイルが ^A^A^A^A (Ctrl-A 四つ) という行で囲まれています。 <bf>MH</bf>. <em>mbox</em> と <em>MMDF</em> からの革新的な変形であり、 メイルボックスはディレクトリで構成され、 各メッセイジが別々のファイルに格納されています。 ファイル名はメッセイジ番号を示します (しかし、この番号は Mutt が表示するメッセイジ番号とは関係ありません)。 削除されたメッセイジはファイル名が変更されて、 先頭にコンマ (,) が付くだけです。 <bf>注意:</bf> Mutt は、<tt/.mh_sequences/ か <tt/.xmhcache/ がないか探すことによってこの形式を検知します (普通のディレクトリと MH メイルボックスを区別するために必要です [訳注:西岡・人見訳 1.4-0 では、Mutt がこれらのファイルを更新しないことが併記されていた。それらのファイルは MH かどうかを調べるためにのみ使われるということだ])。 <bf>Maildir</bf>. メイルボックス形式の最新版で、Qmail MTA (sendmail の競合品) で使われています。<em>MH</em> とよく似ていますが、違うのはメイルボックスの サブディレクトリを三つ (<em>tmp</em>, <em>new</em>, <em>cur</em>) 追加してある点です。 メッセイジのファイル名は、二つのプログラムが同じメイルボックスを NFS 越しに書き込んでいるときでさえも重ならないような方法で選ばれています。 これはつまり、ファイルのロックが必要ないということを意味します。 <sect1>メイルボックスの省略形<label id="shortcuts" > <p> 特定のメイルボックスを指す組み込みショートカット (省略形) が 幾つか用意されています。 ショートカットは、ファイルやメイルボックスの場所を入力する場面なら どこででも使えます。 <itemize> <item>! …… <ref id="spoolfile" name="$spoolfile" > (受信用) メイルボックスを指す <item>> …… <ref id="mbox" name="$mbox" > メイルボックスを指す <item>< …… <ref id="record" name="$record" > メイルボックスを指す <item>^ …… 現在のメイルボックスを指す <item>- と !! …… 前にいたメイルボックスを指す <item>˜ …… ホウムディレクトリを指す <item>= と + …… <ref id="folder" name="$folder" > メイルボックスを指す <item>@<em>エイリアス名</em> …… このエイリアスのアドレスで識別される<ref id="save-hook" name="既定のセイヴフォルダ" >を指す </itemize> <sect1>メイリングリストを扱う<label id="using_lists" > <p> Mutt には、大量のメイルの取り扱いを容易にする設定オプションが二、三あります。 まず最初にしなければならないのは、どのアドレスを メイリングリストだとみなすか (仕組みとしてはメイリングリストでなくても 構いませんが、これがもっともよく使われる用途です)、および、 どのリストを講読しているかを Mutt に知らせることです。 これは muttrc で <ref id="lists" name="lists および subscribe" > コマンドを使って行ないます。 これで Mutt は何がメイリングリストかを知っているので、 できることが幾つか増えました。その一つ目は、 どのリストを経由してメッセイジを受信したか (つまり、講読中のリスト名) を <em>インデックス</em>メニューの画面に表示できることです。 これは同じメイルボックス内にある私用メイルとリストメイルを 区別するのに役立ちます。 <ref id="index_format" name="$index_format" > 変数の中で使う &dquot;%L&dquot; というエスケイプは &dquot;To&dquot; フィールドに「リスト名」があれば &dquot;To <リスト名>&dquot; という文字列を返し、 &dquot;Cc&dquot; フィールドなら &dquot;Cc <リスト名>&dquot; を返します (どちらでもなければメイルを書いた人の名前を返します)。 メイリングリストのメッセイジには、 &dquot;To&dquot; と &dquot;Cc&dquot; のフィールドがどんどん 膨れ上がっていってしまうということが頻繁に見られます。 ほとんどの人は、返信しようとするメッセイジの差出人をわざわざ そうしたフィールド<!-- のアドレスリスト -->から削除したりせず、 結果として同じものが複数その人に送られてしまうことになります。 <ref id="list-reply" name="list-reply"> 関数は、既定では <em>インデックス</em>メニューと<em>ペイジャ</em>において &dquot;L&dquot; キーに割り当てられていますが、 宛先すべてにではなく既知のメイリングリストのアドレスにのみ返信するので、 こうしたゴミを減らす助けになります (<tt>Mail-Followup-To</tt>で指定してある場合を除きます。以下参照)。 Muttは <tt>Mail-Followup-To</tt> へッダもサポートしています。 購読中のメイリングリストが宛先リストに一つでもあって、 <ref id="followup_to" name="$followup_to" > 変数が 設定されていれば、Mutt はそのメッセイジの送信時に、送り先すべてから 自分を除いた <tt>Mail-Followup-To</tt> へッダを生成してくれます。 このヘッダは、このメッセイジへのグループ返信 [group-reply] や リスト返信 [list-reply] (フォロウアップ [followup] とも言う) が、 そのメッセイジの元々の送り先にのみ送られるべきであって、 それと別に自分へ送る必要はないということ ― 自分の分は 購読しているメイリングリストを通して受け取るということ ― を示すものです。 逆に自分が <tt>Mail-Followup-To</tt> へッダのあるメッセイジに group-reply したり list-reply したりする場合にも、設定変数の <ref id="honor_followup_to" name="$honor_followup_to" > が設定されていれば Mutt がこのへッダを考慮してくれます。 この場合、list-reply を使うと <tt>Mail-Followup-To</tt> の返信先リストで 指定されていなくても返信がメイリングリストへ行くようにしてくれます。 へッダ編集が有効なときは自分で <tt>Mail-Followup-To</tt> へッダを作成できるということを覚えておいてください。 Mutt は、送信時にこのへッダが存在しない場合にだけ、 このへッダを自動生成するのです。 一部のメイリングリスト管理者が使っている別の手法は、メッセイジの 差出人ではなく、メイリングリストのアドレスを指す &dquot;Reply-To&dquot; フィールドを生成するというものです (訳注:日本ではこれが多いかも)。 これは、差出人へ私的に直接返信しようとするときに 問題を引き起こすかもしれません。なぜなら大半のメイルクライアントは、 自動的に &dquot;Reply-To&dquot; フィールドのアドレスへ返信するからです。 Mutt は、<ref id="reply_to" name="$reply_to" > 変数を使って、 どちらのアドレスに返信するか決めさせてくれます。<em/ask-yes/ か <em/ask-no/ に設定されていると、&dquot;Reply-To&dquot; フィールドにあるアドレスを 使うのかどうかを聞いてきて、使わないと答えると &dquot;From&dquot; フィールドのアドレスに直接返信します。 この変数が <em/yes/ に設定されている場合は、あれば必ず &dquot;Reply-To&dquot; フィールドが使われます。 &dquot;X-Label:&dquot; フィールドを使って、メイリングリストや リストで話題となっている事柄をさらに特定することができます (あるいは 単に、メッセイジへ個別に註釈を付けることも)。 <ref id="index_format" name="$index_format" > 変数の &dquot;%y&dquot; および &dquot;%Y&dquot; エスケイプを使えば &dquot;X-Label:&dquot; フィールドをインデックスに展開できますし、 Mutt のパターン検索では &dquot;˜y&dquot; 選択子を使って正規表現で &dquot;X-Label:&dquot; に検索をかけることができます。 &dquot;X-Label:&dquot; は標準的なへッダフィールドではありませんが、 procmail その他のメイルフィルタリングエイジェントで簡単に挿入できます。 最後の点として、Mutt にはメイルボックスを<ref id="threads" name="スレッド" >で<ref id="sort" name="整列" >させる能力があります。 スレッドとは、同じ話題でつながっているメッセイジの集まりです。 これは通常、木のような (訳注:枝分かれしている) 構造へとまとめられ、 あるメッセイジとそれに対する返信すべてが画像的に表現されます。 スレッド化されたニューズクライアントを使ったことがあれば、 それと同じ概念だと思ってください。 これによって流量の大きなメイリングリストの扱いが容易になります。 なぜなら、興味がなければ簡単にスレッドごと削除することができ、 価値ある話題を素早く見つけられるからです。 <sect1>スレッドを編集する <p> Mutt には、壊れたスレッドをその場で作り直す機能があります。 スレッドが壊れる理由は相手の設定ミスや癖などですが、そのように 話を追いにくくする迷惑行為からメイルボックスを救い出すことが できるのです。 IMAP でこの機能を使いたい場合には Mutt をコンパイルする際に <em/--enable-imap-edit-threads/ フラグを付けて configure する 必要があります。 <sect2>スレッドをつなぐ <p> 返信時に正しく &dquot;In-Reply-To:&dquot; や &dquot;References:&dquot; ヘッダを付けるのを忘れてしまうメイラが あります。すると Mutt が正しくスレッドを構成するために必要な情報を 得られず、話題が切れてしまう結果になります。 <!-- 原文にはないが、ここで段落を切りたい --><p> これを修整するには、まず返事にタグを付け、次に親メッセイジまで カーソルを移動して、link-threads 関数 (既定では & に割り当て られている) を使います。するとその返信メッセイジが親メッセイジに つながるというわけです。 複数の子メッセイジを一度につなぐこともできます。すべてにタグを 付けて、tag-prefix 関数 (;) か auto_tag オプションを使うのです。 <sect2>スレッドをはずす <p> メイリングリストで新しい話題を始めるとき、適当なメッセイジに 「返信」を押して、題名だけまったく無関係なものに変えるという 悪い癖を持つ人がいます。 <!-- やはりここで切りたい --><p> これは break-thread 関数 (既定で # に割り当て) を使って 修整することができます。この関数で、そのメッセイジ以降のスレッドを まったく別のスレッドにしてしまうのです。 <sect1>配送状況通知 (Delivery Status Notification = DSN) サポート <p> RFC1894 は、電子メイルメッセイジの状態に関する情報を伝達するための、 一連の MIME コンテントタイプを定義しています。 これは「受領証」と考えることができます。 現在 Berkeley sendmail 8.8.x には、 どの種類の状況メッセイジを返させれば良いかを メイルクライアントが要求できるような、 幾つかのコマンドラインオプションがあります。 これをサポートするための変数が二つあります。 <ref id="dsn_notify" name="$dsn_notify" > は、 結果の違いによって証書を要求したりしなかったりするために使います (失敗メッセイジ、配信済みメッセイジ、等)。 <ref id="dsn_return" name="$dsn_return" > は、 証書に付けて返す元メッセイジをどれだけ要求するか (ヘッダだけか メッセイジ全体か) です。 DSN に関するさらに詳細な点については sendmailの man ペイジを参照してください。 <sect1>POP3 サポート (オプション) <p> Mutt は、POP3 サポートありで (<em>configure</em> スクリプト実行時に <em>--enable-pop</em> フラグを付けて) コンパイルしてあれば、 リモウトの POP3 サーバ上にあるメイルボックスを扱ったり、 ロウカル閲覧用にメイルを取りに行ったりすることができます。 <tt>pop://POPサーバ/</tt> というフォルダを選択することによって、 リモウト POP3 メイルボックスにアクセスできます。 代替ポートの選択も、サーバと一緒に、つまり <tt>pop://POPサーバ:ポート/</tt> と指定することによって可能です。 フォルダごとに違うユーザ名を指定する、つまり <tt>pop://ユーザ名@POPサーバ[:ポート]/</tt> と 指定することもできます。 POP3 経由だと、新着メイル情報の取得にロウカルより負担がかかります。 このため、Mutt がリモウトでメイルチェックする頻度を <ref id="pop_checkinterval" name="$pop_checkinterval" > 変数で 制御できます。既定値は 60 秒ごとです。 Mutt が SSL サポートありで (<em>configure</em>スクリプト実行時に <em>--with-ssl</em> フラグを付けて) コンパイルしてあれば、 POP3 サーバとの通信は暗号化できます。 これには当然、そのサーバが SSL 暗号化通信をサポートしている必要があります。 POP3/SSL でフォルダにアクセスするには pops: を使います。 つまり <tt>pops://[ユーザ名@]POPサーバ[:ポート]/</tt> です。 POP3 のメイルにアクセスする別の方法は <em>fetch-mail</em> 関数 (既定値: G) です。 POP3 ホスト (<ref id="pop_host" name="$pop_host" >) に接続し、 新着メイルをすべて取ってきて、ロウカルのスプール (<ref id="spoolfile" name="$spoolfile" >) に置いてくれるのです。 Mutt はそれ以降、そのメイルがまるでずっとロウカルにあったかのように 動作します。 <bf>メモ:</bf> ロウカルのメイルボックスに全メッセイジを取って来る だけで良ければ、専門の、例えば <htmlurl url="http://www.ccil.org/~esr/fetchmail" name="fetchmail"> のようなプログラムの使用を検討すべきです。 (訳注:これは Mutt 開発者の「本体をできるだけ小さくして、 よそに任せられるところは任せたい」という姿勢を反映しているようだ。 訳者自身は <em/fetch-mail/ を使っていて何の問題もない。 開発者の意図としては <tt>macro index G !fetchmail\n</tt> のように設定すれば事足りるのだから無駄な機能だということであろう。) <sect1>IMAP サポート (オプション) <p> IMAPサポートありで (<em>configure</em> スクリプト実行時に <em>--enable-imap</em> フラグを付けて) コンパイルされていれば、 Mutt はリモウト IMAP サーバ上にあるフォルダを扱うことができます。 IMAP サーバの名前を <tt>imapserver</tt> とすると、 <tt>imap://imapserver/INBOX</tt> というフォルダを選択すれば リモウトの受信箱 (inbox) にアクセスできます。 この <tt>INBOX</tt> は、IMAP サーバ上でスプールメイルボックスを表す 特別な名前です。 IMAP サーバの別のメイルフォルダーにアクセスしたい場合は、 そのフォルダのパスが <tt>path/to/folder</tt> なら <tt>imap://imapserver/path/to/folder</tt> とします。 サーバと一緒に、つまり <tt>imap://imapserver:ポート/INBOX</tt> と指定することによって代替ポートも指定できます。 フォルダごとに違うユーザ名を指定することもできます。つまり <tt>imap://ユーザ名@imapserver[:ポート]/INBOX</tt> です。 Mutt が SSL サポートありで (<em>configure</em>スクリプト実行時に <em>--enable-ssl</em> フラグをつけて) コンパイルしてあれば、 IMAP サーバへの接続を暗号化できます。これには当然、サーバが SSL 暗号化接続をサポートしていることも求められます。 フォルダに IMAP/SSL を使ってアクセスするには、フォルダパスに <tt>imaps://[ユーザ名@]imapserver[:ポート]/path/to/folder</tt> と指定します。 Pine 互換の書き方もサポートしています。つまり <tt>{[ユーザ名@]imapserver[:ポート][/ssl]}path/to/folder</tt> です。 すべてのサーバが階層分離記号 (hierarchy separator) に / を使っているわけではないことを覚えていてください。 Mutt はどの分離記号がサーバで使われているかを正しく認識し、 それに応じてパスを変換してくれるはずです。 IMAP サーバ上のフォルダを閲覧しているときに、 自分が購読しているフォルダだけを見るか、それともあらゆるフォルダを見るかを、 <em>toggle-subscribed</em> コマンドで切り換えられます。 <ref id="imap_list_subscribed" name="$imap_list_subscribed" > 変数についても 見てください。 IMAP サーバ上の新着メイルを確認すると、動作が遅くなって気になることがあります。 それで、<ref id="mail_check" name="$mail_check" > および <ref id="timeout" name="$timeout" > 変数は慎重に調整したいと思うことでしょう。 私個人として使っているのは <tscreen><verb> set mail_check=90 set timeout=15 </verb></tscreen> ですが、遅いモデム回線にしては、結果は比較的良好です。 v12.250 以前の UW サーバでメイルの格納に mbox を使っている場合は 注意してください。別のクライアントが同じフォルダを選ぶと 接続が切断されてしまうと報告されています。 <sect2>フォルダブラウザ <p> ヴァージョン 1.2 から Mutt は IMAP サーバ上のメイルボックスの 閲覧 (browsing) をサポートしています。 これはロウカルファイルブラウザとほとんど同じですが、 以下のような違いがあります。 <itemize> <item>ファイルの属性の代わりに &dquot;IMAP&dquot; という文字列を表示します。 これの後ろに &dquot;+&dquot; 記号がつく場合がありますが、 これはその中にメッセイジとサブフォルダの両方が含まれていることを意味します。 Cyrus 系サーバの場合にはしばしばフォルダの中に メッセイジとサブフォルダが入っています。 <item>メッセイジとサブフォルダの両方が含まれている場合、<tt/select-entry/ (既定では <tt>enter</tt> に割り当てられている) のキーを押すと そのサブフォルダの中に下りていってしまいます。 もしそのフォルダ自体のメッセイジを見たい場合には (既定では <tt>スペイス</tt> に割り当てられている) <tt>view-file</tt> を使わなければなりません。 <item>メイルボックスを作ったり、消したり、移動したりするには、 <tt>create-mailbox</tt>, <tt>delete-mailbox</tt>, <tt>rename-mailbox</tt> コマンド (既定では <tt>C</tt>, <tt>d</tt>, <tt>r</tt>) を使います。 また、メイルボックスの購読 <tt>subscribe</tt> と、 購読解除 <tt>unsubscribe</tt> もできます (通常は s と u に割り当てられています)。 </itemize> <sect2>認証 <p> Mutt は IMAP サーバに関して四つの認証方法をサポートしています。 SASL, GSSAPI, CRAM-MD5, LOGIN です (かわいそうな exchange ユーザのために NTLM 認証を追加する、Grant Edwards によるパッチがありますが、 まだメイントゥリーには統合されていません)。また疑似プロトコル ANONYMOUS のサポートもあります。これは公開 IMAP サーバにアカウントなしでログイン するためのものです。ANONYMOUS を使うには、単にユーザ名を入れないでおくか、 または &dquot;anonymous&dquot; にします。 <p> SASL は特殊な、包括的認証方法です。 自分のホストとサーバ両方で利用可能かつ最も堅牢な方法を、いくつかのプロトコル (GSSAPI, CRAM-MD5, ANONYMOUS, DIGEST-MD5 を含む) の中から、選びます。 これらのうちのいくつかの方法 (DIGEST-MD5 や、多分 GSSAPI も) を使うと、 セッション全体が暗号化され、そこかしこにいるネットワーク覗きの目から 見えなくなります。利用可能なら、これが最善の選択肢です。 SASL を使うには、システムに Cyrus SASL ライブラリがインストールされていて、 かつ、<em>--with-sasl</em> 付きで mutt をコンパイルする必要があります。 <p> Mutt は、コンパイル時に組み込まれ、かつサーバ側の利用可能な方法を すべて試していきます。順番は SASL, ANONYMOUS, GSSAPI, CRAM-MD5, LOGIN です。 認証を制御する変数がいくつかあります。 <itemize> <item><ref id="imap_user" name="$imap_user" > ― IMAP サーバへ認証を要求するユーザ名です。すべての認証方法に使われます。 これはメイルボックスのパスに明示的に含まれるユーザ名 (つまり <tt>{ユーザ@ホスト}</tt> の形のメイルボックスを使うこと) によって上書きされます。 <item><ref id="imap_pass" name="$imap_pass" > ― パスワードです。 パスワードを必要とするすべての認証方法に使います。 <item><ref id="imap_authenticators" name="$imap_authenticators" > ― 試行順序にコロンで区切った、 IMAP 認証方法リストです。設定されていると、この変数が mutt の既定値 (あらゆる方法を上記の順に試す) を上書きします。 </itemize> <sect1>複数の IMAP/POP アカウントを使う (オプション)<label id="account-hook" > <p> いくつもの IMAP や POP サーバにアカウントを持っていると、 認証の設定は、面倒くさくて間違いやすいものですよね。 そんなあなたに account-hook コマンドが役に立ちます。 このフックは folder-hook コマンドと同じような働きをするものですが、 開くときだけではなく、リモウトのメイルボックスにアクセスするたびに 呼び出されます (フォルダブラウザ内も含みます)。 <p> 例: <tscreen><verb> account-hook . 'unset imap_user; unset imap_pass; unset tunnel' account-hook imap://host1/ 'set imap_user=me1 imap_pass=foo' account-hook imap://host2/ 'set tunnel="ssh host2 /usr/libexec/imapd"' </verb></tscreen> <sect1>URL に対して WWW ブラウザを起動する (外部コマンド)<label id="urlview" > <p> メイルに URL (<em>unified resource locator</em> = WWW 空間における住所。 例えば <em>http://www.mutt.org/</em>) が含まれているとき、 そうした URL をすべて含むメニューが出てきて、一つ選ぶと WWW ブラウザが 起動すると効率が良いですよね。 この機能は外部プログラムの urlview と 以下の設定コマンドによって提供されています。 urlview は <htmlurl url="ftp://ftp.mutt.org/mutt/contrib/" name="ftp://ftp.mutt.org/mutt/contrib/">で手に入ります。 <tscreen><verb> macro index \cb |urlview\n macro pager \cb |urlview\n </verb></tscreen> <sect>Mutt の MIME サポート <p> Mutt をテキストモウド MIME MUA として最上のものとするため、 これまで多大な努力が払われてきました。眼識ある MIME ユーザの要求する機能と 標準への準拠のために、可能な限りのあらゆる努力が払われてきました。 Mutt の MIME 設定に際しては、二つの外部ファイルがあります。 一つは <tt/mime.types/ ファイルで、これにはファイル拡張子と IANA MIME タイプとの対応が書いてあります。もう一つは <tt/mailcap/ ファイルで、それぞれの MIME タイプを扱うために 使う外部コマンドが指定されています。 <sect1>Mutt で MIME を使う <p> Mutt は三つの場面において、すなわちペイジャ (メイルを閲覧するとき)、 ファイル添付メニュー、コンポウズメニューで MIME を扱います。 <sect2>ペイジャで MIME メッセイジを閲覧する <p> インデックスでメイルを選択してペイジャで閲覧するとき、 Mutt はメイルをテキスト表現へと復号化します。Mutt には、 <tt>text/plain, text/enriched, message/rfc822, message/news</tt> といった、数々の MIME タイプのサポート機能が内蔵されています。 輸出制限ヴァージョンの Mutt では、それに加えて PGP/MIME や application/pgp といった PGP MIME タイプを理解することもできます。 (訳注:1.5.6i のように「i」が付いていれば PGP 機能が付いているはず。) Mutt は添付ファイルがあることを二、三行の説明で表します。 こんな形式です。 <tscreen><verb> [-- Attachment #1: Description --] [-- Type: text/plain, Encoding: 7bit, Size: 10000 --] </verb></tscreen> <tt/Description/ の部分は添付ファイルに関する説明やファイル名で、 <tt/Encoding/ は <tt>7bit/8bit/quoted-printable/base64/binary</tt> のどれかです。 Mutt が扱うことのできない MIME タイプであれば 次のようなメッセイジを表示します。 <tscreen><verb> [-- image/gif is unsupported (use 'v' to view this part) --] </verb></tscreen> <sect2>添付ファイルメニュー<label id="attach_menu" > <p> 既定で &dquot;v&dquot; に割り当てられている <tt/view-attachments/ は、メッセイジの添付ファイルメニューを表示するものです。 添付ファイルメニューにはメッセイジの添付ファイル一覧が表示され、 このメニューから添付ファイルを保存、印刷、パイプ、削除、 閲覧することができます。&dquot;tag-prefix&dquot; を使えば、 複数の添付ファイルを一度に処理することも可能です。 また、このメニューからメッセイジに返信することもできます。 その場合は、カーソルのある (もしくはタグ付けされている) 添付ファイルのみ 返信に引用されます。添付ファイルは、テキストとして閲覧したり、 mailcap のヴューワ定義を使って閲覧することもできます。 また <tt>message/rfc822</tt> タイプのファイルには、 メッセイジ関連の通常の関数 (例えば <ref id="resend-message" name="resend-message">, reply, forward など) も使えます。 さらに詳しい情報は、添付ファイルメニューでのヘルプをご覧下さい。 <sect2>コンポウズメニュー<label id="compose_menu" > <p> コンポウズメニューはメッセイジを送る前に現れるメニューのことです。 このメニューでは宛先のリストを編集できます。題名を編集できます。 その他にもメッセイジの様々な側面を編集することができます。 このメニューには、メッセイジの添付ファイル (本文も含む) の一覧が表示されます。 一つの添付ファイル、もしくはタグ付けされた複数の添付ファイルを、 印刷したり、フィルタにかけたり、パイプに通したり、編集したり、 作成したり、もう一度確認のために閲覧したり、名前を変更したりすることが できます。また、添付ファイルに関する情報を変更することもできます。 特に注目すべきなのは、content type, 符号化方式、内容説明を 変更できるという点です。 添付ファイルは次のように表示されます。 <verb> - 1 [text/plain, 7bit, 1K] /tmp/mutt-euler-8082-0 <no description> 2 [applica/x-gunzip, base64, 422K] ~/src/mutt-0.85.tar.gz <no description> </verb> 左端の &dquot;-&dquot; は、そのファイルがメッセイジの 送信 (または延期や中止) の後に削除されるということを示しています。 この切替は <tt/toggle-unlink/ コマンド (既定値: u) でおこなえます。 次の欄 は MIME content-type を示しており、 <tt/edit-type/ コマンド (既定値: ^T) で変更できます。 その次の欄はファイルの符号化方式を示しています。 符号化 (つまり変換) をすることによって、バイナリのメッセイジを 7bit 通信で配送することができるようになります。変更は <tt/edit-encoding/ コマンド (既定値: ^E) です。 次の欄はファイルサイズです。キロバイトかメガバイト単位に丸めてあります。 次の欄はファイル名で、変更には <tt/rename-file/ コマンド (既定値: R) を使います。最後の欄は添付ファイルの内容説明です。 <tt/edit-description/ コマンド (既定値: d) で変更できます。 <sect1><tt/mime.types/ による MIME タイプ設定 <p> メイルにファイルを添付すると、Mutt は個人用の mime.types ファイルを <tt>${HOME}/.mime.types</tt> に探しに行き、該当するものがなければ、次にシステムの mime.types ファイルを <tt>/usr/local/share/mutt/mime.types</tt> か <tt>/etc/mime.types</tt> に探しに行きます。 mime.types ファイルを構成する各行には、 MIME タイプとスペイス区切りの拡張子のリストが書かれています。 <tscreen><verb> application/postscript ps eps application/pgp pgp audio/x-aiff aif aifc aiff </verb></tscreen> サンプルの <tt/mime.types/ が Mutt の配布物に付いています。 使いたい MIME タイプはその中にほとんど含まれているはずです。 添付されたファイルの拡張子から MIME タイプを判断できなかったとき、 Mutt はファイルの中身を見に行きます。ファイルにバイナリ情報がなければ プレインテキストだとみなして <tt>text/plain</tt> にします。 バイナリ情報を含んでいれば <tt>application/octet-stream</tt> にします。 Mutt が添付ファイルに付けた MIME タイプは、添付ファイルメニュー から <tt>edit-type</tt> コマンド (既定値: ^T) を使って変更できます。 さて、この MIME タイプは、メジャータイプの後に &dquot;/&dquot; とサブタイプの付いたものです。メジャータイプは application, text, image, video, audio, model の 6 種類が、インターネットでの 各種議論の末に承認されています。mime.types ファイルに適当な項目があるならば、 Mutt はこれらすべてを認識することができます。 また、その他のメジャータイプも認識でき、例えば chemical タイプという、 分子モデリング業界で広く使われているタイプなども使うことができます。 これは様々な形式の分子デイタを種々の分子ヴューワに渡すためのものです。 ただし、未承認の MIME タイプを使うのは、そういう添付ファイルが来ることを 相手がわかっている場合だけにすべきです。 <sect1><tt/mailcap/ による MIME ヴューワの設定 <p> Mutt は、MIME 設定に関する RFC 1524 をサポートしています。 特に RFC 1524 の Appendix A で規定されている Unix 用フォーマットをサポートしています。 このファイルフォーマットは一般的に mailcap フォーマットと呼ばれます。 多くの MIME 対応プログラムがこの mailcap フォーマットを利用しているので、 すべてのプログラムでのすべての MIME タイプの扱いを 一か所で指定することができます。 このフォーマットを利用しているプログラムには、 Netscape, XMosaic, lynx, metamail などがあります。 Mutt 単体では扱えない様々な MIME タイプを扱うために、 Mutt は外部の設定ファイルを解析して、 扱うことのできる外部プログラムを探します。 設定ファイルを検索する文字列はコロン区切りリストで、 既定値はこうなっています。 <tscreen><verb> ${HOME}/.mailcap:/usr/local/share/mutt/mailcap:/etc/mailcap:/etc/mailcap:/usr/etc/mailcap:/usr/local/etc/mailcap </verb></tscreen> <tt/$HOME/ はホウムディレクトリです。 metamail が普通 mailcap ファイルを <tt>/usr/local/etc/mailcap</tt> に インストールします。これに基本的な項目がある程度含まれています。 <sect2>mailcap ファイルの基本 <p> mailcap ファイルの各行はコメント、空行、定義のいずれかです。 コメント行は # 文字とそれに続く任意の文字で構成されます。 空行は空の行です。 定義行は、content type 一つと閲覧コマンド一つ、そして任意の数の 付加的な欄で構成されています。 定義行の各欄はセミコロン記号 &dquot;;&dquot; で分けられています。 content type は MIME 標準の「タイプ/サブタイプ」方式で指定します。 例えば、<tt>text/plain, text/html, image/gif</tt>等です。 それに加えて、mailcap フォーマットには二種類のワイルドカードもあります。 一つは特殊なサブタイプ '*' を使う方法で、もう一つは暗にワイルドタイプ を示すものとして、メジャータイプしか書かないという方法です。 例えば、<tt>image/*</tt> と <tt>video</tt> は、それぞれ image タイプと video タイプの全体に相当します。 閲覧コマンドは、特定のタイプを閲覧するための Unix コマンドです。 二種類のコマンドがサポートされています。既定では、その MIME メッセイジの内容を標準入力でコマンドに渡します。 この動作を変更するには、閲覧コマンドの引数に %s を使います。 こうすると Mutt は MIME メッセイジの内容を一時ファイルに保存し、 %s を一時ファイルの名前に置き換えて閲覧コマンドを呼び出します。 どちらの場合も Mutt は端末を閲覧プログラムに明け渡し、 終了するまで待ちます。終了時、一時ファイルは (あれば) 削除されます。 それで、最も単純な形として、text/plain のメッセイジを外部ペイジャ more に標準入力で渡すことができます。 <tscreen><verb> text/plain; more </verb></tscreen> もしくは、メッセイジをファイルとして渡すこともできます。 <tscreen><verb> text/plain; more %s </verb></tscreen> lynx を使って対話的に text/html のメッセイジを閲覧したいと思うかもしれません。 <tscreen><verb> text/html; lynx %s </verb></tscreen> その場合、lynx は標準入力からのファイル閲覧をサポートしていないので %s 構文を使わなければなりません。 <bf>注意:</bf> <em>古いヴァージョンの lynx には、一部、「text/html にまで mailcap ファイルをチェックしてしまう」というバグを含むものがあります。 その場合、ヴューワとして lynx を呼ぶように書いてあっても そのまま実行してしまいます。すると、いつまでも 自分が自分を呼び出し続けることになってしまいます。</em> 一方、lynx を対話的に使いたいのではなく、単に text/html を text/plain に変換したいということもあるでしょう。そのときはこうします。 <tscreen><verb> text/html; lynx -dump %s | more </verb></tscreen> おそらく、text/html ファイルの閲覧には lynx を使いたいものの、 ほかの text タイプにはすべてペイジャを使いたいということもあるでしょう。 その場合はこういう書き方ができます。 <tscreen><verb> text/html; lynx %s text/*; more </verb></tscreen> これは mailcap ファイルのもっとも単純な形式です。 <sect2>mailcap の安全な使い方 <p> 一般的に言って、MIME パラメータに埋め込まれたメタ文字を解釈して シェルに渡すことには、セキュリティ上の問題を引き起こす危険性があります。 Mutt は %s 構文の展開の際に正しくパラメータをくくろうとしますし、 危険な文字を別のものに置き換えようとします。 <ref id="mailcap_sanitize" name="mailcap_sanitize" > 変数を見てください。 Mutt が mailcap からプログラムを呼び出す手順はおそらく安全ですが、 他のアプリケイションも mailcap を読みますし、 中にはそれほど注意を払わないものもあるかも知れません。 そこで、次のようなルールに注意を払うべきです。 <em>シェルクウォウトに %展開を入れない。</em> シングルクウォウト (') やダブルクウォウト (&dquot;) で囲ってはいけません。 (訳注:展開後にスペイスが入っても一つの引数として認識されるように クウォウトしたいと思うかもしれませんが、その必要はありません。) その辺りのことは Mutt がきちんとやってくれますし、 mailcap を使う他のプログラムも同じはずです。 バッククウォウトを使った展開の中にも入れないでください。 eval 文には特別な注意が必要です。できればまったく使わないでください。 おかしな挙動をクウォウトで直そうとしても、新しい別の水漏れができるだけです。 クウォウトを使っている限り、正しい方法など最初から存在しないのです。 どうしても %展開の値がクウォウトやバッククウォウトの 中に入っていなければならない場合には、まずその値をシェル変数に代入して、 その変数を使うようにしてください。次の例のようにです (バッククウォウト展開の中で <tt/$charset/ を使っていますが、 これは安全です。そこからさらに展開されるわけではないからです)。 <tscreen><verb> text/test-mailcap-bug; cat %s; copiousoutput; test=charset=%{charset} \ && test "`echo $charset | tr '[A-Z]' '[a-z]'`" != iso-8859-1 </verb></tscreen> <sect2>一歩進んだ mailcap の使い方 <p> <sect3>付加的な欄 <p> 必須である content-type と閲覧コマンドの欄のほかに、 セミコロン ';' で区切った欄を追加して、 各種フラグを付けたりオプションを設定したりすることができます。 Mutt は以下の付加的な欄をサポートしています。 <descrip> <tag/copiousoutput/ このフラグは、そのコマンドがテキストを標準出力へ (もしかすると 大量に) 渡すということを Mutt に教えます。このとき Mutt は ペイジャ (内部ペイジャ、もしくは pager 変数で決めた外部ペイジャ) を起動して閲覧コマンドの出力を受け取ります。このフラグがなければ、 そのコマンドは対話的に操作できるものとみなされます。 これを使って、「基本的な使い方」の <tt>lynx -dump</tt> の例における more へのパイプを書き換えることができます。 <tscreen><verb> text/html; lynx -dump %s ; copiousoutput </verb></tscreen> こうすれば lynx が text/html の出力を text/plain 変換し、 Mutt が標準のペイジャを使ってその結果を表示することになります。 <tag/needsterminal/ Mutt は <ref id="auto_view" name="auto_view" > で 添付ファイルを閲覧するときに、このフラグに合わせて <ref id="wait_key" name="$wait_key" > 変数を扱います。 終了時にキーを押すよう求めるかどうかは、 閲覧に対話的な外部プログラムを使っており、かつ 該当する mailcap 項目に <em/needsterminal/ フラグがあるときにのみ、 <ref id="wait_key" name="$wait_key" > とプログラムの終了値から決定することになります。 そのほかの場合はすべて、キーを催促せずに終了します。 <tag>compose=<command></tag> このフラグは、特定の MIME タイプの添付ファイルを新規作成するときに使う コマンドを指定します。コンポウズメニューにおいてサポートされています。 <tag>composetyped=<command></tag> このフラグも、その MIME タイプの添付ファイルを新規作成する コマンドを指定するものです。compose コマンドとの違いは、そのデイタ内に 標準的な MIME ヘッダが含まれていることが期待されているという点です。 これを使って、パラメータ、ファイル名、内容説明などを指定できます。 Mutt はこれをコンポウズメニューでサポートしています。 <tag>print=<command></tag> 特定の MIME タイプの印刷に使うコマンドを指定します。 Mutt では、ファイル添付メニューとコンポウズメニューでサポートされています。 <tag>edit=<command></tag> このフラグは、特定の MIME タイプの編集に使うコマンドを指定します。 Mutt はこのコマンドをコンポウズメニューでサポートしており、 新しい添付ファイルを作成するときにも使います。 Mutt は既定では editor 変数に定義されたエディタを テキストの添付ファイルに使用します。 <tag>nametemplate=<template></tag> 閲覧コマンド欄に %s で示されるファイルのファイル名を指定します。 ある種のプログラムは、ファイル名に特定の拡張子がないと、 正しく閲覧してくれなかったりします。例えば lynx は、ファイル名が <tt>.html</tt> で終わっている場合にのみ <tt>text/html</tt> であると 解釈します。それで、lynx を <tt>text/html</tt> ヴューワに指定するには 次のように mailcap に書くことになるでしょう。 <tscreen><verb> text/html; lynx %s; nametemplate=%s.html </verb></tscreen> <tag>test=<command></tag> その項目を使うべきなのかどうか確認するためのコマンドを指定します。 そのコマンドは、次の節にあるコマンド展開ルールに沿って定義します。 コマンドが 0 を返した場合にはテスト合格ですから、Mutt はその項目を使います。 0 以外の値を返した場合にはテスト失敗で、Mutt はさらに他の正しい項目を 探し続けます。<bf>注意:</bf> <em>まず content-type が合致していた場合に のみテストが実行されます。</em>さて、例えば <tscreen><verb> text/html; netscape -remote 'openURL(%s)' ; test=RunningX text/html; lynx %s </verb></tscreen> 上の例で Mutt は RunningX を実行します。このプログラムは X ウィンドウマネジャが動いていれば 0 を返し、そうでなければ 0 以外を返すというものです。RunningX が 0 を返せば、Mutt は netscape を呼び出して text/html のファイルを表示させます。 もし 0 を返さなければ、次の項目に移って lynx に表示させます。 </descrip> <sect3>検索順序 <p> ある項目について mailcap ファイルの中から検索する際、Mutt は その目的に最も合う項目を見付けようとします。 例えば <tt>image/gif</tt> を印刷しようとしているとき、 次のような項目が mailcap ファイルにあれば、 print コマンドのあるものを探すので、 <tscreen><verb> image/*; xv %s image/gif; ; print= anytopnm %s | pnmtops | lpr; \ nametemplate=%s.gif </verb></tscreen> <tt>image/*</tt> の項を飛び越して、print コマンドのある <tt>image/gif</tt>の項目を使用します。 さて、これを <ref id="auto_view" name="auto_view による自動閲覧" > と組み合わせて、添付ファイル閲覧のコマンドを二つ指定することもできます。 一つは自動的に閲覧するためのコマンド、 もう一つは添付ファイルメニューから閲覧する対話的なコマンドです。 そのうえ、test 機能を使えば、どのヴューワを使うかを 自分の環境に合わせて対話的に決定できます。 <tscreen><verb> text/html; netscape -remote 'openURL(%s)' ; test=RunningX text/html; lynx %s; nametemplate=%s.html text/html; lynx -dump %s; nametemplate=%s.html; copiousoutput </verb></tscreen> Mutt は、<ref id="auto_view" name="auto_view の自動閲覧" > には 三番目の項目を選択します。copiousoutput タグがついているからです。 対話的な閲覧には、まずプログラム RunningX を走らせて、一番目の項目を 使うかどうか調べます。プログラムが 0 以外を返せば、二番目の項目を使って 対話的閲覧をおこないます。 <sect3>コマンド展開 <p> mailcap ファイルに定義されている各種のコマンドは system() 関数を通して <tt>/bin/sh</tt> シェルに渡されます。 コマンドは、<tt>/bin/sh -c</tt> に渡される前に解析されて、 Mutt からの情報をもとに各種の特殊パラメータが展開されます。 Mutt が展開するキーワードは以下の通りです。 <descrip> <tag/%s/ 「mailcap の基本」の節で見たように、この変数はファイル名に展開されます。 ファイル名は、それを呼び出している側のプログラム (訳注:ここでは Mutt) によって指定されます。 このファイルには、閲覧/印刷/編集するメッセイジ内容が含まれています。 もしくは、ファイルを作成するプログラムがそこに結果を保存します。 補足として言っておきますが、このキーワードを使うと、 Mutt はメッセイジの内容を標準入力からは渡さなくなります。 <tag/%t/ Mutt は %t をテキスト表現へ展開します。 メッセイジの content type を、mailcap 定義における 最初のパラメータと同じ形式で表現したものです。つまり <tt>text/html</tt> や <tt>image/gif</tt> という形式になります。 <tag>%{<パラメータ>}</tag> Mutt はこれを、メイルの Content-Type: 行における特定のパラメータの 値に展開します。例えば、メイルに次のような行があるとします。 <tscreen><verb> Content-Type: text/plain; charset=iso-8859-1 </verb></tscreen> すると Mutt は %{charset} を iso-8859-1 に展開します。 metamail の既定 mailcap ファイルでは、この機能を使って 文字セットを調べ、xterm を正しい文字セットで起動してメイルを閲覧できる ようになっています。 <tag>\%</tag> これは % に置き換えられます。 </descrip> Mutt は RFC 1524 で定義されている %F と %n キーワードを 今のところサポートしていません。これらのパラメータの主にマルティパート メッセイジのためのものですが、マルティパートは Mutt 内部で扱われるからです。 <sect2>mailcap ファイルの例 <p> 下の mailcap ファイルはとても単純かつ標準的なものです。 <code> # 常に X を実行していることにします :) video/*; xanim %s > /dev/null image/*; xv %s > /dev/null # 常に Netscape を実行していることにします (今よりメモリがあればそうするでしょうから) text/html; netscape -remote 'openURL(%s)' </code> 下の mailcap ファイルでは、たくさんの例を示しています。 <code> # 動画には、すべて xanim を使います # xanim は起動時にヘッダを出力しますが、見なくて済むように # /dev/null へ送ってしまいます video/*; xanim %s > /dev/null # HTML は、実行中の netscape に remote オプションで送ります text/html; netscape -remote 'openURL(%s)'; test=RunningNetscape # netscape を実行していなくて X を実行しているときは # そのファイルに対して netscape を起動します text/html; netscape %s; test=RunningX # それ以外のときは lynx を使ってテキストで閲覧します text/html; lynx %s # こちらは text/html を text/plain に変換するものです text/html; lynx -dump %s; copiousoutput # enscript を使ってテキストを二段で印刷します text/*; more %s; print=enscript -2Gr %s # netscape は、jpeg を自分で表示するためにフラグを付けます image/jpeg;xv %s; x-mozilla-flags=internal # X 実行中の画像閲覧には xv を使います # なお、ここでは \ を使って行をのばし、画像のエディタも設定しています image/*;xv %s; test=RunningX; \ edit=xpaint %s # netpbm ツールを使って画像をテキストに変換します image/*; (anytopnm %s | pnmscale -xysize 80 46 | ppmtopgm | pgmtopbm | pbmtoascii -1x2 ) 2>&1 ; copiousoutput # excel の表計算ファイルは NT マシンに送ります application/ms-excel; open.pl %s </code> <sect1>MIME 自動閲覧<label id="auto_view" > <p> mailcap ファイルに指定されている MIME のヴューワで添付ファイルを 閲覧するよう Mutt に明示的に言う以外に、 ペイジャの中で MIME 添付ファイルを自動的に閲覧する機能もあります。 機能させるには、mailcap ファイルで <tt/copiousoutput/ オプションを使って ヴューワを指定しなくてはなりません。そのヴューワが 対話的コマンドではないということを指示するためです。 普通は、ペイジャで閲覧できるようなテキスト表現へと 添付ファイルを変換するためにもこの項目を使います。 それから <tt/auto_view/ という muttrc のコマンドを使って、 自動的に閲覧したい content-type を羅列します。 例えば次のように <tt/auto_view/ を指定しているとします。 <tscreen><verb> auto_view text/html application/x-gunzip application/postscript image/gif application/x-tar-gz </verb></tscreen> 以下のような mailcap 項目を使えば、 こうした添付ファイルを自動的に閲覧できます。 <tscreen><verb> text/html; lynx -dump %s; copiousoutput; nametemplate=%s.html image/*; anytopnm %s | pnmscale -xsize 80 -ysize 50 | ppmtopgm | pgmtopbm | pbmtoascii ; copiousoutput application/x-gunzip; gzcat; copiousoutput application/x-tar-gz; gunzip -c %s | tar -tf - ; copiousoutput application/postscript; ps2ascii %s; copiousoutput </verb></tscreen> &dquot;unauto_view&dquot; を使えば、以前に指定した項目を 自動閲覧リストから削除できます。 message-hook と一緒に使うなら、サイズ等に基づいた自動閲覧もできます。 &dquot;unauto_view *&dquot; は、指定した項目をすべて削除します。 <sect1>MIME Multipart/Alternative<label id="alternative_order"> <p> Mutt には、multipart/alternative のうち、どのタイプの添付ファイルを 表示するか決定するための発見的手法があります。まず最初に alternative_order リストを調べて、選べるタイプのなかで 一番望ましいとされているものがあればそれに決めます。 alternative_order リストには複数の MIME タイプが順に並べられます。 これには明示的および暗示的なワイルドカードのサポートも付いています。 例えばこうです。 <tscreen><verb> alternative_order text/enriched text/plain text application/postscript image/* </verb></tscreen> 次に Mutt は、いずれかのタイプが <ref id="auto_view" name="auto_view" > で定義されていないかどうかを調べ、それを使います。それでもだめなら text タイプを探します。最終手段としては、扱い方のわかるタイプが一つでも ないかどうかと探します。 MIME タイプを <tt/alternative_order/ リストから削除するには、 <tt/unalternative_order/ コマンドを使います。 <sect1>MIME 調査<label id="mime_lookup"> <p> Mutt の mime_lookup リストは、mailcap の項目に従って扱うべきでは ない MIME タイプを指定するものです。このオプションは、 application/octet-stream のようなバイナリのタイプを取り扱うように 設計されています。 添付ファイルの MIME タイプが mime_lookup に指定されているときは、 そのファイル名の拡張子を mime.types ファイルの拡張子のリストと見比べて、 拡張子に対応する MIME タイプを使って、mailcap にあるルールや 他の指定された設定オプション (例えば auto_view) に従った処理をします。 一般的な使い方はこうです、 <tscreen><verb> mime_lookup application/octet-stream application/X-Lotus-Manuscript </verb></tscreen> なお、unmime_lookup コマンドを使えば、 すでにシステムの muttrc 等で設定されている特定の MIME タイプに対して この機能を適用しないようにすることもできます。 <sect>早見表 <sect1>コマンドラインオプション<label id="commandline" > <p> 引数なしで <tt>mutt</tt> だけ実行すると、Mutt はスプールメイルボックスを 読みに行きます。しかし、コマンドラインから指定してやることで、 他のメイルボックスを読んだりメイルを送ったりすることも可能です。 <tscreen><verb> -A エイリアスを展開 -a メッセイジにファイルを添付 -b ブラインドカーボンコピー (BCC) アドレスを指定 -c カーボンコピー (Cc) アドレスを指定 -D すべての設定変数を表示 -e 設定コマンドを指定して、初期化ファイルを読んだ後に実行 -f 読み込むメイルボックスを指定 -F 初期化コマンドを読むファイルとして別のものを指定 -h コマンドラインオプションについてのヘルプを表示 -H 下書きファイルを指定して、そこからヘッダと本文を読み出す -i 作成メッセイジに含めるファイルを指定 -m 既定のメイルボックスの種類を指定 -n システムの Muttrc を読まない -p 延期していたメッセイジを呼び出す -Q 設定変数を問い合わせる -R メイルボックスを読み出し専用で開く -s 題を指定 (空白を含むときは引用符で囲むこと) -v ヴァージョン番号とコンパイル時の設定を表示 -x mailx(1) のコンポウズモウドを真似る -y mailboxes コマンドで指定されたファイルのメニューを表示 -z メイルボックスにメッセイジが存在しないときはすぐ終了 -Z 新着メッセイジのある最初のフォルダを開くが、なければすぐ終了 </verb></tscreen> メイルボックス内のメッセイジを読むには、こうします。 <tt/mutt/ [ -nz ] [ -F <em/muttrc/ ] [ -m <em/メイルボックスの種類/ ] [ -f <em/メイルボックス/ ] 新規にメッセイジを作成するには、こうします。 <tt/mutt/ [ -n ] [ -F <em/muttrc/ ] [ -a <em/添付ファイル/ ] [ -c <em/CCアドレス/ ] [ -i <em/引用ファイル/ ] [ -s <em/題名/ ] <em/アドレス/ [ <em/アドレス/ ... ] Mutt は、準備しておいたメッセイジを送信する &dquot;batch&dquot; モウドも サポートしています。 単に、送信したいファイルから入力へリダイレクトしてください。例えば、 <tt>mutt -s &dquot;data set for run #2&dquot; professor@bigschool.edu < ˜/run2.dat</tt> このコマンドは、メッセイジを &dquot;professor@bigschool.edu&dquot; に &dquot;data set for run #2&dquot; という題で送信します。 そのメッセイジの本文にはファイル &dquot;˜/run2.dat&dquot; の内容が入ります。 <sect1>設定コマンド<label id="commands" > <p> 以下が、Mutt の理解するコマンドです。 <itemize> <item> <tt><ref id="account-hook" name="account-hook"></tt> <em/パターン/ <em/コマンド/ <item> <tt><ref id="alias" name="alias"></tt> <em/キー/ <em/アドレス/ [ , <em/アドレス/, ... ] <item> <tt><ref id="alias" name="unalias"></tt> [ * | <em/キー/ ... ] <item> <tt><ref id="alternates" name="alternates"></tt> <em/正規表現/ [ <em/正規表現/ ... ] <item> <tt><ref id="alternates" name="unalternates"></tt> [ * | <em/正規表現/ ... ] <item> <tt><ref id="alternative_order" name="alternative_order"></tt> <em/MIME/ [ <em/MIME/ ... ] <item> <tt><ref id="alternative_order" name="unalternative_order"></tt> <em/MIME/ [ <em/MIME/ ... ] <item> <tt><ref id="auto_view" name="auto_view"></tt> <em/MIME/ [ <em/MIME/ ... ] <item> <tt><ref id="auto_view" name="unauto_view"></tt> <em/MIME/ [ <em/MIME/ ... ] <item> <tt><ref id="bind" name="bind"></tt> <em/使う場面/ <em/キー/ <em/関数/ <item> <tt><ref id="charset-hook" name="charset-hook"></tt> <em/別名/ <em/文字セット/ <item> <tt><ref id="color" name="color"></tt> <em/対象/ <em/前景/ <em/背景/ [ <em/正規表現/ ] <item> <tt><ref id="color" name="uncolor"></tt> <em/index/ <em/パターン/ [ <em/パターン/ ... ] <item> <tt><ref id="exec" name="exec"></tt> <em/関数/ [ <em/関数/ ... ] <item> <tt><ref id="fcc-hook" name="fcc-hook"></tt> <em/パターン/ <em/メイルボックス/ <item> <tt><ref id="fcc-save-hook" name="fcc-save-hook"></tt> <em/パターン/ <em/メイルボックス/ <item> <tt><ref id="folder-hook" name="folder-hook"></tt> <em/パターン/ <em/コマンド/ <item> <tt><ref id="hdr_order" name="hdr_order"></tt> <em/ヘッダ/ [ <em/ヘッダ/ ... ] <item> <tt><ref id="hdr_order" name="unhdr_order"></tt> <em/ヘッダ/ [ <em/ヘッダ/ ... ] <item> <tt><ref id="charset-hook" name="iconv-hook"></tt> <em/文字セット/ <em/ロウカル文字セット/ <item> <tt><ref id="ignore" name="ignore"></tt> <em/パターン/ [ <em/パターン/ ... ] <item> <tt><ref id="ignore" name="unignore"></tt> <em/パターン/ [ <em/パターン/ ... ] <item> <tt><ref id="lists" name="lists"></tt> <em/正規表現/ [ <em/正規表現/ ... ] <item> <tt><ref id="lists" name="unlists"></tt> <em/正規表現/ [ <em/正規表現/ ... ] <item> <tt><ref id="macro" name="macro"></tt> <em/メニュー/ <em/キー/ <em/操作内容/ [ <em/説明/ ] <item> <tt><ref id="mailboxes" name="mailboxes"></tt> <em/ファイル名/ [ <em/ファイル名/ ... ] <item> <tt><ref id="mbox-hook" name="mbox-hook"></tt> <em/パターン/ <em/メイルボックス/ <item> <tt><ref id="message-hook" name="message-hook"></tt> <em/パターン/ <em/コマンド/ <item> <tt><ref id="mime_lookup" name="mime_lookup"></tt> <em/MIME/ [ <em/MIME/ ... ] <item> <tt><ref id="mime_lookup" name="unmime_lookup"></tt> <em/MIME/ [ <em/MIME/ ... ] <item> <tt><ref id="color" name="mono"></tt> <em/属性/ [ <em/正規表現/ ] <item> <tt><ref id="color" name="unmono"></tt> <em/index/ <em/パターン/ [ <em/パターン/ ... ] <item> <tt><ref id="my_hdr" name="my_hdr"></tt> <em/文字列/ <item> <tt><ref id="my_hdr" name="unmy_hdr"></tt> <em/フィールド/ [ <em/フィールド/ ... ] <item> <tt><ref id="crypt-hook" name="crypt-hook"></tt> <em/パターン/ <em/鍵ID/ <item> <tt><ref id="push" name="push"></tt> <em/文字列/ <item> <tt><ref id="set" name="reset"></tt> <em/変数/ [<em/変数/ ... ] <item> <tt><ref id="save-hook" name="save-hook"></tt> <em/正規表現/ <em/ファイル名/ <item> <tt><ref id="score-command" name="score"></tt> <em/パターン/ <em/値/ <item> <tt><ref id="score-command" name="unscore"></tt> <em/パターン/ [ <em/パターン/ ... ] <item> <tt><ref id="send-hook" name="send-hook"></tt> <em/正規表現/ <em/コマンド/ <item> <tt><ref id="send2-hook" name="send2-hook"></tt> <em/正規表現/ <em/コマンド/ <item> <tt><ref id="reply-hook" name="reply-hook"></tt> [!]<em/パターン/ <em/コマンド/ <item> <tt><ref id="set" name="set"></tt> [no|inv]<em/変数/[=<em/値/] [ <em/変数/ ... ] <item> <tt><ref id="set" name="unset"></tt> <em/変数/ [<em/変数/ ... ] <item> <tt><ref id="source" name="source"></tt> <em/ファイル名/ <item> <tt><ref id="spam" name="spam"></tt> <em/パターン/ <em/書式/ <item> <tt><ref id="spam" name="nospam"></tt> <em/パターン/ <item> <tt><ref id="lists" name="subscribe"></tt> <em/正規表現/ [ <em/正規表現/ ... ] <item> <tt><ref id="lists" name="unsubscribe"></tt> <em/正規表現/ [ <em/正規表現/ ... ] <item> <tt><ref id="set" name="toggle"></tt> <em/変数/ [<em/変数/ ... ] <item> <tt><ref id="unhook" name="unhook"></tt> <em/フック/ </itemize> <sect1>設定変数<label id="variables"> <p> <sect2>abort_nosubject<label id="abort_nosubject"> <p> Type: quadoption<newline> Default: ask-yes <p> <em>yes</em> に設定されていると、メッセイジ作成時の題名入力に対して 題が与えられなかったときに、作成が中止される。 <em>no</em> に設定されていると、題がなくても中止されない。 <sect2>abort_unmodified<label id="abort_unmodified"> <p> Type: quadoption<newline> Default: yes <p> <em>yes</em> に設定されていると、メッセイジ本文の編集後に ファイルへの変更がなければ作成を自動終了する (このチェックは そのファイルの<em>最初の</em>編集後にのみ発生する)。 <em>no</em> に設定されていると、どんなときも作成が中止されない。 <sect2>alias_file<label id="alias_file"> <p> Type: path<newline> Default: &dquot;˜/.muttrc&dquot; <p> <ref id="create-alias" name="create-alias"> 関数で作成された エイリアスを保存する既定ファイル。 <p> <bf>注意:</bf> Mutt は自動でこのファイルを source するわけではない。 明示的に <ref id="source" name="source"> コマンドを使用して 実行しなくてはならない。(訳注:このファイルには alias コマンドが 羅列してあるだけだから「実行」するのである) <sect2>alias_format<label id="alias_format"> <p> Type: string<newline> Default: &dquot;%4n %2f %t %-10a %r&dquot; <p> エイリアスメニューに表示されるデイタの書式を指定する。 次の printf(3) 式のシークウェンスが利用できる。 <p> <descrip> <tag>%a </tag>エイリアス名 <tag>%f </tag>フラグ - 現時点では、削除予定のエイリアスに &dquot;d&dquot; が付くだけ <tag>%n </tag>インデックス番号 <tag>%r </tag>展開後のアドレス <tag>%t </tag>使用するためにタグ付けされていることを表す文字 </descrip> <sect2>allow_8bit<label id="allow_8bit"> <p> Type: boolean<newline> Default: yes <p> メイル送信時に Quoted-Printable か Base64 を使って 8 ビットデイタを 7 ビットに変換するかどうかを制御する。 <sect2>allow_ansi<label id="allow_ansi"> <p> Type: boolean<newline> Default: no <p> メッセイジ中の ANSI 色コウド (と、リッチテキストメッセイジの色タグ) を解釈するかどうかを制御する。こうしたコウドを含むメッセイジは稀だが、 このオプションが設定されていれば、相応に着色される。 注意すべきなのは、自分の色選択を上書きしかねないという点や、 セキュリティ上の問題さえ引き起こしかねないという点である。 というのは、メッセイジに添付ファイルの色で &dquot;[-- PGP output follows ...&dquot; という行を含めてあるかもしれないからだ。 <sect2>arrow_cursor<label id="arrow_cursor"> <p> Type: boolean<newline> Default: no <p> 設定されているときには、行全体の反転ではなく矢印 (&dquot;->&dquot;) を使って、メニューにおける現在位置を示す。これを使えば、 遅いネットワークやモデム接続で反応を早くすることができる。 なぜなら、メニューで前後の項目へ動く際に 画面上で再描画しなければならない部分が少ないからだ。 <sect2>ascii_chars<label id="ascii_chars"> <p> Type: boolean<newline> Default: no <p> 設定されていると、スレッドや添付ファイルの枝分かれを表示する際に、 既定の <em>ACS</em> 文字ではなくプレイン ASCII 文字を使う。 <sect2>askbcc<label id="askbcc"> <p> Type: boolean<newline> Default: no <p> 設定されていると、送信メッセイジ編集前にブラインドカーボンコピー (Bcc) の宛先を入力するよう Mutt が促してくる。 <sect2>askcc<label id="askcc"> <p> Type: boolean<newline> Default: no <p> 設定されていると、Mutt は送信メッセイジの編集前にカーボンコピー (Cc) の宛先を尋ねてくる。 <sect2>attach_format<label id="attach_format"> <p> Type: string<newline> Default: &dquot;%u%D%I %t%4n %T%.40d%> [%.7m/%.10M, %.6e%?C?, %C?, %s] &dquot; <p> この変数は添付ファイルメニューの書式を記述する。 下記の printf 式シークウェンスが理解できる。 <p> <descrip> <tag>%C </tag>文字セット <tag>%c </tag>文字セット変換の必要性 (n=無変換, c=変換) <tag>%D </tag>削除予定フラグ <tag>%d </tag>内容説明 <tag>%e </tag>MIME content-transfer-encoding (通信時の符号化方法) <tag>%f </tag>ファイル名 <tag>%I </tag>disposition (I=inline, A=attachment) <tag>%m </tag>メジャー MIME タイプ <tag>%M </tag>MIME サブタイプ <tag>%n </tag>添付ファイル番号 <tag>%s </tag>サイズ <tag>%t </tag>タグフラグ <tag>%T </tag>視覚的な枝分かれ文字 <tag>%u </tag>アンリンク (=送信後削除) フラグ <tag>%>X </tag>以降の文字列を右寄せし、余白を &dquot;X&dquot; で詰める <tag>%|X </tag>行の末尾まで、文字 &dquot;X&dquot; で詰める </descrip> <sect2>attach_sep<label id="attach_sep"> <p> Type: string<newline> Default: &dquot;\n&dquot; <p> 複数のタグ付き添付ファイルを処理 (保存、印刷、パイプ等々) する際に、各添付ファイルの間に付ける区切り。 <sect2>attach_split<label id="attach_split"> <p> Type: boolean<newline> Default: yes <p> この変数が設定されていないと、複数のタグ付き添付ファイルを処理 (保存、印刷、パイプ等々) するときに Mutt が添付ファイルを連結して 一つのファイルのように扱うことになる。その際 <ref id="attach_sep" name="$attach_sep"> が各ファイルの後に追加される。なお、この変数が設定されているときには 添付ファイルを一つずつ別々に処理する。 <sect2>attribution<label id="attribution"> <p> Type: string<newline> Default: &dquot;On %d, %n wrote:&dquot; <p> これは、返信で引用されるメッセイジの前に付く文字列である。 定義されている printf() 風シークウェンスの完全な一覧は <ref id="index_format" name="$index_format"> の節を見よ。 <sect2>autoedit<label id="autoedit"> <p> Type: boolean<newline> Default: no <p> これと <ref id="edit_headers" name="$edit_headers"> が設定されていると、Mutt は最初の送信メニューを飛ばして、 即座にメッセイジ本文を編集し始めさせてくれる。 送信メニューには、後でメッセイジ本文を編集し終えてから行くことができる。 <p> <ref id="fast_reply" name="$fast_reply"> も参照のこと。 <sect2>auto_tag<label id="auto_tag"> <p> Type: boolean<newline> Default: no <p> 設定されているときに <em>インデックス</em> メニューから メッセイジに影響を与える関数を実行すると、その関数は タグ付けされたメッセイジすべて (もしあれば) に適用される。 (訳注:もしタグがなければ、カーソル位置のメッセイジに適用されるので注意。 <ref id="tags" name="「タグを使う」の説明">を参照。) 設定されていないときは、まず tag-prefix 関数 (既定値: &dquot;;&dquot;) を使って、次の関数をタグ付きメッセイジに適用するようにしなくてはならない。 <sect2>beep<label id="beep"> <p> Type: boolean<newline> Default: yes <p> この変数が設定されているときにはエラー発生時に Mutt が音を鳴らす。 <sect2>beep_new<label id="beep_new"> <p> Type: boolean<newline> Default: no <p> この変数が設定されているとき、Mutt は新着メイルを知らせるメッセイジを 表示するたびに音を鳴らす。これは <ref id="beep" name="$beep"> 変数の設定とは無関係である。 <sect2>bounce<label id="bounce"> <p> Type: quadoption<newline> Default: ask-yes <p> メッセイジ中継で確認のための質問をするかどうかを制御する。 <em>yes</em> に設定してあると、本当に中継するかどうかを質問されない。 この変数を <em>no</em> にすることは一般的に無益であり、推奨できない。 なぜならメッセイジを中継できなくなってしまうからだ。 <sect2>bounce_delivered<label id="bounce_delivered"> <p> Type: boolean<newline> Default: yes <p> この変数が設定されているときにはメッセイジ中継の際に Mutt が Delivered-To ヘッダを付けてくれる。 Postfix ユーザはこの変数を解除したいと思うだろう。 <sect2>braille_friendly<label id="braille_friendly"> <p> Type: boolean<newline> Default: no <p> arrow_cursor 変数が解除されていても、この変数が設定されて いれば、カーソルがメニューの行頭に置かれるようになる。こうすると 目の不自由な人が点字ディスプレイを使ってメニューを理解するのが 容易になる。このオプションが既定で無効になっているのは、カーソル を消すことのできない画面端末が少なくないからだ。 <sect2>charset<label id="charset"> <p> Type: string<newline> Default: &dquot;&dquot; <p> テキストデイタを端末で表示したり入力したりするのに使う文字セット。 <sect2>check_new<label id="check_new"> <p> Type: boolean<newline> Default: yes <p> <bf>注意:</bf> このオプションが有効なのは <em>Maildir</em> と <em>MH</em> 形式メイルボックスだけである。 <p> <em>yes</em> のときは、開いている最中のメイルボックスに着信する 新着メイルを調べる。特に MH メイルボックスについて言えることだが、 この調査はかなり時間のかかることがある。というのも、ディレクトリ全体を 走査して、各ファイルを既に見たものかどうか確認する必要があるからだ。 もし <em>check_new</em> が <em>no</em> なら、 開いているメイルボックスには新着メイルの確認を行わない。 <sect2>collapse_unread<label id="collapse_unread"> <p> Type: boolean<newline> Default: yes <p> <em>no</em> のときは、未読メッセイジが含まれるスレッドを折り畳まない。 <sect2>uncollapse_jump<label id="uncollapse_jump"> <p> Type: boolean<newline> Default: no <p> <em>yes</em> のときは、カーソル下の折り畳まれて<em>いた</em>スレッドが <em>広げられる</em>際、未読メッセイジがあればそこにカーソルを移す。 <sect2>compose_format<label id="compose_format"> <p> Type: string<newline> Default: &dquot;-- Mutt: Compose [Approx. msg size: %l Atts: %a]%>-&dquot; <p> <em>コンポウズ</em>メニューで表示されるステイタス行の書式を制御する。 この文字列は <ref id="status_format" name="$status_format"> とほぼ同じだが、独自の printf() 風シークウェンスを持っている。 <p> <descrip> <tag>%a </tag>添付ファイルの総数 <tag>%h </tag>ロウカルのホスト名 <tag>%l </tag>メッセイジのおおよそのサイズ (バイト単位) <tag>%v </tag>Mutt ヴァージョン文字列 </descrip> <p> <ref id="compose_format" name="$compose_format"> の設定法に関してさらに情報を得るには、 <ref id="status_format" name="$status_format"> オプションの説明文を見よ。 <sect2>config_charset<label id="config_charset"> <p> Type: string<newline> Default: &dquot;&dquot; <p> 定義されていると、設定ファイルのコマンドをこの符号化方式から (訳注:<ref id="charset" name="$charset"> へ) 復号する。 <sect2>confirmappend<label id="confirmappend"> <p> Type: boolean<newline> Default: yes <p> 設定されていると、 Mutt がメッセイジを既存メイルボックスに追加するときに確認を促す。 <sect2>confirmcreate<label id="confirmcreate"> <p> Type: boolean<newline> Default: yes <p> 設定されていると、存在しないメイルボックスにメッセイジを保存する際、 メイルボックスを作成する前に確認を促す。 <sect2>connect_timeout<label id="connect_timeout"> <p> Type: number<newline> Default: 30 <p> この秒数でネットワーク接続 (IMAP と POP) が確立できなければ Mutt は時間切れとして諦める。 負の数だと、接続が成功するまで永遠に待ち続ける。 <sect2>content_type<label id="content_type"> <p> Type: string<newline> Default: &dquot;text/plain&dquot; <p> 新規作成メッセイジ本文における既定の Content-Type を設定する。 <sect2>copy<label id="copy"> <p> Type: quadoption<newline> Default: yes <p> この変数は、送信メッセイジのコピーを 後で参照するために保存しておくかどうかを制御する。 <ref id="record" name="$record">, <ref id="save_name" name="$save_name">, <ref id="force_name" name="$force_name">, <ref id="fcc-hook" name="fcc-hook"> も参照。 <sect2>crypt_use_gpgme<label id="crypt_use_gpgme"> <p> Type: boolean<newline> Default: no <p> GPGME を使った暗号バックエンドの使用を制御する。 これが設定されていて、かつ Mutt が gpgme サポートありで構築されていると、 S/MIME と PGP に旧式コウドではなく gpgme コウドが用いられる。 注意が一つ。このオプションは .muttrc で使う必要があり、 実行中に使ってもまったく効果がない。 <sect2>crypt_autopgp<label id="crypt_autopgp"> <p> Type: boolean<newline> Default: yes <p> この変数は、Mutt がメッセイジに自動で PGP 暗号化/署名を有効にしても 良いかどうかを制御する。 <ref id="crypt_autoencrypt" name="$crypt_autoencrypt">, <ref id="crypt_replyencrypt" name="$crypt_replyencrypt">, <ref id="crypt_autosign" name="$crypt_autosign">, <ref id="crypt_replysign" name="$crypt_replysign">, <ref id="smime_is_default" name="$smime_is_default"> も見よ。 <sect2>crypt_autosmime<label id="crypt_autosmime"> <p> Type: boolean<newline> Default: yes <p> この変数は、自動的な S/MIME 暗号化/署名を有効にするかどうかを制御する。<!-- 意訳 --> <ref id="crypt_autoencrypt" name="$crypt_autoencrypt">, <ref id="crypt_replyencrypt" name="$crypt_replyencrypt">, <ref id="crypt_autosign" name="$crypt_autosign">, <ref id="crypt_replysign" name="$crypt_replysign">, <ref id="smime_is_default" name="$smime_is_default"> も見よ。 <sect2>date_format<label id="date_format"> <p> Type: string<newline> Default: &dquot;!%a, %b %d, %Y at %I:%M:%S%p %Z&dquot; <p> この変数は <ref id="index_format" name="$index_format"> 中の &dquot;%d&dquot; シークウェンスによって表示される日付の書式を制御する。 これを <em>strftime</em> コールに渡して日付を処理する。 正しい文法については <em>strftime(3)</em> の man ペイジを参照されたい。 <p> 文字列の最初の一字がびっくりマーク (&dquot;!&dquot;) でない限り、 月の名前や曜日の名前は変数 <ref id="locale" name="$locale"> で指定されているロカールに従って展開される。もし最初がびっくりマークなら、 そのマーク自体は捨てられ、残りの文字列にある月や曜日名が <em>C</em> ロカール (つまり合衆国英語 en_US) で展開される。 <sect2>default_hook<label id="default_hook"> <p> Type: string<newline> Default: &dquot;˜f %s !˜P | (˜P ˜C %s)&dquot; <p> send-hook, message-hook, save-hook, fcc-hook に 合致パターンではなく単なる正規表現だけ指定されたときに どう解釈するかを制御する。 これらのフックは宣言された時点で展開されるため、 フックの解釈は宣言の時点でこの変数がとっていた値に従うことになる。 既定値が合致するのは、メッセイジの差出人が正規表現に合致するか、 または差出人が自分 (From のアドレスが &dquot;alternates&dquot; に合致する) で To か Cc の宛先が正規表現に合致する場合である。 <sect2>delete<label id="delete"> <p> Type: quadoption<newline> Default: ask-yes <p> メイルボックスを閉じたり同期したりするときに メッセイジを本当に削除するかどうかを制御する。 <em>yes</em> に設定されていると、削除予定の印を付けたメッセイジは 自動的に、確認を求めることなく消去される。 <em>no</em> に設定されていると、削除予定のメッセイジが メイルボックスにそのまま残ることになる。 (訳注:quadoption すなわち四択オプションであるから、 ask-yes や ask-no にして毎回確認するようにもできる。) <sect2>delete_untag<label id="delete_untag"> <p> Type: boolean<newline> Default: yes <p> このオプションが <em>yes</em> だと、Mutt はメッセイジへ削除の印を付ける際に そのメッセイジのタグを外す。これはメッセイジを明示的に削除するときにも 適用されるし、セイヴして別のフォルダへ移動するときにも適用される。 (訳注:セイヴされたメッセイジは移動先のフォルダに即座に現れるが、 元のフォルダから即座に消え去るわけではない。 通常の削除と同様、削除マークが付くだけなのである。) <sect2>digest_collapse<label id="digest_collapse"> <p> Type: boolean<newline> Default: yes <p> 受信添付ファイルメニューでは、このオプションが <em>yes</em> なら、 multipart/digest の中の各メッセイジについて副パートを表示しない。 副パートを見るには &dquot;v&dquot; を押す必要がある。 <sect2>display_filter<label id="display_filter"> <p> Type: path<newline> Default: &dquot;&dquot; <p> 設定されているときには、この変数で指定されたコマンドを使ってメッセイジを フィルタする。メッセイジは閲覧時に標準入力として <ref id="display_filter" name="$display_filter"> に渡され、そのフィルタされたメッセイジが標準出力から読み出される。 <sect2>dotlock_program<label id="dotlock_program"> <p> Type: path<newline> Default: &dquot;/usr/local/bin/mutt_dotlock&dquot; <p> Mutt が使用する mutt_dotlock (8) バイナリのパス。 <sect2>dsn_notify<label id="dsn_notify"> <p> Type: string<newline> Default: &dquot;&dquot; <p> <bf>注意:</bf> Sendmail 8.8.x 以降を使っていないなら有効にすべきではない。 <p> この変数には、どんなときに通知が返ってくるよう要求するかを設定する。 文字列の中身はコンマ区切り (スペイスを入れないこと!) のリストで、 この中から選べる: <em>never</em> は通知を一切要求しない、 <em>failure</em> は伝達失敗の通知を要求する、 <em>delay</em> はメッセイジの遅延を通知させる、 <em>success</em> は伝達成功を通知させるという意味である。 <p> 例: set dsn_notify=&dquot;failure,delay&dquot; <sect2>dsn_return<label id="dsn_return"> <p> Type: string<newline> Default: &dquot;&dquot; <p> <bf>注意:</bf> Sendmail 8.8.x 以降を使っているのでない限り、 この変数を有効にすべきではない。 <p> この変数は、メッセイジがどれだけ DSN メッセイジで返ってくるかを制御する。 <em>hdrs</em> にしてメッセイジヘッダのみ返ってくるようにするか、 <em>full</em> でメッセイジ全体が返ってくるようにするかのいずれかである。 <p> 例: set dsn_return=hdrs <sect2>duplicate_threads<label id="duplicate_threads"> <p> Type: boolean<newline> Default: yes <p> この変数で制御するのは、Mutt がスレッドで整列しているときに、 同一の message-id を持つメッセイジをスレッドにするかどうかである。 もし設定されていると、そうしたメッセイジを重複だと考えていることを示す等号を スレッド図に表示する。 <sect2>edit_headers<label id="edit_headers"> <p> Type: boolean<newline> Default: no <p> このオプションは、送信メッセイジのヘッダを 本文と一緒に編集できるようにしてくれる。 <sect2>editor<label id="editor"> <p> Type: path<newline> Default: &dquot;&dquot; <p> Mutt が使うエディタを指定する。 指定しないと、VISUAL あるいは EDITOR 環境変数の値になる。 どれも設定されていなければ &dquot;vi&dquot; という文字列になる。 <sect2>encode_from<label id="encode_from"> <p> Type: boolean<newline> Default: no <p> <em>yes</em> のときは、&dquot;From &dquot; という文字列を行頭に含む メッセイジを Mutt が quoted-printable に符号化する。 これは、一部の MDA や MTA がメッセイジに行なおうとする不法改変を 避けるのに役立つ。 <sect2>envelope_from<label id="envelope_from"> <p> Type: boolean<newline> Default: no <p> <em>yes</em> になっているとき、Mutt はメッセイジの <em>エンヴェロウプ</em>送信者を &dquot;From:&dquot; ヘッダに基づいて設定しようとする。 この情報が sendmail コマンドに &dquot;-f&dquot; スウィッチを使って渡される ということに注意せよ。このため、そのスウィッチを自分で <ref id="sendmail" name="$sendmail"> の中に使っている場合や、 マシンの sendmail がこのコマンドラインスウィッチを サポートしていない場合には、このオプションを設定してはならない。 <sect2>escape<label id="escape"> <p> Type: string<newline> Default: &dquot;˜&dquot; <p> 内蔵エディタの各種機能を使うためのエスケイプ文字。 <sect2>fast_reply<label id="fast_reply"> <p> Type: boolean<newline> Default: no <p> 設定されていると、メッセイジへ返信する際、最初に宛先と題名を入力するのを省く。 転送する際にも題名の入力を省く。 <p> <bf>メモ:</bf> <ref id="autoedit" name="$autoedit"> が設定されているときには、この変数は意味がない。 <sect2>fcc_attach<label id="fcc_attach"> <p> Type: boolean<newline> Default: yes <p> この変数は、送信メッセイジの添付ファイルを 本文と共に保存しておくかどうかを制御する。 <sect2>fcc_clear<label id="fcc_clear"> <p> Type: boolean<newline> Default: no <p> この変数が設定されているときは、実際のメッセイジが暗号化されたり署名されたり していても、FCC は暗号化も署名もされずに保管される。(PGP のみ) <sect2>folder<label id="folder"> <p> Type: path<newline> Default: &dquot;˜/Mail&dquot; <p> メイルボックスの既定位置を指定する。 先頭に &dquot;+&dquot; や &dquot;=&dquot; が付いているパスは、 その部分がこの変数の値に展開される。ただし注意点がある。 この変数を既定値から変更するなら、&dquot;+&dquot; や &dquot;=&dquot; を何かの変数に使う<em>前に</em>その変更が起こるようにしなくてはならない。 なぜなら展開が生じるのは (訳注:変数の使用時ではなく) &dquot;set&dquot; コマンドの実行中だからである。 <sect2>folder_format<label id="folder_format"> <p> Type: string<newline> Default: &dquot;%2C %t %N %F %2l %-8.8u %-8.8g %8s %d %f&dquot; <p> この変数を使って、ファイルブラウザの表示を自分好みの味わいへと カスタマイズすることができる。文字列の内容は <ref id="index_format" name="$index_format"> に似ているが、以下に示す独自の printf() 風シークウェンスがある。 <p> <descrip> <tag>%C </tag>ファイル番号 <tag>%d </tag>フォルダが最後に変更された日付/時刻 <tag>%f </tag>ファイル名 <tag>%F </tag>許可属性 <tag>%g </tag>グループ名 (なければ gid 番号) <tag>%l </tag>ハードリンクの数 <tag>%N </tag>新着メイルがあれば N で、なければ空白 <tag>%s </tag>バイト数 <tag>%t </tag>タグ付けられていれば * で、それ以外は空白 <tag>%u </tag>所有者名 (なければ uid 番号) <tag>%>X </tag>残りの文字列を右寄せして、間を &dquot;X&dquot; で詰める <tag>%|X </tag>行末まで &dquot;X&dquot; で詰める </descrip> <sect2>followup_to<label id="followup_to"> <p> Type: boolean<newline> Default: yes <p> メイル送信時に <em>Mail-Followup-To</em> ヘッダフィールドを 生成するかどうかを制御する。<em>yes</em> だと、 既知のメイリングリストに返信する際には Mutt がこのフィールドを生成する。 既知というのは subscribe コマンドか <ref id="lists" name="lists"> コマンドで 指定されているということである。 <p> このフィールドには目的が二つある。第一に、メイリングリストに 送ったメッセイジに対して、同じ返信を重複して受け取るのを避けることだ。 そして第二に、購読していない既知のリストに送ったメッセイジへの返信を 個別に受け取れるようにすることである。ヘッダの中には、 購読しているリストに送るときはリストのアドレスだけが含まれ、 未購読のリストにはリストのアドレスと自分のメイルアドレスの両方が含まれる。 このヘッダを付けないで購読中のリストに送信すると、 そのメッセイジに対するグループ返信が リストにも自分個人のアドレスにも送られるため、 結果として同じメイルが二通送られてくることになるのだ。 <sect2>force_name<label id="force_name"> <p> Type: boolean<newline> Default: no <p> この変数は <ref id="save_name" name="$save_name"> とほとんど同じだが、宛先アドレスのユーザ名と同じメイルボックスに 送信メッセイジのコピーを保管しようとする際、そのメイルボックスが 存在していなくても (訳注:新規作成して) そこに保管するという点だけが異なる。 <p> <ref id="record" name="$record"> 変数も参照せよ。 <sect2>forward_decode<label id="forward_decode"> <p> Type: boolean<newline> Default: yes <p> 複雑な MIME メッセイジを転送時に text/plain へ復号化するかどうかを制御する。 (訳注:yes のときは) メッセイジヘッダも RFC2047 復号化される。 この変数が使われるのは <ref id="mime_forward" name="$mime_forward"> が <em>no</em> のときだけであり、<em>yes</em> のときには <ref id="mime_forward_decode" name="$mime_forward_decode"> が使われる。 <sect2>forward_edit<label id="forward_edit"> <p> Type: quadoption<newline> Default: yes <p> この quadoption (四択オプション) は、メッセイジ転送時にユーザが 自動でエディタに行かされるかどうかを制御する。 常に無変更で転送したいという人は &dquot;no&dquot; に設定すれば良い。 <sect2>forward_format<label id="forward_format"> <p> Type: string<newline> Default: &dquot;[%a: %s]&dquot; <p> この変数はメッセイジを転送するときの題名の既定値を制御する。 <ref id="index_format" name="$index_format"> 変数と同じ書式シークウェンスを使う。 <sect2>forward_quote<label id="forward_quote"> <p> Type: boolean<newline> Default: no <p> <em>yes</em> のとき、メッセイジ本文中に取り込まれた転送メッセイジは (<ref id="mime_forward" name="$mime_forward"> が <em>no</em> のときには) <ref id="indent_string" name="$indent_string"> を使って引用される。 <sect2>from<label id="from"> <p> Type: e-mail address<newline> Default: &dquot;&dquot; <p> 設定されていると、この変数の中身が既定の From アドレスになる。 これは my_hdr (send-hook からでも使える) や <ref id="reverse_name" name="$reverse_name"> を使って上書きすることができる。 なお、この変数は <ref id="use_from" name="$use_from"> が設定されていないと無視される。 <p> 設定されていないときは環境変数 EMAIL の内容が使われる。 <sect2>gecos_mask<label id="gecos_mask"> <p> Type: regular expression<newline> Default: &dquot;^[^,]*&dquot; <p> Mutt がエイリアスを展開する際にパスワード項目の GECOS フィールド (訳注:getent passwd の出力で五番目のフィールド) を読み取るための正規表現。 既定値の正規表現は &dquot;^[^,]*&dquot; に設定されており、 これは最初に &dquot;,&dquot; に当たるまでの部分の文字列を返すことになる。 もし GECOS フィールドに &dquot;姓, 名&dquot; のような文字列が含まれているなら gecos_mask=&dquot;.*&dquot; と設定すべきである。 <p> 次のような動作に有効である。メイルを stevef というユーザ ID の人に 送るとする。その人の本名は Steve Franklin である。Mutt が stevef を &dquot;Franklin&dquot; stevef@foo.bar というように展開してしまう。 この場合は、gecos_mask を名前全体に合致するような正規表現に設定して、 Mutt が &dquot;Franklin&dquot; から &dquot;Franklin, Steve&dquot; へと視野を広げられるようにすべきなのだ。 <sect2>hdrs<label id="hdrs"> <p> Type: boolean<newline> Default: yes <p> 設定されていないときには、通常だと追加される <ref id="my_hdr" name="my_hdr"> コマンドのヘッダフィールドが 作成されない。この変数の効果を発揮するには、<em>必ず</em>その 新規メッセイジの作成や返信の<em>前に</em>解除しなくてはならない。 設定されているときにはユーザ定義ヘッダフィールドが すべての新メッセイジに追加される。 <sect2>header<label id="header"> <p> Type: boolean<newline> Default: no <p> 設定されているときには、返信元メッセイジのヘッダを Mutt が編集バッファに取り込むようになる。 <ref id="weed" name="$weed"> の設定が適用される。 <sect2>help<label id="help"> <p> Type: boolean<newline> Default: yes <p> 設定されていると、各メニューに備わる主な機能のキー割り当て を説明するヘルプが画面の一行目に表示される。 <p> <bf>メモ:</bf> 操作キーが正しく表示されないことがある。これは関数が 一つのキー押下だけでなく一連の操作に割り当てられている場合だ。 さらに、Mutt 実行中に割り当てが変更されてもヘルプ行は更新されないことがある。 ただ、この変数は基本的に新しいユーザのためにあるので、 どちらもさほど大きな問題とはならないはずだ。 <sect2>hidden_host<label id="hidden_host"> <p> Type: boolean<newline> Default: no <p> 設定されているときには、Mutt がアドレスにドメイン部分を付ける際、 <ref id="hostname" name="$hostname"> 変数のホスト名部分を抜く。 この変数は Message-ID の生成に影響しないし、 最上位ドメインまで切除してしまうようなことにもならない。 <sect2>hide_limited<label id="hide_limited"> <p> Type: boolean<newline> Default: no <p> 設定されていると、スレッド分岐図の中で、 limit (表示制限) によって隠れているメッセイジのある場所を Mutt が指示しなくなる。 <sect2>hide_missing<label id="hide_missing"> <p> Type: boolean<newline> Default: yes <p> 設定されていると、スレッド分岐図に欠けているメッセイジの存在を示さなくなる。 <sect2>hide_thread_subject<label id="hide_thread_subject"> <p> Type: boolean<newline> Default: yes <p> 設定されているとき、スレッド中で親または直近の兄と同じ題を持つ メッセイジは、題を表示しない。 <sect2>hide_top_limited<label id="hide_top_limited"> <p> Type: boolean<newline> Default: no <p> 設定されていると、limit (表示制限) で隠れているメッセイジがあることを スレッド頂点で示さなくなる。 <ref id="hide_missing" name="$hide_missing"> が設定されていると、このオプションがどうなっても効果がないので、 覚えておくように。 <sect2>hide_top_missing<label id="hide_top_missing"> <p> Type: boolean<newline> Default: yes <p> 設定されているとき、スレッド頂点では メッセイジが欠けているという表示をしなくなる。 ただ、<ref id="hide_limited" name="$hide_limited"> が設定されているときにはこのオプションの効果がないということに注意せよ。 <sect2>history<label id="history"> <p> Type: number<newline> Default: 10 <p> この変数は文字列履歴バッファのサイズ (記憶する文字列の数 [訳注:字数ではない]) を制御する。このバッファは、変数が設定されるたびに消去される。 <sect2>honor_followup_to<label id="honor_followup_to"> <p> Type: quadoption<newline> Default: yes <p> この変数は、メッセイジへグループ返信する際に Mail-Followup-To ヘッダを尊重するかどうかを制御する。 <sect2>hostname<label id="hostname"> <p> Type: string<newline> Default: &dquot;&dquot; <p> ロウカルメイルアドレスの &dquot;@&dquot; の後に付けるホスト名を指定する。 これはコンパイル時に /etc/resolv.conf から取得した定義を上書きする。 <sect2>ignore_list_reply_to<label id="ignore_list_reply_to"> <p> Type: boolean<newline> Default: no <p> これはメイリングリストからのメッセイジに返信する際の <em>reply</em> 関数の動作に影響する。設定されているとき、&dquot;Reply-To:&dquot; フィールドが &dquot;To:&dquot; フィールドと同じ値に設定されていると、 Mutt は &dquot;Reply-To:&dquot; フィールドがメイリングリストによって (返事を自動でメイリングリストに送らせるため) 設定されたものとみなして、 そのフィールドを無視する。このオプションが設定されているときに返事を メイリングリストに向かわせるには <em>list-reply</em> を使う。また、 <em>group-reply</em> は差出人とリストの両方に返信する。 <sect2>imap_authenticators<label id="imap_authenticators"> <p> Type: string<newline> Default: &dquot;&dquot; <p> これはコロン区切りによる認証方式の一覧で、Mutt はこれらの方式を使って IMAP サーバにログインしようとする。並びは Mutt が試行する順になっている。 認証方式には、'login' か IMAP の能力文字列 'AUTH=xxx' の右辺を使う (例えば 'digest-md5', 'gssapi', 'cram-md5')。このパラメータは大文字と 小文字を区別しない。なおパラメータが<em>未設定</em> (既定) のときには、 Mutt は利用できる方式をすべて、最も安全な方式から最も安全でない方式の 順番に試行する。 <p> 例: set imap_authenticators=&dquot;gssapi:cram-md5:login&dquot; <p> <bf>注記:</bf> Mutt が他の認証方式へ移るのは方式が利用できない場合のみ である。方式が利用できるが認証に失敗したというときには IMAP サーバに 接続しないことになる。 <sect2>imap_check_subscribed<label id="imap_check_subscribed"> <p> Type: boolean<newline> Default: no <p> <em>設定</em>されていると Mutt は、サーバに接続する際に、そのサーバで 購読しているフォルダを調査して、そのフォルダの新着メイルを確認する ようにする。<ref id="mailboxes" name="mailboxes"> コマンドも参照。 <sect2>imap_delim_chars<label id="imap_delim_chars"> <p> Type: string<newline> Default: &dquot;/.&dquot; <p> この中には、IMAP パスを表示する際にフォルダの区切りとして扱いたい 文字の一覧が入る。特にこれが役立つのは <em>folder</em> 変数 の内容を示すために &dquot;=&dquot; ショートカットを使うときである。 (訳注:つまり &dquot;/.=&dquot; のように設定するということか?) <sect2>imap_headers<label id="imap_headers"> <p> Type: string<newline> Default: &dquot;&dquot; <p> Mutt が既定のヘッダ (&dquot;DATE FROM SUBJECT TO CC MESSAGE-ID REFERENCES CONTENT-TYPE CONTENT-DESCRIPTION IN-REPLY-TO REPLY-TO LINES LIST-POST X-LABEL&dquot;) に加えてさらに IMAP サーバへ要求するヘッダフィールド。 スパム検出のためのヘッダを追加したいときに使う。 <bf>注意:</bf> これはスペイス区切りのリストである。 <sect2>imap_home_namespace<label id="imap_home_namespace"> <p> Type: string<newline> Default: &dquot;&dquot; <p> 通常、IMAP ブラウザにおいては、自分の個人用フォルダが INBOX の すぐそばにあってほしいものだ。そのようになっていない場合、 この変数を自分のフォルダへの IMAP パスに設定することができる。 <sect2>imap_keepalive<label id="imap_keepalive"> <p> Type: number<newline> Default: 900 <p> この変数には Mutt が IMAP 接続の継続を主張する<!-- polling open IMAP connections ってどう訳せばいい? -->まで待つ最大秒数を指定する。 その主張をすることにより、Mutt が接続を使い終える前にサーバが 接続を閉じてしまうのを防ぐのである。既定値は、RFC 指定により サーバ側が接続を閉じるまでに待たねばならない時間の最小値 (30 分) 内に しっかりおさまっているが、実際はそこかしこで RFC が破られている。 接続を使用していないとみなされて IMAP サーバから切断されるようであれば、 この数値を減らすこと。 <sect2>imap_list_subscribed<label id="imap_list_subscribed"> <p> Type: boolean<newline> Default: no <p> この変数は、IMAP フォルダ閲覧で調べるのを購読フォルダのみにするか、 それともフォルダすべてにするかを制御する。これは IMAP ブラウザ内で <em>toggle-subscribed</em> 関数を使って切り替えることもできる。 <sect2>imap_login<label id="imap_login"> <p> Type: string<newline> Default: &dquot;&dquot; <p> IMAP サーバへのログイン名。 <p> この変数が設定されていなければ <ref id="imap_user" name="imap_user"> の値が使われる。 <sect2>imap_pass<label id="imap_pass"> <p> Type: string<newline> Default: &dquot;&dquot; <p> IMAP アカウントのパスワードを指定する。<em>未設定</em>だと、 Mutt は fetch-mail 関数の実行時にパスワードを求めることになる。 <bf>警告</bf>: このオプションは十分に安全なマシン上でのみ 使うべきである。なぜなら、muttrc ファイルを自分以外が読めないように したつもりでも、スーパユーザは読めるからだ。 <sect2>imap_passive<label id="imap_passive"> <p> Type: boolean<newline> Default: yes <p> <em>設定</em>されているときには、新着メイル確認のために Mutt が新しく IMAP 接続を開くことはない。Mutt は新着メイルを既存の IMAP 接続でのみ確認することになる。これが有用となるのは、Mutt 起動時にユーザ名とパスワードの入力を促されたくない場合や、 接続を開くのに時間がかかる場合などである。 <sect2>imap_peek<label id="imap_peek"> <p> Type: boolean<newline> Default: yes <p> <em>設定</em>されていると Mutt は、サーバからメッセイジを取得 しただけでメイルが既読として印付けられてしまうことのないように する。これは一般的に良いことであるが、IMAP フォルダを閉じるのが 幾らか遅くなることがある。このオプションはスピード狂の人たちを なだめるためにのみ存在しているのだ。 <sect2>imap_servernoise<label id="imap_servernoise"> <p> Type: boolean<newline> Default: yes <p> <em>設定</em>されているときには、IMAP サーバからの警告メッセイジ を Mutt が表示するようになる。こうしたメッセイジはほとんど 無害なことに関するものであったり、サーバ側の設定ミスのために ユーザからはどうしようもないものであったりすることが多いので、 抑止したいと思うこともあるだろう。 <sect2>imap_user<label id="imap_user"> <p> Type: string<newline> Default: &dquot;&dquot; <p> IMAP サーバ上で扱うメイルの所有ユーザ名。 <p> この変数の既定値はロウカルマシン上のユーザ名になる。 <sect2>implicit_autoview<label id="implicit_autoview"> <p> Type: boolean<newline> Default: no <p> これが &dquot;yes&dquot; に設定されていると、copiousoutput フラグの付いた mailcap 項目がないかどうかを、<em>どんな種類の</em> 添付ファイルに対して調査する。内部ヴューワが (訳注:<ref id="auto_view" name="auto_view"> で) 定義されていなくてもだ。 そのように調査して項目が見つかったときには、 そこで定義されているヴューワを使って内容をテキスト形式へ変換する。 <sect2>include<label id="include"> <p> Type: quadoption<newline> Default: ask-yes <p> 返信しようとしている元のメッセイジ内容を 返信に含めるかどうかを制御する。 <sect2>include_onlyfirst<label id="include_onlyfirst"> <p> Type: boolean<newline> Default: no <p> 返信の際にメッセイジの最初の添付ファイルのみ引用するか、 それともすべて引用するかを制御する。 <sect2>indent_string<label id="indent_string"> <p> Type: string<newline> Default: &dquot;> &dquot; <p> 指定した文字列を、相手のメッセイジから引用した文の 行頭に付ける。この値は、変更しないことが強く推奨されている。 変更すると、熱狂的なネット市民を激昂させてしまう傾向があるからだ。 <sect2>index_format<label id="index_format"> <p> Type: string<newline> Default: &dquot;%4C %Z %{%b %d} %-15.15L (%?l?%4l&%4c?) %s&dquot; <p> この変数によって、メッセイジインデックス画面を好み通りに 調整することができる。 <p> &dquot;形式文字列&dquot; は &dquot;C&dquot; の printf 関数で 出力形式を指示するために使う文字列と似ている (詳細は man を参照)。 Mutt では以下のシークウェンスが定義されている。 <p> <descrip> <tag>%a </tag>差出人のアドレス <tag>%A </tag>(もしあれば) reply-to アドレス (なければ差出人アドレス) <tag>%b </tag>メッセイジフォルダのファイル名 (mailBox の b と考えよ) (訳注:最後に &dquot;/&dquot; が付いているディレクトリだと何も表示されない。 ((strrchr(path,'/'))+1) のポインタから strfcpy しているためである。) <tag>%B </tag>宛てられたリスト、なければフォルダ名 (%b) <tag>%c </tag>メッセイジのバイト数 (英文では文字 [characters] の数) <tag>%C </tag>メッセイジ番号 <tag>%d </tag>日付と時刻を、送信者の現地時間に変換して &dquot;date_format&dquot; の形式にしたもの <tag>%D </tag>日付と時刻を、自分の地域の時間に変換して &dquot;date_format&dquot; の形式にしたもの <tag>%e </tag>スレッド内におけるメッセイジ番号 <tag>%E </tag>スレッド内のメッセイジ総数 <tag>%f </tag>From: 行の全体 (アドレスも本名も含む) <tag>%F </tag>差出人の名前、自分からのメッセイジなら宛先の名前 (訳注:後者には To という文字列が前置される) <tag>%H </tag>このメッセイジのスパム属性 <tag>%i </tag>Message-ID <tag>%l </tag>行数 (Maildir と MH では使えないし、IMAP でもたぶん不可 [訳注:0 になる]) <tag>%L </tag>To または CC ヘッダフィールドが &dquot;subscribe&dquot; コマンドで定義された正規表現に合致すると &dquot;To <list-name>&dquot; (訳注:&dquot;Cc <list-name>&dquot; の場合もある) と表示する。 合致しなければ %F と同じ <tag>%m </tag>メイルボックス内のメッセイジ総数 <tag>%M </tag>スレッドが折り畳まれているときの非表示メッセイジの数 <tag>%N </tag>得点 <tag>%n </tag>差出人の本名 (なければアドレス) <tag>%O </tag>(オリジナルセイヴフォルダの O) むかし Mutt が FCC として使っていたような場所<!-- where mutt would have stashed -->: リストアドレスの名前部分、なければ宛先アドレスの名前部分 (訳注:<ref id="save_address" name="$save_address"> が設定されていれば @ 以降も含み、そうでなければ @ の前までのみ) <tag>%s </tag>題名 <tag>%S </tag>メッセイジの状態 (N/D/d/!/r/*) <tag>%t </tag>To: フィールド (宛先) <tag>%T </tag><ref id="to_chars" name="$to_chars"> 文字列中の適切な文字 <tag>%u </tag>送信者のユーザ (ログイン) 名 <tag>%v </tag>送信者 (自分が送信者なら宛先人) のファーストネイム (訳注:日本人だと姓が先なので姓) <tag>%y </tag>あれば X-Label: フィールド <tag>%Y </tag>X-Label フィールドがあり、かつ (1) スレッドトゥリーの一部ではない、(2) スレッドの頂点である、 (3) 前のメッセイジの X-Label と違う X-Label である、の いずれかであれば X-Label フィールド <tag>%Z </tag>3 桁の状態フラグ <tag>%{fmt} </tag>日付と時刻が送信者の現地時間に変換され、 &dquot;fmt&dquot; がライブラリ関数 &dquot;strftime&dquot; により展開される。最初にびっくりマークが付いていると <ref id="locale" name="$locale"> が無視される。 (訳注:%{!%b-%d(%a)} のように使う) <tag>%(fmt) </tag>メッセイジが到着した日付と時刻のロウカル時間表示。 &dquot;fmt&dquot; はライブラリ関数 &dquot;strftime&dquot; により展開され、最初にびっくりマークが付いていると <ref id="locale" name="$locale"> が無視される。 <tag>%<fmt> </tag>ロウカルの現在時刻。 &dquot;fmt&dquot; はライブラリ関数 &dquot;strftime&dquot; により展開され、最初にびっくりマークが付いていると <ref id="locale" name="$locale"> が無視される。 <tag>%>X </tag>残りの文字列を右寄せして、間を &dquot;X&dquot; 部分の文字で詰める (訳注:日本語文字は未対応) <tag>%|X </tag>行末まで &dquot;X&dquot; 部分の文字で詰める </descrip> <p> 参照: <ref id="to_chars" name="$to_chars"> <sect2>ispell<label id="ispell"> <p> Type: path<newline> Default: &dquot;/usr/bin/ispell&dquot; <p> どう ispell (GNU スペルチェッカ) を起動するか。 <sect2>keep_flagged<label id="keep_flagged"> <p> Type: boolean<newline> Default: no <p> 設定されていると、フラグ付き既読メッセイジはスプールメイルボックスから 自分の <ref id="mbox" name="$mbox"> メイルボックス (または <ref id="mbox-hook" name="mbox-hook"> コマンドの結果) に移さない。 <sect2>locale<label id="locale"> <p> Type: string<newline> Default: &dquot;C&dquot; <p> <em>strftime(3)</em> が日付などを整形するために使うロカール。 使うことのできる値は、システムがロカール変数 <em>LC_TIME</em> として受け付ける文字列である。 <sect2>mail_check<label id="mail_check"> <p> Type: number<newline> Default: 5 <p> この値は、どれほどの頻度で (何秒に一度) Mutt が新着メイルを 確認するかを制御する。 <sect2>mailcap_path<label id="mailcap_path"> <p> Type: string<newline> Default: &dquot;&dquot; <p> この変数は、Mutt が直接サポートしていない MIME パート<!-- body -->を 表示しようとする際に、どのファイルに問い合わせるかを指定する。 <sect2>mailcap_sanitize<label id="mailcap_sanitize"> <p> Type: boolean<newline> Default: yes <p> 設定されていると、Mutt は mailcap の %展開に現れる文字を制限して、 ちょうどよく定義された安全な文字に直す。これは安全な設定ではあるが、 これにより高度な MIME 項目が動かなくなることがないとは断言できない。 <p> <bf>DON'T CHANGE THIS SETTING UNLESS YOU ARE REALLY SURE WHAT YOU ARE DOING!<newline> この設定は、完全に理解することなく変更してはならない!</bf> <sect2>header_cache<label id="header_cache"> <p> Type: path<newline> Default: &dquot;&dquot; <p> ヘッダキャッシュ・デイタベイスの場所を指示する。ディレクトリを 指していれば、そこにフォルダごとのヘッダキャッシュが置かれる。 ファイルを指していれば、そのファイルが全体のヘッダキャッシュ となる。既定では未設定であり、ヘッダキャッシュ機能は使われない。 <sect2>maildir_header_cache_verify<label id="maildir_header_cache_verify"> <p> Type: boolean<newline> Default: yes <p> Maildir 未対応のプログラムが Maildir 内のファイルを変更して いないかどうかを、ヘッダキャッシュ使用時に確認する。 (訳注: 未対応とは、ファイルを変更してもファイル名を変更しない プログラムのことを指す。) するとフォルダを開くたびに、メッセイジ一つにつき一度の stat(2) を引き起こす。 <sect2>header_cache_pagesize<label id="header_cache_pagesize"> <p> Type: string<newline> Default: &dquot;16384&dquot; <p> ヘッダキャッシュ・デイタベイスのペイジサイズを変更する。 大きすぎたり小さすぎたりすると、ディスク、メモリ、CPU を無駄遣い することがある。既定値がまあまあ最適な値のはずだ。詳細については google で mutt header cache として検索すること。(最初に出るものを 見れば良い) <sect2>maildir_trash<label id="maildir_trash"> <p> Type: boolean<newline> Default: no <p> 設定されていると、削除予定に印付けられたメッセイジがその後、 削除されるのではなく Maildir の T フラグ (trashed) を付けて保存される。 <bf>注意:</bf> これは Maildir 形式のメイルボックスにのみ適用される。 他のメイルボックス形式にはまったく効果がない。 <sect2>mark_old<label id="mark_old"> <p> Type: boolean<newline> Default: yes <p> <em>新着</em>で<em>未読の</em>メッセイジを読まないまま メイルボックスを出たときに、Mutt がそれに<em>古い</em>という印を 付けるかどうか制御する。このオプションが設定されていると、次回 Mutt を始めたときに、インデックスメニューでメッセイジの隣りに &dquot;O&dquot; と表示される。それが古い (old) ということを示すのである。 <sect2>markers<label id="markers"> <p> Type: boolean<newline> Default: yes <p> 内部ペイジャで折り返された行の表示を制御する。設定されていると、 &dquot;+&dquot; 印が行頭に付いて、折り返し行を表す。 <ref id="smart_wrap" name="$smart_wrap"> 変数も見よ。 <sect2>mask<label id="mask"> <p> Type: regular expression<newline> Default: &dquot;!^\.[^.]&dquot; <p> ファイルブラウザで使われる正規表現。 先頭に <em>NOT</em> 演算子 &dquot;!&dquot; を付けることができる。 ファイル名がこの条件に合致するもののみ表示されることになる。 合致条件は常に大文字と小文字を区別する。 <sect2>mbox<label id="mbox"> <p> Type: path<newline> Default: &dquot;˜/mbox&dquot; <p> これに指定したフォルダへ、<ref id="spoolfile" name="$spoolfile"> フォルダの既読メイルを追加する。 <sect2>mbox_type<label id="mbox_type"> <p> Type: folder magic<newline> Default: mbox <p> 新しいフォルダを作るときに使う既定のメイルボックス形式。 mbox, MMDF, MH, Maildir のいずれでも良い。 <sect2>metoo<label id="metoo"> <p> Type: boolean<newline> Default: no <p> 設定されていないと、メッセイジへの返信時に宛先リストから自分のアドレス (<ref id="alternates" name="alternates"> コマンドを参照) を除去する。 <sect2>menu_context<label id="menu_context"> <p> Type: number<newline> Default: 0 <p> この変数は、メニューをスクロウルする際に残される行数を制御する。 (<ref id="pager_context" name="$pager_context"> のようなもの。) <sect2>menu_move_off<label id="menu_move_off"> <p> Type: boolean<newline> Default: yes <p> <em>解除</em>されていると、メニュー最後の項目が画面の最下部より 上に表示されることがない。ただし画面の行数より項目の数が少ない 場合を除く。また<em>設定</em>されていると、最後の項目も上まで 動くことができる。 <sect2>menu_scroll<label id="menu_scroll"> <p> Type: boolean<newline> Default: no <p> これが <em>yes</em> に設定されているときには、画面の端を 越えようとしたときにメニューが一行ずつスクロウルする。 <em>no</em> なら、画面全体が消去されて次のペイジまたは前のペイジが 表示される (こちらの方が、何度も再描画するのを避けられるので 遅い回線に有用である)。 <sect2>meta_key<label id="meta_key"> <p> Type: boolean<newline> Default: no <p> 設定されていると、高位ビット (8 ビット目) との組み合わせを持つ キー押下を、ユーザが ESC キーを押してから別のキーを押したものと 判断するよう Mutt に強制する。ESC の後に押したキーは、高位ビットを 取り除いた後に残る部分である。例えば、押されたキーが 0xf4 という ASCII 値を持っていると、これはユーザが ESC と &dquot;x&dquot; を 押したものとして扱われる。なぜなら &dquot;0xf4&dquot; から 高位ビットを除いた結果は &dquot;0x74&dquot; であり、これは ASCII 文字の &dquot;x&dquot; だからである。 <sect2>mh_purge<label id="mh_purge"> <p> Type: boolean<newline> Default: no <p> 設定されていないときには、Mutt が mh の挙動を偽装する。 削除メッセイジを実際には削除せず、そのファイル名を 「<em>,<旧ファイル名></em>」に変更するのである。 もし変数が設定されていれば、メッセイジファイルは単に消されてしまう。 <sect2>mh_seq_flagged<label id="mh_seq_flagged"> <p> Type: string<newline> Default: &dquot;flagged&dquot; <p> フラグ付きメッセイジに使う MH シークウェンス名。 <sect2>mh_seq_replied<label id="mh_seq_replied"> <p> Type: string<newline> Default: &dquot;replied&dquot; <p> 返信済みメッセイジに使う MH シークウェンス名。 <sect2>mh_seq_unseen<label id="mh_seq_unseen"> <p> Type: string<newline> Default: &dquot;unseen&dquot; <p> 未見メッセイジに使う MH シークウェンス名。 <sect2>mime_forward<label id="mime_forward"> <p> Type: quadoption<newline> Default: no <p> 設定されているときには、転送するメッセイジが個別の MIME パートとして 添付される。メッセイジ本文に含めるのではないということだ。これは MIME メッセイジの転送に便利である。こうすれば相手も、自分に届けられたのと 同じように正しくメッセイジを閲覧することができるのだ。 もしもメイルごとに MIME と非 MIME を選択したいのであれば、 この変数を ask-no か ask-yes に設定すること。 <p> <ref id="forward_decode" name="$forward_decode"> および <ref id="mime_forward_decode" name="$mime_forward_decode"> も参照。 <sect2>mime_forward_decode<label id="mime_forward_decode"> <p> Type: boolean<newline> Default: no <p> <ref id="mime_forward" name="$mime_forward"> が <em>yes</em> のときには、入り組んだ MIME メッセイジを転送時に text/plain へ復号するかどうかをこの変数が制御する。 <em>no</em> のときには <ref id="forward_decode" name="$forward_decode"> が使われる。 <sect2>mime_forward_rest<label id="mime_forward_rest"> <p> Type: quadoption<newline> Default: yes <p> MIME メッセイジの添付ファイルメニューからファイルを複数 (訳注:非 <ref id="mime_forward" name="MIME"> で) 転送するとき、 適切な復号方法のないファイル<!-- attachments which cannot be decoded in a reasonable manner -->が転送メッセイジに添付されるのは、 このオプションが設定された場合のみである。 (訳注:yes の場合と、ask-yes または ask-no で y と答えた場合のこと。なお、 このオプションは <ref id="mime_forward" name="$mime_forward"> が解除されているときにのみ意味を持つ。非 MIME 転送をしようとしているときに、 MIME でしか転送できないファイルをあきらめる (no) か MIME で転送する (yes) かの設定なのだ。転送ファイルが一つだけのときには、あきらめるはずがないと みなされる。) <sect2>mix_entry_format<label id="mix_entry_format"> <p> Type: string<newline> Default: &dquot;%4n %c %-16s %a&dquot; <p> この変数で Mixmaster チェイン選択画面におけるリメイラ行の書式を記述する。 以下に挙げる printf風シークウェンスが使える。 <p> <descrip> <tag>%n </tag>メニュー内での番号 <tag>%c </tag>リメイラの能力 <tag>%s </tag>リメイラの省略名 <tag>%a </tag>リメイラのメイルアドレス </descrip> <sect2>mixmaster<label id="mixmaster"> <p> Type: path<newline> Default: &dquot;mixmaster&dquot; <p> この変数には自分のシステムの Mixmaster バイナリへのパスを入れる。 これに種々のパラメータを付けて、既知のリメイラ一覧を収集する。 また、最終的にメッセイジを Mixmaster チェイン経由で送信する際にも使う。 <sect2>move<label id="move"> <p> Type: quadoption<newline> Default: ask-no <p> スプールメイルボックスの既読メッセイジを <ref id="mbox" name="$mbox"> メイルボックスや <ref id="mbox-hook" name="mbox-hook"> コマンドの結果へ 移動するかどうかを制御する。 <sect2>message_format<label id="message_format"> <p> Type: string<newline> Default: &dquot;%s&dquot; <p> 「添付ファイル」メニューで message/rfc822 タイプのファイルの部分に 表示される文字列。定義されている printf()風シークウェンスの 完全な一覧表については <ref id="index_format" name="$index_format"> の項を参照のこと。 <sect2>narrow_tree<label id="narrow_tree"> <p> Type: boolean<newline> Default: no <p> この変数が設定されていると、スレッドトゥリーを狭くして、 深いスレッドが画面に収まるようにする。 <sect2>pager<label id="pager"> <p> Type: path<newline> Default: &dquot;builtin&dquot; <p> この変数にはメッセイジ閲覧に使いたいペイジャを指定する。 builtin は内蔵ペイジャを使うという意味になるが、 それ以外は外部ペイジャのパス名を指定すべきである。 <p> 外部ペイジャを使うことには不便な点もある: まず、キーを多く押さなくては ならない。ペイジャから直接 Mutt の関数を呼び出すことはできないからだ。 さらに、画面の大きさを変更すると、ヘルプメニューで画面の幅より長い行が ひどいことになってしまう。 <sect2>pager_context<label id="pager_context"> <p> Type: number<newline> Default: 0 <p> この変数は、内部ペイジャで次のペイジや前のペイジを表示させる際に 文脈として残す行数を制御する。Mutt は既定では、現時点の画面で 一番下にある行の次からを次ペイジとして表示する (文脈は 0 行ということ)。 <!-- Mutt will display the line after the last one on the screen at the top of the next page (0 lines of context). ちょっと意訳 --> <sect2>pager_format<label id="pager_format"> <p> Type: string<newline> Default: &dquot;-%Z- %C/%m: %-20.20n %s&dquot; <p> この変数は一行メッセイジである「ステイタス」の形式を制御する。 これは内部ペイジャでも外部ペイジャでも各メッセイジの前に表示される (訳注:ただし、外部ペイジャの場合には表示内容の前に付加されるが、 内部ペイジャの場合にはインデックスモウドにおけるステイタス行と 同じ位置に常に表示される)。 <!-- This variable controls the format of the one-line message ``status'' displayed before each message in either the internal or an external pager. --> 正しいシークウェンスは <ref id="index_format" name="$index_format"> の項で 一覧にされている。 <sect2>pager_index_lines<label id="pager_index_lines"> <p> Type: number<newline> Default: 0 <p> ペイジャにいるときに表示する小インデックスの行数を決定する。 ペイジャで表示中のメッセイジは、フォルダの上端や下端に近い場合を除き、 この小インデックス画面の中で上からおよそ三分の一の位置になる。 これによって、メッセイジを読むときに前後いくつかのメッセイジが 文脈として与えられる。これが便利なのは、例えば、そのスレッドに あといくつ未読メッセイジが残っているのかを見極めるという場合である。 行数のうち一行はインデックスのステイタス行に使われるので、 <em>pager_index_lines</em> が 6 であっても、 実際のインデックスは 5 行しか表示されないことになる。 0 という値にするとインデックスが表示されない。 フォルダ内のメッセイジ数が <em>pager_index_lines</em> よりも少ないとき、小インデックスは必要な行数だけを使うようにする。 <sect2>pager_stop<label id="pager_stop"> <p> Type: boolean<newline> Default: no <p> 設定されているときには、メッセイジの終わりまで来て <em>next-page</em> 関数を実行しても、内部ペイジャが次のメッセイジへ移動<bf>しない</bf>。 <sect2>crypt_autosign<label id="crypt_autosign"> <p> Type: boolean<newline> Default: no <p> この変数を設定すると Mutt が送信メッセイジを常に暗号学的に署名しようとする。 署名が不要なときや暗号化も要るときには、<em>pgp-menu</em> を使って 上書きすることができる。 <ref id="smime_is_default" name="$smime_is_default"> が設定されているのであれば、OpenSSL を使って S/MIME メッセイジを作成する。 この場合は <em>smime-menu</em> を使って設定を上書きすることができる。 (Crypto only) <sect2>crypt_autoencrypt<label id="crypt_autoencrypt"> <p> Type: boolean<newline> Default: no <p> この変数を設定すると、Mutt が、常に PGP 暗号化して メッセイジを送信しようとするようになる。 これはたぶん、<em>send-hook</em> コマンドとの組み合わせでのみ有用だろう。 暗号化が不要だったり署名も必要だったりするときには、<em>pgp-menu</em> を使って上書きすることができる。 <ref id="smime_is_default" name="$smime_is_default"> が設定されていると OpenSSL が使われて S/MIME メッセイジが作成される。 その際、設定の上書きは <em>smime-menu</em> を使うことにより可能である。 (Crypto only) <sect2>pgp_ignore_subkeys<label id="pgp_ignore_subkeys"> <p> Type: boolean<newline> Default: yes <p> この変数を設定すると Mutt が OpenPGP 副鍵を無視するようになる。 主鍵が (訳注:画面上でのみ) 副鍵の能力を継承するのだ。 鍵選択遊びを楽しみたいのであれば、この変数を解除すること。 <!-- Setting this variable will cause Mutt to ignore OpenPGP subkeys. Instead, the principal key will inherit the subkeys' capabilities. Unset this if you want to play interesting key selection games. --> (訳注:通常、主鍵は署名に使い、副鍵は暗号化に使う。 主鍵の有効期間を長くして副鍵の期間を短くすることで安全性を向上させるよう 推奨されている。通常、ひとつの主鍵に対して有効な副鍵はひとつだけなので、 この変数を設定しても不便なことはないはずだ。) (PGP only) <sect2>crypt_replyencrypt<label id="crypt_replyencrypt"> <p> Type: boolean<newline> Default: yes <p> 設定されていると、暗号化されたメッセイジへの返信には 自動的に PGP か OpenSSL で暗号化する。 (Crypto only) <sect2>crypt_replysign<label id="crypt_replysign"> <p> Type: boolean<newline> Default: no <p> 設定されていると、署名されたメッセイジへの返信には 自動的に PGP か OpenSSL で署名する。 <p> <bf>注意:</bf> 署名され、<bf>かつ暗号化も</bf>されているメッセイジには、 この変数が作用しない! (Crypto only) <sect2>crypt_replysignencrypted<label id="crypt_replysignencrypted"> <p> Type: boolean<newline> Default: no <p> 設定されていると、暗号化されたメッセイジへの返信には 自動的に PGP か OpenSSL で署名する。この変数は <ref id="crypt_replyencrypt" name="$crypt_replyencrypt"> との組み合わせにおいて意味を持つ。その組み合わせによって、 自動的に暗号化されるメッセイジに署名することができるからだ。 この変数は <ref id="crypt_replysign" name="$crypt_replysign"> で注記されている問題の回避策となる。その問題とは、 暗号化されているメッセイジに署名もされているかどうかを調べることが Mutt にはできない、というものである。 (訳注:それで、replysign を設定するなら、ふつうは replysignencrypted も設定したいと思うだろう。 ただし、暗号化かつ署名付きメッセイジに暗号化と署名を施しながら、 署名なし暗号化メッセイジへの返信に暗号化のみ実行するためには フックを使わなければならないであろう。 <ref id="patterns" name="˜g および ˜G"> を参照のこと。) (Crypto only) <sect2>crypt_timestamp<label id="crypt_timestamp"> <p> Type: boolean<newline> Default: yes <p> 設定されていると、Mutt は PGP および S/MIME の出力を囲む行に 時刻表示を含める。これにより出力行の偽造がさらに困難になる。 もし、そうした行に色を使って印付けており、 その色を信頼するのであれば、この設定を解除しても構わない。 (訳注:<ref id="allow_ansi" name="$allow_ansi"> 参照) (Crypto only) <sect2>pgp_use_gpg_agent<label id="pgp_use_gpg_agent"> <p> Type: boolean<newline> Default: no <p> 設定されていると、Mutt は、 既に起動してあるであろう gpg-agent プロセスを使おうとする。 (訳注:gpg-agent とはパスフレイズを記憶してくれるエイジェントで、 newpg および gnupg-1.9 以上に含まれている。 ssh-agent のように、環境変数で通信経路を指定する。 Mutt は、GPG_TTY および GPG_AGENT_INFO 環境変数が設定されていれば gpg-agent が起動しているものとみなし、パスフレイズを尋ねない。 それら環境変数が設定されていなければ通常どおりパスフレイズを尋ねる。 gpg-agent を利用するのであれば、 ˜/.gnupg/gpg.conf に use-agent と書いておくか、 $pgp_*_command 群に --use-agent オプションを 含めておくべきだろう。) (PGP only) <sect2>crypt_verify_sig<label id="crypt_verify_sig"> <p> Type: quadoption<newline> Default: yes <p> &dquot;yes&dquot; なら、常に PGP および S/MIME 署名を検証しようとする。 &dquot;ask&dquot; (訳注:実際には ask-yes か ask-no) なら、署名を 検証するかどうか尋ねる。 &dquot;no&dquot; なら、暗号学的署名を一切検証しようとしない。 (Crypto only) <sect2>smime_is_default<label id="smime_is_default"> <p> Type: boolean<newline> Default: no <p> 自動での署名/暗号化に関する既定の動作は、すべて PGP を使うというものだ。 それを上書きして OpenSSL を使うには、この変数を設定しなくてはならない。 ただし、この変数は返信には効果がない。というのも、Mutt はもともとの メッセイジの署名/暗号化に使われているのと同じ方式<!-- application -->を 自動的に選択するからである。 (この変数は <ref id="crypt_autosmime" name="$crypt_autosmime"> を解除することによって上書きされうるので注意。) (S/MIME only) <sect2>smime_ask_cert_label<label id="smime_ask_cert_label"> <p> Type: boolean<newline> Default: yes <p> このフラグは、デイタベイスに追加しようとする証明書のラベル名を 入力するよう求めるかどうかを制御する。既定では設定されている。 (S/MIME only) <sect2>smime_decrypt_use_default_key<label id="smime_decrypt_use_default_key"> <p> Type: boolean<newline> Default: yes <p> 設定されている (既定) なら、Mutt は復号化に既定鍵を使う。 設定されていないとき、証明書と鍵のペアが複数管理されていれば、 Mutt はメイルアドレス<!-- 原文 mailbox-address であるが、これは rfc822.h の ADDRESS 構造体における mailbox (純粋な user@fqdn 形式) のことだろう --> を使って鍵を決定する。それでも見付からなければ鍵を入力するよう求める。 (S/MIME only) <sect2>pgp_entry_format<label id="pgp_entry_format"> <p> Type: string<newline> Default: &dquot;%4n %t%f %4l/0x%k %-4a %2c %u&dquot; <p> この変数を使って PGP 鍵選択メニューを自分好みに調整することができる。 この文字列は <ref id="index_format" name="$index_format"> に似ているが、独自の printf()風シークウェンスがある。 (訳注:%K, %A, %L, %F, %C も使える。 副鍵にも主鍵の情報を表示する点が異なるが、それ以外は小文字と同じ意味だ。) <p> <descrip> <tag>%n </tag>番号 (number) <tag>%k </tag>鍵 ID (key id) <tag>%u </tag>ユーザ ID (user id) <tag>%a </tag>アルゴリズム (algorithm) <tag>%l </tag>鍵の長さ (length) <tag>%f </tag>フラグ (flags) (訳注:期限切れや破棄など) <tag>%c </tag>能力 (capabilities) (訳注:署名と暗号化) <tag>%t </tag>信用度 (trust) / 鍵とユーザ ID の組み合わせの有効性 (訳注:本来、すべての鍵所有者に対して自分で決定した trust から各鍵の validity すなわち有効性を計算するのであり、「信用度」と「有効性」は違うものである。しかし GnuPG では validity という語を使わず、所有者への信用度は owner-trust, 鍵の有効性は calculated trust と呼ぶようだ。ここで表示されるのは後者である。) <tag>%[<s>] </tag>鍵の日付 (<s> は strftime(3) 表記) </descrip> <p> (PGP only) <sect2>pgp_good_sign<label id="pgp_good_sign"> <p> Type: regular expression<newline> Default: &dquot;&dquot; <p> この変数に文章 (訳注:正しくは正規表現) を割り当てると、その文章が <ref id="pgp_verify_command" name="$pgp_verify_command"> の出力に含まれているときにのみ PGP 署名が検証できたとみなされる。 不正な署名にもコマンドの返り値が 0 になってしまうなら、この変数を使うこと。 (PGP only) <sect2>pgp_check_exit<label id="pgp_check_exit"> <p> Type: boolean<newline> Default: yes <p> 設定されていると、Mutt が署名や暗号化の際に PGP サブプロセスの返り値を 確認するようになる。非ゼロの返り値はサブプロセスの失敗を意味する。 (PGP only) <sect2>pgp_long_ids<label id="pgp_long_ids"> <p> Type: boolean<newline> Default: no <p> 設定されていると 64 ビットの PGP 鍵 ID を使う。 解除時はふつうの 32 ビット鍵 ID を使う。 (PGP only) <sect2>pgp_retainable_sigs<label id="pgp_retainable_sigs"> <p> Type: boolean<newline> Default: no <p> 設定されていると、署名と暗号化をしてあるメッセイジの仲間として、 multipart/encrypted パートの中に multipart/signed パートが入っていたりする メッセイジも含める。 <!-- If set, signed and encrypted messages will consist of nested multipart/signed and multipart/encrypted body parts. --> <p> これは暗号化された署名メイリングリストのようなアプリケイションに便利だ。 すなわち、外層 (multipart/encrypted) が簡単に取り除けるが、 内側の multipart/signed パートは守られているというものである。 (PGP only) <sect2>pgp_autoinline<label id="pgp_autoinline"> <label id="pgp_create_traditional"> <p> Type: boolean<newline> Default: no <p> このオプションは、旧式のインライン (伝統的) PGP 暗号および署名を 生成するかどうかを制御する。ただし特定の状況下でのみ有効だ。 さらに、インラインが必要ないときには <em>pgp-menu</em> を使って上書きすることができる。 <p> Mutt は複数の MIME パートを含むメッセイジには自動的に PGP/MIME を使用する、ということを覚えておくように。また、インライン (伝統的形式) がうまくいかなかったときに PGP/MIME で送信するかどうかを尋ねるように 設定することができる。 参照: <ref id="pgp_mime_auto" name="$pgp_mime_auto"> <p> なお、旧式 PGP メッセイジ形式は<bf>強く否定されている</bf> という点にも注意すべきである。 (PGP only) <sect2>pgp_replyinline<label id="pgp_replyinline"> <label id="pgp_auto_traditional"> <p> Type: boolean<newline> Default: no <p> この変数を設定すると、インライン (伝統的形式) で暗号化/署名されたメッセイジへ 返信する際は、常にインラインのメッセイジを作成しようとするようになる。 しかしインラインが必要ないときには <em>pgp-menu</em> で上書きすることができる。 このオプションは、元のメッセイジがインラインかどうかを自動で 検知するわけではない。事前に確認しフラグが立てられたメッセイジに関する Mutt 内部デイタを信用するだけである。 <p> 複数の MIME パートを含むメッセイジには自動で PGP/MIME を使用するので注意せよ。 また、インライン (伝統的形式) がうまくいかなかったときに PGP/MIME にするかどうかを送信前に尋ねるよう設定することができる。 参照: <ref id="pgp_mime_auto" name="$pgp_mime_auto"> <p> なお、旧式 PGP メッセイジ形式は<bf>避ける</bf>よう<bf>強く</bf> 勧められているという点にも注意すべきである。 (PGP only) <sect2>pgp_show_unusable<label id="pgp_show_unusable"> <p> Type: boolean<newline> Default: yes <p> 設定されていると、使用不可能な鍵を PGP 鍵選択メニューに表示する。 これには、破棄された鍵、期限切れの鍵、またユーザによって「使用不可」 とされた鍵が含まれる。 (PGP only) <sect2>pgp_sign_as<label id="pgp_sign_as"> <p> Type: string<newline> Default: &dquot;&dquot; <p> 複数の鍵ペアがあるとき、どの秘密鍵を使うかを このオプションで指定することができる。 指定には鍵 ID 形式を使うよう推奨されている (例 &dquot;0x00112233&dquot;)。 (PGP only) <sect2>pgp_strict_enc<label id="pgp_strict_enc"> <p> Type: boolean<newline> Default: yes <p> 設定されていると PGP/MIME 署名メッセイジを自動的に <em>quoted-printable</em> で符号化する。 この変数を解除すると PGP 署名が検証できなくなるかもしれないので注意せよ。 この変数の意味をよく理解している場合にのみ変更するように。 (訳注:日本語環境においては QP を理解しない PGP プラグインを利用する MUA もあるため、この変数を設定していると、相手がメッセイジを読むことすら できないかもしれない。訳者はこの問題で悩んだことがあるので、 解除しておくことを勧める。) (PGP only) <sect2>pgp_timeout<label id="pgp_timeout"> <p> Type: number<newline> Default: 300 <p> キャッシュされたパスフレイズが使用されない場合に期限切れになるまでの秒数。 (PGP only) <sect2>pgp_sort_keys<label id="pgp_sort_keys"> <p> Type: sort order<newline> Default: address <p> PGP 鍵メニューの項目をどう整列するか指定する。 以下が有効な値である。 <p> <descrip> <tag>address </tag>ユーザ ID でアルファベット順に整列 <tag>keyid </tag>鍵 ID でアルファベット順に整列 <tag>date </tag>鍵の作成日付で整列 <tag>trust </tag>鍵の信用度で整列 </descrip> <p> 逆順にしたければ、上記の値の頭に &dquot;reverse-&dquot; を付加する。 (PGP only) <sect2>pgp_mime_auto<label id="pgp_mime_auto"> <p> Type: quadoption<newline> Default: ask-yes <p> インライン (伝統的形式) の署名/暗号化に (いかなる理由にせよ) 失敗したときに 自動的に PGP/MIME で送信するか尋ねるかを、このオプションで制御する。 <!-- whether Mutt will prompt you for automatically sending... 意味不明 --> <p> 旧式 PGP メッセイジ形式の使用は<bf>まったく推奨されない</bf>ことに注意。 <!-- strongly deprecated 「強く非難」や「まったく否定」だろうか... --> (PGP only) <sect2>pgp_auto_decode<label id="pgp_auto_decode"> <p> Type: boolean<newline> Default: no <p> 設定しておくと、Mutt が自動的に伝統的な PGP メッセイジを復号化しようとする。 その復号化は、メッセイジ内容を出力するような操作の際に起こる。例えば 手動で check-traditional-pgp 関数によるチェックをしていない伝統的 PGP メッセイジは、表示するときに Mutt が自動でチェックしてくれるようになる。 <sect2>pgp_decode_command<label id="pgp_decode_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> この形式化文字列<!-- format strings -->で、application/pgp 添付ファイルを復号化するためのコマンドを指定する。 <p> PGP コマンドの形式には独自の printf風シークウェンスがある。 <p> <descrip> <tag>%p </tag>パスフレイズが必要なときには PGPPASSFD=0 と展開され、必要ないときには空文字列になる。 メモ: これは %? 構造にも使うことができる。 <tag>%f </tag>メッセイジの入っているファイルの名前に展開される。 <tag>%s </tag>multipart/signed <!-- attachment -->の検証時に、署名パートの入っているファイル名に展開される。 <tag>%a </tag><ref id="pgp_sign_as" name="$pgp_sign_as"> の値。 <tag>%r </tag>鍵 ID (複数になることもある) </descrip> <p> 世の中に出廻っている各種ヴァージョンの PGP に合わせて設定する方法の例は、 pgp*.rc および gpg.rc というファイルが、文書と同じあたりの samples/ サブディレクトリ内にインストールされているので、参照すること。 (PGP only) <sect2>pgp_getkeys_command<label id="pgp_getkeys_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> Mutt が公開鍵情報を必要とするたびに起動するコマンド。 %r が、唯一ここで使われる printf風シークウェンスである。 (PGP only) <sect2>pgp_verify_command<label id="pgp_verify_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> このコマンドが PGP 署名の検証に使われる。 (PGP only) <sect2>pgp_decrypt_command<label id="pgp_decrypt_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> このコマンドが PGP 暗号化メッセイジの復号に使われる。 (PGP only) <sect2>pgp_clearsign_command<label id="pgp_clearsign_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> 旧式の「クリア署名」による PGP メッセイジを作成するために使われる。 ただし、この形式を使うことは<bf>まったく推奨されない</bf>。<!-- strongly deprecated --> (PGP only) <sect2>pgp_sign_command<label id="pgp_sign_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> このコマンドを使って分離式の PGP 署名を作り、multipart/signed の PGP/MIME パートに使う。 (PGP only) <sect2>pgp_encrypt_sign_command<label id="pgp_encrypt_sign_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> このコマンドを使って、本文に署名と暗号化を両方おこなう。 (PGP only) <sect2>pgp_encrypt_only_command<label id="pgp_encrypt_only_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> このコマンドを使って本文を暗号化する。署名はしない。 (PGP only) <sect2>pgp_import_command<label id="pgp_import_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> このコマンドを使って、鍵をメッセイジから公開鍵束へ取り込む。 (PGP only) <sect2>pgp_export_command<label id="pgp_export_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> このコマンドを使って、ユーザの鍵束から公開鍵を取り出す。 (PGP only) <sect2>pgp_verify_key_command<label id="pgp_verify_key_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> 鍵選択メニューで鍵の情報を検証するために、このコマンドを用いる。 (PGP only) <sect2>pgp_list_secring_command<label id="pgp_list_secring_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> このコマンドで秘密鍵束の内容を一覧出力する。 出力形式は gpg --list-keys --with-colons と同様でなくてはならない。 (訳注:詳細は gnupg の文書ファイル DETAILS に書かれている。) <p> この形式は、Mutt に付属する pgpring ユーティリティでも生成される。 (PGP only) <sect2>pgp_list_pubring_command<label id="pgp_list_pubring_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> このコマンドで公開鍵束の内容を一覧にする。 出力形式は gpg --list-keys --with-colons と同様でなくてはならない。 <p> この形式は、Mutt 付属の pgpring ユーティリティでも生成される。 (PGP only) <sect2>forward_decrypt<label id="forward_decrypt"> <p> Type: boolean<newline> Default: yes <p> 転送時における暗号化メッセイジの扱いを制御する。 設定されていると、暗号化という外層が除去される。 この変数は、<ref id="mime_forward" name="$mime_forward"> が<em>設定</em>され、 <ref id="mime_forward_decode" name="$mime_forward_decode"> が<em>解除</em>されているときにのみ用いられる。 (PGP only) <sect2>smime_timeout<label id="smime_timeout"> <p> Type: number<newline> Default: 300 <p> キャッシュされたパスフレイズが使用されない場合に期限切れになるまでの秒数。 (S/MIME only) <sect2>smime_encrypt_with<label id="smime_encrypt_with"> <p> Type: string<newline> Default: &dquot;&dquot; <p> 暗号化に用いるアルゴリズムを設定する。 有効な選択肢は &dquot;des&dquot;, &dquot;des3&dquot;, &dquot;rc2-40&dquot;, &dquot;rc2-64&dquot;, &dquot;rc2-128&dquot; である。 設定されていないと &dquot;des3&dquot; (トリプルDES) が用いられる。 (S/MIME only) <sect2>smime_keys<label id="smime_keys"> <p> Type: path<newline> Default: &dquot;&dquot; <p> OpenSSL には PGP における鍵束のようなものがないため、Mutt は 鍵や証明書の格納および取得を自分で扱わなければならない。 この仕組みは現在のところ非常に簡易的なもので、鍵と証明書を二つの異なる ディレクトリに格納し、ともに OpenSSL で取得したハッシュ値を ファイル名にしている。各ディレクトリには index ファイルがあって、 メイルアドレスと鍵 ID の組み合わせが入っており、自分の手で 編集することができる。この変数は、秘密鍵の場所を指し示すものである。 (S/MIME only) <sect2>smime_ca_location<label id="smime_ca_location"> <p> Type: path<newline> Default: &dquot;&dquot; <p> OpenSSL に使うための、信用できる証明書が入ったディレクトリかファイルの 名前を入れる。 (S/MIME only) <sect2>smime_certificates<label id="smime_certificates"> <p> Type: path<newline> Default: &dquot;&dquot; <p> OpenSSL には PGP における鍵束のようなものがないため、Mutt は 鍵や証明書の格納および取得を自分で扱わなければならない。 この仕組みは現在のところ非常に簡易的なもので、鍵と証明書を二つの異なる ディレクトリに格納し、ともに OpenSSL で取得したハッシュ値を ファイル名にしている。各ディレクトリには index ファイルがあって、 メイルアドレスと鍵 ID の組み合わせが入っており、自分の手で 編集することができる。この変数は、証明書の場所を指し示すものである。 (S/MIME only) <sect2>smime_decrypt_command<label id="smime_decrypt_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> この形式化文字列で指定したコマンドを使って application/x-pkcs7-mime ファイルを復号化する。 <p> OpenSSL コマンドの指定形式には、PGP に似た独自の printf風シークウェンスがある。 <p> <descrip> <tag>%f </tag>メッセイジの入っているファイルの名前に展開される。 <tag>%s </tag>multipart/signed の検証時に、署名パートの入っているファイル名に展開される。 <tag>%k </tag><ref id="smime_default_key" name="$smime_default_key"> で指定された鍵ペア。 <tag>%c </tag>証明書 ID (複数になることもある) <tag>%a </tag>暗号化に用いるアルゴリズム。 <tag>%C </tag>CA 位置: <ref id="smime_ca_location" name="$smime_ca_location"> がディレクトリを指すかファイルを指すかにより、&dquot;-CApath <ref id="smime_ca_location" name="$smime_ca_location">&dquot; か &dquot;-CAfile <ref id="smime_ca_location" name="$smime_ca_location">&dquot; に展開される。 </descrip> <p> この形式の設定方法の例については、smime.rc というファイルを参照せよ。 文書のそばの samples/ サブディレクトリにインストールされている。 (S/MIME only) <sect2>smime_verify_command<label id="smime_verify_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> このコマンドを使って multipart/signed タイプの S/MIME 署名を検証する。 (S/MIME only) <sect2>smime_verify_opaque_command<label id="smime_verify_opaque_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> このコマンドを使って application/x-pkcs7-mime タイプの S/MIME 署名を検証する。 (S/MIME only) <sect2>smime_sign_command<label id="smime_sign_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> このコマンドは multipart/signed タイプの S/MIME 署名を作成するために用いられる。 このタイプはあらゆるメイルクライアントから読める。 (S/MIME only) <sect2>smime_sign_opaque_command<label id="smime_sign_opaque_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> このコマンドは application/x-pkcs7-signature タイプの S/MIME 署名を作成するために用いられる。 このタイプは S/MIME 拡張に対応したメイルクライアントからのみ扱える。 (S/MIME only) <sect2>smime_encrypt_command<label id="smime_encrypt_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> このコマンドは暗号化 S/MIME メッセイジを作成するために用いられる。 (S/MIME only) <sect2>smime_pk7out_command<label id="smime_pk7out_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> このコマンドを用いて S/MIME 署名の PKCS7 構造を抽出する。 その目的は、そこからさらに X509 公開証明書を抽出することにある。 (S/MIME only) <sect2>smime_get_cert_command<label id="smime_get_cert_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> PKCS7 構造から X509 証明書を抽出するために用いるコマンド。 (S/MIME only) <sect2>smime_get_signer_cert_command<label id="smime_get_signer_cert_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> このコマンドで署名者の X509 証明書だけを S/MIME 署名から抽出する。 そうして証明書の所有者とメイルの From フィールドを比較できるようにするのだ。 (S/MIME only) <sect2>smime_import_cert_command<label id="smime_import_cert_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> 証明書を smime_keys で取り込むために使うコマンド。 (S/MIME only) <sect2>smime_get_cert_email_command<label id="smime_get_cert_email_command"> <p> Type: string<newline> Default: &dquot;&dquot; <p> このコマンドを使って、 用途の検証 (証明書がその送信者のアドレス用に発行されたのかどうかの確認のため) と X509 証明書の格納のために用いられるメイルアドレスを抽出する。 (S/MIME only) <sect2>smime_default_key<label id="smime_default_key"> <p> Type: string<newline> Default: &dquot;&dquot; <p> 署名に使う既定の鍵ペア。鍵 ID (OpenSSL が生成するハッシュ値) に設定されていないと正常に動作しない。 (S/MIME only) <sect2>ssl_client_cert<label id="ssl_client_cert"> <p> Type: path<newline> Default: &dquot;&dquot; <p> クライアント証明書とその秘密鍵を含んだファイル。 <sect2>ssl_force_tls<label id="ssl_force_tls"> <p> Type: boolean<newline> Default: no <p> この変数が設定されていると、すべてのリモートサーバへの接続が 暗号化されていなくてはならないことになる。さらに、サーバが能力を 公言しない場合でも TLS 接続を試みる。というのは、そのようなサーバ への接続はいずれにせよ中止しなくてはならないからだ。これは <ref id="ssl_starttls" name="$ssl_starttls"> オプションより優先される。 <sect2>ssl_starttls<label id="ssl_starttls"> <p> Type: quadoption<newline> Default: yes <p> 設定されている (既定) とき、STARTTLS 能力を公言するサーバでは Mutt が STARTTLS を使おうとする。解除されていると、サーバの能力に 関わらず STARTTLS を使おうとしない。 <sect2>certificate_file<label id="certificate_file"> <p> Type: path<newline> Default: &dquot;˜/.mutt_certificates&dquot; <p> この変数で指定したファイルに、信用する証明書を保存する。 未知の証明書に遭遇すると、受け入れるかどうか尋ねられる。 受け入れると証明書がこのファイルに保存され、以後の接続では 自動的に受け入れられる。 <p> 自分の手で CA 証明書をこのファイルに追加することもできる。 すると、その CA に署名されたサーバ証明書もすべて自動的に受け入れられる。 <p> 例: set certificate_file=˜/.mutt/certificates <sect2>ssl_usesystemcerts<label id="ssl_usesystemcerts"> <p> Type: boolean<newline> Default: yes <p> <em>yes</em> に設定されていると、 信用できる CA からサーバ証明書が署名されているかどうかを確認する際に、 システム全体用の証明書格納所にあるCA 証明書を使う。 <sect2>entropy_file<label id="entropy_file"> <p> Type: path<newline> Default: &dquot;&dquot; <p> SSL ライブラリ関数の初期化に用いる乱数デイタの入ったファイル。 <sect2>ssl_use_sslv2<label id="ssl_use_sslv2"> <p> Type: boolean<newline> Default: yes <p> SSL 認証処理に SSLv2 を使おうとするかどうか指定する。 <sect2>ssl_use_sslv3<label id="ssl_use_sslv3"> <p> Type: boolean<newline> Default: yes <p> SSL 認証処理に SSLv3 を使おうとするかどうか指定する。 <sect2>ssl_use_tlsv1<label id="ssl_use_tlsv1"> <p> Type: boolean<newline> Default: yes <p> SSL 認証処理に TLSv1 を使おうとするかどうか指定する。 <sect2>ssl_min_dh_prime_bits<label id="ssl_min_dh_prime_bits"> <p> Type: number<newline> Default: 0 <p> Diffie-Hellman 鍵交換に使う素数の最小条件をビット数で指定する。 0 を指定すると GNUTLS ライブラリの既定値を使用する。 <sect2>ssl_ca_certificates_file<label id="ssl_ca_certificates_file"> <p> Type: path<newline> Default: &dquot;&dquot; <p> 信用する CA 証明書を入れたファイルの場所を指定する。 この中にある CA 証明書で署名されたサーバ証明書は自動的に 受け入れられることになる。 <p> 例: set ssl_ca_certificates_file=/etc/ssl/certs/ca-certificates.crt <sect2>pipe_split<label id="pipe_split"> <p> Type: boolean<newline> Default: no <p> <em>pipe-message</em> コマンドおよび &dquot;tag-prefix&dquot; 演算子との 関連で用いられる。この変数が解除されていると、複数のタグ付けされた メッセイジをパイプする際に Mutt はすべて連結させて単一ファイル<!--folder--> としてパイプする。設定されていると、Mutt はメッセイジごとに一つずつパイプする。 どちらの場合も、その時点での整列方法の順にメッセイジがパイプされ、 <ref id="pipe_sep" name="$pipe_sep"> が各メッセイジの 後に付加される。 <sect2>pipe_decode<label id="pipe_decode"> <p> Type: boolean<newline> Default: no <p> <em>pipe-message</em> コマンドと関連して使われる。 解除されていると Mutt は何も前処理をせずにメッセイジをパイプする。 設定されていると、まずヘッダを間引きしたり PGP/MIME 復号化したりしようとする。 <sect2>pipe_sep<label id="pipe_sep"> <p> Type: string<newline> Default: &dquot;\n&dquot; <p> タグ付けされた複数のメッセイジを外部 Unix コマンドへパイプする際、 メッセイジとメッセイジの間を区切るために付加される文字列。 <sect2>pop_authenticators<label id="pop_authenticators"> <p> Type: string<newline> Default: &dquot;&dquot; <p> コロン区切りで列挙された認証方法。POP サーバにログインするために、 その順で試行する。認証方法は &dquot;user&dquot;, &dquot;apop&dquot; およびいずれかの SASL 機構、例えば &dquot;digest-md5&dquot; や &dquot;gssapi&dquot;, &dquot;cram-md5&dquot; である。 このパラメータは大文字と小文字を区別しない。 もし設定されていなければ (既定)、Mutt はあらゆる利用可能な方法を、 最も安全なものから始めて、最も安全でないものまで試行する。 <p> 例: set pop_authenticators=&dquot;digest-md5:apop:user&dquot; <sect2>pop_auth_try_all<label id="pop_auth_try_all"> <p> Type: boolean<newline> Default: yes <p> 設定されていると、Mutt は利用可能な方法をすべて試行する。 解除されていると、前の方法が利用できなかったときにのみ他の認証方法に移る。 認証方法は利用できるけれども認証が失敗したという場合には、 POP サーバへの接続をやめるのだ。 <sect2>pop_checkinterval<label id="pop_checkinterval"> <p> Type: number<newline> Default: 60 <p> この変数は、何秒ごとに POP で新着メイルを探すかを調整する。 <sect2>pop_delete<label id="pop_delete"> <p> Type: quadoption<newline> Default: ask-no <p> 設定されていると、fetch-mail 関数を使って POP サーバから ダウンロードすることに成功したメッセイジを削除する。 解除されていると、メッセイジはダウンロードするものの、 POP サーバにも残しておく。 <sect2>pop_host<label id="pop_host"> <p> Type: string<newline> Default: &dquot;&dquot; <p> fetch-mail 関数の POP サーバ名。 次のように、代替ポート、ユーザ名、パスワードも指定することができる。 <p> [pop[s]://][ユーザ名[:パスワード]@]サーバ[:ポート] <sect2>pop_last<label id="pop_last"> <p> Type: boolean<newline> Default: no <p> この変数が設定されていると、fetch-mail 関数の使用時に POP コマンド &dquot;LAST&dquot; を使って POP サーバから未読メッセイジのみを 取得しようとする。 <sect2>pop_reconnect<label id="pop_reconnect"> <p> Type: quadoption<newline> Default: ask-yes <p> POP サーバとの接続が切れたときに再接続を試みるかどうかを制御する。 <sect2>pop_user<label id="pop_user"> <p> Type: string<newline> Default: &dquot;&dquot; <p> POP サーバへのログイン名。 <p> 既定ではロウカルマシンでのユーザ名になる。 <sect2>pop_pass<label id="pop_pass"> <p> Type: string<newline> Default: &dquot;&dquot; <p> POP アカウントのパスワードを指定する。設定されていないと、 POP メイルボックスを開くときにパスワードの入力を求める。 <bf>警告</bf>: このオプションは、確実に安全なマシンでのみ使うべきである。 自分しか読めないファイルであっても、スーパユーザは読むことができるからだ。 <sect2>post_indent_string<label id="post_indent_string"> <p> Type: string<newline> Default: &dquot;&dquot; <p> <ref id="attribution" name="$attribution"> 変数と似ており、 Mutt はこの文字列を、返信するメッセイジの引用のあとに追加する。 <sect2>postpone<label id="postpone"> <p> Type: quadoption<newline> Default: ask-yes <p> メッセイジをその場で送らないことにした際に <ref id="postponed" name="$postponed"> メイルボックスへ 保存するかどうかを制御する。 <sect2>postponed<label id="postponed"> <p> Type: path<newline> Default: &dquot;˜/postponed&dquot; <p> 編集中のメッセイジは、いつまででも送信を <ref id="postpone" name="延期 (postpone)"> しておくことができる。 延期することにした際、Mutt はこの変数で指定されたメイルボックスに保存する。 これに関しては <ref id="postpone" name="$postpone"> も参照のこと。 <sect2>preconnect<label id="preconnect"> <p> Type: string<newline> Default: &dquot;&dquot; <p> 設定されていると、サーバとの接続を確立できなかったときに このシェルコマンドが実行される。これは ssh(1) などで安全な接続経路を 作るために使える。もしコマンドが非ゼロの結果を返すなら、Mutt は そこでサーバを開くことをあきらめる。例: <p> preconnect=&dquot;ssh -f -q -L 1234:example.net:143 example.net sleep 20 < /dev/null > /dev/null&dquot; <p> example.net のメイルボックス 'foo' は、これで '{localhost:1234}foo' として扱うことができる。 <p> 注意: この例がうまくいくためには、このリモウトマシンに パスワードなしでログインできなくてはならない。 <sect2>print<label id="print"> <p> Type: quadoption<newline> Default: ask-no <p> 本当にメッセイジを印刷するかどうかを制御する。既定では <em>ask-no</em> に設定されているが、これは よく間違って &dquot;p&dquot; を押してしまう (私のような) 人がいるからだ。 <sect2>print_command<label id="print_command"> <p> Type: path<newline> Default: &dquot;lpr&dquot; <p> これに指定したコマンドへパイプしてメッセイジを印刷する。 <sect2>print_decode<label id="print_decode"> <p> Type: boolean<newline> Default: yes <p> print-message コマンドと関連して用いられる。このオプションが設定されていると メッセイジを復号化してから外部コマンド <ref id="print_command" name="$print_command"> に渡す。解除されていると、何の処理もせずにメッセイジを印刷する。 後者は、メイルメッセイジを印刷にふさわしく整形することのできる 高度なプリンタフィルタを使っている場合に有用であろう。 <sect2>print_split<label id="print_split"> <p> Type: boolean<newline> Default: no <p> print-message コマンドとの関連で用いる。設定されていると、 <ref id="print_command" name="$print_command"> で指定されたコマンドが、印刷メッセイジごとに毎回実行される。 解除されていると、<ref id="print_command" name="$print_command"> は一度だけ実行され、メッセイジがすべて連結される。 その際、フォームフィード (訳注:0x0c や \f として知られるもの) がメッセイジの区切りとして使われる。 <p> <bf>enscript</bf>(1) プログラムのメイル印刷モウドを使っている人は このオプションを設定したいと思うはずだ。 <sect2>prompt_after<label id="prompt_after"> <p> Type: boolean<newline> Default: yes <p> <em>外部</em><ref id="pager" name="ペイジャ">を使っている場合、 この変数を設定しておくと、ペイジャ終了時にインデックスメニューへ戻らず、 コマンド入力を求めるようになる。 解除されていると、すぐインデックスメニューに戻る。 <sect2>query_command<label id="query_command"> <p> Type: path<newline> Default: &dquot;&dquot; <p> この変数で指定したコマンドを使ってアドレスの外部問い合わせをおこなう。 この文字列には %s を含むべきで、その部分がユーザの入力する 問い合わせ文字列に置換される。より詳細な情報は <ref id="query" name="アドレスの外部問い合わせ">を参照。 <sect2>quit<label id="quit"> <p> Type: quadoption<newline> Default: yes <p> この変数は、&dquot;quit&dquot; と &dquot;exit&dquot; が実際に Mutt を終了させるかどうかを制御する。終了させようとしたとき、 yes に設定されていると終了させ、no に設定されていると無効で、 ask-yes か ask-no に設定されていると確認を求められる。 <sect2>quote_regexp<label id="quote_regexp"> <p> Type: regular expression<newline> Default: &dquot;^([ \t]*[|>:}#])+&dquot; <p> 内部ペイジャで、メッセイジ本文の引用部分を見極めるために使う正規表現。 <p> <bf>注意:</bf> 内部ペイジャで <em>quoted</em><bf>x</bf> のような 着色パターンを使うためには、引用行の冒頭の引用文字に<em>正確に</em> 合致する正規表現を設定する必要がある。 (訳注:すなわち、引用記号全体に合致し、かつ、引用記号のみに合致する 表現でなくてはならない。 &dquot;> > >&dquot; のような多層になった引用であっても、 この正規表現ひとつで合致する必要があるのだ。) <sect2>read_inc<label id="read_inc"> <p> Type: number<newline> Default: 10 <p> 0 より大きな値に設定されていると、メイルボックス読み出し中に Mutt が現在どのメッセイジまで来たのかを表示するようになる。 その表示は <em>read_inc</em> 通のメッセイジが読み出されるたびに おこなわれる (例えば 25 だと、25 番目のメッセイジを読んだときに表示し、 さらにまた 50 番目のときにも表示する)。この変数の意味は、時間のかかる 大きなメイルボックスを読み出す際に、進行状況を示すということだ。 0 に設定されているときは、メイルボックスの読み出し前に一度 メッセイジが表示されるだけになる。 <p> <ref id="write_inc" name="$write_inc"> 変数も参照のこと。 <sect2>read_only<label id="read_only"> <p> Type: boolean<newline> Default: no <p> 設定されていると、フォルダがすべて読み出し専用モウドで開かれる。 <sect2>realname<label id="realname"> <p> Type: string<newline> Default: &dquot;&dquot; <p> メッセイジ送信時に使う「本名」すなわち「個人名」を指定する。 <p> 既定では /etc/passwd の GECOS フィールドになる。 なお、ユーザが <ref id="from" name="$from"> に本名を設定していると、 この変数が使われ<em>ない</em>ので注意。 <sect2>recall<label id="recall"> <p> Type: quadoption<newline> Default: ask-yes <p> 新規メッセイジを作成する際に、延期メッセイジから続けるかどうかを制御する。 <ref id="postponed" name="$postponed"> も参照。 <p> この変数を &dquot;yes&dquot; に設定することが一般的に有用であるとは 言えないので、そのような設定は推奨されていない。 (訳注:&dquot;yes&dquot; だと、ひとつでも延期されているメッセイジがあると、 いつまでも新規メッセイジが作成できなくなる。返信はできる。) <sect2>record<label id="record"> <p> Type: path<newline> Default: &dquot;&dquot; <p> 送信メッセイジをどのファイルに追加して保存すべきかを指定する。 (これはメッセイジのコピーを保存する基本的な方法であるが、 ほかにも、<ref id="my_hdr" name="my_hdr"> コマンドで 自分のメイルアドレスの <em>Bcc:</em> フィールドを作成するという方法もある。) <p> <em><ref id="record" name="$record"></em> の値は、 <ref id="force_name" name="$force_name"> および <ref id="save_name" name="$save_name"> 変数、 また <ref id="fcc-hook" name="fcc-hook"> コマンドにより上書きされる。 (訳注:さらに、この変数は Fcc ヘッダの既定値に過ぎないので、 Fcc を変更すれば上書きされる。Fcc と <ref id="record" name="$record"> の両方に保存されるわけではないので注意。) <sect2>reply_regexp<label id="reply_regexp"> <p> Type: regular expression<newline> Default: &dquot;^(re([\[0-9\]+])*|aw):[ \t]*&dquot; <p> 返信メッセイジを認識するための正規表現。 スレッドを作ったり返信したりするときに使う。 既定値は英語の &dquot;Re:&dquot; とドイツ語の &dquot;Aw:&dquot; に対応している。(訳注:ただし、Re[3]: や Re3: には合致するが Aw[3]: や Aw3: には合致しない。) <sect2>reply_self<label id="reply_self"> <p> Type: boolean<newline> Default: no <p> 自分の送ったメッセイジに返信するとき、これが解除されていれば、 自分に返信したいのではなく、そのメッセイジの宛先に返信したいのだとみなされる。 <sect2>reply_to<label id="reply_to"> <p> Type: quadoption<newline> Default: ask-yes <p> 設定されている (訳注:または yes と答える) と、返信しようとする際に メッセイジの Reply-To: ヘッダフィールドで挙げられているアドレスを 返信先として用いる。 解除されている (訳注:または no と答える) と、From: ヘッダフィールドの アドレスを代わりに用いる。このオプションは、Reply-To: ヘッダフィールドを リストのアドレスに設定してくるメイリングリストを読んでいて、 メッセイジの送信者へ個人的にメッセイジを送りたい場合に便利である。 <sect2>resolve<label id="resolve"> <p> Type: boolean<newline> Default: yes <p> 設定されているときには、メッセイジを変更するコマンドが実行されると カーソルが自動で進み、(あれば) 次の未削除メッセイジへ動く。 <sect2>reverse_alias<label id="reverse_alias"> <p> Type: boolean<newline> Default: no <p> この変数は、メッセイジの送信者に合致するエイリアスがあるときに、 エイリアスの「個人名」部分をインデックスメニューで表示するかどうかを制御する。 例として、次のエイリアスがあるとする。 <p> <tscreen><verb> alias juser abd30425@somewhere.net (Joe User) </verb></tscreen><p> そして、このようなヘッダを含むメイルを受け取ったとする。 <p> <tscreen><verb> From: abd30425@somewhere.net </verb></tscreen><p> すると、(訳注:$reverse_alias が yes のときには) インデックスメニューに &dquot;abd30425@somewhere.net&dquot; ではなく &dquot;Joe User&dquot; と表示されるであろう。 これは、その人物のメイルアドレスが人間向きでない (CompuServe のアドレスのような) ときに便利である。 <sect2>reverse_name<label id="reverse_name"> <p> Type: boolean<newline> Default: no <p> メイルをあるマシンで受信し、別のマシンへ移して、そこから返信する ということが時々あるかもしれない。この変数が設定されていると、 返信したいメッセイジを受け取ったアドレスが alternates に <bf>合致しているときには</bf>、そのアドレスを使って既定の <em>From:</em> 行が作成される。この変数が設定されていなかったり、アドレスが alternates に合致しなかったりした場合には、 <em>From:</em> 行には返信時のマシンのアドレスが使われる。 <sect2>reverse_realname<label id="reverse_realname"> <p> Type: boolean<newline> Default: yes <p> この変数は <ref id="reverse_name" name="reverse_name"> 機能の 動作を微調整する。これが設定されていると、Mutt は受信メッセイジのアドレスを そのまま丸ごと使う。あれば本名部分まで含めて使うのだ。もし解除されていると、 そうした本名部分は <ref id="realname" name="realname"> 変数の設定で 上書きするようになる。 <sect2>rfc2047_parameters<label id="rfc2047_parameters"> <p> Type: boolean<newline> Default: no <p> この変数が設定されていると、RFC-2047 で符号化された MIME パラメータを復号化する。Mutt が添付ファイルを =?iso-8859-1?Q?file=5F=E4=5F991116=2Ezip?= のようなファイル名で保存するよう提案してくるときには、 この変数を設定したいと思うであろう。 <p> この変数を実行中に設定したときには、フォルダを変更するまで 望み通りの効果はあらわれない。 <p> 注意すべき点がある。このような RFC 2047 符号化方式の使い方は、 その規格によって明示的に禁止されていること、 しかしながら実際にはよく見かけるということだ。 加えて、このパラメータを設定しても Mutt がこのような符号化ファイル名を <em>生成</em>するという効果は<em>ない</em>という点にも注意せよ。 そうではなく、Mutt は常に<!-- unconditionally --> RFC 2231 で指示されている符号化方式を用いる。 <sect2>save_address<label id="save_address"> <p> Type: boolean<newline> Default: no <p> 設定されていると、メイルを保存する既定フォルダに送信者のアドレス全体を使う。 <ref id="save_name" name="$save_name"> や <ref id="force_name" name="$force_name"> が設定されていると、 Fcc フォルダの選択も変わる。(訳注:$save_name が yes なら、 アドレスと同じフォルダ名が Fcc に使われるようになる。$force_name が yes なら、そのようなフォルダが存在しなくても作成して Fcc するようになる。) <sect2>save_empty<label id="save_empty"> <p> Type: boolean<newline> Default: yes <p> 解除されていると、メッセイジの保存されていないメイルボックスが、 閉じるときに削除される (例外は <ref id="spoolfile" name="$spoolfile"> である。これはどんな場合にも削除されない)。 設定されていると、どのメイルボックスも削除されない。 <p> <bf>注意:</bf> これが適用されるのは mbox と MMDF のフォルダのみであり、 Mutt が MH や Maildir のディレクトリを削除することはない。 <sect2>save_name<label id="save_name"> <p> Type: boolean<newline> Default: no <p> この変数は、どのように送信メッセイジのコピーを保存するかを制御する。 設定されているときには、宛先アドレスで指定されるメイルボックスが あるかどうかを確認する (これは <ref id="folder" name="$folder"> ディレクトリ内で、アドレスの<em>ユーザ名</em>部分に該当するメイルボックスを 検索することによる)。そのメイルボックスが存在していれば、送信メッセイジは そこに保存される。存在しなければ <ref id="record" name="$record"> メイルボックスに保存される。 <p> <ref id="force_name" name="$force_name"> 変数も参照。 <sect2>score<label id="score"> <p> Type: boolean<newline> Default: yes <p> この変数が <em>no</em> のときには得点付けが停止される。 これを使えばフォルダによって得点付けを無効にすることができるので、 <ref id="score_threshold_delete" name="$score_threshold_delete"> やその仲間たちを使っているときに便利かもしれない。 <sect2>score_threshold_delete<label id="score_threshold_delete"> <p> Type: number<newline> Default: -1 <p> 得点がこの値以下のメッセイジは、自動的に削除予定の印が付けられる。 Mutt のスコアは常にゼロ以上なので、既定の設定では いかなるメッセイジも削除予定にされることはない。 <sect2>score_threshold_flag<label id="score_threshold_flag"> <p> Type: number<newline> Default: 9999 <p> 割り当てられた得点がこの変数の値以上になるメッセイジには自動的に 「重要」フラグが付けられる。 <sect2>score_threshold_read<label id="score_threshold_read"> <p> Type: number<newline> Default: -1 <p> メッセイジに、この変数と同じかそれより小さい得点が付いたとき、Mutt が既読として印付ける。Mutt では得点が常にゼロかゼロ以上なので、 既定の設定でメッセイジを既読にしてしまうことはありえない。 <sect2>send_charset<label id="send_charset"> <p> Type: string<newline> Default: &dquot;us-ascii:iso-8859-1:utf-8&dquot; <p> 送信メッセイジの文字セットを列挙する。 Mutt は、その文字セットへ正しく文章を変換できた最初のものを使う。 (訳注:<ref id="charset" name="$charset"> から $send_charset へ変換する。) もし <ref id="charset" name="$charset"> が iso-8859-1 でなく、しかも宛先の人が UTF-8 を理解できないのであれば、 適切な、広く用いられている標準的な文字セット (iso-8859-2, koi8-r, iso-2022-jp など) を &dquot;iso-8859-1&dquot; の代わり、 あるいはその後に含めることが推奨されている。 (訳注:MS の似非 iso-2022-jp を送信しなくてはならないとしても、 content type には iso-2022-jp と書かねばならないので、 この変数には iso-2022-jp と指定すべきである。 その場合には <ref id="charset-hook" name="iconv-hook"> で調整する。) <sect2>sendmail<label id="sendmail"> <p> Type: path<newline> Default: &dquot;/usr/sbin/sendmail -oem -oi&dquot; <p> Mutt で送信するメイルの配送に用いられるプログラムと引数を指定する。 Mutt は、続く引数をこのプログラムが宛先アドレスとして解釈するものと 想定している。 <sect2>sendmail_wait<label id="sendmail_wait"> <p> Type: number<newline> Default: 0 <p> <ref id="sendmail" name="$sendmail"> プロセスが終わるのを あきらめて配送をバックグラウンドへ追いやるまで待つ秒数。 <p> Mutt はこの変数の値を以下のように解釈する。 <descrip> <tag>>0 </tag>sendmail の終了を待つ秒数 <tag>0 </tag>sendmail の終了をいつまでも待ち続ける <tag><0 </tag>常に sendmail をバックグラウンドで実行し、待たない </descrip> <p> 注意すべき点がある。もしも 0 以外の値を指定すると、sendmail 子プロセスの出力が一時ファイルへ置かれることになるのだ。 何かエラーがあった場合には、その出力がどこにあるかを知らされることになる。 <sect2>shell<label id="shell"> <p> Type: path<newline> Default: &dquot;&dquot; <p> 内部でサブシェルを実行する際に使うコマンド。既定では、/etc/passwd を見て ユーザのログインシェルを用いる。 <sect2>sig_dashes<label id="sig_dashes"> <p> Type: boolean<newline> Default: yes <p> 設定されていると、&dquot;-- &dquot; という行が <ref id="signature" name="署名 ($signature)"> の前に挿入される。 署名が名前だけでない限りこの変数を解除しないことを、<bf>強く</bf>推奨する。 その理由は、多くのソフトウェアが &dquot;-- \n&dquot; を使って 署名を検出するからである。例えば Mutt は内蔵ペイジャで署名を別の色に 目立たせる能力を持っている。 <sect2>sig_on_top<label id="sig_on_top"> <p> Type: boolean<newline> Default: no <p> 設定されていると署名が引用文や転送文の前に付けられる。 この変数を設定することの意味をよく理解し、 ネチケットの番人たちの憤りを買う準備ができているのでない限り、 この変数は設定しないよう<bf>強く</bf>推奨されている。 <sect2>signature<label id="signature"> <p> Type: path<newline> Default: &dquot;˜/.signature&dquot; <p> 署名のファイル名を指定する。この署名はあらゆる送信メッセイジに付加される。 ファイル名がパイプ (&dquot;|&dquot;) で終わっていると、ファイル名が シェルコマンドとみなされ、その標準出力から読み出される。 <sect2>simple_search<label id="simple_search"> <p> Type: string<newline> Default: &dquot;˜f %s | ˜s %s&dquot; <p> 単純検索を実際の検索パターンへ展開する方法を指定する。 単純検索とは ˜ 演算子を含まない検索のことだ。 検索パターンに関してさらに情報を得るには <ref id="patterns" name="「パターン」">の節を参照せよ。 <p> 例えば、検索や表示制限の入力時にただ joe とだけ入力すると、 Mutt は自動でこの変数の値へ展開し、既定値ではこうなる。 <p> ˜f joe | ˜s joe <sect2>smart_wrap<label id="smart_wrap"> <p> Type: boolean<newline> Default: yes <p> 内部ペイジャで画面幅より長い行を表示する方法を制御する。 設定されていると、長い行は語の区切りで折り返される (訳注:英語では スペイスで語が区切られるので実装可能なのである)。 解除されていると、単純に画面の端で折り返される。 <ref id="markers" name="$markers"> 変数も参照のこと。 <sect2>smileys<label id="smileys"> <p> Type: regular expression<newline> Default: &dquot;(>From )|(:[-^]?[][)(><}{|/DP])&dquot; <p> <em>ペイジャ</em>がこの変数を使って、 <ref id="quote_regexp" name="$quote_regexp"> の よくある誤検出を補正する。おもに、行頭に顔文字 (smileys) がある場合である。 <sect2>sleep_time<label id="sleep_time"> <p> Type: number<newline> Default: 1 <p> フォルダからフォルダへ移動する際にメッセイジを元のフォルダから消去した あと、通知メッセイジを表示するための停止時間。秒数で指定する。 既定では一秒間だけ止まって表示する。それで、このオプションをゼロにすると 停止しなくなる。(訳注:すぐに再描画されるので読むことができなくなる。) <sect2>sort<label id="sort"> <p> Type: sort order<newline> Default: date <p> <em>インデックス</em>メニューでメッセイジを整列する方法を指定する。 正しい値は以下の通り。 <p> <tscreen><verb> date すなわち date-sent date-received from mailbox-order (整列なし) score size spam subject threads to </verb></tscreen><p> これに加えて、reverse- を頭に付けることで逆順に整列させることができる (例: set sort=reverse-date-sent)。 <sect2>sort_alias<label id="sort_alias"> <p> Type: sort order<newline> Default: alias <p> エイリアスメニューの項目を整列する方法を指定する。 以下が適正な値である。 <p> <tscreen><verb> address (メイルアドレスでアルファベット順に整列) alias (エイリアス名でアルファベット順に整列) unsorted (.muttrc で指定された順番のまま) </verb></tscreen> <sect2>sort_aux<label id="sort_aux"> <p> Type: sort order<newline> Default: date <p> スレッドで整列しているとき、スレッドどうしをどのように比較・整列するかを、 この変数で制御する。 また、スレッド内の分岐した枝どうしを整列する方法も制御する。 この変数には、<ref id="sort" name="$sort"> で使える値をどれでも 使うことができるが、threads は無効である (この場合、Mutt は単に date-sent を使う)。また、reverse- に加えて last- 接頭辞も指定することができる。 ただし、last- は reverse- の後に来なくてはならない。 この last- 接頭辞は、兄弟どうしのメッセイジをそれぞれの一番下の子孫で 比較させるもので、その「一番下」を決定するために sort_aux の 残りの部分を使う。例えば set sort_aux=last-date-received の意味は、あるスレッドに新着メッセイジが届くと、そのスレッドが 最後に表示されるということである (set sort=reverse-threads してあれば 最初になる)。注意: <ref id="sort" name="$sort"> が逆順指定だと、 <ref id="sort_aux" name="$sort_aux"> も また逆順になってしまう (これは正しい動作ではないが、既存の設定を だめにしてしまわないよう、放置されている)。 (訳注:sort=reverse-threads で sort_aux=date だと、 スレッド内の各メッセイジが reverse-date のような順番に整列される ということ。) <sect2>sort_browser<label id="sort_browser"> <p> Type: sort order<newline> Default: alpha <p> ファイルブラウザで項目をどのように整列するかを指定する。 既定ではアルファベット順に整列される。正しい値は次のとおり。 <p> <tscreen><verb> alpha (アルファベット順) date size unsorted </verb></tscreen><p> これに reverse- 接頭辞を付けて逆順に整列させることもできる (例: set sort_browser=reverse-date)。 <sect2>sort_re<label id="sort_re"> <p> Type: boolean<newline> Default: yes <p> この変数が有効なのは、スレッドで整列していて <ref id="strict_threads" name="$strict_threads"> が解除されているときだけである。 そのような場合には Mutt の使う発見的手法が変わり、メッセイジを 題名でスレッドにするようになる。sort_re が設定されていると、 あるメッセイジを題名で別のメッセイジの子どもと判断してスレッドに入れるのは、 その題名が <ref id="reply_regexp" name="$reply_regexp"> の設定と合致する文字列で始まっているものだけである。 sort_re が解除されていると、それ以外のものも、 <ref id="reply_regexp" name="$reply_regexp"> でない部分が 同じである限りスレッドに入れてしまう。 <sect2>spam_separator<label id="spam_separator"> <p> Type: string<newline> Default: &dquot;,&dquot; <p> <tt/$spam_separator/ は複数のスパムヘッダが <ref id="spam" name="spam"> コマンドに合致した際の挙動を制御する。 解除されていると、あとから合致したヘッダが 以前の合致によるスパムラベルの値を上書きしてゆく。 設定されていると (訳注:空の &dquot;&dquot; も含めて)、 あとから合致したものが以前の値に追記されてゆく。 その際の区切り文字として <tt/$spam_separator/ が使われる。 <sect2>spoolfile<label id="spoolfile"> <p> Type: path<newline> Default: &dquot;&dquot; <p> スプールメイルボックスが既定と違う場所にあって Mutt が見付けられないなら、 その場所をこの変数で指定することができる。設定されていないと、Mutt は自動的に環境変数 $MAIL の値にする。 <sect2>status_chars<label id="status_chars"> <p> Type: string<newline> Default: &dquot;-*%A&dquot; <p> <ref id="status_format" name="$status_format"> の &dquot;%r&dquot; で使われる文字を制御する。 メイルボックスに変更がないときは最初の文字が用いられる。 二番目はメイルボックスが変更されて同期が必要なときに使われる。 三番目の文字が使われるのは、メイルボックスが読み出し専用モウドの場合、 すなわち、そのメイルボックスを抜ける際に書き込まれない場合である (変更を書き込むかどうかは toggle-write 関数で切替できる。 これは既定では &dquot;%&dquot; に割り当てられている)。 四番目はフォルダがメッセイジ添付モウドで開かれていることを示すために 用いられる (このモウドでは、新規メッセイジ作成や返信、転送などの 動作が禁止されている)。 <sect2>status_format<label id="status_format"> <p> Type: string<newline> Default: &dquot;-%r-Mutt: %f [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d? Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l? %l?]---(%s/%S)-%>-(%P)---&dquot; <p> <em>インデックス</em>メニューで表示されるステイタス行の書式を制御する。 この文字列は <ref id="index_format" name="$index_format"> と似ているが、独自の printf()風シークウェンスを持っている。 <p> <descrip> <tag>%b </tag>新着メイルのある<ref id="mailboxes" name="メイルボックス">の数 * <tag>%d </tag>削除メッセイジの数 * <tag>%f </tag>メイルボックスのフルパス名 <tag>%F </tag>フラグ付きメッセイジの数 * <tag>%h </tag>ロウカルのホスト名 <tag>%l </tag>メイルボックスのバイト数 * <tag>%L </tag>表示されるメッセイジのバイト数 (すなわち、表示制限で隠されていないものの合計サイズ) * <tag>%m </tag>メイルボックス内のメッセイジ数 * <tag>%M </tag>表示されるメッセイジの数 (すなわち、表示制限で隠されていないものの数) * <tag>%n </tag>メイルボックス内の新着メッセイジ数 * <tag>%o </tag>古い未読メッセイジの数 * <tag>%p </tag>延期メッセイジの数 * <tag>%P </tag>現在位置の、インデックス中におけるパーセンテイジ <tag>%r </tag><bf>変更/書込/メッセイジ添付</bf> を <ref id="status_chars" name="$status_chars"> に基づいて示す <tag>%s </tag>整列のモウド (<ref id="sort" name="$sort">) <tag>%S </tag>補助整列モウド (<ref id="sort_aux" name="$sort_aux">) <tag>%t </tag>タグ付きメッセイジの数 * <tag>%u </tag>未読メッセイジの数 * <tag>%v </tag>Mutt ヴァージョン文字列 <tag>%V </tag>表示制限パターン (有効なものがあれば) * <tag>%>X </tag>残りの文字列を右寄せして間を &dquot;X&dquot; で詰める <tag>%|X </tag>行の最後まで &dquot;X&dquot; で詰める </descrip> <p> * = 非ゼロのときのみ表示するようにできる <p> 上記シークウェンスの中には、値が非ゼロのときのみ選択的に 文字列を表示するという使い方のできるものがある。例えば、 フラグ付きメッセイジの数は、そのようなメッセイジが存在するときにのみ 見たいと思うだろう。ゼロには特に意味があるわけではないのだから。 そのように上記シークウェンスに基づいて選択的に文字列を表示するには、 次のような構造が使われる。 <p> %?<シークウェンス文字>?<選択的文字列>? <p> ここで、<em>シークウェンス文字</em>の部分には上記の表にある文字が入る。 <em>選択的文字列</em>の部分は、その<em>シークウェンス文字</em>が 非ゼロのときに表示したい文字列である。<em>選択的文字列</em>には 他のシークウェンスも普通の文章も含めることが<bf>できる</bf>が、 選択的文字列を再帰的に使用することは<bf>できない</bf>。 <p> メイルボックス中にある新着メッセイジの数を選択的に 表示する方法を説明する例を次に挙げる: %?n?%n new messages.? <p> 加えて、二つの文字列を選択することもできる。第一の文字列は値がゼロのとき、 第二の文字列は値が非ゼロのときである。これには次の構造を用いる: %?<シークウェンス文字>?<ゼロ文字列>&<非ゼロ文字列>? <p> さらに、どの printf風シークウェンスに対しても、結果を強制的に 小文字にすることができる。これはシークウェンス文字の前にアンダスコア (_) 記号を付ければ良い。例えば、ロウカルのホスト名を 小文字で表示したいなら %_h とする。 <p> シークウェンス文字の前にコロン (:) 文字を付けると、Mutt は展開結果中のドット (.) をアンダスコアに置換する。 これは、フォルダ名にドットを使えない IMAP フォルダで役立つかもしれない。 (訳注:$status_format というよりは、 <ref id="save-hook" name="save-hook"> などで使うことを想定しているのであろう。) <sect2>status_on_top<label id="status_on_top"> <p> Type: boolean<newline> Default: no <p> この変数を設定すると「ステイタスバー」が画面の下のほうではなく 一番上の行に表示されるようになる。 <sect2>strict_threads<label id="strict_threads"> <p> Type: boolean<newline> Default: no <p> 設定されていると、スレッドで<ref id="sort" name="整列">する際の スレッド構築に &dquot;In-Reply-To&dquot; と &dquot;References&dquot; フィールドだけを用いる。既定では、同じ題のメッセイジが「擬似スレッド」 として一括りにされる。これが常に望ましいとは言えない。例えば 私的なメイルのメイルボックスで、「こんにちは」というような題の 無関係なメッセイジがすべて一括りにされてしまうような場合もある。 <sect2>suspend<label id="suspend"> <p> Type: boolean<newline> Default: yes <p> <em>no</em> のときは、ユーザが端末の <em>susp</em> キーを押しても Mutt が停止しない。そのキーは通常 &dquot;control-Z&dquot; である。 これが便利なのは Mutt を xterm -e mutt のようなコマンドで xterm 内に実行している場合である。(訳注:このような場合に C-z を押してしまったら、別の端末から killall -CONT mutt などとして CONT シグナルを送る必要がある。) <sect2>text_flowed<label id="text_flowed"> <p> Type: boolean<newline> Default: no <p> 設定されていると Mutt は text/plain; format=flowed 添付ファイルを生成する。 この形式は通常の形式よりも一部のメイリングソフトウェアから扱いやすいが、 一般的には通常の文書と同じように見える。ただし、実際にこの形式の特徴を 活用するには、エディタの対応が必要になる。 <p> このオプションが設定されていると <ref id="indent_string" name="$indent_string"> が無視されるので注意すること。 <sect2>thread_received<label id="thread_received"> <p> Type: boolean<newline> Default: no <p> 設定されていると、メッセイジを題名でスレッドにする際に 送信日付ではなく受信日付を使用する。 <sect2>thorough_search<label id="thorough_search"> <p> Type: boolean<newline> Default: no <p> <em>˜b</em> と <em>˜h</em> の検索に影響する。 これらの意味は<ref id="patterns" name="「パターン」">の節に記述されている。 この変数が設定されていると、検索するメッセイジのヘッダや添付ファイルが 復号化されてから検索される。解除されているとフォルダにあるままで検索される。 (訳注:日本語の場合は、この変数を設定しないと使いものにならない。) <sect2>tilde<label id="tilde"> <p> Type: boolean<newline> Default: no <p> 設定されていると、内部ペイジャは画面の下端まで空行をティルド (˜) で詰める。 <sect2>timeout<label id="timeout"> <p> Type: number<newline> Default: 600 <p> Mutt は、キーが押されるのをこの変数の<em>秒数</em>だけメインメニュー (訳注:インデックスメニュー) で待ち続け、それを過ぎると、キーを 押さなくても新着メイルを確認する。ゼロか負の値の場合には いつまでも確認せずに待ち続ける。 <sect2>tmpdir<label id="tmpdir"> <p> Type: path<newline> Default: &dquot;&dquot; <p> この変数で、メッセイジの表示や作成に必要な一時ファイルを Mutt が置く場所を指定することができる。設定されていないときには 環境変数 TMPDIR が用いられる。TMPDIR も設定されていないなら &dquot;/tmp&dquot; が用いられる。 <sect2>to_chars<label id="to_chars"> <p> Type: string<newline> Default: &dquot; +TCFL&dquot; <p> 自分に来たメイルを示すために使われる文字を制御する。 一番目の文字は、メイルが自分のアドレスに宛てられて「いない」 ときに使われる (既定: スペイス)。 二番目は自分がそのメッセイジ唯一の宛先である場合に用いられる (既定: +)。 三番目は、自分のアドレスが TO ヘッダフィールドにあるものの、 自分以外にも宛てられているというメッセイジに使われる (既定: T)。 四番目の文字が使われるのは、自分のアドレスが CC ヘッダフィールドに 指定されていて他の人にも宛てられている場合である (既定: C)。 五番目の文字はメイルの送信者が<em>自分</em>であるという場合に用いられる (既定: F)。 六番目の文字は、メイルが購読メイリングリストに送られていることを 示すために使われる (既定: L)。 <sect2>tunnel<label id="tunnel"> <p> Type: string<newline> Default: &dquot;&dquot; <p> この変数を設定すると Mutt がソケットではなくコマンドへのパイプを開く。 これを使って、IMAP/POP3 サーバへの認証済み接続を作ることができる。 例: <p> tunnel=&dquot;ssh -q mailhost.net /usr/local/libexec/imapd&dquot; <p> 注意: この例がうまくいくには、リモウトマシンにパスワードの入力なしで ログインすることができなくてはならない。 (訳注:ssh-agent などを使う。) <sect2>use_8bitmime<label id="use_8bitmime"> <p> Type: boolean<newline> Default: no <p> <bf>警告:</bf> 自分の使っているヴァージョンの sendmail が -B8BITMIME フラグに対応している (sendmail 8.8.x など) のでない限り、 この変数を設定してはいけない。さもないとメイルを送れなくなってしまう。 <p> <em>yes</em> に設定されているとき、8ビットのメッセイジ送信時に Mutt は <ref id="sendmail" name="$sendmail"> を -B8BITMIME フラグ付きで起動して ESMTP 通信を有効にする。 <sect2>use_domain<label id="use_domain"> <p> Type: boolean<newline> Default: yes <p> 設定されていると Mutt はすべてのロウカルアドレス (@host 部分のないもの) を <ref id="hostname" name="$hostname"> の値で補完する。 <em>解除</em>すると、どのアドレスもそのままにする。 <sect2>use_from<label id="use_from"> <p> Type: boolean<newline> Default: yes <p> <em>yes</em> のときはメッセイジ送信時に &dquot;From:&dquot; ヘッダフィールドを Mutt が生成する。<em>no</em> だと、 ユーザが明示的に <ref id="my_hdr" name="my_hdr"> コマンドで 設定しないと生成されない。 <sect2>use_idn<label id="use_idn"> <p> Type: boolean<newline> Default: yes <p> <em>設定されている</em>と、Mutt が国際化ドメイン名 (IDN) を復号して表示する。 注意: <em>解除</em>されていても IDN アドレスを使うことはできる。 この変数は復号にしか影響しない。 <sect2>use_ipv6<label id="use_ipv6"> <p> Type: boolean<newline> Default: yes <p> <em>設定されている</em>とき、Mutt は接続しようとするホストの IPv6 アドレスを調べる。このオプションが解除されていると、 IPv4 アドレスだけに絞って動作する。通常は既定値で問題なく動くはずだ。 <sect2>user_agent<label id="user_agent"> <p> Type: boolean<newline> Default: yes <p> <em>設定されている</em>と、Mutt は &dquot;User-Agent&dquot; ヘッダを 送信メッセイジに付加する。これはどのヴァージョンの Mutt を使って 作成されたのかを示すものである。 <sect2>visual<label id="visual"> <p> Type: path<newline> Default: &dquot;&dquot; <p> 内蔵エディタの <em>˜v</em> コマンドで起動する ヴィジュアルエディタを指定する。 <sect2>wait_key<label id="wait_key"> <p> Type: boolean<newline> Default: yes <p> Mutt が <em>shell-escape</em>, <em>pipe-message</em>, <em>pipe-entry</em>, <em>print-message</em>, <em>print-entry</em> コマンドのあとに キー押下を求めるかどうかを制御する。 <p> また、<ref id="auto_view" name="auto_view"> で添付ファイルを 閲覧する際にも、対応する mailcap 項目に <em>needsterminal</em> フラグがあって外部プログラムが対話的に動作する場合は、この変数が用いられる。 <p> 設定されていると、常にキー入力を求める。解除されていると、 外部コマンドが非ゼロを返した場合にのみキーを待つ。 <sect2>weed<label id="weed"> <p> Type: boolean<newline> Default: yes <p> 設定されていると、メッセイジの表示、転送、印刷、返信の際にヘッダを間引きする。 <sect2>wrap_search<label id="wrap_search"> <p> Type: boolean<newline> Default: yes <p> 検索がメイルボックスの最後まで行っても続けるかどうかを制御する。 <p> 設定されているときには最初 (または最後) のメッセイジに飛んで検索を続ける。 解除されているときにはそこで終わる。 <sect2>wrapmargin<label id="wrapmargin"> <p> Type: number<newline> Default: 0 <p> Mutt のペイジャが語単位で行を折り返す際に 端末の右側に残す余白の大きさを制御する。 <sect2>write_inc<label id="write_inc"> <p> Type: number<newline> Default: 10 <p> メイルボックスを書き込む際、<em>write_inc</em> 通ごとに 進行状況を示すメッセイジが表示される。 0 に設定されると、書き込み前に一度表示されるだけになる。 <p> <ref id="read_inc" name="$read_inc"> 変数も参照。 <sect2>write_bcc<label id="write_bcc"> <p> Type: boolean<newline> Default: yes <p> メッセイジを送信に備える際、Mutt が Bcc ヘッダを書いておくかどうかを 制御する。Exim ユーザはこれを解除したいと思うであろう。 (訳注:exim は Bcc を消してくれない。) <sect1>関数<label id="functions"> <p> 以下は利用可能な関数の一覧です。 それぞれが利用可能なマップに挙げられています。 既定のキー設定が取り上げられており、関数が何をするかについても 説明されています。これらのキー割り当ては <ref name="bind" id="bind"> コマンドで変更することができます。 <sect2>generic <p> <em/generic/ メニューは実在のメニューではなく、 <em/pager/ と <em/editor/ を除くあらゆるメニューで利用できる 共通の関数 (カーソル移動など) を指定するものです。 このメニューへの変更は、それらすべてのメニューの既定割り当てに 影響を与えます。 <verb> bottom-page L move to the bottom of the page current-bottom not bound move current entry to bottom of page current-middle not bound move current entry to middle of page current-top not bound move current entry to top of page enter-command : enter a muttrc command exit q exit this menu first-entry = move to the first entry half-down ] scroll down 1/2 page half-up [ scroll up 1/2 page help ? this screen jump number jump to an index number last-entry * move to the last entry middle-page M move to the middle of the page next-entry j move to the next entry next-line > scroll down one line next-page z move to the next page previous-entry k move to the previous entry previous-line < scroll up one line previous-page Z move to the previous page refresh ^L clear and redraw the screen search / search for a regular expression search-next n search for next match search-opposite not bound search for next match in opposite direction search-reverse ESC / search backwards for a regular expression select-entry RET select the current entry shell-escape ! run a program in a subshell tag-entry t toggle the tag on the current entry tag-prefix ; apply next command to tagged entries tag-prefix-cond not bound apply next function ONLY to tagged messages top-page H move to the top of the page what-key not bound display the keycode for a key press </verb> <sect2>index <p> <verb> bounce-message b remail a message to another user change-folder c open a different folder change-folder-readonly ESC c open a different folder in read only mode check-traditional-pgp ESC P check for classic pgp clear-flag W clear a status flag from a message copy-message C copy a message to a file/mailbox create-alias a create an alias from a message sender decode-copy ESC C decode a message and copy it to a file/mailbox decode-save ESC s decode a message and save it to a file/mailbox delete-message d delete the current entry delete-pattern D delete messages matching a pattern delete-subthread ESC d delete all messages in subthread delete-thread ^D delete all messages in thread display-address @ display full address of sender display-toggle-weed h display message and toggle header weeding display-message RET display a message edit e edit the current message edit-type ^E edit the current message's Content-Type exit x exit without saving changes extract-keys ^K extract PGP public keys fetch-mail G retrieve mail from POP server flag-message F toggle a message's 'important' flag forget-passphrase ^F wipe PGP passphrase from memory forward-message f forward a message with comments group-reply g reply to all recipients limit l show only messages matching a pattern list-reply L reply to specified mailing list mail m compose a new mail message mail-key ESC k mail a PGP public key next-new TAB jump to the next new message next-subthread ESC n jump to the next subthread next-thread ^N jump to the next thread next-undeleted j move to the next undeleted message next-unread not bound jump to the next unread message parent-message P jump to parent message in thread pipe-message | pipe message/attachment to a shell command previous-new ESC TAB jump to the previous new message previous-page Z move to the previous page previous-subthread ESC p jump to previous subthread previous-thread ^P jump to previous thread previous-undeleted k move to the last undelete message previous-unread not bound jump to the previous unread message print-message p print the current entry query Q query external program for addresses quit q save changes to mailbox and quit read-subthread ESC r mark the current subthread as read read-thread ^R mark the current thread as read recall-message R recall a postponed message reply r reply to a message resend-message ESC e resend message and preserve MIME structure save-message s save message/attachment to a file set-flag w set a status flag on a message show-version V show the Mutt version number and date show-limit ESC l show currently active limit pattern, if any sort-mailbox o sort messages sort-reverse O sort messages in reverse order sync-mailbox $ save changes to mailbox tag-pattern T tag messages matching a pattern tag-thread ESC t tag/untag all messages in the current thread toggle-new N toggle a message's 'new' flag toggle-write % toggle whether the mailbox will be rewritten undelete-message u undelete the current entry undelete-pattern U undelete messages matching a pattern undelete-subthread ESC u undelete all messages in subthread undelete-thread ^U undelete all messages in thread untag-pattern ^T untag messages matching a pattern view-attachments v show MIME attachments </verb> <sect2>pager <p> <verb> bottom not bound jump to the bottom of the message bounce-message b remail a message to another user change-folder c open a different folder change-folder-readonly ESC c open a different folder in read only mode check-traditional-pgp ESC P check for classic pgp copy-message C copy a message to a file/mailbox create-alias a create an alias from a message sender decode-copy ESC C decode a message and copy it to a file/mailbox decode-save ESC s decode a message and save it to a file/mailbox delete-message d delete the current entry delete-subthread ESC d delete all messages in subthread delete-thread ^D delete all messages in thread display-address @ display full address of sender display-toggle-weed h display message and toggle header weeding edit e edit the current message edit-type ^E edit the current message's Content-Type enter-command : enter a muttrc command exit i return to the main-menu extract-keys ^K extract PGP public keys flag-message F toggle a message's 'important' flag forget-passphrase ^F wipe PGP passphrase from memory forward-message f forward a message with comments group-reply g reply to all recipients half-up not bound move up one-half page half-down not bound move down one-half page help ? this screen list-reply L reply to specified mailing list mail m compose a new mail message mail-key ESC k mail a PGP public key mark-as-new N toggle a message's 'new' flag next-line RET scroll down one line next-entry J move to the next entry next-new TAB jump to the next new message next-page move to the next page next-subthread ESC n jump to the next subthread next-thread ^N jump to the next thread next-undeleted j move to the next undeleted message next-unread not bound jump to the next unread message parent-message P jump to parent message in thread pipe-message | pipe message/attachment to a shell command previous-line BackSpace scroll up one line previous-entry K move to the previous entry previous-new not bound jump to the previous new message previous-page - move to the previous page previous-subthread ESC p jump to previous subthread previous-thread ^P jump to previous thread previous-undeleted k move to the last undelete message previous-unread not bound jump to the previous unread message print-message p print the current entry quit Q save changes to mailbox and quit read-subthread ESC r mark the current subthread as read read-thread ^R mark the current thread as read recall-message R recall a postponed message redraw-screen ^L clear and redraw the screen reply r reply to a message save-message s save message/attachment to a file search / search for a regular expression search-next n search for next match search-opposite not bound search for next match in opposite direction search-reverse ESC / search backwards for a regular expression search-toggle \ toggle search pattern coloring shell-escape ! invoke a command in a subshell show-version V show the Mutt version number and date skip-quoted S skip beyond quoted text sync-mailbox $ save changes to mailbox tag-message t tag a message toggle-quoted T toggle display of quoted text top ^ jump to the top of the message undelete-message u undelete the current entry undelete-subthread ESC u undelete all messages in subthread undelete-thread ^U undelete all messages in thread view-attachments v show MIME attachments </verb> <sect2>alias <p> <verb> search / search for a regular expression search-next n search for next match search-reverse ESC / search backwards for a regular expression </verb> <sect2>query <p> <verb> create-alias a create an alias from a message sender mail m compose a new mail message query Q query external program for addresses query-append A append new query results to current results search / search for a regular expression search-next n search for next match search-opposite not bound search for next match in opposite direction search-reverse ESC / search backwards for a regular expression </verb> <sect2>attach <p> <verb> bounce-message b remail a message to another user collapse-parts v toggle display of subparts delete-entry d delete the current entry display-toggle-weed h display message and toggle header weeding edit-type ^E edit the current entry's Content-Type extract-keys ^K extract PGP public keys forward-message f forward a message with comments group-reply g reply to all recipients list-reply L reply to specified mailing list pipe-entry | pipe message/attachment to a shell command print-entry p print the current entry reply r reply to a message resend-message ESC e resend message and preserve MIME structure save-entry s save message/attachment to a file undelete-entry u undelete the current entry view-attach RET view attachment using mailcap entry if necessary view-mailcap m force viewing of attachment using mailcap view-text T view attachment as text </verb> <sect2>compose <p> <verb> attach-file a attach a file(s) to this message attach-message A attach message(s) to this message attach-key ESC k attach a PGP public key copy-file C save message/attachment to a file detach-file D delete the current entry display-toggle-weed h display message and toggle header weeding edit-bcc b edit the BCC list edit-cc c edit the CC list edit-description d edit attachment description edit-encoding ^E edit attachment transfer-encoding edit-fcc f enter a file to save a copy of this message in edit-from ESC f edit the from: field edit-file ^X e edit the file to be attached edit-headers E edit the message with headers edit e edit the message edit-mime m edit attachment using mailcap entry edit-reply-to r edit the Reply-To field edit-subject s edit the subject of this message edit-to t edit the TO list edit-type ^T edit attachment type filter-entry F filter attachment through a shell command forget-passphrase ^F wipe PGP passphrase from memory ispell i run ispell on the message new-mime n compose new attachment using mailcap entry pgp-menu p show PGP options pipe-entry | pipe message/attachment to a shell command postpone-message P save this message to send later print-entry l print the current entry rename-file R rename/move an attached file send-message y send the message toggle-unlink u toggle whether to delete file after sending it view-attach RET view attachment using mailcap entry if necessary write-fcc w write the message to a folder </verb> <sect2>postpone <p> <verb> delete-entry d delete the current entry undelete-entry u undelete the current entry </verb> <sect2>browser <p> <verb> change-dir c change directories check-new TAB check mailboxes for new mail enter-mask m enter a file mask search / search for a regular expression search-next n search for next match search-reverse ESC / search backwards for a regular expression select-new N select a new file in this directory sort o sort messages sort-reverse O sort messages in reverse order toggle-mailboxes TAB toggle whether to browse mailboxes or all files view-file SPACE view file subscribe s subscribe to current mailbox (IMAP Only) unsubscribe u unsubscribe to current mailbox (IMAP Only) toggle-subscribed T toggle view all/subscribed mailboxes (IMAP Only) </verb> <sect2>pgp <p> <verb> view-name % view the key's user id verify-key c verify a PGP public key </verb> <sect2>editor <p> <verb> backspace BackSpace delete the char in front of the cursor backward-char ^B move the cursor one character to the left backward-word ESC b move the cursor to the previous word bol ^A jump to the beginning of the line buffy-cycle Space cycle among incoming mailboxes capitalize-word ESC c uppercase the first character in the word complete TAB complete filename or alias complete-query ^T complete address with query delete-char ^D delete the char under the cursor downcase-word ESC l lowercase all characters in current word eol ^E jump to the end of the line forward-char ^F move the cursor one character to the right forward-word ESC f move the cursor to the next word history-down not bound scroll down through the history list history-up not bound scroll up through the history list kill-eol ^K delete chars from cursor to end of line kill-eow ESC d delete chars from cursor to end of word kill-line ^U delete all chars on the line kill-word ^W delete the word in front of the cursor quote-char ^V quote the next typed key transpose-chars not bound transpose character under cursor with previous upcase-word ESC u uppercase all characters in current word </verb> <sect>雑録 <p> <sect1>謝辞 <p> Kari Hurtta <htmlurl url="mailto:kari.hurtta@fmi.fi" name="<kari.hurtta@fmi.fi>"> は、かつて ELM-ME の日々に MIME 解釈コウドの原型を共同開発してくれました。 以下の人々が Mutt 開発に対して大きな力になってくれてきました。 Vikas Agnihotri <htmlurl url="mailto:vikasa@writeme.com" name="<vikasa@writeme.com>">,<newline> Francois Berjon <htmlurl url="mailto:Francois.Berjon@aar.alcatel-alsthom.fr" name="<Francois.Berjon@aar.alcatel-alsthom.fr>">,<newline> Aric Blumer <htmlurl url="mailto:aric@fore.com" name="<aric@fore.com>">,<newline> John Capo <htmlurl url="mailto:jc@irbs.com" name="<jc@irbs.com>">,<newline> David Champion <htmlurl url="mailto:dgc@uchicago.edu" name="<dgc@uchicago.edu">,<newline> Brendan Cully <htmlurl url="mailto:brendan@kublai.com" name="<brendan@kublai.com>">,<newline> Liviu Daia <htmlurl url="mailto:daia@stoilow.imar.ro" name="<daia@stoilow.imar.ro>">,<newline> Thomas E. Dickey <htmlurl url="mailto:dickey@herndon4.his.com" name="<dickey@herndon4.his.com>">,<newline> David DeSimone <htmlurl url="mailto:fox@convex.hp.com" name="<fox@convex.hp.com>">,<newline> Nickolay N. Dudorov <htmlurl url="mailto:nnd@wint.itfs.nsk.su" name="<nnd@wint.itfs.nsk.su>">,<newline> Ruslan Ermilov <htmlurl url="mailto:ru@freebsd.org" name="<ru@freebsd.org>">,<newline> Edmund Grimley Evans <htmlurl url="mailto:edmundo@rano.org" name="<edmundo@rano.org">,<newline> Michael Finken <htmlurl url="mailto:finken@conware.de" name="<finken@conware.de>">,<newline> Sven Guckes <htmlurl url="mailto:guckes@math.fu-berlin.de" name="<guckes@math.fu-berlin.de>">,<newline> Lars Hecking <htmlurl url="mailto:lhecking@nmrc.ie" name="<lhecking@nmrc.ie>">,<newline> Mark Holloman <htmlurl url="mailto:holloman@nando.net" name="<holloman@nando.net>">,<newline> Andreas Holzmann <htmlurl url="mailto:holzmann@fmi.uni-passau.de" name="<holzmann@fmi.uni-passau.de>">,<newline> Marco d'Itri <htmlurl url="mailto:md@linux.it" name="<md@linux.it>">,<newline> Bjoern Jacke <htmlurl url="mailto:bjacke@suse.com" name="<bjacke@suse.com>">,<newline> Byrial Jensen <htmlurl url="mailto:byrial@image.dk" name="<byrial@image.dk>">,<newline> David Jeske <htmlurl url="mailto:jeske@igcom.net" name="<jeske@igcom.net>">,<newline> Christophe Kalt <htmlurl url="mailto:kalt@hugo.int-evry.fr" name="<kalt@hugo.int-evry.fr>">,<newline> Tommi Komulainen <htmlurl url="mailto:Tommi.Komulainen@iki.fi" name="<Tommi.Komulainen@iki.fi>">,<newline> Felix von Leitner (a.k.a ``Fefe'') <htmlurl url="mailto:leitner@math.fu-berlin.de" name="<leitner@math.fu-berlin.de>">,<newline> Brandon Long <htmlurl url="mailto:blong@fiction.net" name="<blong@fiction.net>">,<newline> Jimmy Makela <htmlurl url="mailto:jmy@flashback.net" name="<jmy@flashback.net>">,<newline> Lars Marowsky-Bree <htmlurl url="mailto:lmb@pointer.in-minden.de" name="<lmb@pointer.in-minden.de>">,<newline> Thomas ``Mike'' Michlmayr <htmlurl url="mailto:mike@cosy.sbg.ac.at" name="<mike@cosy.sbg.ac.at>">,<newline> Andrew W. Nosenko <htmlurl url="mailto:awn@bcs.zp.ua" name="<awn@bcs.zp.ua>">,<newline> David O'Brien <htmlurl url="mailto:obrien@Nuxi.cs.ucdavis.edu" name="<obrien@Nuxi.cs.ucdavis.edu>">,<newline> Clint Olsen <htmlurl url="mailto:olsenc@ichips.intel.com" name="<olsenc@ichips.intel.com>">,<newline> Park Myeong Seok <htmlurl url="mailto:pms@romance.kaist.ac.kr" name="<pms@romance.kaist.ac.kr>">,<newline> Thomas Parmelan <htmlurl url="mailto:tom@ankh.fr.eu.org" name="<tom@ankh.fr.eu.org>">,<newline> Ollivier Robert <htmlurl url="mailto:roberto@keltia.freenix.fr" name="<roberto@keltia.freenix.fr>">,<newline> Thomas Roessler <htmlurl url="mailto:roessler@does-not-exist.org" name="<roessler@does-not-exist.org>">,<newline> Roland Rosenfeld <htmlurl url="roland@spinnaker.de" name="<roland@spinnaker.de>">,<newline> TAKIZAWA Takashi <htmlurl url="taki@luna.email.ne.jp" name="<taki@luna.email.ne.jp>">,<newline> Allain Thivillon <htmlurl url="mailto:Allain.Thivillon@alma.fr" name="<Allain.Thivillon@alma.fr>">,<newline> Gero Treuner <htmlurl url="mailto:gero@faveve.uni-stuttgart.de" name="<gero@faveve.uni-stuttgart.de>">,<newline> Vsevolod Volkov <htmlurl url="mailto:vvv@lucky.net" name="<vvv@lucky.net>">,<newline> Ken Weinert <htmlurl url="mailto:kenw@ihs.com" name="<kenw@ihs.com>"> <sect1>この文書について <p> この文書は SGML で書かれ、 <htmlurl url="http://www.sgmltools.org/" name="sgml-tools"> パッケイジを用いて他の形式へ整形されました。 <sect1>日本語訳について <p> <bf>Note: The original manual does not have this section.<newline> 注意: この章は原文には存在しません。</bf> 日本語で読める完全な Mutt マニュアルは、西岡氏と人見氏による翻訳しか 手に入らない状態が続いています。そこで tamomo こと高橋全は、 sourceforge.jp の mutt-j プロジェクトという場を借りて、 一つの仮想ライヴァルを作り出そうと考えました。 目標は、この翻訳がシェアを握ることではありません (この翻訳は「訳注」が多すぎるし、カタカナが変で、読みづらいですからね)。 この翻訳が契機となって西岡・人見訳がより良いものとなり、 Mutt ユーザにとって、より快適な日本語環境が整備されることです。 また、この翻訳の特色として、原文 SGML との対応が見やすいという点があります。 <tt>diff -du manual.sgml manual.ja.sgml</tt> としてみると、 原文と日本語が並んで見えるため、誤訳なのか 原文が間違っているのかが一目瞭然です。 これによって原文の質が向上されることも視野に入れています。 翻訳中に、実際いくつか原文の誤りなどを見付けました。 ライセンスについては、原文に何も付け足しません。 参考にしたのは、原文とソース (1.5.6, 1.5.7, 1.5.8 および CVS 版)、および 西岡・人見訳 (1.4) のみです。 改善要求などは sourceforge.jp の mutt-j プロジェクトの バグ報告機能かフォーラムを使うと良いでしょう。 あるいは高橋全に直接メイルを送っても構いません。 <tt>Translation to Japanese: (C) 2004, 2005 TAKAHASHI Tamotsu</tt> </article>