sorry, i guess i wasn't clear -- i actually agree with you, which is why i think keystrokes like "Esc" need to be a separate element.
I don't think that everything needs be represented by a separate element. See for example the example in the spec
tdg-en-html-2.0.7/tdg/en/html/systemitem.html :
<systemitem class="systemname">helio.oreilly.com</systemitem>
"h" (not as char, but as key) doesn't have an element either, but is written as
<keycap>h</keycap>
i remember some of the earlier proposals that had these kinds of keys strictly as attributes for a "regular" keycap element, which i didn't much like.
Why not? The typical way to do "enter" is to press the key with function "enter". This translates nicely to <keycap function="enter"/>
and because they are discrete keystrokes in their own right, i don't think supporting them with a "function" attribute quite fits the bill.
I think that it actually is a quite concise way of expressing/marking up function keys. Also see the other reply.
Tobi
-- http://www.pinkjuice.com/
