# How can I create a two-column layout with different widths (and texts) for the two columns?

I want to create a document in which there are two separate columns of content. The column on the left is normal text, with sections, environments, etc. The column on the right is figures, all roughly of the same size, which should appear one below the other.

I want the first (''text'') column to occupy about 60% of \textwidth,and the second (''pictures'') column to occupy about 30%. I tried using \minipage for this, but, since content in a \minipage does not break across pages, this failed once the content of either column became more than a page's worth. I have content worth a few pages, and would like each column to "flow" across pages (maintaining the respective widths and positions) like normal text.

Using a new \minipage roughly when the current minipage has enough content to fill a page is really not an option, since some of the content (e.g.: bibliographies) is not "breakable" in this manner.

How do I create such a multi-column format?

EDIT: I chickened out and yielded to the minibox way. See comment below.

-
Instead of a two-column, maybe you can try doing it with putting the pictures in the margin with a really wide margin? See tex.stackexchange.com/questions/2547/margin-figures-captions – Willie Wong Oct 15 '10 at 18:58
@Willie : Thanks for that comment, but it doesn't work for me. I need the left column to be shifted a bit to the right, to match with the rest of the page. \minipage (or, for that matter, \parbox) gives this shift for free. I tried using \changepage to get the same effect. This works, but wrapfig does not play well with \changepage: If I put the wrapfig command inside \changepage, it complains that it has been put inside an incompatible environment, and puts the figure on a page by itself. If I put it outside, then it puts the figure on the next page, instead of on the current one. – gphilip Oct 15 '10 at 20:32
After breaking my head over this for a few hours, I became wise and jumped ship (aargh!). It turned out that the /only/ content which could not be broken across minipages was a bibliography. So I copied over the contents of the .bbl file, split it across two minipages as two different thebibliography environments, found the correct way to split by trial and error, and fixed the numbering of the second thebibliography by manually setting the enumiv counter. Phew! @Willie, @Brent, @frabjous, @Will : thanks to you all. – gphilip Oct 16 '10 at 15:57
Creating two columns of different widths is so counter-intuitive and non-trivial. Why? This seems like something that should be fairly frequently used. sigh – Steve Nov 20 '10 at 0:42

I would use the parcolumns package, personally. You can use the colwidths option to set the widths of each column to whatever you want. See its documentation.

Creating larger than normal margins and using \marginpar might also be a possibility. (Perhaps with the marginnote package.)

-
Thank you. However, this doesn't work well, because \parcolumns does not play well with \changepage (see github.com/wspr/herries-press/issues/issue/9), and as I mentioned in my reply to Willie's comment in the question, I need the left column to be shifted a bit to the right to match the rest of the page. – gphilip Oct 16 '10 at 4:38

Depending on your exact requirements (for example, are the figures associated with their corresponding text?), you may want to consider a free tabular package like xtab or longtable.

-
Thank you, but I decided not to insist on getting this behaviour, after breaking my head over it for long. Please see my last comment to my question. – gphilip Oct 16 '10 at 16:14

From your comments to the other questions, it sounds like you're running into the limitations of what TeX can do naturally My impression is that you have a document with certain margins, and then mid-way through a page somewhere, you want to change the margins of the document, typeset multi-page text with marginal figures, then switch back again to the original layout. Is this correct?

Here's an example of a convoluted way to do this: http://gist.github.com/629640

It uses the framed package to change the margins inside its `twocol` environment and then a custom macro `\marginfig{...}` to insert figures into the margin. Figures should be inserted between paragraphs, but the vertical spacing can be adjusted with an optional argument as in `\marginfig[-1cm]{...}`.

-
Thank you, but I chickened out; see my last comment to the question. – gphilip Oct 16 '10 at 15:57