TEST for Thunderbird 45.0b1

Thunderbird 45.0b1 における

日本語メッセージの作成テスト


次期メジャーバージョン(ESR 相当)となる Thunderbird 45.0 系では、日本語メッセージの作成においていくつかの仕様変更や新しい機能が盛り込まれています。
とくに注目したいのは、"format=flowed" の "delsp=yes" がサポートされたことです。
Thunderbird 38.x 系では、UTF-8 のとき自動的に "format=flowed" が適用されるだけでしたが、45.0 系では ISO-2022-JP でも "delsp=yes" 付きで自動的に適用されるようになっています。

"delsp=yes" のサポート自体は日本語ユーザーにとっては喜ばしいことで、関係者のご努力に謝意を表したいと思います。
注意するとしたら、既存バージョンの Thunderbird をそのまま 45.0 に自動更新したとき、ユーザーが施しているかもしれない設定変更やカスタマイズが、45.0 系の仕様を正しく機能させなかったり、思わぬ結果を導いてしまう可能性が考えられる点でしょうか。
そのあたりの注意喚起を兼ねて、当方の環境(Windows 7 / 8)でテストした結果をお示しすることで、Thunderbird 45.0 の正式リリースに備える材料にしていただければと思います。


(共通の条件)

  • Windows 版 Thunderbird 45.0b1(日本語ロケール)での日本語メールの作成
  • 設定はすべてデフォルト値。例えば、文字列の Wrap 値は 72(半角換算/全角なら 36 文字)

(個別条件)

メッセージの形式、エンコーディング、1行の長さ(改行までの文字数)の3要素を組み合わせ、以下のパターンを Thunderbird 45.0b1 でテストしました。
比較として、同一条件における Thunderbird 38.5.1 の動作も試しました。


(1)プレーンテキスト形式
   ├ ISO-2022-JP エンコーディング
   │ ├ 1行の長さが全角 36 文字以内 ………………(A-1)
   │ └ 1行の長さが全角 36 文字を大幅に超える …(B-1)
   └ UTF-8 エンコーディング
     ├ 1行の長さが全角 36 文字以内 ………………(C-1)
     └ 1行の長さが全角 36 文字を大幅に超える …(D-1)
(2)HTML 形式
   ├ ISO-2022-JP エンコーディング
   │ ├ 1行の長さが全角 36 文字以内 ………………(A-2)
   │ └ 1行の長さが全角 36 文字を大幅に超える …(B-2)
   └ UTF-8 エンコーディング
     ├ 1行の長さが全角 36 文字以内 ………………(C-2)
     └ 1行の長さが全角 36 文字を大幅に超える …(D-2)

(サンプル)

メッセージ作成に使用した文字列サンプルは次の通りです。
(C)と(D)のサンプルに含まれる青字の文字 は ISO-2022-JP では取り扱えないため、Thunderbird は自動的に UTF-8 でエンコーディングします。したがって、いちいちエンコーディングを切り替えなくても、サンプルをコピー&ペーストするだけで追試できます。


(A)
上田敏『海潮音』より
シャルル・ボドレエル作「薄暮の曲」上田敏訳
時こそ今は水枝さす、こぬれに花の顫ふころ、
花は薫じて追風に、不斷の香の爐に似たり。
匂も音も夕空に、とうとうたらり、とうたらり、
ワルツの舞の哀れさよ、疲れ倦みたる眩暈よ、

(B)
芥川龍之介『地獄變』から
堀川の大殿樣のやうな方は、これまでは固より、後の世には恐らく二人とはいらつしやいますまい。噂に聞きますと、あの方の御誕生になる前には、大威徳明王の御姿が御母君の夢枕にお立ちになつたとか申す事でございますが、兎に角御生れつきから、並々の人間とは御違ひになつてゐたやうでございます。でございますから、あの方の爲さいました事には、一つとして私どもの意表に出てゐないものはございません。早い話が堀川のお邸の御規模を拜見致しましても、壯大と申しませうか、豪放と申しませうか、到底私どもの凡慮には及ばない、思ひ切つた所があるやうでございます。中にはまた、そこを色々とあげつらつて大殿樣の御性行を始皇帝や煬帝に比べるものもございますが、それは諺に云ふ群盲の象を撫でるやうなものでもございませうか。

(C)
上田敏『海潮音』より
シャルル・ボドレエル作「薄暮の曲」上田敏訳
花は薫じて追風に、不斷の香の爐に似たり。
痍に惱める胸もどき、オロン樂の清掻や、
ワルツの舞の哀れさよ、疲れ倦みたる眩暈よ、
神輿の臺をさながらの雲悲みて艶だちぬ。

(D)
芥川龍之介『蜘蛛の糸』から
すると、一生懸命にのぼった甲斐があって、さっきまで自分がいた血の池は、今ではもう暗の底にいつの間にかかくれて居ります。それからあのぼんやり光っている恐しい針の山も、足の下になってしまいました。この分でのぼって行けば、地獄からぬけ出すのも、存外わけがないかも知れません。陀多は両手を蜘蛛の糸にからみながら、ここへ来てから何年にも出した事のない声で、「しめた。しめた。」と笑いました。ところがふと気がつきますと、蜘蛛の糸の下の方には、数限もない罪人たちが、自分ののぼった後をつけて、まるで蟻の行列のように、やはり上へ上へ一心によじのぼって来るではございませんか。陀多はこれを見ると、驚いたのと恐しいのとで、しばらくはただ、莫迦のように大きな口を開いたまま、眼ばかり動かして居りました。

(テスト結果)

上記の各条件で作成したメッセージを下書き保存し、そのソースの Content ヘッダを確認しました。その結果を一覧表にします。赤字部分が、Thunderbird 38.x 系との違いです。
メッセージ本文の実際の表示状態は、メールクライアントの仕様やその設定内容などに左右されますので、ここでは省略します。


作成したメッセージの Content ヘッダ

Thuderbird 45.0b1 Thunderbird 38.5.1
A-1 Content-Type: text/plain; charset=iso-2022-jp; format=flowed; delsp=yes
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
B-1 Content-Type: text/plain; charset=iso-2022-jp; format=flowed; delsp=yes
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
C-1 Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
D-1 Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
A-2 Content-Type: text/html; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Content-Type: text/html; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
B-2 Content-Type: text/html; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Content-Type: text/html; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
C-2 Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit
D-2 Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: base64
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

(補足)

違いが一番わかりやすい例を挙げると、次のようになりましょうか。上表の B-1 に相当するケースです。
プレーンテキストのメッセージ作成ウィンドウに(B)のサンプル文字列をペーストしたとき、Thunderbird のデフォルト設定であれば、全角 36 文字(半角 72 文字相当)で自動的に折り返して表示されます。
この表示のされ方は、45.0b1 と 38.5.1で違いはありません。しかし、これを下書き保存したものをメッセージペインやタブで見たとき、明白な違いがわかるでしょう。


Thunderbird 38.5.1 では、既定の文字数で折り返して表示されます。作成画面で見るのと、ほぼ同じ状態です。ソースは、その文字数ごとに改行コードが挿入されています。


Thunderbird 45.0b1 では、既定の文字数では折り返されず、元のサンプル文字列が持つ改行に沿うように表示されます。ただし、Thunderbird の設定によってウィンドウの幅では折り返しが効いています。
ソースは、 "format=flowed" に従って既定の文字数ごとに半角スペースと改行コードが挿入されていますが、表示するときはこの改行コードは無視されます。同時に、"delsp=yes" があるので改行コードとセットになっている半角スペースが削除されますから、日本語文字列の途中に不用意なアキが入ることはありません。


もし、Thunderbird の自動改行をあてにして、メッセージ作成画面どおりの表示を期待すると、裏切られることになります。
Thunderbird 45.0 での日本語プレーンテキストメッセージの作成で、"format=flowed" を使わず旧来通りの折り返し(自動的な改行挿入)に基づく表示を望むなら、mailnews.send_plaintext_flowed の値を false に切り替えることで、"format=flowed" を無効化できます。


他にも、折り返し指定(Wrap)まわりの設定条件、アドオンなどによるカスタマイズの状況によっては、思わぬ動作になることがあるかもしれません。

実際の日常的な場面では、メッセージの新規作成以外にも返信や転送などをおこないます。自分が受信したメッセージに対しての編集・送信が、Thunderbird 45.0 ではどのようになるのか、テストしておく余地はあろうかと思いますが、その導入として本記事が参考になれば幸いです。


[おわり]