From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/88731 Path: news.gmane.org!not-for-mail From: Hans Hagen Newsgroups: gmane.comp.tex.context Subject: Re: How to get parameters in lua Date: Sun, 21 Sep 2014 13:04:20 +0200 Message-ID: <541EB0B4.7040502@wxs.nl> References: Reply-To: mailing list for ConTeXt users NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1411297489 24897 80.91.229.3 (21 Sep 2014 11:04:49 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 21 Sep 2014 11:04:49 +0000 (UTC) To: ntg-context@ntg.nl Original-X-From: ntg-context-bounces@ntg.nl Sun Sep 21 13:04:45 2014 Return-path: Envelope-to: gctc-ntg-context-518@m.gmane.org Original-Received: from balder.ntg.nl ([5.39.185.229]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XVewe-0007m5-08 for gctc-ntg-context-518@m.gmane.org; Sun, 21 Sep 2014 13:04:44 +0200 Original-Received: from localhost (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id 79AC710225 for ; Sun, 21 Sep 2014 13:04:43 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at balder.ntg.nl Original-Received: from balder.ntg.nl ([127.0.0.1]) by localhost (balder.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with LMTP id bqT5GLuJa-vg for ; Sun, 21 Sep 2014 13:04:43 +0200 (CEST) Original-Received: from balder.ntg.nl (localhost [IPv6:::1]) by balder.ntg.nl (Postfix) with ESMTP id A4C9D10226 for ; Sun, 21 Sep 2014 13:04:35 +0200 (CEST) Original-Received: from localhost (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id B9373101E7 for ; Sun, 21 Sep 2014 13:04:31 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at balder.ntg.nl Original-Received: from balder.ntg.nl ([127.0.0.1]) by localhost (balder.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with LMTP id hUyAUSLguqmv for ; Sun, 21 Sep 2014 13:04:25 +0200 (CEST) Original-Received: from filter2-utr.mf.surf.net (filter2-utr.mf.surf.net [195.169.124.153]) by balder.ntg.nl (Postfix) with ESMTP id 4325E101E1 for ; Sun, 21 Sep 2014 13:04:25 +0200 (CEST) Original-Received: from smtp.ziggozakelijk.nl (D57D1DA2.static.ziggozakelijk.nl [213.125.29.162]) by filter2-utr.mf.surf.net (8.14.3/8.14.3/Debian-9.4) with ESMTP id s8LBJhSE026915 for ; Sun, 21 Sep 2014 13:19:43 +0200 X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=10.100.1.103; Original-Received: from [10.100.1.103] (unverified [10.100.1.103]) by pragma-net.nl (SurgeMail 6.5a2) with ESMTP id 8767-1713362 for ; Sun, 21 Sep 2014 13:04:23 +0200 User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.6.0 In-Reply-To: X-Authenticated-User: hagen@controller-9 X-Bayes-Prob: 0.0001 (Score 0, tokens from: ntg-context@ntg.nl, base:default, @@RPTN) X-CanIt-Geo: ip=213.125.29.162; country=NL; region=Provincie Overijssel; city=Zwartsluis; latitude=52.6408; longitude=6.0694; http://maps.google.com/maps?q=52.6408,6.0694&z=6 X-CanItPRO-Stream: uu:ntg-context@ntg.nl (inherits from uu:default, base:default) X-Canit-Stats-ID: 04MRLjHgf - 981f564a46a6 - 20140921 (trained as not-spam) X-Scanned-By: CanIt (www . roaringpenguin . com) on 195.169.124.153 X-BeenThere: ntg-context@ntg.nl X-Mailman-Version: 2.1.14 Precedence: list List-Id: mailing list for ConTeXt users List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: ntg-context-bounces@ntg.nl Original-Sender: ntg-context-bounces@ntg.nl Xref: news.gmane.org gmane.comp.tex.context:88731 Archived-At: On 9/20/2014 2:45 PM, Christoph Reller wrote: > Two general questions arise (if your permit): > > 1. Where are the key-value pairs stored? > In your first solution you handle the key setting by explicitly calling > lua on every \setup call. It seems that all key-value pairs (that > are set with \installcommandhandler-generated \setup) are stored > on the TeX side and not on the lua side. Is this correct? yes and getting the macro meaning at the lua end is not efficient as it is tokenized > 2. Calling \ctxlua from lua. > I was tempted to add another level of indirection to your second (the > "synchronize") solution. I.e: in the lua code (in a separate lua file > to avoid the do ... end introduced by \startluacode .... \stopluacode) I > have: > > n = "" > v = "" > function getkey(name,value) > n = name > v = value > end > function myfun(parameters,content) > context([[\ctxlua{getkey("gkey","\elemparameter{gkey}")}]]) > context(" name=") > context(n) > context(", value=") > context(v) > end > > The above does not work because the value obtained "lags behind", i.e. > initially v will be "", on the second call v will have the value of the > first \setupelem[gkey=gval], and so on. I guess this lag is due to the > way TeX and lua communicate to each other? indeed, all printed to tex is injected into the input after the lua call ends > A small question: What do you mean by "there is no grouping in lua"? \bgroup ... some assignment at the tex end ... followed by setting it in lua \bgroup ... forgotten at the tex end ... still set at the lua end > Thank you anyway for your valuable input. > > Regards, Christoph > > > ___________________________________________________________________________________ > If your question is of interest to others as well, please add an entry to the Wiki! > > maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context > webpage : http://www.pragma-ade.nl / http://tex.aanhet.net > archive : http://foundry.supelec.fr/projects/contextrev/ > wiki : http://contextgarden.net > ___________________________________________________________________________________ > -- ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com | www.pragma-pod.nl ----------------------------------------------------------------- ___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___________________________________________________________________________________