4

Look at this simple code:

\documentclass[12pt,a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage[german]{babel}
\usepackage{paracol}

\begin{document}

Hello world!\footnote{A simple footnote.}

\columnratio{0.1}
\begin{paracol}{2}
D1.1
\switchcolumn
This is a simple definition.
\end{paracol}

This is a simple sentence.\footnote{Another simple footnote!}

\end{document}

It's producing a totally weird output. (Sorry, I'm not allowed to upload an image.)

Why is the first footnote showing up right above the paracol environment? What am I doing wrong?

  • 2
    Welcome to TeX.sx! As new user without image posting privileges simply include the image as normal and remove the ! in front of it to turn it into a link. A moderator or another user with edit privileges can then reinsert the ! to turn it into an image again. – Torbjørn T. Feb 06 '13 at 19:28
  • I get an undefined command error for \columnratio{0.1} if I remove that line the footnote comes first as you say. it looks like paracol finishes the page, including footnotes, then restarts in its two column mode, so I suspect this is as designed. – David Carlisle Feb 06 '13 at 21:19
  • @DavidCarlisle : the error with \columnratio is probably due to an old version of paracol where this command was not defined. Make sure you have at least version 1.1 (May 2012) or later. It is included in TeXLive 2012, but TeXLive 2011 has only version 1.0. – ogerard Jun 06 '13 at 14:55

1 Answers1

5

enter image description here

paracols ends the current page so places footnotes before starting its multicolumn layout.

If you don't want that you can redefine things so it just stores the footnote away and then you can retrieve it after the environment or anywhere else suitable.

\documentclass[12pt,a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage[german]{babel}
\usepackage{paracol}

\setlength\textheight{.3\textheight}

\makeatletter
\newbox\mybox
\def\pcol@makenormalcol{%
  \ifvoid\footins 
  \else
\global\setbox\mybox\box\footins
   \fi
\setbox\@outputbox\box\@holdpg
  \let\@elt\relax
  \xdef\@freelist{\@freelist\@midlist}%
  \global\let\@midlist\@empty
  \@combinefloats}

\makeatother

\begin{document}

Hello world!\footnote{A simple footnote.}

%\columnratio{0.1}% this generates an error
\begin{paracol}{2}
D1.1
\switchcolumn
This is a simple definition.
\end{paracol}
\ifvoid\mybox\else\insert\footins{\unvbox\mybox}\fi

This is a simple sentence.\footnote{Another simple footnote!}

\end{document}
David Carlisle
  • 757,742
  • There wouldn't be a way to retrieve the notes one by one, so I could fine-tune the page break when there are a number of footnotes before the paracol-part and the pagebreak occurs within the paracol-part? – Florian Feb 24 '21 at 16:19
  • 1
    Note to self: rtfm! Note to others researching similar problems: Since David posted his workaround the author has greatly extended on paracol's footnote handling and since the version released May 27, 2013 allows the user to choose from different options. The way I was looking for is offered by the option \footnotelayout{m}, – Florian Feb 25 '21 at 09:55
  • @Florian But it still doesn't support page-wise 2-column footnotes, that distributes the footnote text between the columns evenly. To prevent too long lines. And this package doesn't seem to be compatible with dblfnote. – Crouching Kitten Oct 09 '22 at 21:53