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 oABCOVDI001725 for ; Thu, 11 Nov 2010 13:24:32 +0100 Received: (qmail 18437 invoked by alias); 11 Nov 2010 12:24:25 -0000 Delivered-To: GMX delivery to rainer.schoepf@gmx.net Received: (qmail invoked by alias); 11 Nov 2010 12:24:25 -0000 Received: from relay2.uni-heidelberg.de (EHLO relay2.uni-heidelberg.de) [129.206.210.211] by mx0.gmx.net (mx045) with SMTP; 11 Nov 2010 13:24:25 +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 oABCM5AV004239 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 11 Nov 2010 13:22:06 +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 oABCLXkW025351; Thu, 11 Nov 2010 13:22:46 +0100 Received: by LISTSERV.UNI-HEIDELBERG.DE (LISTSERV-TCP/IP release 16.0) with spool id 772317 for LATEX-L@LISTSERV.UNI-HEIDELBERG.DE; Thu, 11 Nov 2010 13:20:49 +0100 Received: from relay.uni-heidelberg.de (relay.uni-heidelberg.de [129.206.100.212]) by listserv.uni-heidelberg.de (8.13.1/8.13.1) with ESMTP id oABCKnEo006537 for ; Thu, 11 Nov 2010 13:20:49 +0100 Received: from ueamailgate02.uea.ac.uk (ueamailgate02.uea.ac.uk [139.222.131.185]) by relay.uni-heidelberg.de (8.14.1/8.14.1) with ESMTP id oABCJshh001873 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Thu, 11 Nov 2010 13:19:58 +0100 Received: from ueams01.uea.ac.uk (ueams01.uea.ac.uk [139.222.131.78]) by ueamailgate02.uea.ac.uk (8.13.8/8.13.8) with ESMTP id oABCHRnL016223 for ; Thu, 11 Nov 2010 12:17:27 GMT Received: from [139.222.114.143] by ueams01.uea.ac.uk with esmtp (Exim 4.69) (envelope-from ) id 1PGW5j-0005eN-9X; Thu, 11 Nov 2010 12:17:23 +0000 User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-GB; rv:1.9.2.12) Gecko/20101027 Thunderbird/3.1.6 MIME-Version: 1.0 References: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Bayes-Prob: 0.0001 (Score 0, tokens from: @@RPTN, outgoing) X-CanIt-Geo: ip=139.222.131.78; country=GB; region=I9; city=Norwich; latitude=52.6333; longitude=1.3000; http://maps.google.com/maps?q=52.6333,1.3000&z=6 X-CanItPRO-Stream: UEA:outgoing (inherits from UEA:default,base:default) X-Canit-Stats-ID: 62787830 - 439a290124ad - 20101111 X-Scanned-By: CanIt (www . roaringpenguin . com) on 139.222.131.185 Message-ID: <4CDBDED7.6080607@morningstar2.co.uk> Date: Thu, 11 Nov 2010 12:17:27 +0000 Reply-To: Mailing list for the LaTeX3 project Sender: Mailing list for the LaTeX3 project From: Joseph Wright Subject: Re: Rewriting polyglossia in LaTeX3 To: LATEX-L@listserv.uni-heidelberg.de In-Reply-To: Precedence: list List-Help: , List-Unsubscribe: List-Subscribe: List-Owner: List-Archive: X-GMX-Antispam: 0 (Mail was not recognized as spam); Detail=5D7Q89H36p77e5KAPs1l6v/Sb97LojnDtMgfETrECMLUO9erHzOJe7j3G660N4yBY6XHH YPYtmQj6mbYUTZ3LnaFANLWrKE7/wIDhnv+VrW0hxOapLRUwuY9oBqo5h+Dh9B42XlFTMTKlXDju GaV8Q==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: 6475 On 11/11/2010 12:06, Rémy Oudompheng wrote: > Another l3keys puzzle : the following code > > \documentclass{minimal} > \usepackage{expl3} > \begin{document} > \ExplSyntaxOn > \keys_define:nn {module} { > a .default:n = Alice , > a .code:n = Hello #1 , > } > \keys_set:nn {module} {a} > \ExplSyntaxOff > \end{document} > > produces "Hello ", but if I swap the "default:n" and "code:n" line, I > get "Hello Alice". > > The example from the documentation (latex3-source.pdf) also puts the > "default:n" line last. Is that mandatory ? At least in the current implementation, .code:n will 'reset' any other properties of a key. So setting "a .code:n = Hello #1" will delete any default value. I guess that this needs more explanation. Now, you might wonder why this happens. The thinking when I wrote this was that if you change the code in some arbitrary way then any other properties may no longer be valid. For example, if you do something like a .value_forbidden: , a .code:n = Hello #1 , then it's not exactly obvious what should happen about 'forbidden' property. -- Joseph Wright