HTML::Lint::Pluggableという、HTMLが正しい形式かをチェックしてくれるモジュールがある。しかし、自分が使いたいHTML5のタグの中で許可していないものがいくつかあったのでPRして追加してもらった。今回はbdi, dialog, menuitem, template, track, rb, rtc辺りを許可してもらった。
PRするにあたって、いくつか参考にした資料があったのでメモしておく。
許可するタグをPRしようと考えた時に、まず実際に自分が追加したいタグがHTML5として定義されているタグなのかを調べないといけないと考えた。そこで以下の資料を参考にした。
1つ目はwhatwgが定義しているHTML Living Standardの資料で、このElementsの部分に書かれているのがタグ一覧のようだった。2つ目はW3Cが定義しているHTML5の資料で、こちらもElementsに書かれているのがタグ一覧のようだった。比べてみると微妙に違いがあるので、少なくともどちらか一方に載っているElementsであれば追加しても良さそうと判断した。
これを調べていると、なぜW3Cとwhatwgが両方共HTMLの仕様を定義し、かつ微妙に違うのかという疑問が生じた。これは今追いかけ中なのだけど、以下の資料が参考になりそうだった。