もくじ
- Thunderbird のメッセージ削除の仕組み - えむもじら
- Thunderbird のメッセージフォルダの最適化 - えむもじら
- Thunderbird のプレーンテキストタグ - えむもじら
- Thunderbird のスマイリー(顔文字) - えむもじら
- Thunderbird: メッセージの重要度を変更する - えむもじら
- Thunderbird: 添付ファイルのインライン表示 - えむもじら
- Thunderbird: 引用記号の表示を > にしたい / QuoteColors - えむもじら
- Thunderbird: メッセージの日付フォーマットを指定する - えむもじら
- Thunderbird: 未読メールをフォルダをまたがって読むときのダイアログを消す - えむもじら
- Firefox をセーフモード(-safe-mode)で起動する - えむもじら
- htmlファイルにくっついてくるフォルダ、"Save Page As"->"Web Page, complete"の謎
- Favicon (Web Site Icon)
- メールの検索
- MailNewsのサーチバーに "Advanced" ボタンを復活させる
- メール振り分け処理の連続適用、事後フィルタ
- メール関連ファイルあれこれ
- ジャンクメールコントロール
- 必要なときだけHTMLメールを書きたい
- プロファイルフォルダの場所
- about:config による設定 - えむもじら
- user.js による設定
- userContent.css による設定
- userChrome.css による設定
- training.dat の中身を覗いてみる
htmlファイルにくっついてくるフォルダ、"Save Page As"->"Web Page, complete"の謎
Mozilla や IE では表示している Web ページを参照している画像ファイルなどと一緒にローカルディスクに保存できます。その場合、Windows 版では foo.html として保存すると、画像ファイルなどはfoo_files というフォルダの中に保存されます。このファイルとフォルダ、不思議なことに、ファイルを削除するとフォルダも一緒に削除され、ファイルを移動してもやはりフォルダが一緒について来ます。フォルダを操作してもファイルが付いてきます。
これは Windows の機能で、foo.html に対して foo_files というフォルダを単純に名前で関連づけているようです。txt などの拡張子ではこの機能は働きませんでした。ME や 2000 以降でサポートされているようです。
WindowsXP ではエクスプローラの「フォルダオプション」→「表示」→「詳細設定」 の「Web ページとフォルダを対にして管理します。」で制御できます。ただし、3つある動作のうち上2つは同じ動作で、「1つのファイルとして表示」というのは効かないようです。
[2002/12/24作成、2003/1/4追記]
Favicon (Web Site Icon)
Web サーバーのルートディレクトリに favicon.ico という 16x16 のアイコンファイルをおいておくと、IE でそのサーバのページをお気に入りに登録したときお気に入りのアイコンが favicon.ico になります。細かい動作についてはここやここ、あるいはここなどを参照してください。
Mozilla の場合、デフォルトでは HTML ヘッダで
<link rel="shorcut icon" href="...">
として指定された場合に、アドレスバーとタブバーのところにアイコンが表示されます。このページを
Mozilla やFirefox で見ている人は「」という Web Site Icon (Mozilla ではこう呼ぶようです)が見えているはずです。もし見えていなければ
Web Site Icon が無効になっています。View→Preferences→Appearance の Show
Web Site Icons をチェックしてください。なお、Mozilla の場合、icon ファイルだけではなく、任意の画像ファイルを指定できるようです。アニメーション
GIF も OK です。
IE のように favicon.ico を探しに行かせるには user.js に
user_pref("browser.chrome.favicons", true)
を指定する必要があります。
ただし、このあたりの仕様は今後変更される可能性はあります。bug 2698(jp)、113574、143687を参照してください。
メールの検索
Mozillaのメールの検索には以下の4種類があります。
1. プレビュー画面のメッセージに対する検索(Edit->Find in This Message、Ctrl-F)
これは、ダイアログに検索する文字列を指定してメッセージ本文の検索を行います。残念ながら、ブラウザで導入されている
Find As You Type(旧名Type Ahead Find、いわゆるインクリメンタルサーチ)はまだサポートされていません。
2. クイックサーチ
スレッドペインの上にあるサーチバーのテキストボックスに検索文字列を入力すると、そのフォルダ内でサブジェクトまたは送信者にその文字列が含まれるメッセージのみを表示します。検索文字列を入力する途中でも検索処理が始まります(インクリメンタルサーチ)。1.3a以降では"abc
| xyz"のような or 検索が可能となりました。
3. 詳細検索(Tools->Search Messages、Ctrl-Shift+F)
ダイアログで詳細な検索設定を行ってメッセージの検索が行えます。複数の検索条件が設定できますが、残念ながら、and検索とor検索を組み合わせることはできません。また、絞り込み検索機能もありません。対象フォルダは一つしか選べませんが、サブフォルダを含めることはできます。
見つかったメッセージはダイアログ下部に表示されますが、使い勝手はお世辞にも良いとはいえません。メッセージ本文を見るには、新規に1ペインまたは3ペインのウィンドウを開かなければなりません(元の3ペインウィンドウで表示できるようにして欲しい)。コンテキストメニューもサポートされていません。
メッセージ本文を検索すると非常に時間がかかります。これは、base64 でエンコードされた添付ファイルもそのまま検索しているためです(添付ファイルの中身を検索しているのではなく、エンコードされた無意味な文字列を検索しているだけです)。検索速度を速めるために、サブジェクトと本文のand検索をすれば、サブジェクト検索でヒットしたものに対して本文検索が行われるのではないか?と誰でも思いそうですが、残念ながら Mozilla はそこまで賢くはなく(というよりなんとお馬鹿なことに)、サブジェクトでマッチしたかにかかわらず本文を検索してしまうようです。
選択項目で Customize を選ぶと、検索対象とするヘッダを指定できます。例えば X-Mailer を登録して Outlook から送信されたメールを検索するというのもできますね。ここで登録したものはフィルター(振り分け)やメッセージ・ビューでも使用できます。
4. メッセージ・ビュー
1.3a以降でサポートされました。ドロップダウンリストの項目を選択することにより、メッセージの絞り込みを行うことができます。未読、ラベル、People
I Know(アドレス帳に載っている人からのメール)、Recent Mail (24時間以内)、Last
5 Days、Not Junk、Has Attachments が用意されています(なぜかフラグが用意されていません)。ユーザが新しく項目を追加することが可能です。
先にメッセージ・ビューで絞り込んで、さらにクイックサーチで絞り込みをかけることができます。順番が逆だとできません。
[2002/12/27作成]
MailNews のサーチバーに "Advanced" ボタンを復活させる
MailNews のクイックサーチバーから Advanced (詳細)検索ボタンが無くなってしまいましたが(bug 179953)、これを復活させるには、userChrome.css に以下を追加します。
#advancedButton { visibility: visible !important; /* for 1.3 */ display: block !important; } /* for 1.4 */
ただし、こうするとクイックサーチバーがずいぶん窮屈になります。クイックサーチとメッセージビューに比べると、詳細検索の利用頻度は低いと思われるので、デフォルトでは削除されたのは仕方ないと思います。しかし、"Subject or Sender contains:" の表示が冗長なので単に "Search:" とでもすればよいのにと思いますがどうでしょうか。
ついでに、クイックサーチバーの Message View を非表示にするには以下を追加します。
#viewPickerBox { visibility: collapse; }
[2003/3/16作成]
メール振り分け処理の連続適用、事後フィルタ
あるメールに対する振り分け(Filter)処理は、そのメールに対して、フォルダへの移動またはメッセージの削除が実施されるまでルールが順に適用されます。
これを利用すると、例えば、ルール1で自分宛のメールに旗を立て、ルール2でAさんからのメールにラベルを付け、ルール3でサブジェクトによりフォルダに移動するという一連の処理を同一のメールに対して実行できます。1つの振り分け設定に対して複数の処理を設定できるのでこちらを使用した方が効率がよいケースもあるでしょう。
また、事後フィルタ(Filter after the fact)機能により、既存のメールフォルダに対して指定したフィルタを一括適用できます。これはTools->Run Filters on Selected Folder、またはTools->Manage Filtersの画面のRun Nowボタンで行うことができます。
メール関連ファイルあれこれ
POP3 メールの情報は、プロファイルフォルダのMail/アカウント名の下に、例えば Inbox フォルダであれば、Inbox に mbox 形式というテキスト形式でメール本文が、Inbox.msf に管理情報が格納されています。また、Mozilla 上で Inbox 以下にサブフォルダを作成した場合、Inbox.sbd というサブフォルダが作成されます。
Profile/Mail/アカウント/Inbox ;メール本文(mbox)
Inbox.msf ;管理情報 Inbox.sbd/Mozilla ;サブフォルダ Mozilla.msf
なお、各アカウントフォルダの下にこれら2種類以外のファイルをおいておくと
Mozilla はそれを mbox ファイルとして扱ってしまうので注意が必要です。例えば
zip ファイルをおいておくとそのファイル名がメールフォルダとして Mozilla
Mail のフォルダとして表示されてしまいます。もちろん mbox ファイルとしては不正であるので中身は見えません。一方、フォルダの場合、mbox ファイルと対になるフォルダ以外は単純に無視されます。
msf ファイルには高速に処理するためのインデックス情報などが格納されており、このファイル自体を削除しても起動処理に時間がかかるだけで、何ら重要な情報を失うわけではありません(たぶん)。逆に、メッセージの移動や削除ができなくなったなどの動作異常が起こり、Mozilla
を再起動しても直らないようであっても、このファイルを削除してみるとたいていは正常に戻ります。Compact
This Folder を実行しても .msf を再作成するように思いますが、正確なところはわかりません。
mbox ファイルはテキストファイルなので、場合によってはテキストエディタ等で編集することが可能です。その場合、必ず上述の対応する msf ファイルは削除してください。さもないと、mbox とインデックス情報との対応がとれなくなって動作異常を引き起こします。もちろん、すべての作業は(Quich launch も含めて)Mozilla を完全に終了させてから行うべきです。
更新:以前、msf ファイルを削除しても失う情報は無いと書いたのは間違いで、以下のケースでは情報が失われます。
- ジャンクメールかどうかのフラグ。bug 195737[E]
- メッセージヘッダ中に X-Mozilla-Status と X-Mozilla-Status2 を持たないメッセージの各種フラグ(未読・既読、ラベル、フラグなど)。bug 195734[E]
- メッセージフィルタで変更した優先度。
二つ目は、Mozilla 以外で読み込んだメッセージ、つまり、他のメールクライアントが作成した mbox ファイルを Mail フォルダにコピーして持ってきたケースが該当します。Tool->Importで取り込んだメッセージは大丈夫と思われます。
その他、メールに関連するファイルとしては以下のようなものがあります。
プロファイルフォルダ以下:
panacea.dat
フォルダペインの表示情報などが格納されています。削除しても特に問題はないと思われます。
mailViews.dat
Viewの設定項目が保存されます。デフォルトでは組み込みの"People I Know"、"Recent Mail"、"Last 5 Days"、"Not Junk"が登録されていますが、Customized で登録したものもここに登録されます。メール情報を移行する場合はこのファイルもコピーしましょう。
virtualFolders.dat
検索フォルダの設定情報が保存されます。
training.dat
ジャンクメールの学習結果が格納されるファイルです。メール情報を移行する場合はこのファイルもコピーしましょう。学習結果をダンプするための Perl スクリプトがあります。
abook.mab
アドレス帳(Personal Address Book)。
history.mab
集積アドレス帳(Collected Addresses)。送受信したメールから自動的に集めたメールアドレス。
Mail/アカウントフォルダ以下:
msgFilterRules.dat
メッセージフィルターの設定情報が格納されています。以前のバージョンではrules.datというファイル名だったようです。メール情報を移行する場合はこのファイルもコピーしましょう。
popstate.dat
POPサーバーの状態か何かを保存するファイルのようです。削除しても特に問題はないと思われます。
filterlog.html
メッセージフィルタのログです。
junklog.html
ジャンクメールコントロールのログです。
[2003/1/21作成、2003/4/30更新、2005/3/5更新]
ジャンクメールコントロール
Mozilla dot Party in Japan 4.0 の発表資料がここにあります。
「ジャンクメールフィルタ入門」 (pdf [260KB] | ppt [274KB])
ジャンクメールコントロールの学習結果を格納するファイル training.dat に関してはこちらへ。
必要なときだけHTMLメールを書きたい
普段メール編集をテキストモードで行っている場合、必要なときだけHTMLメールを書きたい場合、SHIFT+Compose、SHIFT+Reply でHTMLモードで編集を行うことができます。
逆にデフォルトが HTML モードの場合は同様の操作でテキストモードにすることができます。
user.js による設定
Mozilla(Firefox,Thunderbirdも同様)の設定情報はプロファイルフォルダの pref.js に保存されています。このファイルを修正することにより設定の変更も可能ですが、もうひとつ user.js というファイルも用意されています。user.js の設定は pref.js よりも優先されて使用され、その設定は Mozilla 起動時に読み込まれ pref.js にも書き込まれます。pref.js は Mozilla がその内容を変更しますが、user.js は Mozilla からは参照されるだけで、変更が行われることはありません。したがって、pref.js を修正するのではなく、user.js に設定を追加することによって Mozilla の設定を行うべきです。
user.js はデフォルトの状態では存在しませんので、もしプロフィイルフォルダに見つからなければ新規作成してください。なお、user.js に日本語を含める場合、文字コードは必ず UTF-8 にしてください。
// user.jsの例 // 未読メールをフォルダをまたがって読むときのダイアログ // 0 - ダイアログを出さずに次のフォルダへ進む。 // 1 - ダイアログを出す(デフォルトの動作)。 // 2 - ダイアログを出さず、次のフォルダへも進まない。 user_pref("mailnews.nav_crosses_folders", 0); // Show the user agent of incoming messages user_pref("mailnews.headers.showUserAgent", true);
user.js の設定を取り消すには、まず user.js からその設定を削除するかコメントアウトします。さらに、pref.js からその設定の箇所を探して削除するか、または about:config でその設定をデフォルトに戻します。そうすることにより次回起動時にデフォルトの設定に戻ります。
[2002/12/30作成] [2004/8/8更新]
userContent.css による設定
プロファイルフォルダ/chrome フォルダの userContent.css によりコンテンツの見え方を制御できます。
userContent.css はデフォルトでは存在しないので、もしファイルが無ければ新規作成してください。プロファイルフォルダ/chrome フォルダにある userContent-example.css を userContent.css にリネームするのが簡単です。
/* userContent.cssの例 */ /* メールニュースのプレーンテキストタグを個別に無効にする */ .moz-txt-star { font-weight:normal ! important; } .moz-txt-slash { font-style:normal ! important; } .moz-txt-underscore { text-decoration:none ! important; }
/* プレーンテキストタグの前後の記号を表示しない */ .moz-txt-star > .moz-txt-tag { display: none; } .moz-txt-slash > .moz-txt-tag { display: none; } .moz-txt-underscore > .moz-txt-tag { display: none; }
[2004/8/8更新]
userChrome.css による設定
プロファイルフォルダ/chrome フォルダの userChrome.css により Mozilla(Firefox,Thunderbird) の見え方を制御できます。
userChrome.css はデフォルトでは存在しないので、もしファイルが無ければ新規作成してください。プロファイルフォルダ/chrome フォルダにある userChrome-example.css を userChrome.css にリネームするのが簡単です。
/* userChrome.cssの例 */ /* メールのアカウント名のフォントをboldからnormalにする */ treechildren:-moz-tree-cell-text(folderNameCol, isServer-true) { font-weight: normal !important; } /* メールのアカウント名を新着がある場合にだけボルドにする ただし、一度フォルダ内をクリックすると新着情報は失われる */ treechildren:-moz-tree-cell-text(folderNameCol, biffState-NewMail, isServer-true) { font-weight: bold !important; } /* 残念ながらこれは効かない */ treechildren:-moz-tree-cell-text(folderNameCol, newMessages-true, isServer-true) { font-weight: bold !important; } /* MailNewsのサーチバーに"Advanced"検索ボタンを表示する */ #advancedButton { visibility: visible !important; /* for 1.3 */ display: block !important; } /* for 1.4 */ /* MailNewsのサーチバーのMessage Viewを非表示にする */ /*#viewPickerBox { visibility: collapse; }*/ /* grippy を表示しない */ toolbargrippy { display: none !important; }
[2004/8/8更新]
training.datの中身を覗いてみる
training.dat はジャンクメールコントロールの学習結果を格納しているファイルであり、プロファイルディレクトリにあります。
- training.dat をダンプする Perl スクリプト spamdump.pl v1.1
[5/29] 大幅に修正して、ソート機能を入れてみました。# Usage: spamdump [-s(1-4)] [-limit [+|-]p] [-v] [trainig.dat] # # -s(1-4) # ソートのキーを指定する。 # 1: spam確率(デフォルト) # 2: spamカウント # 3: non-spamカウント # 4: 単語 # -limit [+|-]p # pは0以上1以下の実数 # 正の実数の場合スパム確率がp以上の単語のみをダンプする # 負の実数の場合スパム確率がp以下の単語のみをダンプする # デフォルトではすべての単語をダンプする。 # -v : verbose mode
- ダンプ結果例
pmin=0.000000 pmax=1.000000 bmin=0 nGood 1313 #学習した非スパム数 nBad 446 #学習したスパム数 total non-spam tokens 36578 #非スパムに現れた単語数 total spam tokens 18756 #スパムに現れた単語数 0 1376 0.990 x-nortonav-timeoutprotection 0 766 0.990 0pt #数値の意味は左から 0 702 0.990 0in #1:非スパムに現れた数 2 570 0.990 strong #2:スパムに現れた数 0 553 0.990 msonormal #3:スパム確率 0 540 0.990 'font-size 0 504 0.990 mankind 2 458 0.990 dir 0 432 0.990 rtl 0 382 0.990 usa 0 380 0.990 0cm 1 373 0.990 god 0 325 0.990 roman ...
- 関連する Mozilla のソースファイル
- training.dat の構造
項目 サイズ 値 cookie 4byte FE ED FA CE GoodCount 4byte non-spam文書の数 BadCount 4byte spam文書の数 以下non-spam文書の単語(tokenCountの数だけ繰り返し) tokenCount 4byte tokenの数 count 4byte 出現回数 size 4byte 単語の長さ(バイト数) string size 単語(UTF-8) 以下spam文書の単語(tokenCountの数だけ繰り返し) tokenCount 4byte tokenの数 count 4byte 出現回数 size 4byte 単語の長さ(バイト数) string size 単語(UTF-8)