[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
2000/10/16 20:46 from msyk
Title: [teenbbs:804] 文字参照 (was: Re:800)報告ですー。)

No.   : 804
Sender: msyk
URL   : 
Title : 文字参照 (was: Re:800)報告ですー。)

>nkf にそんな機能ありましたっけ? > "B" encode の decode

私の使ってるヴァージョンにはあります, というよりかなり前からあるはずです.
-m または -mB で B-encode, -mQ (-l も必要 ) で Q-encode をデコードできます.

-m だけだと " の形式しかデコードできないようですが,
-mB では添付ファイル等の base64 encode 部分だけを抜き出しておけばファイルの
復元も可能です.  ただし

Content-Type: application/octet-stream; name="..."
Content-Disposition: inline; filename="..."

なんてのは参照してくれない ( というより, これも余計なデータなので
削除しておかないと正しくデコードできない ) ので設定されているファイル名を
リダイレクト時に指定しないとダメですが(^^;;

どうも esemail のヘッダの連結操作が気に入らないのと, 文字コードを
間違えて送られてきたメイルが文字化けしないように, 文字コードを
確かめてから Shift_JIS に変換するため, メイルは送られてきたデータ
そのままに esenet で受けることにしているのですが, そういった場合ヘッダ
部分に B-encode されたところがあっても簡単にメイル全体を変換できます.

>>実体参照 (&#..;) に対する処理がブラウザによって異なるためだと思うのですが,

この場合実体参照というのは間違いのようで, 数値文字参照 (Numeric Character
Referernce) とでも訳せばいいのかな?

>>"&", "&" とかを各ブラウザがどう処理するか見てみるとなかなか

この場合は正確には文字実体参照 (Character Entity Reference) でしょうか?
これら二つを総称して文字参照 (Character Reference) と呼ぶようです.

>どこまで処理すればよいのかわからないです。(RFC 読んでないし(汗))

文字参照を再展開するのが正しいかそうでないかとか, その他いろんなところで
議論されてたりするのを読んでも本当のところ何が正しいのかはっきりしません(^^;
#RFC と HTML だけでなく SGML, XML あたりまで覗いてみたのですが...

>もしかして 056 とかで8進数ってことはないですよね?

これは W3C HTML 勧告の charset に関する章, 5.3 に記述されていますが,
数値文字参照は ISO 10646 での位置を 10 進数または 16 進数を用いて
"&#....;", "&#x....;" で表すということです.
#16 進数の場合は case-insensitive.


ところで http://www.pc88.gr.jp/~teen/soft-index.html では文字実体参照の
最後の ";" を全く書いていないようですが, これについては SGML 的には
実体名と区別できる文字が続くなら省略できるということらしいので, HTML に
おいても間違いではないのでしょうね.
でも teen 対応各ブラウザで表示すると ";" がないために全滅なんですよね(^^;;
ということで直した方が良くはないでしょうか? > Shinra さん

[レスを書く]