Received: from mx0.gmx.net (mx0.gmx.net [213.165.64.100]) by h1439878.stratoserver.net (8.14.2/8.14.2/Debian-2build1) with SMTP id p4BJ48qH016062 for ; Wed, 11 May 2011 21:04:09 +0200 Received: (qmail 14287 invoked by alias); 11 May 2011 19:04:03 -0000 Delivered-To: GMX delivery to rainer.schoepf@gmx.net Received: (qmail invoked by alias); 11 May 2011 19:04:02 -0000 Received: from relay2.uni-heidelberg.de (EHLO relay2.uni-heidelberg.de) [129.206.210.211] by mx0.gmx.net (mx034) with SMTP; 11 May 2011 21:04:02 +0200 Received: from listserv.uni-heidelberg.de (listserv.uni-heidelberg.de [129.206.100.94]) by relay2.uni-heidelberg.de (8.13.8/8.13.8) with ESMTP id p4BJ1QK6002697 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Wed, 11 May 2011 21:01:27 +0200 Received: from listserv.uni-heidelberg.de (localhost.localdomain [127.0.0.1]) by listserv.uni-heidelberg.de (8.13.1/8.13.1) with ESMTP id p4BH6lWh003961; Wed, 11 May 2011 21:01:26 +0200 Received: by LISTSERV.UNI-HEIDELBERG.DE (LISTSERV-TCP/IP release 16.0) with spool id 1254718 for LATEX-L@LISTSERV.UNI-HEIDELBERG.DE; Wed, 11 May 2011 21:01:26 +0200 Received: from relay2.uni-heidelberg.de (relay2.uni-heidelberg.de [129.206.210.211]) by listserv.uni-heidelberg.de (8.13.1/8.13.1) with ESMTP id p4BJ1QFZ003790 for ; Wed, 11 May 2011 21:01:26 +0200 Received: from mail-gy0-f177.google.com (mail-gy0-f177.google.com [209.85.160.177]) by relay2.uni-heidelberg.de (8.13.8/8.13.8) with ESMTP id p4BJ1KUB002675 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=FAIL) for ; Wed, 11 May 2011 21:01:25 +0200 Received: by gyh20 with SMTP id 20so428727gyh.22 for ; Wed, 11 May 2011 12:01:20 -0700 (PDT) MIME-Version: 1.0 Received: by 10.146.175.19 with SMTP id x19mr7925988yae.16.1305140479932; Wed, 11 May 2011 12:01:19 -0700 (PDT) Received: by 10.147.41.17 with HTTP; Wed, 11 May 2011 12:01:19 -0700 (PDT) References: <4DCA93CC.5020605@morningstar2.co.uk> Content-Type: text/plain; charset=ISO-8859-1 X-Spam-Whitelist: Message-ID: Date: Wed, 11 May 2011 15:01:19 -0400 Reply-To: Mailing list for the LaTeX3 project Sender: Mailing list for the LaTeX3 project From: Bruno Le Floch Subject: Re: xparse and space skipping To: LATEX-L@listserv.uni-heidelberg.de In-Reply-To: <4DCA93CC.5020605@morningstar2.co.uk> Precedence: list List-Help: , List-Unsubscribe: List-Subscribe: List-Owner: List-Archive: X-GMX-Antispam: 0 (eXpurgate); Detail=5D7Q89H36p5EcWZrWzhJTEiaaaiQYHQ2L4vqUyqJlG0htKLPC7ADo4fJdGmRZB3Om1M+l wpLqEk+rwVGgUsGbdAHllQvU0yzwT+6XoljQ5eWFaYKg8T8EDNpHrkhXSgNka1/RfO1YpD9GyCT9 64CtiKYehCIuUFpM/esndXPHBXircdU54xn0uquPTKSkxLyk/FNLRrdxvbI42JtN1sJxg==V1; X-Resent-By: Forwarder X-Resent-For: rainer.schoepf@gmx.net X-Resent-To: rainer@rainer-schoepf.de Status: R X-Status: X-Keywords: X-UID: 6736 > \foo[bar] > \foo [bar] > \foo text > > TeX will always skip spaces and so things are not consistent. In the > same way, mandatory arguments are always grabbed Not quite true. For instance, amsmath redefined \\ not to skip spaces when looking for an optional argument, I believe. And that works because \\ is a control symbol, not a control word. I think this choice of behaviour really needs to be supported, since it leads to surprises for the end-user otherwise. > really correct! (At the same time, the implementation would be slightly > easier to follow if this change was made.) On the other hand, emulating LaTeX2e arguments with space skipping seems needed as well. Is it possible to get the best of the two worlds with a "o_no_skip" argument specifier? Or more generally a modifier, say K, which makes the next argument keep spaces (except perhaps for m arguments where it should produce an error)? \DeclareDocumentCommand {\\} { Ks Ko } {...} Just my take on it. Regards, Bruno