* [CODE(HTMLe)@en[ruby]] 要素型 (HTML, XHTML 1, JIS X 4052)

[13]
:状態:[[W3C]] [[勧告]], [[JIS]] [[規格]]
:[[名前空間URI]]:[CODE(URI)@en[[[http://www.w3.org/1999/xhtml]]]]
:[[局所名]]:[CODE(HTMLe)@en[[[ruby]]]] 
([Q@en[[RUBYB[[[ルビ]]] [[[ruby]]]]]]より)
:[[開始タグ]]:必須
:[[終了タグ]]:必須
:出現できる文脈:[CODE(SGML)@en[%[[inline]]]]
な文脈 ([CODE(HTMLe)@en[[[ruby]]]] の[[子孫]]を除きます)
:[[内容モデル]]:
[CODE(SGML)@en[[CODE(HTMLe)@en[[[rb]]]], [CODE(HTMLe)@en[[[rp]]]]?, [CODE(HTMLe)@en[[[rt]]]], [CODE(HTMLe)@en[[[rt]]]], [CODE(HTMLe)@en[[[rp]]]]?]]
([[単純ルビ]]),
[CODE(SGML)@en[[CODE(HTMLe)@en[[[rbc]]]], [CODE(HTMLe)@en[[[rtc]]]]]]
([[複雑ルビ]])
:[[XHTMLモジュール]]:[[ルビ]]・[[モジュール]]
([[W3C]] [[ルビ注釈]][[勧告]])
:[[属性]]:
(共通属性)


* 内容モデル

@@ 
[24] 単純ルビと複雑ルビ

[25] '''[CODE(HTMLe)@en[[[rp]]]]''' → [CODE(HTMLe)@en[[[rp]]]]
の項を参照。

[17]
[[JIS X 4052]] の形式では [CODE(HTML)[[[rp]]]] 要素がない。

@@ 
[26] [CODE(HTMLe)@en[[[ruby]]]] の入れ子

[34]

@@ rp, rt, rp, rt, rp や rp, rtc, rp を書けないのは欠陥
(後者はわざとだろうが。。。)
([[名無しさん]] [sage])

[127]
The [[W3C]] [[Ruby]] [[Recommendation]] defines the [[minimal content model]] and
the [[maximal content model]] for the [CODE(HTMLe)@en[[[ruby]]]] and related elements.
The syntax used for the abstract definition of those elements are defined in the
[[XHTML m12n 1.0]] [[Recommendation]].  However, the [[Recommendation]]
does not address the issue of relationship for [[inter-element whitespace]]s, 
[[comment]]s, and [[processng instruction]]s with the [[content model]] at all.
Therefore, one can argue that no [[inter-element whitespace]] characters
inserted between elements according to the [[Ruby]] [[Recommendation]].


* 編集

[216] 
[CODE[contenteditable]] 等で [CODE[ruby]] も編集可能になりますが、
その実装状況は悲惨なものです。 (もっともそれは [CODE[ruby]]
に限ったことではなく、 [CODE[contenteditable]] 等の編集機能は全体的に
[[Webブラウザー]]の実装そのままだとまともに使えません。)
[TIME[2021-10-22T03:23:57.100Z]]

[217] 
[[Chrome]] でも [[Firefox]] でも[[親文字列]]、
[[ルビ文字列]]それぞれ編集可能となります。

[218] 
[[Chrome]] でも [[Firefox]] でも[[利用者]]が意識して正確に[[選択]]範囲を指定することは困難です。
[CODE[ruby]] [[要素]]を選択したり、
その[[内容]]の[[親文字列]] + [CODE[rt]] [[要素]]を選択したり、
([[Firefox]] の場合) [CODE[rb]] [[要素]]を選択したりしますが、
そのどれになるかは運次第です (何らかの法則性はあるのかもしれませんが...)。

[219] 
[[Chrome]] でも [[Firefox]] でも、
[[コピー]]や[[貼り付け]]で [CODE[ruby]] の構造を補うことはしません。
[CODE[rt]] 入の文字列を貼り付けたからといって [CODE[ruby]]
を補うことはしませんし、 
[CODE[ruby]] 内に [CODE[ruby]] を貼り付けたからといって
[CODE[ruby]] の中身だけを挿入してくれたりはしません。

[220] 
[[Firefox]] の場合[[複雑ルビ]]の表示を実装していますが、
編集において何も特別な処理はしてくれません。
[CODE[rb]] を選択して切り取っても対応する
[CODE[rt]] はそのままになるので、
[CODE[rb]] と [CODE[rt]] の対応関係が1つずれた状態になります。
かわりにそこに新しい [CODE[rb]]
を挿入する方法はないので ([CODE[rb]] を貼り付けると前後の [CODE[rb]]
の子供になってしまう)、
[CODE[rt]] を削除する以外どうしようもありません。

[221] 
[[Chrome]] や [[Firefox]] の[[単純ルビ]]なら、
[[親文字列]]と[[ルビ文字列]]をまとめて選択してコピペすればおかしなことは起こりません。
(ただし >>218 の問題があるので、思い通りの範囲を選択するには訓練が必要ですが...)

[222] 
[[WYSIWYG]] な編集の実装の難易度から言えば、
[[複雑ルビ]]モデルは実用的ではないと思います。
[[単純ルビ]] + [[コピペ]]等での [CODE[ruby]] の扱いをいくらか補正する、
というのが現実的な実装戦略ではないでしょうか。


* 実装状況

[424] 
[[Chrome]] が比較的良く実装しています。

[425] 
[[Firefox]] も対応していますが、独自性が強く、 [[Webページ]]を正しく表示できないことがよくあります。


* 歴史

** [CODE[ruby]] 要素の誕生

[FIG(table)[

:t:時期
:d:出来事
:src:出典

:t:[TIME[1996-04-18]]
:d:Unicode Conference 講演
:src:[[ruby=""]]

:t:[TIME[1996-05-14]]
:d:[[Martin J. Durst]] Web頁
:src:[[ruby=""]]

:t:[TIME[1996-08-28]]
:d:[CODE[ruby=""]] ([[I-D]] -00)
:src:[[ruby=""]]

:t:[TIME[1997-02-28]]
:d:[CODE[ruby=""]] ([[I-D]] -01)
:src:[[ruby=""]]

:t:[TIME[1998-02-22]]
:d:[[Unicode]] 当初案
:src:[[interlinear annotation character]]

:t:[TIME[1998-03]]
:d:[[Microsoft]] 提案
:src:>>333

:t:[TIME[1998-05-06]]
:d:WWW Conference
:src:[[ruby=""]]

:t:[TIME[1998-11-07]]
:d:[[mimasa]] 記事
:src:>>342

:t:[TIME[1998-11-15]]
:d:[[IE]]ルビ実装
:src:>>339

:t:[TIME[1998-12-01]]
:d:[[JIS X 4052]] 第1案
:src:[[JIS X 4052]]

:t:[TIME[1998-12-21]]
:d:[[単純ルビ]]初出 ([[W3C]] [[WD]])
:src:>>264

:t:[TIME[1999-09-24]]
:d:[[複雑ルビ]]初出 ([[W3C]] [[WD]])
:src:>>268

:t:[TIME[2000-03-31]]
:d:[[JIS X 4052]] 第2案
:src:[[JIS X 4052]]

]FIG]

[345] 
[TIME[平成10(1998)年][1998]]にいきなり動き出した感があるのはなんなのか...


;; [346] 
直前のできごととしては [[Excel 97]] に[[ふりがな][ふりがな (Excel)]]機能が実装されていますけど、
あまり関係はないような。

-*-*-



[262] 
[[Martin Dürst]]
は[TIME[平成8(1996)年][1996]]に属性方式を提案しました。
[SEE[ [CODE[ruby=""]] ]]

[403] 
[[Martin J. Dürst]]
案とは独立に、
その初出の4ヶ月後に[[日本人]]で [CODE[ruby]]
を提案した人もいました。
[SRC[>>206]]


[206] [CITE[HTML文書についての提言]],
宇宙暦28年9月1日,
[TIME[2012-03-29 13:34:02 +09:00]]
<http://hp.vector.co.jp/authors/VA006226/essay/html.html>

>     <RUBY="ひらがな">平仮名</RUBY> 

[TIME[1996-09-01]]


[406] [CITE[Note 2]], [TIME[2002-07-13T08:55:09.000Z]], [TIME[2024-09-10T04:15:14.498Z]] <http://www.bekkoame.ne.jp/~n-iyanag/buddhism/mythbuddh/note2.html>

>これにたいして、ベルナール・フランク著、仏蘭久淳子訳『日本仏教曼荼羅』藤原書店、2002年 p. 311-312 には、こう書かれている。
>>     『法宝義林』第一巻六四頁に収載されているもう一例のお<ルビ="ふだ">札</ルビ>は「不忍弁天」のお<ルビ="ふだ">札</ルビ>である。[SNIP[]]


[407] >>406 これは[[HTMLタグ]]ではなく文中にこう書かれている。
原書籍にそう書かれているとは思われないので引用者(ウェブページ著者)の便宜的な表記と思われる。
>>206 とはおそらく無関係だろうが、同様の発想。



[FIG(data)[ [408] [[HTML要素概説]]

:[F[要素名]]:[CODE[ruby]]
:日付:[TIME(uchuu)[1996-09-91]]
:説明:
[TIME(uchuu)[1996-09-01]]、
[[Webページ]]で
[CODE[ruby]]
を提案したものがあった。
[SRC[>>416]]
[[ルビ]]の提案として早い部類であるが、
[[標準化団体]]や実装者に直接宛てたものではなかった。
現行仕様とは異なる。
:出典:
[REFS[

-
[416] 
[DFN[HTML提言]]:
[CITE@ja[HTML文書についての提言]], 
[DATA(.author)[[[平田真夫]]]],
[TIME(.published uchuu)[宇宙暦28年9月1日][1996-09-01]],
[TIME[2012-03-29T04:34:02.000Z]], [TIME[2024-09-16T06:02:52.540Z]] <http://hp.vector.co.jp/authors/VA006226/essay/html.html>

]REFS]

]FIG]




-*-*-


[333] 
[[W3C]] [[CSS WG]] 文書によると、 [[Microsoft]] が[[ルビ]]についての提案を提出していました。
その内容は非公開であり不明ですが、
少なくても [[CSS]] についての提案が含まれていたはずです。
[[CSS]] だけでは[[ルビ]]を記述できないので、 [[HTML]]
についての提案も含まれるか、他に提案していて参照していた可能性が高いと考えられます。
[[URL]] から[TIME[西暦1998年3月][1998-03]]頃の提案と思われます。
少なくても[TIME[1998-12-10]]よりも前であり、
[[CSS WG]] 文書の前の版で[[ルビ]]に言及のない[TIME[1997-08-18]]よりは後であることは確実です。
[SRC[>>332]]


[REFS[

- [332] 
[CITE@en[List of suggested extensions to CSS]], [TIME[2017-10-02T10:21:49.000Z]], [TIME[2024-08-26T03:22:29.093Z]] <https://www.w3.org/TR/NOTE-CSS-potential#id18107060481>
-- [334] 
[[リンク]]:
<https://www.w3.org/International/Group/1998/03/Ruby/>
(非公開)

]REFS]

-*-*-


[405] 
[TIME[1998-06]]発売の [[T-Time]] が独自構文の[[ルビ]]に対応しました。
後に [[W3C]] 版[[単純ルビ]] ([[SGML]] 時代) にも対応しました。
[SEE[ [[!rb]] ]]

[342] 
[TIME[1998-11-07]]に
[[Masayasu Ishikawa]]
の [[fj]] への投稿 [SRC[>>341]] がありました。

;; [344] 月末まで話題は続きますが、 [[IE]] への言及はありません。

[343] 
[TIME[1998-11-15]]に [[IE5]] が [CODE[ruby]] を実装しました (>>339)。

[264] 
[TIME[1998-12-21]]に [[W3C]] [[Internationalization Working Group]]
が [[Ruby]] の [[WD]] を発行しました。
[[編集者]]は [[Microsoft]] の 
[[Marcin Sawicki]]
でした。貢献者として
[[W3C]] の
[[Martin Dürst]] と [[Masayasu Ishikawa]]、
[[Microsoft]] 
の [[Chris Wilson]]
の名前があります。
[SRC[>>263]]

[265] 
この案は後の[[単純ルビ]]に当たるもので、
[CODE[ruby]],
[CODE[rb]],
[CODE[rt]],
[CODE[rp]]
が定義されていました。
[[SGML]] 形式と [[XML]] 形式があり、
[[SGML]] 形式では [CODE[rb]] の[[タグ]]と [CODE[rt]], [CODE[rp]]
の[[終了タグ]]が省略可能でした。
[SRC[>>263]]

[279] 
[CODE[rt]] は1つだけ、[CODE[rp]] は省略可能でした。
[SRC[>>263]]

[283] 
[CODE[rp]] はルビ表示不能のUAが表示に使う括弧を表すとされていました。
[SRC[>>263]]
[CODE[rp]] は省略可能ですが、省略されているときルビ表示不能のUAがどうするべきかは何も書かれていません。

[303] 
[CODE[rb]], [CODE[rt]] の中に [CODE[ruby]] は含められないとされました。
[SRC[>>263]]

[304] 
[TIME[1999-03-22]] の [[WD]]
では
[CODE[rb]] の中に [CODE[ruby]]
が含められると改められ、
[[両側ルビ]]が記述可能となりました。
[SRC[>>266]]


[REFS[

- [263] 
[CITE@en-US[Ruby]], [TIME[2017-10-02T10:21:58.000Z]], [TIME[2024-08-25T08:36:59.821Z]] <https://www.w3.org/TR/1998/WD-ruby-19981221/>
- [266] 
[CITE@en-US[Ruby]], [TIME[2017-10-02T10:22:16.000Z]], [TIME[2024-08-25T08:48:50.839Z]] <https://www.w3.org/TR/1999/WD-ruby-19990322/>


]REFS]



[FIG(data)[ [321] [[HTML要素概説]]

:[F[要素名]]:[CODE[ruby]]
:[F[要素名]]:[CODE[rt]]
:[F[要素名]]:[CODE[rp]]
:日付:[TIME[1998-12-21]]
:説明:
[TIME[1998-12-21]]、
初めて [[W3C]] から公開された [[HTML]] [[ルビ]]仕様に、
[CODE[ruby]],
[CODE[rt]],
[CODE[rp]]
がある。
:出典:
[REFS[

-
[DFN[RUBY19981221]]:
[CITE@en-US[Ruby]], 
[DATA(.author)[[[World Wide Web Consortium]]]],
[DATA(.status)[[[Working Draft]]]],
[TIME(.published)[21-December-1998][1998-12-21]],
[TIME[2017-10-02T10:21:58.000Z]], [TIME[2024-08-25T15:02:24.262Z]] <https://www.w3.org/TR/1998/WD-ruby-19981221/>

]REFS]

]FIG]


[FIG(data)[ [357] [[HTML要素概説]]

:[F[要素名]]:[CODE[rb]]
:日付:[TIME[1998-12-21]]
:説明:
[TIME[1998-12-21]]、
初めて [[W3C]] から公開された [[HTML]] [[ルビ]]仕様に、
[CODE[rb]]
がある。
現在の 
[CODE[ruby]]
のうち、
[CODE[rt]]
以外の部分に当たる。
:出典:
[REFS[

-
[CITE@en-US[Ruby]], 
[DATA(.author)[[[World Wide Web Consortium]]]],
[DATA(.status)[[[Working Draft]]]],
[TIME(.published)[21-December-1998][1998-12-21]],
[TIME[2017-10-02T10:21:58.000Z]], [TIME[2024-08-25T15:02:24.262Z]] <https://www.w3.org/TR/1998/WD-ruby-19981221/>

]REFS]

]FIG]

-*-*-

[268] 
[TIME[1999-09-24]]の [[WD]] で内容は大幅に変更されました。
[SRC[>>267]]

- [269] [[複雑ルビ]] [CODE[rbc]], [CODE[rtc]] が導入されました。
-- [285] [[SGML]] では[[終了タグ]]省略可能でした。
-- [286] [[複雑ルビ]]では [CODE[rp]] は使えませんでした。
- [305] [CODE[rb]], [CODE[rt]] の中に [CODE[ruby]] は置けないことになりました。
-- [306] [[両側ルビ]]は[[単純ルビ]]で記述できず[[複雑ルビ]]が必須となりました。
- [270] [[XHTML m12n]] の[[XHTMLモジュール]]方式
([[抽象モジュール定義]] + [[DTDモジュール]])
になりました。
- [271] [[SGML]] 方式の定義は附属書に追いやられ、
必要なのかと問う編注が入っていました。

;; [284] 
[[複雑ルビ]]では [CODE[rp]] を利用不能ですが、
ルビ表示不能のUAがどうするべきかはやはり言及されないままです。

[289] 
未対応の [[Webブラウザー]]への対応が不要なら [CODE[rp]] は不要であるとし、
また、 [[CSS2]] で [CODE[rt]] の回りに括弧を表示する方法もあるとこの版から追加された部分で示しています。
[SRC[>>267]]

;; [290] この箇所に限らず前の版からそうなのですが、
[CODE[rp]] が [CODE[ruby]] 未対応の実装への対処なのか[[ルビ]]表示不能な実装への対処なのか曖昧です。

;; [291] [[CSS2]] で[[括弧]]を表示できるとはいっても [[CSS]] で
「[[ルビ]]表示不能なとき」
という条件を書けないのにどう使うというのかはよくわかりません。
[[ルビ]]表示を無効にする指定も書けとはいっていますが [SRC[>>267]] [WEAK[(明言されてませんが、同時期に [[WD]] になっていた [CITE[CSS Ruby]] によれば [CODE[rt]] が[[ルビ]]表示になるか [CODE[display: inline]] にするかは制御できました。)]]、
そうすると [CODE[ruby]] を使う意味が皆無です。何がしたいのでしょう。



[272] 
この版では編集者が
[[Microsoft]]
の
[[Marcin Sawicki]],
[[Michel Suignard]]
と
[[W3C]]
の
[[Masayasu Ishikawa]],
[[Martin Dürst]]
になっています。
また、
謝辞に [[JIS X 4052]] の原案委員会のメンバーの一部の名前が入ります。
[SRC[>>267]]



[274] 
[TIME[1999-12-17]]の [[WD]] では [SRC[>>273]]

- [275] [[編集者]]の [[Marcin Sawicki]] が[TIME[1999-10-10]]までとなっています。
- [276] [CODE[rtc]] が1個以上から高々2個に制限されています。
- [278] [[XHTML 1.1]] への追加を提案するとして [[XHTML 1.1]] + [[Ruby]] [[DTD]]
が定義されていたのが、 [[Ruby]] モジュール [[DTD]] のみに変更されました。
([[XHTML 1.1]] 側に取り込まれたことによる変更です。)
- [277] [[SGML]] DTD が削除されました。
- [280] かわりに [CODE[rb]] タグを生成しない実装があり、
互換性の考慮をするのがいいとの参考が追加されています。

;;
[281] なぜか [CODE[rp]], [CODE[rt]] の[[終了タグ]]の省略には言及がありません。
そのような実装はなかったのでしょうか? そのような文書はなかったのでしょうか?
初期原案から例示では省略されまくっているのですが...

;; [325] 
[TIME[平成15(2003)年][2003]]時点で旧仕様に従った省略形はかなり使われていたようです
[SRC[>>324]]。

;; [282] 新規格 [[XHTML 1.1]] しか考慮しないようになった仕様書案なのにそれと関係ない旧
[[SGML]] 構文との互換性が必要かもしれない(ただし規定でなく参考)、
というのも実装者の立場に立ってみれば何をどうしたらいいのかよくわからないのですが、
この辺はこの仕様書に限らずこの時代の仕様書全般の世界観の問題なのでまあ置いときましょうか...

[288] [TIME[2001-02-16]]の [[WD]]
では
[CODE[rp]] は [CODE[rt]] の前後に両方とも指定するか、
まったく使わないかのどちらかに限定されました。
[SRC[>>287]]

[292] 
この [[WD]] では設計意図の解説が追加されています。
[SRC[>>287]]

- [293] [CODE[rb]] や [CODE[rt]] に内部構造を作るのではなく
[CODE[rbc]], [CODE[rtc]] を使うことにしたのは、
[[XML]] [[内容モデル]]の技術的制約のためです。
- [294] [CODE[rp]] を[[最小内容モデル]]から削除するべきとの意見は不適当です。
なぜなら、
-- [295] 「[CODE[rp]] を無視する」という実装コストは低い
-- [296] [[ルビ]]を括弧内に表示すると地の文の括弧と区別がつかなくなる
(から衝突しない独自の括弧を著者が指定できるべき)
- [297] [[gloss]] とは似ているが違うから統合できない

;; [298] >>293 は衝撃的! 確かにこの時代の [[Web標準]]は [[SGML]] / [[XML]]
に縛られてましたが、それが[[複雑ルビ]]の設計の理由だったとは。
このときそんな制約知ったことかと無視しておけば、 [[HTML5]] 
時代の [CODE[ruby]] [[内容モデル]]の無駄な政治闘争は回避できていたのでは...

;; [299] [[最小内容モデル]]は [[XHTML m12n]] の概念なのですが、
発明者の当の [[HTML WG]] もまともに運用できていたとは思えませんから、
ここで変な判断をしているのも仕方がないところはありますが。。。
「最小」というからには [[XHTMLモジュール]]を使うための最小要件を定めればいいのです。
[CODE[rp]] を使わないという選択肢を認めているのですから、
[CODE[rp]] を使わない[[文書型]]があってもいいはずで、
その可能性を最初から除外するならオプションにする意味があまりないんですよね。
その理由に実装コストがどうのこうのというのも謎で、
[[内容モデル]]は[[文書]]が満たすべき条件を記述するもので実装の条件を規定しないはずなのですが、
この時代の仕様はその辺りがしっかり分離されていない (分離しなければならないという意識が共有されはじめるのは [[HTML5]] 時代になってから)。

;; [300] 
2つ目の理由もおかしくて、地の文と区別がつかなくなるからどうこうというなら最初から
[CODE[rp]] の省略を認めなければいいことではないですか。
区別の配慮なんていらないから [CODE[rp]] は不要という選択が[[著者]]に認められるのに、
[[文書型]]の作者には認められないという根拠は何なのか。
例えば[[ルビ]]表示実装必須の[[文書型]]というのが作られる可能性もあって、それなら
[CODE[rp]] は不要ということになってもよさそうなのに、
このモジュールの設計だとそれは認められないことになるのです。
[[文書型]]の設計を無駄に縛っているのです。

;; [317] 
実際に ([[XHTMLモジュール]]を採用していないが) [CODE[rp]]
不要の実装のみを対象としているので [CODE[rp]] を使わない [[JIS X 4052]]
という事例があって [SRC[>>313 #page=5]]、同時並行で協力的に開発していたのに、
そのような使い方を [[W3C]] 側がなぜ想定から外しているのかが謎すぎる。

;; [301] 
ところで地の文と区別を付ける方法が必要なら、それこそなんで[[複雑ルビ]]に
[CODE[rp]] が書けないのか。 [CODE[rp]] は無視するだけだから簡単に実装できるのではないのか。
謎は深まります。

;; [323] [[XHTMLモジュール]]の設計思想がよくわからんという話でいえば、
[[単純ルビ]]だけのモジュールもあって良かったはずですよね。
現実に [[IE]] はそれしか実装していないのだから、
そういう実装水準があって然るべきだったはずで。

[302] この版から謝辞に [[JIS X 4052]] の[[原案委員会]]が入っています。
[SRC[>>287]]

[308] 
この版から編集者に
[[Progress Software Corp.]]
の
[[Tex Texin]]
が加わっています。
[SRC[>>287]]

[309] 
この後の [[PR]], [[REC]] はほぼ変更なしです。

[REFS[

- [267] 
[CITE@en-US[Ruby]], [TIME[2017-10-02T10:22:16.000Z]], [TIME[2024-08-25T08:57:58.815Z]] <https://www.w3.org/TR/1999/WD-ruby-19990924/>
- [273] 
[CITE@en-US[Ruby Annotation]], [TIME[2017-10-02T10:22:17.000Z]], [TIME[2024-08-25T09:03:07.476Z]] <https://www.w3.org/TR/1999/WD-ruby-19991217/>
- [287] 
[CITE@en-US[Ruby Annotation]], [TIME[2017-10-02T10:24:29.000Z]], [TIME[2024-08-25T13:20:03.114Z]] <https://www.w3.org/TR/2001/WD-ruby-20010216/>
- [307] 
[CITE@en-US[Ruby Annotation]], [TIME[2017-10-02T10:23:38.000Z]], [TIME[2024-08-25T13:52:15.252Z]] <https://www.w3.org/TR/2001/PR-ruby-20010406/>
-
[93]
[CITE@en-us[Ruby Annotation]] ([CODE[2001-05-31 21:47:31 +09:00]] 版) <http://www.w3.org/TR/2001/REC-ruby-20010531/>
- [311] 
[CITE@en[Errata in Ruby Annotation]], [TIME[2008-06-25T18:49:53.000Z]], [TIME[2024-08-25T14:12:55.324Z]] <https://www.w3.org/2001/05/ruby-errata>
- [324] 
[CITE[XHTML Ruby Support Introduction:06]], [[Piro(SHIMODA Hiroshi)]], 
[L[2003/4/16]],
[TIME[2024-08-25T15:13:56.000Z]] <https://piro.sakura.ne.jp/appendix/archives/rubysupport/06.html>


]REFS]

[FIG(data)[ [322] [[HTML要素概説]]

:[F[要素名]]:[CODE[rbc]]
:[F[要素名]]:[CODE[rtc]]
:日付:[TIME[1999-09-24]]
:説明:
[TIME[1999-09-24]]版 [[HTML]] [[ルビ]]仕様で、
[CODE[rbc]],
[CODE[rtc]]
が追加された。
[SRC[>>412]]
[CODE[rbc]]
は現在の
[CODE[ruby]] のうち [CODE[rt]] 以外の部分に、
[CODE[rtc]]
は現在の
[CODE[rt]]
に当たるが、
記述方法も実装への要求も追加の経緯もより複雑で互換性はない。
:出典:
[REFS[

-
[412] 
[DFN[RUBY19990924]]:
[CITE@en-US[Ruby]], 
[DATA(.author)[[[W3C]]]],
[DATA(.status)[[[Working Draft]]]],
[TIME(.published)[24 September 1999][1999-09-24]],
[TIME[2017-10-02T10:22:16.000Z]], [TIME[2024-08-25T15:04:33.925Z]] <https://www.w3.org/TR/1999/WD-ruby-19990924/>

]REFS]

]FIG]

[FIG(data)[ [402] [[HTML要素概説]]

:[F[要素名]]:[CODE[rbc]]
:[F[要素名]]:[CODE[rtc]]
:日付:[TIME[2000]]
:説明:
[CODE[rbc]],
[CODE[rtc]]
を実装したのは
[[XHTML ルビサポート]]くらいで、
利用した[[文書]]もわずかに作られた程度と思われる。
:出典:[[<ruby>]]
:注釈:
- [413] 
[DFN@ja[XHTML ルビサポート]]
[[Mozilla Suite]] / [[Firefox]]
用[[拡張機能]]の1つ。
これらの [[Webブラウザー]]が標準で対応していなかった
[[HTML]] の[[ルビ]]を整形表示させられた。
当時の[[日本人]]
[[Mozilla]]
利用者には人気の[[拡張機能]]だった。とはいえ全体からみれば少数に過ぎなかった。

]FIG]

-*-*-

[347] 
疑問。

- [348] [[単純ルビ]]は [[IE]] の提案に由来するのか。それとも [[W3C]]
内か誰か他の提案を [[IE]] が最初に実装したのか。
-- [349] [CODE[rb]] は [[Microsoft]] の提案なのか、他者がねじ込んだのか。
- [350] [[WD]] 編集者の作業分担。 [[Microsoft]] は最後まで社員を出しているが、
どれだけ関与していたのか。
-- [351] [[Microsoft]] は[[複雑ルビ]]を実装する気があったのか。
実装から乖離していく仕様を何を思って眺めていたのか。
--- [352] 
[[IE5]] が実装していた他の機能 ([[XML]] など)
もそうだが、
[[IE6]] ないしその次の版で実装するつもりはあったのか。
それとも後から仕様を変える方が悪いと最初から放置するつもりだったのか。

[353] 
[[Microsoft]] は [[Word]] や [[Excel]] で[[ルビ]]や他の[[東アジア]]の[[組版]]機能の実装経験があって、
それを基に [[HTML]] や [[CSS]] の機能拡張案を [[W3C]] に提出すると同時に
[[IE]] に実装していますから、 [[W3C]] 側の動きとは無関係に社内の専門家らで仕様を作っていたとしても不思議はありません。
([[CSS]] の新機能案のほとんどは対応する [[W3C]] 側の動きがそれまで無かったのですし。)




-[2] [CITE[“JIS X 4052:2000(日本語文書の組版指定交換形式)”と“Ruby Annotation, W3C Recommendation 31 May 2001”におけるルビ・マークアップ方式の開発 — テキスト形態構造の交換可能性と国際整合性を求めて—]]
<http://www.ne.jp/asahi/yabe/masafumi/articles/yb010714.pdf>
-- [312] 消滅確認 [TIME[2024-08-25T14:14:01.400Z]]
-- [313] 
[CITE@ja[[L[“JIS X 4052:2000(日本語文書の組版指定交換形式)”と[BR[]]“Ruby Annotation, W3C Recommendation 31 May 2001”におけるルビ・マークアップ方式の開発[BR[]]― テキスト形態構造の交換可能性と国際整合性を求めて ―]]]],
[DATA(.author)[[[家辺勝文]]]],
[TIME(.published jp)[2001年7月14日][2001-07-14]],
[TIME[2024-08-25T14:13:43.000Z]] <https://web.archive.org/web/20060517182416/http://www.ne.jp/asahi/yabe/masafumi/articles/yb010714.pdf>
-[35]
[CITE[ルビ付きテキストのマrクアップ 一組版処理対象要素の構造化と複数の構造モデルを内包するXl一汗ML Ruby DTDモジュール.一]]
([[家辺勝文]]著、2001年10月発表)
<http://world.nijl.ac.jp/~kiban-s/project/seika_pdf/2002-013.pdf>
-- [315] 消滅確認 [TIME[2024-08-25T14:14:18.900Z]]
-- [318] [CITE@ja[[L[ルビ付きテキストのマークアップ[BR[]]― 組版処理対象要素の構造化と複数の構造モデルを内包するXHTML Ruby DTDモジュール ―]]]],
[DATA(.author)[[[家辺勝文]]]],
[TIME(.published jp)[2002]], [TIME[2024-08-25T14:23:12.000Z]] <https://web.archive.org/web/20050704044922/http://world.nijl.ac.jp/~kiban-s/project/seika_pdf/2002-013.pdf>



[314] >>2
[[JIS X 4052]] と ([[XHTML]]) Ruby Annotation の開発に関わった人の、両 
[CODE(SGMLe)@en[ruby]] 要素についての記事。

[316] >>35 は >>2 と同内容

[319] >>316 同内容が含まれるが >>35 の方が詳しい部分もある、よ。


[354] 
[[複雑ルビ]]が作られたのは [[JIS X 4052]] 側 (というか [[JIS X 4051]]) 
の要件を満たすためというのが大きい。
ただ[[複雑ルビ]]が複雑な仕様になったのは [[XML]] の技術的な制約
(>>293 の件および[[タグ]]が省略できないこと)
が元凶。

[355] 
なお[[複雑ルビ]]が解決した問題のうち[[両側ルビ]]は[[単純ルビ]]第2案が既に解決策を提示していたし、
[[ルビ文字列]]内の区切りは [CODE[ruby=""]] 案の時点で考慮されていた。

[356] 
ということはそれらの考慮がなされていない[[単純ルビ]]第1案 ([[編集者]]は [[MS]] 社員)
は [[W3C]] 側とは別に設計されたということだな。


-[4]
<http://groups.google.co.jp/groups?threadm=a3brmu%24qm4%241%40news.sfc.keio.ac.jp>
-- [329] 消滅確認 [TIME[2024-08-25T15:25:58.100Z]]

[328] 
>>4
どうして XHTML 1 ruby
が今の形になったのかという話。
(出演: [[mimasa]] 先生ほか)

[331] >>4 が参照していたのはおそらく >>330

- [330] [CITE@ja[XHTML $B$N0LCV$E$1(B (Re: XHTML $B$NBP1~>u67$K$D$$$F(B)]], [TIME[2024-08-25T15:25:28.000Z]] <https://groups.google.com/g/fj.net.www.authoring/c/CnPPS1cE7bY/m/yOorM3jbABoJ>



[36]
[CITE[Implementing the Ruby Module]] <http://www.w3.org/TR/ruby-implementation/>



[FIG(data)[ [409] [[HTML要素概説]]

:[F[要素名]]:[CODE[ruby]]
:[F[要素名]]:[CODE[rb]]
:[F[要素名]]:[CODE[rt]]
:[F[要素名]]:[CODE[rtc]]
:[F[要素名]]:[CODE[rbc]]
:[F[要素名]]:[CODE[rp]]
:技術史文献:[SRC[>>410]], [SRC[>>411]]
:出典:
[REFS[

-[410] 
[DFN[ルビ開発]]:
[CITE@ja[“JIS X 4052:2000(日本語文書の組版指定交換形式)”と“Ruby Annotation, W3C Recommendation 31 May 2001”におけるルビ・マークアップ方式の開発 ― テキスト形態構造の交換可能性と国際整合性を求めて ―]],
[DATA(.author)[[[家辺勝文]]]],
[TIME(.published jp)[2001年7月14日][2001-07-14]],
[TIME[2024-08-25T14:13:43.000Z]] <https://web.archive.org/web/20060517182416/http://www.ne.jp/asahi/yabe/masafumi/articles/yb010714.pdf>
-[411] 
[DFN[ルビ付き]]:
[CITE@ja[ルビ付きテキストのマークアップ ― 組版処理対象要素の構造化と複数の構造モデルを内包するXHTML Ruby DTDモジュール ―]],
[DATA(.author)[[[家辺勝文]]]],
[TIME(.published jp)[2002]], [TIME[2024-08-25T14:23:12.000Z]] <https://web.archive.org/web/20050704044922/http://world.nijl.ac.jp/~kiban-s/project/seika_pdf/2002-013.pdf>

]REFS]

]FIG]


-*-*-


[417] [CITE[Taiju Notebook 進行状況(3)]], [TIME[1999-09-15T20:14:09.000Z]], [TIME[2024-10-14T07:09:28.814Z]] <http://www2s.biglobe.ne.jp/~Taiju/arc-99_8.htm>

*** W3C 手続きの謎

[94]
[CITE@en-US[Ruby Annotation]] ([CODE[2001-04-06 12:31:49 +09:00]] 版) <http://www.w3.org/TR/2001/PR-ruby-20010406/>
([[名無しさん]])

[95]
>>94 より

> After review by the Consortium's Advisory Committee, this specification will either be published as a Recommendation together with XHTML 1.1, into which it is included by reference, or (if review shows further changes are required) republished as a Candidate Recommendation or as a Working Draft. Adjustments to the notation will be made should they become necessary as a consequence of changes to XHTML 1.1.

([[名無しさん]])

[96]
[CITE@en-US[Ruby Annotation]] ([CODE[2001-02-17 01:50:21 +09:00]] 版) <http://www.w3.org/TR/2001/WD-ruby-20010216/>
([[名無しさん]])

[97]
>>96 より

> This document is a W3C Working Draft produced in preparation for moving to Candidate Recommendation. 

これ自体は [[LC]] ではない模様。


[98]
[CITE@en-US[Ruby Annotation]] ([CODE[1999-12-18 00:26:19 +09:00]] 版) <http://www.w3.org/TR/1999/WD-ruby-19991217/>
([[名無しさん]])

[99]
>>98 は [[LC]]。

> After last call comments have been addressed, the Working Group expects to advance this specification to Candidate Recommendation, and then to Proposed Recommendation together with XHTML 1.1, into which it will be included by reference. While the actual markup structure will not be changed at that point in the process, the I18N WG and the editors will make the necessary technical adjustments in notation if such adjustments become necessary as a consequence of changes to XHTML 1.1.

([[名無しさん]])

[100]
[CITE@en-US[Ruby]] ([CODE[1999-09-25 01:07:00 +09:00]] 版) <http://www.w3.org/TR/1999/WD-ruby-19990924/>
([[名無しさん]])

[101]
>>100

> In a future version, this work is intended to be submitted to the HTML Working Group (members only) for inclusion as a module in the XHTML 1.1 [XHTML11].

([[名無しさん]])

[102]
[CITE@en-US[Ruby]] ([CODE[1999-03-20 09:36:59 +09:00]] 版) <http://www.w3.org/TR/1999/WD-ruby-19990322/>

>>101 と同じ
([[名無しさん]])

[103]
[CITE@en-US[Ruby]] ([CODE[1998-12-21 09:24:20 +09:00]] 版) <http://www.w3.org/TR/1998/WD-ruby-19981221/>
([[名無しさん]])

[104]
>>103

> In a future version, this work is intended to be submitted to the HTML Working Group (members only) for inclusion in the next version of HTML.

([[名無しさん]])

[105]
[CITE@en-US[Ruby]] ([CODE[1998-12-21 09:24:20 +09:00]] 版) <http://www.w3.org/TR/1998/WD-ruby-19981221/>

>>104 と同じ。
([[名無しさん]])

[106]
公開メイリングリストでのこの仕様に関する議論が最後に行われたのは
1999年12月の [[www-international]] で、その後の
[[www-international]] や [[www-i18n-comments]] では[[勧告]]されるまでずっとまったく触れられていないようなのですが・・・。

([[名無しさん]])

[107]
>>106 しかしそれ以前の [[www-international]] でも、
WD が出たときに少し話題になる程度。コメントは [[W3C]]
[[会員]]しかみれない [[i18n-editor]] に送れと書いてあるので、
実際にはもっとコメントがあったのかもしれませんが。

;; 昔の [[W3C]] の閉鎖性は今以上にひどいね。

([[名無しさん]])

[108]
>>106-107 同時期の [[www-html]] で [Q@en[ruby]] が [CODE(822)@en[[[Subject]]]] に入った記事は1回だけ ([[WD]]
の告知)。[[勧告]]の告知すら流れていない。
([[名無しさん]])

[109]
[CITE@en[6 W3C Technical Reports]] ([CODE[1999-11-12 05:06:17 +09:00]] 版) <http://www.w3.org/Consortium/Process/Process-19991111/tr.html#RecsCR>

当時の手続きでも、[[CR]] を出して、[[実装報告]]があるものでないと 
[[PR]] には進めないはず ([[実装報告]]の公開の義務はないけど)。
([[名無しさん]])

[110]
同時期の [[XHTML 1.0]] も [[CR]] を飛ばしている。
>>109 で [[CR]] ができたのと同時期に策定中の仕様だから [[CR]]
を免除された?

;; でも >>99 で次は [[CR]] だと言っているのに・・・。


[326] 
正規の [[CR]] → [[実装報告]]の手続きが採られていたなら、
実装が1つ ([[WinIE]]) しかない[[単純ルビ]]も、
実装が1つもない[[複雑ルビ]]も、
それらを組み込んだ [[XHTML 1.1]]
も、
[[PR]] 以降に進めるはずがなかったのに、不思議ですねえ。

;; [327] まあそれを言ってしまうと [CITE[XHTML 1.1]] (が間接的に参照する
[CITE[HTML4]]) には [[PR]] 以降に進めない機能が山程あるからなあ。


** 文書型・媒体型

[20]
[CODE(HTMLe)@en[[[ruby]]]] 系[[要素型]]が含まれている [[W3C]]
[[勧告]]の[[文書型]]は、 [[XHTML 1.1]] だけです。ですから、
[[W3C]] [[勧告]]の[[文書型]]を使用して [CODE(HTMLe)@en[[[ruby]]]]
が含まれる[[文書]]を記述するなら、 
[WEAK[([[HTML 4]] や [[XHTML 1.0]] ではなく)]]
[[XHTML 1.1]] を採用しなければなりません。

[21]
[[XHTML 1.1]] [[文書]]では、[[媒体型]]として
[WEAK[([CODE(MIME)@en[[[text/html]]]] ではなく)]] 
[CODE(MIME)@en[[[application/xhtml+xml]]]] を用いるのが良いとされています。

[22]
>>20-21 より、 [[W3C]] [[勧告]]を用いて [CODE(HTMLe)@en[[[ruby]]]]
を使うなら、 [CODE(MIME)@en[[[application/xhtml+xml]]]]
と[[札付け]]された [[XHTML 1.1]] [[文書]]とするのがよい、
となります。

[23]
その一方で、既存の [CODE(HTMLe)@en[[[ruby]]]] の実装である
[[WinIE]] や [[XHTML Ruby Support]] などは、
[[文書型]]や[[媒体型]]が [[XHTML 1.1]] や 
[CODE(MIME)@en[[[application/xhtml+xml]]]] で''なくても''、
[CODE(HTMLe)@en[[[ruby]]]] を解釈し、[[レンダリング]]します。

;; [[WinIE]] はそもそも [CODE(MIME)@en[[[application/xhtml+xml]]]]
を実装していません。

[16]
元々 [[W3C]] の[[ルビ注釈]]仕様の古い[[作業原案]]では、
[[XHTML]] の場合だけでなく、 [WEAK[([[HTML 4]] のような)]]
[[SGML]] に基づく [[HTML]] 向けにも同じ [CODE(HTMLe)@en[[[ruby]]]]
系[[要素型]]群が定義されていましたが、後に削除されてしまいました。
現実に [[XHTML]] でない [[HTML]] 
で実装・利用されてしまっていることを無視した変更にも関わらず、
なぜか [CODE(HTMLe)@en[[[rb]]]] [[タグ]]が無い従来の実装との互換性に関するメモが代わりに追加されています。

;; 
[CITE@en[C.  Notes on backwards compatibility]]
<http://www.w3.org/TR/2001/REC-ruby-20010531/#compatibility>

[17]
[[XHTML 1.1]] は従来の [[HTML]] とは互換性が無い[[文書型]]であり、
[CODE(MIME)@en[[[application/xhtml+xml]]]] 
と[[札付け]]しなければならないと主張する人は、
その[Q[非互換性]]の根拠の一つとして [CODE(HTMLe)@en[[[ruby]]]]
系[[要素型]]の追加を挙げることがあります。

たしかに [[W3C]] [[勧告]]だけを見ればもっともな主張ですが、
[CODE(MIME)@en[[[text/html]]]] と[[札付け]]された [[XHTML]]
ではない従来の [[HTML]] 
で既にこれらの[[要素型]]群が既に利用されている実態を無視して一体何が[Q[非互換]]だと言えるのでしょうか。
元々 [[HTML]] は[Q[知らない[[要素型]]は無視する]]という誤り回復の大原則の下に拡張されてきたのであり、
[CODE(HTMLe)@en[[[ruby]]]] もその延長線上にあるに過ぎません。
[CODE(HTMLe)@en[[[rp]]]] [[要素型]]の存在こそがその証左ではありませんか。

それを、 [[XHTML 1.1]] で [CODE(MIME)@en[[[application/xhtml+xml]]]]
と[[札付け]]した[[文書]]でなければ [CODE(HTMLe)@en[[[ruby]]]]
を使ってはいけないなどと主張するのは実に愚かなことであります。
しかも [CODE(HTMLe)@en[[[ruby]]]] の最も広く用いられている実装が
[CODE(MIME)@en[[[application/xhtml+xml]]]]
に対応していないというのに。

[[#comment]]


** 実装



[336] [CITE[ROM作成物サポートページ]], [TIME[2024-08-22T13:33:22.000Z]], [TIME[2024-08-26T05:28:42.407Z]] <http://hp.vector.co.jp/authors/VA038316/>


>    Microsoft Internet Explorer 5~6 / Microsoft Windows Internet Explorer 7~11 (for Windows)
    Microsoft Internet Explorer 5.0 / 5.1 (for Mac OS ~9.x)
    Microsoft Internet Explorer 5.2 (for Mac OS X (PowerPC))
    Microsoft Internet Explorer 5.0~5.5 (for UNIX (Solaris / HP-UX))
    (1999年3月リリース...)

>
[PRE[
    Google Chrome 4~
    (2010年1月リリース)
]PRE]
[PRE[
    Apple Safari 4.1.x (for Mac OS X 10.4)
    Apple Safari 5~ (for Mac OS X 10.5~)
    Apple Safari 5.0 / 5.1 (for Windowsxp~ )
    (2010年6月リリース)
]PRE]
[PRE[
    Opera 14 for Android
    (2013年5月リリース)
    Opera 15~
    (2013年7月リリース)
]PRE]
[PRE[
    Mozilla Firefox 38~
    (2015年5月リリース)
]PRE]
[PRE[
    Microsoft Edge (for Windows 10)
    (2015年7月リリース)
]PRE]


- [254] [CITE@EN-US[RUBY Element | RUBY Object]], [[InetSDK]], [TIME[2024-08-17T04:04:06.000Z]], [TIME[2000-10-19T14:35:27.126Z]] <https://web.archive.org/web/20001019135022/http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/ruby.asp>
- [255] [CITE@EN-US[RT Element | RT Object]], [[InetSDK]], [TIME[2024-08-17T04:04:27.000Z]], [TIME[2000-10-19T13:11:24.773Z]] <https://web.archive.org/web/20001019122619/http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/rt.asp>

[256] >>254 >>255 [CODE[ruby]] と [CODE[rt]] だけが [[IE5]] からの追加として出ている。

[310] 
ドキュメントにはないが、 [CODE[rp]] も実装されていたはず。表示されなくなるので。


- [338] [CITE@en[Internet Explorer version history - Wikipedia]], [TIME[2024-08-25T13:31:52.000Z]], [TIME[2024-08-26T05:47:26.358Z]] <https://en.wikipedia.org/wiki/Internet_Explorer_version_history>


[339] >>338 では[TIME[1998-11-15]]の [[Internet Explorer]] 5.0 Beta 2
で実装されたとしています。
[TIME[1998-06-02]]の 5.0 Beta 1 では未実装だったことになります。



[358] [CITE[とほほのHTMLリファレンス(配置)]], [TIME[2024-08-30T14:35:14.000Z]], [TIME[2000-09-19T23:06:11.076Z]] <https://web.archive.org/web/20000919230542/http://wakusei.cplaza.ne.jp/twn/wwwrefpo.htm#RUBY>


[FIG(data)[ [320] [[HTML要素概説]]

:[F[要素名]]:[CODE[ruby]]
:[F[要素名]]:[CODE[rt]]
:[F[要素名]]:[CODE[rp]]
:日付:[TIME[1998-11-15]]
:説明:
[TIME[1998-11-15]]の [[Internet Explorer]] 5.0 Beta 2
は
[CODE[ruby]],
[CODE[rt]],
[CODE[rp]]
を実装した。
長らく 
[CODE[ruby]]
を実装する唯一の主要
[[Webブラウザー]]だった。
現行仕様である。
:出典:[[<ruby>]]

]FIG]

[11]
[CITE[IEのルビ]] <http://piro.sakura.ne.jp/latest/2005/02.html#d27-A7EE5347-2>

> もうほんとIEのルビの仕様って謎だらけだ。

[5] [[IE]] で  [CODE(HTML)[[[ruby]]]] 要素 を含む [[HTML]] を表示すると、 ruby のある行
とない行で行間がだいぶかわって、すんごく読みにくいですよね。
あれ、なんとかならないんでしょうか。

[[CSS]] の [[line-height]] とかでも駄目みたいだ・・。

[7]
Excel で [[HTML]] を出力させると、
[PRE(invalid HTML example code)[
<ruby>価格<span style='display:none'><rt>カカク</rt></span></ruby>
]PRE]

のようになります。
[SEE[ [[Microsoft OfficeのHTML]] ]]

[27]
[CITE[Ruby Editor]] <http://hp.vector.co.jp/authors/VA027424/ruby.htm>

[CODE(HTMLe)@en[[[ruby]]]] [[要素]]を生成するソフトウェア。
2001年6月、7月、 [[Hiroe]] 作、 [[Win32]] 用、無料。

[CODE(HTMLe)@en[[[rb]]]], [CODE(HTMLe)@en[[[rp]]]],
[CODE(HTMLe)@en[[[rt]]]] の[[終了タグ]]を省略するようです。

([[名無しさん]] [sage])

[30]
[CITE[ルビ振りサービスとは:アダプティブテクノロジー]] 
<http://www.adaptive-techs.com/ruby/index.html>

[[閲覧]]する [[Web頁]]や[[受信]]する[[電子メイル]]に[[ルビ]]を付け加える無料サービス。
[[電子メイル]]は [CODE(MIME)@en[[[text/plain]]]] ([[行内]])
でも [CODE(MIME)@en[[[text/html]]]] でも OK で、
後者なら [CODE(HTMLe)@en[[[ruby]]]] を使える。

ルビ文としては、[[仮名]]の他に[[羅馬字]]も選べる。

([[名無しさん]] [WEAK[2005-12-24 08:01:21 +00:00]])

[31]
[CITE[キッズgoo [ヘルプ] 漢字ひらがな変換について]] <http://kids.goo.ne.jp/info/kanji.html>

検索結果の[[Web頁]]を [[goo]] の[[鯖]]で[[ルビ]]つきに変換して[[閲覧]]できる。
以前は小学校3年生以下の[[教育漢字]]には[[ルビ]]を振らない選択ができた。

([[名無しさん]] [sage])

[32]
[CITE[ルビ振りスクリプト(ルビタグ作成)]] 
([[PONTA]] 著、2005年7月付け)
<http://www.animegif.net/tips/javascript/ruby-script.html>

[[XHTML]] [CODE(HTMLe)@en[[[ruby]]]] [[要素]]を生成する
[[DHTML]] [[応用]]。
([[名無しさん]] [sage])

[38]
[CITE[Internet Explorer (MacOS) CSSバグリスト]]
- [CSECTION[ルビつき文字がページ右端にあるとルビが正しい位置に表示されない(5.x)]] <http://cssbug.at.infoseek.co.jp/detail/macie/b027.html>
- [CSECTION[特定の文字数のルビが正しい位置に表示されない(5.x)]]
<http://cssbug.at.infoseek.co.jp/detail/macie/b026.html>
- [CSECTION[ルビ関連要素のdisplayプロパティを変更できない(IE5)]]
<http://cssbug.at.infoseek.co.jp/detail/macie/b036.html>

([[名無しさん]] [sage])

[41]
[CITE[Nucleus ルビプラグイン - Weblog]] <http://ryus.s21.xrea.com/w/item/636>
([[名無しさん]] [WEAK[2006-01-06 02:47:31 +00:00]])

[48]
[CITE[Ruby in HTML - Anne’s Weblog about Markup & Style]] <http://annevankesteren.nl/2006/01/ruby>
([[名無しさん]] [WEAK[2006-01-30 00:45:53 +00:00]])

[49]
[[WinIE 6]] does not recognize [CODE(HTMLe)@en[[[rt]]]] and [CODE(HTMLe)@en[[[rp]]]] start/end tags ''outside'' any
[CODE(HTMLe)@en[[[ruby]]]] element.
For example, 
[PRE(HTML invalid example code)[
<p>Paragraph text, <rt>ruby text</rt>.</p>
]PRE]

is result in a DOM tree whose [CODE(HTMLe)@en[[[p]]]]
element node contains:
- Text node,
- [CODE(HTMLe)@en[[[rt]]]] element node,
- Text node,
- [CODE(HTMLe)@en[/[[rt]]]] element node, and
- Text node.

(The same is applied for the [CODE(HTMLe)@en[[[rp]]]] element
type.  Interestingly, this is how [CODE(HTMLe)@en[[[td]]]]
tags are parsed outside [CODE(HTMLe)@en[[[table]]]].)

([[名無しさん]])

[52]
[CITE[ルビ表示はユーザスタイルシートで! - 徒書]] <http://www.akatsukinishisu.net/itazuragaki/css/use_ruby_style_as_user_stylesheet.html>
([[名無しさん]] [WEAK[2006-06-01 22:08:03 +00:00]])

[53]
>>52:

> というか2003年から勧告候補のままということは、もしかして勧告の見込み無しだったりするのでしょうか。うーむ。

ヒント: [[CSS WG]] は過負荷

;; 2008年[[勧告]]予定、おそらくさらにおくれる

([[名無しさん]] [WEAK[2006-06-01 22:11:35 +00:00]])

[54]
[CITE[Shishimushi - &#65279;Operaにおけるルビ表示]] <http://kawatarou.info/note/opera/ruby.htm>
([[名無しさん]] [WEAK[2006-10-21 23:24:03 +00:00]])

[55]
[CITE[2006年10月の戯言 - 駄的HTML改善計画]] <http://car.s35.xrea.com/diary/200610.php#D21-01>
([[名無しさん]] [WEAK[2006-10-21 23:24:48 +00:00]])

[59]
[CODE(HTMLe)@en[[[rt]]]] start-tag closes opening
[CODE(HTMLe)@en[[[rp]]]] elements, while
[CODE(HTMLe)@en[[[rp]]]] start-tag does not close
any opening [CODE(HTMLe)@en[[[rt]]]] element.

([[名無しさん]])

[64]
[CITE[BugTrack-plugin/330 - FreeStyleWiki]] ([CODE[2007-03-06 09:01:52 +09:00]] 版) <http://fswiki.poi.jp/wiki.cgi?page=BugTrack%2Dplugin%2F330>
([[名無しさん]])

[69]
How invalid markup will be rendered in [[WinIE 6]]?
[PRE(HTML invalid example code)[
<ruby>XX<[VAR@en[XXX]]>WWW</[VAR@en[XXX]]>ZZZ<rt>YYYYYYYYYYYY</rt></ruby>
]PRE]

Most block-level elements, including
address, blockquote,, dir, menu, ol, ul, div,
dl, form, h[VAR@en[n]], pre, xmp, listing, p, center,
''br'', (plaintext), (isindex) are rendered like:
[PRE(aafig)[
XX
WWW
YYYYYYYYYYYY (small)
    ZZZZ
]PRE]

while table, fieldset, hr are rendered like:
[PRE(aafig)[
XX
ZZZZYYYYYYYYYYYY (Y's are smaller than other characters)
WWW
]PRE]

Note that inline-level elements including
iframe, button, input, a, img, textarea,
map, ''marquee'' are rendered like:
[PRE(aafig)[
YYYYYYYYYYYY (small)
 XXWWWZZZZ
]PRE]

([[名無しさん]] [WEAK[2007-05-21 11:50:41 +00:00]])

[70]
What about invalid elements in [CODE(HTMLe)@en[[[rt]]]]?

[PRE(HTML invalid example code)[
<ruby>YYYYYYYYYYYY<rt>XX<[VAR@en[XXX]]>WWW</[VAR@en[XXX]]>ZZZZ</rt></ruby>
]PRE]

Block-level elements, including
address, blockquote, center, ul, ol, dir, menu,
dl, fieldset, form, h1, hr, isindex, listing, p,
pre, xmp, table, ''br'', (plaintext) are
rendered like:
[PRE(aafig)[
  XXX (small)
YYYYYYYY
WWW (small)
ZZZ (small)
]PRE]

Note that inline-level elements including button, a,
iframe, img, map, ''marquee'' are like:
[PRE(aafig)[
XXXWWWZZZ (small)
YYYYYYYY
]PRE]

([[名無しさん]] [WEAK[2007-05-21 11:55:04 +00:00]])

[71]
How [[WinIE 6]] constructs [[DOM]] from a [[tag soup]]?

- [CODE(HTML)@en[<ruby>]] closes any opening [CODE(HTMLe)@en[[[ruby]]]] element in scope.
If any [CODE(HTMLe)@en[[[rt]]]] or [CODE(HTMLe)@en[[[rp]]]] elements descendant of that element are opened, then they are also closed. (In scope means that it does not search such element across [CODE(HTMLe)@en[[[caption]]]], [CODE(HTMLe)@en[[[marquee]]]], [CODE(HTMLe)@en[[[button]]]], [CODE(HTMLe)@en[[[td]]]], [CODE(HTMLe)@en[[[th]]]].)
It does not close any other elements (including
inline-level elements, [CODE(HTMLe)@en[[[p]]]],
[CODE(HTMLe)@en[[[li]]]], [CODE(HTMLe)@en[[[dt]]]]).
It opens a [CODE(HTMLe)@en[[[ruby]]]] element.
- [CODE(HTML)@en[</ruby>]] closes any opening 
[CODE(HTMLe)@en[[[ruby]]]] element in scope,
as well as descendant [CODE(HTMLe)@en[[[rt]]]] and
[CODE(HTMLe)@en[[[rp]]]] elements,
but not other elements (including inline-level
elements, [CODE(HTMLe)@en[[[li]]]],
[CODE(HTMLe)@en[[[dt]]]]).
''However'', if there is no opening [CODE(HTMLe)@en[[[ruby]]]]
element in scope, then it does nothing except
a [CODE(HTMLe)@en[/[[ruby]]]] element node is appended.
- [CODE(HTML)@en[<rt>]] closes any opening
[CODE(HTMLe)@en[[[rt]]]] element in scope and descendant [CODE(HTMLe)@en[[[rp]]]]
element thereof, but does not close any other
elements.  It opens a [CODE(HTMLe)@en[[[rt]]]]
element and append it to both the opening
[CODE(HTMLe)@en[[[ruby]]]] element and
the current node (if they are different).
For example, in [CODE(HTML example)@en[<ruby><rt><b><rt>]]
the second [CODE(HTMLe)@en[[[rt]]]] element
belongs both to the [CODE(HTMLe)@en[[[ruby]]]] and
the [CODE(HTMLe)@en[[[b]]]].
''However'', if there is no [CODE(HTMLe)@en[[[ruby]]]]
element in scope, then a [CODE(HTMLe)@en[[[rt]]]]
element node is appended as if it were a text node
and the current node is left as is.
- [CODE(HTML)@en[</rt>]] closes any opening
[CODE(HTMLe)@en[[[rt]]]] element in scope,
as well as its descendant [CODE(HTMLe)@en[[[rp]]]]
element, but not any other elements.
''However'', if there is no [CODE(HTMLe)@en[[[ruby]]]]
element in scope, then a [CODE(HTMLe)@en[/[[rt]]]]
element node is appended as if it were a text node
and the current node is left as is.
- [CODE(HTML)@en[<rp>]] closes any opening
[CODE(HTMLe)@en[[[rp]]]] element in scope,
but not any other elements.
It opens a [CODE(HTMLe)@en[[[rp]]]] element
and append it to the current node.
''However'', if there is no [CODE(HTMLe)@en[[[ruby]]]]
element in scope, then a [CODE(HTMLe)@en[[[rp]]]]
element node is appended as if it were a text node
and the current node is left as is.
- [CODE(HTML)@en[</rp>]] closes any opening
[CODE(HTMLe)@en[[[rp]]]] element in scope,
but not any other elements.
''However'', if there is no [CODE(HTMLe)@en[[[ruby]]]]
element in scope, then a [CODE(HTMLe)@en[/[[rp]]]]
element node is appended as if it were a text node
and the current node is left as is.
- If an opening element opened before [CODE(HTML)@en[<ruby>]]
is closed explicitly or implicitly, then any following sibling nodes are also appended to the parent of the closed node.
For example, in [CODE(HTML)@en[<body><a><ruby><rt></a>b</ruby></body>]],
the text node [CODE[b]] belong both [CODE(HTMLe)@en[[[body]]]]
and [CODE(HTMLe)@en[[[rt]]]].  Likewise,
in [CODE(HTML)@en[<body><a><ruby><rt><a>b</ruby></body>]]
the second [CODE(HTMLe)@en[[[a]]]] belongs both
[CODE(HTMLe)@en[[[body]]]] and [CODE(HTMLe)@en[[[rt]]]].
In [CODE(HTML)@en[<body><a><ruby><rt></a>b<rt>c</ruby></body>]]
the second [CODE(HTMLe)@en[[[rt]]]] belongs both
[CODE(HTMLe)@en[[[body]]]] and [CODE(HTMLe)@en[[[ruby]]]].

([[名無しさん]] [WEAK[2007-05-21 12:45:36 +00:00]])

[72]

- No start or end tag other than [CODE(HTMLe)@en[[[ruby]]]],
[CODE(HTMLe)@en[[[rt]]]], or [CODE(HTMLe)@en[[[rp]]]]
does close opening [CODE(HTMLe)@en[[[ruby]]]],
[CODE(HTMLe)@en[[[rt]]]], or [CODE(HTMLe)@en[[[rp]]]]
elements.

([[名無しさん]] [WEAK[2007-05-21 12:47:41 +00:00]])

[73]

[PRE(HTML example code)[
<ruby><rbc><rb>A</rb><rb>B</rb></rbc><rtc><rt>C</rt><rt>D</rt></rtc>
]PRE]

... is rendered as:
[PRE(aafig)[
C D (small)
A B
]PRE]

... while:
[PRE(HTML example code)[
<ruby><rbc><rb>A</rb><rb>B</rb></rbc><rtc><rt>C</rt>'' ''<rt>D</rt></rtc>
]PRE]

... is rendered as:
[PRE(aafig)[
 C  D (small)
A B
]PRE]

... since the text node between two [CODE(HTMLe)@en[[[rt]]]]s
is cosidered as a ruby base.

([[名無しさん]] [WEAK[2007-05-21 14:01:54 +00:00]])

[74]
>>71
If [CODE(HTMLe)@en[[[marquee]]]], [CODE(HTMLe)@en[[[caption]]]],
[CODE(HTMLe)@en[[[td]]]], [CODE(HTMLe)@en[[[th]]]],
or [CODE(HTMLe)@en[[[button]]]] has been
opened before [CODE(HTMLe)@en[[[ruby]]]],
then an end tag of those element closes
all elements until that element is closed, including [CODE(HTMLe)@en[[[ruby]]]],
[CODE(HTMLe)@en[[[rt]]]], and [CODE(HTMLe)@en[[[rp]]]].
For example, in [CODE(HTML example)@en[<body><marquee><ruby><rt></marquee>c]],
the text node [CODE[c]] is a child of the
[CODE(HTMLe)@en[[[body]]]].
In [CODE(HTML)@en[<body><marquee><ruby><rt><a></marquee>c]],
again, the text node [CODE[c]] is a child of (only) the
[CODE(HTMLe)@en[[[body]]]].

([[名無しさん]] [WEAK[2007-05-21 15:18:42 +00:00]])

[75]
[CITE[Kanjidict 1.7.2]] ([CODE[2007-05-22 09:17:53 +09:00]] 版) <http://kanjidict.stc.cx/dict>

[CITE[Japanese/English web dictionary application]] ([CODE[2007-05-22 09:18:10 +09:00]] 版) <http://bisqwit.iki.fi/source/japkanji.html>

([[名無しさん]])

[76]
>>75 の出力例:

>
[PRE(HTML example code)[
<ruby><rbc><rb><span class=kanares> ルビー</span></rb></rbc><rp> (</rp><rtc><rt>rub&#299;</rt></rtc><rp>) </rp></ruby>
]PRE]

([[名無しさん]] [WEAK[2007-05-22 00:21:20 +00:00]])

[77]
>>75 の出力例:

>
[PRE(HTML example code)[
<ruby><rbc><rb><span class=kanjires><a href="3948">紅</a><a href="364C">玉</a></span></rb></rbc><rp><br> (</rp><rtc><rt><span class=kanares><span class=kanares> こうぎょく</span></span></rt></rtc><rp>) </rp><rp> (</rp><rtc><rt>kougyoku</rt></rtc><rp>) </rp></ruby>
]PRE]

([[名無しさん]] [WEAK[2007-05-22 00:27:57 +00:00]])

[78]
[CITE[Yahoo!きっずよみがなツール]] ([CODE[2007-06-02 19:36:23 +09:00]] 版) <http://cvt.kids.yahoo.co.jp/yomigana/index.cgi>

A ruby gateway.  It generates [CODE(HTMLe)@en[[[ruby]]]]
for [[WinIE]]:
[PRE(HTML bad example code)[
<td><small><a  target="_top" href="http://cvt.kids.yahoo.co.jp/yomigana/index.cgi?ykvrank3&ykvdesturl=http%3a%2f%2fhelp%2eyahoo%2eco%2ejp%2fhelp%2fjp%2fkids%2fproperties%2fproperties%2d35%2ehtml" class=sbody><ruby><rb>恐竜</rb><font Style=text-decoration:none; ><rp>(</rp><rt>きょうりゅう</rt><rp>)</rp></font></ruby>カードの見方</a></small></td></tr>
]PRE]

... while [CODE(HTMLe)@en[[[font]]]] for other browsers:
[PRE(HTML bad example code)[
<tr><td width="1%" valign=top><small><b>2.</b></small></td>
<td><small><a  target="_top" href="http://cvt.kids.yahoo.co.jp/yomigana/index.cgi?ykvrank3&ykvdesturl=http%3a%2f%2fhelp%2eyahoo%2eco%2ejp%2fhelp%2fjp%2fkids%2fproperties%2fproperties%2d35%2ehtml" class=sbody>恐竜<font size=-2>(きょうりゅう)</font>カードの見方</a></small></td></tr>
<tr><td width="1%" valign=top><small><b>3.</b></small></td>
]PRE]

([[名無しさん]] [WEAK[2007-06-02 10:38:23 +00:00]])

[79]
>>78

> 現在はYahoo!きっず以外のページでは使えません。

([[名無しさん]] [WEAK[2007-06-02 10:41:36 +00:00]])

[80]
[CITE@ja[ふりがな 付けます]] ([CODE[2007-06-02 19:42:46 +09:00]] 版) <http://www.hiragana.jp/>

A [CODE(HTMLe)@en[[[ruby]]]] gateway.
([[名無しさん]] [WEAK[2007-06-02 10:43:38 +00:00]])

[84]
[CITE[影鷹 : HTML タグ対応状況詳細]] ([CODE[2005-05-09 20:53:18 +09:00]] 版) <http://www.kagetaka.org/spec-html.html>

[[単純ルビ]]には対応、[[複雑ルビ]]には未対応。
([[名無しさん]])

[87]
[CITE@ja[IE以外でルビ]] ([CODE[2007-08-24 19:49:33 +09:00]] 版) <http://welkin.s60.xrea.com/blog/index.php?UID=1152418820>

> 作者の方曰く、「このスタイルシートはユーザスタイルシートで指定すべきもので、製作者スタイルシートで指定すべきものではない」とのことなのですが、属性セレクタ使ってIEを避ければ使えないかなぁ、と思い、数時間ああでもないこうでもないと弄っています。

そういう問題ではないような。

([[名無しさん]])

[88]
[CITE@ja[Shishimushi - Operaにおけるルビ表示]] ([CODE[2007-08-24 19:58:17 +09:00]] 版) <http://kawatarou.info/note/opera/ruby.htm>
([[名無しさん]])

[122]
>>71 [[WinIE]] creates a non-tree DOM for, say, 
[CODE(example)@en[<ruby>xxx<span>yyy<ruby>zzz]]

;; <http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cruby%3Exxx%3Cspan%3Ezzz%3Cruby%3Eyyy>

([[名無しさん]])

[123]
[CITE@ja[本気(マジ)なアクセシビリティ - とりココBlog - 福島県郡山市のITブログ]] ([CODE[2008-05-31 20:12:13 +09:00]] 版) <http://toricoco.livedoor.biz/archives/50095107.html>
([[名無しさん]])

[124]
[CITE@ja[たとえばこんなルビ表示 - 桝席]] ([CODE[2008-05-31 01:46:15 +09:00]] 版) <http://www.masuseki.com/index.php?u=idea/060603_ruby.htm>
([[名無しさん]])

[125]
[CITE@ja[ruby要素を擬似的に再現する ≪ Archive ≪ Alias under the Azure]] ([[蒼井拓]] 著, [CODE[2008-05-15 21:38:27 +09:00]] 版) <http://tkblue.s221.xrea.com/web/ruby>
([[名無しさん]])

[126]
[CITE@ja[undefined variable:UserJS : rubyタグ ルビ振りスクリプト | PLAYLOG]] ([CODE[2008-05-31 20:36:01 +09:00]] 版) <http://playlog.jp/gyokuto/blog/2007-03-09>

[236] 
[CITE[[[影鷹]] : HTML タグ対応状況詳細]], [TIME[2005-05-09T11:53:18.000Z]], [TIME[2022-08-31T03:20:21.644Z]] <http://www.kagetaka.org/spec-html.html>

[[影鷹]]は[[単純ルビ]]に対応していましたが、[[複雑ルビ]]には対応していませんでした。

;; [237] [[縦書き]]表示ブラウザーなので縦にレンダリングされていたはず。


[335] 
[TIME[2024-08-26T05:23:55.800Z]]
<https://uec.repo.nii.ac.jp/record/2000085/files/prosym64-06.pdf>

** 不思議解釈

[8]
[PRE(invalid HTML example code)[
<span class="aHeadlineText">毛無関係…<ruby>け<rt><b>、</b><ruby><ruby>な<rt><b>、</b><ruby><ruby>し<rt><b>、</b><ruby>合い</span>
]PRE]

出典: ''asahi.com : 関西 : お悩み祭り'' <http://www.asahi.com/kansai/special/OSK200407300019.html>
(2004年7月付け、2004年7月現在。)

記事の[[見出し]]らしき部分です。 (見出しなら素直に [CODE(HTMLe)[[[h[VAR[n]]]]]]
を使えばよいものを。)

いったい何を意図しているのやら、さっぱりわかりません。
と思って [[WinIE 6]] で見たら、[[傍点]]を打とうとしていたことがわかりました。
([[ruby//2004-07-31]] 参照。)
つまり、偶数個目の [SAMP(HTML)[<ruby>]] は本来
[SAMP(HTML)[</ruby>]] とするべきもので、 WinIE
は [Q[[CODE(HTMLe)[ruby]] の入れ子はできない]]という原則に従って
[CODE(HTMLe)[ruby]] の終了タグを補ってくれるようです。

[9]
>>8 とまったく同じものが記事一覧にもあります。

''asahi.com : 関西 : 特集一覧'' <http://www.asahi.com/kansai/special/#onayami>
([[名無しさん]] [WEAK[2004-07-31 08:16:13 +00:00]])

[10]
[CITE[   STYLEの「倉庫」   ]] <http://www4.ocn.ne.jp/~tester/style/kowaza_ruby.html#ruby0>
(2004年7月31日付)
は1つの [CODE(HTMLe)[ruby]] 要素内に
[CODE(HTMLe)[[[rb]]]] 要素相当と [CODE(HTMLe)[[[rt]]]] 要素を何度も連続して使う例を紹介しています。
こんなのでも [[WinIE]] は[Q[意図した通り]]に表示してしまいますよ。すごいですねー。

[PRE(HTML invalid example code)[
<ruby style="font-size: 14pt; color: black">
本気<rt>まじ</rt><br>
特攻<rt>ぶっこみ</rt><br>
薔薇と憂鬱<rt>べるばら</rt><br>
躊躇<rt>むせんいんしょく</rt>
</ruby>
]PRE]

([[名無しさん]] [WEAK[2005-02-23 06:46:13 +00:00]])

[33]
'''[CODE(HTMLe)@en[ruby]] は従来の HTML と非互換?'''

たまに、 [CODE(HTMLe)@en[[[ruby]]]] はそれ以前の [[HTML]]
では非互換である [WEAK[(から [CODE(MIME)@en[[[text/html]]]]ではなく[CODE(MIME0)@en[[[application/xhtml+xml]]]]で使用するべきだ)]]
などと主張する人がいます。しかし、以前からの[Q[知らない[[要素型]]は無視する]]伝統的な誤り回復法に基づけば、[CODE(HTMLe)@en[[[rp]]]]を使う限り[Q[非互換]]とはとてもいえません。

この程度の[Q[非互換]]変更は[CODE(HTMLe)@en[[[ruby]]]]以前にも、例えば[CODE(HTMLe)@en[[[table]]]]導入時に行われています。[CODE(HTMLe)@en[[[table]]]]には[CODE(HTMLe)@en[[[rp]]]]に相当するものが無く、未対応の[[利用者エージェント]]では表示が崩れることが問題だと当時はいわれていました。それに比べれば、[CODE(HTMLe)@en[[[ruby]]]]の追加など微々たる変更に過ぎません。

未対応の[[利用者エージェント]]は[[ルビ文]]が煩さ過ぎるという問題もありますが、こちらは[CODE(HTMLe)@en[[[ruby]]]][[マーク付け]]自体ではなく、[[CSS]]などによる[[レンダリング]]側の問題です。ここでいう[Q[非互換]]などの主張の根拠にはなりえません。

([[名無しさん]] [sage])

[51]
[CITE[ruby要素の不合理]] <http://web.xii.jp/iec/html/memo/ruby>

[CODE(HTMLe)@en[[[ruby]]]] が単に[[振り仮名]]だけを表すものではないことは仕様書を読めばわかるのに、
それを読まないで (または無視して) 妙な主張をする人は後を絶たない。

;; でも仕様書は背景説明が少なすぎるかも。

([[名無しさん]] [WEAK[2006-05-14 08:26:15 +00:00]])

[[#comment]]


** 関連

[[#comment]]


** 例

[12]
[CITE@en[Creating web pages with lyrics and chords]]
<mid:loom.20050808T033608-69@post.gmane.org>
から始まるスレでは、[[ギター]]の[[コード]]と[[歌詞]]を併記したいという問いに対して
[CODE(HTMLe)@en[[[ruby]]]] を使う案が挙げられています。

ギターに限らず音の名前や番号などを併記する必要がある場面で使えそうです。

流石に沢山のパートを全部書きたい時は [CODE(HTMLe)@en[[[table]]]]
を使うとか、[[楽譜]]用の[[マーク付け言語]]を使うのが正しいでしょうが。

[37]
'''両側複雑ルビの例'''
[PRE(HTML example code)[
<ruby>
 <rbc><rb>整</rb><rb>形</rb><rb>式</rb></rbc>
 <rtc><rt>せい</rt><rt>けい</rt><rt>しき</rt></rtc>
 <rtc><rt rbspan="3">well-formed</rt></rtc>
</ruby>

]PRE]

;; 出典
[CITE[2002年2月 - マーク付けノート]] 
<http://www.satoshii.org/markup/notes/2002/02#day05-1>

レンダリング例
[PRE(example aafig)[
整形式 (せい-けい-しき / well-formed)
]PRE]

([[名無しさん]] [sage])

[39]
[CITE[Opera 7 で ルビデモ (text/htmlモード)]] 
<http://www.minc.ne.jp/~konda/diary/ruby_for_ope7.html>

[[CSS 2.1]]で擬似的に[[ルビ]]を[[レンダリング]]させる例
([[名無しさん]] [sage])

[40]
'''両側複雑ルビ・またぎあり・日英併記の例'''
[PRE(HTML example code)[
<ruby>
  <rbc>
    <rb>骨</rb>  <rb>粗</rb>  <rb>鬆</rb>  <rb>症</rb>
  </rbc>
  <rtc>
    <rt>こつ</rt>  <rt>そ</rt>  <rt>しょう</rt>  <rt>しょう</rt>
  </rtc>
  <rtc>
    <rt rbspan="4" xml:lang="en">osteoporosis</rt>
  </rtc>
</ruby>
]PRE]

;; 出典: [CITE[Ruby testcases]] 
<https://bugzilla.mozilla.org/attachment.cgi?id=78239&action=view>、改

([[名無しさん]] [sage])

[50]
[CITE[Ruby Annotation Under The Sunlight - W3C QA Weblog]] <http://www.w3.org/QA/2006/02/ruby_annotation_to_change_the.html>
([[名無しさん]] [WEAK[2006-02-14 03:32:55 +00:00]])

[56]
[CITE[GEO internationalization tests]] <http://www.w3.org/International/tests/#ruby>
([[名無しさん]])

[57]
[CITE[雙子&#35987;的世界:網站規劃:國際化的困難與挑戰]] <http://www.pagras.net/wd/i18n/index.html>
([[名無しさん]])

[58]
[CITE@en[An HTML Ruby Test Suite]]
<http://suika.suikawiki.org/~wakaba/-temp/test/html/ruby/>

([[名無しさん]] [WEAK[2006-11-12 07:35:14 +00:00]])

[60]
[CITE[Index of /People/mimasa/test/ruby]] <http://www.w3.org/People/mimasa/test/ruby/>
([[名無しさん]])

[61]

[PRE(HTML example code)[
いいか<ruby>
<rbc><rb>釜</rb><rb>右ヱ</rb><rb>門</rb>
<rp>(</rp>
<rtc><rt>かま</rt><rt>え</rt><rt>もん</rt>
<rp>)</rp>
</ruby>。 
]PRE]

レンダリング例:
[PRE(example aafig)[
            かま   え   もん
 い  い  か  釜  右  ヱ  門  。 
]PRE]

([[名無しさん]])

[85]

>
[PRE(HTML bad example code)[
<ruby>
  <rbc>
    <rb>H</rb>
    <rb>T</rb>
    <rb>M</rb>
    <rb>L</rb>
  </rbc>
  <rtc>
    <rt rbspan="2">HyperText</rt>
    <rt>Markup</rt>
    <rt>Language</rt>
  </rtc>
</ruby>
]PRE]

;; [CITE@ja[第5章 第5節 | 『Web標準の教科書』読者サポートページ]] ([[益子 貴寛,Takahiro Mashiko]] 著, [CODE[2007-03-22 12:49:15 +09:00]] 版) <http://www.cybergarden.net/webstandards/chap5-section05.html>

([[名無しさん]])

[86]
>>85

本来[[ルビ]]でないものを無理矢理例示のために[[ルビ]]にした不自然な例だと思います。

([[名無しさん]])

[91]
[CITE[三里にわたる千里山脈]] ([CODE[1997-10-11 02:37:00 +09:00]] 版) <http://homepage.mac.com/ryomasuda/Saigoku/history/Chisato/range.html>

>
[PRE(HTML bad example code)[
千里山<FONT SIZE=-2 COLOR=BROWN>(ちさとやま)</FONT>と<BR>称す
]PRE]

([[名無しさん]])

[92]
[CITE@en-us[Test results: Ruby markup served as text/html]] ([CODE[2007-10-30 21:25:05 +09:00]] 版) <http://www.w3.org/International/tests/results/results-ruby-markup-2.php>
([[名無しさん]])

[111]
[CITE[中時部落格-金色巨塔-十一月台股政經大事預覽]] ([CODE[2008-05-10 15:22:36 +09:00]] 版) <http://blog.chinatimes.com//sean/archive/2006/11/01/123326.html>

[PRE(HTML bad example code)[
<RUBY><FONT class=font5><RT class=font5></RT></FONT></RUBY>
]PRE]

???
([[名無しさん]])

[112]
[CITE[羊のうたとは - はてなダイアリー]] ([CODE[2008-05-10 15:24:55 +09:00]] 版) <http://d.hatena.ne.jp/keyword/%cd%d3%a4%ce%a4%a6%a4%bf>

[PRE(HTML example code)[
<p><ruby><rb>高城一砂</rb><rp>(</rp><rt>たかしろ かずな</rt><rp>)</rp></ruby>は幼い頃に母を亡くし、父の友人である江田夫妻のもとで暮らしてきた。
]PRE]

Part of user contributed dictionary Web site using [[HTML 4.01]] [[Transitional DTD]].

([[名無しさん]])

[[#comment]]


** メモ

[16]
;; [CODE(HTMLe)@en[ruby]] 要素って文書構造を表していないよなあ・・。

[18] >>16 そうでもないのでは。
枝分かれがあって非線形な構造を表していると考えられます。

[6] [[XHTML 2]] で [CODE(HTML)[rp]] 要素が削除されることを期待。

[19] >>6 結局そのまま残るようで。

[1] [CODE(HTMLe)@en[ruby]] 
要素を画像と題を結びつけるのに使うというアイデア: 
''Ruby-Bildunterschrift-Hack'' 
<http://webdesign.crissov.de/ruby-hack> (独逸語)

元の [CODE(HTMLe)@en[[[ruby]]]] の semantics
を拡大解釈し過ぎるのはよくないと思いますが。。。

[13]
[CODE(HTMLe)@en[[[ruby]]]] を [[WinIE]] の独自拡張だと称するのは、
間違ってはいませんが、あまり正しくありません。
[[Microsoft]] は [[W3C]] で議論されていたルビ原案を
(仕様が確定する前に) 勝手に実装しただけです。
勝手に先走って実装したことは非難の対象にもなるでしょうが、
だからといってそれを独自拡張だと呼ぶのはルビの仕様を
[[Microsoft]] が勝手に作ったような印象を与えます。
そういう印象は不当な批判や過大な評価につながります。

[14]

[PRE(example)[
つ
継ぎ
patch
]PRE]

のような場合はどう[[マーク付け]]すればよいのでしょうか?

[PRE(HTML example code)[
<ruby xml:lang="ja">
  <rbc>
    <rb>継</rb><rb>ぎ</rb>
  </rbc>
  <rtc>
    <rt>つ</rt><rt/>
  </rtc>
  <rtc xml:lang="en">
    <rt rbspan="2">patch</rt>
  </rtc>
</ruby>
]PRE]

こんな感じで良いの?

[15]
世間には、なぜか [CODE(HTMLe)@en[[[ruby]]]]
[[タグ]]で普通の文の一部が括ってあるだけの謎なものが存在します。
(振り仮名も何もなしで。)

[42]

[PRE(aafig)[
ふ じ わ ら の ふ   ひ   と
  藤    原     不   比   等
]PRE]

これは複雑ルビ方式ではマーク付けできない??
([[名無しさん]])

[43]

[PRE(aafig example)[
  むげん
  無 限  ル ー プ
infinite  loop
]PRE]

[PRE(HTML example code)[
<ruby xml:lang="ja">
  <rbc>
    <rb>無</rb><rb>限</rb>
  </rbc>
  <rtc>
    <rt>む</rt><rt>げん</rt>
  </rtc>
  <rtc xml:lang="en">
    <rt rbspan="2">infinite</rt>
  </rtc>
</ruby><ruby xml:lang="en">
  <rb>ループ</rb>
  <rt style="ruby-position: below">loop</rt>
</ruby>
]PRE]

;; 
[CODE(HTMLa)@en[[[class]]]]や[[スタイル・シート]]に頼らなくても、
[Q[普通は上にレンダリングされるようなルビ]]と[Q[普通は下にレンダリングされるようなルビ]]を区別できると良いのですが。。。

([[名無しさん]] [sage])

[44]
>>43

>>14 がありなら、
[PRE(HTML example code)[
<ruby><rb>ループ</rb><rt/><rt>loop</rt></ruby>
]PRE]

もありのような気もしますが。。。
([[名無しさん]])

[45]

[PRE(aafig example)[
てきごう  りようしゃ
 適 合 XHTML利用者エージェント
conforming   user   agent
]PRE]

[PRE(HTML example code)[
<span xml:lang="ja">
<ruby><rb>適合</rb><rt>てきごう</rt><rt xml:lang="en">conforming</rt></ruby>
<abbr xml:lang="en" title="Extensible HyperText Markup Language">XHTML</abbr>
<ruby><rb>利用者</rb><rt>りようしゃ</rt><rt xml:lang="en">user</rt></ruby>
<ruby><rb>エージェント</rb><rt/><rt xml:lang="en">agent</rt></ruby>
</span>
]PRE]

([[名無しさん]])

[46]
'''タグを省略した例''':
[PRE(HTML example code)[
<ruby lang="ja">綺麗<rp> (<rt>きれい<rp>) </ruby>
]PRE]

([[名無しさん]] [sage])

[47]

[PRE(aafig example)[
ホワイト・ノイズ
 白  色    雑音
]PRE]

も >>42 と同じで複雑ルビマーク付けできない。無理にするなら
[PRE(HTML example code)[
<ruby>
  <rbc><rb>白色</rb><rb/><rb>雑音</rb></rbc>
  <rtc><rt>ホワイト</rt><rt>・</rt><rt>ノイズ</rt></rtc>
</ruby>
]PRE]

ただ[[ルビ]]に[Q[・]]や[Q[=]]を入れる例はあまり見ないし、
いれたとしても必ずしもルビ基底文とルビ文で位置を合わせる必要は無い
(単純ルビマーク付けで十分) かも。
([[名無しさん]])

-[62]
[CITE[fj.net.www | 秋津ルビ on the Web (Re: 秋津透)]] ([TIME[2007-02-05 21:23:38 +09:00]] 版) <http://groups.google.co.jp/group/fj.net.www/msg/5fc47561a9e57ea3>
-- [340] 消滅確認 [TIME[2024-08-26T06:09:20.800Z]]
-- [341] 
[CITE@ja[$B=)DE%k%S(B on the Web (Re: $B=)DEF)(B)]], [TIME[2024-08-26T06:08:56.000Z]] <https://groups.google.com/g/fj.net.www/c/YYrP_7P9J54/m/o37lqWF1xF8J>


[63]
[CITE[Bug 33339 &#8211; XHTML <ruby> support]] ([CODE[2007-02-10 14:19:31 +09:00]] 版) <https://bugzilla.mozilla.org/show_bug.cgi?id=33339>
([[名無しさん]])

[65]
What should be represented by a [CODE(HTMLe)@en[[[ruby]]]]?
What should be represented by a series of [CODE(HTMLe)@en[[[ruby]]]]?

[Q@en[Close and re-open [CODE(HTMLe)@en[[[ruby]]]] at word boundary]] would be 
a good starting point.  But the thing might not be so simple,
especially when compound words are concerned.

For example, how should the example:
[PRE(aafig example)[
こくさいかいぎ
 国 際 会 議
]PRE]

... be marked up with [CODE(HTMLe)@en[[[ruby]]]]?

;; [Q[国際‐会議]] = [Q@en[international conference]]

Example 1.
[PRE(HTML example code)[
<ruby><rb>国際会議</rb><rp>(</rp><rt>こくさいかいぎ</rt><rp>)</rp></ruby>
]PRE]

Straightforward.  But what if the author want each of 
ruby bases and texts of two subwords 
(i.e. [Q@en[国際]] and [Q@en[会議]]) aligned separately?
[PRE(aafig example)[
     v         v
こ く さ い か い ぎ
   国 際     会 議
     ^         ^
]PRE]

(assuming [CODE(CSS)@en[[[ruby-align]]: [[center]]]])

Example 2.
[PRE(HTML example code)[
<ruby><rbc><rb>国際</rb><rb>会議</rb></rbc><rp>(</rp><rtc><rt>こくさい</rt><rt>かいぎ</rt></rtc><rp>)</rp></ruby>
]PRE]

Good.  This markup can support each-subword-aligned 
rendering.

Example 3.
[PRE(HTML example code)[
<ruby><rb>国際</rb><rp>(</rp><rt>こくさい</rt><rp>)</rp></ruby><ruby><rb>会議</rb><rp>(</rp><rt>かいぎ</rt><rp>)</rp></ruby>
]PRE]

Good again.

Then, there is two possible alternates, Examples 2 and 3.
Which would be good practice?  No difference?

([[名無しさん]] [TIME[2007-03-17 07:38:26 +00:00]])

-[67]
[CITE[縦ルビ - 縦書きルビ振り実験サイト]] ([TIME[2006-04-22 23:00:25 +09:00]] 版) <http://www012.upp.so-net.ne.jp/tateruby/>
-- 消滅確認 [TIME[2021-01-29T06:31:53.500Z]]
-- [211] [CITE[縦ルビ - 縦書きルビ振り実験サイト]], [TIME[2021-01-29T06:31:28.000Z]], [TIME[2003-09-23T23:03:54.191Z]] <https://web.archive.org/web/20030923230353/http://www012.upp.so-net.ne.jp/tateruby/>

[68]
[CITE@en[W3C I18N Tutorial: Ruby Markup and Styling]] ([CODE[2006-02-03 02:46:58 +09:00]] 版) <http://www.w3.org/International/tutorials/ruby/>
([[名無しさん]])

[81]
[CITE@ja[全国制服図鑑。]] ([[Marguerite Site.]] 著, [CODE[2007-06-17 21:02:46 +09:00]] 版) <http://www.marguerite.jp/Nihongo/Seifuku/index.html#About>

>
[PRE(HTML example code)[
<p><ruby><rb>拙い</rb><rp>(</rp><rt>つたない</rt><rp>)</rp></ruby>作品ですが
]PRE]

[[送り仮名]]にまで[[振り仮名]]がある珍しい例。
ちなみにこの[[文書]]は [[XHTML 1.1]]
([CODE(MIME)@en[[[application/xhtml+xml]]]])。
([[名無しさん]])


[83]
[CITE[ルビ]] ([CODE[2005-10-12 18:41:24 +09:00]] 版) <http://www.dinf.ne.jp/doc/daisy/report/g-daisy/xhtml/ruby.html>
([[名無しさん]])

[89]
[CITE[CCSF - 逐次雑記 2003年11月下旬]] ([CODE[2003-12-08 00:43:06 +09:00]] 版) <http://ccsf.homeunix.org/diary/200311-3.html#d20031123-n4>

このサイトは[[複雑ルビ]]を多用しています。

> ……これ, 複雑ルビ構造にrp要素が定義されていないから, 対策せざるを得ないんですよねえ……
> rp要素っていうのは移行期間のための苦肉の策だとは言いますが, 複雑ルビ構造でも使えるようになっていれば助かるのに……

([[名無しさん]])

[90]
[CITE[YOMOYOMO - nihongo wo yomo]] ([CODE[2007-09-02 14:01:39 +09:00]] 版) <http://yomoyomo.jp/>
([[名無しさん]])

[113]
[CITE[ルビとIE - vantguarde - web:g]] ([CODE[2008-05-11 14:39:44 +09:00]] 版) <http://web.g.hatena.ne.jp/vantguarde/20080417/1208441022>
([[名無しさん]])

[114]
[CITE@en[UserJS for HTML Ruby - User JavaScript - User JavaScript]] ([CODE[2008-05-25 23:39:36 +09:00]] 版) <http://my.opera.com/userjs/forums/topic.dml?id=163010>
([[名無しさん]])

[115]
[CITE[時に憩う]] ([CODE[2002-10-05 15:49:51 +09:00]] 版) <http://bun.dokidoki.ne.jp/users/tokiwa/ikou.html>

>
[PRE(HTML invalid example code)[
時に<ruby style="ruby-potion">憩<rt><font size="1">いこ</font></rt>う
]PRE]

[CODE(code)@en[style="ruby-potion"]]!?

([[名無しさん]])

[116]
[CITE@ja[漢詩作法入門講座 - 梁川紅蘭 - 梅花煙月図]] ([[Sousyuu Yamashita]] 著, [CODE[2008-05-29 08:42:28 +09:00]] 版) <http://sousyu.hp.infoseek.co.jp/ks500/meisi003/s002.html>

>
[PRE(HTML bad example code)[
梅花煙月(<small>バイカエンゲツ</small>)の図(<small>ズ</small>)
]PRE]

([[名無しさん]])

[117]
[CITE[陶淵明 陶潜 帰去来兮辞 帰去来の辞 詩詞世界 碇豊長の詩詞:帰去来辞 taoqian taoyuanming]] ([CODE[2007-12-10 20:25:11 +09:00]] 版) <http://www5a.biglobe.ne.jp/~shici/r54.htm>

>
[PRE(HTML bad example code)[
形の役</B></FONT><FONT color="#009900" face="MS Pゴシック" size="-2">(えき)</FONT><FONT color="#009900" face="MS Pゴシック" size="+1"><B>と爲し,  奚</B></FONT><FONT color="#009900" face="MS Pゴシック" size="-2">(なん)</FONT><FONT color="#009900" face="MS Pゴシック" size="+1"><B>ぞ
]PRE]

([[名無しさん]])

[118]
[CITE[漢文訓読]] ([CODE[2007-04-02 11:13:42 +09:00]] 版) <http://www.daito.ac.jp/~oukodou/kuzukago/kundoku.html>

>
[PRE(HTML bad example code)[
        <p align="left"><font size="5"><strong> 子未</strong></font><font
        size="3"><strong>ダ・ル(レ)</strong></font><font
        size="5"><strong>學</strong></font><font size="3"><strong>バ(レ)</strong></font><font
        size="5"><strong>禮</strong></font><font size="3"><strong>ヲ</strong></font><font
        size="5"><strong>乎。</strong></font><font size="4"><strong>(子未だ禮を學ばざるか。)</strong></font></p>
]PRE]

An alternative representation of both left-side and right-side ruby texts 
separated by a [CODE(char)[[[・]]]] character.


[120]
[[WinIE 7]] では、 [CODE(HTMLe)@en[[[rt]]]] [[開始タグ]]が現れるより前に[[文字データ]]や
[CODE(HTMLe)@en[[[body]]]] [[開始タグ]]がないと、
なぜか [CODE(HTMLe)@en[[[html]]]] [[要素]]の[[兄]]として
[CODE(HTMLe)@en[[[rt]]]] [[要素]]を追加します。

;; <http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cp%3E%3Cspan%3E%3Cruby%3E%3Crt%3E%0D%0A>

これは [CODE(HTMLe)@en[[[rt]]]] [[タグ]]の扱いだけがおかしいのではなく、
未知扱いの[[開始タグ]]が[[文字データ]]や [CODE(HTMLe)@en[[[body]]]]
[[開始タグ]]の前にくると必ずそうなります。

;; [CODE(HTMLe)@en[[[body]]]] や[[文字データ]]が以前に現れていないと、
仮に [CODE(HTMLe)@en[[[ruby]]]] [[要素]]内であったとしても、
[CODE(HTMLe)@en[[[rt]]]] [[開始タグ]]は未対応扱いになるようです。

([[名無しさん]])

[121]
[[WinIE 7]] は [CODE(HTMLe)@en[[[ruby]]]] [[要素]]以下を[[レンダリング]]上特別扱いしており、
そのままでは、たとえば [CODE(HTMLe)@en[[[rt]]]]
に [CODE(CSS)@en[[[position]]: [[absolute]]]] を指定してもうまくいきません。
このような特別扱いは、
''[CODE(HTMLe)@en[[[ruby]]]] [[要素]]に''
[CODE(CSS)@en[[[ruby-position]]: [[inline]]]] を指定することで解除できます。
([[名無しさん]])

[128]
>>90 より ([[DOM]] 上の構造)

> <ruby onmouseover="yG(this,'眞子')" onmouseout="yL()"><rb>眞子</rb><rp>(</rp><rt>MAKO</rt><rp>)</rp></ruby> <span onmouseover="yG(this,'さま')" onmouseout="yL()">さま</span><span onmouseover="yG(this,'17')" onmouseout="yL()">17</span><ruby onmouseover="yG(this,'歳')" onmouseout="yL()"><rb>歳</rb><rp>(</rp><rt>Sai</rt><rp>)</rp></ruby> 、<span onmouseover="yG(this,'ご')" onmouseout="yL()">ご</span><ruby onmouseover="yG(this,'公務')" onmouseout="yL()"><rb>公務</rb><rp>(</rp><rt>Koumu</rt><rp>)</rp></ruby> も<ruby onmouseover="yG(this,'着々')" onmouseout="yL()"><rb>着々</rb><rp>(</rp><rt>Chakuchaku</rt><rp>)</rp></ruby>

([[名無しさん]] [WEAK[2008-10-23 14:48:37 +00:00]])


[129]
>>90 のサイトは、[[ルビ文]]として、[[平仮名]]のほか、[[ラテン文字]]、[[キリル文字]]、[[デバナガリ文字]]、[[ハングル]]を選べるようになっています。

[FIG[
[143] 
[PRE(HTML code)[
これを<SPAN lang="EN-US"><RUBY style="ruby-align:distribute-space"><RB><SPAN lang="EN-US"><SPAN lang="EN-US">小川</SPAN></SPAN></RB><RP>(</RP><RT style='font-size:5.0pt;font-family:
"MS 明朝","serif";layout-grid-mode:line'>こがわ</RT><RP>)</RP></RUBY></SPAN><SPAN style='font-size:9.0pt;font-family:"MS ゴシック";mso-ascii-theme-font:major-fareast;
mso-fareast-theme-font:major-fareast;mso-hansi-theme-font:major-fareast'>といふ。
]PRE]

[REFS[
- [CITE[京都歩く不思議事典(堀川)]] ([TIME[2010-09-25 06:49:15 +09:00]] 版) <http://www.eonet.ne.jp/~kyoto-fushigi/sub14.html>
]REFS]
]FIG]


** HTML5

[366] 
[[ルビ]]の追加予定は、
[CITE[WA1]]
に既存[[HTML要素]]が続々と追加された[TIME[西暦2005(平成17)年][2005]]前半頃に仕様書文書ソース内の[[注釈]]に記載されていました。
[SEE[ [[Web Applications 1.0]] ]]

[367] 
ただし誰かがその処理を決められたならばとも注釈がありました。
[[Ian Hickson]] は[[ルビ]]の処理に詳しくないと[TIME[西暦2007(平成18)年][2007]]や[TIME[西暦2008(平成19)年][2008]]にも語っていて
[SRC[>>363, >>364, >>362]]、
自ら進んで規定するのを躊躇していました。
[[ルビ]]だけ他の[[要素]]より [CITE[HTML5]]
への追加が遅れたのはまさにこれが原因でありました。

[368] 
その後他の [[WHATWG]] 関係者らによる調査研究や後押しもあって
[SRC[>>363, >>364, >>82, >>119]]、
[TIME[西暦2008(平成19)年][2008]]には結局 [[Ian Hickson]]
が自ら[[ルビ]]を、それ以前のどの仕様書よりも詳細に規定することとなりました。
[SRC[>>361, >>362]]

;; [369] 
実際の所、他の[[要素]]の事例をみても、
[[Ian Hickson]] 
ほどの能力者なら初めから1人でもこれだけの仕事はできたはずなのですが
(懸念点とされたのは[[ルビ]]固有の用法ではなく[[構文解析]]やエラー処理が中心で 
[SRC[>>363]]、それは [[Ian Hickson]] の専門分野です。)、
[[欧米人]]の [[Ian Hickson]] が馴染みの薄い[[東アジア]]の[[組版]]の要件や現場での
[CODE[ruby]] の使われ方を十分に理解できないまま作業を進めたくないという意識が働いたのでしょうかね。

;; [370] 
まあ謙遜したり専門家の手も借りつつもちゃんとしたものを仕上げてくるのは
[CITE[HTML5]]
の他の部分でも同じで、 [CODE[canvas]] も自分は図画処理は専門外なので・・・といいつつ一大
API を作り上げてますからね・・・。

;;
[386] 
一番使われている[[日本]]の詳しい人からの助言も期待していたのかもしれませんね。
[[Google]] が [[HTML5]] を押しはじめる直前に当たるこの時期、
[[HTML5]] の動向を注視していた[[日本人]]は2桁もいるのかどうかというのが当時の肌感覚で、
聞いたことがあるくらいの人はもう少しいたのでしょうけど、
積極的に口を出すような感じではありませんでした。

;; [387] 
当時一番 [CODE[ruby]] のノウハウを持っていた、実装していたのは
[CITE[XHTMLルビサポート]]
でしょう。[[ソースコード]]は公開されていますし、
実装当時の [CODE[ruby]] の実態についての技術的な情報も [[Webページ]]に多少ありました。
しかしその方面から [[WHATWG]] 側に情報提供したという話は聞きません。
[[WHATWG]] 側も存在を認識はしていたようですが [SRC[>>119]]、
さほど影響を受けていないようです。

;; [388] 
今は[[ルビ]]や [CODE[ruby]]
の資料が集まってきた当ウィキも当時はほとんど情報がありませんでした。
他のウェブサイト等も [[XHTML Ruby]] 仕様書の引き写しレベルのものばかりでした。





-[363] 
[CITE@en['''['''whatwg''']''' Presentational safety valves]], [[Ian Hickson]], [TIME[2023-08-26T22:10:31.000Z]], [TIME[2024-09-03T13:14:51.069Z]] <https://lists.w3.org/Archives/Public/public-whatwg-archive/2007Jan/0041.html>
-[364] 
[CITE@en['''['''whatwg''']''' Presentational safety valves]], [[Ian Hickson]], [TIME[2023-08-26T22:10:31.000Z]], [TIME[2024-09-03T13:16:54.317Z]] <https://lists.w3.org/Archives/Public/public-whatwg-archive/2007Jan/0074.html>





-[119]
[CITE@en[Current HTML ruby markup usage]] ([[Philip Taylor]] 著, [TIME[2008-05-27 08:39:58 +09:00]] 版) <http://lists.w3.org/Archives/Public/public-html/2008May/0620.html>
-- [393] 移転確認 [TIME[2024-09-04T03:46:46.000Z]]
--[391] 
[CITE@en[Current HTML ruby markup usage]],
[DATA(.author)[[[Philip Taylor]]]],
[TIME(.published)[Tue, 27 May 2008 00:39:58 +0100][2008-05-27 08:39:58 +09:00]],
[TIME[2024-09-04T03:36:19.000Z]]
<https://lists.w3.org/Archives/Public/public-html/2008May/0620.html>

[371] 
>>119 3286個の [CODE[.jp]] [[ドメイン]]の[[Webページ]]からの[[ルビ]]利用実態調査。
その 0.3% で[[ルビ]]が使われていたとのこと。


[372] 
>>371 ちょっと標本数少ないのではないかなあと思いつつも、
これ以前に[[ルビ]]の[[実態調査][Webの統計]]は皆無だったと思われ、
貴重な報告です。

;; [392] 0.3% ってことは10件ほどしかないです。


;; [373] 正確にいうと [[dmoz.org]] 
から無作為に抽出した13万ページのうち[[ルビ]]要素を使ったものすべてが調査対象とのこと。
[[dmoz]] は[[日本語]]圏でそんなに流行っていたサービスではないので
([[SEO]] に有利とか業者が宣伝していたのだが)、
[[日本語]]ウェブ界の実態がどれだけ反映されていたのかも謎。

[375] >>119 [[終了タグ]]省略が頻出とのこと。

;; [376] 
正式に[[W3C勧告]]になっていた[[文書型]]は [CITE[XHTML 1.1]]
だけだったので、それを守るなら[[終了タグ]]は省略できないわけです。
この当時もまだ一部の人はだから [[HTML文書]]や [[XHTML 1.0]]
[[文書]]では [CODE[ruby]] を使ってはいけないみたいなことを言っていましたし、
[[HTML5]] 開発の場にさえその系統の意見を送ってくる人が出没してはいたのですが、
世間の人はそんなこと気にしていないというのが実態だったのです。

[377] 
>>119 [CODE[rbc]], [CODE[rtc]] は用例皆無とのこと。ただし標本数が少ないのでとも注記があります。

;; [378] 
でも標本数増やしても出てこなかったとは思いますよ。だって [[Internet Explorer]]
で表示できないし。それがないと困ることないし。

[359] [CITE@en[Re: <ruby>, etc. in HTML5]], [[Robert J Burns]], [TIME[2023-07-13T18:03:26.000Z]], [TIME[2024-09-03T13:03:52.502Z]] <https://lists.w3.org/Archives/Public/public-html/2008May/0622.html>


[360] 
一方で
>>359 
のように政治的な争論に ruby を使おうとする人はこの時代にもいました。
[[HTML WG]] には ruby に限らず技術的問題を政治的問題に擦り替えて進行の邪魔をするだけの勢力がいて四六時中この種の議論をふっかけていました。
この時代 [[HTML WG]] は政治の場、 [[WHATWG]] 
は技術の場という区分けと思っておけばほぼ間違いありません。

;; [379] 特に面白いことはいってないので内容は読まなくても別にいいです。

[82]
[CITE@en[The WHATWG Blog &#187; Blog Archive &#187; (X)HTML 5 will have the only usable implementation of ruby markup]],
[[Lars Gunther]],
August 14th, 2007,
[TIME[2007-08-14 15:46:30 +09:00]]
<http://blog.whatwg.org/xhtml-5-will-have-the-only-usable-implementation-of-ruby-markup>

[380] >>82
これは [[WHATWG]] サイドなんだけど内容はまあ政治的な方ですかね。
今から見ると馬鹿馬鹿しいですけど、当時はなんか変な派閥争いみたいなのがあったのです。

[381] 
[[HTML5]] とか意味ないだろと言ってる人達に対して
[[HTML4]] や [[XHTML 1.0]] では使えない[[ルビ]]が使えるようになるよ、
たくさんの[[東アジア]]人が喜ぶよ、と[[英語]]で言ってるんですけど、
つまり[[東アジア]]人に向けた書き方でも言語でもないですね。
[[欧米人]]にそんな呼びかけして喜んでもらえるのか謎だし、
この時点で [[HTML5]] に[[ルビ]]はないのに [[Ian Hickson]]
が追加の意向を(半年前に)示した、って勢いだけの記事だし、
後半の方はもう何言ってるのかわからんしw

[382] 
※欄も合わせて読むとわかりやすいですが、これって[[HTML文書]] vs [[XHTML文書]]の問題、
[CODE[text/html]] vs [CODE[application/xhtml+xml]] の問題がちょうどこの時期最終局面を迎えていることを踏まえてみないといけないんですよ。
[[W3C]] の公式見解では [[XHTML 1.1]] で [CODE[application/xhtml+xml]]
でないと [CODE[ruby]] が使えないことになっていたんですけど、
そんな空想論と現実の乖離をもうすぐ [[HTML5]] が解決してくれるよ、
って興奮しながら書いてたんでしょうね。つまり[[ルビ]]はこの10年来の [[XHTML]]
問題で翻弄されてきたものすべての象徴として晒し上げられてるってわけ。

;; [384] 
この時代の [[WHATWG]] はまだ緩い感じで、
[[メーリングリスト]]に登録すればみんな仲間だよくらいのノリでした。
[[ブログ]]記事も誰でも書けば載せてくれる感じだったはずです。
この記事の筆者も [[WHATWG]] の中心メンバーというわけではありません。





-*-*-

-[361] 
[CITE@en['''['''cit''']''' (2) <ruby> support. This isn't very compatible with IE, but it …]], [[Hixie]], [TIME[2008-05-26 19:12:10 +09:00]], [TIME[2024-09-03T13:09:52.000Z]] <https://github.com/whatwg/html/commit/f4efc73617bb37e721828ba03fe3da1642ce40c9#diff-41cf6794ba4200b839c53531555f0f3998df4cbb01a4d5cb0b94e3ca5e23947d>
-[362] 
[CITE@en['''['''whatwg''']''' Ruby]], [[Ian Hickson]], [TIME[2023-08-26T22:10:39.000Z]], [TIME[2024-09-03T13:12:26.169Z]] <https://lists.w3.org/Archives/Public/public-whatwg-archive/2008May/0254.html>

[365] 
>>361 この段階での [CODE[ruby]] の内容は ([[規定文字列]], [CODE[rt]]) |
([[規定文字列]], [CODE[rp]], [CODE[rt]], [CODE[rp]])。
旧 [[XHTML Ruby]] の[[単純ルビ]]から [CODE[rb]] [[タグ]]を除去したもの。

[385] 
[[IE]] の実装よりは狭めで [[XHTML Ruby]] の[[単純ルビ]]に近づけた規定になっています。

[374] 
>>119 で [CODE[rb]] は結構つかわれてると報告されてますし、
肌感覚的にも [CODE[rb]] ありもなしも両方とも多かったので、
[CODE[rb]] も [[obsolete but conforming]] で残しておいてよかったかもしれませんねえ。
(この時代まだ [[obsolete but conforming]] はなかったのかも?)


;; [389] 
当段落の筆者も、
当時は [[XHTML Ruby]] にあるんだから [CODE[rb]] や[[複雑ルビ]]も [[HTML5]]
に入れてくれたらいいのになあと思っていたものでした。
今になってみれば、
実装されていない [CODE[rb]] や利用実態のない[[複雑ルビ]]を入れて無駄に複雑化させなくて本当によかったと思います。




[FIG(data)[ [383] [[HTML要素概説]]

:[F[要素名]]:[CODE[ruby]]
:[F[要素名]]:[CODE[rt]]
:[F[要素名]]:[CODE[rp]]
:日付:[TIME[2008-05-26]]
:説明:
[TIME[2008-06-26]]、
[CITE[HTML5]]
に
[CODE[ruby]],
[CODE[rt]],
[CODE[rp]]
が追加された。
現行仕様の中核部分である。
:出典:
[REFS[

-
[CITE[HTML5 r1704]],
[DATA(.author)[[[Hixie]]]], 
[TIME(.published)[2008-05-26 19:12:10 +09:00]], [TIME[2024-09-03T13:09:52.000Z]] <https://github.com/whatwg/html/commit/f4efc73617bb37e721828ba03fe3da1642ce40c9>

]REFS]

]FIG]


[FIG(data)[ [390] [[HTML要素概説]]

:[F[要素名]]:[CODE[rb]]
:日付:[TIME[2008-05-26]]
:説明:
[CITE[HTML5]]
に
[CODE[rb]]
は追加されなかった。
[[Internet Explorer]]
が実装していなかったことが理由として大きいと思われる。
[[Internet Explorer]]
が実装しなかったことや
[[W3C]] の当初仕様案でも
[CODE[rb]]
の[[開始タグ]]と[[終了タグ]]が省略可能とされていたこともあり、
[CODE[rb]] [[タグ]]は書かれないことが多かった。
一方、
[[XHTML 1.1]] [[ルビ]]仕様に従い
[CODE[rb]]
が使われた[[文書]]も非常に多い。
未だに
[CODE[rb]]
が使われることもある。
:出典:[[<ruby>]]

]FIG]

-*-*-

- [394] [CITE@en['''['''giow''']''' (2) Remove some error-handling parsing behaviour near <ruby> e…]], [[Hixie]], [TIME[2011-06-14 04:32:04 +09:00]], [TIME[2024-09-06T13:27:33.000Z]] <https://github.com/whatwg/html/commit/6c4e87fd3f2f87d239c36198d4de5a618126d9b9#diff-41cf6794ba4200b839c53531555f0f3998df4cbb01a4d5cb0b94e3ca5e23947d>
- [395] 
[CITE@en['''['''cgiowt''']''' (2) Remove some error-handling parsing behaviour near <ruby>…]], [[Hixie]], [TIME[2011-06-14 04:41:48 +09:00]], [TIME[2024-09-06T13:28:18.000Z]] <https://github.com/whatwg/html/commit/c96c65fdf9393d25eef1446c92ac8afeb5096fd5>
- [396] [CITE@en[12935 – <rt> should not auto-close ancestors]], [TIME[2019-04-02T04:48:11.000Z]], [TIME[2024-09-06T13:28:33.240Z]] <https://www.w3.org/Bugs/Public/show_bug.cgi?id=12935>

[397] >>396

> Ian 'Hixie' Hickson 2011-06-14 19:48:26 UTC

>
Rationale: I've no intention of ever adding <rb> or <rtc>. This is a minor feature and should not be overengineered. Complex ruby is a classic case of the danger of overspecialisation (where a group of people are experts in one area and come up with a design to solve 100% of use cases, without seeing that in the big picture the feature as a whole is rather minor and doesn't need to cover more than 80% of use cases). HTML should remain simple, if you want something that covers more semantics, use DocBook.

[400] 
>>397 この時点では [[Ian Hickson]] は[[単純ルビ]]相当で十分と考えていた。
ただそれでは不十分なところがあり、1年後に拡充されることになる (>>398)。

;; [401] [[複雑ルビ]]が過剰に複雑で設計失敗というのは [[Ian Hickson]]
の指摘通りで正しい。ただし[[複雑ルビ]]を導入したために[[単純ルビ]]の機能が削られたという経緯 (>>268)
で、
[[単純ルビ]]だけでは単純化しすぎていて十分とはいえなかった。


* [CODE@en[ruby]] (PukiWiki)

[28]

> '''ルビ構造'''
>
[PRE(code)[
&ruby(ルビ){インライン要素};
]PRE]
> 行中で &ruby を書くとインライン要素に対するルビをふることができます。ルビに対応していないブラウザではルビが本文中に ( と ) に囲まれて表示されます。
>
- ルビ構造のルビにはインライン要素を記述します。ただし、ルビの特性上、期待通りの表示になるとは限りません。
- ルビ構造は、他のインライン要素の子要素になることができます。
- ルビ構造は、他のインライン要素を子要素にすることができます。
- ルビ構造をルビ構造の子要素にはできません(ネストはできません)。
- 注釈内や文字サイズを小さくしている部分での使用は、ルビが判読できなくなるので避けてください。

;; 出典:
[CITE[整形ルール - PukiWiki-official]] 
(2005年12月現在)
<http://pukiwiki.sourceforge.jp/?%E6%95%B4%E5%BD%A2%E3%83%AB%E3%83%BC%E3%83%AB#j137cd8e>

[[#comment]]


* [CODE@en[ruby]] (YukiWiki)

[29]
[[YukiWiki]] に標準で付属する[Q[ルビ振りプラグイン]]の使用例:
[PRE(example code)[
たとえば&ruby(魑魅魍魎,ちみもうりょう)とか。
]PRE]

;; 出典:
[CITE[ルビ振りプラグイン - ルビを振る。]] 
(2005年12月現在)
<http://www.hyuki.com/yukiwiki/wiki.cgi?%a5%eb%a5%d3%bf%b6%a4%ea%a5%d7%a5%e9%a5%b0%a5%a4%a5%f3>

* [CODE(XMLe)@en[ruby]] 要素 (OOXML)

[130] [[ECMA-376]] Second Edition Part 1 17.3.3.25 より例:
>
[PRE(XML example code)[
<w:r>
<w:ruby>
<w:rubyPr>
…
</w:rubyPr>
<w:rt>
…
<w:r>
<w:t>tō</w:t>
</w:r>
</w:rt>
<w:rubyBase>
…
<w:r>
<w:t>東</w:t>
</w:r>
</w:rubyBase>
</w:ruby>
</w:r>
]PRE]

* メモ

[66]
[CITE@en-US[Internationalization Tag Set (ITS) Version 1.0]] ([CODE[2007-04-03 18:11:18 +09:00]] 版) <http://www.w3.org/TR/2007/REC-its-20070403/#ruby-annotation>

[131] [CITE@ja[元号の読み方に関する件 - Wikisource]] ([TIME[2008-05-01 17:25:24 +09:00]] 版) <http://ja.wikisource.org/wiki/%E5%85%83%E5%8F%B7%E3%81%AE%E8%AA%AD%E3%81%BF%E6%96%B9%E3%81%AB%E9%96%A2%E3%81%99%E3%82%8B%E4%BB%B6>

><li>註: この文書では<a href="http://ja.wikipedia.org/wiki/%E3%83%AB%E3%83%93" class="extiw" title="w:ルビ">ルビ</a>が使用されています。ここでは「単語<sup style="font-size:0.75em;vertical-align:top">《ルビ》</sup>」の形で再現しています。</li>


><p>平<sup style="font-size:0.75em;vertical-align:top">《へい》</sup>成<sup style="font-size:0.75em;vertical-align:top">《せい》</sup></p>

[132] [CITE[Rubyのウェブブラウザ対応状況と、XHTML/CSS Ruby周りのメモ - 血統の森+はてな]] ([TIME[2009-02-17 12:41:14 +09:00]] 版) <http://d.hatena.ne.jp/momdo/20090214/p1>

[133] [CITE[HTML Ruby - Home]] ([TIME[2009-03-08 16:54:16 +09:00]] 版) <http://htmlruby.codeplex.com/>

[134] [CITE@ja[HTML Ruby - Kai-Lapis]] ([TIME[2009-03-08 17:54:17 +09:00]] 版) <http://my.opera.com/Kai_Lapis/blog/html-ruby>

[135] [CITE[Latest topics > XHTMLルビサポートで文字の均等割り付けに対応したよ - outsider reflex]] ([[Piro(SHIMODA Hiroshi)]] 著, [TIME[2009-03-09 21:27:54 +09:00]] 版) <http://piro.sakura.ne.jp/latest/blosxom/mozilla/extension/rubysupport/2008-03-13_justify.htm>

[136] 
[CITE@ja[あしたね年表 | 日本史や世界史など歴史上の人物や物、場所に関わる出来事を年表風に表示する検索サイト]] ([TIME[2009-04-16 19:41:14 +09:00]] 版) <http://n.ashitane.net/>

>
[PRE(HTML example code)[
						<dt><span class="font-s">おおさかじょう</span><br />
						<a href="/%E5%A4%A7%E5%9D%82%E5%9F%8E">大坂城</a>
]PRE]

[137] Replacing the ruby base text by the content of the [CODE(HTMLe)@en[[[rt]]]] element does not always
results in an appropriate form.  Consider the following example:
[PRE(HTML example code)[
HTML<ruby>ルビ<rt class=secondary>ruby</ruby>
]PRE]

This is not semantically equal to the next example (because of lack of a space character):
[PRE(HTML example code)[
HTMLruby
]PRE]

[138] 
[PRE(HTML example code)[
<td colspan="3" bgColor=#ddffee><B><FONT color=#bfb89f>■</FONT><FONT size=6><RUBY><RB>文化・観光<RT>ぶんか・かんこう</RT></B> <FONT size=5>Culture and tourism</FONT></RUBY></FONT><BR><BR></td>
]PRE]

;; [CITE[文化観光国際課のページ]] ([TIME[2009-07-08 10:37:50 +09:00]] 版) <http://www.city.shinjuku.tokyo.jp/division/261000bunka/>

[139] [CITE['''['''whatwg''']''' Whitespace handling in ruby]]
([TIME[2009-08-23 20:44:31 +09:00]] 版)
<http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2009-August/021742.html>

[140] [CITE[IRC logs: freenode / #whatwg / 20091012]]
([TIME[2009-12-09 01:34:58 +09:00]] 版)
<http://krijnhoetmer.nl/irc-logs/whatwg/20091012#l-361>

[141] [CITE[IRC logs: freenode / #whatwg / 20091109]]
([TIME[2009-12-17 00:52:53 +09:00]] 版)
<http://krijnhoetmer.nl/irc-logs/whatwg/20091109#l-161>

[142] [CITE[IRC logs: freenode / #whatwg / 20100402]]
([TIME[2010-04-17 20:58:10 +09:00]] 版)
<http://krijnhoetmer.nl/irc-logs/whatwg/20100402#l-232>

[EG[
[144] 
[REFS[
- [CITE[昇段資格]] ([TIME[2012-01-16 21:35:57 +09:00]] 版) <http://www.kodokan.org/j_basic/shoudan_j.html>
]REFS]

>品性不良の者、柔道精神に悖<sup>(もと)</sup>る言動のある者は、他の事項の如何にかかわらず、昇段を認めることができない。<BR>
]EG]

[145] [CITE@en-US[Use Cases & Exploratory Approaches for Ruby Markup]]
( ([TIME[2012-07-10 22:11:13 +09:00]] 版))
<http://www.w3.org/TR/2012/WD-ruby-use-cases-20120710/>

[FIG[
[FIGCAPTION[
[REFS[
- [146] [CITE@ja[川で溺れさせ、女子が動画撮影…高2一時重体 : 社会 : YOMIURI ONLINE(読売新聞)]] ([TIME[2012-07-12 06:27:56 +09:00]] 版) <http://www.yomiuri.co.jp/national/news/20120712-OYT1T00833.htm>
]REFS]
]FIGCAPTION]

>
[PRE(HTML code)[
<ruby><rb>三納</rb><rp>(</rp><rt>みのう</rt><rp>)</rp></ruby>川
]PRE]
]FIG]

** 修正HTMLルビモデル

-[147] [CITE@en[Web Applications 1.0 r7244       Update <ruby>, including examples showing how each use case is addressed.]]
( ([TIME[2012-08-21 06:58:00 +09:00]] 版))
<http://html5.org/tools/web-apps-tracker?from=7243&to=7244>
-- [398] [CITE@en['''['''acgiow''']''' (0) Update <ruby>, including examples showing how each use c…]], [[Hixie]], [TIME[2012-08-21 06:58:38 +09:00]], [TIME[2024-09-06T14:09:17.000Z]] <https://github.com/whatwg/html/commit/857114d5aaebe48f918380463fb3739dc1c1b027#diff-41cf6794ba4200b839c53531555f0f3998df4cbb01a4d5cb0b94e3ca5e23947d>

[399] >>398 これでほぼ現行仕様になった。

[148] [CITE@en[Web Applications 1.0 r7432 clarification (some people might interpret it as meaning no more sibling rubys)]]
( ([TIME[2012-10-03 08:01:00 +09:00]] 版))
<http://html5.org/tools/web-apps-tracker?from=7431&to=7432>

[FIG(data)[ [415] [[HTML要素概説]]

:[F[要素名]]:[CODE[ruby]]
:[F[要素名]]:[CODE[rt]]
:日付:[TIME[2012-08-20]]
:説明:
[TIME[2012-08-20]]、
[CITE[HTML5]]
の
[CODE[ruby]],
[CODE[rt]]
の仕様が拡充された。
[SRC[>>414]]
現行仕様である。
[[Internet Explorer]] の実装により近いものとなった。
:出典:
[REFS[

-
[414] 
[CITE@en[HTML5 r724]],
[DATA(.author)[[[Hixie]]]], 
[TIME(.published)[2012-08-21 06:58:38 +09:00]], [TIME[2024-09-06T14:09:17.000Z]] <https://github.com/whatwg/html/commit/857114d5aaebe48f918380463fb3739dc1c1b027>

]REFS]

]FIG]


[149] [CITE[fantasai 49: Towards a Unified Ruby Model]]
( ([TIME[2011-11-03 00:55:28 +09:00]] 版))
<http://fantasai.inkedblade.net/weblog/2011/ruby/>

[150] [CITE[''''''[''''''whatwg'''''']'''''' <ruby> markup problems]]
( ([TIME[2012-11-28 02:42:39 +09:00]] 版))
<http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2012-November/038141.html>

[151] [CITE@en-US[Use Cases & Exploratory Approaches for Ruby Markup]]
( ([TIME[2012-07-10 22:11:13 +09:00]] 版))
<http://www.w3.org/TR/ruby-use-cases/>

[152] [CITE[IRC logs: freenode / #whatwg / 20121128]]
( ([TIME[2012-12-09 02:18:35 +09:00]] 版))
<http://krijnhoetmer.nl/irc-logs/whatwg/20121128>

[153] [CITE@en[Web Applications 1.0 r7749     make <ruby> reset text-indent for sanity's sake (like with table)]]
( ([TIME[2013-03-14 08:29:00 +09:00]] 版))
<http://html5.org/tools/web-apps-tracker?from=7748&to=7749>

[154] [CITE@en[Web Applications 1.0 r7752     Revert recent ruby change since it was based on a misunderstanding of CSS.]]
( ([TIME[2013-03-14 09:11:00 +09:00]] 版))
<http://html5.org/tools/web-apps-tracker?from=7751&to=7752>

[155] [CITE[IRC logs: freenode / #whatwg / 20130314]]
( ([TIME[2013-03-25 21:49:17 +09:00]] 版))
<http://krijnhoetmer.nl/irc-logs/whatwg/20130314>

[156] [CITE[Talk:Ruby character - Wikipedia, the free encyclopedia]] <http://en.wikipedia.org/wiki/Talk:Ruby_character#Ruby_markup_on_Wikipedia>

[[MediaWiki]]における[[ルビ]]の記法


[157] [CITE@en[Use Cases & Exploratory Approaches for Ruby Markup]]
( ([TIME[2013-09-10 00:37:43 +09:00]] 版))
<http://www.w3.org/TR/2013/WD-ruby-use-cases-20130910/>

[158] [CITE@en[HTML Ruby Markup Extensions]]
( ([TIME[2013-02-28 19:53:20 +09:00]] 版))
<http://darobin.github.io/html-ruby/>

[159] [CITE[Authoring ruby]]
( ([TIME[2013-02-27 22:11:03 +09:00]] 版))
<http://www.w3.org/International/notes/ruby-extension/>

[160] [CITE@en[Use Cases & Exploratory Approaches for Ruby Markup]]
( ([TIME[2013-10-04 20:38:34 +09:00]] 版))
<http://www.w3.org/TR/2013/NOTE-ruby-use-cases-20131008/>

[161] [CITE@en[W3C HTML Ruby Markup Extensions]]
( ([TIME[2013-10-22 18:58:53 +09:00]] 版))
<http://darobin.github.io/html-ruby/snapshots/FPWD.html>

[162] [CITE@en[W3C HTML Ruby Markup Extensions]]
( ([TIME[2013-10-18 23:25:06 +09:00]] 版))
<http://www.w3.org/TR/2013/WD-html-ruby-extensions-20131022/>

[163] [CITE@ja[HTML Ruby :: Add-ons for Firefox]]
( ([TIME[2013-11-13 15:06:03 +09:00]] 版))
<https://addons.mozilla.org/ja/firefox/addon/html-ruby/>

[164] [CITE[sakai135/htmlruby-firefox]]
( ([TIME[2013-11-13 15:06:13 +09:00]] 版))
<https://github.com/sakai135/htmlruby-firefox>

[165] [CITE@en[33339 – (ruby) HTML5 <ruby> support]]
( ([TIME[2014-01-11 10:19:52 +09:00]] 版))
<https://bugzilla.mozilla.org/show_bug.cgi?id=33339>

[166] [CITE@en[W3C HTML Ruby Markup Extensions]]
( ([TIME[2014-02-04 01:11:53 +09:00]] 版))
<http://www.w3.org/TR/2014/NOTE-html-ruby-extensions-20140204/>

[FIG[
[FIGCAPTION[
[167] [CITE[成田新高速鉄道と北総線<<運賃問題・現状>>]] ([TIME[2014-02-07 07:13:04 +09:00]] 版) <http://space.geocities.jp/the_expert_of_sith/hokusousenn.html>
]FIGCAPTION]

[PRE(HTML code)[
<h1>■2010年4月、<ruby><rb>成田新高速鉄道線<rt>なりたしんこうそくてつどうせん</ruby>開業  ~北総線に大きく貢献~</h1>
]PRE]

;; [CODE(HTMLe)@en[[[rb]]]] の[[子要素]]として [CODE(HTMLe)@en[[[rt]]]] が含まれます。
[[IE10]] では [CODE(HTMLe)@en[[[rt]]]] が小さなフォントで表示されますが、ルビとしてはレンダリングされません。
[[Chrome]] ではフォントサイズも含めてルビではなくすべて普通の状態でレンダリングされます。  [TIME[2014-02-07T07:14:18.200Z]]
]FIG]

[FIG[
[FIGCAPTION[
[168] [CITE@ja-jp[STAP論文 理研撤回検討 共著の教授「データに問題」 - MSN産経ニュース]] ([TIME[2014-03-11 00:20:19 +09:00]] 版) <http://sankei.jp.msn.com/science/news/140311/scn14031101070000-n1.htm>
]FIGCAPTION]

> 「S(ス)T(タ)A(ッ)P(プ)細胞」
]FIG]

[169] [CITE@en-US[Internationalization Tag Set (ITS) Version 1.0]]
( ([TIME[2007-04-03 09:11:18 +09:00]] 版))
<http://www.w3.org/TR/its/#its-conformance-1-3>

[170] [CITE@en-US[Internationalization Tag Set (ITS) Version 1.0]]
( ([TIME[2007-04-03 09:11:18 +09:00]] 版))
<http://www.w3.org/TR/its/#selection-local>

[171] [CITE@en-US[Internationalization Tag Set (ITS) Version 1.0]]
( ([TIME[2007-04-03 09:11:18 +09:00]] 版))
<http://www.w3.org/TR/its/#ruby-annotation>

[172] [CITE@en-US[Internationalization Tag Set (ITS) Version 2.0]]
( ([TIME[2013-10-27 19:39:43 +09:00]] 版))
<http://www.w3.org/TR/its20/#high-level-differences-between-1.0-and-2.0>

[173] [CITE[篠ノ井高校/同窓会事務局から/創立八十周年記念式典]] ([TIME[2011-12-15 08:37:24 +09:00]] 版) <http://www.nagano-c.ed.jp/shino-hs/announce/dousoukai/80th_anniversary.html>

>
[PRE(HTML code)[
<ol><li><p>八十年<sup>ながいとき</sup>を生きて<br>
]PRE]

[FIG(quote)[
[FIGCAPTION[
[3] [CITE[OASIS Open Document Format for Office Applications (OpenDocument) Version 1.2 - Part 1: OpenDocument Schema]]
([TIME[2011-09-29 13:00:00 +09:00]] 版)
<http://docs.oasis-open.org/office/v1.2/os/OpenDocument-v1.2-os-part1.html#a6_4_text_ruby_>
]FIGCAPTION]

> element-text_meta

]FIG]

[FIG(quote)[
[FIGCAPTION[
[174] [CITE@ja[マイ大阪ガス]] ([TIME[2015-04-12 12:07:11 +09:00]] 版) <https://services.osakagas.co.jp/portal/mypage/>
]FIGCAPTION]
[PRE(HTML code)[
		<table class="ruby" cellpadding="0" cellspacing="0">
			<tr class="rt">
				<td></td>
				<td></td>
				<td valign="bottom">ち</td>
				<td></td>
			</tr>
			<tr class="rb">
				<td valign="middle" class="mark"><img src="img/img_01.gif"/></td>
				<td>EXAMPLEさん</td>
				<td>家</td>
				<td>の環境家計簿</td>
			</tr>
		</table>
]PRE]

]FIG]

[175] [CITE@en-US[Ruby support in Firefox Developer Edition 38 ✩ Mozilla Hacks – the Web developer blog]]
([TIME[2015-05-18 14:08:53 +09:00]] 版)
<https://hacks.mozilla.org/2015/03/ruby-support-in-firefox-developer-edition-38/>

[FIG(quote)[
[FIGCAPTION[
[176] ([TIME[2015-08-07 11:17:53 +09:00]] 版)
<http://www3.nhk.or.jp/news/easy/index.html>
]FIGCAPTION]

> 
>       <p>「NEWS WEB EASY」は、
>         <ruby>小学生
>           <rt>しょうがくせい</rt>
>         </ruby>
>         ・
>         <ruby>中学生
>           <rt>ちゅうがくせい</rt>
>         </ruby>
>         のみなさんや、

]FIG]


[177] [CITE[IRC logs: freenode / #whatwg / 20150831]]
([TIME[2015-09-01 11:54:00 +09:00]] 版)
<http://krijnhoetmer.nl/irc-logs/whatwg/20150831#l-242>

[178] [CITE[IRC logs: freenode / #whatwg / 20150904]]
([TIME[2015-09-05 11:34:46 +09:00]] 版)
<http://krijnhoetmer.nl/irc-logs/whatwg/20150904#l-1055>

[179] [CITE[IRC logs: freenode / #whatwg / 20150905]]
([TIME[2015-09-07 10:01:43 +09:00]] 版)
<http://krijnhoetmer.nl/irc-logs/whatwg/20150905#l-261>

[180] [CITE@en[''''''[''''''whatwg'''''']'''''' New ruby elements in HTML]]
([[Anne van Kesteren]] 著, [TIME[2015-09-06 02:20:16 +09:00]] 版)
<https://lists.w3.org/Archives/Public/public-whatwg-archive/2015Sep/0028.html>

[181] [CITE[IRC logs: freenode / #whatwg / 20150908]]
([TIME[2015-09-09 11:15:18 +09:00]] 版)
<http://krijnhoetmer.nl/irc-logs/whatwg/20150908>

[182] [CITE@en[Support rb and rtc elements in the parser (ruby) by annevk · Pull Request #101 · whatwg/html]]
([TIME[2015-09-11 11:07:48 +09:00]] 版)
<https://github.com/whatwg/html/pull/101>

[183] [CITE@en[Ruby styling · Issue #121 · whatwg/html]]
([TIME[2015-09-11 11:11:45 +09:00]] 版)
<https://github.com/whatwg/html/issues/121>

[184] [CITE@en[RE: Edge and ruby markup]]
([[Travis Leithead]] 著, [TIME[2015-09-06 11:17:11 +09:00]] 版)
<https://lists.w3.org/Archives/Public/www-archive/2015Sep/0008.html>

[185] [CITE@en[Support rb and rtc elements in the parser (ruby) · whatwg/html@8d1c8af]]
([TIME[2015-11-11 20:57:54 +09:00]] 版)
<https://github.com/whatwg/html/commit/8d1c8affec71058de29f8051cb2fa7f7bbad1fe6>

[186] [CITE@en[Re: WebKit and <rtc> elements and such]]
([[Ryosuke Niwa]] 著, [TIME[2015-11-11 10:40:44 +09:00]] 版)
<https://lists.w3.org/Archives/Public/www-archive/2015Nov/0010.html>

[337] 
[CITE@ja[2015-06 doubledepth]], [TIME[2024-08-26T05:40:39.000Z]] <https://hitkey.nekokan.dyndns.info/diary1506.php>


[FIG(quote)[
[FIGCAPTION[
[187] ([TIME[2015-05-13 11:43:02 +09:00]] 版)
<http://www5b.biglobe.ne.jp/~sho-rai/kodamashinokeifu.htm>
]FIGCAPTION]

> 
>                       &nbsp;&nbsp;&nbsp; &nbsp;<ruby><rb>着到</rb><rt>(1)</rt></ruby> <br>                       
>                     兒玉彌<ruby><rb>「五」</rb><rt>〔重ね書〕</rt></ruby>郎家氏申軍忠之事<br>                        
>                       右、於家氏者、馳參鎮西大宰<ruby><rb>符</rb><rt>〔府〕(2)</rt></ruby>、<br>致宿直忠節上者、以此旨可有<br>                          
>                       御披露候、恐惶謹言、<br>                          
>                       貞和<ruby><rb>七年</rb><rt>(3)</rt></ruby>三月 日<br> 
>                       進上  御奉行所   「<ruby><rb>承了</rb><rt>(証判)</rt></ruby> (花押)」</span><br>                 

]FIG]


[FIG(quote)[
[FIGCAPTION[
[188] [CITE[旧暦の仕組み3]]
([TIME[2003-01-25 08:32:14 +09:00]] 版)
<http://homepage2.nifty.com/o-tajima/rekidaso/calendar3.htm>
]FIGCAPTION]

> 「<Ruby>朔<RP>(</RP><RT>さく</RT><RP>)</RP></RUBY>」

]FIG]


[FIG(quote)[
[FIGCAPTION[
[189] [CITE[NHKニュース]]
([[日本放送協会]] 著, [TIME[2016-03-25 16:18:45 +09:00]] 版)
<http://www3.nhk.or.jp/news/>
]FIGCAPTION]

> <em class="title"><ruby>東京都<rt>とうきょうと</rt></ruby>の<ruby>多摩動物公園<rt>たまどうぶつこうえん</rt></ruby> 「ライオンバス」の<ruby>運転<rt>うんてん</rt></ruby>を3<ruby>年<rt>ねん</rt></ruby><ruby>休<rt>やす</rt></ruby>む</em>

]FIG]


[FIG(quote)[
[FIGCAPTION[
[190] [CITE@ja[象徴としてのお務めについての天皇陛下のおことば:象徴としてのお務めについての天皇陛下のおことば(ビデオ)(平成28年8月8日) - 宮内庁]]
([TIME[2016-08-08 15:30:03 +09:00]])
<http://www.kunaicho.go.jp/page/okotoba/detail/12>
]FIGCAPTION]

> 重い<ruby><rb>殯</rb><rp>(</rp><rt>もがり</rt><rp>)</rp></ruby>

]FIG]


[FIG(quote)[
[FIGCAPTION[
[191] [CITE[異文化が交ざりあった墓碑 | 「おらしょ-こころ旅」(長崎の教会群とキリスト教関連遺産)]]
([TIME[2016-10-03 23:21:06 +09:00]])
<http://oratio.jp/p_column/ibunka-bohi>
]FIGCAPTION]

> <ruby>楔<rp>(</rp><rt>くさび</rt><rp>)</rp></ruby>十字紋と3種類の十字紋が描かれている。

]FIG]


[FIG(quote)[
[FIGCAPTION[
[192] [CITE@ja[電書ちゃんのでんでんマークダウン - でんでんマークダウン]]
( ([TIME[2017-04-07 14:59:35 +09:00]]))
<http://conv.denshochan.com/markdown>
]FIGCAPTION]

> 書き方
> {電子出版|でん|し|しゅっ|ぱん}を手軽に
> 変換されたHTML
> <p><ruby>電<rt>でん</rt>子<rt>し</rt>出<rt>しゅっ</rt>版<rt>ぱん</rt></ruby>を手軽に</p>

]FIG]


[193] [CITE@en[Re: '''['''css-text-decor''']''' Emphasis marks and auto-hiding ruby annotation]]
([[fantasai]]著, [TIME[2016-12-27 21:35:26 +09:00]])
<https://lists.w3.org/Archives/Public/www-style/2016Dec/0116.html>

[FIG(quote)[
[FIGCAPTION[
[194] [CITE@ja[教職員紹介|研究科紹介 |大阪大学大学院情報科学研究科]]
([TIME[2017-05-25 19:35:36 +09:00]])
<http://www.ist.osaka-u.ac.jp/japanese/introduction/professors/>
]FIGCAPTION]

> 日比 孝之 <span class="kana">ひび たかゆき</span>

]FIG]

;; [CODE(HTMLe)@en[span]] [[要素]]は [CODE[display: block]] で、
やや小さ目の[[文字]]サイズ。

[195] [CITE@en[Dev edition: hide ruby algorithm parts]]
([[momdo]]著, [TIME[2017-07-02 00:48:10 +09:00]])
<https://github.com/whatwg/html/commit/5f80a44169c3c057227212f136d23014225dead2>

[196] [CITE@en[Review on utilization of `w-nodev` annotation · Issue #1488 · whatwg/html]]
([TIME[2017-07-06 18:55:33 +09:00]])
<https://github.com/whatwg/html/issues/1488>

[197] [CITE@en[Dev edition: Hide `ruby` algorithm parts by momdo · Pull Request #2804 · whatwg/html]]
([TIME[2017-07-06 18:55:48 +09:00]])
<https://github.com/whatwg/html/pull/2804>

[FIG(quote)[
[FIGCAPTION[
[198] [CITE@ja[【天皇陛下譲位】官邸、宮内庁そして皇室…水面下で続いた静かなる攻防 憲法4条の狭間で揺れた1年4カ月(4/4ページ) - 産経ニュース]]
([[SANKEI DIGITAL INC.]]著, [TIME[2017-12-02 07:06:37 +09:00]])
<http://www.sankei.com/politics/news/171202/plt1712020004-n4.html>
]FIGCAPTION]

> 即位の礼や大(だい)嘗(じょう)祭(さい)などの日程・段取りはなお決まっていない。

]FIG]


[FIG(quote)[
[FIGCAPTION[
[199] [CITE@ja[平均年齢68歳「よど号グループ」ウェブサイト立ち上げ 「日本愛国」書き込む北朝鮮のお荷物?(2/7ページ) - 産経ニュース]]
([[SANKEI DIGITAL INC.]]著, [TIME[2017-12-30 09:35:33 +09:00]])
<http://www.sankei.com/premium/news/171228/prm1712280002-n2.html>
]FIGCAPTION]

> (森順子=よりこ=容疑者)

]FIG]


[FIG(quote)[
[FIGCAPTION[
[200] [CITE@ja[外国等に対する我が国の民事裁判権に関する法律]]
([TIME[2018-02-14 11:47:52 +09:00]])
<http://elaws.e-gov.go.jp/search/elawsSearch/elaws_search/lsg0500/detail?lawId=421AC0000000024&openerCode=1>
]FIGCAPTION]

> <ruby>勾<rt>こう</rt>
> </ruby>引

]FIG]


[FIG(quote)[
[FIGCAPTION[
[201] [CITE@ja[月磁場観測装置(LMAG)の初期データ]]
([[宇宙航空研究開発機構(JAXA)宇宙科学研究本部 SELENEプロジェクト]]著, [TIME[2009-01-14 17:00:40 +09:00]])
<http://www.kaguya.jaxa.jp/ja/document/edu/LMAG/edu_lmag_photo1.htm>
]FIGCAPTION]

> 2007年<span class="furigana">(ねん)</span>10月<span class="furigana">(がつ)</span>29日<span class="furigana">(にち)</span>

]FIG]


[FIG(quote)[
[FIGCAPTION[
[202] ([TIME[2018-03-22 15:53:29 +09:00]])
<http://www.mod.go.jp/rdb/tohoku/kyouryoku_kakuho/fmradio/2705-rm.html>
]FIGCAPTION]

> 「<span lang=EN-US><ruby
> style='ruby-align:distribute-space'><span lang=EN-US><span lang=EN-US>布</span></span><rp>(</rp><rt
> style='font-size:6.5pt;layout-grid-mode:line'>ぬの</rt><rp>)</rp></ruby><span
> lang=EN-US style='font-size:14.0pt'>」

]FIG]


[203] [CITE@ja[「しんど」「つなみ」もルビ 大阪北部地震、NHK対応の理由]]
([TIME[2018-06-19 14:12:00 +09:00]])
<https://www.buzzfeed.com/jp/ryosukekamba/earthquake?utm_term=.faMzovnyg#.qcdVLDyBR>

[FIG(quote)[
[FIGCAPTION[
[204] [CITE@ja[「サマータイム」日本にも? | 1面の記事から | 朝日小学生新聞 | 朝日学生新聞社 ジュニア朝日]]
([TIME[2018-09-12 14:43:40 +09:00]])
<https://www.asagaku.com/shougaku/topnews/13605.html>
]FIGCAPTION]

> <ruby>大<rt>おお</rt></ruby>きな<ruby>理<rt>り</rt></ruby><ruby>由<rt>ゆう</rt></ruby>は<ruby>健<rt>けん</rt></ruby><ruby>康<rt>こう</rt></ruby>への<ruby>悪<rt>あく</rt></ruby><ruby>影<rt>えい</rt></ruby><ruby>響<rt>きょう</rt></ruby>。<ruby>睡<rt>すい</rt></ruby><ruby>眠<rt>みん</rt></ruby><ruby>不<rt>ぶ</rt></ruby><ruby>足<rt>そく</rt></ruby>になり、<ruby>交<rt>こう</rt></ruby><ruby>通<rt>つう</rt></ruby><ruby>事<rt>じ</rt></ruby><ruby>故<rt>こ</rt></ruby>が<ruby>増<rt>ふ</rt></ruby>えるといったデータが<ruby>出<rt>で</rt></ruby>ています。

]FIG]


[205] [CITE@en[Proper ruby text (<rb>) syntax support in Markdown - Extensions - CommonMark Discussion]]
([TIME[2018-09-25 03:57:33 +09:00]])
<https://talk.commonmark.org/t/proper-ruby-text-rb-syntax-support-in-markdown/2279/35>


[207] ([TIME[2020-11-02T08:05:50.000Z]])
<http://citeseerx.ist.psu.edu/viewdoc/download;jsessionid=B3E918FD46E5C196CD3D84D9FE8BB501?doi=10.1.1.730.2168&rep=rep1&type=pdf>

[208] [CITE@ja[AH Formatter V7.0 - ルビ拡張]]
([TIME[2020-10-21T23:32:37.000Z]], [TIME[2020-11-05T05:22:38.933Z]])
<https://www.antenna.co.jp/AHF/help/v70/ahf-ruby.html>

[209] [CITE@ja-JP[GIMPで縦書き - mynote]]
([TIME[2020-11-05T05:24:54.000Z]])
<http://reddog.s35.xrea.com/wiki/index.php?GIMP%E3%81%A7%E7%B8%A6%E6%9B%B8%E3%81%8D#n1162d50>

[210] [CITE@ja[TEI P5ガイドラインの最新版(v3.5.0)でルビを。 - digitalnagasakiのブログ]], [TIME[2020-12-27T01:18:33.000Z]] <https://digitalnagasaki.hatenablog.com/entry/2019/04/17/032130>

[212] 
[[NHK]]
の[[Webサイト]]
[CITE[NEWS WEB EASY]]
には、
「[RUBY[漢字][かんじ]]の[RUBY[読][よ]]み[RUBY[方][かた]]を[RUBY[消][け]]す」
ボタンがあります。
押すと、ページ内の、このボタン以外の[[ルビ]]が非表示になります。
その実現方法は [CODE[rt]] の [CODE[visibility:hidden]]。
[[ルビ文字列]]用に確保した[[行間]]のアキや、
[[ルビ文字列]]と[[親文字列]]の長さの差によって生じた[[親文字列]]の[[字間]]は、
[[ルビ]]表示有りの場合と同じ状態になり、
違和感があります。
[TIME[2021-04-24T05:33:27.00Z]]

[213] [CITE@en[Restore the rb and rtc elements and update ruby content model accordingly by frivoal · Pull Request #6478 · whatwg/html · GitHub]], [TIME[2021-07-16T07:41:36.000Z]] <https://github.com/whatwg/html/pull/6478>

[214] 
大声で叫び続ければ解決(?)するっていう他所の[[標準化団体]]の[[しぐさ]]で政治問題化しようとしても無駄なのよね、
ここでは現実世界が正義だから...

[215] 
いま実装されてるモデルよりずっと複雑な割に、実世界の複雑な用例のカバー率がそれほど上がらない中途半端な案を、
何度も繰り返し推してくる人達はどうしたいと思ってるんだろうね?


[223] [CITE@en[HTML Ruby PR Escalation to WHATWG SG · Issue #184 · whatwg/sg · GitHub]], [TIME[2021-12-10T05:58:32.000Z]] <https://github.com/whatwg/sg/issues/184>

[224] [CITE@en[Meta: Notice: Moving PR6478 to W3C Extension Specification · Issue #7405 · whatwg/html · GitHub]], [TIME[2021-12-10T05:58:46.000Z]] <https://github.com/whatwg/html/issues/7405>

[225] 
[[WHATWG]] で正規ルートでゴリ押ししても認められなかった失敗した提案を
[[W3C]] で出版する。
今までこのルートで分裂規格をいくつ作って失敗してきたか。
前例を知らないわけでもあるまいに、まだやる気なのか。
どれだけ市場を混乱させたいんだろうか。

[226] 
こういう政治的工作をいくら続けたところで、
反感を買うだけで何も進展しないのにね。


[227] 
もう20年以上前に作られた (が普及に失敗した) [[複雑ルビ]]モデルにいつまでもこだわり続ける意味がわかんないんだよなあ。
(後付の) [[use case]] も中途半端過ぎて、シンプルケースを扱うには複雑すぎる、
レアケースを扱うには単純すぎるという、
前に考えたモデルを正当化するために集めだだけに見える。
現実世界の多様な事例を全然集めようとしていない。



[FIG(quote)[
[FIGCAPTION[
[228] [CITE@en['''['''Minutes''']''' SG Minutes 2021-11-17 · Issue #182 · whatwg/sg]]
([TIME[2021-12-29T04:12:37.000Z]])
<https://github.com/whatwg/sg/issues/182>
]FIGCAPTION]

> We discussed a request to publish an alternative Ruby model in the W3C HTML Working Group. We weren't sure about this and asked (via email) if incubating this in the WICG would be acceptable. The discussion will continue in email.
> These minutes are rather terse because the request itself isn't public.

]FIG]

[229] 
[[WHATWG]] は技術的問題は公開の場で扱うとしていて、政治的問題は非公開で扱われることが多い。
本件は外部からの要求が非公開で行われているので、
[[WHATWG]] からもあまり情報を出せない模様。

[230] 
技術的困難の克服を目的とした正当な要望なら、堂々と公開の場でやればいい。
非公開の政治的工作を続けている勢力は、問題の解決を目指しているのか、
政治闘争をやりたいのか、どっちだ。


[231] 
これだけ掻き混ぜられる政治力があるなら、
[[Firefox]]
以外のブラウザーベンダーも実装しようとするところが出てきてもおかしくないのにねえ。
どこも動かないのはどういうことなんだろう。

[232] 
[[Firefox]]
の実装は品質が低い気がするから、
いったん削除して他のブラウザーに揃えた方がいいんじゃないかなあ。
[[Web互換性]]の問題もいくつか出てきてるじゃん。


[233] [CITE@en[1641139 - Absolutely-positioned element in <ruby> is not shown]]
([TIME[2021-12-29 23:26:02 +09:00]])
<https://bugzilla.mozilla.org/show_bug.cgi?id=1641139>


[234] [CITE@en[Ruby Markup Coordination by frivoal · Pull Request #14 · w3c/whatwg-coord · GitHub]], [TIME[2022-02-08T05:23:47.000Z]] <https://github.com/w3c/whatwg-coord/pull/14>

[235] [CITE@en[Upcoming HTML standard issue triage meeting on 3/3/2022 · Issue #7581 · whatwg/html · GitHub]], [TIME[2022-03-04T04:58:08.000Z]] <https://github.com/whatwg/html/issues/7581#issuecomment-1058325546>



- [238] [CITE[ruby_enabler2.js - 適切なルビ表示を行うためのJavaScript - freefielder.jp]], [TIME[2022-04-20T16:03:42.000Z]], [TIME[2022-08-31T07:51:00.188Z]] <https://freefielder.jp/ruby/index.html>
--[243] [CITE@ja[【[[HTMLルビ]]】[[両面ルビ]]表示を実現するJavaScript、出来ました。 - freefielder.jp]], [TIME[2022-07-12T16:57:00.000Z]], [TIME[2022-08-31T07:58:46.815Z]] <https://freefielder.jp/blog/2015/02/html-ruby-enabler2.html>
--[244] [CITE[null]], [TIME[2015-06-11T11:15:04.000Z]], [TIME[2022-08-31T08:00:22.889Z]] <http://freefielder.jp/ruby/beta.html>

[242] >>238

>作成したページに [B[ruby_enabler2.js]] を設置するだけで、
-    主要なブラウザ [SUP[*1]]上で、
-    HTML5形式・XHTML1.1(HTML4)形式のどちらの書式で書かれたルビ [SUP[*2]]も、
>
かなり良い感じにレンダリングすることができます。
>     [SUP[*]]1:このページの「RUBYタグ周りの書式とブラウザ互換性、ruby_enabler2.jsの動作について」セクションをご覧ください。
>     [SUP[*]]2:HTML5の「熟語ルビ」や XHTML1.1の "rbspanアトリビュート" には対応していません。。


[239] 
>>238
これは

- [240] [[W3C HTML 5.0]] という古い仕様しか参照していなくて最新の
[[WHATWG]] [CITE[HTML Standard]] に何も言及していない
- [241] 
「XHTML 1.1 / HTML4 形式のルビ」
とか書いているが 「HTML4 形式」の[[ルビ]]が何なのかどこにも説明がない

という点がなんだか不安感が。



[245] 
「漢字 (かんじ)」 形式の[[振り仮名]]も [CODE[ruby]] で記述できると主張する人は
「ハングル (漢字)」形式の表記も [CODE[ruby]] で記述できるという主張なのかなあ?
でもそういうこと言ってる人見たことないですよね。





[246] 
[[電子書籍交換フォーマット]]は[[単純ルビ]]と[[複雑ルビ]]とその混合を採用していました。


[FIG(quote)[
[FIGCAPTION[
[247] [CITE@ja[プリンのさんぽみち -聖櫃とウカヤ王朝目次-]], [TIME[2019-04-10T08:57:43.000Z]], [TIME[2024-06-03T04:07:13.518Z]] <http://wwwd.pikara.ne.jp/tomorrow-1007/s/arkutoukayaoutyoumokuji.html>
]FIGCAPTION]

>
[PRE(HTML code)[
<meta name="GENERATOR" content="JustSystems Homepage Builder Version 15.0.10.0 for Windows">
<title>プリンのさんぽみち -聖櫃とウカヤ王朝目次-</title>
</head>
<body background="image/bla3b.gif">
<p align="center"><font color="#fcde0e" size="+3" face="HGP創英角ゴシックUB"><ruby><rb>聖櫃</rb></ruby></font><font color="#fcde0e" size="+2" face="HGP創英角ゴシックUB"><ruby><rt>アーク</rt><rp></rp></ruby></font><font color="#fcde0e" size="+3" face="HGP創英角ゴシックUB">とウカヤ王朝目次<br>
</font><b><font color="#fcde0e" size="+1">-神山に隠された古代阿波の言霊-</font></b></p>
]PRE]
]FIG]


[248] 
>>247 [CODE[rb]] と [CODE[rt]] がそれぞれ別の [CODE[ruby]] に分断されている。
[CODE[ruby]] に対応していない [[WYSIWYG]] 編集ツールでの編集によって壊れたもの?

手元のどのブラウザーでも [CODE[rb]] と [CODE[rt]] は横並びで表示される。
[TIME[2024-06-03T04:10:33.300Z]]

- [249] [[Chrome]] と [[Firefox]] は、[CODE[rt]] を[[ルビ文字列]]の位置に表示し、[[親文字列]]部分は空欄。
- [250] [[Internet Explorer]] 11 は、
-- [251] デフォルトでは IE7 モードになる
-- [252] IE7 モード、IE5 モードでは [CODE[rt]] は行の垂直中央に配置される
-- [253] IE8, IE9, IE10, IE11 モードでは [CODE[rt]] は行の下 (ベースライン?) 揃えで配置される





[258] [CITE@en-US[Implementing the Ruby Module]], [TIME[2017-10-02T10:23:35.000Z]], [TIME[2024-08-20T09:23:06.183Z]] <https://www.w3.org/TR/2001/NOTE-ruby-implementation-20010531/>

[257] 
[CITE@en-US[Implementing the Ruby Module]], [TIME[2005-07-14T11:31:59.000Z]], [TIME[2024-08-20T09:22:45.820Z]] <https://www.w3.org/People/mimasa/test/schemas/NOTE-ruby-implementation>


[259] [CITE@ja[digidepo_3525276_po_koukan_format_houkoku_2011_05.pdf]], [TIME[2024-08-24T04:10:42.000Z]] <https://dl.ndl.go.jp/view/prepareDownload?itemId=info%3Andljp%2Fpid%2F3525276&contentNo=1#page=117>

>
[LEFT[
HTML5 のルビ仕様:<ruby>漢<rt>かん</rt>字<rt>じ</rt></ruby>[BR[]]
メリット:記述が簡易[BR[]]
デメリット:非対応のビューアの場合に被ルビ文字とルビが並列で表示されてしまう。
]LEFT]

>
[LEFT[
今回は、XHTML のルビ仕様を採用する。HTML5 のルビ仕様が一般化した場合には、[BR[]]
そちらも取り入れることも考慮する。
]LEFT]


[260] >>259 [CITE[HTML5]] にも [CODE[rp]] はあるのに [[XHTML]] のルビには [CODE[rp]]
を使って例示し [[HTML5]] のルビには省略して例示するという、悪意があるとしか思えない恣意的な比較に基づき、
[[XHTML]] を採用している。しかも [[HTML5]] のルビが当時 [[IE]] に実装され広く採用されていたものを標準化したのに過ぎないのに対し、
[[XHTML]] のルビは主要ブラウザーにまったく実装されていないことを知らないはずもないのに
(知らないとしたらHTMLの素人レベル、一体何を調査研究したのかということになる)、
「HTML5 のルビ仕様が一般化した場合には」などとすっとぼけている。
「一般化」が判断基準ならなぜ「一般化」していない [[XHTML]] のルビを選んだのか。

[261] 
なおここでいう [[XHTML]] のルビというのは[[複雑ルビ]]に [CODE[rp]]
を組み合わせたもの。なぜか[[単純ルビ]]には言及なし。
[[W3C勧告]]の [CITE[Ruby Annotation]] では[[複雑ルビ]]と [CODE[rp]]
は組み合わせられないのに >>259 の [[XHTML]] のルビの例示には [CODE[rp]]
が使われていてメリットということになっている。いったいなにを言っているのだ?









[404] [CITE@en[Ruby content model]]
([TIME[2024-05-16T20:01:41.000Z]], [TIME[2024-09-07T14:24:45.101Z]])
<https://w3c.github.io/i18n-discuss/notes/ruby-content-model>

[FIG(quote)[
[FIGCAPTION[
[418] [CITE@ja[Web技術 - 神和電子書庫]], [TIME[2024-11-26T11:04:39.000Z]] <https://xn--1xtr8p.xn--kst.jp/Web%E6%8A%80%E8%A1%93>
]FIGCAPTION]

>
前述の通り、W3CとWHATWGで微妙に異なった規格が作られていた後WHATWG側に統合された経緯から、W3C側のHTML5にのみ存在した機能の一部が破棄されている。
>[SNIP[]]
>
現行の規格のルビに関する説明では熟語ルビについて触れられているが、
[PRE[
<ruby>
朝<rt>あさ</rt>寝<rt>ね</rt>坊<rt>ぼう</rt>
</ruby>
]PRE]
のように、HTMLの層ではモノルビと同じマークアップを行い、CSS等の層で区別することになったようである。
>
-    要するにモノルビと熟語ルビは意味論的な差異ではなく表示上の差異であるということに変更されたということであろうが、些か疑問である。
-[SNIP[]]

]FIG]

[419] 
>>418 ほーら、 [[W3C]] が余計なことしたせいで事情を把握していない一般の人が混乱してるじゃん。

>モノルビと熟語ルビは意味論的な差異ではなく表示上の差異であるということに変更された

なんてことは仕様書のどこにも書かれていないし、そのような事実はないので、勝手に行間を読んで勝手な解釈の上で勝手に疑問を持ってはいけない。

[420] 
逆に最初から [[W3C]] 版 [[HTML5]] を読んでない人はこんな無駄な誤解しなくていいんだけどなw

[421] 
[[W3C]] と [[WHATWG]] の政治的闘争にわざわざ[[ルビ]]を放り込んで火種を作った人達、ちゃんと反省してほしいんだけどなあ。



[422] [CITE[長訓読み選手権]], [[北村曉 (KITAMURA Akatsuki)]], [TIME[2006-12-11T12:34:24.000Z]], [TIME[2025-08-22T06:00:14.990Z]] <http://www.akatsukinishisu.net/kanji/nagakun/>

[423] >>422 [[漢字]]を [CODE[img]] で表したものに、 [CODE[ruby]]
で[[よみがな]]を付けている。 [[Chrome]] は正しく[[上ルビ]]の位置に配置するが、
[[Firefox]] はなぜか [CODE[img]] に重ねて上下中央に [CODE[rt]]
を配置する。





