「Mutt」の版間の差分
(翻訳) |
細 (neomuttはextraリポジトリに移動しています) |
||
(5人の利用者による、間の66版が非表示) | |||
1行目: | 1行目: | ||
[[Category:メールクライアント]] |
[[Category:メールクライアント]] |
||
+ | [[Category:コンソールアプリケーション]] |
||
+ | [[Category:OpenPGP]] |
||
[[en:Mutt]] |
[[en:Mutt]] |
||
[[es:Mutt]] |
[[es:Mutt]] |
||
[[it:Mutt]] |
[[it:Mutt]] |
||
− | [[zh- |
+ | [[zh-hans:Mutt]] |
− | [[zh- |
+ | [[zh-hant:Mutt]] |
{{Related articles start}} |
{{Related articles start}} |
||
{{Related|fdm}} |
{{Related|fdm}} |
||
24行目: | 26行目: | ||
任意で [[isync]], [[OfflineIMAP]], [[msmtp]] などの外部のヘルパーアプリケーションをインストールしてください (IMAP セットアップをする場合)。 |
任意で [[isync]], [[OfflineIMAP]], [[msmtp]] などの外部のヘルパーアプリケーションをインストールしてください (IMAP セットアップをする場合)。 |
||
− | もしくは (POP3 を使う場合) {{ |
+ | もしくは (POP3 を使う場合) {{AUR|getmail}}, {{Pkg|fetchmail}}, {{Pkg|fdm}}, {{Pkg|procmail}} をインストールしてください。 |
{{Note| |
{{Note| |
||
34行目: | 36行目: | ||
=== NeoMutt === |
=== NeoMutt === |
||
− | [http://www.neomutt.org/ NeoMutt] プロジェクトは Mutt にあらゆるパッチを適用しています。パッチによって膨大な数の [http://www.neomutt.org/ |
+ | [http://www.neomutt.org/ NeoMutt] プロジェクトは Mutt にあらゆるパッチを適用しています。パッチによって膨大な数の [http://www.neomutt.org/feature.html 機能] が追加されます。古い Mutt のパッチの多くは更新・整理されドキュメント化されています。 |
− | AUR には mutt の別バージョンのパッケージが存在していますが、NeoMutt は適切なコンパイルオプションを実行することでそれらを置き換えます。現在、NeoMutt は |
+ | AUR には mutt の別バージョンのパッケージが存在していますが、NeoMutt は適切なコンパイルオプションを実行することでそれらを置き換えます。現在、NeoMutt は {{Pkg|neomutt}} や {{AUR|neomutt-git}} でインストールできます。 |
==設定== |
==設定== |
||
56行目: | 58行目: | ||
set imap_user=USERNAME |
set imap_user=USERNAME |
||
− | {{Tip| |
+ | {{Tip|先ほどの例を続けると、Gmail には完全なメールアドレスが必要であることに注意してください。 (これは標準ではありません) {{bc|1=set imap_user=your.username@gmail.com}}}} |
=====imap_pass===== |
=====imap_pass===== |
||
62行目: | 64行目: | ||
set imap_pass=SECRET |
set imap_pass=SECRET |
||
− | {{Tip|Gmail で |
+ | {{Tip|Gmail で二段階認証を有効にしている場合、Mutt のためにアプリケーションパスワードを追加して、通常の Gmail パスワードの代わりに使うことができます。}} |
=====folder===== |
=====folder===== |
||
+ | ローカルディレクトリに全てのメール (とディレクトリ) を保存するかわりに、サーバーを使用します (必要であれば最上階のフォルダも)。 |
||
− | Instead of a local directory which contains all your mail (and directories), use your server (and the highest folder in the hierarchy, if needed). |
||
set folder=imap[s]://imap.server.domain[:port]/[folder/] |
set folder=imap[s]://imap.server.domain[:port]/[folder/] |
||
+ | フォルダを使用する必要はありませんが、他のフォルダが全て受信フォルダの中にある場合などに有用です。設定したフォルダは Mutt でイコール記号 (=) とプラス記号 (+) を使ってアクセスできます。例: |
||
− | You do not have to use a folder, but it might be convenient if you have all your other folders inside your INBOX, for example. Whatever you set here as your folder can be accessed later in Mutt with just an equal sign (=) or a plus sign (+). Example: |
||
set folder=imaps://imap.gmail.com/ |
set folder=imaps://imap.gmail.com/ |
||
+ | 複数のアカウントを使用する場合、フォルダを分けるのがベストプラクティスです (例: ''account-hook'')。複数の Gmail アカウントを持っている場合: |
||
− | It should be noted that for several accounts, it is best practice to use different folders -- e.g. for ''account-hook''. If you have several Gmail account, use |
||
set folder=imaps://username@imap.gmail.com/ |
set folder=imaps://username@imap.gmail.com/ |
||
+ | ''username@gmail.com'' はあなたのアカウントに置き換えてください。こうすることでフォルダを区別できるようになります。設定しないと認証エラーが発生します。 |
||
− | instead, where your account is ''username@gmail.com''. This way it will be possible to distinguish the different folders. Otherwise it would lead to authentication errors. |
||
=====spoolfile===== |
=====spoolfile===== |
||
+ | スプールファイルは、(フィルタリングされていない)電子メールが到着するフォルダーです。ほとんどの電子メールサービスでは、通常、INBOX という名前が付けられています。上記で設定したフル {{ic|folder}} パスの代わりに「=」または「+」を使用できるようになりました。例えば: |
||
− | The spoolfile is the folder where your (unfiltered) e-mail arrives. Most e-mail services conventionally names it ''INBOX''. You can now use '=' or '+' as a substitution for the full {{ic|folder}} path that was configured above. For example: |
||
− | set spoolfile=+INBOX |
||
=====mailboxes===== |
=====mailboxes===== |
||
+ | 新着メールがないか定期的にチェックする必要がある imap フォルダーをここにリストします。 |
||
− | Any imap folders that should be checked regularly for new mail should be listed here: |
||
mailboxes =INBOX =family |
mailboxes =INBOX =family |
||
mailboxes imaps://imap.gmail.com/INBOX imaps://imap.gmail.com/family |
mailboxes imaps://imap.gmail.com/INBOX imaps://imap.gmail.com/family |
||
+ | または、すべてのサブスクライブされた IMAP フォルダーを確認します(すべての {{Ic|mailboxes}} で追加) |
||
− | Alternatively, check for all subscribed IMAP folders (as if all were added with a {{Ic|mailboxes}} line): |
||
set imap_check_subscribed |
set imap_check_subscribed |
||
+ | これら2つのバージョンは、すべてのフォルダーをサブスクライブする場合は同等です。したがって、2番目の方法の方がはるかに便利ですが、最初の方法の方が柔軟性が高くなります。また、新しいバージョンの Mutt は、デフォルトで「y」キーにバインドされたマクロを含むように設定されており、メールボックスの下にリストされているフォルダーのいずれかに変更できます。 |
||
− | These two versions are equivalent if you want to subscribe to all folders. So the second method is much more convenient, but the first one gives you more flexibility. Also, newer Mutt versions are configured by default to include a macro bound to the 'y' key which will allow you to change to any of the folders listed under mailboxes. |
||
+ | 変数を設定しなかった場合、デフォルトで ''spoolfile'' が使われます。[[#サイドバー|サイドバー]]でも使用する変数です。 |
||
− | If you do not set this variable, the ''spoolfile'' will be used by default. |
||
− | This variable is also important for the [[#Mutt-Sidebar|sidebar]]. |
||
=====まとめ===== |
=====まとめ===== |
||
+ | これらのオプションを使用すると、Mutt を起動し、IMAP パスワードを入力して、メールの読み取りを開始できます。以下は、IMAP サポートを改善するために追加を検討する可能性のある他の行を含む muttrc スニペット (Gmail用) です。 |
||
− | Using these options, you will be able to start Mutt, enter your IMAP password, and start reading your mail. Here is a muttrc snippet (for Gmail) with some other lines you might consider adding for better IMAP support. |
||
{{bc|1= |
{{bc|1= |
||
set folder = imaps://imap.gmail.com/ |
set folder = imaps://imap.gmail.com/ |
||
135行目: | 135行目: | ||
===Maildir=== |
===Maildir=== |
||
+ | Maildir は汎用・標準のフォーマットです。ほとんど全ての MUA が Maildir を処理でき、Mutt もサポートしています。Mutt で Maildir を使用するために必要な設定は少しだけです。muttrc を開いて以下の行を追加してください: |
||
− | Maildir is a generic and standardized format. Almost every MUA is able to handle Maildirs and Mutt's support is excellent. There are just a few simple things that you need to do to get Mutt to use them. Open your muttrc and add the following lines: |
||
{{bc|1= |
{{bc|1= |
||
set mbox_type=Maildir |
set mbox_type=Maildir |
||
− | set folder= |
+ | set folder=~/mail |
set spoolfile=+/ |
set spoolfile=+/ |
||
set header_cache=~/.cache/mutt |
set header_cache=~/.cache/mutt |
||
}} |
}} |
||
+ | 上記は Maildir にアクセスして INBOX に新しいローカルメールが存在しないか確認するだけの最小設定です。上記の設定はメールのヘッダーをキャッシュしてディレクトリの表示を高速化します。(Arch の公式パッケージを使っていない場合) キャッシュは使用できない可能性があります。上記の設定は OfflineIMAP には影響を与えないので注意してください。常にサーバー上の全てのディレクトリを同期します。{{ic|spoolfile}} は Mutt が新しいメールが来ていないか問い合わせるローカルディレクトリです。メーリングリストのディレクトリなどスプールファイルは追加することができます。詳しい設定方法は Mutt のマニュアルを参照してください。 |
||
− | This is a minimal Configuration that enables you to access your Maildir and checks for new local Mails in INBOX. This configuration also caches the headers of the eMails to speed up directory-listings. It might not be enabled in your build (but it sure is in the Arch-Package). Note that this does not affect OfflineIMAP in any way. It always syncs the all directories on a Server. {{ic|spoolfile}} tells Mutt which local directories to poll for new Mail. You might want to add more Spoolfiles (for example the Directories of Mailing-Lists) and maybe other things. But this is subject to the Mutt manual and beyond the scope of this document. |
||
===SMTP=== |
===SMTP=== |
||
150行目: | 150行目: | ||
==== フォルダ ==== |
==== フォルダ ==== |
||
+ | ここには基本的に重要なフォルダが1つだけあります。送信されたすべての電子メールが保存されるフォルダです。 |
||
− | There is basically only one important folder here: the one where all your sent e-mails will be saved. |
||
set record = +Sent |
set record = +Sent |
||
172行目: | 172行目: | ||
}} |
}} |
||
+ | SMTP 資格情報が IMAP 資格情報と同じである場合、これらの変数を使用できることに注意してください: |
||
− | Note that if your SMTP credentials are the same as your IMAP credentials, then you can use those variables: |
||
{{bc|1= |
{{bc|1= |
||
178行目: | 178行目: | ||
}} |
}} |
||
+ | 以下のようなエラーが表示される場合、セキュリティパラメータを変更する必要があるかもしれません: |
||
− | You may need to tweak the security parameters. If you get an error like |
||
− | + | SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol |
|
− | then your server probably uses the SMTP instead of SMTPS. |
||
+ | サーバーは SMTPS ではなく SMTP を使っているため、以下のように設定する必要があります: |
||
{{bc|1= |
{{bc|1= |
||
set smtp_url=smtp://$imap_user:$imap_pass@smtp.domain.tld |
set smtp_url=smtp://$imap_user:$imap_pass@smtp.domain.tld |
||
}} |
}} |
||
+ | STARTTLS を使用する場合、他にも設定する変数が存在します: |
||
− | There are other variables that you may need to set. For example for use of STARTTLS: |
||
{{bc|1= |
{{bc|1= |
||
set ssl_starttls = yes |
set ssl_starttls = yes |
||
197行目: | 197行目: | ||
[[msmtp]], [[SSMTP]], {{Pkg|opensmtpd}} など外部の SMTP エージェントを使うこともできます。 |
[[msmtp]], [[SSMTP]], {{Pkg|opensmtpd}} など外部の SMTP エージェントを使うこともできます。 |
||
+ | {{ic|muttrc}} の {{ic|sendmail}} 変数で mutt でメールを配達するのに使用するプログラムと引数を定義できます。追加引数はプログラムによって受取人のアドレスとして解釈されます。 |
||
− | The {{ic|sendmail}} variable in your {{ic|muttrc}} determines the program and arguments used to deliver mail in mutt. Any additional arguments must be interpreted by the program as recipient addresses. |
||
例えば、[[msmtp]] を使う場合: |
例えば、[[msmtp]] を使う場合: |
||
227行目: | 227行目: | ||
{{hc|.muttrc|2=set editor=your-favorite-editor}} |
{{hc|.muttrc|2=set editor=your-favorite-editor}} |
||
+ | テストの目的で、手紙を自分宛てに送ってください。手紙を書いたら、保存してエディターを終了します。 Mutt に戻り、電子メールに関する情報が表示されます。 {{ic|y}} を押して送信します。 |
||
− | For testing purposes, address the letter to yourself. After you have written the letter, save and exit the editor. You will return to Mutt, which will now show information about your e-mail. Press {{ic|y}} to send it. |
||
+ | {{Warning|この時点で誤って {{ic|q}} を押すと、Mutt は {{ic|Postpone this message? (yes/no)}} これは本当にあなたが書いたばかりのメッセージを保存したいかどうかを尋ねています。 「n」を押すと(おそらくメッセージを再度編集するため)、メッセージは完全に削除されます。 Mutt を使用するときは、「このメッセージを延期しますか?」本当に「このメッセージを保存しますか?」という意味です。}} |
||
− | {{Warning|If at this point you press {{ic|q}} by accident, Mutt will ask you {{ic|Postpone this message? ([yes]/no)}}. This is really asking whether you want to save the message you just wrote. If you press "n" (perhaps because you want to edit the message again) the message will be permanently deleted. When using Mutt, always remember that "Postpone this message?" really means "Save this message?".}} |
||
===マルチアカウント=== |
===マルチアカウント=== |
||
+ | これで、少なくとも1つのアカウントに対して有効な構成ができるはずです。すべてを1つのファイルにまとめているので、複数のアカウントをどのように使用するのか疑問に思われるかもしれません。 |
||
− | Now you should have a working configuration for one account at least. You might wonder how to use several accounts, since we put everything into a single file. |
||
+ | 必要なのは、アカウント固有のパラメーターをそれぞれのファイルに書き込んで、それらを調達することだけです。各アカウントのすべての IMAP / POP3 / SMTP 構成は、それぞれのフォルダーに移動する必要があります。 |
||
− | Well all you need is to write account-specific parameters to their respective files and source them. All the IMAP/POP3/SMTP config for each account should go to its respective folder. |
||
+ | {{Warning|1つのアカウントが他のアカウントに指定されていない変数を設定している場合は、そのアカウントを '''must unset''' する必要があります。そうしないと、設定が重複し、予期しない動作が発生することになります。}} |
||
− | {{Warning|When one account is setting a variable that is not specified for other accounts, you '''must unset''' it for them, otherwise configuration will overlap and you will most certainly experience unexpected behaviour.}} |
||
+ | Muttは、最も強力な機能の1つであるフックのおかげで、これを処理できます。基本的にフックは、特定のアクションの前に実行されるコマンドです。利用可能なフックがいくつかあります。複数のアカウントの場合、account-hooksとfolder-hooks を使用する必要があります。 |
||
− | Mutt can handle this thanks to one of its most powerful features: hooks. |
||
+ | * フォルダフックは、フォルダを切り替える前にコマンドを実行します。これは、特定のフォルダにいるときに適切な SMTP パラメータを設定するのに役立ちます。たとえば、仕事用メールボックスにいて、電子メールを送信すると、仕事用アカウントが送信者として自動的に使用されます。 |
||
− | Basically a hook is a command that gets executed before a specific action. |
||
+ | * アカウントフックは、Mutt が IMAP 同期などのアカウントに関連する関数を呼び出すたびにコマンドを実行します。フォルダーに切り替える必要はありません。 |
||
− | There are several hooks available. For multiple accounts, you must use account-hooks ''and'' folder-hooks. |
||
− | * Folder-hooks will run a command before switching folders. This is mostly useful to set the appropriate SMTP parameters when you are in a specific folder. For instance when you are in your work mailbox and you send a e-mail, it will automatically use your work account as sender. |
||
− | * Account-hooks will run a command everytime Mutt calls a function related to an account, like IMAP syncing. It does not require you to switch to any folder. |
||
+ | フックは次の2つのパラメーターを取ります。 |
||
− | Hooks take two parameters: |
||
account-hook [!]regex command |
account-hook [!]regex command |
||
folder-hook [!]regex command |
folder-hook [!]regex command |
||
+ | 正規表現は、一致するフォルダです(または!が前に付いていない場合)。コマンドは、何をすべきかを伝えます。 |
||
− | The regex is the folder to be matched (or not if preceded by the !). |
||
− | The command tells what to do. |
||
+ | 例: |
||
− | Let us give a full example: |
||
{{hc|.muttrc|<nowiki> |
{{hc|.muttrc|<nowiki> |
||
298行目: | 295行目: | ||
Finally {{ic|.mutt/personal}} should be similar to {{ic|.mutt/work}}. |
Finally {{ic|.mutt/personal}} should be similar to {{ic|.mutt/work}}. |
||
+ | 全てのアカウントを設定したら Mutt を起動してください。フォルダを変えればアカウントを切り替えることができます ({{ic|c}} キー)。もしくは[[#サイドバー|サイドバー]]を使うこともできます。 |
||
− | Now all your accounts are set, start Mutt. To switch from one account to another, just change the folder ({{ic|c}} key). Alternatively you can use the [[#Mutt-Sidebar|sidebar]]. |
||
+ | 異なるメールボックスのフォルダーを変更するには、完全なアドレスを入力する必要があります IMAP/POP3 フォルダーの場合、これはかなり不便かもしれません、それにいくつかのキーをバインドしましょう。 |
||
− | To change folder for different mailboxes you have to type the complete address -- for IMAP/POP3 folders, this may be quite inconvenient -- let us bind some key to it. |
||
{{bc| |
{{bc| |
||
308行目: | 305行目: | ||
}} |
}} |
||
+ | 上記のショートカット(またはサイドバー)を使用すると、フォルダーの変更(デフォルトでは {{ic|c}} を使用)はコンテキストに依存しません。つまり、現在のメールボックスのフォルダーは表示されませんが、最後にフォルダーを変更したときに使用されたフォルダーが一覧表示されます。動作をより文脈的にするための秘訣は、現在のメールボックスで=または+を押すことです。これは次のマクロで自動化できます。 |
||
− | With the above shortcuts (or with the sidebar) you will find that changing folders (with {{ic|c}} by default) is not contextual, ''i.e.'' it will not list the folders of the current mailbox, but of the one used the last time you changed folders. To make the behaviour more contextual, the trick is to press ''='' or ''+'' for current mailbox. You can automate this with the following macro: |
||
macro index 'c' '<change-folder>?<change-dir><home>^K=<enter>' |
macro index 'c' '<change-folder>?<change-dir><home>^K=<enter>' |
||
===パスワード管理=== |
===パスワード管理=== |
||
+ | {{ic|.muttrc}} にパスワードを記述することはセキュリティ的に問題があります。毎回手動でパスワードを入力するという方法もありますが、面倒です。 |
||
− | Keep in mind that writing your password in {{ic|.muttrc}} is a security risk, and it might be of your concern. |
||
− | The trivial way to keep your passwords safe is not writing them in the config file. Mutt will then prompt for it when needed. |
||
− | However, this is quite cumbersome in the long run, especiallly if you have several accounts. |
||
+ | [[GnuPG]] を使ってパスワードを暗号化しファイルに保存するという解決方法が存在します。まだキーペアを設定していない場合、先に[[GnuPG#鍵の作成|作成]]してください。以下の内容で [[tmpfs]] にファイルを作成: |
||
− | Here follows a smart and convenient solution: all your passwords are encrypted into one file and Mutt will prompt for a passphrase on startup only. You can opt for a keyring tool (e.g. GPG, {{pkg|pwsafe}}) or an encryption tool like {{pkg|ccrypt}}, which may be more simple and straightforward to use. |
||
− | Since GPG is a Mutt dependency, we will use it here. |
||
+ | set my_pass = "'' password''" |
||
− | First create a pair of public/private keys: |
||
− | gpg --gen-key |
||
− | If you do not understand this process have a look at [[Wikipedia:Asymmetric cryptography]]. |
||
+ | {{Note|ユーザー定義変数は必ず最初に {{ic|my_}} を付ける必要があります。}} |
||
− | Create a file '''in a secure environment''' since it will contain your passwords for a couple of seconds: |
||
− | {{hc|~/.my-pwds|2= |
||
− | set my_pw_personal = "''first password''" |
||
− | set my_pw_work = "''second password''" |
||
− | }} |
||
+ | あなた自身を受取人としてファイルを[[GnuPG#暗号化と復号化|暗号化]]し、アクセス可能なディレクトリに移動してください。以下の例では暗号化したファイルを {{ic|$HOME/.my-pwds.gpg}} に配置しています。 |
||
− | {{Note|Remember that user defined variables '''must''' start with {{ic|my_}}.}} |
||
− | Now encrypt the file: |
||
− | gpg -e -r 'your-name' ~/.my-pwds |
||
− | Note that 'your-name' must match the one you provided at the {{ic|gpg --gen-key}} step. |
||
− | Now you can wipe your file containing your passwords in clear: |
||
− | shred -xu ~/.my-pwds |
||
− | Back to your account dedicated files, e.g. {{ic|.mutt/muttrc}}: |
||
− | {{bc|1= |
||
− | set imap_pass=$my_pw_personal |
||
− | # Every time the password is needed, use $my_pw_personal variable. |
||
− | }} |
||
+ | mutt の設定ファイルに以下を追加 (アカウントの前に追加してください): |
||
− | And in your {{ic|.muttrc}}, '''before''' you source any account dedicated file: |
||
− | source " |
+ | source "gpg -dq $HOME/.my-pwds.gpg |" |
+ | {{Note|上記の行の末尾にあるパイプとダブルクォートの間に空白は挟みません。}} |
||
− | {{Note|At the end of the line above, there is no space between the pipe and the double quote.}} |
||
− | * The {{ic|-q}} parameter makes gpg2 quiet which prevents gpg2 output messing with Mutt interface. |
||
− | * The pipe {{ic|<nowiki>|</nowiki>}} at the end of a string is the Mutt syntax to tell that you want the result of what is preceeding. |
||
+ | 上記の設定でファイルが復号化され {{ic|my_pass}} 変数が設定されます。source された後は変数を自由に使うことができます。例: |
||
− | Explanation: when Mutt starts, it will first source the result of the password decryption, that's why it will prompt for a passphrase. Then all passwords will be stored in memory in specific variables for the time Mutt runs. Then, when a folder-hook is called, it sets the imap_pass variable to the variable holding the appropriate password. When switching accounts, the imap_pass variable will be set to another variable holding another password, etc. |
||
+ | {{bc|1= |
||
− | If you use external tools like OfflineIMAP and msmtp, you need to set up an agent (e.g. gpg-agent, see [[GnuPG#gpg-agent]]) to keep the passphrase into cache and thus avoiding those tools always prompting for it. |
||
+ | set imap_pass=$my_pass |
||
+ | }} |
||
+ | |||
+ | OfflineIMAP や msmtp などの外部ツールを使用する場合、エージェント (例: gpg-agent、[[GnuPG#gpg-agent]] を参照) を設定してパスフレーズをキャッシュに保存して何度もパスワードが聞かれないようにしてください。 |
||
==== セキュリティの問題 ==== |
==== セキュリティの問題 ==== |
||
+ | {{ic|enter-command}} が UI から利用できる場合、暗号化されていないパスワードが表示される可能性があります。Mutt の実行中にセッションにアクセスできるのがあなた以外の誰かである場合、これは望ましくない可能性があります。このため、これを無効にすることができます。その結果ユーザーが使用する予定のすべてのコマンドを事前にキーにバインドする必要があります。そうしないとアクセスできません。 |
||
− | If {{ic|enter-command}} is available from the UI, it is possible to see the password unencrypted, which may be undesired if anybody else than you has access to your session while Mutt is running. You may want to disable it for this reason. As a consequence, every command that the user intends to use must be bound to a key in advance, otherwise it will never be accessible. |
||
{{hc|.muttrc| |
{{hc|.muttrc| |
||
bind generic,alias,attach,browser,editor,index,compose,pager,pgp,postpone ':' noop |
bind generic,alias,attach,browser,editor,index,compose,pager,pgp,postpone ':' noop |
||
}} |
}} |
||
+ | == ヒントとテクニック == |
||
− | == Tips and tricks == |
||
+ | Muttの使用とカスタマイズを始めるためのガイド |
||
− | Guides to get you started with using & customizing Mutt : |
||
* [http://mutt.postle.net/ My first Mutt] (maintained by Bruno Postle) |
* [http://mutt.postle.net/ My first Mutt] (maintained by Bruno Postle) |
||
* [http://www.therandymon.com/woodnotes/mutt/using-mutt.html The Woodnotes Guide to the Mutt Email Client] (maintained by Randall Wood) |
* [http://www.therandymon.com/woodnotes/mutt/using-mutt.html The Woodnotes Guide to the Mutt Email Client] (maintained by Randall Wood) |
||
371行目: | 351行目: | ||
===キーバインディング=== |
===キーバインディング=== |
||
+ | デフォルトのキーバインドは Emacs や Vi などの一般的なバインドとかけ離れています。自由に設定することができます。Mutt にはページャ・インデックス・添付ビューなどに様々なバインドのセットが用意されています。キーをバインドしたいときは編集したい''マップ''を指定してください。Mutt のヘルプページからコマンドとキーバインドのリストを確認できます (デフォルトキー: {{ic|?}})。Vi ライクなバインドの例: |
||
− | The default key bindings are quite far from the more common Emacs-like or Vi-like bindings. |
||
− | You can customize them to your preference. Mutt has a different set of bindings for the pager, the index, the attachment view, etc. Thus you need to specify which ''map'' you want to modify when you bind a key. You can review the list of commands and key bindings from Mutt's help page (default key: {{ic|?}}). |
||
− | Example of Vi-like bindings: |
||
{{hc|muttrc|<nowiki> |
{{hc|muttrc|<nowiki> |
||
bind pager j next-line |
bind pager j next-line |
||
385行目: | 363行目: | ||
</nowiki>}} |
</nowiki>}} |
||
+ | === 作成 === |
||
− | ===メールの文字エンコーディング=== |
||
− | You may be concerned with sending e-mail in a decent character set (charset for short) like UTF-8. Nowadays UTF-8 is highly recommended to almost everyone. |
||
+ | ==== メールの暗号化と署名 (GnuPG) ==== |
||
− | When using Mutt there are two levels where the charset must be specified: |
||
− | * The text editor used to write the e-mail must save it in the desired encoding. |
||
− | * Mutt will then check the e-mail and determine which encoding is the more appropriate according to the priority you specified in the {{ic|send_charset}} variable. Default: "us-ascii:iso-8859-1:utf-8". |
||
+ | [[GnuPG]] を使って mutt でメールを暗号化するには {{ic|/usr/share/doc/mutt/samples/gpg.rc}} を mutt の設定フォルダにコピーしてください (例: {{ic|~/.mutt/gpg.rc}})。そして mutt の設定ファイルに以下を追加してください (例: {{ic|~/.mutt/mutrrc}}): |
||
− | So if you write an e-mail with characters allowed in ISO-8859-1 (like 'résumé'), but without characters specific to Unicode, then Mutt will set the encoding to ISO-8859-1. |
||
+ | source ~/.mutt/gpg.rc |
||
− | To avoid this behaviour, set the variable in your {{ic|muttrc}}: |
||
+ | |||
+ | コンポーズビューで {{ic|p}} を押すことで暗号化オプションを使うことができるようになります。 |
||
+ | |||
+ | 詳しくは {{man|5|muttrc}} の {{ic|pgp_*}} や {{ic|crypt_*}} オプションを見てください。 |
||
+ | |||
+ | ==== メールの文字エンコーディング ==== |
||
+ | Mutt を使用する場合、指定する必要のある文字セットには2つのレベルがあります。 |
||
+ | * 電子メールを作成するために使用されるテキストエディタは、目的のエンコーディングで保存する必要があります。 |
||
+ | * その後、Mutt は電子メールをチェックし、{{ic|send_charset}} 変数で指定した優先順位に従って、どのエンコーディングがより適切であるかを判断します。デフォルト: "us-ascii:iso-8859-1:utf-8" |
||
+ | |||
+ | そのため、ISO-8859-1 で許可された文字( 'résumé'など)を使用して、Unicode 固有の文字を使用せずに電子メールを作成すると、Mutt はエンコーディングを ISO-8859-1 に設定します。 |
||
+ | |||
+ | この動作を回避するには、{{ic|muttrc}} で変数を設定します。 |
||
set send_charset="us-ascii:utf-8" |
set send_charset="us-ascii:utf-8" |
||
+ | あるいは |
||
− | or even |
||
set send_charset="utf-8" |
set send_charset="utf-8" |
||
+ | 左から最初の互換性のある文字セットが使用されます。 UTF-8 は US-ASCII のスーパーセットであるため、UTF-8 の前に置いても問題ありません。これにより、電子メールヘッダーに文字セットが表示されたときに古い MUA が混乱しないことが保証されます。 |
||
− | The first compatible charset starting from the left will be used. |
||
− | Since UTF-8 is a superset of US-ASCII it does not harm to leave it in front of UTF-8, it may ensure old MUA will not get confused when seeing the charset in the e-mail header. |
||
+ | ==== カスタムメールヘッダ ==== |
||
− | ===印刷=== |
||
+ | Mutt ではメールヘッダを完全に制御することができます。 |
||
− | You can install {{AUR|muttprint}} for fancier printing quality. |
||
− | In your muttrc file, insert: |
||
− | set print_command="/usr/bin/muttprint %s -p {PrinterName}" |
||
− | |||
− | ===カスタムメールヘッダ=== |
||
− | One of the greatest thing in Mutt is that you can have full control over your mail header. |
||
+ | メールを書くときにヘッダを編集できるようにするには: |
||
− | First, make your headers editable when you write e-mails: |
||
set edit_headers=yes |
set edit_headers=yes |
||
+ | Muttには、ヘッダーをカスタマイズするための特別な関数 {{ic|my_hdr}} もあります。はい、変数と同じように名前が付けられていますが、実際は関数です。 |
||
− | Mutt also features a special function {{ic|my_hdr}} for customizing your header. Yes, it is named just like a variable, but in fact it is a function. |
||
+ | あなたはそれを完全にクリアすることができます、それはあなたが異なるヘッダーでアカウントを切り替えるときに行うべきです、そうでなければそれらはオーバーラップします: |
||
− | You can clear it completely, which you ''should'' do when switching accounts with different headers, otherwise they will overlap: |
||
unmy_hdr * |
unmy_hdr * |
||
+ | 他の変数もヘッダーに影響を与えるため、{{ic|my_hdr}} を使用する前にそれらをクリアするのが賢明です。: |
||
− | Other variables have also an impact on the headers, so it is wise to clear them before using {{ic|my_hdr}}: |
||
unset use_from |
unset use_from |
||
unset use_domain |
unset use_domain |
||
unset user_agent |
unset user_agent |
||
+ | これで、次の構文を使用して、ヘッダーに任意のフィールドを追加できます(非標準のものも含む): |
||
− | Now, you can add any field you want -- even non-standard one -- to your header using the following syntax: |
||
my_hdr <FIELD>: <VALUE> |
my_hdr <FIELD>: <VALUE> |
||
+ | <VALUE>はコマンドの結果である可能性があることに注意してください。 |
||
− | Note that <VALUE> can be the result of a command. |
||
+ | 例: |
||
− | Example: |
||
{{bc| |
{{bc| |
||
## Extra info. |
## Extra info. |
||
442行目: | 424行目: | ||
}} |
}} |
||
− | ===署名ブロック=== |
+ | ==== 署名ブロック ==== |
ホームディレクトリに {{ic|.signature}} を作成してください。署名はメールの末尾に追加されます。もしくは Mutt の設定でファイルを指定することもできます: |
ホームディレクトリに {{ic|.signature}} を作成してください。署名はメールの末尾に追加されます。もしくは Mutt の設定でファイルを指定することもできます: |
||
set signature="path/to/sig/file" |
set signature="path/to/sig/file" |
||
− | ====ランダム署名==== |
+ | ===== ランダム署名 ===== |
''fortune'' (パッケージ: {{Pkg|fortune-mod}}) を使うことで Mutt にランダムに署名を追加することができます。 |
''fortune'' (パッケージ: {{Pkg|fortune-mod}}) を使うことで Mutt にランダムに署名を追加することができます。 |
||
fortune ファイルを作成して以下の行を {{ic|.muttrc}} に追加してください: |
fortune ファイルを作成して以下の行を {{ic|.muttrc}} に追加してください: |
||
{{bc|1=set signature="fortune pathtofortunefile|"}} |
{{bc|1=set signature="fortune pathtofortunefile|"}} |
||
+ | 最後のパイプに注意してください。指定した文字列がファイルではなくコマンドであることをMuttに伝えます。 |
||
− | Note the pipe at the end. It tells Mutt that the specified string is not a file, but a command. |
||
+ | ==== Mutt を使ってコマンドラインからメールを送信 ==== |
||
− | ===URL を表示 & ウェブブラウザの起動=== |
||
+ | マニュアルページには、使用可能なすべてのコマンドとその使用方法が表示されますが、ここにいくつかの例を示します。 Mutt を使用して、.bash_profile を介したログイン、または通常の [[cron]] ジョブとしてトリガーされたアラート、ログ、またはその他のシステム情報を送信できます。 |
||
− | Your should start by creating a .mutt directory in $HOME if not done yet. There, create a file named macros. Insert the following: |
||
+ | |||
+ | メッセージを送信: |
||
+ | mutt -s "Subject" somejoeorjane@someserver.com < /var/log/somelog |
||
+ | |||
+ | 添付ファイルを付けてメッセージを送信: |
||
+ | mutt -s "Subject" somejoeorjane@someserver.com -a somefile < /tmp/sometext.txt |
||
+ | |||
+ | ==== HTML メールの作成 ==== |
||
+ | |||
+ | Mutt は WYSIWIG クライアントではないため、HTML はそのままソースコードを直接編集して扱うことができます。HTML 構文を使ってメールを書くだけです。例: |
||
+ | {{bc|<nowiki> |
||
+ | This is normal text<br> |
||
+ | <b>This is bold text</b></nowiki> |
||
+ | }} |
||
+ | メールを送信する前に、{{ic|edit-type}} コマンドを使って (デフォルトのショートカット: {{ic|Ctrl+t}})、{{ic|text/plain}} を {{ic|text/html}} に置き換えてください。 |
||
+ | |||
+ | {{Note| HTML 形式の電子メールは、多くの人々によって役に立たず、扱いにくく、問題を抱えていると見なされています。 Mutt は w3m や lynx のようなテキストブラウザーで HTML メールを読むことができますが、プレーンテキストの電子メールに比べて明らかに利点はありません。可能な場合は、HTML 電子メールを作成しないでください。}} |
||
+ | |||
+ | ==== 作成中に他のメールを表示 ==== |
||
+ | Mutt のよくある不満として、新しいメール (あるいは返信) を作成しているときに、現在のメールを閉じないと (後回しにしないと) 他のメールを開けないというものがあります。以下の方法で解決できます: |
||
+ | |||
+ | まず、通常通り Mutt を立ち上げてください。そして、別のターミナルウィンドウを起動します。そして次のコマンドで新しい Mutt を起動: |
||
+ | mutt -R |
||
+ | これで読み取り専用モードで Mutt が起動するので、他のメールを自由に閲覧することができます。2番目の Mutt は必ず読み取り専用モードで起動することを強く推奨します。衝突が発生してしまう可能性があるためです。 |
||
+ | |||
+ | {{Note|({{ic|c}} または {{ic|y}} を使用して) フォルダーを変更する場合、読み取り専用モードは保持されません。 代わりに、{{ic|Esc c}} を使用する必要があります。}} |
||
+ | |||
+ | {{Tip|上記の解決法では多少入力が必要になるため、キーボードショートカットに以下のコマンドをバインドすると良いでしょう (詳しくは[[特別なキーボードキー]]を参照): |
||
+ | $TERMINAL -e mutt -R |
||
+ | {{ic|$TERMINAL}} は使用しているターミナルに置き換えて下さい。}} |
||
+ | |||
+ | === 印刷 === |
||
+ | {{AUR|muttprint}} をインストールすることで印刷の品質を向上することができます。muttrc ファイルに以下の行を追加してください: |
||
+ | set print_command="/usr/bin/muttprint %s -p {PrinterName}" |
||
+ | |||
+ | === コンテンツの表示 === |
||
+ | |||
+ | ==== URL を表示 & ウェブブラウザの起動 ==== |
||
+ | まだ行っていない場合は、まず$ HOMEに.muttディレクトリを作成する必要があります。そこで、macrosという名前のファイルを作成します。以下を挿入します。 |
||
macro pager \cb <pipe-entry>'urlview'<enter> 'Follow links with urlview' |
macro pager \cb <pipe-entry>'urlview'<enter> 'Follow links with urlview' |
||
− | + | 次に {{AUR|urlview}} パッケージをインストールします。 |
|
+ | $ HOMEに.urlviewを作成し、以下を挿入します。 |
||
− | Create a .urlview in $HOME and insert the following: |
||
REGEXP (((http|https|ftp|gopher)|mailto)[.:][^ >"\t]*|www\.[-a-z0-9.]+)[^ .,;\t>">\):] |
REGEXP (((http|https|ftp|gopher)|mailto)[.:][^ >"\t]*|www\.[-a-z0-9.]+)[^ .,;\t>">\):] |
||
COMMAND <your-browser> %s |
COMMAND <your-browser> %s |
||
+ | pager でメールを読んでいるときにctrl + bを押すと、メールからすべての URL がリストされます。矢印キーで上下に移動し、目的の URL で Enter キーを押します。ブラウザが起動し、選択したサイトに移動します。 |
||
− | When you read an email on the pager, hitting ctrl+b will list all the urls from the email. Navigate up or down with arrow keys and hit enter on the desired url. Your browser will start and go to the selected site. |
||
+ | 一部のブラウザでは、正しく機能するために追加の引数が必要になります。たとえば、[[Luakit]] は Mutt の終了時に閉じます。 {{ic|-n}} パラメータを使用して、バックグラウンドにフォークする必要があります。 |
||
− | |||
− | Some browser will require additional arguments to work properly. For example, [[Luakit]] will close on Mutt exit. You need to fork it to background, using the {{ic|-n}} parameter: |
||
COMMAND luakit -n %s 2>/dev/null |
COMMAND luakit -n %s 2>/dev/null |
||
+ | {{ic|2>/dev/null}} はそれを静かにすることです。つまり、不要なメッセージの印刷を防止します。 |
||
− | The {{ic|2>/dev/null}} is to make it quiet, i.e. to prevent useless message printing where you do not want them to. |
||
+ | {{Note|urlview にはいくつかの欠点(たとえば、特定の電子メールエンコーディングを処理できないなど)かなり機能が不足しています(その他にも見つかったリンクのコンテキストを提供しません)より良い方法として、すべての電子メールエンコーディングを処理でき、リンクコンテキストを提供する [http://www.memoryhole.net/~kyle/extract_url/ extract_url.pl] もう1つは、リンクコンテキストを提供できるが、すべての電子メールエンコーディングを処理できない、 {{AUR|urlscan-git}} です。 どちらも urlview のドロップイン代替品ですが、extract_url には追加の構成変更の恩恵を受ける機能があります。}} |
||
− | {{Note|urlview has a few deficiencies (e.g. the inability to handle certain email encodings) and is fairly feature-bare (e.g. it does not provide context for links it finds). There are a couple alternatives that do better. One, which can handle all email encodings and provides link context, is [http://www.memoryhole.net/~kyle/extract_url/ extract_url.pl]. Another, which can also provide link context but cannot handle all email encodings, is {{AUR|urlscan-git}}. Both are drop-in replacements for urlview, though extract_url has features which benefit from additional configuration changes.}} |
||
− | ===HTML の表示=== |
+ | ==== HTML の表示 ==== |
+ | HTML の本文を外部の HTML プログラムに渡してからダンプすることで、Eメールの表示を均一にして目立たなくすることができます。ここでは、{{Pkg|lynx}}、 {{Pkg|w3m}}、 {{Pkg|elinks}} の3つのプログラムについて説明します(選択したパッケージが [[pacman|installed]]) されていることを確認してください)。 |
||
− | It is possible to pass the html body to an external HTML program and then dump it, keeping email viewing uniform and unobtrusive. Three programs are described here: {{Pkg|lynx}}, {{Pkg|w3m}} and {{Pkg|elinks}} (make sure the selected package is [[pacman|installed]]). |
||
− | + | {{ic|~/.mutt/mailcap}} が存在しない場合は、作成して以下を保存する必要があります。 |
|
text/html; lynx -assume_charset=%{charset} -display_charset=utf-8 -dump %s; nametemplate=%s.html; copiousoutput |
text/html; lynx -assume_charset=%{charset} -display_charset=utf-8 -dump %s; nametemplate=%s.html; copiousoutput |
||
+ | または、w3m の場合 |
||
− | or, in case of w3m, |
||
text/html; w3m -I %{charset} -T text/html; copiousoutput; |
text/html; w3m -I %{charset} -T text/html; copiousoutput; |
||
+ | または、elinks の場合 |
||
− | or, in case of elinks, |
||
text/html; elinks -dump ; copiousoutput; |
text/html; elinks -dump ; copiousoutput; |
||
+ | muttrc を編集して以下を追加します。 |
||
− | Edit muttrc and add the following, |
||
set mailcap_path = ~/.mutt/mailcap |
set mailcap_path = ~/.mutt/mailcap |
||
+ | lynx、w3m、elinks で HTML メッセージを自動的に開くには、次の行をmuttrcに追加します。 |
||
− | To automatically open HTML messages in lynx, w3m or elinks add this additional line to the muttrc: |
||
auto_view text/html |
auto_view text/html |
||
+ | この方法の利点は、html ボディをソースとして表示したり、開いたりする代わりに、 |
||
− | The beauty of this is, instead of seeing an html body as source or being opened |
||
+ | 別のプログラム (この場合は lynx ) を使うと、フォーマットされた内容を直接見ることができます。 |
||
− | by a separate program, in this case lynx, you see the formatted content directly, |
||
+ | {{aur|urlview}} がインストールされていれば、電子メール内の URL リンクを {{ic|Ctrl+b}} で表示できます。 |
||
− | and any url links within the email can be displayed with {{ic|Ctrl+b}}, assuming you have {{aur|urlview}} installed. |
||
+ | |||
+ | 複数のエンコーディングや別のエンコーディングの電子メールをたくさん受信した場合、Mutt はデフォルトですべての電子メールを html として扱うことができます。これを回避するには、 ~/.muttrc に次の変数を追加します。muttrc は、Mutt が利用可能な場合はデフォルトで text に設定され、電子メールでテキストバージョンが利用できない場合にのみ w3m/lynx を使用します。 |
||
− | If you receive many emails with multiple or alternate encodings Mutt may default to treating every email as html. To avoid this, add the following variable to your ~/.muttrc to have Mutt default to text when available and use w3m/lynx only when no text version is availble in the email: |
||
alternative_order text/plain text/html |
alternative_order text/plain text/html |
||
+ | 一部の HTML メールは、テキストベースの Web ブラウザで正しく表示されない場合があります。このような場合、フォールバックソリューションとして、キーをバインドしてグラフィカルブラウザを開くことができます。次のマクロは、環境で定義された Web ブラウザーの添付ファイルビューから選択された HTML メールを開きます。 {{ic|~/.cache/mutt/}} フォルダーを自由に変更してください)。 |
||
− | Some HTML mails may not display correctly in a text-based web browser. As a fallback solution, you can bind a key to open a graphical browser in such cases. |
||
− | The following macro will open the HTML mail selected from the attachment view in the web browser defined in the environment. (Feel free to adapt the {{ic|~/.cache/mutt/}} folder). |
||
macro attach 'V' "<pipe-entry>cat >~/.cache/mutt/mail.html && $BROWSER ~/.cache/mutt/mail.html && rm ~/.cache/mutt/mail.html<enter>" |
macro attach 'V' "<pipe-entry>cat >~/.cache/mutt/mail.html && $BROWSER ~/.cache/mutt/mail.html && rm ~/.cache/mutt/mail.html<enter>" |
||
+ | ==== メッセージビューのフィルタリング ==== |
||
− | ===Mutt と Vim=== |
||
+ | |||
− | *To limit the width of text to 72 characters, edit your .[[vim]]rc file and add: |
||
+ | {{ic|limit}} コマンド (既定のショートカット:{{ic|l}}) を使用すると、表示をパターンおよび特定のプロパティに一致する電子メールに制限できます。 |
||
+ | |||
+ | ヘッダーに "foo" が含まれているすべての電子メールを表示するには、"foo" と入力するだけで完了です。フィルタを削除するには、"all" キーワードを使用します。 |
||
+ | |||
+ | フラグの設定されたすべてのメッセージを表示するには、 |
||
+ | ~F |
||
+ | サイズが1MB以上またはjohndoeからの未読メッセージをすべて表示するには、次を使用します。 |
||
+ | ~U (~z 1M- | ~f johndoe) |
||
+ | |||
+ | すべての可能なパターンは公式マニュアルにリストされています。 [http://www.mutt.org/doc/manual/manual-4.html#ss4.2 official manual] |
||
+ | |||
+ | ==== 会話のグループ化 ==== |
||
+ | |||
+ | 既定の並べ替え順序は、日付順です。並べ替えオプションを変更するには、{{ic|sort-mailbox}} コマンド (デフォルトキー: {{ic|o}}) を使用してください。 |
||
+ | スレッドごとにEメールをグループ化することができます。この場合、スレッドのソート方法とスレッド内でのソート方法を定義できます。 |
||
+ | |||
+ | 次の例では、スレッドは最後の電子メールの日付に従って並べ替えられます。 |
||
+ | {{hc|muttrc|<nowiki> |
||
+ | set sort=threads |
||
+ | set sort_aux=last-date-received |
||
+ | </nowiki>}} |
||
+ | |||
+ | ===mutt とエディタの設定=== |
||
+ | |||
+ | ====vim==== |
||
+ | *テキストの幅を72文字に制限するには、.vimrc ファイルを編集して以下を追加します。 |
||
au BufRead /tmp/mutt-* set tw=72 |
au BufRead /tmp/mutt-* set tw=72 |
||
+ | *もう1つの選択肢は、Vim のメールファイルタイププラグインを使用して、72文字幅以外のメール中心のオプションを有効にすることです。 ~/.vim/filetype.vim を編集し、存在しない場合は作成し、次を追加します。 |
||
− | *Another choice is to use Vim's mail filetype plugin to enable other mail-centric options besides 72 character width. Edit {{ic|~/.vim/filetype.vim}}, creating it if unpresent, and add: |
||
{{bc| |
{{bc| |
||
augroup filetypedetect |
augroup filetypedetect |
||
509行目: | 555行目: | ||
}} |
}} |
||
+ | *別の tmp ディレクトリを設定するには、 ~/.tmp 次のように muttrc に行を追加します。 |
||
− | *To set a different tmp directory, e.g. ~/.tmp, add a line to your muttrc as follows: |
||
− | set tmpdir="~/.tmp" |
||
+ | *変更されたテキストを再フォーマットするには、Vim のコンテキストヘルプを参照してください。 |
||
− | *To reformat a modified text see the Vim context help |
||
:h 10.7 |
:h 10.7 |
||
− | === |
+ | ====GNU nano==== |
+ | [ [nano] ] もMuttで使える素晴らしいコンソールエディタです。 |
||
− | [[nano]] is another nice console editor to use with Mutt. |
||
+ | テキストの幅を72文字に制限するには、を編集します。nanorcファイルに以下を追加します。 |
||
− | To limit the width of text to 72 characters, edit your .nanorc file and add: |
||
− | + | set fill 72 |
|
+ | また、muttrcファイルでは、編集を開始する行を指定して、メールヘッダーをスキップできます。 |
||
− | Also, in muttrc file, you can specify the line to start editing so that you will skip the mail header: |
||
− | + | set editor="nano +7" |
|
− | === |
+ | ====Emacs==== |
[[Emacs]] には ''mail'' と ''message'' メジャーモードが存在します。Mutt から Emacs が呼び出されたときに自動的に mail-mode に切り替えるには、{{ic|.emacs}} に以下を追加: |
[[Emacs]] には ''mail'' と ''message'' メジャーモードが存在します。Mutt から Emacs が呼び出されたときに自動的に mail-mode に切り替えるには、{{ic|.emacs}} に以下を追加: |
||
{{hc|.emacs|<nowiki> |
{{hc|.emacs|<nowiki> |
||
536行目: | 581行目: | ||
}} |
}} |
||
− | === |
+ | ===表示設定=== |
+ | |||
+ | ====カラー==== |
||
{{ic|.muttrc}} ファイルにサンプルのカラー定義を追加してから自由にカスタマイズしてください: |
{{ic|.muttrc}} ファイルにサンプルのカラー定義を追加してから自由にカスタマイズしてください: |
||
$ cat /usr/share/doc/mutt/samples/colors.linux >> ~/.muttrc |
$ cat /usr/share/doc/mutt/samples/colors.linux >> ~/.muttrc |
||
+ | これらの各設定で実際に生成される色は、 [[Xresources|~/Xresources]] ファイルを参照してください。 |
||
− | The actual color each of these settings will produce depends on the colors set in your [[Xresources|~/.Xresources]] file. |
||
+ | また、カラーを含む任意のファイルをソースにすることもできます(テーマファイルとして機能します) |
||
− | Alternatively, you can source any file you want containing colors (and thus act as a theme file): |
||
{{bc| |
{{bc| |
||
source ~/.mutt/colors.zenburn |
source ~/.mutt/colors.zenburn |
||
548行目: | 595行目: | ||
テーマのサンプルは [http://nongeekshandbook.blogspot.be/2009/03/mutt-color-configuration.html] を見てください。 |
テーマのサンプルは [http://nongeekshandbook.blogspot.be/2009/03/mutt-color-configuration.html] を見てください。 |
||
− | ===インデックスフォーマット=== |
+ | ====インデックスフォーマット==== |
+ | ここでは、{{ic|.muttrc}}を使用して、インデックスフォーマット (フォルダビューに表示される列) をカスタマイズします。 |
||
− | Here follows a quick example to put in your {{ic|.muttrc}} to customize the Index Format, i.e. the columns displayed in the folder view. |
||
{{bc|<nowiki> |
{{bc|<nowiki> |
||
set date_format="%y-%m-%d %T" |
set date_format="%y-%m-%d %T" |
||
559行目: | 606行目: | ||
===="Sent" フォルダビューで送信者ではなく受信者を表示==== |
===="Sent" フォルダビューで送信者ではなく受信者を表示==== |
||
+ | デフォルトでは、Mutt は送信者をインデックスビューに表示します。ほとんどのフォルダでは問題ありませんが、送信した電子メールのコピーを保存するフォルダには常に名前が表示されるので、あまり役に立ちません。 |
||
− | By default Mutt will display the sender in the index view. It is fine for most folders, but rather useless for the one where you store a copy of your sent e-mails since it will always display your name. |
||
− | + | これを解決する最も簡単な方法は、muttrc に [https://dev.mutt.org/trac/wiki/UseCases/MultiAccounts#Settinguptheaddresses:alternates alternative email addresses] をセットアップすることです。送信者のアドレスがあなたの別のメールアドレスのどれかと一致すれば、 Mutt は自動的にインデックスに "宛先<受信者>" と表示します。 |
|
====可変幅のカラム==== |
====可変幅のカラム==== |
||
+ | ウィンドウのサイズを変更すると、送信者などの一部のフィールドに未使用のスペースが残っている間に、件名が切り捨てられる場合があります。 tput cols へのシェル呼び出しを使用して、端末でサポートされている列の最大数(つまり、幅)を取得できます。この値を使用して、送信者や件名などのフィールドに幅の割合を設定できます。 |
||
− | If you resize the window, the subject might get truncated while there is still unused space left for some fields, like for the sender. |
||
− | You can get the maximum number of columns supported by your terminal (i.e. the width) using a shell call to {{ic|tput cols}}. With this value, you can set a percentage of the width to fields like Sender and Subject. |
||
+ | 上記のフォルダーフックとサイドバーの幅 24 を使用した例 |
||
− | Example using the above folder-hook and a sidebar width of 24: |
||
{{hc|muttrc|<nowiki> |
{{hc|muttrc|<nowiki> |
||
## From field gets 30% of remaining space, Subject gets 70%. |
## From field gets 30% of remaining space, Subject gets 70%. |
||
580行目: | 626行目: | ||
}} |
}} |
||
− | + | "must" フック内から変数 {{ic|my_col_from}} と {{ic|my_col_from}} を設定します。そうしないと、カラム値は再計算されません。 |
|
+ | フォルダを変更せずにインデックスフォーマットを強制的に再計算するバインディングを追加できます。 |
||
− | We can add a binding to force re-computing the index format without changing folder: |
||
{{hc|muttrc|<nowiki> |
{{hc|muttrc|<nowiki> |
||
− | macro index,pager \CL "<enter-command>$my_index_format_pre"F"$my_index_format_post<enter><redraw-screen>" |
+ | macro index,pager \CL "<enter-command>$my_index_format_pre"F"$my_index_format_post<enter><redraw-screen>"</nowiki>}} |
+ | |||
− | </nowiki> |
||
+ | ====サイドバー==== |
||
− | }} |
||
+ | |||
+ | サイドバーの設定例は {{ic|/usr/share/doc/mutt/samples/sample.muttrc-sidebar}} にあり、キーバインドも定義されています。あなたの mutt 設定ファイルにコピー・編集したり source してください。{{ic|1=set sidebar_visible = yes}} に必ず変更してください。 |
||
+ | |||
+ | 以下を追加することでサイドバーの表示を切り替えられます: |
||
+ | {{bc|<nowiki> |
||
+ | bind index,pager B sidebar-toggle-visible |
||
+ | </nowiki>}} |
||
+ | |||
+ | {{Note|{{ic|sidebar_sort_method}} オプションを使用しない場合、{{ic|mailboxes}} オプションを使用すると、フォルダは {{ic|mailboxes}} に設定された順序で表示されます。}} |
||
+ | |||
+ | {{ic|sidebar_sort_method}} オプションを使用しない場合、{{ic|mailboxes}} オプションを使用すると、フォルダは {{ic|mailboxes}} に設定された順序で表示されます。 |
||
+ | |||
+ | {{Tip|異なるメールボックス間に区切り記号を追加するには、フォルダの一覧に偽のフォルダを追加します、例 |
||
+ | mailboxes "+-- My mailbox -----------" }} |
||
+ | |||
+ | ==== ページャビューの上にインデックスを表示 ==== |
||
+ | |||
+ | {{ic|muttrc}} で以下の変数を設定してください: |
||
+ | set pager_index_lines=10 |
||
===連絡先の管理=== |
===連絡先の管理=== |
||
====アドレスのエイリアス==== |
====アドレスのエイリアス==== |
||
+ | Mutt では''エイリアス''を使って連絡先を管理します。エイリアスは '''nickname [longname] <address>''' です。 |
||
− | ''Aliases'' is the way Mutt manages contacts. |
||
+ | * The '''nickname''' は Mutt と入力すると連絡先が表示される。一言だけで、覚えやすいはずです。 |
||
− | An alias is '''nickname [longname] <address>'''. |
||
+ | * The '''longname''' はオプションです。いくつかの単語かもしれません。 |
||
− | * The '''nickname''' is what you will type in Mutt to get your contact address. One word only, and should be easy to remember. |
||
+ | * An '''<address>''' は有効な形式 (例{{ic|@}}) である必要があります。 |
||
− | * The '''longname''' is optional. It may be several words. |
||
+ | 実に簡単ですこれを {{ic|.muttrc}} に追加します。 |
||
− | * An '''<address>''' must be in a valid form (i.e. with an {{ic|@}}). |
||
− | |||
− | It is quite simple indeed. Add this to {{ic|.muttrc}}: |
||
{{bc|1= |
{{bc|1= |
||
set alias_file = "~/.mutt/aliases" |
set alias_file = "~/.mutt/aliases" |
||
605行目: | 668行目: | ||
}} |
}} |
||
+ | 説明 |
||
− | Explanation: |
||
+ | |||
− | * {{ic|alias_file}} is the file where the information is getting stored when you add an alias from within Mutt. |
||
+ | * {{ic|alias_file}} は、Mutt 内からエイリアスを追加したときに情報が保存されるファイルです。 |
||
− | * {{ic|sort_alias}} specifies which field to use to sort the alias list when displayed in Mutt. Possible values: alias, address. |
||
+ | * {{ic|sort_alias}} は、Mutt で表示されるエイリアスリストのソートに使用するフィールドを指定する。使用可能な値 :alias,address |
||
− | * {{ic|reverse_alias}} sorts in reverse order if set to yes. |
||
+ | * {{ic|reverse_alias}} yes に設定すると、メッセージの送信者と一致するエイリアスが見つかった場合に、インデックスメニューにエイリアスの「個人的な」名が表示されます。 |
||
− | * {{ic|source $alias_file}} tells Mutt to read aliases on startup. Needed for auto-completion. |
||
+ | * {{ic|source $alias_file}} は Mutt に起動時にエイリアスを読むように指示する。自動補完に必要です。 |
||
+ | {{ic|To:}} がフルアドレスではなくエイリアスを書き込んでいることを示すメッセージが表示されたらあとはこれで完了です。この機能の利点は、{{ic|Tab}} を使用してエイリアスを自動補完できることです。 |
||
− | Now all you have to do when prompted {{ic|To:}} is writing the alias instead of the full address. The beauty of it is that you can auto-complete the alias using {{ic|Tab}}. |
||
+ | 間違った文字列や空の文字列を自動補完すると完全なリストが表示されます。通常どおりにエイリアスを選択するか、インデックス番号を入力します。 |
||
− | Autocompleting a wrong or an empty string will display the full list. You can select the alias as usual, or by typing its index number. |
||
+ | エイリアスを作成するには、次の2つの方法があります。 |
||
− | There are two ways to create aliases: |
||
+ | * Mutt では、対象者のメールが選択されていれば {{ic|a}} を押す。 |
||
− | * From Mutt, press {{ic|a}} when an e-mail of the targetted person if selected. |
||
+ | * alias_file を手動で編集します。構文は実に単純です。 |
||
− | * Edit the alias_file manually. The syntax is really simple: |
||
{{bc| |
{{bc| |
||
alias nickname Long Name <my-friend@domain.tld> |
alias nickname Long Name <my-friend@domain.tld> |
||
625行目: | 689行目: | ||
{{pkg|abook}} は連絡先管理のための専用のスタンドアロンプログラムです。とてもシンプルなテキストベースのインターフェースで人間が読めるプレーンテキストのデータベースに連絡先が保存されます。そして連絡先のプロパティは自由に拡張できます (誕生日, 住所, FAX など)。 |
{{pkg|abook}} は連絡先管理のための専用のスタンドアロンプログラムです。とてもシンプルなテキストベースのインターフェースで人間が読めるプレーンテキストのデータベースに連絡先が保存されます。そして連絡先のプロパティは自由に拡張できます (誕生日, 住所, FAX など)。 |
||
+ | Abook は、Mutt とのインターフェースとして特別に設計されているため、Mutt の内部エイリアスの完全でより機能的な置き換えとして機能できます。 エイリアスの代わりに Abook を使用する場合は、{{ic|.muttrc}} のエイリアス構成を削除して、次を追加します。 |
||
− | Abook is specifically designed to be interfaced with Mutt, so that it can serve as a full, more featured replacement of Mutt internal aliases. If you want to use Abook instead of aliases, remove the aliases configuration in {{ic|.muttrc}} and add this: |
||
{{hc|muttrc|<nowiki> |
{{hc|muttrc|<nowiki> |
||
645行目: | 709行目: | ||
設定オプションについては {{ic|~/.goobookrc}} を見てください。最低でも、'''email''' と '''password''' は入力する必要があります。 |
設定オプションについては {{ic|~/.goobookrc}} を見てください。最低でも、'''email''' と '''password''' は入力する必要があります。 |
||
− | {{Note|Google アカウントで |
+ | {{Note|Google アカウントで二段階認証を有効にしている場合、アプリケーションパスワードを生成する必要があります。}} |
+ | エイリアスの代わりに Goobook を使用する場合は、{{ic|.muttrc}} を追加します。 |
||
− | If you want to use Goobook instead of aliases, remove any alias configuration in {{ic|.muttrc}} and add: |
||
{{hc|muttrc|<nowiki> |
{{hc|muttrc|<nowiki> |
||
## GooBook |
## GooBook |
||
655行目: | 719行目: | ||
</nowiki>}} |
</nowiki>}} |
||
+ | mutt 内で電子メールメッセージを作成すると、{{ic|Tab}} が Google の連絡先を検索するようになりました。メッセージの表示中に {{ic|a}} 送信者を Google の連絡先に追加します。 |
||
− | When composing an email message within mutt, {{ic|Tab}} will now search your Google contacts. While viewing messages {{ic|a}} will add the sender to Google contacts. |
||
+ | |||
+ | ==== Khard ==== |
||
+ | {{Pkg|khard}} は、ローカルに保存された carddav アドレス帳エントリを使用するコマンドラインアドレス帳です。 {{Pkg|vdirsyncer}} を使用して、それらを CardDAV サーバーと同期できます。 mutt での統合は、abook に似ています。 [https://khard.readthedocs.io/en/latest/scripting.html#mutt Khardのドキュメントを参照してください] |
||
===複数の送信者アカウントの管理=== |
===複数の送信者アカウントの管理=== |
||
+ | 複数の送信者アカウントを使用する場合は、特定の送信者アカウントを受信者に自動的に関連付けることができます。{{AUR|mutt-vid}} は、送信された電子メールをスキャンして、特定の受信者に関連づけられた最新の「開始日」詳細情報を探し、mutt から source へのファイルに保存します。次回この受信者に電子メールを送信すると、mutt は以前に使用したのと同じ電子メールアドレスと実名を持つ送信フックを自動的に起動します。詳細は mutt-vid の[https://github.com/protist/mutt-vid ホームページ]を参照してください。 |
||
− | If you use multiple sender accounts, you can automatically associate a specific sender account with a recipient. {{AUR|mutt-vid}} scans sent emails for the most recent "From" details associated with specific recipients, saving these in a file for mutt to source. The next time you email this recipient, mutt will automatically invoke a send-hook with the same email address and real name that you used previously. See mutt-vid's [https://github.com/protist/mutt-vid homepage] for more details. |
||
===手動で IMAP のメール取得をリクエスト=== |
===手動で IMAP のメール取得をリクエスト=== |
||
+ | 次の自動 IMAPフェッチ(または、有効にしていない場合)を待機しない場合は、手動でメールをフェッチできます。 |
||
− | If you do not want to wait for the next automatic IMAP fetching (or if you did not enable it), you might want to fetch mails manually. |
||
− | + | そのための mutt コマンド {{ic|imap-fetch-mail}} があります。 |
|
+ | あるいは、キーにバインドすることもできます。 |
||
− | Alternatively, you could bind it to a key: |
||
bind index "^" imap-fetch-mail |
bind index "^" imap-fetch-mail |
||
===カラー化によって巨大なフォルダのインデックスが遅くなる (IMAP)=== |
===カラー化によって巨大なフォルダのインデックスが遅くなる (IMAP)=== |
||
+ | 正規表現によるインデックスの強調表示は便利ですが、正規表現がメッセージの本文をチェックすると、フォルダーの表示が遅くなる可能性があります。 |
||
− | Index highlighting by regex is nice, but can lead to slow folder viewing if your regex checks the body of the message. |
||
+ | フォルダーフックを使用して、たとえば受信トレイ(メールボックスを効率的に空にした場合)の強調表示のみを行います。 |
||
− | Use folder-hook for only highlighting in for example the inbox (if you manage to empty your mailbox effiently): |
||
folder-hook . 'uncolor index "~b \"Hi Joe\" ~R !~T !~F !~p !~P"' |
folder-hook . 'uncolor index "~b \"Hi Joe\" ~R !~T !~F !~p !~P"' |
||
681行目: | 748行目: | ||
set sleep_time = 0 |
set sleep_time = 0 |
||
}} |
}} |
||
− | |||
− | ===Mutt を使ってコマンドラインからメールを送信=== |
||
− | Man pages will show all available commands and how to use them, but here are a couple of examples. You could use Mutt to send alerts, logs or some other system information, triggered by login through .bash_profile, or as a regular [[cron]] job. |
||
− | |||
− | メッセージを送信: |
||
− | mutt -s "Subject" somejoeorjane@someserver.com < /var/log/somelog |
||
− | |||
− | 添付ファイルを付けてメッセージを送信: |
||
− | mutt -s "Subject" somejoeorjane@someserver.com -a somefile < /tmp/sometext.txt |
||
− | |||
− | ===HTML メールの作成=== |
||
− | |||
− | Since Mutt has nothing of a WYSIWIG client, HTML is quite straightforward, and you can do much more than with all WYSIWIG mail clients around since you edit the source code directly. |
||
− | Simply write your mail using HTML syntax. For example: |
||
− | {{bc|<nowiki> |
||
− | This is normal text<br> |
||
− | <b>This is bold text</b></nowiki> |
||
− | }} |
||
− | Now before sending the mail, use the {{ic|edit-type}} command (default shortcut {{ic|Ctrl+t}}), and replace {{ic|text/plain}} by {{ic|text/html}}. |
||
− | |||
− | {{Note|HTML e-mails are regarded by many people as useless, cumbersome, and subject to reading issues. Mutt can read HTML mails with a text browser like w3m or lynx, but it has clearly no advantage over a plain-text e-mail. You should avoid writing HTML e-mails when possible.}} |
||
− | |||
− | ===作成中に他のメールを表示=== |
||
− | Mutt のよくある不満として、新しいメール (あるいは返信) を作成しているときに、現在のメールを閉じないと (後回しにしないと) 他のメールを開けないというものがあります。以下の方法で解決できます: |
||
− | |||
− | まず、通常通り Mutt を立ち上げてください。そして、別のターミナルウィンドウを起動します。そして次のコマンドで新しい Mutt を起動: |
||
− | mutt -R |
||
− | これで読み取り専用モードで Mutt が起動するので、他のメールを自由に閲覧することができます。2番目の Mutt は必ず読み取り専用モードで起動することを強く推奨します。衝突が発生してしまう可能性があるためです。 |
||
− | |||
− | {{Note|When changing folders (with {{ic|c}} or {{ic|y}}) the read-only mode is not preserved. Instead {{ic|Esc c}} has to be used.}} |
||
− | |||
− | {{Tip|上記の解決法では多少入力が必要になるため、キーボードショートカットに以下のコマンドをバインドすると良いでしょう (詳しくは[[特別なキーボードキー]]を参照): |
||
− | $TERMINAL -e mutt -R |
||
− | {{ic|$TERMINAL}} は使用しているターミナルに置き換えて下さい。}} |
||
===メールのアーカイブ化=== |
===メールのアーカイブ化=== |
||
+ | 電子メールを読むときは、答える、フラグを付ける、アーカイブする、または削除するという4つの選択肢があります。 これを念頭に置いている場合は、受信トレイをスリムに保ちこのマクロ( Gmail 用に設定)に適合させることができます。 |
||
− | When you read an e-mail, you have four choices: Answer it, Flag it, Archive it or Delete it. If you have this in mind, you can keep your inbox slim and fit with this macro (set up for Gmail): |
||
macro index \' "<tag-pattern>~R !~D !~F<enter>\ |
macro index \' "<tag-pattern>~R !~D !~F<enter>\ |
||
<tag-prefix><save-message>+[Gmail]/All <enter>" \ |
<tag-prefix><save-message>+[Gmail]/All <enter>" \ |
||
"Archive" |
"Archive" |
||
− | |||
− | ===Mutt-Sidebar=== |
||
− | |||
− | Arch ではデフォルトでサイドバーが同梱されています。起動時にサイドバーの表示を選択するか、キーを使って手動で表示させることができます: |
||
− | {{bc|<nowiki> |
||
− | set sidebar_visible = yes |
||
− | bind index,pager B sidebar-toggle-visible |
||
− | </nowiki>}} |
||
− | |||
− | You also probabaly need some shortcuts to navigate in the bar: |
||
− | {{bc|<nowiki> |
||
− | # Ctrl-n, Ctrl-p to select next, previous folder. |
||
− | # Ctrl-o to open selected folder. |
||
− | bind index,pager \CP sidebar-prev |
||
− | bind index,pager \CN sidebar-next |
||
− | bind index,pager \CO sidebar-open |
||
− | </nowiki>}} |
||
− | |||
− | {{Note|You ''must'' set the {{ic|mailboxes}} variables or the {{ic|imap_check_subscribed}} to tell the sidebar which folder should be displayed. See the [[#mailboxes|mailboxes]] section.}} |
||
− | |||
− | Note that with the {{ic|mailboxes}} option, folders appear in the order they were set to {{ic|mailboxes}} if you do not use the {{ic|sidebar_sort_method}} option. |
||
− | |||
− | If you have trouble with truncated names, set the option |
||
− | set sidebar_short_path = yes |
||
− | |||
− | Finally, you may want to add a separator between different mailboxes. The sidebar patch does not currently provide any kind of separator option. A simple (and dirty) workaround is to add a fake folder to the list of folders: |
||
− | mailboxes "+-- My mailbox -----------" |
||
− | The dashes are not required, they are here just for fancy output. |
||
===他のコンピュータにメールを移動=== |
===他のコンピュータにメールを移動=== |
||
+ | メールを新しいマシンに転送する場合(コピー&ペースト)など、Muttが移行したファイルを読み取れるようにするには、ヘッダーキャッシュ(上記の構成に従っている場合は {{ic|~/.cache/mutt}} のようなファイルまたはフォルダー)を削除して、Mutt が移行したメールを読めるようにしてください、そうしないと Mutt はフリーズするかもしれません。 |
||
− | In case you are transfering your mails to a new machine (copy&paste), you probably need to delete the header cache (a file or folder like {{ic|~/.cache/mutt}} if you followed the above configuration) to make Mutt able to read your migrated E-Mails. Otherwise Mutt may freeze. |
||
+ | ヘッダキャッシュ用にフォルダを作成した場合、すべてのメールボックスに独自のキャッシュファイルが作成されるため、すべてを削除せずにキャッシュを個別に削除できます。 |
||
− | Note that if you had a folder created for you header cache, all mailboxes will have their own cache file, so you can delete caches individually without having to remove everything. |
||
− | |||
− | === メッセージビューのフィルタリング === |
||
− | |||
− | You can restrict the view to e-mails matching a pattern and specific properties with the {{ic|limit}} command (default shortcut: {{ic|l}}). |
||
− | |||
− | To view all e-mails containing "foo" in the header, simply write "foo" and you are done. To remove the filter, use the "all" keyword. |
||
− | |||
− | To view all flagged messages, use |
||
− | ~F |
||
− | To view all unread messages that are either of size ≥1MB or from johndoe, use |
||
− | ~U (~z 1M- | ~f johndoe) |
||
− | |||
− | All possible patterns are listed in the [http://www.mutt.org/doc/manual/manual-4.html#ss4.2 official manual]. |
||
− | |||
− | === ページャビューの上にインデックスを表示 === |
||
− | |||
− | {{ic|muttrc}} で以下の変数を設定してください: |
||
− | set pager_index_lines=10 |
||
=== 添付ファイルを保存するデフォルトフォルダ === |
=== 添付ファイルを保存するデフォルトフォルダ === |
||
779行目: | 766行目: | ||
alias mutt='cd ~/attachments && mutt' |
alias mutt='cd ~/attachments && mutt' |
||
− | |||
− | === PGP で署名・暗号化されたメール === |
||
− | |||
− | The official Mutt package is compiled with GPGME support. If you have a pair of keys in your [[GnuPG]] keyring, then it suffices to add this: |
||
− | |||
− | {{hc|.muttrc|<nowiki> |
||
− | set crypt_use_gpgme=yes |
||
− | </nowiki>}} |
||
− | |||
− | For convenience, you can set further PGP settings: |
||
− | |||
− | {{hc|.muttrc|<nowiki> |
||
− | set crypt_replysign=yes |
||
− | set crypt_replysignencrypted=yes |
||
− | set pgp_timeout=3600 |
||
− | </nowiki>}} |
||
− | |||
− | See the {{ic|pgp_*}} and {{ic|crypt_*}} options in {{ic|muttrc(5)}}. |
||
− | |||
− | To be able to view the encrypted message to others, add either {{ic|encrypt-to}} or {{ic|hidden-encrypt-to}} in your {{ic|~/.gnupg/gpg.conf}}. |
||
=== ページャの挙動 === |
=== ページャの挙動 === |
||
+ | 次のページに移動するときにコンテキスト行を表示します: |
||
− | Show context lines when going to next page: |
||
set pager_context=3 |
set pager_context=3 |
||
+ | 次のメールを表示する代わりに最後で停止します: |
||
− | Stop at the end instead of displaying next mail: |
||
set pager_stop=yes |
set pager_stop=yes |
||
812行目: | 779行目: | ||
=== クイック返信 === |
=== クイック返信 === |
||
+ | デフォルトでは、Mutt はメールに返信するときに受信者と件名の確認を求めます。回答に元のメールを含めるかどうかも尋ねられます。常にデフォルト値を使用することを想定している場合は、以下の質問をスキップするように Mutt を設定できます: |
||
− | By default Mutt will ask to confirm the recipient and the subject when you reply to an e-mail. |
||
− | It will also ask if you want to include the original mail in your answer. |
||
− | If you assume you will always stick to the default values, you can set up Mutt to skip these questions: |
||
{{hc|muttrc|<nowiki> |
{{hc|muttrc|<nowiki> |
||
821行目: | 786行目: | ||
</nowiki>}} |
</nowiki>}} |
||
+ | 送信する前に、受信者と件名を編集できます。 |
||
− | You can still edit the recipient and the subject before sending. |
||
=== グループ返信のメールアドレスを無視 === |
=== グループ返信のメールアドレスを無視 === |
||
+ | CC されたメールにグループ返信すると、Mutt の受信者リストにメールアドレスが含まれます。 Mutt にいくつかのアドレスを無視するように頼むことができます: |
||
− | Mutt will include your e-mail address(es) in the recipient list when you group-reply to a mail you were CC'ed. |
||
− | You can ask Mutt to ignore some addresses with: |
||
alternates mail1@server1|mail2@server2|... |
alternates mail1@server1|mail2@server2|... |
||
− | |||
− | === 会話のグループ化 === |
||
− | |||
− | The default sort order is by date. Use the {{ic|sort-mailbox}} command (default key: {{ic|o}}) to change the sorting option. |
||
− | You can group e-mails by conversation/thread, in which case you can define how to sort threads and how to sort within a thread. |
||
− | |||
− | In the following example, threads are sorted according to the date of their last e-mail. |
||
− | |||
− | {{hc|muttrc|<nowiki> |
||
− | set sort=threads |
||
− | set sort_aux=last-date-received |
||
− | </nowiki>}} |
||
=== IMAP メッセージキャッシュ === |
=== IMAP メッセージキャッシュ === |
||
+ | 組み込みの IMAP サポートを使用する場合、電子メールはデフォルトでメモリにフェッチされます。大きなメールを数回取得すると、 IMAP サーバーから何度もダウンロードされます。 または、フェッチしたすべてのメッセージをディスクに保存するように Mutt に要求することもできます: |
||
− | When using the built-in IMAP support, e-mails are fetched in memory by default. Retrieving a big e-mail several times will download it from your IMAP server that many times. |
||
− | |||
− | Alternatively, you can ask Mutt to store all fetched messages on disk: |
||
{{hc|muttrc|<nowiki> |
{{hc|muttrc|<nowiki> |
||
set message_cachedir=~/.cache/mutt/messages |
set message_cachedir=~/.cache/mutt/messages |
||
</nowiki>}} |
</nowiki>}} |
||
+ | これにより、大きな添付ファイルがある場合でも、 (フォルダーが存在している必要があります) 将来の検索が瞬時に行われます。 たとえば、50MB の制限を超える最も古い電子メールからキャッシュを削除する場合は、次のようなスクリプトを使用できます: |
||
− | (The folder must exist.) This will make any future retrieval instantaneous, even with big attachments. |
||
− | |||
− | If you want to purge the cache from its oldest e-mails exceeding a limit of, say, 50MB, you can use a script like the following: |
||
{{hc|~/.mutt/purgecache.sh|<nowiki> |
{{hc|~/.mutt/purgecache.sh|<nowiki> |
||
872行目: | 820行目: | ||
</nowiki>}} |
</nowiki>}} |
||
+ | 起動時にそれを呼び出します: |
||
− | and call it on startup: |
||
{{hc|muttrc|<nowiki> |
{{hc|muttrc|<nowiki> |
||
878行目: | 826行目: | ||
source "~/.mutt/purgecache.sh '$message_cachedir'|" |
source "~/.mutt/purgecache.sh '$message_cachedir'|" |
||
</nowiki>}} |
</nowiki>}} |
||
+ | |||
+ | === 添付ファイルを開くか、バックグラウンドでHTMLメールを表示する === |
||
+ | |||
+ | デフォルトでは、mutt の添付ファイルを開くと mutt がブロックされます。{{ic|~/.mutt/mailcap}} を編集して {{ic|&}} を追加すると、mutt はバックグラウンドで [[デフォルトアプリケーション]] の1つを起動します。[[xdg-open]] を例にとると、 |
||
+ | |||
+ | text/html; xdg-open %s &> /dev/null &; nametemplate=%s.html |
||
+ | application/*; xdg-open %s &> /dev/null &; |
||
+ | image/*; xdg-open %s &> /dev/null &; |
||
+ | |||
+ | {{ic|&> /dev/null}} は、エラーやメッセージが mutt ターミナルウィンドウを乱雑にするのを防ぐために使用されます。 また、また .html 拡張子のないローカルファイルを HTML としてレンダリングすることを chromium が拒否するため、{{ic|code=nametemplate=%s.html}} が使用されます。 |
||
==トラブルシューティング== |
==トラブルシューティング== |
||
===Mutt でバックスペースが使えない=== |
===Mutt でバックスペースが使えない=== |
||
+ | これは、一部のxtermライクな端末に共通の問題です。 |
||
− | This is a common problem with some xterm-like terminals. |
||
+ | 2つのソリューション: |
||
− | Two solutions: |
||
− | * |
+ | * {{ic|.muttrc}} のキーを再バインドします |
bind index,pager ^? previous-line |
bind index,pager ^? previous-line |
||
− | + | {{ic|^?}} は、[[wikipedia:Caret_notation|caret notation]] の Backspace を表す1文字です。Emacs で入力するには {{ic|Ctrl+q Backspace}} を使います、vimでは {{ic|Ctrl+v Backspace}} を使用します。 |
|
+ | * または、端末を修正します: |
||
− | * Or fix your terminal: |
||
$ infocmp > termbs.src |
$ infocmp > termbs.src |
||
− | + | {{ic|termbs.src}} を編集して、{{ic|1=kbs=^H}} を {{ic|1=kbs=\177}} に変更します: |
|
$ tic -x termbs.src |
$ tic -x termbs.src |
||
899行目: | 857行目: | ||
===Mutt を読み取り専用で使った時にフォルダが変えられない (Mutt -R)=== |
===Mutt を読み取り専用で使った時にフォルダが変えられない (Mutt -R)=== |
||
+ | 以下のようなマクロを使用していることが原因です: |
||
− | This is certainly because you are using macros like this one: |
||
macro index,pager <f2> '<sync-mailbox><enter-command>source ~/.mutt/personal<enter><change-folder>!<enter>' |
macro index,pager <f2> '<sync-mailbox><enter-command>source ~/.mutt/personal<enter><change-folder>!<enter>' |
||
+ | 上記のマクロはフォルダを切り替える前に同期を行います (同期は書き込み操作です)。[[#サイドバー|サイドバー]]を使用するか別のマクロを設定してください: |
||
− | This macro tells Mutt to sync (which is a write operation) before switching. |
||
− | Either use the [[#Mutt-Sidebar|sidebar]] or set another macro: |
||
macro index,pager <f3> '<enter-command>source ~/.mutt/personal<enter><change-folder>!<enter>' |
macro index,pager <f3> '<enter-command>source ~/.mutt/personal<enter><change-folder>!<enter>' |
||
===Error sending message, child exited 127 (Exec error)=== |
===Error sending message, child exited 127 (Exec error)=== |
||
+ | これは SMTP エラーです。それは、mutt がメッセージの送信方法を知らないことを意味します。 sendmail をインストールして問題が解決するかどうかを確認するか、smtp_url 変数を設定できます。 gmail を使用する場合は、以下を muttrc に追加して、mutt にgmails smtp サーバーを使用するように指示できます。 |
||
− | This is an SMTP error. It means that mutt does not know how to send the message. |
||
− | You can either try installing sendmail and see if that solves your issue, or you can set the smtp_url variable. If you use gmail, you can add the following to your muttrc to tell mutt to use gmails smtp server. |
||
set smtp_url=smtps://$imap_user:$imap_pass@smtp.gmail.com |
set smtp_url=smtps://$imap_user:$imap_pass@smtp.gmail.com |
||
+ | smtpsプロトコルに注意してください、これは重要です。問題が解決するはずです。 |
||
− | Take note of the smtps protocol, it is important. |
||
− | This should solve the problem. |
||
===文字エンコーディングの問題=== |
===文字エンコーディングの問題=== |
||
918行目: | 873行目: | ||
文字列のエンコーディングに問題がある場合、まずは Mutt の wiki の [http://dev.mutt.org/trac/wiki/MuttFaq/Charset こちらのセクション] を見てください。 |
文字列のエンコーディングに問題がある場合、まずは Mutt の wiki の [http://dev.mutt.org/trac/wiki/MuttFaq/Charset こちらのセクション] を見てください。 |
||
+ | 中国語のテキストがまだ文字化けしている場合は、たとえヘッダーに GB2312 が指定されていても、GBK でのデコードが役立つことがあります。これは、{{ic|mailcap}} ファイルに以下を追加することで、{{ic|iconv}} で行うことができます。 |
||
− | If Chinese text is still garbled, it may help to decode with GBK even when GB2312 is specified in the header. You can do this with {{ic|iconv}} by adding the following to your {{ic|mailcap}} file: |
||
text/plain; iconv -f gbk -t utf-8 %s; test=echo "%{charset}" | grep -ic "gb2312"; copiousoutput; |
text/plain; iconv -f gbk -t utf-8 %s; test=echo "%{charset}" | grep -ic "gb2312"; copiousoutput; |
||
+ | {{ic|.muttrc}} に以下を追加して有効にします。 |
||
− | and enabling it by adding a line to your {{ic|.muttrc}}: |
||
auto_view text/plain |
auto_view text/plain |
||
− | + | HTMLメールの場合、次のように置き換えることにより、メールキャップの関連する行を編集できます。 {{ic|<nowiki>%{charset}</nowiki>}} with {{ic|<nowiki>$(echo %{charset} | sed s/gb2312/gbk/I)</nowiki>}}, 例えば: |
|
text/html; w3m -dump -I $(echo %{charset} | sed s/gb2312/gbk/I) %s; nametemplate=%s.html; copiousoutput |
text/html; w3m -dump -I $(echo %{charset} | sed s/gb2312/gbk/I) %s; nametemplate=%s.html; copiousoutput |
||
928行目: | 883行目: | ||
Gmail は {{ic|mutt}} などのアプリからのアクセスを無効にしています。[https://support.google.com/accounts/answer/6010255 こちら] の手順に従うことでアクセスが可能になります。 |
Gmail は {{ic|mutt}} などのアプリからのアクセスを無効にしています。[https://support.google.com/accounts/answer/6010255 こちら] の手順に従うことでアクセスが可能になります。 |
||
+ | |||
+ | ===urlview で長すぎる URL は開くことができません=== |
||
+ | |||
+ | urlviewはテキストをデコードしないので、長すぎる URL は正しく解析されません [https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=127090] を参照してください。代わりに mutt にメールをデコードさせることができます urlview を開く行を次のコードに置き換えます。 |
||
+ | |||
+ | macro index \cb "\ |
||
+ | :set my_tmp_pipe_decode=\$pipe_decode\n\ |
||
+ | :set pipe_decode\n\ |
||
+ | |urlview\n\ |
||
+ | :set pipe_decode=\$my_tmp_pipe_decode\n\ |
||
+ | :unset my_tmp_pipe_decode\n" \ |
||
+ | 'call urlview to extract URLs out of a message' |
||
== ドキュメント == |
== ドキュメント == |
||
938行目: | 905行目: | ||
== 参照 == |
== 参照 == |
||
* [http://www.mutt.org/ Mutt 公式ウェブサイト] |
* [http://www.mutt.org/ Mutt 公式ウェブサイト] |
||
− | * [http://www.mutt.org/doc |
+ | * [http://www.mutt.org/doc/manual/ 公式マニュアル] |
* [http://wiki.mutt.org/ The Mutt wiki] |
* [http://wiki.mutt.org/ The Mutt wiki] |
||
* [http://pbrisbin.com/posts/two_accounts_in_mutt/ Brisbin's great guide on how to setup different IMAP accounts with Mutt, offlineimap, msmtp] |
* [http://pbrisbin.com/posts/two_accounts_in_mutt/ Brisbin's great guide on how to setup different IMAP accounts with Mutt, offlineimap, msmtp] |
2024年10月20日 (日) 15:03時点における最新版
関連記事
Mutt は強力な機能を持っていることで知られているテキストベースのメールクライアントです。20年以上前に作られたメールクライアントでありながら、Mutt は今でも多くのパワーユーザーから愛用されています。
Mutt は主にメールユーザエージェント (MUA) として開発されており、最初はメールを読むために書かれました。他のメールアプリケーションと比べて後の実装 (メールの取得・送信・フィルタリングの追加) はシンプルとなっており、ユーザーは外部のアプリケーションを使って Mutt の機能を拡張できます。
しかしながら、Arch Linux の mutt パッケージは IMAP や POP3、SMTP のサポートを有効にしてコンパイルされているため、外部アプリケーションの必要はありません。
この記事ではネイティブの IMAP を使ってメールを送受信する方法と、OfflineIMAP や getmail (POP3) を使ってメールを取得し、POP3 の場合 procmail でフィルタリングして、msmtp でメールを送信する方法の両方を説明します。
目次
- 1 インストール
- 2 設定
- 3 ヒントとテクニック
- 3.1 キーバインディング
- 3.2 作成
- 3.3 印刷
- 3.4 コンテンツの表示
- 3.5 mutt とエディタの設定
- 3.6 表示設定
- 3.7 連絡先の管理
- 3.8 複数の送信者アカウントの管理
- 3.9 手動で IMAP のメール取得をリクエスト
- 3.10 カラー化によって巨大なフォルダのインデックスが遅くなる (IMAP)
- 3.11 フォルダの切り替えの高速化
- 3.12 メールのアーカイブ化
- 3.13 他のコンピュータにメールを移動
- 3.14 添付ファイルを保存するデフォルトフォルダ
- 3.15 ページャの挙動
- 3.16 クイック返信
- 3.17 グループ返信のメールアドレスを無視
- 3.18 IMAP メッセージキャッシュ
- 3.19 添付ファイルを開くか、バックグラウンドでHTMLメールを表示する
- 4 トラブルシューティング
- 5 ドキュメント
- 6 参照
インストール
任意で isync, OfflineIMAP, msmtp などの外部のヘルパーアプリケーションをインストールしてください (IMAP セットアップをする場合)。
もしくは (POP3 を使う場合) getmailAUR, fetchmail, fdm, procmail をインストールしてください。
NeoMutt
NeoMutt プロジェクトは Mutt にあらゆるパッチを適用しています。パッチによって膨大な数の 機能 が追加されます。古い Mutt のパッチの多くは更新・整理されドキュメント化されています。
AUR には mutt の別バージョンのパッケージが存在していますが、NeoMutt は適切なコンパイルオプションを実行することでそれらを置き換えます。現在、NeoMutt は neomutt や neomutt-gitAUR でインストールできます。
設定
このセクションでは #IMAP, #POP3, #Maildir, #SMTP の設定を扱います。
デフォルトで Mutt は2つのディレクトリから設定ファイルを認識します: ~/.muttrc
と ~/.mutt/muttrc
。どちらでも問題ありません。別の場所に設定ファイルを配置したい場合は $ mutt -F /path/to/.muttrc
を使ってください。また、Mutt の設定の要件をある程度知る必要があります。Mutt の構文は Bourne Shell とよく似ています。例えば、別の設定ファイルを読み込むには:
source /path/to/other/config/file
シェルコマンドの結果を変数に入れることができます:
set editor=`echo \$EDITOR`
ここで $
はエスケープされるためシェルに渡される前に Mutt によって置き換えることはありません。Bash 構文の $(...)
は使えないためバッククォートを使用することを覚えておいてください。Mutt には定義済み変数がたくさん存在しますが、自分で設定することもできます。ユーザー変数には必ず前に "my" を付ける必要があります:
set my_name = "John Doe"
IMAP
ネイティブの IMAP サポート
mutt パッケージは IMAP のサポートを有効にしてコンパイルされています。最低でも muttrc ファイルに4行を記述すればメールにアクセスすることができます。
imap_user
set imap_user=USERNAME
imap_pass
設定されていない場合、パスワードが要求されます。
set imap_pass=SECRET
folder
ローカルディレクトリに全てのメール (とディレクトリ) を保存するかわりに、サーバーを使用します (必要であれば最上階のフォルダも)。
set folder=imap[s]://imap.server.domain[:port]/[folder/]
フォルダを使用する必要はありませんが、他のフォルダが全て受信フォルダの中にある場合などに有用です。設定したフォルダは Mutt でイコール記号 (=) とプラス記号 (+) を使ってアクセスできます。例:
set folder=imaps://imap.gmail.com/
複数のアカウントを使用する場合、フォルダを分けるのがベストプラクティスです (例: account-hook)。複数の Gmail アカウントを持っている場合:
set folder=imaps://username@imap.gmail.com/
username@gmail.com はあなたのアカウントに置き換えてください。こうすることでフォルダを区別できるようになります。設定しないと認証エラーが発生します。
spoolfile
スプールファイルは、(フィルタリングされていない)電子メールが到着するフォルダーです。ほとんどの電子メールサービスでは、通常、INBOX という名前が付けられています。上記で設定したフル folder
パスの代わりに「=」または「+」を使用できるようになりました。例えば:
mailboxes
新着メールがないか定期的にチェックする必要がある imap フォルダーをここにリストします。
mailboxes =INBOX =family mailboxes imaps://imap.gmail.com/INBOX imaps://imap.gmail.com/family
または、すべてのサブスクライブされた IMAP フォルダーを確認します(すべての mailboxes
で追加)
set imap_check_subscribed
これら2つのバージョンは、すべてのフォルダーをサブスクライブする場合は同等です。したがって、2番目の方法の方がはるかに便利ですが、最初の方法の方が柔軟性が高くなります。また、新しいバージョンの Mutt は、デフォルトで「y」キーにバインドされたマクロを含むように設定されており、メールボックスの下にリストされているフォルダーのいずれかに変更できます。
変数を設定しなかった場合、デフォルトで spoolfile が使われます。サイドバーでも使用する変数です。
まとめ
これらのオプションを使用すると、Mutt を起動し、IMAP パスワードを入力して、メールの読み取りを開始できます。以下は、IMAP サポートを改善するために追加を検討する可能性のある他の行を含む muttrc スニペット (Gmail用) です。
set folder = imaps://imap.gmail.com/ set imap_user = your.username@gmail.com set imap_pass = your-imap-password set spoolfile = +INBOX mailboxes = +INBOX # Store message headers locally to speed things up. # If hcache is a folder, Mutt will create sub cache folders for each account which may speeds things up even more. set header_cache = ~/.cache/mutt # Store messages locally to speed things up, like searching message bodies. # Can be the same folder as header_cache. # This will cost important disk usage according to your e-mail amount. set message_cachedir = "~/.cache/mutt" # Specify where to save and/or look for postponed messages. set postponed = +[Gmail]/Drafts # Allow Mutt to open new imap connection automatically. unset imap_passive # Keep IMAP connection alive by polling intermittently (time in seconds). set imap_keepalive = 300 # How often to check for new mail (time in seconds). set mail_check = 120
外部の IMAP サポート
IMAP のサポートは Mutt に組み込まれていますが、オフラインで読むためにメールをダウンロードすることはしません。OfflineIMAP や isync などの外部のアプリケーションを使うことでメールをローカルフォルダにダウンロードして、それを Mutt で処理することが可能です。
メールをソートしたい場合は spamassassin や imapfilterAUR などのアプリケーションを使います。
POP3
mutt パッケージは POP3 のサポートを有効にしてコンパイルされています。muttrc(5)
で説明されているように pop_*
変数で設定できます。
また、外部のプログラムを使って POP3 でメールを取得することもできます。メールの取得には getmail を使ってメールのフィルタリングには procmail を使うのが人気のある選択肢です。
Maildir
Maildir は汎用・標準のフォーマットです。ほとんど全ての MUA が Maildir を処理でき、Mutt もサポートしています。Mutt で Maildir を使用するために必要な設定は少しだけです。muttrc を開いて以下の行を追加してください:
set mbox_type=Maildir set folder=~/mail set spoolfile=+/ set header_cache=~/.cache/mutt
上記は Maildir にアクセスして INBOX に新しいローカルメールが存在しないか確認するだけの最小設定です。上記の設定はメールのヘッダーをキャッシュしてディレクトリの表示を高速化します。(Arch の公式パッケージを使っていない場合) キャッシュは使用できない可能性があります。上記の設定は OfflineIMAP には影響を与えないので注意してください。常にサーバー上の全てのディレクトリを同期します。spoolfile
は Mutt が新しいメールが来ていないか問い合わせるローカルディレクトリです。メーリングリストのディレクトリなどスプールファイルは追加することができます。詳しい設定方法は Mutt のマニュアルを参照してください。
SMTP
POP や IMAP を使ってメールを受け取る場合でもメールを送信するときは SMTP を使います。
フォルダ
ここには基本的に重要なフォルダが1つだけあります。送信されたすべての電子メールが保存されるフォルダです。
set record = +Sent
Gmail は送信したメールを自動的に +[Gmail]/Sent
に保存するため、重複させないようにします:
unset record
ネイティブの SMTP サポート
公式の mutt は SMTP のサポートを有効にしてコンパイルされています。
例:
set my_pass='mysecretpass' set my_user=myname set realname = 'Your Real Name' set from = your-email-address set use_from = yes set smtp_url=smtps://$my_user:$my_pass@smtp.domain.tld set ssl_force_tls = yes
SMTP 資格情報が IMAP 資格情報と同じである場合、これらの変数を使用できることに注意してください:
set smtp_url=smtps://$imap_user:$imap_pass@smtp.domain.tld
以下のようなエラーが表示される場合、セキュリティパラメータを変更する必要があるかもしれません:
SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
サーバーは SMTPS ではなく SMTP を使っているため、以下のように設定する必要があります:
set smtp_url=smtp://$imap_user:$imap_pass@smtp.domain.tld
STARTTLS を使用する場合、他にも設定する変数が存在します:
set ssl_starttls = yes
詳しくは man 5 muttrc
を見て下さい。
外部の SMTP サポート
msmtp, SSMTP, opensmtpd など外部の SMTP エージェントを使うこともできます。
muttrc
の sendmail
変数で mutt でメールを配達するのに使用するプログラムと引数を定義できます。追加引数はプログラムによって受取人のアドレスとして解釈されます。
例えば、msmtp を使う場合:
muttrc
set realname='Disgruntled Kangaroo' set sendmail="/usr/bin/msmtp" set edit_headers=yes set folder=~/mail set mbox=+mbox set spoolfile=+inbox set record=+sent set postponed=+drafts set mbox_type=Maildir mailboxes +inbox +lovey-dovey +happy-kangaroos
Mutt からメールを送信
設定したら mutt
を起動してください:
~/mail/inbox
にあるメールが全て表示されます。m
を押すとメールを書くことができます。EDITOR
環境変数で設定されたエディタが使われます。変数が設定されていない場合、Mutt を起動する前に設定できます:
$ export EDITOR=your-favorite-editor $ mutt
EDITOR はシェルの設定ファイル (bashrc など) に保存するべきです。Mutt の設定ファイルでエディタを設定することもできます:
.muttrc
set editor=your-favorite-editor
テストの目的で、手紙を自分宛てに送ってください。手紙を書いたら、保存してエディターを終了します。 Mutt に戻り、電子メールに関する情報が表示されます。 y
を押して送信します。
マルチアカウント
これで、少なくとも1つのアカウントに対して有効な構成ができるはずです。すべてを1つのファイルにまとめているので、複数のアカウントをどのように使用するのか疑問に思われるかもしれません。
必要なのは、アカウント固有のパラメーターをそれぞれのファイルに書き込んで、それらを調達することだけです。各アカウントのすべての IMAP / POP3 / SMTP 構成は、それぞれのフォルダーに移動する必要があります。
Muttは、最も強力な機能の1つであるフックのおかげで、これを処理できます。基本的にフックは、特定のアクションの前に実行されるコマンドです。利用可能なフックがいくつかあります。複数のアカウントの場合、account-hooksとfolder-hooks を使用する必要があります。
- フォルダフックは、フォルダを切り替える前にコマンドを実行します。これは、特定のフォルダにいるときに適切な SMTP パラメータを設定するのに役立ちます。たとえば、仕事用メールボックスにいて、電子メールを送信すると、仕事用アカウントが送信者として自動的に使用されます。
- アカウントフックは、Mutt が IMAP 同期などのアカウントに関連する関数を呼び出すたびにコマンドを実行します。フォルダーに切り替える必要はありません。
フックは次の2つのパラメーターを取ります。
account-hook [!]regex command folder-hook [!]regex command
正規表現は、一致するフォルダです(または!が前に付いていない場合)。コマンドは、何をすべきかを伝えます。
例:
.muttrc
## General options set header_cache = "~/.cache/mutt" set imap_check_subscribed set imap_keepalive = 300 unset imap_passive set mail_check = 60 set mbox_type=Maildir ## ACCOUNT1 source "~/.mutt/work" # Here we use the $folder variable that has just been set in the sourced file. # We must set it right now otherwise the 'folder' variable will change in the next sourced file. folder-hook $folder 'source ~/.mutt/work' ## ACCOUNT2 source "~/.mutt/personal" folder-hook *user@gmail.com/ 'source ~/.mutt/personal' folder-hook *user@gmail.com/Family 'set realname="Bob"'
.mutt/work
## Receive options. set imap_user=user@gmail.com set imap_pass=**** set folder = imaps://user@imap.gmail.com/ set spoolfile = +INBOX set postponed = +Drafts set record = +Sent ## Send options. set smtp_url=smtps://user:****@smtp.gmail.com set realname='User X' set from=user@gmail.com set hostname="gmail.com" set signature="John Doe" # Connection options set ssl_force_tls = yes unset ssl_starttls ## Hook -- IMPORTANT! account-hook $folder "set imap_user=user@gmail.com imap_pass=****"
Finally .mutt/personal
should be similar to .mutt/work
.
全てのアカウントを設定したら Mutt を起動してください。フォルダを変えればアカウントを切り替えることができます (c
キー)。もしくはサイドバーを使うこともできます。
異なるメールボックスのフォルダーを変更するには、完全なアドレスを入力する必要があります IMAP/POP3 フォルダーの場合、これはかなり不便かもしれません、それにいくつかのキーをバインドしましょう。
## Shortcuts macro index,pager <f2> '<sync-mailbox><enter-command>source ~/.mutt/personal<enter><change-folder>!<enter>' macro index,pager <f3> '<sync-mailbox><enter-command>source ~/.mutt/work<enter><change-folder>!<enter>'
上記のショートカット(またはサイドバー)を使用すると、フォルダーの変更(デフォルトでは c
を使用)はコンテキストに依存しません。つまり、現在のメールボックスのフォルダーは表示されませんが、最後にフォルダーを変更したときに使用されたフォルダーが一覧表示されます。動作をより文脈的にするための秘訣は、現在のメールボックスで=または+を押すことです。これは次のマクロで自動化できます。
macro index 'c' '<change-folder>?<change-dir><home>^K=<enter>'
パスワード管理
.muttrc
にパスワードを記述することはセキュリティ的に問題があります。毎回手動でパスワードを入力するという方法もありますが、面倒です。
GnuPG を使ってパスワードを暗号化しファイルに保存するという解決方法が存在します。まだキーペアを設定していない場合、先に作成してください。以下の内容で tmpfs にファイルを作成:
set my_pass = " password"
あなた自身を受取人としてファイルを暗号化し、アクセス可能なディレクトリに移動してください。以下の例では暗号化したファイルを $HOME/.my-pwds.gpg
に配置しています。
mutt の設定ファイルに以下を追加 (アカウントの前に追加してください):
source "gpg -dq $HOME/.my-pwds.gpg |"
上記の設定でファイルが復号化され my_pass
変数が設定されます。source された後は変数を自由に使うことができます。例:
set imap_pass=$my_pass
OfflineIMAP や msmtp などの外部ツールを使用する場合、エージェント (例: gpg-agent、GnuPG#gpg-agent を参照) を設定してパスフレーズをキャッシュに保存して何度もパスワードが聞かれないようにしてください。
セキュリティの問題
enter-command
が UI から利用できる場合、暗号化されていないパスワードが表示される可能性があります。Mutt の実行中にセッションにアクセスできるのがあなた以外の誰かである場合、これは望ましくない可能性があります。このため、これを無効にすることができます。その結果ユーザーが使用する予定のすべてのコマンドを事前にキーにバインドする必要があります。そうしないとアクセスできません。
.muttrc
bind generic,alias,attach,browser,editor,index,compose,pager,pgp,postpone ':' noop
ヒントとテクニック
Muttの使用とカスタマイズを始めるためのガイド
- My first Mutt (maintained by Bruno Postle)
- The Woodnotes Guide to the Mutt Email Client (maintained by Randall Wood)
- The Homely Mutt (by Steve Losh)
- Everything You Need To Know To Start Using GnuPG with Mutt (by Justin R. Miller)
Mutt について何か疑問があったら、IRC チャンネルで質問してください。
キーバインディング
デフォルトのキーバインドは Emacs や Vi などの一般的なバインドとかけ離れています。自由に設定することができます。Mutt にはページャ・インデックス・添付ビューなどに様々なバインドのセットが用意されています。キーをバインドしたいときは編集したいマップを指定してください。Mutt のヘルプページからコマンドとキーバインドのリストを確認できます (デフォルトキー: ?
)。Vi ライクなバインドの例:
muttrc
bind pager j next-line bind pager k previous-line bind attach,index,pager \CD next-page bind attach,index,pager \CU previous-page bind pager g top bind pager G bottom bind attach,index g first-entry bind attach,index G last-entry
作成
メールの暗号化と署名 (GnuPG)
GnuPG を使って mutt でメールを暗号化するには /usr/share/doc/mutt/samples/gpg.rc
を mutt の設定フォルダにコピーしてください (例: ~/.mutt/gpg.rc
)。そして mutt の設定ファイルに以下を追加してください (例: ~/.mutt/mutrrc
):
source ~/.mutt/gpg.rc
コンポーズビューで p
を押すことで暗号化オプションを使うことができるようになります。
詳しくは muttrc(5) の pgp_*
や crypt_*
オプションを見てください。
メールの文字エンコーディング
Mutt を使用する場合、指定する必要のある文字セットには2つのレベルがあります。
- 電子メールを作成するために使用されるテキストエディタは、目的のエンコーディングで保存する必要があります。
- その後、Mutt は電子メールをチェックし、
send_charset
変数で指定した優先順位に従って、どのエンコーディングがより適切であるかを判断します。デフォルト: "us-ascii:iso-8859-1:utf-8"
そのため、ISO-8859-1 で許可された文字( 'résumé'など)を使用して、Unicode 固有の文字を使用せずに電子メールを作成すると、Mutt はエンコーディングを ISO-8859-1 に設定します。
この動作を回避するには、muttrc
で変数を設定します。
set send_charset="us-ascii:utf-8"
あるいは
set send_charset="utf-8"
左から最初の互換性のある文字セットが使用されます。 UTF-8 は US-ASCII のスーパーセットであるため、UTF-8 の前に置いても問題ありません。これにより、電子メールヘッダーに文字セットが表示されたときに古い MUA が混乱しないことが保証されます。
カスタムメールヘッダ
Mutt ではメールヘッダを完全に制御することができます。
メールを書くときにヘッダを編集できるようにするには:
set edit_headers=yes
Muttには、ヘッダーをカスタマイズするための特別な関数 my_hdr
もあります。はい、変数と同じように名前が付けられていますが、実際は関数です。
あなたはそれを完全にクリアすることができます、それはあなたが異なるヘッダーでアカウントを切り替えるときに行うべきです、そうでなければそれらはオーバーラップします:
unmy_hdr *
他の変数もヘッダーに影響を与えるため、my_hdr
を使用する前にそれらをクリアするのが賢明です。:
unset use_from unset use_domain unset user_agent
これで、次の構文を使用して、ヘッダーに任意のフィールドを追加できます(非標準のものも含む):
my_hdr <FIELD>: <VALUE>
<VALUE>はコマンドの結果である可能性があることに注意してください。
例:
## Extra info. my_hdr X-Info: Keep It Simple, Stupid. ## OS Info. my_hdr X-Operating-System: `uname -s`, kernel `uname -r` ## This header only appears to MS Outlook users my_hdr X-Message-Flag: WARNING!! Outlook sucks ## Custom Mail-User-Agent ID. my_hdr User-Agent: Every email client sucks, this one just sucks less.
署名ブロック
ホームディレクトリに .signature
を作成してください。署名はメールの末尾に追加されます。もしくは Mutt の設定でファイルを指定することもできます:
set signature="path/to/sig/file"
ランダム署名
fortune (パッケージ: fortune-mod) を使うことで Mutt にランダムに署名を追加することができます。
fortune ファイルを作成して以下の行を .muttrc
に追加してください:
set signature="fortune pathtofortunefile|"
最後のパイプに注意してください。指定した文字列がファイルではなくコマンドであることをMuttに伝えます。
Mutt を使ってコマンドラインからメールを送信
マニュアルページには、使用可能なすべてのコマンドとその使用方法が表示されますが、ここにいくつかの例を示します。 Mutt を使用して、.bash_profile を介したログイン、または通常の cron ジョブとしてトリガーされたアラート、ログ、またはその他のシステム情報を送信できます。
メッセージを送信:
mutt -s "Subject" somejoeorjane@someserver.com < /var/log/somelog
添付ファイルを付けてメッセージを送信:
mutt -s "Subject" somejoeorjane@someserver.com -a somefile < /tmp/sometext.txt
HTML メールの作成
Mutt は WYSIWIG クライアントではないため、HTML はそのままソースコードを直接編集して扱うことができます。HTML 構文を使ってメールを書くだけです。例:
This is normal text<br> <b>This is bold text</b>
メールを送信する前に、edit-type
コマンドを使って (デフォルトのショートカット: Ctrl+t
)、text/plain
を text/html
に置き換えてください。
作成中に他のメールを表示
Mutt のよくある不満として、新しいメール (あるいは返信) を作成しているときに、現在のメールを閉じないと (後回しにしないと) 他のメールを開けないというものがあります。以下の方法で解決できます:
まず、通常通り Mutt を立ち上げてください。そして、別のターミナルウィンドウを起動します。そして次のコマンドで新しい Mutt を起動:
mutt -R
これで読み取り専用モードで Mutt が起動するので、他のメールを自由に閲覧することができます。2番目の Mutt は必ず読み取り専用モードで起動することを強く推奨します。衝突が発生してしまう可能性があるためです。
印刷
muttprintAUR をインストールすることで印刷の品質を向上することができます。muttrc ファイルに以下の行を追加してください:
set print_command="/usr/bin/muttprint %s -p {PrinterName}"
コンテンツの表示
URL を表示 & ウェブブラウザの起動
まだ行っていない場合は、まず$ HOMEに.muttディレクトリを作成する必要があります。そこで、macrosという名前のファイルを作成します。以下を挿入します。
macro pager \cb <pipe-entry>'urlview'<enter> 'Follow links with urlview'
次に urlviewAUR パッケージをインストールします。
$ HOMEに.urlviewを作成し、以下を挿入します。
REGEXP (((http|https|ftp|gopher)|mailto)[.:][^ >"\t]*|www\.[-a-z0-9.]+)[^ .,;\t>">\):] COMMAND <your-browser> %s
pager でメールを読んでいるときにctrl + bを押すと、メールからすべての URL がリストされます。矢印キーで上下に移動し、目的の URL で Enter キーを押します。ブラウザが起動し、選択したサイトに移動します。
一部のブラウザでは、正しく機能するために追加の引数が必要になります。たとえば、Luakit は Mutt の終了時に閉じます。 -n
パラメータを使用して、バックグラウンドにフォークする必要があります。
COMMAND luakit -n %s 2>/dev/null
2>/dev/null
はそれを静かにすることです。つまり、不要なメッセージの印刷を防止します。
HTML の表示
HTML の本文を外部の HTML プログラムに渡してからダンプすることで、Eメールの表示を均一にして目立たなくすることができます。ここでは、lynx、 w3m、 elinks の3つのプログラムについて説明します(選択したパッケージが installed) されていることを確認してください)。
~/.mutt/mailcap
が存在しない場合は、作成して以下を保存する必要があります。
text/html; lynx -assume_charset=%{charset} -display_charset=utf-8 -dump %s; nametemplate=%s.html; copiousoutput
または、w3m の場合
text/html; w3m -I %{charset} -T text/html; copiousoutput;
または、elinks の場合
text/html; elinks -dump ; copiousoutput;
muttrc を編集して以下を追加します。
set mailcap_path = ~/.mutt/mailcap
lynx、w3m、elinks で HTML メッセージを自動的に開くには、次の行をmuttrcに追加します。
auto_view text/html
この方法の利点は、html ボディをソースとして表示したり、開いたりする代わりに、 別のプログラム (この場合は lynx ) を使うと、フォーマットされた内容を直接見ることができます。
urlviewAUR がインストールされていれば、電子メール内の URL リンクを Ctrl+b
で表示できます。
複数のエンコーディングや別のエンコーディングの電子メールをたくさん受信した場合、Mutt はデフォルトですべての電子メールを html として扱うことができます。これを回避するには、 ~/.muttrc に次の変数を追加します。muttrc は、Mutt が利用可能な場合はデフォルトで text に設定され、電子メールでテキストバージョンが利用できない場合にのみ w3m/lynx を使用します。
alternative_order text/plain text/html
一部の HTML メールは、テキストベースの Web ブラウザで正しく表示されない場合があります。このような場合、フォールバックソリューションとして、キーをバインドしてグラフィカルブラウザを開くことができます。次のマクロは、環境で定義された Web ブラウザーの添付ファイルビューから選択された HTML メールを開きます。 ~/.cache/mutt/
フォルダーを自由に変更してください)。
macro attach 'V' "<pipe-entry>cat >~/.cache/mutt/mail.html && $BROWSER ~/.cache/mutt/mail.html && rm ~/.cache/mutt/mail.html<enter>"
メッセージビューのフィルタリング
limit
コマンド (既定のショートカット:l
) を使用すると、表示をパターンおよび特定のプロパティに一致する電子メールに制限できます。
ヘッダーに "foo" が含まれているすべての電子メールを表示するには、"foo" と入力するだけで完了です。フィルタを削除するには、"all" キーワードを使用します。
フラグの設定されたすべてのメッセージを表示するには、
~F
サイズが1MB以上またはjohndoeからの未読メッセージをすべて表示するには、次を使用します。
~U (~z 1M- | ~f johndoe)
すべての可能なパターンは公式マニュアルにリストされています。 official manual
会話のグループ化
既定の並べ替え順序は、日付順です。並べ替えオプションを変更するには、sort-mailbox
コマンド (デフォルトキー: o
) を使用してください。
スレッドごとにEメールをグループ化することができます。この場合、スレッドのソート方法とスレッド内でのソート方法を定義できます。
次の例では、スレッドは最後の電子メールの日付に従って並べ替えられます。
muttrc
set sort=threads set sort_aux=last-date-received
mutt とエディタの設定
vim
- テキストの幅を72文字に制限するには、.vimrc ファイルを編集して以下を追加します。
au BufRead /tmp/mutt-* set tw=72
- もう1つの選択肢は、Vim のメールファイルタイププラグインを使用して、72文字幅以外のメール中心のオプションを有効にすることです。 ~/.vim/filetype.vim を編集し、存在しない場合は作成し、次を追加します。
augroup filetypedetect " Mail autocmd BufRead,BufNewFile *mutt-* setfiletype mail augroup END
- 別の tmp ディレクトリを設定するには、 ~/.tmp 次のように muttrc に行を追加します。
- 変更されたテキストを再フォーマットするには、Vim のコンテキストヘルプを参照してください。
:h 10.7
GNU nano
[ [nano] ] もMuttで使える素晴らしいコンソールエディタです。
テキストの幅を72文字に制限するには、を編集します。nanorcファイルに以下を追加します。
set fill 72
また、muttrcファイルでは、編集を開始する行を指定して、メールヘッダーをスキップできます。
set editor="nano +7"
Emacs
Emacs には mail と message メジャーモードが存在します。Mutt から Emacs が呼び出されたときに自動的に mail-mode に切り替えるには、.emacs
に以下を追加:
.emacs
;; Mutt support. (setq auto-mode-alist (append '(("/tmp/mutt.*" . mail-mode)) auto-mode-alist))
Emacs デーモンを使っている場合、Mutt から接続するには以下を .muttrc
に追加:
.muttrc
set editor="emacsclient -a \"\" -t"
表示設定
カラー
.muttrc
ファイルにサンプルのカラー定義を追加してから自由にカスタマイズしてください:
$ cat /usr/share/doc/mutt/samples/colors.linux >> ~/.muttrc
これらの各設定で実際に生成される色は、 ~/Xresources ファイルを参照してください。
また、カラーを含む任意のファイルをソースにすることもできます(テーマファイルとして機能します)
source ~/.mutt/colors.zenburn
テーマのサンプルは [1] を見てください。
インデックスフォーマット
ここでは、.muttrc
を使用して、インデックスフォーマット (フォルダビューに表示される列) をカスタマイズします。
set date_format="%y-%m-%d %T" set index_format="%2C | %Z [%d] %-30.30F (%-4.4c) %s"
詳しくは Mutt Reference, man 3 strftime
, man 3 printf
を見てください。
"Sent" フォルダビューで送信者ではなく受信者を表示
デフォルトでは、Mutt は送信者をインデックスビューに表示します。ほとんどのフォルダでは問題ありませんが、送信した電子メールのコピーを保存するフォルダには常に名前が表示されるので、あまり役に立ちません。
これを解決する最も簡単な方法は、muttrc に alternative email addresses をセットアップすることです。送信者のアドレスがあなたの別のメールアドレスのどれかと一致すれば、 Mutt は自動的にインデックスに "宛先<受信者>" と表示します。
可変幅のカラム
ウィンドウのサイズを変更すると、送信者などの一部のフィールドに未使用のスペースが残っている間に、件名が切り捨てられる場合があります。 tput cols へのシェル呼び出しを使用して、端末でサポートされている列の最大数(つまり、幅)を取得できます。この値を使用して、送信者や件名などのフィールドに幅の割合を設定できます。
上記のフォルダーフックとサイドバーの幅 24 を使用した例
muttrc
## From field gets 30% of remaining space, Subject gets 70%. ## Remaining space is the total width minus the other fields (35), minus the sidebar (24) set my_index_format_pre='set my_col_from = `echo $((30 * ($(tput cols)-35-24) / 100))`; set my_col_subject = `echo $((70 * ($(tput cols)-35-24) / 100))`; set index_format="%2C | %Z [%d] %-$my_col_from.${my_col_from}' set my_index_format_post=' (%-4.4c) %?M?<%M> ?%-$my_col_subject.${my_col_subject}s"' folder-hook .*[sS]ent.* "$my_index_format_pre"t"$my_index_format_post" folder-hook ! .*[sS]ent.* "$my_index_format_pre"F"$my_index_format_post"
"must" フック内から変数 my_col_from
と my_col_from
を設定します。そうしないと、カラム値は再計算されません。
フォルダを変更せずにインデックスフォーマットを強制的に再計算するバインディングを追加できます。
muttrc
macro index,pager \CL "<enter-command>$my_index_format_pre"F"$my_index_format_post<enter><redraw-screen>"
サイドバー
サイドバーの設定例は /usr/share/doc/mutt/samples/sample.muttrc-sidebar
にあり、キーバインドも定義されています。あなたの mutt 設定ファイルにコピー・編集したり source してください。set sidebar_visible = yes
に必ず変更してください。
以下を追加することでサイドバーの表示を切り替えられます:
bind index,pager B sidebar-toggle-visible
sidebar_sort_method
オプションを使用しない場合、mailboxes
オプションを使用すると、フォルダは mailboxes
に設定された順序で表示されます。
ページャビューの上にインデックスを表示
muttrc
で以下の変数を設定してください:
set pager_index_lines=10
連絡先の管理
アドレスのエイリアス
Mutt ではエイリアスを使って連絡先を管理します。エイリアスは nickname [longname] <address> です。
- The nickname は Mutt と入力すると連絡先が表示される。一言だけで、覚えやすいはずです。
- The longname はオプションです。いくつかの単語かもしれません。
- An <address> は有効な形式 (例
@
) である必要があります。
実に簡単ですこれを .muttrc
に追加します。
set alias_file = "~/.mutt/aliases" set sort_alias = alias set reverse_alias = yes source $alias_file
説明
alias_file
は、Mutt 内からエイリアスを追加したときに情報が保存されるファイルです。sort_alias
は、Mutt で表示されるエイリアスリストのソートに使用するフィールドを指定する。使用可能な値 :alias,addressreverse_alias
yes に設定すると、メッセージの送信者と一致するエイリアスが見つかった場合に、インデックスメニューにエイリアスの「個人的な」名が表示されます。source $alias_file
は Mutt に起動時にエイリアスを読むように指示する。自動補完に必要です。
To:
がフルアドレスではなくエイリアスを書き込んでいることを示すメッセージが表示されたらあとはこれで完了です。この機能の利点は、Tab
を使用してエイリアスを自動補完できることです。
間違った文字列や空の文字列を自動補完すると完全なリストが表示されます。通常どおりにエイリアスを選択するか、インデックス番号を入力します。
エイリアスを作成するには、次の2つの方法があります。
- Mutt では、対象者のメールが選択されていれば
a
を押す。 - alias_file を手動で編集します。構文は実に単純です。
alias nickname Long Name <my-friend@domain.tld>
Abook
abook は連絡先管理のための専用のスタンドアロンプログラムです。とてもシンプルなテキストベースのインターフェースで人間が読めるプレーンテキストのデータベースに連絡先が保存されます。そして連絡先のプロパティは自由に拡張できます (誕生日, 住所, FAX など)。
Abook は、Mutt とのインターフェースとして特別に設計されているため、Mutt の内部エイリアスの完全でより機能的な置き換えとして機能できます。 エイリアスの代わりに Abook を使用する場合は、.muttrc
のエイリアス構成を削除して、次を追加します。
muttrc
## Abook set query_command= "abook --mutt-query '%s'" macro index,pager a "<pipe-message>abook --add-email-quiet<return>" "Add this sender to Abook" bind editor <Tab> complete-query
詳しい解説や設定例は abook
や abookrc
の man ページを見てください。
Goobook
goobook-gitAUR パッケージをインストールして Goobook を使うことでコマンドラインや Mutt の中から Google コンタクトを検索することができます。
goobook を使用する前に ~/.goobookrc
を設定してください。デフォルトテンプレートを生成するには:
$ goobook config-template > ~/.goobookrc
設定オプションについては ~/.goobookrc
を見てください。最低でも、email と password は入力する必要があります。
エイリアスの代わりに Goobook を使用する場合は、.muttrc
を追加します。
muttrc
## GooBook set query_command="goobook query '%s'" macro index,pager a "<pipe-message>goobook add<return>" "add sender to google contacts" bind editor <Tab> complete-query
mutt 内で電子メールメッセージを作成すると、Tab
が Google の連絡先を検索するようになりました。メッセージの表示中に a
送信者を Google の連絡先に追加します。
Khard
khard は、ローカルに保存された carddav アドレス帳エントリを使用するコマンドラインアドレス帳です。 vdirsyncer を使用して、それらを CardDAV サーバーと同期できます。 mutt での統合は、abook に似ています。 Khardのドキュメントを参照してください
複数の送信者アカウントの管理
複数の送信者アカウントを使用する場合は、特定の送信者アカウントを受信者に自動的に関連付けることができます。mutt-vidAUR は、送信された電子メールをスキャンして、特定の受信者に関連づけられた最新の「開始日」詳細情報を探し、mutt から source へのファイルに保存します。次回この受信者に電子メールを送信すると、mutt は以前に使用したのと同じ電子メールアドレスと実名を持つ送信フックを自動的に起動します。詳細は mutt-vid のホームページを参照してください。
手動で IMAP のメール取得をリクエスト
次の自動 IMAPフェッチ(または、有効にしていない場合)を待機しない場合は、手動でメールをフェッチできます。
そのための mutt コマンド imap-fetch-mail
があります。
あるいは、キーにバインドすることもできます。
bind index "^" imap-fetch-mail
カラー化によって巨大なフォルダのインデックスが遅くなる (IMAP)
正規表現によるインデックスの強調表示は便利ですが、正規表現がメッセージの本文をチェックすると、フォルダーの表示が遅くなる可能性があります。
フォルダーフックを使用して、たとえば受信トレイ(メールボックスを効率的に空にした場合)の強調表示のみを行います。
folder-hook . 'uncolor index "~b \"Hi Joe\" ~R !~T !~F !~p !~P"' folder-hook ""!"" 'color index brightyellow black "~b \"Hi Joe\" ~N !~T !~F !~p !~P"'
フォルダの切り替えの高速化
以下を .muttrc
に追加してください:
set sleep_time = 0
メールのアーカイブ化
電子メールを読むときは、答える、フラグを付ける、アーカイブする、または削除するという4つの選択肢があります。 これを念頭に置いている場合は、受信トレイをスリムに保ちこのマクロ( Gmail 用に設定)に適合させることができます。
macro index \' "<tag-pattern>~R !~D !~F<enter>\ <tag-prefix><save-message>+[Gmail]/All <enter>" \ "Archive"
他のコンピュータにメールを移動
メールを新しいマシンに転送する場合(コピー&ペースト)など、Muttが移行したファイルを読み取れるようにするには、ヘッダーキャッシュ(上記の構成に従っている場合は ~/.cache/mutt
のようなファイルまたはフォルダー)を削除して、Mutt が移行したメールを読めるようにしてください、そうしないと Mutt はフリーズするかもしれません。
ヘッダキャッシュ用にフォルダを作成した場合、すべてのメールボックスに独自のキャッシュファイルが作成されるため、すべてを削除せずにキャッシュを個別に削除できます。
添付ファイルを保存するデフォルトフォルダ
デフォルトでは Mutt は添付ファイルを起動したときのフォルダに保存します。添付ファイルの保存場所を常に ~/attachments
にしたい場合、以下のエイリアスを作成することで ~/attachments
から Mutt が起動するようになります:
alias mutt='cd ~/attachments && mutt'
ページャの挙動
次のページに移動するときにコンテキスト行を表示します:
set pager_context=3
次のメールを表示する代わりに最後で停止します:
set pager_stop=yes
クイック返信
デフォルトでは、Mutt はメールに返信するときに受信者と件名の確認を求めます。回答に元のメールを含めるかどうかも尋ねられます。常にデフォルト値を使用することを想定している場合は、以下の質問をスキップするように Mutt を設定できます:
muttrc
set fast_reply=yes set include=yes
送信する前に、受信者と件名を編集できます。
グループ返信のメールアドレスを無視
CC されたメールにグループ返信すると、Mutt の受信者リストにメールアドレスが含まれます。 Mutt にいくつかのアドレスを無視するように頼むことができます:
alternates mail1@server1|mail2@server2|...
IMAP メッセージキャッシュ
組み込みの IMAP サポートを使用する場合、電子メールはデフォルトでメモリにフェッチされます。大きなメールを数回取得すると、 IMAP サーバーから何度もダウンロードされます。 または、フェッチしたすべてのメッセージをディスクに保存するように Mutt に要求することもできます:
muttrc
set message_cachedir=~/.cache/mutt/messages
これにより、大きな添付ファイルがある場合でも、 (フォルダーが存在している必要があります) 将来の検索が瞬時に行われます。 たとえば、50MB の制限を超える最も古い電子メールからキャッシュを削除する場合は、次のようなスクリプトを使用できます:
~/.mutt/purgecache.sh
#!/bin/sh ## In KB. CACHE_LIMIT=51200 cd "$1" 2>/dev/null [ $? -ne 0 ] && exit [ $(du -s . | cut -f1 -d' ') -lt $CACHE_LIMIT ] && exit while IFS= read -r i; do rm "$i" [ $(du -s . | cut -f1 -d' ') -lt $CACHE_LIMIT ] && exit done <<EOF $(find . -type f -exec ls -rt1 {} +) EOF
起動時にそれを呼び出します:
muttrc
set message_cachedir=~/.cache/mutt/messages source "~/.mutt/purgecache.sh '$message_cachedir'|"
添付ファイルを開くか、バックグラウンドでHTMLメールを表示する
デフォルトでは、mutt の添付ファイルを開くと mutt がブロックされます。~/.mutt/mailcap
を編集して &
を追加すると、mutt はバックグラウンドで デフォルトアプリケーション の1つを起動します。xdg-open を例にとると、
text/html; xdg-open %s &> /dev/null &; nametemplate=%s.html application/*; xdg-open %s &> /dev/null &; image/*; xdg-open %s &> /dev/null &;
&> /dev/null
は、エラーやメッセージが mutt ターミナルウィンドウを乱雑にするのを防ぐために使用されます。 また、また .html 拡張子のないローカルファイルを HTML としてレンダリングすることを chromium が拒否するため、nametemplate=%s.html
が使用されます。
トラブルシューティング
Mutt でバックスペースが使えない
これは、一部のxtermライクな端末に共通の問題です。 2つのソリューション:
.muttrc
のキーを再バインドします
bind index,pager ^? previous-line
^?
は、caret notation の Backspace を表す1文字です。Emacs で入力するには Ctrl+q Backspace
を使います、vimでは Ctrl+v Backspace
を使用します。
- または、端末を修正します:
$ infocmp > termbs.src
termbs.src
を編集して、kbs=^H
を kbs=\177
に変更します:
$ tic -x termbs.src
change-folder 機能で同一のメールボックスが表示される
これはバグではありません、仕様です。詳しくはマルチアカウントのセクションを見て下さい。
Mutt を読み取り専用で使った時にフォルダが変えられない (Mutt -R)
以下のようなマクロを使用していることが原因です:
macro index,pager <f2> '<sync-mailbox><enter-command>source ~/.mutt/personal<enter><change-folder>!<enter>'
上記のマクロはフォルダを切り替える前に同期を行います (同期は書き込み操作です)。サイドバーを使用するか別のマクロを設定してください:
macro index,pager <f3> '<enter-command>source ~/.mutt/personal<enter><change-folder>!<enter>'
Error sending message, child exited 127 (Exec error)
これは SMTP エラーです。それは、mutt がメッセージの送信方法を知らないことを意味します。 sendmail をインストールして問題が解決するかどうかを確認するか、smtp_url 変数を設定できます。 gmail を使用する場合は、以下を muttrc に追加して、mutt にgmails smtp サーバーを使用するように指示できます。
set smtp_url=smtps://$imap_user:$imap_pass@smtp.gmail.com
smtpsプロトコルに注意してください、これは重要です。問題が解決するはずです。
文字エンコーディングの問題
文字列のエンコーディングに問題がある場合、まずは Mutt の wiki の こちらのセクション を見てください。
中国語のテキストがまだ文字化けしている場合は、たとえヘッダーに GB2312 が指定されていても、GBK でのデコードが役立つことがあります。これは、mailcap
ファイルに以下を追加することで、iconv
で行うことができます。
text/plain; iconv -f gbk -t utf-8 %s; test=echo "%{charset}" | grep -ic "gb2312"; copiousoutput;
.muttrc
に以下を追加して有効にします。
auto_view text/plain
HTMLメールの場合、次のように置き換えることにより、メールキャップの関連する行を編集できます。 %{charset}
with $(echo %{charset} | sed s/gb2312/gbk/I)
, 例えば:
text/html; w3m -dump -I $(echo %{charset} | sed s/gb2312/gbk/I) %s; nametemplate=%s.html; copiousoutput
GMail にログインできない
Gmail は mutt
などのアプリからのアクセスを無効にしています。こちら の手順に従うことでアクセスが可能になります。
urlview で長すぎる URL は開くことができません
urlviewはテキストをデコードしないので、長すぎる URL は正しく解析されません [2] を参照してください。代わりに mutt にメールをデコードさせることができます urlview を開く行を次のコードに置き換えます。
macro index \cb "\ :set my_tmp_pipe_decode=\$pipe_decode\n\ :set pipe_decode\n\ |urlview\n\ :set pipe_decode=\$my_tmp_pipe_decode\n\ :unset my_tmp_pipe_decode\n" \ 'call urlview to extract URLs out of a message'
ドキュメント
初心者は Mutt のヘルプを見つけるのにも苦労するかもしれませんが、公式ドキュメントでほとんどのトピックについて書かれています。公式ドキュメントを読むことを推奨します。
- 公式マニュアル。Arch Linux の標準パッケージの mutt は HTML とプレーンテキストのマニュアルを
/usr/share/doc/mutt/
にインストールします。 mutt
とmuttrc
の man ページ。