LATEX-L Archives

Mailing list for the LaTeX3 project

LATEX-L@LISTSERV.UNI-HEIDELBERG.DE

Options: Use Forum View

Use Monospaced Font
Show Text Part by Default
Condense Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Sender:
Mailing list for the LaTeX3 project <[log in to unmask]>
Date:
Sat, 28 May 2011 18:16:09 +0100
Reply-To:
Mailing list for the LaTeX3 project <[log in to unmask]>
Message-ID:
Subject:
MIME-Version:
1.0
Content-Transfer-Encoding:
7bit
In-Reply-To:
Content-Type:
text/plain; charset=ISO-8859-1
From:
Joseph Wright <[log in to unmask]>
Parts/Attachments:
text/plain (39 lines)
On 28/05/2011 18:08, Bruno Le Floch wrote:
> Hello all,
> 
> on the TeX.stackexchange Q&A website [1], was asked the following
> question: how do I get with xparse a macro with three optional
> arguments: <any number of *> <any number of '> <any positive integer>
> (without the <>). This can be achieved by providing a new argument
> type, which collects tokens as long as they obey a user-defined
> condition. Namely,
> 
> \DeclareDocumentCommand{\X}
>   {
>     W { \token_if_eq_meaning:NNTF * }
>     W { \token_if_eq_meaning:NNTF ' }
>     W { \token_if_digit:NTF }
>   }
>   { \tl_show:n { #1 | #2 | #3 | #4 } }
> 
> would declare \X to first grab tokens as long as they are equal in
> meaning to *, then grab tokens as long as they are equal in meaning to
> ', and finally grab digit tokens.
> 
> Do you think that it would be useful to add yet another argument type
> for that? (In the code I have now, I decided that the argument
> grabbing would stop at the first { or space or }, or implicit such
> token.)

I have to say my initial reaction is 'not keen'. While xparse is a
'glue' layer between LaTeX2e and LaTeX3, and may not make it to a LaTeX3
format, I think we don't want to encourage irregular input if we can
avoid it. Do we _really_ want to suggest that this may even be
considered as a good idea for a new format?

On the other hand, I guess it does fall within the 'parsing' remit of
xparse, and may be something that is occasionally useful. I'd like to
see a real use case, I guess.

Joseph

ATOM RSS1 RSS2