7

I would like to create a columnset where the first column is wider than the others. I understand that column breaks become complicated in such an environment.

The ConTeXt columns manual claims to explain how to make one column in a columnset wider than the others, with limitations. It gives code like:

\usemodule[visual]

\definecolumnset[example][n=4]

\setupcolumnset[example][1][width=.3\makeupwidth]
\starttext
\startcolumnset[example]
\dorecurse{25}{\fakewords{50}{75}\column[local]}
\stopcolumnset
\stoptext

Unfortunately, compiling this results in four columns of equal width. How do I make this work as demonstrated in the manual? I'm using mkiv.

2
  • I would suggest that you post this on the Context mailing list. The columnset code has not been ported to MkIV, and it would be done only if there is user demand (and user testing).
    – Aditya
    Commented Jan 26, 2015 at 0:42
  • @Aditya Apparently columnset has been ported to MkIV (judging from the file extension) but the example still fails. Commented Jul 19, 2016 at 13:12

1 Answer 1

1

I suggest you use the newcolumnsets module which ports parts of the old MKII columnsets to MKIV. However, the syntax has changed quite a bit, so beware. There is a manual but it's a bit incomplete. If you can't find something there, just ask on the mailing list.

\showframe
\usemodule[newcolumnsets,visual]

\definecolumnset[example][n=4,distance=0.0333\makeupwidth]

% left page (even page numbers)
\setupcolumnset[example:1][width=.3\makeupwidth]
\setupcolumnset[example:2][width=.2\makeupwidth]
\setupcolumnset[example:3][width=.2\makeupwidth]
\setupcolumnset[example:4][width=.2\makeupwidth]
% right page (odd page numbers)
\setupcolumnset[example:5][width=.3\makeupwidth]
\setupcolumnset[example:6][width=.2\makeupwidth]
\setupcolumnset[example:7][width=.2\makeupwidth]
\setupcolumnset[example:8][width=.2\makeupwidth]

\starttext

\startcolumnset[example]
  \dorecurse{25}{\fakewords{50}{75}\column}
\stopcolumnset

\stoptext

If you don't want to repeat yourself so much, you can also set width in the instance and group columns together in the setup. This makes sense, if all but one column have the same width.

\definecolumnset
  [example]
  [n=4,
   width=.2\makeupwidth,
   distance=0.0333\makeupwidth]

\setupcolumnset
  [example:1,example:5]
  [width=.3\makeupwidth]

enter image description here

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .