On Sat, Jul 17 2010, Mojca Miklavec wrote:
> A few random comments from externalfigure:
> - Despite the fact that the command name is known from filename,
> wouldn't it be nice to have externalfigure string defined somewhere?
Ok, see response to Taco.
> - It is not really needed, but it helps when cross-referencing: I
> would nevertheless leave the [1] = {...}, [2] = {...} for arguments
> - The following:
> settings = {
> inherit = "useexternalfigure",
> -- n = 3 not needed, since one command has only one settings-option
> },
> is a bit weird to me. Why not putting the "inherit" already under
> arguments above? And yes, you probably do need to tell from which
> argument of \useexternalfigure you want to inherit the settings.
>From my very small ConTeXt experience, I made some assumptions:
- one command has no more than one settings-option (key-val-pairs)
- one command has no more than one keywords-option
If this is true, then there is no problem with cross-referencing.
The n = X would be even difficult, when there a variants: imagine,
\useexternalfigure can have settings at n = 2 or n = 4 and so on.
And I like the separate settings-table, because it can be very big and
would clutter the arguments table.
If my assumptions are wrong, then there will be more problems:
perhaps the settings must go into the arguments table or we need a lot of
numbering (n = X here and there).
> - If all the three arguments are optional, it's a bit difficult to
> tell what combination of arguments is allowed, so it might make sense
> to be a bit more verbose in that (to tell somehow that for example
> only 123 and 23 and 3 is allowed, but not 13 for example), but this is
> not too important.
I think, there has to be some introduction chapter for the user with the
general rules in ConTeXt-commands. I suppose these rules:
- when a command has an optional keyword-option and an optional
settings-option and you use only one of them, you don't need a
placeholder (empty bracket pair)
example: \setupitemize[packed] or \setupitemize[start=5]
(context is intelligent here)
- context cannot distinguish between label and keyword, so if you want to
use a label in \placefloat, you must add a placeholder for the keyword
Hans can tell us perhaps more about these rules...
Furthermore, we can add in this introduction some notes about spaces:
- space is allowed between 2 bracket options
- space is allowed after a comma
- space is not allowed before and after the =
- space is gobbled after ] if not all optional arguments are used
Cheers, Peter
--
Contact information: http://pmrb.free.fr/contact/
_______________________________________________
dev-context mailing list
[email protected]
http://www.ntg.nl/mailman/listinfo/dev-context