Hi Hans, Irdis, All,
It might sound like splitting hairs, but I find we should be careful how we call this beast!
Basically, a highlight allows one so setup a font style and color to be applied
to it contents.
The problem is that is this REALLY a Highlight!
A style and color is applied so, what we have is a use color and style!
would it not be better to call it
definecharstyle
or
definetextstyle
For compatibility we could use keep the definehighlight as a synonym.
As to setting up defaults, the question is their a generic usage of such ways of
for so called highlights. These are, basically, by those that:
1) like this much fluff
2) idiosyncratic terminology
1) is supposed to avoided! And basically makes ConTeXt look like Word!
The use of another way of defining a command for the standard font styles
is proof enough for 2. Also, not everybody would want the predefined styles and colors
so they will have to be changed in the setuphighlight anyway!
The use of such a command is convient, but we should think about the nomenclature!
The nomenclature should reflect what it does. We can have synonyms to satisfy the
semantic usage of it!
regards
Keith
[snip, snip]
Anyway, the problem with predefined highlights is that we won't overload existing commands by default, so redefining is not an option in the core.
An option is to provide a set like:
\unprotect
\definehighlight[\v!italic ][\c!command=\v!no,\c!style=\v!italic]
\definehighlight[\v!bold ][\c!command=\v!no,\c!style=\v!bold]
\definehighlight[\v!bolditalic][\c!command=\v!no,\c!style=\v!bolditalic]
\definehighlight[\v!mono] [\c!command=\v!no,\c!style=\v!mono]
\definehighlight[\v!monobold] [\c!command=\v!no,\c!style=\v!monobold]
\definehighlight[important] [\c!command=\v!no,\c!style=\v!bold]
\definehighlight[unimportant] [\c!command=\v!no,\c!color=darkgray]
\definehighlight[warning] [\c!command=\v!no,\c!style=\v!bold,\c!color=darkblue]
\definehighlight[error] [\c!command=\v!no,\c!style=\v!bold,\c!color=darkred]
\protect
\starttext
\highlight[italic] {italic}
\highlight[bolditalic] {bolditalic}
\highlight[bold] {bold}
\highlight[mono] {mono}
\highlight[monobold] {monobold}
\highlight[important] {important}
\highlight[unimportant]{unimportant}
\highlight[warning] {warning}
\highlight[error] {error}
\stoptext
Keep in mind that coding in terms of 'emph' is rather useless with respect to highlights. Highlights relate to structure (while \it doesn't) so you need tags like 'important' and so.