唐突にHTMLの話題。
HTMLのclass属性には、スペースで区切って複数のクラス名を与えることができるんですね(7.5.2 Element identifiers: the id and class attributes – The global structure of an HTML document)。「Valid HTML 4.01!」などと偉そうにバナーを掲げてますが、知りませんでした。そうすると、以下のようなマークアップができることになります。
<p> <acronym class="html index" title="HyperText Markup Language">HTML</acronym>の<samp class="html index attr">class</samp>属性には、... </p>
(まあ、これはたぶんやりすぎですが、)そしてスタイルシートで、HTMLに関連する用語(htmlクラス)はグリーンの文字、属性名(attrクラス)はCourier Newフォントで表示させ、(そんなツールがあるかどうかは知りませんが、)indexクラスの単語を索引用に抽出する……、などということが可能(のはず)なわけです。
いままで「ひとつの要素に複数のクラスがふさわしい場合だってあるよなあ……。span要素とかで何重に囲むわけにもいくまい……。」とか思ってたのですが、たんに自分が無知なだけだったという。
HTML操作するようなマクロ書くときは気をつけねば。