summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/oberdiek/bookmark.dtx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2011-04-12 22:56:39 +0000
committerKarl Berry <karl@freefriends.org>2011-04-12 22:56:39 +0000
commit3c9b5c2960ae2455180bdb3a4e67bf10175b39af (patch)
tree53ac9731c23e82f60349ec920ed8d816738913dc /Master/texmf-dist/source/latex/oberdiek/bookmark.dtx
parentf437333cf5d63d69f5ab9fd1eb553af4175037d0 (diff)
oberdiek (12apr11)
git-svn-id: svn://tug.org/texlive/trunk@22061 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/oberdiek/bookmark.dtx')
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/bookmark.dtx329
1 files changed, 282 insertions, 47 deletions
diff --git a/Master/texmf-dist/source/latex/oberdiek/bookmark.dtx b/Master/texmf-dist/source/latex/oberdiek/bookmark.dtx
index be438c3d170..67a4273d82e 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-2010 by
+% Copyright (C) 2007-2011 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 2010/04/08 v1.12 PDF bookmarks (HO)}
+\Msg{* Package: bookmark 2011/03/20 v1.19 PDF bookmarks (HO)}
\Msg{************************************************************************}
\keepsilent
@@ -92,7 +92,7 @@
This is a generated file.
-Copyright (C) 2007-2010 by
+Copyright (C) 2007-2011 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}%
- [2010/04/08 v1.12 PDF bookmarks (HO)]%
+ [2011/03/20 v1.19 PDF bookmarks (HO)]%
\documentclass{ltxdoc}
\usepackage{holtxdoc}[2008/08/11]
\begin{document}
@@ -173,7 +173,7 @@ and the derived files
%</driver>
% \fi
%
-% \CheckSum{2067}
+% \CheckSum{2225}
%
% \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{2010/04/08 v1.12}
+% \date{2011/03/20 v1.19}
% \author{Heiko Oberdiek\\\xemail{heiko.oberdiek at googlemail.com}}
%
% \maketitle
@@ -242,17 +242,51 @@ and the derived files
%
% \subsection{Options}
%
-% Options can be given at three places:
+% Options can be given at four places:
% \begin{enumerate}
% \item \cs{usepackage}|[|\meta{options}|]{bookmark}|\\
% This is the only place for driver options
% and option \xoption{atend}.
% \item \cs{bookmarksetup}|{|\meta{options}|}|\\
% This command is just for setting options.
+% \item \cs{bookmarksetupnext}|{|\meta{options}|}|\\
+% The options are stored and called after the
+% options of the next \cs{bookmark} command.
% \item \cs{bookmark}|[|\meta{options}|]{|\meta{title}|}|\\
% This command sets the bookmark. The option settings remain
% limited to this bookmark.
% \end{enumerate}
+% Exception: Driver options, option \xoption{atend} and
+% options \xoption{draft}\slash\xoption{final}
+% cannot be changed after the package is loaded.
+%
+% \subsubsection{Options \xoption{draft} and \xoption{final}}
+%
+% If a \LaTeX\ file is compiled several times, then a little
+% time can be saved, if option \xoption{draft} is used to
+% disable the bookmark stuff of this package. Default is
+% \xoption{final}. If \cs{pdfdraftmode} is available, then
+% the default is {draft} if draft mode is enabled.
+% Both options are boolean options, without
+% value the value |true| is used. |draft=true| is the same
+% as |final=false|.
+%
+% Options of package \xpackage{bookmark} are local options
+% with the exception of driver options. Therefore \xoption{draft}
+% or \xoption{final} given as class option is not seen by this
+% package. If you want to optimize first \LaTeX\ runs depending
+% on a global \xoption{draft}, then package \xpackage{ifdraft}
+% and \LaTeX's \cs{PassOptionsToPackage}
+% might help in the organization of the preamble, for example:
+%\begin{quote}
+%\begin{verbatim}
+%\documentclass[draft]{article}
+%\usepackage{ifdraft}
+%\ifdraft{%
+% \PassOptionsToPackage{draft}{bookmark}%
+%}{}
+%\end{verbatim}
+%\end{quote}
%
% \subsubsection{Driver options}
%
@@ -292,9 +326,6 @@ and the derived files
% Both \xoption{bold} and \xoption{italic} can be used together.
% Using value |false| disables the font option.
%
-% These options are ignored with a warning if \hologo{eTeX} is not
-% detected.
-%
% \paragraph{Color option.}
%
% Colored bookmarks are a feature of PDF 1.4, they are not supported
@@ -378,6 +409,11 @@ and the derived files
% Sets the level, see the description above. If option \xoption{level}
% is given without value, then the default behaviour is restored,
% that the `current level' is used as level value.
+% Since version 2010/10/19 v1.16 package \xpackage{bookmark}
+% also supports names |part|, |section| and other,
+% if the macros \cs{toclevel@part}, \cs{toclevel@section}
+% are defined (done by package \xpackage{hyperref}, see
+% option \xoption{bookmarkdepth}).
% \item[\xoption{rellevel}:]
% Sets the level relative to the previous level.
% A positive value means that the bookmark entry become
@@ -438,10 +474,15 @@ and the derived files
%
% \begin{declcs}{bookmarkget} \M{option}
% \end{declcs}
-% Macro \cs{bookmarkget} extract the value of the latest option
+% Macro \cs{bookmarkget} extracts 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
+% result is zero.
+% The resulting numbers can directly be used in \cs{ifnum} or \cs{ifcase}.
+% If you want to have the digits \texttt{0} and \texttt{1}, then
+% prefix \cs{bookmarkget} with \cs{number}.
+% Macro \cs{bookmarkget} is expandable.
+% In case of
% unsupported options an empty string is returned.
% Supported boolean options are
% \begin{quote}
@@ -525,6 +566,20 @@ and the derived files
%\end{verbatim}
% \end{quote}
%
+% Alternatively, option \xoption{startatroot} can be given
+% in \cs{bookmark}:
+% \begin{quote}
+%\begin{verbatim}
+%\BookmarkAtEnd{%
+% \bookmark[
+% startatroot,
+% named=LastPage,
+% level=0,
+% ]{Last page}%
+%}
+%\end{verbatim}
+% \end{quote}
+%
% \paragraph{Remarks.}
% \begin{itemize}
% \item
@@ -536,7 +591,7 @@ and the derived files
% (\xoption{pdftex}, \xoption{dvips}, \xoption{dvipsone},
% \xoption{textures}) use package \xpackage{atveryend}'s
% for this purpose. \cs{AtEndDocument} is too early,
-% the last page might not been shipped out. Because the \xext{.aux}
+% the last page might not been shipped out. Because the \xext{aux}
% file is needed, these drivers use \cs{AfterLastShipout}.
%
% The implementation of the other drivers
@@ -574,7 +629,7 @@ and the derived files
open,
openlevel=2,
atend
-]{bookmark}[2010/04/08]
+]{bookmark}[2011/03/20]
\bookmarksetup{color=blue}
@@ -677,7 +732,7 @@ and the derived files
%<*package>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{bookmark}%
- [2010/04/08 v1.12 PDF bookmarks (HO)]%
+ [2011/03/20 v1.19 PDF bookmarks (HO)]%
% \end{macrocode}
%
% \subsubsection{Requirements}
@@ -756,8 +811,10 @@ and the derived files
\RequirePackage{ifpdf}[2009/04/10]
\RequirePackage{ifxetex}
\RequirePackage{ifvtex}[2008/11/04]
-\RequirePackage{hyperref}
+\RequirePackage{pdftexcmds}[2010/11/04]
+\RequirePackage{hyperref}[2010/06/18]
\RequirePackage{auxhook}[2007/04/06]
+\RequirePackage{kvsetkeys}[2010/03/01]
\RequirePackage{kvoptions}[2009/08/13]
\RequirePackage{hycolor}[2008/09/08]
\RequirePackage{bitset}
@@ -774,6 +831,8 @@ and the derived files
color,%
depth,%
dest,%
+ draft,%
+ final,%
gotor,%
italic,%
keeplevel,%
@@ -792,13 +851,18 @@ and the derived files
% \end{macrocode}
% \begin{macro}{\bookmarksetup}
% \begin{macrocode}
-\newcommand*{\bookmarksetup}{\setkeys{BKM}}
+\newcommand*{\bookmarksetup}{\kvsetkeys{BKM}}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\BKM@setup}
% \begin{macrocode}
\def\BKM@setup#1{%
\bookmarksetup{#1}%
+ \ifx\BKM@HookNext\ltx@empty
+ \else
+ \expandafter\bookmarksetup\expandafter{\BKM@HookNext}%
+ \BKM@HookNextClear
+ \fi
\BKM@hook
\ifBKM@keeplevel
\else
@@ -807,6 +871,46 @@ and the derived files
}
% \end{macrocode}
% \end{macro}
+%
+% \begin{macro}{\bookmarksetupnext}
+% \begin{macrocode}
+\newcommand*{\bookmarksetupnext}[1]{%
+ \ltx@GlobalAppendToMacro\BKM@HookNext{,#1}%
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\BKM@setupnext}
+% \begin{macrocode}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\BKM@HookNextClear}
+% \begin{macrocode}
+\def\BKM@HookNextClear{%
+ \global\let\BKM@HookNext\ltx@empty
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\BKM@HookNext}
+% \begin{macrocode}
+\BKM@HookNextClear
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareBoolOption{draft}
+\DeclareComplementaryOption{final}{draft}
+\pdf@ifdraftmode\BKM@drafttrue{}
+% \end{macrocode}
+% \begin{macro}{\BKM@DisableOptions}
+% \begin{macrocode}
+\def\BKM@DisableOptions{%
+ \DisableKeyvalOption[action=warning,package=bookmark]%
+ {BKM}{draft}%
+ \DisableKeyvalOption[action=warning,package=bookmark]%
+ {BKM}{final}%
+}
+% \end{macrocode}
+% \end{macro}
% \begin{macrocode}
\DeclareBoolOption[\ifHy@bookmarksopen true\else false\fi]{open}
% \end{macrocode}
@@ -837,7 +941,7 @@ and the derived files
\ifx\BKM@param\@empty
\def\BKM@depth{\c@tocdepth}%
\else
- \@ifundefined{toclevel@\BKM@param}{%
+ \ltx@IfUndefined{toclevel@\BKM@param}{%
\@onelevel@sanitize\BKM@param
\edef\BKM@temp{\expandafter\@car\BKM@param\@nil}%
\ifcase 0\expandafter\ifx\BKM@temp-1\fi
@@ -848,13 +952,16 @@ and the derived files
\fi
\relax
\PackageWarning{bookmark}{%
- Unknown document division name (\BKM@param)%
+ Unknown document division name (\BKM@param)\MessageBreak
+ for option `depth'%
}%
\else
- \BKM@SetDepth\BKM@param
+ \BKM@SetDepth\BKM@depth\BKM@param
\fi
}{%
- \BKM@SetDepth{\csname toclevel@\BKM@param\endcsname}%
+ \BKM@SetDepth\BKM@depth{%
+ \csname toclevel@\BKM@param\endcsname
+ }%
}%
\fi
}
@@ -864,23 +971,75 @@ and the derived files
\def\bookmark@depth{\BKM@depth}
% \end{macrocode}
% \end{macro}
-% \begin{macro}{\BKM@SetDepth}
+% \begin{macro}{\BKM@SetDepthOrLevel}
% \begin{macrocode}
-\def\BKM@SetDepth#1{%
+\def\BKM@SetDepthOrLevel#1#2{%
\begingroup
\setbox\z@=\hbox{%
- \count@=#1\relax
+ \count@=#2\relax
\expandafter
}%
\expandafter\endgroup
- \expandafter\def\expandafter\BKM@depth\expandafter{\the\count@}%
+ \expandafter\def\expandafter#1\expandafter{\the\count@}%
}
% \end{macrocode}
% \end{macro}
% \begin{macrocode}
\DeclareStringOption[\BKM@currentlevel]{level}[\BKM@currentlevel]
+\define@key{BKM}{level}{%
+ \edef\BKM@param{#1}%
+ \ifx\BKM@param\BKM@MacroCurrentLevel
+ \let\BKM@level\BKM@param
+ \else
+ \ltx@IfUndefined{toclevel@\BKM@param}{%
+ \@onelevel@sanitize\BKM@param
+ \edef\BKM@temp{\expandafter\@car\BKM@param\@nil}%
+ \ifcase 0\expandafter\ifx\BKM@temp-1\fi
+ \expandafter\ifnum\expandafter`\BKM@temp>47 %
+ \expandafter\ifnum\expandafter`\BKM@temp<58 %
+ 1%
+ \fi
+ \fi
+ \relax
+ \PackageWarning{bookmark}{%
+ Unknown document division name (\BKM@param)\MessageBreak
+ for option `level'%
+ }%
+ \else
+ \BKM@SetDepthOrLevel\BKM@level\BKM@param
+ \fi
+ }{%
+ \BKM@SetDepthOrLevel\BKM@level{%
+ \csname toclevel@\BKM@param\endcsname
+ }%
+ }%
+ \fi
+}
+% \end{macrocode}
+% \begin{macro}{\BKM@MacroCurrentLevel}
+% \begin{macrocode}
+\def\BKM@MacroCurrentLevel{\BKM@currentlevel}
+% \end{macrocode}
+% \end{macro}
+% \begin{macrocode}
\DeclareBoolOption{keeplevel}
\DeclareBoolOption{startatroot}
+% \end{macrocode}
+% \begin{macro}{\BKM@startatrootfalse}
+% \begin{macrocode}
+\def\BKM@startatrootfalse{%
+ \global\let\ifBKM@startatroot\iffalse
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\BKM@startatroottrue}
+% \begin{macrocode}
+\def\BKM@startatroottrue{%
+ \global\let\ifBKM@startatroot\iftrue
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macrocode}
\define@key{BKM}{rellevel}{%
\BKM@CalcExpr\BKM@level{#1}+\BKM@currentlevel
}
@@ -1277,7 +1436,11 @@ and the derived files
\def\BKM@@CalcParam#1#2#3\@nil{%
\ifx\calc#1%
\@ifundefined{calc@assign@dimen}{%
- \setlength{\dimen@}{\dimexpr#2\relax}%
+ \@ifundefined{dimexpr}{%
+ \setlength{\dimen@}{#2}%
+ }{%
+ \setlength{\dimen@}{\dimexpr#2\relax}%
+ }%
}{%
\setlength{\dimen@}{#2}%
}%
@@ -1296,14 +1459,11 @@ and the derived files
%
% \begin{macrocode}
\DeclareBoolOption{atend}
-% \end{macrocode}
-% \begin{macro}{\BKM@DisableOptions}
-% \begin{macrocode}
-\def\BKM@DisableOptions{%
- \DisableKeyvalOption{BKM}{atend}%
+\g@addto@macro\BKM@DisableOptions{%
+ \DisableKeyvalOption[action=warning,package=bookmark]%
+ {BKM}{atend}%
}
% \end{macrocode}
-% \end{macro}
%
% \subsubsection{Option \xoption{style}}
%
@@ -1437,7 +1597,8 @@ and the derived files
\def\BKM@driver{#1}%
}%
\g@addto@macro\BKM@DisableOptions{%
- \DisableKeyvalOption{BKM}{#1}%
+ \DisableKeyvalOption[action=warning,package=bookmark]%
+ {BKM}{#1}%
}%
}
% \end{macrocode}
@@ -1501,11 +1662,39 @@ and the derived files
\BKM@DisableOptions
% \end{macrocode}
%
+% \paragraph{Option \xoption{draft}}
+%
+% \begin{macrocode}
+\ifBKM@draft
+ \PackageWarningNoLine{bookmark}{Draft mode on}%
+ \let\bookmarksetup\ltx@gobble
+ \let\BookmarkAtEnd\ltx@gobble
+ \let\bookmarkdefinestyle\ltx@gobbletwo
+ \let\bookmarkget\ltx@gobble
+ \renewcommand*{\pdfbookmark}[3][]{}%
+ \let\currentpdfbookmark\ltx@gobbletwo
+ \let\subpdfbookmark\ltx@gobbletwo
+ \let\belowpdfbookmark\ltx@gobbletwo
+ \newcommand*{\bookmark}[2][]{}%
+ \renewcommand*{\Hy@writebookmark}[5]{}%
+ \let\ReadBookmarks\relax
+ \let\BKM@DefGotoNameAction\ltx@gobbletwo % package `hypdestopt'
+ \expandafter\endinput
+\fi
+% \end{macrocode}
+%
% \paragraph{Driver validation and loading.}
%
% \begin{macrocode}
\newif\ifBKM@DvipdfmxOutlineOpen
\ltx@IfUndefined{SpecialDvipdfmxOutlineOpen}{%
+ \ifxetex
+ \ifdim\number\XeTeXversion\XeTeXrevision in<0.9995in %
+ \else
+ \chardef\SpecialDvipdfmxOutlineOpen\ltx@one
+ \BKM@DvipdfmxOutlineOpentrue
+ \fi
+ \fi
}{%
\ifnum\SpecialDvipdfmxOutlineOpen>\z@
\BKM@DvipdfmxOutlineOpentrue
@@ -1621,10 +1810,12 @@ and the derived files
\begingroup
\ifBKM@numbered
\let\numberline\Hy@numberline
+ \let\booknumberline\Hy@numberline
\let\partnumberline\Hy@numberline
\let\chapternumberline\Hy@numberline
\else
\let\numberline\@gobble
+ \let\booknumberline\@gobble
\let\partnumberline\@gobble
\let\chapternumberline\@gobble
\fi
@@ -1652,7 +1843,7 @@ and the derived files
%<*dvipdfm>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{bkm-dvipdfm.def}%
- [2010/04/08 v1.12 bookmark driver for dvipdfm (HO)]%
+ [2011/03/20 v1.19 bookmark driver for dvipdfm (HO)]%
% \end{macrocode}
%
% \begin{macro}{\BKM@id}
@@ -1686,7 +1877,7 @@ and the derived files
\@whilesw\ifBKM@sw\fi{%
\def\BKM@abslevel{1}%
\ifnum\ifBKM@startatroot\z@\else\BKM@prev\fi=\z@
- \global\BKM@startatrootfalse
+ \BKM@startatrootfalse
\expandafter\xdef\csname BKM@\the\BKM@id\endcsname{%
0{\BKM@level}\BKM@abslevel
}%
@@ -1778,7 +1969,9 @@ and the derived files
out \ifBKM@DvipdfmxOutlineOpen
[%
\ifBKM@open
- \ifnum\BKM@level<\BKM@openlevel
+ \ifnum\BKM@level<%
+ \expandafter\ltx@firstofone\expandafter
+ {\number\BKM@openlevel} %
\else
-%
\fi
@@ -1825,7 +2018,7 @@ and the derived files
%<*vtex>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{bkm-vtex.def}%
- [2010/04/08 v1.12 bookmark driver for VTeX (HO)]%
+ [2011/03/20 v1.19 bookmark driver for VTeX (HO)]%
% \end{macrocode}
%
% \begin{macrocode}
@@ -1867,7 +2060,7 @@ and the derived files
\BKM@swtrue
\@whilesw\ifBKM@sw\fi{%
\ifnum\ifBKM@startatroot\z@\else\BKM@prev\fi=\z@
- \global\BKM@startatrootfalse
+ \BKM@startatrootfalse
\def\BKM@parent{0}%
\expandafter\xdef\csname BKM@\the\BKM@id\endcsname{%
0{\BKM@level}%
@@ -2156,14 +2349,14 @@ and the derived files
%<*pdftex>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{bkm-pdftex.def}%
- [2010/04/08 v1.12 bookmark driver for pdfTeX (HO)]%
+ [2011/03/20 v1.19 bookmark driver for pdfTeX (HO)]%
% \end{macrocode}
%
% \begin{macro}{\BKM@DO@entry}
% \begin{macrocode}
\def\BKM@DO@entry#1#2{%
\begingroup
- \setkeys{BKM@DO}{#1}%
+ \kvsetkeys{BKM@DO}{#1}%
\def\BKM@DO@title{#2}%
\BKM@UnescapeHex\BKM@DO@title
\expandafter\expandafter\expandafter\BKM@getx
@@ -2279,7 +2472,7 @@ and the derived files
%<*dvips>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{bkm-dvips.def}%
- [2010/04/08 v1.12 bookmark driver for dvips (HO)]%
+ [2011/03/20 v1.19 bookmark driver for dvips (HO)]%
% \end{macrocode}
% \begin{macro}{\BKM@PSHeaderFile}
% \begin{macrocode}
@@ -2298,7 +2491,7 @@ and the derived files
%<*dvipsone>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{bkm-dvipsone.def}%
- [2010/04/08 v1.12 bookmark driver for dvipsone (HO)]%
+ [2011/03/20 v1.19 bookmark driver for dvipsone (HO)]%
% \end{macrocode}
% \begin{macro}{\BKM@PSHeaderFile}
% \begin{macrocode}
@@ -2317,7 +2510,7 @@ and the derived files
%<*textures>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{bkm-textures.def}%
- [2010/04/08 v1.12 bookmark driver for textures (HO)]%
+ [2011/03/20 v1.19 bookmark driver for textures (HO)]%
% \end{macrocode}
% \begin{macro}{\BKM@PSHeaderFile}
% \begin{macrocode}
@@ -2388,7 +2581,7 @@ and the derived files
% \begin{macrocode}
\def\BKM@DO@entry#1#2{%
\begingroup
- \setkeys{BKM@DO}{#1}%
+ \kvsetkeys{BKM@DO}{#1}%
\def\BKM@DO@title{#2}%
\BKM@UnescapeHex\BKM@DO@title
\expandafter\expandafter\expandafter\BKM@getx
@@ -2553,7 +2746,7 @@ and the derived files
\BKM@swtrue
\@whilesw\ifBKM@sw\fi{%
\ifnum\ifBKM@startatroot\z@\else\BKM@prev\fi=\z@
- \global\BKM@startatrootfalse
+ \BKM@startatrootfalse
\expandafter\xdef\csname BKM@\the\BKM@id\endcsname{%
0{\BKM@level}0%
}%
@@ -2702,7 +2895,7 @@ and the derived files
%
% The following drivers use package \xpackage{atveryend}'s
% \cs{AfterLastShipout}, because they still need the
-% \xext{.aux} file.
+% \xext{aux} file.
% \begin{itemize}
% \item
% Driver \xoption{pdftex} uses \cs{pdfoutline} that can
@@ -2711,7 +2904,7 @@ and the derived files
% PostScript drivers such as
% \xoption{dvips} use an external PostScript header file
% for the bookmarks. File writing can be done after
-% the last shipout page, but before the \xext{.aux} file is closed.
+% the last shipout page, but before the \xext{aux} file is closed.
% \end{itemize}
% \begin{macrocode}
%<*pdftex|pdfmark>
@@ -3054,6 +3247,48 @@ and the derived files
% \item
% Requires \xpackage{ltxcmds} 2010/04/08.
% \end{Version}
+% \begin{Version}{2010/07/23 v1.13}
+% \item
+% Support for \xclass{memoir}'s \cs{booknumberline} added.
+% \end{Version}
+% \begin{Version}{2010/09/02 v1.14}
+% \item
+% (Local) options \xoption{draft} and \xoption{final} added.
+% \end{Version}
+% \begin{Version}{2010/09/25 v1.15}
+% \item
+% Fix for option \xoption{dvipdfmx-outline-open}.
+% \item
+% Option \xoption{dvipdfmx-outline-open} is set automatically,
+% if XeTeX >= 0.9995 is detected.
+% \end{Version}
+% \begin{Version}{2010/10/19 v1.16}
+% \item
+% Option `startatroot' now acts globally.
+% \item
+% Option `level' also accepts names the same way as option `depth'.
+% \end{Version}
+% \begin{Version}{2010/10/25 v1.17}
+% \item
+% \cs{bookmarksetupnext} added.
+% \item
+% Using \cs{kvsetkeys} of package \xpackage{kvsetkeys}, because
+% \cs{setkeys} of package \xpackage{keyval} is not reentrant.
+% This can cause problems (unknown keys) with older versions of
+% hyperref that also uses \cs{setkeys} (found by GL).
+% \end{Version}
+% \begin{Version}{2010/11/05 v1.18}
+% \item
+% Use of \cs{pdf@ifdraftmode} of package \xpackage{pdftexcmds} for
+% the default of option \xoption{draft}.
+% \end{Version}
+% \begin{Version}{2011/03/20 v1.19}
+% \item
+% Use of \cs{dimexpr} fixed, if \hologo{eTeX} is not used.
+% (Bug found by Martin M\"unch.)
+% \item
+% Fix in documentation. Also layout options work without \hologo{eTeX}.
+% \end{Version}
% \end{History}
%
% \PrintIndex