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 o11Lk5Fs005508 for ; Mon, 1 Feb 2010 22:46:07 +0100 Received: (qmail 19225 invoked by alias); 1 Feb 2010 21:46:00 -0000 Delivered-To: GMX delivery to rainer.schoepf@gmx.net Received: (qmail invoked by alias); 01 Feb 2010 21:46:00 -0000 Received: from relay2.uni-heidelberg.de (EHLO relay2.uni-heidelberg.de) [129.206.210.211] by mx0.gmx.net (mx019) with SMTP; 01 Feb 2010 22:46:00 +0100 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 o11Li2fR014098 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 1 Feb 2010 22:44:02 +0100 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 o11F2mnR032627; Mon, 1 Feb 2010 22:43:54 +0100 Received: by LISTSERV.UNI-HEIDELBERG.DE (LISTSERV-TCP/IP release 16.0) with spool id 395442 for LATEX-L@LISTSERV.UNI-HEIDELBERG.DE; Mon, 1 Feb 2010 22:43:54 +0100 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 o11Lhs6Y012400 for ; Mon, 1 Feb 2010 22:43:54 +0100 Received: from moutng.kundenserver.de (moutng.kundenserver.de [212.227.17.10]) by relay2.uni-heidelberg.de (8.13.8/8.13.8) with ESMTP id o11LhoCn014001 for ; Mon, 1 Feb 2010 22:43:54 +0100 Received: from morse.mittelbach-online.de (p54A87860.dip.t-dialin.net [84.168.120.96]) by mrelayeu.kundenserver.de (node=mrbap0) with ESMTP (Nemesis) id 0MKsym-1Nc43i13rc-000eAy; Mon, 01 Feb 2010 22:43:50 +0100 Received: by morse.mittelbach-online.de (Postfix, from userid 501) id DA6D870946; Mon, 1 Feb 2010 22:43:46 +0100 (CET) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit References: <4B671436.4020108@morningstar2.co.uk> X-Mailer: VM 7.19 under Emacs 21.3.1 X-Provags-ID: V01U2FsdGVkX18nn32Yc/pRyA2pE2pRZAQXr/9U8oZSaAJi+Mz SbMiYPJeKDzqAAj56KrCGHn97KLUHjzFZToDW3kqr4VUCk3DYM YiXMzbM4sOllgr9cI3O3g== X-Spam-Whitelist-Provider: Message-ID: <19303.19218.784429.433360@morse.mittelbach-online.de> Date: Mon, 1 Feb 2010 22:43:46 +0100 Reply-To: Mailing list for the LaTeX3 project Sender: Mailing list for the LaTeX3 project From: Frank Mittelbach Subject: Re: xtemplate and muskips To: LATEX-L@listserv.uni-heidelberg.de In-Reply-To: <4B671436.4020108@morningstar2.co.uk> Precedence: list List-Help: , List-Unsubscribe: List-Subscribe: List-Owner: List-Archive: X-GMX-Antispam: 0 (Mail was not recognized as spam); Detail=5D7Q89H36p77e5KAPs1l6v/Sb97LojnDtMgfETrECMLUO9erHzOJe+OynZRhvlGqvET/J 3dm2vHWnQHIuidpgLhS+P7NNYz+zyHLMY9yCwFcpEP74SGx2F2+1SUI3sjCH7ntAdP+Qju/DAYyu a2z2w==V1; X-Resent-By: Forwarder X-Resent-For: rainer.schoepf@gmx.net X-Resent-To: rainer@rainer-schoepf.de X-Scanned-By: MIMEDefang 2.63 on 85.214.41.38 Status: R X-Status: X-Keywords: X-UID: 6217 Joseph writes: > Currently, we have "length" (for a fixed length) and "skip" (for a > rubber length), but nothing which will map to an underlying muskip. I'm > not actually sure we should at the design level > (\DeclareTemplateInterface) but at the code level (\DeclareTemplateCode) > there needs to be some thought. Possibilities: > > - Introduce a new key type (mathskip ?) > - Use a keyword in the code section, as we already do for "global": > > keyname1 = math \l_my_muskip , > keyname2 = global math \g_my_muskip, > keyname3 = global \g_some_other_var, > ... > > - Assume that this is rare enough to use a token list to store in > input, and sort out the conversion in the code. > > Thoughts? At present, (3) is all that is on offer, but perhaps that is > all we need (do designers care about muskips at all?). your last question perhaps depends on whether or not there is going to be a lot of "templates" for math objects which I somehow doubt, mainly because most such objects will not need a "designer interface" supporting a number of possible layouts for some object. But I might be wrong. For non-math objects I don't think that muskips play any role or should play any role. From your three options above I don't like option (2) at all --- such a keyword looks like it can be applied to or combined with others and that isn't really the case and it isn't the right kind of syntax/semantics. After all the type is defined on the interface side not on the code side (even though the code side actually uses a matching storage bin (1) is my favorite as it is clean and fits the rest of the types. As you say to implement that it would probably need an underlying support for muskips as code level types, but you can start by simply having this type accepting a tokenlist and you deal with it internally for the moment. That could then later be changed to use whatever the kernel then offers as type support. just some initial thoughts frank