「メッセージを検索」で特定フォルダのみ本文検索ができない
モデレータ: Forum Moderators
-
tbユーザー
「メッセージを検索」で特定フォルダのみ本文検索ができない
Thundebird 31.5.0 Windows7 Gmail
件名の通りです。
受信トレイ-フォルダA-フォルダB-フォルダC-フォルダX/Y というフォルダ構成になっています。
X、Yフォルダの両方とも、件名では検索できますが本文で検索することができません。
フォルダCに対して本文検索→フォルダC直下のメッセージのみ表示され、X・Y両フォルダ中のメッセージはひっかからない
フォルダBに対して本文検索→同上
問題のフォルダX、またはフォルダYに対して本文検索→見つかりませんでした
「サブフォルダも検索する」「サーバ上のメッセージを検索する」両方にチェックが入っています。
検索条件は「本文」「に次の文字を含む」で、フォルダC・X・Y内のメールの本文中に確実に存在する文字列を指定しています。
件名検索ならば検索され、条件にマッチしたメッセージが表示されます。
どうすれば本文の中身を検索してくれるのでしょうか?
件名の通りです。
受信トレイ-フォルダA-フォルダB-フォルダC-フォルダX/Y というフォルダ構成になっています。
X、Yフォルダの両方とも、件名では検索できますが本文で検索することができません。
フォルダCに対して本文検索→フォルダC直下のメッセージのみ表示され、X・Y両フォルダ中のメッセージはひっかからない
フォルダBに対して本文検索→同上
問題のフォルダX、またはフォルダYに対して本文検索→見つかりませんでした
「サブフォルダも検索する」「サーバ上のメッセージを検索する」両方にチェックが入っています。
検索条件は「本文」「に次の文字を含む」で、フォルダC・X・Y内のメールの本文中に確実に存在する文字列を指定しています。
件名検索ならば検索され、条件にマッチしたメッセージが表示されます。
どうすれば本文の中身を検索してくれるのでしょうか?
Re: 「メッセージを検索」で特定フォルダのみ本文検索ができない
*質問・投稿する前に、サポートサイトやヘルプ、このフォーラム内を検索・閲覧して
該当項目、同類・類似事例がないか、確認してみましょう。
また、広くインターネット上でも、同類・類似事例がないか、調べてみましょう。
*質問した後やアドバイスをもらった後は、放置せずに、結果や経緯を必ず書くように
しましょう。
*ここは、相互ユーザサポートを通じて、各種情報・事例を、ユーザ同士でシェアする
場でもあります。
tbユーザー さんが書きました:受信トレイ-フォルダA-フォルダB-フォルダC-フォルダX/Y というフォルダ構成になっています。
X、Yフォルダの両方とも、件名では検索できますが本文で検索することができません。
POP アカウントなら本文検索ができています。
#受信トレイ直下のツリー構造のフォルダ構成ですね。(4 階層)
IMAP アカウントではないでしょうか?
もし、IMAP アカウントならば、現在の仕様だと思われます。
[参照]
IMAP による同期 - パフォーマンスと検索 | Thunderbird ヘルプ
tbユーザー さんが書きました:どうすれば本文の中身を検索してくれるのでしょうか?
IMAP アカウントならば、アカウント設定内の [同期とディスク領域] > [メッセージの同期] で
「このアカウントのメッセージをコンピュータに保存する」にチェックを入れて、[詳細] ボタン
をクリックして、対象フォルダにチェックを入れます。
これで、メッセージ本体(本文を含む)をローカルに保存します。
つまり、オフラインでもメッセージ検索が可能になります。
Thunderbird の検索機能として、他にグローバル検索もあります。
[参照]
グローバル検索 | Thunderbird ヘルプ
【大きなお世話】
Tunderbird 31.6.0 が、すでにリリースされています。
アップデートをお勧めします。
[参照]
Thunderbird — Notes (31.6.0) — Mozilla
MozillaZine.jp » Thunderbird 31.6 がリリースされた
-
tbユーザー
Re: 「メッセージを検索」で特定フォルダのみ本文検索ができない
返信ありがとうございます。
はい、IMAPアカウントです。
アカウント設定内の [同期とディスク領域] > [メッセージの同期] を確認しましたが、
「このアカウントのメッセージをコンピュータに保存する」には既にチェックが入っており、問題のフォルダも対象フォルダになっていました。
が、「メッセージを検索」では検索されません:cry:
既に知っており、アップデートしようとしましたが何度か失敗しています。
Thunderbird公式ページからプログラム本体をダウンロードしようとしても「Thunderbird Setup 31.5.0.exe」がダウンロードされるので、
リリースが取り消されたのかと思っていました。
31.6.0はどこからダウンロードできるのでしょうか?
下記リンク先から提供されるのは31.5.0のようです。
[参照]
ダウンロード | 無料メールソフト Thunderbird
kiki さんが書きました:IMAP アカウントではないでしょうか?
もし、IMAP アカウントならば、現在の仕様だと思われます。
はい、IMAPアカウントです。
kiki さんが書きました:IMAP アカウントならば、アカウント設定内の [同期とディスク領域] > [メッセージの同期] でtbユーザー さんが書きました:どうすれば本文の中身を検索してくれるのでしょうか?
「このアカウントのメッセージをコンピュータに保存する」にチェックを入れて、[詳細] ボタン
をクリックして、対象フォルダにチェックを入れます。
これで、メッセージ本体(本文を含む)をローカルに保存します。
つまり、オフラインでもメッセージ検索が可能になります。
アカウント設定内の [同期とディスク領域] > [メッセージの同期] を確認しましたが、
「このアカウントのメッセージをコンピュータに保存する」には既にチェックが入っており、問題のフォルダも対象フォルダになっていました。
が、「メッセージを検索」では検索されません:cry:
グローバル検索では見つけることができました。kiki さんが書きました:Thunderbird の検索機能として、他にグローバル検索もあります。
kiki さんが書きました:【大きなお世話】
Tunderbird 31.6.0 が、すでにリリースされています。
アップデートをお勧めします。
既に知っており、アップデートしようとしましたが何度か失敗しています。
Thunderbird公式ページからプログラム本体をダウンロードしようとしても「Thunderbird Setup 31.5.0.exe」がダウンロードされるので、
リリースが取り消されたのかと思っていました。
31.6.0はどこからダウンロードできるのでしょうか?
下記リンク先から提供されるのは31.5.0のようです。
[参照]
ダウンロード | 無料メールソフト Thunderbird
Re: 「メッセージを検索」で特定フォルダのみ本文検索ができない
tbユーザー さんが書きました:アカウント設定内の [同期とディスク領域] > [メッセージの同期] を確認しましたが、
「このアカウントのメッセージをコンピュータに保存する」には既にチェックが入っており、問題のフォルダも対象フォルダになっていました。
が、「メッセージを検索」では検索されません
了解です。
該当 IMAP アカウントのサーバ上の受信トレイ直下に、フォルダA・B・C・X・Yがあり、
そこにメッセージがあり、同期対象として購読も設定されていますか?
そして、ローカルにメッセージがダウンロードできているのを確認できていますか?
【余談】
kiki さんが書きました:【大きなお世話】
Tunderbird 31.6.0 が、すでにリリースされています。
アップデートをお勧めします。
tbユーザー さんが書きました:既に知っており、アップデートしようとしましたが何度か失敗しています。
Thunderbird公式ページからプログラム本体をダウンロードしようとしても「Thunderbird Setup 31.5.0.exe」がダウンロードされるので、
リリースが取り消されたのかと思っていました。
31.6.0はどこからダウンロードできるのでしょうか?
Mozilla Japan のサイトの該当ページでは、ダウンロードリンクが古いバージョンのまま
になっているようですね。
以下のサイトページからどうぞ。
OS と言語版(Windows なら日本語版は ja です)を選択して、31.6.0 がダウンロード
できます。
[ダウンロードファイル保管サイト]
Index of /pub/thunderbird/releases/31.6.0
今後もアップデートに失敗するのであれば、一度、クリーンインストールをお試しくださ
い。
#Thunderbird のプロファイルを削除する必要はありません。
#念のため、C:\Users\ユーザ名\AppData\Local\Thunderbird\updates を
削除しておくのもいいかも知れません。(Windows Vista,7,8.1 の場合)
#管理者権限のユーザアカウントでのインストールの有無も確認を。
-
tbユーザー
Re: 「メッセージを検索」で特定フォルダのみ本文検索ができない
IMAPアカウントのサーバ上(Web上のGmail)にA・B・X・Yがあります。kiki さんが書きました: 該当 IMAP アカウントのサーバ上の受信トレイ直下に、フォルダA・B・C・X・Yがあり、
そこにメッセージがあり、同期対象として購読も設定されていますか?
そして、ローカルにメッセージがダウンロードできているのを確認できていますか?
フォルダ構成は「INBOX/A-B-X・Y」で、INBOX/Aは受信トレイと同階層にあります。
ローカルのThunderbird側は「受信トレイ-フォルダA-フォルダB-フォルダX・Y」です。
※以前「受信トレイ-フォルダA-フォルダB-フォルダC-フォルダX/Y」と書きましたが、階層が1つ少なかったです。申し訳ありません。
「同期対象として購読」というのがよく解りません。
また、メッセージがローカルにダウンロードできているかどうかを確かめるにはどうすれば良いでしょうか?
問題のフォルダXに対して、フォルダのプロパティ-同期タブを確認したところ
「このフォルダをオフラインで使用する」にはチェックが入っていますし、
その下の「今すぐダウンロード」を押した後にメッセージ検索を行ってみましたが、やはり検索されませんでした。
下記に書かれている「同期されていないメッセージについては、ヘッダのみ検索可能」という状態なのだと思いますが、なぜメッセージが同期されないのでしょうか…
パフォーマンスと検索:IMAP による同期 | Thunderbird ヘルプ
https://support.mozilla.org/ja/kb/imap- ... chaiaecuic
なお、前回教えて頂いたリンク先から本体をダウンロードし、31.6.0へアップデートできました。
ありがとうございます。
Re: 「メッセージを検索」で特定フォルダのみ本文検索ができない
tbユーザー さんが書きました:IMAPアカウントのサーバ上(Web上のGmail)にA・B・X・Yがあります。
フォルダ構成は「INBOX/A-B-X・Y」で、INBOX/Aは受信トレイと同階層にあります。
そのフォルダ(A・B・X・Y)内に該当メッセ―ジがあることを確認されていますか?
ブラウザでアクセスして、そのメッセ―ジの存在を確認できていますか?
そして、ちゃんとサイズがありますか?
tbユーザー さんが書きました:ローカルのThunderbird側は「受信トレイ-フォルダA-フォルダB-フォルダX・Y」です。
サ―バ上と同様に、そのフォルダ内にメッセ―ジがあることを確認されていますか?
そして、サイズはありますか?
要するに、本文を含むメッセ―ジの実体が、どこにあるのかです。
サ―バ上にはあるが、ロ―カルにない場合は、同期とダウンロ―ドができていないと
いうことになります。
また、ロ―カルにはあるが、サ―バ上にない場合は、これも同期ができていないとい
うことになります。
これをちゃんと確認してみないと、どういう状態なのかが不明です。
ですから、ちゃんと確認してくださいとお伝えしているのです。
tbユーザー さんが書きました:「同期対象として購読」というのがよく解りません。
メニュ―からも、該当フォルダの右クリックからも「購読」という項目があります。
そこで購読対象のフォルダを設定できます。
[参照スクリ―ンショット]
tbユーザー さんが書きました:また、メッセージがローカルにダウンロードできているかどうかを確かめるにはどうすれば良いでしょうか?
メッセ―ジの実体があるかどうかを確かめればいいのですから、サイズを見ればいい
でしょう。
テキストファイルですので、エディタで開けば、読むことも可能です。
IMAP アカウントのメッセ―ジは、プロファイル内の以下の場所に保管されています。
注:拡張子の無いファイルが、メッセ―ジの実体ファイルです。
ImapMail\imap.gmail.com (Gmail アカウントの場合)
ImapMail\imap.gmail.com\[Gmail].sbd (上記のサブフォルダ)
[参照]
Thunderbird のプロファイル | Thunderbird ヘルプ
tbユーザー さんが書きました:下記に書かれている「同期されていないメッセージについては、ヘッダのみ検索可能」という状態なのだと思いますが、なぜメッセージが同期されないのでしょうか…
パフォーマンスと検索:IMAP による同期 | Thunderbird ヘルプ
https://support.mozilla.org/ja/kb/imap- ... chaiaecuic
同期されていれば、ヘッダのみの検索は可能なはずです。
ヘッダ情報の検索もできなければ、メッセ―ジ本文の検索もできないのであれば、同
期もダウンロ―ドもできていないことになります。
tbユーザー さんが書きました:問題のフォルダXに対して、フォルダのプロパティ-同期タブを確認したところ
「このフォルダをオフラインで使用する」にはチェックが入っていますし、
その下の「今すぐダウンロード」を押した後にメッセージ検索を行ってみましたが、やはり検索されませんでした。
ダウンロ―ド実行中に、ステ―タスバ―左下付近に、ダウンロ―ド状況の表示が出ま
す。
それは確認されましたか?
念のため、最適化も実行してみましょう。
それでも検索しても現われないとしたら、ダウンロ―ドできていないか、ダウンロ―
ドしたものの、保存されていない可能性が考えられます。
となると、別の問題が起きているかも知れません。
Tunderbird のアップデ―トが正常にできないことと併せて、何かしらの問題を抱えて
いるかも知れません。
[参照:関連するかも知れない問題]
IMAP を有効にする - Gmail ヘルプ
IMAP クライアントの推奨設定 - Gmail ヘルプ
安全性の低いアプリがアカウントにアクセスするのを許可する - Google アカウント ヘルプ
Tech TIPS:メーラーからGmailへの接続時に認証(パスワード)のエラーが生じる場合の対処方法 - @IT
-
tbユーザー
Re: 「メッセージを検索」で特定フォルダのみ本文検索ができない
サーバ上にも、Thunderbirdでも、該当フォルダ内にはメッセージが存在しています。kiki さんが書きました:そのフォルダ(A・B・X・Y)内に該当メッセ―ジがあることを確認されていますか?
ブラウザでアクセスして、そのメッセ―ジの存在を確認できていますか?
そして、ちゃんとサイズがありますか?
サ―バ上と同様に、そのフォルダ内にメッセ―ジがあることを確認されていますか?
そして、サイズはありますか?
同じ日付の同じ内容のものです。
画像添付していただきありがとうございます。確認しました。kiki さんが書きました:メニュ―からも、該当フォルダの右クリックからも「購読」という項目があります。
問題のフォルダを含め、全てのフォルダに購読のチェックが入っています。
テキストエディタで開いたところ、問題のフォルダ内のファイルは本文箇所が全て文字化けしているようです(半角数字を除く)。kiki さんが書きました:メッセ―ジの実体があるかどうかを確かめればいいのですから、サイズを見ればいい
でしょう。
テキストファイルですので、エディタで開けば、読むことも可能です。
IMAP アカウントのメッセ―ジは、プロファイル内の以下の場所に保管されています。
注:拡張子の無いファイルが、メッセ―ジの実体ファイルです。
検索ができている他のファイルについては、メッセージ本文にあたる箇所はちゃんと日本語で表示されていました。
「今すぐダウンロード」を押しても反応はありません。kiki さんが書きました:ダウンロ―ド実行中に、ステ―タスバ―左下付近に、ダウンロ―ド状況の表示が出ます。
それは確認されましたか?
上記の通り、ローカルに存在していることはしているようです。
クライアントの再インストール、及び問題のフォルダを持つアカウントに対して「フォルダの最適化」を行いましたが改善しませんでした。kiki さんが書きました:念のため、最適化も実行してみましょう。
それでも検索しても現われないとしたら、ダウンロ―ドできていないか、ダウンロ―ドしたものの、保存されていない可能性が考えられます。
となると、別の問題が起きているかも知れません。
Tunderbird のアップデ―トが正常にできないことと併せて、何かしらの問題を抱えているかも知れません。
Re: 「メッセージを検索」で特定フォルダのみ本文検索ができない
tbユーザー さんが書きました:「サーバ上のメッセージを検索する」にチェックが入っています。
Gmail IMAPでこれを行うには、検索文字列をUTF-8で送る必要があります。
現在のThunderbirdの仕様では、フォルダープロパティーで指定されているフォールバック文字エンコーディングが、サーバーに送る検索文字列のcharsetになります。
tbユーザー さんが書きました:アカウント設定内の [同期とディスク領域] > [メッセージの同期] を確認しましたが、
「このアカウントのメッセージをコンピュータに保存する」には既にチェックが入っており、問題のフォルダも対象フォルダになっていました。
が、「メッセージを検索」では検索されません:cry:
「サーバ上のメッセージを検索する」を指定しているんだから、検索はサーバーで実行されるわけで、同期している・同期していないは本文の検索とは無関係。
-
tbユーザー
Re: 「メッセージを検索」で特定フォルダのみ本文検索ができない
「サーバ上のメッセージを検索する」にチェックを入れずに検索してもやはり表示されません。WADA さんが書きました:Gmail IMAPでこれを行うには、検索文字列をUTF-8で送る必要があります。tbユーザー さんが書きました:「サーバ上のメッセージを検索する」にチェックが入っています。
現在のThunderbirdの仕様では、フォルダープロパティーで指定されているフォールバック文字エンコーディングが、サーバーに送る検索文字列のcharsetになります。
なお、問題のフォルダのフォールバック文字エンコーディングは日本語(ISO-2022-JP)になっています。
「このエンコーディングをフォルダ内のすべてのメッセージに適用する」にチェックを入れたり、
「フォルダを修復」を押下したりしてみましたが以前として検索できません。
profile以下にある、メッセージの実体ファイルについて
問題のフォルダは文字コードがUTF-8になっているようです。
他の検索できるフォルダは日本語(JIS)となっています。
Re: 「メッセージを検索」で特定フォルダのみ本文検索ができない
tbユーザー さんが書きました:「このエンコーディングをフォルダ内のすべてのメッセージに適用する」にチェックを入れたり
自分が何をしているのか、ちゃんと理解して行っていますか?
これは、メール内のcharsetの指定が正しかろうが間違っていようが、フォールバックのcharsetを無条件に適用してメールを表示するものです。
正しいcharsetを指定しないでメールを送ってくることが多い場合に、表示/文字エンコーディングで毎回charsetを指定する、という手間を省くためのものです。
「検索」が、この設定によって影響されるのかされないのかは、知りません。
「検索で見つからないという、問題のimapフォルダー内」の、問題が起こっているメールを一つ、新規に作成したimapフォルダーにコピーし、新規に作成した「ローカルフォルダ」のメールフォルダーにコピーし、そこで「本文の検索」を行うと、どうなりますか?
(imapフォルダーの場合は、サーバーで検索)
「Advanced Search」(Search Subfolders の指定ができる唯一の検索)の場合、Thunderbirdによる「本文の検索」では、メッセージのソースを直接検索するのですが、
検索しようとしている文字列は、本当に、メッセージのソースにおいて、「メールの本文」にある文字列ですか?
base64エンコードされたテキストの添付ファイルの中身が、メールの表示では「メールの本文」のように表示されている、というようなことはないですか?
この場合、Thunderbirdは、base64エンコードされた状態のデータに対して検索をしますから、base64デコード後の文字列で検索しても、ヒットしませんし、
「サーバーで検索」の場合には、「本文」ではないから検索対象にならない、ということが起こり得ます。
なお、(A)「Advanced Search」(Search Subfolders の指定ができる唯一の検索)、(B) Cttrl+Shift+K(Quick Search)、(C) Ctrl+K(Global Search)で、それぞれ仕様が異なりますし、
統合フォルダ(Unified Folder)の場合、imapフォルダーに対してはサーバーで検索、ローカルのフォルダーに対してはローカルでの検索、になるなど、仕様が異なります。
表示/フォルダ/All、で、(A)の「Advanced Search」、のみに絞って、状況を単純にしてください。
「見つかるはずのメールが見つからない」(False Negative)の場合、
その、見つかるべきはずなのに見つからないメールが特定できてさえいれば、
そのメールだけを、ある新規に作成したメールフォルダーにコピーすれば、どのようなことが原因で見つからないのか、を調べることは、非常に簡単です。
その「検索」を行ってみて、メールのソースを調べるだけの話。
-
tbユーザー
Re: 「メッセージを検索」で特定フォルダのみ本文検索ができない
WADA さんが書きました:tbユーザー さんが書きました:「このエンコーディングをフォルダ内のすべてのメッセージに適用する」にチェックを入れたり
自分が何をしているのか、ちゃんと理解して行っていますか?...
すみません、もう少し必要なことだけ絞ってください、次に何をするべきなのですか?
Re: 「メッセージを検索」で特定フォルダのみ本文検索ができない
サーバ上にも、ローカルにも、フォルダ(A・B・X・Y)内に該当メッセ―ジがあることが確認
できたようですね。
にもかかわらず、本文の検索ができないとなると、該当メッセージが何か特殊なもののように
推測します。
テストとして、Thunderbird のローカルフォルダ内の任意のフォルダに、該当メッセージをコ
ピーして、そのフォルダを対象にしてメッセージの本文検索をおこなったら、どうなるかも試し
てみてください。
他のメッセージも同様に、同じフォルダにコピーして、本文の検索結果がどうなるかも試してみ
てください。
つまり、本文の検索ができるメッセージと、できないメッセージの有無を見つけてほしいという
ことです。
その有無を発見できたならば、それらのメッセージのソースで相違点を比較したら、違いがわか
る手がかりになると思われます。
そもそも、その本文の検索ができない該当メッセージは、どのようなものなのでしょうか?
できれば、メッセージのソースを提示・開示していただけないでしょうか。
注1:ヘッダも含めてお願いします。
注2:提示上支障のある箇所は、マスク処理してください。
次に、WADA さんからのヒント(サジェスチョン)についてです。
tbユーザー さんが書きました:「サーバ上のメッセージを検索する」にチェックが入っています。
WADA さんが書きました:Gmail IMAPでこれを行うには、検索文字列をUTF-8で送る必要があります。
現在のThunderbirdの仕様では、フォルダープロパティーで指定されているフォールバック文字エンコーディングが、サーバーに送る検索文字列のcharsetになります。
当方でも、Gmail IMAP アカウントで、フォルダのプロパティでフォールバック文字エンコー
ディングを UTF-8 に設定したところ、本文の検索ができました。
これは私も知らなかったことで、ひとつ知識が増えました。
tbユーザーさんも、同様に試してみてはいかがですか。
これで、フォールバック文字エンコーディングの違いによるものなのか、該当メッセージ特有
の問題なのかの切り分けがすすむと思います。
-
偶然的通行人
Re: 「メッセージを検索」で特定フォルダのみ本文検索ができない
遅ればせですが、横から失礼します。
サーバー(リモート)上に存在するデータではなく、クライアント(ローカル)上に取り込んだ(ダウンロードした)データに対しての検索([メッセージを検索] / [Ctrl] + [Shift] + [F])は、IMAP であれ、POP であれ、ローカルに保存されているメッセージの実体ファイルの中にあるテキスト(文字列)を検索します。
ご存知のように、Thunderbird のメッセージデータは mbox 形式のフォーマットを持っていて、Thunderbird 上のひとつのフォルダ内に存在する複数のメッセージを、システム上はひとつのファイルとして管理しています。
例えば、[受信トレイ] の実体は、プロファイル内にある Inbox という拡張子のないファイルです。このファイルは単純なテキスト形式です。
[メッセージを検索] は、この拡張子のない実体ファイルを検索対象にしていることになります。
(「特定フォルダ」とおっしゃっているのはユーザーが任意に作成したもので、この実体はプロファイル内にある "「特定フォルダ」と同名のファイル" になります。)
通常、Thunderbird は受信したメッセージが指定している条件を自動的に判別して、文字エンコーディングの処理をおこないます。
単純化していいますと、[受信トレイ] に2つのメッセージが存在するなら、実体である Inbox ファイルにはこの2つのメッセージのデータがまとめて格納されています。
メッセージ A が、
Content-Type: text/plain; charset=ISO-2022-JP
Content-Transfer-Encoding: 7bit
で定義されていたとすると、このメッセージは ISO-2022-JP の文字コードで書き込まれます。
そのあと受信したメッセージ B が、
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
で定義されたメッセージだったなら、このメッセージは UTF-8 の文字コードで書き込まれます。
(ここで、先に存在したメッセージ A のデータが、UTF-8 に変換されることはありません。)
この状態の Inbox ファイルを、文字コードを指定できるテキストエディタで開いてみるとわかりますが、ISO-2022-JP の文字コードで開くと、メッセージ A はきちんと読める状態で表示されますが、メッセージ B は文字化けした状態で表示されます。逆に、UTF-8 の 文字コードで開くと、メッセージ A は文字化けした状態で表示され、メッセージ B はきちんと読める状態で表示されます。
このことは、個々のメッセージの文字エンコーディングには様々な形式がありえても、それらは互いに干渉し合わず、個別に独立しており、それぞれに指定された条件で処理されることを意味しています。
この状態のフォルダに対して [メッセージを検索] を実行すると、通常は個々のメッセージの指定に応じた文字エンコーディングを自動的に処理して、検索文字を適切に探し出してくれます。
例えば、ISO-2022-JP で書かれたメッセージに含まれる「質問」という文字列も、UTF-8 で書かれたメッセージに含まれる「質問」という文字列も、等しく拾い上げてくれるはずです。
それが「特定フォルダのみ本文検索ができない」ということは、そのフォルダの実体であるファイルの内部構成が、Thunderbird の自動的な文字エンコーディング処理を阻害するような状態になっている疑いがあると考えられるのではないでしょうか。
いささか強引な事例ですが、実体ファイルをテキストエディタで開いたあと不用意に上書き保存すると、そのときのテキストエディタで指定されていた文字コードで一律に上書きされますから、内部にある個々のメッセージの全部または一部が、その指定と食い違った文字コードで置き換えられてしまいます。その結果、[メッセージを検索] をはじめ、正常な文字処理ができなくなってしまうことがあります。
このようなケースなら、検索機能それ自体の問題というよりは、検索対象の実体ファイルに問題が起こっていると考えたほうがいいかと思われます。
そのあたりを点検するための簡単なテストとして、その「特定フォルダ」を対象に、半角英数文字(ASCII 文字)だけで [メッセージを検索] を実行するとどうなりますか。
例えば、本文内に書かれている URL に含まれる "http" の文字列で本文を検索するといった条件で検索結果が正しく出るなら、さしあたって検索機能に本質的な問題があるとは考えにくくなります。
実際に検索できなかったキーワードが何かわかりませんが、ASCII 規格以外の文字コードで扱われるものだと想像されます。差し支えのない範囲で、実際に検索できなかったキーワードを例示していただくと、このフォーラムを見ているみなさんに tbユーザー さんのところの事情が、今よりは見えてくるのではないでしょうか。
kiki さんや WADA さんからもアドバイスがありますが、問題が起こっている「特定フォルダ」のメッセージを他のフォルダにコピーして、元の実体ファイルから切り離した状態で検索の動作をチェックして正常・非正常の条件を切り分けられれば、今よりは問題の在り処が見えてくるかもしれません。
(補足1)
「特定フォルダ」の実体ファイルに予期しない矛盾が起こるという観点から、質問文の中で疑問に感じた点を挙げてみます。
IMAP サーバー上のフォルダ構成はこういうことでしょうか?
┬ [Inbox]
│ ├ [B]
│ └ [X]
│ └ [Y]
└ [A]
Thunderbird 上のフォルダ構成はこういうことでしょうか?
┬ [受信トレイ]
├ [A]
├ [B]
└ [X/Y]
検索に関してフォルダの階層構造はとくに影響はないと思いますが、気になるのは「フォルダX/Y」という記述と「フォルダX・Y」という記述の違いです。
IMAP 上のフォルダは [X] [Y] の2つあり、Thunderbird 上ではこれを [X/Y] という1つのフォルダにまとめている、といった意味合いなのでしょうか?
同期というのは、基本的に1対1の関係で成り立つものなので、このあたりをどのような方法で運用しているかによっては、Thunderbird 上の [X/Y] という1つのフォルダ、すなわちプロファイル内にある1つの実体ファイルに何らかの問題を起こす一因になっている可能性も考えられるのでは、と思いました。
実際のところはよくわかりませんので、tbユーザー さんがおこなっておられるサーバー・クライアント間の同期関係をできるだけ正確に説明していただけると、他のユーザーさんから新たなアドバイスが寄せられるかもしれません。
(補足2)
[グローバル検索] は、[メッセージを検索] とは仕組みが違います。
[グローバル検索] は、実体ファイルにあるメッセージデータが、global-messages-db.sqlite というデータベース形式のファイルに取り込まれたものの内部を検索していますから、検索対象が根本的に異なっています。
[メッセージを検索] は、個々の実体ファイルを対象としています。
「特定フォルダ」の実体ファイルに障害が発生したとしても、それ以前に global-messages-db.sqlite に取り込まれた内容が問題なければ、[グローバル検索] の結果は正常に出るはずです。
逆にいえば、[グローバル検索] で適正な検索結果が出るのに、[メッセージを検索] では問題があるのなら、実体ファイルに何らかの不具合が起こっている疑いが濃厚だといえるかもしれません。
とりあえず気になったことを書かせていただきました。的外れな、あるいは役に立たない話だったらすみません。
サーバー(リモート)上に存在するデータではなく、クライアント(ローカル)上に取り込んだ(ダウンロードした)データに対しての検索([メッセージを検索] / [Ctrl] + [Shift] + [F])は、IMAP であれ、POP であれ、ローカルに保存されているメッセージの実体ファイルの中にあるテキスト(文字列)を検索します。
ご存知のように、Thunderbird のメッセージデータは mbox 形式のフォーマットを持っていて、Thunderbird 上のひとつのフォルダ内に存在する複数のメッセージを、システム上はひとつのファイルとして管理しています。
例えば、[受信トレイ] の実体は、プロファイル内にある Inbox という拡張子のないファイルです。このファイルは単純なテキスト形式です。
[メッセージを検索] は、この拡張子のない実体ファイルを検索対象にしていることになります。
(「特定フォルダ」とおっしゃっているのはユーザーが任意に作成したもので、この実体はプロファイル内にある "「特定フォルダ」と同名のファイル" になります。)
通常、Thunderbird は受信したメッセージが指定している条件を自動的に判別して、文字エンコーディングの処理をおこないます。
単純化していいますと、[受信トレイ] に2つのメッセージが存在するなら、実体である Inbox ファイルにはこの2つのメッセージのデータがまとめて格納されています。
メッセージ A が、
Content-Type: text/plain; charset=ISO-2022-JP
Content-Transfer-Encoding: 7bit
で定義されていたとすると、このメッセージは ISO-2022-JP の文字コードで書き込まれます。
そのあと受信したメッセージ B が、
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
で定義されたメッセージだったなら、このメッセージは UTF-8 の文字コードで書き込まれます。
(ここで、先に存在したメッセージ A のデータが、UTF-8 に変換されることはありません。)
この状態の Inbox ファイルを、文字コードを指定できるテキストエディタで開いてみるとわかりますが、ISO-2022-JP の文字コードで開くと、メッセージ A はきちんと読める状態で表示されますが、メッセージ B は文字化けした状態で表示されます。逆に、UTF-8 の 文字コードで開くと、メッセージ A は文字化けした状態で表示され、メッセージ B はきちんと読める状態で表示されます。
このことは、個々のメッセージの文字エンコーディングには様々な形式がありえても、それらは互いに干渉し合わず、個別に独立しており、それぞれに指定された条件で処理されることを意味しています。
この状態のフォルダに対して [メッセージを検索] を実行すると、通常は個々のメッセージの指定に応じた文字エンコーディングを自動的に処理して、検索文字を適切に探し出してくれます。
例えば、ISO-2022-JP で書かれたメッセージに含まれる「質問」という文字列も、UTF-8 で書かれたメッセージに含まれる「質問」という文字列も、等しく拾い上げてくれるはずです。
それが「特定フォルダのみ本文検索ができない」ということは、そのフォルダの実体であるファイルの内部構成が、Thunderbird の自動的な文字エンコーディング処理を阻害するような状態になっている疑いがあると考えられるのではないでしょうか。
いささか強引な事例ですが、実体ファイルをテキストエディタで開いたあと不用意に上書き保存すると、そのときのテキストエディタで指定されていた文字コードで一律に上書きされますから、内部にある個々のメッセージの全部または一部が、その指定と食い違った文字コードで置き換えられてしまいます。その結果、[メッセージを検索] をはじめ、正常な文字処理ができなくなってしまうことがあります。
このようなケースなら、検索機能それ自体の問題というよりは、検索対象の実体ファイルに問題が起こっていると考えたほうがいいかと思われます。
そのあたりを点検するための簡単なテストとして、その「特定フォルダ」を対象に、半角英数文字(ASCII 文字)だけで [メッセージを検索] を実行するとどうなりますか。
例えば、本文内に書かれている URL に含まれる "http" の文字列で本文を検索するといった条件で検索結果が正しく出るなら、さしあたって検索機能に本質的な問題があるとは考えにくくなります。
実際に検索できなかったキーワードが何かわかりませんが、ASCII 規格以外の文字コードで扱われるものだと想像されます。差し支えのない範囲で、実際に検索できなかったキーワードを例示していただくと、このフォーラムを見ているみなさんに tbユーザー さんのところの事情が、今よりは見えてくるのではないでしょうか。
kiki さんや WADA さんからもアドバイスがありますが、問題が起こっている「特定フォルダ」のメッセージを他のフォルダにコピーして、元の実体ファイルから切り離した状態で検索の動作をチェックして正常・非正常の条件を切り分けられれば、今よりは問題の在り処が見えてくるかもしれません。
(補足1)
「特定フォルダ」の実体ファイルに予期しない矛盾が起こるという観点から、質問文の中で疑問に感じた点を挙げてみます。
tbユーザー さんが書きました:IMAPアカウントのサーバ上(Web上のGmail)にA・B・X・Yがあります。
フォルダ構成は「INBOX/A-B-X・Y」で、INBOX/Aは受信トレイと同階層にあります。
ローカルのThunderbird側は「受信トレイ-フォルダA-フォルダB-フォルダX・Y」です。
※以前「受信トレイ-フォルダA-フォルダB-フォルダC-フォルダX/Y」と書きましたが、階層が1つ少なかったです。申し訳ありません。
IMAP サーバー上のフォルダ構成はこういうことでしょうか?
┬ [Inbox]
│ ├ [B]
│ └ [X]
│ └ [Y]
└ [A]
Thunderbird 上のフォルダ構成はこういうことでしょうか?
┬ [受信トレイ]
├ [A]
├ [B]
└ [X/Y]
検索に関してフォルダの階層構造はとくに影響はないと思いますが、気になるのは「フォルダX/Y」という記述と「フォルダX・Y」という記述の違いです。
IMAP 上のフォルダは [X] [Y] の2つあり、Thunderbird 上ではこれを [X/Y] という1つのフォルダにまとめている、といった意味合いなのでしょうか?
同期というのは、基本的に1対1の関係で成り立つものなので、このあたりをどのような方法で運用しているかによっては、Thunderbird 上の [X/Y] という1つのフォルダ、すなわちプロファイル内にある1つの実体ファイルに何らかの問題を起こす一因になっている可能性も考えられるのでは、と思いました。
実際のところはよくわかりませんので、tbユーザー さんがおこなっておられるサーバー・クライアント間の同期関係をできるだけ正確に説明していただけると、他のユーザーさんから新たなアドバイスが寄せられるかもしれません。
(補足2)
tbユーザー さんが書きました:グローバル検索では見つけることができました。
[グローバル検索] は、[メッセージを検索] とは仕組みが違います。
[グローバル検索] は、実体ファイルにあるメッセージデータが、global-messages-db.sqlite というデータベース形式のファイルに取り込まれたものの内部を検索していますから、検索対象が根本的に異なっています。
[メッセージを検索] は、個々の実体ファイルを対象としています。
「特定フォルダ」の実体ファイルに障害が発生したとしても、それ以前に global-messages-db.sqlite に取り込まれた内容が問題なければ、[グローバル検索] の結果は正常に出るはずです。
逆にいえば、[グローバル検索] で適正な検索結果が出るのに、[メッセージを検索] では問題があるのなら、実体ファイルに何らかの不具合が起こっている疑いが濃厚だといえるかもしれません。
とりあえず気になったことを書かせていただきました。的外れな、あるいは役に立たない話だったらすみません。
-
tbユーザー
Re: 「メッセージを検索」で特定フォルダのみ本文検索ができない
諸用でPCから離れていました。返信ありがとうございます。
あのあとフォルダ構成を変えてしまったのですが、状況は相変わらずですので引き続きアドバイスいただければと思います。
現在のフォルダ構成について、Thunderbird内のものとGmail側のものをキャプチャしましたので添付します。
[img]http://[/img]
[img]http://[/img]

黒い箇所は問題のないフォルダです。
赤フォルダの中に青フォルダが入っています。
特定の通販サイトから受信したメールを下記のように振り分けています。
赤…出荷案内、その他(お知らせなど)全て
青…注文確認のみ
出荷案内と注文確認のメールが全て検索出来ない状態です。
最初にこのトピックを立てた時は、出荷案内も注文確認と同階層にフォルダを作り振り分けていました。
(それがXとYだったということです。)
その後、出荷案内のメールは他のメールと一緒に赤フォルダへ移動しましたが、
赤フォルダに対し本文検索を行っても、他のメールだけヒットし、出荷案内のメールはヒットしない状態です。
とりあえず注文確認のメールをローカルフォルダに移動して本文検索してみましたが、
ヒットしませんでした。
上にも書いた通り、注文確認と出荷案内のメールが問題になっているようです。
メッセージソースを提示したいのですが、マスクしそびれた個人情報などがあった場合など、
後から削除できないと困るため、画像を外部にアップロードしました。
お手数ですがご確認お願いいたします。
[検索できないメール]
http://gyazo.com/fcdca2d01c9a377ffc66f4681417c0d7
[検索できるメール]
http://gyazo.com/ebea3f78523f40e0370015ecc4c3e16e
※いずれも同じ通販サイトから受信したメールです
あのあとフォルダ構成を変えてしまったのですが、状況は相変わらずですので引き続きアドバイスいただければと思います。
現在のフォルダ構成について、Thunderbird内のものとGmail側のものをキャプチャしましたので添付します。
[img]http://[/img]
[img]http://[/img]

黒い箇所は問題のないフォルダです。
赤フォルダの中に青フォルダが入っています。
特定の通販サイトから受信したメールを下記のように振り分けています。
赤…出荷案内、その他(お知らせなど)全て
青…注文確認のみ
出荷案内と注文確認のメールが全て検索出来ない状態です。
最初にこのトピックを立てた時は、出荷案内も注文確認と同階層にフォルダを作り振り分けていました。
(それがXとYだったということです。)
その後、出荷案内のメールは他のメールと一緒に赤フォルダへ移動しましたが、
赤フォルダに対し本文検索を行っても、他のメールだけヒットし、出荷案内のメールはヒットしない状態です。
kiki さんが書きました:テストとして、Thunderbird のローカルフォルダ内の任意のフォルダに、該当メッセージをコピーして、そのフォルダを対象にしてメッセージの本文検索をおこなったら、どうなるかも試してみてください。
他のメッセージも同様に、同じフォルダにコピーして、本文の検索結果がどうなるかも試してみてください。
とりあえず注文確認のメールをローカルフォルダに移動して本文検索してみましたが、
ヒットしませんでした。
kiki さんが書きました:つまり、本文の検索ができるメッセージと、できないメッセージの有無を見つけてほしいということです。
その有無を発見できたならば、それらのメッセージのソースで相違点を比較したら、違いがわかる手がかりになると思われます。
そもそも、その本文の検索ができない該当メッセージは、どのようなものなのでしょうか?
できれば、メッセージのソースを提示・開示していただけないでしょうか。
注1:ヘッダも含めてお願いします。
注2:提示上支障のある箇所は、マスク処理してください。
上にも書いた通り、注文確認と出荷案内のメールが問題になっているようです。
メッセージソースを提示したいのですが、マスクしそびれた個人情報などがあった場合など、
後から削除できないと困るため、画像を外部にアップロードしました。
お手数ですがご確認お願いいたします。
[検索できないメール]
http://gyazo.com/fcdca2d01c9a377ffc66f4681417c0d7
[検索できるメール]
http://gyazo.com/ebea3f78523f40e0370015ecc4c3e16e
※いずれも同じ通販サイトから受信したメールです
フォルダのプロパティからフォールバック文字エンコーディングをUTF-8にし、「サーバ上のメッセージを検索する」にチェックを入れて本文検索しましたが、ヒットしませんでした。kiki さんが書きました:次に、WADA さんからのヒント(サジェスチョン)についてです。tbユーザー さんが書きました:「サーバ上のメッセージを検索する」にチェックが入っています。WADA さんが書きました:Gmail IMAPでこれを行うには、検索文字列をUTF-8で送る必要があります。
現在のThunderbirdの仕様では、フォルダープロパティーで指定されているフォールバック文字エンコーディングが、サーバーに送る検索文字列のcharsetになります。
当方でも、Gmail IMAP アカウントで、フォルダのプロパティでフォールバック文字エンコーディングを UTF-8 に設定したところ、本文の検索ができました。
これは私も知らなかったことで、ひとつ知識が増えました。
tbユーザーさんも、同様に試してみてはいかがですか。
これで、フォールバック文字エンコーディングの違いによるものなのか、該当メッセージ特有
の問題なのかの切り分けがすすむと思います。
Re: 「メッセージを検索」で特定フォルダのみ本文検索ができない
キャプチャしたスクリーンショットありがとうございました。
わかりやすいですね。
提示いただいた内容を簡単に整理すると、本文検索ができないメッセージは、
・同じ通販サイト(企業)からの受信メッセージ
・出荷案内、注文確認などの中の一部の特定のメッセージ
ですね。
そして、アドバイスに沿って試したところ、
・ローカルフォルダで、本文検索しても結果は同様だった
・フォルダのプロパティで、フォールバック文字エンコーディングを UTF-8
で「サーバ上のメッセージを検索する」にチェックを入れて本文検索しても
同様だった
ということになりますね。
となると、該当メッセ―ジの本文エンコードに何やら問題がありそうに思えます。
#文字コードの違い・改変、エンコードの仕様、改変、破損?
もうひとつ確認です。
そもそも本文検索できないメッセージ本文は、Thunderbird 上できちんと読めるのでしょう
か?
#IMAP 上の同期でも、ローカルフォルダに置いたものも両方ともです。
せっかくメッセージのソースをスクリーンショットで提示していただきましたが、テキスト
データではないため、実際に試して、再現テストをおこなうことができません。
理由は、本文検索できる・できないメッセージのヘッダ情報に違いはあるのですが、エンコ
ードされている本文部分の問題の有無までは、実際にはわからないからです。
#先に、しっかり書いておけば良かったですね。申し訳ありません。
これに関連した確認方法のアドバアイスが、先に 偶然的通行人 さんからありました。
ぜひ、試した結果を教えてください。
偶然的通行人 さんが書きました:このようなケースなら、検索機能それ自体の問題というよりは、検索対象の実体ファイルに問題が起こっていると考えたほうがいいかと思われます。
そのあたりを点検するための簡単なテストとして、その「特定フォルダ」を対象に、半角英数文字(ASCII 文字)だけで [メッセージを検索] を実行するとどうなりますか。
例えば、本文内に書かれている URL に含まれる "http" の文字列で本文を検索するといった条件で検索結果が正しく出るなら、さしあたって検索機能に本質的な問題があるとは考えにくくなります。
本文検索できないメッセ―ジの本文にある半角英数字と全角文字(日本語)で、それぞれ本
文検索を [メッセージを検索] でおこなってみるという方法です。
その結果によって、問題点の切り分けが、以下の書かれているように、より進展するという
ことです。
偶然的通行人 さんが書きました:実際に検索できなかったキーワードが何かわかりませんが、ASCII 規格以外の文字コードで扱われるものだと想像されます。差し支えのない範囲で、実際に検索できなかったキーワードを例示していただくと、このフォーラムを見ているみなさんに tbユーザー さんのところの事情が、今よりは見えてくるのではないでしょうか。
【ヘッダ相違点:気になった点】
(1)本分検索できるメッセージヘッダ
(2)本分検索できないメッセージヘッダ
・Content-Transfer-Encoding: quoted-printable となっているので、明らかに
メッセージの本文エンコード形式が異なる。
差出人側のシステムの仕様が違うのかな?
・Avast! スキャンは、誰が、どの時点でやっているのかな?
【補足】
念のためですが、Thunderbird のセーフモード起動や新規プロファイルでも再現するか確
認しておくといいかも知れません。
#アドオンやプロファイルが破損しているなどの問題を抱えている可能性もあるため