notes on columnset typesetting (not only about)
Dear ConTeXters, surprisingly, in this e-mail you will find any bug report! It is a summary of my experience with typesetting of a little complex book layout. I have finnished it during a one year long winning battle. Thank to everybody who helped, especially of course to Hans. Thank you very much! ------------------ Next text can show, what is in present ConTeXt (or a bit older one) possible and what is still problematic. Firstly, let us show some examples: - transparency frames ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-body1.pdf - two columnsets + marginals + figures + balancing ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-body2.pdf - two columnsets + page float ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-body3.pdf - three columnsets + floats ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-encyk.pdf - content ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-content.pdf - index ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-index.pdf Legend for comming comments: + pros - cons ? dreaming about new feature ! attention = my (perhaps suboptimal) solution * note Comments: > grid + very powerfull and working support + works gracefully with columnsets and floats * avoiding orphans and widows was done manually by: = enlarging/decreasing figures = adding/removing (half)blank lines around heads ? if we want to do avoiding orphans and widows automatically, we would probably need the glue with DISCRETE STEP of stretch/shrink. Then we can say e.g. \let\bl=\baselineskip \setuphead [section] [before=\vskip1\bl plus1\bl withstep1\bl] to get vertical space before section head exactly 1 OR 2 \baselineskip height. Another solution with stepwise box: \vbox to2\bl plus2\bl withstep1\bl{\vfil heading \vfil} ! the only problem was in the table of contents + columns; from the first line there was a small shift between columns; perhaps \splittopskip? but setting it to large enough value does not solve it. > columnsets + very nice feature, really; after Hans improvement seems that some floats soes not dissappered now, but need to be carefull + floats insertion with specifying place ? for top float: automatically setting \placeongrid[{broad,high}] for bottom float \placeongrid[{broad,low}] to be vertically align with text on the rest of column(s) * balancing: only manually by setting: \setupcolumnsetlines[columnset_id][columnset_page][column][line] ! Not so painful if it not occures next: If there are many floats near balancing place they sometimes disappear or cause ignoring balancing - even if they can fit on the place. ? understand that automatical balancing with floats is extremly difficult * page floats: big improvements during the work. ! running marginal text continue through the page with only float = so you have to manually insert blank vertical margin on such place * header & footers: Hans did a new column marking: \getmarking[marking_id][column][last/first]. ! There are some problems [perhaps with expansion (different counter number and text)] if marking goes between two columnsets (framed chapters cross two cols in examples). = found acceptable hack but need more ivestigation on small examples for cleaning. > metapost inclusion + the most powerful, smooth and stable part of ConTeXt in my opinion (see random frames, circles with transparent graphics, lines with color shading) = if you have many (over 1024!) shadings (-> MP specials) do \settrue \manyMPspecials > index (register) + nice possibility to differentiate several groups (here 8 from which 4 have different visual marking of page number, see index example) - sorting: until this spring there was no satisfied backround for Czech sorting in newtexutil.rb till this spring. = I did dirty reimplementation of old texutil.pl for doing so * I have to have a look for new sorting now. - coupling: page numbers with group preserving (see example) = also in texutil.pl reimplementation > regime * my great discovery was that the regime IS \enableregime{latin2} % correct and NOT \enableregime{il2} % incorrect! > pseudo-small caps = http://wiki.contextgarden.net/Pseudo_Small_Caps > ... I provide the environment files (design definition) in case of somebody's interest. But suddenly they are very very very dirty. Partially due to my unsufficient ConTeXt knowledge, partially due to my despair during trying many ways to solve some problem, partially due to putting pathes to old ConTeXt (it was fresh of course when the work begins), ...: ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-env.tex (core) ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-mark.tex (markup) Best Vit
Many thanks for sharing your env file. I'm trying to use that making some projects and components files. But every-time I run texexec I found a error message. For fixing that I will need to include the files vz-cont.tex and vg05-general. Did you can provide me some complete example of your work? thanks a lot Jorge Em 25/05/2006, às 9:47, Vit Zyka escreveu: > Dear ConTeXters, > > surprisingly, in this e-mail you will find any bug report! It is a > summary of my experience with typesetting of a little complex book > layout. I have finnished it during a one year long winning battle. > Thank > to everybody who helped, especially of course to Hans. > > Thank you very much! > > ------------------ > > Next text can show, what is in present ConTeXt (or a bit older one) > possible and what is still problematic. > > Firstly, let us show some examples: > - transparency frames > ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-body1.pdf > - two columnsets + marginals + figures + balancing > ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-body2.pdf > - two columnsets + page float > ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-body3.pdf > - three columnsets + floats > ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-encyk.pdf > - content > ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-content.pdf > - index > ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-index.pdf > > Legend for comming comments: > + pros > - cons > ? dreaming about new feature > ! attention > = my (perhaps suboptimal) solution > * note > > Comments: >> grid > + very powerfull and working support > + works gracefully with columnsets and floats > * avoiding orphans and widows was done manually by: > = enlarging/decreasing figures > = adding/removing (half)blank lines around heads > ? if we want to do avoiding orphans and widows automatically, > we would probably need the glue with DISCRETE STEP of > stretch/shrink. > Then we can say e.g. > \let\bl=\baselineskip > \setuphead > [section] > [before=\vskip1\bl plus1\bl withstep1\bl] > to get vertical space before section head exactly 1 OR 2 > \baselineskip height. > Another solution with stepwise box: > \vbox to2\bl plus2\bl withstep1\bl{\vfil heading \vfil} > ! the only problem was in the table of contents + columns; > from the first line there was a small shift between columns; > perhaps \splittopskip? but setting it to large enough value > does not solve it. > >> columnsets > + very nice feature, really; > after Hans improvement seems that some floats soes not dissappered > now, but need to be carefull > + floats insertion with specifying place > ? for top float: automatically setting \placeongrid[{broad,high}] > for bottom float \placeongrid[{broad,low}] > to be vertically align with text on the rest of column(s) > * balancing: only manually by setting: > \setupcolumnsetlines[columnset_id][columnset_page][column][line] > ! Not so painful if it not occures next: If there are many > floats near balancing place they sometimes disappear or cause ignoring > balancing - even if they can fit on the place. > ? understand that automatical balancing with floats is extremly > difficult > * page floats: big improvements during the work. > ! running marginal text continue through the page with only float > = so you have to manually insert blank vertical margin on such > place > * header & footers: Hans did a new column marking: > \getmarking[marking_id][column][last/first]. > ! There are some problems [perhaps with expansion (different > counter number and text)] if marking goes between two columnsets > (framed > chapters cross two cols in examples). > = found acceptable hack but need more ivestigation on small > examples for cleaning. > >> metapost inclusion > + the most powerful, smooth and stable part of ConTeXt in my opinion > (see random frames, circles with transparent graphics, lines with color > shading) > = if you have many (over 1024!) shadings (-> MP specials) do > \settrue \manyMPspecials > >> index (register) > + nice possibility to differentiate several groups (here 8 from > which > 4 have different visual marking of page number, see index example) > - sorting: until this spring there was no satisfied backround for > Czech sorting in newtexutil.rb till this spring. > = I did dirty reimplementation of old texutil.pl for doing so > * I have to have a look for new sorting now. > - coupling: page numbers with group preserving (see example) > = also in texutil.pl reimplementation > >> regime > * my great discovery was that the regime IS > \enableregime{latin2} % correct > and NOT > \enableregime{il2} % incorrect! > >> pseudo-small caps > = http://wiki.contextgarden.net/Pseudo_Small_Caps > >> ... > > I provide the environment files (design definition) in case of > somebody's interest. But suddenly they are very very very dirty. > Partially due to my unsufficient ConTeXt knowledge, partially due to my > despair during trying many ways to solve some problem, partially due to > putting pathes to old ConTeXt (it was fresh of course when the work > begins), ...: > ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-env.tex (core) > ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-mark.tex > (markup) > > Best > Vit > > _______________________________________________ > ntg-context mailing list > ntg-context@ntg.nl > http://www.ntg.nl/mailman/listinfo/ntg-context > > Abraços, Jorge Manuel de Almeida Magalhães
batela wrote:
Many thanks for sharing your env file. I'm trying to use that making some projects and components files. But every-time I run texexec I found a error message. For fixing that I will need to include the files vz-cont.tex and vg05-general.
Hi she/he Batela, you are right (vz-cont contains my local settings, abbreviations and some macro patches related to current instalation; vg05-general contains Czech hyphenation exceptions and balancing definitions like: \setupcolumnsetlines[Rok-2][4][1][45] \setupcolumnsetlines[Rok-2][4][2][45] ). In closer view you will find even more included files like member list generated from XML and used for full name expansion to index. But there are provided all files that define design and can illustrate solutions. Take them as an inspiration and an example how to use some construct. I personally do not try to compile it with todays ConTeXt.
Did you can provide me some complete example of your work?
So, the answer is no. Vit
Vit Zyka wrote: > Firstly, let us show some examples: > - transparency frames > ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-body1.pdf > - two columnsets + marginals + figures + balancing > ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-body2.pdf > - two columnsets + page float > ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-body3.pdf > - three columnsets + floats > ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-encyk.pdf > - content > ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-content.pdf > - index > ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-index.pdf > nice; how about an article on such a project for the maps/tugboat > Comments: > > grid > ? if we want to do avoiding orphans and widows automatically, > we would probably need the glue with DISCRETE STEP of > stretch/shrink. > Then we can say e.g. > \let\bl=\baselineskip > \setuphead > [section] > [before=\vskip1\bl plus1\bl withstep1\bl] > to get vertical space before section head exactly 1 OR 2 > \baselineskip height. > Another solution with stepwise box: > \vbox to2\bl plus2\bl withstep1\bl{\vfil heading \vfil} > hm, worth investigating but maybe wait for what pdftex will bring some day soon > ! the only problem was in the table of contents + columns; > from the first line there was a small shift between columns; > perhaps \splittopskip? but setting it to large enough value > does not solve it. > could be; actually i wish i'd set topskip to strutheight by default which would make life way easier > > after Hans improvement seems that some floats soes not dissappered > now, but need to be carefull > i think that indeed some floats get lost bugs were solved but it's always a bit tricky with left-overs > + floats insertion with specifying place > ? for top float: automatically setting \placeongrid[{broad,high}] > for bottom float \placeongrid[{broad,low}] > to be vertically align with text on the rest of column(s) > there is some control possible, so remind me when you need it again (\OTRSETprepareforcolumnslot permits log/middle/high handling but it's not keyword driven (yet) > * balancing: only manually by setting: > \setupcolumnsetlines[columnset_id][columnset_page][column][line] > ! Not so painful if it not occures next: If there are many > floats near balancing place they sometimes disappear or cause ignoring > balancing - even if they can fit on the place. > ? understand that automatical balancing with floats is extremly > difficult > indeed > * page floats: big improvements during the work. > ! running marginal text continue through the page with only float > = so you have to manually insert blank vertical margin on such place > * header & footers: Hans did a new column marking: > \getmarking[marking_id][column][last/first]. > ! There are some problems [perhaps with expansion (different > counter number and text)] if marking goes between two columnsets (framed > chapters cross two cols in examples). > hm, some day ... > = found acceptable hack but need more ivestigation on small > examples for cleaning. > ok > > metapost inclusion > + the most powerful, smooth and stable part of ConTeXt in my opinion > (see random frames, circles with transparent graphics, lines with color > shading) > > = if you have many (over 1024!) shadings (-> MP specials) do > \settrue \manyMPspecials > this is the default now (today i played with persistent mp runs and that will speed up runtime processing enourmously) > >> index (register) >> > + nice possibility to differentiate several groups (here 8 from which > 4 have different visual marking of page number, see index example) > - sorting: until this spring there was no satisfied backround for > Czech sorting in newtexutil.rb till this spring. > = I did dirty reimplementation of old texutil.pl for doing so > * I have to have a look for new sorting now. > - coupling: page numbers with group preserving (see example) > = also in texutil.pl reimplementation > > > regime > * my great discovery was that the regime IS > \enableregime{latin2} % correct > and NOT > \enableregime{il2} % incorrect! > well, il2 is actually a kind of hack: an incomplete, usable for csr only, encoding > > pseudo-small caps > = http://wiki.contextgarden.net/Pseudo_Small_Caps > > > ... > > I provide the environment files (design definition) in case of > somebody's interest. But suddenly they are very very very dirty. > ha, look at some of my project files, patch upon patch (esp when designers start getting inconsistent ) > Partially due to my unsufficient ConTeXt knowledge, partially due to my > despair during trying many ways to solve some problem, partially due to > putting pathes to old ConTeXt (it was fresh of course when the work > begins), ...: > ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-env.tex (core) > ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-mark.tex (markup) > well, given that at that time columnsets were even more experimental, you did quite well ----------------------------------------------------------------- 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 -----------------------------------------------------------------
Hans Hagen wrote: > Vit Zyka wrote: >> Firstly, let us show some examples: >> - transparency frames >> ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-body1.pdf >> - two columnsets + marginals + figures + balancing >> ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-body2.pdf >> - two columnsets + page float >> ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-body3.pdf >> - three columnsets + floats >> ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-encyk.pdf >> - content >> ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-content.pdf >> - index >> ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-ex-index.pdf >> > nice; how about an article on such a project for the maps/tugboat hmmm, I will think about it. But in the summer time I want to spent my spare time by beginners manual translation... >> Comments: >> > grid >> ? if we want to do avoiding orphans and widows automatically, >> we would probably need the glue with DISCRETE STEP of >> stretch/shrink. >> Then we can say e.g. >> \let\bl=\baselineskip >> \setuphead >> [section] >> [before=\vskip1\bl plus1\bl withstep1\bl] >> to get vertical space before section head exactly 1 OR 2 >> \baselineskip height. >> Another solution with stepwise box: >> \vbox to2\bl plus2\bl withstep1\bl{\vfil heading \vfil} >> > hm, worth investigating but maybe wait for what pdftex will bring some > day soon you mean things about lua? >> ! the only problem was in the table of contents + columns; >> from the first line there was a small shift between columns; >> perhaps \splittopskip? but setting it to large enough value >> does not solve it. >> > could be; actually i wish i'd set topskip to strutheight by default > which would make life way easier perhaps; but imagine different strutheight in different columns (each column top line contains different font size - in the content it can be very frequent if each head level is typeset with diferent size); what about \setupcolumns[topskip=dimen|font] if font is given, dimen is calc >> after Hans improvement seems that some floats soes not dissappered >> now, but need to be carefull >> > i think that indeed some floats get lost bugs were solved but it's > always a bit tricky with left-overs >> + floats insertion with specifying place >> ? for top float: automatically setting \placeongrid[{broad,high}] >> for bottom float \placeongrid[{broad,low}] >> to be vertically align with text on the rest of column(s) >> > there is some control possible, so remind me when you need it again > (\OTRSETprepareforcolumnslot permits log/middle/high handling but it's > not keyword driven (yet) OK. >> * balancing: only manually by setting: >> \setupcolumnsetlines[columnset_id][columnset_page][column][line] >> ! Not so painful if it not occures next: If there are many >> floats near balancing place they sometimes disappear or cause ignoring >> balancing - even if they can fit on the place. >> ? understand that automatical balancing with floats is extremly >> difficult >> > indeed >> * page floats: big improvements during the work. >> ! running marginal text continue through the page with only float >> = so you have to manually insert blank vertical margin on such place >> * header & footers: Hans did a new column marking: >> \getmarking[marking_id][column][last/first]. >> ! There are some problems [perhaps with expansion (different >> counter number and text)] if marking goes between two columnsets (framed >> chapters cross two cols in examples). >> > hm, some day ... >> = found acceptable hack but need more ivestigation on small >> examples for cleaning. >> > ok >> > metapost inclusion >> + the most powerful, smooth and stable part of ConTeXt in my opinion >> (see random frames, circles with transparent graphics, lines with color >> shading) >> >> = if you have many (over 1024!) shadings (-> MP specials) do >> \settrue \manyMPspecials >> > this is the default now (today i played with persistent mp runs and that > will speed up runtime processing enourmously) what is persistent mp run? It means mp that has not changed since previous run? It would be great. (btw compilation the whole book takes about 20 min on 3.2 Ghz AMD.) Vit >>> index (register) >>> >> + nice possibility to differentiate several groups (here 8 from which >> 4 have different visual marking of page number, see index example) >> - sorting: until this spring there was no satisfied backround for >> Czech sorting in newtexutil.rb till this spring. >> = I did dirty reimplementation of old texutil.pl for doing so >> * I have to have a look for new sorting now. >> - coupling: page numbers with group preserving (see example) >> = also in texutil.pl reimplementation >> >> > regime >> * my great discovery was that the regime IS >> \enableregime{latin2} % correct >> and NOT >> \enableregime{il2} % incorrect! >> > well, il2 is actually a kind of hack: an incomplete, usable for csr > only, encoding >> > pseudo-small caps >> = http://wiki.contextgarden.net/Pseudo_Small_Caps >> >> > ... >> >> I provide the environment files (design definition) in case of >> somebody's interest. But suddenly they are very very very dirty. >> > ha, look at some of my project files, patch upon patch (esp when > designers start getting inconsistent ) >> Partially due to my unsufficient ConTeXt knowledge, partially due to my >> despair during trying many ways to solve some problem, partially due to >> putting pathes to old ConTeXt (it was fresh of course when the work >> begins), ...: >> ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-env.tex (core) >> ftp://cmp.felk.cvut.cz/pub/cmp/users/zyka/vg-ex/vg05-mark.tex (markup) >> > well, given that at that time columnsets were even more experimental, you did quite well
Vit Zyka wrote:
hm, worth investigating but maybe wait for what pdftex will bring some day soon
you mean things about lua?
no, more things like 32 bit, unicode, opentype and such (the impact of lua will most noticably in interfacing areas)
perhaps; but imagine different strutheight in different columns (each column top line contains different font size - in the content it can be very frequent if each head level is typeset with diferent size); what about \setupcolumns[topskip=dimen|font] if font is given, dimen is calc
hm, probably doable but tricky (never say never) 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 -----------------------------------------------------------------
participants (4)
-
batela
-
Hans Hagen
-
luigi scarso
-
Vit Zyka