On 11/06/2009, at 5:58 PM, Joseph Wright wrote:
> I'd imagine that, like many things, LaTeX3 should establish a
> convention
> on this type of thing. At the moment, template uses hyphenation, so I
> guess this may be the convention. I use "everything runs together" in
> siunitx at the moment, but I think this was a bad choice, as it
> makes it
> hard to create readable names. I tend to think that spaces are
> fine, as
> I find the pgfkeys keys very readable. (Not sure normalising things
> is a
> great idea: as you say, one is correct and the rest are wrong!)
Or all are correct and none are wrong :)
But I'm not going to push the idea; it was just a stray thought some
time back. I probably prefer hyphens but I'm not willing to settle on
one or the other at this stage.
> keys3 is meant to be an experiment to see what needs to be thought
> about. I'd still imagine that the final result might well be something
> else (although I'm quite happy to write it). I'm simply aware that at
> present we don't have a native LaTeX3 solution which covers everything
> that can be done in xkveyval/kvoptions/pgfkeys plus template, and I'd
> suggest we should.
Yes, I'm keen on merging the best ideas of them all. It's definitely
not a "one or the other" argument.
> On inheritance, I know that the pgf team have looked at things, but
> I'm
> not happy that they've got an understandable system. Could you give
> an
> example of how tempate does this: I must have missed it in the docs.
> Then I can think about it!
Perhaps I used the wrong word. I guess I'm thinking of the
\UseInstance type of thing in template. Which is more referring to one
template from within another.
> One thing that comes to mind is the issue of creating
> by name. I've done this in keys3 as you see this idea in the xkyeval
> \define@cmdkeys macro, where you set up the prefix once then can make
> lots of related storage macros. On the other hand, is this useful
> (template does not do it, I think)? Perhaps it is better to do each
> one
> explicitly, so that the code is clearer?
I'd say that if we don't need it in expl3 then we don't need it in
template. Having said that, I have proposed the idea in expl3 of a
data type where variables are referred to by "name" rather than by
control sequence. E.g.,
\tl_set:nn {tmpa} {...}
would set the variable "\l_tmpa_tl".
> I should say that I'm *not* saying that keys3 is the correct approach,
> simply that it is *an* approach.
And a very helpful one to contrast with template! Thanks,
Will
|