summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/enumitem
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 /Master/texmf-dist/tex/latex/enumitem
parent0bf00106b7244ea238a258489faa59910696603d (diff)
enumitem (10aug11)
git-svn-id: svn://tug.org/texlive/trunk@23489 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/enumitem')
-rw-r--r--Master/texmf-dist/tex/latex/enumitem/enumitem.sty77
1 files changed, 45 insertions, 32 deletions
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*}}%