summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2011-08-11 01:43:27 +0000
committerKarl Berry <karl@freefriends.org>2011-08-11 01:43:27 +0000
commit551e2b604cefbc84c58f167073a6a7ded007737e (patch)
treeabd7ef9105ad9b4c3eafb3f456151b34aeb76d27
parent0bf00106b7244ea238a258489faa59910696603d (diff)
enumitem (10aug11)
git-svn-id: svn://tug.org/texlive/trunk@23489 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/enumitem/README11
-rw-r--r--Master/texmf-dist/doc/latex/enumitem/enumitem.pdfbin325585 -> 328451 bytes
-rw-r--r--Master/texmf-dist/doc/latex/enumitem/enumitem.tex43
-rw-r--r--Master/texmf-dist/tex/latex/enumitem/enumitem.sty77
4 files changed, 92 insertions, 39 deletions
diff --git a/Master/texmf-dist/doc/latex/enumitem/README b/Master/texmf-dist/doc/latex/enumitem/README
index d4e7156aac5..945805d57c9 100644
--- a/Master/texmf-dist/doc/latex/enumitem/README
+++ b/Master/texmf-dist/doc/latex/enumitem/README
@@ -1,4 +1,4 @@
-Enumitem 3.3
+Enumitem 3.4
~~~~~~~~~~~~
A package to customize the three basic lists (enumerate,
@@ -75,11 +75,18 @@ checking.
~~~
- Using *-values with itemize and description didn't work.
+3.4
+~~~
+- New key nosep, replacing nolistsep, which didn't work as
+documented.
+- Fixed spacing in inline boxed lists.
+- Fixed (hopefully) the bug with noitemsep and shorlabels.
+
_________________________________________________________________
Javier Bezos | http://www.tex-tipografia.com
.................................................................
-2011-07-14
+2011-08-06
diff --git a/Master/texmf-dist/doc/latex/enumitem/enumitem.pdf b/Master/texmf-dist/doc/latex/enumitem/enumitem.pdf
index f137f551d37..46d388652b6 100644
--- a/Master/texmf-dist/doc/latex/enumitem/enumitem.pdf
+++ b/Master/texmf-dist/doc/latex/enumitem/enumitem.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/enumitem/enumitem.tex b/Master/texmf-dist/doc/latex/enumitem/enumitem.tex
index 70e51ffaaef..876390ae9e2 100644
--- a/Master/texmf-dist/doc/latex/enumitem/enumitem.tex
+++ b/Master/texmf-dist/doc/latex/enumitem/enumitem.tex
@@ -5,7 +5,7 @@
% Copyright (c) 2003-2011 by Javier Bezos.
% All Rights Reserved.
%
-% This file is part of the enumitem distribution release 3.2
+% This file is part of the enumitem distribution release 3.4
% -----------------------------------------------------------
%
% It may be distributed and/or modified under the
@@ -48,7 +48,7 @@ find mistakes in the manual. Other packages by the same author:
\textsf{gloss} (with Jos\'e Luis D\'{\i}az), \textsf{accents,
tensind, esindex, dotlessi, titlesec, titletoc}.}}
-\date{Version 3.3\\2011-07-14}
+\date{Version 3.4\\2011-08-06}
\IfFileExists{enumitem.sty}{\usepackage{enumitem}}{}
@@ -283,6 +283,14 @@ If the last thing in the definition is a skip (typically \verb|\hfil|), it is
removed sometimes by description. If for some reason you want to avoid
this, just add \verb|\null| at the end.
+Although primarily intended for the alignment, this commands has other
+uses (as in the provided \verb|parleft|). For example, with the
+following all labels with |align=right| are set as superscripts:
+\begin{verbatim}
+\SetLabelAlign{right}{\hss\llap{\textsuperscript{#1}}}
+\end{verbatim}
+(A new name is also possible, of course.)
+
\subsection{Horizontal spacing of labels}
@@ -603,12 +611,14 @@ future, because the current one is not what one could expect).
\subsection{Compact lists}
\begin{desc}
-|noitemsep|\qquad|nolistsep|
+|noitemsep|\qquad|nosep|
\end{desc}
The key |noitemsep| kills the space between items and paragraphs
(i.e., |itemsep=0pt| and |parsep=0pt|), while
-|nolistsep| kills all vertical spacing.
+|nosep| kills all vertical spacing.\footnote{The key
+\texttt{nolistsep}, now deprecated, introduced a thin stretch, which
+was not the intended behaviour.}
\subsection{``Wide'' lists}
@@ -906,7 +916,23 @@ example:
\SetEnumitemKey{midsep}{topsep=3pt,partopsep=0pt}
\end{verbatim}
-Keys so defined can then be used like the others.
+Keys so defined can then be used like the others. Another example is
+multicolumn lists, with \textsf{multicol}:
+\begin{verbatim}
+\SetEnumitemKey{twocol}{
+ itemsep=1\itemsep,
+ parsep=1\parsep,
+ before=\raggedcolumns\begin{multicols}{2},
+ after=\end{multicols}}
+\end{verbatim}
+
+(The settings for \texttt{itemsep} and \texttt{parsep} kill the
+stretch and shrink parts. Of course, you may want to define a new
+list or a key.)
+
+Note the package may introduce new keys in the future, so
+\verb|\SetEnumitemKey| is a potential source of forward
+incompatibilities.
\begin{desc}
|\SetEnumitemValue{<key>}{<string-value>}{<replacement>}|\3
@@ -1382,6 +1408,13 @@ overlap.
\textsf{enumitem}.
\item (3.3) Fixes a serious bug -- with \verb|*| neither
\verb|itemize| nor \verb|description| worked.
+\item (3.4) Fixes bad spacing in mode boxed (misplaced \verb|\unskip|
+before the first item and wrong spacefactor between items).
+\item (3.4) \verb|nolistsep| did not work as intended, but since the
+error has been there for several years, a new key \verb|nosep| is
+provided.
+\item (3.4) The issue with \verb|nolistsep| with \verb|shortlabels|
+(see above) was not fixed in all cases. Hopefully now it is.
\end{itemize}
\subsection{Acknowledgements}
diff --git a/Master/texmf-dist/tex/latex/enumitem/enumitem.sty b/Master/texmf-dist/tex/latex/enumitem/enumitem.sty
index 60b70dbc59e..e81a0d894c8 100644
--- a/Master/texmf-dist/tex/latex/enumitem/enumitem.sty
+++ b/Master/texmf-dist/tex/latex/enumitem/enumitem.sty
@@ -5,7 +5,7 @@
% Copyright (c) 2003-2011 by Javier Bezos.
% All Rights Reserved.
%
-% This file is part of the enumitem distribution release 3.3
+% This file is part of the enumitem distribution release 3.4
% -----------------------------------------------------------
%
% It may be distributed and/or modified under the
@@ -37,12 +37,14 @@
% - Compatibility with interfaces and zref-enumitem
% - "Pausing" somehow inline boxed text.
% - \@enumctr <-> \@listctr?
+% - Define keys with values
+% - Revise @nobreak
%
% Release
% ~~~~~~~
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{enumitem}[2011/07/14 v3.3 Customized lists]
+\ProvidesPackage{enumitem}[2011/08/06 v3.4 Customized lists]
% +=============================+
% | EMULATING KEYVAL |
@@ -91,7 +93,7 @@
\@tempb\relax
\fi}
-\def\enitkv@errx#1{\PackageError{enumitem}{#1}\@ehc}
+\def\enitkv@errx#1{\enit@error{#1}\@ehc}
\let\enitkv@err\enitkv@errx
@@ -163,35 +165,32 @@
% Miscelaneous errors
% ===================
+\def\enit@error{\PackageError{enumitem}}
+
\def\enit@checkerror#1#2{%
- \PackageError{enumitem}%
- {Unknown value `#2' for key `#1'}%
+ \enit@error{Unknown value `#2' for key `#1'}%
{See the manual for valid values}}
\def\enit@itemerror{%
- \PackageError{enumitem}%
- {Misplaced \string\item}%
+ \enit@error{Misplaced \string\item}%
{Either there is some text before the first\MessageBreak
item or the last item has no text}}
\def\enit@noserieserror#1{%
- \PackageError{enumitem}%
- {Series `#1' not started}%
+ \enit@error{Series `#1' not started}%
{You are trying to continue a series\MessageBreak
which has not been started with series}}
\def\enit@checkseries#1{%
\ifcase\enit@resuming
- \PackageError{enumitem}%
- {Misplaced key `#1'}%
+ \enit@error{Misplaced key `#1'}%
{`series' and `resume*' must be used\MessageBreak
in the optional argument of lists}%
\fi}
\def\enit@checkseries@m{%
\ifcase\enit@resuming\else
- \PackageError{enumitem}%
- {Uncompatible series settings}%
+ \enit@error{Uncompatible series settings}%
{`series' and `resume*' must not be used\MessageBreak
at the same time}%
\fi}
@@ -339,8 +338,7 @@
\enit@checkseries@m
\let\enit@resuming\@ne
\@ifundefined{enitkv@enumitem@#1}{}%
- {\PackageError{enumitem}%
- {Invalid series name `#1'}%
+ {\enit@error{Invalid series name `#1'}%
{Do not name a series with an existing key}}%
\def\enit@series{#1}}
@@ -374,8 +372,7 @@
\newcommand\restartlist[1]{%
\@ifundefined{end#1}%
- {\PackageError{enumitem}%
- {Undefined list `#1'}%
+ {\enit@error{Undefined list `#1'}%
{No list has been defined with that name.}}%
{\expandafter\let
\csname enit@resume@#1\endcsname\@empty}}
@@ -615,7 +612,7 @@
\def\enit@first#1,#2\@@nil{%
\in@{=}{#1}% Quick test, if contains =, it's key=value
\ifin@\else
- \def\enit@a{#1}%
+ \enitkv@@sp@def\enit@a{#1}%
\@ifundefined{enitkv@enumitem@\enit@meaning\enit@a}%
{\ifnum\enit@type=\z@
\def\enit@elt{\enit@replace\enit@a}%
@@ -645,7 +642,7 @@
\else
\edef\enit@a{\the\enit@toks}%
\ifx\enit@a\@empty\else
- \PackageError{enumitem}{Extra short label ignored}%
+ \enit@error{Extra short label ignored}%
{There are more than one short label}%
\fi
\addto@hook\enit@toks{##1#3}%
@@ -680,6 +677,13 @@
\itemsep=\z@skip
\parsep=\z@skip}
+\enitkv@key{enumitem}{nosep}[true]{%
+ \partopsep=\z@skip
+ \topsep=\z@skip
+ \itemsep=\z@skip
+ \parsep=\z@skip}
+
+
\enitkv@key{enumitem}{noitemsep}[true]{%
\itemsep=\z@skip
\parsep=\z@skip}
@@ -708,8 +712,7 @@
\newcommand\SetEnumitemValue[2]{% Implicit #3
\@ifundefined{enit@enitkv@#1}%
{\@ifundefined{enitkv@enumitem@#1}%
- {\PackageError{enumitem}%
- {Wrong key `#1' in \string\SetEnumitemValue}%
+ {\enit@error{Wrong key `#1' in \string\SetEnumitemValue}%
{Perhaps you have misspelled it}}{}%
\expandafter\let\csname enit@enitkv@#1\expandafter\endcsname
\csname enitkv@enumitem@#1\endcsname}{}%
@@ -728,9 +731,8 @@
\newcommand\SetEnumitemKey[2]{%
\@ifundefined{enitkv@enumitem@#1}%
{\enitkv@key{enumitem}{#1}[]{\enitkv@setkeys{enumitem}{#2}}}%
- {\PackageError{enumitem}%
- {Duplicated key `#1' in \string\SetEnumitemKey}%
- {There already existsa key with that name}}}
+ {\enit@error{Duplicated key `#1' in \string\SetEnumitemKey}%
+ {There already exists a key with that name}}}
% +=============================+
% | PROCESSING KEYS |
@@ -771,8 +773,7 @@
{\csname enit@widest\expandafter\@gobbletwo\string##1\endcsname{#4}}}}
\def\enit@valueerror#1{\z@ % if after an assignment, but doesn't catch \ifnum
- \PackageError{enumitem}%
- {No default \string\value\space for `#1'}%
+ \enit@error{No default \string\value\space for `#1'}%
{You can provide one with widest*}}%
\let\enit@values\@empty
@@ -1031,11 +1032,19 @@
\def\enit@endinlist{%
\ifenit@boxmode
- \unskip\color@endgroup\egroup
+ \unskip
+ \xdef\enit@afteritem{%
+ \ifhmode
+ \spacefactor\the\spacefactor\relax
+ \fi}%
+ \color@endgroup
+ \egroup
+ \enit@afteritem
\ifdim\wd\enit@inbox=\z@
\enit@itemerror
\else
\ifenit@noinitem\else
+ \ifhmode\unskip\fi
\@ifundefined{enit@itemjoin@s}%
{\enit@itemjoin}%
{\enit@itemjoin@s}%
@@ -1109,8 +1118,13 @@
\def\enit@endinbox{%
\unskip
+ \xdef\enit@afteritem{%
+ \ifhmode
+ \spacefactor\the\spacefactor\relax
+ \fi}%
\color@endgroup
\egroup
+ \enit@afteritem
\enit@outeritem}
\def\enit@boxitem[#1]{%
@@ -1122,13 +1136,13 @@
\enit@noinitemtrue
\leavevmode % ships pending labels out
\else
- \ifhmode\unskip\fi
\ifdim\wd\enit@inbox=\z@
\enit@itemerror
\else
\ifenit@noinitem
\enit@noinitemfalse
\else
+ \ifhmode\unskip\fi
\enit@itemjoin
\fi
\unhbox\@labels
@@ -1351,8 +1365,7 @@
\def\enit@a{#1#2#3#4}%
\def\enit@b{\global\setbox\@labels\hbox}%
\ifx\enit@a\enit@b\else
- \PackageError{enumitem}%
- {Non standard \string\item}%
+ \enit@error{Non standard \string\item}%
{A class or a package has redefined \string\item\MessageBreak
and I do not know how to continue}%
\fi
@@ -1450,7 +1463,7 @@
\def\enit@xset@itemize{%
\@namedef{label\enit@c\romannumeral\count@}{%
- \PackageError{enumitem}{Undefined label}%
+ \enit@error{Undefined label}%
{You have defined a list, but labels have
not been setup.\MessageBreak
You can set the label field with \string\setlist.}}}
@@ -1472,7 +1485,7 @@
\def\enit@newlist#1#2#3#4{%
\@ifundefined{enit@xset@#3}%
- {\PackageError{enumitem}{Unknown list type `#3')}%
+ {\enit@error{Unknown list type `#3')}%
{Valid types are:
enumerate, itemize, description,\messageBreak
enumerate*, itemize*, description*}}%