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.

  • 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 Jan 26 '15 at 0:42
  • @Aditya Apparently columnset has been ported to MkIV (judging from the file extension) but the example still fails. – Henri Menke Jul 19 '16 at 13:12
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

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.