TexLive 2014: Issue with Paralist package and enumerate

The following issue did not exist with TexLive 2012. I have been able to reproduce this issue with TeXLive 2014 freshly unpacked from the CTAN ISO file and with the same TeXLive 2014 but fully updated. These tests were done on a Windows system.

The code in the sample file below Test.tex:

\documentclass{article}

\begin{document}

\begin{enumerate}
\item hello
\end{enumerate}

\end{document}


On compilation (with the fully updated system as example) I get:

Command Line:   pdflatex.exe -shell-escape --interaction=errorstopmode --synctex=-1 "Test.tex"
Startup Folder: E:\letre

This is pdfTeX, Version 3.14159265-2.6-1.40.15 (TeX Live 2014/W32TeX) (preloaded format=pdflatex)
\write18 enabled.
entering extended mode
(./Test.tex
LaTeX2e <2014/05/01>
Babel <3.9k> and hyphenation patterns for 79 languages loaded.
(c:/texlive/2014/texmf-dist/tex/latex/base/article.cls
Document Class: article 2007/10/19 v1.4h Standard LaTeX document class
(c:/texlive/2014/texmf-dist/tex/latex/base/size10.clo))
(c:/texlive/2014/texmf-dist/tex/latex/paralist/paralist.sty) (./Test.aux)
! Undefined control sequence.
<argument> ...umctr \endcsname \@enum@widestlabel
\relax
l.9   \item
hello
?

Process has been terminated ...


Taking away the \usepackage[alwaysadjust]{paralist} does not produce any faults:

Command Line:   pdflatex.exe -shell-escape --interaction=errorstopmode --synctex=-1 "Test.tex"
Startup Folder: E:\letre

This is pdfTeX, Version 3.14159265-2.6-1.40.15 (TeX Live 2014/W32TeX) (preloaded format=pdflatex)
\write18 enabled.
entering extended mode
(./Test.tex
LaTeX2e <2014/05/01>
Babel <3.9k> and hyphenation patterns for 79 languages loaded.
(c:/texlive/2014/texmf-dist/tex/latex/base/article.cls
Document Class: article 2007/10/19 v1.4h Standard LaTeX document class
(c:/texlive/2014/texmf-dist/tex/latex/base/size10.clo)) (./Test.aux) [1{c:/texl
ive/2014/texmf-var/fonts/map/pdftex/updmap/pdftex.map}] (./Test.aux) )<c:/texli
ve/2014/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb>
Output written on Test.pdf (1 page, 11008 bytes).
SyncTeX written on Test.synctex.
Transcript written on Test.log.


Is there a fix to this? Please note the given code in Test.tex does not illustrate the use of the paralist package but with TexLive 2012, this conflict/problem did not occur.

• Imho this is a bug in the package. You should contact the author. – Ulrike Fischer Sep 18 '14 at 7:29
• Most likely you are right. One vote up. – user11206 Sep 19 '14 at 12:28

The \@enum@widestlabel is never initialized. The old version used a different mechanism, but basically the default value was 7, which you might use with the new one.

\documentclass{article}

\makeatletter
\providecommand\@enum@widestlabel{7}
\makeatother

\begin{document}

\begin{enumerate}
\item hello
\end{enumerate}

\end{document}


The change happened between version 2.3 and 2.4 (the one in TeX Live 2013). However, it's not really clear what the alwaysadjust option is for.

Assuming you want to keep using the alwaysadjust option, one workaround is to ensure that you use the optional argument when starting the list:

\documentclass{article}

\begin{document}

\begin{enumerate}[(1)]
\item hello
\end{enumerate}

\end{document}


Alternatively, take a look at the enumitem package which offers facilities for lists in paragraphs (and much more).

• 1 vote up. I prefer egreg's solution though. – user11206 Sep 19 '14 at 12:28
• @user11206 That's because egreg knows what he is doing! – cfr Sep 19 '14 at 12:42