大陸簡体「HZ」の実装とFirefox3.5の異常な挙動

gTefβ0.03の符号のうち、FirefoxにありながらgTefに唯一無かったHZを実装してみました。
近日中に、β0.04を公開します。

HZ


仕様は、RFC 1843とRFC 1842にあります。

RFC 1843は、文書データ記述用の仕様のようです。
RFC 1842は、インターネットメッセージ用の仕様のようです。いわゆる電子メール用かな。

RFC 1843に対して、RFC 1842では拡張機能が定義されていますが、今回はRFC 1843の全機能を実装しました。

~{ 漢字モードにする
~} ASCIIモードにする
~~ ~
~\n 次の行に続く (C/C++の行末\ みたいなもの)

最後の ~\n が苦戦しましたが、CR/LF/CR+LFのいずれでも動作するようになったはず。

仕様を真面目に考えるならば、漢字モード中の ~{ は無効、ASCIIモード中の ~} も無効となりそうですが、今回はモードに関係なく動作するようにしてあります。必要ならエラー扱いに出来ますが。


Firefox 3.5


実際に、この出力結果をFirefox 3.5.2で表示させてみましたら、やはり需要が無い符号らしく、動作がバグっぽいですね。
ISO-2022-CNもかなりバグっぽかったのですが、こちらもダメっぽいです。

・HZの文書が終わったあとに、存在しない化け文字が数個表示される。(バッファ関係のバグだろうか)
・~{~} とだけ書くとエラー扱いになる (ISO-2022-CN同様、モード管理をしていないようだ)
・~\n (軟改行) に対応していない。

三番目は実装が難しいから勘辨してということなら、それも有りかなとは思いますが、最初のは明らかにバグで危険な香りがするので、修正が必要と考えます。

とりあえずは、RFC 1843の4節にある例くらいは、正常に表示できるようにして欲しいですね。

補足


Opera 9.64では、一応正常に動作しているようです。但し、~\n には対応していない模様。
行末の ~ は消えて、改行はそのまま表示されます。
もう一息。


IE 7.0.5730.130でも、一応正常に動作しているようですが、同様に ~\n には未対応。
やはり、この辺の処理は鬼門なのでしょうか。
特別な処理をする気もないようで、行末に ~ がそのまま残ります。


Google Chrome 2.0.172.39は、そもそも対応していませんでした。

2009/08/08(土)12:43 |Comments(0) |Trackback(0)

技術情報 | ウェブブラウザ | コンピュータ | [編集]

▲ページトップ

コメント

コメントの投稿

gTef 0.04 beta 公開のお知らせ ホーム gTef 0.03 beta 公開のお知らせ
トラックバック

この記事にトラックバックする(FC2ブログユーザー)
▲ページトップ

カレンダー

07 | 2017/08 | 09
- - 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 - -

プロフィール

miraicorp

Author:miraicorp
未来情報産業(株) 社長

主として「ICカードこれひとつ」や「文字、文字コード」処理、時々C++などについて記述しています。

twitterツイッター

管理用

検索フォーム

お知らせ

コメント等お気軽にどうぞ。

気に入ったら拍手して頂けると、今後の記事を書く際の参考や励みになります。

■お仕事を募集しております
ソフトウェア製造の仕事や、原稿執筆の仕事などを随時受け付けております。
お気軽にご相談下さい

■初めての方へ
こまごまと更新しているため、他にも関連する記事があるかもしれません。
「月別アーカイブ」「検索フォーム」「カテゴリ」などをお試し下さい。
トップページはこちら

最新記事

最新コメント

最新トラックバック

月別アーカイブ

カテゴリ

広告枠

メール

メールはこちら

リンク

このブログをリンクに追加する

RSSリンクの表示

QRコード

QR