Opera 7 は嫌いだ!



 本題に入る前に。前回書いた「Japanistおまえもか」に、不適切な表記があったかもしれないので、その点を修正させていただきたい。

 ぼくは、Japanistを、2002から2003へバージョンアップするとき、2002で設定したキー定義が引き継がれないと書いた。これは、もしかしたら、ぼくの環境のせいかもしれない。じつは、インストールのときにキー設定が引き継がれなかったので、まだ残っている2002のカスタマイズ設定を保存し直して(テキストファイルに保存できる)、それを2003に読み込ませてみた。それでも、キー設定が反映されなかったので、「できない」と、思い込んでいたのだ。

 ところが……前回の「Japanistおまえもか」を書いてしばらくしてから、キー設定とはべつの箇所を確認したくて、もう一度、2002の設定ファイルを2003に読み込んだら、なんと、キー設定が反映されちゃった。なんで? 前は反映されなかったのに?

 うーむ。わからん。もうJapanistのデフォルトで、身体を慣らしてしまおうと思って、キー設定のところはいじってなかったのだけど(だから、2002の設定が反映されたことに気づいたのだけど)、またまた、以前の環境に戻って、喜んでいいんだか、悲しんでいいんだか、よくわかりません(苦笑)。

 というわけで、2003へバージョンアップしようと考えているみなさん(非常に少ないと思いますが)。キー設定も反映されるかもしれません。「かも」です(苦笑)。


 ではでは、これより先は、今回の本題です!


 みなさんは、「Opera」という名前のブラウザをご存じだろうか。ご存じない方のためにちょこっと説明すると、ノルウェーのOpera Software ASAという会社が開発した、軽量で、動作スピードが速い、けっこうイケてるブラウザだ。じっさい最新版のバージョン7(以下Opera 7)を使ってみると、Internet Explorer(以下IE)より、表示が早く感じる。変な比喩だけど、Operaがホームページを表示しているところを見ていると、早口でベラベラしゃべりまくる人を見ているような感じだ。

 以前ぼくは、「ホームページ悪戦苦闘」というエッセイで、ホームページには「構造」があると書いたよね。たぶんOperaは、この構造を、読み込んだ順に、どんどん表示しちゃうように設計されているんじゃないかと思う。IEにしろネスケにしろ、その構造をすべて読み込んでから、完成したページとして表示するから、表示が遅く感じるんだ。もちろんOperaは、「構造」を解釈するためのエンジン(アルゴリズム?)も高速なんだとは思うけど。

 非常に個人的な感覚だけど(測定したわけではないから)、Opera、IE、Netscape4.7、Netscape7.0の順に早いような気がするね。Opera 7を使っていると、スピードの面だけで言えば、なかなか快適だ。

 さらにOperaには、IEにない機能が搭載されている。おもしろいところでは、Opera 7で新しく搭載されたスモール・スクリーン・レンダリング。これは、見ているページを、わざと細長くレンダリング(表示)し直して、PDA(携帯端末)での見た目を、すぐに確認できる機能だ。PDAもサポートしたいと思っている、ホームページ管理者には、便利な機能だろう。

 このように、競争原理があるからこそ、ブラウザも進化するはずなんだ。だからネスケやOperaには、がんばってほしいと思うのだけど……

 それでも、ぼくは声を大にして言いたい。Opera 7は嫌いだ!

 雑談掲示板にもちょっと書いたので、覚えている人もいると思うけど、Opera 7は、字下げのために入れている、行頭の空白(スペース)を無視してくれちゃうんだ。先日、脆弱性を改善した、Ver.7.03が出たので、淡い期待を持ってインストールしてみたけど、やっぱりダメだった。

 そんなバカな。

 というのが、最初の印象だった。たしかに英文では、行頭に空白(スペース)を入れる表現はない。たとえばIBMのホームページビルダーなんて徹底してる。英文、つまり半角のアルファベットだと、行頭にスペースを入れることは許可されない。ピンと警告音が鳴って、スペースを入れさせてくれないんだ。(もちろん、全角のスペースなら入れられるよ)

 でも、日本語では、段落の頭を一文字下げるのが規則ではないか。いくら外国製だからって、日本語にローカライズされた製品で、日本語の規則を無視するっていうのはおかしくないか。

 ちょっと待った。たしかにそうなんだけど、本当は、文句を言う場所が違うんだ。またまた、以前に書いた「ホームページ悪戦苦闘」を思い出してもらいたいのだけど、文章の美観に関しては、CSSを使って指定するのが正しい。覚えてるよね。段落の字下げも、このCSSで指定するのが、標準化団体のワールドワイド・ウェブ国際コンソーシアム(W3C)が、推奨する方法なんだ。

 具体的に言うと、CSSで、段落に「インデント」を設定しておくわけ。こうすれば、段落の行頭に、CSSで指定した分の(ポイントや、emなどで指定できる)インデントが挿入されて、いわゆる「字下げ」が行われる。

 つまり、Opera 7は、標準化団体が推奨する方法を、キチンと守ったブラウザってことなんだ。だから、Opera 7を責めてはいけないのだよ。IEやNetscapeのほうが、異端なんだよね。

 ところが……創作小説を発表しているサイトは、ここで大きな問題に直面する。

 こういうことなんだ。CSSでインデントを指定する方法だと、テキストを段落で切り分けなきゃいけなくなる。このエッセイは、横書きでの読みやすさを考慮して、段落が変わったときに、一行、空白行を入れているから、段落の切り分けをしているようなもんだけど(実際には段落として、<p></P>で囲ってるわけじゃない)、小説の場合はそうじゃない。ベタで書くよね。小説で空白行を入れるのは、シーンの移り変わりを、明確にしたいときぐらいのものだ(もちろん、章が変わるときも切るけど)。※注1

 そう。テキストをベタで書くと(段落を分けてやらないと)CSSは、どこが段落なのかを見分けることができないから、まったく意味を成さなくなる。(だから、bodyタグに対して指定しても無駄です)

 その問題に目をつぶって、小説をこのエッセイみたいに、段落ごとに細切れにするにしても、まだ問題はある。CSSで指定してしまうと、何がなんでも、インデントが入っちゃうから、セリフのときに使うカギ括弧(「」←ってやつが)行頭にきたときも、字下げが行われてしまう。朝日新聞なんかは、カギ括弧のときも字下げをしているけれど、一般的な小説では、カギ括弧が行頭にきたときは字下げをしない。CSSで、これらを区別するのは大変だ(実質的には不可能だと思う)。※注2

※注意1、2
上記のように書いたところ、さっそく読者の方から、ぼくの不勉強ご指摘いただきました。毎度のことながら、読者のみなさんに助けれております。この場をお借りして、お礼を申し上げます。(2003/04/05修正)

まず※注意1の、段落を作ると段落間が開いてしまう問題ですが、これはCSSでマージンをゼロに指定すれば大丈夫です。

つぎに※注意2の、カギ括弧にもインデントが入ってしまう問題は、クラス名を付けて地の文の段落と区別しちゃえば大丈夫です。そして、CSSにカギ括弧の段落はインデントがゼロになるように書き込みます。これで問題解決。いやはや、classに気がつかなくてお恥ずかしい限りです。


 とはいえ、回避策はある。標準化団体の推奨する方法からは外れるけど、掲示板で、狂猿さんも教えてくださったとおり、空白を示す「&nbsp;」をソースに打ち込めばいい。これは半角を表すマークだから、全角にするには「&nbsp;&nbsp;」と、二つ続ける。

 この方法であれば、段落の切り分けを考えなくてもいい。今までどおり、全角スペースを行頭の字下げに用いて書いたテキストに対して、ソースコード上で、「全角スペース→&nbsp;&nbsp;」という置換処理をすればいい。

 ただし、この置換処理をソースコード上で直接やってしまうと、「字下げ」とは関係ないスペースも置換されちゃうから、まず、テキスト上で、全角スペースを、あり得ない文字「☆■♪」とかに置換しておいて、そのあと、ソース上で「☆■♪→&nbsp;&nbsp;」とやれば、うまくいきます。

 ついでに、「&nbsp;&nbsp;」を入れる処理のいいところは、ブラウザに依存しないってところですな。CSSだとブラウザによって解釈が違うから、インデントの「幅」が、ブラウザによって変わってしまうんだよね。

 さて。それでは、日本語のサイトで、上記のCSSによる指定か、あるいは「&nbsp;&nbsp;」を入れる丁寧な処理をやっているサイトはどれだけあるだろうか。とくに、日本語について、きちんと「対応」していると思われるサイトを調べてみました。

 まず、朝日新聞。ここは何もやっていなかった。IEでは字下げして見えるけど、Opera 7では、消えている。

 続いて、日本語の正しい使い方を解説した「記者ハンドブック」なんて出版物もある共同通信社はどうだろう。ここもOpera 7では、全滅だった。

 さらに、やはり日本語の正しい使い方を解説している「Webことば百科」というサイトを持つ、三省堂はどうだろう。ここも全滅。「Webことば百科」自体が、Opera 7では、まともに表示されない。

 ついでに言うと、上でOpera 7の紹介記事を書いているDOS/Vマガジン(Opera 7の記事を含め)も、Opera 7では、ちゃんと表示されない。

 ぼくが探した範囲では、意外なことに、外資系であるはずのCNNの日本語サイトが、Opera 7でも、まともに見ることができた。ここではCSSではなく「&nbsp;&nbsp;」を入れる処理がされていた。※注意3

※注意3
このエッセイ執筆時(2003年4月2日)の調査です。現在(2003年5月9日)は、CNNの日本語サイトの記事から、字下げそのものが無くなっています。情報がすぐ古くなって困りますな。修正が大変です(苦笑)。


 以上のように、字下げを「全角スペース」で行っているサイトは、非常に多い。というか、ほとんどのサイトがそうだろう。「&nbsp;&nbsp;」を入れるのが、もっとも楽な方法とはいえ、ぼくは、自分のすべての作品に、「&nbsp;&nbsp;」を入れる気にはなれない。ためしに、エッセイの一部と、「花嫁の理由」「スーパーマンの恋人」を直してみたけど、えらく、面倒な作業ですよ。短いコラム程度ならいいけど、長編小説を直すのは、ホントに大変。

 というわけで。いま一度、声を大にして言いたい。Opera 7は嫌いだ!

 Script1は、OperaのVer.7系統をサポートしません。というか、できることなら、ほかのブラウザで見てください。Operaでうちのサイトを見られるくらいなら、やはり、あんまり使ってほしくないNetscapeのVer.4.7だって、歓迎しちゃいたいくらいです。字下げが全部消えちゃうなんて、正直言って許せません。OperaのVer.7系統で、文章を表示して、さらにコピー&ペーストで、ワープロなりエディタなりに貼り付けても、字下げが消えてなくなりますので、どうぞご注意を。

 この問題は、創作小説サイトとしては、とても黙っていられることではないので、一週間ほど前、Operaの開発元に、レポートを送っときました。前バージョンで問題なかったのだから、ぜび前の仕様に戻していただきたい。それが開発ポリシーに反するのであれば、せめて、オプションで行頭のスペースを無視しない設定が選べるようにしていただきたいと。

 でもね。Operaは、このままでしょうね。ぼくの意見なんか、たとえ目を通してくれたとしても、苦笑して「まだ、こんなこと言うヤツがいるよ」って思われるくらいなものでしょう、なぜなら、Operaは標準仕様に遵守していることを誇りに思っているらしいですから。たいへん気高き精神ですが……

 もう一度言わせてほしい。Opera 7は嫌いだ。大嫌いだ!


 ※追記
 現在の Opera 7 では、字下げの問題は修正されました。ちゃんと、ユーザーの声に耳を傾けてくれたみたいです。よかった! 該当バージョンを使っている人は、なるべく早く、バージョンアップしてくださいね。


≫ Back


Copyright © TERU All Rights Reserved.