From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/67707 Path: news.gmane.org!not-for-mail From: Florian Wobbe Newsgroups: gmane.comp.tex.context Subject: Re: two problems with natural tables Date: Mon, 11 Apr 2011 09:57:51 +0200 Message-ID: <92CD2632-CADB-4D6E-9581-E52E3C00FAF7@awi.de> References: <16614D98-D85B-4AE1-B4F3-4B7FA049B0C6@awi.de> Reply-To: mailing list for ConTeXt users NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Boundary_(ID_N+XtzT5f/LjdPUuaHi+gvw)" X-Trace: dough.gmane.org 1302508701 16886 80.91.229.12 (11 Apr 2011 07:58:21 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 11 Apr 2011 07:58:21 +0000 (UTC) To: mailing list for ConTeXt users Original-X-From: ntg-context-bounces@ntg.nl Mon Apr 11 09:58:17 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 1Q9C0m-0001jk-Kp for gctc-ntg-context-518@m.gmane.org; Mon, 11 Apr 2011 09:58:16 +0200 Original-Received: from localhost (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id A2590CABB1; Mon, 11 Apr 2011 09:58:15 +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 isRRgXRyl3Jh; Mon, 11 Apr 2011 09:58:12 +0200 (CEST) Original-Received: from balder.ntg.nl (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id BB565CABB8; Mon, 11 Apr 2011 09:58:12 +0200 (CEST) Original-Received: from localhost (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id A97C1CABB8 for ; Mon, 11 Apr 2011 09:58:10 +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 vm-DL9vfs+li for ; Mon, 11 Apr 2011 09:57:59 +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 13E4FCABB1 for ; Mon, 11 Apr 2011 09:57:59 +0200 (CEST) Original-Received: from mails3.awi.de (mails3.awi.de [134.1.2.14]) by filter1-til.mf.surf.net (8.14.3/8.14.3/Debian-5+lenny1) with ESMTP id p3B7vwag008271 for ; Mon, 11 Apr 2011 09:57:58 +0200 Original-Received: from localhost (localhost [127.0.0.1]) by mails3.awi.de (Postfix) with ESMTP id C7E1B1124BB for ; Mon, 11 Apr 2011 09:57:57 +0200 (MEST) X-Virus-Scanned: amavisd-new at awi.de Original-Received: from localhost ([127.0.0.1]) by localhost (mails3.awi.de [127.0.0.1]) (amavisd-new, port 10025) with ESMTP id 5BKVcwAN+G0B for ; Mon, 11 Apr 2011 09:57:52 +0200 (MEST) Original-Received: from msg.awi.de (msg.awi.de [134.1.3.16]) by mails3.awi.de (Postfix) with ESMTP id 8256E1124AF for ; Mon, 11 Apr 2011 09:57:52 +0200 (MEST) Original-Received: from [192.168.22.12] ([unknown] [77.10.140.220]) by msg.awi.de (Sun Java(tm) System Messaging Server 7u3-12.01 64bit (built Oct 15 2009)) with ESMTPSA id <0LJH004P7A4FIO70@msg.awi.de> for ntg-context@ntg.nl; Mon, 11 Apr 2011 09:57:52 +0200 (MEST) In-reply-to: <16614D98-D85B-4AE1-B4F3-4B7FA049B0C6@awi.de> X-Mailer: Apple Mail (2.1084) X-Bayes-Prob: 0.1443 (Score 0, tokens from: @@RPTN) X-CanIt-Geo: ip=134.1.2.14; country=DE; region=03; city=Bremerhaven; latitude=53.5500; longitude=8.5833; http://maps.google.com/maps?q=53.5500,8.5833&z=6 X-CanItPRO-Stream: uu:ntg-context@ntg.nl (inherits from uu:default, base:default) X-Canit-Stats-ID: 08Eu7VWbT - a48fdc375c0e - 20110411 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:67707 Archived-At: --Boundary_(ID_N+XtzT5f/LjdPUuaHi+gvw) Content-type: text/plain; CHARSET=US-ASCII Content-transfer-encoding: 7BIT > 1) I tried the following minimal example from http://archive.contextgarden.net/message/20110109.151431.f774696a.en.html > > \placetable[split]{Test} > {\bTABLE[split=yes] > \dorecurse{60}{ > \bTR \bTD hello \eTD \eTR > } > \eTABLE} > > with the current context versions which works fine. I have to correct myself. This still does not work with interactions (\setupinteraction [state=start]). > I could determine the context version at which my big document fails: 2010.12.22 14:07. The example still works in 2010.12.21 10:50. I attached the changes in code in strc-flt.mkiv and tabl-tsp.mkiv that break the above split table example. I hope this helps to identify the problem so it can be fixed in the current beta... Thanks, Florian --Boundary_(ID_N+XtzT5f/LjdPUuaHi+gvw) Content-type: application/octet-stream; x-unix-mode=0640; name=flt-tabl.diff Content-transfer-encoding: quoted-printable Content-disposition: attachment; filename=flt-tabl.diff ---=20texmf-context/tex/context/base/strc-flt.mkiv.old=0A+++=20= texmf-context/tex/context/base/strc-flt.mkiv=0A@@=20-21,9=20+21,9=20@@=0A= =20%D=20strc-flt.tex=20and=20page-flt.mkiv=20cq.=20page-flt.mkii.=0A=20=0A= =20\ifdefined\addlocalbackgroundtobox\else=20= \def\addlocalbackgroundtobox{\resetglobal\gobbleoneargument}=20\fi=0A-=0C= =0A+=0A=20\unexpanded\def\placefloats{\doflushfloats}=20=20%=20keep=20= this=20one=0A-=0C=0A+=0A=20\let\currentfloat\empty=0A=20=0A=20= \def\letfloatparameter=20=20=20= #1{\expandafter\let\csname\??fl\currentfloat#1\endcsname}=0A@@=20-120,7=20= +120,8=20@@=0A=20=20%=20\c!separator=3D\@@koseparator,=0A=20=20%=20= \c!starter=3D\@@kostarter,=0A=20=20%=20\c!stopper=3D\@@kostopper,=0A-=20= %=20\c!suffix=3D\floatcaptionsuffix,=20%=20hook=0A+=20=20=20= \c!suffixseparator=3D,=20%=20currently=20rather=20hard=20coded=0A+=20=20=20= \c!suffix=3D\floatcaptionsuffix,=0A=20=20=20=20\c!distance=3D1em,=0A=20=20= =20=20\c!conversion=3D\v!numbers,=0A=20=20=20=20\c!command=3D]=0A@@=20= -301,11=20+302,27=20@@=0A=20=0A=20= \installstructurelistprocessor{float}{\usestructurelistprocessor{number+ti= tle}}=0A=20=0A+%=20\def\thecurrentfloatnumber=0A+%=20=20=20= {\ifnofloatcaption=20\else=20\ifnofloatnumber=20\else=0A+%=20=20=20=20=20= =20\ifx\currentfloatnumber\relax\else=0A+%=20=20=20=20=20=20=20=20= \dostarttagged\t!floattag\empty=0A+%=20=20=20=20=20=20=20=20= \labeltexts\currentfloat{\ctxlua{structures.lists.savedprefixednumber("\cu= rrentfloat",\currentfloatnumber)}}%=0A+%=20=20=20=20=20=20=20=20= \dostoptagged=0A+%=20=20=20=20=20=20\fi=0A+%=20=20=20=20\fi=20\fi}=0A+=0A= +\unexpanded\def\thecurrentfloatnumbersuffix=0A+=20=20= {\doifsomething{\floatcaptionparameter\c!suffix}=0A+=20=20=20=20=20= {\floatcaptionparameter\c!suffixseparator=0A+=20=20=20=20=20=20= \floatcaptionparameter\c!suffix}}=0A+=0A=20\def\thecurrentfloatnumber=0A=20= =20=20{\ifnofloatcaption=20\else=20\ifnofloatnumber=20\else=0A=20=20=20=20= =20=20\ifx\currentfloatnumber\relax\else=0A=20=20=20=20=20=20=20=20= \dostarttagged\t!floattag\empty=0A-=20=20=20=20=20=20=20= \labeltexts\currentfloat{\ctxlua{structures.lists.savedprefixednumber("\cu= rrentfloat",\currentfloatnumber)}}%=0A+=20=20=20=20=20=20=20= \labeltexts\currentfloat=0A+=20=20=20=20=20=20=20=20=20=20= {\ctxlua{structures.lists.savedprefixednumber("\currentfloat",\currentfloa= tnumber)}%=0A+=20=20=20=20=20=20=20=20=20=20=20= \thecurrentfloatnumbersuffix}%=0A=20=20=20=20=20=20=20=20\dostoptagged=0A= =20=20=20=20=20=20\fi=0A=20=20=20=20\fi=20\fi}=0A@@=20-506,7=20+523,7=20= @@=0A=20=0A=20\newconditional\retainfloatnumber=0A=20=0A= -\def\preparefloatnumber#1%=0A+\def\preparefloatnumber#1%=20use=20in=20= special=20case=20see=20below=0A=20=20=20{\xdef\floatcaptionnumber{#1}%=0A= =20=20=20=20\doifelsenodelocation{\v!float\@@thenumber{#1}}=0A=20=20=20=20= =20=20\donothing=20{\nodelocationmode\zerocount}%=0A@@=20-755,6=20+772,8=20= @@=0A=20=20=20=20=20=20attr=20\destinationattribute=20= \currentfloatattribute=0A=20=20=20=20\fi=20\fi=20\fi}=0A=20=0A= +\newconditional\usesamefloatnumber=0A+=0A=20= \long\def\docompletefloat#1#2#3#4#5%=20#1:floatclass=20#2:reference=20= #3:optionlist=20#4:caption=20#5:box=20number=0A=20=20=20= {\presetfloatvariables{#1}{#3}{#2}{#5}%=20check=20this=20one=0A=20=20=20=20= \bgroup=0A@@=20-762,24=20+781,32=20@@=0A=20=20=20=20%=0A=20=20=20=20%=20= \dofloatcomponent[\c!name=3D#1,\c!reference=3D#2,\c!bookmark=3D,\c!title=3D= {#4}][]%=20ifnofloatnumber=20ifnofloatcaption=20\tracefloatnumber{#1}%=0A= =20=20=20=20%=0A-=20=20=20\dostructurecountercomponent=0A-=20=20=20=20=20= {float}%=0A-=20=20=20=20=20\getcaptionparameters=0A-=20=20=20=20=20= \floatcaptionparameter=0A-=20=20=20=20=20\detokenizedcaptionparameter=0A= -=20=20=20=20=20\relax=0A-=20=20=20=20=20\relax=0A-=20=20=20=20=20\relax=0A= -=20=20=20=20=20= [\c!name=3D\currentfloat,\s!counter=3D\@@thestructurecounter\currentfloat,= %=0A-=20=20=20=20=20=20\s!hascaption=3D\ifnofloatcaption=20= \v!no\else\v!yes\fi,%=0A-=20=20=20=20=20=20\s!hasnumber=3D\ifnofloatnumber= =20=20=20\v!no\else\v!yes\fi,%=0A-=20=20=20=20=20=20= \s!hastitle=3D\ifemptyfloatcaption\v!no\else\v!yes\fi,%=0A-=20=20=20=20=20= =20\c!reference=3D#2,\c!title=3D{#4},\c!bookmark=3D]%=0A-=20=20=20=20=20= []%=0A-=20=20=20\globallet\currentfloatnumber=20=20=20=20=20= \laststructurecounternumber=0A-=20=20=20\globallet\currentfloatattribute=20= =20\laststructurecounterattribute=0A-=20=20=20= \globallet\currentfloatsynchronize\laststructurecountersynchronize=0A+=20= =20=20\ifconditional\usesamefloatnumber=0A+=20=20=20=20=20=20= \globallet\currentfloatnumber=20=20=20=20=20\previousfloatnumber=0A+=20=20= =20=20=20=20\globallet\currentfloatattribute=20=20\empty=0A+=20=20=20=20=20= =20\globallet\currentfloatsynchronize\relax=0A+=20=20=20\else=0A+=20=20=20= =20=20\dostructurecountercomponent=0A+=20=20=20=20=20=20=20{float}%=0A+=20= =20=20=20=20=20=20\getcaptionparameters=0A+=20=20=20=20=20=20=20= \floatcaptionparameter=0A+=20=20=20=20=20=20=20= \detokenizedcaptionparameter=0A+=20=20=20=20=20=20=20\relax=0A+=20=20=20=20= =20=20=20\relax=0A+=20=20=20=20=20=20=20\relax=0A+=20=20=20=20=20=20=20= [\c!name=3D\currentfloat,\s!counter=3D\@@thestructurecounter\currentfloat,= %=0A+=20=20=20=20=20=20=20=20\s!hascaption=3D\ifnofloatcaption=20= \v!no\else\v!yes\fi,%=0A+=20=20=20=20=20=20=20=20= \s!hasnumber=3D\ifnofloatnumber=20=20=20\v!no\else\v!yes\fi,%=0A+=20=20=20= =20=20=20=20=20\s!hastitle=3D\ifemptyfloatcaption\v!no\else\v!yes\fi,%=0A= +=20=20=20=20=20=20=20=20\c!reference=3D#2,\c!title=3D{#4},\c!bookmark=3D]= %=0A+=20=20=20=20=20=20=20[]%=0A+=20=20=20=20=20= \globallet\previousfloatnumber=20=20=20=20\laststructurecounternumber=0A= +=20=20=20=20=20\globallet\currentfloatnumber=20=20=20=20=20= \laststructurecounternumber=0A+=20=20=20=20=20= \globallet\currentfloatattribute=20=20\laststructurecounterattribute=0A+=20= =20=20=20=20= \globallet\currentfloatsynchronize\laststructurecountersynchronize=0A+=20= =20=20\fi=0A=20=20=20=20%=0A+=20=20=20= \global\setfalse\usesamefloatnumber=20%=20one=20shot=0A=20=20=20=20%=20= check=20float=20box=0A=20=20=20=20\setnaturalfloatdimensions#5%=0A=20=20=20= =20\global\setbox\floatbox\vbox{\floatparameter\c!command{\box#5}}%=0A@@=20= -833,7=20+860,7=20@@=0A=20=20=20=20\fi}=0A=20=0A=20\appendtoks=0A-=20=20= \let\rightorleftpageaction\doifrightpagefloatelse=0A+=20=20=20=20= \let\rightorleftpageaction\doifrightpagefloatelse=0A=20\to=20= \everyinsidefloat=0A=20=0A=20\newif\ifextrafloatactions=20= \extrafloatactionstrue=0A---=20= texmf-context/tex/context/base/tabl-tsp.mkiv.old=0A+++=20= texmf-context/tex/context/base/tabl-tsp.mkiv=0A@@=20-13,14=20+13,11=20@@=0A= =20=0A=20\writestatus{loading}{ConTeXt=20Table=20Macros=20/=20Splitting}=0A= =20=0A-%D=20The=20code=20in=20this=20file=20is=20move=20here=20from=20= other=20places.=0A+%D=20The=20code=20in=20this=20file=20is=20move=20here=20= from=20other=20places=20and=20needs=0A+%D=20a=20mkiv=20cleanup.=0A=20=0A=20= \unprotect=0A=20=0A-%=20only=20to=20be=20used=20with=20single=20tokens=20= (will=20be=20prim)=0A-=0A-\ifx\htdp\undefined=20= \def\htdp#1{\dimexpr\ht#1+\dp#1\relax}=20\fi=0A-=0A=20%D=20Although=20= the=20name=20resembles=20floats,=20and=20therefore=20this=20should=20be=0A= =20%D=20a=20page=20module,=20we=20decided=20to=20make=20it=20core=20= functionality=20because=20the=0A=20%D=20table=20code=20depends=20on=20= it.=20Othrwise=20there=20would=20be=20too=20much=0A@@=20-29,12=20+26,9=20= @@=0A=20=0A=20%=20\splitfloat=20[settings]=20{\placetable[optional=20= args]{test}}=20{content}=0A=20=0A-%=20= \def\s!noftablesplits{nofsplittables}=0A+%=20there=20is=20no=20need=20= for=20a=20tracked=20structure=20number=20here=0A=20=0A-\definenumber=20%=20= we=20need=20a=20nicer=20name=20like=20nofsplittables,=20we=20then=20also=20= need=20to=20set=20\s!parent=0A-=20=20[\??si]=0A-=20=20= [\c!way=3D\v!by\v!text,=0A-=20=20=20\c!conversion=3D\@@siconversion]=0A= +\newcount\noffloatssplits=0A=20=0A=20= \unexpanded\def\setupfloatsplitting=0A=20=20=20= {\dodoubleargument\getparameters[\??si]}=0A@@=20-59,8=20+53,8=20@@=0A=20=20= =20=20\insidefloattrue=0A=20=20=20=20\insidesplitfloattrue=0A=20=20=20=20= \getparameters[\??si][#1]%=0A-=20=20=20\resetnumber[\??si]%=0A-=20=20=20= \def\floatcaptionsuffix{\convertednumber[\??si]}%=0A+=20=20=20= \global\noffloatssplits\zerocount=0A+=20=20=20= \def\floatcaptionsuffix{\convertnumber\@@siconversion\noffloatssplits}%=0A= =20=20=20=20\let\extrasplitfloatlines\@@silines=0A=20=20=20=20= \the\everysplitfloatsetup=0A=20=20=20=20\def\splitfloatcommand{#2}%=0A@@=20= -114,14=20+108,19=20@@=0A=20=20=20=20=20=20=20\dontcomplain=0A=20=20=20=20= =20=20=20\global\settrue\splitfloatdone=0A=20=20=20=20=20=20=20= \nodelocationmode\zerocount=20%=20bypass=20auto-renumbering=0A-=20=20=20=20= =20=20\incrementnumber[\??si]%=0A-=20=20=20=20=20=20= \ifcase\rawnumber[\??si]\or=20\ifconditional\onlyonesplitofffloat=0A-=20=20= =20=20=20=20=20=20\let\floatcaptionsuffix\empty=0A-=20=20=20=20=20=20\fi=20= \fi=0A+=20=20=20=20=20=20\global\advance\noffloatssplits\plusone=0A+=20=20= =20=20=20=20\ifcase\noffloatssplits\relax=0A+=20=20=20=20=20=20\or=0A+=20= =20=20=20=20=20=20=20\ifconditional\onlyonesplitofffloat=0A+=20=20=20=20=20= =20=20=20=20=20\let\floatcaptionsuffix\empty=0A+=20=20=20=20=20=20=20=20= \fi=0A+=20=20=20=20=20=20\else=0A+=20=20=20=20=20=20=20=20= \global\settrue\usesamefloatnumber=20%=20one=20shot=0A+=20=20=20=20=20=20= \fi=0A=20=20=20=20=20=20=20\bgroup=0A=20=20=20=20=20=20=20= \ifconditional\somenextplitofffloat=0A=20=20=20=20=20=20=20=20=20= \settrue\retainfloatnumber=0A-\notesenabledfalse=20%=20best=20here,=20= experimental,=20brrr;=20test=20with=20note=20in=20caption=0A+=20=20=20=20= =20=20=20=20\notesenabledfalse=20%=20best=20here,=20experimental,=20= brrr;=20test=20with=20note=20in=20caption=0A=20=20=20=20=20=20=20\else=0A= =20=20=20=20=20=20=20=20=20\setfalse\retainfloatnumber=0A=20=20=20=20=20=20= =20\fi=0A= --Boundary_(ID_N+XtzT5f/LjdPUuaHi+gvw) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline ___________________________________________________________________________________ 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 ___________________________________________________________________________________ --Boundary_(ID_N+XtzT5f/LjdPUuaHi+gvw)--