Subject: | |
From: | |
Reply To: | |
Date: | Mon, 17 Aug 2009 12:59:34 +0200 |
Content-Type: | text/plain |
Parts/Attachments: |
|
|
Will Robertson skrev:
> Lars, do you have any comments about whether the new xparse is something
> you'd like to use in your own work? Your code, of course, was the big
> motivation for the "argument processor" idea and I'd hope that while we
> didn't manage to fit everything from xdoc2l3 into xparse there's still
> enough that you'd like to use.
Haven't had time to review the code yet, I've only just downloaded it.
Will get back to you when I have had a look at it. (I'm especially
curious to how on earth you managed to do optional arguments at
expand-time.)
Have latex'ed xparse.dtx, though, and it throws a few errors in the
index. I think those are due to \xparse_add_type_>:, as the ">" is
special to makeindex, forcing an extra index level where none was
intended. Harmless character sequences avoids that trap. ;-)
In the meantime, here are some technical issues to consider.
1. What happens if I do this:
\DeclareDocumentCommand{\foo}{ +O{\par} m +O{\par} }{ ... }
? One technical problem I saw in xdoc2l3 was that of simultaneously
having \par tokens in defaults and non-long arguments.
2. What happens (for the various argument types) when TeX fails to grab
an argument? (Failures happen for long arguments when encountering a
mismatched right brace, and for short argument also when encountering a
\par token.) To keep in line with TeX, everything up to the ungrabbable
token should disappear, but an uncareful implementation could leave
other tokens in place as well, which would subject the user to
mysterious additional errors.
Lars Hellström
|
|
|