about the paracol package for typesetting multicolumn text in parallel
The paracol package offers the paracol environment that typesets the contents of two columns (e.g. of a bilingual document) in parallel.
The paracol environment accepts a mandatory and an optional argument as follows:
\begin{paracol}{<number of column>}[<single-column spanning text>]
Switching between the columns can be done using the \switchcolumn command. With its starred version (\switchcolumn*) the contents of the columns are synchronized as can be seen from the following MWE. This command also accepts an optional argument as follows: \switchcolumn[<column number>] (with 0 = leftmost column)
\documentclass{article}
\usepackage{paracol}
\begin{document}
\begin{paracol}{2}[\section{paracol with \emph{unsynchronized} columns}]
This text goes into the first column
\switchcolumn
This is a longer text that goes into the second column.
\switchcolumn
This text goes into the first column
\switchcolumn
This is a longer text that goes into the second column.
\end{paracol}
\begin{paracol}{2}[\section{paracol with \emph{synchronized} columns}]
This text goes into the first column
\switchcolumn
This is a longer text that goes into the second column.
\switchcolumn*
This text goes into the first column
\switchcolumn
This is a longer text that goes into the second column.
\end{paracol}
\end{document}
As alternative to \switchcholumn, the paracol package also offers the column and the nthcolumn (as well as the leftcolumn and rightcolumn) environments. Their use can be seen from the following MWE. The starred variants again synchronize the columns.
\documentclass{article}
\usepackage{paracol}
\begin{document}
\begin{paracol}{2}
\begin{column}
This text goes into the first column
\end{column}
\begin{column}
This is a longer text that goes into the second column.
\end{column}
\begin{column*}
This text goes into the first column
\end{column*}
\begin{column}
This is a longer text that goes into the second column.
\end{column}
\begin{nthcolumn}{1}
This is some text that goes into the second column
\end{nthcolumn}
\begin{leftcolumn*}
This text goes into the first column
\end{leftcolumn*}
\begin{rightcolumn}
This is a longer text that goes into the second column.
\end{rightcolumn}
\end{paracol}
\end{document}
The widths of the columns can be changed by either using \columnratio or \setcolumnwidth.
The package also handles single and twocolumn floats and footnotes as well as colored text and background.
