%3F.png)
La solución utilizada enesta preguntatiene varios inconvenientes. Sólo funciona con \footnotelayout{m}
o \globalcounter{footnote}
. Si el paralelo se divide en dos páginas, el contador no se reinicia hastatodolas columnas están vacías. Si un párrafo se divide en dos páginas, las notas a pie de página pensarán que están en la primera página.
\documentclass{article}
\usepackage{paracol}
\usepackage[nopar]{lipsum}
\usepackage{everypage}
\AddEverypageHook{\setcounter{footnote}{0}}
\begin{document}
\sloppy
\begin{paracol}{2}
left column\footnote{a footnote}
\switchcolumn%
right column\footnote{a footnote}
\switchcolumn*%
\lipsum[1-3]\footnote{2nd footnote}
\switchcolumn%
\lipsum[1-3]\footnote{2nd footnote}
\end{paracol}
\end{document}
Aquí hay una captura de pantalla que demuestra el problema:
Respuesta1
Esta solución modifica \footnote
y \footnotemaek
(renombrada por paracol) restablece el contador cuando la página cambia. Utiliza el contador lastfootnotepage
para comparar, ya que paracol mantiene contadores separados para cada columna.
El número de página de cada uno \footnote
se \footnotemark
escribe en el archivo auxiliar, ya que esta es la única manera de obtener el número de página correcto para los párrafos divididos en dos páginas. Sin embargo, se necesitan dos ejecuciones para funcionar.
Resulta que paracol ya proporciona un índice para el número total de \footnote
sys \footnotemark
hasta el momento.
\documentclass{article}
\usepackage{paracol}
\usepackage[nopar]{lipsum}
\newcounter{footnotepage}
%\globalcounter{footnotepage}% only use with \footnotelayout{m}
\makeatletter
\newcommand{\checkfootnotepage}{%
\protected@write\@auxout{}{\string\newfootnotepage{\number\pcol@nfootnotes}{\thepage}}%
\bgroup
\@ifundefined{footnotepage\number\pcol@nfootnotes}{\count1=\value{page}}%
{\count1=\csname footnotepage\number\pcol@nfootnotes\endcsname\relax}%
\ifnum\value{footnotepage}<\count1\relax
\setcounter{footnotepage}{\count1}%
\setcounter{footnote}{0}%
\fi
\egroup}
\newcommand{\newfootnotepage}[2]% #1 = index, #2 = page
{\expandafter\xdef\csname footnotepage#1\endcsname{#2}}
\def\pcol@@footnote{% footnote for paracol
\@ifnextchar[\@xfootnote{\checkfootnotepage
\stepcounter\@mpfn
\protected@xdef\@thefnmark{\thempfn}%
\@footnotemark\@footnotetext}}
\def\pcol@@footnotemark{% \footnotemark for paracol
\@ifnextchar[\@xfootnotemark
{\checkfootnotepage% added
\stepcounter{footnote}%
\protected@xdef\@thefnmark{\thefootnote}%
\@footnotemark}}
\makeatother
\begin{document}
\sloppy
\begin{paracol}{2}
left column\footnote{a footnote}
\switchcolumn%
right column\footnote{a footnote}
\switchcolumn*%
\lipsum[1-3]\footnote{2nd footnote}
\switchcolumn%
\lipsum[1-3]\footnote{2nd footnote}
\end{paracol}
\end{document}