[ruby-list:49833] Re: Nokogiri で文字実体参照が

From: "5.5" <5.5@...>
Date: 2014-05-21 03:33:35 UTC
List: ruby-list #49833
5.5 です。

(14/05/21 9:48), 小西 弘将 wrote:
> &hbar;は文字実体参照で無いと判断されて、最初の&が&amp;に変換されているん
> じゃ無いかと。
>
> NokogiriはHTML4.01とXHTML1.0の文字実体参照のみマッピングしているライブラ
> リを使用しているのでしょう。
> http://www.cybergarden.net/references/charref/

そんな感じですね。


> &hbar;はローカルな文字実体参照なのでしょうか? 検索した限りではどの仕様で
> 定義しているのかわかりませんでした。

私もよく分からないんですが,Firefox や Google Chrome は正しく
ℏ で表示してくれます。(IE 11 はダメ)

W3C の下記のページにも載っています。
http://dev.w3.org/html5/html-author/charref
(これ,ワーキングドラフトかも)

MathML 関係で多数の文字実体参照を使うので,この問題が解決で
きないと先へ進めず困っていました。
なお,今回の仕事はブラウザーで表示する HTML を作るわけではな
いので,IE 11 で表示できないことは問題ではありません。


> 無難な線では、やはり自前で処理を書くしかないのかなぁ。
> Nokogiriに渡す前に&hbar;→ℏ、後でℏ→&hbar;ですかね。

そういう方法もありますね。

使う文字実体参照を事前にリストアップするのは難しいので,やや
暴力的ですが,& を U+E000 などに変換して Nokogiri し,あとで
元に戻すやり方にして切り抜けました。
今回の目的ではこれで OK でしたが,やりたくなかったなあ。

みなさま,ありがとうございました。

-- 
5.5@moji.gr.jp

In This Thread

Prev Next