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 q579vQpe032657 for ; Thu, 7 Jun 2012 11:57:27 +0200 Received: (qmail 11080 invoked by alias); 7 Jun 2012 09:57:21 -0000 Delivered-To: GMX delivery to rainer.schoepf@gmx.net Received: (qmail invoked by alias); 07 Jun 2012 09:57:20 -0000 Received: from relay.uni-heidelberg.de (EHLO relay.uni-heidelberg.de) [129.206.100.212] by mx0.gmx.net (mx074) with SMTP; 07 Jun 2012 11:57:20 +0200 Received: from listserv.uni-heidelberg.de (listserv.uni-heidelberg.de [129.206.100.94]) by relay.uni-heidelberg.de (8.14.1/8.14.1) with ESMTP id q579tJQg019546 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 7 Jun 2012 11:55:19 +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 q576alM0015934; Thu, 7 Jun 2012 11:55:18 +0200 Received: by LISTSERV.UNI-HEIDELBERG.DE (LISTSERV-TCP/IP release 16.0) with spool id 1990800 for LATEX-L@LISTSERV.UNI-HEIDELBERG.DE; Thu, 7 Jun 2012 11:55:18 +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 q579tIrF002698 for ; Thu, 7 Jun 2012 11:55:18 +0200 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 q579t4Cp022611 for ; Thu, 7 Jun 2012 11:55:11 +0200 Received: from mittelbach-online.de (p4FEE4F5E.dip.t-dialin.net [79.238.79.94]) by mrelayeu.kundenserver.de (node=mrbap4) with ESMTP (Nemesis) id 0Lxfpr-1RtCpX0bgx-016miQ; Thu, 07 Jun 2012 11:55:04 +0200 Received: by mittelbach-online.de (Postfix, from userid 783) id 645541080336; Thu, 7 Jun 2012 11:55:02 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on Marlowe X-Spam-Status: No, score=-1.4 required=5.0 tests=ALL_TRUSTED,AWL autolearn=unavailable version=3.2.5 Received: from [127.0.0.1] (unknown [192.168.123.100]) (Authenticated sender: frank) by mittelbach-online.de (Postfix) with ESMTPSA id 8177C108032C for ; Thu, 7 Jun 2012 11:55:01 +0200 (CEST) User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20120428 Thunderbird/12.0.1 MIME-Version: 1.0 References: <4FCE2B42.2090006@morningstar2.co.uk> <4FCFC6D7.20806@residenset.net> <4FCFD3C5.5050309@latex-project.org> <4FD0630C.6040501@residenset.net> Content-Type: text/plain; charset=ISO-8859-1; format=flowed X-Antivirus: avast! (VPS 120606-2, 06.06.2012), Outbound message X-Antivirus-Status: Clean X-Provags-ID: V02:K0:Hi1vz0MPSDsw2LjktIh1MXbBdV0UTsPgK+IVLizO5YJ b0bjz4L3dHO4lFCYoDmDW3oewQNT5cCPqkTXZnpPMteTYwV4kS dkxWMQj+t2WtTtuElcQKrYa30bHlViIwD2tXzogI1F8ulRXNdA tCzXLaqO41sAxN+Y3J8Nscu0834zP8BFawjQKIYh4m+nHeDn/O VESZ9KIixlpWBxGi1L24q3/zOr0kl3c5pOG6DqCshloDh8RMrP A90xJAoW86a7r0HW7Ecp/mKE7lsPlikrI8sVpjIToIbvdkbymM SR+8RclZu7zk/4bQ2ROXwvAcf1ftd8uDIyEDYFvFR+l2qmSpEd N9qk5wpSPmyMrDtQMA3pxUBPGcXylPJ9iy5g/DEP/ Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by listserv.uni-heidelberg.de id q579tIrF002707 Message-ID: <4FD07A72.7060000@latex-project.org> Date: Thu, 7 Jun 2012 11:54:58 +0200 Reply-To: Mailing list for the LaTeX3 project Sender: Mailing list for the LaTeX3 project From: Frank Mittelbach Subject: Re: Separating out 'public' and 'internal' functions/variables in LaTeX3 modules To: LATEX-L@listserv.uni-heidelberg.de In-Reply-To: <4FD0630C.6040501@residenset.net> Precedence: list List-Help: , List-Unsubscribe: List-Subscribe: List-Owner: List-Archive: X-GMX-Antispam: 0 (eXpurgate); Detail=5D7Q89H36p5x1RWm4Ldx8pHNe5ytInNcCyodlIgatTz//6TZFOiWhks2avNWUiluoedac T1QuRvfiSRQhaNiI3WpXdCToQD5pSiCQ/UjLhSXl/jV0pnQz16GBR3BHdoAhHfgXFkLyuWl1F1ej DVsasZKTECYZSiuUnJRpCAmC6mB+6ihVUUd1zNnjvb8c9aSvA6cpqpbVCQ=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: 7073 Am 07.06.2012 10:15, schrieb Lars Hellström: >>> Other approaches I would find preferable to %<@@=foo> is to use >>> %%% lines (as an homage to mft) or explicit commands in the .ins >>> file; after all, most source files don't contain code for >>> multiple l3-modules. >> >> To be honest I don't like that much but perhaps this is something >> one just needs getting used to. > > Note that these are "/other/ possibilities I would actually find > preferable to assignment-guards"; you snipped my preferred realm of > solution without comment. sorry that was after midnight. You mean > FWIW, an alternative way of embedding extra directives into a .dtx > file that I have in production is to designate a specific docstrip > module as containing code that is directives for the stripper. If one > picks the very crude syntax for "directives" that each codeline in > the @@ module sets the current @@ replacement then the above could > become > > %<@@>foo > %<*pkg> > \@@_function:nn % Will be converted to \__foo_function:nn > \l_@@_variable_tl % Will be converted to \l__foo_variable_tl > % Maybe I still don't quite understand directives but %<@@>foo doesn't really look much different to %<@@=foo> except that I think it is less readable but mileage may vary Perhaps you can expand on that once more? thanks frank