Apollo Manroku

2010年以前に書いた記事の過去ログ

改行の怪 – Justice 2006年7月10日

Filed under: Internet — アポロ @ 06:02

たいていのメールソフトは一定の文字数で自動改行するための機能を備えています。その際の禁則処理などについて気になったので、私のパソコンの中に入っているいくつかのメールソフトについて、実際にメールを送信して確かめてみました。

Thunderbirdは送信時に72文字できれいに改行してくれました。禁則処理などは、句読点はぶら下げ禁則で、「っ」などの小文字は追い出し禁則(手前の大文字とセットで次の行に行くように改行)されていて、なかなか見た目はよろしいようです。自動改行するしないの切り替えは特に見当たらず、指定した文字数で常に改行されることになるみたいです。改行したくなければ「1000文字」とかに設定しておけばいいのかもしれません。

PostPet Ver.2.0 の場合には、文字数の設定は見当たらなかったのですが、送信時には72文字で自動的に改行されていました。禁則処理は一切適用されず、句読点や小文字が行頭に来ていることもありました。

変わっているのは Opera というWebブラウザに付属しているメールソフトです。このメールソフトも、特に改行の文字数の設定は見当たらなかったのですが、どうやら、76文字で自動的に改行されているようです。ところが、他のメールソフトで見ると76文字で改行されているにもかかわらず、Opera 自身で受信してみると、送信したときのままの状態で表示されます。つまり、自分で入力した改行以外は削除されて表示されることになります。これについての技術的な説明は後ほど書きますが、この規格に対応したメールソフトであれば、もはや改行位置で悩む必要はなくなるという、一歩先を行くメールソフトなわけです。

実は、Outlook Express も Opera に似た動作をしているようです。ただし、Windows XP Service Pack 2 を適用する前のバージョンの Outlook Express では、Thunderbird などと同様に設定した文字数(初期設定では76文字)で改行して送信されます。ところが、Windows XP Service Pack 2 を適用すると、76文字で改行するように設定してあっても、なぜか76文字ではなくて、150文字や200文字など、全く予期せぬ位置で改行されて送信されてしまっています。Outlook Express 自身で受信してみてもやはりおかしな位置で改行されたまま表示されるのですが、このメールを Opera で受信してみると、とりあえず自動的に挿入された改行だけは削除されてつながって表示されるようにはなりました。しかし、改行があった場所に空白が挿入されてしまっています。

これは、どういうことかというと、詳しくは、下記のマイクロソフトのページをごらんいただくとよいと思います。

Outlook Express で折り返し設定が有効にならない

要するに、インターネット技術標準化委員会(IETF)によって定められた標準規格「RFC2646」というものに対応したことが原因らしいのです。この規格によれば、日本語などでは76文字などの一定の文字数で自動的に改行したりせずに送信することが推奨されているようです。

"format=flowed"について(標準規格「RFC2646」)

RFC2646によって具体的に何が変わったのかというと、"format=flowed"という仕組みが取り入れられたのです。これは、英文などで、単語を基準に自動改行して送信する仕組みです。メールソフトの設定で、あらかじめ76文字などで改行するように設定してあったとしても、英文の場合は単語の途中で改行できないので、76文字の前後の単語の区切りで自動改行されることになります。自動改行した場合には、その行の末尾に空白文字を付加しておくことで「自動改行しましたよ」というしるしとしておくわけです。これで通常の手動入力した改行と区別するわけですね。そして、このメールを"format=flowed"に対応したメールソフトで受信したときには、自動改行された部分だけを認識して、改行を削除してから表示するというわけです。"format=flowed"に対応していないメールソフトではそのまま改行されて表示されるだけです。
"delsp=yes"について

Operaの場合には、さらに一歩進んだRFC3676という規格で定められている"delsp=yes"という仕組みを取り入れています。"format=flowed"では、自動改行の前に空白文字を付加したわけですが、そのまま改行を削除してつなげてしまうと、空白が残ってしまいます。英文などではこれで問題はないわけですが、日本語の場合には空白が残っていると困ります。そこで、"format=flowed"とともに"delsp=yes"が指定されたメールでは、空白も削除して表示することで、この問題を解決したわけです。

Opera で送信したメールを Opera で受信したときには、"format=flowed" と "delsp=yes" の両方が有効になるので、日本語のメールがきちんとつながって表示されたのです。Outlook Express から送信したメールも Opera で受信すれば自動的に挿入された改行が削除されて表示されますが、Outlook Express で送信する際に "delsp=yes" を指定していなかったので、空白が残ってしまったというわけです。

ただ、一見すると Opera の送信するメールが最も合理的にも思えるのですが、これがもし、日本語と英語の混在したメールだったら、どのような結果になるのかは、ちょっとわかりません。英文の場合には、"delsp=yes" ではまずいですからね。

それに、"format=flowed" に対応していないメールで受信したときにも、表示上は問題はないものの、行末に空白文字が付加されていることで、いろいろと厄介な問題が出てきます。たとえば、受信したメールの文章を引用したり、再利用するために改行を削除してつなげようと思ったときに、空白文字があると、それも一緒に削除しなければならず、非常に手間がかかることになります。改行を削除するだけならテキストエディタのコマンドひとつで簡単にできるのですが……。

やはり、日本語のメールの場合には、無理に "format=flowed" で送信するよりも、今までどおり、普通に改行していた方がよさそうです。

Thunderbird も "format=flowed" には対応しているようでしたが、日本語のメールを送信するときには "format=flowed" ではない普通の形式で送信するようになっているみたいです。英語でメールを送信するときにはたぶん "format=flowed" で送信するのでしょう(そこまで試してないのでわかりませんが)。

"format=flowed" などについては下記のページを参考にしました。

文字数と行数について – インターネットメールの注意点

現状では Outlook Express のメール送信時の仕様は日本語のメールを送信するには適していません。結局、標準規格といっても現状では日本語の事は十分に考慮されていない欠陥規格なのです。

それに、いくら標準規格だからといっても、日本語のメールで改行を全く挿入せずにメールを送信することは避けた方がいいと思います。依然として、1000文字前後で文字化けするメールサーバの仕様も残っているわけですからね。

今のところ、私の場合は、パソコンユーザ宛のメールには70文字(全角35文字)で改行して送信し、携帯ユーザ宛のメールには句点を目安に(つまり1文ずつ)改行して送信するようにしています。

今回のお話にもっともふさわしいと思われるタロットカードは、「XI 正義」です。

このカードは、22枚の大アルカナの中間地点にあるカードです。1番~10番までの10枚のカードが「X 運命の輪」に象徴され、12番~21番までの10枚が「XXI 世界」に象徴されたステージです。11番目の「XI 正義」で折り返して、タロットは次のステージに向かうのです。このカードは、いわば、大アルカナの改行記号ですね。

正義の女神が右手に持った剣は文を行末で切断して改行するためのものです。左手の天秤は一行の文字数を正確に量るためのものです。

しかし、大アルカナには22枚のカードがあります。1番~10番までの10枚のカードと、12番から21番までの10枚のカードに「XI 正義」のカードを1枚加えても21枚にしかなりません。実は、大アルカナの中には、まるで自らの存在を否定するかのような、0番のカード、「0 愚者」があるのです。このカードは常にその場所を変え、定位置を持ちません。愚者はどこに行ってしまったのかというと、見えないところにいたのです。

メールの送信形式を "format=flowed" にすると、改行の手前に、空白文字が挿入されます。空白文字は目には見えないので、改行されて表示された画面上では全く気が付きません。その空白文字が「0 愚者」だったんですね。こいつのおかげで、Outlook Express の送信する日本語のメールは非常にまずいことになっているのです。せっかく正義の女神が天秤で正確に測って改行したのに、空白文字のおかげで天秤が傾いてしまいます。まさに、愚か者のしわざです。

これで、大アルカナ22枚の説明がきちんとつきましたね。大アルカナが22枚あるのは、それなりに、われわれの世界の法則を暗示しているかのようです。

広告
 

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中