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
Show All Mail Headers

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

Print Reply
Subject:
From:
Bruno Le Floch <[log in to unmask]>
Reply To:
Mailing list for the LaTeX3 project <[log in to unmask]>
Date:
Sun, 15 May 2011 17:26:49 -0400
Content-Type:
text/plain
Parts/Attachments:
text/plain (46 lines)
> strong deviation from that. (this is independent of the fatc that
> there may be a completely different approach to document level
> syntax, eventually, but this is not what xparse was meant to be).

I'm guessing that "completely different approach[es] to document
level syntax" have been discussed earlier. Any pointer to such a
discussion on this list?

> -snip-
> to break between arguments (rather than inside)
> -snip-
> Now one could argue that that this  behavior for \\ is useful

Ok, I retract my previous proposal: it makes a lot of sense to want a
consistent user interface. Then always skipping spaces is probably
best. For \\, I am thinking that perhaps removing the optional
argument completely, and replacing it by a look-ahead for \vspace is
possible:

\\ [1cm]  => \\ \vspace {1cm}

of course allowing spaces. Then we wouldn't have this odd exception anymore.

> have to implement a full blown scanner yourself and  disable TeX's internal
> scanner completely

It should be enough to make spaces active, but then comes the task of
removing spaces at the beginning and end of lines, and converting
several spaces in a row, etc. A huge mess.

> here is my summary
>
> allow spaces but not \par between arguments
> do not allow spaces between arguments
> leave it to the command how spaces between arguments are interpreted

I agree with all the pros and cons mentionned by Frank. However, I
think you forget one possibility (which is the current xparse
approach): trailing optional arguments do not ignore spaces, except if
the command is a control word with no mandatory arguments. Ugly,
slightly difficult to remember, but consistent. Though I'm now
convinced that the LaTeX2e approach is probably the simplest.

Regards,
Bruno

ATOM RSS1 RSS2