taggaの日記: [実験] スラドの文字参照
日記 by
tagga
文字参照の実験 -- RSS などに問題は出ないはず。たびたび書き変えるかも。
[2009-12-13 15h20] ☆ が出力時に削除される。
ISO-8859-1 (例: U+00E9 Latin small letter e with acute)
- é [é]
- (誤)&eacote; [RSSで問題]
- é [é]
- (誤)&#e9; [] ☆
- é [é]
- é [é]
- é [é]
ギリシア文字 (例: U+03B5 Greek small letter epsillon)
- ε [ε]
- (誤)&epsillon; [RSSで問題]
- ε [ε]
- ε [ε]
数学記号 (例: U+2203 there exists)
- ∃ [∃]
- ∃ [∃]
U+XXXX
- ア [ア]
- ᆰ [ᆰ]
- (誤)&#FFAA; [] ☆
U+XXXXX
- 𐀀 [𐀀] ☆
- 𝐀 [𝐀] ☆
- 𠮟 [𠮟] ☆
[2009-12-13 17h00] Slash/Utility/Data/Data.pm に 文字コードの範囲をチェックしているところ (ll.2144-2146) があるので、ここだと思う。
# NB: 1114111/10FFFF is highest allowed by Unicode spec,
# but 917631/E007F is highest with actual glyph
$ok = 0 if $decimal <= 0 || $decimal > 65534; # sanity check
ここを今の規格の範囲に合わせるといいんだろうか。 ついでにサロゲートペアも不可にしてもいいかも。 けど、他に影響するかどうかは調べていない。
第3面以降を考慮しなければこんな感じかなあ。
$ok = 0 if $decimal <= 0 || $decimal > 0x2FFFF || (0xD800 <= $decimal && $decimal <= 0xDFFF);
[実験] スラドの文字参照 More ログイン