Mutt E-Mail クライアント

Michael Elkins

version 1.14.6 (2020-07-11)

Abstract

All mail clients suck. This one just sucks less. — me, circa 1995


Table of Contents

1. はじめに
1. Mutt ホームページ
2. メーリングリスト
3. Mutt の入手
4. Mutt オンラインリソース
5. Mutt への貢献
6. 表記について
7. 著作権
2. 最初のステップ
1. 基本的な考え方
2. 画面とメニュー
2.1. インデックス
2.2. ページャ
2.3. ファイルブラウザ
2.4. サイドバー
2.5. ヘルプ
2.6. 編集メニュー
2.7. 別名メニュー
2.8. 添付メニュー
3. メニュー内での移動
4. 入力フィールドの編集
4.1. イントロダクション
4.2. 履歴
5. メールを読む
5.1. メッセージインデックス
5.2. ページャ
5.3. スレッドモード
5.4. その他の機能
6. メールの送信
6.1. イントロダクション
6.2. メッセージヘッダの編集
6.3. 暗号化機能を使った、署名/暗号化したメールの送信
6.4. Format=Flowed 形式のメッセージ送信
6.5. バックグラウンドでの編集
7. メールの転送と中継
8. メール送信の延期
9. 暗号化と署名
9.1. OpenPGP の構成
9.2. S/MIME の設定
3. 設定
1. 初期設定ファイルの位置
2. Muttrc 設定の始め方
3. 初期化ファイルの構文
4. アドレスグループ
5. エイリアスの定義と使用
6. 既定のキー割り当ての変更
7. 文字セットの別名定義
8. メールボックスに基づく変数の設定
9. キーボードマクロ
10. 色と白黒の画面属性の使用
11. メッセージヘッダの表示
11.1. ヘッダ表示
11.2. ヘッダの選択
11.3. 表示されるヘッダの順番
12. 代替アドレス
13. メーリングリスト
14. 複数のスプールメールボックスの使用
15. 受信メールのモニタ
16. ユーザ定義のヘッダ
17. 既定のセーブ用メールボックスの指定
18. 編集時に既定の Fcc: Mailbox を指定
19. 既定のセーブファイル名と既定の Fcc: メールボックスを同時に指定
20. メッセージの宛先による設定の変更
21. メッセージ整形前に設定を変更する
22. 受信者の暗号鍵の選択
23. パターンを使った $index_format の動的変更
24. キーボードバッファへのキーシーケンスの追加
25. 機能の実行
26. メッセージのスコア付け
27. スパムの検出
28. 変数の設定と問合せ
28.1. 変数のタイプ
28.2. コマンド
28.3. ユーザ定義の変数
28.4. タイプの変換
29. 他のファイルからの初期かコマンドの読み込み
30. フックの削除
31. 文字列のフォーマット
31.1. 基本的な使い方
31.2. 条件式
31.3. フィルタ
31.4. パディング
31.5. バイト長の表示
32. mailto: URL 中でのヘッダフィールドの許可制御
4. 高度な使用方法
1. 文字セットのハンドリング
2. 正規表現
3. パターン: 検索、制限とタグ付け
3.1. パターンモディファイア
3.2. 簡単な検索
3.3. ネスティングおよび論理演算子
3.4. 日付による検索
4. メッセージへのマーク付け
5. タグの使用
6. フックの使用
6.1. フックにおけるメッセージ一致条件
6.2. フックにおけるメールボックスのマッチング
7. 環境の操作(Managing the Environment)
8. 外部アドレスの問い合わせ
9. メールボックスの形式
10. メールボックスのショートカット
11. メーリングリストの取り扱い
12. 表示の難読化(Munging)
13. 新しいメールの検出
13.1. 新規メール検出の方式
13.2. 新規メールのポーリング
13.3. 新規メールのモニタ
13.4. メールボックスメッセージ数の計算
14. スレッドの編集
14.1. スレッドの接続
14.2. スレッドの分割
15. 配送状態通知(Delivery Status Notification:DSN)のサポート
16. URL 上での WWW ブラウザの起動
17. テキストの表示(echo)
18. メッセージ作成フロー
19. その他
5. Mutt における MIME のサポート
1. Mutt 中で MIME を使う
1.1. MIME の概要
1.2. ページャ中でのMIME メッセージの表示
1.3. 添付メニュー
1.4. 編集メニュー
2. mime.typesによるMIME タイプの設定
3. mailcap による MIME ビューワの設定
3.1. Mailcap ファイルの基本
3.2. Mailcapの安全な使用方法
3.3. 高度な Mailcap の使用法
3.4. Mailcap ファイルの例
4. MIME 自動閲覧
5. MIME Multipart/Alternative
6. 添付の検索とカウント
7. MIME Lookup
6. オプション機能
1. 一般的な注意事項
1.1. 機能の有効化/無効化
1.2. URL の文法
2. SSL/TLS サポート
2.1. STARTTLS
2.2. Tunnel
3. POP3 サポート
4. IMAP サポート
4.1. IMAP フォルダブラウザ
4.2. 認証
5. SMTP サポート
6. OAUTHBEARER サポート
7. 複数アカウントの管理
8. ローカルでのキャッシング
8.1. ヘッダキャッシング
8.2. Body キャッシング
8.3. キャッシュディレクトリ
8.4. メンテナンス
9. 正確なアドレスの生成
10. Mixmaster 経由での匿名メッセージ送信
11. サイドバー
11.1. はじめに
11.2. 変数
11.3. 機能
11.4. コマンド
11.5. 色
11.6. 整列
11.7. 参照
12. 圧縮されたフォルダ機能
12.1. 概要
12.2. コマンド
13. Autocrypt
13.1. 必要条件
13.2. 最初の実行
13.3. 編集メニュー
13.4. アカウントの管理
13.5. 代替キーとキーリングの戦略
7. セキュリティについての考慮
1. パスワード
2. 一時ファイル
3. 情報漏洩
3.1. Message-Id: ヘッダ
3.2. mailto:形式のリンク
4. 外部アプリケーション
8. パフォーマンスチューニング
1. メールボックスの描画と書き込み
2. リモートフォルダからのメッセージの読み込み
3. 検索と制限
9. リファレンス
1. コマンド行操作
2. 設定コマンド
3. 設定変数
3.1. abort_noattach
3.2. abort_noattach_regexp
3.3. abort_nosubject
3.4. abort_unmodified
3.5. alias_file
3.6. alias_format
3.7. allow_8bit
3.8. allow_ansi
3.9. arrow_cursor
3.10. ascii_chars
3.11. askbcc
3.12. askcc
3.13. assumed_charset
3.14. attach_charset
3.15. attach_format
3.16. attach_sep
3.17. attach_split
3.18. attribution
3.19. attribution_locale
3.20. auto_subscribe
3.21. auto_tag
3.22. autocrypt
3.23. autocrypt_acct_format
3.24. autocrypt_dir
3.25. autocrypt_reply
3.26. autoedit
3.27. background_edit
3.28. background_confirm_quit
3.29. background_format
3.30. beep
3.31. beep_new
3.32. bounce
3.33. bounce_delivered
3.34. braille_friendly
3.35. browser_abbreviate_mailboxes
3.36. browser_sticky_cursor
3.37. certificate_file
3.38. change_folder_next
3.39. charset
3.40. check_mbox_size
3.41. check_new
3.42. collapse_unread
3.43. compose_format
3.44. config_charset
3.45. confirmappend
3.46. confirmcreate
3.47. connect_timeout
3.48. content_type
3.49. copy
3.50. count_alternatives
3.51. crypt_autoencrypt
3.52. crypt_autopgp
3.53. crypt_autosign
3.54. crypt_autosmime
3.55. crypt_confirmhook
3.56. crypt_opportunistic_encrypt
3.57. crypt_opportunistic_encrypt_strong_keys
3.58. crypt_protected_headers_read
3.59. crypt_protected_headers_save
3.60. crypt_protected_headers_subject
3.61. crypt_protected_headers_write
3.62. crypt_replyencrypt
3.63. crypt_replysign
3.64. crypt_replysignencrypted
3.65. crypt_timestamp
3.66. crypt_use_gpgme
3.67. crypt_use_pka
3.68. crypt_verify_sig
3.69. date_format
3.70. default_hook
3.71. delete
3.72. delete_untag
3.73. digest_collapse
3.74. display_filter
3.75. dotlock_program
3.76. dsn_notify
3.77. dsn_return
3.78. duplicate_threads
3.79. edit_headers
3.80. editor
3.81. encode_from
3.82. entropy_file
3.83. envelope_from_address
3.84. error_history
3.85. escape
3.86. fast_reply
3.87. fcc_attach
3.88. fcc_before_send
3.89. fcc_clear
3.90. fcc_delimiter
3.91. flag_safe
3.92. folder
3.93. folder_format
3.94. followup_to
3.95. force_name
3.96. forward_attachments
3.97. forward_attribution_intro
3.98. forward_attribution_trailer
3.99. forward_decode
3.100. forward_decrypt
3.101. forward_edit
3.102. forward_format
3.103. forward_quote
3.104. from
3.105. gecos_mask
3.106. hdrs
3.107. header
3.108. header_cache
3.109. header_cache_compress
3.110. header_cache_pagesize
3.111. header_color_partial
3.112. help
3.113. hidden_host
3.114. hide_limited
3.115. hide_missing
3.116. hide_thread_subject
3.117. hide_top_limited
3.118. hide_top_missing
3.119. history
3.120. history_file
3.121. history_remove_dups
3.122. honor_disposition
3.123. honor_followup_to
3.124. hostname
3.125. idn_decode
3.126. idn_encode
3.127. ignore_linear_white_space
3.128. ignore_list_reply_to
3.129. imap_authenticators
3.130. imap_check_subscribed
3.131. imap_condstore
3.132. imap_deflate
3.133. imap_delim_chars
3.134. imap_fetch_chunk_size
3.135. imap_headers
3.136. imap_idle
3.137. imap_keepalive
3.138. imap_list_subscribed
3.139. imap_login
3.140. imap_oauth_refresh_command
3.141. imap_pass
3.142. imap_passive
3.143. imap_peek
3.144. imap_pipeline_depth
3.145. imap_poll_timeout
3.146. imap_qresync
3.147. imap_servernoise
3.148. imap_user
3.149. implicit_autoview
3.150. include
3.151. include_encrypted
3.152. include_onlyfirst
3.153. indent_string
3.154. index_format
3.155. ispell
3.156. keep_flagged
3.157. list_reply
3.158. mail_check
3.159. mail_check_recent
3.160. mail_check_stats
3.161. mail_check_stats_interval
3.162. mailcap_path
3.163. mailcap_sanitize
3.164. maildir_header_cache_verify
3.165. maildir_trash
3.166. maildir_check_cur
3.167. mark_macro_prefix
3.168. mark_old
3.169. markers
3.170. mask
3.171. mbox
3.172. mbox_type
3.173. menu_context
3.174. menu_move_off
3.175. menu_scroll
3.176. message_cache_clean
3.177. message_cachedir
3.178. message_format
3.179. meta_key
3.180. metoo
3.181. mh_purge
3.182. mh_seq_flagged
3.183. mh_seq_replied
3.184. mh_seq_unseen
3.185. mime_forward
3.186. mime_forward_decode
3.187. mime_forward_rest
3.188. mime_type_query_command
3.189. mime_type_query_first
3.190. mix_entry_format
3.191. mixmaster
3.192. move
3.193. narrow_tree
3.194. net_inc
3.195. new_mail_command
3.196. pager
3.197. pager_context
3.198. pager_format
3.199. pager_index_lines
3.200. pager_stop
3.201. pgp_auto_decode
3.202. pgp_autoinline
3.203. pgp_check_exit
3.204. pgp_check_gpg_decrypt_status_fd
3.205. pgp_clearsign_command
3.206. pgp_decode_command
3.207. pgp_decrypt_command
3.208. pgp_decryption_okay
3.209. pgp_default_key
3.210. pgp_encrypt_only_command
3.211. pgp_encrypt_sign_command
3.212. pgp_entry_format
3.213. pgp_export_command
3.214. pgp_getkeys_command
3.215. pgp_good_sign
3.216. pgp_ignore_subkeys
3.217. pgp_import_command
3.218. pgp_list_pubring_command
3.219. pgp_list_secring_command
3.220. pgp_long_ids
3.221. pgp_mime_auto
3.222. pgp_replyinline
3.223. pgp_retainable_sigs
3.224. pgp_self_encrypt
3.225. pgp_show_unusable
3.226. pgp_sign_as
3.227. pgp_sign_command
3.228. pgp_sort_keys
3.229. pgp_strict_enc
3.230. pgp_timeout
3.231. pgp_use_gpg_agent
3.232. pgp_verify_command
3.233. pgp_verify_key_command
3.234. pipe_decode
3.235. pipe_sep
3.236. pipe_split
3.237. pop_auth_try_all
3.238. pop_authenticators
3.239. pop_checkinterval
3.240. pop_delete
3.241. pop_host
3.242. pop_last
3.243. pop_oauth_refresh_command
3.244. pop_pass
3.245. pop_reconnect
3.246. pop_user
3.247. post_indent_string
3.248. postpone
3.249. postponed
3.250. postpone_encrypt
3.251. postpone_encrypt_as
3.252. preconnect
3.253. print
3.254. print_command
3.255. print_decode
3.256. print_split
3.257. prompt_after
3.258. query_command
3.259. query_format
3.260. quit
3.261. quote_regexp
3.262. read_inc
3.263. read_only
3.264. realname
3.265. recall
3.266. record
3.267. reflow_space_quotes
3.268. reflow_text
3.269. reflow_wrap
3.270. reply_regexp
3.271. reply_self
3.272. reply_to
3.273. resolve
3.274. resume_draft_files
3.275. resume_edited_draft_files
3.276. reverse_alias
3.277. reverse_name
3.278. reverse_realname
3.279. rfc2047_parameters
3.280. save_address
3.281. save_empty
3.282. save_history
3.283. save_name
3.284. send_group_reply_to
3.285. score
3.286. score_threshold_delete
3.287. score_threshold_flag
3.288. score_threshold_read
3.289. search_context
3.290. send_charset
3.291. send_multipart_alternative
3.292. send_multipart_alternative_filter
3.293. sendmail
3.294. sendmail_wait
3.295. shell
3.296. sidebar_delim_chars
3.297. sidebar_divider_char
3.298. sidebar_folder_indent
3.299. sidebar_format
3.300. sidebar_indent_string
3.301. sidebar_new_mail_only
3.302. sidebar_next_new_wrap
3.303. sidebar_relative_shortpath_indent
3.304. sidebar_short_path
3.305. sidebar_sort_method
3.306. sidebar_use_mailbox_shortcuts
3.307. sidebar_visible
3.308. sidebar_width
3.309. sig_dashes
3.310. sig_on_top
3.311. signature
3.312. simple_search
3.313. size_show_bytes
3.314. size_show_fractions
3.315. size_show_mb
3.316. size_units_on_left
3.317. sleep_time
3.318. smart_wrap
3.319. smileys
3.320. pgp_mime_signature_filename
3.321. pgp_mime_signature_description
3.322. smime_ask_cert_label
3.323. smime_ca_location
3.324. smime_certificates
3.325. smime_decrypt_command
3.326. smime_decrypt_use_default_key
3.327. smime_default_key
3.328. smime_encrypt_command
3.329. smime_encrypt_with
3.330. smime_get_cert_command
3.331. smime_get_cert_email_command
3.332. smime_get_signer_cert_command
3.333. smime_import_cert_command
3.334. smime_is_default
3.335. smime_keys
3.336. smime_pk7out_command
3.337. smime_self_encrypt
3.338. smime_sign_as
3.339. smime_sign_command
3.340. smime_sign_digest_alg
3.341. smime_sign_opaque_command
3.342. smime_timeout
3.343. smime_verify_command
3.344. smime_verify_opaque_command
3.345. smtp_authenticators
3.346. smtp_oauth_refresh_command
3.347. smtp_pass
3.348. smtp_url
3.349. sort
3.350. sort_alias
3.351. sort_aux
3.352. sort_browser
3.353. sort_re
3.354. spam_separator
3.355. spoolfile
3.356. ssl_ca_certificates_file
3.357. ssl_client_cert
3.358. ssl_force_tls
3.359. ssl_min_dh_prime_bits
3.360. ssl_starttls
3.361. ssl_use_sslv2
3.362. ssl_use_sslv3
3.363. ssl_use_tlsv1
3.364. ssl_use_tlsv1_1
3.365. ssl_use_tlsv1_2
3.366. ssl_use_tlsv1_3
3.367. ssl_usesystemcerts
3.368. ssl_verify_dates
3.369. ssl_verify_host
3.370. ssl_verify_partial_chains
3.371. ssl_ciphers
3.372. status_chars
3.373. status_format
3.374. status_on_top
3.375. strict_threads
3.376. suspend
3.377. text_flowed
3.378. thorough_search
3.379. thread_received
3.380. tilde
3.381. time_inc
3.382. timeout
3.383. tmpdir
3.384. to_chars
3.385. trash
3.386. ts_icon_format
3.387. ts_enabled
3.388. ts_status_format
3.389. tunnel
3.390. uncollapse_jump
3.391. uncollapse_new
3.392. use_8bitmime
3.393. use_domain
3.394. use_envelope_from
3.395. use_from
3.396. use_ipv6
3.397. user_agent
3.398. visual
3.399. wait_key
3.400. weed
3.401. wrap
3.402. wrap_headers
3.403. wrap_search
3.404. wrapmargin
3.405. write_bcc
3.406. write_inc
4. 機能(関数)
4.1. Generic Menu
4.2. Index Menu
4.3. Pager Menu
4.4. Alias Menu
4.5. Query Menu
4.6. Attachment Menu
4.7. Compose Menu
4.8. Postpone Menu
4.9. Browser Menu
4.10. Pgp Menu
4.11. Smime Menu
4.12. Mixmaster Menu
4.13. Editor Menu
4.14. Autocrypt Account Menu
10. 補足
1. 謝辞
2. About This Document

List of Tables

1.1. 特別の単語についての表記方法
2.1. エントリベースのメニューにおけるもっとも共通の操作キー
2.2. ページベースのメニューにおけるもっとも共通の操作キー
2.3. もっとも共通の行エディタキー
2.4. もっとも共通的なメッセージインデックスキー
2.5. メッセージステータスフラグ
2.6. メッセージ受信フラグ
2.7. もっとも共通的なページャのキー
2.8. ANSI エスケープシーケンス
2.9. カラーシーケンス
2.10. もっとも一般的なスレッドモードのキー
2.11. 特別なスレッド中の文字
2.12. もっとも一般的なメール送信キー
2.13. もっとも一般的な編集メニューキー
2.14. PGP 鍵メニューのフラグ
3.1. キーのシンボル名
4.1. POSIX 正規表現文字クラス
4.2. 正規表現の繰り返し演算子
4.3. GNU 拡張正規表現
4.4. パターンモディファイア
4.5. 単純なキーワード検索
4.6. 日付の単位
4.7. 相対日付の単位
4.8. メールボックスショートカット
5.1. サポートされている MIME タイプ
6.1. サイドバー変数
6.2. サイドバーの機能
6.3. サイドバーの色
6.4. サイドバーの整列
6.5. すべてのフックが必要ではない
9.1. コマンド行オプション
9.2. Default Generic Menu Bindings
9.3. Default Index Menu Bindings
9.4. Default Pager Menu Bindings
9.5. Default Alias Menu Bindings
9.6. Default Query Menu Bindings
9.7. Default Attachment Menu Bindings
9.8. Default Compose Menu Bindings
9.9. Default Postpone Menu Bindings
9.10. Default Browser Menu Bindings
9.11. Default Pgp Menu Bindings
9.12. Default Smime Menu Bindings
9.13. Default Mixmaster Menu Bindings
9.14. Default Editor Menu Bindings
9.15. Default Autocrypt Account Menu Bindings

List of Examples

3.1. 複数の設定コマンドを1行中に記述する例
3.2. 設定ファイルにおけるコメントの例
3.3. 設定ファイル中における quotes の例
3.4. 複数行に長い設定コマンドを分割
3.5. 設定ファイル中において外部コマンド出力を使う
3.6. バッククォートでくくられた部分の解釈を防ぐ
3.7. 設定フィル中での環境変数の利用
3.8. 外部別名ファイルの設定例
3.9. メールボックス名ベースでの整列方式の設定
3.10. ヘッダの間引き
3.11. ヘッダ表示順の設定
3.12. カスタムヘッダの定義
3.13. save-hook中で %-expandos を使う
3.14. folder-hook 中でのpushの組み込み
3.15. スパム検出のための設定
3.16. 設定ファイルの可読性向上のための、ユーザ定義変数の使用
3.17. 他の設定オプション値のバックアップ用にユーザ定義変数を使用
3.18. 実行時まで、ユーザ定義の変数の展開は遅延する
3.19. Type conversions using variables
3.20. フォーマット文字列中の外部フィルタの使用
4.1. アドレスリスト中のすべてのアドレス一致の例
4.2. 別名に限定されたマッチング
4.3. 任意の定義済み別名に一致
4.4. パターン中での論理演算子の使用
4.5. 既定の hook の指定
4.6. 題名の難読化
5.1. mime.types
5.2. 添付のカウント
6.1. URLs
6.2. 複数アカウントの管理
6.3. open-hookの例
6.4. close-hookの例
6.5. append-hook の例

Chapter 1. はじめに

Mutt は小さいながらも非常にパワフルな テキストベースの MIME メールクライアントです。Mutt は、その高い柔軟性に加えて、 キー割り当てや キーボードマクロ、メールのスレッド表示、正規表現検索、さらには メッセージ選択用の強力なパターン言語といった高度な機能により、 まさしくメール のパワーユーザにぴったりであると言えます。

1. Mutt ホームページ

公式のホームページは以下の通りです。 http://www.mutt.org/.

2. メーリングリスト

以下のメーリングリストを購読するには、メッセージ本文に subscribe を書き、 リスト名-request@mutt.org に送信してください。

mutt-announce に投稿されたすべてのメッセージは 自動的にmutt-usersに転送されるため、両方を購読 する必要はありません。

3. Mutt の入手

Mutt リリース版は ftp://ftp.mutt.org/pub/mutt/以下か らダウンロードできます。 ミラーサイトのリストは http://www.mutt.org/download.html を参照してください。

開発版は Mutt development site を 参照してください。

4. Mutt オンラインリソース

バグ追跡システム

公式の Mutt バグ追跡システムは https://gitlab.com/muttmua/mutt/issues です。

Wiki

(非公式の) wiki は at https://gitlab.com/muttmua/mutt/wikis/home にあります。

IRC

IRC ユーザコミュニティは irc.freenode.net のチャンネル #mutt にあります。

USENET

USENET はニュースグループ comp.mail.muttを参照してください。

5. Mutt への貢献

Mutt プロジェクトに対する貢献方法はいくつもあります。

特に新しくユーザになられた人には、他の、新規および熟練ユーザにあって Mutt につ いてチャットしたり、問題について話したり、解決方法を共有することは有用です。

Mutt の他の言語への翻訳は高く評価されているため、Mutt 開発者は、 翻訳の改善と維持を手助けしてくれる熟練の翻訳者を探しています。

新しい機能とバグ修正のためのパッチの寄贈についての詳細は、以下の開発ページを参照してください https://gitlab.com/muttmua/mutt

6. 表記について

この節では、このマニュアル全体における表記方法について記しています。 特別の単語についての表記方法については、テーブル Table 1.1, “特別の単語についての表記方法” を参照してください。

Table 1.1. 特別の単語についての表記方法

項目Refers to...
printf(3)UNIX マニュアルページ。 man 3 printf を実行。
<PageUp>名前付きのキー
<create-alias>名前付きの Mutt のファンクション
^GControl+G キー
$mail_checkMutt 設定オプション
$HOME環境変数

例は以下の通りです:

mutt -v

コマンド概要の説明中で中括弧 ({}) は、オプションの組を表し、 of options of which one is mandatory, square brackets ([]) で囲まれたものは必須のものです。また、3つのドットは引数が 任意の回数繰り返される可能性があることを意味します。

7. 著作権

Mutt is Copyright © 1996-2020 Michael R. Elkins and others.

このプログラムはフリーソフトウェアです。Free Software Foundation による GNU General Public License のバージョン 2 もしくはそれ以降のバージョン (任意選択) のいずれかに従う限り、自由に変更および再配布できます。

このプログラムは役に立つことを願って配布されていますが、「まったく無保証」です。 商品能力や特定の目的への適性について、暗黙の保証さえありません。詳細は GNU General Public License を参照してください。

GNU General Public License の文面は、このプログラムに付いてきたはずです。そう でなければ、Free Software Foudation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA に手紙をください。

Chapter 2. 最初のステップ

この章の目的は Mutt の使い方を概観することです。 ほかにもマニュアルの別の場所 で説明されている機能はたくさんあります。 さらには Mutt FAQ や種々の Web ページ で手に入る情報もあります。詳しくは Mutt ホームページを参照してください。

この章では、配布されているままの既定のキー割り当てで説明します。 自分のサイト ではシステム管理者が既定値を変えてしまっている かもしれません。どのメニューでも ? を押して 現在のキー割り当てを表示できます。

まず必要なのは Mutt を起動することです。これは、コマンドラインから mutt と入力するだけです。起動時の種々のオプションについては mutt のマニュアルページか、リファレンス を 参照してください。

1. 基本的な考え方

Mutt は、ほとんどの場合、行/エントリまたはページベースの、異なったメ ニューを対話的に使って操作する、テキストベースのアプリケーションです。 行ベースのメニューはindexメニュー(現在オープンしているフォルダ のすべてのメッセージを表示)またはaliasメニュー(リストから受信者 を選択できる)のようなものです。ページベースのメニュー例は、 pager(一度に1つのメッセージを表示)または有効なキーバインディン グを一覧表示するhelpメニューです。

ユーザインタフェースには、最上部に状況によって変化するヘルプ行、メニューの内容、 状況によって変化するステータス行、コマンド行という構成になっています。コマンド 行は、プロンプトのように情報やエラーメッセージを表示したり、対話的なコマンドを 入力するのに使われます。

Mutt は利用者が恒久的に既定値以外の値を使いたい場合に、設定ファイルに記述した 変数を使って構成されます。Mutt は読みやすく、コメントも書ける、やや複 雑な設定ファイルに、リッチな設定構文で記述できることをサポートしています。

Mutt はほとんどのキーバインディングを変更することができるので、いわゆる ファンクションを(コマンド行を使って)手動で実行したり、マクロで実行させた りできます。マクロは、一連の動作を繰り返す代わりに、1つのキーや短いキーシーケ ンスにバインドすることもできます。

(他のフォルダにメッセージをセーブまたはコピーするような)多くのコマンドは、 単一のメッセージまたは(いわゆるタグ付けられた)ひとまとまりのメッ セージに適用できます。メッセージ選択を手助けするため、Mutt は、否定と同様、論 理的なandor操作を組み合わせること ができる、たくさんのメッセージパターン(たとえば受信者、送信者、本体の内容、 送受信日付など)を提供しています。パターンは、一致したメッセージのみをインデッ クスに表示させるため、(たとえば)メッセージの検索にも使う事ができます。

Mutt は、フォルダに入ったり、新規メッセージを作ったり、既存のメッセージに返信 するような特定の状況において、設定コマンドとファンクションをユーザが実行できる、 hookというコンセプトをサポートしています。hook は、複数のアイデ ンティティの管理、フォルダ表示のカスタマイズフォルダ単位での自動アーカイブの実 装などやその他を含む、高度にカスタマイズされた Mutt の動作を行うのに使われます。

インタラクティブモードのほかに、Mutt はメッセージ送信を行うコマンド行ツールと しても使えます。この場合、mailx(1) 互換のインタフェースをサ ポートしています。コマンド行オプション一覧の詳細はTable 9.1, “コマンド行オプション” を参照してください。

2. 画面とメニュー

2.1. インデックス

インデックスは、Mutt を起動した時に通常最初に見る画面のことです。ここには、現 在オープンしているメールボックス中にあるメールの概要が表示されます。既定値では、 これはシステムのメールボックスです。インデックス中に表示されている情報は、左側 に番号がついているメールの一覧、フラグ(新規メール、重要メール、転送または返信 されたメール、タグづけられたメールなど)、メール送信日付、送信者、メールサイズ と題名です。さらに、メールに返信した場合や他の人がリプライした場合、インデック スにはスレッド階層を表示することもできます。この場合、他者のメールを"サブツリー "配下で見ることができます。この機能は、複数の人によるグループにおいての個人的なメー ルや、メーリングリストを購読している場合には特に便利です。

2.2. ページャ

ページャはメールの内容を表示するのに使います。ページャの最上部には、たとえば送 信者、受信者、題名とその他の情報がある、最も重要なメールのヘッダがあります。ど のような情報を実際に見ることができるかは、以下で詳細に記述がある、設定に依存し ます。

ヘッダの下には、通常、メッセージを含むメールの本体が表示されます。メールに添付が ある場合、その情報をメール本体のあとで見ることができます。添付がテキストの場合、 ページャ中で直接見ることができます。

概要を見やすく表示するため、ページャ中で異なったものを異なった色で表示するよう にMutt を設定できます。URL、メールアドレス、スマイリーなど、正規表現で記述でき るものは事実上すべてに色をつけることができます。

2.3. ファイルブラウザ

ファイルブラウザは、ローカルまたはリモートにあるファイルシステムへのインタフェース です。オープンするためにメールボックスを選択する時、ブラウザは、項目整列順の変 更、正規表現による項目表示の制限、表示したいように表示形式を自由に変更できます。 また、メッセージに添付するため、(複数の)ファイルを選択する時や、複数のファイル 添付する時などにファイルシステム内を介した簡単な操作ができます。

いくつかのメールシステムは、他のメールフォルダ内にメールフォルダをネストできま す。通常の、mutt 内にあるオープンエントリコマンドはメールフォルダをオープンす るので、サブフォルダを見ることはできません。そのかわり、 <descend-directory>ファンクションを使うと、ディレクト リ内に入ることが出来ますが、メールディレクトリとしてはオープンしません。

2.4. サイドバー

サイドバーは、メールボックスの一覧を表示します。一覧表示はON/OFFでき、テー マを設定したり、一覧形式を設定したりできます。

2.5. ヘルプ

ヘルプ画面は利用者に簡単なヘルプを提供します。これには、現在のキーバインディン グの設定状況と割り当てられているコマンド、簡単な説明、および、キーに割り当て慣 れなければならない現在未割り当てのファンクション付きでを一覧で表示します(代わ りに Mutt のコマンドプロンプト経由で呼び出すこともができます)。

2.6. 編集メニュー

編集メニューは、メッセージを実際にメールで送信する前に、重要な項目情報を含む分 割画面を提供します。これは、だれがどのようなメッセージを受け取るか(受信者がど のようなコピーを受け取るか)が含まれています。さらに、メッセージに対してどのよ うなキーを使って署名をするかどうか、暗号化するか、署名して暗号化するかというよ うなセキュリティオプションを設定することもできます。そのほか、メッセージを添付 したり、メッセージそれ自身を含む任意の添付を再編集することにも使います。

2.7. 別名メニュー

別名メニューは、メッセージの受信者を見つける手伝いをします。検索もできますので、 たくさんの人に連絡を取りたい場合、アドレスや名前を完全に覚えておく必要はありま せん。別名メカニズムと別名メニューは、より短いニックネームや実際の別名を使う事で、いくつか のアドレスをグルーピングする機能も提供します。そのため、個々の受信者を手動で選 択する必要はありません。

2.8. 添付メニュー

あとで詳細は説明しますが、Mutt は 優れて安定した MIME の実装を備えているので、 任意の MIME タイプをつかうメッセージの送受信ができます。添付メニューはメッセー ジの詳細構造を表示します:そこには、どのコンテンツパーツがどの親のパーツに添付 されているか(完全な木構造を表示)、どのタイプがどの種類で、どのくらいの大きさな のかが表示されます。単一のパーツは保存、削除、変更でき、メッセージの内部に簡単 にアクセス出来ます。

3. メニュー内での移動

もっとも重要な操作キーは、行又はエントリベースのメニューで共通で、 Table 2.1, “エントリベースのメニューにおけるもっとも共通の操作キー”に記載してあり、ページベースのメニューについては Table 2.2, “ページベースのメニューにおけるもっとも共通の操作キー” に記載してあります。

Table 2.1. エントリベースのメニューにおけるもっとも共通の操作キー

キー機能説明
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>現在のメニューにおけるキーバインド一覧を表示

Table 2.2. ページベースのメニューにおけるもっとも共通の操作キー

キー機能説明
J 又は<Return><next-line>1行スクロールダウン
<Backspace><previous-line>1行スクロールアップ
K, <Space> 又は<PageDn><next-page>次のページに移動
- 又は<PageUp><previous-page>前のページに移動
<Home><top>先頭に移動
<End><bottom>末尾に移動

4. 入力フィールドの編集

4.1. イントロダクション

Mutt はテキスト入力、たとえばメールアドレスやファイル名入力用に、ビルトイン行エディタを用意しています。 テキスト入力を操作するのに使われるキーは、Emacs のものと大変よく似ています。 有効な機能の完全一覧はTable 2.3, “もっとも共通の行エディタキー”を参照してください。そこには 規定のバインディングと簡単な説明が記載されています。

Table 2.3. もっとも共通の行エディタキー

キー機能説明
^A 又は <Home><bol>行の先頭に移動
^B 又は <Left><backward-char>1文字前に移動
Esc B<backward-word>1語前に移動
^D 又は <Delete><delete-char>カーソル下の文字を削除
^E 又は <End><eol>行末に移動
^F 又は <Right><forward-char>1文字後ろに移動
Esc F<forward-word>1単語後ろに移動
<Tab><complete>ファイル名、別名又はラベルを補完
^T<complete-query>問い合わせでアドレスを補完
^K<kill-eol>行末まで削除
Esc d<kill-eow>単語の終わりまで削除
^W<kill-word>カーソルの前の1語を消す
^U<kill-line>1行全体を削除
^V<quote-char>次に入力するキーに引用符をつける
<Up><history-up>履歴から前の入力文字列を呼び出す
<Down><history-down>履歴から次の入力文字列を呼び出す
^R<history-search>現在の入力を検索履歴に使う
<BackSpace><backspace>カーソルの前の1文字を削除
Esc u<upcase-word>単語を大文字に変換
Esc l<downcase-word>単語を小文字に変換
Esc c<capitalize-word>単語の最初の文字を大文字に変換
^Gn/a中止
<Return>n/a編集終了

You can remap the editor 機能をリマップするためには bind コマンドを使います。たとえば、 <Delete> キーを押した時に、カーソル直下の文字ではなく、カーソルの前にある文字を削除するためには、 以下のように行います:

bind editor <delete> backspace

4.2. 履歴

Mutt はビルトインエディタ用に履歴を管理しています。項目の数は $history 変数によって制御され、$history_file$save_historyを使う事によって 指定された外部ファイルを使う事で恒久的にすることができます。 <history-up>または<history-down> コマンドを使うことによって、エディタ中でそれらを循環させることができます。 Mutt は現在入力したテキストを循環ヒストリに記憶し、最初のエントリ行まで折り返します。

Mutt はいくつかの異なる履歴リストを管理していて、それらは以下のカテゴリのようになっています:

  • .muttrc コマンド

  • アドレスと別名

  • シェルコマンド

  • ファイル名

  • パターン

  • 上記以外

Mutt は自動的に履歴から繰り返された項目を自動的にフィルタリングします。 $history_remove_dups が設定されている場合、 すべての繰り返された項目はヒストリから削除されます。また、空白で始まる項目を無視する ことで、いくつかのシェルの動作を模倣しています。後者の機能は、マクロで、履歴の貴重な 項目を不要なエントリで無駄にしないようにするために便利です。

5. メールを読む

他の多くのメールクライアントと同様、Mutt ではメールを読むモードが二つあります。 第一のモードはメールボックス内のメッセージ一覧表示機能で、これは、Mutt では インデックスメニューと呼びます。 第二のモードはメッセージの内容表示です。 これはページャと呼ばれています。

続く数節で、これらのモードそれぞれに提供されている機能を説明します。

5.1. メッセージインデックス

インデックス内で、移動操作とメッセージの操作に使われる共通のキーはTable 2.4, “もっとも共通的なメッセージインデックスキー” にあります。インデックスメニュー中で、どのようにメッセージが表示されるかについては、 $index_format変数を使う事でカスタマイズできます。

Table 2.4. もっとも共通的なメッセージインデックスキー

キー説明
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パターンに一致したメッセージのタグを削除

さらに、メッセージの送信者と題名に加えて、メッセージ番号の横には各メッセージに対する 処理の短い要約が表示されます。Table 2.5, “メッセージステータスフラグ” に説明がある、 0個以上のフラグが表示され、そのうちのいくつかは、既定で wW にバインドされている、 <set-flag><clear-flag> で、ON/OFFできます。

さらに、Table 2.6, “メッセージ受信フラグ”中のフラグは、メッセージの宛先を反映しています。

Table 2.5. メッセージステータスフラグ

フラグ説明
Dメッセージは削除された(削除マークがついている)
dメッセージには削除予定の添付がある
KPGP公開鍵を含んでいる
N新規メッセージ
O古いメッセージ
PメッセージはPGPで暗号化されている
rメッセージは返信済み
Sメッセージは署名されていて、署名は正しく検証された
sメッセージは署名されている
!メッセージにはフラグがついている
*メッセージはタグづけられている
nスレッドには新しいメッセージがある(折りたたまれている場合)
oスレッドには古いメッセージがある(折りたたまれている場合)

Table 2.6. メッセージ受信フラグ

フラグ説明
+メッセージは自分宛だけに送られている
Tメッセージは自分宛だが、他の人にも Cc かその他で送られている
Cメッセージは Cc で自分に送られている
Fメッセージは自分からのものである
Lメッセージは購読されたメーリングリストに送られている

5.2. ページャ

既定値では、Mutt はメッセージの内容を表示するのに、内蔵のページャを使います(たとえば less(1)のような外部のページャも設定することができます。詳しくは、 $pager 変数を参照してください。)ページャは あまり機能的では ありませんが、Unix のプログラムless(1)と大変よく似ています。

Table 2.7. もっとも共通的なページャのキー

キー説明
<Return>1行下に移動
<Space>次のページを表示(又はメッセージの終端だった場合には次のメッセージ)
-前のページに移動
n次に一致する部分を検索
S引用文を飛ばす
T引用分の表示をON/OFF
?キーバインディングを表示
/正規表現による検索
Esc /正規表現による逆方向の検索
\検索結果のハイライトをON/OFF
^メッセージの先頭に移動

Table 2.7, “もっとも共通的なページャのキー”中にあるキーバインディングに加え、インデックスメニュー での多くの機能、たとえば<delete-message><copy-message>(これはメッセージを外部ビューワで 表示するよりも優位な点の1つ)がページャでも有効です。

また、内部ページャはさらにいくつかの高度な機能をサポートしています。そのうちの1つは 太字と下線に対する標準シーケンスを処理できるということです。 シーケンスは連続で、文字、バックスペース(^H)、同じ文字なら太字、 文字、バックスペース、_ならば下線付き文字です。Mutt はターミナルがサポート している場合、それぞれ太字と下線付き文字で表示しようとします。サポートされていない場合は 太字と下線はcolor のオブジェクトを使って、 か、白黒属性を指定できます。

さらに、内部ページャは ANSI エスケープシーケンスの文字属性をサポートしています。Mutt はそれを 正しい色と文字設定に解釈します。Mutt がサポートしているシーケンスは以下の通りです:

\e[Ps;Ps;..Ps;m

ここでPsは以下のTable 2.8, “ANSI エスケープシーケンス”に示されているコードのどれかです。

Table 2.8. ANSI エスケープシーケンス

エスケープコード説明
0全属性削除
1太字をON
4下線をON
5点滅をON
7反転表示をON
3<color>前景色を<color> (Table 2.9, “カラーシーケンス”を参照)
4<color>背景色を<color> (Table 2.9, “カラーシーケンス”を参照)

Table 2.9. カラーシーケンス

カラーコード
0
1
2
3黄色
4
5マゼンタ
6シアン
7

Mutt はこれらの属性をtext/enrichedメッセージのハンドリングに使い、 外部のautoview スクリプトに、ハイライティングを 行う目的でも使う事もあります。

Note

使用するディスプレイに合わせて色を変更した場合、たとえば、xterm で color2 に割り当てられている 色を変更した場合、緑色の代わりにその色が使われます。

Note

ページャ中の検索コマンドは正規表現が使えますが、インデックス中で使われる検索コマンドで使われる パターンよりも少し複雑で、全く同じではないことに注意してください。 これは、ページャが選択されたメッセージをすでに表示されているのに対し、パターンは基準によって メッセージを選択するために使われるからです。

5.3. スレッドモード

いわゆるスレッドは、返信がその元メッセージにリンクされたメッセージの階層構造を 提供します。この組織化された形式は、議論の異なった部分が分岐しているメーリングリストでは特に 有用です。Mutt は木構造でスレッドを表示します。

Mutt では、メールボックスがスレッドによって整列 されている場合、インデックスページャモードにおいて、 Table 2.10, “もっとも一般的なスレッドモードのキー”に示すような形で、いくつか追加の機能が利用できます。

Table 2.10. もっとも一般的なスレッドモードのキー

KeyFunctionDescription
^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>現在のスレッド上のタグをON/OFF
Esc v<collapse-thread>現在のスレッドの折りたたみをON/OFF
Esc V<collapse-all>すべてのスレッドの折りたたみをON/OFF
P<parent-message>スレッド中の親メッセージに移動

インデックス中では、スレッドの子メッセージの題名には先頭にスレッドの 木構造を表す文字が付きます。既定値では、 $hide_thread_subject が設定されていない限り、題名自身は複製されません。スレッドに付加される特別な文字の詳細は、 Table 2.11, “特別なスレッド中の文字”にあります。

Table 2.11. 特別なスレッド中の文字

文字説明備考
&メッセージを隠す$hide_limited$hide_top_limitedを参照
?missing message$hide_missing$hide_top_missingを参照
*pseudo thread$strict_threadsを参照; $narrow_treeが設定されている場合表示されない
=スレッドの複製$duplicate_threadsを参照; $narrow_treeが設定されている場合表示されない

折りたたまれているスレッドではスレッド中の最初のメッセージのみ表示し、その他は隠します。 これは、スレッドにたくさんのメッセージがあり、画面にはわずかなスレッドしか表示されない 場合に便利です。$index_formatの %M を参照してくださ い。たとえば、スレッドが折りたたまれている時に、隠されているメッセージの数を表示するため $index_format%?M?(#%03M)&(%4l)? という設定を使う事ができます。 %?<char>?<if-part>&<else-part>? という文法の詳細は、format string conditionals に説明があります。

技術的には、すべての返信にはスレッドツリー中の親メッセージのリストが含まれているべき ですが、必ずしもすべてがそうとは限りません。そのような場合、Mutt は $strict_threads変数を使って制御できる題名に よってグループ化を行います。

5.4. その他の機能

さらに、インデックスページャ メニューにはいくつかの興味深い機能があります:

<check-stats>

mailboxes コマンドを使って宣言された、すべての監視対象 メールボックスに対する統計情報を計算します。これは、 $mail_check_statsが未設定でも 統計情報を計算します。

<create-alias> (既定値: a)

現在のメッセージ(あるいうは新規プロンプト)をもとに、新しい別名を作成します。 編集を終えると、alias コマンドが$alias_fileによって指定された ファイルに、あとで使うために追加されます。

Note

Mutt は開始時以降は$alias_file を読み込みません。 そのため、ファイルはsource を使って明示的に読み込む必要があります。

<check-traditional-pgp> (既定値: Esc P)

この機能は、現在のメッセージを調べ、従来の方法で PGP による 署名または暗号化が行われている内容を検索します。すなわち、 MIME タグがない 場合のことです。技術的には、この機能は PGP データが含まれているボデイパートの MIME content type を一時的に変更します。すなわち、 <edit-type> 機能の効果と似ています。

<edit> (既定値: e)

このコマンド(インデックスとページャで有効)は、現在のメッセージを、 メールフォルダ中にあるままの形で、そのまま編集します。編集を終えると、 変更されたメッセージは現在のフォルダに追加され、オリジナルのメッセージには 削除フラグがつけられます。メッセージが変更されなかった場合には置き換えは 行われません。

<edit-type> (既定値: 添付メニュー、ページャ、インデックスメニューでは ^E ; 編集メニューでは ^T)

このコマンドは添付の content type を一時的に編集し、修正するのに使います。 たとえば、間違った文字セットパラメータなどを直す時などです。インデックスか ページャから使うと、最上位の添付ファイルの content type を修正できます。 添付メニューから使う場合には、どの添付ファイルの content type も修正できます。この変更は恒久的なものではなく、フォルダを変更すると 消えてしまいます。

このコマンドは編集メニューでも使えることに 注意してください。その場合、送信使用としている添付ファイルの属性を微調整するのに 使います。

<enter-command> (既定値: :)

このコマンドは通常設定ファイル中に記述するコマンドを実行するのに使います。 一般的な使い方としては、変数の設定を確認したり、macros と組み合わせて、動作中に設定を変更するのに使います。

<extract-keys> (既定値: ^K)

このコマンドは PGP 公開鍵を、現在またはタグづけられたメッセージから 抽出して自分の PGP 公開鍵キーリングに追加します。

<forget-passphrase> (既定値: ^F)

このコマンドはパスフレーズをメモリから削除します。パスフレーズを間違って 入力した時に使います。

<list-reply> (既定値:L)

lists または subscribe コマンドを使って得られた、 正規表現に一致するアドレスから抽出された、現在またはタグづけられたメッセージに 返信します。それだけではなく、もし、 $honor_followup_to 変数が設定で 有効になっている場合、Mail-Followup-To ヘッダを信用します。 さらに、List-Post ヘッダフィールドが、 メーリングリストアドレスとして、mailto: URL が 指定された場合に検査されます。 メーリングリストに投稿されたメッセージに返信する時にこれを使うと、 返信する元メッセージの送信者とメーリングリストへ二重に送信するのを避ける助けになります。

<pipe-message> (既定値: |)

外部 Unix コマンドの入力を要求し、現在又はタグづけられたメッセージをそこにパイプします。 変数 $pipe_decode, $pipe_split, $pipe_sep$wait_key はこの機能の正確な動作を制御します。

<resend-message> (既定値: Esc e)

resend-message を使うと、Mutt は現在のメッセージを雛型として新しいメッセージを作成します。 この機能は "任意のフォルダの復元" と説明するのが最適でしょう。MIME メッセージを、 もともとのメール構造を保ったまま転送するのに便利です。このときに含まれるへッダは $weed 変数の値に依存していることに注意してください。

この機能は添付メニューからも利用できます。これを使えばmessage/rfc822 ボディパートとして転送されてきたメッセージを簡単に再送できます。

<shell-escape> (既定値: !)

外部 Unix コマンドの入力を要求し、それを実行します。 $wait_key を使って、コマンドが終了したときに (おそらくコマンドの出力をユーザが読めるようにするため)、Mutt が何か キーが押されるまで 待つかどうかをコマンドの戻り値で制御するようにできます。 コマンドが指定されなかった場合は、シェルが起動します。

<toggle-quoted> (既定値: T)

ページャは、メッセージの本文を表示する時に、 $quote_regexp変数を使って引用文を 検出します。この機能は、メッセージ中の引用部分を表示するかどうかを切り替えます。 特に、返事だけに興味があるのに大量の引用文があって邪魔だというようなときに役に立ちます。

<skip-quoted> (既定値: S)

この機能は内部ページャにおいて、引用文の行のあとの非引用文の行に移動します。

6. メールの送信

6.1. イントロダクション

Table 2.12, “もっとも一般的なメール送信キー”に記載のあるバインディングは、インデックスページャで新しくメッセージを書き始める時に有効です。

Table 2.12. もっとも一般的なメール送信キー

キー機能説明
m<compose>新規メッセージを作成
r<reply>送信者に返信
g<group-reply>受信者全員に返信
 <group-chat-reply>To/Cc を保持して、すべての受信者に返信
L<list-reply>メーリングリストのアドレスに返信
f<forward>メッセージを転送
b<bounce>メッセージを中継(再送)
Esc k<mail-key>誰かに PGP 公開鍵を送信

メッセージの中継(Bouncing) は、指定した受信者に、メッセージをそのまま送信します。 メッセージの転送(Forwarding)は、転送する時に、メッセージにコメントをつけたり、 編集したりできます。これらにつては、次の節 メールの転送と中継でより詳細に説明します。

上記のコマンドを使うと Mutt はcomposeメニューに入り、 To:ヘッダフィールドに入れる宛先の入力を促します。 mキーを押すと、新規メッセージの作成を開始します。 次に、メッセージのSubject:フィールドを聞いてきますが、 メッセージの返信や転送の際には既定値が入っています。送信者、題名とセキュリティ 設定を、実際にメッセージを送信する前に再度修正することはできます。 Mutt がどのように質問するかを変更するについては、 $askcc, $askbcc, $autoedit, $bounce, $fast_reply$include を参照してください。

返信する場合、Mutt は、返信するタイプによって、それらのフィールドに適切な値を入れます。 サポートしている返信のタイプは以下の通りです:

単純な返信

送信者に直接返信。

グループ返信

送信者、cc に指定してあるすべての受信者に返信; alternatesを確認し、 自分自身を除外します。

グループチャット返信

To リスト中の、送信者と他の受信者に返信します。 Cc リスト中の受信者には Cc で送信します。alternates を考慮し、自分自身は除外します。

リストへの返信

設定で指定されたものあるいは自動検出した、見つかったメーリングリストアドレスすべてに返信します。 詳細は、Section 13, “メーリングリスト”を参照してください。

新しいメッセージへ、転送または返信の受信者が決まったら、Mutt は自動的にメッセージ本文に 対して$editor を起動します。 $edit_headers変数が設定されている場合には、メッセージ 本文の一番はじめの所にヘッダも含まれます。ヘッダの最後の行のあとに空白行と改行が来た その後から始まる必要があります。返信するメッセージは整列順に追加され、適切な $attribution, $indent_string$post_indent_string が付きます。 メッセージ転送の場合、$mime_forward 変数が設定されていないと、転送するメッセージのコピーが本文に取り込まれます。 $signatureが指定されていれば、メッセージに そのファイルが追加されます。

メール本文の修正完了後は composeメニューに戻ります。 Table 2.13, “もっとも一般的な編集メニューキー”にある選択肢で、再編集、送信または一時保存を選べます。

Table 2.13. もっとも一般的な編集メニューキー

キー機能説明
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>フィールドを編集
y<send-message>メッセージを送信
s<edit-subject>題名を編集
S<smime-menu>S/MIME オプションを選択
f<edit-fcc>Fcc メールボックスを指定
p<pgp-menu>PGP オプションを選択
P<postpone-message>あとで使うためメッセージを一時保存
q<quit>メッセージの送信を中断(中止)
w<write-fcc>フォルダにメッセージを書き込む
i<ispell>スペルチェック(システムで有効な場合)
^F<forget-passphrase>メモリからパスフレーズを削除

編集メニューは、ファイルまたは他のメッセージからなる添付の編集にも使えます。 <attach-message>機能はを使うと、メッセージを添付するフォルダを指定するプロ ンプトが表示されます。そのフォルダでメッセージにタグをつけると送信するメッセージにそれらが添付されま す。

Note

そのフォルダにいる場合には、新しいメールの作成、返信、転送などのようないくつかの操作ができないことに 注意してください。$status_format 中の %r が A になると、添付メッセージモードにいることを表示します。

<send-message>経由で編集メニューを終了したあと、メッセージが送信されます。 設定されてそれが有効な場合、 mixmasterまたは $smtp_url 経由で行うことができます。 それ以外では、$sendmail が起動されます。 バージョン 1.13 より前では、Mutt は既定値で$write_bccを 有効にしていて、MTA が自動的にBcc:ヘッダを配信の一部として削除することを 仮定しています。1.13からは、オプションは既定値では設定されませんが、メッセージの fcc コピーにはもは や何も影響しません。

6.2. メッセージヘッダの編集

$edit_headers が設定されているためヘッダを編集する場合、 送信メッセージには含まれませんが、特別な Mutt の動作を起動する、いくつかの疑似ヘッダが利用 可能です。

6.2.1. Fcc: 疑似ヘッダ

Fcc: ファイル名

をヘッダとして指定すると、Mutt はcomposeメニュー中で <edit-fcc>機能を使ったと同じように、 ファイル名を扱います。

6.2.2. Attach: 疑似ヘッダ

以下のように指定することで、メッセージにファイルを添付できます。

Attach: ファイル名 [ 説明 ]

ここで、ファル名は添付されるファイルで、 説明は添付ファイルの説明として使う、オプションの文字列です。 ファイル名中の空白は、バックスラッシュ(\)を使う事でエスケープできます。 ファイルは編集メニューから追加するように削除できます。

6.2.3. Pgp: 疑似ヘッダ

PGP を使いたい場合、以下のように指定します。

Pgp: [ E | S | S<id> ]

E は暗号化、S は署名、そして S<id> は指定されたキーで署名し、メッセージ作成セッションの 間は、$pgp_sign_as を設定します。 選択した項目は編集メニューで、あとで変更できます。

6.2.4. In-Reply-To: ヘッダ

メッセージに返信する場合、In-Reply-To:ヘッダには 返信したいメールのメッセージ ID が含まれています。この値を削除したり変更した 場合は、Mutt は、たとえば、メーリングリストのアドレスを入力せずに、メーリング リスト向けの新しいメッセージを作成するような、新しいメッセージスレッドを作成する、 References:フィールドを作成しません。

返信時に新しいスレッドを開始したい時には、エディタ中でIn-Reply-To: を確実に取り去ってください。そうでないと、技術的に有効な返信とは言え、 ネチケットに口うるさい誰かには、いわゆるthread hijacking で迷惑を被るかもしれません。

6.3. 暗号化機能を使った、署名/暗号化したメールの送信

Mutt で PGP または S/MIME でメッセージの暗号化を行う場合、メッセージを 送ろうとする時には、Mutt は鍵選択プロセス中で処理のガイドを行います。 Mutt は メッセージ受信者のメールアドレスに一致する認証されたユーザ ID を 持つ鍵について、何ら問い合わせません。しかし、複数の鍵があったり、 認証されたユーザ ID フィールドが弱かったり、一致する鍵が見つからなかったり する場合があります。

このような場合、鍵の一覧メニューに移行し、その中から鍵を選ぶことができます。 このメニューを終了するか、一致する鍵がなかった場合には、ユーザ ID の入力が 要求されます。通常と同じように、^Gを使って、この入力待ち 状態を中止できます。そうすると、Mutt は編集画面に戻ります。

鍵の選択が正しく終了すると、メッセージは 選択した公開鍵を使って暗号化され 送信されます。

送信した暗号化メッセージを見られるようにするためには、PGP では $pgp_self_encrypt$pgp_default_keyを、S/MIME では $smime_default_keyを 設定してください。

鍵選択メニュー($pgp_entry_format を参照)中の、エントリのほとんどのフィールドは、明確な意味を持っています。 しかし、ケーパビリティ、フラグと有効性のフィールドについては説明が必要でしょう。

フラグシーケンス(%f) はTable 2.14, “PGP 鍵メニューのフラグ”中の フラグのどれかに展開されます。

Table 2.14. PGP 鍵メニューのフラグ

フラグ説明
R鍵は破棄されていて使えない。
X鍵は期限切れになっており、使えない。
d自分で鍵を使用不可に印付けた。
c未知の重要な自己署名パケットがある。

ケーパビリティフィールド(%c)は、鍵のケーパビリティを表す 2文字の並びに展開されます。最初の文字は鍵の暗号化ケーパビリティです。 マイナス記号(-)は、鍵が暗号化に使えないという意味です。 ドット(.)は、いずれかのユーザ ID の署名鍵としてマーク されているけれど、暗号化にも使えるという意味です。文字eは、 このキーが暗号化に使えるという意味です。

2番目の文字は鍵の署名ケーパビリティを示しています。こちらもやはり、 -署名用ではないことを意味し、. は鍵があるユーザ ID の暗号化鍵としてマークされていることを意味し、 sは署名用に使えるという意味です。

最後に、信用度フィールド(%t)は、ユーザID がどれほどしっかり 検証されているかを示します。疑問符(?)は信用度が未定義で、 マイナス文字(-)は、信頼されていない関係を示し、 空白は部分的に信頼できることを意味し、プラス文字(+)は、 完全な信用度を表しています。

6.4. Format=Flowed 形式のメッセージ送信

6.4.1. コンセプト

format=flowed形式のメッセージ(又は短い形式では f=f)は、ほとんどの場合、送信者が何を送ったかに よらず、行の長さをカスタマイズできる、受信者のメールクライアントが 独自のニーズに合わせて再フォーマットすることができる段落から構成されています。 技術的には、これは、最後の行を除いて、flowableな段落 の最後を空白で終了することによって実現します。

Mutt のようなテキストモードのクライアントでは、標準の 80x25文字サイズの ターミナルのみを仮定するのにもっともよい方法ですが、メッセージの受信者に 見方を完全に決めさせたい場合もあるでしょう。

6.4.2. Mutt のサポート

Mutt は $text_flowed 変数が設定されている 場合、特に、末尾の空白が追加されていない時に、送信メッセージで必要な format=flowed MIME パラメータの設定のみをサポートします。

編集後、Mutt はメッセージに、適切な空白を埋め込みます。 適切な空白の埋め込み(Space-stuffing)は、 format=flowedを定義するRFC3676 で要求され、 次のように空白を埋め込むことを意味します:

  • 空白で始まるすべての行

  • Fromで始まる行で、 空白を伴うもの

  • >で始まるすべての行で、 引用文字を意図しないもの

Note

Mutt は最初の2つのものについて空白の埋め込みをサポートしますが、3番目のものについては 対象外です。先頭の>文字が引用の開始なのか否かを 安全に検出するのは不可能だからです。

後続の処理の前に、もとのメッセージを復元するため、 すべての先頭の空白は、受信したクライアントによって削除されます。

6.4.3. エディタの考慮事項

Mutt はf=fメッセージの編集時には、何ら追加の機能を提供しないので、 適切なメッセージを作成するのは、ユーザとエディタ次第です。 f=fメッセージを送信する場合はエディタのドキュメントを よく見てください。

たとえば、vimは、f=fメッセージを作成する ことを支援するために、formatoptionsの設定のための wフラグを提供します。 詳細は:help fo-tableを参照してください。

6.4.4. 再フォーマット

Mutt はformat=flowedメッセージの表示と返信時に いくつかの再フォーマット機能を提供しています。これらを活用するためには、 $reflow_textを設定しなければなりません。

  • 段落は、$reflow_wrapで指定された幅で、 自動的にリフローされて折り返しされます。

  • (i.e. with $text_flowed unset). オリジナルのフォーマットでは、format=flowedメッセージの 引用スタイルは、読解が困難で、フローされていない返信とうまく混ざりません。 $reflow_space_quotesを設定すると、 ページャと非フロー形式での返信時に書くレベルの引用のあとに空白を追加します。 (すなわち、$text_flowed が未設定)。

  • もしも$reflow_space_quotes が未設定の場合、mutt はページャ中で(返信時ではなく)すべての引用のあとに 1つの空白を付与します。

6.5. バックグラウンドでの編集

$editor が GUI エディタか、 contrib/bgedit-screen-tmux.sh のようなスクリプトで、GNU Screen か tmux 内で動いている場合、 $background_edit を設定することで、 エディタをバックグラウンドで動作させることができます。

設定した場合、Mutt はエディタが動作中の場合、ランディングページを表示 します。エディタが終了した場合、メッセージの作成が自動的に再開されます。 代わりに、メッセージインデックスに戻るため、ランディングページから <exit> することも出来ます。これにより、 すべての最初のエディタセッションが引き続き動作中でも、 他のメッセージの表示、メールボックスの変更、さらには新規メッセージ 編集セッションの開始が出来るようになります。

バックグラウンドでのメッセージ編集セッションは、既定値で B に割り当てられている、 インデックスとページャ中で、 <background-compose-menu> 経由で 表示できます。バックグラウンドセッションが1つだけの場合で、それが すでに終了した場合は、そのセッションは自動的に再開されます。それ以外は、 一覧が表示され、特定のセッションを選択できます。 $background_format は、メニューで使用するフォーマット文字列を制御します。

返信をバックグラウンドで行っているときにオープンしているメールボックスが 変更された場合、Mutt はオリジナルのメールボックスを継続して使います。 送信後、Mutt はオリジナルのメールボックスを必要に応じて再オープンし、 適切に返信フラグを設定します。これは、現在オープンしているメールボックス には影響しませんが、画面の背後にいるオリジナルのメールボックスを再オープン しなければならないという理由で、フラグの設定に若干時間がかかる場合が あります。

バックグラウンド編集セッションの複雑な点の1つとして、 send, reply, とフォルダ hooks によって設定の変更が引き起こされるということです。これらは、 新規メッセージ編集セッションか、バックグラウンドセッション中にフォルダを 変更することによってトリガできます。これらの問題を低減するため、Mutt は 特定の設定変数のスナップショットを取り、バックグラウンドで動作するときに、 各編集セッションに割り当てます。セッションが再開した場合、割り当てられた 設定は一時的にリストアされ、セッション終了時(又は再度バックグラウンドに 回った場合)に再度削除されます。

Mutt はすべての booleanquadoption 設定変数と、さらに $folder, $record, $postponed, $envelope_from_address, $from, $sendmail, $smtp_url, $pgp_sign_as, $smime_sign_as, と $smime_encrypt_with もセーブします。 すべての変数をバックアップすることは現実的ではありませんが、重要な設定を 見逃していると思われた場合は、開発者に連絡してください。

バックグラウンドセッションを忘れてしまうことを防ぐために、 $background_confirm_quit が、$quit に追加して、終了時前に表示されます。 さらに、$status_format 中で %B の展開は、バックグラウンド編集セッションの数を表示 します。

バックグラウンド編集は、Mutt のメッセージセッションの、多くで有効ですが、 すべてではありません。コマンド行からの送信は、戻るべきインデックスがないため、 バックグラウンド編集を無効にします。

7. メールの転送と中継

中継と転送は、既存のメッセージを自分で指定した宛先に送信できる機能です。 メッセージの中継とは、Bcc ヘッダで指定された、メッセージのオリジナルな 受信者に送られるように、メッセージの冗長コピーを送信します。一方 メッセージの転送では、再送する前に、メッセージの修正ができます(たとえば、 コメントを追加するなど)。中継は、bにバインドされている <bounce>機能を使い、転送はfに バインドされている<forward>機能を使います。

転送は(指示線に囲まれた)新しいメッセージの本体中にオリジナルのメッーセージを 取り込むか、$mime_forward変数の値に 依存しますが、MIME添付を含むことで行われます。 ページャがやるような添付のデコードは、 $forward_decode$mime_forward_decode変数を 使って行われます。転送の形式は内容に依存するので、quadoption パラメータ $mime_forward を、たとえば、 ask-noに設定することができます。

Mutt の既定値( $mime_forward=no$forward_decode=yes) は標準のインライン転送の時に使います。このモードではすべてのテキストに デコード可能な部分は新しいメッセージ本体に含まれます。 quadoption $forward_attachments の状態によって、オリジナルメールのその他の添付は新しいメッセージに添付する ことができます。

ヘッダを含めるかは、 $mime_forward が設定されていない限り、 $weed変数の現在の設定によって制御されます。

転送時におけるメッセージの編集はメッセージの送信または返信と同じ方法ですが、 $forward_edit quadoption で無効に することもできます。

8. メール送信の延期

たまに、メッセージをすでに書き始めたものの、 送信は後にしたいということがあります。 <postpone-message>機能をcomposeメニューで 使うと、メールの本文と添付は $postponed変数で指定されたメールボックス中に 格納されます。これはつまり、Mutt を終了して次回また起動したとしても、 そのメッセージを呼び出せるということです。

メッセージを延期したあとで再開するには、いくつかの方法があります。 コマンドラインからは-pオプションが使えますし、 インデックスページャから 新しいメッセージを編集する場合は、延期したメッセージがあるときには 再開するかどうか聞かれます。 延期メッセージが複数あるときは、 postponedメニューが出てきて、 どのメッセージを再開 したいか選択できます。

Note

メッセージに対する返信を延期したならば、返信済みフラグが 更新されるのは 返信メッセージを実際に完成させて送信したときだけだということに注意してください。 しかも、その親メッセージと同じフォルダにいなければ状態がきちんと更新されません。

$postpone quad-option も参照してください。

9. 暗号化と署名

OpenPGP と S/MIME は、クラシックモードと GPGME という2つの 方法で有効になります。最初の方は、種々の操作を実行する外部プログラムを 起動します。この方がテストに便利で、より柔軟性が高いのですが、若干の 設定が必要です。後者は GnuPG プロジェクトの GPGME ライブラリを使います。

クラシックモードを有効にするには、mutt GPGME を確実に無効にし、 同梱のgpg.rc または smime.rc ファイルを 使います。これらは通常/usr/local/share/doc/mutt/samples/ 配下にインストールされています。それらを直接、あるいは、直接かコピーして .mutt directory に置き、 souce コマンドを使って内容を反映させてください。 /usr/local/share/doc/mutt/samples/ から直接 source コマンドで 内容を反映させる場合、コマンドに対して自動的に修正の適用と、セキュリティの向上が 行えますので、これが推奨です。

unset crypt_use_gpgme
source /usr/local/share/doc/mutt/samples/gpg.rc
source /usr/local/share/doc/mutt/samples/smime.rc

代わりに GPGME を使う場合は、単に .muttrc の中で以下を有効にするだけです:

set crypt_use_gpgme

9.1. OpenPGP の構成

$pgp_default_key$pgp_sign_as という2つの重要な 設定があります。暗号化を実行するためには最初の変数を設定しなければなりません。 分割した署名鍵を使う場合か、署名鍵のみがある場合は、2番目を設定します。 ほとんどの場合は、$pgp_default_key のみ設定すればよいです。

バージョン 2.1.0 から GnuPG は自動的にパスフレーズの入力要求のために、 エージェントを使うようになりました。それより古いバージョン を使っている場合は、エージェントが動作しているようにしておく必要があります (かわりに $pgp_use_gpg_agent を未設定にすると Mutt はパスフレーズを聞いてきます)。次に、エージェントは、 pinentryプログラムを使ってプロンプトを表示します。 たとえば、qt、gtk2、gnome3、fltk や curses というような、使用可能な、 数多くの異なった pinentry プログラムがあります。Mutt は tty pinentry プログラムではうまく動作しません。そのかわりに、 GUI または curses ベースの pinentry プログラム をインストールし、 システムで既定のものとして設定してください。

9.2. S/MIME の設定

OpenPGP と同様、2つの重要な設定、 $smime_default_key$smime_sign_as があります。 暗号化と復号化を行うためには、最初の変数の設定が必要です。分割された 署名鍵あるいは署名鍵のみの場合は、2番目の設定が必要です。 ほとんどの場合は、$smime_default_key のみの設定が必要でしょう。

クラシックモードでは、キーと証明書は、mutt に同梱されている smime_keysプログラムによって管理されます。既定値では、 それらは~/.smime/配下に格納されます。(これは smime.rcファイルの $smime_certificates$smime_keys によって設定されます。) このディレクトリを初期化したい場合は、シェルプロンプトから、 smime_keys initコマンドを使います。 プログラムは、証明書のステータスフラグを更新するために、 smime_keys refreshを定期的に実行するのに 使われます。

Chapter 3. 設定

Table of Contents

1. 初期設定ファイルの位置
2. Muttrc 設定の始め方
3. 初期化ファイルの構文
4. アドレスグループ
5. エイリアスの定義と使用
6. 既定のキー割り当ての変更
7. 文字セットの別名定義
8. メールボックスに基づく変数の設定
9. キーボードマクロ
10. 色と白黒の画面属性の使用
11. メッセージヘッダの表示
11.1. ヘッダ表示
11.2. ヘッダの選択
11.3. 表示されるヘッダの順番
12. 代替アドレス
13. メーリングリスト
14. 複数のスプールメールボックスの使用
15. 受信メールのモニタ
16. ユーザ定義のヘッダ
17. 既定のセーブ用メールボックスの指定
18. 編集時に既定の Fcc: Mailbox を指定
19. 既定のセーブファイル名と既定の Fcc: メールボックスを同時に指定
20. メッセージの宛先による設定の変更
21. メッセージ整形前に設定を変更する
22. 受信者の暗号鍵の選択
23. パターンを使った $index_format の動的変更
24. キーボードバッファへのキーシーケンスの追加
25. 機能の実行
26. メッセージのスコア付け
27. スパムの検出
28. 変数の設定と問合せ
28.1. 変数のタイプ
28.2. コマンド
28.3. ユーザ定義の変数
28.4. タイプの変換
29. 他のファイルからの初期かコマンドの読み込み
30. フックの削除
31. 文字列のフォーマット
31.1. 基本的な使い方
31.2. 条件式
31.3. フィルタ
31.4. パディング
31.5. バイト長の表示
32. mailto: URL 中でのヘッダフィールドの許可制御

1. 初期設定ファイルの位置

既定の設定(又はpreferences)は、Mutt を箱から出してすぐに 使えるようにしますが、自分の好みに応じて Mutt を仕立て上げる方が好ましいと 言えます。Mutt が最初に起動された時は、-n command lineオプションが指定されていない 限り、まずシステムの 設定ファイル(既定値はローカルの管理者によって設定されています)を読もうとします。 このファイルは通常 /usr/local/share/mutt/Muttrc/etc/Muttrcにあります。Mutt は次にホームディレクトリ中の .muttrcという名前のファイルを検索します。 このファイルが存在しなく、ホームディレクトリに.muttという サブディレクトリがある場合は、Mutt は.mutt/muttrcという ファイルをロードしようとします。もしもなければ、Mutt は $XDG_CONFIG_HOME/mutt/muttrc を読もうと試みます。

.muttrcは、通常、Mutt を設定するための commandsを配置するファイルです。

さらに、Mutt は、上記で説明した、既定のファイルの代わりに実行する、 特定バージョン用の設定ファイルをサポートしています。たとえば、システムの システム設定ディレクトリに Muttrc-0.88 というファイルがあり、 Mutt のバージョン 0.88 を使っているときには、このファイルは Muttrcファイルの代わりに読み込まれます。ユーザの 設定ファイルでも同様で、ホームディレクトリ中に .muttrc-0.88.6というファイルがあり、Mutt バージョン 0.88.6 を実行している場合は、既定の.muttrcファイルの代わりに このファイルが読み込まれます。バージョン番号は、 -v command line を使ったり、インデックスメニューから、show-versionキー (既定値では V) を使って表示されるものと 同じです。

2. Muttrc 設定の始め方

Mutt は、ニーズと好みにに合わせて高度に設定が変更可能です。 しかし、高度にカスタマイズが可能ということは、設定を変更し始めるのが 難しいということでもあります。いくつか doc/mutt/samples/ に、mutt に同梱されているmuttrc のサンプルがあります。その中で、 sample.muttrc-starterは基本的な config の例で、 いくつか推奨の設定と便利なプログラムへの情報が含まれています。

3. 初期化ファイルの構文

初期化ファイルは一連のcommandsから成っています。 ファイルの各行には、ひとつでも複数でもコマンドを入れられます。 複数コマンドを 使うときはセミコロン(;)で区切らなければなりません。

Example 3.1. 複数の設定コマンドを1行中に記述する例

set realname='Mutt user' ; ignore x-

ハッシュマーク、別名ポンド記号(#) はcomment文字 として使われます。これは初期化ファイルへの注釈に使えます。 コメント文字以降の 文章はすべて無視されます。

Example 3.2. 設定ファイルにおけるコメントの例

my_hdr X-Disclaimer: Why are you listening to me? # This is a comment

シングルクォート(') と引用符(")は、 空白または他の特別文字を含む文字列をくくるのに使います。 この二種類の引用符の違いは、多くの一般的なシェルプログラムに似ています。 つまり、シングルクォートはその字面どおりの (シェル変数にも変換されず、 バックスラッシュでの文字指定 [次の段落を参照] も変換されないままの) 文字列を指定するために使う一方、ダブルクォートは、中の文字列を解釈すべきだ いうことを示します。例えば、バックティック(訳注:バッククォート "`") は 引用符の中では解釈されますが、シングルクォートの中では解釈されません。

\は、その次の文字をそのまま指定 (原語:quote)します。ちょうど bash や zsh のようなシェルと同じです。例えば引用符"を文字列の 中に入れて使いたいときに \を使って、解釈しない文字どおりの 引用符にすることができます。

Example 3.3. 設定ファイル中における quotes の例

set realname="Michael \"MuttDude\" Elkins"

\\\文字そのものを行に挿入することを意味します。 \n\rは、通常の C での意味合いと同じで、それぞ れ改行 (LF = linefeed) と復帰 (CR = carriage-return) を意味します。

行末に\を使えば、行の終わりをエスケープするよう にコマンドを複数の行に分割できます。ただし分割地点がコマンド名の途中であっては なりません。文の解釈の前に行は結合されるので、複数行は最初の行のみコメントアウト することでコメントになります。

Example 3.4. 複数行に長い設定コマンドを分割

set status_format="some very \
long value split \
over several lines"

初期化ファイル中で一部を Unix コマンドの出力に 置き換えることも可能です。 これはコマンドをバッククォート二つ (``) ではさむことによって行なえます。 Example 3.5, “設定ファイル中において外部コマンド出力を使う”では、Unix コマンドuname -a の出力を、行が解釈される前に置き換えます。初期化ファイルは行単位に処理され ますので、Unix コマンドの出力の最初の行のみしか置換されないということです。

Example 3.5. 設定ファイル中において外部コマンド出力を使う

my_hdr X-Operating-System: `uname -a`

バッククォートの出力が走査されないようにするためには、引用符の中に 入れてください。Example 3.6, “バッククォートでくくられた部分の解釈を防ぐ”で、gpg の 復号化結果が、直接 $imap_pass に割り当てられています。その結果 パスワード中の特殊文字(たとえば、'#$は走査されず、mutt によって特別に解釈されることはありません。

Example 3.6. バッククォートでくくられた部分の解釈を防ぐ

set imap_pass="`gpg --batch -q --decrypt ~/.mutt/account.gpg`"

環境変数と Mutt の変数は共に、変数名の先頭に$をつけることで アクセス出来ます。たとえば、

Example 3.7. 設定フィル中での環境変数の利用

set record=+sent_on_$HOSTNAME

は、環境変数$HOSTNAMEが、kremvax に設定されていた場合、Mutt はsent_on_kremvaxという 名前のフォルダに送信メッセージを保存します(詳細は、 $recordを参照)。

Mutt は変数が使われた時ではなく、割り当てられた時に展開します。 式の右辺にある変数の値を割り当て後に変更した場合、左辺の変数の内容は 変化しません。

Mutt が解釈できるコマンドについては、次節以降で説明していきます。 全コマンド一覧はコマンドリファレンス を参照してください。

すべての設定ファイルは、$charset変数によって 決まる現在のロケールであることが想定されています。この変数は、起動時に Mutt によって決まるため、変数の既定値はありません。 設定ファイルが同じ文字セットでエンコードされていない場合、 $config_charset変数を使う必要があります。 その次の行からすべての行は、 $config_charset から $charsetまで記録(訳注 recorded)されます。

この機構は、以下のような意味を持つため、可能であれば避けるべきです。

  • これらの変数は設定ファイルの先頭の方で $config_charsetより前に $charset を定義すべきです。 そうすると、Mutt はどの文字セットに変換するかを知ることができます。

  • $config_charset が設定されている場合、値はグローバルで、設定ファイル毎では ないため、各設定ファイル毎に設定する必要があります。

  • Mutt は走査する前に行を最初に記録するので、疑問符やその他の文字をエラーの一部 として導入する変換(変換不能な文字、音訳)は、構文エラーを引き起こしたり、 特定のトークン(例えば、正規表現中への疑問符の埋め込み)を勝手に変換する 可能性があります。

4. アドレスグループ

使用法:

group [ -group name ...] { -rx expr ... | -addr expr ... }
ungroup [ -group name ...] { * | -rx expr ... | -addr expr ... }

auto-encryption can be achieved easily. Mutt は名前をつけたグループ中に、論理的にアドレスをグルーピングする機能をサポート しています。アドレスまたはアドレスパターンは同時に複数のグループで 利用できます。それらのグループはpatterns (検索、制限やタグ付け)と、グループパターンを使うフックの中で 使う事ができます。これは、メールのクラス分けと、メッセージがどのようなグループ なのかに依存した特定の動作を行わせる時に便利です。たとえば、mutt の ユーザメーリングリストはmailing listmutt-related というカテゴリに一致します。send-hook を使う事で、送信者をメーリングリストあてのメッセージを書くための専用の ものとして設定でき、mutt メーリングリストに書くための、mutt-related なものとして 署名を設定できます。— 他のリストに対しては、リストへの送信者の設定は引き続き適用されますが、 異なった署名が選択されます。あるいは、暗号化メールを受け取れることが分かっている 受信者のみを含むグループについて、auto-encryption を簡単に実現できます。

groupコマンドはグループまたは複数のグループに、 アドレスまたは正規表現で直接追加するために使用されます。 groupコマンドの異なったカテゴリの引数は、任意の順序で 指定できます。-rx-addrフラグは、 その後の(ハイフンでは始まらない)文字列がそれぞれ正規表現か、単なるメールアドレス として解釈されるべきかを指定します。

これらのアドレスグループはオプションの-group オプションを指定することで、 alias, lists, subscribealternates コマンドによって暗黙的に作成することもできます。たとえば、

alternates -group me address1 address2
alternates -group me -group work address3

は、すべての自分のアドレスと、作業用アドレスaddress3のみを 含むworkという名前のグループを含むme と言う名前のグループを作ります。他にも多くの可能性がありますが、 これを使って、読むために、メーリングリストフォルダ中の自分のメッセージに 自動的にマークを付けるのに使ったり、仕事に関連したメッセージに特別な署名を 使ったりすることができます。

ungroupコマンドは、指定されたグループまたは複数のグループ から、アドレスまたは正規表現を指定されたものを取り除くのに使います。 文法はgroupとよく似ていますが、特別な文字* をグループのすべての内容を空にするのに使えます。すべてのアドレスと正規表現が 削除されたため、グループが空になるとすぐに、それは内部的にも削除されます (すなわち、空のグループは存在しません)。グループから正規表現を削除するときは、 group コマンドまたは -group 引数で 正確に指定しなければなりません。

5. エイリアスの定義と使用

使用法:

alias [ -group name ...] key address [ address ...]
unalias [ -group name ...] { * | key ... }

通信相手のアドレスを覚たり、入力したりするのは、普段はとても面倒です。 Mutt は完全なアドレスにマップする短い文字列 aliasesを 作成できます。

Note

一つ以上のアドレスのエイリアスを作成したい場合、アドレスは カンマ(,)でくくらなければなりません

aliasのオプション-group引数は 別名アドレスを、groupという名前に追加します。

別名を追加するには以下のように行います。

alias muttdude me@cs.hmc.edu (Michael Elkins)
alias theguys manny, moe, jack

別名あるいは複数の別名(*はすべてを意味します)を削除するには 以下のように行います。

unalias muttdude
unalias *

他のメーラとは違い、Mutt は 別名を特別のファイルに定義する必要がありません。 aliasコマンドは、 sourced などで読み込まれるファイル と同じように、設定ファイル中であればどこにでも書けます。 したがって、 複数の別名ファイルを使うこともできますし、.muttrcの中にすべて 定義してしまうこともできます。

その一方、<create-alias> 機能は、 $alias_file変数(~/.muttrcが 既定値)によって指定される一つのファイルしか使えません。 しかし、このファイルは特別扱いされるわけではありません。 というのも、Mutt はどの ファイルにでも別名を追加できますし、 このファイルもきちんと sourceしなければ 新規エイリアスが有効にならないのです。

Example 3.8. 外部別名ファイルの設定例

source /usr/local/share/Mutt.aliases
source ~/.mail_aliases
set alias_file=~/.mail_aliases

別名を使うためには、単に、To:Cc:の プロンプトでアドレスを入力するときに、 エイリアスを入力するだけです。 また、$edit_headers変数を設定しておけば、 エディタでも適切なヘッダに別名をを入力できます。

さらに、種々のアドレス入力プロンプトにおいて、Tab 文字を使えば、一部だけ入力 した別名ら完全な別名に展開させることができます。合致するものが複数あると、 Mutt は合致した別名のメニューを出します。 別名の完全な一覧を表示させるには、 書きかけの別名がない状態で Tab を入力しなくてはなりません。例えばプロンプトの 最初や、アドレスが複数あることを示すカンマの後です。

別名メニューでは、select-entry キー(既定値では default: <Return>)で好きなだけ別名を選択してから、 exitキー(既定値は q)を使ってアドレスのプロンプトに戻れます。

6. 既定のキー割り当ての変更

使用法:

bind map key function

このコマンドで既定のキー割り当て (キーを押したときに起動する処理)を 変更することができます。

map specifies in which menu the binding belongs. Multiple maps may be specified by separating them with commas (no additional whitespace is allowed). The currently defined maps are: mapは、その割り当てがどのメニューのものなのかを指定します。 複数のマップをカンマで区切って指定することもできます(ただし空白を入れてはいけません)。 現状で定義されているマップは以下の通りです。

generic

これは実際のメニューではなく、ページャとエディタ以外の全メニューにおける 最終候補となるものです。Mutt は、キーが実際のメニューで定義されていないとき、 この割り当てを使います。これによって、関数を複数のメニューのキーに 割り当てる ことができますので、同じ効果を得るためにいくつも bind を 書かなくて済みます。

alias

別名メニューは、.muttrcに定義されている個人的な別名の一覧で す。短い別名から完全なメールアドレスへの割り当て一覧です。

attach

この添付ファイルメニューは、受信したメッセージの添付ファイルにアクセス するのに使います。

browser

browserは、ローカルのディレクトリ構造を閲覧するためにも使いますし、 受信メール ボックスを一覧表示するためにも使います。

editor

editor はユーザがテキストデータを入力する一行エディタで、compose メニューでのTo 又は Subject プロンプトで 使います。

index

インデックスとは、メールボックスに含まれているメッセージの一覧です。

compose

compose メニューは、新規メッセージを送信するときに使われる画面のことです。

pager

pager は、メッセージおよび添付ファイルのデータや ヘルプ一覧を表示するために 使われるモードのことです。

pgp

PGP メニューは、送信メッセージの暗号化に使う OpenPGP 鍵を選択します。

smime

smime メニューは、送信メッセージの暗号化に使う OpenSSL の証明書を 選択します。

postpone

延期メニューはインデックスメニューに似ていますが、作成して送信せず 次回まで保存しておいたようなメッセージを復元するときに使うものです。

query

query メニューは$query_command から返された結果を表示するための browser です。

mix

mixmaster 画面は、送信メッセージの再送信オプションを選択するのに使います (Mutt が Mixmaster をサポートするようにコンパイルされている場合)。

keyは割り当てたいキー(またはキーシーケンス)です。 制御文字を指定したい際は、\Cxと記述します。ここで、 xは制御文字に対応する英字です(たとえば、 control-A を指定したい場合は、\Caとします)。 xの大文字小文字状態は\Cと 同じように無視されるため、 \CA, \Ca, \cA\caは皆同じです。 別の書き方としては、キーに割り当てるのに、\を先頭につけた 3桁の8進数字を指定する方法があります(たとえば、 \177\c?と同じです)。 さらに、keyTable 3.1, “キーのシンボル名”で 示されているシンボル名でもかまいません。

Table 3.1. キーのシンボル名

シンボル名意味
\ttab
<tab>tab
<backtab>backtab / shift-tab
\rcarriage return
\nnewline
\eescape
<esc>escape
<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
<f10>ファンクションキー 10

<what-key>機能はキーボード上の他のキーのキーコードと シンボル名を調べるのに使えます。この機能を実行すると、^G が押されるまで、押されたキーの情報を表示します。

keyは空白( )またはセミコロン (;)がない限り引用符でくくる必要はありません。

functionは、keyが押された時の 動作を指定します。 関数すべての一覧はreferenceを 参照してください。bindfunctionが 大括弧なしで指定されていることを前提としていることに注意してください。

特別な機能<noop>は、そのキーシーケンスへの 割り当てをなくします。

7. 文字セットの別名定義

使用法:

charset-hook alias charset
iconv-hook charset local-charset

charset-hookコマンドは文字セット用の別名を定義します。 これは、Mutt の知らない文字セット名が付いたメッセージを 正しく表示するために使えます。

The iconv-hook command defines a system-specific name for a character set. This is helpful when your systems character conversion library insists on using strange, system-specific names for character sets. iconv-hookコマンドは文字セットに対してシステム固有の名前を 定義します。これは、システムの文字変換ライブラリが、文字セットに、システム固有の おかしな名前を使うよう主張するときの助けになります。

8. メールボックスに基づく変数の設定

使用法:

folder-hook [!]regexp command

多くの場合、どのメールボックスを読んでいるかに合わせて 設定を変更できれば 便利です。folder-hookコマンドは、どんな設定コマンドでも 実行できる手法を提供します。regexpは、メールボックス中で、 読み出す前にcommandを実行するものを指定する正規表現です。 メールボックスが複数のfolder-hookに一致する場合は、 .muttrc中で出て来る順番に実行されます。

正規表現のパラメータは、 mailbox shortcut展開が 最初の文字に対して行われます。 詳細はMailbox Matching in Hooksを参照してください。

Note

パターンの最初に、$spoolfileへの ショートカットとして!を使うならば、 正規表現の否定演算子 notと区別するために、シングルかダブルの引用符で くくらなければなりません。

Note

Settings are not restored when you leave the mailbox. For example, a command action to perform is to change the sorting method based upon the mailbox being read: 設定はメールボックスを出るときに復帰しません。 たとえば、実行したいコマンド動作が、読み出すメールボックスに合わせて 整列方法を変更することだとします。

folder-hook mutt "set sort=threads"

しかし、異なったメールボックスを読み出す時に、整列方法が以前の値に復帰する わけではありません。既定のコマンドを指定するには、 folder-hookが設定ファイル中での順に評価されるので、 フォルダ毎に値を調節する前に、パターン.を使います。

Note

キーボードバッファはすべてのホックが実行されたあとまで処理されません。 複数のpush 又は execコマンドは逆順で実行されることになります。

以下の例は、すべてのフォルダに対してdate-sent を行うようにsort変数を設定しますが、 名前に mutt を含むすべてのフォルダの threadsを設定します。

Example 3.9. メールボックス名ベースでの整列方式の設定

folder-hook . "set sort=date-sent"
folder-hook mutt "set sort=threads"

9. キーボードマクロ

使用例:

macro menu key sequence [ description ]

マクロは、キーひとつで連続作業を実行したいときに便利です。menukeyを押すと、Mutt はキーを順番に 押したのと同じ動作をします。ですから、よく連続して入力するコマンドがあれば、 マクロを作成してキーひとつ又はごく少ないキー入力で、そのコマンドを実行する ようにできます。

menuはマクロを割り当てるmapです。 複数のマップは、カンマによって複数のメニューマップに分割して指定できます。 ただし、メニューとカンマの間に空白を使うことはできません。

keysequenceは、いくつか追加が ありますが、key bindingsと同じルールで展開されます。 第一点は、sequenceにおける制御文字を^x とも指定できることです。サーカムフレックス(^)を使うためには ^^とする必要があります。 第二に、upや 機能を直接呼び出すような特定のキーを指定するためには、 <key name><function name> というフォーマットを使います。キー名の一覧は、 key bindingsを参照してください。 機能の一覧はreferenceにあります。

マクロに関数名を直接使う利点は、それによって 動作時のキー割り当てと関係なく マクロが動くので、特定のキー定義をしてあるユーザでなくとも使えるということです。 これでマクロは堅固かつ(ポータブルになり、何人かで使うファイル (例えばシステムの Muttrc) の中でマクロを定義するのも容易になります。

必須ではありませんが、説明文をsequenceの後ろに指定できます。 これはヘルプ画面に表示されます。

Note

ヘルプ画面に表示されるマクロ定義 (定義されていればですが) は 自動的に画面の幅に切り取られてしまい、折り返し表示はされないことに 注意してください。

10. 色と白黒の画面属性の使用

使用法:

color object [ attribute ...] foreground background
color { header | body } [ attribute ...] foreground background regexp
color index [ attribute ...] foreground background pattern
color compose composeobject [ attribute ...] foreground background
uncolor { index | header | body } { * | pattern ... }

端末がカラー表示をサポートしていれば、独自の色構成を創作して 一味ちがう Mutt にすることができます。ある対象 (情報の型) の色を定義するには 前景色と 背景色の両方を指定しなければなりません (前景だけや 背景だけを指定することは不可能です)。

headerbodyは メッセージのヘッダ/本文でregexp に一致し、indexは、メッセージインデックス中の patternと一致します。 IMAP サーバサイドの検索(=b, =B, =h)はカラーインデックスパターン用には サポートされていないことに注意してください。

$header_color_partialが未設定の 場合(既定値)、regexpに一致するheaderは、 すべてのヘッダに適用される色となります。設定されている場合は、 regexpに正確に一致するテキストのみに、色が適用されます。

object は以下のうちのどれかです:

  • attachment

  • bold (メッセージの本文の太字強調部分)

  • error (Mutt が出力するエラーメッセージ)

  • hdrdefault (ペイジャにおけるメッセージヘッダの既定の色)

  • indicator (メニューで現在の項目を指し示す矢印もしくはバー)

  • markers (ページャで折り返された行の行頭にある + マーカ)

  • message (informational messages)

  • normal

  • prompt

  • quoted (メッセージの本文で$quote_regexpに一致す る文)

  • quoted1, quoted2, ..., quotedN (引用の階層レベル)

  • search (ページャでの検索語句の強調)

  • signature

  • status (メールボックスやメッセージに関する情報を表示するモード行)

  • tilde (ページャの空行を埋める ~の部分)

  • tree (メッセージインデックスと添付ファイルメニューで描かれるスレッドツリー)

  • 下線(メッセージ本文の下線つきパターンを強調)

composeobject は以下のうちのどれかです:

  • header

  • security_encrypt

  • security_sign

  • security_both

  • security_none

attribute には以下のうちどれかが後に付きます:

  • none

  • bold

  • underline

  • reverse

  • standout

foreground and background には 以下のうちどれかが後に付きます:

  • white

  • black

  • green

  • magenta

  • blue

  • cyan

  • yellow

  • red

  • default

  • colorx

色を太字又は細字(ライト)にするため、色の名前にオプションで brightまたはlight (たとえばbrightred)を付けることができます。 正確な動作は端末とその設定によって異なります。特に、太字/細字の違いと そのような背景色は、環境変数$TERMで指定された、 少なくとも、16 色に設定された端末でのみ有効です。

端末がそれらをサポートする場合、特別なキーワードdefaultを、 透明色として使えます。また、brightdefaultと言う値も有効です。 Mutt がS-Langライブラリにリンクされていれば、透明色が 正しく動作するように$COLORFGBG環境変数を端末の既定色として 設定しておく必要もあります。たとえば、(Bourne 系シェルの場合)以下のようになります。

set COLORFGBG="green;black"
export COLORFGBG

Note

S-Langでは、この値を設定する時に、 whiteyellow の代わりに lightgraybrownという キーワードを使う必要があります。

Note

uncolorコマンドは、index、ヘッダと本文のみに適用できます。 これは項目をリストから消去します。消去するには必ず colorコマンドで指定したのと同じパターンを指定しなければ なりません。*特別な印で、 color index のリストを全項目消去 することを意味します。

Mutt はcolor0,color1, ..., colorN-1 (Nは端末でサポートされている色の数) といったキーワードも 認識できます。これは、画面の色を (例えばxterm のcolor2に 関連付けてある色を変更したりして) 割り当て直したときに有用です。 色名が通常の意味を失ってしまうからです。

端末がカラー表示をサポートしていなくとも、画面属性をmonoコマンドを 使う事で変更することが可能です。使用法は以下の通りです:

mono object attribute
mono { header | body } attribute regexp
mono index attribute pattern
mono compose composeobject attribute
unmono { index | header | body } { * | pattern ... }

object, composeobjectattribute, see the colorコマンド用です。

11. メッセージヘッダの表示

11.1. ヘッダ表示

ページャ中でメッセージを表示する時、Mutt は$wrapカラムで、 長いヘッダを折り返します。どこでどのように折りたたむかについての厳密な ルールはありますが、Mutt は常時可読性をよくするために、タブを使って ヘッダを折りたたみます(送信時にはこれは適用されず、Mutt は標準に準拠した 折りたたみを実装しようとします)。

11.2. ヘッダの選択

使用法:

ignore pattern [ pattern ...]
unignore { * | pattern ... }

多くのメッセージには、自動処理システムによって付加された、すなわち、 画面に表示させても役に立つとは思えないようなヘッダフィールドがたくさん付いています。 このコマンドで、普段は見ないでいたいヘッダフィールドを指定することができます。

ヘッダフィールド名全体を指定する必要はありません。 例えば ignore content-は、content-で始まるすべてのヘッダを 無視します。

以前に追加した項目をリストから外すには、unignoreコマンドを使用します。 Mutt は指定されたパターンでヘッダを表示します。たとえば、ignore x-を 指定すると、 unignore x-mailerとすることができます。

unignore *は、無視リストから全項目を消去します。

Example 3.10. ヘッダの間引き

# Sven's draconian header weeding
ignore *
unignore from date subject to cc
unignore organization organisation x-mailer: x-newsreader: x-mailing-list:
unignore posted-to:

11.3. 表示されるヘッダの順番

使用法:

hdr_order header [ header ...]
unhdr_order { * | header ... }

hdr_orderコマンドを使うと、メッセージを表示する時、 Mutt がヘッダを表示する時の順番を指定することができます。

unhdr_order *は、順番リストから以前に定義した すべてのヘッダを削除しますので、システム全体のスタートアップファイルで 設定したヘッダ順序効果がなくなります。

Example 3.11. ヘッダ表示順の設定

hdr_order From Date: From: To: Cc: Subject:

12. 代替アドレス

使用法:

alternates [ -group name ...] regexp [ regexp ...]
unalternates [ -group name ...] { * | regexp ... }

種々の機能において、Mutt は自分で送信したメッセージか、他人から受信した メッセージかに応じて違う扱い方をします。たとえば、自分が別の相手へ送信した メッセージに返信を書くとき、 Mutt は自動的にその元メッセージの宛先へ返事を 送るよう提案します。 多くの場合、自分に返事を書くなどということは意味をなさ ないからです($reply_toを参照)。

多くのユーザは複数の異なるアドレスでメールを受信します。Mutt の機能をフル 活用するには、どのアドレスで自分がメールを 受信するのかを Mutt が理解できる ようにしなくてはなりません。このことが、alternatesコマンドを 使う目的です。このコマンドは正規表現のリストを受け取り、それらを使って、 自分が メールを受信するアドレスを識別します。

厳密な比較ではなく、アドレスは正規表現を使って照合されるので、ミスマッチを 防ぐため、アドレスはできるだけ正確に指定する必要があります。

alternates user@example

Mutt はsome-user@exampleが使うアドレスと 想定しますが、これは望ましくないかもしれません。解決方法として、そのような 場合には、以下のように指定します:

alternates '^user@example$'

-groupフラグは、名前付きのグループに、すべての後続の正規表現を 追加します。

unalternatesコマンドを使うと、alternatesの パターンに例外を作ることができます。あるアドレスがalternates に一致していて、それを自分からのではないことにしたい場合には、 unalternatesコマンド配下で、より正確なパターンをリストアップ できます。

alternatesリストから正規表現を削除するには、完全に同一の regexpunalternatesで指定します。 同様に、あるalternatesコマンドのregexpunalternatesリストのエントリに一致したならば、 unalternatesエントリは削除されます。 unalternatesregexp*で あれば、alternatesすべてのエントリが 削除されます。

13. メーリングリスト

使用法:

lists [ -group name ...] regexp [ regexp ...]
unlists { * | regexp ... }
subscribe [ -group name ...] regexp [ regexp ...]
unsubscribe { * | regexp ... }

Mutt は メーリングリストを扱う ための、便利な機能がいくつかあります。その益にあずかるには、 どのアドレス がメーリングリストに属するのか、 そして自分がどのメーリングリストを講読 しているのかを指定しなければなりません。Mutt はまた、自動的に検出した への限定的なサポートもしています。これは、lists コマンド(グループ機能を除く)で、メーリングリストのアドレスを指定するのと 同じ効果がある、共通のList-Post:ヘッダ中の mailto:リンクを走査することで、サポートします。 一度これを行うと、 <list-reply> 機能はすべての既知メーリングリストに対して動作するようになります。 そのうえ、購読しているメーリングリストにメッセージを送るときで、 $followup_toが設定されている場合は、 Mutt は Mail-Followup-To ヘッダを付与します。メーリングリストの購読を 中止する場合、これには自分のアドレスが含まれるので、返信のコピーを確実に受け取れる ことができます。購読済みのメーリングリストでは、返信を自分のアドレスにも送ること のないよう、他の人のメールユーザエージェントに伝えます。

Note

Mail-Followup-To header は、すべてのメールユーザエージェントでサポートされて いない、非標準の拡張です。これを追加しても、メーリングリストのメッセージが 自分宛てに Cc: で来るのを防ぐ 防弾チョッキにはなりません。Mail-Followup-To の 生成は、設定ファイル中の$followup_to 変数に よって制御されるのですが、一部のメーリングリストでは、返信時にCcを送るのが 一般的だからです(これは、メーリングリストへの返信と言うよりは、グループ へ、だからです)。

さらに正確に言うと、Mutt が管理しているのは、 既知および購読中のメーリングリストの アドレスを表すパターンのリストです。購読しているメーリングリストはすべて 既知になります。あるメーリングリストを既知にするには、list コマンドを使います。購読中にするには、subscribe コマンドを使います。

どちらのコマンドにも正規表現を使えます。例えば、Debian のバグトラッキング システムにおけるバグレポートのアドレスに送信されたすべてのメッセージを、 メーリングリストのメールであるということにするには、たとえば、

subscribe [0-9]+.*@bugs.debian.org

とします。くの場合は、単にリストのメールアドレスの一部分を指定するだけで十分です。

十分な長さでアドレスを指定して、あいまいさをなくしてください。 たとえば、 Mutt のメーリングリストを購読していれば、mutt-users@mutt.org へのメールを受信することになります。 それで、このアドレスがメーリングリスト だということを Mutt に教えるには、 初期化ファイルに lists mutt-users@を追加します。これを購読していることを Mutt に教えるには、代わりに subscribemutt-usersを追加します。 もし、mutt-users@example.comというアドレスの人からメールを 受診することがあるならば、 lists ^mutt-users@mutt\\.org$subscribe ^mutt-users@mutt\\.org$ を使って、実際にリストから来たメールにだけ一致させることができます。

-groupフラグは、指定されたアドレスリストに追加する のに加えて、後続のすべての正規表現を 名前付きaddress groupに追加します。

unlistsコマンドは、既知と購読中のメーリングリストのリストから 項目を消去するために使います。項目をすべて消去するには unlists *を使ってください。

メーリングリストを、購読中のメーリングリストのリストからは消去しつつ、既知の メーリングリストのリストに残しておくためには、unsubscribe を使ってください。

14. 複数のスプールメールボックスの使用

使用法:

mbox-hook [!]regexp mailbox

このコマンドは、終了時やフォルダ変更時に、既読メッセージを、特定のメールボックス から違うメールボックスへと、自動で移動させるのに使います。regexpspoolメールボックスとして扱うメールボックスを指定する正規表現で、 mailboxは、既読時にメールをどこにセーブすべきかを指定します。

regexp パラメータは、最初の文字上で展開が実行される mailbox shortcut機能があります。 詳しくは、Mailbox Matching in Hooksを参照してください。

mbox-hooks の実行は、$move 変数に依存する ことに注意してください。no(既定値)に設定すると、 mbox-hooks は実行されません。

一部のhookコマンドと異なり、最初に パターンだけが 使われます (既読メールを一度に複数のメールボックスへセーブすることは できません)。

15. 受信メールのモニタ

使用法:

mailboxes [ [ -poll | -nopoll ] [ -label label | -nolabel ] mailbox ] [...]
unmailboxes { * | mailbox ... }

このコマンドは、メールを受信し、定期的に新しいメールが来ているかをチェックする フォルダを指定します。

ポーリングを無効にするためには、メールボックス名の前に、-nopoll を 指定します。-poll 引数は 既存のメールボックスに対して、 再度ポーリングを有効にするために使えます。未定義の場合、新規メールボックスは 既存のメールボックスに変更がない間は、既定でポーリングされます。

-label引数はメールボックスパスの代わりに、サイドバーまたは メールボックスブラウザ中で表示するための、別名ラベルを指定するのに使います。 ラベルはo-nolabel 引数経由で削除できます。未定義の場合、既存の メールボックスラベルは変更されません。

mailbox はローカルファイルかディレクトリのどちらかです (Mbox/Mmdf 又は Maildir/Mh)。Mutt が POP 又は IMAP をサポートするように コンパイルされている場合、mailboxには POP/IMAP フォルダ URLも 使えます。URL の文法は、Section 1.2, “URL の文法” にあり、POP と IMAP はそれぞれ Section 3, “POP3 サポート”Section 4, “IMAP サポート” に説明があります。

Mutt は(おそらく多くの)フォルダとその中の新しいメールを扱うための、多くの 高度な機能を提供しています。詳細はSection 13, “新しいメールの検出”を参照してください (どのような状況でどのくらいの頻度で Mutt が新しいメールをチェックするかを 含みます)。

unmailboxesはメールを受信したフォルダリストからトークンを 削除するのに使います。unmailboxes *を使うと、すべてのトークンを 削除します。

Note

mailboxesコマンド中のフォルダは、コマンドが実行される時に 解決されるので、shortcut characters (例えば=文字と!のようなもの)が名前に含まれている 場合、それらの文字(like $folder$spoolfile のようなもの)に影響する 変数定義は、mailboxesコマンドの前で定義する必要があります。 それらのショートカットが使われていない場合、そうしないと Mutt は Mutt が起動した ディレクトリからの相対パスを探そうとするので、ローカルパスは絶対パスにする 必要があります。

16. ユーザ定義のヘッダ

使用法:

my_hdr string
unmy_hdr { * | field ... }

my_hdrコマンドで、すべてのメールに付加され、 $edit_headers が設定されている場合、 エディタ中に表示される自分独自のヘッダフィールドを定義できます。

たとえば、Organization:ヘッダを送信メッセージすべてに付与したい 場合は、.muttrcに、Example 3.12, “カスタムヘッダの定義” で 示されるようなコマンドを記述できます。

Example 3.12. カスタムヘッダの定義

my_hdr Organization: A Really Big Company, Anytown, USA

Note

空白文字は、キーワードとコロン(:)の間には 置けません。電子メールの標準(RFC2822)では 空白をそこに置くのは不正であり、Mutt もこのルールを強制します。

もしも単一のメッセージにヘッダフィールドを追加したいならば、 $edit_headers変数を定義するか、 <edit-headers>機能(既定値: E) を編集メニューで使う事のどちらかで、メッセージの本文と一緒にヘッダを編集できます。

ユーザ定義のヘッダフィールドを消去するには、unmy_hdrを 使ってください。アスタリスク(*)を指定してすべてのヘッダ フィールドを消去することもできますし、 消去するフィールドを指定することも できます。例えば、ToCc ヘッダフィールドを すべて削除するには、以下のようにします。

unmy_hdr to cc

17. 既定のセーブ用メールボックスの指定

使用法:

save-hook [!]pattern mailbox

このコマンドは、メッセージをセーブするときに使うファイル名の既定値を上書き するのに使います。mailboxpatternに メッセージが一致する時に使われます。正確なフォーマットの情報については、 Message Matching in Hooks を参照してください。

mailbox after it was expanded. より柔軟性が高くて、よい既定値を提供するため、Mutt は、 $index_formatの展開結果を 展開したあとのmailbox に適用します。

Example 3.13. save-hook中で %-expandos を使う

# default: save all to ~/Mail/<author name>
save-hook . ~/Mail/%F

# save from me@turing.cs.hmc.edu and me@cs.hmc.edu to $folder/elkins
save-hook me@(turing\\.)?cs\\.hmc\\.edu$ +elkins

# save from aol.com to $folder/spam
save-hook aol\\.com$ +spam

fcc-save-hook コマンドも参照してください。

18. 編集時に既定の Fcc: Mailbox を指定

使用法:

fcc-hook [!]pattern mailbox

このコマンドは送信メッセージを$record以外の メールボックスに保存するために使います。Mutt はまず、メッセージ宛先リストの中で patternを検索して、最初に合致したものの mailboxを 既定の Fcc: メールボックスとして使います。 一致するものが見付からなければ、メッセージは$record メールボックスにセーブされます。

より柔軟性が高くて、よい既定値を提供するため、Mutt は、 $index_formatの展開結果を 展開したあとのmailbox に適用します。

正確なフォーマットの情報については、 Message Matching in Hooks を参照してください。

fcc-hook [@.]aol\\.com$ +spammers

これは、既定で aol.com ドメインに送られるすべてのメッセージのコピーを `+spammers' メールボックスにセーブします。 fcc-save-hook コマンドも参照してください。

Multiple mailboxes may be specified by separating them with $fcc_delimiter, if set: 複数のメールボックスを設定する場合、 $fcc_delimiter で区切って、指定することが出来ます。

  set fcc_delimiter = ','
  fcc-hook 'foo@example\.com$' '+one,+two'

19. 既定のセーブファイル名と既定の Fcc: メールボックスを同時に指定

Usage:

fcc-save-hook [!]pattern mailbox

このコマンドはショートカットであり、同じ引数で fcc-hooksave-hook を両方とも実行するのと、ほとんど等価です。また、 $index_formatによる mailboxの %-expansion を含みます。

fcc-save-hook はfcc-hook が行うように、複数のメールボックスを利用できるように 設計されていないことに注意してください。正しい動作を得るためには、別の fcc と saveフックを使用する必要があります。

20. メッセージの宛先による設定の変更

使用法:

reply-hook [!]pattern command
send-hook [!]pattern command
send2-hook [!]pattern command

これらのコマンドは、メッセージの宛先に基づいて任意のコマンドを実行するのに 使います。patternはメッセージに一致するのに使われます。 patternが一致した時のコマンドの実行についての詳細は Message Matching in Hooks を参照してください。

reply-hook送信するメッセージの 代わりに、返信するメッセージに対して一致します。 send-hook新規返信 両方のすべてのメッセージに対して一致します。

Note

reply-hookは、ユーザの設定ファイル中の順番には 関係なくsend-hook前に 一致します。しかし、返信時に、reply-hookがいつ実行されたを send-hook中でパターン '! ~Q' (返信しないMessage Matching in Hooksを参照)を 使う事によってsend-hookを抑制することができます。

send2-hookはメッセージが変更されるたびに実行されます。 すなわち、編集したか、編集メニューで宛先や題名を変更したときです。 send2-hooksend-hookのあとに実行されるので、 たとえば、$sendmail変数のようなパラメータを、 メッセージの送信アドレスに応じたものとするように設定するのに使えます。

send-hookまたはreply-hook の各タイプとも、 複数の一致が発生した場合、コマンドは.muttrc(のそのタイプの hook)に記載されている順で実行されます。

例: send-hook mutt "set mime_forward signature=''"

このコマンドの別の典型的な使い方は、$attribution$attribution_locale$signature変数を、 宛先に応じて属性と署名の言語を変更するために使うということがあります。

Note

send-hookは初期受信者リストを取得したあとに1回だけ実行されます。 これは、保存された(訳注:postponed)ドラフトを復帰した時には実行されません。 返信またはメッセージの編集後に追加された受信者は、 send-hookでは何も実行されません。これは、 $autoeditが設定された時と似ています (受信者リストが空のように)。さらに、受信者ヘッダやメッセージの題名を修正する my_hdrコマンドは、 send-hookから実行された時には、現在のメッセージには何の影響も 与えないことに注意してください。

21. メッセージ整形前に設定を変更する

使用法:

message-hook [!]pattern command

このコマンドを使って、メッセージの閲覧や整形の前に、そのメッセージに関する情報に 基づいて任意の設定コマンドを実行できます。 表示しようとしているメッセージに patternが一致していればcommandが実行されます。 複数一致した場合は、.muttrcに記載されている順に コマンドが実行されます。

patternの正確なフォーマットについてはMessage Matching in Hooks を参照してください。

例:

message-hook ~A 'set pager=builtin'
message-hook '~f freshmeat-news' 'set pager="less \"+/^  subject: .*\""'

22. 受信者の暗号鍵の選択

Usage:

crypt-hook regexp keyid

PGP/GnuPG 又は OpenSSL でメッセージを暗号化する時、 送信先のアドレスから受信者の公開鍵が推測できない場合や、何らかの理由で、 Mutt が通常使う鍵をオーバライドする必要がある場合には、指定された電子メール アドレスに特定のキーを結び付けたいでしょう。crypt-hook コマンドは、特定の宛先へのメッセージを暗号化するときに使う公開鍵の ID を指定する 手段を提供するものです。同じ regexp を 複数の crypt-hooks で使う事ができます。 複数の crypt-hooks に一致する場合は、受信者に対して複数の keyid を使用することに なります。キーの選択中、Mutt は、どの crypt-hook で使うかを確認してきます ($crypt_confirmhook が設定されていない限り)。 受信者に対するすべての crypt-hooks が指定されない場合、Mutt は鍵選択の代わりに、 もとの受信者アドレスを使います。

ここでは、広い意味でkeyidと言っています。数字の鍵 ID や フィンガープリントを入れることもできますし、メールアドレスも使えます。本名でも 構いません。

23. パターンを使った $index_format の動的変更

使用法:

index-format-hook name [!]pattern format-string

このコマンドは、現在のメッセージに対するパターンマッチングを基にして、 動的に、$index_formatにフォーマット 文字列を挟み込むのに使います。

$index_formatは、 プレースフォルダとして指定した%@name@に 展開されます。同じnameを持つ Index-format-hooks は、 現在のメッセージに対して patternを使う事で、 一致します。比較は .muttrc 中で指定された順に一致し、最初に一致したものが 使われます。hook のformat-stringが次に置換されて評価されます。

最初に一致したものが使われるので、最後の hook として、すべてに一致する ~Aというパターンを配置するのはよい方法です。 以下は、どのようにして動的な日付フォーマットを実装するかの例です。

set index_format="%4C %-6@date@ %-15.15F %Z (%4c) %s"

index-format-hook  date  "~d<1d"    "%[%H:%M]"
index-format-hook  date  "~d<1m"    "%[%a %d]"
index-format-hook  date  "~d<1y"    "%[%b %d]"
index-format-hook  date  "~A"       "%[%m/%y]"

もう一つの例としては、題名に付加する例を示します。すべてに一致する ~A パターンがない場合、何も一致しないと、展開処理では空白文字列で置き換わ る事に注意してください。

set index_format="%4C %@subj_flags@%s"

index-format-hook  subj_flags  "~f boss@example.com"    "** BOSS ** "
index-format-hook  subj_flags  "~f spouse@example.com"  ":-) "

24. キーボードバッファへのキーシーケンスの追加

使用法:

push string

このコマンドは、指名した文字列をキーボードバッファに入れます。この文字列には、 macroコマンドのシーケンスのように、制御文字、 キーの名前、関数名を含められます。これを使って、起動時や特定のフォルダへの 移動時に、 複数のコマンドを連続実行することもできます。たとえば、 Example 3.14, “folder-hook 中でのpushの組み込み”では、フォルダに入った時に、自動的に すべてのスレッドをたたむかを示しています。

Example 3.14. folder-hook 中でのpushの組み込み

folder-hook . 'push <collapse-all>'

例で示したような機能の利用では、機能名としてMutt が入力を理解するために、 波括弧(< and >)を使う事が重要です。 それ以外は、独立したキーストロークをシミュレートします。すなわち、 push collapse-all は、 col .... とタイプしたように 解釈されるので、望ましくない、非常に予想外の動作に繋がる可能性があります。

キーストロークも使う事ができますが、キーバインディングが変更になる可能性があるため、 ポータビリティがあまりありません。既定のバインディングでは、これは上記の例と 同じです。

folder-hook . 'push \eV'

これは、Esc+V が押されたのをシミュレートします(これは <collapse-all> の既定のバインディングです)。

25. 機能の実行

使用法:

exec function [ function ...]

このコマンドは、あらゆる機能の実行に使えます。 機能の一覧は function referenceにあります。 exec functionpush <function>と等価です。

26. メッセージのスコア付け

使用法:

score pattern value
unscore { * | pattern ... }

scoreコマンドは、patternに 一致したならば、valueをメッセージに追加します。 patternは、patterns節で 説明したようなフォーマットの文字列です(効率上の理由から、インデックスで扱えない 情報を走査するパターン、 例えば~b, ~B, ~h, ~M, 又は ~X などは使えません)。valueは正又は負の整数です。 メッセージの最終的なスコアは、scoreエントリに一致した すべての合計値です。しかしながら、valueの前に等号 (=)を付けることで、特定のエントリに一致した時点で評価を終了 させることができます。負の最終スコアは 0 に丸められます。

unscoreコマンドは、リストからスコアエントリを削除します。 削除するには、scoreコマンドで指定したのと同じパターンを 指定しなければなりません。パターン*は、 特別なトークンで、リスト中のすべてのスコアエントリを削除します。

スコアリングは、メールボックスが整列される前、メールが読み出される前に行われます。 この理由により、 ~=, ~$,と ~()のような、 スレッドに依存したパターン、は既定値では動きません。回避策は、 folder hook で スコアリングコマンドを push することです。これで、メールボックスが開かれ、入力が 処理されたあとに、メールボックスが再スコアリングされます。

folder-hook . 'push "<enter-command>score ~= 10<enter>"'

27. スパムの検出

使用法:

spam pattern format
nospam { * | pattern }

Mutt には、外部のスパム得点フィルタに対する一般化されたサポートがあります。 spamnospamを使って、固有の スパムパターンを定義でき、外部フィルタによって定義されたスパム属性に基づいて メールを制限,検索, 整列できます。さらに、 $index_format変数中で、 %Hセレクタを使う事により、 スパム属性をインデックス画面に 表示することもできます (便利ワザ:%?H?[%H] ?としてみると、スパムタグが、メッセージに 定義されている場合のみ表示されます)。

%Hによって表示され、~Hによって 注意: 検索された値はheader cacheに格納されます。 Mutt はspamルールの変更に基づいてヘッダキャッシュエントリを 無効にするほど賢くはないので、正しい%Hの値が表示されない 場合は、ヘッダキャッシュを一時的に OFF にしてみてください。これで問題が解決 すれば、スパムルールを好みに設定後、古いヘッダキャッシュファイルを削除して、 再度キャッシュを ON に戻してください。

最初のステップとして、spamコマンドを使い、外部フィルタの スパムパターンを定義することです。patternは正規表現で、 メールメッセージのヘッダに 一致させます。メールボックス中のメッセージは、この 正規表現に一致すると、spam tag 又は spam attribute を受け取ります(nospamパターンに一致しない限り— 以下を参照)。この属性の表示方法は、自分で完全に制御することができ、 その制御を行うのはformatパラメータです。 formatパラメータは任意の静的なテキストが使えますが、 pattern正規表現からの後方参照を含めることもできます (正規表現back-referenceは、括弧の中に含まれた部分式(訳注: sub-expression)を参照します)。%1は正規表現中の 後方参照に置換され、%2は、二番目の後方参照に置換され ます。あとは同様です。

スパムタグに一致するため、 mutt は、ローカルと POP フォルダの場合は常時 対応するヘッダ情報を必要としますが、既定の設定では IMAP では必要としません。 解析されるスパムヘッダに依存しますが、 $imap_headers を調整する必要が あるかもしれません。

複数のスパムフィルタを利用していると、メッセージに複数のスパム関連ヘッダが付く ことがあります。そこで、spamパターンを、おのおのに対して 設定することができます。メッセージが二つ以上のパターンに一致した場合で、 $spam_separator変数が文字列に 設定されていれば、メッセージのスパムタグは、 $spam_separator変数の値で項目を分割した、 すべてのformat文字列を連結したものとなります。

例えば、DCC, SpamAssassin と PureMessage を使っている場合は、 設定はExample 3.15, “スパム検出のための設定”のようになるかもしれません。

Example 3.15. スパム検出のための設定

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=", "

この場合、Fuz2チェックサムでたくさん 一致した事をDCCに登録したことと、PureMessage が 97% スパムであるという 事を登録したことと、メッセージのスパムタグが 90+/DCC-Fuz2,97/PMであるメッセージを受信します。 (DCC レポートの=manyの4文字は、— を使ってチェックサムを 表示しています。この場合はFuz2です。)

$spam_separator変数が設定されていない場合、 各スパムパターンは前のパターンに優先します。結局、結合された format文字列の代わりに、最後のものに一致した結果が 得られます。

$index_format変数で、%H を使用した時に、インデックスへ表示される文字列です。また、 <search><limit>機能に対して、 ~Hパターンマッチング式が一致した文字列でもあります。さらに、 整列キーとしてスパム属性を整列させるものでもあります。

これは非常に混み入った例で、ほとんどの人が実際に利用している環境では、 スパムフィルタはひとつだけでしょう。設定が単純であればあるほど、 Mutt の 動作を効果的にすることができます。特に整列に関してそう言えます。

一般的に言って、スパムタグで整列する際に Mutt は辞書的に— すなわち、文字列を一文字ずつ英数字順に評価して整列します。しかし、もしも パムタグが数字で始まっているならば、Mutt はまず数値順に整列して、2つの数値が同じ 場合にのみ辞書的に整列します(これは UNIX のsort -nと 似ています)。スパム属性が何もないメッセージ、すなわち、どの spamパターンにも一致しない場合は、最低の順位で整列されます。 数値がそれに続いて、0 から順に高い順位で整列されます。 最後に数字以外の文字列が、 azより低い順位で整列されます。明らかに一般的には スパムタグの整列は、フィルタで強制的に数値を返させることができれば、概して最も 効果的になると言えます。しかし それができない場合でも、Mutt はまずまず有用な動作 をするわけです。

nospamspamパターンの例外を書くのに 使います。spamコマンドの何かにヘッダパターンが一致しても、 スパムタグを付けたくない 条件があるなら、そうしたより詳細なパターンを nospamコマンド配下で、より正確なパターンを列挙することが できます。

nospamに与えられたpatternが、 既存のspamリストエントリ中にあるpatternと 正確に同じ場合、例外を追加する代わりに、スパムリストからエントリを削除する 効果があります。同様に、spamコマンドでの patternnospamリスト中のエントリに 一致するならば、nospam エントリが削除されます。nospampattern*ならば、 両方のリストのすべてのパターンが削除されます。これは、 folder-hookといっしょに、spamnospamを使う場合は、これを既定動作にすることでしょう。

たくさんのspamまたはnospamコマンドを、 お好みに応じて使う事ができます。Mutt だけで初歩的なspam 検出をすることも可能です。たとえば、spamコマンドを 以下のように使います。

spam "^From: .*MAILER-DAEMON"       "999"

28. 変数の設定と問合せ

28.1. 変数のタイプ

Mutt は設定変数で以下のタイプをサポートします:

boolean

論理式で yes または no のどちらか。

number

範囲が -32768 から 32767 までの符号付き整数。

number (long)

範囲が -2147483648 から 2147483647 までの符号付き整数。

string

任意のテキスト。

path

利用者のホームディレクトリなどのためのチルダ(~)と同じように、 メールボックスショートカットサポートを含む、パスを表現するための特別な 文字列(Section 10, “メールボックスのショートカット”を参照)。

quadoption

論理値と似ていますが、ask-yesask-noyesno に事前に選択されている時に プロンプトをON/OFFします。

sort order

変数に依存して、特定の単語だけを値として指定できる特別な文字列。

regular expression

正規表現。詳しくはSection 2, “正規表現”を参照してください。

folder magic

mbox,mmdf, mh又は maildirとして使うためのフォルダタイプを指定します。 現在は、新しく作成したフォルダのタイプを決定するためにのみ使われます。

e-mail address

電子メールアドレスで、実際に使う名前の付与は問いません。昔の user@example.org (Joe User)形式はサポートされていますが 非推奨ですので可能な限り使わないでください。

user-defined

任意のテキストです。詳細はSection 28.3, “ユーザ定義の変数”を参照してください。

28.2. コマンド

以下のコマンドは変数の操作と問合せに使えます:

使用法:

set { [ no | inv ] variable | variable=value } [...]
toggle variable [ variable ...]
unset variable [ variable ...]
reset variable [ variable ...]

このコマンドは設定変数を設定(または設定解除)するのに 使います。これらは4つの基本的な変数のタイプ、論理値、数値、文字列とquadoption というがあります。booleanタイプは設定 (true) または 非設定 (false)にできます。 number変数は正の数値に設定できます。 string変数は表示可能な任意長の文字列で、スペース又は タブが含まれる場合には引用符でくくる必要があります。また、エスケープシーケンス \n\tを、それぞれ改行とタブとして使えます。 quadoption変数は特定の動作時に、プロンプトの表示をするか しないかを制御するのに使うか、既定の動作を指定するのに使います。 yesは、質問に対して yes と答えたように、自動的にアクションが 実行されます。同じように、noは、noと答えたのと 同じように、自動的にアクションが実行されます。ask-yesは、 既定の答がyesで、ask-noは既定の答が noというプロンプトを表示します。

先頭にnoを付けた変数は設定を解除します。たとえば、 set noaskbcc です。

booleanでは、先頭にinvを付けることができます。 そうすると、変数の値を反転します(ONまたはOFF)。これはマクロを書く時に便利です。 例えばset invsmart_wrap です。

toggleは、自動的にすべての指定した変数にinv プレフィックスを前置します。

unsetコマンドは、指定した変数すべての先頭に自動的に noを付けます。

<enter-command>機能をindexメニューで 使うと、変数の名前の前に疑問符を付けることによって、変数の値を問い合わせられます。

set ?allow_8bit

疑問符は実際には boolean 変数と quadoption 変数にしか必要ありません。

resetコマンドは、与えられた変数すべてをコンパイル時の既定値 (おそらく、このマニュアルに書いてある値) に戻します。 set コマンドで変数の前に&を付けると resetコマンドと 同じ挙動となります。

resetコマンドには特別な変数allが存在し、 これですべての変数をシステムの既定値に戻すことができます。

28.3. ユーザ定義の変数

28.3.1. 概要

my_ as in, for example, my_cfgdir. 設定変数セクション中にリストされている変数と共に、 Mutt は名前がmy_で始まるユーザ定義の変数をサポートします。 例えば、my_cfgdirです。

setコマンドは固有のmy_変数を作成するか、 すでに存在していれば、その値を変更します。unsetresetコマンドは、完全に変数を削除します。

ユーザ定義の変数は環境変数と同じように展開されますので( shell-escapeコマンドとバッククォートを 使った展開を除く)、この機能は設定ファイルをより読みやすくするのに使えます。

28.3.2. 例

以下の例は変数my_cfgdirに、 source コマンドの 呼び出しを短くすることを定義し、使用します:

Example 3.16. 設定ファイルの可読性向上のための、ユーザ定義変数の使用

set my_cfgdir = $HOME/mutt/config

source $my_cfgdir/hooks
source $my_cfgdir/macros
# more source commands...

カスタム変数は現在の変数を他の変数にバックアップするため、マクロ中で使う事もできます。 以下の例では、変数$delete の値を my_deleteとして、もとの値をセーブしておいて、一時的に変更します。 マクロがすべてのコマンドを実行したあと、$deleteの もとの値をリストアします。

Example 3.17. 他の設定オプション値のバックアップ用にユーザ定義変数を使用

macro pager ,x '\
<enter-command>set my_delete=$delete<enter>\
<enter-command>set delete=yes<enter>\
...\
<enter-command>set delete=$my_delete<enter>'

Mutt は設定ファイルを走査している時には、その値をすでに展開しているので、 最後の例での$my_deleteの値は、設定ファイルを走査中の時点では、 正確に$deleteの値になります。 同じ、又は他のファイルで、他の文が$deleteの値を 変更した場合でも、$my_deleteの値に影響はありません。しかし、 以下で示す例では、ドル記号をエスケープする時、展開は実行時まで遅延します。

Example 3.18. 実行時まで、ユーザ定義の変数の展開は遅延する

macro pager <PageDown> "\
<enter-command> set my_old_pager_stop=\$pager_stop pager_stop<Enter>\
<next-page>\
<enter-command> set pager_stop=\$my_old_pager_stop<Enter>\
<enter-command> unset my_old_pager_stop<Enter>"

<enter-command>set設定コマンドの間に スペースがあることに注意してください。これは、Mutt がmacroのコマンドが その履歴に記録されることを防ぎます。

28.4. タイプの変換

変数は常時、Mutt が値のタイプに対応する内部表現に解析する文字列の値が割り当てられて います。たとえば、数値タイプには整数値です。すべての問い合わせ($-拡張を含みます) において、値は内部タイプから文字列に変換されます。その結果、どの変数も、 ターゲットに対してその内容が有効であれば、任意の値を割り当てることができます。 これは、文字列型のカスタム変数にもカウントされます。解析が失敗した場合、 Mutt はエラーメッセージを表示します。Example 3.19, “Type conversions using variables”には変換の例を 示しています。

Example 3.19. Type conversions using variables

set my_lines = "5"                # value is string "5"
set pager_index_lines = $my_lines # value is integer 5

set my_sort = "date-received"     # value is string "date-received"
set sort = "last-$my_sort"        # value is sort last-date-received

set my_inc = $read_inc            # value is string "10" (default of $read_inc)
set my_foo = $my_inc              # value is string "10"

これらの割り当てはすべて有効です。しかし、$my_linesの値は 5(または数字と認識できない何か)で、 $pager_index_linesへの割り当てはエラーメッセージを生成します。

型の変換は、引数を伴うすべての設定コマンドに適用されます。しかし、展開されたすべての 変数の値は単一のトークンとして見なされる事に注意してください。動作する例は 以下の通りです。

set my_pattern = "~A"
set my_number = "10"

# same as: score ~A +10
score $my_pattern +$my_number

動かない例は以下の通りです。

set my_mx = "+mailbox1 +mailbox2"
mailboxes $my_mx +mailbox3

$my_mxの値が+mailbox1 +mailbox2と言う名前の、単一の メールボックスとして解釈され、2つの異なったメールボックスではありません。

29. 他のファイルからの初期かコマンドの読み込み

使用法:

source filename

このコマンドで、初期化コマンドを他のファイルから取り込めます。 例えばエイリアスファイルを ~/.mail_aliasesに配置すれば、~/.muttrcを 読めるようにしても、 エイリアスは秘密にしておけます。

ファイル名がチルダ(~)で始まっている場合は、 自分のホームディレクトリのパスに展開されます。

ファイル名が縦線(|)で終わっていれば、ファイル名は 実行プログラムとみなされ、そこから入力を読み出します(たとえば、 source ~/bin/myscript|)。

30. フックの削除

使用法:

unhook { * | hook-type }

このコマンドで、それまでに設定してきたフックを流し去ることができます。 あらゆるフックを消すのも*を引数として与えることによってできますし、 unhook send-hookのようにして特定のタイプの フックを すべて消すということもできます。

31. 文字列のフォーマット

31.1. 基本的な使い方

文字列のフォーマットとは一般的な概念で、特に、 $index_format, $pager_format, $status_format やその他関連する 変数において、Mutt の設定中で存在しています。これらは、とてもわかりやすいので、 すでにどのように使うかを知っている可能性も十分にあります。

もっとも基本的なフォーマット文字列の要素は、他の文字が後ろに付くパーセント文字です。 たとえば、%sは、$index_format 変数中でメッセージの Subject: ヘッダを意味します。各フォーマット変数において expandosが有効であることはドキュメントにありますが、 すべてのフォーマットされたexpandosは一般的なモディファイアとしても有効です。 これは懸念事項です。

いくつかのモディファイアはC言語のものを持ってきています(あるいは、Perl,Python, shellやその他の言語で知っているかもしれませんが)。%-12.12s と言う形になる[-]m.nというモディファイアもあります。 そのようなプログラム言語では、これらのモディファイアは、位置揃えのために、 結果文字列の最小と最大長を指定するのに使えます。パーセント文字のあとに、 -記号がある場合、文字列は右揃えではなく左揃えとなります。 直後に数字がある場合、それはフォーマット文字列が占める最小のスペースです。 それよりも自然に小さい場合は、スペースが埋め込まれます。 小数点と他の数字が後に付く場合は、最大の範囲となります。本来のサイズに関係なく、 文字列はその幅よりも長くできません。各3要素はオプションなので、 %-12s,%4c, %.15F%-12.15L はすべて正しいフォーマットです。

Mutt はフォーマット文字列にいくつかのモディファイアを追加しています。等号 (=)を数字の前に使った場合(前述のマイナスのように)、 その最小幅いないで文字列を中央揃えにします。たとえば、%=14yは、 %y 拡張用に14文字を反転します。これは、 $index_format中のX-Label: ヘッダです。 展開の結果の文字列が14文字よりも少ない場合、14文字の中で中央揃えになります。 メッセージのX-Label がtestだった場合、展開後は以下のようになります。      test     

expando が置き換わる場合に影響のあるあまり知られていないモディファイアが 2つあります。下線(_)文字が任意のフォーマットモディファイアの と expando 文字の間に位置する場合(上記のように)、すべて小文字に置き換わります。 コロン(:)を使った場合、すべての小数点は下線付きになります。

31.2. 条件式

フォーマット文字列変数に依存しますが、いくつかのシーケンスは、値が0以外の場合に 文字列を表示するために使用できます。たとえば、フラグ付きのメッセージが 存在するような場合にのみ、その数を表示したい場合です。この場合 0 は特に意味が ありません。オプションで、上記のシーケンスのいずれかに基づいて、文字列を表示 するには、以下の構文を使用します。

%?<sequence_char>?<optional_string>?

ここで、sequence_char はexpando で、 optional_stringは、sequence_charが ゼロ以外の時に表示したい文字列です。optional_stringは 通常のテキストと同じように、その他のシーケンスを含んでいてもかまいません。 しかし、オプションの文字列をネストしてはいけません。

$status_format中のメールボックス中の 新規メッセージの数をオプションで表示するための例は下記の通りです。

%?n?%n new messages.?

以下の構文を使って、二つの文字列を切り換えることもできます。

%?<sequence_char>?<if_string>&<else_string>?

sequence_charがゼロでない場合、if_stringは 展開され、その他の場合は、else_stringが展開されます。

31.3. フィルタ

縦棒(|)で終わっているフォーマット文字列は、空白文字をセパレータ として使って、文字列中の最初の単語を展開してパイプします。返される文字列は 表示のために使われます。返された文字列が % で終わっている場合、次の時に フォーマッタを通ります。これで、フィルタが、% expandos を含む置換フォーマット文字列を 生成できるようになります。

フォーマット文字列中の、すべての % expandos は、スクリプトが呼ばれる前に展開されるので、

Example 3.20. フォーマット文字列中の外部フィルタの使用

set status_format="script.sh '%r %f (%L)'|"

は、Mutt が%r, %f%Lを、 スクリプトが呼ばれる前に展開するようにさせます。例では、さらに、 引数が引用符で囲まれています。スクリプトは単一引用符の間の文字列を唯一の引数として 展開された文字列を受け取ります。

実際の例は、Mutt のドキュメントのsamplesサブディレクトリ 中にインストールされているmutt_xtitleスクリプトです。 これは、もしもサポートされていれば、現在のターミナルのタイトルを設定するための、 $status_formatに対するフィルタとして使われます。

31.4. パディング

多くのフォーマット文字列中では、Mutt は特別な %-expandos を使う事で、異なったタイプの パディングをサポートします。

%|X

これが発生した時、Mutt は文字Xで、行の残りを埋めます。 たとえば、以下のようにすると、行の残りをダッシュで埋めます。

set status_format = "%v on %h: %B: %?n?%n&no? new messages %|-"
%>X

以前の expando が行の終わりで停止するため、%>X expando 経由で 二つの項目の間のギャップを埋める方法が存在する必要があります。二つのアイテムの間で たくさんの文字Xを埋めるので、行の残りは右詰になります。例えば バージョン文字列を置かず、上記の例でのホスト名を左に配置しますが、その右は空白で 埋める場合は(%>のあとの空白に注意)以下のようにします。

set status_format = "%B: %?n?%n&no? new messages %> (%v on %h)"
%*X

通常の右揃えは%>の左側にすべて表示し、余裕がある場合にのみ、 埋め込み文字や右にあるものを表示します。それと対照的に、soft-fillは 右側を優先し、表示するスペースを保障し、まだスペースが余っている場合にのみ 埋め込み文字を表示します。必要であれば、soft-fill は右側のテキストために場所を 空けるため、左側のテキストをカットします。たとえば、可能な限り画面に収まるように、 題名を右揃えするためには、以下のようにします(%* のあとの二つの 空白に注意:2つ目は題名と切り取られた右側との間にスペースがある事を確認します)。

set index_format="%4C %Z %{%b %d} %-15.15L (%?l?%4l&%4c?)%*  %s"

31.5. バイト長の表示

メッセージのサイズをバイト単位で表示する expandos を含む種々のフォーマット文字列があります。 これには、 %s in $attach_format, %l in $compose_format, %s in $folder_format, %c in $index_format$status_format中の%l と %Lがあります。 どのように数字が表示されるかをカスタマイズするために使う四つの設定変数があります。

$size_show_bytesはサイズが 1キロバイトよりも小さい場合にバイト長を表示するのに使います。 設定されていない場合、代わりにキロバイト単位で表示されます。

$size_show_mbはサイズが1メガバイト 以上の時にメガバイト単位で表示します。設定されていない場合、代わりに キロバイト単位で表示されます(おそらくかなり大きな値になります)。

$size_show_fractionsは、 0 から 10 キロバイトと、 1 から 10 メガバイトで、単一の10進領域に 数字を表示します。

$size_units_on_leftは、 単位(K 又は M)を、 設定されていない場合、 右側に表示される代わりに、左側に表示します。

これらの変数は、いくつか他の場所でのサイズ表示にも影響します。たとえば、 ページャ内での添付デリミタや処理の進行表示などです。

32. mailto: URL 中でのヘッダフィールドの許可制御

使用法:

mailto_allow { * | header-field ... }
unmailto_allow { * | header-field ... }

セキュリティ対策として、Mutt はユーザが承認したヘッダフィールドのみを mailto: URLから追加します。これは、Mutt が特定のヘッダ、 たとえば、Attach:のようなものを特別な方法で扱うので必要です。 mailto_allowunmailto_allowコマンドは、 承認されたヘッダのリストを修正するのに使います。

Mutt は、RFC2368 中のmailto:定義によって、規定されている唯一の 条件である、SubjectBodyヘッダフィールドのみを 含むように既定のリストを初期化します。

Chapter 4. 高度な使用方法

1. 文字セットのハンドリング

文字セットは、基本的な、バイトとグリフのマッピングで、特定の 文字エンコーディングスキームを意味します。たとえば、ISO 8859 文字セットファミリ では、8ビット単位のエンコーディングが使用されます。Unicode 文字セットでは、 異なった文字エンコーディングが使われます。UTF-8 がもっとも一般的です。 UTF-8 では1 バイトから 4 バイトまでの間の可変長で文字が表現されます。

Mutt はシェルから動かすコマンドラインツールで、特外部ツールへ特定のタスクを 委任するので(たとえばメッセージの作成/編集に使うエディタなど)、 それらのツールはすべて文字セットとエンコーディングを認識できる必要があります。 平文ファイルの文字セットを確実に認識できる方法はありません。相互運用性は 明確に定義された環境変数を使用することで得られます。完全なセットは コマンドライン上で、locale を実行することにより表示 できます。

開始時点で、Mutt はローカルで定義された環境変数を調べる固有の処理で、 文字セットを決定します。そのため、一般的には、Mutt 中で$charset 変数を設定する必要はありません。Mutt はシステムやライブラリの機能を使って、 文字セットを決め、Mutt に影響を及ぼさないようにしているので、逆効果になる 場合もあります。Muttにロケールの設定自体を実行させるのがもっとも安全です。

定期的に複数の文字セットで仕事をしている場合は、Unicode とUTF-8 ロケールを 使う事を強く推奨します。Unicode は同じ時にメッセージ中でほぼすべての文字を 表現できます。Unicode ロケールを使わない場合、使用しているロケールでは 表現できない文字を含むめっーセージを受け取ることがあるかもしれません。 そのようなメッセージを表示、返信、転送する場合、情報が失われ、メッセージが 使用できなくなる可能性があります(あなただけではなく、受信者にも、おかしく なった部分は、情報を推測することができないため元に戻すことができません)。

Unicode ロケールはすべての変換を不要にし、変換エラーのリスクをなくします。 また、Mutt と外部プログラムとの間での、文字セットに関する間違った期待を なくします。

ターミナルエミュレータも現在のロケールに対して適切に設定されねばなりません。 ターミナルエミュレータは通常、環境変数のロケールを使いません ので、個別に設定する必要があります。ターミナルが正しく設定されていないと、 Mutt はランダムで期待されない文字(疑問符、8進コード、あるいはランダムなグリフ) を表示するかもしれず、期待したとおりにフォーマット文字列が動かないかもしれず、 非ASCII文字を入力できないかもしれず、さらにそのほかの不具合があるかもしれません。 データは常時バイトで表示されるので、正しい設定はマシンにとってとても重要で、 すべての文字セットは同じに見えるようにします

注意: システムとライブラリ機能のロケールに期待しているものと、 Mutt に指定されたロケールとの間に何らかのミスマッチがあると、 非ASCIIでの入力動作に不具合が生じる可能性があります。この場合、一見すると ランダムな場所で失敗します。ローカルのメール処理だけが影響を受けるわけでは ないので、この警告は真摯に受け止める必要があります。送信メッセージは不正な文字 セット情報を伝搬するかもしれないので、受信者も同じように 扱うことになってしまいます。多くの場合、$charsetを直接設定 する必要性は、Mutt の問題ではなく、ターミナルと環境変数の設定の問題です。

公式に割り当てられ、知られている文字セットの一覧は、 IANAにあり、 ローカルでサポートされているロケールは locale -aを実行することで分かります。

2. 正規表現

Mutt におけるすべての文字列パターンは、より複雑なpatterns における文字列パターンも含めて、すべてPOSIX 拡張の正規表現(regexp) (egrep や GNU awk で使われている文法とほぼ同じ)を使って指定しなくてはなりません。 便宜のため、以下にこの文法の簡単な説明を含めました。

検索は、パターンに一つでも大文字があれば文字の大小を意識し、それ以外は大小 を意識しません。

Note

\は、初期化コマンドの中で使う場合には、\\のように くくらなければなりません。

正規表現は一つのパターンで何種類かの文字列を表します。 正規表現は代数表現と 同じように、より小さな式を色々な演算子で組み合わせて構築されます。

Note

正規表現は、「"」や「'」で囲んだり区切ったりできます。これは正規表現が 空白文字を含む場合に便利です。区切り記号「"」と「'」の 処理に関するさらに 詳細な情報は、Syntax of Initialization Filesを参照してください。 そのままの記号として「"」や「'」に合致させるには、 記号の前に「\」(バックスラッシュ) をつけてください。

文字ひとつに一致する正規表現が、基本となる単位です。すべての英字と数字を含む ほとんどの文字は、自分自身に一致する正規表現です。特殊な意味を持つメタ文字記号は、 前にバックスラッシュを付けることによって 本来の記号に一致します。

ピリオド . は任意の文字に一致します。サーカムフレックス ^とドル記号$はそれぞれ、行の最初と最後という、 文字ではない部分に合致するメタ文字です。

[] で囲われた文字のリストは、その中のどの 1文字にも一致します。そのリストの先頭の文字がサーカムフレックス^ の場合は、そのリストにない文字に一致します。たとえば、 正規表現 [0123456789] は任意の十進数の1文字に一致します。 ハイフン -を、ある範囲内における最初と最後の文字の間に置けば、 その範囲の ASCII 文字全体を指定できます。リストの中ではほとんどのメタ文字から 特別な意味がなくなります。文字]そのものをリストに含めるには、 リストの最初に置きます。 同様に、文字^そのものを含めたい場合には、 最初以外のどこかに置きます。そして、ハイフン - そのものを含めたい 場合にはリストの最後に置きます。

特定の名前付き文字クラスがあらかじめ定義されています。文字クラスは、 [:、クラスを表すキーワード、:] という形になっています。 以下 Table 4.1, “POSIX 正規表現文字クラス” のクラスは POSIX 標準で 定義されているものです。

Table 4.1. POSIX 正規表現文字クラス

文字クラス説明
[:alnum:]アルファベットと数字
[:alpha:]アルファベット
[:blank:]空白も他はタブ文字
[:cntrl:]制御文字
[:digit:]数字
[:graph:]印刷かつ表示可能な文字(空白は印刷可能だが不可視、aは両方とも可)
[:lower:]アルファベット小文字
[:print:]印刷可能文字(制御文字以外)
[:punct:]記号(英字、数字、制御文字、空白以外の文字)
[:space:]スペース(空白文字、タブと改ページなど)
[:upper:]アルファベット大文字
[:xdigit:]16進数

文字クラスは、文字リストの括弧内の正規表現でのみ有効です。

Note

このクラス名に付いている角括弧はシンボル名の一部であり、リストを囲む角括弧に 加えて、さらに必要になるということに注意してください。たとえば、 [[:digit:]][0-9]と同じです。

さらに二つの特殊シーケンスが文字リスト中で使えます。それらは非ASCII文字セットに 適用されるもので、以下のように、複数の文字で表現される単一の記号(照合要素と 呼びます)、および照合や整列の目的で、同等のいくつかの文字を含めることができます。

照合記号

照合記号は複数文字の照合要素を [..]で括ったものです。 たとえば、ch が照合要素だとすると、[[.ch.]]が の照合要素に一致する正規表現となります。しかし、[ch]というように 記述すると、c 又は h のどちらかに一致する正規表現に なってしまいます。

等価クラス

等価クラスは、ロケール個別にに定義した、文字リストと等価なものの名前です。 名前は[==]で囲みます。たとえば、名前eは grave (è)付きのe, acute (é)付きのeと ただのeすべてを表すのに使えます。この場合、 [[=e=]]は、任意の、grave 付きのe (è)、acute 付きのe (é)とeに一致する正規表現になります。

一文字に一致する正規表現は、Table 4.2, “正規表現の繰り返し演算子”で説明されている、 いくつかある繰り返し演算子のうちのいずれかを後置することができます。

Table 4.2. 正規表現の繰り返し演算子

オペレータ説明
?この記号の前にあるアイテムは、あってもなくても良く、あっても一回しか一致しない
*この記号の前のアイテムは 0 回でもそれ以上でも一致する
+この記号の前のアイテムは一回以上あれば一致する
{n}この前のアイテムは、きっちりn回なら一致する
{n,}この前のアイテムはn回以上で一致する
{,m}この前のアイテムはm回まで一致する
{n,m}この前のアイテムはn回以上m 回までなら一致する

二つの正規表現を連結することができます。その結果できた正規表現が一致するのは、それぞれに一致する 文字列をその順番に並べたものです。

二つの正規表現は中間演算子|で連結することもでき、二つをこのように 連結してできる正規表現は、いずれかの部分式に一致する文字列に一致します。

繰り返し演算子は連結演算子より優先します。連結演算子は、代替表現より優先します。

Note

in Table 4.3, “GNU 拡張正規表現”. Mutt を内蔵された正規表現エンジンを含む形でコンパイルしていれば、 Table 4.3, “GNU 拡張正規表現”で示されている演算子を正規表現の中で使うことができます。

Table 4.3. GNU 拡張正規表現

正規表現説明
\\y単語が開始または終了する部分に一致
\\B単語の中にある空文字列に一致
\\<単語の開始部分に一致
\\>単語の終了部分に一致
\\w単語を構成する文字(英文字、数字あるいは下線)に一致
\\W単語を構成する文字以外に一致
\\`バッファ(文字列)の先頭に一致
\\'バッファの最後の空の文字列に一致

これらの演算子は POSIX で定められていないため、これらを標準のライブラリとして 使えたり、使えなかったりするシステムがあることに注意してください。

3. パターン: 検索、制限とタグ付け

3.1. パターンモディファイア

Mutt の多くのコマンドでは、パターンマッチング機能使用できます (limit, tag-pattern,delete-pattern など)。Table 4.4, “パターンモディファイア”で、メッセージを選択するためのいくつかの方法を 示します。

Table 4.4. パターンモディファイア

パターンモディファイア説明
~Aすべてのメッセージ
~b EXPRメッセージ本文にEXPRを含むメッセージ ***)
=b STRINGIMAPが有効な場合、~b と似ているが、各メッセージをダウンロードしてローカルに検索する代わりに、サーバ上でSTRINGを検索
~B EXPRメッセージ本文のどこかにEXPRを含むメッセージ ***)
=B STRINGIMAPが有効な場合、~B と似ているが、各メッセージをダウンロードしてローカルに検索する代わりに、サーバ上でSTRINGを検索
~c EXPREXPRに Cc: で送られているメッセージ
%c GROUPGROUPメンバの誰かに Cc: で送られているメッセージ
~C EXPREXPR が to: か cc: のメッセージ
%C GROUPGROUPの誰かに to: か cc: で送られているメッセージ
~d [MIN]-[MAX]日付の範囲内で date-sent になっているメッセージ
~D削除されるメッセージ
~e EXPRSenderフィールドにEXPRを含むメッセージ
%e GROUPSenderフィールドにGROUPのメンバを含むメッセージ
~E期限切れのメッセージ
~Fフラグ付きのメッセージ
~f EXPREXPRから送られたメッセージ
%f GROUPGROUPの誰かから送られたメッセージ
~g暗号で署名されているメッセージ
~G暗号化されているメッセージ
~h EXPRメッセージヘッダにEXPRを含むメッセージ ***)
=h STRINGIMAPが有効な場合、 ~h と似ているが、各メッセージをダウンロードしてローカルに検索する代わりに、サーバ上でSTRINGを検索; STRINGheader: substringの形でなければならない(以下参照)。
~H EXPREXPRに一致するスパム属性を持つメッセージ
~i EXPRMessage-IDフィールドがEXPRに一致するメッセージ
~kPGPの鍵を持つメッセージ
~L EXPREXPRが出したか受け取ったか、いずれかのメッセージ
%L GROUPGROUPのメンバの誰かが出したか受け取ったか、いずれかのメッセージ
~l既知のメーリングリストへ宛てたメッセージ
~m [MIN]-[MAX]MIN to MAX範囲内のメッセージ *)
~M EXPRmime Content-Type が EXPRに一致するメッセージ ***)
~n [MIN]-[MAX]MIN to MAXの範囲のスコアを持つメッセージ *)
~N新しいメッセージ
~O古いメッセージ
~p自分宛のメッセージ($from, alternates, とローカルの account/hostname 情報を参照する)
~P自分が送信したメッセージ($from, alternates, とローカルの account/hostname 情報を参照する)
~Q返信済みのメッセージ
~r [MIN]-[MAX]受信日付が日付の範囲内にあるメッセージ
~R既読メッセージ
~s EXPRSubjectフィールド内にEXPRがあるメッセージ
~S置き換えられたメッセージ
~t EXPREXPRに宛てたメッセージ
~Tタグ付きのメッセージ
~u購読しているメーリングリスト宛てのメッセージ
~U未読のメッセージ
~v折りたたんだスレッドにあるメッセージ
~V暗号検証済みメッセージ
~x EXPRReferences 又は In-Reply-Toフィールド中にEXPRを含むメッセージ
~X [MIN]-[MAX]MIN から MAX の添付があるメッセージ *) ***)
~y EXPRX-Label中にEXPRを含むメッセージ
~z [MIN]-[MAX]サイズがMIN から MAXの範囲内のメッセージ *) **)
~=重複しているメッセージ($duplicate_threads)を参照
~$参照されていないメッセージ(スレッド表示が必要)
~(PATTERN)PATTERNに一致するメッセージを含むスレッド中のメッセージ 、例えば、~(~P) は、自分からのメッセージを含むすべてのスレッド
~<(PATTERN)直近の親がPATTERNに一致するメッセージ、 たとえば、~<(~P) は、自分のメッセージに対する返信
~>(PATTERN)直近の子がPATTERNに一致するメッセージ、 たとえば、~>(~P) は、自分が返信したメッセージ

ここで、EXPR正規表現で、 GROUPアドレスグループです。

*) <[MAX], >[MIN], [MIN]--[MAX] という形式も使えます。

**) キロバイトとメガバイトを表すための 接尾辞 KMも使えます。

***) これらのパターンは、各メッセージを読み込んでいるため、より遅くなることがあります。 IMAP を使う場合は、各メッセージをダウンロードする必要があります。 これらはmessage scoringには使えず、 インデックスの色づけには使わないことを推奨します。

パターン中で正規表現を使う場合は、特別な注意が必要です。具体的には、これらの パターンを Mutt が処理する場合、通常引用に使われるバックスラッシュ (\)を1段階だけ取り除きます。正規表現でバックスラッシュを使う場合は、 代わりに二つのバックスラッシュ(\\)を使う必要があります。

パターン名中で、 ~ の代わりに = を使う事で、Mutt に、EXPR を、 正規表現の代わりに単純な文字列として扱わせることができます。たとえば、 =b *.* は リテラル文字 *.* を含むすべての メッセージを見つけます。単純な文字列の一致は、正規表現よりも強力ではありませんが、 より高速になる可能性があります。

IMAP フォルダでは、文字列の一致 =b,=B=h は、すべてのメッセージをフェッチするのではなく、 サーバ上で実行されます。IMAP は =h を特別扱いします。 これは、header: substringの形である必要があり、ヘッダ名と部分的に 一致はしません。substring 部分は、単に特定のヘッダを含むメッセージを、値に 関係なく検索する場合には、省略することができます。

アドレスリストに一致するパターン(特に c, C, p, P と t)は、リスト全体の中で、 少なくとも1つ一致するのであれば、一致します。そのリストのすべての要素が一致している 事を確認したい場合は、パターンの前に、^を付ける必要があります。 以下の例では、受信者がドイツからのもののみを持つメールすべてに一致します。

Example 4.1. アドレスリスト中のすべてのアドレス一致の例

^~C \.de$

"@" モディファイアを使って定義した別名へのアドレスパターンマッチングを制限する ことができます。以下の例では、受信者がすべてドイツからで、別名リストに あるメッセージに一致する例です。

Example 4.2. 別名に限定されたマッチング

^@~C \.de$

定義済みの任意の別名に一致するためには、任意の文字列に一致する正規表現を使います。 以下の例では、メッセージの送信者が別名として定義済みのものに一致する例です。

Example 4.3. 任意の定義済み別名に一致

@~f .

3.2. 簡単な検索

Mutt はsimple searchesと呼ばれるものの二つのバージョンをサポートします。 これらは検索、制限および同等の操作ののために入力された問合せが、有効な パターンモディファイアを含んでいないように見えた場合に発行されます (すなわち、~, = 又は %のどれも含んでいない)。 問い合わせに前述の特別文字を含んでいる場合、バックスラッシュ(\)を 前置してエスケープしなければなりません。

最初のタイプは、Table 4.5, “単純なキーワード検索”から、 問い合わせ文字列が、キーワードの大文字小文字を区別しないで等しいかどうかを チェックするものです。もしそうならば、Mutt は示されたパターン修飾子を代わりに使います。 検索キーワードと競合するキーワードがある場合は、キーワードテーブルに一致するのを 防ぐために、正規表現にそれを変換する必要があります。 例えば、flagに一致するすべてのメッセージを検出したいが ($simple_searchを使って)、 フラグ付きのメッセージには一致したくない場合、[f]lagで 単純に検索します。

Table 4.5. 単純なキーワード検索

キーワードパターンモディファイア
all~A
.~A
^~A
del~D
flag~F
new~N
old~O
repl~Q
read~R
tag~T
unread~U

単純検索の2番目のタイプは、テンプレートとして、 $simple_searchを使う複雑な検索パターンを 構築するというものです。Mutt は適切に問合せを引用符でくくって挿入し、複雑に 構成された問合せを検索します。

3.3. ネスティングおよび論理演算子

論理積は一つ以上の基準を指定することで実行されます。例えば

~t mutt ~f elkins

は、受信リスト中にmuttという単語を含むもの ヘッダフィールド中にFromがある、elkins という単語を含むメッセージを選択します。

Mutt は、より複雑なパターンを作成するために、以下の演算子も認識します:

  • ! — 論理否定演算子

  • | — 論理和演算子

  • () — 論理グルーピング演算子

以下は、複雑な検索パターンの図示例です。このパターンは、 To 又は Ccフィールドにmuttを含まず、 かつ、elkinsから来たすべてのメッセージを選択します。

Example 4.4. パターン中での論理演算子の使用

!(~t mutt|~c mutt) ~f elkins

以下は、正規表現中で空白を使う例です('" はデリミタであることに注意してください)。これに合わせて、メールの題名は ^Junk +From +Me$に一致せねばならず、かつ、 Jim +SomebodyEd +SomeoneElseのどちらかから 来たものでなければなりません。

'~s "^Junk +From +Me$" ~f ("Jim +Somebody"|"Ed +SomeoneElse")'

Note

正規表現が括弧か、縦線("|")を含む場合、Mutt のパターン言語の異なった部分を 分離するためにも使う文字なので、単一か二重の引用符で式をくくる 必要があります。たとえば、引用符でくくっていない ~f "me@(mutt\.org|cs\.hmc\.edu)"は、括弧の組み合わせが 完結していません。これは、 ~f me@(mutt\.orgcs\.hmc\.edu) のように、2つの OR パターンに分割されてしまいます。これらは期待通りにはなりません。

3.4. 日付による検索

Mutt は二種類の日付、すなわち絶対日付と 相対日付に対応しています。

3.4.1. 絶対日付

日付は必ず DD/MM/YY か YYYYMMDD という形式で指定しなければなりません (ただし、月と年は現在の月と年が既定になっているので省略できます)。 正しい日付範囲の例は以下のようになります。

Limit to messages matching: ~d 20/1/95-31/10
Limit to messages matching: ~d 19950120-19951031  

最小値 (一番目) の日付を省略して-DD/MM/YY又は-YYYYMMDD だけ指定すると、それ以前のすべてのメッセージが選択されます。 最大値 (二番目) の日付を省略してDD/MM/YY-を指定すると、 その日以降のすべてのメッセージが選択されます。 ダッシュ(-)なしで一つだけ日付を指定すると、 その日付に送信されたメッセージだけが選択されます。

絶対日付には、誤差範囲を追加できます。誤差範囲とは、 符号 (+ or -)の後に数字と、Table 4.6, “日付の単位”にある単位を付加した ものです。特例として、符号を、同じプラスとマイナスの誤差範囲を付加することと 同じ事になる*に置き換えることができます。

Table 4.6. 日付の単位

単位説明
y
m
w
d

例: 2001 年 1 月 15 日の前後二週間ずつのメッセージを選択するには 以下のパターンを使用します。

Limit to messages matching: ~d 15/1/2001*2w

3.4.2. 相対日付

このタイプの日付は、現在の日付からの相対的な日付で、以下のように指定します。

  • >offsetoffsetよりも古いメッセージ

  • <offset は、offsetよりも新しいメッセージ

  • =offset は、ちょうどoffsetだけ経過したメッセージ

offsetは、Table 4.7, “相対日付の単位”にある単位のどれかを 付けた正の値で指定されます。

Table 4.7. 相対日付の単位

単位説明
y
m
w
d
H
M
S

例: 1ヶ月より古いメッセージを選択するには以下のようにします

Limit to messages matching: ~d <1m

Note

検索時に使うすべての日付はローカルのタイムゾーンに対する 相対なので、$index_formatの設定に %[...]フォーマットを含むように変更しないと、 メインインデックス中に表示される日付とは異なります

4. メッセージへのマーク付け

メールボックス中で他の場所に移動する時に、現在見ているメッセージを Mutt が 「覚えている」ようにさせると便利な場合があります。これには、既定で~に バインドされている、mark-message機能を使うことができます。 このキーを押すと、マークされたメッセージに識別子を入力します。このメッセージに 戻りたい場合、'を押し、以前に入力した名前を入力します。

(メッセージのマーキングは、Message-IDを検索して現在のメッセージに戻るマクロを 定義するためのショートカットそのものです。 $mark_macro_prefix 変数を定義することにより、 別の接頭辞を選ぶことができます。)

5. タグの使用

操作を実行するときに、一通ずつ扱うよりも、ひとまとめにしたメッセージを一度に 扱った方が良いことがあります。例えば、あるメーリングリスト宛てのメッセージを 別のフォルダにセーブするとか、指定した題名のメッセージをすべて削除すると いったものがあるでしょう。パターンに一致したメッセージすべてにタグを付けるには、 既定でshift-Tに割り当てられている <tag-pattern>機能を使います。あるいは、既定で tに割り当てられている<tag-message> 機能を手動で使う事で、個別のメッセージを選択できます。 Mutt のパターンマッチングについては patterns を参照してください。

お望みのメッセージにタグをつけたら、既定で;(セミコロン)に 割り当てられている、tag-prefix機能を使うことができます。 tag-prefix機能を使う場合、次の操作は、 そのような使い方の できる操作であれば、タグの付いたメッセージすべてに適用されます。 もし、$auto_tag変数が設定されている場合は、 次の操作はtag-prefixなしに、タグ付きメッセージに自動的に適用 されます。

macropush コマンド中では、 <tag-prefix-cond>機能が使えます。 タグ付きメッセージがない場合、Mutt は残りのマクロを食べて、 実行しないようにします。マクロに<end-cond>演算子が 出てきた所で、マクロを喰うのをやめます。そして、この演算子の あとのマクロを通常通り実行します。

6. フックの使用

hookとは、 他の、種々のプログラムにあるような、ある操作の 実行前に任意のコマンドを実行できるようにするものです。 例えば、読もうとしている メールボックスや送ろうとしているメールのあて先に基づいて設定を調整したい場合が あるとします。Mutt では、hookは設定オプションやコマンドに 合ったregular expression 又は pattern です。各タイプのhook についての詳細は以下を参照してください。

編集プロセスにおける概要については Message Composition Flow も参照してください。

Note

フックが設定を変更した場合、変更の効果は その mutt セッションの終わりまで続きます。 これは一般的に望み通りの動作ではありませんので、既定のフックを他の フックの前に追加して設定の既定値に復帰する必要があります。

Example 4.5. 既定の hook の指定

send-hook . 'unmy_hdr From:'
send-hook ~C'^b@b\.b$' my_hdr from: c@c.c

Example 4.5, “既定の hook の指定”においては、既定では、 $from$realname は上書きされません。メッセージをTo: または Cc: で <b@b.b> に送る場合、From: ヘッダは<c@c.c>に書き換えられます。

6.1. フックにおけるメッセージ一致条件

メッセージに対して働くフック(message-hook, reply-hook, send-hook, send2-hook, save-hook, fcc-hook, index-format-hook) は、若干異なった方法で評価されます。他のタイプのフックは regular expressionで十分です。しかし、 メッセージを扱う際には、異なった目的のために、異なった基準でマッチング する必要があるため、より細かい制御が必要です。

Mutt では、フックコマンドにおけるメッセージ一致条件に、 search pattern言語を使えます。これは、 メッセージのヘッダ(たとえば、from, to, cc, date, subject など)からMutt が抽出した 情報に一致する演算子に限定されることを除いて、メールボックスを 制限検索する時と全く同じように動作します。

たとえば、送信メッセージに基づいて返信先を特定のアドレスに設定したい場合、 次のようにすることができます。

send-hook '~t ^me@cs\.hmc\.edu$' 'my_hdr From: Mutt User <user@host>'

これは、me@cs.hmc.eduに宛ててメールを送る時に、 設定されたコマンドを実行する例です。

しかし、一致するパターンを完全な形の検索言語で書かなければならないというわけでは ありません。 他のフック同様、簡単なregular expressionで 書くこともでき、この場合、Mutt は、 $default_hook変数によって指定された 翻訳機能を使って、指定したパターンを完全な言語にします。パターンは、フックが 定義された時点で翻訳されるので、 その時有効だった $default_hook の値が使われます。

6.2. フックにおけるメールボックスのマッチング

メールボックスに対して一致するフック(folder-hook, mbox-hook)は、regular expression 構文と、regexpパラメータ上のmailbox shortcut の両方に適用されます。これらには若干重複がありますので、正規表現の最初の文字には 特別な注意をはらう必要があります。

# ^ は"the current mailbox" に展開されますが "beginning of string" ではありません:
folder-hook ^/home/user/Mail/bar "set sort=threads"

# If you want ^ to be interpreted as "beginning of string", one workaround
# is to enclose the regexp in parenthesis:
folder-hook (^/home/user/Mail/bar) "set sort=threads"

# This will expand to the default save folder for the alias "imap.example.com", which
# is probably not what you want:
folder-hook @imap.example.com "set sort=threads"

# 解決策は括弧かバックスラッシュを使う事です:
folder-hook (@imap.example.com) "set sort=threads"
folder-hook '\@imap.example.com' "set sort=threads"

regex パラメータ上のメールボックスショートカット展開は、フックがメールボックスに 一致する時ではなく、フックが最初に解析される時に行われることに注意してください。 Mutt の起動時と .muttrc を読み出す時には、いくつかのメールボックスショートカットは 使えないかもしれません。たとえば、"current mailbox" shortcut, ^, は まだメールボックスが何もオープンされていないために、空の文字列に展開されます。 Mutt はこの場合か、メールボックスショートカットの結果が空の regexpになった場合、 エラーを発行します。

7. 環境の操作(Managing the Environment)

setenvunsetenv オペレータを使って、 子プロセスに、Mutt が走査する環境を変更することができます (備考: これはMutt形式の文法に従い、シェル形式のものではありません!)。 また、?文字を前置することによって、環境変数の現在の値を 問合せすることもできます。

setenv TERM vt100
setenv ORGANIZATION "The Mutt Development Team"
unsetenv DISPLAY
setenv ?LESS

8. 外部アドレスの問い合わせ

Mutt は、LDAP, ph/qi, bbdb, NIS といった 外部ディレクトリデータベースへの接続を サポートしており、これは 簡単なインタフェイスで Mutt に接続するラッパ スクリプトを通して実現します。 $query_command 変数を使って、 利用するラッパー コマンドを指定します。例は以下のようになります。

set query_command = "mutt_ldap_query.pl %s"

ラッパースクリプトはコマンドライン上で問い合わせを受け付けます。これは、1行の メッセージを返し、次に一致結果がそれぞれ一行ずつ並び、その各行にはタブで 分割された、「アドレス、名前、その他付加情報」がこの順で含まれます。 エラーが発生した場合か、一致するアドレスがない場合は、0以外の終了コードと 1行のエラーメッセージが返ります。

複数の結果が返る時の例は以下です:

Searching database ... 20 entries ... 3 matching:
me@cs.hmc.edu           Michael Elkins  mutt dude
blong@fiction.net       Brandon Long    mutt and more
roessler@does-not-exist.org        Thomas Roessler mutt pgp

Mutt の問い合わせ機能にアクセスする仕組みは二つあります。一つは問い合わせを インデックスメニューから <query>機能 (既定値: Q) を 使って行なう仕組みです。これは、問い合わせ内容の入力要求を表示し、次に、 一致したレスポンスの一覧である問い合わせメニューを表示します。問い合わせ メニューからは、選んだアドレスにエイリアスを作成したり メールしたりすることが できます。タグを付けて複数アドレスにメールすることや、新しく問い合わせを始めたり、 新規問い合わせを現在の結果内容に追加する こともできます。

問い合わせ機能にアクセスするもう一つの仕組みは、アドレス補完という、エイリアス 補完と同じような仕組みです。アドレス入力のプロンプトならどれででも <complete-query>機能 (既定値: ^T) を使って、アドレスの うちの、 その時点までに入力済みの部分に基づいた問い合わせを実行できます。 エイリアス のように、どこまで入力済みかについて Mutt は 最後のスペースかカンマまで 戻って調べます。その問い合わせに結果が一つだけであれば、Mutt はその場で アドレスを展開します。結果が複数ならば Mutt は問い合わせメニューに移ります。 問い合わせメニューでは、プロンプトに追加するアドレスを一つでも複数でも選択する ことができます。

9. メールボックスの形式

Mutt は mbox, MMDF, MH と Maildir という四つのメールボックスについて、読み書きを サポートしています。メールボックスのタイプは自動判断されるので、タイプの違いを指示 する必要はありません。新規メールボックス作成時には $mbox_type変数で指定される既定値を使います。 簡単なフォーマットの説明は以下の通りです。

mbox. This is a widely used mailbox format for UNIX. All messages are stored in a single file. Each message has a line of the form: mbox。これは UNIX でもっとも広く使われている形式です。 メッセージは一つのファイルにすべて格納されます。各メッセージには、

From me@cs.hmc.edu Fri, 11 Apr 1997 11:44:56 PST

という、メッセージの始まりを表す形式の行が一行あります(これは しばしば From_行として言及されます)。mbox フォーマットはメールボックスの ロックを必要とし、また、クライアントが同時に書き込みを行ったり、From_ 行を 誤って解釈したりして、メールボックスの破損が起こりやすくなっています。 環境に依存しますが、新しいメールの検出は信頼性に欠ける場合があります。Mbox フォルダは開くのが早く、アーカイブが簡単です。

MMDF。これはmboxフォーマットの変形です。 各メッセージは^A^A^A^A(4つのCtrl-A)と言う行で囲まれています。 mboxに発生する同じ問題があります(メッセージ本文に4つのCtrl-Aが含まれることも あるので、正しいメッセージ区切り文字を見つけることもです)。

MHmboxMMDF 新的な変形であり、 メールボックスはディレクトリで構成され、各メッセージが別々の ファイルに格納されています。ファイル名はメッセージ番号を示します(しかし、この 番号は Mutt が表示するメッセージ番号とは関係ありません)。削除されたメッセージは ファイル名が変更されて、 先頭にカンマ(,)が付くだけです。Mutt は (MH のメールボックスと通常のディレクトリを区別するのに必要な) .mh_sequences.xmhcache ファイル のどちらかを探すことにより、このタイプのメールボックスを検出します。MH はより クライアントからの同時書き込みに対してより頑強ですが、それでもフラグの消失に 悩まされるかもしれません。メッセージの破損は mbox/mmdf よりは起こりにくくなります。 これは、通常、たくさんの小さなファイルを読まねばならないため、mbox/mmdf と 比較すると開くのに時間がかかります(Mutt は Section 8.1, “ヘッダキャッシング” to greatly speed this process up)を提供します。 環境に依存しますが、MH はディスクスペースの効率が悪いです。

Maildir。メールボックス形式の最新版で、Qmail MTA (sendmail の置き換え) で使われています。MHと似ていますが、 異なるのは、メールボックスに三つのサブディレクトリ、 tmp, newcurが追加されるある点です。 メッセージのファイル名は、二つのプログラムが同じメールボックスを NFS 越しに 書き込んでいるときでさえも重ならないような方法で選ばれています。これは、 ファイルのロックが必要なく、破損が非常にまれ、ということを意味します。 Maildir は、Mutt ではキャッシュなしだとオープンするのがかなり遅く、環境にも依存 しますが、ディスクスペースの効率がとても悪いです。metadeta に対する追加のファイルは 不要なので(メッセージファイル名中に埋め込まれます)、Maildir はロックが不要で、 ファイルレベルの同期ツールを使うことで異なったマシンへ同期するのが容易です。

10. メールボックスのショートカット

特定のメールボックスを指す組み込みショートカット (省略形) が 幾つか用意されています。 ショートカットは、ファイルやメールボックスの場所やパスに関連した設定変数を入力する 場面ならどこででも使えます。これらは文字列のはじめでのみ動作することに注意してください。

Table 4.8. メールボックスショートカット

ショートカット参照するもの
!$spoolfile (受信用) メールボックスを指す
>$mbox ファイルを指す
<$recordファイルを指す
^現在のメールボックス
- 又は !!最後に閲覧したファイル
~ホームディレクトリ
= 又は +your $folderディレクトリ
@aliasこのエイリアスのアドレスで識別されるdefault save folderを指す

たとえば、送信メッセージのコピーをそれが作成されたフォルダ格納するには、 $record設定するために、 folder-hookが使えます。

  folder-hook . 'set record=^'

注意: $record ショートカット < は、複数のメールボックスと、 $fcc_delimiter とは関係なく置き換え られます。複数の Fcc メールボックスを使用していて、 < メールボックスショートカットを使いたい 場合は、プライマリメールボックスに $record を 設定し、メッセージ編集中にすべてのメールボックスに対して fcc-hook を設定することを推奨します。

11. メーリングリストの取り扱い

Mutt には、大量のメールの取り扱いを容易にする設定オプションがいくつかあります。 まず最初にしなければならないのは、どのアドレスを メーリングリストだとみなすか (仕組みとしてはメーリングリストでなくても構いませんが、これがもっともよく使われる 用途です)、および、 どのリストを講読しているかを Mutt に知らせることです。 これは.muttrclistssubscribe コマンドを使って行ないます。代替又は追加で、 List-Postヘッダ中にアドレスが見つかった時に、自動的に購読する、 $auto_subscribeを設定することもできます。

これで Mutt は何がメイリングリストかを知っているので、できることが幾つか増えました。 その一つ目は、 どのリストを経由してメッセージを受信したか (すなわち、講読中の リスト名) をindexメニューの画面に表示できることです。 これは同じメールボックス内にある個人用メールとリストメールを区別するのに役立ちます。 $index_format変数中で、 expando %L は、listToフィールドに あった場合、To <list>を表示し、それがCc フィールドにあった場合はCc <list>を返します (それ以外は、メールの作成者を返します)。

メーリングリストのメッセージ中のToCc フィールドは、どんどん 膨れ上がっていってしまうということがしばしばあります。 多くの人は、返信しようとするメッセージの差出人をわざわざそうしたフィールドから 削除したりしないので、結果として同じものが複数その人に送られてしまうことに なります。<list-reply>機能は、既定では indexメニューとpagerメニューでは Lに割り当てられていますが、すべての宛先ではなく、既知の メーリングリストアドレスにのみ返信するので、このようなゴミを減らす助けになります (Mail-Followup-Toで指定された場合を除きます。以下参照)。

Mutt はMail-Followup-Toヘッダもサポートします。 一つまたはそれ以上の既知メーリングリストを含む受信先一覧にメールを送る時で、 $followup_toオプションが設定されている場合、 Mutt は Mail-Followup-To ヘッダを生成します。受信先のどれかが購読している メーリングリストの場合、このヘッダは、自分自身のアドレスを含まない、この メッセージを送るすべての受信先を含みます。これは、このメッセージへの group-replies 又は list-replies (followupsとしても知られています) メッセージのオリジナルの受信者にのみ送信され、それとは別に自分には送る必要は ありません。すなわち、購読しているメーリングリストのどれかを通じて、 自分自身のメールを受け取ることになります。受信先が、購読しているメーリングリスト に一つもない場合、ヘッダには、返信のコピーを自分が確実に受け取るように、 自分自身のアドレスも含みます。

逆に、Mail-Followup-Toがあるメッセージに、 group-replying 又は list-replying を行う場合、Mutt は $honor_followup_to設定変数が 設定されている場合、このヘッダを考慮します。この場合に list-replyを使うと、 Mail-Followup-To中の、受信先の一覧中に指定されていなくても、 メーリングリストに返信が送られるようになります。

Note

ヘッダ編集が有効な場合、Mail-Followup-Toヘッダを手動で作成 できます。Mutt は送信時にこのへッダが存在しない場合にだけ、 このへッダを自動 生成します。

一部のメーリングリスト管理者が使っている別の手法は、メッセージの差出人 ではなく、メーリングリストのアドレスを指すReply-To フィールドを生成するというものです。 これは、送信者に私的に直接返信 しようとするときに 問題を引き起こすかもしれません。なぜなら大半のメール クライアントは、自動的に Reply-Toフィールドのアドレスへ 返信するからです。Mutt は$reply_to変数を 使って、どちらのアドレスに返信するかを決める手助けをします。 ask-yes又はask-noに設定する場合、 Reply-Toフィールド中のアドレスを使うかどうかを聞いてきますが、 そうでない場合、Fromフィールドのアドレスに直接返信します。 yesに設定されている場合、存在していれば、 Reply-Toフィールドが使われます。

X-Label:ラベルフィールドは、メーリングリストまたは リストされた題名をさらに識別することができます。(あるいは、単に、 メッセージへ個別に註釈を付けることも)。 $index_format変数の %y%Y expandos はX-Label: フィールドをインデックス中に展開するのに使え、Mutt のパターン一致では、 ~y 選択肢を使う事で、正規表現でX-Label: を検索できます。X-Label:は標準的なへッダフィールドでは ありませんが、 procmail その他のメールフィルタリングエージェントで簡単に 挿入できます。

既定で、yに割り当てられているedit-label コマンドを使って、Mutt 内で、X-Label:フィールドを変更/削除 できます。これは、タグ付きメッセージについても同じように動作します。 edit-label機能中で、<complete> バインディング(通常は TAB)を押すと、 現在使っているすべてのラベルに対して補完を実行します。

最後に、Mutt はメールボックスをthreadssortする機能があります。スレッドとは、 同じ話題でつながっているメッセージの集まりです。これは通常、木のような 構造へとまとめられ、 あるメッセージとそれに対する返信すべてが画像的に 表現されます。スレッド化されたニュースクライアントを使ったことがあれば、 それと同じ概念だと思ってください。これによって流量の大きなメーリングリストの 扱いが容易になります。なぜなら、興味がなければ簡単にスレッドごと削除する ことができ、価値ある話題を素早く見つけられるからです。

12. 表示の難読化(Munging)

コンソールやターミナル・ウィンドウ中で作業をする場合、特定の情報要素を 非破壊的な方法で変更できること、すなわち、情報自体が格納されている値を 変更せず、表示方法を変更できると便利なことがよくあります。 これは、特に、どこかで再生産されていたり、二次的な興味のどちらかである 余計なメタデータで汚染されている、メッセージの題名の場合に顕著です。

subjectrx pattern replacement
unsubjectrx { * | pattern }

subjectrxは正規表現のpatternで、 メッセージの題名中で見つかった場合、題名をreplacementの値に 置き換えます。replacement はspamコマンドと 同じように置き換える題名です。%Lは一致したものの左側に 対するテキスト、%Rは一致したものの右側に対するテキスト、 %1は一致したものの最初のサブグループです(以下同様)。 単に一致を簡単に消したいのであれば、それを%L%Rに設定します。 subjectrxコマンドはいくつでも共存できます。

replacementの値は題名全体を置き換え、一致したもののみでは ないことに十分注意してください。

unsubjectrxは置き換えリストから与えられたsubjectrx を 取り除きます。パターンとして*が指定された場合、 すべての置換定義が削除されます。

Example 4.6. 題名の難読化

# Erase [rt #12345] tags from Request Tracker (RT) e-mails
subjectrx '\[rt #[0-9]+\] *' '%L%R'

# Servicedesk is another RT that sends more complex subjects.
# Keep the ticket number.
subjectrx '\[servicedesk #([0-9]+)\] ([^.]+)\.([^.]+) - (new|open|pending|update) - ' '%L[#%1] %R'

# Strip out annoying [listname] prefixes in subjects
subjectrx '\[[^]]*\]:? *' '%L%R'

13. 新しいメールの検出

Mutt は複数のフォルダを設定でき、それらはすべて、新規メールの検出ができます (詳細はSection 15, “受信メールのモニタ”を参照してください)。

13.1. 新規メール検出の方式

Mboxと Mmdf フォルダでは、新規メールは、ファイルのアクセス時間と変更時間を 比較することで検出します。Mutt は、最後の変更後にアクセスがなかった場合、 フォルダに新規メールがあると推測します。bifffrmやその他の、メールボックスにアクセスするユーティリティは、 Mutt に、そのメールボックスの新規メール検出が全くできなくなるようにしてしまう かもしれません。Mutt がフォルダへの新規メールを検出出来なくなる可能性がある その他の例としては、バックアップツール(アクセス時間を更新するもの)やアクセス時間の 更新をサポートしないようにマウントしたファイルシステム(Linuxでは、 relatimeオプション)があります。

Note

以前の Mutt リリースとは対照的に、フォルダが、現在のものは、一度も読み取りされず、 削除もされず、旧メールとして、マークもされない、少なくとも一つのメッセージを 含んでいる場合、アクセス時刻を適切にリセットすることにより、フォルダの新規 メールステータスを維持するようになっています。

Mbox または Mmdf フォルダでの新規メール検出が信頼できないように見える場合、 $check_mbox_sizeオプションを使って、 Mutt が新規メールの検出のために、ファイルサイズの追跡と参照できるように します。ただし、サイズが変わらない変更の場合には動作しません。

Maildir での新規メールは、削除マークがついていない ($maildir_trashを参照) new/サブディレクトリ中に1つのメッセージがあることを 仮定しています。MH フォルダでは、少なくとも、一つのメッセージが $mh_seq_unseen によって指定された、 unseenなシーケンス中にある場合、新規メールがあると判断されます。

Mutt は POP3 フォルダに対しては新規メールの確認をしません。現在開いているフォルダに 対して定期的にチェックをするだけです(それがPOP3フォルダの場合)。

IMAP では、既定で、Mutt は新規メールを検出するために、サーバによって提供される、 最新のメッセージ数を使います。$imap_idleオプションが 設定されていれば、サーバによって情報が通知されれば、 IMAP IDLE 拡張を使います。

$mail_check_recentオプションは、Mutt が すでに閲覧したメールボックスで新規メールがあるかどうかを通知するかどうかを 変更します。設定した場合(既定値)、最後にメールボックスをオープンした時間から、 新規メールが来た時のみ通知します。設定しない場合、メールボックス中に なんらかの新規メールが来た場合に通知します。

13.2. 新規メールのポーリング

インデックスメニューで、アイドル状態($timeoutも 参照)のとき、Mutt は定期的にmailboxesコマンドで 設定されたすべてのフォルダの新規メールをチェックします(-nopoll フラグが指定されているものを除く)。間隔は、フォルダタイプに よって異なります。ローカル/IMAP フォルダは $mail_checkで、POPフォルダは、 $pop_checkintervalで決まります。

インデックスメニュー外では、既定ではどのキーにも割り当てられていませんが、 <check-new>機能をディレクトリブラウザが使う事で、 新規メールのチェックをサポートします。タブキーを押すと、 mailboxesコマンドで指定された、ファイルを表示するメニューが ポップアップし、どこが新規メールを含むかを表示します。-y オプションを付けてコマンドラインから起動すると、Mutt は自動的にこのモードに 入ります。

ページャ、インデックスとディレクトリブラウザメニューでは、 画面の最下部にあるコマンド行中に、新規メールがあるフォルダの一覧を表示する、 <buffy-list>機能(既定では.に割り当て られています)が含まれています。

インデックスでは、既定で、Mutt はステータスバーに、新規メールが含まれている メールボックスの数を表示します。詳細は、 $status_format変数を参照してください。

フォルダを変更した時、Mutt は(もしもあれば)新規メールを含むメールボックスの一覧 から最初のフォルダをプロンプトに埋め込みます。<Space>を 押すと、新規メールがあるフォルダを順番に表示します。(既定ではどのキーにも 割り当てられていませんが)インデックス中で<next-unread-mailbox> 機能を使うと、(もしもあれば)未読のメールがある次のフォルダをすぐにオープンできます。

13.3. 新規メールのモニタ

ファイルをモニタするInotifyがサポートされている場合 (Linux のみ)で、コンパイル時に無効になっていない場合、Mutt は mailboxesコマンドで 設定されたすべてのフォルダへの新規メールについてすぐに通知します (-nopoll フラグが指定されているものを除く)。 mailbox formatにも依存しますが、 (Maildirを除いて)追加された古いメールも追跡されます。

使用可能な設定変数はありません。トレース出力は、 コマンド行オプション-d3で、デバッグが有効な時に行われます。より小さい レベル 2 ではエラーのみを表示し、五より大きいレベルでは生のInotifyイベントを 表示します。

Note

新規メールについてのイベント取得は、基礎となるメカニズムの能力によって制限 されます。Inotifyは、ローカルな変更のみ通知します。すなわち、 メールに対する新規メールの通知は、Mutt と同じマシン上でのエージェントによって 配送されたメールについては動作しますが、NFS によるネットワークファイルシステム 上でリモートで配信されたものについては動作しません。同様に、モニタリングハンドルは ごく希な条件で失敗するかもしれないので、この機能に完全な信頼をおかない方がよいです。

13.4. メールボックスメッセージ数の計算

$mail_check_statsが設定されている場合、 Mutt は定期的に未読、フラグ付き、および全体のメッセージ数を、 mailboxesコマンドで監視されている各メールボックス毎に 計算します。この計算は、新規メールのポーリングと同じ時に行われますが、 別のタイマー $mail_check_stats_interval によって制御されます。

サイドバーではこれらのメッセージ数を表示できます。 $sidebar_formatを参照してください。

14. スレッドの編集

Mutt には、壊れたスレッドを動的に作り直す機能があります。スレッドが壊れる理由は 相手の設定ミスや癖などです。これにより、話を追いにくくする迷惑行為からメールボックスを きれいにできます。

14.1. スレッドの接続

返信時にIn-Reply-To:References:ヘッダを正しく 設定することを忘れる傾向があります。この結果、Mutt は、正しいスレッドを 推測する十分な情報がないので、議論が途切れてしまいます。これを修正するには、 返信にタグをつけ、次に、親メッセージに移動し、<link-threads> 機能を使います(既定では & に割り当てられています)。そうすると返信は 親メッセージに接続されます。

また、複数の子に対して、<tag-prefix>コマンド (;)か、$auto_tagオプションを使い、 それらにタグをつけることで接続できます。

14.2. スレッドの分割

メーリングリストで新しい話題を始めるとき、適当なメッセージにreplyを押して、 題名だけまったく無関係なものに変えるという 悪い癖を持つ人がいます。これは <break-thread>機能(既定で # に割り当て)を使うことで修正できます。 この機能で、そのメッセージ以降のスレッドを まったく別のスレッドにしてしまいます。

15. 配送状態通知(Delivery Status Notification:DSN)のサポート

RFC1894 は、電子メイルメッセイジの状態に関する情報を伝達するための、一連の MIME コンテントタイプを定義しています。これはreturn receiptsと 考えることができます。

DSN をサポートするための2つの変数があります。 $dsn_notify は異なった結果 (たとえば、失敗したメッセージや配送済みメッセージなど)に対して証書を要求するのに 使います。$dsn_returnは、証書に付随して返信される メッセージがどのくらいか(ヘッダあるいはメッセージ全体)を要求します。

メール配信時に$sendmailを使うと、 Berkeley sendmail 8.8.x (またはそれ以上)か、Sendmail互換の、DSN コマンド行オプションを サポートする MTA のどちらかを使う必要があります。 -N と -R オプションは、 どの種類のステータスメッセージが戻ってこなければならないかの要求を作成するために、 メールクライアントによって使われます。DSN がサポートされているかどうか、MTA の ドキュメントを見てください。

$smtp_url を使う SMTP 配送では、Mutt がDSN を要求するか 否かを試みるかどうかは、サーバから通知された情報に依存します。

16. URL 上での WWW ブラウザの起動

メッセージに URL が含まれている場合、URL すべてをを含むメニューを取得し、そのうちの1つで WWW ブラウザを起動すると効率的です。この機能は、 https://github.com/sigpipe/urlview にある 外部の urlview プログラムと以下の設定コマンドで提供されます。

macro index \cb |urlview\n
macro pager \cb |urlview\n

17. テキストの表示(echo)

使用法:

echo message

"echo" コマンドを使って、メッセージウィンドウにメッセージを表示することができます。 これは、マクロの実行終了時に便利です。メッセージ表示後、echo は $sleep_timeによって指定された秒数だけ停止します。

echo "Sourcing muttrc file"

unset confirmappend
macro index ,a "<save-message>=archive<enter><enter-command>echo 'Saved to archive'<enter>"

18. メッセージ作成フロー

これは、Mutt でメッセージ作成を行うステップの簡単な説明です。 これはまた、hook 実行の順番とタイミングも示します。

  • Reply エンベロープの設定。 $reverse_name の処理。 To, Cc, Subject, References ヘッダの既定値。

  • To, Cc, Bcc, Subject ヘッダに対する my_hdrの処理。

  • To, Cc, Bcc, Subject ヘッダの表示。 $askcc, $askbcc, $fast_reply を参照。

  • From ヘッダの設定。注意:これは以下のsend-hookが ~P に一致する可能性があるためだが、From は send-hook が値を変更した場合には さらに以下で再設定される。

  • reply-hook

  • send-hook

  • From ヘッダの設定。

  • my_hdr を From, Reply-To, Message-ID とユーザ定義のヘッダに対して処理。To, Cc, Bcc, Subject, とReturn-Path ヘッダはこのステージでは無視される。

  • メッセージ本文と署名の生成。

  • send2-hook

  • From ヘッダの $realname 部分の設定。

  • メッセージの編集のため、$editor の起動。

  • send2-hook

  • 暗号化の設定。

  • fcc-hook. Fcc の設定。

  • Compose メニュー。注意: send2-hookはヘッダが変更された時には毎回 評価される。

  • メッセージの暗号化と署名。鍵の選択。

  • Fcc saving if $fcc_before_send が設定されていた場合、Fcc へのセーブ。 (送信前に Fcc を実行する際の注意事項については変数のドキュメントに注意。)

  • メッセージの送信。

  • $fcc_before_sendが設定されていない場合 (既定値)に、Fcc へのセーブ。注意:バージョン1.12より以前では、Fcc へは メッセージの送信前にセーブされます。現在では、既定で、後でセーブされますが、 セーブが失敗した場合、ユーザに表示が出ます。

19. その他

この節では他にない種々の機能について説明します。

アドレスの正規化

Mutt では、すべてのメールアドレスを簡単な形式に正規化することができます。 アドレスに実名が含まれている場合、 Joe User <joe@example.com>という形式が使われ、 括弧その他がない真の電子メールアドレス、すなわちjoe@example.com となります。

この正規化は別名を含む、Mutt が生成するすべてのヘッダに影響します。

最初のフォルダの選択

起動時に Mutt が開くフォルダは以下のようにして決まります。 $MAIL環境変数が存在していれば、そこで指定されているフォルダ となります。それ以外では、$MAILDIRの値が考慮されます。 共にない場合、Mutt はコンパイル時に決まった(通常はホームディレクトリの 内側に有る場合もあります)メールスプール中の、ユーザのメールボックスを使います。 $spoolfileの設定はこの選択を上書きします。 最も高い優先度のメールボックスは、コマンド行オプションの-f で 与えられたものです。

Chapter 5. Mutt における MIME のサポート

Mutt を最高のテキストモード MIME MUA にするために、たくさんの努力が払われました。 目の肥えた MIME ユーザが必要とする機能を提供し、可能な限り標準に準拠するため、 あらゆる努力が図られています。Mutt でMIME を設定するとき、Mutt が使う2つの 特別なタイプの設定ファイルが存在します。一つはmime.typesファイルで、 これは、IANA MIME タイプへの拡張子のマッピングを含んでいます。もう一つは、 mailcapで、これは、特定の MIME タイプを扱うために使う 外部コマンドを指定しています。

1. Mutt 中で MIME を使う

1.1. MIME の概要

MIME はMultipurpose Internet Mail Extensionの略で、 国際化と構造化されたメールメッセージを記述するメカニズムです。MIME 以前は、 メッセージは一つの部分で構成されていて、ヘッダと本文は US-ASCII に限定されていました。 MIME を使うと、メッセージに添付をつけることができるようになり(添付自身に 添付がつけられるので、結局の所木構造になります)、送信者名、受信者と題名に ほぼ任意の文字を使えるようになります。

メッセージヘッダ内で非ASCII文字を扱うことに加えて、Mutt にとって、もっとも重要な MIME の観点は、MIME タイプと呼ばれているものです。これは、斜め線(スラッシュ) によって分離されている、majorminor タイプから構成されています。これは、後続のコンテンツに関する詳細を指定します。 これらに基づき、Mutt はこのパートをどのように扱うかを決めます。もっとも一般的な major タイプはtextで、minor タイプは 平文、HTMLと種々のその他のフォーマットというものです。Major タイプにはそのほかにも イメージ、音声、ビデオともちろん一般的なアプリケーションデータ(たとえば、 署名を伴う暗号化された署名されたデータを分離するためや、オフィス形式の文書を 送信するとか、一般的なバイナリデータなど)があります。また、MIME パートの サブツリーの基幹を表すmultipart major タイプもあります。 サポートされている MIME タイプの一覧は、 Table 5.1, “サポートされている MIME タイプ” にあります。

MIME はネットワーク越しにMIME コンテンツを転送するための、一連のエンコーディング スキームを定義します。それには、7bit, 8bit, quoted-printable, base64binaryがあります。

Mutt は 送信側で、MIME に準拠したメッセージ形式にするため、バックグラウンドで ほとんどの MIMEエンコード/デコードを行います。受信時に、(表示可能ならば)どのMIME 構造が、どのように表示されるかについては、柔軟に設定できます。これらは、MIME タイプの内容によって決められます。それらは、ページャ(メッセージを表示している時)、 添付メニューと編集メニューです。

1.2. ページャ中でのMIME メッセージの表示

インデックス画面でメールを選択し、ページャ中で表示する場合、Mutt は 可能な限り多くのメッセージをテキスト表現へと復号化します。Mutt には、 text major タイプ(すべての mitor タイプを含む)、 message/rfc822(メールメッセージ)タイプと いくつかの multipartタイプを含む、いくつかの MIME タイプを 内部的にサポートしています。さらに、PGP/MIME と application/pgp を含む、種々の PGP MIME タイプを認識します。

Mutt は2行を使って添付ファイルを記述します。その行は以下の通りです。

[-- Attachment #1: Description --]
[-- Type: text/plain, Encoding: 7bit, Size: 10000 --]

ここで、Descriptionは添付ファイルに関する説明やファイル名で、 Encodingはすでに言及されているコンテンツエンコーディング の1つです。

Mutt が扱うことのできない MIME タイプであれば 次のようなメッセージを表示します。

[-- image/gif is unsupported (use 'v' to view this part) --]

1.3. 添付メニュー

既定でvに割り当てられている<view-attachments>は、 メッセージの添付メニューを表示します。添付ファイルメニューはメッセージの添付ファイル 一覧を表示します。添付メニューから、添付ファイルを保存、印刷、パイプ、削除、閲覧する ことができます。添付にタグがつけてあり、<tag-prefix> オペレータを使うことで、複数の添付ファイルを一度に処理することも可能です。 また、 このメニューからメッセージに返信することもでき、添付のみ(またはタグが付いた添付)を 返信に引用することができます。テキストとして添付を表示したり、mailcap ビューワの 定義を使って表示したりできます(mailcap メカニズムの詳細は後で説明します)。

最後に、通常のメッセージに関連する機能(たとえば、 <resend-message>, と<reply><forward> 機能)を、message/rfc822タイプの添付に適用できます。

すべての有効な機能については、 Table 9.7, “Default Attachment Menu Bindings”テーブルを参照してください。

1.4. 編集メニュー

編集メニューはメッセージを送信する前に現れるメニューのことです。このメニュー では宛先のリスト、題名やメッセージのその他の部分を編集することができます。 このメニューには、メッセージの添付ファイル(本文も含む)の一覧も表示されます。 このメニューから、一つの添付ファイル、もしくはタグ付けされた複数の添付ファイルを、 印刷、コピー、フィルタ、パイプ、編集、作成、表示、および改名することが できます。また、添付の情報、特にタイプやエンコーディングや説明を編集できます。

添付は以下のように表示されます。

- 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>

-は、そのファイルがメッセージの送信 (または延期や中止) の後に 削除されるということを示しています。これは、<toggle-unlink> コマンド (既定値: u) でON/OFFできます。次の欄 は MIME content-type を示しており、 <edit-type> コマンド (既定値: ^T) で変更できます。 その次の欄はファイルのエンコード方式を示していて、7ビットで転送できるように バイナリメッセージをエンコードします。これは、<edit-encoding> コマンド(既定値: ^E)で変更できます。次の欄は添付のファイルサイズで、キロバイトか メガバイト単位に丸めています。次の欄はファイル名で、 <rename-file>コマンド (既定値: R) で変更できます。 最後の欄は添付ファイルの内容説明で、<edit-description> コマンド (既定値: d) で変更できます。必要に応じてこの表示形式を変更するために 使える expando の完全な一覧は $attach_formatにあります。

2. mime.typesによるMIME タイプの設定

MIME を最大限に利用するには、MIME パートの content type が可能な限り コンテンツに一致することが重要で、そうすることにより、受信者のクライアントが 自動的にコンテンツに適したビューワを自動的に選択できるようになります。 しかし、Mutt が、すべての取り得るファイルタイプを検出する方法を 知っていても、それが信頼できるわけではありません。そのかわり、 どのファイル拡張子がどのMIME タイプに対応しているかを指定する、簡単な平文の マッピングファイルを使います。このファイルはmime.typesと 呼ばれています。

メールメッセージに添付を追加すると、Mutt は、$HOME/.mime.typesから 個人用のmime.typesを探しに行き、次に、 /usr/local/share/mutt/mime.types又は /etc/mime.typesにあるシステムのmime.types を見に行きます。

各行は完全なMIME タイプで始まり、空白と、空白で分離されたファイルの拡張子の 一覧が並びます。たとえば以下のようになります。

Example 5.1. mime.types

application/postscript          ps eps
application/pgp                 pgp
audio/x-aiff                    aif aifc aiff

サンプルのmime.typesファイルは Mutt の配布物に付いています。 使いたい MIME タイプはその中にほとんど含まれているはずです。

Mutt が、添付されたファイルの拡張子から、MIME タイプが決められない場合、 $mime_type_query_commandで 指定されたコマンドを実行します。そのコマンドが指定されていなかった場合、 Mutt はファイルの中身を見に行きます。ファイルにバイナリ情報がなければ プレーン テキストだとみなしてtext/plainと設定します。ファイルに バイナリ情報が含まれていれば、application/octet-streamと 設定します。編集メニューから<edit-type>コマンド (既定値: ^T)を使って、Mutt が添付に割り当てたMIME タイプを変更できます。 サポートされる major type についてはTable 5.1, “サポートされている MIME タイプ” を参照してください。Mutt はmime.typesファイル中に適切な エントリがあった場合、それらすべてを認識します。認識できない mime タイプは、 メッセージ受信者がそのような添付が来ることが分かっている場合にのみ使用すべき です。

Table 5.1. サポートされている MIME タイプ

MIME major type標準かどうか説明
applicationyes一般的なアプリケーションデータ
audioyes音声データ
imageyes画像データ
messageyesメールメッセージ、メッセージステータス情報
modelyesVRML とその他のモデリングデータ
multipartyes他のMIME パートのコンテナ
textyesテキストデータ
videoyes動画データ
chemicalnoほとんどの場合、分子データ

MIME タイプは、 IANA によって割り当てられている必要があり、自由には指定できません。

3. mailcap による MIME ビューワの設定

Mutt は RFC 1524 の MIME 設定をサポートしています。特に RFC 1524 の Appendix A で 規定されている Unix 用フォーマットをサポートしています。このファイル フォーマットは一般的に mailcap フォーマットと呼ばれます。 多くの MIME 対応プログラムがこの mailcap フォーマットを利用しているので、 すべてのプログラムでのすべての MIME タイプの扱いを一か所で指定することができます。 このフォーマットを利用しているプログラムには、Firefox, lynx, metamail などがあります。

Mutt 単体では扱えない様々な MIME タイプを扱うために、 Mutt は外部の設定 ファイルを解析して、外部ハンドラを探します。設定ファイルを検索する既定の 文字列はコロン区切りのリストで、以下のようなものです。

  1. $HOME/.mailcap

  2. $PKGDATADIR/mailcap

  3. $SYSCONFDIR/mailcap

  4. /etc/mailcap

  5. /usr/etc/mailcap

  6. /usr/local/etc/mailcap

ここで、$HOMEはホームディレクトリです。 $PKGDATADIR$SYSCONFDIRディレクトリは、 インストールされた Mutt に依存します。全社は共有データの既定値で、後者は システム設定ファイルの既定値です。

既定の検索パターンは以下のコマンドを実行して得られます。

mutt -nF /dev/null -Q mailcap_path

特に、metamail ディストリビューションは mailcap ファイルを、通常 /usr/local/etc/mailcap にインストールします。これには いくつかのベースラインエントリが含まれています。

3.1. Mailcap ファイルの基本

mailcap ファイルの各行はコメント、空行、定義のいずれかです。

コメント行は # 文字とそれに続く任意の文字で構成されます。

空行は空の行です。

定義行は、content type 、閲覧コマンド、、そして任意の数の付加的なフィールドで 構成されています。 定義行の各フィールドはセミコロン ; で分けられています。

content type は MIME 標準のtype/subtype方式で指定します。例えば、 text/plain, text/html, image/gifなどです。さらに、mailcap フォーマットには二種類の ワイルドカードもあります。 一つは特殊な*サブタイプを使う方法で、 もう一つはメジャータイプしか書かないという、暗黙のワイルドカードという方法です。 例えば、image/* 又はvideoは、それぞれ すべての image タイプと video タイプに相当します。

view コマンドは特定のタイプを閲覧するための Unix コマンドです。二種類の 異なったコマンドがサポートされています。既定では、その MIME メッセージの 内容を標準入力でコマンドに渡します。この動作を変更するには、view コマンドの 引数に %s を使います。こうすると Mutt は MIME メッセージの 内容を一時ファイルに保存し、%s を一時ファイルの名前に 置き換えて view コマンドを呼び出します。どちらの場合も Mutt は端末を view プログラムに明け渡し、終了するまで待ちます。終了時、一時ファイルは (あれば) 削除されます。これは、mailcap が、Mac OS X 上でのopenのように、 開始直後に端末から自分自身を切り離すプログラムでは、そのままでは動かない ことを意味します。それにもかかわらずそのようなプログラムを mailcap で使う ためには、おそらくカスタム shell スクリプトが必要です。

最も単純な形として、text/plain のメッセージを外部 ページャ more に標準入力で渡すには以下のようにします。

text/plain; more

あるいは、メッセージをファイルとして渡すことも出来ます。

text/plain; more %s

おそらく、lynx を使って対話的に text/html のメッセージを 閲覧したいと思うかもしれません。

text/html; lynx %s

この場合、lynx は標準入力からのファイル閲覧をサポートしていないので %s 構文を使わなければなりません。

Note

古いバージョンの lynx には、一部、text/htmlの ビューワの mailcap ファイルをチェックするバグを含むものがあります。その場合、 lynx を呼ぶように書いてあっても そのまま実行してしまいます。この場合、 いつまでも 自分が自分を呼び出し続けることになってしまいます。

一方、lynx を対話的に使いたいのではなく、単に text/htmltext/plain に変換したい場合は以下のようにします。

text/html; lynx -dump %s | more

おそらくtext/html ファイルの閲覧には lynx を使いたいものの、 ほかの text タイプにはすべてページャを使いたい場合はこういう書き方ができます。

text/html; lynx %s
text/*; more

3.2. Mailcapの安全な使用方法

一般的に言って、MIME パラメータに埋め込まれたシェルメタ文字を解釈することには、 セキュリティ上の問題を引き起こす危険性があります。Mutt は %s 構文の展開の際に正しくパラメータをくくろうとしますし、危険な文字を別のものに 置き換えようとします。 $mailcap_sanitize 変数を参照してください。

Mutt が mailcap からプログラムを呼び出す手順はおそらく安全ですが、他の アプリケーションも mailcap を読みますし、中にはそれほど注意を払わないものも あるかも知れません。 そこで、次のようなルールに注意を払うべきです。

シェルクウォートに %展開を入れない。シングルクウォート (') やダブルクウォート (") で囲まない。その辺りのことは Mutt がきちんと やってくれますし、 mailcap を使う他のプログラムも同じはずです。 バッククウォートを使った展開の中にも入れない。eval 文には特別な注意が必要です。 できればまったく使わないでください。おかしな挙動をクウォートで直そうとしても、 新しい問題が発生するだけです — 正しくウォートを使うための代替方法は 最初から有りません。

どうしても '%展開"の値がクウォートやバッククウォートの中に入っていなければ ならない場合には、まずその値をシェル変数に代入して、必要に応じてその変数を 使うようにしてください。次の例のようにです (バッククウォート展開の中で $charset を使っていますが、これは安全です。そこからさらに 展開されるわけではないからです)。

text/test-mailcap-bug; cat %s; copiousoutput; test=charset=%{charset} \
        && test "`echo $charset | tr '[A-Z]' '[a-z]'`" != iso-8859-1

3.3. 高度な Mailcap の使用法

3.3.1. オプションフィールド

必須となる content-type と view コマンドフィールドに加え、フラグや他の オプションを設定するために、セミコロン;で分離したフィールドを 追加することが出来ます。Mutt は以下のオプションフィールドを認識します。

copiousoutput

このフラグは、標準出力上で、大量のテキストがコマンドに渡されることを Mutt に 伝えます。これは、Mutt に、 view コマンド(内部ページャまたは pager 変数で 指定された外部ページャ)の出力でページャを呼び出すようにします。このフラグが ない場合、Mutt はコマンドが対話的であると仮定します。これを利用して、 Basic 節中のlynx -dumpの例にあるパイプを moreに置き換えることが出来ます。

text/html; lynx -dump %s ; copiousoutput

上記では、lynx は、text/html出力をtext/plain として整形し、Mutt は結果を表示するために標準のページャを使います。

Mutt はページャが幅を決めるために、COLUMNS環境変数を 設定します。いくつかのプログラムでは、自動的にこの環境変数を使用します。 その他では、出力幅を設定するために使う、コマンド行引数を使います。

text/html; lynx -dump -width ${COLUMNS:-80} %s; copiousoutput

内蔵ページャを使う場合、このフラグを保つエントリのみ MIME タイプのハンドラとして見なされることに注意してください — 他のエントリは すべて無視されます。

needsterminal

auto_viewを使って、 添付を閲覧する時、$wait_key変数の設定を 信頼するかどうかを決めるのに、Mutt はこのフラグを使います。 添付ファイルが内部ページャで表示される時、あるいは、適切な mailcap エントリがneedsterminalフラグが存在している場合、 Mutt は$wait_keyと、外部プログラムが 終了した時の終了ステータスを使って、外部プログラムが終了した後に、キー入力を 必要とするかを決めます。その他の場合はすべて、キー入力は要求されません。

compose=<command>

このフラグは、特定のMIME タイプの新しい添付を作るためのコマンドを指定します。 Mutt は編集メニューでこれをサポートします。

composetyped=<command>

このフラグは、特定の MIME タイプの添付ファイルを新規作成するコマンドを指定 します。compose コマンドとの違いは、データ内に標準的な MIME ヘッダが含まれて いることをMutt が期待しているという点です。これを使って、パラメータ、 ファイル名、説明などを指定できます。 Mutt はこれをコンポウズメニューでサポート しています。

print=<command>

This flag specifies the command to use to print a specific MIME type. Mutt supports this from the attachment and compose menus. 特定の MIME タイプの印刷に使うコマンドを指定します。 Mutt では、ファイル 添付メニューと編集メニューでサポートしています。

edit=<command>

このフラグは、特定の MIME タイプの編集に使うコマンドを指定します。 Mutt は このコマンドを編集メニューでサポートし、 新しい添付ファイルを作成するとき にも使います。Mutt は既定では $editor 変数に 定義されたエディタを テキスト形式の添付ファイルに使用します。

nametemplate=<template>

このフィールドは、コマンドフィールドに %s で示される ファイルのフォーマットを指定します。ある種のプログラムは、ファイルを正しく 表示するために、ファイル名に特定の拡張子を要求しします。例えば lynx は、 ファイル名が.html で終わっている場合にのみ そのファイルがtext/htmltext/html であると解釈します。 そのため、lynx を text/html ビューワに指定するには 次のように mailcap を記述します。

text/html; lynx %s; nametemplate=%s.html
test=<command>

このフィールドは、この mailcap エントリを使うべきなのかどうかをテストするための コマンドを指定します。コマンドは、次の節にあるコマンド展開ルールに沿って定義 します。コマンドが 0 を返した場合はテストにパスしたことになり、Mutt はその エントリを使います。0 以外の値を返した場合にはテスト失敗で、Mutt はさらに 他の正しいエントリを探し続けます。content-type はテストを実行する前に一致 しなければならないことに注意してください。例は下記の通りです。

text/html; firefox -remote 'openURL(%s)' ; test=RunningX
text/html; lynx %s

上記の例では、Mutt は、X Window マネージャが動作中の時に 0 を返し、 そうでない場合は 0 以外を返す、RunningX プログラムを 実行します。RunningX が 0を返した場合、 Mutt は text/html オブジェクトを表示するために、 firefox を 起動します。RunningX が 0 を返さない場合、Mutt は次のエントリに移動し、 text/html オブジェクトを表示するために、 lynx を使います。

3.3.2. 検索順序

mailcap ファイルの中からあるエントリを検索する場合、Mutt はその目的に最も 合う項目を見付けようとします。例えば image/gif を印刷 しようとするとき、次のようなエントリが mailcap ファイルにあれば、 Mutt は print コマンドがあるエントリを探します。

image/*;        xv %s
image/gif;      ; print= anytopnm %s | pnmtops | lpr; \
                nametemplate=%s.gif

Mutt はimage/*エントリをスキップし、print コマンドがある image/gifエントリを使用します。

さらに、auto_view と組み合わせて、添付ファイル閲覧のコマンドを二つ指定することもできます。 1つ目は自動的に閲覧するためのコマンド、もう一つは、 <view-mailcap>機能(既定でmに割り当て) を使って、添付ファイルメニューから対話的に閲覧するコマンドです。 さらに、test 機能を使えば、どのビューワを使うかを自分の環境に合わせて対話的に 決定できます。

text/html;      firefox -remote 'openURL(%s)' ; test=RunningX
text/html;      lynx %s; nametemplate=%s.html
text/html;      lynx -dump %s; nametemplate=%s.html; copiousoutput

Mutt はauto_viewに対して、 copiousoutputタグがあるので3番目のエントリを使います。 対話的な閲覧には、まずプログラム RunningX を走らせ、 一番目のエントリを使うかどうか調べます。プログラムが 0 以外を返せば、二番目の エントリを使って対話的な閲覧を行います。最後のエントリはページャ中の インライン表示と、添付メニュー中での<view-attach>機能です。

copiousoutputタグがあるエントリは、常時各タイプ毎に 最後に指定しなければなりません。非対話的な使用時には、最後のエントリは、 実際にはタグが設定されているものに最初に一致するものになります。 非対話的な使用時には、copiousoutputタグが付いたエントリ のみが考慮されます。対話的に使う場合には、Mutt はこのタグを無視し、すべてのエントリを 同じように扱います。そのため、最後に指定しなかった場合、このタグを保たない その後のエントリは、copiousoutputがあるものの前で 常時一致してしまうため、<view-attach>は決して 考慮されません。

3.3.3. コマンド展開

mailcap ファイルに定義されている各種のコマンドは、system(3) 機能を使って、/bin/shシェルに渡されます。 /bin/sh -cにコマンドが渡される前に、コマンドは Mutt からの 情報を元に、操作されて種々の特別なパラメータが展開されます。Mutt が展開する キーワードは以下の通りです。

%s

基本のmailcap 節で見たように、この変数は、呼び出したプログラムによって指定された ファイル名に展開されます。この ファイルは、閲覧/印刷/編集するメッセージ本体か、 編集プログラムが編集した結果が含まれています。さらに、このキーワードを 使うと、Mutt は、閲覧/印刷/編集するプログラムに対して、標準入力には メッセージ本体を渡しません。

%t

Mutt は%tをテキスト表現へ展開します。これは、メッセージの content type を、mailcap 定義行における最初のパラメータと同じ形式で表現した ものです。すなわち、text/html 又は image/gif です。

%{<parameter>}

Mutt はこれを、メールの Content-Type: 行における特定のパラメータの値に展開 します。例えば、メールに次のような行があるとします。

Content-Type: text/plain; charset=iso-8859-1

この場合、Mutt は%{charset}iso-8859-1に 展開します。既定の metamail malcap ファイルは、この機能を使って文字セットを調べ、 xterm を正しい文字セットで起動してメールを閲覧できるようにします。

\%

これは%に置き換えられます.

Mutt はRFC 1524 で定義されているキーワード %F%n を現在の 所サポートしていません。これらのパラメータは主にマルチパートメッセージのためのものですが、それらは Mutt 内部で扱われるからです。

3.4. Mailcap ファイルの例

以下の mailcap ファイルはとても単純かつ標準的なものです。

# 常に X を実行していることにします:)
video/*;        xanim %s > /dev/null
image/*;        xv %s > /dev/null

# firefox を実行していることにします(今よりメモリがあればそうするでしょう。たぶん。)
text/html;      firefox -remote 'openURL(%s)'

以下の mailcap ファイルでは、たくさんの例を示しています。

# 動画には、すべて xanim を使います   xanim は起動時にヘッダを出力しますが
# 見なくて済むように /dev/null へ送ってしまいます
video/*;        xanim %s > /dev/null

# HTML は、実行中の firefox に remote オプションで送ります
text/html;      firefox -remote 'openURL(%s)'; test=RunningFirefox

# firefox を実行していなくて X を実行しているときは、その
# オブジェクトに対してfirefox を起動します
text/html;      firefox %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

# Firefox jpeg を自分で表示するためにフラグを付けます
image/jpeg;xv %s; x-mozilla-flags=internal

# X 実行中の画像閲覧には xv を使います
# なお、ここでは \ を使って行をのばし、画像のエディタも設定します
# for images
image/*;xv %s; test=RunningX; \
        edit=xpaint %s

# ツールを使って画像をテキストに変換します
image/*;  (anytopnm %s | pnmscale -xysize 80 46 | ppmtopgm | pgmtopbm |
pbmtoascii -1x2 ) 2>&1 ; copiousoutput

# excel の表計算ファイルは NT マシンに送ります
application/ms-excel; open.pl %s

4. MIME 自動閲覧

Usage:

auto_view mimetype [ mimetype ...]
unauto_view { * | mimetype ... }

添付メニューから、mailcap ファイルで指定されている MIME のビューワで添付ファイルを閲覧する よう Mutt に明示的に指示する以外に、 ページャの中で MIME 添付ファイルを自動的に閲覧する 機能もあります。Mutt はページャ中でMIME 添付を自動的に閲覧する機能をサポートしています。

機能させるには、mailcap ファイルで copiousoutput オプションを使って ビューワを指定しなくてはなりません。そのビューワが対話的コマンドではないということを指示 するためです。 普通は、ページャで閲覧できるようなテキスト表現へ添付ファイルを変換する ためにもこのエントリを使います。

次に auto_view という 設定コマンドを使い、自動的に閲覧したい content-type を列挙します。例えば以下のように列挙します。

auto_view text/html application/x-gunzip \
  application/postscript image/gif application/x-tar-gz

こうすると、Mutt はそれらのタイプをテキストとして、添付を描画するための対応するエントリを 探します。対応する mailcap エントリは以下のようになります。

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

unauto_viewは以前のエントリをauto_viewリストから 削除するのに使います。 message-hook と一緒に使うなら、サイズ等に基づいた自動閲覧もできます。 unauto_view * は、指定した項目をすべて削除します。

5. MIME Multipart/Alternative

multipart/alternative コンテナタイプは、同じコンテンツを別の方法で 表す子MIME パートのみがあります。これはしばしば、代替 plain text 表現を含む HTML メール を送信するのに使われます。

Mutt には、multipart/alternative のうち、どのタイプの添付ファイルを 表示するか決定するための発見的手法があります。

  1. まず最初に alternative_order リストを調べて、有効なタイプがあればそれに 決めます。そこには、明示的あるいは暗黙的なワイルドカードのサポートを含む、順番に並んだ MIME タイプがいくつか記載されています。以下が例です。

    alternative_order text/enriched text/plain text \
      application/postscript image/*
    
  2. 次に Mutt は、いずれかのタイプがauto_view で定義されていないかどうかを調べ、それを使います。

  3. それに失敗した場合、Mutt は text type を調べます。

  4. Mutt は最後に、処理可能なタイプが一つでもないかどうか探します。

MIME タイプを alternative_order リストから削除するには、 unalternative_order コマンドを使います。

multipart/alternativeコンテンツの生成は、 $send_multipart_alternative quadoption と $send_multipart_alternative_filter フィルタスクリプトによってサポートされます。編集された、 text/plainコンテンツは、フィルタスクリプトの標準入力に パイプされます。フィルタスクリプトの出力は、生成されたコンテンツの MIME タイプ 、空白行とコンテンツ である必要があります。以下は例です。

text/html

<html>
<body>
Content in html format
</body>
</html>

alternativeのプレビューは、 <view-alt>,<view-alt-text>と 既定で"v", "Esc v" と "V" に割り当てられている <view-alt-mailcap>機能を使って編集メニュー中で 閲覧できます。

6. 添付の検索とカウント

メールボックス中の添付ファイルを見失った場合、Mutt が持つ添付ファイルのカウントと 検索機能のサポートが役立つかもしれません。メッセージインデックスに、各メッセージが 条件を満たす添付ファイルの数を表示させたり、添付ファイルの数でメッセージを検索 したりできます。また、attachmentsunattachments コマンドを使って、この機能の対象となる添付ファルの種類を設定することも出来ます。

この情報を提供するため、Mutt は最初に、影響を受けるメッセージすべてに完全な MIME 解析を行う必要があります。これは、利用者が本当にそれらを表示したいか 否かにかかわらず、すべてのメッセージを最初にダウンロードする必要があるため、 IMAP のようなリモートメールフォルダに対しては特に操作が遅くなります。ただし、 Section 8.2, “Body キャッシング” を使うと、通常は、メッセージを1回だけダウンロード することになります。

既定では、Mutt はmultipart/alternativeコンテナ内を検索しません。 これは、$count_alternatives設定変数を 使って変更できます。

文法は以下の通りです。

attachments { + | - }disposition mime-type
unattachments { + | - }disposition mime-type
attachments ?
unattachments *

dispositionは添付のContent-Disposition タイプで — inline又はattachment のどちらかです。 I又はAという省略形も使えます。

The first part of a message or multipart group, if inline, is counted separately than other inline parts. Specify root or R for disposition to count these as attachments. If this first part is of type multipart/alternative, note that its top-level inline parts are also counted via root disposition (if $count_alternatives is set). インラインの場合、メッセージ又はマルチパートグループの最初の部分は 他のインラインパートとは別にカウントされます。root 又はdisposition用のR を指定することで、 添付としてカウントします。この最初のパートが multipart/alternative なら、 その最上位のインラインパートは root disposition 経由でもカウントされることに注意してください ($count_alternatives が設定されて いる場合)。

Disposition には+-記号が前に付きます。 +だった場合、この disposition と MIME タイプを対象にしたい と言う事を意味します。-だった場合、この disposition と MIME タイプは以前の+ルールの例外としたいという事を意味します。 これをどのように使うと便利かについては、以下に例があります。

mime-typeはコマンドに影響を与えたい添付ファイルの MIME タイプ です。MIME タイプは常時major/minorと言う形式で、 majorは検索したいドキュメントに対する広いカテゴリを 記述したもので、minorは、そのカテゴリ中の特定のタイプを記述 したものです。MIME タイプの major 部分は文字テキスト(又は特別なトークン *)でなければなりません。しかし、minor パートは 正規表現でもかまいません(そのため、*/.*は すべての MIME タイプに一致します)。

attachmentsディレクテイブに渡したMIME タイプはパターンの 一種です。attachmentsディレクティブを使う場合、指定したパターンは リストに追加されます。unattachments を使うと、リストから パターンが削除されます。パターンはこの時点では展開されず、特定の MIME タイプには 一致しません— リスト中に存在するだけです。実際にメッセージを評価した時点で のみ一致します。

いくつかの例は説明するのに役立つかもしれません。例中の、コメントアウトされていない ものは、リストの既定の設定を記述しています。

Example 5.2. 添付のカウント


# Removing a pattern from a list removes that pattern literally. It
# does not remove any type matching the pattern.
#
#  attachments   +A */.*
#  attachments   +A image/jpeg
#  unattachments +A */.*
#
# This leaves "attached" image/jpeg files on the allowed attachments
# list. It does not remove all items, as you might expect, because the
# second */.* is not a matching expression at this time.
#
# Remember: "unattachments" only undoes what "attachments" has done!
# It does not trigger any matching on actual messages.

# Qualify any MIME part with an "attachment" disposition, EXCEPT for
# text/x-vcard and application/pgp parts. (PGP parts are already known
# to mutt, and can be searched for with ~g, ~G, and ~k.)
#
# I've added x-pkcs7 to this, since it functions (for S/MIME)
# analogously to PGP signature attachments. S/MIME isn't supported
# in a stock mutt build, but we can still treat it specially here.
#

attachments   +A */.*
attachments   -A text/x-vcard application/pgp.*
attachments   -A application/x-pkcs7-.*


# Discount all MIME parts with an "inline" disposition, unless they're
# text/plain. (Why inline a text/plain part unless it's external to the
# message flow?)

attachments   +I text/plain


# These two lines make Mutt qualify MIME containers.  (So, for example,
# a message/rfc822 forward will count as an attachment.)  The first
# line is unnecessary if you already have "attach-allow */.*", of
# course.  These are off by default!  The MIME elements contained
# within a message/* or multipart/* are still examined, even if the
# containers themselves don't qualify.

#attachments  +A message/.* multipart/.*
#attachments  +I message/.* multipart/.*


## You probably don't really care to know about deleted attachments.
attachments   -A message/external-body
attachments   -I message/external-body

コマンド attachments ?をコマンドとして入力すると、 現在の設定一覧を表示するので、他の場所に貼り付けることが出来ます。

コマンド unattachments * をコマンドとして入力すると、 すべての添付設定を消去します。

7. MIME Lookup

Usage:

mime_lookup mimetype [ mimetype ...]
unmime_lookup { * | mimetype ... }

Mutt の mime_lookup リストは、mailcap エントリに従って 扱うべきでない MIME タイプのリストを指定します。このオプションは、 application/octet-streamのような、バイナリタイプを取り扱う ように設計されています。添付の MIME タイプが mime_lookup 中に ある場合、ファイル名の拡張子はmime.typesファイル中の 拡張子の一覧と比較されます。この拡張子に対応する MIME タイプは、mailcap ファイル中の ルールや、その他の設定オプション(例えばauto_viewのようなもの)で 指定されたルールに従って処理されます。一般的な使い方は以下のようになります。

mime_lookup application/octet-stream application/X-Lotus-Manuscript

さらに、unmime_lookupコマンドを使えば、すでに設定されてい る特定の MIME タイプに対してこの機能を適用しないようにすることもできます。 たとえば、グローバルの.muttrcです。

Chapter 6. オプション機能

1. 一般的な注意事項

1.1. 機能の有効化/無効化

Mutt はconfigureスクリプトに特定の引数を与えることにより、 コンパイル時に有効または無効にできるいくつかのオプション機能があります。 それらはconfigure --help出力の Optional featuresセクション中に一覧があります。

どの機能が有効か無効かについては、後でmutt -vの出力から 判断できます。コンパイル時オプションが+から始まっている場合は 有効で、-で始まっている場合は無効を意味します。例えば、 OpenSSL の代わりに暗号化通信をするためにGnuTLSを使うようにコンパイルされて いると、mutt -vの出力は以下のようになります。

-USE_SSL_OPENSSL +USE_SSL_GNUTLS

1.2. URL の文法

Mutt は URL を使ってサーバにアクセスすることを必要とする IMAP,POP3 と SMTP プロトコルをオプションでサポートしています。URL を指定するための、Mutt 中での 正しい構文([]で囲まれた項目はオプションを意味し、省略 可能です)は以下のようになります。

proto[s]://[username[:password]@]server[:port][/path]

ここで、protoは通信用のプロトコルで、IMAP 用は imap、POP3 用はpop、そしてSMTP用は smtpです。暗号化通信のために、 sが末尾に付くと、Mutt は SSL かTLS を使って、暗号化通信を 確立しようと試みます。

Mutt の support/require 認証によってすべてのプロトコルがサポートされるので、 login の認証情報は URL で指定できます。これは、複数の IMAP,POP3 または SMTP サーバが指定できるというメリットがあります(たとえば、 $imap_userは使えません)。ユーザ名は ログイン名の一部として多くのシステムで使われている、@記号を 含むことも可能です。特別な文字 /(%2F), : (%3A)と%(%25) は、%記法を使って、ユーザ名中に URL エンコードする必要があります。

パスワードも与えることが出来ますが、ディスク上の設定ファイル中に URL が 指定できるので、推奨されません。

/etc/servicesを参照します)に対してシステム既定のものを 使います。

オプションのパスは通常 IMAP のみに関係し、その他では無視されます。

Example 6.1. URLs

pops://host/
imaps://user@host/INBOX/Sent
smtp://user@host:587/

2. SSL/TLS サポート

Mutt が IMAP, POP3 と SMTP をサポートするようにコンパイルされてる場合、 OpenSSL 又は GnuTLS (OpenSSL では--enable-ssl=...オプション、 GnuTLS では--enable-gnutls=...オプションを、 configureスクリプトを実行する時に使って)のどちらかを 使う、 SSL 又は TLS のサポートもするようにコンパイルも出来ます。Mutt は プロトコルに暗号化通信を意味するs接尾辞がある時、 リモートサーバに対して暗号化通信を試みます。

2.1. STARTTLS

安全性が保たれていない URL プロトコルである imap://pop://smtp:// を使う時、 サーバへの最初の接続は暗号化されません。STARTTLS は、最初の暗号化されていない接続の後に暗号化された接続と通信をネゴシエート するのに使われます。

2つの設定変数が、STARTTLSを使う時にMutt の動作を 制御します。$ssl_starttls は、サーバがサポートしていることを通知する場合は、STARTTLS を開始します。$ssl_force_tlsは サーバがサポートするかどうかを通知するかしないかにかかわらず、 STARTTLSを開始しようとします。

Mutt では、暗号化されていないサーバに接続しなければならない限り、 $ssl_force_tls を設定することを 強く推奨します。最初の接続の間にやりとりを偽装 し、STARTTLSのサポートを隠すことは攻撃者には可能です。 これらの攻撃を防ぐ唯一の方法は、設定変数で、 $ssl_force_tlsを使って強制的に STARTTLSを行うことです。

2.2. Tunnel

Mutt は通常$tunnel すなわち 直接のパイプや ssh 接続が安全であると 仮定しています。しかし、Mutt は引き続き $ssl_starttls$ssl_force_tls に従って、 STARTTLS を使おうと試みます。

事前認証(PREAUTH) が設定されている IMAP サーバは STARTTLS を許可しません。 $tunnel を使う場合、Mutt は接続の通貨を パスすることを許可します。トンネルの外側で、 $ssl_force_tls を設定すると、 接続を打ち切ることになります。

3. POP3 サポート

Mutt がPOP3 をサポートするようにコンパイルされている場合( --enable-popフラグをつけて configure を実行した場合)、リーウトの POP3 サーバ上にあるメールボックスを扱ったり、 ローカルでの閲覧用にメールを取りに行ったりすることができます。

リモートのPOP3 サーバへは、暗号化なしの場合はpopプロトコルで、 暗号化通信での場合はpopsを使った URL でアクセス出来ます。 詳細はSection 1.2, “URL の文法”を参照してください。

POP3 経由だと、新着メール情報の取得にローカルより負担がかかります。このため、 Mutt がリモートでメールチェックする頻度を $pop_checkinterval変数により 制御できます。既定値は 60 秒ごとです。

POP はリードオンリであり、メッセージの編集やフラグの変更と言ったいくつかの機能を 許可していません。しかし、Section 8.1, “ヘッダキャッシング”Section 8.2, “Body キャッシング”を使う事により、Mutt は、フラグを付けたり 返信をしたことを付けたりするような、new/old/read フラグをシミュレートします。 Mutt はリモートメッセージの最上位にいくつかのロジックを適用しますが、変更が 出来ないので、POP サーバからメッセージがダウンロードされた時(Mutt または他のツール によって)にはフラグの変更はなくなります。

POP3 のメールにアクセスする別の方法は <fetch-mail>機能 (既定値: G)です。これは、$pop_hostに接続し、 新着メールをすべて取ってきて、ローカルの $spoolfileにおきます。これ以降、Mutt は そのメールがまるでずっとローカルにあったかのように 動作します。

Note

すべてのメッセージをローカルのメールボックスにフェッチするだけでよい場合は、 fetchmail(1), getmail(1)や同等の、 専用のプログラムの使用を検討する必要があります。

4. IMAP サポート

Mutt が IMAP をサポートするようにコンパイルされていた場合 (--enable-imapフラグを指定してconfigure スクリプトを実行した場合)、リモートの IMAP サーバにあるフォルダを扱うことが できます。

imap 又は imapsプロトコルを使って URLを指定し(詳細はSection 1.2, “URL の文法”を参照してください)、 フォルダを選択することで、リモートの inbox にアクセス出来ます。また、 pine 互換な表記もサポートしています。すなわち、 {[username@]imapserver[:port][/ssl]}path/to/folderです。

すべてのサーバが階層を示すセパレータとして/を使うとは限らない ことに注意してください。Mutt はどのセパレータがサーバで使われているかを正しく 認識し、それに応じてパスを変換します。

IMAP サーバ上のフォルダを閲覧しているときに、 自分が購読しているフォルダだけを 見るか、それともあらゆるフォルダを見るかを、toggle-subscribed コマンドで切り換えられます。 $imap_list_subscribed変数も参照して ください。

IMAP サーバ上の新着メールを確認すると、動作が遅くなって気になることがあります。 そのため、$mail_check$timeout 変数は慎重に調整したいと思うことでしょう。 適切な値は以下の通りです。

set mail_check=90
set timeout=15

上記は遅いモデム回線にしては、結果は比較的良好です。

Note

v12.250 以前の UW サーバでメールの格納に mbox を使っている場合は注意してください。 別のクライアントが同じフォルダを選ぶと接続が切断されてしまうと報告されています。

4.1. IMAP フォルダブラウザ

バージョン 1.2 から Mutt は IMAP サーバ上のメールボックス閲覧 (browsing) をサポート しています。これはローカルファイルブラウザとほとんど同じですが、以下のような 違いがあります。

  • ファイルの属性の代わりに "IMAP" という文字列を表示し、その後ろに + 記号がつく場合がありますが、これはその中にメッセージとサブフォルダの両方が含まれて いることを意味します。Cyrus 系サーバの場合には、しばしばフォルダの中にメッセージと サブフォルダが入っています。メールボックス名の後にデリミタ(通常/.)がある場合はサブフォルダを意味します。

  • メッセージとサブフォルダの両方が含まれている場合、(既定でenterに 割り当てられている)選択キーを押すと そのサブフォルダの中に下りて行きます。 そのフォルダ自体のメッセージを見たい場合には、(既定でspaceに 割り当てられているview-fileを代わりに使わなければなりません。

  • メールボックスの作成、削除、改名は、 <create-mailbox>, <delete-mailbox>, と <rename-mailbox> コマンド(既定でそれぞれ C, drに 割り当てられています)を使います。また、メールボックスに対して、 <購読(subscribe)><購読解除(unsubscribe)> (それぞれ通常はsuに割り当てられています) もできます。

4.2. 認証

Mutt は IMAP サーバに関して四つの認証方法をサポートしています。それらは SASL, GSSAPI, CRAM-MD5, LOGIN です(かわいそうな exchange ユーザのために NTLM 認証を追加する、Grant Edwards によるパッチがありますが、まだメイン ツリーには統合されていません)。また疑似プロトコル ANONYMOUS のサポートも あります。これは公開 IMAP サーバにアカウントなしでログインするためのもの です。ANONYMOUS を使うには、単にユーザ名を入れないでおくか、 または anonymous にします。

SASL は特殊な、包括的認証方法で、自分のホストとサーバ両方で利用可能かつ最も 堅牢な方法を、いくつかのプロトコル (GSSAPI, CRAM-MD5, ANONYMOUS, DIGEST-MD5 を 含む) の中から選びます。 これらのうちのいくつかの方法 (DIGEST-MD5 や、多分 GSSAPI も) を使うと、セッション全体が暗号化され、そこかしこにいるネットワーク 覗きの目から見えなくなります。利用可能なら、これが最善の選択肢です。SASL を 使うには、システムに Cyrus SASL ライブラリがインストールされていて、 かつ、 --with-saslフラグ付きで mutt をコンパイルする必要があります。

Mutt は、コンパイル時に組み込まれ、かつサーバ側の利用可能な方法をすべて 試していきます。順番は SASL, ANONYMOUS, GSSAPI, CRAM-MD5, LOGIN です。

認証を制御する変数がいくつかあります

  • $imap_user - IMAP サーバへ認証を要求す るユーザ名を制御し、すべての認証方法で使われます。れはメールボックスのパスに 明示的に含まれるユーザ名 (つまり {user@host} 形式のメール ボックスを使うこと)によって上書きされます。

  • $imap_pass - あらかじめ設定しておくパスワードで、 パスワードを必要とするすべての認証方法に使います。

  • $imap_authenticators - コロンで 区切られた 試行したい順で並んでいる IMAP 認証方法リストです。指定されると、 Mutt の既定値(上記の順ですべてを試みる)を上書きします。

5. SMTP サポート

sendmail 互換のプログラムを使った従来型のメール配信のサポートに加え、 Mutt は--enable-smtpを指定して構成、ビルドされていれば、 SMTP 配信をサポートします。

設定変数 $smtp_url が設定されている場合、Mutt は メッセージを配送するために、指定された SMTP サーバに接続を試みます。 設定されていない場合は、$sendmail で指定された プログラムを使います。

URL文法の詳細については、Section 1.2, “URL の文法”を参照してください。

内蔵の SMTPサポートは SASL を使った SMTP 認証と同じように、暗号化 (SSL 又は TLS を使ったsmtpsプロトコル)をサポートします。 SASL に対する認証のメカニズムは $smtp_authenticatorsで指定され、 既定値は空のリストで、この場合、Mutt は、もっともセキュアな方法からもっとも セキュアでない方法まで、利用できるすべての方法を試します。

6. OAUTHBEARER サポート

外部スクリプト経由で、 IMAP, POP,と SMTP に対する OAUTHのサポートも 準備段階ですが、提供しています。

少なくとも Gmail については、Google の gmail-oauth2-tools https://github.com/google/gmail-oauth2-tools/blob/master/python/oauth2.pyoauth2.pyスクリプトを使う事が出来ます。

ここから Gmail に対するクライアント認証情報を取得する必要があります: https://console.developers.google.com/apis/credentials

Then, you'd use oauth2.py with --generate_oauth2_token to get a refresh token, and configure mutt with: 次に、--generate_oauth2_tokenをつけたoauth2.py を使い、リフレッシュしたトークンを取得し、以下のように mutt を設定します。

set imap_authenticators="oauthbearer"
set imap_oauth_refresh_command="/path/to/oauth2.py --quiet --user=[email_address]\
    --client_id=[client_id] --client_secret=[client_secret]\
    --refresh_token=[refresh_token]"

上記の例にある、imap を pop または smtp に置き換えて設定します。

7. 複数アカウントの管理

Usage:

account-hook regexp command

複数の IMAP, POP と SMTP サーバ用アカウントを持っている場合、すべての認証設定を 管理するのは不便で間違いやすくなります。そうなることがないよう、 account-hookコマンド が手助けをします。この hook は folder-hookと同じように 動作しますが、Mutt がリモートのメールボックスにアクセスする必要があるときに (フォルダブラウザの中を含みます)起動されますが、メールボックスオープン時では ありません。これは、(例えば)新規メールの取得、Fcc メッセージの格納とフォルダへの メッセージの格納を含みます。結果として、 account-hookは パスワードやトンネルコマンドのような、接続に関する設定にのみ使い、送信者のアドレスや 名前の設定には使うべきではありません(一般的に、どの account-hookが最後に使われたか 予測不可能と考えられるからです)。

以下はいくつかの例です:

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"'
account-hook smtp://user@host3/ 'set tunnel="ssh host3 /usr/libexec/smtpd"'

複数のアカウントを管理するには、たとえば、 $recordまたは送信者アドレスの異なった値、 folder-hookを、 mailboxes コマンドと いっしょに使う必要があります。

Example 6.2. 複数アカウントの管理

mailboxes imap://user@host1/INBOX
folder-hook imap://user@host1/ 'set folder=imap://host1/ ; set record=+INBOX/Sent'

mailboxes imap://user@host2/INBOX
folder-hook imap://user@host2/ 'set folder=imap://host2/ ; set record=+INBOX/Sent'

Example 6.2, “複数アカウントの管理”の例では、フォルダは mailboxesで定義されるので、 Mutt はそれらから新規メールを取得します。各 IMAP アカウント配下のあるメール ボックスがオープンされ、アカウントのルートフォルダとして、 $folderが設定したときに 各folder-hookトリガは、 起動されます。次に、$recordを、新しく設定された $folderの下のINBOX/Sentフォルダに 設定します。+ mailbox shortcut が参照する値は現在$folderの 値に依存するので、アカウント毎に分けて設定する必要があります。 $from$signatureのような 他の値は、$recordの設定に似ています。

8. ローカルでのキャッシング

Mutt には2種類のローカルキャッシュ機能があります。 (1) header cachingと呼ばれているものと、 (2) body caching と呼ばれているものです。 それぞれこの節で説明します。

ヘッダキャッシングは、オプションで、外部ライブラリに依存し、body キャッシングは、 Mutt が POP または IMAP サポートが使えるようにコンパイルされている場合は 常時有効になっています(body キャッシングは外部ライブラリを必要としません)。

8.1. ヘッダキャッシング

Mutt は、IMAP, POP, Maildir と MH タイプのフォルダに対してメッセージヘッダの キャッシングのサポートをオプションとして提供しています。ヘッダキャッシングは、 リモートフォルダの場合、通常ヘッダを1回だけダウンローードする必要があるため、 大きなフォルダを開くスピードを劇的に向上させます。Maildir と MH では、 単一のファイルからヘッダを読むことは、おそらく数千のファイルを見るよりも はるかに高速です(Maildir と MH はメッセージ1つに付き1つのファイルのため)。

ヘッダキャッシュは設定スクリプトに--enable-hcacheオプションを 指定して有効に出来ます。これは、外部データベースライブラリが必要なため、 既定では有効になっていません。tokyocabinet, kyotocabinet, lmdb, qdbm, gdbm 又は bdb のどれかが存在している必要があります。

有効にした場合、ファイルまたはディレクトリを指定するのに $header_cacheが使えます。ファイルを指定するように 設定した場合、すべてのフォルダに対して1つのデータベースが使われます (スピードは遅くなります)が、ディレクトリを指定した場合は、1つのファイルが フォルダ単位になります。

8.2. Body キャッシング

両方のキャッシュ方法は、ストレージの同じディレクトリを使うよう組み合わせ出来ます (IMAP/POPでは意味のあるファイル名を提供することも出来ます)。こうすることで、 手動のメンテナンス処理を簡略化できます。

さらに、メッセージヘッダのみをキャッシングするため、Mutt はメッセージ本体全体を キャッシュすることも出来ます。メッセージは通常1回だけダウンロードしなければならない という理由のため、POP と IMAP でメッセージの表示が結果として速くなります。

設定時、変数$message_cachedir はディレクトリを指さなければなりません。そして、Mutt はキャッシュの対象となる アカウントおよびメールボックスのような名前のサブディレクトリの階層を作成します。

8.3. キャッシュディレクトリ

ヘッダとbody両方のキャッシングのために、 $header_cache$message_cachedir は 同じ値に安全に設定できます。

ヘッダ又は body キャッシュディレクトリ中で、Mutt は protopopimapの ような名前のディレクトリ階層を作成します。そして、各フォルダに対して、 Mutt はメッセージを単一のファイルに格納し、.hcache拡張子を 持つファイル中にヘッダをキャッシュします。Mutt が足らない項目を再度静かに 取得するため、消費されたディスク容量が問題になったときに、すべてのファイルは 必要に応じて削除されます。パス名は常時 UTF-8 エンコードされて格納します。

Maildir と MH では、ヘッダキャッシュファイル名は、パスの MD5 チェックサムに 基づいて命名されます。

8.4. メンテナンス

Mutt には、ヘッダキャッシュファイルをメンテナンスする機能のサポートが(まだ) ないので、ファイルが大きくなりすぎた場合には、削除しなければなりません。 メッセージを削除することによって解放されたディスクスペースが再度使われるか どうかは、ヘッダキャッシュを行う時に使うデータベースライブラリに依存します。

body キャッシュについては、 $message_cache_clean変数が設定されて いる場合、Mutt はローカルキャッシュをリモートメールボックスと同期させることが 出来ます。クリーンにするということは、すでにメールボックスにないメッセージを キャッシュから削除することという意味です。これは、他の、メールクライアントか Mutt のインスタンスが、異なった位置の body キャッシュを使って、メッセージを 削除したときにのみ発生します(Mutt 自身はメールボックスの同期を行ったときに キャッシュから削除されたメッセージを消去します)。クリーンには気がつくくらいの 時間がかかる場合があるので、一般的に設定すべきではなく、設定するのはレアケースです。

9. 正確なアドレスの生成

Mutt はメッセージの読み書きに、Name <user@host>という アドレス形式をサポートします。古いuser@host (Name)形式は メールを読むときにのみサポートします。--enable-exact-address スイッチを build 時に configure に渡すと、後者の形式を書き込み時にもサポート するようになります。mutt -vの出力中における EXACT_ADDRESSは、それがサポートされているかを表示します。

注意: 完全なアドレスに非ASCII文字が含まれているか、RFC 2047 エンコーディングが要求されるシーケンスの場合は、Mutt は、正しい出力を 生成するために、正規化されたName <user@host> 形式 の出力に戻ることに注意してください。

10. Mixmaster 経由での匿名メッセージ送信

Mutt を Mixmaster 匿名リメーラ (remailer) と共働するよう 設定してあるかもしれません。 Mixmaster はリメーラのチェーンを使って匿名でメッセージを送信できます。 Mutt の Mixmaster サポートは Mixmaster version 2.04 以降が対象です。

Mixmaster を使うにはいくつかの制限に従わなくてはなりません。 最も重要なのは CcBcc へッダを使えないということです。 Mutt から Mixmaster を使うには、まず編集メニューで mix 機能を使ってリメーラ チェーンを選ばなくてはなりません。

チェーン選択画面は2つの部分に分かれています。上の (広い方の) 部分では使える リメーラの一覧を見ることができます。下の部分では現在選択されている リメーラチェーンを参照できます。

このチェーンの中を<chain-prev>機能と <chain-next>機能を使って渡り歩けます。 この機能は既定では左右の矢印キーと hlキーに 割り当てられています(vi のキーバインドを考えてください)。 新しいリメーラを現在の チェーン位置に挿入するには <insert>機能を使ってください。 リメーラを現在のチェーン位置の後に追加するには <select-entry><append>。 対応する機能を使ってチェーンから項目を消すことも できます。最後に、メニューをそのまま抜けて変更を破棄するか、(既定では) Returnを押して<承認>してください。

リメーラごとに持っている能力が違うということに注意してください。その能力は リメーラメニューの %c の項目で表示されています ($mix_entry_formatを参照)。 最も重要なことは、大文字のMで示されるmiddleman 能力です。これは問題のリメーラが、チェーンの最終要素になれず、 他の mixmaster リメーラにメッセージを転送することのみできるという意味です。他の能力の詳細に ついては Mixmaster の文書を見てください。

11. サイドバー

メールボックスの概要

11.1. はじめに

サイドバーにはすべてのメールボックス一覧が表示されます。このリストは ON/OFFでき、テーマやリストの形式を設定できます。

11.2. 変数

Table 6.1. サイドバー変数

名前タイプ既定値
sidebar_delim_chars文字列/.
sidebar_divider_char文字列|
sidebar_folder_indent論理値no
sidebar_format文字列%B%* %n
sidebar_indent_string文字列   (two spaces)
sidebar_new_mail_only論理値no
sidebar_next_new_wrap論理値no
sidebar_short_path論理値no
sidebar_sort_methodenumunsorted
sidebar_visible論理値no
sidebar_width数値20

11.3. 機能

サイドバーはMutt に以下の機能を追加します。 既定では、どの機能もキーに割り当てられていません。

Table 6.2. サイドバーの機能

メニュー機能説明
index,pager<sidebar-next>ハイライトを次のメールボックスに移動
index,pager<sidebar-next-new>ハイライトを、新しいメールがある次のメールボックスに移動
index,pager<sidebar-open>ハイライトされたメールボックスをオープン
index,pager<sidebar-page-down>サイドバーを1ページ下にスクロール
index,pager<sidebar-page-up>サイドバーを1ページ上にスクロール
index,pager<sidebar-prev>ハイライトを1つ前のメールボックスに移動
index,pager<sidebar-prev-new>ハイライトを、新しいメールがある1つ前のメールボックスに移動
index,pager<sidebar-toggle-visible>サイドバーを表示(非表示)

11.4. コマンド

sidebar_whitelist mailbox [ mailbox ...]
unsidebar_whitelist { * | mailbox ... }

このコマンドは、 $sidebar_new_mail_only が設定されていて、メールボックスに新規メールがなかったとしても、 サイドバーに常時表示されるメールボックスを指定します。

unsidebar_whitelistはホワイトリストにあるメールボックス一覧から メールボックスを削除するのに使います。unsidebar_whitelist * は すべてのメールボックスを削除します。

11.5. 色

Table 6.3. サイドバーの色

名前既定の色説明
sidebar_dividerdefaultインデックス/ページャパネルとサイドバーの間の分離行
sidebar_flaggeddefaultフラグが付いているメールがあるメールボックス
sidebar_highlightunderlineメールボックスを選択するカーソル
sidebar_indicatormutt indicatorインデックスパネル中でオープンしているメールボックス
sidebar_newdefault新規メールを含むメールボックス
sidebar_spoolfiledefault着信メールを受信するメールボックス

If the sidebar_indicator color isn't set, then the default Mutt indicator color will be used (the color used in the index panel). sidebar_indicatorに色が設定されていない場合、既定の Mutt の インジケータの色が使われます((インデックスパネルで使われている色)。

11.6. 整列

Table 6.4. サイドバーの整列

整列方法説明
alphaパス又はラベルのアルファベット順
countメッセージの総数順
flaggedメッセージのフラグ数順
nameパスまたはラベルのアルファベット順
new未読メール数順
pathパスのアルファベット順
unread未読メール数順
unsortedパスによる整列をしない

12. 圧縮されたフォルダ機能

圧縮されたメールボックスへの読み書き

12.1. 概要

圧縮フォルダパッチは、Mutt が圧縮されたメールボックスファイルを読めるようにします。 しかし、圧縮ファイルだけに限ったものではありません。暗号化されたファイル にも同じように動作します。実際、特定のフォーマットに対して変換したり戻したり するプログラム/スクリプトを作れば、それを使って Mutt は読むことが出来ます。

パッチは open-hook, close-hookappend-hook と言う3つのフックをMutt に追加します。 これらは、ファイルの解凍、圧縮、すでに圧縮されたファイルへのメッセージの 追加というコマンドを定義します。

以下は、圧縮または暗号化されたファイルに対するいくつかの例です。 現時点では、ドキュメントは圧縮ファイルを中心にして記載しています。

12.2. コマンド

open-hook pattern shell-command
close-hook pattern shell-command
append-hook pattern shell-command

シェルコマンドにはファイル名に対する2つのプレースフォルダ %f%tが含まれていなければ なりません。これらは入力出力ファイル名に 置き換えられます。これらは、予期しないシェルでの展開を防ぐために、 シングルクォートの内側におかねばなりません。

コマンド中で正確な文字列%f%tが必要ならば、 単に、%文字を2つ並べます。すなわち、 %%f 又は %%tです。

Table 6.5. すべてのフックが必要ではない

OpenCloseAppend影響Useful if
Open--フォルダがリードオンリフォルダはバックアップ用
OpenClose-フォルダは読み書き可だが何らかの変更があった場合、 フォルダ全体を書き込む必要あり使用する圧縮フォーマットは追加を未サポート
OpenCloseAppendフォルダは読み書き可で、メールを最後に効率よく追加 可能使用する圧縮フォーマットは追加をサポート
Open-Appendフォルダはリードオンリだが追加は可能メールを格納可能だが、それを決して変更できない

Note

コマンドは

  • 失敗時には非ゼロのステータスを返さねばなりません。

  • ファイルを削除してはいけません。

12.2.1. 圧縮されたメールボックスからの読み込み

open-hook regexp shell-command

Mutt がファイルをオープンできない場合、ファイル名に一致する open-hookを探します。

圧縮プログラムが明確に定義した拡張子を使わない場合、正規表現として .を使う事が出来ます。

Example 6.3. open-hookの例

open-hook '\.gz$' "gzip -cd '%f' > '%t'"
  • Mutt はexample.gzというファイルを見つけますが、 そのファイルは読めません

  • Mutt には正規表現がファイル名:\.gz$に一致する open-hookがあります

  • Mutt は、読み込みが可能な テンポラリファイルを作成するgzip -cdコマンドを使います。


12.2.2. 圧縮されたメールボックスへの書き込み

close-hook regexp shell-command

Mutt が圧縮ファイルを使いつつ終了するときには、ファイルを圧縮するために 一致するclose-hookを探します。このフックは オプションです。

Note

フォルダが変更されていない場合は、close-hookは 呼び出されません。

Example 6.4. close-hookの例

close-hook '\.gz$' "gzip -c '%t' > '%f'"
  • open-hookでオープンした example.gzを使いつつ Mutt が終了します

  • フォルダは変更されました

  • Mutt にはその正規表現がファイル名: \.gz$に 一致するclose-hookがあります。

  • Mutt は新しい圧縮ファイルを作成するため、gzip -c コマンドを使います


12.2.3. 圧縮されたメールボックスへの追加

append-hook regexp shell-command

Mutt が圧縮されたメールフォルダに電子メールを追加しようとするとき、 append-hookに一致するものを探します。このフックは オプションです。

append-hookを使うと時間を節約できますが、Mutt は 圧縮したファイルの内側のメールフォルダのタイプを決定できません。

Mutt は$mbox_type変数の方と仮定します。Mutt は このタイプをテンポラリファイルにも使います。

Mutt は存在するファイルに対してはappend-hookのみを使います。 close-hookは、空または存在しないファイルに使います。

Note

コマンドが標準出力に書き込む場合、append-hook中で >>を使う事が重要です。そうしないと、 データがなくなります。

Example 6.5. append-hook の例

append-hook '\.gz$' "gzip -c '%t' >> '%f'"
  • Mutt がopen-hookで開いた example.gz フォルダにメールを追記しようとする

  • Mutt には 正規表現がファイル名 \.gz$に 一致する append-hook がある

  • Mutt は $mbox変数から、メールボックスの タイプを取得する

  • Mutt は既存の圧縮ファイルに追加するため、 gzip -cコマンドを使用する


12.2.4. 空のファイル

Mutt は空のファイルは圧縮されていないものと仮定します。この場合、 $save_emptyを設定しないと、 すべてのメッセージを削除する場合、圧縮ファイルも削除されます。

12.2.5. セキュリティ

暗号化されたファイルは、$tmpdirディレクトリ 中に格納されるテンポラリファイルに解凍されます。これはセキュリティリスクと なり得ます。

13. Autocrypt

Mutt は--enable-autocryptフラグを設定して configureを実行することにより、Autocrypt をサポートします。 Autocrypt はデータ収集における、簡単で受動的な保護を提供します。 キーは、メールに追加されるAutocrypt: ヘッダ経由で 配布されます。これは、アクティブな攻撃者から保護はしないので、 キーリングを経由した、キーの署名とアイデンティティを検証するための信頼のWebを使った、 通常の暗号化のかわりとして考えるべきではありません。これらの制限を理解した 上で、Autocrypt は共通の通信先間で送信される平文のメールを、 明示的なキーの交換なしに、最小限にする機能を提供します。詳細については https://autocrypt.org/ を参照してください。

13.1. 必要条件

Autocrypt は ECC 暗号化のサポートを必要とし、既定では、Mutt は ECC のキーを 生成します。そのため、GnuPC 2.1 以降が必要です。さらに、Mutt の Autocrypt 実装には、GPGME の少なくともバージョン 1.8.0が必要です。

アカウントとピアの情報は sqlite3 データベースに格納されるので、autocrypt が 有効なときには、--with-sqlite3 フラグも付けて Mutt を 構成する必要があります。

--with-idn又は--with-idn2付きで Mutt を構成することを強く推奨します。こうすることにより。Autocrypt は 国際化ドメイン名を適切に扱えるようになります。

Mutt が Autocrypt 用に GPGME を使いますが、通常のキーリング操作はクラシック モード経由で実行できます(すなわち、 $crypt_use_gpgmeを設定しません)。 しかし、不用意なプロンプトを表示させないために、gpg を loopback pinentryモード中で構成しないことを推奨します。 また、$pgp_use_gpg_agentを設定 したままにします(既定値)。

13.2. 最初の実行

Autocrypt を有効にするために、$autocryptを 設定し、必要に応じて muttrc 中の$autocrypt_dir の値を変更します。その後 Mutt を初めて実行すると、 $autocrypt_dirを作成するための プロンプトが表示されます。Mutt はそのディレクトリ中に、自動的に sqlite3 データベースと GPG キーリングを作成します。これらのファイルはプライベートな物と見なすべきなので、 Mutt はモードを 700 にしてこのディレクトリを作成します。 手動でディレクトリを作成する場合は、同じように行う必要があります。

Mutt は$autocrypt_dirディレクトリ セットをGnuPG キーリングディレクトリ(すなわち~/.gnupg) とは別にすることを推奨します。キーは Autocrypt: ヘッダから 自動的にキーリングにインポートされます。標準のweb of trust キーと比較すると、Autocrypt キーは一時的なもので、autocrypt データベースは キーが変更されたり使えなくなったときの追跡用に使われます。これらのキーを 通常のキーリングに混ぜると、 $crypt_opportunistic_encrypt や Autocrypt のような機能を同時に使うのが難しくなります。

$autocrypt_dir変数は、Mutt が実行 している間に変更されることを考えては設計されていません。(必要に応じて) データベースが作成され、起動時に接続されます。変数の変更は、 Mutt がデータベースをある1箇所で、異なった場所でGPG キーリングを探すという 状況が発生し、奇妙な動作が起きる可能性があります。

ディレクトリ、キーリングとデータベースが作成されると、Mutt はアカウントを 作成するかどうか聞いてきます。Autocrypt を使うためには、各送信アドレスに アカウントが必要です。便利なように、最初の実行時にアカウントを作成できます。 後で追加のアカウントを追加したい場合は、既定値では Aに 割り当てられている<autocrypt-acct-menu> 機能を インデックス中で使う事で出来ます。

アカウントの作成時には、最初にメールアドレスを聞いてきます。次に、新しい キーを作るか、既存のキーを使うかを聞いてきます(キーの選択は、通常最初の 実行時には空白である $autocrypt_dirキーリングから行われ ることに注意してください)。最後に、このアドレスで暗号化を優先するかどうかを 聞いてきます。Autocrypt 1.1 では送信者と受信者が共に 暗号化優先(prefer encryption)としている場合、自動的に暗号化を 有効にします。それ以外では、編集メニューで、autocrypt 暗号化を手動で有効に する必要があります。詳細については、以下の、編集メニュー選択項目を参照して ください。

オプションでアカウントを作成した後、Mutt はメールボックス中から Autocrypt ヘッダを探すように問い合わせてきます。この手順は、ヘッダがキャッシュされた メッセージはAutocryptヘッダを再スキャンしないと言う理由で発生します。 このステップ中でのスキャンは各メールボックスのオープン時に、一時的に ヘッダキャッシュを無効にします。これを後で手動で行う場合は、 $header_cacheの設定を解除し、メール ボックスをオープンすることで、同じことをシミュレートできます。

最後の技術的な注意事項: 最初の実行プロセスは、muttrc の読み出しと、 最初のメールボックスのオープンの間に起こります。一部の muttrc ファイルは、 メールボックスのオープン後に実行されるマクロをpush します。これを最初の実行時のプロンプトと干渉することを防ぐため、 Mutt は最初の実行時の間、すべてのマクロを無効にします。

13.3. 編集メニュー

有効にした場合、Autocrypt は Autocrypt:Recommendation:という2つのフィールドを持つ2行を、編集メニューに 追加します。

Autocrypt:フィールドは、送信時にAutocrypt によって メッセージが暗号化されるか否かを示します。これには EncryptOffという2つの値が持てます。 Encryptは、既定でoに割り当てられている <autocrypt-menu>機能を使うことで有効に出来ます。

Recommendation:フィールドは、Autocrypt レコメンデーション エンジンの出力を表示します。これは以下の5つの値のうちのどれかになります。

  • Offはエンジンが無効であることを意味します。 これは、From アドレスがautocryut アカウントを持っていないか、 アカウントが手動で無効化されている場合に発生します。

  • Noは、1つ以上の受信者がautocrypt キーを 持っていないか、見つかったキーが使用できない場合を意味します (すなわち、満了、廃止、無効、不正、あるいは暗号化には使えない)。

  • Discouragedは、各受信者に対するキーは見つかったけれど、 エンジンが、受信者がメッセージを復号化できるとは思っていないという ことを意味します。これは、キーが最近使われていない場合( 最後のメールと比較して)に発生します。

    これは、キーが送信者から直接見られなかった場合にも発生します。 Autocrypt はグループで暗号化されたメール中に受信者のキーを含めることが 出来る機能を持っています。これにより、他の受信者の1人から直接キーを もらっていない会話に返信できるようになります。しかし、これらのキーは メールから直接と同じくらいには信用されていないので、エンジンは、 Discouragedステータスを出すことで警告を行います。

  • Availableは、各受信者に対してキーが見つかり、 すべてのキーが最新で、受信者から直接見られていると、 エンジンが信じていることを意味します。しかし、自分自身あるいは 受信者の1人が、暗号化優先(prefer encryption)を 指定していないことを選択している状態です。

  • YesAvailableと同じですが、 受信者全員が暗号化優先(prefer encryption)を指定して いる所が違います。この値は<pgp-menu>を使用して 手動でOFFにするか、通常の暗号化か署名を有効にするまで、自動的に 暗号化を有効にします。

上記のように、既定でoに割り当てられている <autocrypt-menu>機能は、Encrypt: フィールドの値を変更するのに使う事が出来ます。(e)ncryptは 暗号化をONにします。(c)learは暗号化をOFFにします。 両者のどちらかを選択した場合、Recommendation:フィールドに 何が表示されていたとしても、フィールドはそのままの状態になります。最後に、 (a)utomaticはレコメンデーションエンジンの出力をベースに した値に設定します。

Autocrypt暗号化は通常の暗号化や署名を引き継ぎます。通常の暗号化または署名 を有効にする場合はいつでもautcrypt による暗号化を OFF にします。唯一の例外は、autocrypt で暗号化したメールに返信する場合です (すなわち、$autocrypt_dirキーリングで 復号化したメール)。次に、$autocrypt_reply設定されている場合、autocrypt モードが強制的にONになり、 $crypt_autosign, $crypt_autoencrypt, $crypt_replyencrypt, $crypt_replysign, $crypt_replysignencrypted$crypt_opportunistic_encrypt の設定を上書きします。

メッセージ送信を延期する場合、autocrypt は $postpone_encryptの設定を優先しますが、 メッセージの暗号化に autocrypt アカウントキーを使います。 autocrypt 暗号化をするようにマークした延期メッセージをちゃんと暗号化するように、 $postpone_encryptを確実に設定して ください。

13.4. アカウントの管理

Autocrypt アカウントメニューは、既定でAに割り当てられている <autocrypt-acct-menu>を使ってインデックスから利用できます。 機能の一覧とその既定のバインディングについては Autocrypt Account Menuを参照して 下さい。

このメニューでは、新しいアカウントの作成、アカウントの削除、アカウントの 有効/無効切り換え とアカウントのprefer encryptionフラグの ON/OFFができます。

アカウントの削除は、データベースからアカウント削除のみ行います。 GPG キーはそのままなので、過去に暗号化したメールを読むことが引き続き出来ます。

Autocrypt 1.1のSetup Message機能はまだ有効にはなって いませんが、将来追加される予定です。

13.5. 代替キーとキーリングの戦略

Mutt は既定で通常のキーリング暗号化/署名からAutocryptを分離します。 これは、($autocrypt_dir中の)分離された GPGキーと、アカウント用のキーリング中に新しい ECC キーを作成することで 行われます。既定でこれを行うことはよい理由があります。メールヘッダ中に あるランダムなキーを、通常のキーリングの外に置くからです。ECC キーは コンパクトで、メールのヘッダに適しています。Autocrypt キー選択機能は、 信頼と有効性とは異なる、最後に見たルールがベースのweb of trust キー選択とは全く異なります。また、Mutt は Autocrypt 暗号化メールを通常の 暗号化メール特別視、各タイプのメールに返信する時に、モードを適切に 設定することもします。

なお、一部のユーザでは通常のキーリングにある既存のキーを Autocryptにも 使用したい場合があります。これを成し遂げるには2つの方法があります。 推奨される方法は、通常のキーリングディレクトリ (すなわち~/.gnupg)を $autocrypt_dirに設定することです。 アカウント作成中に、(s)elect existing GPG keyを作成すると、 新しいアカウント用の既存キーが一覧表示され、選択できるようになります。

代替の方法は、キーをAutocryptキーリングにコピーすることですが、いくつか 重大な弱点があります。Mutt は最初にAutocrypt キーリングを 使ってメッセージの復号化を試み、それが失敗した場合、2番目に通常のキーリング の使用を試みます。これは、そのキーに対応するすべての暗号化メールが復号化され、 Autocryptキーリングからの署名が検証されることを意味します。 キーの署名と通常のキーリングからの web of trust はもはや復号化時に 署名中に表示されなくなります。

上記の理由により、既存キーを通常のキーリングから使おうとした場合、 $autocrypt_dir~/.gnupgに設定することを推奨します。これにより、 web of trustが検証されたメッセージに適切な署名メッセージを 表示できるようになります。Autocrypt ヘッダキーは暗黙でキーリングに インポートされますが、それらを混ぜたくない場合は、そのかわりに分離された autocrypt キーとキーリングを使う事を強くお勧めします。

両方の方式にはいくつかの注意事項があります。

  • Autocrypt で復号化されたメッセージに既定で返信すると、Autocrypt モードを 強制的にONにします。同じキーを共有することで、すべての返信は、 たとえメッセージがAutocryptの相手の1つから送られてこなかった場合でも Autocrypt モードで開始されます。 $autocrypt_replyは、返信時に モードのマニュアル制御を可能にするため、設定解除 できます。

  • Mutt が GPG キーからアカウントを作成するときは、公開鍵をエクスポートし、 base64でエンコードし、sqlite3 データベースにその値を格納します。 値は、発信するメールに追加されるAutocrypt ヘッダ中で使われます。Mutt が 生成する ECC キーは変更されませんが、満了した外部キーを使う場合、 満了期間を再延長するときは、 account menuを使って、 Autocrypt アカウントを再生成する必要があります。それ以外は、Autocrypt ヘッダには、エクスポートされた、古い満了したキーデータが含まれます。

Chapter 7. セキュリティについての考慮

まず最初に、Mutt は作為的なセキュリティホールは含まれていませんが、未知の セキュリティホールが有るかもしれません。結果として、可能な限りパーミッションを 絞ってMutt を実行してください。特に、root では実行しないでください。

Mutt を構成するとき、セキュアに設定するためのいくつかの注意事項がありますので、 この章を注意深く読んでください。

1. パスワード

Mutt はアカウント用の種々のパスワードを受け取りますが、決して設定ファイルにパスワードを 格納しないでください。さらに、システムのオペレータが常時それを見ることが出来、 バグを報告したり、メーリングリスト経由でヘルプを求めたりするときに、マスクする ことを忘れてしまうということもあります。もっと悪いことに、インターネット検索 エンジンや、メールからnetnews のゲートウェイなどによって、パスワードを含むメールが アーカイブされてしまったりすることもありえます。失敗に気づいても遅すぎるかも しれません。

2. 一時ファイル

Mutt はメールの表示、電子署名の懸賞などに多くの一時ファイルを使います。これらが 使われている間は、他のユーザから見えていて、設定間違いがあった場合には、 読めてしまうかもしれません。同様に、$tmpdir変数を 使って変更できる、別の位置が必要になることもあります。

3. 情報漏洩

3.1. Message-Id: ヘッダ

Message-Id: ヘッダにはユニークな方法で作成されたローカルパートが含まれています。 そのため、Mutt はメッセージを送信するときに、外部に対していくつかの情報を 漏洩します。このヘッダの生成には、各メッセージが送信されるときに 増加(そしてローテートされる)するステップカウンタ値が含まれています。その他の 部分には、日付、時間、mutt の PIDと$hostnameが 含まれます。 muttセッションを長時間動かすと、送信されたメッセージの数に依存して他の人がメール 操作の動向を推測できます。これを望ましくないと思うのであれば、(推奨しませんが) $edit_headersを使って手動でヘッダを提供する ことができます。

3.2. mailto:形式のリンク

Mutt は Webサイト中にあるmailto:形式のリンクを処理できる メールクライアントとして設定できるので、この点もセキュリティに関する考慮事項 となります。そのリンクに、既存ヘッダフィールドを上書きしたり、  the Attach: pseudoheaderを使った任意の 添付ファイルをつけたヘッダフィールドを埋め込むことが出来ます。これは、 $edit-headers変数がunset、 すなわち、編集時にヘッダ表示をせず、編集メニューの添付一覧に十分気を払わない 場合に、問題となり得ます。

例えば以下のリンク

mailto:joe@host?Attach=~/.gnupg/secring.gpg

は、画面上の情報に十分気をつけないと、joe@hostに プライベート gnupg キーを送信してしまいます。

To この問題を防ぐために、Mutt は既定で SubjectBody ヘッダのみを受け付けます。 許可するヘッダは mailto_allowunmailto_allow コマンドで 調整できます。

4. 外部アプリケーション

種々の場所にある Mutt は 外部アプリケーションに依存するか、利便性のため、 外部アプリケーションを起動する機能をサポートしています。

それらの1つは RFC 1524で定義されたmailcap機構です。 mailcap 機構のセキュアな使い方の詳細は、Section 3.2, “Mailcapの安全な使用方法”を 参照してください。

mailcap機構のほかに、Mutt は、たとえば、暗号化サポートの提供、設定ファイル中や フォーマット文字列中でのバッククォート拡張などの操作のために、数多くの 外部ユーティリティを使います。これらにもmailcap 経由で起動されるツールと同じ ようないくつかのセキュリティについての考慮事項が適用されます。

Chapter 8. パフォーマンスチューニング

1. メールボックスの描画と書き込み

メールボックスを読むときのMutt のパフォーマンスは以下の2つの方法で向上できます:

  1. リモートフォルダ(IMAP とPOP) については、メッセージ1つに1つのファイルを使う ストレージ(Maildir とMH)と同じように、Mutt のパフォーマンスは header cachingを使う事で劇的に向上できます。 1つのフォルダ毎に1つのデータベースを使います。

  2. Mutt は、進捗カウンタを更新する間隔を指定するのに使用する $read_inc$write_inc変数を提供します。これらの値を 小さくしすぎると、Mutt は実際にフォルダを読み書きするのに費やすよりも進捗カウンタの 更新により多くの時間を費やす可能性があります。

    For example, when opening a maildir folder with a few thousand messages, the default value for $read_inc may be too low. It can be tuned on on a folder-basis using folder-hooks: たとえば、数千メッセージがある maildir フォルダを開く時には、 $read_incの既定値は小さすぎます。 folder-hooksを使って 以下のように、フォルダ単位でチューニング出来ます。

    # use very high $read_inc to speed up reading hcache'd maildirs
    folder-hook . 'set read_inc=1000'
    # use lower value for reading slower remote IMAP folders
    folder-hook ^imap 'set read_inc=100'
    # use even lower value for reading even slower remote POP folders
    folder-hook ^pop 'set read_inc=1'

上記の設定はメッセージ単位で動作します。しかし、メッセージのサイズが大きく異なり、 他のものより特定の操作がより高速な場合、進行状況の更新を少なすぎるか多すぎるか どちらかで生成してしまうので、インクリメント変数をフォルダ単位で設定しても 望ましくない場合があります。そのため、Mutt は実際に端末に送られる、秒単位での 進行状況の表示数を、$time_inc変数を使って 制限できます。、

2. リモートフォルダからのメッセージの読み込み

IMAP や POP のような、リモートフォルダからのメッセージの読み込みは、 Mutt が非常にごくわずかの、最近見たメッセージ(通常は10)のみをキャッシュするため、 特に大きなメールボックスの場合、遅くなることがあります(そのため、次の セッションでは失われます)。

パフォーマンスの向上と恒久的なキャッシュするための詳細については、 Mutt のbody cachingheader cachingを参照してください。

さらに、いくつかの、Mutt の実験的な機能は試す価値があります。 (ヘッダキャッシングを要求する)$imap_qresync は、IMAPサーバがサポートする場合、メールボックスのオープンするスピードを 大幅に改善できます。$imap_deflateは、 巨大なメールボックスとメッセージのダウンロード時間を大幅に削減出来る圧縮機能を 有効にします。

3. 検索と制限

検索または制限操作のどちらかを使ってメールボックスを検索する場合、いくつかの パターンでは、Mutt は正規表現と文字列検索を区別します。正規表現では、 パターンの前には~が付き、文字列検索の場合には前に =が付きます。

正規表現の検索が早いにもかかわらず、特に大きなフォルダで顕著ですが、 単純な文字列検索よりも数倍遅くなります。結果として、検索パターンをよく分かって いる場合、正規表現の代わりに文字列検索を使う必要があります。

たとえば、作成者へ、またはからのすべてのメッセージに、大きなフォルダを制限する 時は、メールのアドレスの最初の部分に、~Luser@の代わりに =Luser@を使う方が非常に高速です。これは特に、大量の入力が 検索されるため、メッセージ本体の検索に当てはまります。

正規表現では、小文字の文字列検索パターンは、IMAP を除いて大小文字を意識しないで Mutt は検索を実行します(IMAP は大小文字を意識するので)。

Chapter 9. リファレンス

Table of Contents

1. コマンド行操作
2. 設定コマンド
3. 設定変数
3.1. abort_noattach
3.2. abort_noattach_regexp
3.3. abort_nosubject
3.4. abort_unmodified
3.5. alias_file
3.6. alias_format
3.7. allow_8bit
3.8. allow_ansi
3.9. arrow_cursor
3.10. ascii_chars
3.11. askbcc
3.12. askcc
3.13. assumed_charset
3.14. attach_charset
3.15. attach_format
3.16. attach_sep
3.17. attach_split
3.18. attribution
3.19. attribution_locale
3.20. auto_subscribe
3.21. auto_tag
3.22. autocrypt
3.23. autocrypt_acct_format
3.24. autocrypt_dir
3.25. autocrypt_reply
3.26. autoedit
3.27. background_edit
3.28. background_confirm_quit
3.29. background_format
3.30. beep
3.31. beep_new
3.32. bounce
3.33. bounce_delivered
3.34. braille_friendly
3.35. browser_abbreviate_mailboxes
3.36. browser_sticky_cursor
3.37. certificate_file
3.38. change_folder_next
3.39. charset
3.40. check_mbox_size
3.41. check_new
3.42. collapse_unread
3.43. compose_format
3.44. config_charset
3.45. confirmappend
3.46. confirmcreate
3.47. connect_timeout
3.48. content_type
3.49. copy
3.50. count_alternatives
3.51. crypt_autoencrypt
3.52. crypt_autopgp
3.53. crypt_autosign
3.54. crypt_autosmime
3.55. crypt_confirmhook
3.56. crypt_opportunistic_encrypt
3.57. crypt_opportunistic_encrypt_strong_keys
3.58. crypt_protected_headers_read
3.59. crypt_protected_headers_save
3.60. crypt_protected_headers_subject
3.61. crypt_protected_headers_write
3.62. crypt_replyencrypt
3.63. crypt_replysign
3.64. crypt_replysignencrypted
3.65. crypt_timestamp
3.66. crypt_use_gpgme
3.67. crypt_use_pka
3.68. crypt_verify_sig
3.69. date_format
3.70. default_hook
3.71. delete
3.72. delete_untag
3.73. digest_collapse
3.74. display_filter
3.75. dotlock_program
3.76. dsn_notify
3.77. dsn_return
3.78. duplicate_threads
3.79. edit_headers
3.80. editor
3.81. encode_from
3.82. entropy_file
3.83. envelope_from_address
3.84. error_history
3.85. escape
3.86. fast_reply
3.87. fcc_attach
3.88. fcc_before_send
3.89. fcc_clear
3.90. fcc_delimiter
3.91. flag_safe
3.92. folder
3.93. folder_format
3.94. followup_to
3.95. force_name
3.96. forward_attachments
3.97. forward_attribution_intro
3.98. forward_attribution_trailer
3.99. forward_decode
3.100. forward_decrypt
3.101. forward_edit
3.102. forward_format
3.103. forward_quote
3.104. from
3.105. gecos_mask
3.106. hdrs
3.107. header
3.108. header_cache
3.109. header_cache_compress
3.110. header_cache_pagesize
3.111. header_color_partial
3.112. help
3.113. hidden_host
3.114. hide_limited
3.115. hide_missing
3.116. hide_thread_subject
3.117. hide_top_limited
3.118. hide_top_missing
3.119. history
3.120. history_file
3.121. history_remove_dups
3.122. honor_disposition
3.123. honor_followup_to
3.124. hostname
3.125. idn_decode
3.126. idn_encode
3.127. ignore_linear_white_space
3.128. ignore_list_reply_to
3.129. imap_authenticators
3.130. imap_check_subscribed
3.131. imap_condstore
3.132. imap_deflate
3.133. imap_delim_chars
3.134. imap_fetch_chunk_size
3.135. imap_headers
3.136. imap_idle
3.137. imap_keepalive
3.138. imap_list_subscribed
3.139. imap_login
3.140. imap_oauth_refresh_command
3.141. imap_pass
3.142. imap_passive
3.143. imap_peek
3.144. imap_pipeline_depth
3.145. imap_poll_timeout
3.146. imap_qresync
3.147. imap_servernoise
3.148. imap_user
3.149. implicit_autoview
3.150. include
3.151. include_encrypted
3.152. include_onlyfirst
3.153. indent_string
3.154. index_format
3.155. ispell
3.156. keep_flagged
3.157. list_reply
3.158. mail_check
3.159. mail_check_recent
3.160. mail_check_stats
3.161. mail_check_stats_interval
3.162. mailcap_path
3.163. mailcap_sanitize
3.164. maildir_header_cache_verify
3.165. maildir_trash
3.166. maildir_check_cur
3.167. mark_macro_prefix
3.168. mark_old
3.169. markers
3.170. mask
3.171. mbox
3.172. mbox_type
3.173. menu_context
3.174. menu_move_off
3.175. menu_scroll
3.176. message_cache_clean
3.177. message_cachedir
3.178. message_format
3.179. meta_key
3.180. metoo
3.181. mh_purge
3.182. mh_seq_flagged
3.183. mh_seq_replied
3.184. mh_seq_unseen
3.185. mime_forward
3.186. mime_forward_decode
3.187. mime_forward_rest
3.188. mime_type_query_command
3.189. mime_type_query_first
3.190. mix_entry_format
3.191. mixmaster
3.192. move
3.193. narrow_tree
3.194. net_inc
3.195. new_mail_command
3.196. pager
3.197. pager_context
3.198. pager_format
3.199. pager_index_lines
3.200. pager_stop
3.201. pgp_auto_decode
3.202. pgp_autoinline
3.203. pgp_check_exit
3.204. pgp_check_gpg_decrypt_status_fd
3.205. pgp_clearsign_command
3.206. pgp_decode_command
3.207. pgp_decrypt_command
3.208. pgp_decryption_okay
3.209. pgp_default_key
3.210. pgp_encrypt_only_command
3.211. pgp_encrypt_sign_command
3.212. pgp_entry_format
3.213. pgp_export_command
3.214. pgp_getkeys_command
3.215. pgp_good_sign
3.216. pgp_ignore_subkeys
3.217. pgp_import_command
3.218. pgp_list_pubring_command
3.219. pgp_list_secring_command
3.220. pgp_long_ids
3.221. pgp_mime_auto
3.222. pgp_replyinline
3.223. pgp_retainable_sigs
3.224. pgp_self_encrypt
3.225. pgp_show_unusable
3.226. pgp_sign_as
3.227. pgp_sign_command
3.228. pgp_sort_keys
3.229. pgp_strict_enc
3.230. pgp_timeout
3.231. pgp_use_gpg_agent
3.232. pgp_verify_command
3.233. pgp_verify_key_command
3.234. pipe_decode
3.235. pipe_sep
3.236. pipe_split
3.237. pop_auth_try_all
3.238. pop_authenticators
3.239. pop_checkinterval
3.240. pop_delete
3.241. pop_host
3.242. pop_last
3.243. pop_oauth_refresh_command
3.244. pop_pass
3.245. pop_reconnect
3.246. pop_user
3.247. post_indent_string
3.248. postpone
3.249. postponed
3.250. postpone_encrypt
3.251. postpone_encrypt_as
3.252. preconnect
3.253. print
3.254. print_command
3.255. print_decode
3.256. print_split
3.257. prompt_after
3.258. query_command
3.259. query_format
3.260. quit
3.261. quote_regexp
3.262. read_inc
3.263. read_only
3.264. realname
3.265. recall
3.266. record
3.267. reflow_space_quotes
3.268. reflow_text
3.269. reflow_wrap
3.270. reply_regexp
3.271. reply_self
3.272. reply_to
3.273. resolve
3.274. resume_draft_files
3.275. resume_edited_draft_files
3.276. reverse_alias
3.277. reverse_name
3.278. reverse_realname
3.279. rfc2047_parameters
3.280. save_address
3.281. save_empty
3.282. save_history
3.283. save_name
3.284. send_group_reply_to
3.285. score
3.286. score_threshold_delete
3.287. score_threshold_flag
3.288. score_threshold_read
3.289. search_context
3.290. send_charset
3.291. send_multipart_alternative
3.292. send_multipart_alternative_filter
3.293. sendmail
3.294. sendmail_wait
3.295. shell
3.296. sidebar_delim_chars
3.297. sidebar_divider_char
3.298. sidebar_folder_indent
3.299. sidebar_format
3.300. sidebar_indent_string
3.301. sidebar_new_mail_only
3.302. sidebar_next_new_wrap
3.303. sidebar_relative_shortpath_indent
3.304. sidebar_short_path
3.305. sidebar_sort_method
3.306. sidebar_use_mailbox_shortcuts
3.307. sidebar_visible
3.308. sidebar_width
3.309. sig_dashes
3.310. sig_on_top
3.311. signature
3.312. simple_search
3.313. size_show_bytes
3.314. size_show_fractions
3.315. size_show_mb
3.316. size_units_on_left
3.317. sleep_time
3.318. smart_wrap
3.319. smileys
3.320. pgp_mime_signature_filename
3.321. pgp_mime_signature_description
3.322. smime_ask_cert_label
3.323. smime_ca_location
3.324. smime_certificates
3.325. smime_decrypt_command
3.326. smime_decrypt_use_default_key
3.327. smime_default_key
3.328. smime_encrypt_command
3.329. smime_encrypt_with
3.330. smime_get_cert_command
3.331. smime_get_cert_email_command
3.332. smime_get_signer_cert_command
3.333. smime_import_cert_command
3.334. smime_is_default
3.335. smime_keys
3.336. smime_pk7out_command
3.337. smime_self_encrypt
3.338. smime_sign_as
3.339. smime_sign_command
3.340. smime_sign_digest_alg
3.341. smime_sign_opaque_command
3.342. smime_timeout
3.343. smime_verify_command
3.344. smime_verify_opaque_command
3.345. smtp_authenticators
3.346. smtp_oauth_refresh_command
3.347. smtp_pass
3.348. smtp_url
3.349. sort
3.350. sort_alias
3.351. sort_aux
3.352. sort_browser
3.353. sort_re
3.354. spam_separator
3.355. spoolfile
3.356. ssl_ca_certificates_file
3.357. ssl_client_cert
3.358. ssl_force_tls
3.359. ssl_min_dh_prime_bits
3.360. ssl_starttls
3.361. ssl_use_sslv2
3.362. ssl_use_sslv3
3.363. ssl_use_tlsv1
3.364. ssl_use_tlsv1_1
3.365. ssl_use_tlsv1_2
3.366. ssl_use_tlsv1_3
3.367. ssl_usesystemcerts
3.368. ssl_verify_dates
3.369. ssl_verify_host
3.370. ssl_verify_partial_chains
3.371. ssl_ciphers
3.372. status_chars
3.373. status_format
3.374. status_on_top
3.375. strict_threads
3.376. suspend
3.377. text_flowed
3.378. thorough_search
3.379. thread_received
3.380. tilde
3.381. time_inc
3.382. timeout
3.383. tmpdir
3.384. to_chars
3.385. trash
3.386. ts_icon_format
3.387. ts_enabled
3.388. ts_status_format
3.389. tunnel
3.390. uncollapse_jump
3.391. uncollapse_new
3.392. use_8bitmime
3.393. use_domain
3.394. use_envelope_from
3.395. use_from
3.396. use_ipv6
3.397. user_agent
3.398. visual
3.399. wait_key
3.400. weed
3.401. wrap
3.402. wrap_headers
3.403. wrap_search
3.404. wrapmargin
3.405. write_bcc
3.406. write_inc
4. 機能(関数)
4.1. Generic Menu
4.2. Index Menu
4.3. Pager Menu
4.4. Alias Menu
4.5. Query Menu
4.6. Attachment Menu
4.7. Compose Menu
4.8. Postpone Menu
4.9. Browser Menu
4.10. Pgp Menu
4.11. Smime Menu
4.12. Mixmaster Menu
4.13. Editor Menu
4.14. Autocrypt Account Menu

1. コマンド行操作

引数なしでmuttを実行すると、Mutt はスプールにあるメールボックスを 読もうとします。しかし、他のメールボックスを読んだり、コマンド行からメールを送ることも 同様に出来ます。

Table 9.1. コマンド行オプション

オプション説明
-A指定した別名の展開
-aメッセージにファイルを添付
-bblind carbon-copy (BCC) アドレスの指定
-ccarbon-copy (Cc) アドレスの指定
-dDEBUGオプションが構成されている場合、デバッグ出力を ~/.muttdebug0 に書き込み。冗長度を表す1-5 の値が指定可能(2 を推奨)
-D変数をすべて標準出力へ表示
-E下書 (-H) や挿入 (-i) ファイルを編集することの指定
-e初期化後に実行するコマンドの指定
-f読み出しメールボックスの指定
-F代替 muttrc ファイルの指定
-hこのヘルプメッセージの表示
-Hへッダとメール本体を読むために下書ファイルを指定
-iメール作成時に Mutt が挿入するファイルの指定
-m既定のメールボックス形式の指定
-nシステム既定の Muttrc を読まないことの指定
-p保留メッセージの再読み出しの指定
-Q設定変数の問い合わせ
-Rメールボックスを読み出し専用モードでオープンすることの指定
-s題名の指定 (空白がある場合には引用符でくくること)
-vバージョンとコンパイル時指定の表示
-xmailx(1) 送信モードのシミュレート
-ymailboxesコマンドで指定されたメニュー中のファイルを表示
-zメールボックス中にメッセージが無ければすぐに終了
-Z新着メッセージが無ければすぐに終了

メールボックス中のメッセージを読むには以下のようにします。

mutt [-nz] [-F muttrc ] [-m type ] [-f mailbox ]

新規メッセージを作成するには以下のようにします。

mutt [-En] [-F muttrc ] [-c address ] [-Hi filename ] [-s subject ] [ -a file [...] -- ] address | mailto_url ...

Mutt はあらかじめ用意されたメッセージを送信するための、バッチモードも サポートしています。これは、送りたいファイルを入力にリダイレクトするだけです。 例は以下のようになります。

mutt -s "data set for run #2" professor@bigschool.edu < ~/run2.dat

これはメッセージを、data set for run #2という題名で、 <professor@bigschool.edu>に送ります。メッセージの本体は ~/run2.datファイルの内容になります。

-iで渡される、挿入されるファイルはメッセージの本体に使われます。 -Eと組み合わせると、挿入するファイルはメッセージの編集中に直接 編集できます。メッセージが送信されるか中断されるかによらず、ファイルは変更され ます。

-Hで渡されるドラフトファイルはメッセージの初期ヘッダと 本体に使われます。ドラフトファイルとしてマルチパートのメッセージも使えます。 -Eと組み合わせると、メッセージが送信、中断あるいは保留 さの状態如何に関わらず、ドラフトファイルは編集後の、メッセージの 最後の状態に更新されます。メッセージが暗号化あるいは署名をつけて送信されると ドラフトファイルはその方法でセーブされることに注意してください。

-a file で渡されたすべてのファイルは メッセージのMIME パートとして添付されます。単一あるいは複数のファイルを添付 するには、--を使ってファイルを分離し、そのあとに受信アドレスを 以下のように記述します。

mutt -a image.png -- some@one.org

又は

mutt -a *.png -- some@one.org

Note

-aオプションはオプションリストの最後に配置しなければなりません。

さらに、メールアドレスの一覧にアクセスするため、Mutt は RFC2368 で定義されている mailto:書式をつかうURL を受け付けます。これは、 mailto リンクを クリックしたときに Mutt が起動するようにWeb ブラウザを設定した時に便利です。

mutt mailto:some@one.org?subject=test&cc=other@one.org

2. 設定コマンド

以下はMutt が処理できるコマンドです。

3. 設定変数

3.1. abort_noattach

Type: quadoption
Default: no

メッセージの本体が $abort_noattach_regexp に一致し、かつ、添付がない場合、 この4択は目セージ送信を中止するかどうかを制御します。

3.2. abort_noattach_regexp

Type: regular expression
Default: attach

メッセージの本体に対して一致する正規表現を指定し、添付ファイルが言及されたが 間違って忘れられたかを決定します。一致した場合、 $abort_noattach は、 メッセージ送信を中止するかを決めるために考慮します。

Mutt 中の他の正規表現と同じように、パターンの中に少なくとも1つの大文字が ある場合は大文字小文字を区別し、それ以外は大文字小文字を区別しません。

3.3. abort_nosubject

Type: quadoption
Default: ask-yes

yes に設定した場合、メッセージを編集中の、題名プロンプトに 題名を指定しない場合、編集が中止されます。no に設定した場合は、 題名プロンプトに題名が指定されなくても中止しません。

3.4. abort_unmodified

Type: quadoption
Default: yes

yes に設定すると、メッセージ本体の編集後に、ファイルへの変更がなければ 自動的に編集を中止します(これは、そのファイルの最初の編集後にのみ 発生します)。no に設定すると、編集は決して中止しません。

3.5. alias_file

Type: path
Default: ~/.muttrc

<create-alias> 機能で作成された別名を保存するための既定のファイル。 このファイルに追加されるエントリは set が設定されている場合、 $config_charset によって指定された文字セットで、そうでない 場合は現在の文字セットでエンコードされます。

Note: Mutt は自動的にこのファイルを読み込ません。このオプションが 専用の別名ファイルを指定している場合、source コマンドを明示的に 実行する必要があります。

このオプションの既定値は、現在使っている muttrc ファイルか、ユーザの muttrc ファイルがない場合は ~/.muttrc となります。

3.6. alias_format

Type: string
Default: %4n %2f %t %-10a   %r

alias メニューで表示されるデータの書式を指定します。以下の、 printf(3) 形式のものが有効です。

%a 別名
%f フラグ - 現時点では削除予定の別名に d が付くだけ
%n インデックス番号
%r 別名展開後のアドレス
%t 別名にタグが付いている場合を示す文字

3.7. allow_8bit

Type: boolean
Default: yes

メール送信時に Quoted-Printable か Base64 を使って 8 ビットデータを 7 ビットに変換するかどうかを制御します。

3.8. allow_ansi

Type: boolean
Default: no

メッセージ中の ANSI 色コード (と、リッチテキストメッセージの色タグ) を解釈するか どうかを制御します。こうしたコードを含むメッセージは稀ですが、 このオプションが set されていれば、相応に着色されます。これは、自分の色選択を上書きしかねない という点や、セキュリティ上の問題さえ引き起こしかねないという点に注意する必要が あります。たとえば、以下のような行がメッセージに含まれているとします。

[-- PGP output follows ...

そして、添付の色と同じ色になっている場合です($crypt_timestampを参照してください)。

3.9. arrow_cursor

Type: boolean
Default: no

setされている場合、行全体をハイライトする代わりに、矢印(->) で、 メニュー中での現在のエントリ位置を表示します。これを使うことで、遅いネットワークや モデム回線で、メニュー中で、前後のエントリに移動するとき、画面の再描画量が 少なくて済むという理由で、反応を早くすることが出来ます。

3.10. ascii_chars

Type: boolean
Default: no

fIsetした場合、Mutt はスレッドや添付ファイルの木構造を表示する際に、既定の fIACS 文字ではなくプレーン ASCII 文字を使います。

3.11. askbcc

Type: boolean
Default: no

setされていると、送信メッセージ編集前にブラインドカーボンコピー (Bcc) の 宛先を入力するよう Mutt が問合せしてきます。

3.12. askcc

Type: boolean
Default: no

setされていると、Mutt は送信メッセージの編集前にカーボンコピー (Cc) の 宛先を問合せしてきます。

3.13. assumed_charset

Type: string
Default: (empty)

この変数は、文字エンコーディングの指定がないメッセージに対するエンコーディング 方式の一覧をコロンで区切ったものです。文字エンコーディングの指定がない、ヘッダ フィールドの値とメッセージ本体の内容は、このリストのどれかで記述されていると 仮定されます。既定では、文字セットの指定がない、すべてのヘッダフィールドと メッセージ本体は us-ascii であると見なされます。

たとえば、日本のユーザは以下のようにするのがよいかもしれません:

set assumed_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"

しかし、メッセージ本体に対しては、最初のもののみが有効です。

3.14. attach_charset

Type: string
Default: (empty)

この変数は、テキストファイルの添付に対する、コロンで区切られた、文字 エンコーディング方式の一覧です。Mutt は $send_charset で指定された適切な 文字セットに変換するため、添付されているエンコードされたファイルのエンコード 状態を推測するために、これを使います。

もし、 unsetであれば、 $charset の値がそのかわりに使われます。 たとえば、以下の設定で、日本語のテキスト処理が動きます。

set attach_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"

日本のユーザ向けには、iso-2022-* を含める場合には、上記のように値の 先頭に配置する必要があります。

3.15. attach_format

Type: string
Default: %u%D%I %t%4n %T%.40d%> [%.7m/%.10M, %.6e%?C?, %C?, %s] 

この値は 添付 メニューでのフォーマットを記述します。以下の printf(3) 形式が指定できます。

%C 文字セット
%c 文字セット変換が必要 (n 又は c)
%D 削除予定フラグ
%d 説明 (ない場合には%F が使われます)
%e MIME content-transfer-encoding
%F content-disposition ヘッダ中のファイル名r (ない場合は %f が使われます)
%f ファイル名
%I disposition (インラインなら I 、 添付なら A)
%m メジャー MIME タイプ
%M MIME サブタイプ
%n 添付ファイル番号
%Q MIME パートが添付ファイルカウントの対象になる場合 Q
%s サイズ (formatstrings-size を参照)
%t タグフラグ
%T 木構造を表示するグラフィカルな文字
%u unlink (=削除対象) フラグ
%X このパート中の、修飾 MIME パートの数とその子 (取り得るスピード効果については attachments 節を参照してください)
%>X 文字列の残りを右寄せし、文字 X で埋めます
%|X 文字列の最後まで文字 X で埋めます
%*X 文字 X を埋め草として soft-fill します

soft-fill の説明については $index_format のドキュメントを参照してください。

3.16. attach_sep

Type: string
Default: \n

タグが付いた添付の一覧を操作するとき(セーブ、印刷、パイプなど) 添付間に追加するためのセパレータ。

3.17. attach_split

Type: boolean
Default: yes

この変数がunsetで、タグが付いた添付の一覧を操作するとき(セーブ、印刷、 パイプなど)、Mutt は添付を結合し、1つの添付として処理します。$attach_sep セパレータが各添付の後に追加されます。setの場合には、Mutt は 添付を1つ1つ処理します。

3.18. attribution

Type: string
Default: On %d, %n wrote:

これは、返信で引用されるメッセージの前に付く文字列です。定義されているprintf(3) 風シーケンスの完全な一覧は $index_format の節にあります。

3.19. attribution_locale

Type: string
Default: (empty)

attribution 文字列中で、日付をフォーマットするためにstrftime(3) で使われるロケール。正しい値は、システムが使うロケール環境変数 $LC_TIME のものになります。

この値は、フックで使う、受信者又フォルダでカスタマイズされる 日付フォーマット属性を許可するためのものです。既定では、Mutt は 使っているロケール環境をを使うので、既定値を上書きする場合以外では、 これを設定する必要はありません。

3.20. auto_subscribe

Type: boolean
Default: no

setの場合、Mutt は List-Post ヘッダの存在が、受信者がメーリングリストに 登録されていることを意味すると仮定します。メーリングリストが unsubscribe 又は unlist リスト中にいない限り、subscribe リストに追加されます。これらを操作し、解釈するとヘッダを読み込む時間が遅くなるので、 既定ではこのオプションは無効になっています。

3.21. auto_tag

Type: boolean
Default: no

setの場合、メッセージに影響するindexメニュー中の機能は (もしもあれば)すべてのタグ付きメッセージに適用されます。設定しない場合、 最初に <tag-prefix>機能(既定で;に割り当てられています)を使い、 すべてのタグ付きメッセージに次の機能を実行させるようにしなければなりません。

3.22. autocrypt

Type: boolean
Default: no

setの場合で、autocrypt を有効にし、ヘッダ経由で交換されるキーを 使って受動的な暗号化による保護を提供します。 詳細はautocryptdocを参照してください。 (これは Autocrypt のみです)

3.23. autocrypt_acct_format

Type: string
Default: %4n %-30a %20p %10s

この変数は、autocrypt accountメニューのフォーマットを決めます。 以下の、printf(3)風のものが使えます。

%a メールアドレス
%k gpg keyid
%n 現在のエントリ番号
%p prefer-encrypt フラグ
%s ステータスフラグ (active/inactive)

(Autocrypt のみです)

3.24. autocrypt_dir

Type: path
Default: ~/.mutt/autocrypt

この変数は、GPG キーリングと sqlite データベースを含む、autocrypt ファイルが どこに格納されるかを設定します。詳細はautocryptdocを参照してください。 (Autocrypt のみです)

3.25. autocrypt_reply

Type: boolean
Default: yes

fIsetの場合、autocrypt メールに対して返信すると、自動的に返信中で autocrypt を有効にします。通常の web-ofstrust で autocrypt に同じキーを使いたい 場合、これを無効にしたいかもしれません。このため、autocrypt はすべての暗号化した 返信に対して強制的に有効にはなりません。 (Autocrypt のみです)

3.26. autoedit

Type: boolean
Default: no

$edit_headers といっしょに setとした場合、Mutt は最初の送信メニュー (題名と受信者の要求)を飛ばして、すぐにメッセージ本文を編集し始めるようになります。 送信メニューは、メッセージの本文を編集した後に、引き続きアクセス出来ます。

Note: このオプションをsetにした場合、初期受信者リストが空なので 新しい(返信でない)メッセージを編集するとき、受信者に依存する send-hooks を使う事が 出来ないことに注意してください。

$fast_reply も参照してください。

3.27. background_edit

Type: boolean
Default: no

set の場合、Mutt はメッセージ編集中に裏で $editor を動かします。 ランディングページが表示され、$editor の終了を待ちます。 ランディングページを終了すると、メールボックスを閲覧したり、他のメッセージを 編集出来るようになります。裏で動いているセッションは <background-compose-menu> 機能経由で戻ることが出来ます。

裏での編集を適切に行うために、 $editor は Mutt ターミナルを使わない エディタを設定する必要があります。たとえば、グラフィカルエディタ、あるいは 別の GNU Screen ウィンドウでエディタを起動する(そして待ち合わせする) スクリプトなどです。

詳細については bgedit (マニュアル中の "バックグラウンド編集")を 参照してください。

3.28. background_confirm_quit

Type: boolean
Default: yes

set の場合、裏で何らかの編集セッションがある場合、 $quit prompt に加えて、Mutt 終了時に確認メッセージを表示します。

3.29. background_format

Type: string
Default: %10S %7p %s

この変数は background compose メニューでのフォーマットを記述します。 以下のprintf(3)風の書式が使用可能です。

%i 親メッセージ id (返信と転送メッセージ用)
%n メニュー上の実行番号
%p $editor process の pid
%r カンマで区切られた To: 受信者のリスト
%R カンマで区切られた Cc: 受信者のリスト
%s メッセージの題名
%S $editor process のステータス: running/finished

3.30. beep

Type: boolean
Default: yes

この変数がsetの時、エラー発生時に Mutt が音を鳴らします。

3.31. beep_new

Type: boolean
Default: no

この変数が set の時、mutt は新着メールを知らせるメッセージを表示するたびに 音を鳴らします。これは$beep 変数の設定とは独立しています。

3.32. bounce

Type: quadoption
Default: ask-yes

メッセージ中継時に、確認のための質問をするかどうかを制御します。これを yesにした場合、本当に中継するかどうかを聞いてきません。noに することは一般的に無益であり、メッセージの中継が出来なくなるため推奨しません。

3.33. bounce_delivered

Type: boolean
Default: yes

この変数をsetにした場合、mutt はメッセージ中継を行うときに、 Delivered-To ヘッダを付与します。Postfix の利用者は、この変数がunset にしたいでしょう。

3.34. braille_friendly

Type: boolean
Default: no

この変数が、setの時、mutt は$arrow_cursor 変数がunsetであっても、 目の不自由な人が点字ディスプレイを使ってメニューを追えるように、カーソルを メニューの先頭に置きます。このオプションは、多くの画面端末がカーソルを非表示に 出来ないため、既定でunset になっています。

3.35. browser_abbreviate_mailboxes

Type: boolean
Default: yes

この変数がsetの場合、mutt は '~' と '=' ショートカットを使って、 ブラウザメールボックスリスト中で、メールボックス名を省略形で表示します。

$sort_browser での既定の"alpha" 設定は、いくつかの区切り文字を 無視する(strcoll(3)を使う)ロケールベースの整列を使います。これにより 整列順が直感的でない場合が発生する可能性があります。そのような場合、 この変数をunsetにした方がよいでしょう。

3.36. browser_sticky_cursor

Type: boolean
Default: yes

この変数を setにした場合、ブラウザは、種々の機能を実行するときに 同じメールボックス上でカーソルを保持するように試みます。これには、 ディレクトリ上位への移動、メールボックスとディレクトリ一覧の切り替え、 メールボックスの作成/削除、見ているメールボックスの切り換えと 新しいマスクの入力が含まれます。

3.37. certificate_file

Type: path
Default: ~/.mutt_certificates

この変数は、信頼している証明書が保存されているファイルを指定します。 不明な証明書が見つかった場合、それを受け入れるか否かが聞かれます。 受け入れる場合、証明者はこのファイルに格納され、その後の接続は自動的に 許可されます。

このファイルに CA 証明書を手動で追加することも出来ます。CA 証明書の1つを 持っている署名された任意のサーバ証明書も自動的に許可されます。

例:

set certificate_file=~/.mutt/certificates

3.38. change_folder_next

Type: boolean
Default: no

この変数をsetにした場合、<change-folder>機能のメールボックス候補は リスト中の最初のフォルダから始まるのではなく、mailboxes リスト中の 次のフォルダから始まります。

3.39. charset

Type: string
Default: (empty)

テキストデータを端末で表示したり入力したりするのに使う文字セットです。 $send_charset でも使います。

起動時に、Mutt は、$LC_CTYPE$LANG のような環境変数から この値を利用しようとします。

Note: Mutt が使用する文字セットを正しく決められない可能性がある場合にのみ これを設定すべきです。

3.40. check_mbox_size

Type: boolean
Default: no

変数をsetにした場合、mutt は mbox と mmdf フォルダの新規メールチェック時に アクセスタイムの代わりにファイルサイズ属性を使います。

この変数は既定値でunsetで、これは、新規メールの検出が、前述のフォルダ タイプで信頼できないか動かない場合にのみ有効にすべきです。

muttは、定義されている場合、高速メールボックススキャンを実行することにより、 そのようなメールボックスの初期新規メールステータスを決定するために必要とするため、 mbox 又は mmdfフォルダに対して、設定ファイル中でmailboxes ディレクティブが 出てくる前に、この変数を有効にする必要があることに注意が必要です。 その後、新規メールステータスはファイルサイズ変更で検出されます。

3.41. check_new

Type: boolean
Default: yes

Note: このオプションはmaildirMH 形式のメールボックス のみ有効です。

set の場合、Mutt は開いている最中のメールボックスに着信する新着メールを 調べます。特に、MH メールボックスにおいては、この操作は、ディレクトリをスキャンし、 各ファイルについてすでに見たかどうかをチェックするため、かなりの時間がかかる 可能性があります。この変数をunsetにすると、メールボックスが開いている間は 新規メールのチェックを行いません。

3.42. collapse_unread

Type: boolean
Default: yes

unset の場合、Mutt は未読メッセージがあるスレッドを折りたたみません。

3.43. compose_format

Type: string
Default: -- Mutt: Compose  [Approx. msg size: %l   Atts: %a]%>-

編集 メニューで表示されているステータス行のフォーマットを制御します。 この文字列は$status_formatと似ていますが、printf(3)風の、固有の パラメータを使います:

%a 添付の総数
%h ローカルホスト名
%l 現在のメッセージの(バイト単位での)おおよそのサイズ(formatstrings-sizeを参照)
%v Mutt バージョン文字列

どのように$compose_format. を設定したらいいかについての情報は、 $status_formatオプションの記述を参照してください。

3.44. config_charset

Type: string
Default: (empty)

定義した場合、Mutt は このエンコーディングから$charsetによって指定された 現在の文字セットに、rc ファイル中のコマンドを再コーディングし、 現在の文字セットから $alias_file に、別名を書き込みます。

$charset が設定されている場合、$config_charset の前に置かなければ ならないことに注意してください。

再エンコーディングは、変換できない文字を疑問符にしてしまう場合があり、 予期せぬ副作用(たとえば正規表現で)が発生しうるので、避けるべきです。

3.45. confirmappend

Type: boolean
Default: yes

setの場合、Mutt がメッセージを既存メールボックスに追加するときに確認をしてきます。

3.46. confirmcreate

Type: boolean
Default: yes

setの場合、Mutt は存在しないメールボックスにメッセージを保存する際、 メールボックスを作成する前に確認をしてきます。

3.47. connect_timeout

Type: number
Default: 30

この秒数でネットワーク接続 (IMAP、POPとSMP) が確立できなければ Mutt はタイムアウトと します。負の数の場合、接続が成功するまで永遠に待ち続けます。

3.48. content_type

Type: string
Default: text/plain

新規作成メッセージ本文における既定の Content-Type を設定します。

3.49. copy

Type: quadoption
Default: yes

$save_name, $force_name and fcc-hook. この変数は、送信メッセージのコピーを 後で参照するために保存しておくかどうかを制御します。 $record,$save_name, $force_namefcc-hook も参照してください。

3.50. count_alternatives

Type: boolean
Default: no

set の場合、Mutt は添付の検索とカウント(attachmentsを参照)を実行するときに、 multipart/alternatives内を再帰処理します。

従来、 multipart/alternative パートは、メールの主な部分とは異なったエンコーディング を単に表現するものでした。残念ながらいくつかのメールクライアントはalternative の 1つの中にメールの添付を置くようになってきています。これを設定すると、Mutt は そこに隠された、一致する添付を見つけ、カウントし、%X 経由か ~X によるパターン マッチングを使ってインデックス中に含めます。

3.51. crypt_autoencrypt

Type: boolean
Default: no

この変数を設定すると、Mutt は送信メッセージを常時 PGP で暗号化しようとします。 これはsend-hook コマンドでの接続中にのみ便利です。これは、暗号化が 不要な場合や同様に署名が要求されている場合は PGPメニューを使う事で上書きできます。 $smime_is_defaultset の時は、 S/MIME メッセージを作成するのに OpenSSL が代わりに使われ、smime メニューを使うことで代わりに設定を上書きできます。 (Crypto のみです)

3.52. crypt_autopgp

Type: boolean
Default: yes

この変数は、Mutt がメッセージに自動で PGP 暗号化/署名を有効にしても 良いかどうかを制御 します。$crypt_autoencrypt,$crypt_replyencrypt,$crypt_autosign, $crypt_replysign$smime_is_default も参照してください。

3.53. crypt_autosign

Type: boolean
Default: no

この変数を設定すると、Mutt は送信メッセージを常時暗号で署名しようとします。 これは、署名が不要な場合や、同様に暗号化が必要な場合に pgp メニューを使うことで 上書きできます。$smime_is_defaultset の場合は、S/MIME メッセージを 作成するのにOpenSSL が代わりに使われ、pgp メニューの代わりに smime メニューを 代わりに使う事で上書きできます。 (Cryptoのみです)

3.54. crypt_autosmime

Type: boolean
Default: yes

この変数は、Mutt がメッセージに対して自動的に S/MiME 暗号化/署名を有効にするかを 指定します。$crypt_autoencrypt,$crypt_replyencrypt,$crypt_autosign, $crypt_replysign$smime_is_default も参照してください。

3.55. crypt_confirmhook

Type: boolean
Default: yes

設定した場合、crypt-hook コマンドを使うときにキーの確認を求めるように なります。設定しない場合、確認は求められません。これは、タイプミスが考えられる 場合には、一般的に安全ではないと考えられます。

3.56. crypt_opportunistic_encrypt

Type: boolean
Default: no

この変数を設定すると、Mutt によってすべてのメッセージ受信者のキーが 見つけられるかによって、Mutt は暗号化を自動的に有効または無効にします。

このオプションが有効な場合、Mutt は TO, CC, と BCC の一覧が編集されるごとに 暗号化を有効/無効にします。$edit_headers が設定されている場合、Mutt は メッセージが編集される毎にも行います。

これが設定されている場合は、暗号化は手動で有効/無効に出来ません。pgp 又は smime メニューは、現在のメッセージに対してこのオプションを一時的に無効にするための 選択を提供します。

$crypt_autoencrypt 又は $crypt_replyencrypt がメッセージに対して暗号化を 有効にしている場合、このオプションはメッセージに対しては無効となります。 pgp 又は smime メニューで手動で再度有効に出来ます。 (Cryptoのみです)

3.57. crypt_opportunistic_encrypt_strong_keys

Type: boolean
Default: no

設定した場合、これは "強力な鍵"、すなわち、信頼するアルゴリズムのWeb に 従った、完全に有効な鍵のみを探すように $crypt_opportunistic_encrypt の 動作を変更します。限界のある、あるいは信頼性性がない鍵は日和見暗号化を 有効にしません。

S/MIME においては、動作はバックエンドに依存します。従来の S/MIME は .index ファイル中に 't' (trusted) フラグがある証明書をフィルタします。 GPGME バックエンドは OpenPGP と同じフィルタを使い、GPGME_VALIDITY_FULL と GPGME_VALIDITY_ULTIMATE 有効性フラグを割り当てる GPGME のロジックに依存します。

3.58. crypt_protected_headers_read

Type: boolean
Default: yes

設定した場合、Mutt はページャ中に保護されたヘッダ("メモリホール")を表示し、 インデックスとヘッダキャッシュを変更されたヘッダで更新します。 保護されたヘッダはメール中の暗号化または署名されたパート中に格納され、 漏洩や改ざんを防ぎます。 詳細については https://github.com/autocrypt/memoryhole を参照してください。 現時点で、Mutt は題名ヘッダのみをサポートします。

保護されたヘッダを使う暗号化メッセージは、しばしば、表示されている題名 ヘッダをダミー値を含むものに差し替えます(crypt_protected_headers_subjectを 参照)。Mutt はメッセージを開いた、すなわち、<display-message> 機能を 使って、正しい題名の内容に差し替えます。開く前にメッセージに返信する場合は、 Mutt は結局ダミーの題名ヘッダを使うため、そのようなメッセージは最初に オープンするようにしてください。 (Cryptoのみです)

3.59. crypt_protected_headers_save

Type: boolean
Default: no

$crypt_protected_headers_read を設定した場合で、保護された題名があるメッセージを 開いている場合、Mutt は既定でヘッダキャッシュに更新された題名を保存します。 これにより、メッセージを毎回再オープンすることなしに、メールボックスが 再オープンされた場合に保護された題名ヘッダをベースにした検索/制限が 出来るようになります。しかし、mbox/mh メールボックスか、ヘッダキャッシュが 設定されていない場合、再度保護された題名を表示あるいは検索/制限する前に メールボックスが再度開かれる時はメッセージを毎回再オープンする必要があります。

この変数が設定されている場合、Mutt は保護された題名を、 平文テキストメッセージヘッダ中に追加で保存します。これにより 使い勝手が向上しますが、セキュリティが低下することとのトレードオフになります。 以前に暗号化された可能性のある保護された題名ヘッダは現在メッセージヘッダに 平文で格納されるようになりました。Mutt や外部ツールでメッセージをどこかにコピー する場合、以前に暗号化されたデータが見えてしまう可能性があります。 この変数を有効にする前に、これがどういう結果になるかを十分に理解してください。 (Crypto のみです)

3.60. crypt_protected_headers_subject

Type: string
Default: Encrypted subject

When $crypt_protected_headers_write を設定した場合で、メッセージに暗号化がマークされて いる場合、これがメッセージヘッダの題名フィールドに置き換わります。 題名が置換されないようにするには、この値を設定しないか、空の文字列を設定します。 (Crypto のみです)

3.61. crypt_protected_headers_write

Type: boolean
Default: no

設定する場合、Mutt は署名および暗号化したメールに対して、保護されたヘッダ ("メモリホール")を生成します。 保護されたヘッダはメール中の暗号化または署名されたパート中に格納され、 漏洩や改ざんを防ぎます。詳細については https://github.com/autocrypt/memoryhole を参照してください。 現時点でMutt は題名ヘッダのみサポートします。 (Cryptoのみです)

3.62. crypt_replyencrypt

Type: boolean
Default: yes

set の場合、暗号化されたメッセージに対して、自動的に PGP または OpenSSL で 暗号化した返信を行います。 (Crypto のみです)

3.63. crypt_replysign

Type: boolean
Default: no

set の場合、署名されたメッセージに対して、自動的に PGP または OpenSSL で 署名した返信を行います。

Note: これは、暗号化され、かつ 署名されているメッセージに 対しては動作しません。 (Crypto のみです)

3.64. crypt_replysignencrypted

Type: boolean
Default: no

set の場合、暗号化れたメッセージに対して、自動的に PGP または OpenSSL で 署名した返信を行います。これは、自動的に暗号化されるすべてのメッセージに署名 出来るという理由で、$crypt_replyencrypt と組み合わせると意味があります。 これは、Mutt が暗号化されたメッセージが署名されているかどうかを見つけられない という、$crypt_replysign の所で触れた問題を回避します。 (Cryptoのみです)

3.65. crypt_timestamp

Type: boolean
Default: yes

(Crypto only) set の場合、Mutt は PGP 又は S/MIME 出力を囲む行中にタイムスタンプを 含めるので、そのような行のスプーフィングはより困難になります。 それらの行にマークを付けるために色設定を使い、それらに依存している場合、 この設定を unset できます。 (Cryptoのみです)

3.66. crypt_use_gpgme

Type: boolean
Default: no

この変数は GPGMEが有効の crypto バックエンドの使用を制御します。setで、 Mutt が gpgme サポートを有効にしてビルドされている場合、 S/MIME と PGP 用の gpgme コードが、旧来のコードの代わりに使われます。このオプションを .muttrc 中で設定しなければならないことに注意してください。対話的に使用しても効果は ありません。

GPGME バックエンドは古い形のインライン(従来型の) PGP で暗号化された、あるいは 署名されたメッセージ作成のサポートがないことに注意してください($pgp_autoinlineを 参照してください)。

3.67. crypt_use_pka

Type: boolean
Default: no

Mutt が署名の検証中(GPGME バックエンドでのみサポート)に PKA (http://www.g10code.de/docs/pka-intro.de.pdf を参照) を使うかどうかを制御 します。

3.68. crypt_verify_sig

Type: quadoption
Default: yes

yesならば、常時 PGPまたは S/MIME 署名の検証を試みます。 ask-*ならば、署名を検証するか否かを聞いてきます。 noならば、暗号署名の検証を行いません。 (Cryptoのみです)

3.69. date_format

Type: string
Default: !%a, %b %d, %Y at %I:%M:%S%p %Z

この変数は、$index_format 中の %d シーケンスによって表示される日付の書式を 制御します。これは日付を処理するためにstrftime(3) 機能に渡されます。 正しい構文についてはマニュアルページを参照してください。

文字列の最初の文字が感嘆符 (!)でない限り、月と曜日の名前はロケールに合わせて 展開されます。文字列の最初の文字が感嘆符だった場合、感嘆符は無視され、 残りの文字列中の月と曜日の名前は C ロケール(すなわち US英語)に展開されます。

3.70. default_hook

Type: string
Default: ~f %s !~P | (~P ~C %s)

この変数は、一致用のパターンの代わりに単純な正規表現のみが指定された場合に、 message-hook, reply-hook, send-hook, send2-hook, save-hook, と fcc-hook をどのように解釈するかを制御します。 フックは、それが定義されたときに展開され、そのため、フックが定義された時にこの変数の 値が解釈されます。

既定値は、メッセージが与えられた正規表現に一致するユーザから来たものか、 自分自身から来たもの(fromアドレスが alternatesに一致する場合)で、 指定された正規表現が To または Cc のユーザに一致する場合に一致します。

3.71. delete

Type: quadoption
Default: ask-yes

メールボックスを同期するかクローズしたときに、実際に削除するかどうかを制御します。 yesに設定した場合、削除マークが付けられたメッセージは、問い合わせなく 自動的に削除されます。noに設定された場合、削除マーク付きのメッセージは メールボックスに残ったままになります。

3.72. delete_untag

Type: boolean
Default: yes

このオプションがsetの場合、mutt はメッセージに削除マークを付けるときに タグを外します。これは、明示的にメッセージを削除するか、他のフォルダに セーブする際に適用されます。

3.73. digest_collapse

Type: boolean
Default: yes

このオプションがsetの場合、mutt の受信添付メニューは、multipart/digest中の 個々のメッセージの副パートを表示しません。それらサブパートを見るためには、メニュー中で v を押します。

3.74. display_filter

Type: path
Default: (empty)

設定されている場合、指定されたコマンドが、メッセージのフィルタに使われます。 メッセージが表示されている場合、それが$display_filter の標準入力に渡され、 フィルタされたメッセージは標準出力から読み出されます。

3.75. dotlock_program

Type: path
Default: /usr/bin/mutt_dotlock

Mutt によって使われる mutt_dotlock(8) の実行形式へのパスが含まれています。

3.76. dsn_notify

Type: string
Default: (empty)

この変数は、通知が戻ってくる際の要求を設定します。文字列はカンマで分離された 一覧(スペースがあってはなりません)で構成されています: never は、通知要求を行いません、failure は、転送が失敗した 場合に通知を要求します、delay は、メッセージが遅延したときに通知します、 success は、転送が成功したときに通知します。

例:

set dsn_notify="failure,delay"

注意: 配送に$sendmail を使う場合、Sendmail 8.8.x かそれ以降 又は DSN に対して-N オプションをサポートするsendmail(1) 互換のインタフェースを サポートするMTA のどちらかを使わない限り、有効にしてはなりません。 SMTP 配送においては、DSN サポートは自動的に検出されるので、DSN を使うか否かは サーバに依存します。

3.77. dsn_return

Type: string
Default: (empty)

この変数は、メッセージがどれだけDSN メッセージで帰ってくるかを制御します。 hdrs に設定して、メッセージヘッダのみ返ってくるようにするか、 full に設定して、メッセージ全体が返ってくるかのどちらかにできます。

例:

set dsn_return=hdrs

注意: 配送に$sendmail を使う場合、Sendmail 8.8.x 以降又は DSN に対して-R オプションをサポートするsendmail(1) 互換のインタフェースを サポートするMTA のどちらかを使わない限り、有効にしてはなりません。 SMTP 配送においては、DSN サポートは自動的に検出されるので、DSN を使うか否かは サーバに依存します。

3.78. duplicate_threads

Type: boolean
Default: yes

この変数は、$sortthreads に設定されているときに、Mutt が同じ Message-Id を をスレッドにするかどうかを制御します。set の場合、スレッドツリー中で、 等号 を使って他と重複していると考えていることを表示します。

3.79. edit_headers

Type: boolean
Default: no

このオプションは、メッセージ本体といっしょに送信するメッセージのヘッダを編集 出来るようにします。

編集メニューにはローカライズしたヘッダラベルを使う事が出来るにもかかわらず、 エディタに渡されるラベルは標準の RFC 2822 ヘッダになります (たとえば To:, Cc:, Subject:)。エディタ中で追加されたヘッダは RFC 2822 ヘッダでなければならないか、edit-header 中にある 疑似ヘッダでなければなりません。Mutt はローカライズしたヘッダラベルを理解出来ず、 実際のメールを走査する場合とは異なります。

相互運用性のために、References: と Date: ヘッダの変更は無視されることに 注意 してください。

3.80. editor

Type: path
Default: (empty)

この変数は Mutt で使うエディタを指定します。この既定値は環境変数 $VISUAL, 又は $EDITOR の値か、それらが設定されていない場合は vi と言う文字列になります。

$editor 文字列は、編集されるファイルの名前に置き換えられる %s エスケープ文字 を含むことができます。$editor中に %s がない場合は、空白と編集されるファイル 名が追加されます。

結果の文字列は以下のように実行されます。

sh -c 'string'

ここで、string は上記で説明したように、$editor を展開したものです。

3.81. encode_from

Type: boolean
Default: no

set の場合、Mutt は行の先頭に文字列 From (末尾の空白に注意)を含む場合に メッセージを quoted-printable でエンコードします。これは、特定のメール配信および 転送エージェントがメッセージを処理する傾向を改ざんすることを防ぐのに有効です (ツールが、mbox セパレータとして行を間違って解釈することから防ぐため)。

3.82. entropy_file

Type: path
Default: (empty)

SSL ライブラリ機能を初期化するのに使う、ランダムデータを含むファイルです。

3.83. envelope_from_address

Type: e-mail address
Default: (empty)

送信メッセージに対してenvelope の送信者を手動で設定します。 この値は$use_envelope_fromunsetの場合には無視されます。

3.84. error_history

Type: number
Default: 30

time this variable is set. この値はMutt によって表示されるエラーメッセージの大きさ(記憶されている 文字列の数)を制御します。これは<error-history> 機能で表示できます。 履歴はこの値が設定されている場合、毎回初期化されます。

3.85. escape

Type: string
Default: ~

内蔵エディタ中での機能に使うエスケープ文字。

3.86. fast_reply

Type: boolean
Default: no

set の場合、メッセージへ返信する際、最初に宛先と題名を入力するのを 省略します。メッセージを転送する場合は、題名の入力を省略します。

注意: この変数は $autoedit 変数が set の場合は意味がありません。

3.87. fcc_attach

Type: quadoption
Default: yes

この変数は送信メッセージの添付がメッセージ本体と共に保存されるかどうかを 制御します。

3.88. fcc_before_send

Type: boolean
Default: no

この値が set の場合、FCC はメッセージ送信前にが起こります。 送信前に、メッセージは操作できませんので、送信されたものと全く同じものが 保存されます。$fcc_attach$fcc_clear は無視されます(それらの 既定値を使います)。

unsetの場合は既定値で、FCC は送信後に起こります。変数 $fcc_attach$fcc_clear が使われ、必要に応じて添付あるいは暗号化/署名 なしで保存することができます。

3.89. fcc_clear

Type: boolean
Default: no

この変数が set の場合、FCC は実際のメッセージが暗号化されているか又は 署名されているかにかかわらず、復号化し、かつ署名を外して保存されます。 (PGP のみです)

3.90. fcc_delimiter

Type: string
Default: (empty)

When specified, this allows the ability to Fcc to more than one mailbox. The fcc value will be split by this delimiter and Mutt will evaluate each part as a mailbox separately. 指定した場合、複数のメールボックスに Fcc 出来るようになります。 Fcc の値はこのデリミタで分離され、Mutt は各部分をメールボックスとして 評価します。

$record, fcc-hookfcc-save-hook も参照してください。

3.91. flag_safe

Type: boolean
Default: no

設定されている場合、フラグ付きのメッセージは削除できません。

3.92. folder

Type: path
Default: ~/Mail

メールボックスの既定の位置を指定します。パス名の先頭に付けた + 又は = は この変数の値に展開されます。この変数の値を(既定値から)変更した場合、 mailboxesコマンドを使うときに展開が起こるので、 割り当てが発生する前に何かの変数に対して+ 又は = を使うようにしなければ ならないことに注意しなければなりません。

3.93. folder_format

Type: string
Default: %2C %t %N %F %2l %-8.8u %-8.8g %8s %d %f

This variable allows you to customize the file browser display to your personal taste. This string is similar to $index_format, but has its own set of printf(3)-like sequences: この変数で、好みに応じてファイルブラウザ表示をカスタマイズできます。 この文字列は $index_format と似ていますが、固有のprintf(3)風の書式があります。

%C 現在のファイル番号
%d 最後に変更されたフォルダの日時/時間
%D date_format を使って最後に変更されたフォルダの日時/時間
%f ファイル名 (ディレクトリ名には / が付与、 シンボリックリンクには @ が付与、 実行ファイルには* が付与)
%F ファイルのパーミッション
%g グループ名(あるいは存在しない場合は gid の値)
%l ハードリンク数
%m mailbox * 中のメッセージ数
%n mailbox * 中の未読メッセージ数
%N 新着メールがあれば N で、なければ空白
%s バイト単位のサイズ(formatstrings-size を参照)
%t タグが付いていれば * で、そうでなければ空白
%u owner の名前 (あるいは存在しない場合は uid)
%>X 残りの文字列を右寄せにして、X で埋める
%|X 行末まで X で埋める
%*X 文字 X を埋め草として soft-fill

soft-fill の説明については$index_format のドキュメントを参照してください。

* = は、ゼロ以外の場合にオプションで表示されます

%m, %n, と %N は、モニタされたメールボックスでのみ動作します。 %m は $mail_check_stats が設定されていることが必要です。 %n は $mail_check_stats が設定されていることが必要です(IMAP メールボックスを除く)。

3.94. followup_to

Type: boolean
Default: yes

メール送信時にMail-Followup-To:ヘッダフィールドを生成するかどうかを 制御します。setならば、Mutt はsubscribe 又は lists コマンドで 指定した既存メーリングリストに返信する時にこのフィールドを生成します。

このフィールドには2つの目的があります。最初のものは、メーリングリストに 送ったメッセージへの返信の重複したコピーを受信しないことで、2番目は、 購読していない既存メーリングリストに送ったメッセージに対する返信を個別に 受け取ることです。

ヘッダは 購読したリストのアドレスと、購読していないメーリングリストに 対しては、リストのアドレスと自分のメールアドレスを含みます。このヘッダがない場合、 購読したメーリングリストの、自分のメッセージに対してグループ返信した場合、 メーリングリストと自分のアドレス両方にメールが送信され、結果として 同じメールのコピーが2つ送られてくることになります。

3.95. force_name

Type: boolean
Default: no

この変数は$save_name と似ていますが、そのメールボックスが存在していなくても、 アドレス中のユーザ名によって送信するメッセージのコピーを 保存するところが異なります。

$record 変数も参照してください。

3.96. forward_attachments

Type: quadoption
Default: ask-yes

インラインで転送する時(すなわち、$mime_forward unset 又は no と答えて、かつ、$forward_decodeset)、 通常の方法でデコードできない添付は、この4択がsetyes と答えた場合、新しく編集するメッセージに添付されます。

3.97. forward_attribution_intro

Type: string
Default: ----- Forwarded message from %f -----

これは、メッセージの主要な本体($mime_forward が未設定の場合)で転送された メッセージの前にある文字列です。printf(3)風の書式で定義されているものの 完全な一覧は、$index_format 節を参照してください。$attribution_locale も 参照してください。

3.98. forward_attribution_trailer

Type: string
Default: ----- End forwarded message -----

これは、メッセージの主要な本体($mime_forward が未設定の場合)で転送された メッセージの後にある文字列です。printf(3)風の書式で定義されているものの 完全な一覧は、$index_format 節を参照してください。$attribution_locale も 参照してください。

3.99. forward_decode

Type: boolean
Default: yes

メッセージの転送時に、複雑な MIME メッセージを text/plain に復号化するかを 制御します。メッセージヘッダもRFC2047で復号化されます。 この変数は、$mime_forwardunsetの時にのみ使われ、 その他の場合は$mime_forward_decode が代わりに使われます。

3.100. forward_decrypt

Type: boolean
Default: yes

メッセージを転送する時の暗号化メッセージの取り扱いを制御します。 set の時、暗号化の外側のレイヤは削除されます。この変数は、 $mime_forwardset で、$mime_forward_decodeunset の時にのみ使われます。 (PGP のみです)

3.101. forward_edit

Type: quadoption
Default: yes

この4択は、メッセージを転送する時に、エディタに自動的に移行するかどうかを 制御します。常時変更なしに転送したい場合は、この設定を no にします。

3.102. forward_format

Type: string
Default: [%a: %s]

この変数はメッセージを転送する時の既定の題名を制御します。 これは、$index_format 変数と同じ書式を使います。

3.103. forward_quote

Type: boolean
Default: no

set の場合、メッセージの主要な本体($mime_forwardunsetの時)に 含まれる転送メッセージは$indent_string を使って引用されます。

3.104. from

Type: e-mail address
Default: (empty)

set の時、この変数は既定の発信アドレスを含みます。これは、 my_hdr (send-hookからを含みます)や$reverse_nameを使って上書き することができます。この変数は $use_fromunsetの時に無視されます。

この設定の既定値は環境変数 $EMAILの値です。

3.105. gecos_mask

Type: regular expression
Default: ^[^,]*

別名を展開するときにパスワードエントリのGECOS フィールドをMutt が操作するときに使われる 正規表現です。既定値は最初に, が見つかるまでの文字列を返します。 GECOS フィールドがlastname, firstnameのような文字列を含む場合、 これを.* とすべきです。

これは、以下のような動作の時に便利です: ある人の完全な名前が Steve Franklinである ユーザID stevef にメールを送るとします。Mutt がstevefFranklin" stevef@foo.bar に展開する場合、完全な名前に一致する正規表現に、 $gecos_mask を設定すれば、Mutt はFranklinFranklin, Steve に展開します。

3.106. hdrs

Type: boolean
Default: yes

unset の場合、通常my_hdrコマンドによって追加されるヘッダフィールドが 作成されません。この変数の効果を発揮するためには、新規メッセージの編集か、返信時 より前に設定解除しなければなりませんsetの場合、 ユーザ定義のヘッダフィールドはすべての新規メッセージに追加されます。

3.107. header

Type: boolean
Default: no

fIsetの場合、この変数は編集バッファ中に返信するメッセージのヘッダを 含めるようにします。$weed の設定が適当されます。

3.108. header_cache

Type: path
Default: (empty)

この変数はヘッダキャッシュデータベースの場所を指定します。ディレクトリを示して いれば、Mutt はフォルダ単位のヘッダキャッシュデータベースがあり、ファイルを示して いれば、全体の単一ヘッダキャッシュとなります。既定ではunsetなので、 ヘッダキャッシュは使われません。

ヘッダキャッシュは、POP, IMAP, MH および Maildir フォルダを開くときに 大幅なスピードの改善が出来ます。詳細については caching を参照してください。

3.109. header_cache_compress

Type: boolean
Default: yes

Mutt が qdbm,tokyocabinet, 又は kyotocabinet を、ヘッダキャッシュのバックエンドとして 使うようにコンパイルされている場合、このオプションは、データベースを圧縮するか否かを 指定します。データベース中のファイルを圧縮すると、大きさがおおよそ通常の1/5に なりますが、展開を行うと、キャッシュされたフォルダを開くのが遅くなりますが、 ヘッダキャッシュがないフォルダを開くよりは、まだ高速に開けます。

3.110. header_cache_pagesize

Type: number (long)
Default: 16384

ヘッダキャッシュのバックエンドとして、 gdbm 又は bdb4 のどちらかを使うように Mutt がコンパイルされている場合、このオプションはデータベースのページサイズを変更します。 値が大きすぎたり小さすぎたりすると、余分なスペース、メモリ、CPU 時間を消費します。 既定値はほとんどの場合において大きすぎず、小さすぎずに最適化されているはずです。

3.111. header_color_partial

Type: boolean
Default: no

set の場合、カラーヘッダの正規表現はカラーボディの正規表現と同じように 振る舞います。色は正規表現によって一致した正確なテキストに適用されます。 unset の場合は、色はヘッダ全体に適用されます。

このオプションの1つの使い方は、ヘッダラベルにのみ色を適用することです。

詳細は color を参照してください。

3.112. help

Type: boolean
Default: yes

set の場合、各メニューで提供される、主要な機能に対するバインディングの説明を するヘルプ行は画面の最初の行に表示されます。

注意: 単一のキーストロークではなく、一連のキーストロークに機能がバインド されていると、バインディングは正確には表示されません。同様に、Mutt が動作中に バインディングが変更されてもヘルプ行は更新されません。この変数は主に新規 ユーザを対象としているので、上記のどちらも大きな問題ではありません。

3.113. hidden_host

Type: boolean
Default: no

set の場合、Mutt は、アドレスにドメイン部分を付加するときに、$hostname 変数のホスト名部分をスキップします。この変数は Message-ID の生成には影響を 与えず、ドメインの最初の部分を切り取ることはありません。

3.114. hide_limited

Type: boolean
Default: no

set の場合、Mutt は、スレッドツリー中で limit 機能により隠されている メッセージの存在を表示しません。

3.115. hide_missing

Type: boolean
Default: yes

set の場合、Mutt はスレッドツリー中で存在しないメッセージの存在を 表示しません。

3.116. hide_thread_subject

Type: boolean
Default: yes

set の場合、Mutt はスレッドツリー内で、親と同じか以前に表示された もっとも近い sibling と同じ題名を持つメッセージの題名を表示しません。

3.117. hide_top_limited

Type: boolean
Default: no

set の場合、Mutt は スレッドツリー中の最上位に、limit 機能によって隠されて いるメッセージの存在を表示しません。$hide_limitedset の場合、 このオプションは何の効果もないことに注意してください。

3.118. hide_top_missing

Type: boolean
Default: yes

set の場合、Mutt はスレッドツリーのスレッドの上部に、メッセージがないことの 表示をしません。$hide_missingset の場合、このオプションは何の効果も ないことに注意してください。

3.119. history

Type: number
Default: 10

この変数はカテゴリ毎の文字列ヒストリバッファのサイズ(記憶される文字列の数)を 制御します。バッファは変数が設定される度毎に消去されます。

3.120. history_file

Type: path
Default: ~/.mutthistory

Mutt がそのヒストリをセーブするファイルです。

$save_history も参照してください。

3.121. history_remove_dups

Type: boolean
Default: no

set の場合、新しいエントリが追加されるときに、重複するかどうかを、すべての 文字列ヒストリでスキャンします。$history_file 中の重複するエントリは 定期的に圧縮される時にも削除されます。

3.122. honor_disposition

Type: boolean
Default: no

set の場合、Mutt はそのパートが平文で描画可能だったとしても、インラインで attachmentという配置の添付を表示しません。MIME パートは添付メニュー でのみ表示できます。

unset の場合、Mutt は適切に平文に変換できる場合、すべての MIME パートを 描画します。

3.123. honor_followup_to

Type: quadoption
Default: yes

この変数は Mail-Followup-To ヘッダが、メッセージに対してグループ返信するときに 信頼できるか否かを制御します。

3.124. hostname

Type: string
Default: (empty)

Mutt が動いているシステムでホスト名とDNS ドメイン名が存在している場合、 完全修飾ホスト名(FQDN)を指定します。これは、ローカルメールアドレスのドメイン部分 (@ の後)と、Message-Id ヘッダとして使われます。

この値は以下のようにして起動時に決まります。ノードのホスト名は uname(3) 機能によって最初に決まります。ドメインは次にgethostname(2)getaddrinfo(3) 機能によって検索されます。もしそれらの呼び出しで ドメインを決定できない場合、uname の結果の完全な値が使われます。オプションで、 Mutt が固定したドメインでコンパイルできますが、この場合、検出された値は 使われません。

$use_domain$hidden_host も参照してください。

3.125. idn_decode

Type: boolean
Default: yes

set の場合、Mutt は国際化ドメイン名をデコードして表示します。 注意: これがunset だったとしても、アドレスに対して IDN を使う事が出来ます。 この値はデコードのみに影響します(IDN のみです)。

3.126. idn_encode

Type: boolean
Default: yes

set の場合、Mutt は IDN を使って国際化ドメイン名をエンコードします。 使用する SMP サーバが新しい (RFC6531) UTF-8 エンコードされたドメインを扱える 場合は、これを設定しません。(IDN のみです)

3.127. ignore_linear_white_space

Type: boolean
Default: no

このオプションは エンコードされた単語とテキストの間の linear-white-space を MIME エンコードされた Subject: フィールドの表示が複数行に分割されてしまうことを 防ぐために単一の空白に置き換えます。

3.128. ignore_list_reply_to

Type: boolean
Default: no

メーリングリスト(subscribe 又は lists コマンドで定義されたもの) からメッセージに返信する時に<reply> 機能の動作に影響します。 setの場合で、Reply-To: フィールドが To: フィールドの値と 同じに設定されている場合、Mutt は、自動的にメーリングリストへの返信を 自動化するために、Reply-To: フィールドが、メーリングリストによって 設定されたと仮定し、このフィールドを無視します。このオプションがset の場合、メーリングリストに対する直接の返信は <list-reply> 機能を 使います。<group-reply> は送信者とメーリングリスト両方に返信します。

3.129. imap_authenticators

Type: string
Default: (empty)

これはコロンで区切られた、認証方法の一覧で、Mutt はここに並んでいる順で、 これらの方式を使って、 IMAP サーバにログインしようとします。認証方式は login か、IMAP のケーパビリティ文字列 'AUTH=xxx' の右辺、たとえば digest-md5, gssapi 又はcram-md5 を使います。このオプションは 大文字小文字を無視します。unsetの場合(既定値)、Mutt はすべての有効な 方式を、もっともセキュアな方法からセキュアでない方法の順で試みます。

例:

set imap_authenticators="gssapi:cram-md5:login"

注意: Mutt は前のメソッドが無効な場合にのみ、他の認証方式にフォールバック します。メソッドが有効だが認証が失敗した場合、Mutt は IMAP サーバには 接続しません。

3.130. imap_check_subscribed

Type: boolean
Default: no

set の場合、Mutt は接続時に、購読しているフォルダを読み出しして、 独立した mailboxes コマンドを発行したのと同様に、ポーリングする メールボックスのセットにそれらを追加します。

3.131. imap_condstore

Type: boolean
Default: no

set の場合、Mutt は、サーバにより広告がある場合、CONDSTORE 拡張 (RFC 7162) を使います。Mutt の現在の実装は基本的なものであり、 初期メッセージのフェッチとフラグの更新のみを使います。

いくつかの IMAP サーバでは、これを有効にすると、初期メッセージのダウンロードが 若干早くなります。残念なことに、Gmail はそのうちの1つには入らず、有効にすると 表示が遅くなります。受け取るメリットは変わる場合があります。

3.132. imap_deflate

Type: boolean
Default: no

set の場合、Mutt はサーバによって通知された場合、 COMPRESS=DEFLATE 拡張 (RFC 4978) を使用します。

一般的に、圧縮効率が実現できれば、かなり良い回線状態に置いてでも大きな メールボックスの ** 読み出しを高速化できます。

3.133. imap_delim_chars

Type: string
Default: /.

これには IMAP パスを表示する際にフォルダの区切りとして扱いたい 文字の一覧が 入ります。特にこれが役立つのは、 folder 変数へのショートカットのために = を使うときです。

3.134. imap_fetch_chunk_size

Type: number (long)
Default: 0

この値を 0 より大きくすると、新しいヘッダは、要求毎に、たくさんのヘッダをグループにして ダウンロードされます。非常に大きなメールボックスを使っている場合、すべての新しいヘッダを 単一の取得操作で行う代わりに、このたくさんのヘッダ毎に取得コマンドを送ることで、 メールボックスをオープンするときにタイムアウトと切断を防ぐことが出来ます。

3.135. imap_headers

Type: string
Default: (empty)

Mutt がインデックスメニューを表示する前に、IMAP サーバから既定のヘッダ (Date:, From:, Sender:, Subject:, To:, Cc:, Message-Id:, References:, Content-Type:, Content-Description:, In-Reply-To:, Reply-To:, Lines:, List-Post:, X-Label:) に追加で、ここで指定する ヘッダを要求します。スパム検出のためのヘッダを追加したいときに使います。

注意: これは空白で分離されたリストで、各項目はすべて大文字で コロンを含んではいけません。たとえば、X-Bogosity:X-Spam-Status:X-BOGOSITY X-SPAM-STATUS となります。

3.136. imap_idle

Type: boolean
Default: no

set の場合、Mutt は現在のメールボックスで、新規メールのチェックのために IMAP IDLE 拡張を使おうとします。いくつかのサーバ(このオプションに対しては dovecot が想起されます)は、Mutt の実装に対して不正確に反応します。 接続が定期的にフリーズするように見える場合は、この設定の解除を試してみてください。

3.137. imap_keepalive

Type: number
Default: 300

この変数は、Mutt が接続を終了する前に、サーバから接続をクローズするのを 防ぐために、オープンしている IMAP 接続をポーリングする前に Mutt が待つ 最大時間を秒数で指定します。既定値は、サーバがこれを実行出来るようになるまで、 RFC の指定による最低限の時間(30分)内ですが、実際にはRFC はそこかしこで 破られています。接続していないとみなされて IMAP サーバから切断されるようで あれば、この数値を減らしてください。

3.138. imap_list_subscribed

Type: boolean
Default: no

この変数は、IMAP フォルダ一覧表示で検索するのを購読フォルダのみにするか、すべての フォルダにするかを制御します。これは、<toggle-subscribed> 機能を使って IMAP ブラウザ内でON/OFFできます。

3.139. imap_login

Type: string
Default: (empty)

IMAP サーバへのログイン名。

この変数は既定で$imap_user の値となります。

3.140. imap_oauth_refresh_command

Type: string
Default: (empty)

IMAP サーバの接続を認証するための OAUTH リフレッシュトークンを生成するために 実行するコマンド。このコマンドはOAUTHBEARER 認証メカニズムを使った接続を試みる 度毎に実行されます。詳細についてはoauth を参照してください。

3.141. imap_pass

Type: string
Default: (empty)

IMAP アカウントのパスワードを指定します。unset の場合、Mutt は <imap-fetch-mail>機能を起動した場合又はIMAP フォルダを開こうとするときに パスワードを要求してきます。

警告: このオプションは、十分に安全なマシン上でのみ使うべきです。 なぜなら、muttrc ファイルを自分以外が読めないように したつもりでも、スーパユーザは 読めるからです。

3.142. imap_passive

Type: boolean
Default: yes

set の場合、Mutt は新規メールチェックのために新規のIMAP 接続を開くことは しません。Mutt は新規メールを既存のIMAP 接続でのみ確認することになります。これが 有用となるのは、Mutt 起動時にユーザ名とパスワードの入力を要求されたくない場合や、 接続するのに時間がかかる場合などです。

3.143. imap_peek

Type: boolean
Default: yes

set の場合、Mutt はサーバからメッセージを読み出すときはいつでも メールを読んだというマークを暗黙で付けることを防ぎます。これは一般的に よい手法ですが、IMAP フォルダをクローズするときに少し遅くなることが あります。このオプションはスピード命の人をなだめるためにあります。

3.144. imap_pipeline_depth

Type: number
Default: 15

サーバに対して送られる前にキューにたまる IMAP コマンドの数を制御します。 深いパイプラインは、Mutt がサーバを待たなければならない大量の時間を節約し、 IMAP サーバの応答性を大幅に向上させるようにできます。しかし、すべてのサーバが パイプライン化されたコマンドを正確に扱えるわけではないので、もしも問題が 発生した場合は、この変数を 0 にしてみてください。

注意: この変数を変更しても接続時には何の影響もありません。

3.145. imap_poll_timeout

Type: number
Default: 15

この変数は、新規メールのためにIMAP 接続をポーリングする時、タイムアウトと 接続をクローズする前に、Mutt が応答を待つ最大の時間を指定します。 0 に設定すると、タイムアウトを無効にします。

3.146. imap_qresync

Type: boolean
Default: no

set の場合、Mutt は、サーバから広告があった場合、QRESYNC 拡張(RFC 7162)を 使います。Mutt の現在の実装は基本的なものであり、 初期メッセージのフェッチとフラグの更新のみを使います。

注意: この機能は現在実験的なものです。たとえば、メッセージの重複や欠落のような おかしな挙動があった場合には、バグとして是非ご連絡ください。

3.147. imap_servernoise

Type: boolean
Default: yes

setの場合、Mutt はエラーメッセージとして IMAP サーバからの警告メッセージを 表示します。そのようなメッセージはしばしば無害だったり、ユーザとは関係のない サーバ上の設定問題によって生成されたものなので、時には抑制したいかもしれません。

3.148. imap_user

Type: string
Default: (empty)

IMAP サーバ上で扱うメールの所有ユーザ名。

この変数は既定でローカルマシン上でのユーザ名となります。

3.149. implicit_autoview

Type: boolean
Default: no

yes に設定した場合、Mutt は 内部ビューワが定義されていない すべての MIME 添付 に copiousoutput フラグがセットされた mailcap エントリを 探します。そのようなエントリが見つかった場合、Mutt は本文部分をテキスト形式に 変換するために、そのエントリに対して定義されているビューワを使います。

3.150. include

Type: quadoption
Default: ask-yes

返信しようとしている元のメッセージ内容を返信に含めるかどうかを制御します。

3.151. include_encrypted

Type: boolean
Default: no

Mutt が、返信時に暗号化された添付内容を分離して含めるかどうかを制御します。

この変数は、攻撃者に対して返信する時に、暗号化された内容を予期せぬ形で公開される ことを防ぐために追加されました。以前に暗号化されたメッセージが攻撃者によって 添付された場合、不注意な受信者をだましてメッセージを解読し、返信に含めることが できます。

3.152. include_onlyfirst

Type: boolean
Default: no

Mutt が返信時にメッセージの最初の添付のみを含めるかどうかを制御します。

3.153. indent_string

Type: string
Default: 

返信時に、メッセージ中に引用されているテキストの各行の先頭に付加する 文字列を指定します。より狂信的なネチズンを煽る傾向があるため、この値を 変更しないことを強く推奨します。

このオプションの値は、引用メカニズムが format=flowed に対して厳格に定義 されているため、$text_flowed が設定されている場合は無視されます。

このオプションは、書式付きの文字列で、サポートされる printf(3) 形式の 書式については$index_format を参照してください。

3.154. index_format

Type: string
Default: %4C %Z %{%b %d} %-15.15L (%?l?%4l&%4c?) %s

この変数で、個人の好みによってメッセージインデックス表示をカスタマイズする ことができます。

Format strings はフォーマット出力のために使う C のprintf(3) 関数と 似ています(詳細はマニュアルページを参照してください)。%? の説明については $status_format の説明を参照してください。以下は Mutt で定義されているものです。

%a 差出人のアドレス
%A (もしあれば) reply-to アドレス (なければ差出人アドレス)
%b オリジナルのメッセージフォルダのファイル名(mailbox です)
%B 送信された手紙のリストかフォルダ名 (%b).
%c メッセージの(バイト単位の)サイズ (formatstrings-size 参照)
%C 現在のメッセージ番号
%d メッセージの日付と時刻を、送信者の現地時間に変換して $date_format の形式にしたもの
%D メッセージの日付と時刻を、自分の地域の時間に変換して $date_format の形式にしたもの
%e スレッド内におけるメッセージ番号
%E スレッド内のメッセージ総数
%f 送信者 (アドレス + 実名)、From: 又は Return-Path: のどちらか
%F 差出人の名前か自分自身から出されたメールであれば受信者の名前
%H メッセージの spam 属性
%i 現在のメッセージの message-id
%l 未処理のメッセージの行数(maildir, mh, とIMAP フォルダでは おそらく動作しない)
%L To: 又は Cc: ヘッダフィールドがユーザのsubscribe コマンドで定義されたアドレスに一致する場合、これは "To <リスト名>" と表示し、その他の場合は %F と同じになります。
%m メールボックス中のメッセージ総数
%M スレッドが折りたたまれている場合の非表示のメッセージ数
%N メッセージのスコア
%n 差出人の本名(あるいは存在しなければアドレス)
%O Mutt がかつてメッセージを隠していたもとの保存ファイル: リスト名又はリストに送らない場合は受信者の名前
%P ビルトインページャにおける処理インジケータ(どのくらいファイルが表示されたか)
%r コンマで分離された To: 受信者のリスト
%R コンマで分離された Cc: 受信者のリスト
%s メッセージの題名
%S 単一文字でのメッセージのステータス(N/O/D/d/!/r/\(は)
%t To: フィールド(受信者)
%T $to_chars 文字列からの適切な文字
%u 送信者のユーザ(ログイン)名
%v 送信者のファーストネームか、メッセージが自分からのものであれば受信者
%X 添付の数 (可能な速度効果については attachments の章を参照してください)
%y 存在すれば X-Label: フィールド
%Y (1) スレッドツリーの一部ではない、(2) スレッドの頂点である、 (3) X-Label: が 前のメッセージの X-Label: と異なる、の いずれかで、存在していればX-Label: フィールド。
%Z 3桁のメッセージ状態フラグ。 最初の文字は new/read/replied フラグ (n/o/r/O/N)。 2番目の文字は削除/暗号化フラグ (D/d/S/P/s/K)。 3番目の文字はタグ/フラグのどちらか(\(は/!)か、$to_chars 中にある 文字のどれか。
%@name@ index-format-hook コマンドに一致する書式文字列を挿入して 評価
%{fmt} メッセージの日付と時間が送信者のタイムゾーンに変換され、 fmt がライブラリ関数strftime(3) によって展開されます。 先頭に感嘆符がつくものはロケールが無視されます。
%[fmt] メッセージの日付と時間がローカルタイムゾーンに変換され、 fmt がライブラリ関数strftime(3) によって展開されます。 先頭に感嘆符がつくものはロケールが無視されます。
%(fmt) メッセージを受信したときのローカルの日付と時間。 fmt はライブラリ関数strftime(3) によって展開されます。 先頭に感嘆符がつくものはロケールが無視されます
%<fmt> 現在のローカルの日付と時刻。 fmt はライブラリ関数strftime(3) によって展開されます。 先頭に感嘆符がつくものはロケールが無視されます
%>X 残りの文字列を右寄せして、間を X 部分の文字で詰めます。
%|X 行末まで X 部分の文字で詰めます。
%*X 文字 X を埋め草として、 soft-fillします。

mbox/mmdf では、%l は非圧縮メッセージに対して適用され、maildir/mh では Lines: ヘッダフィールドが存在する場合に、そこから値は取得されることに 注意してください(意味は通常同じです)。従って、値は、異なったメッセージの パート中で使われるエンコーディングに依存し、実際にはほとんど意味がありません。

Soft-fill についてはいくつか説明が必要でしょう: 通常の右揃えは、%> の左側のものすべてをプリントし、余白がある場合にのみ、右側にあるものすべてと 埋め草文字を表示します。それと対照的に、soft-fill は右側を優先し、それを 表示する場所を保障し、まだ余裕がある場合にのみ、埋め草文字を表示します。 必要に応じて、soft-fill は右側のテキストのために空間を作るため、テキストの 左側を削除します。

これらの展開はsave-hook, fcc-hook, fcc-save-hookindex-format-hook でサポートされることに注意してください。

また、設定変数 $attribution, $forward_attribution_intro, $forward_attribution_trailer, $forward_format, $indent_string, $message_format, $pager_format, と $post_indent_string でもサポートされます。

3.155. ispell

Type: path
Default: /usr/bin/hunspell

どのようにして ispell(GNU のスペリングチェックソフトウェア)を起動するかの指定です。

3.156. keep_flagged

Type: boolean
Default: no

set の場合、フラグが付けられている既読メッセージはスプール メールボックスから $mbox メールボックス、あるいは mbox-hook コマンドの 結果に移動しません。

3.157. list_reply

Type: quadoption
Default: no

設定した場合、アドレスはもとのメッセージが来たメーリングリストに返信されます (代わりに作成者のみ)。この設定を ask-yesask-no にすると 本当に作成者のみに返信するかどうかを聞いてきます。

3.158. mail_check

Type: number
Default: 5

この変数は、どのくらいの頻度(秒単位)で、Mutt が新規メールを探しに行くかを 設定します。$timeout 変数も参照してください。

3.159. mail_check_recent

Type: boolean
Default: yes

set の場合、Mutt は、最後にメールボックスを開いたときから受け取った 新規メールについてのみ通知します。unset の場合、Mutt は、最近アクセスしたか否かに かかわらず、メールボックス中に新規メールが存在するかどうかを通知します。

fI$mark_old が設定されている場合、Mutt は、古いメッセージのみが存在している 場合、メールボックス中に新規メールが含まれているとは見なしません。

3.160. mail_check_stats

Type: boolean
Default: no

set の場合、Mutt は新規メールのポーリング中に、定期的にメールボックスの メッセージ統計を計算します。未読、フラグ付き、および合計メッセージ数をチェック します。この操作は多くの能力を集中的に使うため、既定では unset であり、 これらのカウントを更新する頻度を制御するための、$mail_check_stats_interval という別のオプションがあります。

メッセージの統計情報は <check-stats> 機能を起動することにより、明示的に 計算することも出来ます。

3.161. mail_check_stats_interval

Type: number
Default: 60

$mail_check_statsset の場合、この変数はどのくらいの頻度(秒単位)で メッセージ数を Mutt が更新するかを設定します。

3.162. mailcap_path

Type: string
Default: (empty)

この変数は、Mutt で直接サポートされない MIME の本文を表示しようとする際に、 参照するファイルを指定します。既定値は起動時に生成されます。マニュアルの mailcap 節を参照してください。

3.163. mailcap_sanitize

Type: boolean
Default: yes

set の場合、Mutt は、%拡張を、明確に定義した安全な文字セットにすることで、 メールボックス中で使用できる文字を制限します。これは安全な設定ですが、 これにより高度な MIME 項目が壊れないとは断言できません。

この設定は、完全に理解することなく変更してはなりません!

3.164. maildir_header_cache_verify

Type: boolean
Default: yes

ヘッダキャッシュが使われている時に、maildirファイルを変更した Mutt 以外の Maildir に対応しないプログラムを確認します。これは、フォルダのオープン毎に メッセージ毎に1回のstat(2) が発生します(これは NFS フォルダの場合には 非常に遅くなる可能性があります)。

3.165. maildir_trash

Type: boolean
Default: no

set の場合、削除マークが付いたメッセージは、削除される代わりに maildir に ゴミ フラグを付けてセーブされます。注意: これは、 maildir 形式のメールボックスに対してのみ適用されます。設定は他のメールボックス 形式には影響しません。

3.166. maildir_check_cur

Type: boolean
Default: no

set の場合、Mutt は新規メッセージについて、maildir フォルダの new と cur ディスクの両方をポーリングします。これは、フォルダを操作する他のプログラム (例えば dovecot)が新規メッセージを cur ディレクトリに移動する場合に 便利です。このオプションを設定すると、大きなフォルダの場合には Mutt がすべての cur メッセージをスキャンするために、新規メッセージの ポーリングが遅くなる可能性があることに注意してください。

3.167. mark_macro_prefix

Type: string
Default: '

メッセージのマークに使う時に作成されるマクロ用のプリフィックス。 <mark-message>a で、自動的に生成される新規マクロは このプレフィックスと文字 a から構成されます。

3.168. mark_old

Type: boolean
Default: yes

Mutt が 新規で 未読の メッセージを読まないでメールボックスから出るときに old を付けるかどうかを制御します。set の場合、次回 Mutt を起動した 時から、インデックスメニュー中で、メッセージの隣に O を付けて表示され、 それが古いものであることを示します。

3.169. markers

Type: boolean
Default: yes

内部ページャで折り返される行の表示を制御します。設定した場合、 + と言うマーカーが、折り返された行の先頭に表示されます。

$smart_wrap 変数も参照してください。

3.170. mask

Type: regular expression
Default: !^\.[^.]

ファイルブラウザ中で使う正規表現で、not 演算子 ! を先頭に 付けることも出来ます。この条件に名前が一致するファイルのみが表示されます。 一致条件は常時大文字小文字を区別します。

3.171. mbox

Type: path
Default: ~/mbox

これは、$spoolfile フォルダ中の既読メールを追加するフォルダです。

$move 変数も参照してください。

3.172. mbox_type

Type: folder magic
Default: mbox

新規フォルダを作る際の既定のメールボックスタイプ。mbox, MMDF, MHMaildir のどれかです。これは、-m コマンド行オプションで上書きできます。

3.173. menu_context

Type: number
Default: 0

この変数は、メニューをスクロールするときに表示されるコンテキストの行数を制御 します($pager_context に似ています)。

3.174. menu_move_off

Type: boolean
Default: yes

unset の場合、行数よりもエントリ数が小さい場合を除き、メニュー最下部の エントリは、画面の最下部を越えてスクロールアップしません。setの場合、 最下部のエントリは最下部から動く可能性があります。

3.175. menu_scroll

Type: boolean
Default: no

set の場合、画面の境界を越えて移動しようとする場合、メニューは1行ずつ 上下にスクロールします。unset の場合、画面は消去されて次又は前のメニューページ が表示されます(大量の再描画を防ぐために、遅い回線の場合には便利です)。

3.176. message_cache_clean

Type: boolean
Default: no

set の場合、Mutt はメールボックスが同期されたときに、メッセージキャッシュから 無効になったエントリを削除します。 (特に大きなフォルダでは)。若干遅くなるため、 たまに設定したいと思う程度でしょう

3.177. message_cachedir

Type: path
Default: (empty)

これをディレクトリに設定すると、Mutt はIMAP と POP サーバからメッセージのコピーを ここにキャッシュします。このエントリはいつでも削除できます。

この変数をディレクトリに設定すると、Mutt はすべてのリモートメッセージを1回だけ フェッチする必要があり、ローカルフォルダと同じくらいの速さで正規表現による 検索を実行できます。

$message_cache_clean 変数も参照してください。

3.178. message_format

Type: string
Default: %s

これは、message/rfc822 タイプの添付用 attachment メニューで 表示される文字列です。printf(3) 風の定義されている完全な書式リストは $index_format 節を参照してください。

3.179. meta_key

Type: boolean
Default: no

set の場合、最上位ビット(ビット 8) を設定したキーストロークを、ESC キーを 押し、残りのものはすべて最上位ビットを落とした形で Mutt に解釈させます。たとえば、 押されたキーが ASCII の値で 0xf8 の場合は、 ESC の次に x が押された ように扱われます。これは、最上位ビットを落とした 0xf8 が、0x78 で、 それは ASCII 文字 x だからです。

3.180. metoo

Type: boolean
Default: no

unset の場合、Mutt はメッセージ返信時に受信者リストからアドレスを 取り除きます(alternates コマンドを参照してください)。

3.181. mh_purge

Type: boolean
Default: no

unset の場合、Mutt は mh の挙動を偽装し、実際に削除する代わりに mh フォルダ中で 削除されたメッセージを ,<old file name> に改名します。これは、メッセージを ディスク上に残しますが、プログラムがフォルダを読むときに無視させます。変数が set の場合、メッセージファイルは単に削除されます。

このオプションは、Maildir フォルダ用の $maildir_trash と似ています。

3.182. mh_seq_flagged

Type: string
Default: flagged

フラグ付きメッセージに使われる MH シーケンス名です。

3.183. mh_seq_replied

Type: string
Default: replied

返信済みメッセージに使われる MH シーケンス名です。

3.184. mh_seq_unseen

Type: string
Default: unseen

未読メッセージに使われる MH シーケンス名です。

3.185. mime_forward

Type: quadoption
Default: no

set の場合、転送するメッセージは、メッセージの本体中に含める代わりに、 分離された message/rfc822 MIME パートとして添付されます。これは、 MIME メッセージの転送に便利で、こうすることにより、受信者は自分に送られてきた のと同じように正しくメッセージを閲覧できます。MIME と 非MIME をメール毎に 切り換えたいのであれば、この変数を ask-no 又は ask-yes にします。

$forward_decode$mime_forward_decode も参照してください。

3.186. mime_forward_decode

Type: boolean
Default: no

$mime_forwardset の時にメッセージを転送する時、複雑な MIME メッセージを text/plain にデコードするかを制御します。それ以外は、代わりに $forward_decode が使われます。

3.187. mime_forward_rest

Type: quadoption
Default: yes

添付メニューから、 MIME メッセージの複数の添付を転送する時、このオプションが set の時、合理的な方法でデコードできない添付は新しく編集された メッセージに添付されます。

3.188. mime_type_query_command

Type: string
Default: (empty)

これは、メッセージを編集するときに新しい添付の MIME タイプを決定するために 動かすコマンドを指定します。$mime_type_query_first が設定されている場合を除き、 これは mime.types ファイル中に添付の拡張子が見つからない場合にのみ実行されます。

文字列には %s を含むことが出来、これは、添付ファイル名に置換されます。 Mutt はシェルの引用ルールに沿って、自動的に %s を置き換えた文字列の回りに 引用符を追加するので、個別に囲むことは必要ありません。文字列中に %s が ない場合は、Mutt は文字列の最後に添付ファイル名を追加します。

コマンドは添付の MIME タイプを含む単一行を出力しなければなりません。

推奨される値は、 xdg-mime query filetype または file -bi です。 file -bi.

3.189. mime_type_query_first

Type: boolean
Default: no

set の場合、mime_type_query_command は mime.types 検索の前に 実行されます。

3.190. mix_entry_format

Type: string
Default: %4n %c %-16s %a

この変数は、mixmaster チェーン選択画面でのリメーラ行の書式を記述します。 以下の、printf(3) 風の書式がサポートされます。

%n メニュー上での実行番号
%c リメーラのケーパビリティ
%s リメーラの短縮名
%a リメーラのメールアドレス

3.191. mixmaster

Type: path
Default: mixmaster

この変数は、システム上の Mixmaster バイナリへのパスを記述します。 これは、種々のパラメータを付けた、既知のリメーラのリストを集めるためと、 最終的には、mixmaster チェーンを使ってメッセージを送信するのに使われます。

3.192. move

Type: quadoption
Default: no

Mutt が既読メッセージをスプールメールボックスから、$mbox メールボックス か、mbox-hook コマンドの結果に移動するか否かを制御します。

3.193. narrow_tree

Type: boolean
Default: no

この変数は、setの時、深いスレッドを画面上に収まるように、スレッドツリーを 狭くします。

3.194. net_inc

Type: number
Default: 10

ネットワーク越しに大量のデータを転送することを予定している操作は、 処理状況を $net_inc キロバイト毎に更新します。0 に設定すると、 処理状況メッセージは表示されません。

read_inc, $write_inc$net_inc も参照してください。

3.195. new_mail_command

Type: path
Default: (empty)

set の場合、Mutt は新規メッセージを受信後にこのコマンドを呼び出します。 このコマンド中にフォーマットできうる値については、$status_formatの説明を 参照してください。

3.196. pager

Type: path
Default: builtin

この変数は、メッセージを表示するのに使うページャを指定します。builtin と言う値は、内蔵ページャを使う事を意味し、それ以外は、使用したい外部ページャの パスを指定します。

外部ページャを使う場合には若干弱点があります。ページャから直接 Mutt の 機能を呼び出せないために、追加のキー操作が必要で、さらに、画面のリサイズを すると、ヘルプメニュー中で、画面の幅より長い行は不正にレイアウトされてしまいます。

外部ページャを使う場合は、既定で set になっている $prompt_after も 参照してください。

3.197. pager_context

Type: number
Default: 0

この変数は、内部ページャで、次または前のページを表示するときに、コンテキストと して残す行数を制御します。既定では、Mutt は画面上の最後の行の次の行を 次のページの最上位に表示します(コンテキストが 0行)。

この変数は検索の結果のコンテキスト量も指定します。値が正ならば、一致する前の 行数が表示され、0 の場合は、一致は上揃えとなります。

3.198. pager_format

Type: string
Default: -%Z- %C/%m: %-20.20n   %s%*  -- (%P)

この変数は、内部又は外部ページャ中の各メッセージの前に表示される、 1行の status メッセージの書式を制御します。正しい書式は $index_format 節に記してあります。

3.199. pager_index_lines

Type: number
Default: 0

ページャ中に表示されるミニインデックスの行数を指定します。フォルダの 上端や下端にいる場合を除き、現在のメッセージは好みにインデックス画面の中で、 おおよそ1/3の位置にあり、メッセージの前後に数行がコンテキストとして、 メッセージを読むときに表示されます。これは、たとえば、現在のスレッドに どのくらい未読が残っているかを判断するのに便利です。行のうち1行は、 インデックスのステータスバーとして予約されているので、6 に設定すると、 実際のインデックスでは 5 行のみが表示されます。現在のフォルダ中のメッセージ数が $pager_index_lines より少ない場合は、インデックスは必要な数の行だけを 使用します。

3.200. pager_stop

Type: boolean
Default: no

set の場合、内部ページャは、メッセージの最後にいて、<next-page> 機能を呼び出しても、次のメッセージに移動しません

3.201. pgp_auto_decode

Type: boolean
Default: no

set の場合、Mutt は、ユーザがメッセージの内容を操作するような通常の操作を 実行しようとすると、従来の PGP メッセージを自動的に復号化しようとします。たとえば、 <check-traditional-pgp> 機能を使って手動でチェックされていない 従来の PGP メッセージを表示した場合、Mutt は自動的に、メッセージが従来の PGP かを チェックします。

3.202. pgp_autoinline

Type: boolean
Default: no

このオプションは、特定の環境で、古いスタイルのインライン(旧来の)PGP 暗号化または 署名されたメッセージを生成するかどうかを制御します。これは インラインが不要の場合、 PGP メニューを使う事で上書きできます。GPGME バックエンドはこのオプションを サポートしません。

Mutt は、MIME パートが1つより多く存在している場合、メッセージに対して、 自動的に PGP/MIME を使用する場合があることに注意してください。Mutt は インライン(従来型) が動作しない場合に、PGP/MIME メッセージを送信する前に 問合せをするように設定できます。

$pgp_mime_auto 変数も参照してください。

また、古い形式の PGP メッセージ形式を使う事は強く 非推奨に なっていることにも注意してください。 (PGP のみです)

3.203. pgp_check_exit

Type: boolean
Default: yes

set の場合、Mutt は署名又は暗号化時に PGP サブプロセスの終了コードを チェックします。ゼロでない終了コードはサブプロセスが異常終了したことを 意味します。 (PGP のみです)

3.204. pgp_check_gpg_decrypt_status_fd

Type: boolean
Default: yes

setの場合、Mutt は GnuPG ステータスコードが復号が成功したことを表示する $pgp_decrypt_command$pgp_decode_command コマンドののステータスファイル記述子 出力をチェックします。これは DECRYPTION_OKAY の存在、DECRYPTION_FAILED の不在および BEGIN_DECRYPTION と END_DECRYPTION ステータスコードの間にすべての PLAINTEXT が存在することをチェックします。

unset の場合、Mutt は $pgp_decryption_okay と fd 出力のステータスを 代わりに照合します。 (PGP のみです)

3.205. pgp_clearsign_command

Type: string
Default: (empty)

このフォーマットは、旧形式の clearsigned な PGP メッセージを作成するのに 使います。このフォーマットの使用は 強く 非推奨 であることに 注意してください。

これはフォーマット文字列です。使えるprintf(3) 風の書式については $pgp_decode_command コマンドを参照してください。 (PGP only)

3.206. pgp_decode_command

Type: string
Default: (empty)

このフォーマット文字列は、application/pgp 添付を復号するために使われる コマンドを指定します。

PGP コマンドフォーマットは printf(3) 風の固有の書式があります。

%p パスフェーズが必要な場合に 任意の空白文字列などをPGPPASSFD=0 に 展開します。注意: これは %? も使うことができます。
%f メッセージを含むファイルの名前を展開します。
%s 検証するときに multipart/signed 添付の署名パートを含む ファイル名を展開します。
%a 設定されている場合、$pgp_sign_as の値で、そのほかは、 $pgp_default_key の値。
%r 1つ以上の キー ID (あるいはもしもあればフィンガープリント)

PGP の種々のバージョンに対してこれらのフォーマットをどのように設定するかの例は ドキュメントといっしょにシステムにインストールされている the samples/ サブディレクトリ にある、pgp と gpg 設定ファイルの例を参照してください。 (PGP のみです)

3.207. pgp_decrypt_command

Type: string
Default: (empty)

このコマンドは PGP で暗号化されたメッセージの復号に使います。

これはフォーマット文字列で、使用できる printf(3) 風の書式は $pgp_decode_command を参照してください。 (PGP のみです)

3.208. pgp_decryption_okay

Type: regular expression
Default: (empty)

この変数にテキストを割り当てた場合、暗号化された PGP メッセージは、 $pgp_decrypt_command からの出力がテキストを含んでいるときのみ、 復号が成功したとします。これは、multipart/encrypted ヘッダがあるが、 ブロックが完全には暗号化されていないブロックを含む場合、暗号化された メッセージの盗聴を防ぐのに便利です(すなわち、単純に署名されて、ASCII で 防御されたテキスト)。

$pgp_check_gpg_decrypt_status_fd が設定されている場合、この変数は 無視されることに注意してください。 (PGP のみです)

3.209. pgp_default_key

Type: string
Default: (empty)

これは PGP 操作に使う、既定のキーペアです。これは暗号化の時に使います ($postpone_encrypt$pgp_self_encrypt を参照してください)。

$pgp_sign_as が設定されていない限り、署名にも使われます。

The (now deprecated) pgp_self_encrypt_as is an alias for this variable, and should no longer be used. (現在は非推奨の) fIpgp_self_encrypt_as はこの変数の別名ですが、 もはや使われていません。 (PGP のみです)

3.210. pgp_encrypt_only_command

Type: string
Default: (empty)

このコマンドは、署名なしで本文を暗号化するために使います。

これはフォーマット文字列で、使用可能な printf(3) 風の書式については $pgp_decode_command コマンドを参照してください。 (PGP のみです)

3.211. pgp_encrypt_sign_command

Type: string
Default: (empty)

このコマンドは、本文の署名と暗号化両方に使います。

これはフォーマット文字列で、使用可能な printf(3) 風の書式については $pgp_decode_command コマンドを参照してください。 (PGP のみです)

3.212. pgp_entry_format

Type: string
Default: %4n %t%f %4l/0x%k %-4a %2c %u

この変数は、好みに応じて PGP キー選択メニューをカスタマイズ出来るようにします。 この文字列は$index_format と似ていますが、printf(3) 風の固有の書式を 持っています。

%n 番号
%k キー id
%u user id
%a アルゴリズム
%l キー長
%f フラグ
%c ケーパビリティ
%t key-uid アソシエーションの 信頼性/有効性
%[<s>] strftime(3) 形式のキーの日付

(PGP のみです)

3.213. pgp_export_command

Type: string
Default: (empty)

このコマンドは、ユーザのキーリングから公開鍵をエクスポートするのに使われます。

これはフォーマット文字列で、使用可能な printf(3) 風の書式については $pgp_decode_command コマンドを参照してください。 (PGP のみです)

3.214. pgp_getkeys_command

Type: string
Default: (empty)

このコマンドは、Mutt が、メールアドレスに関連づけられた公開鍵をフェッチする 必要がある場合はいつでも起動されます。$pgp_decode_command によってサポート される書式のうち、%r は、このフォーマットだけで使われる書式です。 この場合、%r は メールアドレスに展開されますが、公開鍵のID ではないことに注意して ください(キーID は不明なので、このことが、Mutt がこのコマンドを起動する理由です)。 (PGP のみです)

3.215. pgp_good_sign

Type: regular expression
Default: (empty)

この変数にテキストを割り当てた場合、$pgp_verify_command からの出力が テキストの場合にのみ、PGP 署名 は検証されていると見なされます。不正な 署名であっても、コマンドの終了コードが 0 の場合はこの変数を使います。 (PGP のみです)

3.216. pgp_ignore_subkeys

Type: boolean
Default: yes

この変数を設定すると、Mutt は OpenPGP 副キーを無視するようになります。代わりに、 プリンシパルキー に副キーのケーパビリティが継承されます。興味深いキー選択 ゲームを楽しみたい場合は、これを Unset にします。 (PGP のみです)

3.217. pgp_import_command

Type: string
Default: (empty)

このコマンドは、ユーザの公開キーリングにメッセージからキーをインポートする のに使います。

これはフォーマット文字列で、取り得るprintf(3) 風の書式については $pgp_decode_command コマンドを参照してください。 (PGP のみです)

3.218. pgp_list_pubring_command

Type: string
Default: (empty)

このコマンドは、公開キーリングの内容を一覧表示するのに使います。 出力形式は以下で使用しているものに似ている必要があります。

gpg --list-keys --with-colons --with-fingerprint

このフォーマットは、Mutt 由来の mutt_pgpring ユーティリティによっても 生成されます。

注意: gpg の fixed-list-mode オプションは使ってはなりません。これは、 Mutt 中で不正なキー生成日付を表示る結果となる異なった日付形式を生成します。

これはフォーマット文字列で、取り得るprintf(3) 風の書式については $pgp_decode_command コマンドを参照してください。 この場合、 %r は、メールアドレス、名前、あるいはキーIDのような、1つ以上のクォート された文字列の一覧である検索文字列に展開されることに注意してください。 (PGP のみです)

3.219. pgp_list_secring_command

Type: string
Default: (empty)

このコマンドは秘密鍵リングの内容を一覧表示するのに使います。 出力形式は以下で使用しているものに似ている必要があります。

gpg --list-keys --with-colons --with-fingerprint

このフォーマットは、Mutt 由来の mutt_pgpring ユーティリティによっても 生成されます。

注意: gpg の fixed-list-mode オプションは使ってはなりません。これは、 Mutt 中で不正なキー生成日付を表示る結果となる異なった日付形式を生成します。

これはフォーマット文字列で、取り得るprintf(3) 風の書式については $pgp_decode_command コマンドを参照してください。 この場合、 %r は、メールアドレス、名前、あるいはキーIDのような、1つ以上のクォート された文字列の一覧である検索文字列に展開されることに注意してください。 (PGP のみです)

3.220. pgp_long_ids

Type: boolean
Default: yes

set の場合、64ビットの PGP キーID を使い、unset の場合、通常の 32ビットキーIDを使います。注意:内部的に、Mutt はフィンガープリント(あるいは フォールバックとしての長いキーID)の使用に移行しました。このオプションは、 キー選択メニューでの内容の表示やいくつかの他の場所での制御にのみ使われます。 (PGP のみです)

3.221. pgp_mime_auto

Type: quadoption
Default: ask-yes

このオプションは、インライン(従来型の)で(何らかの理由で)うまくいかなかった 場合、PGP/MIME を使う(署名/暗号化)メッセージの自動的な送信に対して Mutt が問合せをするかどうかを制御します。

古い形式の PGP メッセージ形式の使用は 強く 非推奨 であることにも 注意してください。 (PGP のみです)

3.222. pgp_replyinline

Type: boolean
Default: no

この変数を設定すると、Mutt は、インラインでPGPで暗号化/署名されたメッセージに 返信するときに、インライン(従来型の)メッセージを作成しようとします。 これは、インラインが不要だった場合、PGPメニューを使うことによって 上書きできます。このオプションは(返信された)メッセージがインラインかを 自動的には検出しません。そのかわり、以前にチェック/フラグを付けたメッセージの Mutt 内部状態に依存します。

Mutt は MIME パートが複数存在する場合、メッセージに対して 自動的に PGP/MIME を使う事があることに注意してください。Mutt は、インライン(従来型)が動かない 場合に、PGP/MIMEメッセージを送信する前に問合せをするように設定できます。

$pgp_mime_auto 変数も参照してください。

古い形式の PGP メッセージ形式の使用は 強く 非推奨 であることにも 注意してください。 (PGP のみです)

3.223. pgp_retainable_sigs

Type: boolean
Default: no

set の場合、署名かつ暗号化されたメッセージは、ネストされた multipart/signedmultipart/encrypted 本体部分で構成されます。

これは外部レイヤ(multipart/encrypted)が簡単に削除でき、内部の multipart/signed パートが残るので、暗号化され署名された メーリングリストのようなアプリケーションには便利です。 (PGP のみです)

3.224. pgp_self_encrypt

Type: boolean
Default: yes

set の場合、PGP 暗号化メッセージは $pgp_default_key 中のキーを 使う事で暗号化も行います。 (PGP のみです)

3.225. pgp_show_unusable

Type: boolean
Default: yes

set の場合、Mutt は PGP キー選択メニュー上で使えないキーを表示します。 これは、取り消されたもの、満了したもの、あるいは、ユーザによって、disabled と マークを付けられたものを含みます。 (PGP のみです)

3.226. pgp_sign_as

Type: string
Default: (empty)

署名のための異なったキーペアがある場合、署名するキーを、これを使って指定 しなければなりません。ほとんどの場合は、$pgp_default_key を設定しなければ ならないだけです。キーを指定するためにキーID形式を使う事を推奨します (たとえば0x00112233)。 (PGP のみです)

3.227. pgp_sign_command

Type: string
Default: (empty)

このコマンドは、multipart/signed PGP/MIME 本体部分のために、PGP 分離署名を 作成するために使われます。

これはフォーマット文字列で、取り得るprintf(3) 風の書式については $pgp_decode_command コマンドを参照してください。 (PGP のみです)

3.228. pgp_sort_keys

Type: sort order
Default: address

PGP メニュー中のエントリをどのように整列するかを指定します。 取り得る値は以下の通りです:

address ユーザID のアルファベット順
keyid キーID のアルファベット順
date キー作成日順
trust キーの trust 順

上記の値を逆順にしたい場合は、reverse- という接頭辞を付けます。 (PGP のみです)

3.229. pgp_strict_enc

Type: boolean
Default: yes

set の場合、Mutt は自動的に PGP/MIME 署名メッセージを quoted-printable で エンコードします。この変数を設定しない場合、検証できない PGP 署名で 問題が出てくるかもしれないので、変更することの内容が割っている場合にのみ 変更してください。 (PGP のみです)

3.230. pgp_timeout

Type: number (long)
Default: 300

使用していない場合の、キャッシュされたパスフレーズが満了するまでの、 秒数です。 (PGP のみです)

3.231. pgp_use_gpg_agent

Type: boolean
Default: yes

set の場合、Mutt は、秘密鍵パスフレーズプロンプトを扱うために、 gpg-agent(1) プロセスを想定します。unset の場合、Mutt は パスフレーズ用のプロンプトを表示し、pgp コマンドに標準入力経由で渡します。

バージョン 2.1 以降、GnuPG は自動的にエージェントを起動し、パスフレーズ管理に エージェントを使う事を要求することに注意してください。このバージョンがどんどん 流行しているので、この変数の既定値は現在 set となっています。

Mutt は GUI または curses な pinentry プログラムとして動作します。 TTY 形式の pinentry は使ってはなりません。

エージェントを動かせない古いバージョンの GnuPG を使っているか、 エージェントがない他の暗号化プログラムを使っている場合は、この変数を unset にする必要があります。 (PGP のみです)

3.232. pgp_verify_command

Type: string
Default: (empty)

このコマンドは PGP 署名を検証するのに使います。

これはフォーマット文字列で、取り得るprintf(3) 風の書式については $pgp_decode_command コマンドを参照してください。 (PGP のみです)

3.233. pgp_verify_key_command

Type: string
Default: (empty)

このコマンドは、キー選択メニューからキー情報を検証するのに使います。

これはフォーマット文字列で、取り得るprintf(3) 風の書式については $pgp_decode_command コマンドを参照してください。 (PGP のみです)

3.234. pipe_decode

Type: boolean
Default: no

<pipe-message> コマンドに関連して使われます。unset の場合、 Mutt は何らの前処理もせずにメッセージをパイプします。set の場合、 Mutt はヘッダを間引き、最初にメッセージをデコードしようとします。

3.235. pipe_sep

Type: string
Default: \n

外部 Unix コマンドにタグが付いたメッセージの一覧をパイプするときにメッセージ間に 付与されるセパレータです。

3.236. pipe_split

Type: boolean
Default: no

<tag-prefix>がある<pipe-message> 機能に関連して使われます。 この変数がunset の時、タグが付いたメッセージの一覧をパイプするとき、 Mutt はメッセージを結合し、すべて結合した形でパイプします。set の場合、 Mutt はメッセージを1つずつパイプします。両方とも、メッセージは現在整列されている 順でパイプされ、各メッセージの後に $pipe_sep separator が付与されます。

3.237. pop_auth_try_all

Type: boolean
Default: yes

set の場合、Mutt はすべての有効な認証方法を試します。 unset の場合、Mutt は、以前の手法が無効だった場合にのみ、他の認証方法 にフォールバックします。手法が有効だが認証に失敗した場合、Mutt は POP サーバに接続しません。

3.238. pop_authenticators

Type: string
Default: (empty)

これは、Mutt がPOPサーバにログインする時に使う、コロンで分離された認証方法の 一覧です。この順で Mutt は接続を試みます。認証方法は、 user, apop か他の SASL メカニズムで、例えば digest-md5, gssapicram-md5 です。このオプションは大文字小文字を区別しません。 このオプションが unset の場合(既定値)、Mutt はすべての有効な方法を もっともセキュアなものからそうでないものの順で試みます。

例:

set pop_authenticators="digest-md5:apop:user"

3.239. pop_checkinterval

Type: number
Default: 60

この変数は、現在選択されているメールボックスが POP メールボックスだった場合、 Mutt が新規メールを検索する感覚を(秒単位で)設定します。

3.240. pop_delete

Type: quadoption
Default: ask-no

set の場合、Mutt は <fetch-mail> 機能を使って POP サーバからダウンロード 成功したメッセージを削除します。unset の場合は、Mutt はメッセージを ダウンロードしますが、POP サーバ上に残したままにします。

3.241. pop_host

Type: string
Default: (empty)

<fetch-mail> 機能で使う POP サーバの名前です。以下のように 代替ポート、ユーザ名、パスワードも指定することができます。

[pop[s]://][username[:password]@]popserver[:port]

ここで、 [...] はオプションの部分を意味します。

3.242. pop_last

Type: boolean
Default: no

この変数がset の場合、Mutt は、<fetch-mail> 機能を使う時に、 POP サーバから未読メッセージのみを検索するために、LAST POP コマンドを 使おうとします。

3.243. pop_oauth_refresh_command

Type: string
Default: (empty)

このコマンドは、POPサーバへの接続時の認証のために OAUTH リフレッシュトークンを 生成するコマンドです。このコマンドは、OAUTHBEARER 認証メカニズムを使う 接続時毎に実行されます。詳細はoauth を参照してください。

3.244. pop_pass

Type: string
Default: (empty)

POP アカウントのパスワードを指定します。unset の場合、 POP メールボックスを 開くときにパスワードの入力を求めます。

警告: このオプションは、自分自身しか読めないファイルであっても、スーパーユーザが 読むことが出来るため、確実に安全なマシンでのみ使うべきです。

3.245. pop_reconnect

Type: quadoption
Default: ask-yes

POP サーバとの接続が切れたときに、Mutt が再接続を試みるかどうかを制御します。

3.246. pop_user

Type: string
Default: (empty)

POP サーバへのログイン名です。

既定ではローカルマシンでのユーザ名になります。

3.247. post_indent_string

Type: string
Default: (empty)

$attribution 変数と似ていて、Mutt はこの文字列を、返信するメッセージの引用の あとに追加します。 定義されている printf(3) 風の書式の完全な一覧は $index_format 説を参照してください。

3.248. postpone

Type: quadoption
Default: ask-yes

メッセージをすぐに送らないことを選択した場合、メッセージを $postponed にセーブするかどうかを制御します。

$recall 変数も参照してください。

3.249. postponed

Type: path
Default: ~/postponed

Mutt は編集中のメッセージを無制限に メッセージの送信を postpone できます。 メッセージを保留にすることを選んだ場合、Mutt はこの変数で指定されたメールボックスに 保存します。

$postpone 変数も参照してください。

3.250. postpone_encrypt

Type: boolean
Default: no

set の場合、暗号化するようにマークされた延期されたメッセージは、 自己暗号化されます。Mutt は最初に $pgp_default_key 又は $smime_default_key で指定された値を使って暗号化しようとします。それらが設定されていない場合、 非推奨の $postpone_encrypt_as を使おうとします。 (Crypto のみです)

3.251. postpone_encrypt_as

Type: string
Default: (empty)

これは $postpone_encrypt に対する非推奨のフォールバック変数です。 $pgp_default_key 又は $smime_default_key を使ってください。 (Crypto のみです)

3.252. preconnect

Type: string
Default: (empty)

set の場合、Mutt がサーバへの接続を確立するのに失敗した場合に 実行されるシェルコマンドです。これは、たとえば、ssh(1) のような セキュアな接続を設定するのに便利です。コマンドの結果が非ゼロのステータス を返す場合は、Mutt はサーバをオープンすることを諦めます。例は以下の通りです。

set preconnect="ssh -f -q -L 1234:mailhost.net:143 mailhost.net \
sleep 20 < /dev/null > /dev/null"

mailhost.net 上のメールボックス foo はこれで {localhost:1234}foo として扱うことが出来ます。

注意: この例を動かすためには、パスワード入力なしで、リモートマシンに ログインできる必要があります。

3.253. print

Type: quadoption
Default: ask-no

Mutt が本当にメッセージを印刷するかどうかを制御します。 何人かが間違ってしばしば p を叩くために、これは既定値で ask-no を設定します。

3.254. print_command

Type: path
Default: lpr

これに指定したコマンドへパイプしてメッセージを印刷します。

3.255. print_decode

Type: boolean
Default: yes

<print-message> コマンド関連で使います。このオプションが set の場合、メッセージは $print_command で指定された外部コマンドに 渡される前にデコードされます。このオプションが unset の場合、 印刷するときに、メッセージには何も処理を適用しません。後者は、 メールメッセイジを印刷時に適切に整形できる、高度なプリンタフィルタを 使う場合に便利です。

3.256. print_split

Type: boolean
Default: no

<print-message> コマンド関連で使います。このオプションが set の場合、印刷される各メッセージに対して、$print_command で指定された コマンドが1回実行されます。このオプションがunset の場合、 $print_command で指定されたコマンドが1回だけ実行され、すべてのメッセージが メッセージの区切りとしてフォームフィードを付けて結合されます。

enscript(1) プログラムのメール印刷モードを使う場合、このオプションを set に設定したいと思うようになるでしょう。

3.257. prompt_after

Type: boolean
Default: yes

external $pager を使っている場合、この変数を設定すると、 ページャ終了時に、インデックスメニューに戻るのではなく、Mutt がコマンド入力を 即すようになります。unset の場合、Mutt は外部ページャ終了時に、 インデックスメニューに戻ります。

3.258. query_command

Type: path
Default: (empty)

これは、Mutt が外部のアドレス問合せをするのに使うコマンドを指定します。 文字列は、ユーザが入力した問合せ文字列に置き換えられる %s を含むことも できます。Mutt はシェルの引用ルールに沿って、Mutt は自動的に、%s に 置き換えられた文字列を引用符で囲みます。文字列中に%s がない場合は、 Mutt は文字列の最後にユーザの問合せを追加します。詳細な情報については query を参照してください。

3.259. query_format

Type: string
Default: %4c %t %-25.25a %-25.25n %?e?(%e)?

この変数はquery メニューのフォーマットを記述します。以下は 使用できるprintf(3) 風の書式です:

%a 宛先アドレス
%c 現在のエントリ番号
%e 拡張情報 *
%n 宛先名
%t 現在のエントリがタグづけられている場合は * で空白はそれ以外
%>X 残りの文字列を右揃えし X で埋める
%|X 行の最後まで X で埋める
%*X 埋め草として 文字 X を使って soft-fill

soft-fill についての説明は、$index_format の説明を参照してください。

* = は、非ゼロの場合にオプションで表示されます。$status_format の説明を参照してください。

3.260. quit

Type: quadoption
Default: yes

この変数は quitexit が実際に Mutt を終了させるかどうかを制御します。 終了させようとしたとき、このオプションがset ならば終了し、unset ならば無効となり、ask-yesask-no ならば確認のために問合せを してきます。

3.261. quote_regexp

Type: regular expression
Default: ^([ \t]*[|>:}#])+

内部ページャで、メッセージ本文の引用部分を見極めるために使う正規表現です。 引用されたテキストは、<toggle-quoted> コマンドを使って除外するか、 color quotedファミリのディレクティブに従って色を付けることが出来ます。

高位のレベルの引用は異なって着色されることがあります (color quoted1,color quoted2 など)。引用レベルは、一致したテキストから 最後の文字を取り去り、一致しなくなるまで再帰的に正規表現を適用する ることで決まります。

一致の検出は $smileys 正規表現によって上書きできます。

3.262. read_inc

Type: number
Default: 10

0 より大きな値に設定されていると、メールボックス読み出し中か、検索と制限の ような検索動作を実行するときに、 Mutt が現在どのメッセージまで来たのかを 表示するようになります。メッセージは、このたくさんのメッセージが読み出されたり 検索された後で表示されます(たとえば 25 に設定すると、Mutt は 25 番目のメッセージを 読んだときに表示し、さらにまた 50 番目のときにも表示します)。 この変数は、少々時間のかかる、大きなメールボックスを読み出したり検索したりするときに、 進行条項を表示するということを意味します。0 に設定すると、メールボックスを 読み出す前に、1度メッセージが表示されるだけになります。

write_inc, $net_inc and $time_inc 変数と、パフォーマンスの考察についての tuning セクションのマニュアルも参照してください。

3.263. read_only

Type: boolean
Default: no

set の場合、すべてのフォルダはリードオンリモードでオープンされます。

3.264. realname

Type: string
Default: (empty)

この変数は、メッセージを送信するときに使う real 又は personal 名を 指定します。

既定では、これは、 /etc/passwd の GECOS フィールドです。この変数は $from variable 中で本名を指定した場合には使われない ことに注意してくださいい。

3.265. recall

Type: quadoption
Default: ask-yes

新規メニューを編集するときに延期メッセージから続けるかどうかを制御します。

この変数を yes に設定することは一般的には有用ではないので推奨されて いません。<recall-message> 機能は、保留されたメッセージを手動で再度 読み出すときに使われることに注意してください。

postponed 変数も参照してください。

3.266. record

Type: path
Default: ~/sent

これは、送信メッセージをどのファイルに追加して保存すべきかを指定します (これは、メッセージのコピーをセーブする基本的な方法を意味しますが、 ほかにも、自分のメールアドレスの Bcc: フィールドを作成して、 my_hdr コマンドを使ってそこにセーブするという方法もあります)。

$record の値は $force_name$save_nam 変数と、fcc-hook コマンドで上書きできます。$copy$write_bcc も参照してください。

$fcc_delimiter が 文字列デリミタに設定されている場合、複数のメールボックスを 指定できます。

3.267. reflow_space_quotes

Type: boolean
Default: yes

このオプションはページャ中と返信時に($text_flowedunsetの時)、 format=flowed メッセージからの引用がどのように表示されるかを制御します。 設定する場合、このオプションは各レベルの引用マークの後に空白を追加し、 ">>>foo" を "> > > foo" に調整します。

注意: $reflow_textunset の時、このオプションは無効です。 同様に、このオプションは$text_flowedset の時には返信に何ら影響を 与えません。

3.268. reflow_text

Type: boolean
Default: yes

set の場合、Mutt は format=flowed にマークされた text/plain パート中の 段落を再フォーマットします。unset の場合、Mutt は、メッセージ本体中で どのように表示されるかを変更していない段落を表示します。format=flowed フォーマットの詳細については RFC3676 を参照してください。

reflow_wrap$wrap も参照してください。

3.269. reflow_wrap

Type: number
Default: 78

この変数は $reflow_textset の時に text/plain パートを再フォーマットする 時の最大段落幅を制御します。値が 0 の場合、段落は端末の右マージンで折り返されます。 正の値は右マージンからの相対段落幅を設定します。

Also see $wrap.

3.270. reply_regexp

Type: regular expression
Default: ^(re([\[0-9\]+])*|aw):[ \t]*

スレッド化および返信する時に返信メッセージを認識するために使われる正規表現 です。既定値は英語の "Re:" とドイツ語の "Aw:" に対応しています。

3.271. reply_self

Type: boolean
Default: no

unset で、自分自身から送信したメッセージに返信する場合、Mutt は 自分自身ではなく、そのメッセージの受信者に返信したいと仮定します。

alternates コマンドも参照してください。

3.272. reply_to

Type: quadoption
Default: ask-yes

setの場合、メッセージに返信する時、Mutt はメッセージの Reply-to: ヘッダで 挙げられているアドレスを返信先として使います。unset の場合は、 代わりに From: フィールドのアドレスを代わりに使います。このオプションは、 Reply-To: ヘッダフィールドをメーリングリストのアドレスに設定していて、 メッセージの作者に個人的なメッセージを送信しようとする場合に便利です。

3.273. resolve

Type: boolean
Default: yes

set の場合、現在のメッセージを変更するコマンドが実行されたときは 必ず次(おそらく未読)のメッセージに自動的にカーソルを移動します。

3.274. resume_draft_files

Type: boolean
Default: no

set の場合、ドラフトファイル(コマンド行で-H で指定されたもの) は、保留メッセージを復活させた時と同じように処理されます。受信者は 要求されません。send-hooks は評価されません。別名の展開は行われません。 ユーザ定義のヘッダと署名はメッセージに追加されません。

3.275. resume_edited_draft_files

Type: boolean
Default: yes

set の場合、以前に編集したドラフトファイル(コマンド行での -E -H 経由で)は、再度ドラフトファイルとして使われるときに、自動的に $resume_draft_files が設定されます。

最初にドラフトファイルがセーブされる時、Mutt はヘッダ X-Mutt-Resume-Draft を セーブされたファイルに追加します。次回ドラフトファイルを読み込んだときに Mutt がヘッダを見つけると、$resume_draft_files が設定されます。

このオプションは、複数の署名、ユーザ定義のヘッダと他の処理効果がドラフトファイルに 対して複数回実行されることを防ぐために設計されました。

3.276. reverse_alias

Type: boolean
Default: no

この変数は、メッセージの送信者に一致する別名があるときに、別名の personal名を インデックスメニュー中に表示するかどうかを制御します。例えば、以下のような 別名があるとします。

alias juser abd30425@somewhere.net (Joe User)

この場合、以下のヘッダを含むメールを受け取ったとします。

From: abd30425@somewhere.net

この場合、インデックスメニューには abd30425@somewhere.net. の代わりに Joe User が表示されます。これは、個人のメールアドレスが人間向きではない 場合に便利です。

3.277. reverse_name

Type: boolean
Default: no

特定のマシンでメールを受信し、そのメッセージを別のマシンに移動し、そこから いくつかのメッセージを返信するということがたまにあるかもしれません。この変数を set にした場合、返信メッセージの既定の From: 行は、 alternates に一致するアドレスの場合、返信しようとする受信したメッセージの アドレスを使って組み立てます。変数がunset の場合か、alternatesに 一致していなかった場合は、From: 行は現在のマシン上でのアドレスが使われます。

alternates コマンドと $reverse_realname も参照してください。

3.278. reverse_realname

Type: boolean
Default: yes

この変数は $reverse_name 機能の動作を微調整します。

unset の場合、Mutt は一致したアドレスの実名部分を取り除きます。 これは、送信者が実名フィールドに記述したものを使わず、メールアドレスを 使います。

set の場合、Mutt は一致したアドレスをそのまま使います。

それ以外の場合、実名がない場合は $realname の値を後で使って埋めます。

3.279. rfc2047_parameters

Type: boolean
Default: no

この変数が set の場合、Mutt は RFC2047 でエンコードされた MIME パラメータを デコードします。例えば添付をファイルにセーブする場合に、Mutt が以下のような 値を提案してくる場合は、設定したいと思うでしょう。

=?iso-8859-1?Q?file=5F=E4=5F991116=2Ezip?=

この変数を対話的に fIset にしても、フォルダを変更するまでは変更が有効に なりません。

この、RFC2047 エンコードの使用は規格によって明示的に禁止されているのですが、 実際には使われていることに注意してください。

また、このパラメートを設定することは、Mutt がこの種のエンコーディングを 生成する 効果が\fない\fことにも注意してください。かわりに、Mutt は RFC2231 で指定されたエンコーディングを無条件に使います。P

3.280. save_address

Type: boolean
Default: no

set の場合、Mutt はメールをセーブする既定のフォルダを選択するときに、 送信者の完全なアドレスを使います。$save_name$force_nameset の 場合、Fcc フォルダの選択も同様に変更になります。

3.281. save_empty

Type: boolean
Default: yes

unset の場合、何らメールがセーブされていないメールボックスはクローズする 時に削除されます(例外は $spoolfile で決して削除されません)。If setの 場合、メールボックスは決して削除されません。

注意: これは mbox と MMDF フォルダにのみ適用され、Mutt は MH と Maildir ディレクトリは削除しません。

3.282. save_history

Type: number
Default: 0

この変数は、$history_file ファイルにセーブされる、(カテゴリ単位の)履歴の サイズを制御します。

3.283. save_name

Type: boolean
Default: no

この変数は、どのように送信メールのコピーがセーブされるかを制御します。 set の場合、受信者アドレスの存在によって指定されるメールボックスが あるかどうかをチェックします(これは、受信者アドレスの username 部分で $folder ディレクトリ中にメールボックスがあるかを検索することによって 行います)。メールボックスが存在する場合、送信メッセージはそのメールボックスに セーブされます。その他の場合は、メッセージは $record メールボックスに セーブされます。

$force_name 変数も参照してください。

3.284. send_group_reply_to

Type: boolean
Default: no

この変数はどのグループ返信が終わったかを制御します。設定された場合、 "To:" 中のすべての受信者リストは "To:" ヘッダに再度設定され、それ以外は、 既定である "CC" になります。

3.285. score

Type: boolean
Default: yes

この変数が unset の場合、スコアリングは停止します。これは、 $score_threshold_delete 変数と関連したものが使われている場合、特定のフォルダに 対して選択的に無効にできるので便利です。

3.286. score_threshold_delete

Type: number
Default: -1

この変数の値以下のスコアが割り当てられているメッセージは、Mutt によって 自動的に削除マークが付けられます。Mutt のスコアは常時 0 以上なので、 この変数の既定の設定では、決して削除マークが付くことはありません。

3.287. score_threshold_flag

Type: number
Default: 9999

この変数の値以上のスコアが割り当てられているメッセージは自動的に "flagged" が マークされます。

3.288. score_threshold_read

Type: number
Default: -1

この変数の値以下のスコアが割り当てられたメッセージは自動的にMutt によって 既読マークが付けられます。Mutt のスコアは常時 0 以上なので、 この変数の既定の設定では、決して既読マークが付くことはありません。

3.289. search_context

Type: number
Default: 0

ページャにおいて、この変数は検索結果の前に表示する行数を指定します。 既定では、検索結果は上寄せになります。

3.290. send_charset

Type: string
Default: us-ascii:iso-8859-1:utf-8

送信メッセージに対する、コロンで分離された文字セットのリストです。Mutt は テキストを正確に変換できた最初の文字セットを使います。$charsetiso-8859-1 でなく、受信者が UTF-8 を理解出来ない場合は、iso-8859-1の かわり、あるいはその後に、適切で広く使われている標準的な文字セット (たとえばiso-8859-2, koi8-r 又は iso-2022-jp)をリスト中に含めることを 推奨します。

それらのどれかに正確に変換できない場合、Mutt は $charset を使うように フォールバックします。

3.291. send_multipart_alternative

Type: quadoption
Default: no

set の場合、Mutt はmultipart/alternative コンテナと $send_multipart_alternative_filter で指定されたフィルタスクリプトを使う alternative パートを生成します。 MIME Multipart/Alternative (alternative-order) を参照してください。

multipart/alternative を有効にすることは、インラインの PGP 暗号化とは互換がない ことに注意してください。Mutt はこの場合、PGP/MIME を使うように問合せしてきます。

3.292. send_multipart_alternative_filter

Type: path
Default: (empty)

これは、メールの(編集された)メインメッセージを lternative フォーマットに 変換するスクリプトを指定します。メッセージはフィルタの標準入力にパイプされます。 フィルタで展開された出力は生成された mime タイプ、たとえば text/html で、 空白行とその後に変換された内容が続きます。 MIME Multipart/Alternative (alternative-order) を参照してください。

3.293. sendmail

Type: path
Default: /usr/sbin/sendmail -oem -oi

Mutt によってメール配信を行うのに使うプログラムと引数を指定します。 Mutt は指定されたプログラムが、追加の引数を受信者のアドレスとして解釈することを 期待しています。Mutt はデリミタ -- (前に存在していなければ)の 後にすべての受信者を追加します。たとえば、$use_8bitmime, $use_envelope_from, dsn_notify, 又は $dsn_return のような追加のフラグはデリミタの前に付加されます。

$write_bcc参照してください

3.294. sendmail_wait

Type: number
Default: 0

$sendmail プロセスが完了するのを諦め、バックグラウンドで配送する 前までの秒数を指定します。

Mutt はこの変数の値を以下のように解釈します。

>0 継続する前に、sendmail が完了するのを待つ秒数
0 sendmail の完了を無限に待つ
<0 待たないで、sendmail をバックグラウンドで常時実行する

0 より大きな値を指定した場合、子プロセスの出力はテンポラリファイルに 出されることに注意してください。もしもなんらかのエラーがあった場合は、 その出力がどこにあるかを通知されることになります。

3.295. shell

Type: path
Default: (empty)

サブシェルを起動するときに使うコマンド。既定では、/etc/passwd で 使われているログインシェルとなります。

3.296. sidebar_delim_chars

Type: string
Default: /.

これにはサイドバー中でパスを表示するためのフォルダセパレータとして 扱う文字の一覧が含まれています。

ローカルメールはしばしば `dir1/dir2/mailbox' というディレクトリに配置されます。

set sidebar_delim_chars='/'

IMAP メールボックスはしばしば `folder1.folder2.mailbox' という名前になります。

set sidebar_delim_chars='.'

$sidebar_short_path, $sidebar_folder_indent, $sidebar_indent_string参照してください

3.297. sidebar_divider_char

Type: string
Default: |

これは (表示される場合)サイドバーと他の Mutt のパネルとの間に表示される 文字を指定します。ASCII と Unicode の行描画文字がサポートされています。

3.298. sidebar_folder_indent

Type: boolean
Default: no

サイドバー中でメールボックスを段付けする場合はこれを設定します。

$sidebar_short_path, $sidebar_folder_indent, $sidebar_indent_string参照してください

3.299. sidebar_format

Type: string
Default: %B%*  %n

この変数でサイドバーの表示をカスタマイズすることが出来るようになります。 この文字列は $index_format と似ていますが、printf(3) 風の固有の書式を 持っています。

%B メールボックスの名前
%S * メールボックスのサイズ(メッセージ総数)
%N * メールボックス中の未読メッセージ数
%n N 新規メールがある場合、その他の場合は空白
%F * メールボックス中のフラグ付きメッセージ数
%! ! : 1つフラグがあるメッセージ; !! : 2つフラグがあるメッセージ; n! : n 2つ以上フラグがあるメッセージ (n > 2)。 その他は表示なし。
%d * @ 削除メッセージ数
%L * @ 制限後のメッセージ数
%t * @ タグ付きメッセージ数
%>X 残りの文字列を右寄せし、X で埋める
%|X 行端まで X で埋める
%*X 埋め草として 文字 X を使って soft-fill

* = 非ゼロの場合オプションで表示 @ = 現在のフォルダのみに適用されます

%S, %N, %F, と %! を使うために、$mail_check_statsset としなければなりません。これを設定した場合、このオプションに対する 推奨値は "%B%?F? [%F]?%* %?N?%N/?%S" となります。

3.300. sidebar_indent_string

Type: string
Default:   

サイドバー中でメールボックスを段付けするために使われる文字列を指定します。 既定値は2つの空白です。

$sidebar_short_path, $sidebar_folder_indent, $sidebar_indent_string参照してください

3.301. sidebar_new_mail_only

Type: boolean
Default: no

設定した場合、サイドバーはメールボックスに新規メール、フラグ付きのメールがある場合 にのみ表示されます。

sidebar_whitelist参照してください

3.302. sidebar_next_new_wrap

Type: boolean
Default: no

設定した場合、 <sidebar-next-new> コマンドは停止せず、メールボックス一覧の 最後まで行きますが、最初にまで戻ります。<sidebar-prev-new> コマンドは 同様に影響を受けますが、リストの最後に戻ります。

3.303. sidebar_relative_shortpath_indent

Type: boolean
Default: no

設定した場合、このオプションは $sidebar_short_path$sidebar_folder_indent がどのように短縮および断付けを実行するかを変更します。 両者は以前のサイドバーエントリを見て、もっとも最新の親からの相対で、 短縮/段づけをします。

以下は $sidebar_short_path=yes,$sidebar_folder_indent=yes と $sidebar_indent_string="→" を使って、この順で並んでいるメールボックスの、 オプションの設定/解除の例です。

mailbox set unset
=a.b =a.b →b
=a.b.c.d →c.d →→→d
=a.b.e →e →→e

2行目はもっともわかりやすい例です。このオプションを設定すると、 =a.b.c.d=a.b から相対的に短くなり、c.d となります。 また、=a.b から相対的に1段段付けされています。このオプションを設定しないと、 =a.b.c.d は常時メールボックスの最後の部分 d に短縮され、 $folder ('=' で表される)を鑑みて3段段付けされます。

設定すると、3行目も最初の行からの相対で段付けされ短縮されます。

3.304. sidebar_short_path

Type: boolean
Default: no

既定で、サイドバーには、$folder 変数からの相対で、メールボックスのパスを表示 します。 sidebar_shortpath=yes を設定すると、以前の名前から比べて 名前が短縮されます。以下が例です。

shortpath=no shortpath=yes shortpath=yes, folderindent=yes, indentstr=".."
fruit fruit fruit
fruit.apple apple ..apple
fruit.banana banana ..banana
fruit.cherry cherry ..cherry

$sidebar_delim_chars, $sidebar_folder_indent, $sidebar_indent_string参照してください

3.305. sidebar_sort_method

Type: sort order
Default: order

どのようにファイルブラウザ中でエントリを整列するかを指定します。既定では エントリは英語順に整列されます。正しい値は以下のようになります。

  • alpha (英語順)

  • count (全部のメッセージ数順)

  • flagged (フラグされたメッセージ数順)

  • name (英語順)

  • new (未読メッセージ数順)

  • path (英語順)

  • unread (未読メッセージ数順)

  • unsorted

オプションで、逆順での整列を指定するために、reverse- 接頭辞を使う事も できます(例: set sort_browser=reverse-date)。

3.306. sidebar_use_mailbox_shortcuts

Type: boolean
Default: no

設定した場合、サイドバーメールボックスは、メールボックスショートカット接頭辞 "=" 又は "~" をつけて表示されます。

設定しない場合、サイドバーは $folder 接頭辞に一致したものを削除しますが、 それ以外は、メールボックスショートカットを使いません。

3.307. sidebar_visible

Type: boolean
Default: no

これは、サイドバーを表示するか否かを指定します。サイドバーはすべてのメールボックスを 表示します。

$sidebar_format, $sidebar_width参照してください

3.308. sidebar_width

Type: number
Default: 30

これはサイドバーの幅を制御します。画面の列で計測されます。たとえば、 sidebar_width=20 は 20 文字のASCII 文字か、10文字の中国文字を表示できます。

3.309. sig_dashes

Type: boolean
Default: yes

set の場合、-- を含む行(その後に空白があることに注意)が $signature の前に挿入されます。署名が名前のみを含んでいる場合を除き、 この変数をunset しないことを強く 推奨します。その理由は、 署名を検出するために、多くのソフトウェアパッケージが -- \n を使うという ことだからです。たとえば、Mutt は内蔵ページャで異なった色で署名をハイライト する機能があります。

3.310. sig_on_top

Type: boolean
Default: no

set の場合、署名は引用や転送テキストの前に付けられます。これが何をするかを 完全に分かっている場合と、ネチケットの番人からの怒りを買う準備が出来ている場合を除き、 この変数を設定しないことを強く 推奨します。

3.311. signature

Type: path
Default: ~/.signature

すべての送信メッセージに追加される署名のファイル名を指定します。ファイル名の 末尾がパイプ (|) で終わっている場合、ファイル名はシェルコマンドで、 入力は標準出力から読み出されるものと仮定されます。

3.312. simple_search

Type: string
Default: ~f %s | ~s %s

どのように Mutt が単純な検索を実際の検索パターンに展開するかを指定します。 単純な検索とは ~ パターン演算子を1つも含まないもののことです。 検索パターンについての詳細な情報は patterns を参照してください。

たとえば、単に検索または制限プロンプトに対して joe を入力したとします。 Mutt は提供された文字列で %s を、この変数で指定された値に自動的に展開します。 既定値では joe~f joe | ~s joe に展開されます。

3.313. size_show_bytes

Type: boolean
Default: no

set の場合、メッセージサイズは1 キロバイトより小さい場合、バイトで 表示されます。formatstrings-size を参照してください。

3.314. size_show_fractions

Type: boolean
Default: yes

set の場合、メッセージサイズは 0 から 10キロバイトと 1から 10 メガ バイトの時は1桁の10進数で表示されます。formatstrings-size を参照してください。

3.315. size_show_mb

Type: boolean
Default: yes

set の場合、メッセージサイズが1メガバイトより大きい場合、メガバイトで 表示されます。formatstrings-size を参照してください。

3.316. size_units_on_left

Type: boolean
Default: no

set の場合、メッセージサイズの単位は数字の左側に表示されます。 formatstrings-size を参照してください。

3.317. sleep_time

Type: number
Default: 1

フォルダからフォルダへ移動し、現在のフォルダからメッセージを消した後、 特定の通知メッセージを表示する間停止する時間を秒数で指定します。 既定では、1秒間だけ止まり、このオプションの値を 0 にすると、この待ち時間を 無くします。

3.318. smart_wrap

Type: boolean
Default: yes

内部ページャで、画面幅よりも長い行を表示する方法を制御します。set の場合、 長い行は単語の区切りで折り返されます。 unset の場合、長い行は 単純に画面の幅で折り返されます。$markers 変数も参照してください。

3.319. smileys

Type: regular expression
Default: (>From )|(:[-^]?[][)(><}{|/DP])

ページャ は、この変数を使って、$quote_regexp のよくある一般的な 誤検知、特にスマイリー(訳注:顔文字)、$smileys にも一致する場合は、引用された 行を考慮せず拾います。これは主に行の先頭で発生します。

3.320. pgp_mime_signature_filename

Type: string
Default: signature.asc

このオプションは、PGP/MIME で署名されたメッセージ中の署名部分に使われるファイル名を 設定します。

3.321. pgp_mime_signature_description

Type: string
Default: Digital signature

このオプションは、PGP/MIME で署名されたメッセージ中の署名部分に使われる Content-Description を指定します。

3.322. smime_ask_cert_label

Type: boolean
Default: yes

このフラグは、データベースに追加しようとしている証明書のラベルを入力するか どうかについて問合せをするか否かを制御します。既定では set です。 (S/MIME のみです)

3.323. smime_ca_location

Type: path
Default: (empty)

この変数は、OpenSSL で使う信頼された証明書があるディレクトリかファイルの 名前が含まれています。 (S/MIME のみです)

3.324. smime_certificates

Type: path
Default: (empty)

S/MIME には PGP でのような pubring/secring がないので、Mutt は自分自身で 鍵や証明書の格納および取得を行わなければなりません。この仕組みは現在とても 基本的なもので、鍵と証明書を二つの異なる ディレクトリに格納し、ともに OpenSSL で 取得したハッシュ値をファイル名にしています。各ディレクトリには index ファイルがあって、 メールアドレスと鍵 ID の組み合わせが入っていて、手動で編集することができます。 このオプションは証明書の位置を示すものです。 (S/MIME のみです)

3.325. smime_decrypt_command

Type: string
Default: (empty)

このフォーマット文字列は application/x-pkcs7-mime 添付を復号化するのに 使うコマンドを指定します。

OpenSSL コマンド形式には、PGP に似た、printf(3) 風の固有な書式があります。

%f メッセージが入っているファイルの名前に展開します。
%s multipart/signed 添付を検証するときに
%k $smime_default_key で指定される鍵ペア
%c 1つ以上の証明書 ID。
%a 暗号化に使うアルゴリズム。
%d $smime_sign_digest_alg で指定されたメッセージダイジェストアルゴリズム。
%C CA の位置: smime_ca_location が ディレクトリかファイルを指定するのに -CAfile $smime_ca_location に展開されます。

上記の形式をどのように設定するかの例は、システムの文書のそばにインストールされて いる samples/ サブディレクトリ中の smime.rc を参照してください。 (S/MIME のみです)

3.326. smime_decrypt_use_default_key

Type: boolean
Default: yes

set の場合(既定値)、これは、Muttが暗号化時に既定のキーを使うようにさせます。 その他の場合は、複数の、証明書-鍵ペア を管理する場合、Mutt は使用する鍵を決めるために、 メールボックス-アドレスを使おうとします。見つからない場合は、鍵を指定するために 問合せをしてきます。 (S/MIME のみです)

3.327. smime_default_key

Type: string
Default: (empty)

これは、S/MIME 操作時に使う既定の鍵ペアで、正しく動くためには keyid (OpenSSL が生成する ハッシュ値)を設定しなければなりません。

これは暗号化時に使われます($postpone_encrypt$smime_self_encrypt を 参照してください)。

これは、$smime_decrypt_use_default_keyunset でない限り、 復号化に使われます。

また、$smime_sign_as が設定されていない限り、署名にも使われます。

(現在は非推奨ですが) smime_self_encrypt_as がこの変数の別名ですが、 もはや使われていません。 (S/MIME のみです)

3.328. smime_encrypt_command

Type: string
Default: (empty)

このコマンドは、暗号化された S/MIME メッセージを作成するのに使われます。

これはフォーマット文字列で、使用可能なprintf(3) 風の書式については $smime_decrypt_command コマンドを参照してください。 (S/MIME のみです)

3.329. smime_encrypt_with

Type: string
Default: aes256

これは、暗号化に使うアルゴリズムを設定します。有効な選択肢は aes128, aes192, aes256, des, des3, rc2-40, rc2-64,rc2-128 です。 (S/MIME のみです)

3.330. smime_get_cert_command

Type: string
Default: (empty)

このコマンドは、PKCS7 構造から X509 証明書を抽出するのに使います。

これはフォーマット文字列で、printf(3) 風の書式については、$smime_decrypt_command コマンドを参照してください。 (S/MIME のみです)

3.331. smime_get_cert_email_command

Type: string
Default: (empty)

このコマンドは、X509 証明書を格納するのに使われるメールアドレスを抽出するのと、 検証のため(証明書が送信者のメールボックス用に発行されいるか否かをチェックするため) に使います。

これはフォーマット文字列で、printf(3) 風の書式については、$smime_decrypt_command コマンドを参照してください。 (S/MIME のみです)

3.332. smime_get_signer_cert_command

Type: string
Default: (empty)

このコマンドは、S/MIME 署名から 署名者の X509 証明書のみを抽出するのに使うので、 証明書の所有者は、メールの From: フィールドと比較することが出来ます。

これはフォーマット文字列で、printf(3) 風の書式については、$smime_decrypt_command コマンドを参照してください。 (S/MIME のみです)

3.333. smime_import_cert_command

Type: string
Default: (empty)

このコマンドは、smime_keys から証明書をインポートするのに使います。

これはフォーマット文字列で、printf(3) 風の書式については、$smime_decrypt_command コマンドを参照してください。 (S/MIME のみです)

3.334. smime_is_default

Type: boolean
Default: no

Mutt の既定の動作は、すべての自動署名/暗号化操作に PGP を使います。これの代わりに OpenSSL を使って上書きするには、これを set しなければなりません。 しかし、これは返信時には無効なので、Mutt は自動的に、オリジナルのメッセージの 署名/暗号化に使われる同じアプリケーションを選択します(この変数は $crypt_autosmime を設定しないことにより上書きできます)。 (S/MIME のみです)

3.335. smime_keys

Type: path
Default: (empty)

S/MIME には PGP における pubring/secring がないため、Mutt は鍵や証明書の格納 および取得を自分で扱わなければなりません。この仕組みはとても 基本的なもので、鍵と証明書を二つの異なる ディレクトリに格納し、ともに OpenSSL で 取得したハッシュ値をファイル名にしています。各ディレクトリには index ファイルがあって、 メールアドレスと鍵 ID の組み合わせが入っていて、手動で編集することができます。 このオプションは秘密鍵の位置を示すものです。 (S/MIME のみです)

3.336. smime_pk7out_command

Type: string
Default: (empty)

このコマンドは、 X509 公開鍵を展開するために、S/MIME署名の PKCS7 構造を 展開するのに使います。

これはフォーマット文字列で、printf(3) 風の書式については、$smime_decrypt_command コマンドを参照してください。 (S/MIME のみです)

3.337. smime_self_encrypt

Type: boolean
Default: yes

set の場合、S/MIME で暗号化されたメッセージは $smime_default_key 中の証明書を使って暗号化することも出来ます。 (S/MIME のみです)

3.338. smime_sign_as

Type: string
Default: (empty)

署名のために使う、分離されたキーがある場合、これを署名キーとして設定する 必要があります。ほとんどの場合は、$smime_default_key を設定するだけで済みます。 (S/MIME のみです)

3.339. smime_sign_command

Type: string
Default: (empty)

このコマンドは、すべてのメールクライアントで読むことが出来る、multipart/signed タイプの S/MIME 署名を作成するのに使われます。

これはフォーマット文字列で、printf(3) 風の書式については、$smime_decrypt_command コマンドを参照してください。注意: %c と %k は、設定されている場合、 既定で $smime_sign_as となり、その他の場合は、$smime_default_key となる ことに注意してください。 (S/MIME のみです)

3.340. smime_sign_digest_alg

Type: string
Default: sha256

これは、メッセージダイジェストに署名するために使われるアルゴリズムを設定します。 有効なものは、md5, sha1, sha224, sha256, sha384, sha512 です。 (S/MIME のみです)

3.341. smime_sign_opaque_command

Type: string
Default: (empty)

このコマンドは、S/MIME 拡張をサポートするメールクライアントでのみ扱えることができる application/x-pkcs7-signature タイプの S/MIME 署名を作成するのに使います。

これはフォーマット文字列で、printf(3) 風の書式については、$smime_decrypt_command コマンドを参照してください。 (S/MIME のみです)

3.342. smime_timeout

Type: number (long)
Default: 300

キャッシュされたパスフレーズが使用されない場合、満了するまでの秒数を指定します。 (S/MIME のみです)

3.343. smime_verify_command

Type: string
Default: (empty)

このコマンドは、multipart/signedタイプの S/MIME 署名を検証するのに使います。

これはフォーマット文字列で、printf(3) 風の書式については、$smime_decrypt_command コマンドを参照してください。 (S/MIME のみです)

3.344. smime_verify_opaque_command

Type: string
Default: (empty)

このコマンドは application/x-pkcs7-mime タイプの S/MIME 署名を検証するのに 使います。

これはフォーマット文字列で、printf(3) 風の書式については、$smime_decrypt_command コマンドを参照してください。 (S/MIME のみです)

3.345. smtp_authenticators

Type: string
Default: (empty)

これは、Mutt が SMTP サーバに ログインするのに使う、コロンで分離された 認証方法の一覧で、この順で Mutt が試みます。認証方法は任意の SASL メカニズム、 たとえば、digest-md5, gssapi 又は cram-md5 です。このオプションは 大文字小文字を区別しないので、unset の場合は(既定値)、Mutt は すべての有効な方式をもっともセキュアなものからそうでないものの順で試します。

例:

set smtp_authenticators="digest-md5:cram-md5"

3.346. smtp_oauth_refresh_command

Type: string
Default: (empty)

SMTP サーバへの接続を認証するための、 OAUTH リフレッシュトークンを生成する コマンドです。このコマンドは、各接続時に、OAUTHBEARER 認証メカニズムを使って 実行されます。詳細は oauth を参照してください。

3.347. smtp_pass

Type: string
Default: (empty)

SMTP アカウントのパスワードを指定します。unset の場合、Mutt は SMTP 経由で Mutt が差書にメールを送信する時にパスワードを聞いてきます。 Mutt が SMTP 経由でメールを送るための設定方法は $smtp_url も参照してください。

注意: かなり安全なマシン上で使う時のみこのオプションを使ってください。 なぜなら、スーパーユーザは、このファイルを自分自身のみが読めるようにしていても、 muttrc を読み取ることが出来るからです。

3.348. smtp_url

Type: string
Default: (empty)

配送のために送信されたメッセージが中継される SMTP スマートホストを定義 します。これは SMTP URL 形式をとります。例えば以下のようになります。

smtp[s]://[user[:pass]@]host[:port]

ここで、[...] はオプションパートに依存します。 この変数を設定すると、$sendmail 変数の値を上書きします。

$write_bcc も参照してください。

3.349. sort

Type: sort order
Default: date

どのように、index メニュー中でメッセージを整列するかを指定します。 有効な値は以下の通りです。

  • date 又は date-sent

  • date-received

  • from

  • mailbox-order (未整列)

  • score

  • size

  • spam

  • subject

  • threads

  • to

逆順整列のために、接頭辞 reverse- を使う事も出来ます (例: set sort=reverse-date-sent)。

3.350. sort_alias

Type: sort order
Default: alias

どのように alias メニューのエントリを整列するかを指定します。 使用できる値は以下の通りです。

  • address (メールアドレスの英語順で整列)

  • alias (別名の英語順で整列)

  • unsorted (.muttrc で指定された順そのまま)

3.351. sort_aux

Type: sort order
Default: date

これは、$sort の値が2つのメッセージに対して同じだった場合に、index メニュー中で使われる、2番目のメッセージ整列方法を提供します。

スレッドで整列しているとき、この変数は、他のスレッドとの関係でスレッドを整列する 方法と、どのようにスレッドツリーのブランチを整列するかを制御します。 これは、threads (この場合、Mutt は date-sent のみを使用します) 以外の、 $sort で使える任意の値を設定できます。また、reverse- に追加して last- 接頭辞を指定することも出来ますが、last- 接頭辞は reverse- の後に置かなければ なりません。last- 接頭辞は、最後の子孫を持つ兄弟に対して、残りの $sort_aux を 順番として使用し、メッセージを整列します。 たとえば、

set sort_aux=last-date-received

は、新規メッセージがスレッド中にある場合、そのスレッドは最後に表示される ものになります(又は、set sort=reverse-threads を設定している場合は 最初のスレッド)。

注意: 逆順スレッドの $sort 順では、$sort_aux は再度逆順になります (これは正しくはないのですが、既存の設定を壊さないようにしています)。

3.352. sort_browser

Type: sort order
Default: alpha

Specifies how to sort entries in the file browser. By default, the entries are sorted alphabetically. Valid values: ファイルブラウザ中でどのようにエントリを整列させるかを指定します。既定では エントリは英語順に整列されます。有効な値は以下の通りです。

  • alpha (英語順)

  • count

  • date

  • size

  • unread

  • unsorted

逆順で整列したい場合には、reverse- 接頭辞を使う事が出来ます (例 set sort_browser=reverse-date)。

3.353. sort_re

Type: boolean
Default: yes

この変数は、$strict_threadsunset 時にスレッドによる整列の時にのみ 便利です。この場合、Mutt が使う発見的手法が、題名でスレッドにするように変更になります。 $sort_reset の時は、Mutt は、子メッセージの題名が、$reply_regexpの 設定と一致する部分文字列で始まっていた場合にのみ、題名で、他のメッセージの子供として メッセージを接続します。$sort_reunset の場合、Mutt は、$reply_regexp 部分以外の、両方のメッセージが同じである限り、この場合の時もそうでないときも、 メッセージを接続します。

3.354. spam_separator

Type: string
Default: ,

この変数は、複数のスパムヘッダが一致した場合に、何をするかを制御します。 unset の場合、この変数の値をセパレータとして、各連続した一致は、 spam ラベルの以前の一致した値を上書きします。

3.355. spoolfile

Type: path
Default: (empty)

スプールメールボックスが、Mutt が見つけられない既定値の場所にない場合、 その位置をこの変数で指定します。Mutt は、どちらかが使われている場合、 環境変数 $MAIL 又は $MAILDIR の値を起動時にこの変数に 設定します。

3.356. ssl_ca_certificates_file

Type: path
Default: (empty)

この変数は信頼された CA 証明書を含むファイルを指定します。 そのCA 証明書の1つで署名された任意のサーバも自動的に許可されます。(GnuTLS のみです)

例:

set ssl_ca_certificates_file=/etc/ssl/certs/ca-certificates.crt

3.357. ssl_client_cert

Type: path
Default: (empty)

key. クライアントとそれに関連づけられている秘密鍵が入っているファイル。

3.358. ssl_force_tls

Type: boolean
Default: no

この変数が、 set だった場合、Mutt は、リモートサーバに対するすべての接続 を暗号化することを必要とします。さらに、サーバが、ケーパビリティを広告して いなくても、TLS でネゴシエートしようとし、それ以外は接続を中止します。 このオプションは $ssl_starttls に優先します。

3.359. ssl_min_dh_prime_bits

Type: number
Default: 0

この変数は、Diffie-Hellman カギ交換で使われる、(ビット単位の)最小の許容 素数サイズを指定します。値が 0 の倍は、GNUTLS ライブラリからの既定値を 使います。(GnuTLS のみです)

3.360. ssl_starttls

Type: quadoption
Default: yes

set (既定値)の場合、Mutt は、サーバ上でケーパビリティを広告している STARTTLS を使おうとします。 unset の場合、Mutt はサーバの ケーパビリティにかかわらず STARTTLS を使おうとしません。

3.361. ssl_use_sslv2

Type: boolean
Default: no

set の場合、Mutt は、それを要求されたときに、サーバとの通信に SSLv2 を使おうとします。 注意: 2011年の時点で、SSLv2 は安全でないと見なされ、使用すべきではありません。 https://tools.ietf.org/html/rfc6176 を参照してください。 (OpenSSL のみです)

3.362. ssl_use_sslv3

Type: boolean
Default: no

set の場合、Mutt は、それを要求されたときに、サーバとの通信に SSLv3 を使おうとします。 注意: 2015年の時点で、SSLv3 は安全でないと見なされ、使用すべきではありません。 https://tools.ietf.org/html/rfc7525 を参照してください。

3.363. ssl_use_tlsv1

Type: boolean
Default: no

set の場合、Mutt は、それを要求されたときに、サーバとの通信に TLSv1.0 を使おうとします。 注意: 2015年の時点で、TLSv1.0 は安全でないと見なされ、使用すべきではありません。 https://tools.ietf.org/html/rfc7525 を参照してください。

3.364. ssl_use_tlsv1_1

Type: boolean
Default: no

set の場合、Mutt は、それを要求されたときに、サーバとの通信に TLSv1.1 を使おうとします。 注意: 2015年の時点で、TLSv1.1 は安全でないと見なされ、使用すべきではありません。 https://tools.ietf.org/html/rfc7525 を参照してください。

3.365. ssl_use_tlsv1_2

Type: boolean
Default: yes

set の場合、Mutt は、それを要求されたときに、サーバとの通信に TLSv1.2 を使おうとします。

3.366. ssl_use_tlsv1_3

Type: boolean
Default: yes

set の場合、Mutt は、それを要求されたときに、サーバとの通信に TLSv1.3 を使おうとします。

3.367. ssl_usesystemcerts

Type: boolean
Default: yes

yes に設定した場合、Mutt は、サーバ証明書が信頼されたCA によって署名 されているかをチェックするとき、システム全体の証明書ストア中にある CA 証明書を使います。(OpenSSLのみ)

3.368. ssl_verify_dates

Type: boolean
Default: yes

set の場合(既定値)、Mutt は、まだ有効になっていないか、すでに満了に なっているサーバ証明書を自動的に受け入れません。<account-hook> 機能を 使って、特定の既知のホストに対して、のみこれを設定解除する必要があります。

3.369. ssl_verify_host

Type: boolean
Default: yes

set の場合(既定値)、Mutt は、ホスト名がフォルダURL で使われている ホストと一致しないサーバ証明書を自動的に受け入れません。<account-hook> 機能を 使って、特定の既知のホストに対して、のみこれを設定解除する必要があります。

3.370. ssl_verify_partial_chains

Type: boolean
Default: no

このオプションは、これが何をするかを理解していない限り、既定値から変更すべき ではありません。

この変数を yes にすると、部分的な認証チェーンの検証を出来るようにします。 すなわち、ルートでないが中間証明書CA 又はホスト証明書が信頼済みとして マークされ($certificate_file中で)、ルート署名CA をマークすることなしの認証チェーン です。

(OpenSSL 1.0.2b あるいはそれ以降のみ)。

3.371. ssl_ciphers

Type: string
Default: (empty)

コロンで分離された、SSL で使う、暗号の一覧を含みます。 OpenSSL では、文字列の文法については、ciphers(1) を参照してください。

GnuTLS では、このオプションは、優先文字列の最初にある "NORMAL" の代わりに 使われます。詳細および文法については、gnutls_priority_init(3) を参照して 下さい(注意: GnuTLS バージョン 2.1.7 あるいはそれ以降が必要です)。

3.372. status_chars

Type: string
Default: -*%A

$status_format 中での%r インジケータによって使われる文字を制御します。 最初の文字は、メールボックスが変更されていないときに使われます。2番目は、 メールボックスが変更され、再同期が必要なときに使われます。3番目は、メールボックスが リードオンリモードか、そのメールボックスを抜けるときに書き込めない場合に使われます (既定で % に割り当てられている <toggle-write> 操作によってメールボックスの 書き込み状態をON/OFFできます)。4番目は現在のフォルダが添付メッセージモード でオープンされているかを表示するのに使われます(新規メールの編集、返信、転送 などのような特定の操作はこのモードでは許可されません)。

3.373. status_format

Type: string
Default: -%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?%?B? Back:%B?%?l? %l?]---(%s/%S)-%>-(%P)---

index メニューで表示されるステータス行のフォーマットを制御します。 この文字列は $index_format と似ていますが、printf(3) 風の固有の書式を 持っています。

%b 新着メールのあるメールボックス数 *
%B 裏で編集中のセッション数 *
%d 削除メッセージ数 *
%f 現在のメールボックスのフルパス名
%F フラグが付いているメッセージ数 *
%h ローカルのホスト名
%l 現在のメールボックスの(バイト単位の)大きさ(formatstrings-size を参照) *
%L 表示されているメッセージの(バイト単位の)大きさ (すなわち、現在の制限に一致しているもの)(formatstrings-size を参照) *
%m メールボックス中のメッセージ数 *
%M 表示されているメッセージ数(すなわち、現在の制限に一致しているもの) *
%n メールボックス中の新規メール数 *
%o 古い未読メッセージ数 *
%p 延期メッセージ数 *
%P インデックス中における現在位置のパーセンテージ
%r modified/read-only/won't-write/attach-message インジケータを $status_chars に基づいて表示
%R 読んだメッセージ数 *
%s 現在の整列モード ($sort)
%S 現在の補助整列モード ($sort_aux)
%t タグ付きメッセージ数 *
%u 未読メッセージ数 *
%v Mutt バージョン文字列
%V もしもあれば現在有効な制限パターン *
%>X 残りの文字列を右寄せし、X で埋める
%|X 行端まで X で埋める
%*X 埋め草として X を使って soft-fill

soft-fill の説明については、$index_format のドキュメントを参照してください。

* = 非0 の場合にオプションで表示されます

上記の書式の一部は値が非0 の時にオプションで表示される文字列として使われます。 例えば、そのようなメッセージがある場合に、フラグ付きのメッセージ数のみを 表示したい場合、0 は特に意味がありません。上記の書式のどれかをベースにした 文字列をオプションで表示するために、以下の構造が使われます。

%?<sequence_char>?<optional_string>?

ここで、sequence_char は上記のテーブルからの文字で、optional_stringsequence_char が非0 の場合に表示したい文字列です。 optional_string は 通常のテキストと同じように他の書式を含むことができますが、オプション 文字列をネストすることは出来ません

以下は、どのようにメールボックス中で新規メッセージをオプションで表示するかを 示したものです。

%?n?%n new messages.?

以下の書式を使う事で、2つの文字列間で切替をすることも出来ます。

%?<sequence_char>?<if_string>&<else_string>?

sequence_char の値が非0の場合、 if_string は展開され、 との場合は、else_string が展開されます。

下線 (_) を一連の文字の前に置くことで、任意の printf(3) 風の 書式の結果を強制的に小文字にすることが出来ます。たとえば、小文字で ローカルホスト名を表示したい場合、%_h を使います。

コロン (:)文字を一連の文字の前に前置した場合、Mutt は展開時に下線で 任意のドットを置き換えます。これはフォルダ名でドットを好まない IMAP フォルダ で便利かもしれません。

3.374. status_on_top

Type: boolean
Default: no

この変数を設定すると、最下部のそばに置く代わりに、画面の最初の行に、 status bar を表示するようになります。$helpset の場合、 この場合も最下部に表示されます。

3.375. strict_threads

Type: boolean
Default: no

set の場合、スレッド化は、$sort がメッセージのスレッドの時に、 In-Reply-ToReferences: のみを使用して行います。既定では、 同じ題名のメッセージは、pseudo threads. にいっしょにグループ化されます。 これは、個人のメールボックスで、hi と言うような題名のいくつかの未読 メッセージがいっしょにグループ化されてしまうこともあるため、常時好ましいとは 言えません。この動作を制御する劇的な方法については、$sort_re も 参照してください。

3.376. suspend

Type: boolean
Default: yes

unset の場合、Mutt は通常 ^Z の端末の susp キーを押しても 停止しません。これは、xterm -e mutt のようなコマンドで、Mutt を xterm 内で実行している場合に便利です。

3.377. text_flowed

Type: boolean
Default: no

set の場合、Mutt はコンテキストタイプが text/plain; format=flowedformat=flowed である本文を生成します。このフォーマットはある種の メーリングソフトで扱いやすく、一般的には通常のテキストのように見えます。

オプションは新しく編集されたメッセージのみを制御します。保留メッセージ、 再送メッセージとドラフトメッセージ(コマンド行の -H 経由)は、 ソースメッセージの content-type を使います。

$indent_string はこのオプションが set の時に無視されることに注意してください。

3.378. thorough_search

Type: boolean
Default: yes

セクション patterns の節で記述されている ~b~h 検索操作に 影響します。set の場合、検索されるヘッダとメッセージの本文/添付は検索の 前に復号化されます。unset の場合、メッセージは、フォルダ中にあるままで 検索されます。

添付の検索や非ASCII 文字の場合は、復号化に MIME 操作とデコードと、取り得る 文字セット変換も含むので、この値を set にすべきです。それ以外は、 Mutt は、不正な検索結果になり得る、受け取った生メッセージに対して一致するかを 試みます(たとえば、 quoted-printable でエンコード、又はヘッダもエンコード)。

3.379. thread_received

Type: boolean
Default: no

fIset の時、Mutt は題名でメッセージをスレッド化する場合、送信時刻の代わりに 受信時刻を使います。

3.380. tilde

Type: boolean
Default: no

set の場合、内部ページャは最下部までの空白行をチルダ (~) で埋めます。

3.381. time_inc

Type: number
Default: 0

$read_inc, $write_inc, と $net_inc と共に、この変数は進行状況の更新が表示される 頻度を制御します。$time_inc ミリセカンドより小さい場合、更新を抑制します。 これは、遅いターミナル又はリモートシステムでMutt が 動作している場合にシステムのスループットを改善できます。

パフォーマンスの注意事項についてはマニュアルの tuning 節も参照してください。

3.382. timeout

Type: number
Default: 600

Mutt が メニュー中でアイドル状態か、対話的なプロンプトでユーザの入力を 待っている場合、Mutt は入力があるまでブロックします。コンテキストに依存し、 これは、新着メールのチェックやIMAP 接続の有効を保持するなどの、特定の動作 の実行を阻害します。

この変数は、Mutt が入力待ちを中止して、それらの操作を実行し、入力町を 続けるまで、最大何秒待つかを制御します。

0 またほそれ以下の値では、Mutt はタイムアウトしなくなります。

3.383. tmpdir

Type: path
Default: (empty)

この変数は、Mutt が、メッセージの表示と編集のために必要な一時ファイルを置く 場所を指定します。この変数が設定されていない場合、環境変数 $TMPDIR が 使われます。$TMPDIR が設定されていない場合は、/tmp が 使われます。

3.384. to_chars

Type: string
Default:  +TCFL

自分に来たメールを表示するために使われる文字を制御します。最初の文字は、 メールが自分のアドレスあてで ない 場合に使われます。2番目は、 メッセージの受信者が自分自身のみの場合に使われます。3番目は、自分のアドレスが To: ヘッダにあるが、メッセージの受信者が自分自身以外にもいることを示します。 4番目の文字は、自分のアドレスが Cc: ヘッダにあるが、自分自身以外にも受信者が いることを示します。5番目の文字は、自分自身が送信元のメールであることを示します。 6番目の文字は、購読しているメーリングリストに送ったメールであることを示します。

3.385. trash

Type: path
Default: (empty)

設定されている場合、この変数は削除マークが付けらたメールを完全に削除する代わりに 移動するゴミ箱フォルダのパスを指定します。

注意: ゴミ箱フォルダ中のメッセージを削除した場合、完全な削除となり、 ゴミ箱をからにする方法となります。

3.386. ts_icon_format

Type: string
Default: M%?n?AIL&ail?

$ts_enabled が設定されている限り、アイコンタイトルのフォーマットを 制御します。この文字列は、$status_format で使われているものと、 フォーマットは同じです。

3.387. ts_enabled

Type: boolean
Default: no

Mutt が端末ステータス行とアイコン名を設定するための試みを制御します。 多くのターミナルエミュレータはウィンドウのタイトルでステータス行をエミュレート します。

3.388. ts_status_format

Type: string
Default: Mutt with %?m?%m messages&no messages?%?n? [%n NEW]?

$ts_enabled が設定されているときに、端末ステータス行(又はウィンドウの タイトル)のフォーマットを制御します。この文字列は、$status_format で 使われているものと同じフォーマットです。

3.389. tunnel

Type: string
Default: (empty)

この変数を設定すると、Mutt は raw ソケットの代わりにコマンドへのパイプを開きます。 これを使って、IMAP/POP3/SMTP サーバへの事前認証済み接続を設定することが 出来るようになります。以下が例です。

set tunnel="ssh -q mailhost.net /usr/local/libexec/imapd"

この例を動かすためには、パスワード入力なしで、リモートのマシンにログイン 出来なければなりません。

設定した場合、Mutt はすべてのリモートマシンに対してトンネルを使います。 接続毎に異なったトンネルコマンドを使うかについては、 account-hook の マニュアルを参照してください。

3.390. uncollapse_jump

Type: boolean
Default: no

set の場合、現在のスレッドが、折りたたまれて いない場合、 Mutt は存在していれば、次の未読メッセージにジャンプします。

3.391. uncollapse_new

Type: boolean
Default: yes

set の場合、新規メッセージを受け取ったとき、Mutt は自動的に、折りたたまれた スレッドを展開します。unset の場合、折りたたまれたスレッドは 折りたたまれたままになります。ただし、新規メッセージがあると、インデックスの整列には 影響します。

3.392. use_8bitmime

Type: boolean
Default: no

警告: 使用している sendmail のバージョンが、-B8BITMIME フラグ (たとえば sendmail 8.8.x)をサポートしているものを使っていない限り、 この変数を設定してはいけません。そうしないと、メールが送れなくなって しまいます。

set とすると、 Mutt は、8ビットメッセージを送るときに、ESMTP ネゴシエーションを有効にするため、$sendmail-B8BITMIME 付きで 起動します。

3.393. use_domain

Type: boolean
Default: yes

set の時、Mutt はすべてのローカルアドレス(@host 部分がないもの)を $hostname の価を付けて補完します。unset の場合、アドレスの 補完はしません。

3.394. use_envelope_from

Type: boolean
Default: no

set の時、Mutt はメッセージの envelope sender を設定します。 $envelope_from_addressset の場合、送信者アドレスとしてそれが 使われます。unset の場合、Mutt は From: ヘッダから送信者アドレスを 抽出しようとします。

この情報は、-f コマンド行スイッチを使って sendmail コマンドに渡される ことに注意してください。そのため、このオプションを設定することは、 $sendmail 変数がすでに -f を含んでいるか、$sendmail によって指定される 実行形式が、-f スイッチをサポートしない場合には好ましくありません。

3.395. use_from

Type: boolean
Default: yes

set の場合、Mutt は送信時に From: ヘッダフィールドを生成します。 unset の場合、ユーザが、my_hdr コマンドを使って明示的に設定 しない限り、From: ヘッダフィールドを生成しません。

3.396. use_ipv6

Type: boolean
Default: yes

set の場合、Mutt はホストの 接続のために、IPv6 アドレスを探します。 このオプションが unset の場合、Mutt は IPv4 アドレスに制限します。 通常、既定値で動作します。

3.397. user_agent

Type: boolean
Default: no

set の場合、Mutt は送信メッセージに User-Agent: ヘッダを追加し、 メールの編集にどのバージョンの Mutt を使ったかを表示します。

3.398. visual

Type: path
Default: (empty)

内蔵エディタの ~v コマンドで使われる画面エディタを指定します。

3.399. wait_key

Type: boolean
Default: yes

Mutt が、<shell-escape>,<pipe-message>, <pipe-entry>, <print-message>, と <print-entry> コマンドによって起動される 外部コマンドの後にキーを押すかを問い合わせるかどうかを制御します。

対応する mailcap エントリが needsterminal フラグががあり、外部 プログラムが対話的なものであるとき、auto_view で添付を表示するときにも使われます。

set の場合、Mutt は常時キーを問合せします。unset の時、Mutt は 外部コマンドが非0のステータスを返した場合にのみキーを待ちます。

3.400. weed

Type: boolean
Default: yes

set の時、Mutt はメッセージの表示、転送、印刷または返信時に ヘッダを間引きします。

3.401. wrap

Type: number
Default: 0

正の値に設定すると、Mutt は $wrap 文字でテキストを折り返します。 負の値に設定すると、Mutt は端末の右側の空白による空間に、$wrap 文字が あるようにテキストを折り返します。ゼロに設定すると、Mutt は端末の幅で 折り返します。

$reflow_wrap も参照してください。

3.402. wrap_headers

Type: number
Default: 78

このオプションは、送信するメッセージのヘッダを折り返すために使われる 文字数を指定します。設定できる値は 78 以上 998 以下までです。

注: このオプションは通常変更してはなりません。RFC5233 では 行の長さを 78(既定値)にすることを推奨していますので、 何をするかを分かっている場合にのみこの値を変更してください

3.403. wrap_search

Type: boolean
Default: yes

検索が終端で折り返すかどうかを制御します。

set の場合、検索は最初(又は最後)の項目で折り返します。 unset の場合、検索の続きは折り返しません。

3.404. wrapmargin

Type: number
Default: 0

(非推奨) 負の値の $wrap の設定と同じ。

3.405. write_bcc

Type: boolean
Default: no

送信するメッセージを準備する時に、Bcc: ヘッダを書き込むかを制御します。 Exim と Courier のようないくつかのMTA では Bcc: ヘッダを取り除かないので、 送信メッセージ中にヘッダを入れる必要がない限り、これを設定しないでおく ことを推奨します。

Mutt がSMTP経由で直接配送するように設定した場合($smtp_url を参照)、 このオプションは意味を持ちません。Mutt はこの場合、決して Bcc: ヘッダを書き込みません。

このオプションは、メッセージの送信にのみ影響することに注意してください。 Fcc されたメッセージのコピーは、存在すれば Bcc: ヘッダが常時 含まれます。

3.406. write_inc

Type: number
Default: 10

メールボックスを書き込むとき、メッセージは、処理状態を表示するために、 各 $write_inc メッセージ毎に表示されます。0 に設定された場合、 メールボックスを書き込む前に、1つのメッセージだけ表示されます。

$read_inc, $net_inc$time_inc 変数と、パフォーマンスの考慮に関する マニュアルの、tuning 節も参照してください。

4. 機能(関数)

以下は、それが有効なマッピングで一覧表示された、有効な機能の一覧です。 既定のキー設定が表示されていて、機能が何をするかの説明があります。 これらのキーの、機能に対する割り当てはbind コマンドで変更できます。

4.1. Generic Menu

generic メニューは実際のメニューではなく、 ページャエディタを除いたすべての メニューで有効な共通の機能 (例えば移動) を指定します。このメニューの設定を 変更すると、すべてのメニュー(上記で記したもの以外)の既定の割り当てに影響 します。

Table 9.2. Default Generic Menu Bindings

機能既定のキー説明
<top-page>Hmove to the top of the page
<next-entry>jmove to the next entry
<previous-entry>kmove to the previous entry
<bottom-page>Lmove to the bottom of the page
<refresh>^Lclear and redraw the screen
<middle-page>Mmove to the middle of the page
<search-next>nsearch for next match
<exit>qexit this menu
<tag-entry>ttag the current entry
<next-page>zmove to the next page
<previous-page>Zmove to the previous page
<last-entry>*move to the last entry
<first-entry>=move to the first entry
<enter-command>:enter a muttrc command
<next-line>>scroll down one line
<previous-line><scroll up one line
<half-up>[scroll up 1/2 page
<half-down>]scroll down 1/2 page
<help>?this screen
<tag-prefix>;apply next function to tagged messages
<tag-prefix-cond> apply next function ONLY to tagged messages
<end-cond> end of conditional execution (noop)
<shell-escape>!invoke a command in a subshell
<select-entry>MUTT_ENTER_Sselect the current entry
<search>/search for a regular expression
<search-reverse>Esc /search backwards for a regular expression
<search-opposite> search for next match in opposite direction
<jump> jump to an index number
<current-top> move entry to top of screen
<current-middle> move entry to middle of screen
<current-bottom> move entry to bottom of screen
<error-history> display recent history of error messages
<what-key> display the keycode for a key press
<check-stats> calculate message statistics for all mailboxes

4.2. Index Menu

Table 9.3. Default Index Menu Bindings

機能既定のキー説明
<create-alias>acreate an alias from a message sender
<autocrypt-acct-menu>Amanage autocrypt accounts
<background-compose-menu>Blist and select backgrounded compose sessions
<bounce-message>bremail a message to another user
<break-thread>#break the thread in two
<browse-mailboxes>yselect a new mailbox from the browser
<browse-mailboxes-readonly> select a new mailbox from the browser in read only mode
<change-folder>copen a different folder
<change-folder-readonly>Esc copen a different folder in read only mode
<next-unread-mailbox> open next mailbox with new mail
<collapse-thread>Esc vcollapse/uncollapse current thread
<collapse-all>Esc Vcollapse/uncollapse all threads
<compose-to-sender> compose new message to the current message sender
<copy-message>Ccopy a message to a file/mailbox
<decode-copy>Esc Cmake decoded (text/plain) copy
<decode-save>Esc smake decoded copy (text/plain) and delete
<delete-message>ddelete the current entry
<delete-pattern>Ddelete messages matching a pattern
<delete-thread>^Ddelete all messages in thread
<delete-subthread>Esc ddelete all messages in subthread
<edit>eedit the raw message
<edit-label>Yadd, change, or delete a message's label
<edit-type>^Eedit attachment content type
<forward-message>fforward a message with comments
<flag-message>Ftoggle a message's 'important' flag
<group-chat-reply> reply to all recipients preserving To/Cc
<group-reply>greply to all recipients
<fetch-mail>Gretrieve mail from POP server
<imap-fetch-mail> force retrieval of mail from IMAP server
<imap-logout-all> logout from all IMAP servers
<display-toggle-weed>hdisplay message and toggle header weeding
<next-undeleted>jmove to the next undeleted message
<previous-undeleted>kmove to the previous undeleted message
<limit>lshow only messages matching a pattern
<link-threads>&link tagged message to the current one
<list-reply>Lreply to specified mailing list
<mail>mcompose a new mail message
<toggle-new>Ntoggle a message's 'new' flag
<toggle-write>%toggle whether the mailbox will be rewritten
<next-thread>^Njump to the next thread
<next-subthread>Esc njump to the next subthread
<purge-message> delete the current entry, bypassing the trash folder
<query>Qquery external program for addresses
<quit>qsave changes to mailbox and quit
<reply>rreply to a message
<show-limit>Esc lshow currently active limit pattern
<sort-mailbox>osort messages
<sort-reverse>Osort messages in reverse order
<print-message>pprint the current entry
<previous-thread>^Pjump to previous thread
<previous-subthread>Esc pjump to previous subthread
<recall-message>Rrecall a postponed message
<read-thread>^Rmark the current thread as read
<read-subthread>Esc rmark the current subthread as read
<resend-message>Esc euse the current message as a template for a new one
<save-message>ssave message/attachment to a mailbox/file
<tag-pattern>Ttag messages matching a pattern
<tag-subthread> tag the current subthread
<tag-thread>Esc ttag the current thread
<untag-pattern>^Tuntag messages matching a pattern
<undelete-message>uundelete the current entry
<undelete-pattern>Uundelete messages matching a pattern
<undelete-subthread>Esc uundelete all messages in subthread
<undelete-thread>^Uundelete all messages in thread
<view-attachments>vshow MIME attachments
<show-version>Vshow the Mutt version number and date
<set-flag>wset a status flag on a message
<clear-flag>Wclear a status flag from a message
<display-message>MUTT_ENTER_Sdisplay a message
<mark-message>~create a hotkey macro for the current message
<buffy-list>.list mailboxes with new mail
<sync-mailbox>$save changes to mailbox
<display-address>@display full address of sender
<pipe-message>|pipe message/attachment to a shell command
<next-new> jump to the next new message
<next-new-then-unread><Tab>jump to the next new or unread message
<previous-new> jump to the previous new message
<previous-new-then-unread>Esc <Tab>jump to the previous new or unread message
<next-unread> jump to the next unread message
<previous-unread> jump to the previous unread message
<parent-message>Pjump to parent message in thread
<root-message> jump to root message in thread
<extract-keys>^Kextract supported public keys
<forget-passphrase>^Fwipe passphrase(s) from memory
<check-traditional-pgp>Esc Pcheck for classic PGP
<mail-key>Esc kmail a PGP public key
<decrypt-copy> make decrypted copy
<decrypt-save> make decrypted copy and delete
<sidebar-first> move the highlight to the first mailbox
<sidebar-last> move the highlight to the last mailbox
<sidebar-next> move the highlight to next mailbox
<sidebar-next-new> move the highlight to next mailbox with new mail
<sidebar-open> open highlighted mailbox
<sidebar-page-down> scroll the sidebar down 1 page
<sidebar-page-up> scroll the sidebar up 1 page
<sidebar-prev> move the highlight to previous mailbox
<sidebar-prev-new> move the highlight to previous mailbox with new mail
<sidebar-toggle-visible> make the sidebar (in)visible

4.3. Pager Menu

Table 9.4. Default Pager Menu Bindings

機能既定のキー説明
<background-compose-menu>Blist and select backgrounded compose sessions
<break-thread>#break the thread in two
<browse-mailboxes>yselect a new mailbox from the browser
<browse-mailboxes-readonly> select a new mailbox from the browser in read only mode
<create-alias>acreate an alias from a message sender
<bounce-message>bremail a message to another user
<change-folder>copen a different folder
<change-folder-readonly>Esc copen a different folder in read only mode
<next-unread-mailbox> open next mailbox with new mail
<compose-to-sender> compose new message to the current message sender
<copy-message>Ccopy a message to a file/mailbox
<decode-copy>Esc Cmake decoded (text/plain) copy
<delete-message>ddelete the current entry
<delete-thread>^Ddelete all messages in thread
<delete-subthread>Esc ddelete all messages in subthread
<set-flag>wset a status flag on a message
<clear-flag>Wclear a status flag from a message
<edit>eedit the raw message
<edit-label>Yadd, change, or delete a message's label
<edit-type>^Eedit attachment content type
<forward-message>fforward a message with comments
<flag-message>Ftoggle a message's 'important' flag
<group-chat-reply> reply to all recipients preserving To/Cc
<group-reply>greply to all recipients
<imap-fetch-mail> force retrieval of mail from IMAP server
<imap-logout-all> logout from all IMAP servers
<display-toggle-weed>hdisplay message and toggle header weeding
<next-undeleted>jmove to the next undeleted message
<next-entry>Jmove to the next entry
<previous-undeleted>kmove to the previous undeleted message
<previous-entry>Kmove to the previous entry
<link-threads>&link tagged message to the current one
<list-reply>Lreply to specified mailing list
<redraw-screen>^Lclear and redraw the screen
<mail>mcompose a new mail message
<mark-as-new>Ntoggle a message's 'new' flag
<toggle-write>%toggle whether the mailbox will be rewritten
<search-next>nsearch for next match
<next-thread>^Njump to the next thread
<next-subthread>Esc njump to the next subthread
<sort-mailbox>osort messages
<sort-reverse>Osort messages in reverse order
<print-message>pprint the current entry
<previous-thread>^Pjump to previous thread
<previous-subthread>Esc pjump to previous subthread
<purge-message> delete the current entry, bypassing the trash folder
<quit>Qsave changes to mailbox and quit
<exit>qexit this menu
<reply>rreply to a message
<recall-message>Rrecall a postponed message
<read-thread>^Rmark the current thread as read
<read-subthread>Esc rmark the current subthread as read
<resend-message>Esc euse the current message as a template for a new one
<save-message>ssave message/attachment to a mailbox/file
<skip-quoted>Sskip beyond quoted text
<decode-save>Esc smake decoded copy (text/plain) and delete
<tag-message>ttag the current entry
<toggle-quoted>Ttoggle display of quoted text
<undelete-message>uundelete the current entry
<undelete-subthread>Esc uundelete all messages in subthread
<undelete-thread>^Uundelete all messages in thread
<view-attachments>vshow MIME attachments
<show-version>Vshow the Mutt version number and date
<search-toggle>\\toggle search pattern coloring
<display-address>@display full address of sender
<next-new> jump to the next new message
<pipe-message>|pipe message/attachment to a shell command
<help>?this screen
<next-page><Space>move to the next page
<previous-page>-move to the previous page
<top>^jump to the top of the message
<sync-mailbox>$save changes to mailbox
<shell-escape>!invoke a command in a subshell
<enter-command>:enter a muttrc command
<buffy-list>.list mailboxes with new mail
<search>/search for a regular expression
<search-reverse>Esc /search backwards for a regular expression
<search-opposite> search for next match in opposite direction
<next-line>MUTT_ENTER_Sscroll down one line
<error-history> display recent history of error messages
<jump> jump to an index number
<next-unread> jump to the next unread message
<previous-new> jump to the previous new message
<previous-unread> jump to the previous unread message
<half-up> scroll up 1/2 page
<half-down> scroll down 1/2 page
<previous-line> scroll up one line
<bottom> jump to the bottom of the message
<parent-message>Pjump to parent message in thread
<root-message> jump to root message in thread
<check-traditional-pgp>Esc Pcheck for classic PGP
<mail-key>Esc kmail a PGP public key
<extract-keys>^Kextract supported public keys
<forget-passphrase>^Fwipe passphrase(s) from memory
<decrypt-copy> make decrypted copy
<decrypt-save> make decrypted copy and delete
<what-key> display the keycode for a key press
<check-stats> calculate message statistics for all mailboxes
<sidebar-first> move the highlight to the first mailbox
<sidebar-last> move the highlight to the last mailbox
<sidebar-next> move the highlight to next mailbox
<sidebar-next-new> move the highlight to next mailbox with new mail
<sidebar-open> open highlighted mailbox
<sidebar-page-down> scroll the sidebar down 1 page
<sidebar-page-up> scroll the sidebar up 1 page
<sidebar-prev> move the highlight to previous mailbox
<sidebar-prev-new> move the highlight to previous mailbox with new mail
<sidebar-toggle-visible> make the sidebar (in)visible

4.4. Alias Menu

Table 9.5. Default Alias Menu Bindings

機能既定のキー説明
<delete-entry>ddelete the current entry
<undelete-entry>uundelete the current entry

4.5. Query Menu

Table 9.6. Default Query Menu Bindings

機能既定のキー説明
<create-alias>acreate an alias from a message sender
<mail>mcompose a new mail message
<query>Qquery external program for addresses
<query-append>Aappend new query results to current results

4.6. Attachment Menu

Table 9.7. Default Attachment Menu Bindings

機能既定のキー説明
<bounce-message>bremail a message to another user
<display-toggle-weed>hdisplay message and toggle header weeding
<compose-to-sender> compose new message to the current message sender
<edit-type>^Eedit attachment content type
<print-entry>pprint the current entry
<save-entry>ssave message/attachment to a mailbox/file
<pipe-entry>|pipe message/attachment to a shell command
<view-mailcap>mforce viewing of attachment using mailcap
<reply>rreply to a message
<resend-message>Esc euse the current message as a template for a new one
<group-chat-reply> reply to all recipients preserving To/Cc
<group-reply>greply to all recipients
<list-reply>Lreply to specified mailing list
<forward-message>fforward a message with comments
<view-text>Tview attachment as text
<view-attach>MUTT_ENTER_Sview attachment using mailcap entry if necessary
<delete-entry>ddelete the current entry
<undelete-entry>uundelete the current entry
<collapse-parts>vToggle display of subparts
<check-traditional-pgp>Esc Pcheck for classic PGP
<extract-keys>^Kextract supported public keys
<forget-passphrase>^Fwipe passphrase(s) from memory

4.7. Compose Menu

Table 9.8. Default Compose Menu Bindings

機能既定のキー説明
<attach-file>aattach file(s) to this message
<attach-message>Aattach message(s) to this message
<edit-bcc>bedit the BCC list
<edit-cc>cedit the CC list
<copy-file>Csave message/attachment to a mailbox/file
<detach-file>Ddelete the current entry
<toggle-disposition>