summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/oberdiek
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-04-03 23:05:33 +0000
committerKarl Berry <karl@freefriends.org>2010-04-03 23:05:33 +0000
commit90a0248cdfcfb319a340ecb87aad0d24aae44687 (patch)
treee29c83cfd4269be4dcce559e2b936abe2ba531ce /Master/texmf-dist/source/latex/oberdiek
parent4ca6e289a7da2f6e65dcc4591bab0800af7f6891 (diff)
oberdiek update (2apr10)
git-svn-id: svn://tug.org/texlive/trunk@17668 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/oberdiek')
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/bookmark.dtx471
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/centernot.dtx20
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/ltxcmds.dtx2
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/oberdiek.ins2
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/oberdiek.tex10
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/pdftexcmds.dtx27
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/zref.dtx282
7 files changed, 661 insertions, 153 deletions
diff --git a/Master/texmf-dist/source/latex/oberdiek/bookmark.dtx b/Master/texmf-dist/source/latex/oberdiek/bookmark.dtx
index 99b1ec81951..1bc538f99c1 100644
--- a/Master/texmf-dist/source/latex/oberdiek/bookmark.dtx
+++ b/Master/texmf-dist/source/latex/oberdiek/bookmark.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright (C) 2007-2009 by
+% Copyright (C) 2007-2010 by
% Heiko Oberdiek <heiko.oberdiek at googlemail.com>
%
% This work may be distributed and/or modified under the
@@ -81,7 +81,7 @@
\input docstrip.tex
\Msg{************************************************************************}
\Msg{* Installation}
-\Msg{* Package: bookmark 2009/12/17 v1.8 PDF bookmarks (HO)}
+\Msg{* Package: bookmark 2010/04/03 v1.10 PDF bookmarks (HO)}
\Msg{************************************************************************}
\keepsilent
@@ -92,7 +92,7 @@
This is a generated file.
-Copyright (C) 2007-2009 by
+Copyright (C) 2007-2010 by
Heiko Oberdiek <heiko.oberdiek at googlemail.com>
This work may be distributed and/or modified under the
@@ -164,7 +164,7 @@ and the derived files
%<*driver>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{bookmark.drv}%
- [2009/12/17 v1.8 PDF bookmarks (HO)]%
+ [2010/04/03 v1.10 PDF bookmarks (HO)]%
\documentclass{ltxdoc}
\usepackage{holtxdoc}[2008/08/11]
\begin{document}
@@ -173,7 +173,7 @@ and the derived files
%</driver>
% \fi
%
-% \CheckSum{1947}
+% \CheckSum{2086}
%
% \CharacterTable
% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
@@ -194,7 +194,7 @@ and the derived files
% \GetFileInfo{bookmark.drv}
%
% \title{The \xpackage{bookmark} package}
-% \date{2009/12/17 v1.8}
+% \date{2010/04/03 v1.10}
% \author{Heiko Oberdiek\\\xemail{heiko.oberdiek at googlemail.com}}
%
% \maketitle
@@ -279,7 +279,7 @@ and the derived files
% |\chardef\SpecialDvipdfmxOutlineOpen=1\relax|
% \end{quote}
%
-% \subsubsection{Style options}
+% \subsubsection{Layout options}
%
% \paragraph{Font options.}
%
@@ -408,6 +408,69 @@ and the derived files
% \end{quote}
% \end{description}
%
+% \subsubsection{Style definitions}
+%
+% A style is a group of option settings. It can be defined
+% by macro \cs{bookmarkdefinestyle} and is used by option \xoption{style}.
+% \begin{declcs}{bookmarkdefinestyle} \M{name} \M{key value list}
+% \end{declcs}
+% The \meta{key value list} of option settings is assigned the
+% style \meta{name}.
+%
+% \begin{description}
+% \item[\xoption{style}:]
+% The value of option \xoption{style} is the name of a previously
+% defined style. Its option settings are now executed.
+% The options may include option \xoption{style}.
+% Endless recursion by calling the same style recursively
+% is prevented and throws an error.
+% \end{description}
+%
+% \subsubsection{Hook support}
+%
+% A hook is called right after the processing the optional options
+% of macro \cs{bookmark}.
+% \begin{description}
+% \item[\xoption{addtohook}:]
+% Code, given as value to this option is added to the hook.
+% \end{description}
+%
+% \begin{declcs}{bookmarkget} \M{option}
+% \end{declcs}
+% Macro \cs{bookmarkget} extract the value of the latest option
+% setting of option \meta{option}. In case of boolean options number
+% one is returned, if the boolean option is enabled, otherwise the
+% result is zero. Macro \cs{bookmarkget} is expandable. In case of
+% unsupported options an empty string is returned.
+% Supported boolean options are
+% \begin{quote}
+% \xoption{bold},
+% \xoption{italic},
+% \xoption{open}
+% \end{quote}
+% Other supported options:
+% \begin{quote}
+% \xoption{depth},
+% \xoption{dest},
+% \xoption{color},
+% \xoption{gotor},
+% \xoption{level},
+% \xoption{named},
+% \xoption{openlevel},
+% \xoption{page},
+% \xoption{rawaction},
+% \xoption{uri},
+% \xoption{view},
+% \end{quote}
+% Additionally the following key is available:
+% \begin{quote}
+% \xoption{text}
+% \end{quote}
+% It returns the text of the outline entry.
+%
+% \paragraph{Option setting.}
+% Inside the hook an option can be set using \cs{bookmarksetup}.
+%
% \subsection{Compatibility with \xpackage{hyperref}}
%
% Package \xpackage{bookmark} automatically disables
@@ -510,7 +573,7 @@ and the derived files
open,
openlevel=2,
atend
-]{bookmark}[2009/12/17]
+]{bookmark}[2010/04/03]
\bookmarksetup{color=blue}
@@ -613,7 +676,7 @@ and the derived files
%<*package>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{bookmark}%
- [2009/12/17 v1.8 PDF bookmarks (HO)]%
+ [2010/04/03 v1.10 PDF bookmarks (HO)]%
% \end{macrocode}
%
% \subsubsection{Requirements}
@@ -679,6 +742,7 @@ and the derived files
\RequirePackage{kvoptions}[2009/08/13]
\RequirePackage{hycolor}[2008/09/08]
\RequirePackage{bitset}
+\RequirePackage{ltxcmds}[2010/03/01]
% \end{macrocode}
%
% \subsubsection{Package options}
@@ -706,17 +770,49 @@ and the derived files
uri,%
view,%
}
+% \end{macrocode}
+% \begin{macro}{\bookmarksetup}
+% \begin{macrocode}
\newcommand*{\bookmarksetup}{\setkeys{BKM}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\BKM@setup}
+% \begin{macrocode}
+\def\BKM@setup#1{%
+ \bookmarksetup{#1}%
+ \BKM@hook
+ \ifBKM@keeplevel
+ \else
+ \xdef\BKM@currentlevel{\BKM@level}%
+ \fi
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macrocode}
\DeclareBoolOption[\ifHy@bookmarksopen true\else false\fi]{open}
+% \end{macrocode}
+% \begin{macro}{\bookmark@open}
+% \begin{macrocode}
+\def\bookmark@open{%
+ \ifBKM@open\ltx@one\else\ltx@zero\fi
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macrocode}
\DeclareStringOption[\maxdimen]{openlevel}
+% \end{macrocode}
+% \begin{macro}{\BKM@openlevel}
+% \begin{macrocode}
\edef\BKM@openlevel{\number\@bookmarksopenlevel}
+% \end{macrocode}
+% \end{macro}
+% \begin{macrocode}
%\DeclareStringOption[\c@tocdepth]{depth}
-\begingroup\expandafter\expandafter\expandafter\endgroup
-\expandafter\ifx\csname Hy@bookmarksdepth\endcsname\relax
+\ltx@IfUndefined{Hy@bookmarksdepth}{%
\def\BKM@depth{\c@tocdepth}%
-\else
+}{%
\let\BKM@depth\Hy@bookmarksdepth
-\fi
+}
\define@key{BKM}{depth}[]{%
\edef\BKM@param{#1}%
\ifx\BKM@param\@empty
@@ -743,6 +839,14 @@ and the derived files
}%
\fi
}
+% \end{macrocode}
+% \begin{macro}{\bookmark@depth}
+% \begin{macrocode}
+\def\bookmark@depth{\BKM@depth}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\BKM@SetDepth}
+% \begin{macrocode}
\def\BKM@SetDepth#1{%
\begingroup
\setbox\z@=\hbox{%
@@ -752,14 +856,26 @@ and the derived files
\expandafter\endgroup
\expandafter\def\expandafter\BKM@depth\expandafter{\the\count@}%
}
+% \end{macrocode}
+% \end{macro}
+% \begin{macrocode}
\DeclareStringOption[\BKM@currentlevel]{level}[\BKM@currentlevel]
\DeclareBoolOption{keeplevel}
\DeclareBoolOption{startatroot}
\define@key{BKM}{rellevel}{%
\BKM@CalcExpr\BKM@level{#1}+\BKM@currentlevel
}
+% \end{macrocode}
+% \begin{macro}{\bookmark@level}
+% \begin{macrocode}
+\def\bookmark@level{\BKM@level}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\BKM@currentlevel}
+% \begin{macrocode}
\def\BKM@currentlevel{0}
% \end{macrocode}
+% \end{macro}
% Make \xpackage{bookmark}'s option \xoption{numbered} an alias
% for \xpackage{hyperref}'s \xoption{bookmarksnumbered}.
% \begin{macrocode}
@@ -779,6 +895,13 @@ and the derived files
\let\ifBKM@numbered\iffalse
}
% \end{macrocode}
+% \begin{macro}{\bookmark@numbered}
+% \begin{macrocode}
+\def\bookmark@numbered{%
+ \ifBKM@numbered\ltx@one\else\ltx@zero\fi
+}
+% \end{macrocode}
+% \end{macro}
%
% \paragraph{Redefinitions \xpackage{hyperref}'s options}
%
@@ -800,30 +923,48 @@ and the derived files
\BKM@PatchHyperrefOption{bookmarksdepth}{depth}
% \end{macrocode}
%
-% \paragraph{Style options.}
+% \paragraph{Font style options.}
%
% Caution: Package \xpackage{bitset} is zero-based, the
% PDF specifications starts with one.
% \begin{macrocode}
-\bitsetReset{BKM@style}%
+\bitsetReset{BKM@FontStyle}%
\define@key{BKM}{italic}[true]{%
\expandafter\ifx\csname if#1\endcsname\iftrue
- \bitsetSet{BKM@style}{0}%
+ \bitsetSet{BKM@FontStyle}{0}%
\else
- \bitsetClear{BKM@style}{0}%
+ \bitsetClear{BKM@FontStyle}{0}%
\fi
}%
\define@key{BKM}{bold}[true]{%
\expandafter\ifx\csname if#1\endcsname\iftrue
- \bitsetSet{BKM@style}{1}%
+ \bitsetSet{BKM@FontStyle}{1}%
\else
- \bitsetClear{BKM@style}{1}%
+ \bitsetClear{BKM@FontStyle}{1}%
\fi
}%
+% \end{macrocode}
+% \begin{macro}{\bookmark@italic}
+% \begin{macrocode}
+\def\bookmark@italic{%
+ \ifnum\bitsetGet{BKM@FontStyle}{0}=1 \ltx@one\else\ltx@zero\fi
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\bookmark@bold}
+% \begin{macrocode}
+\def\bookmark@bold{%
+ \ifnum\bitsetGet{BKM@FontStyle}{1}=1 \ltx@one\else\ltx@zero\fi
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\BKM@PrintStyle}
+% \begin{macrocode}
\def\BKM@PrintStyle{%
- \bitsetGetDec{BKM@style}%
+ \bitsetGetDec{BKM@FontStyle}%
}%
% \end{macrocode}
+% \end{macro}
%
% \paragraph{Options for color.}
%
@@ -831,18 +972,53 @@ and the derived files
\define@key{BKM}{color}{%
\HyColor@BookmarkColor{#1}\BKM@color{bookmark}{color}%
}
+% \end{macrocode}
+% \begin{macro}{\BKM@color}
+% \begin{macrocode}
\let\BKM@color\@empty
% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\bookmark@color}
+% \begin{macrocode}
+\def\bookmark@color{\BKM@color}
+% \end{macrocode}
+% \end{macro}
%
% \subsubsection{Action options}
%
% \begin{macrocode}
-\DeclareStringOption{dest}
-\DeclareStringOption{named}
-\DeclareStringOption{uri}
-\DeclareStringOption{gotor}
-\DeclareStringOption{rawaction}
+\def\BKM@temp#1{%
+ \DeclareStringOption{#1}%
+ \expandafter\edef\csname BKM@#1\endcsname{%
+ \expandafter\noexpand\csname bookmark@#1\endcsname
+ }%
+}
+% \end{macrocode}
+% \begin{macro}{\bookmark@dest}
+% \begin{macrocode}
+\BKM@temp{dest}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\bookmark@named}
+% \begin{macrocode}
+\BKM@temp{named}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\bookmark@uri}
+% \begin{macrocode}
+\BKM@temp{uri}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\bookmark@gotor}
+% \begin{macrocode}
+\BKM@temp{gotor}
% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\bookmark@rawaction}
+% \begin{macrocode}
+\BKM@temp{rawaction}
+% \end{macrocode}
+% \end{macro}
%
% \begin{macrocode}
\define@key{BKM}{page}{%
@@ -857,17 +1033,42 @@ and the derived files
\fi
\fi
}
+% \end{macrocode}
+% \begin{macro}{\BKM@page}
+% \begin{macrocode}
\let\BKM@page\@empty
% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\bookmark@page}
+% \begin{macrocode}
+\def\bookmark@page{\BKM@@page}
+% \end{macrocode}
+% \end{macro}
%
% \begin{macrocode}
\define@key{BKM}{view}{%
\BKM@CheckView{#1}%
}
+% \end{macrocode}
+% \begin{macro}{\BKM@view}
+% \begin{macrocode}
\let\BKM@view\@empty
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\bookmark@view}
+% \begin{macrocode}
+\def\bookmark@view{\BKM@view}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{BKM@CheckView}
+% \begin{macrocode}
\def\BKM@CheckView#1{%
\BKM@CheckViewType#1 \@nil
}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\BKM@CheckViewType}
+% \begin{macrocode}
\def\BKM@CheckViewType#1 #2\@nil{%
\def\BKM@type{#1}%
\@onelevel@sanitize\BKM@type
@@ -892,7 +1093,7 @@ and the derived files
\BKM@CheckXYZ{#2}{ }%
}%
\@car{%
- \PackageError{pdfbookmark}{%
+ \PackageError{bookmark}{%
Unknown view type `\BKM@type',\MessageBreak
using `FitH' instead%
}\@ehc
@@ -900,6 +1101,10 @@ and the derived files
}%
\@nil
}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\BKM@TestViewType}
+% \begin{macrocode}
\def\BKM@TestViewType#1{%
\def\BKM@temp{#1}%
\@onelevel@sanitize\BKM@temp
@@ -910,6 +1115,10 @@ and the derived files
\expandafter\@gobble
\fi
}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{BKM@CheckParam}
+% \begin{macrocode}
\def\BKM@CheckParam#1 #2\@nil#3{%
\def\BKM@param{#1}%
\ifx\BKM@param\@empty
@@ -923,9 +1132,17 @@ and the derived files
\fi
\edef\BKM@view{\BKM@view\space\BKM@param}%
}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{BKM@CheckRect}
+% \begin{macrocode}
\def\BKM@CheckRect#1#2{%
\BKM@@CheckRect#1#2#2#2#2\@nil
}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\BKM@@CheckRect}
+% \begin{macrocode}
\def\BKM@@CheckRect#1 #2 #3 #4 #5\@nil{%
\def\BKM@temp{0}%
\def\BKM@param{#1}%
@@ -964,9 +1181,17 @@ and the derived files
\PackageWarning{bookmark}{Missing parameters for `\BKM@type'}%
\fi
}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\BKM@CheckXYZ}
+% \begin{macrocode}
\def\BKM@CheckXYZ#1#2{%
\BKM@@CheckXYZ#1#2#2#2\@nil
}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\BKM@@CheckXYZ}
+% \begin{macrocode}
\def\BKM@@CheckXYZ#1 #2 #3 #4\@nil{%
\def\BKM@param{#1}%
\let\BKM@temp\BKM@param
@@ -998,16 +1223,26 @@ and the derived files
\fi
\edef\BKM@view{\BKM@view\space\BKM@param}%
}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\BKM@null}
+% \begin{macrocode}
\def\BKM@null{null}
\@onelevel@sanitize\BKM@null
% \end{macrocode}
+% \end{macro}
%
+% \begin{macro}{\BKM@CalcParam}
% \begin{macrocode}
\def\BKM@CalcParam{%
\begingroup
\let\calc\@firstofone
\expandafter\BKM@@CalcParam\BKM@param\@empty\@empty\@nil
}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\BKM@@CalcParam}
+% \begin{macrocode}
\def\BKM@@CalcParam#1#2#3\@nil{%
\ifx\calc#1%
\@ifundefined{calc@assign@dimen}{%
@@ -1024,15 +1259,141 @@ and the derived files
\fi
}
% \end{macrocode}
+% \end{macro}
%
% \subsubsection{Option \xoption{atend}}
%
% \begin{macrocode}
\DeclareBoolOption{atend}
+% \end{macrocode}
+% \begin{macro}{\BKM@DisableOptions}
+% \begin{macrocode}
\def\BKM@DisableOptions{%
\DisableKeyvalOption{BKM}{atend}%
}
% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection{Option \xoption{style}}
+%
+% \begin{macro}{\bookmarkdefinestyle}
+% \begin{macrocode}
+\newcommand*{\bookmarkdefinestyle}[2]{%
+ \@ifundefined{BKM@style@#1}{%
+ }{%
+ \PackageInfo{bookmark}{Redefining style `#1'}%
+ }%
+ \@namedef{BKM@style@#1}{#2}%
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macrocode}
+\define@key{BKM}{style}{%
+ \BKM@StyleCall{#1}%
+}
+\newif\ifBKM@ok
+% \end{macrocode}
+% \begin{macro}{\BKM@StyleCall}
+% \begin{macrocode}
+\def\BKM@StyleCall#1{%
+ \@ifundefined{BKM@style@#1}{%
+ \PackageError{bookmark}{%
+ Undefined style `#1'%
+ }\@ehc
+ }{%
+% \end{macrocode}
+% Check style stack.
+% \begin{macrocode}
+ \BKM@oktrue
+ \edef\BKM@StyleCurrent{#1}%
+ \@onelevel@sanitize\BKM@StyleCurrent
+ \let\BKM@StyleEntry\BKM@StyleEntryCheck
+ \BKM@StyleStack
+ \ifBKM@ok
+ \expandafter\@firstofone
+ \else
+ \PackageError{bookmark}{%
+ Ignoring recursive call of style `\BKM@StyleCurrent'%
+ }\@ehc
+ \expandafter\@gobble
+ \fi
+ {%
+% \end{macrocode}
+% Push current style on stack.
+% \begin{macrocode}
+ \let\BKM@StyleEntry\relax
+ \edef\BKM@StyleStack{%
+ \BKM@StyleEntry{\BKM@StyleCurrent}%
+ \BKM@StyleStack
+ }%
+% \end{macrocode}
+% Call style.
+% \begin{macrocode}
+ \expandafter\expandafter\expandafter\bookmarksetup
+ \expandafter\expandafter\expandafter{%
+ \csname BKM@style@\BKM@StyleCurrent\endcsname
+ }%
+% \end{macrocode}
+% Pop current style from stack.
+% \begin{macrocode}
+ \BKM@StyleStackPop
+ }%
+ }%
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\BKM@StyleStackPop}
+% \begin{macrocode}
+\def\BKM@StyleStackPop{%
+ \let\BKM@StyleEntry\relax
+ \edef\BKM@StyleStack{%
+ \expandafter\@gobbletwo\BKM@StyleStack
+ }%
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\BKM@StyleEntryCheck}
+% \begin{macrocode}
+\def\BKM@StyleEntryCheck#1{%
+ \def\BKM@temp{#1}%
+ \ifx\BKM@temp\BKM@StyleCurrent
+ \BKM@okfalse
+ \fi
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\BKM@StyleStack}
+% \begin{macrocode}
+\def\BKM@StyleStack{}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection{Hook support}
+%
+% \begin{macro}{\BKM@hook}
+% \begin{macrocode}
+\def\BKM@hook{}
+% \end{macrocode}
+% \end{macro}
+% \begin{macrocode}
+\define@key{BKM}{addtohook}{%
+ \ltx@LocalAppendToMacro\BKM@hook{#1}%
+}
+% \end{macrocode}
+%
+% \begin{macro}{bookmarkget}
+% \begin{macrocode}
+\newcommand*{\bookmarkget}[1]{%
+ \romannumeral0%
+ \ltx@ifundefined{bookmark@#1}{%
+ \ltx@space
+ }{%
+ \expandafter\expandafter\expandafter\ltx@space
+ \csname bookmark@#1\endcsname
+ }%
+}
+% \end{macrocode}
+% \end{macro}
%
% \subsubsection{Driver setup and loading}
%
@@ -1067,6 +1428,11 @@ and the derived files
\DisableKeyvalOption{BKM}{dvipdfmx-outline-open}%
}
% \end{macrocode}
+% \begin{macro}{\bookmark@driver}
+% \begin{macrocode}
+\def\bookmark@driver{\BKM@driver}
+% \end{macrocode}
+% \end{macro}
% \begin{macrocode}
\InputIfFileExists{bookmark.cfg}{}{}
\providecommand*{\BookmarkDriverDefault}{dvips}
@@ -1226,7 +1592,7 @@ and the derived files
%<*dvipdfm>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{bkm-dvipdfm.def}%
- [2009/12/17 v1.8 bookmark driver for dvipdfm (HO)]%
+ [2010/04/03 v1.10 bookmark driver for dvipdfm (HO)]%
% \end{macrocode}
%
% \begin{macrocode}
@@ -1245,11 +1611,8 @@ and the derived files
\newcommand*{\bookmark}[2][]{%
\if@filesw
\begingroup
- \bookmarksetup{#1}%
- \ifBKM@keeplevel
- \else
- \xdef\BKM@currentlevel{\BKM@level}%
- \fi
+ \def\bookmark@text{#2}%
+ \BKM@setup{#1}%
\edef\BKM@prev{\the\BKM@id}%
\global\advance\BKM@id\@ne
\BKM@swtrue
@@ -1276,7 +1639,7 @@ and the derived files
\fi
}%
\csname HyPsd@XeTeXBigCharstrue\endcsname
- \pdfstringdef\BKM@title{#2}%
+ \pdfstringdef\BKM@title{\bookmark@text}%
\edef\BKM@FLAGS{\BKM@PrintStyle}%
\let\BKM@action\@empty
\ifx\BKM@gotor\@empty
@@ -1392,7 +1755,7 @@ and the derived files
%<*vtex>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{bkm-vtex.def}%
- [2009/12/17 v1.8 bookmark driver for VTeX (HO)]%
+ [2010/04/03 v1.10 bookmark driver for VTeX (HO)]%
% \end{macrocode}
%
% \begin{macrocode}
@@ -1420,11 +1783,8 @@ and the derived files
\newcommand*{\bookmark}[2][]{%
\if@filesw
\begingroup
- \bookmarksetup{#1}%
- \ifBKM@keeplevel
- \else
- \xdef\BKM@currentlevel{\BKM@level}%
- \fi
+ \def\bookmark@text{#2}%
+ \BKM@setup{#1}%
\edef\BKM@prev{\the\BKM@id}%
\global\advance\BKM@id\@ne
\BKM@swtrue
@@ -1450,7 +1810,7 @@ and the derived files
\fi
\fi
}%
- \pdfstringdef\BKM@title{#2}%
+ \pdfstringdef\BKM@title{\bookmark@text}%
\BKM@vtex@title
\edef\BKM@FLAGS{\BKM@PrintStyle}%
\let\BKM@action\@empty
@@ -1677,7 +2037,7 @@ and the derived files
%<*pdftex>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{bkm-pdftex.def}%
- [2009/12/17 v1.8 bookmark driver for pdfTeX (HO)]%
+ [2010/04/03 v1.10 bookmark driver for pdfTeX (HO)]%
% \end{macrocode}
%
% \begin{macrocode}
@@ -1798,7 +2158,7 @@ and the derived files
%<*dvips>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{bkm-dvips.def}%
- [2009/12/17 v1.8 bookmark driver for dvips (HO)]%
+ [2010/04/03 v1.10 bookmark driver for dvips (HO)]%
% \end{macrocode}
% \begin{macrocode}
\def\BKM@PSHeaderFile#1{%
@@ -1813,7 +2173,7 @@ and the derived files
%<*dvipsone>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{bkm-dvipsone.def}%
- [2009/12/17 v1.8 bookmark driver for dvipsone (HO)]%
+ [2010/04/03 v1.10 bookmark driver for dvipsone (HO)]%
% \end{macrocode}
% \begin{macrocode}
\def\BKM@PSHeaderFile#1{%
@@ -1828,7 +2188,7 @@ and the derived files
%<*textures>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{bkm-textures.def}%
- [2009/12/17 v1.8 bookmark driver for textures (HO)]%
+ [2010/04/03 v1.10 bookmark driver for textures (HO)]%
% \end{macrocode}
% \begin{macrocode}
\def\BKM@PSHeaderFile#1{%
@@ -1851,7 +2211,7 @@ and the derived files
% \end{macrocode}
%
% Do not use package \xpackage{rerunfilecheck} here, because
-% the file \cs{BMK@filename} is not read during the \TeX\ run.
+% the file \cs{BKM@filename} is not read during the \TeX\ run.
% \begin{macrocode}
\def\BKM@pdfmark@out{%
\if@filesw
@@ -2032,11 +2392,8 @@ and the derived files
\newcommand*{\bookmark}[2][]{%
\if@filesw
\begingroup
- \bookmarksetup{#1}%
- \ifBKM@keeplevel
- \else
- \xdef\BKM@currentlevel{\BKM@level}%
- \fi
+ \def\bookmark@text{#2}%
+ \BKM@setup{#1}%
\edef\BKM@prev{\the\BKM@id}%
\global\advance\BKM@id\@ne
\BKM@swtrue
@@ -2066,7 +2423,7 @@ and the derived files
\fi
\fi
}%
- \pdfstringdef\BKM@title{#2}%
+ \pdfstringdef\BKM@title{\bookmark@text}%
\edef\BKM@FLAGS{\BKM@PrintStyle}%
\csname BKM@HypDestOptHook\endcsname
\BKM@EscapeHex\BKM@dest
@@ -2518,6 +2875,18 @@ and the derived files
% \item
% Support of \xpackage{hyperref} 2009/12/17 v6.79v for Xe\TeX.
% \end{Version}
+% \begin{Version}{2010/03/30 v1.9}
+% \item
+% Package name in an error message fixed.
+% \end{Version}
+% \begin{Version}{2010/04/03 v1.10}
+% \item
+% Option \xoption{style} and macro \cs{bookmarkdefinestyle} added.
+% \item
+% Hook support with option \xoption{addtohook} added.
+% \item
+% \cs{bookmarkget} added.
+% \end{Version}
% \end{History}
%
% \PrintIndex
diff --git a/Master/texmf-dist/source/latex/oberdiek/centernot.dtx b/Master/texmf-dist/source/latex/oberdiek/centernot.dtx
index d6f4c9a22d5..db5eee82710 100644
--- a/Master/texmf-dist/source/latex/oberdiek/centernot.dtx
+++ b/Master/texmf-dist/source/latex/oberdiek/centernot.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright (C) 2006, 2007 by
+% Copyright (C) 2006, 2007, 2010 by
% Heiko Oberdiek <heiko.oberdiek at googlemail.com>
%
% This work may be distributed and/or modified under the
@@ -71,7 +71,7 @@
\input docstrip.tex
\Msg{************************************************************************}
\Msg{* Installation}
-\Msg{* Package: centernot 2007/05/31 v1.1 Centers the not symbol horizontally (HO)}
+\Msg{* Package: centernot 2010/03/29 v1.2 Centers the not symbol horizontally (HO)}
\Msg{************************************************************************}
\keepsilent
@@ -82,7 +82,7 @@
This is a generated file.
-Copyright (C) 2006, 2007 by
+Copyright (C) 2006, 2007, 2010 by
Heiko Oberdiek <heiko.oberdiek at googlemail.com>
This work may be distributed and/or modified under the
@@ -141,7 +141,7 @@ and the derived files
%<*driver>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{centernot.drv}%
- [2007/05/31 v1.1 Centers the not symbol horizontally (HO)]%
+ [2010/03/29 v1.2 Centers the not symbol horizontally (HO)]%
\documentclass{ltxdoc}
\usepackage{holtxdoc}[2008/08/11]
\usepackage{centernot}
@@ -181,7 +181,7 @@ and the derived files
% \GetFileInfo{centernot.drv}
%
% \title{The \xpackage{centernot} package}
-% \date{2007/05/31 v1.1}
+% \date{2010/03/29 v1.2}
% \author{Heiko Oberdiek\\\xemail{heiko.oberdiek at googlemail.com}}
%
% \maketitle
@@ -196,8 +196,8 @@ and the derived files
%
% \section{User interface}
%
-% If a negotiated relational symbol is not available, \cs{not}
-% can be used to create the negotiated variant of the relational
+% If a negated relational symbol is not available, \cs{not}
+% can be used to create the negated variant of the relational
% symbol. The disadvantage of \cs{not} is that it is put at
% a fixed location regardless of the width of the relational
% symbol. Therefore \cs{centernot} takes an argument and
@@ -253,7 +253,7 @@ and the derived files
%<*package>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{centernot}
- [2007/05/31 v1.1 Centers the not symbol horizontally (HO)]%
+ [2010/03/29 v1.2 Centers the not symbol horizontally (HO)]%
% \end{macrocode}
%
% \noindent
@@ -501,6 +501,10 @@ and the derived files
% \item
% Real symbols added in documentation part.
% \end{Version}
+% \begin{Version}{2010/03/29 v1.2}
+% \item
+% Documentation fix: `negotiated' to `negated' (Hartmut Henkel).
+% \end{Version}
% \end{History}
%
% \PrintIndex
diff --git a/Master/texmf-dist/source/latex/oberdiek/ltxcmds.dtx b/Master/texmf-dist/source/latex/oberdiek/ltxcmds.dtx
index c0b7d96d232..55e941573ae 100644
--- a/Master/texmf-dist/source/latex/oberdiek/ltxcmds.dtx
+++ b/Master/texmf-dist/source/latex/oberdiek/ltxcmds.dtx
@@ -1287,7 +1287,7 @@ and the derived files
% \cs{ltx@iffilelater},
% \cs{ltx@clsextension}, \cs{ltx@pkgextension} added.
% \item
-% \cs{ltx@GlobalAppendMacro}, \cs{ltx@LocalAppendMacro} added.
+% \cs{ltx@GlobalAppendToMacro}, \cs{ltx@LocalAppendToMacro} added.
% \end{Version}
% \begin{Version}{2010/03/01 v1.3}
% \item
diff --git a/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins b/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins
index 48f89f2f44b..853376d9044 100644
--- a/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins
+++ b/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins
@@ -1,5 +1,5 @@
% oberdiek.ins
-% 2010/03/26
+% 2010/04/03
%
% Copyright (C) 1999, 2001, 2006 by
% Heiko Oberdiek <heiko.oberdiek at googlemail.com>
diff --git a/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex b/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex
index ef0dbe9e6f0..7521019307b 100644
--- a/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex
+++ b/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex
@@ -6,7 +6,7 @@
\newcommand*{\Subject}{CTAN:\CTANdir}
\newcommand*{\Author}{Heiko Oberdiek}
\newcommand*{\Email}{heiko.oberdiek at googlemail.com}
-\newcommand*{\Date}{2010/03/26}
+\newcommand*{\Date}{2010/04/03}
% Copyright (C) 2006 by
% Heiko Oberdiek <heiko.oberdiek at googlemail.com>
@@ -186,11 +186,11 @@
[\entrysep]
\entry{bmpsize}{2009/09/04}{1.6}{Extract size and resolution data from bitmap files}%
[\entrysep]
-\entry{bookmark}{2009/12/17}{1.8}{PDF bookmarks}%
+\entry{bookmark}{2010/04/03}{1.10}{PDF bookmarks}%
[\entrysep]
\entry{catchfile}{2010/03/01}{1.3}{Catches the contents of a file}%
[\entrysep]
-\entry{centernot}{2007/05/31}{1.1}{Centers the not symbol horizontally}%
+\entry{centernot}{2010/03/29}{1.2}{Centers the not symbol horizontally}%
[\entrysep]
\entry{chemarr}{2006/02/20}{1.2}{Chemical reaction arrows}%
[\entrysep]
@@ -290,7 +290,7 @@
[\entrysep]
\entry{pdfrender}{2010/01/28}{1.2}{Access to some PDF graphics parameters}%
[\entrysep]
-\entry{pdftexcmds}{2010/03/01}{0.8}{Utility functions of pdfTeX for LuaTeX}%
+\entry{pdftexcmds}{2010/04/01}{0.9}{Utility functions of pdfTeX for LuaTeX}%
[\entrysep]
\entry{picture}{2009/10/11}{1.3}{Dimens for picture macros}%
[\entrysep]
@@ -330,7 +330,7 @@
[\entrysep]
\entry{uniquecounter}{2009/12/18}{1.1}{Provides unlimited unique counter}%
[\entrysep]
-\entry{zref}{2010/03/26}{2.8}{New reference scheme for \LaTeXe{}}%
+\entry{zref}{2010/03/29}{2.9}{New reference scheme for \LaTeXe{}}%
\end{overview}
\section{Packages}
diff --git a/Master/texmf-dist/source/latex/oberdiek/pdftexcmds.dtx b/Master/texmf-dist/source/latex/oberdiek/pdftexcmds.dtx
index e0b98b675c4..3d8813d1d44 100644
--- a/Master/texmf-dist/source/latex/oberdiek/pdftexcmds.dtx
+++ b/Master/texmf-dist/source/latex/oberdiek/pdftexcmds.dtx
@@ -80,7 +80,7 @@
\input docstrip.tex
\Msg{************************************************************************}
\Msg{* Installation}
-\Msg{* Package: pdftexcmds 2010/03/01 v0.8 Utility functions of pdfTeX for LuaTeX (HO)}
+\Msg{* Package: pdftexcmds 2010/04/01 v0.9 Utility functions of pdfTeX for LuaTeX (HO)}
\Msg{************************************************************************}
\keepsilent
@@ -169,7 +169,7 @@ and the derived files
%<*driver>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{pdftexcmds.drv}%
- [2010/03/01 v0.8 Utility functions of pdfTeX for LuaTeX (HO)]%
+ [2010/04/01 v0.9 Utility functions of pdfTeX for LuaTeX (HO)]%
\documentclass{ltxdoc}
\usepackage{holtxdoc}[2008/08/11]
\usepackage{paralist}
@@ -179,7 +179,7 @@ and the derived files
%</driver>
% \fi
%
-% \CheckSum{928}
+% \CheckSum{940}
%
% \CharacterTable
% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
@@ -200,7 +200,7 @@ and the derived files
% \GetFileInfo{pdftexcmds.drv}
%
% \title{The \xpackage{pdftexcmds} package}
-% \date{2010/03/01 v0.8}
+% \date{2010/04/01 v0.9}
% \author{Heiko Oberdiek\\\xemail{heiko.oberdiek at googlemail.com}}
%
% \maketitle
@@ -479,7 +479,7 @@ and the derived files
\fi
\expandafter\x\csname ver@pdftexcmds.sty\endcsname
\ProvidesPackage{pdftexcmds}%
- [2010/03/01 v0.8 Utility functions of pdfTeX for LuaTeX (HO)]
+ [2010/04/01 v0.9 Utility functions of pdfTeX for LuaTeX (HO)]
% \end{macrocode}
%
% \subsection{Catcodes}
@@ -546,7 +546,7 @@ and the derived files
\else
\RequirePackage{infwarerr}[2007/09/09]%
\RequirePackage{ifluatex}[2010/03/01]%
- \RequirePackage{ltxcmds}%
+ \RequirePackage{ltxcmds}[2009/12/12]%
\fi
% \end{macrocode}
%
@@ -583,6 +583,16 @@ and the derived files
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname pdfshellescape\endcsname\relax
\pdftexcmds@nopdftex
+ \ltx@IfUndefined{pdftexversion}{%
+ }{%
+ \ifnum\pdftexversion>120 % 1.21a supports \ifeof18
+ \ifeof18 %
+ \chardef\pdf@shellescape=0 %
+ \else
+ \chardef\pdf@shellescape=1 %
+ \fi
+ \fi
+ }%
\else
\def\pdf@shellescape{%
\pdfshellescape
@@ -1731,6 +1741,11 @@ end
% \item
% Required date for package \xpackage{ifluatex} updated.
% \end{Version}
+% \begin{Version}{2010/04/01 v0.9}
+% \item
+% Use \cs{ifeof18} for defining \cs{pdf@shellescape} between
+% \pdfTeX\ 1.21a (inclusive) and 1.30.0 (exclusive).
+% \end{Version}
% \end{History}
%
% \PrintIndex
diff --git a/Master/texmf-dist/source/latex/oberdiek/zref.dtx b/Master/texmf-dist/source/latex/oberdiek/zref.dtx
index 7defc471004..8735a037298 100644
--- a/Master/texmf-dist/source/latex/oberdiek/zref.dtx
+++ b/Master/texmf-dist/source/latex/oberdiek/zref.dtx
@@ -21,12 +21,13 @@
% and the derived files
% zref.sty, zref.pdf, zref.ins, zref.drv, zref-base.sty,
% zref-abspage.sty, zref-counter.sty, zref-dotfill.sty,
-% zref-hyperref.sty, zref-lastpage.sty, zref-nextpage.sty,
-% zref-perpage.sty, zref-runs.sty, zref-savepos.sty,
-% zref-thepage.sty, zref-titleref.sty, zref-totpages.sty,
-% zref-user.sty, zref-xr.sty, zref-example.tex,
-% zref-example-lastpage.tex, zref-example-nextpage.tex,
-% zref-test1.tex, zref-test-runs.tex.
+% zref-hyperref.sty, zref-lastpage.sty, zref-marks.sty,
+% zref-nextpage.sty, zref-perpage.sty, zref-runs.sty,
+% zref-savepos.sty, zref-thepage.sty, zref-titleref.sty,
+% zref-totpages.sty, zref-user.sty, zref-xr.sty,
+% zref-example.tex, zref-example-lastpage.tex,
+% zref-example-nextpage.tex, zref-test1.tex,
+% zref-test-runs.tex.
%
% Distribution:
% CTAN:macros/latex/contrib/oberdiek/zref.dtx
@@ -66,6 +67,7 @@
% TDS:tex/latex/oberdiek/zref-dotfill.sty
% TDS:tex/latex/oberdiek/zref-hyperref.sty
% TDS:tex/latex/oberdiek/zref-lastpage.sty
+% TDS:tex/latex/oberdiek/zref-marks.sty
% TDS:tex/latex/oberdiek/zref-nextpage.sty
% TDS:tex/latex/oberdiek/zref-perpage.sty
% TDS:tex/latex/oberdiek/zref-runs.sty
@@ -98,7 +100,7 @@
\input docstrip.tex
\Msg{************************************************************************}
\Msg{* Installation}
-\Msg{* Package: zref 2010/03/26 v2.8 New reference scheme for LaTeX2e (HO)}
+\Msg{* Package: zref 2010/03/29 v2.9 New reference scheme for LaTeX2e (HO)}
\Msg{************************************************************************}
\keepsilent
@@ -130,12 +132,13 @@ This work consists of the main source file zref.dtx
and the derived files
zref.sty, zref.pdf, zref.ins, zref.drv, zref-base.sty,
zref-abspage.sty, zref-counter.sty, zref-dotfill.sty,
- zref-hyperref.sty, zref-lastpage.sty, zref-nextpage.sty,
- zref-perpage.sty, zref-runs.sty, zref-savepos.sty,
- zref-thepage.sty, zref-titleref.sty, zref-totpages.sty,
- zref-user.sty, zref-xr.sty, zref-example.tex,
- zref-example-lastpage.tex, zref-example-nextpage.tex,
- zref-test1.tex, zref-test-runs.tex.
+ zref-hyperref.sty, zref-lastpage.sty, zref-marks.sty,
+ zref-nextpage.sty, zref-perpage.sty, zref-runs.sty,
+ zref-savepos.sty, zref-thepage.sty, zref-titleref.sty,
+ zref-totpages.sty, zref-user.sty, zref-xr.sty,
+ zref-example.tex, zref-example-lastpage.tex,
+ zref-example-nextpage.tex, zref-test1.tex,
+ zref-test-runs.tex.
\endpreamble
\let\MetaPrefix\DoubleperCent
@@ -151,6 +154,7 @@ and the derived files
\file{zref-dotfill.sty}{\from{zref.dtx}{dotfill}}%
\file{zref-hyperref.sty}{\from{zref.dtx}{hyperref}}%
\file{zref-lastpage.sty}{\from{zref.dtx}{lastpage}}%
+ \file{zref-marks.sty}{\from{zref.dtx}{marks}}%
\file{zref-nextpage.sty}{\from{zref.dtx}{nextpage}}%
\file{zref-perpage.sty}{\from{zref.dtx}{perpage}}%
\file{zref-runs.sty}{\from{zref.dtx}{runs}}%
@@ -178,9 +182,10 @@ and the derived files
\Msg{*}
\Msg{* zref.sty, zref-base.sty, zref-abspage.sty, zref-counter.sty,}
\Msg{* zref-dotfill.sty, zref-hyperref.sty, zref-lastpage.sty,}
-\Msg{* zref-nextpage.sty, zref-perpage.sty, zref-runs.sty,}
-\Msg{* zref-savepos.sty, zref-thepage.sty, zref-titleref.sty,}
-\Msg{* zref-totpages.sty, zref-user.sty, zref-xr.sty}
+\Msg{* zref-marks.sty, zref-nextpage.sty, zref-perpage.sty,}
+\Msg{* zref-runs.sty, zref-savepos.sty, zref-thepage.sty,}
+\Msg{* zref-titleref.sty, zref-totpages.sty, zref-user.sty,}
+\Msg{* zref-xr.sty}
\Msg{*}
\Msg{* And install the following script file:}
\Msg{*}
@@ -201,7 +206,7 @@ and the derived files
%<*driver>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{zref.drv}%
- [2010/03/26 v2.8 New reference scheme for LaTeX2e (HO)]%
+ [2010/03/29 v2.9 New reference scheme for LaTeX2e (HO)]%
\documentclass{ltxdoc}
\usepackage{holtxdoc}[2008/08/11]
\begin{document}
@@ -210,7 +215,7 @@ and the derived files
%</driver>
% \fi
%
-% \CheckSum{1838}
+% \CheckSum{2001}
%
% \CharacterTable
% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
@@ -231,7 +236,7 @@ and the derived files
% \GetFileInfo{zref.drv}
%
% \title{The \xpackage{zref} package}
-% \date{2010/03/26 v2.8}
+% \date{2010/03/29 v2.9}
% \author{Heiko Oberdiek\\\xemail{heiko.oberdiek at googlemail.com}}
%
% \maketitle
@@ -943,7 +948,7 @@ and the derived files
%<<END_EXAMPLE
\documentclass{book}
-\usepackage{zref-nextpage}[2010/03/26]
+\usepackage{zref-nextpage}[2010/03/29]
\znextpagesetup
{\thepage}% next page is unknown
{\thepage\ (#1)}% this page is last page
@@ -986,6 +991,10 @@ and the derived files
% and can also used even in expandable calculations (\cs{numexpr})
% or counter assignments.
%
+% \subsection{Module \xmodule{marks}}
+%
+% ToDo.
+%
% \subsection{Module \xmodule{runs}}
%
% Module \xmodule{runs} counts the \LaTeX\ runs since last
@@ -1415,13 +1424,13 @@ the height difference of the two baselines is
%<*package>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref}
- [2010/03/26 v2.8 New reference scheme for LaTeX2e (HO)]%
+ [2010/03/29 v2.9 New reference scheme for LaTeX2e (HO)]%
% \end{macrocode}
%
% \subsubsection{Load basic module}
%
% \begin{macrocode}
-\RequirePackage{zref-base}[2010/03/26]
+\RequirePackage{zref-base}[2010/03/29]
% \end{macrocode}
% Abort package loading if \xpackage{zref-base} could not be
% loaded successfully.
@@ -1436,7 +1445,7 @@ the height difference of the two baselines is
\def\ZREF@temp#1{%
\DeclareOption{#1}{%
\AtEndOfPackage{%
- \RequirePackage{zref-#1}[2010/03/26]%
+ \RequirePackage{zref-#1}[2010/03/29]%
}%
}%
}
@@ -1496,13 +1505,13 @@ the height difference of the two baselines is
%<*base>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-base}%
- [2010/03/26 v2.8 Module base for zref (HO)]%
+ [2010/03/29 v2.9 Module base for zref (HO)]%
% \end{macrocode}
%
% \subsubsection{Utilities}
%
% \begin{macrocode}
-\RequirePackage{ltxcmds}[2009/12/12]
+\RequirePackage{ltxcmds}[2010/03/01]
% \end{macrocode}
%
% \begin{macro}{\ZREF@name}
@@ -1513,19 +1522,6 @@ the height difference of the two baselines is
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\ZREF@ErrorNoLine}
-% An error message for this package without line information is
-% generated by \cs{ZREF@ErrorNoLine}
-% \begin{macrocode}
-\def\ZREF@ErrorNoLine#1#2{%
- \begingroup
- \let\on@line\@empty
- \PackageError\ZREF@name{#1}{#2}%
- \endgroup
-}
-% \end{macrocode}
-% \end{macro}
-%
% \begin{macro}{\ZREF@UpdatePdfTeX}
% \cs{ZREF@UpdatePdfTeX} is used as help message text in
% error messages.
@@ -1564,7 +1560,7 @@ the height difference of the two baselines is
% We test for \eTeX\ in order to use its features later.
% \begin{macrocode}
\ltx@IfUndefined{eTeXversion}{%
- \ZREF@ErrorNoLine{%
+ \PackageError\ZREF@name{%
Missing support for eTeX; package is abandoned%
}{%
Use a TeX compiler that support eTeX and enable eTeX %
@@ -1578,7 +1574,7 @@ the height difference of the two baselines is
\RequirePackage{etexcmds}[2007/09/09]
\ifetex@unexpanded
\else
- \ZREF@ErrorNoLine{%
+ \PackageError\ZREF@name{%
Missing e-TeX's \string\unexpanded.\MessageBreak
Add \string\RequirePackage\string{etexcmds\string} before %
\string\documentclass%
@@ -1727,7 +1723,9 @@ the height difference of the two baselines is
Property `#2' is already in list `#1'%
}%
}{%
- \expandafter\g@addto@macro\csname Z@L@#1\endcsname{{#2}}%
+ \edef\ZREF@temp{#2}%
+ \expandafter\g@addto@macro\csname Z@L@#1\expandafter\endcsname
+ \expandafter{\expandafter{\ZREF@temp}}%
}%
}%
}%
@@ -2200,6 +2198,18 @@ the height difference of the two baselines is
% \end{macrocode}
% \end{macro}
%
+% \subsubsection{Utilities}
+%
+% \begin{macro}{\ZREF@number}
+% \begin{macrocode}
+\ltx@IfUndefined{numexpr}{%
+ \let\ZREF@number\number
+}{%
+ \def\ZREF@number#1{\the\numexpr#1}%
+}
+% \end{macrocode}
+% \end{macro}
+%
% \subsubsection{Setup}
%
% \begin{macro}{\zref@setdefault}
@@ -2275,8 +2285,8 @@ the height difference of the two baselines is
%<*user>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-user}%
- [2010/03/26 v2.8 Module user for zref (HO)]%
-\RequirePackage{zref-base}[2010/03/26]
+ [2010/03/29 v2.9 Module user for zref (HO)]%
+\RequirePackage{zref-base}[2010/03/29]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
@@ -2350,8 +2360,8 @@ the height difference of the two baselines is
%<*abspage>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-abspage}%
- [2010/03/26 v2.8 Module abspage for zref (HO)]%
-\RequirePackage{zref-base}[2010/03/26]
+ [2010/03/29 v2.9 Module abspage for zref (HO)]%
+\RequirePackage{zref-base}[2010/03/29]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
@@ -2395,8 +2405,8 @@ the height difference of the two baselines is
%<*counter>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-counter}%
- [2010/03/26 v2.8 Module counter for zref (HO)]%
-\RequirePackage{zref-base}[2010/03/26]
+ [2010/03/29 v2.9 Module counter for zref (HO)]%
+\RequirePackage{zref-base}[2010/03/29]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
@@ -2432,9 +2442,9 @@ the height difference of the two baselines is
%<*lastpage>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-lastpage}%
- [2010/03/26 v2.8 Module lastpage for zref (HO)]%
-\RequirePackage{zref-base}[2010/03/26]
-\RequirePackage{zref-abspage}[2010/03/26]
+ [2010/03/29 v2.9 Module lastpage for zref (HO)]%
+\RequirePackage{zref-base}[2010/03/29]
+\RequirePackage{zref-abspage}[2010/03/29]
\RequirePackage{atveryend}[2009/12/07]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
@@ -2501,14 +2511,14 @@ the height difference of the two baselines is
%<*thepage>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-thepage}%
- [2010/03/26 v2.8 Module thepage for zref (HO)]%
-\RequirePackage{zref-base}[2010/03/26]
+ [2010/03/29 v2.9 Module thepage for zref (HO)]%
+\RequirePackage{zref-base}[2010/03/29]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
% \begin{macrocode}
\RequirePackage{atbegshi}
-\RequirePackage{zref-abspage}[2010/03/26]
+\RequirePackage{zref-abspage}[2010/03/29]
% \end{macrocode}
% \begin{macrocode}
\zref@newlist{thepage}
@@ -2561,15 +2571,15 @@ the height difference of the two baselines is
%<*nextpage>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-nextpage}%
- [2010/03/26 v2.8 Module nextpage for zref (HO)]%
-\RequirePackage{zref-base}[2010/03/26]
+ [2010/03/29 v2.9 Module nextpage for zref (HO)]%
+\RequirePackage{zref-base}[2010/03/29]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
% \begin{macrocode}
-\RequirePackage{zref-abspage}[2010/03/26]
-\RequirePackage{zref-thepage}[2010/03/26]
-\RequirePackage{zref-lastpage}[2010/03/26]
+\RequirePackage{zref-abspage}[2010/03/29]
+\RequirePackage{zref-thepage}[2010/03/29]
+\RequirePackage{zref-lastpage}[2010/03/29]
\RequirePackage{uniquecounter}[2009/12/18]
% \end{macrocode}
% \begin{macrocode}
@@ -2662,16 +2672,16 @@ the height difference of the two baselines is
%<*totpages>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-totpages}%
- [2010/03/26 v2.8 Module totpages for zref (HO)]%
-\RequirePackage{zref-base}[2010/03/26]
+ [2010/03/29 v2.9 Module totpages for zref (HO)]%
+\RequirePackage{zref-base}[2010/03/29]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
% The absolute page number of the last page is the total
% page number.
% \begin{macrocode}
-\RequirePackage{zref-abspage}[2010/03/26]
-\RequirePackage{zref-lastpage}[2010/03/26]
+\RequirePackage{zref-abspage}[2010/03/29]
+\RequirePackage{zref-lastpage}[2010/03/29]
% \end{macrocode}
%
% \begin{macro}{\ztotpages}
@@ -2695,6 +2705,107 @@ the height difference of the two baselines is
% \end{macrocode}
%
%
+% \subsection{Module \xmodule{marks}}
+%
+% \begin{macrocode}
+%<*marks>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{zref-marks}%
+ [2010/03/29 v2.9 Module marks for zref (HO)]%
+\RequirePackage{zref-base}[2010/03/29]
+\@ifundefined{ZREF@baseok}{\endinput}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\RequirePackage{kvsetkeys}[2009/07/30]
+\newcommand*{\zref@marks@register}[3][]{%
+ \edef\ZREF@TempName{#1}%
+ \edef\ZREF@TempNum{\ZREF@number#2}%
+ \ifnum\ZREF@TempNum<\ltx@zero %
+ \PackageError\ZREF@name{%
+ \string\zref@marks@register\ltx@space is called with invalid%
+ \MessageBreak
+ marks register number (\ZREF@TempNum)%
+ }{%
+ Use `0' or the command, defined by \string\newmarks.\MessageBreak
+ \@ehc
+ }%
+ \else
+ \ifx\ZREF@TempName\ltx@empty
+ \edef\ZREF@TempName{mark\romannumeral\ZREF@TempNum}%
+ \else
+ \edef\ZREF@TempName{marks\ZREF@TempName}%
+ \fi
+ \ZREF@MARKS@DefineProp{top}%
+ \ZREF@MARKS@DefineProp{first}%
+ \ZREF@MARKS@DefineProp{bot}%
+ \kv@parse{#3}{%
+ \ifx\kv@value\relax
+ \def\kv@value{top,first,bot}%
+ \fi
+ \edef\ZREF@temp{\expandafter\@car\kv@key X\@nil}%
+ \ifx\ZREF@temp\ZREF@STAR
+ \edef\kv@key{\expandafter\@cdr\kv@key\@nil}%
+ \zref@newlist\kv@key
+ \fi
+ \expandafter\comma@parse\expandafter{\kv@value}{%
+ \ifcase0\ifx\comma@entry\ZREF@NAME@top 1\else
+ \ifx\comma@entry\ZREF@NAME@first 1\else
+ \ifx\comma@entry\ZREF@NAME@bot 1\fi\fi\fi\ltx@space
+ \PackageWarning\ZREF@name{%
+ Use `top', `first' or `bot' for the list values%
+ \MessageBreak
+ in the third argument of \string\zref@marks@register.%
+ \MessageBreak
+ Ignoring unkown value `\comma@entry'%
+ }%
+ \else
+ \zref@addprop{\kv@key}{\comma@entry\ZREF@TempName}%
+ \fi
+ \ltx@gobble
+ }%
+ \ltx@gobbletwo
+ }%
+ \fi
+}
+\def\ZREF@STAR{*}
+\def\ZREF@NAME@top{top}
+\def\ZREF@NAME@first{first}
+\def\ZREF@NAME@bot{bot}
+\def\ZREF@MARKS@DefineProp#1{%
+ \zref@ifpropundefined{#1\ZREF@TempName}{%
+ \ifnum\ZREF@TempNum=\ltx@zero
+ \begingroup
+ \edef\x{\endgroup
+ \noexpand\zref@newprop*{#1\ZREF@TempName}[]{%
+ \expandafter\noexpand\csname#1mark\endcsname
+ }%
+ }%
+ \x
+ \else
+ \begingroup
+ \edef\x{\endgroup
+ \noexpand\zref@newprop*{#1\ZREF@TempName}[]{%
+ \expandafter\noexpand\csname#1marks\endcsname
+ \ZREF@TempNum
+ }%
+ }%
+ \x
+ \fi
+ }{%
+ \PackageWarning\ZREF@name{%
+ \string\zref@marks@register\ltx@space does not generate the%
+ \MessageBreak
+ new property `#1\ZREF@TempName', because\MessageBreak
+ it is already defined%
+ }%
+ }%
+}
+% \end{macrocode}
+% \begin{macrocode}
+%</marks>
+% \end{macrocode}
+%
% \subsection{Module \xmodule{runs}}
%
% This module does not use the label-reference-system.
@@ -2704,7 +2815,7 @@ the height difference of the two baselines is
%<*runs>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-runs}%
- [2010/03/26 v2.8 Module runs for zref (HO)]%
+ [2010/03/29 v2.9 Module runs for zref (HO)]%
% \end{macrocode}
%
% \begin{macro}{\zruns}
@@ -2736,8 +2847,8 @@ the height difference of the two baselines is
%<*perpage>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-perpage}%
- [2010/03/26 v2.8 Module perpage for zref (HO)]%
-\RequirePackage{zref-base}[2010/03/26]
+ [2010/03/29 v2.9 Module perpage for zref (HO)]%
+\RequirePackage{zref-base}[2010/03/29]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
@@ -2749,7 +2860,7 @@ the height difference of the two baselines is
% For detecting changed pages module \xmodule{abspage}
% is loaded.
% \begin{macrocode}
-\RequirePackage{zref-abspage}[2010/03/26]
+\RequirePackage{zref-abspage}[2010/03/29]
% \end{macrocode}
%
% We group the properties for the needed references
@@ -2893,8 +3004,8 @@ the height difference of the two baselines is
%<*titleref>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-titleref}%
- [2010/03/26 v2.8 Module titleref for zref (HO)]%
-\RequirePackage{zref-base}[2010/03/26]
+ [2010/03/29 v2.9 Module titleref for zref (HO)]%
+\RequirePackage{zref-base}[2010/03/29]
\@ifundefined{ZREF@baseok}{\endinput}{}
\RequirePackage{gettitlestring}[2009/12/08]
% \end{macrocode}
@@ -3211,8 +3322,8 @@ the height difference of the two baselines is
%<*xr>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-xr}%
- [2010/03/26 v2.8 Module xr for zref (HO)]%
-\RequirePackage{zref-base}[2010/03/26]
+ [2010/03/29 v2.9 Module xr for zref (HO)]%
+\RequirePackage{zref-base}[2010/03/29]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
% \begin{macrocode}
@@ -3555,8 +3666,8 @@ the height difference of the two baselines is
%<*hyperref>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-hyperref}%
- [2010/03/26 v2.8 Module hyperref for zref (HO)]%
-\RequirePackage{zref-base}[2010/03/26]
+ [2010/03/29 v2.9 Module hyperref for zref (HO)]%
+\RequirePackage{zref-base}[2010/03/29]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
@@ -3584,8 +3695,8 @@ the height difference of the two baselines is
%<*savepos>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-savepos}%
- [2010/03/26 v2.8 Module savepos for zref (HO)]%
-\RequirePackage{zref-base}[2010/03/26]
+ [2010/03/29 v2.9 Module savepos for zref (HO)]%
+\RequirePackage{zref-base}[2010/03/29]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
@@ -3594,7 +3705,7 @@ the height difference of the two baselines is
% First we check, whether the feature is available.
% \begin{macrocode}
\ltx@IfUndefined{pdfsavepos}{%
- \ZREF@ErrorNoLine{%
+ \PackageError\ZREF@name{%
\string\pdfsavepos\space is not supported.\MessageBreak
It is provided by pdfTeX (1.40) or XeTeX%
}\ZREF@UpdatePdfTeX
@@ -3613,7 +3724,7 @@ the height difference of the two baselines is
\expandafter\ifx\csname pdftexversion\endcsname\relax
\else
\ifnum\pdftexversion<140 %
- \ZREF@ErrorNoLine{%
+ \PackageError\ZREF@name{%
\string\pdfsavepos\space is not supported in DVI mode\MessageBreak
of this pdfTeX version%
}\ZREF@UpdatePdfTeX
@@ -3687,15 +3798,15 @@ the height difference of the two baselines is
%<*dotfill>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-dotfill}%
- [2010/03/26 v2.8 Module dotfill for zref (HO)]%
-\RequirePackage{zref-base}[2010/03/26]
+ [2010/03/29 v2.9 Module dotfill for zref (HO)]%
+\RequirePackage{zref-base}[2010/03/29]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
% For measuring the width of \cs{zdotfill} we use the features
% provided by module \xmodule{savepos}.
% \begin{macrocode}
-\RequirePackage{zref-savepos}[2010/03/26]
+\RequirePackage{zref-savepos}[2010/03/29]
% \end{macrocode}
% For automatically generated label names we use the unique
% counter of module \xmodule{base}.
@@ -3784,7 +3895,7 @@ the height difference of the two baselines is
\NeedsTeXFormat{LaTeX2e}
\nofiles
\documentclass{article}
-\usepackage{zref-base}[2010/03/26]
+\usepackage{zref-base}[2010/03/29]
\usepackage{qstest}
\IncludeTests{*}
\LogTests{log}{*}{*}
@@ -3814,7 +3925,7 @@ the height difference of the two baselines is
%<*test-runs>
\NeedsTeXFormat{LaTeX2e}
\documentclass{article}
-\usepackage{zref-runs}[2010/03/26]
+\usepackage{zref-runs}[2010/03/29]
\usepackage{qstest}
\IncludeTests{*}
\LogTests{log}{*}{*}
@@ -3903,6 +4014,7 @@ the height difference of the two baselines is
% zref-dotfill.sty & tex/latex/oberdiek/zref-dotfill.sty\\
% zref-hyperref.sty & tex/latex/oberdiek/zref-hyperref.sty\\
% zref-lastpage.sty & tex/latex/oberdiek/zref-lastpage.sty\\
+% zref-marks.sty & tex/latex/oberdiek/zref-marks.sty\\
% zref-nextpage.sty & tex/latex/oberdiek/zref-nextpage.sty\\
% zref-perpage.sty & tex/latex/oberdiek/zref-perpage.sty\\
% zref-runs.sty & tex/latex/oberdiek/zref-runs.sty\\
@@ -4177,6 +4289,14 @@ the height difference of the two baselines is
% \item
% Module \xmodule{nextpage} added.
% \end{Version}
+% \begin{Version}{2010/03/29 v2.9}
+% \item
+% Module \xmodule{marks} added (without documentation).
+% \item
+% \cs{zref@addprop} now adds expanded property to list.
+% \item
+% Useless \cs{ZREF@ErrorNoLine} removed.
+% \end{Version}
% \end{History}
%
% \PrintIndex