Several years ago I commonly wrote papers in MiKTeX using the apa.cls
, which allowed you to switch between a two-column formatted "jou" mode and a single-column, double spaced "man" mode.
I have recently tried running these old .tex
files in MiKTeX 2.9, and I have found that the endfloat
package no longer works properly, either in apa.cls
or the new apa6.cls
.
I have tried renaming the apaendfloat.cfg
file endfloat.cfg
and placing it in the working directory.
Here are the errors I get with the shortsample.tex
file that comes with apa6.cls
.
Basically, it completely chokes on the tables, and nothing comes out but gibberish in the table and figure portions of the paper.
Is there a solution for this?
AED endfloat: Processing end Figures and Tables [5]
! Missing number, treated as zero.
<to be read again>
\@ef@tttopen
l.83 \end{document}
?
! Missing = inserted for \ifnum.
<to be read again>
\@ef@tttopen
l.83 \end{document}
?
! Missing number, treated as zero.
<to be read again>
\@ef@tttopen
l.83 \end{document}
?
! Undefined control sequence.
\processtables ...seout \efloat@postttt \ef@setct
{ttt}{0} \clearpage \if@ta...
l.83 \end{document}
?
[6]
! Undefined control sequence.
\processtables ...{ttt}{0} \clearpage \if@tabhead
\section *{\tablesection }...
l.83 \end{document}
?
! Undefined control sequence.
\processtables ...@@spacing } \processtables@hook
\@ifundefined {hrm}{}{\sf ...
l.83 \end{document}
?
(R:\jointtex\SPRINT\apaexample.ttt
\begin{table*}[hbt]
\ifnextchar[{\eatarg}{}
! Undefined control sequence.
\table ...linechar ` \catcode ` =12 \ef@xtable
\fi
l.1 \begin{table}
[tbp]
?
)
! Extra \fi.
\processtables ...ttt}\let \BBAB \normal@BBAB \fi
l.83 \end{document}
?
! Missing number, treated as zero.
<to be read again>
\@ef@fffopen
l.83 \end{document}
?
! Missing = inserted for \ifnum.
<to be read again>
\@ef@fffopen
l.83 \end{document}
?
! Missing number, treated as zero.
<to be read again>
\@ef@fffopen
l.83 \end{document}
?
! Undefined control sequence.
\processfigures ...eout \efloat@postfff \ef@setct
{fff}{0} \clearpage \if@fi...
l.83 \end{document}
?
/b/c4/cOverfull/b/c0/c \hbox (441.54912pt too wide) in paragraph at lines 1--83
[][]\T1//lmr//m//n//12 [tbp]
\caption{Some numbers that could be experimental data.
}
\label{tab:tab1}
\begin{tabular}{lcc}\hline
& \multicolumn{2}{c}{Fa
ctor 2} \\ \cline{2-
/b/c4/cOverfull/b/c0/c \hbox (1151.26506pt too wide) in paragraph at lines 1--83
\T1//lmr//m//n//12 3}
Factor 1 & Condition A & Condition B \\ \hline
First
& 586 (231) & 649 (255) \\
& 2.2 & 7.5 \\
S
econd & 590 (195) & 623 (231) \\
& 2.8 & 2.5
\\ \hline
\end{tabular}
\end{table}
\efloatseparator
>0
[7]
! Undefined control sequence.
\processfigures ...}{}{\sf } \processfigures@hook
\@input {\jobname .fff} \fi
l.83 \end{document}
?
(R:\jointtex\SPRINT\apaexample.fff)
! Extra }, or forgotten \endgroup.
\processdelayedfloats ...ocessotherdelayedfloats }
l.83 \end{document}
?
! LaTeX /b/c9/cError:/b/c0/c \begin{efloat@float} on input line 1 ended by \end{document}.
See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...
l.83 \end{document}
?
Best Answer
As I just realized the
apa6
document class is redefining half of theendfloat
package. (Some code was even simply copied from endfloat.sty and modified.) Since some internals needed to be changed from v2.4 to v2.5 of theendfloat
package, these redefinitions are not working anymore.I'm in contact with the maintainer of the
apa6
document class anyway, and we need to find a way to make it working again, and this time in a way where theapa6
class is not using internals of theendfloat
package so it won't break compatibility again if v2.6 of theendfloat
package will be released.I'll keep you informed, but until then one need to revert to the previous version of the endfloat package which was v2.4i, I'm sorry.
Addendum: Updating to version 2.5c of the
endfloat
package should help.