Weblog(2004/06)

2004-06-05(Sat)

Bug 2885 WindowsのATOK10以降/WXG4で、確定アンドゥを行うと同じ文字列が再入力される

Bug-org 197474 が修正されていることに気づいていなかったため、パッチの作成が遅れたが、今日ようやくパッチを提出した。 Windowsユーザはテストビルドを用意しているので、副作用が無いかテストしてみて欲しい。

Bug 3810 外部メーラを起動する設定の場合にmailtoプロトコルのリンクをクリックしてもメーラが起動しない

とりあえず紹介だけ。

外部メーラを利用する設定にしているとmailtoプロトコルが動作しなかった問題。 既に修正されている。

Bug 2987 [ViewSrc]View Sourceで存在しない空白が表示される

href = "hoge.html"というソースコードがソースビューアでは、 href =" hoge.html"と表示されていた問題。

既に修正されている。

Bug 2938 フレームのあるサイトへ戻った時、スクロール位置が復元されない

あるHTML文書等から、異なるフレーム定義ファイルへ戻った際に、フレーム内のHTML文書のスクロール位置が復元されていなかった問題。

いつのまにやら再現しなくなっていたので、worksformeとして処理された。

2004-06-22(Tue)

Bug 3595 [Yen Sign Problem] 日本語環境ではU+005Cが常にバックスラッシュではなく円記号(U+00A5)で表示される

今までのMozilla(1.7含む)では利用言語が日本語の設定になっている場合に、 0x5Cを常にU+A5(Yen Sign)に変換してから表示していたという問題が修正された。

これは元々Bug-org 4238において、 あらゆる環境、つまりフォントのグリフに依存せずに0x5Cを円記号として表示するためにとられた対応だった。 しかし、この挙動は同時にU+5C(backslash)を表示できないという問題を抱えていた。 また、これはISO 10646(Unicode)を処理基準とするHTML仕様にとっては完全に違法な手法でもあった。

今回の修正でこの違法な処理は通常のユーザからは取り除かれた。 つまり、0x5Cは言語設定、HTMLファイルの文字コード設定に依存せず、常にU+5C(backslash)として表示されるようになった。 ただし、多くの日本語フォントではU+5Cには円記号のグリフが用意されているため、 実際には円記号として表示されることが多いだろう。 しかし、海外の日本語ユーザや、OSによってはU+5Cをbackslashとして表示するフォントしか無い場合があるかもしれない。 そのような環境では、古い考え方の日本語サイトでは不都合が多い可能性がある(そうでなければもともとこのような処理は必要無い)。 そこで、Jungshik Shinに頼み、設定で従来の動作も復活させられるようにしてもらった。 設定はlayout.enable_japanese_specific_transformによって変更できる。 この値はデフォルトでfalseとなっており、変換処理が無効化されているので、 従来の動作に戻したい場合はこれをtrueに変更すればよい。

ただし、従来は利用言語が日本語であった場合という条件(実際にはもっと複雑)だったが、 その条件も今回変更してもらい、Shift_JIS、EUC-JP、ISO-2022-JPの場合にのみ読替処理を行うようになっている。 一番の問題だったUTF-*ではこの処理は絶対に発生しないことに注意して欲しい。

なお、念のために書いておくが、HTMLはISO 10646に基づいて処理されるものである。 Shift_JISやEUC-JP、ISO-2022-JPといったエンコーディングはもちろん利用できるが、これは伝送時の話であり、 ブラウザの内部処理はあくまでISO 10646である。 ISO 10646ではU+5Cはbackslashであってyen signではない。 ISO 10646においてyen signとはU+A5なのである。 つまり、Shift_JISやEUC-JP、ISO-2022-JPのHTML文書において、円記号として表示したい文字を入力する場合、 例えば、¥1,980といった場合、¥を利用し、 ¥1,980と記述するのが正しい作法である。 UTF-*の文書においてもU+A5を直接入力するか¥と記述しなければならない。 106キーボードで円記号の書かれたキーを押し、それで円記号を表記したと思うのは間違いなのである。

これらのYen sign problemに関しては後日、私の見解をまとめた文書をWebStudio内に用意するつもりである。

2004-06-23(Wed)

Bug-org 20022 :hover state not set until mouse move

:hover状態はマウス移動時にのみ変更されるという問題。 ようやく二度目の修正となった。

このバグの修正でホイールでスクロールした場合にもカーソルの形がその下にある要素の影響を受けるようになった。 今までの動作に慣れているので若干違和感があるが、やはりこの方が自然である。

なお、二度目と書いたが一度目はFirefox 0.8のリリース直前にチェックインされて、 Firefox 0.8がリリースされた後にバックアウトされている。 Firefox 0.8が不安定だと不評だったが、それはこのバグの修正が原因だった。

当時、開発のメインであるMozilla(suite)はリリースが間近ではなかったため、 Geckoへのチェックインはさほど厳しい状況ではなかった。 また、Firefoxも現在のようにbranchが無かったのでMozillaのGeckoを利用するしかなかった。 Geckoの開発サイクルはMozillaにあわせているが、Firefoxのリリースは独自のタイミングでリリースしているからだ。 これがFirefoxがテクノロジープレビューだった理由の一つだろう。 FirefoxはあくまでMozillaをベースとした新しいブラウザでしか無い。 早くXPFEを捨てて、Firefoxが主役になってほしいものである。

Masayuki Nakano(問い合わせ先)