From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/28625 Path: news.gmane.org!not-for-mail From: Hans Hagen Newsgroups: gmane.comp.tex.context Subject: splitting tables Date: Fri, 16 Jun 2006 23:14:32 +0200 Message-ID: <44931F38.8030000@wxs.nl> Reply-To: mailing list for ConTeXt users NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Trace: sea.gmane.org 1150492493 17177 80.91.229.2 (16 Jun 2006 21:14:53 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Fri, 16 Jun 2006 21:14:53 +0000 (UTC) Original-X-From: ntg-context-bounces@ntg.nl Fri Jun 16 23:14:51 2006 Return-path: Envelope-to: gctc-ntg-context-518@m.gmane.org Original-Received: from ronja.vet.uu.nl ([131.211.172.88] helo=ronja.ntg.nl) by ciao.gmane.org with esmtp (Exim 4.43) id 1FrLeQ-0005id-L8 for gctc-ntg-context-518@m.gmane.org; Fri, 16 Jun 2006 23:14:46 +0200 Original-Received: from localhost (localhost [127.0.0.1]) by ronja.ntg.nl (Postfix) with ESMTP id B450912806; Fri, 16 Jun 2006 23:14:46 +0200 (CEST) Original-Received: from ronja.ntg.nl ([127.0.0.1]) by localhost (smtp.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 08092-03; Fri, 16 Jun 2006 23:14:40 +0200 (CEST) Original-Received: from ronja.vet.uu.nl (localhost [127.0.0.1]) by ronja.ntg.nl (Postfix) with ESMTP id 76C5612803; Fri, 16 Jun 2006 23:14:40 +0200 (CEST) Original-Received: from localhost (localhost [127.0.0.1]) by ronja.ntg.nl (Postfix) with ESMTP id D8A6F12803 for ; Fri, 16 Jun 2006 23:14:38 +0200 (CEST) Original-Received: from ronja.ntg.nl ([127.0.0.1]) by localhost (smtp.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 06618-05-5 for ; Fri, 16 Jun 2006 23:14:37 +0200 (CEST) Original-Received: from mail.pragma-ade.net (dsl-083-247-100-017.solcon.nl [83.247.100.17]) by ronja.ntg.nl (Postfix) with SMTP id 2B4AF12802 for ; Fri, 16 Jun 2006 23:14:36 +0200 (CEST) Original-Received: from [10.100.1.102] (unverified [10.100.1.102]) by controller-1 (SurgeMail 3.5b3) with ESMTP id 22262 for ; Sat, 17 Jun 2006 01:14:36 +0400 User-Agent: Thunderbird 1.5.0.4 (Windows/20060516) Original-To: c X-Server: High Performance Mail Server - http://surgemail.com r=-274017400 X-Authenticated-User: hagen@controller-1 X-Virus-Scanned: amavisd-new at ntg.nl X-BeenThere: ntg-context@ntg.nl X-Mailman-Version: 2.1.7 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 X-Virus-Scanned: amavisd-new at ntg.nl Xref: news.gmane.org gmane.comp.tex.context:28625 Archived-At: Hi, I will upload an alpha release with a cleaned up table (float) split mechanism. The splitter works for all three table types, either or not in floats with repeated head (and tail) sections, optionally with automatic (may become default) caption height detection etc. It works ok on some simple test files, but I have no time to test more obscure situations. I'm not that sure if everything is downward compatible, but splitting is always tricky (and demanded some intervention) anyway. So, if you are using this kind of functionality, go ahead, download and test .. \setupTABLE[split=repeat] \input tufte \endgraf \splitfloat[lines=11] {\placetable{\dorecurse{10}{test\recurselevel\endgraf}}} {\bTABLE\dorecurse{100}{\bTR \bTD test \eTD \eTR}\eTABLE} \input tufte \page \input tufte \endgraf \splitfloat[lines=0] {} {\bTABLE\dorecurse{100}{\bTR \bTD test \eTD \eTR}\eTABLE} \input tufte \endgraf \page \input tufte \endgraf \bTABLE\dorecurse{100}{\bTR \bTD test \eTD \eTR}\eTABLE \input tufte \page \setuptabulate[split=yes] \input tufte \endgraf \splitfloat[lines=11] {\placetable{\dorecurse{10}{test\recurselevel\endgraf}}} {\starttabulate\dorecurse{200}{\NC test \NC test \NC \NR}\stoptabulate} \input tufte \page \input tufte \endgraf \splitfloat[lines=0] {} {\starttabulate\dorecurse{200}{\NC test \NC test \NC \NR}\stoptabulate} \input tufte \page \input tufte \endgraf \starttabulate\dorecurse{200}{\NC test \NC test \NC \NR}\stoptabulate \input tufte \page \setuptables[split=yes] \newtoks\TestToks \TestToks\emptytoks \appendtoks\starttablehead\to\TestToks \dorecurse{3}{\appendtoks\VL head \VL head \VL \SR\to\TestToks} \appendtoks\stoptablehead\to\TestToks \appendtoks\starttabletail\to\TestToks \dorecurse{3}{\appendtoks\VL tail \VL tail \VL \SR\to\TestToks} \appendtoks\stoptabletail\to\TestToks \appendtoks\starttables[|c|c|]\to\TestToks \dorecurse{100}{\appendtoks\VL test \VL test \VL \SR\to\TestToks} \appendtoks\stoptables\to\TestToks \input tufte \endgraf \splitfloat[lines=auto] % [lines=11] {\placetable{\dorecurse{10}{test\recurselevel\endgraf}}} {\the\TestToks} \input tufte \page \input tufte \endgraf \splitfloat[lines=0] {} {\the\TestToks} \input tufte \page \input tufte \endgraf \the\TestToks \input tufte \page Watch the lines=auto option! Mechanisms like this will never be perfect, but I think that the cleanup is not that bad. Especially the \startable bits and pieces needs some more testing, but then, i need to cleanup up that code anyway (write a cleaner version of that whole table mechanism). Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------