From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/71914 Path: news.gmane.org!not-for-mail From: Hans Hagen Newsgroups: gmane.comp.tex.context Subject: Re: xml and lua again Date: Mon, 24 Oct 2011 12:17:40 +0200 Message-ID: <4EA53B44.1040105@wxs.nl> References: <4EA2F34E.6080202@uni-bonn.de> Reply-To: mailing list for ConTeXt users NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit X-Trace: dough.gmane.org 1319451477 15280 80.91.229.12 (24 Oct 2011 10:17:57 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 24 Oct 2011 10:17:57 +0000 (UTC) Cc: "Thomas A. Schmitz" To: mailing list for ConTeXt users Original-X-From: ntg-context-bounces@ntg.nl Mon Oct 24 12:17:53 2011 Return-path: Envelope-to: gctc-ntg-context-518@m.gmane.org Original-Received: from balder.ntg.nl ([195.12.62.10]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1RIHbM-0006eQ-Aq for gctc-ntg-context-518@m.gmane.org; Mon, 24 Oct 2011 12:17:52 +0200 Original-Received: from localhost (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id 6FACFCB092; Mon, 24 Oct 2011 12:17:51 +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 qsurOMX2dlIo; Mon, 24 Oct 2011 12:17:48 +0200 (CEST) Original-Received: from balder.ntg.nl (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id A950CCB089; Mon, 24 Oct 2011 12:17:48 +0200 (CEST) Original-Received: from localhost (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id 0C493CB089 for ; Mon, 24 Oct 2011 12:17:47 +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 0LVswo6tEJHS for ; Mon, 24 Oct 2011 12:17:44 +0200 (CEST) Original-Received: from filter1-til.mf.surf.net (filter1-til.mf.surf.net [194.171.167.217]) by balder.ntg.nl (Postfix) with ESMTP id 8E5E4CB08A for ; Mon, 24 Oct 2011 12:17:43 +0200 (CEST) Original-Received: from smtp.ziggozakelijk.nl (D57D1DA2.static.ziggozakelijk.nl [213.125.29.162]) by filter1-til.mf.surf.net (8.14.3/8.14.3/Debian-5+lenny1) with ESMTP id p9OAHgcY012112 for ; Mon, 24 Oct 2011 12:17:42 +0200 X-Default-Received-SPF: pass (skip=loggedin (res=PASS)) x-ip-name=10.100.1.100; Original-Received: from [10.100.1.100] (unverified [10.100.1.100]) by pragma-net.nl (SurgeMail 5.3h2) with ESMTP (TLS) id 1376-1713362 for multiple; Mon, 24 Oct 2011 12:17:39 +0200 User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:7.0.1) Gecko/20110929 Thunderbird/7.0.1 In-Reply-To: <4EA2F34E.6080202@uni-bonn.de> X-Authenticated-User: hagen@controller-9 X-Bayes-Prob: 0.0001 (Score 0, tokens from: @@RPTN) X-CanIt-Geo: ip=213.125.29.162; country=NL; region=11; city=Den Haag; latitude=52.0833; longitude=4.3000; http://maps.google.com/maps?q=52.0833,4.3000&z=6 X-CanItPRO-Stream: uu:ntg-context@ntg.nl (inherits from uu:default, base:default) X-Canit-Stats-ID: 08FMyhGaN - ad37b2c9e307 - 20111024 X-Scanned-By: CanIt (www . roaringpenguin . com) on 194.171.167.217 X-BeenThere: ntg-context@ntg.nl X-Mailman-Version: 2.1.12 Precedence: list List-Id: mailing list for ConTeXt users List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: ntg-context-bounces@ntg.nl Errors-To: ntg-context-bounces@ntg.nl Xref: news.gmane.org gmane.comp.tex.context:71914 Archived-At: On 22-10-2011 18:46, Thomas A. Schmitz wrote: > Hi all, > > again, I'm playing a bit with processing my xml in lua. I want a simple > interface for processing tables (I don't need all the power and > complexity of cals tables and want to learn something in the process). > And I thought that collecting the setups in lua might be the easiest > way, but so far, I haven't been successful. Here's an example: > > \startbuffer[test] > > > > 1 > 2 > 3 > 4 > > > 5 > 6 > 7 > 8 > > > > \stopbuffer > > \startxmlsetups xml:testsetups > \xmlsetsetup{main}{a|nattable|tr|td|}{xml:*} > \stopxmlsetups > > \xmlregistersetup{xml:testsetups} > > \startxmlsetups xml:a > \xmlflush{#1} > \stopxmlsetups > > \startxmlsetups xml:nattable > \startluacode > framestate = lxml.att("#1", "frame") > context(framestate) > context(true) > context.placefigure( { "here" }, "none" , function() > context.setupTABLE( { "frame=on" } ) > context.bTABLE() > context.xmlflush("#1") > context.eTABLE() > end) > \stopluacode > \stopxmlsetups > > \startxmlsetups xml:tr > \startluacode > context.bTR() > context.xmlflush("#1") > context.eTR() > \stopluacode > \stopxmlsetups > > \startxmlsetups xml:td > \startluacode > context.bTD() > context.xmlflush("#1") > context.eTD() > \stopluacode > \stopxmlsetups > > \starttext > \xmlprocessbuffer{main}{test}{} > \stoptext > > question: I have the value "on" in the lua variable "framestate." But > how can I pass this on to the line > context.setupTABLE( { "frame=on" } )? > I tried something like > context.setupTABLE( { "frame=" .. framestate } ) > but that doesn't work. Any suggestions? why so complex \startbuffer[test] 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 \stopbuffer \startxmlsetups xml:testsetups \xmlsetsetup{main}{a|nattable|tr|td|}{xml:*} \stopxmlsetups \xmlregistersetup{xml:testsetups} \startxmlsetups xml:a \xmlflush{#1} \stopxmlsetups \xmlmapvalue {nattable:frame} {on} {on} \xmlmapvalue {nattable:frame} {yes} {on} \xmlmapvalue {nattable:frame} {off} {off} \xmlmapvalue {nattable:frame} {no} {off} \startxmlsetups xml:nattable \placefigure [here,none] {} { \setupTABLE[frame=\xmlval{nattable:frame}{\xmlatt{#1}{frame}}{on}] \bTABLE \xmlflush{#1} \eTABLE } \stopxmlsetups \startxmlsetups xml:tr \bTR \xmlflush{#1} \eTR \stopxmlsetups \startxmlsetups xml:td \bTD \xmlflush{#1} \eTD \stopxmlsetups \starttext \xmlprocessbuffer{main}{test}{} \stoptext In x-cals.lua / mkiv you can see an example of pure lua solution. It boils down to applying a function the the whole table element. Hans ----------------------------------------------------------------- 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 ___________________________________________________________________________________