Gilles Pérez-Lambert wrote:
Hello,
Following Hans's presentation on ConTeXt in EuroTeX 2005, I started to use
columnsets. I'm really really impressed. Columnsets are easy to set up and
wonderfully powerful.
Nevertheless, I have some problems with columnsets... On the page:
http://typo.free.fr/context/
you'll find the source file (Bogues.tex) and the output (Bogues.pdf)
or a zip file of them.
Some info on my config:
texexec : TeXExec 5.2.5 - ConTeXt / PRAGMA ADE 1997-2005
texutil : TeXUtil 9.0.0 - ConTeXt / PRAGMA ADE 1992-2004
tex : pdfeTeX, 3.141592-1.21a-2.2 (Web2C 7.5.4)
context : ver: 2005.03.16
cont-en : ver: 2005.03.16 fmt: 2005.3.19 mes: english
cont-nl : ver: 2005.01.31 fmt: 2005.3.19 mes: dutch
Pages
on the
Bogues.pdf Description
--
1 When a title (here: \Article{Le titre})
is inside a columnsetspan, header=empty
doesn't work.
you probably means 'high'
well, that's kind of tricky and i need to look into that carefully
below is another way of doing it (OTRSET patch)
6 The right column continues in the footer.
10 Same problem.
17 a line from the left column is reported on
the right column even if there is room for
it on the left column.
dunno, have to look into it (quite tricky to sync things in column sets;
stretching tex to the limit)
By the way, always in a columnsets context, is there a way to completely forbid floats on certain pages?
no, should be doabla (so remind me later)
I didn't find a way to tell placefigure not to allow figures to be renumbered during the placement. In other words, is there a possibility the follow the order in which I declare the figure, even if a page is less optimal like this...
see patch below
\unprotect
% % % %
\setupfloats
[\c!numbering=\v!yes]
\def\dofloatreference
{\doifnot\@@bknumbering\v!nocheck
{\doglobal\increment\numberedfloat
\expanded{\writeutilitycommand
{\noexpand\twopassentry
{\s!float}%
{\numberedfloat}%
{\hetnummer}
\def\redofloatorder#1%
{\doifnot\@@bknumbering\v!nocheck
{\doglobal\increment\nofplacedfloats\relax
\gettwopassdata\s!float
\iftwopassdatafound
\doifnot\hetnummer\twopassdata
{\edef\oldhetnummer{\hetnummer}%
\xdef\hetnummer{\twopassdata}%
\showmessage\m!floatblocks1{\nofplacedfloats,#1
\oldhetnummer,\hetnummer}}%
\fi}}
% % % %
\def\OTRSETskipstart
{\scratchcounter\executeifdefined{\??mc\OTRSETidentifier\c!start}\zerocount
\ifcase\scratchcounter\else
\advance\scratchcounter\plusone
\doOTRSETsetgridcells
{\copy\placeholderboxe}
\plusone\plusone\nofcolumns\scratchcounter
\null}%
\fi}
\def\OTRSETsetvsize % snap per sectie (gap here?)
{\ifcollectingcontent \else % can be assigndimen
\OTRSETskipstart
\OTRSETcheckinsert % added
\OTRSETsetfreecells\mofcolumns\columnfirstcell
\ifsomefreecolumncells
\global\vsize\columnfreecells\lineheight
\ifinotr % else problems with floats, see extreme
\global\pagegoal\vsize % niet nodig, tenzij binnen otr
\fi
\synchronizeoutput % fails on example
% \allowbreak % hm
\fi
\synchronizenotes
\fi}
\def\OTRSETdoflushfloats
{\bgroup
\def\OTRSETsavebox##1{\!!doneafalse}%
\doloop
{\ifsomefloatwaiting
\OTRSETskipstart
\dogetfloat
\ifdim\wd\floatbox\zeropoint
\!!doneatrue
\dp\floatbox\zeropoint
\OTRSETstoreincolumnslot{TBLR}\floatbox
\if!!donea
%\message{[flu]}%
\else
\OTRSETresavebox\floatbox
\exitloop
\fi
\else
%\message{[err]}% happens but why?
\fi
\else
\exitloop
\fi}
\egroup}
\protect
\setuplayout
[grid=yes,
header=0pt,
height=middle,
width=middle]
\showgrid
\setupfloats[numbering=nocheck]
\definecolumnset [first] [n=2,start=0]
\definecolumnset [next] [n=2,start=3]
\setuptexttexts[\vbox to \textheight{\topskipcorrection \hsize\makeupwidth left
\hfill right\vfill}]
\setuphead[chapter][text=empty]
\starttext
\startcolumnset[first,next]
\placefigure[btrl]{}{}
\placefigure[tblr]{}{}
\chapter{thuan} \dorecurse{25}{\recurselevel: \input thuan \endgraf}
\stopcolumnset
\startcolumnset[first,next]
\chapter{thuan} \dorecurse{25}{\recurselevel: \input thuan \endgraf}
\stopcolumnset
\startcolumnset[first,next]
\chapter{thuan} \dorecurse{25}{\input thuan \endgraf\placefigure{}{}}
\stopcolumnset
\stoptext
-
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