HTML5の最終勧告でrubyタグ周りはどうなった?
こちらの記事にコメントを頂きました。遅ればせながら纏めてみます。
2014年10月に発表されたHTML5の最終勧告。
…と、その前に。用語がとっ散らかりそうなので、この記事内では
- ルビを振られる側の文字列を「ルビベース」
- ルビそのものの文字列を「ルビテキスト」
と呼びます。すなわち… ルビベース
以前にrubyタグ周りの状況を纏めた記事(この時点ではHTML5は草案段階でした)とHTML5最終勧告との差異は、ざっと以下のとおり。
- ある時点の草案では廃止対象だった rb, rtc タグが復活。(rbcタグは廃止)
- rbは明示的にルビベースを表すのに用いられるが、省略可。
- rtcはrt(ルビテキスト)をコンテナ化するために用いられる。
- rb,rt,rtcの終了タグは、場合によっては省略可。
詳細はW3CのHTML最終勧告文書(→英語原文または一部日本語訳)を参照してみてください。
で、実際にWebページを作成する時に重要なのは、この勧告内容ではなく、ブラウザへの実装状況ですね。現時点(2014年12月)では…
…という感じです。
例えば、rb, rt, rtc の終了タグを省略した場合には意図したレイアウトになりません。それから、最終勧告に挙げられている幾つもの例("熟語ルビ" や "両面ルビ" など)は、全く意図したようには表示されません。勧告直後なので当然といえば当然なのですが。
ならば現状、どのようにHTMLコーディングしておけばベターなのかというと、
…という、いままでウチが推奨してきた方法で大丈夫なのではないかと。HTML5が各ブラウザに完全実装されたとしても、意図したレイアウトでルビたちが表示されると思います。
さて。
ウェブブラウザの開発者目線で考えてみると、彼らは多分、映像・画像や音などのメディアコンテンツの処理を実装することに開発リソースを再優先で割り当てたいと思っているのではないかな、と想像するわけです。
「ルビ」という、世界から見たら超ローカル言語である日本語のちょっとした表現、しかも割と処理が面倒くさいものが、たとえ勧告が出ているとしても早々に完全実装される…なんてことは考えにくいんじゃないかな。個人的には、果たしてそんな日が来るのかな…とさえ思っています。
まぁそれまでは、いろいろ工夫しながらやっていきましょ。
匿名
ruby_enabler.jsでモノルビを振れたら……。
tyzから匿名への返信
<ruby>日<rt>に</rt>本<rt>ほん</rt></ruby>
…で、モノルビ振れませんか?
モノルビの解釈を間違えていたら申し訳ないです。
匿名
あっ間違えた。両面ルビだった。
要するにjsでHTML5方式のルビが振りたいんです。
<ruby>日<rb>本<rp>(<rt>に<rt>ほん<rp>/<rtc>Japan<rp>)</ruby>
みたいに。
tyzから匿名への返信
両面ルビ、なんとなく実現できそうなイメージはあります。
将来的には各ブラウザに、このHTML5最終勧告に沿った実装がなされてゆく筈なので、HTML5での書式や機能をruby_enabler.jsに先に取り入れてしまう、というのはアリだと思います。
というわけで、久々にruby_enabler.jsのアップデートに着手してみます。お待ちください。