summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdfbin135763 -> 135763 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/alphalph.pdfbin160191 -> 160191 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdfbin213461 -> 213461 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/auxhook.pdfbin130184 -> 130183 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdfbin280267 -> 280354 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/bookmark-example.tex119
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/bookmark.pdfbin0 -> 192896 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/centernot.pdfbin112771 -> 112771 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/chemarr.pdfbin123355 -> 123355 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/classlist.pdfbin121655 -> 121656 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/colonequals.pdfbin131988 -> 131988 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdfbin112937 -> 112937 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/embedfile.pdfbin164912 -> 164912 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/engord.pdfbin143598 -> 143599 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdfbin121025 -> 121025 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/flags.pdfbin0 -> 119524 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/grffile.pdfbin147793 -> 147793 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdfbin133607 -> 133606 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdfbin140926 -> 140927 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/hypcap.pdfbin124741 -> 125803 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdfbin152648 -> 152648 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdfbin147589 -> 147589 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdfbin118518 -> 118518 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdfbin134610 -> 134610 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdfbin126817 -> 126817 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/inputenx.pdfbin422273 -> 422273 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdfbin243559 -> 243768 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdfbin159138 -> 159138 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/makerobust.pdfbin118571 -> 118571 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdfbin405712 -> 419292 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/pagesel.pdfbin158110 -> 158110 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdfbin130295 -> 130295 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdfbin157796 -> 157795 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdfbin163250 -> 163251 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdfbin138926 -> 138925 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/picture.pdfbin136096 -> 136096 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdfbin180277 -> 180277 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/refcount.pdfbin132580 -> 132582 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdfbin162513 -> 162513 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/settobox.pdfbin138620 -> 138620 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/stackrel.pdfbin122640 -> 122639 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/tabularht.pdfbin163606 -> 163607 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdfbin112676 -> 112676 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/telprint.pdfbin139246 -> 139246 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/transparent.pdfbin120962 -> 120962 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/twoopt.pdfbin132916 -> 132916 bytes
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/zref.pdfbin284242 -> 284984 bytes
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/bmpsize.dtx50
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/bookmark.dtx1606
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/flags.dtx434
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/hypcap.dtx25
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/kvoptions.dtx4
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/oberdiek.ins4
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/oberdiek.tex35
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/refcount.dtx2
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/zref.dtx116
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/bkm-dvipdfm.def158
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/bkm-dvips.def274
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/bkm-pdftex.def236
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/bmpsize-base.sty18
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfm.def4
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfmx.def4
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvips.def4
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/bmpsize-test.tex2
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/bmpsize.sty4
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/bookmark.sty388
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/flags.sty115
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/hypcap.sty11
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/zref-abspage.sty4
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/zref-base.sty5
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/zref-counter.sty4
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/zref-dotfill.sty6
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/zref-hyperref.sty4
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/zref-lastpage.sty4
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/zref-perpage.sty6
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/zref-savepos.sty24
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/zref-titleref.sty4
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/zref-totpages.sty8
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/zref-user.sty4
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/zref-xr.sty4
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/zref.sty6
-rw-r--r--Master/texmf-dist/tpm/oberdiek.tpm18
-rw-r--r--Master/texmf/lists/oberdiek10
83 files changed, 3578 insertions, 146 deletions
diff --git a/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf b/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf
index 4989cdf78f7..19999c30507 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf b/Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf
index c8fb861b9cc..7d763b3c26a 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf b/Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf
index 3fb7c722dff..b8cc198bb1c 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf b/Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf
index 1f0444cb7c7..370dc83a2e0 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf b/Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf
index 91d65e1eceb..6a8e4a7fa4d 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/bookmark-example.tex b/Master/texmf-dist/doc/latex/oberdiek/bookmark-example.tex
new file mode 100644
index 00000000000..09c35b9ffaf
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/oberdiek/bookmark-example.tex
@@ -0,0 +1,119 @@
+%%
+%% This is file `bookmark-example.tex',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% bookmark.dtx (with options: `example')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3 of this license or (at your option) any later
+%% version. The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of
+%% LaTeX version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status "maintained".
+%%
+%% This Current Maintainer of this work is Heiko Oberdiek.
+%%
+%% This work consists of the main source file bookmark.dtx
+%% and the derived files
+%% bookmark.sty, bookmark.pdf, bookmark.ins, bookmark.drv,
+%% bkm-dvipdfm.def, bkm-dvips.def, bkm-pdftex.def,
+%% bookmark-example.tex.
+%%
+\documentclass{article}
+\usepackage{xcolor}[2007/01/21]
+\usepackage{hyperref}
+\usepackage[
+ open,
+ openlevel=2
+]{bookmark}
+
+\bookmarksetup{color=blue}
+
+\begin{document}
+\section{First section}
+\subsection{Subsection A}
+\begin{figure}
+ \hypertarget{fig}{}%
+ \bookmark[
+ rellevel=1,
+ keeplevel,
+ dest=fig
+ ]{A figure}
+ A figure.
+\end{figure}
+\subsection{Subsection B}
+\subsubsection{Subsubsection C}
+\newpage
+\bookmarksetup{
+ bold,
+ rgbcolor=1 0 0
+}
+\section{Very important section}
+\bookmarksetup{
+ italic,
+ bold=false,
+ color=blue
+}
+\subsection{Italic section}
+\bookmarksetup{
+ italic=false
+}
+\part{Misc}
+\section{Diverse}
+\subsubsection{Subsubsection, omitting subsection}
+\bookmarksetup{
+ startatroot
+}
+\section{Last section outside part}
+\subsection{Subsection}
+\bookmarksetup{
+ color={}
+}
+\begingroup
+ \bookmarksetup{level=0, color=green!80!black}
+ \bookmark[named=FirstPage]{First page}
+ \bookmark[named=LastPage]{Last page}
+ \bookmark[named=PrevPage]{Previous page}
+ \bookmark[named=NextPage]{Next page}
+\endgroup
+\bookmark[
+ page=2,
+ view=FitH 800
+]{Page 2, FitH 800}
+\bookmark[
+ page=2,
+ view=FitBH \calc{\paperheight-\topmargin-1in-\headheight-\headsep}
+]{Page 2, FitBH top of text body}
+\bookmark[
+ uri={http://www.dante.de/},
+ color=magenta
+]{Dante homepage}
+\bookmark[
+ gotor={t.pdf},
+ page=1,
+ view={XYZ 0 1000 null},
+ color=cyan!75!black
+]{File t.pdf}
+\bookmark[named=FirstPage]{First page}
+\bookmark[rellevel=1, named=LastPage]{Last page (rellevel=1)}
+\bookmark[named=PrevPage]{Previous page}
+\bookmark[level=0, named=FirstPage]{First page (level=0)}
+\bookmark[
+ rellevel=1,
+ keeplevel,
+ named=LastPage
+]{Last page (rellevel=1, keeplevel)}
+\bookmark[named=PrevPage]{Previous page}
+\end{document}
+\endinput
+%%
+%% End of file `bookmark-example.tex'.
diff --git a/Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf b/Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf
new file mode 100644
index 00000000000..57a2761de9c
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/centernot.pdf b/Master/texmf-dist/doc/latex/oberdiek/centernot.pdf
index 3aad33cdb9b..f50fdc8c12e 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/centernot.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/centernot.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf b/Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf
index 7df5953ebdb..7188984044f 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/classlist.pdf b/Master/texmf-dist/doc/latex/oberdiek/classlist.pdf
index 81d80a51662..2c09ca9ca51 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/classlist.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/classlist.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/colonequals.pdf b/Master/texmf-dist/doc/latex/oberdiek/colonequals.pdf
index 70ea02ea6c0..ff476740d5a 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/colonequals.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/colonequals.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf b/Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf
index 1dfd6ac5269..4add92d76a0 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf b/Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf
index d7619755ae0..88902df977c 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/engord.pdf b/Master/texmf-dist/doc/latex/oberdiek/engord.pdf
index e73b7f62890..3037809b295 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/engord.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/engord.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf b/Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf
index 5a014911649..14eb1da06f4 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/flags.pdf b/Master/texmf-dist/doc/latex/oberdiek/flags.pdf
new file mode 100644
index 00000000000..e5e831329f8
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/oberdiek/flags.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/grffile.pdf b/Master/texmf-dist/doc/latex/oberdiek/grffile.pdf
index d3f87a53660..c9be0c392e3 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/grffile.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/grffile.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf b/Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf
index 5cb56591e72..374e0be680d 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf b/Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf
index 2902f090308..b51bb44e11f 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf b/Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf
index fee368c8382..cd891df5774 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdf b/Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdf
index 94e5fd6ef12..a691c719aab 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf b/Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf
index 676500c3d2f..18e2c8fc8bc 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf b/Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf
index e25b8aafe2d..a37c7a1653c 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf b/Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf
index 82a693b9517..aab42fa722b 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf b/Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf
index e6abe8de690..fe672f97293 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf b/Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf
index 0f11ded182f..427f8685a56 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf b/Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf
index 2357cb82c8a..f50974273a6 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf b/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf
index 646048bf7d8..c18a10b2839 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/makerobust.pdf b/Master/texmf-dist/doc/latex/oberdiek/makerobust.pdf
index 3ce27f40e60..273e5f1ab51 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/makerobust.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/makerobust.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf b/Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf
index e558bdf514b..04c25d236cd 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf b/Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf
index 41cd2ab5c61..909e9f990d2 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf
index ecf5ecf5bbf..b1c06cec3d2 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf
index 4bf909e0a75..547f8c39273 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf
index 3a90c9012fa..d28d9190f03 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf
index 4917dd359ef..83c15d9f3c0 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/picture.pdf b/Master/texmf-dist/doc/latex/oberdiek/picture.pdf
index c8d18d38099..89e369d97c4 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/picture.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/picture.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf b/Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf
index b5249999887..bacf4a234d9 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/refcount.pdf b/Master/texmf-dist/doc/latex/oberdiek/refcount.pdf
index fde20088401..f840c4b9ff9 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/refcount.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/refcount.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdf b/Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdf
index 1cb132bcaaf..715f69b3cba 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/settobox.pdf b/Master/texmf-dist/doc/latex/oberdiek/settobox.pdf
index f516d7ecca2..c792c2536c5 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/settobox.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/settobox.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf b/Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf
index 4cf522a5493..5caeee51dc3 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf b/Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf
index e01bd67413d..366161e2d58 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf b/Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf
index 941234f5fd6..76b2d662fd2 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/telprint.pdf b/Master/texmf-dist/doc/latex/oberdiek/telprint.pdf
index ab9abd90243..63c40b86983 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/telprint.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/telprint.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/transparent.pdf b/Master/texmf-dist/doc/latex/oberdiek/transparent.pdf
index e1ce070dc67..a3fcc4acf7c 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/transparent.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/transparent.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf b/Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf
index e9500b7b75f..7c909de6496 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/oberdiek/zref.pdf b/Master/texmf-dist/doc/latex/oberdiek/zref.pdf
index b795f0a8569..2488d1ae33d 100644
--- a/Master/texmf-dist/doc/latex/oberdiek/zref.pdf
+++ b/Master/texmf-dist/doc/latex/oberdiek/zref.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/latex/oberdiek/bmpsize.dtx b/Master/texmf-dist/source/latex/oberdiek/bmpsize.dtx
index 06960174315..7a6d0d6c575 100644
--- a/Master/texmf-dist/source/latex/oberdiek/bmpsize.dtx
+++ b/Master/texmf-dist/source/latex/oberdiek/bmpsize.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright (C) 2006 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+% Copyright (C) 2006, 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either
@@ -73,7 +73,7 @@
\input docstrip.tex
\Msg{************************************************************************}
\Msg{* Installation}
-\Msg{* Package: bmpsize 2006/08/24 v1.0 Extract size and resolution data from bitmap files (HO)}
+\Msg{* Package: bmpsize 2007/02/18 v1.1 Extract size and resolution data from bitmap files (HO)}
\Msg{************************************************************************}
\keepsilent
@@ -83,7 +83,7 @@
This is a generated file.
-Copyright (C) 2006 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+Copyright (C) 2006, 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
This work may be distributed and/or modified under the
conditions of the LaTeX Project Public License, either
@@ -142,7 +142,7 @@ and the derived files
%<*driver>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{bmpsize.drv}%
- [2006/08/24 v1.0 Extract size and resolution data from bitmap files (HO)]
+ [2007/02/18 v1.1 Extract size and resolution data from bitmap files (HO)]
\documentclass{ltxdoc}
\usepackage{holtxdoc}
\begin{document}
@@ -172,7 +172,7 @@ and the derived files
% \GetFileInfo{bmpsize.drv}
%
% \title{The \xpackage{bmpsize} package}
-% \date{2006/08/24 v1.0}
+% \date{2007/02/18 v1.1}
% \author{Heiko Oberdiek\\\xemail{oberdiek@uni-freiburg.de}}
%
% \maketitle
@@ -368,7 +368,7 @@ and the derived files
% \begin{macrocode}
%<*base>
\ProvidesPackage{bmpsize-base}%
- [2006/08/24 v1.0 Basic part of bmpsize (HO)]
+ [2007/02/18 v1.1 Basic part of bmpsize (HO)]
% \end{macrocode}
% Modules of package \xpackage{fp} are used for calculations.
% \begin{macrocode}
@@ -774,7 +774,7 @@ and the derived files
\fi
\let\loop\@bmpsize@org@plain@loop
}
-\def\bmpsize@unit@default{1in}
+\def\bmpsize@unit@default{72.27pt}% more accurate than 1in
\def\bmpsize@pixelx@default{72}
\let\bmpsize@pixely@default\Gin@exclamation
@@ -923,7 +923,7 @@ and the derived files
% skip 2 % version
% num 1 -> $temp % units
% if numeq $temp 1
-% assign {1in} -> $unit
+% assign {72.27pt} -> $unit
% else
% if numeq $temp 2
% assign {1cm} -> $unit
@@ -980,7 +980,7 @@ and the derived files
% or % 1
% clear $unit
% or % 2
-% assign {1in} -> $unit
+% assign {72.27pt} -> $unit
% or % 3
% assign {1cm} -> $unit
% else
@@ -1142,7 +1142,7 @@ and the derived files
\expandafter\@secondoftwo
\fi
{%
- \def\bmpsize@unit{1in}%
+ \def\bmpsize@unit{72.27pt}%
}{%
\ifnum\bmpsize@temp=2\relax
\expandafter\@firstofone
@@ -1238,7 +1238,7 @@ and the derived files
\or
\let\bmpsize@unit\relax
\or
- \def\bmpsize@unit{1in}%
+ \def\bmpsize@unit{72.27pt}%
\or
\def\bmpsize@unit{1cm}%
\else
@@ -1530,7 +1530,7 @@ and the derived files
%\begin{verbatim}
%begin tiff
%% defaults
-%assign {1in} -> $unit
+%assign {72.27pt} -> $unit
%
%% Image File Header
%read 8 0
@@ -1570,7 +1570,7 @@ and the derived files
% or % 1
% clear $unit
% or % 2
-% assign {1in} -> $unit
+% assign {72.27pt} -> $unit
% or % 3
% assign {1cm} -> $unit
% else
@@ -1618,7 +1618,7 @@ and the derived files
%<*base>
\def\bmpsize@read@tiff#1{%
\@bmpsize@init
- \def\bmpsize@unit{1in}%
+ \def\bmpsize@unit{72.27pt}%
\@bmpsize@read{#1}{8}{0}%
\@bmpsize@grab\bmpsize@temp{2}%
\@bmpsize@skip@two
@@ -1672,7 +1672,7 @@ and the derived files
\or
\let\bmpsize@unit\relax
\or
- \def\bmpsize@unit{1in}%
+ \def\bmpsize@unit{72.27pt}%
\or
\def\bmpsize@unit{1cm}%
\else
@@ -2800,7 +2800,7 @@ and the derived files
%ok
%num 2 -> $pixelx % horizontal resolution in DPI
%num 2 -> $pixely % vertical resolution in DPI
-%assign {1in} -> $unit
+%assign {72.27pt} -> $unit
%end
%\end{verbatim}
%</ignore>
@@ -2841,7 +2841,7 @@ and the derived files
\@bmpsize@ok
\@bmpsize@num@two\bmpsize@pixelx
\@bmpsize@num@two\bmpsize@pixely
- \def\bmpsize@unit{1in}%
+ \def\bmpsize@unit{72.27pt}%
\@bmpsize@stop
\@nil
\@bmpsize@end
@@ -2870,7 +2870,7 @@ and the derived files
%ok
%num 2 -> $pixelx % x_asp
%num 2 -> $pixely % y_asp
-%assign {1in} -> $unit % guessing
+%assign {72.27pt} -> $unit % guessing
%if numeq $pixelx 0
% num 2 -> $pixelx % x_asp_prn
% num 2 -> $pixely % y_asp_prn
@@ -2905,7 +2905,7 @@ and the derived files
\@bmpsize@ok
\@bmpsize@num@two\bmpsize@pixelx
\@bmpsize@num@two\bmpsize@pixely
- \def\bmpsize@unit{1in}%
+ \def\bmpsize@unit{72.27pt}%
\ifnum\bmpsize@pixelx=0\relax
\expandafter\@firstofone
\else
@@ -2978,7 +2978,7 @@ and the derived files
% \begin{macrocode}
%<*package>
\ProvidesPackage{bmpsize}%
- [2006/08/24 v1.0 Extract size and resolution data from bitmap files (HO)]
+ [2007/02/18 v1.1 Extract size and resolution data from bitmap files (HO)]
\RequirePackage{ifpdf}
\ifpdf
\PackageInfo{bmpsize}{Superseded by pdfTeX in PDF mode}%
@@ -3173,7 +3173,7 @@ and the derived files
% \begin{macrocode}
%<*dvips>
\ProvidesFile{bmpsize-dvips.def}%
- [2006/08/24 v1.0 Graphics bitmap driver for dvips (HO)]
+ [2007/02/18 v1.1 Graphics bitmap driver for dvips (HO)]
% \end{macrocode}
% Ensure correct catcodes.
% \begin{macrocode}
@@ -3296,7 +3296,7 @@ and the derived files
% \begin{macrocode}
%<*dvipdfm>
\ProvidesFile{bmpsize-dvipdfm.def}%
- [2006/08/24 v1.0 Graphics bitmap driver for dvipdfm (HO)]
+ [2007/02/18 v1.1 Graphics bitmap driver for dvipdfm (HO)]
% \end{macrocode}
% Ensure correct catcodes.
% \begin{macrocode}
@@ -3456,7 +3456,7 @@ and the derived files
% \begin{macrocode}
%<*dvipdfmx>
\ProvidesFile{bmpsize-dvipdfmx.def}%
- [2006/08/24 v1.0 Graphics bitmap driver for dvipdfmx (HO)]
+ [2007/02/18 v1.1 Graphics bitmap driver for dvipdfmx (HO)]
% \end{macrocode}
% Ensure correct catcodes.
% \begin{macrocode}
@@ -3782,6 +3782,10 @@ and the derived files
% \item
% First version.
% \end{Version}
+% \begin{Version}{2007/02/18 v1.1}
+% \item
+% 1in replaced by 72.27pt, because TeX is inaccurate if 1in is given.
+% \end{Version}
% \end{History}
%
% \PrintIndex
diff --git a/Master/texmf-dist/source/latex/oberdiek/bookmark.dtx b/Master/texmf-dist/source/latex/oberdiek/bookmark.dtx
new file mode 100644
index 00000000000..4b754fb8c24
--- /dev/null
+++ b/Master/texmf-dist/source/latex/oberdiek/bookmark.dtx
@@ -0,0 +1,1606 @@
+% \iffalse meta-comment
+%
+% Copyright (C) 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either
+% version 1.3 of this license or (at your option) any later
+% version. The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of
+% LaTeX version 2005/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Heiko Oberdiek.
+%
+% This work consists of the main source file bookmark.dtx
+% and the derived files
+% bookmark.sty, bookmark.pdf, bookmark.ins, bookmark.drv,
+% bkm-dvipdfm.def, bkm-dvips.def, bkm-pdftex.def,
+% bookmark-example.tex.
+%
+% Distribution:
+% CTAN:macros/latex/contrib/oberdiek/bookmark.dtx
+% CTAN:macros/latex/contrib/oberdiek/bookmark.pdf
+%
+% Unpacking:
+% (a) If bookmark.ins is present:
+% tex bookmark.ins
+% (b) Without bookmark.ins:
+% tex bookmark.dtx
+% (c) If you insist on using LaTeX
+% latex \let\install=y\input{bookmark.dtx}
+% (quote the arguments according to the demands of your shell)
+%
+% Documentation:
+% (a) If bookmark.drv is present:
+% latex bookmark.drv
+% (b) Without bookmark.drv:
+% latex bookmark.dtx; ...
+% The class ltxdoc loads the configuration file ltxdoc.cfg
+% if available. Here you can specify further options, e.g.
+% use A4 as paper format:
+% \PassOptionsToClass{a4paper}{article}
+%
+% Programm calls to get the documentation (example):
+% pdflatex bookmark.dtx
+% makeindex -s gind.ist bookmark.idx
+% pdflatex bookmark.dtx
+% makeindex -s gind.ist bookmark.idx
+% pdflatex bookmark.dtx
+%
+% Installation:
+% TDS:tex/latex/oberdiek/bookmark.sty
+% TDS:tex/latex/oberdiek/bkm-dvipdfm.def
+% TDS:tex/latex/oberdiek/bkm-dvips.def
+% TDS:tex/latex/oberdiek/bkm-pdftex.def
+% TDS:doc/latex/oberdiek/bookmark.pdf
+% TDS:doc/latex/oberdiek/bookmark-example.tex
+% TDS:source/latex/oberdiek/bookmark.dtx
+%
+%<*ignore>
+\begingroup
+ \def\x{LaTeX2e}
+\expandafter\endgroup
+\ifcase 0\ifx\install y1\fi\expandafter
+ \ifx\csname processbatchFile\endcsname\relax\else1\fi
+ \ifx\fmtname\x\else 1\fi\relax
+\else\csname fi\endcsname
+%</ignore>
+%<*install>
+\input docstrip.tex
+\Msg{************************************************************************}
+\Msg{* Installation}
+\Msg{* Package: bookmark 2007/02/20 v0.2 PDF bookmarks (HO)}
+\Msg{************************************************************************}
+
+\keepsilent
+\askforoverwritefalse
+
+\preamble
+
+This is a generated file.
+
+Copyright (C) 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+
+This work may be distributed and/or modified under the
+conditions of the LaTeX Project Public License, either
+version 1.3 of this license or (at your option) any later
+version. The latest version of this license is in
+ http://www.latex-project.org/lppl.txt
+and version 1.3 or later is part of all distributions of
+LaTeX version 2005/12/01 or later.
+
+This work has the LPPL maintenance status "maintained".
+
+This Current Maintainer of this work is Heiko Oberdiek.
+
+This work consists of the main source file bookmark.dtx
+and the derived files
+ bookmark.sty, bookmark.pdf, bookmark.ins, bookmark.drv,
+ bkm-dvipdfm.def, bkm-dvips.def, bkm-pdftex.def,
+ bookmark-example.tex.
+
+\endpreamble
+
+\generate{%
+ \file{bookmark.ins}{\from{bookmark.dtx}{install}}%
+ \file{bookmark.drv}{\from{bookmark.dtx}{driver}}%
+ \usedir{tex/latex/oberdiek}%
+ \file{bookmark.sty}{\from{bookmark.dtx}{package}}%
+ \file{bkm-dvipdfm.def}{\from{bookmark.dtx}{dvipdfm}}%
+ \file{bkm-dvips.def}{\from{bookmark.dtx}{dvips}}%
+ \file{bkm-pdftex.def}{\from{bookmark.dtx}{pdftex}}%
+ \usedir{doc/latex/oberdiek}%
+ \file{bookmark-example.tex}{\from{bookmark.dtx}{example}}%
+}
+
+\obeyspaces
+\Msg{************************************************************************}
+\Msg{*}
+\Msg{* To finish the installation you have to move the following}
+\Msg{* files into a directory searched by TeX:}
+\Msg{*}
+\Msg{* bookmark.sty, bkm-dvipdfm.def, bkm-dvips.def,}
+\Msg{* bkm-pdftex.def}
+\Msg{*}
+\Msg{* To produce the documentation run the file `bookmark.drv'}
+\Msg{* through LaTeX.}
+\Msg{*}
+\Msg{* Happy TeXing!}
+\Msg{*}
+\Msg{************************************************************************}
+
+\endbatchfile
+%</install>
+%<*ignore>
+\fi
+%</ignore>
+%<*driver>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesFile{bookmark.drv}%
+ [2007/02/20 v0.2 PDF bookmarks (HO)]
+\documentclass{ltxdoc}
+\usepackage{holtxdoc}
+\begin{document}
+ \DocInput{bookmark.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \CheckSum{1336}
+%
+% \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
+% Lower-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
+% Digits \0\1\2\3\4\5\6\7\8\9
+% Exclamation \! Double quote \" Hash (number) \#
+% Dollar \$ Percent \% Ampersand \&
+% Acute accent \' Left paren \( Right paren \)
+% Asterisk \* Plus \+ Comma \,
+% Minus \- Point \. Solidus \/
+% Colon \: Semicolon \; Less than \<
+% Equals \= Greater than \> Question mark \?
+% Commercial at \@ Left bracket \[ Backslash \\
+% Right bracket \] Circumflex \^ Underscore \_
+% Grave accent \` Left brace \{ Vertical bar \|
+% Right brace \} Tilde \~}
+%
+% \GetFileInfo{bookmark.drv}
+%
+% \title{The \xpackage{bookmark} package}
+% \date{2007/02/20 v0.2}
+% \author{Heiko Oberdiek\\\xemail{oberdiek@uni-freiburg.de}}
+%
+% \maketitle
+%
+% \begin{abstract}
+% This package implements a new bookmark (outline) organization for
+% package \xpackage{hyperref}. Bookmark properties such
+% as style and color can now be set. Other action types
+% are available (URI, GoToR, Named). The bookmarks are
+% generated in the first compile run. Package \xpackage{hyperref}
+% uses two runs.
+% \end{abstract}
+%
+% \tableofcontents
+%
+% \section{Documentation}
+%
+% \subsection{Introduction}
+%
+% This package \xpackage{bookmark} tries to provide a more modern
+% management for bookmarks:
+% \begin{itemize}
+% \item The bookmarks are already generated in the first \TeX\ compile run.
+% \item The font style and color of the bookmarks can be changed.
+% \item More actions than simple GoTo actions are possible.
+% \end{itemize}
+%
+% In the same way as \xpackage{hyperref} the bookmarks are generated
+% in the order of the bookmark generating macros (\cs{bookmark}).
+% A level number is used to define the tree structure of the bookmarks.
+% The restrictions are less strict:
+% \begin{itemize}
+% \item The level values may jump and omit values. A \cs{subsubsection}
+% may follow a \cs{chapter}. This was an error in \xpackage{hyperref},
+% that prints a warning and tries to fix this.
+% \item Several bookmarks may point to the same destination.
+% In \xpackage{hyperref} this would mess up the bookmark tree
+% completely, because the algorithm assumes that the destination
+% names are keys (unique).
+% \end{itemize}
+%
+% \subsection{Options}
+%
+% Options can be given at three places:
+% \begin{enumerate}
+% \item \cs{usepackage}|[|\meta{options}|]{bookmark}|\\
+% This is the only place for driver options.
+% \item \cs{bookmarksetup}|{|\meta{options}|}|\\
+% This command is just for setting options.
+% \item \cs{pdfbookmark}|[|\meta{options}|]{|\meta{title}|}|\\
+% This command sets the bookmark. The option settings remain
+% limited to this bookmark.
+% \end{enumerate}
+%
+% \subsubsection{Driver options}
+%
+% Supported drivers are \xoption{pdftex}, \xoption{dvips},
+% and \xoption{dvipdfm} (\xoption{xetex}).
+% The \TeX\ engines pdf\TeX\ and Xe\TeX\ are automatically detected.
+% The default for the DVI drivers is \xoption{dvips}. This can
+% be changed in the configuration file \xfile{bookmark.cfg} by
+% \cs{BookmarkDefaultDriver}, e.g.:
+% \begin{quote}
+% |\def\BookmarkDefaultDriver{dvipdfm}|
+% \end{quote}
+%
+% \subsubsection{Style options}
+%
+% \paragraph{Font options.}
+%
+% \begin{description}
+% \item[\xoption{bold}:] The bookmark is shown with a bold font
+% if the PDF viewer supports this (since PDF 1.4).
+% \item[\xoption{italic}:] An italic font is used (since PDF 1.4).
+% \end{description}
+% Both \xoption{bold} and \xoption{italic} can be used together.
+% Using value |false| disables the font option.
+%
+% \paragraph{Color options.}
+%
+% Colored bookmarks are a feature of PDF 1.4, they are not supported
+% by all PDF viewers.
+% \begin{description}
+% \item[\xoption{rgbcolor}:] This option expects an RGB tripel,
+% three space separated values in the range 0 until 1.
+% Example for blue: |rgbcolor=0 0 1|
+% \item[\xoption{color}:] Here the color can be given as
+% color specification of packages \xpackage{color}/\xpackage{xcolor}.
+% Package \xpackage{xcolor} must be loaded first, before this option
+% can be used.
+% \end{description}
+% Both options are exclusive. Used together the second option overwrites
+% the previous color option settings. The use of color is disabled by
+% using the empty value, e.g.: |color={}|
+%
+% \subsubsection{Action options}
+%
+% \begin{description}
+% \item[\xoption{dest}:] Destination name.
+% \item[\xoption{page}:] Page number, first page is 1.
+% \item[\xoption{view}:] View specification, examples:\\
+% |view={FitB}|, |view={FitH 842}|, |view={XYZ 0 100 null}|
+% Some view specifications expect numbers as parameters
+% (unit bp). They can be given either as plain numbers or
+% as length expressions inside \cs{calc}. Expressions of
+% package \xpackage{calc} are supported if the package is loaded.
+% Otherwise \eTeX's \cs{dimexpr} is used. Example:\\
+% |view={FitH \calc{\paperheight-\topmargin-1in}}|\\
+% |view={XYZ 0 \calc{\paperheight} null}|
+% \item[\xoption{named}:] Named action name:\\
+% |FirstPage|, |LastPage|, |NextPage|, |PrevPage|
+% \item[\xoption{gotor}:] Name of the external PDF file.
+% \item[\xoption{uri}:] URI specification.
+% \item[\xoption{rawaction}:] Raw action specification.
+% Because these specification depends on the driver this option
+% should not be used.
+% \end{description}
+% The appropriate action for the bookmark is selected by
+% analyzing the specified options. The actions
+% are distinguished by different sets of options:
+% \begin{quote}
+% \begin{tabular}{@{}ll@{}}
+% \textbf{Action} & \textbf{Options}\\
+% \hline
+% \textsf{GoTo}: & \xoption{dest}\\
+% \textsf{GoTo}: & \xoption{page} + \xoption{view}\\
+% \textsf{GoToR}: & \xoption{gotor} + \xoption{dest}\\
+% \textsf{GoToR}: & \xoption{gotor} + \xoption{page} + \xoption{view}\\
+% \textsf{Named}: & \xoption{named}\\
+% \textsf{URI}: & \xoption{uri}
+% \end{tabular}
+% \end{quote}
+%
+% \subsection{Level options}
+%
+% The order of the bookmark entries are defined by the
+% appearance order of \cs{bookmark} commands. The tree structure
+% is constructed by the property \xoption{level} of the bookmark nodes.
+% The values of \xoption{level} are integers. If the level of a
+% bookmark entry has a higher value than the previous node, then
+% the entry becomes a child of the previous node. The absolute
+% value of the difference does not matter.
+%
+% Package \xpackage{bookmark} remembers the level of the previous
+% bookmark entry in a global property `current level'.
+%
+% The behaviour of the level system can be configured by following
+% options:
+% \begin{description}
+% \item[\xoption{level}:]
+% 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.
+% \item[\xoption{rellevel}:]
+% Sets the level relative to the previous level.
+% A positive value means that the bookmark entry become
+% a child of the previous one.
+% \item[\xoption{keeplevel}:]
+% Use the level, set by \xoption{level} or \xoption{rellevel},
+% but do not change the global property `current level'.
+% The option can be disabled by setting to |false|.
+% \item[\xoption{startatroot}:]
+% At this time the bookmark tree starts at the top level again.
+% The next bookmark entry is not sorted as child to a previous entry.
+% Example szenario: A document uses part. However there are
+% last chapters that should not be put below the last part:
+% \begin{quote}
+%\begin{verbatim}
+%\documentclass{book}
+%[...]
+%\begin{document}
+% \part{First part}
+% \chapter{First chapter in first part}
+% [...]
+% \part{Second part}
+% \chapter{First chapter in second part}
+% [...]
+% \bookmarksetup{startatroot}
+% \chapter{Index}% does not belong to second part
+%\end{document}
+%\end{verbatim}
+% \end{quote}
+% \end{description}
+%
+% \subsection{Compatibility with \xpackage{hyperref}}
+%
+% Package \xpackage{bookmark} automatically disables
+% \xpackage{hyperref}'s bookmarks. However the package
+% uses some of the code of \xpackage{hyperref}. For example,
+% the package redefines the hook \cs{Hy@writebookmark} that
+% \xpackage{hyperref} inserts in \cs{addcontentsline} and
+% other commands. Therefore
+% \xpackage{hyperref}'s bookmarks should not be disabled.
+%
+% Package \xpackage{bookmark} uses \xpackage{hyperref}'s \cs{pdfstringdef}
+% and does not provide a replacement.
+%
+% Some options of \xpackage{hyperref} are also implemented
+% in package \xpackage{bookmark}:
+% \begin{quote}
+% \begin{tabular}{@{}ll@{}}
+% \xpackage{hyperref} & \xpackage{bookmark}\\
+% \hline
+% \xoption{bookmarksdepth} & \xoption{depth}\\
+% \xoption{bookmarksopen} & \xoption{open}\\
+% \xoption{bookmarksopenlevel} & \xoption{openlevel}\\
+% \end{tabular}
+% \end{quote}
+%
+% The following commands are also available:
+% \begin{quote}
+% \cs{pdfbookmark}\\
+% \cs{currentpdfbookmark}\\
+% \cs{subpdfbookmark}\\
+% \cs{belowpdfbookmark}
+% \end{quote}
+%
+% \subsection{Limitations/ToDos}
+%
+% \begin{itemize}
+% \item Support for missing drivers (V\TeX, \dots).
+% \item Support for missing actions (Launch, \dots).
+% \item Replacements for \cs{pdfescapehex}, \cs{pdfescapestring},
+% \dots\ for other \TeX\ engines than pdf\TeX.
+% \item \xpackage{hyperref}'s \xoption{bookmarkstype}.
+% \item Adding bookmarks at the end of the document
+% is difficult for \xoption{dvipdfm}, because the \cs{special}
+% must go into a page. The problem can be solved by two runs
+% using \xpackage{zref-abspage} for detecting the last page and
+% package \xpackage{everyshi} for adding the \cs{special}s at the
+% end of the last page.
+% \end{itemize}
+%
+% \section{Example}
+%
+% \begin{macrocode}
+%<*example>
+% \end{macrocode}
+% \begin{macrocode}
+\documentclass{article}
+\usepackage{xcolor}[2007/01/21]
+\usepackage{hyperref}
+\usepackage[
+ open,
+ openlevel=2
+]{bookmark}
+
+\bookmarksetup{color=blue}
+
+\begin{document}
+\section{First section}
+\subsection{Subsection A}
+\begin{figure}
+ \hypertarget{fig}{}%
+ \bookmark[
+ rellevel=1,
+ keeplevel,
+ dest=fig
+ ]{A figure}
+ A figure.
+\end{figure}
+\subsection{Subsection B}
+\subsubsection{Subsubsection C}
+\newpage
+\bookmarksetup{
+ bold,
+ rgbcolor=1 0 0
+}
+\section{Very important section}
+\bookmarksetup{
+ italic,
+ bold=false,
+ color=blue
+}
+\subsection{Italic section}
+\bookmarksetup{
+ italic=false
+}
+\part{Misc}
+\section{Diverse}
+\subsubsection{Subsubsection, omitting subsection}
+\bookmarksetup{
+ startatroot
+}
+\section{Last section outside part}
+\subsection{Subsection}
+\bookmarksetup{
+ color={}
+}
+\begingroup
+ \bookmarksetup{level=0, color=green!80!black}
+ \bookmark[named=FirstPage]{First page}
+ \bookmark[named=LastPage]{Last page}
+ \bookmark[named=PrevPage]{Previous page}
+ \bookmark[named=NextPage]{Next page}
+\endgroup
+\bookmark[
+ page=2,
+ view=FitH 800
+]{Page 2, FitH 800}
+\bookmark[
+ page=2,
+ view=FitBH \calc{\paperheight-\topmargin-1in-\headheight-\headsep}
+]{Page 2, FitBH top of text body}
+\bookmark[
+ uri={http://www.dante.de/},
+ color=magenta
+]{Dante homepage}
+\bookmark[
+ gotor={t.pdf},
+ page=1,
+ view={XYZ 0 1000 null},
+ color=cyan!75!black
+]{File t.pdf}
+\bookmark[named=FirstPage]{First page}
+\bookmark[rellevel=1, named=LastPage]{Last page (rellevel=1)}
+\bookmark[named=PrevPage]{Previous page}
+\bookmark[level=0, named=FirstPage]{First page (level=0)}
+\bookmark[
+ rellevel=1,
+ keeplevel,
+ named=LastPage
+]{Last page (rellevel=1, keeplevel)}
+\bookmark[named=PrevPage]{Previous page}
+\end{document}
+% \end{macrocode}
+% \begin{macrocode}
+%</example>
+% \end{macrocode}
+%
+% \StopEventually{
+% }
+%
+% \section{Implementation}
+%
+% \subsection{Package}
+%
+% \begin{macrocode}
+%<*package>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{bookmark}%
+ [2007/02/20 v0.2 PDF bookmarks (HO)]
+% \end{macrocode}
+%
+% \subsubsection{Requirements}
+%
+% \begin{macrocode}
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname pdfescapehex\endcsname\relax
+ \PackageWarningNoLine{bookmark}{%
+ Some features of pdfTeX 1.30 are missing that\MessageBreak
+ protect some arguments. Replacements for these\MessageBreak
+ features are not implemented. Thus the pdf file\MessageBreak
+ can become invalid or the .aux file breaks%
+ }%
+ \let\BKM@escapename\@firstofone
+ \let\BKM@escapestring\@firstofone
+ \let\BKM@escapehex\@firstofone
+ \let\BKM@unescapehex\@firstofone
+\else
+ \let\BKM@escapename\pdfescapename
+ \let\BKM@escapestring\pdfescapestring
+ \let\BKM@escapehex\pdfescapehex
+ \let\BKM@unescapehex\pdfunescapehex
+\fi
+% \end{macrocode}
+%
+% \paragraph{Packages.}
+%
+% \begin{macrocode}
+\RequirePackage{ifpdf}
+\RequirePackage{ifxetex}
+\RequirePackage{hyperref}
+\RequirePackage{auxhook}
+\RequirePackage{flags}
+\RequirePackage{kvoptions}
+% \end{macrocode}
+%
+% \subsubsection{Package options}
+%
+% \begin{macrocode}
+\SetupKeyvalOptions{family=BKM,prefix=BKM@}
+\newcommand*{\bookmarksetup}{\setkeys{BKM}}
+\DeclareBoolOption{open}
+\DeclareStringOption[\maxdimen]{openlevel}
+\DeclareStringOption[\c@tocdepth]{depth}
+\DeclareStringOption[\BKM@currentlevel]{level}[\BKM@currentlevel]
+\DeclareBoolOption{keeplevel}
+\DeclareBoolOption{startatroot}
+\define@key{BKM}{rellevel}{%
+ \edef\BKM@level{\number\numexpr#1+\BKM@currentlevel\relax}%
+}
+\def\BKM@currentlevel{0}
+% \end{macrocode}
+%
+% \paragraph{Style options.}
+%
+% \begin{macrocode}
+\resetflags{BKM@style}
+\define@key{BKM}{italic}[true]{%
+ \expandafter\ifx\csname if#1\endcsname\iftrue
+ \setflag{BKM@style}{1}%
+ \else
+ \clearflag{BKM@style}{1}%
+ \fi
+}
+\define@key{BKM}{bold}[true]{%
+ \expandafter\ifx\csname if#1\endcsname\iftrue
+ \setflag{BKM@style}{2}%
+ \else
+ \clearflag{BKM@style}{2}%
+ \fi
+}
+% \end{macrocode}
+%
+% \paragraph{Options for color.}
+%
+% \begin{macrocode}
+\define@key{BKM}{rgbcolor}{%
+ \def\BKM@color{#1}%
+}
+\define@key{BKM}{color}{%
+ \ifx\\#1\\%
+ \let\BKM@color\@empty
+ \else
+ \@ifundefined{XC@bordercolor}{%
+ \PackageWarning{bookmark}{%
+ Load package `xcolor' (version >= 2.11) first.\MessageBreak
+ Ignoring color specification%
+ }%
+ }{%
+ \begingroup
+ \csname @safe@activestrue\endcsname
+ \XC@bordercolor{}{#1}%
+ \expandafter\endgroup
+ \expandafter\def\expandafter\BKM@color\expandafter{\@bordercolor}%
+ }%
+ \fi
+}
+\let\BKM@color\@empty
+% \end{macrocode}
+%
+% \subsubsection{Action options}
+%
+% \begin{macrocode}
+\DeclareStringOption{dest}
+\DeclareStringOption{named}
+\DeclareStringOption{uri}
+\DeclareStringOption{gotor}
+\DeclareStringOption{rawaction}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\define@key{BKM}{page}{%
+ \def\BKM@page{#1}%
+ \ifx\BKM@page\@empty
+ \else
+ \edef\BKM@page{\number\BKM@page}%
+ \ifnum\BKM@page>\z@
+ \else
+ \PackageError{bookmark}{Page must be positive}\@ehc
+ \def\BKM@page{1}%
+ \fi
+ \fi
+}
+\let\BKM@page\@empty
+% \end{macrocode}
+%
+% \begin{macrocode}
+\define@key{BKM}{view}{%
+ \BKM@CheckView{#1}%
+}
+\let\BKM@view\@empty
+\def\BKM@CheckView#1{%
+ \BKM@CheckViewType#1 \@nil
+}
+\def\BKM@CheckViewType#1 #2\@nil{%
+ \def\BKM@type{#1}%
+ \@onelevel@sanitize\BKM@type
+ \BKM@TestViewType{Fit}{}%
+ \BKM@TestViewType{FitB}{}%
+ \BKM@TestViewType{FitH}{%
+ \BKM@CheckParam#2 \@nil{top}%
+ }%
+ \BKM@TestViewType{FitBH}{%
+ \BKM@CheckParam#2 \@nil{top}%
+ }%
+ \BKM@TestViewType{FitV}{%
+ \BKM@CheckParam#2 \@nil{bottom}%
+ }%
+ \BKM@TestViewType{FitBV}{%
+ \BKM@CheckParam#2 \@nil{bottom}%
+ }%
+ \BKM@TestViewType{FitR}{%
+ \BKM@CheckRect{#2}{ }%
+ }%
+ \BKM@TestViewType{XYZ}{%
+ \BKM@CheckXYZ{#2}{ }%
+ }%
+ \@car{%
+ \PackageError{pdfbookmark}{%
+ Unknown view type `\BKM@type',\MessageBreak
+ using `FitH' instead%
+ }\@ehc
+ \def\BKM@view{FitH}%
+ }%
+ \@nil
+}
+\def\BKM@TestViewType#1{%
+ \def\BKM@temp{#1}%
+ \@onelevel@sanitize\BKM@temp
+ \ifx\BKM@type\BKM@temp
+ \let\BKM@view\BKM@temp
+ \expandafter\@car
+ \else
+ \expandafter\@gobble
+ \fi
+}
+\def\BKM@CheckParam#1 #2\@nil#3{%
+ \def\BKM@param{#1}%
+ \ifx\BKM@param\@empty
+ \PackageWarning{bookmark}{%
+ Missing parameter (#3) for `\BKM@type',\MessageBreak
+ using 0%
+ }%
+ \def\BKM@param{0}%
+ \else
+ \BKM@CalcParam
+ \fi
+ \edef\BKM@view{\BKM@view\space\BKM@param}%
+}
+\def\BKM@CheckRect#1#2{%
+ \BKM@@CheckRect#1#2#2#2#2\@nil
+}
+\def\BKM@@CheckRect#1 #2 #3 #4 #5\@nil{%
+ \def\BKM@temp{0}%
+ \def\BKM@param{#1}%
+ \ifx\BKM@param\@empty
+ \def\BKM@param{0}%
+ \def\BKM@temp{1}%
+ \else
+ \BKM@CalcParam
+ \fi
+ \edef\BKM@view{\BKM@view\space\BKM@param}%
+ \def\BKM@param{#2}%
+ \ifx\BKM@param\@empty
+ \def\BKM@param{0}%
+ \def\BKM@temp{1}%
+ \else
+ \BKM@CalcParam
+ \fi
+ \edef\BKM@view{\BKM@view\space\BKM@param}%
+ \def\BKM@param{#3}%
+ \ifx\BKM@param\@empty
+ \def\BKM@param{0}%
+ \def\BKM@temp{1}%
+ \else
+ \BKM@CalcParam
+ \fi
+ \edef\BKM@view{\BKM@view\space\BKM@param}%
+ \def\BKM@param{#4}%
+ \ifx\BKM@param\@empty
+ \def\BKM@param{0}%
+ \def\BKM@temp{1}%
+ \else
+ \BKM@CalcParam
+ \fi
+ \edef\BKM@view{\BKM@view\space\BKM@param}%
+ \ifnum\BKM@temp>\z@
+ \PackageWarning{bookmark}{Missing parameters for `\BKM@type'}%
+ \fi
+}
+\def\BKM@CheckXYZ#1#2{%
+ \BKM@@CheckXYZ#1#2#2#2\@nil
+}
+\def\BKM@@CheckXYZ#1 #2 #3 #4\@nil{%
+ \def\BKM@param{#1}%
+ \let\BKM@temp\BKM@param
+ \@onelevel@sanitize\BKM@temp
+ \ifx\BKM@param\@empty
+ \let\BKM@param\BKM@null
+ \else
+ \ifx\BKM@temp\BKM@null
+ \else
+ \BKM@CalcParam
+ \fi
+ \fi
+ \edef\BKM@view{\BKM@view\space\BKM@param}%
+ \def\BKM@param{#2}%
+ \let\BKM@temp\BKM@param
+ \@onelevel@sanitize\BKM@temp
+ \ifx\BKM@param\@empty
+ \let\BKM@param\BKM@null
+ \ifx\BKM@temp\BKM@null
+ \else
+ \BKM@CalcParam
+ \fi
+ \fi
+ \edef\BKM@view{\BKM@view\space\BKM@param}%
+ \def\BKM@param{#3}%
+ \ifx\BKM@param\@empty
+ \let\BKM@param\BKM@null
+ \fi
+ \edef\BKM@view{\BKM@view\space\BKM@param}%
+}
+\def\BKM@null{null}
+\@onelevel@sanitize\BKM@null
+% \end{macrocode}
+%
+% \begin{macrocode}
+\def\BKM@CalcParam{%
+ \begingroup
+ \let\calc\@firstofone
+ \expandafter\BKM@@CalcParam\BKM@param\@empty\@empty\@nil
+}
+\def\BKM@@CalcParam#1#2#3\@nil{%
+ \ifx\calc#1%
+ \@ifundefined{calc@assign@dimen}{%
+ \setlength{\dimen@}{\dimexpr#2\relax}%
+ }{%
+ \setlength{\dimen@}{#2}%
+ }%
+ \dimen@.99626\dimen@
+ \edef\BKM@param{\strip@pt\dimen@}%
+ \expandafter\endgroup
+ \expandafter\def\expandafter\BKM@param\expandafter{\BKM@param}%
+ \else
+ \endgroup
+ \fi
+}
+% \end{macrocode}
+%
+% \subsubsection{Driver setup and loading}
+%
+% \paragraph{Driver detection.}
+%
+% \begin{macrocode}
+\define@key{BKM}{pdftex}[]{%
+ \def\BKM@driver{pdftex}%
+}
+\define@key{BKM}{dvips}[]{%
+ \def\BKM@driver{dvips}%
+}
+\define@key{BKM}{dvipdfm}[]{%
+ \def\BKM@driver{dvipdfm}%
+}
+\define@key{BKM}{dvipdfmx}[]{%
+ \def\BKM@driver{dvipdfm}%
+}
+\define@key{BKM}{xetex}[]{%
+ \def\BKM@driver{dvipdfm}%
+}
+\InputIfFileExists{bookmark.cfg}{}{}
+\providecommand*{\BookmarkDriverDefault}{dvips}
+\ifpdf
+ \def\BKM@driver{pdftex}%
+\else
+ \ifxetex
+ \def\BKM@driver{dvipdfm}%
+ \else
+ \let\BKM@driver\BookmarkDriverDefault
+ \fi
+\fi
+% \end{macrocode}
+%
+% \paragraph{Process options.}
+%
+% \begin{macrocode}
+\ProcessKeyvalOptions*
+\DisableKeyvalOption{BKM}{pdftex}
+\DisableKeyvalOption{BKM}{dvips}
+\DisableKeyvalOption{BKM}{dvipdfm}
+\DisableKeyvalOption{BKM}{dvipdfmx}
+\DisableKeyvalOption{BKM}{xetex}
+% \end{macrocode}
+%
+% \paragraph{Driver validation and loading.}
+%
+% \begin{macrocode}
+\def\BKM@temp{pdftex}%
+\ifpdf
+ \ifx\BKM@temp\BKM@driver
+ \else
+ \PackageWarningNoLine{bookmark}{%
+ Wrong driver `\BKM@driver', using `pdftex' instead%
+ }%
+ \let\BKM@driver\BKM@temp
+ \fi
+\else
+ \ifx\BKM@temp\BKM@driver
+ \PackageError{bookmark}{%
+ Wrong driver, pdfTeX is not running in PDF mode.\MessageBreak
+ Package loading is aborted%
+ }\@ehc
+ \expandafter\expandafter\expandafter\endinput
+ \fi
+ \def\BKM@temp{dvipdfm}%
+ \ifxetex
+ \ifx\BKM@temp\BKM@driver
+ \else
+ \PackageWarningNoLine{bookmark}{%
+ Wrong driver `\BKM@driver',\MessageBreak
+ using `dvipdfm' for XeTeX instead%
+ }%
+ \let\BKM@driver\BKM@temp
+ \fi
+ \fi
+\fi
+\InputIfFileExists{bkm-\BKM@driver.def}{}{%
+ \PackageError{bookmark}{%
+ Unsupported driver `\BKM@driver'.\MessageBreak
+ Package loading is aborted%
+ }\@ehc
+ \endinput
+}
+% \end{macrocode}
+%
+% \subsubsection{Compatibility for \xpackage{hyperref}}
+%
+% \begin{macrocode}
+\renewcommand*{\pdfbookmark}[3][0]{%
+ \bookmark[level=#1,dest={#3.#1}]{#2}%
+ \hyper@anchorstart{#3.#1}\hyper@anchorend
+}
+\renewcommand*{\currentpdfbookmark}{%
+ \pdfbookmark[\BKM@currentlevel]%
+}
+\renewcommand*{\subpdfbookmark}{%
+ \expandafter\pdfbookmark\expandafter[%
+ \the\numexpr\BKM@currentlevel+1\relax
+ ]%
+}
+\renewcommand*{\belowpdfbookmark}[2]{%
+ \xdef\BKM@gtemp{\number\BKM@currentlevel}%
+ \subpdfbookmark{#1}{#2}%
+ \global\let\BKM@currentlevel\BKM@gtemp
+}
+% \end{macrocode}
+%
+% section number, text, label, level, file
+% \begin{macrocode}
+\renewcommand*{\Hy@writebookmark}[5]{%
+ \ifnum#4>\Hy@bookmarksdepth\relax
+ \else
+ \begingroup
+ \ifHy@bookmarksnumbered
+ \let\numberline\Hy@numberline
+ \let\partnumberline\Hy@numberline
+ \let\chapternumberline\Hy@numberline
+ \else
+ \let\numberline\@gobble
+ \let\partnumberline\@gobble
+ \let\chapternumberline\@gobble
+ \fi
+ \bookmark[level=#4,dest={#3}]{#2}%
+ \endgroup
+ \fi
+}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\let\ReadBookmarks\relax
+% \end{macrocode}
+%
+% \begin{macrocode}
+%</package>
+% \end{macrocode}
+%
+% \subsection{Driver for dvipdfm}
+%
+% \begin{macrocode}
+%<*dvipdfm>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesFile{bkm-dvipdfm.def}%
+ [2007/02/20 v0.2 bookmark driver for dvipdfm (HO)]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\newcount\BKM@id
+\BKM@id=\z@
+% \end{macrocode}
+%
+% \begin{macrocode}
+\def\BKM@0{000}
+% \end{macrocode}
+% \begin{macrocode}
+\newif\ifBKM@sw
+% \end{macrocode}
+%
+% \begin{macrocode}
+\newcommand*{\bookmark}[2][]{%
+ \if@filesw
+ \begingroup
+ \bookmarksetup{#1}%
+ \ifBKM@keeplevel
+ \else
+ \xdef\BKM@currentlevel{\BKM@level}%
+ \fi
+ \edef\BKM@prev{\the\BKM@id}%
+ \global\advance\BKM@id\@ne
+ \BKM@swtrue
+ \@whilesw\ifBKM@sw\fi{%
+ \def\BKM@abslevel{1}%
+ \ifnum\ifBKM@startatroot\z@\else\BKM@prev\fi=\z@
+ \global\BKM@startatrootfalse
+ \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{%
+ 0{\BKM@level}\BKM@abslevel
+ }%
+ \BKM@swfalse
+ \else
+ \expandafter\expandafter\expandafter\BKM@getx
+ \csname BKM@\BKM@prev\endcsname
+ \ifnum\BKM@level>\BKM@x@level\relax
+ \edef\BKM@abslevel{\the\numexpr\BKM@x@abslevel+1\relax}%
+ \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{%
+ {\BKM@prev}{\BKM@level}\BKM@abslevel
+ }%
+ \BKM@swfalse
+ \else
+ \let\BKM@prev\BKM@x@parent
+ \fi
+ \fi
+ }%
+ \pdfstringdef\BKM@title{#2}%
+ \edef\BKM@FLAGS{\printflags{BKM@style}}%
+ \let\BKM@action\@empty
+ \ifx\BKM@gotor\@empty
+ \ifx\BKM@dest\@empty
+ \ifx\BKM@named\@empty
+ \ifx\BKM@rawaction\@empty
+ \ifx\BKM@uri\@empty
+ \ifx\BKM@page\@empty
+ \PackageError{bookmark}{Missing action}\@ehc
+ \edef\BKM@action{/Dest[@page1/Fit]}%
+ \else
+ \ifx\BKM@view\@empty
+ \def\BKM@view{Fit}%
+ \fi
+ \edef\BKM@action{/Dest[@page\BKM@page/\BKM@view]}%
+ \fi
+ \else
+ \edef\BKM@action{%
+ /A<<%
+ /S/URI%
+ /URI(\BKM@escapestring{\BKM@uri})%
+ >>%
+ }%
+ \fi
+ \else
+ \edef\BKM@action{/A<<\BKM@rawaction>>}%
+ \fi
+ \else
+ \edef\BKM@action{%
+ /A<</S/Named/N/\BKM@escapename{\BKM@named}>>%
+ }%
+ \fi
+ \else
+ \edef\BKM@action{%
+ /A<<%
+ /S/GoTo%
+ /D(\BKM@escapestring{\BKM@dest})%
+ >>%
+ }%
+ \fi
+ \else
+ \ifx\BKM@dest\@empty
+ \ifx\BKM@page\@empty
+ \def\BKM@page{0}%
+ \else
+ \edef\BKM@page{\the\numexpr\BKM@page-1\relax}%
+ \fi
+ \ifx\BKM@view\@empty
+ \def\BKM@view{Fit}%
+ \fi
+ \edef\BKM@action{/D[\BKM@page/\BKM@view]}%
+ \else
+ \edef\BKM@action{/D(\BKM@escapestring{\BKM@dest})}%
+ \fi
+ \edef\BKM@action{%
+ /A<<%
+ /S/GoToR%
+ /F(\BKM@escapestring{\BKM@gotor})%
+ \BKM@action
+ >>%
+ }%
+ \fi
+ \special{pdf:%
+ out \BKM@abslevel
+ <<%
+ /Title(\BKM@title)%
+ \ifx\BKM@color\@empty
+ \else
+ /C[\BKM@color]%
+ \fi
+ \ifnum\BKM@FLAGS>\z@
+ /F \BKM@FLAGS
+ \fi
+ \BKM@action
+ >>%
+ }%
+ \endgroup
+ \fi
+}
+% \end{macrocode}
+% \begin{macrocode}
+\def\BKM@getx#1#2#3{%
+ \def\BKM@x@parent{#1}%
+ \def\BKM@x@level{#2}%
+ \def\BKM@x@abslevel{#3}%
+}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%</dvipdfm>
+% \end{macrocode}
+%
+% \subsection{Driver for \pdfTeX}
+%
+% \begin{macrocode}
+%<*pdftex>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesFile{bkm-pdftex.def}%
+ [2007/02/20 v0.2 bookmark driver for pdftex (HO)]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\def\BKM@DO@entry#1#2{%
+ \begingroup
+ \setkeys{BKM@DO}{#1}%
+ \edef\BKM@DO@title{\BKM@unescapehex{#2}}%
+ \expandafter\expandafter\expandafter\BKM@getx
+ \csname BKM@\BKM@DO@id\endcsname\@empty\@empty
+ \let\BKM@attr\@empty
+ \ifx\BKM@DO@flags\@empty
+ \else
+ \edef\BKM@attr{\BKM@attr/F \BKM@DO@flags}%
+ \fi
+ \ifx\BKM@DO@color\@empty
+ \else
+ \edef\BKM@attr{\BKM@attr/C[\BKM@DO@color]}%
+ \fi
+ \ifx\BKM@attr\@empty
+ \else
+ \edef\BKM@attr{attr{\BKM@attr}}%
+ \fi
+ \let\BKM@action\@empty
+ \ifx\BKM@DO@gotor\@empty
+ \ifx\BKM@DO@dest\@empty
+ \ifx\BKM@DO@named\@empty
+ \ifx\BKM@DO@rawaction\@empty
+ \ifx\BKM@DO@uri\@empty
+ \ifx\BKM@DO@page\@empty
+ \PackageError{bookmark}{Missing action}\@ehc
+ \edef\BKM@action{goto page1{/Fit}}%
+ \else
+ \ifx\BKM@DO@view\@empty
+ \def\BKM@DO@view{Fit}%
+ \fi
+ \edef\BKM@action{goto page\BKM@DO@page{/\BKM@DO@view}}%
+ \fi
+ \else
+ \edef\BKM@action{user{<</S/URI/URI(%
+ \BKM@escapestring{\BKM@unescapehex{\BKM@DO@uri}})>>}}%
+ \fi
+ \else
+ \edef\BKM@action{%
+ user{%
+ <<%
+ \BKM@unescapehex{\BKM@DO@rawaction}%
+ >>%
+ }%
+ }%
+ \fi
+ \else
+ \edef\BKM@action{%
+ user{<</S/Named/N/\BKM@escapename{\BKM@DO@named}>>}%
+ }%
+ \fi
+ \else
+ \edef\BKM@action{goto name{\BKM@DO@dest}}%
+ \fi
+ \else
+ \ifx\BKM@DO@dest\@empty
+ \ifx\BKM@DO@page\@empty
+ \def\BKM@DO@page{0}%
+ \else
+ \edef\BKM@DO@page{\the\numexpr\BKM@DO@page-1\relax}%
+ \fi
+ \ifx\BKM@DO@view\@empty
+ \def\BKM@DO@view{Fit}%
+ \fi
+ \edef\BKM@action{/D[\BKM@DO@page/\BKM@DO@view]}%
+ \else
+ \edef\BKM@action{/D(\BKM@escapestring{\BKM@DO@dest})}%
+ \fi
+ \edef\BKM@action{%
+ user{%
+ <<%
+ /S/GoToR%
+ /F(\BKM@escapestring{\BKM@unescapehex{\BKM@DO@gotor}})%
+ \BKM@action
+ >>%
+ }%
+ }%
+ \fi
+ \pdfoutline\BKM@attr\BKM@action
+ count\ifBKM@DO@open\else-\fi\BKM@x@childs
+ {\BKM@DO@title}%
+ \endgroup
+}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%</pdftex>
+% \end{macrocode}
+%
+% \subsection{Driver for dvips}
+%
+% \begin{macrocode}
+%<*dvips>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesFile{bkm-dvips.def}%
+ [2007/02/20 v0.2 bookmark driver for dvips (HO)]
+% \end{macrocode}
+%
+% \begin{macrocode}
+\def\BKM@filename{\jobname.out.ps}
+\special{header=\BKM@filename}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\AtEndDocument{\BKM@dvips@out}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\def\BKM@dvips@out{%
+ \newwrite\BKM@file
+ \immediate\openout\BKM@file=\BKM@filename\relax
+ \BKM@write{\@percentchar!}%
+ \BKM@write{/pdfmark where{pop}}%
+ \BKM@write{%
+ {%
+ /globaldict where{pop globaldict}{userdict}ifelse%
+ /pdfmark/cleartomark load put%
+ }%
+ }%
+ \BKM@write{ifelse}
+}
+\def\BKM@write#{%
+ \immediate\write\BKM@file
+}
+% \end{macrocode}
+%
+% The specification for pdfmark says that |/Color| is the
+% name of the key for color, however ghostscript only passes
+% the key into the PDF file, thus the key name must be |/C|.
+% \begin{macrocode}
+\def\BKM@DO@entry#1#2{%
+ \begingroup
+ \setkeys{BKM@DO}{#1}%
+ \edef\BKM@DO@title{\BKM@unescapehex{#2}}%
+ \expandafter\expandafter\expandafter\BKM@getx
+ \csname BKM@\BKM@DO@id\endcsname\@empty\@empty
+ \let\BKM@attr\@empty
+ \ifx\BKM@DO@flags\@empty
+ \else
+ \edef\BKM@attr{\BKM@attr/F \BKM@DO@flags}%
+ \fi
+ \ifx\BKM@DO@color\@empty
+ \else
+ \edef\BKM@attr{\BKM@attr/C[\BKM@DO@color]}%
+ \fi
+ \let\BKM@action\@empty
+ \ifx\BKM@DO@gotor\@empty
+ \ifx\BKM@DO@dest\@empty
+ \ifx\BKM@DO@named\@empty
+ \ifx\BKM@DO@rawaction\@empty
+ \ifx\BKM@DO@uri\@empty
+ \ifx\BKM@DO@page\@empty
+ \PackageError{bookmark}{Missing action}\@ehc
+ \edef\BKM@action{%
+ /Action/GoTo%
+ /Page 1%
+ /View[/Fit]%
+ }%
+ \else
+ \ifx\BKM@DO@view\@empty
+ \def\BKM@DO@view{Fit}%
+ \fi
+ \edef\BKM@action{%
+ /Action/GoTo%
+ /Page \BKM@DO@page
+ /View[/\BKM@DO@view]%
+ }%
+ \fi
+ \else
+ \edef\BKM@action{%
+ /Action<<%
+ /Subtype/URI%
+ /URI(\BKM@escapestring{\BKM@unescapehex{\BKM@DO@uri}})%
+ >>%
+ }%
+ \fi
+ \else
+ \edef\BKM@action{%
+ /Action<<%
+ \BKM@unescapehex{\BKM@DO@rawaction}%
+ >>%
+ }%
+ \fi
+ \else
+ \edef\BKM@action{%
+ /Action<<%
+ /Subtype/Named%
+ /N/\BKM@escapename{\BKM@DO@named}%
+ >>%
+ }%
+ \fi
+ \else
+ \edef\BKM@action{%
+ /Action/GoTo%
+ /Dest(\BKM@escapestring{\BKM@DO@dest})cvn%
+ }%
+ \fi
+ \else
+ \ifx\BKM@DO@dest\@empty
+ \ifx\BKM@DO@page\@empty
+ \def\BKM@DO@page{1}%
+ \fi
+ \ifx\BKM@DO@view\@empty
+ \def\BKM@DO@view{Fit}%
+ \fi
+ \edef\BKM@action{%
+ /Page \BKM@DO@page
+ /View[/\BKM@DO@view]%
+ }%
+ \else
+ \edef\BKM@action{%
+ /Dest(\BKM@escapestring{\BKM@DO@dest})cvn%
+ }%
+ \fi
+ \edef\BKM@action{%
+ /Action/GoToR%
+ /F(\BKM@escapestring{\BKM@unescapehex{\BKM@DO@gotor}})%
+ \BKM@action
+ }%
+ \fi
+ \BKM@write{[}%
+ \BKM@write{/Title(\BKM@DO@title)}%
+ \ifnum\BKM@x@childs>\z@
+ \BKM@write{/Count \ifBKM@DO@open\else-\fi\BKM@x@childs}%
+ \fi
+ \ifx\BKM@attr\@empty
+ \else
+ \BKM@write{\BKM@attr}%
+ \fi
+ \BKM@write{\BKM@action}%
+ \BKM@write{/OUT pdfmark}%
+ \endgroup
+}
+% \end{macrocode}
+% \begin{macrocode}
+%</dvips>
+% \end{macrocode}
+%
+% \subsection{Common part for \xoption{pdftex} and \xoption{dvips}}
+%
+% \begin{macrocode}
+%<*pdftex|dvips>
+% \end{macrocode}
+%
+% \subsubsection{Write auxiliary file}
+%
+% \begin{macrocode}
+\RequirePackage{auxhook}
+% \end{macrocode}
+% \begin{macrocode}
+\AddLineBeginMainAux{%
+ \string\providecommand\string\BKM@entry[2]{}%
+}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\newcount\BKM@id
+\BKM@id=\z@
+% \end{macrocode}
+%
+% \begin{macrocode}
+\def\BKM@0{000}
+% \end{macrocode}
+% \begin{macrocode}
+\newif\ifBKM@sw
+% \end{macrocode}
+%
+% \begin{macrocode}
+\newcommand*{\bookmark}[2][]{%
+ \if@filesw
+ \begingroup
+ \bookmarksetup{#1}%
+ \ifBKM@keeplevel
+ \else
+ \xdef\BKM@currentlevel{\BKM@level}%
+ \fi
+ \edef\BKM@prev{\the\BKM@id}%
+ \global\advance\BKM@id\@ne
+ \BKM@swtrue
+ \@whilesw\ifBKM@sw\fi{%
+ \ifnum\ifBKM@startatroot\z@\else\BKM@prev\fi=\z@
+ \global\BKM@startatrootfalse
+ \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{%
+ 0{\BKM@level}0%
+ }%
+ \BKM@swfalse
+ \else
+ \expandafter\expandafter\expandafter\BKM@getx
+ \csname BKM@\BKM@prev\endcsname
+ \ifnum\BKM@level>\BKM@x@level\relax
+ \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{%
+ {\BKM@prev}{\BKM@level}0%
+ }%
+ \ifnum\BKM@prev>\z@
+ \expandafter\xdef\csname BKM@\BKM@prev\endcsname{%
+ {\BKM@x@parent}{\BKM@x@level}{%
+ \the\numexpr\BKM@x@childs+1\relax
+ }%
+ }%
+ \fi
+ \BKM@swfalse
+ \else
+ \let\BKM@prev\BKM@x@parent
+ \fi
+ \fi
+ }%
+ \pdfstringdef\BKM@title{#2}%
+ \edef\BKM@FLAGS{\printflags{BKM@style}}%
+ \immediate\write\@mainaux{%
+ \string\BKM@entry{%
+ id=\number\BKM@id
+ \ifBKM@open
+ \ifnum\BKM@level<\BKM@openlevel
+ ,open%
+ \fi
+ \fi
+ \ifx\BKM@dest\@empty
+ \else
+ ,dest={\BKM@dest}%
+ \fi
+ \ifx\BKM@named\@empty
+ \else
+ ,named={\BKM@named}%
+ \fi
+ \ifx\BKM@uri\@empty
+ \else
+ ,uri={\BKM@escapehex{\BKM@uri}}%
+ \fi
+ \ifx\BKM@gotor\@empty
+ \else
+ ,gotor={\BKM@escapehex{\BKM@gotor}}%
+ \fi
+ \ifx\BKM@page\@empty
+ \else
+ ,page=\BKM@page
+ \fi
+ \ifx\BKM@view\@empty
+ \else
+ ,view={\BKM@view}%
+ \fi
+ \ifx\BKM@rawaction\@empty
+ \else
+ ,rawaction={\BKM@escapehex{\BKM@rawaction}}%
+ \fi
+ \ifnum\BKM@FLAGS>\z@
+ ,flags=\BKM@FLAGS
+ \fi
+ \ifx\BKM@color\@empty
+ \else
+ ,color={\BKM@color}%
+ \fi
+ }{\BKM@escapehex{\BKM@title}}%
+ }%
+ \endgroup
+ \fi
+}
+% \end{macrocode}
+% \begin{macrocode}
+\def\BKM@getx#1#2#3{%
+ \def\BKM@x@parent{#1}%
+ \def\BKM@x@level{#2}%
+ \def\BKM@x@childs{#3}%
+}
+% \end{macrocode}
+%
+% \subsubsection{Read auxiliary data}
+%
+% \begin{macrocode}
+\SetupKeyvalOptions{family=BKM@DO,prefix=BKM@DO@}
+\DeclareStringOption[0]{id}
+\DeclareBoolOption{open}
+\DeclareStringOption{flags}
+\DeclareStringOption{color}
+\DeclareStringOption{dest}
+\DeclareStringOption{named}
+\DeclareStringOption{uri}
+\DeclareStringOption{gotor}
+\DeclareStringOption{page}
+\DeclareStringOption{view}
+\DeclareStringOption{rawaction}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\AtBeginDocument{%
+ \let\BKM@entry\BKM@DO@entry
+}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%</pdftex|dvips>
+% \end{macrocode}
+%
+%
+% \section{Installation}
+%
+% \paragraph{CTAN.} This package is available on
+% CTAN\footnote{\url{ftp://ftp.ctan.org/tex-archive/}}:
+% \begin{description}
+% \item[\CTAN{macros/latex/contrib/oberdiek/bookmark.dtx}] The source file.
+% \item[\CTAN{macros/latex/contrib/oberdiek/bookmark.pdf}] Documentation.
+% \end{description}
+%
+% \paragraph{Unpacking.} The \xfile{.dtx} file is a self-extracting
+% \docstrip\ archive. The files are extracted by running the
+% \xfile{.dtx} through \plainTeX:
+% \begin{quote}
+% \verb|tex bookmark.dtx|
+% \end{quote}
+%
+% \paragraph{TDS.} Now the different files must be moved into
+% the different directories in your installation TDS tree
+% (also known as \xfile{texmf} tree):
+% \begin{quote}
+% \sbox0{^^A
+% \begin{tabular}{@{}>{\ttfamily}l@{$\quad\rightarrow\quad$}>{\ttfamily}l@{}}
+% bookmark.sty & tex/latex/oberdiek/bookmark.sty\\
+% bkm-dvipdfm.def & tex/latex/oberdiek/bkm-dvipdfm.def\\
+% bkm-dvips.def & tex/latex/oberdiek/bkm-dvips.def\\
+% bkm-pdftex.def & tex/latex/oberdiek/bkm-pdftex.def\\
+% bookmark.pdf & doc/latex/oberdiek/bookmark.pdf\\
+% bookmark-example.tex & doc/latex/oberdiek/bookmark-example.tex\\
+% bookmark.dtx & source/latex/oberdiek/bookmark.dtx\\
+% \end{tabular}^^A
+% }%
+% \ifdim\wd0>\linewidth
+% \mbox{}\nobreak\hskip0pt minus\leftmargin
+% \usebox0
+% \nobreak\hskip0pt minus\rightmargin
+% \else
+% \usebox0
+% \fi
+% \end{quote}
+% If you have a \xfile{docstrip.cfg} that configures and enables \docstrip's
+% TDS installing feature, then some files can already be in the right
+% place, see the documentation of \docstrip.
+%
+% \paragraph{Refresh file databases.} If your \TeX~distribution
+% (\teTeX, \mikTeX, \dots) rely on file databases, you must refresh
+% these. For example, \teTeX\ users run \verb|texhash| or
+% \verb|mktexlsr|.
+%
+% \subsection{Some details for the interested}
+%
+% \paragraph{Attached source.}
+%
+% The PDF documentation on CTAN also includes the
+% \xfile{.dtx} source file. It can be extracted by
+% AcrobatReader 6 or higher. Another option is \textsf{pdftk},
+% e.g. unpack the file into the current directory:
+% \begin{quote}
+% \verb|pdftk bookmark.pdf unpack_files output .|
+% \end{quote}
+%
+% \paragraph{Unpacking with \LaTeX.}
+% The \xfile{.dtx} chooses its action depending on the format:
+% \begin{description}
+% \item[\plainTeX:] Run \docstrip\ and extract the files.
+% \item[\LaTeX:] Generate the documentation.
+% \end{description}
+% If you insist on using \LaTeX\ for \docstrip\ (really,
+% \docstrip\ does not need \LaTeX), then inform the autodetect routine
+% about your intention:
+% \begin{quote}
+% \verb|latex \let\install=y\input{bookmark.dtx}|
+% \end{quote}
+% Do not forget to quote the argument according to the demands
+% of your shell.
+%
+% \paragraph{Generating the documentation.}
+% You can use both the \xfile{.dtx} or the \xfile{.drv} to generate
+% the documentation. The process can be configured by the
+% configuration file \xfile{ltxdoc.cfg}. For instance, put this
+% line into this file, if you want to have A4 as paper format:
+% \begin{quote}
+% \verb|\PassOptionsToClass{a4paper}{article}|
+% \end{quote}
+% An example follows how to generate the
+% documentation with pdf\LaTeX:
+% \begin{quote}
+%\begin{verbatim}
+%pdflatex bookmark.dtx
+%makeindex -s gind.ist bookmark.idx
+%pdflatex bookmark.dtx
+%makeindex -s gind.ist bookmark.idx
+%pdflatex bookmark.dtx
+%\end{verbatim}
+% \end{quote}
+%
+% \begin{History}
+% \begin{Version}{2007/02/19 v0.1}
+% \item
+% First experimental version.
+% \end{Version}
+% \begin{Version}{2007/02/20 v0.2}
+% \item
+% Option \xoption{startatroot} added.
+% \item
+% Dummies for \cs{pdf(un)escape...} commands added to get
+% the package basically work for non-pdfTeX users.
+% \end{Version}
+% \end{History}
+%
+% \PrintIndex
+%
+% \Finale
+\endinput
diff --git a/Master/texmf-dist/source/latex/oberdiek/flags.dtx b/Master/texmf-dist/source/latex/oberdiek/flags.dtx
new file mode 100644
index 00000000000..68a354ea2c6
--- /dev/null
+++ b/Master/texmf-dist/source/latex/oberdiek/flags.dtx
@@ -0,0 +1,434 @@
+% \iffalse meta-comment
+%
+% Copyright (C) 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either
+% version 1.3 of this license or (at your option) any later
+% version. The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of
+% LaTeX version 2005/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Heiko Oberdiek.
+%
+% This work consists of the main source file flags.dtx
+% and the derived files
+% flags.sty, flags.pdf, flags.ins, flags.drv.
+%
+% Distribution:
+% CTAN:macros/latex/contrib/oberdiek/flags.dtx
+% CTAN:macros/latex/contrib/oberdiek/flags.pdf
+%
+% Unpacking:
+% (a) If flags.ins is present:
+% tex flags.ins
+% (b) Without flags.ins:
+% tex flags.dtx
+% (c) If you insist on using LaTeX
+% latex \let\install=y\input{flags.dtx}
+% (quote the arguments according to the demands of your shell)
+%
+% Documentation:
+% (a) If flags.drv is present:
+% latex flags.drv
+% (b) Without flags.drv:
+% latex flags.dtx; ...
+% The class ltxdoc loads the configuration file ltxdoc.cfg
+% if available. Here you can specify further options, e.g.
+% use A4 as paper format:
+% \PassOptionsToClass{a4paper}{article}
+%
+% Programm calls to get the documentation (example):
+% pdflatex flags.dtx
+% makeindex -s gind.ist flags.idx
+% pdflatex flags.dtx
+% makeindex -s gind.ist flags.idx
+% pdflatex flags.dtx
+%
+% Installation:
+% TDS:tex/latex/oberdiek/flags.sty
+% TDS:doc/latex/oberdiek/flags.pdf
+% TDS:source/latex/oberdiek/flags.dtx
+%
+%<*ignore>
+\begingroup
+ \def\x{LaTeX2e}
+\expandafter\endgroup
+\ifcase 0\ifx\install y1\fi\expandafter
+ \ifx\csname processbatchFile\endcsname\relax\else1\fi
+ \ifx\fmtname\x\else 1\fi\relax
+\else\csname fi\endcsname
+%</ignore>
+%<*install>
+\input docstrip.tex
+\Msg{************************************************************************}
+\Msg{* Installation}
+\Msg{* Package: flags 2007/02/18 v0.1 Flag setting in bit fields (HO)}
+\Msg{************************************************************************}
+
+\keepsilent
+\askforoverwritefalse
+
+\preamble
+
+This is a generated file.
+
+Copyright (C) 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+
+This work may be distributed and/or modified under the
+conditions of the LaTeX Project Public License, either
+version 1.3 of this license or (at your option) any later
+version. The latest version of this license is in
+ http://www.latex-project.org/lppl.txt
+and version 1.3 or later is part of all distributions of
+LaTeX version 2005/12/01 or later.
+
+This work has the LPPL maintenance status "maintained".
+
+This Current Maintainer of this work is Heiko Oberdiek.
+
+This work consists of the main source file flags.dtx
+and the derived files
+ flags.sty, flags.pdf, flags.ins, flags.drv.
+
+\endpreamble
+
+\generate{%
+ \file{flags.ins}{\from{flags.dtx}{install}}%
+ \file{flags.drv}{\from{flags.dtx}{driver}}%
+ \usedir{tex/latex/oberdiek}%
+ \file{flags.sty}{\from{flags.dtx}{package}}%
+}
+
+\obeyspaces
+\Msg{************************************************************************}
+\Msg{*}
+\Msg{* To finish the installation you have to move the following}
+\Msg{* file into a directory searched by TeX:}
+\Msg{*}
+\Msg{* flags.sty}
+\Msg{*}
+\Msg{* To produce the documentation run the file `flags.drv'}
+\Msg{* through LaTeX.}
+\Msg{*}
+\Msg{* Happy TeXing!}
+\Msg{*}
+\Msg{************************************************************************}
+
+\endbatchfile
+%</install>
+%<*ignore>
+\fi
+%</ignore>
+%<*driver>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesFile{flags.drv}%
+ [2007/02/18 v0.1 Flag setting in bit fields (HO)]
+\documentclass{ltxdoc}
+\usepackage{holtxdoc}
+\begin{document}
+ \DocInput{flags.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \CheckSum{156}
+%
+% \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
+% Lower-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
+% Digits \0\1\2\3\4\5\6\7\8\9
+% Exclamation \! Double quote \" Hash (number) \#
+% Dollar \$ Percent \% Ampersand \&
+% Acute accent \' Left paren \( Right paren \)
+% Asterisk \* Plus \+ Comma \,
+% Minus \- Point \. Solidus \/
+% Colon \: Semicolon \; Less than \<
+% Equals \= Greater than \> Question mark \?
+% Commercial at \@ Left bracket \[ Backslash \\
+% Right bracket \] Circumflex \^ Underscore \_
+% Grave accent \` Left brace \{ Vertical bar \|
+% Right brace \} Tilde \~}
+%
+% \GetFileInfo{flags.drv}
+%
+% \title{The \xpackage{flags} package}
+% \date{2007/02/18 v0.1}
+% \author{Heiko Oberdiek\\\xemail{oberdiek@uni-freiburg.de}}
+%
+% \maketitle
+%
+% \begin{abstract}
+% Package \xpackage{flags} allows the setting and clearing
+% of flags in bit fields and converts the bit field into a
+% decimal number. Currently the bit field is limited to 31 bits.
+% \end{abstract}
+%
+% \tableofcontents
+%
+% \section{Documentation}
+%
+% \subsection{User interface}
+%
+% \begin{declcs}{resetflags} \M{fname}
+% \end{declcs}
+% The bit field \meta{fname} is cleared.
+% Currently is is also used for initialization,
+% because a \cs{newflags} macro is not implemented.
+%
+% \begin{declcs}{setflag} \M{fname} \M{position}
+% \end{declcs}
+% The flag at bit position \meta{position} is set in the
+% bit field \meta{fname}.
+%
+% \begin{declcs}{clearflag} \M{fname} \M{position}
+% \end{declcs}
+% The flag at bit position \meta{position} is cleared in the
+% bit field \meta{fname}.
+%
+% \begin{declcs}{printflags} \M{fname}
+% \end{declcs}
+% The bit field \meta{fname} is converted to a decimal number.
+% The macro is expandible.
+%
+% \paragraph{Example.} See package \xpackage{bookmark}.
+% It uses package \xpackage{flags} for its font style options.
+%
+% \subsection{ToDo}
+%
+% \begin{itemize}
+% \raggedright
+% \item Named positions.
+% \item Setting positions by a key-value interface.
+% \item Support for more than 31 bits while maintaining expandibility of
+% \cs{printflags}.
+% \item Eventually \cs{newflags}, \cs{newflagstype}.
+% \end{itemize}
+%
+%
+% \StopEventually{
+% }
+%
+% \section{Implementation}
+%
+% \begin{macrocode}
+%<*package>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{flags}%
+ [2007/02/18 v0.1 Flag setting in bit fields (HO)]
+% \end{macrocode}
+%
+% \begin{macro}{\resetflags}
+% \begin{macrocode}
+\newcommand*{\resetflags}[1]{%
+ \expandafter\let\csname flags@#1\endcsname\@empty
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\printflags}
+% Macro \cs{printflags} converts the bit field into a decimal
+% number.
+% \begin{macrocode}
+\newcommand*{\printflags}[1]{%
+ \expandafter\@printflags\csname flags@#1\endcsname
+}
+\def\@printflags#1{%
+ \expandafter\@firstofone\expandafter{%
+ \number\numexpr
+ \ifx#1\@empty
+ 0%
+ \else
+ \expandafter\@@printflags#1%
+ \fi
+ }%
+}
+\def\@@printflags#1#2\fi{%
+ \fi
+ #1%
+ \ifx\\#2\\%
+ \else
+ +2*\numexpr\expandafter\@@printflags#2%
+ \fi
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\setflag}
+% \begin{macrocode}
+\newcommand*{\setflag}[2]{%
+ \expandafter\@setflag\csname flags@#1\expandafter\endcsname
+ \expandafter{\romannumeral\number\numexpr#2-1\relax000}%
+}
+\def\@setflag#1#2{%
+ \edef#1{%
+ \expandafter\@@setflag\expandafter{#1}{#2}%
+ }%
+}
+\def\@@setflag#1#2{%
+ \ifx\\#1\\%
+ \FLAGS@zero#2\relax
+ 1%
+ \else
+ \ifx\\#2\\%
+ 1\@gobble#1%
+ \else
+ \@car#1\@nil
+ \expandafter\@@@setflag\expandafter{\@gobble#2}{#1}%
+ \fi
+ \fi
+}
+\def\@@@setflag#1#2\fi\fi{%
+ \fi\fi
+ \expandafter\@@setflag\expandafter{\@cdr#2\@nil}{#1}%
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\clearflag}
+% \begin{macrocode}
+\newcommand*{\clearflag}[2]{%
+ \expandafter\@clearflag\csname flags@#1\expandafter\endcsname
+ \expandafter{\romannumeral\number\numexpr#2-1\relax000}%
+}
+\def\@clearflag#1#2{%
+ \edef#1{%
+ \expandafter\@@clearflag\expandafter{#1}{#2}%
+ }%
+}
+\def\@@clearflag#1#2{%
+ \ifx\\#1\\%
+ \else
+ \ifx\\#2\\%
+ 0\@gobble#1%
+ \else
+ \@car#1\@nil
+ \expandafter\@@@clearflag\expandafter{\@gobble#2}{#1}%
+ \fi
+ \fi
+}
+\def\@@@clearflag#1#2\fi\fi{%
+ \fi\fi
+ \expandafter\@@clearflag\expandafter{\@cdr#2\@nil}{#1}%
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\def\FLAGS@zero#1{%
+ \ifx#1\relax
+ \else
+ 0%
+ \expandafter\FLAGS@zero
+ \fi
+}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%</package>
+% \end{macrocode}
+% \section{Installation}
+%
+% \paragraph{CTAN.} This package is available on
+% CTAN\footnote{\url{ftp://ftp.ctan.org/tex-archive/}}:
+% \begin{description}
+% \item[\CTAN{macros/latex/contrib/oberdiek/flags.dtx}] The source file.
+% \item[\CTAN{macros/latex/contrib/oberdiek/flags.pdf}] Documentation.
+% \end{description}
+%
+% \paragraph{Unpacking.} The \xfile{.dtx} file is a self-extracting
+% \docstrip\ archive. The files are extracted by running the
+% \xfile{.dtx} through \plainTeX:
+% \begin{quote}
+% \verb|tex flags.dtx|
+% \end{quote}
+%
+% \paragraph{TDS.} Now the different files must be moved into
+% the different directories in your installation TDS tree
+% (also known as \xfile{texmf} tree):
+% \begin{quote}
+% \sbox0{^^A
+% \begin{tabular}{@{}>{\ttfamily}l@{$\quad\rightarrow\quad$}>{\ttfamily}l@{}}
+% flags.sty & tex/latex/oberdiek/flags.sty\\
+% flags.pdf & doc/latex/oberdiek/flags.pdf\\
+% flags.dtx & source/latex/oberdiek/flags.dtx\\
+% \end{tabular}^^A
+% }%
+% \ifdim\wd0>\linewidth
+% \mbox{}\nobreak\hskip0pt minus\leftmargin
+% \usebox0
+% \nobreak\hskip0pt minus\rightmargin
+% \else
+% \usebox0
+% \fi
+% \end{quote}
+% If you have a \xfile{docstrip.cfg} that configures and enables \docstrip's
+% TDS installing feature, then some files can already be in the right
+% place, see the documentation of \docstrip.
+%
+% \paragraph{Refresh file databases.} If your \TeX~distribution
+% (\teTeX, \mikTeX, \dots) rely on file databases, you must refresh
+% these. For example, \teTeX\ users run \verb|texhash| or
+% \verb|mktexlsr|.
+%
+% \subsection{Some details for the interested}
+%
+% \paragraph{Attached source.}
+%
+% The PDF documentation on CTAN also includes the
+% \xfile{.dtx} source file. It can be extracted by
+% AcrobatReader 6 or higher. Another option is \textsf{pdftk},
+% e.g. unpack the file into the current directory:
+% \begin{quote}
+% \verb|pdftk flags.pdf unpack_files output .|
+% \end{quote}
+%
+% \paragraph{Unpacking with \LaTeX.}
+% The \xfile{.dtx} chooses its action depending on the format:
+% \begin{description}
+% \item[\plainTeX:] Run \docstrip\ and extract the files.
+% \item[\LaTeX:] Generate the documentation.
+% \end{description}
+% If you insist on using \LaTeX\ for \docstrip\ (really,
+% \docstrip\ does not need \LaTeX), then inform the autodetect routine
+% about your intention:
+% \begin{quote}
+% \verb|latex \let\install=y\input{flags.dtx}|
+% \end{quote}
+% Do not forget to quote the argument according to the demands
+% of your shell.
+%
+% \paragraph{Generating the documentation.}
+% You can use both the \xfile{.dtx} or the \xfile{.drv} to generate
+% the documentation. The process can be configured by the
+% configuration file \xfile{ltxdoc.cfg}. For instance, put this
+% line into this file, if you want to have A4 as paper format:
+% \begin{quote}
+% \verb|\PassOptionsToClass{a4paper}{article}|
+% \end{quote}
+% An example follows how to generate the
+% documentation with pdf\LaTeX:
+% \begin{quote}
+%\begin{verbatim}
+%pdflatex flags.dtx
+%makeindex -s gind.ist flags.idx
+%pdflatex flags.dtx
+%makeindex -s gind.ist flags.idx
+%pdflatex flags.dtx
+%\end{verbatim}
+% \end{quote}
+%
+% \begin{History}
+% \begin{Version}{2007/02/18 v1.0}
+% \item
+% First version.
+% \end{Version}
+% \end{History}
+%
+% \PrintIndex
+%
+% \Finale
+\endinput
diff --git a/Master/texmf-dist/source/latex/oberdiek/hypcap.dtx b/Master/texmf-dist/source/latex/oberdiek/hypcap.dtx
index 7607756a583..0155d0457e2 100644
--- a/Master/texmf-dist/source/latex/oberdiek/hypcap.dtx
+++ b/Master/texmf-dist/source/latex/oberdiek/hypcap.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright (C) 1999-2001, 2006 by
+% Copyright (C) 1999-2001, 2006, 2007 by
% Heiko Oberdiek <oberdiek@uni-freiburg.de>
%
% This work may be distributed and/or modified under the
@@ -67,7 +67,7 @@
\input docstrip.tex
\Msg{************************************************************************}
\Msg{* Installation}
-\Msg{* Package: hypcap 2006/02/20 v1.5 Adjusting anchors of captions (HO)}
+\Msg{* Package: hypcap 2007/02/19 v1.6 Adjusting anchors of captions (HO)}
\Msg{************************************************************************}
\keepsilent
@@ -77,7 +77,7 @@
This is a generated file.
-Copyright (C) 1999-2001, 2006 by
+Copyright (C) 1999-2001, 2006, 2007 by
Heiko Oberdiek <oberdiek@uni-freiburg.de>
This work may be distributed and/or modified under the
@@ -128,7 +128,7 @@ and the derived files
%<*driver>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{hypcap.drv}%
- [2006/02/20 v1.5 Adjusting anchors of captions (HO)]
+ [2007/02/19 v1.6 Adjusting anchors of captions (HO)]
\documentclass{ltxdoc}
\usepackage{holtxdoc}
\begin{document}
@@ -137,7 +137,7 @@ and the derived files
%</driver>
% \fi
%
-% \CheckSum{133}
+% \CheckSum{144}
%
% \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
@@ -158,7 +158,7 @@ and the derived files
% \GetFileInfo{hypcap.drv}
%
% \title{The \xpackage{hypcap} package}
-% \date{2006/02/20 v1.5}
+% \date{2007/02/19 v1.6}
% \author{Heiko Oberdiek\\\xemail{oberdiek@uni-freiburg.de}}
%
% \maketitle
@@ -261,7 +261,7 @@ and the derived files
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{hypcap}%
- [2006/02/20 v1.5 Adjusting anchors of captions (HO)]
+ [2007/02/19 v1.6 Adjusting anchors of captions (HO)]
% \end{macrocode}
%
% For unique command names this package uses |hc@| as prefix
@@ -311,6 +311,7 @@ and the derived files
\newcommand*\capstart{%
\H@refstepcounter\@captype % first part of caption
\hyper@makecurrent\@captype
+ \global\let\hc@currentHref\@currentHref
\vspace*{-\hypcapspace}%
\begingroup
\let\leavevmode\relax
@@ -341,7 +342,11 @@ and the derived files
\long\def\hc@@caption#1[#2]#3{%
\let\caption\hc@org@caption
\global\@capstartfalse
- \hyper@makecurrent\@captype
+ \ifHy@hypertexnames
+ \hyper@makecurrent\@captype
+ \else
+ \global\let\@currentHref\hc@currentHref
+ \fi
\par\addcontentsline{%
\csname ext@#1\endcsname}{#1}{%
\protect\numberline{%
@@ -544,6 +549,10 @@ and the derived files
% \item
% New DTX framework.
% \end{Version}
+% \begin{Version}{2007/02/19 v1.6}
+% \item
+% Fix for hypertexnames=false.
+% \end{Version}
% \end{History}
%
% \PrintIndex
diff --git a/Master/texmf-dist/source/latex/oberdiek/kvoptions.dtx b/Master/texmf-dist/source/latex/oberdiek/kvoptions.dtx
index 8b884ceb36b..4da9f9f2706 100644
--- a/Master/texmf-dist/source/latex/oberdiek/kvoptions.dtx
+++ b/Master/texmf-dist/source/latex/oberdiek/kvoptions.dtx
@@ -299,13 +299,13 @@ and the derived files
% Key & Default & (example) & Used by\\
% \hline
% \rule{0pt}{1.2\ht\csname @arstrutbox\endcsname}^^A
-% |family| & \meta{\cs{\@currname}} & (|foobar|)
+% |family| & \meta{\cs{@currname}} & (|foobar|)
% & \cs{ProcessKeyvalOptions*} \\
% &&& \cs{DeclareBoolOption} \\
% &&& \cs{DeclareStringOption} \\
% \hline
% \rule{0pt}{1.2\ht\csname @arstrutbox\endcsname}^^A
-% |prefix| & \meta{\cs{\@currname}}|@| & (|foobar@|)
+% |prefix| & \meta{\cs{@currname}}|@| & (|foobar@|)
% & \cs{DeclareBoolOption} \\
% &&& \cs{DeclareStringOption} \\
% &&& \cs{DeclareVoidOption}
diff --git a/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins b/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins
index c3e3873ae1d..ea36f41af75 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
-% 2007/01/24
+% 2007/02/20
%
% Copyright (C) 1999, 2001, 2006 by
% Heiko Oberdiek <oberdiek@uni-freiburg.de>
@@ -27,6 +27,7 @@
\batchinput{attachfile2.dtx}
\batchinput{auxhook.dtx}
\batchinput{bmpsize.dtx}
+\batchinput{bookmark.dtx}
\batchinput{centernot.dtx}
\batchinput{chemarr.dtx}
\batchinput{classlist.dtx}
@@ -35,6 +36,7 @@
\batchinput{embedfile.dtx}
\batchinput{engord.dtx}
\batchinput{epstopdf.dtx}
+\batchinput{flags.dtx}
\batchinput{grffile.dtx}
\batchinput{holtxdoc.dtx}
\batchinput{hypbmsec.dtx}
diff --git a/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex b/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex
index 6f11242c915..4d3be05b283 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}{oberdiek@uni-freiburg.de}
-\newcommand*{\Date}{2007/01/24}
+\newcommand*{\Date}{2007/02/20}
% Copyright (C) 2006 by
% Heiko Oberdiek <oberdiek@uni-freiburg.de>
@@ -162,7 +162,9 @@
[\entrysep]
\entry{auxhook}{2006/05/31}{1.0}{Hooks for auxiliary files}%
[\entrysep]
-\entry{bmpsize}{2006/08/24}{1.0}{Extract size and resolution data from bitmap files}%
+\entry{bmpsize}{2007/02/18}{1.1}{Extract size and resolution data from bitmap files}%
+[\entrysep]
+\entry{bookmark}{2007/02/20}{0.2}{PDF bookmarks}%
[\entrysep]
\entry{centernot}{2006/12/02}{1.0}{Centers the not symbol horizontally}%
[\entrysep]
@@ -180,13 +182,15 @@
[\entrysep]
\entry{epstopdf}{2006/08/26}{1.3}{Conversion with epstopdf on the fly}%
[\entrysep]
+\entry{flags}{2007/02/18}{0.1}{Flag setting in bit fields}%
+[\entrysep]
\entry{grffile}{2006/11/30}{1.2}{Extended file name support for graphics}%
[\entrysep]
\entry{holtxdoc}{2006/06/02}{0.7}{Private additional ltxdoc support}%
[\entrysep]
\entry{hypbmsec}{2006/02/20}{2.2}{Bookmarks in sectioning commands}%
[\entrysep]
-\entry{hypcap}{2006/02/20}{1.5}{Adjusting anchors of captions}%
+\entry{hypcap}{2007/02/19}{1.6}{Adjusting anchors of captions}%
[\entrysep]
\entry{hypdestopt}{2006/06/01}{2.0}{Hyperref destination optimizer}%
[\entrysep]
@@ -238,7 +242,7 @@
[\entrysep]
\entry{twoopt}{2006/02/20}{1.4}{Definitions with two optional arguments}%
[\entrysep]
-\entry{zref}{2007/01/23}{1.4}{New reference scheme for \LaTeXe{}}%
+\entry{zref}{2007/02/18}{1.5}{New reference scheme for \LaTeXe{}}%
\end{overview}
\section{Packages}
@@ -298,6 +302,19 @@ options \xoption{viewport}, \xoption{trim} and \xoption{clip}.
\tocinclude{bmpsize}
\newpage
+\subsection{\pkgsectformat{bookmark}}
+\label{bookmark}
+\begin{abstract}
+This package implements a new bookmark (outline) organization for
+package \xpackage{hyperref}. Bookmark properties such
+as style and color can now be set. Other action types
+are available (URI, GoToR, Named). The bookmarks are
+generated in the first compile run. Package \xpackage{hyperref}
+uses two runs.
+\end{abstract}
+\tocinclude{bookmark}
+
+\newpage
\subsection{\pkgsectformat{centernot}}
\label{centernot}
\begin{abstract}
@@ -379,6 +396,16 @@ epstopdf is automatically called to convert it to pdf format.
\tocinclude{epstopdf}
\newpage
+\subsection{\pkgsectformat{flags}}
+\label{flags}
+\begin{abstract}
+Package \xpackage{flags} allows the setting and clearing
+of flags in bit fields and converts the bit field into a
+decimal number. Currently the bit field is limited to 31 bits.
+\end{abstract}
+\tocinclude{flags}
+
+\newpage
\subsection{\pkgsectformat{grffile}}
\label{grffile}
\begin{abstract}
diff --git a/Master/texmf-dist/source/latex/oberdiek/refcount.dtx b/Master/texmf-dist/source/latex/oberdiek/refcount.dtx
index 21353eb3a54..c0997e8baf9 100644
--- a/Master/texmf-dist/source/latex/oberdiek/refcount.dtx
+++ b/Master/texmf-dist/source/latex/oberdiek/refcount.dtx
@@ -530,7 +530,7 @@ and the derived files
% \item
% Package rewritten, new commands added.
% \end{Version}
-% \begin{Version}{2006/06/20 v3.0}
+% \begin{Version}{2006/02/20 v3.0}
% \item
% Support for \xpackage{hyperref} and \xpackage{nameref} improved.
% \item
diff --git a/Master/texmf-dist/source/latex/oberdiek/zref.dtx b/Master/texmf-dist/source/latex/oberdiek/zref.dtx
index 66c63307912..385577518c3 100644
--- a/Master/texmf-dist/source/latex/oberdiek/zref.dtx
+++ b/Master/texmf-dist/source/latex/oberdiek/zref.dtx
@@ -84,7 +84,7 @@
\input docstrip.tex
\Msg{************************************************************************}
\Msg{* Installation}
-\Msg{* Package: zref 2007/01/23 v1.4 New reference scheme for LaTeX2e (HO)}
+\Msg{* Package: zref 2007/02/18 v1.5 New reference scheme for LaTeX2e (HO)}
\Msg{************************************************************************}
\keepsilent
@@ -166,7 +166,7 @@ and the derived files
%<*driver>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{zref.drv}%
- [2007/01/23 v1.4 New reference scheme for LaTeX2e (HO)]
+ [2007/02/18 v1.5 New reference scheme for LaTeX2e (HO)]
\documentclass{ltxdoc}
\usepackage{holtxdoc}
\begin{document}
@@ -175,7 +175,7 @@ and the derived files
%</driver>
% \fi
%
-% \CheckSum{1452}
+% \CheckSum{1468}
%
% \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
@@ -196,7 +196,7 @@ and the derived files
% \GetFileInfo{zref.drv}
%
% \title{The \xpackage{zref} package}
-% \date{2007/01/23 v1.4}
+% \date{2007/02/18 v1.5}
% \author{Heiko Oberdiek\\\xemail{oberdiek@uni-freiburg.de}}
%
% \maketitle
@@ -430,6 +430,14 @@ and the derived files
% This sets the current value of the property \meta{propname}.
% It is a generalization of setting \LaTeX's \cs{currentlabel}.
%
+% \begin{declcs}{zref@getcurrent}
+% \M{propname} \M{value}
+% \end{declcs}
+% This returns the current value of the property \meta{propname}.
+% The value may not be correct, especially if the property
+% is bound to a page (start form of \cs{zref@newprop}) and the
+% right value is only known at shipout time (e.g. property `page').
+%
% \begin{declcs}{zref@propexists}
% \M{propname} \M{then}
% \end{declcs}
@@ -834,7 +842,8 @@ and the derived files
%
% \subsection{Module \xoption{savepos}}
%
-% This option supports a feature that \pdfTeX\ provides.
+% This option supports a feature that \pdfTeX\ provides
+% (and Xe\TeX).
% \pdfTeX\ is able to tell the current position on the
% page. The page position is not instantly known. First the
% page must be constructed by \TeX's asynchronous output
@@ -1148,13 +1157,13 @@ the height difference of the two baselines is
%<*package>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref}
- [2007/01/23 v1.4 New reference scheme for LaTeX2e (HO)]
+ [2007/02/18 v1.5 New reference scheme for LaTeX2e (HO)]
% \end{macrocode}
%
% \subsubsection{Load basic module}
%
% \begin{macrocode}
-\RequirePackage{zref-base}[2007/01/23]
+\RequirePackage{zref-base}[2007/02/18]
% \end{macrocode}
% Abort package loading if \xpackage{zref-base} could not be
% loaded successfully.
@@ -1169,7 +1178,7 @@ the height difference of the two baselines is
\def\ZREF@temp#1{%
\DeclareOption{#1}{%
\AtEndOfPackage{%
- \RequirePackage{zref-#1}[2007/01/23]%
+ \RequirePackage{zref-#1}[2007/02/18]%
}%
}%
}
@@ -1229,7 +1238,7 @@ the height difference of the two baselines is
%<*base>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-base}%
- [2007/01/23 Module base for zref (HO)]
+ [2007/02/18 Module base for zref (HO)]
% \end{macrocode}
%
% \subsubsection{Utilities}
@@ -1521,6 +1530,15 @@ the height difference of the two baselines is
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\zref@getcurrent}
+% \cs{zref@getcurrent} gets the current value for a property.
+% \begin{macrocode}
+\def\zref@getcurrent#1{%
+ \csname Z@C@#1\endcsname
+}
+% \end{macrocode}
+% \end{macro}
+%
% \subsubsection{Reference generation}
%
% \begin{macro}{\zref@label}
@@ -1889,8 +1907,8 @@ the height difference of the two baselines is
%<*user>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-user}%
- [2007/01/23 v1.4 Module user for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module user for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
@@ -1964,8 +1982,8 @@ the height difference of the two baselines is
%<*abspage>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-abspage}%
- [2007/01/23 v1.4 Module abspage for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module abspage for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
@@ -2001,8 +2019,8 @@ the height difference of the two baselines is
%<*counter>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-counter}%
- [2007/01/23 v1.4 Module counter for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module counter for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
@@ -2038,8 +2056,8 @@ the height difference of the two baselines is
%<*lastpage>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-lastpage}%
- [2007/01/23 v1.4 Module lastpage for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module lastpage for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
@@ -2072,16 +2090,16 @@ the height difference of the two baselines is
%<*totpages>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-totpages}%
- [2007/01/23 v1.4 Module totpages for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module totpages for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
% The absolute page number of the last page is the total
% page number.
% \begin{macrocode}
-\RequirePackage{zref-abspage}[2007/01/23]
-\RequirePackage{zref-lastpage}[2007/01/23]
+\RequirePackage{zref-abspage}[2007/02/18]
+\RequirePackage{zref-lastpage}[2007/02/18]
% \end{macrocode}
%
% \begin{macro}{\ztotpages}
@@ -2111,8 +2129,8 @@ the height difference of the two baselines is
%<*perpage>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-perpage}%
- [2007/01/23 v1.4 Module perpage for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module perpage for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
@@ -2124,7 +2142,7 @@ the height difference of the two baselines is
% For detecting changed pages module \xoption{abspage}
% is loaded.
% \begin{macrocode}
-\RequirePackage{zref-abspage}[2007/01/23]
+\RequirePackage{zref-abspage}[2007/02/18]
% \end{macrocode}
%
% We group the properties for the needed references
@@ -2268,8 +2286,8 @@ the height difference of the two baselines is
%<*titleref>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-titleref}%
- [2007/01/23 v1.4 Module titleref for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module titleref for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
@@ -2540,8 +2558,8 @@ the height difference of the two baselines is
%<*xr>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-xr}%
- [2007/01/23 v1.4 Module xr for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module xr for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
% \begin{macrocode}
@@ -2884,8 +2902,8 @@ the height difference of the two baselines is
%<*hyperref>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-hyperref}%
- [2007/01/23 v1.4 Module hyperref for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module hyperref for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
@@ -2913,8 +2931,8 @@ the height difference of the two baselines is
%<*savepos>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-savepos}%
- [2007/01/23 v1.4 Module savepos for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module savepos for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
@@ -2925,8 +2943,8 @@ the height difference of the two baselines is
\begingroup
\@ifundefined{pdfsavepos}{%
\ZREF@ErrorNoLine{%
- \string\pdfsavepos\space is not supported\MessageBreak
- in this pdfTeX version%
+ \string\pdfsavepos\space is not supported.\MessageBreak
+ It is provided by pdfTeX (1.40) or XeTeX%
}\ZREF@UpdatePdfTeX
\endgroup
\endinput
@@ -2936,17 +2954,21 @@ the height difference of the two baselines is
% In PDF mode we are done. However support for DVI mode
% was added later in version 1.40.0. In earlier versions
% \cs{pdfsavepos} is defined, but its execution raises
-% an error.
+% an error. Note that Xe\TeX\ also provides \cs{pdfsavepos}.
% \begin{macrocode}
\RequirePackage{ifpdf}
\ifpdf
\else
- \ifnum\pdftexversion<140 %
- \ZREF@ErrorNoLine{%
- \string\pdfsavepos\space is not supported in DVI mode\MessageBreak
- of this pdfTeX version%
- }\ZREF@UpdatePdfTeX
- \expandafter\expandafter\expandafter\endinput
+ \begingroup\expandafter\expandafter\expandafter\endgroup
+ \expandafter\ifx\csname pdftexversion\endcsname\relax
+ \else
+ \ifnum\pdftexversion<140 %
+ \ZREF@ErrorNoLine{%
+ \string\pdfsavepos\space is not supported in DVI mode\MessageBreak
+ of this pdfTeX version%
+ }\ZREF@UpdatePdfTeX
+ \expandafter\expandafter\expandafter\endinput
+ \fi
\fi
\fi
% \end{macrocode}
@@ -3015,15 +3037,15 @@ the height difference of the two baselines is
%<*dotfill>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-dotfill}%
- [2007/01/23 v1.4 Module dotfill for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module dotfill for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
% \end{macrocode}
%
% For measuring the width of \cs{zdotfill} we use the features
% provided by module \xoption{savepos}.
% \begin{macrocode}
-\RequirePackage{zref-savepos}[2007/01/23]
+\RequirePackage{zref-savepos}[2007/02/18]
% \end{macrocode}
% For automatically generated label names we use the unique
% counter of module \xoption{base}.
@@ -3261,6 +3283,12 @@ the height difference of the two baselines is
% \item
% Typo in macro name fixed in documentation.
% \end{Version}
+% \begin{Version}{2007/02/18 v1.5}
+% \item
+% \cs{zref@getcurrent} added (suggestion of Igor Akkerman).
+% \item
+% Modul savepos also supports Xe\TeX.
+% \end{Version}
% \end{History}
%
% \PrintIndex
diff --git a/Master/texmf-dist/tex/latex/oberdiek/bkm-dvipdfm.def b/Master/texmf-dist/tex/latex/oberdiek/bkm-dvipdfm.def
new file mode 100644
index 00000000000..7097a9b402c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/oberdiek/bkm-dvipdfm.def
@@ -0,0 +1,158 @@
+%%
+%% This is file `bkm-dvipdfm.def',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% bookmark.dtx (with options: `dvipdfm')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3 of this license or (at your option) any later
+%% version. The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of
+%% LaTeX version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status "maintained".
+%%
+%% This Current Maintainer of this work is Heiko Oberdiek.
+%%
+%% This work consists of the main source file bookmark.dtx
+%% and the derived files
+%% bookmark.sty, bookmark.pdf, bookmark.ins, bookmark.drv,
+%% bkm-dvipdfm.def, bkm-dvips.def, bkm-pdftex.def,
+%% bookmark-example.tex.
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesFile{bkm-dvipdfm.def}%
+ [2007/02/20 v0.2 bookmark driver for dvipdfm (HO)]
+\newcount\BKM@id
+\BKM@id=\z@
+\def\BKM@0{000}
+\newif\ifBKM@sw
+\newcommand*{\bookmark}[2][]{%
+ \if@filesw
+ \begingroup
+ \bookmarksetup{#1}%
+ \ifBKM@keeplevel
+ \else
+ \xdef\BKM@currentlevel{\BKM@level}%
+ \fi
+ \edef\BKM@prev{\the\BKM@id}%
+ \global\advance\BKM@id\@ne
+ \BKM@swtrue
+ \@whilesw\ifBKM@sw\fi{%
+ \def\BKM@abslevel{1}%
+ \ifnum\ifBKM@startatroot\z@\else\BKM@prev\fi=\z@
+ \global\BKM@startatrootfalse
+ \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{%
+ 0{\BKM@level}\BKM@abslevel
+ }%
+ \BKM@swfalse
+ \else
+ \expandafter\expandafter\expandafter\BKM@getx
+ \csname BKM@\BKM@prev\endcsname
+ \ifnum\BKM@level>\BKM@x@level\relax
+ \edef\BKM@abslevel{\the\numexpr\BKM@x@abslevel+1\relax}%
+ \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{%
+ {\BKM@prev}{\BKM@level}\BKM@abslevel
+ }%
+ \BKM@swfalse
+ \else
+ \let\BKM@prev\BKM@x@parent
+ \fi
+ \fi
+ }%
+ \pdfstringdef\BKM@title{#2}%
+ \edef\BKM@FLAGS{\printflags{BKM@style}}%
+ \let\BKM@action\@empty
+ \ifx\BKM@gotor\@empty
+ \ifx\BKM@dest\@empty
+ \ifx\BKM@named\@empty
+ \ifx\BKM@rawaction\@empty
+ \ifx\BKM@uri\@empty
+ \ifx\BKM@page\@empty
+ \PackageError{bookmark}{Missing action}\@ehc
+ \edef\BKM@action{/Dest[@page1/Fit]}%
+ \else
+ \ifx\BKM@view\@empty
+ \def\BKM@view{Fit}%
+ \fi
+ \edef\BKM@action{/Dest[@page\BKM@page/\BKM@view]}%
+ \fi
+ \else
+ \edef\BKM@action{%
+ /A<<%
+ /S/URI%
+ /URI(\BKM@escapestring{\BKM@uri})%
+ >>%
+ }%
+ \fi
+ \else
+ \edef\BKM@action{/A<<\BKM@rawaction>>}%
+ \fi
+ \else
+ \edef\BKM@action{%
+ /A<</S/Named/N/\BKM@escapename{\BKM@named}>>%
+ }%
+ \fi
+ \else
+ \edef\BKM@action{%
+ /A<<%
+ /S/GoTo%
+ /D(\BKM@escapestring{\BKM@dest})%
+ >>%
+ }%
+ \fi
+ \else
+ \ifx\BKM@dest\@empty
+ \ifx\BKM@page\@empty
+ \def\BKM@page{0}%
+ \else
+ \edef\BKM@page{\the\numexpr\BKM@page-1\relax}%
+ \fi
+ \ifx\BKM@view\@empty
+ \def\BKM@view{Fit}%
+ \fi
+ \edef\BKM@action{/D[\BKM@page/\BKM@view]}%
+ \else
+ \edef\BKM@action{/D(\BKM@escapestring{\BKM@dest})}%
+ \fi
+ \edef\BKM@action{%
+ /A<<%
+ /S/GoToR%
+ /F(\BKM@escapestring{\BKM@gotor})%
+ \BKM@action
+ >>%
+ }%
+ \fi
+ \special{pdf:%
+ out \BKM@abslevel
+ <<%
+ /Title(\BKM@title)%
+ \ifx\BKM@color\@empty
+ \else
+ /C[\BKM@color]%
+ \fi
+ \ifnum\BKM@FLAGS>\z@
+ /F \BKM@FLAGS
+ \fi
+ \BKM@action
+ >>%
+ }%
+ \endgroup
+ \fi
+}
+\def\BKM@getx#1#2#3{%
+ \def\BKM@x@parent{#1}%
+ \def\BKM@x@level{#2}%
+ \def\BKM@x@abslevel{#3}%
+}
+\endinput
+%%
+%% End of file `bkm-dvipdfm.def'.
diff --git a/Master/texmf-dist/tex/latex/oberdiek/bkm-dvips.def b/Master/texmf-dist/tex/latex/oberdiek/bkm-dvips.def
new file mode 100644
index 00000000000..1de078f8033
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/oberdiek/bkm-dvips.def
@@ -0,0 +1,274 @@
+%%
+%% This is file `bkm-dvips.def',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% bookmark.dtx (with options: `dvips')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3 of this license or (at your option) any later
+%% version. The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of
+%% LaTeX version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status "maintained".
+%%
+%% This Current Maintainer of this work is Heiko Oberdiek.
+%%
+%% This work consists of the main source file bookmark.dtx
+%% and the derived files
+%% bookmark.sty, bookmark.pdf, bookmark.ins, bookmark.drv,
+%% bkm-dvipdfm.def, bkm-dvips.def, bkm-pdftex.def,
+%% bookmark-example.tex.
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesFile{bkm-dvips.def}%
+ [2007/02/20 v0.2 bookmark driver for dvips (HO)]
+\def\BKM@filename{\jobname.out.ps}
+\special{header=\BKM@filename}
+\AtEndDocument{\BKM@dvips@out}
+\def\BKM@dvips@out{%
+ \newwrite\BKM@file
+ \immediate\openout\BKM@file=\BKM@filename\relax
+ \BKM@write{\@percentchar!}%
+ \BKM@write{/pdfmark where{pop}}%
+ \BKM@write{%
+ {%
+ /globaldict where{pop globaldict}{userdict}ifelse%
+ /pdfmark/cleartomark load put%
+ }%
+ }%
+ \BKM@write{ifelse}
+}
+\def\BKM@write#{%
+ \immediate\write\BKM@file
+}
+\def\BKM@DO@entry#1#2{%
+ \begingroup
+ \setkeys{BKM@DO}{#1}%
+ \edef\BKM@DO@title{\BKM@unescapehex{#2}}%
+ \expandafter\expandafter\expandafter\BKM@getx
+ \csname BKM@\BKM@DO@id\endcsname\@empty\@empty
+ \let\BKM@attr\@empty
+ \ifx\BKM@DO@flags\@empty
+ \else
+ \edef\BKM@attr{\BKM@attr/F \BKM@DO@flags}%
+ \fi
+ \ifx\BKM@DO@color\@empty
+ \else
+ \edef\BKM@attr{\BKM@attr/C[\BKM@DO@color]}%
+ \fi
+ \let\BKM@action\@empty
+ \ifx\BKM@DO@gotor\@empty
+ \ifx\BKM@DO@dest\@empty
+ \ifx\BKM@DO@named\@empty
+ \ifx\BKM@DO@rawaction\@empty
+ \ifx\BKM@DO@uri\@empty
+ \ifx\BKM@DO@page\@empty
+ \PackageError{bookmark}{Missing action}\@ehc
+ \edef\BKM@action{%
+ /Action/GoTo%
+ /Page 1%
+ /View[/Fit]%
+ }%
+ \else
+ \ifx\BKM@DO@view\@empty
+ \def\BKM@DO@view{Fit}%
+ \fi
+ \edef\BKM@action{%
+ /Action/GoTo%
+ /Page \BKM@DO@page
+ /View[/\BKM@DO@view]%
+ }%
+ \fi
+ \else
+ \edef\BKM@action{%
+ /Action<<%
+ /Subtype/URI%
+ /URI(\BKM@escapestring{\BKM@unescapehex{\BKM@DO@uri}})%
+ >>%
+ }%
+ \fi
+ \else
+ \edef\BKM@action{%
+ /Action<<%
+ \BKM@unescapehex{\BKM@DO@rawaction}%
+ >>%
+ }%
+ \fi
+ \else
+ \edef\BKM@action{%
+ /Action<<%
+ /Subtype/Named%
+ /N/\BKM@escapename{\BKM@DO@named}%
+ >>%
+ }%
+ \fi
+ \else
+ \edef\BKM@action{%
+ /Action/GoTo%
+ /Dest(\BKM@escapestring{\BKM@DO@dest})cvn%
+ }%
+ \fi
+ \else
+ \ifx\BKM@DO@dest\@empty
+ \ifx\BKM@DO@page\@empty
+ \def\BKM@DO@page{1}%
+ \fi
+ \ifx\BKM@DO@view\@empty
+ \def\BKM@DO@view{Fit}%
+ \fi
+ \edef\BKM@action{%
+ /Page \BKM@DO@page
+ /View[/\BKM@DO@view]%
+ }%
+ \else
+ \edef\BKM@action{%
+ /Dest(\BKM@escapestring{\BKM@DO@dest})cvn%
+ }%
+ \fi
+ \edef\BKM@action{%
+ /Action/GoToR%
+ /F(\BKM@escapestring{\BKM@unescapehex{\BKM@DO@gotor}})%
+ \BKM@action
+ }%
+ \fi
+ \BKM@write{[}%
+ \BKM@write{/Title(\BKM@DO@title)}%
+ \ifnum\BKM@x@childs>\z@
+ \BKM@write{/Count \ifBKM@DO@open\else-\fi\BKM@x@childs}%
+ \fi
+ \ifx\BKM@attr\@empty
+ \else
+ \BKM@write{\BKM@attr}%
+ \fi
+ \BKM@write{\BKM@action}%
+ \BKM@write{/OUT pdfmark}%
+ \endgroup
+}
+\RequirePackage{auxhook}
+\AddLineBeginMainAux{%
+ \string\providecommand\string\BKM@entry[2]{}%
+}
+\newcount\BKM@id
+\BKM@id=\z@
+\def\BKM@0{000}
+\newif\ifBKM@sw
+\newcommand*{\bookmark}[2][]{%
+ \if@filesw
+ \begingroup
+ \bookmarksetup{#1}%
+ \ifBKM@keeplevel
+ \else
+ \xdef\BKM@currentlevel{\BKM@level}%
+ \fi
+ \edef\BKM@prev{\the\BKM@id}%
+ \global\advance\BKM@id\@ne
+ \BKM@swtrue
+ \@whilesw\ifBKM@sw\fi{%
+ \ifnum\ifBKM@startatroot\z@\else\BKM@prev\fi=\z@
+ \global\BKM@startatrootfalse
+ \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{%
+ 0{\BKM@level}0%
+ }%
+ \BKM@swfalse
+ \else
+ \expandafter\expandafter\expandafter\BKM@getx
+ \csname BKM@\BKM@prev\endcsname
+ \ifnum\BKM@level>\BKM@x@level\relax
+ \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{%
+ {\BKM@prev}{\BKM@level}0%
+ }%
+ \ifnum\BKM@prev>\z@
+ \expandafter\xdef\csname BKM@\BKM@prev\endcsname{%
+ {\BKM@x@parent}{\BKM@x@level}{%
+ \the\numexpr\BKM@x@childs+1\relax
+ }%
+ }%
+ \fi
+ \BKM@swfalse
+ \else
+ \let\BKM@prev\BKM@x@parent
+ \fi
+ \fi
+ }%
+ \pdfstringdef\BKM@title{#2}%
+ \edef\BKM@FLAGS{\printflags{BKM@style}}%
+ \immediate\write\@mainaux{%
+ \string\BKM@entry{%
+ id=\number\BKM@id
+ \ifBKM@open
+ \ifnum\BKM@level<\BKM@openlevel
+ ,open%
+ \fi
+ \fi
+ \ifx\BKM@dest\@empty
+ \else
+ ,dest={\BKM@dest}%
+ \fi
+ \ifx\BKM@named\@empty
+ \else
+ ,named={\BKM@named}%
+ \fi
+ \ifx\BKM@uri\@empty
+ \else
+ ,uri={\BKM@escapehex{\BKM@uri}}%
+ \fi
+ \ifx\BKM@gotor\@empty
+ \else
+ ,gotor={\BKM@escapehex{\BKM@gotor}}%
+ \fi
+ \ifx\BKM@page\@empty
+ \else
+ ,page=\BKM@page
+ \fi
+ \ifx\BKM@view\@empty
+ \else
+ ,view={\BKM@view}%
+ \fi
+ \ifx\BKM@rawaction\@empty
+ \else
+ ,rawaction={\BKM@escapehex{\BKM@rawaction}}%
+ \fi
+ \ifnum\BKM@FLAGS>\z@
+ ,flags=\BKM@FLAGS
+ \fi
+ \ifx\BKM@color\@empty
+ \else
+ ,color={\BKM@color}%
+ \fi
+ }{\BKM@escapehex{\BKM@title}}%
+ }%
+ \endgroup
+ \fi
+}
+\def\BKM@getx#1#2#3{%
+ \def\BKM@x@parent{#1}%
+ \def\BKM@x@level{#2}%
+ \def\BKM@x@childs{#3}%
+}
+\SetupKeyvalOptions{family=BKM@DO,prefix=BKM@DO@}
+\DeclareStringOption[0]{id}
+\DeclareBoolOption{open}
+\DeclareStringOption{flags}
+\DeclareStringOption{color}
+\DeclareStringOption{dest}
+\DeclareStringOption{named}
+\DeclareStringOption{uri}
+\DeclareStringOption{gotor}
+\DeclareStringOption{page}
+\DeclareStringOption{view}
+\DeclareStringOption{rawaction}
+\AtBeginDocument{%
+ \let\BKM@entry\BKM@DO@entry
+}
+\endinput
+%%
+%% End of file `bkm-dvips.def'.
diff --git a/Master/texmf-dist/tex/latex/oberdiek/bkm-pdftex.def b/Master/texmf-dist/tex/latex/oberdiek/bkm-pdftex.def
new file mode 100644
index 00000000000..1295407ba63
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/oberdiek/bkm-pdftex.def
@@ -0,0 +1,236 @@
+%%
+%% This is file `bkm-pdftex.def',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% bookmark.dtx (with options: `pdftex')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3 of this license or (at your option) any later
+%% version. The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of
+%% LaTeX version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status "maintained".
+%%
+%% This Current Maintainer of this work is Heiko Oberdiek.
+%%
+%% This work consists of the main source file bookmark.dtx
+%% and the derived files
+%% bookmark.sty, bookmark.pdf, bookmark.ins, bookmark.drv,
+%% bkm-dvipdfm.def, bkm-dvips.def, bkm-pdftex.def,
+%% bookmark-example.tex.
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesFile{bkm-pdftex.def}%
+ [2007/02/20 v0.2 bookmark driver for pdftex (HO)]
+\def\BKM@DO@entry#1#2{%
+ \begingroup
+ \setkeys{BKM@DO}{#1}%
+ \edef\BKM@DO@title{\BKM@unescapehex{#2}}%
+ \expandafter\expandafter\expandafter\BKM@getx
+ \csname BKM@\BKM@DO@id\endcsname\@empty\@empty
+ \let\BKM@attr\@empty
+ \ifx\BKM@DO@flags\@empty
+ \else
+ \edef\BKM@attr{\BKM@attr/F \BKM@DO@flags}%
+ \fi
+ \ifx\BKM@DO@color\@empty
+ \else
+ \edef\BKM@attr{\BKM@attr/C[\BKM@DO@color]}%
+ \fi
+ \ifx\BKM@attr\@empty
+ \else
+ \edef\BKM@attr{attr{\BKM@attr}}%
+ \fi
+ \let\BKM@action\@empty
+ \ifx\BKM@DO@gotor\@empty
+ \ifx\BKM@DO@dest\@empty
+ \ifx\BKM@DO@named\@empty
+ \ifx\BKM@DO@rawaction\@empty
+ \ifx\BKM@DO@uri\@empty
+ \ifx\BKM@DO@page\@empty
+ \PackageError{bookmark}{Missing action}\@ehc
+ \edef\BKM@action{goto page1{/Fit}}%
+ \else
+ \ifx\BKM@DO@view\@empty
+ \def\BKM@DO@view{Fit}%
+ \fi
+ \edef\BKM@action{goto page\BKM@DO@page{/\BKM@DO@view}}%
+ \fi
+ \else
+ \edef\BKM@action{user{<</S/URI/URI(%
+ \BKM@escapestring{\BKM@unescapehex{\BKM@DO@uri}})>>}}%
+ \fi
+ \else
+ \edef\BKM@action{%
+ user{%
+ <<%
+ \BKM@unescapehex{\BKM@DO@rawaction}%
+ >>%
+ }%
+ }%
+ \fi
+ \else
+ \edef\BKM@action{%
+ user{<</S/Named/N/\BKM@escapename{\BKM@DO@named}>>}%
+ }%
+ \fi
+ \else
+ \edef\BKM@action{goto name{\BKM@DO@dest}}%
+ \fi
+ \else
+ \ifx\BKM@DO@dest\@empty
+ \ifx\BKM@DO@page\@empty
+ \def\BKM@DO@page{0}%
+ \else
+ \edef\BKM@DO@page{\the\numexpr\BKM@DO@page-1\relax}%
+ \fi
+ \ifx\BKM@DO@view\@empty
+ \def\BKM@DO@view{Fit}%
+ \fi
+ \edef\BKM@action{/D[\BKM@DO@page/\BKM@DO@view]}%
+ \else
+ \edef\BKM@action{/D(\BKM@escapestring{\BKM@DO@dest})}%
+ \fi
+ \edef\BKM@action{%
+ user{%
+ <<%
+ /S/GoToR%
+ /F(\BKM@escapestring{\BKM@unescapehex{\BKM@DO@gotor}})%
+ \BKM@action
+ >>%
+ }%
+ }%
+ \fi
+ \pdfoutline\BKM@attr\BKM@action
+ count\ifBKM@DO@open\else-\fi\BKM@x@childs
+ {\BKM@DO@title}%
+ \endgroup
+}
+\RequirePackage{auxhook}
+\AddLineBeginMainAux{%
+ \string\providecommand\string\BKM@entry[2]{}%
+}
+\newcount\BKM@id
+\BKM@id=\z@
+\def\BKM@0{000}
+\newif\ifBKM@sw
+\newcommand*{\bookmark}[2][]{%
+ \if@filesw
+ \begingroup
+ \bookmarksetup{#1}%
+ \ifBKM@keeplevel
+ \else
+ \xdef\BKM@currentlevel{\BKM@level}%
+ \fi
+ \edef\BKM@prev{\the\BKM@id}%
+ \global\advance\BKM@id\@ne
+ \BKM@swtrue
+ \@whilesw\ifBKM@sw\fi{%
+ \ifnum\ifBKM@startatroot\z@\else\BKM@prev\fi=\z@
+ \global\BKM@startatrootfalse
+ \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{%
+ 0{\BKM@level}0%
+ }%
+ \BKM@swfalse
+ \else
+ \expandafter\expandafter\expandafter\BKM@getx
+ \csname BKM@\BKM@prev\endcsname
+ \ifnum\BKM@level>\BKM@x@level\relax
+ \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{%
+ {\BKM@prev}{\BKM@level}0%
+ }%
+ \ifnum\BKM@prev>\z@
+ \expandafter\xdef\csname BKM@\BKM@prev\endcsname{%
+ {\BKM@x@parent}{\BKM@x@level}{%
+ \the\numexpr\BKM@x@childs+1\relax
+ }%
+ }%
+ \fi
+ \BKM@swfalse
+ \else
+ \let\BKM@prev\BKM@x@parent
+ \fi
+ \fi
+ }%
+ \pdfstringdef\BKM@title{#2}%
+ \edef\BKM@FLAGS{\printflags{BKM@style}}%
+ \immediate\write\@mainaux{%
+ \string\BKM@entry{%
+ id=\number\BKM@id
+ \ifBKM@open
+ \ifnum\BKM@level<\BKM@openlevel
+ ,open%
+ \fi
+ \fi
+ \ifx\BKM@dest\@empty
+ \else
+ ,dest={\BKM@dest}%
+ \fi
+ \ifx\BKM@named\@empty
+ \else
+ ,named={\BKM@named}%
+ \fi
+ \ifx\BKM@uri\@empty
+ \else
+ ,uri={\BKM@escapehex{\BKM@uri}}%
+ \fi
+ \ifx\BKM@gotor\@empty
+ \else
+ ,gotor={\BKM@escapehex{\BKM@gotor}}%
+ \fi
+ \ifx\BKM@page\@empty
+ \else
+ ,page=\BKM@page
+ \fi
+ \ifx\BKM@view\@empty
+ \else
+ ,view={\BKM@view}%
+ \fi
+ \ifx\BKM@rawaction\@empty
+ \else
+ ,rawaction={\BKM@escapehex{\BKM@rawaction}}%
+ \fi
+ \ifnum\BKM@FLAGS>\z@
+ ,flags=\BKM@FLAGS
+ \fi
+ \ifx\BKM@color\@empty
+ \else
+ ,color={\BKM@color}%
+ \fi
+ }{\BKM@escapehex{\BKM@title}}%
+ }%
+ \endgroup
+ \fi
+}
+\def\BKM@getx#1#2#3{%
+ \def\BKM@x@parent{#1}%
+ \def\BKM@x@level{#2}%
+ \def\BKM@x@childs{#3}%
+}
+\SetupKeyvalOptions{family=BKM@DO,prefix=BKM@DO@}
+\DeclareStringOption[0]{id}
+\DeclareBoolOption{open}
+\DeclareStringOption{flags}
+\DeclareStringOption{color}
+\DeclareStringOption{dest}
+\DeclareStringOption{named}
+\DeclareStringOption{uri}
+\DeclareStringOption{gotor}
+\DeclareStringOption{page}
+\DeclareStringOption{view}
+\DeclareStringOption{rawaction}
+\AtBeginDocument{%
+ \let\BKM@entry\BKM@DO@entry
+}
+\endinput
+%%
+%% End of file `bkm-pdftex.def'.
diff --git a/Master/texmf-dist/tex/latex/oberdiek/bmpsize-base.sty b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-base.sty
index 859617996b9..971dd8dcabb 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/bmpsize-base.sty
+++ b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-base.sty
@@ -8,7 +8,7 @@
%%
%% This is a generated file.
%%
-%% Copyright (C) 2006 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%% Copyright (C) 2006, 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
@@ -29,7 +29,7 @@
%% bmpsize-dvipdfm.def, bmpsize-dvipdfmx.def.
%%
\ProvidesPackage{bmpsize-base}%
- [2006/08/24 v1.0 Basic part of bmpsize (HO)]
+ [2007/02/18 v1.1 Basic part of bmpsize (HO)]
\RequirePackage{fp-basic}
\RequirePackage{fp-snap}
\long\def\@bmpsize@plain@loop#1\repeat{%
@@ -421,7 +421,7 @@
\fi
\let\loop\@bmpsize@org@plain@loop
}
-\def\bmpsize@unit@default{1in}
+\def\bmpsize@unit@default{72.27pt}% more accurate than 1in
\def\bmpsize@pixelx@default{72}
\let\bmpsize@pixely@default\Gin@exclamation
@@ -557,7 +557,7 @@
\expandafter\@secondoftwo
\fi
{%
- \def\bmpsize@unit{1in}%
+ \def\bmpsize@unit{72.27pt}%
}{%
\ifnum\bmpsize@temp=2\relax
\expandafter\@firstofone
@@ -653,7 +653,7 @@
\or
\let\bmpsize@unit\relax
\or
- \def\bmpsize@unit{1in}%
+ \def\bmpsize@unit{72.27pt}%
\or
\def\bmpsize@unit{1cm}%
\else
@@ -854,7 +854,7 @@
}%
\def\bmpsize@read@tiff#1{%
\@bmpsize@init
- \def\bmpsize@unit{1in}%
+ \def\bmpsize@unit{72.27pt}%
\@bmpsize@read{#1}{8}{0}%
\@bmpsize@grab\bmpsize@temp{2}%
\@bmpsize@skip@two
@@ -908,7 +908,7 @@
\or
\let\bmpsize@unit\relax
\or
- \def\bmpsize@unit{1in}%
+ \def\bmpsize@unit{72.27pt}%
\or
\def\bmpsize@unit{1cm}%
\else
@@ -1634,7 +1634,7 @@
\@bmpsize@ok
\@bmpsize@num@two\bmpsize@pixelx
\@bmpsize@num@two\bmpsize@pixely
- \def\bmpsize@unit{1in}%
+ \def\bmpsize@unit{72.27pt}%
\@bmpsize@stop
\@nil
\@bmpsize@end
@@ -1661,7 +1661,7 @@
\@bmpsize@ok
\@bmpsize@num@two\bmpsize@pixelx
\@bmpsize@num@two\bmpsize@pixely
- \def\bmpsize@unit{1in}%
+ \def\bmpsize@unit{72.27pt}%
\ifnum\bmpsize@pixelx=0\relax
\expandafter\@firstofone
\else
diff --git a/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfm.def b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfm.def
index b661894c08b..e4887b954a9 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfm.def
+++ b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfm.def
@@ -8,7 +8,7 @@
%%
%% This is a generated file.
%%
-%% Copyright (C) 2006 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%% Copyright (C) 2006, 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
@@ -29,7 +29,7 @@
%% bmpsize-dvipdfm.def, bmpsize-dvipdfmx.def.
%%
\ProvidesFile{bmpsize-dvipdfm.def}%
- [2006/08/24 v1.0 Graphics bitmap driver for dvipdfm (HO)]
+ [2007/02/18 v1.1 Graphics bitmap driver for dvipdfm (HO)]
\expandafter\edef\csname @bmpsize@driver@catcodes\endcsname{%
\catcode44 \the\catcode44 % ,
\catcode46 \the\catcode46 % .
diff --git a/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfmx.def b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfmx.def
index 17253a928ba..fdac5a349d8 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfmx.def
+++ b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfmx.def
@@ -8,7 +8,7 @@
%%
%% This is a generated file.
%%
-%% Copyright (C) 2006 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%% Copyright (C) 2006, 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
@@ -29,7 +29,7 @@
%% bmpsize-dvipdfm.def, bmpsize-dvipdfmx.def.
%%
\ProvidesFile{bmpsize-dvipdfmx.def}%
- [2006/08/24 v1.0 Graphics bitmap driver for dvipdfmx (HO)]
+ [2007/02/18 v1.1 Graphics bitmap driver for dvipdfmx (HO)]
\expandafter\edef\csname @bmpsize@driver@catcodes\endcsname{%
\catcode46 \the\catcode46 % .
\catcode64 \the\catcode64 % @
diff --git a/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvips.def b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvips.def
index 6aba10a6a63..23d51a691c1 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvips.def
+++ b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvips.def
@@ -8,7 +8,7 @@
%%
%% This is a generated file.
%%
-%% Copyright (C) 2006 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%% Copyright (C) 2006, 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
@@ -29,7 +29,7 @@
%% bmpsize-dvipdfm.def, bmpsize-dvipdfmx.def.
%%
\ProvidesFile{bmpsize-dvips.def}%
- [2006/08/24 v1.0 Graphics bitmap driver for dvips (HO)]
+ [2007/02/18 v1.1 Graphics bitmap driver for dvips (HO)]
\expandafter\edef\csname @bmpsize@driver@catcodes\endcsname{%
\catcode44 \the\catcode44 % ,
\catcode58 \the\catcode58 % :
diff --git a/Master/texmf-dist/tex/latex/oberdiek/bmpsize-test.tex b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-test.tex
index fa5616956a7..7eed5335e0a 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/bmpsize-test.tex
+++ b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-test.tex
@@ -8,7 +8,7 @@
%%
%% This is a generated file.
%%
-%% Copyright (C) 2006 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%% Copyright (C) 2006, 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
diff --git a/Master/texmf-dist/tex/latex/oberdiek/bmpsize.sty b/Master/texmf-dist/tex/latex/oberdiek/bmpsize.sty
index 812028bf206..26d12266463 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/bmpsize.sty
+++ b/Master/texmf-dist/tex/latex/oberdiek/bmpsize.sty
@@ -8,7 +8,7 @@
%%
%% This is a generated file.
%%
-%% Copyright (C) 2006 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%% Copyright (C) 2006, 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
@@ -29,7 +29,7 @@
%% bmpsize-dvipdfm.def, bmpsize-dvipdfmx.def.
%%
\ProvidesPackage{bmpsize}%
- [2006/08/24 v1.0 Extract size and resolution data from bitmap files (HO)]
+ [2007/02/18 v1.1 Extract size and resolution data from bitmap files (HO)]
\RequirePackage{ifpdf}
\ifpdf
\PackageInfo{bmpsize}{Superseded by pdfTeX in PDF mode}%
diff --git a/Master/texmf-dist/tex/latex/oberdiek/bookmark.sty b/Master/texmf-dist/tex/latex/oberdiek/bookmark.sty
new file mode 100644
index 00000000000..758cb6a6134
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/oberdiek/bookmark.sty
@@ -0,0 +1,388 @@
+%%
+%% This is file `bookmark.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% bookmark.dtx (with options: `package')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3 of this license or (at your option) any later
+%% version. The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of
+%% LaTeX version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status "maintained".
+%%
+%% This Current Maintainer of this work is Heiko Oberdiek.
+%%
+%% This work consists of the main source file bookmark.dtx
+%% and the derived files
+%% bookmark.sty, bookmark.pdf, bookmark.ins, bookmark.drv,
+%% bkm-dvipdfm.def, bkm-dvips.def, bkm-pdftex.def,
+%% bookmark-example.tex.
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{bookmark}%
+ [2007/02/20 v0.2 PDF bookmarks (HO)]
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname pdfescapehex\endcsname\relax
+ \PackageWarningNoLine{bookmark}{%
+ Some features of pdfTeX 1.30 are missing that\MessageBreak
+ protect some arguments. Replacements for these\MessageBreak
+ features are not implemented. Thus the pdf file\MessageBreak
+ can become invalid or the .aux file breaks%
+ }%
+ \let\BKM@escapename\@firstofone
+ \let\BKM@escapestring\@firstofone
+ \let\BKM@escapehex\@firstofone
+ \let\BKM@unescapehex\@firstofone
+\else
+ \let\BKM@escapename\pdfescapename
+ \let\BKM@escapestring\pdfescapestring
+ \let\BKM@escapehex\pdfescapehex
+ \let\BKM@unescapehex\pdfunescapehex
+\fi
+\RequirePackage{ifpdf}
+\RequirePackage{ifxetex}
+\RequirePackage{hyperref}
+\RequirePackage{auxhook}
+\RequirePackage{flags}
+\RequirePackage{kvoptions}
+\SetupKeyvalOptions{family=BKM,prefix=BKM@}
+\newcommand*{\bookmarksetup}{\setkeys{BKM}}
+\DeclareBoolOption{open}
+\DeclareStringOption[\maxdimen]{openlevel}
+\DeclareStringOption[\c@tocdepth]{depth}
+\DeclareStringOption[\BKM@currentlevel]{level}[\BKM@currentlevel]
+\DeclareBoolOption{keeplevel}
+\DeclareBoolOption{startatroot}
+\define@key{BKM}{rellevel}{%
+ \edef\BKM@level{\number\numexpr#1+\BKM@currentlevel\relax}%
+}
+\def\BKM@currentlevel{0}
+\resetflags{BKM@style}
+\define@key{BKM}{italic}[true]{%
+ \expandafter\ifx\csname if#1\endcsname\iftrue
+ \setflag{BKM@style}{1}%
+ \else
+ \clearflag{BKM@style}{1}%
+ \fi
+}
+\define@key{BKM}{bold}[true]{%
+ \expandafter\ifx\csname if#1\endcsname\iftrue
+ \setflag{BKM@style}{2}%
+ \else
+ \clearflag{BKM@style}{2}%
+ \fi
+}
+\define@key{BKM}{rgbcolor}{%
+ \def\BKM@color{#1}%
+}
+\define@key{BKM}{color}{%
+ \ifx\\#1\\%
+ \let\BKM@color\@empty
+ \else
+ \@ifundefined{XC@bordercolor}{%
+ \PackageWarning{bookmark}{%
+ Load package `xcolor' (version >= 2.11) first.\MessageBreak
+ Ignoring color specification%
+ }%
+ }{%
+ \begingroup
+ \csname @safe@activestrue\endcsname
+ \XC@bordercolor{}{#1}%
+ \expandafter\endgroup
+ \expandafter\def\expandafter\BKM@color\expandafter{\@bordercolor}%
+ }%
+ \fi
+}
+\let\BKM@color\@empty
+\DeclareStringOption{dest}
+\DeclareStringOption{named}
+\DeclareStringOption{uri}
+\DeclareStringOption{gotor}
+\DeclareStringOption{rawaction}
+\define@key{BKM}{page}{%
+ \def\BKM@page{#1}%
+ \ifx\BKM@page\@empty
+ \else
+ \edef\BKM@page{\number\BKM@page}%
+ \ifnum\BKM@page>\z@
+ \else
+ \PackageError{bookmark}{Page must be positive}\@ehc
+ \def\BKM@page{1}%
+ \fi
+ \fi
+}
+\let\BKM@page\@empty
+\define@key{BKM}{view}{%
+ \BKM@CheckView{#1}%
+}
+\let\BKM@view\@empty
+\def\BKM@CheckView#1{%
+ \BKM@CheckViewType#1 \@nil
+}
+\def\BKM@CheckViewType#1 #2\@nil{%
+ \def\BKM@type{#1}%
+ \@onelevel@sanitize\BKM@type
+ \BKM@TestViewType{Fit}{}%
+ \BKM@TestViewType{FitB}{}%
+ \BKM@TestViewType{FitH}{%
+ \BKM@CheckParam#2 \@nil{top}%
+ }%
+ \BKM@TestViewType{FitBH}{%
+ \BKM@CheckParam#2 \@nil{top}%
+ }%
+ \BKM@TestViewType{FitV}{%
+ \BKM@CheckParam#2 \@nil{bottom}%
+ }%
+ \BKM@TestViewType{FitBV}{%
+ \BKM@CheckParam#2 \@nil{bottom}%
+ }%
+ \BKM@TestViewType{FitR}{%
+ \BKM@CheckRect{#2}{ }%
+ }%
+ \BKM@TestViewType{XYZ}{%
+ \BKM@CheckXYZ{#2}{ }%
+ }%
+ \@car{%
+ \PackageError{pdfbookmark}{%
+ Unknown view type `\BKM@type',\MessageBreak
+ using `FitH' instead%
+ }\@ehc
+ \def\BKM@view{FitH}%
+ }%
+ \@nil
+}
+\def\BKM@TestViewType#1{%
+ \def\BKM@temp{#1}%
+ \@onelevel@sanitize\BKM@temp
+ \ifx\BKM@type\BKM@temp
+ \let\BKM@view\BKM@temp
+ \expandafter\@car
+ \else
+ \expandafter\@gobble
+ \fi
+}
+\def\BKM@CheckParam#1 #2\@nil#3{%
+ \def\BKM@param{#1}%
+ \ifx\BKM@param\@empty
+ \PackageWarning{bookmark}{%
+ Missing parameter (#3) for `\BKM@type',\MessageBreak
+ using 0%
+ }%
+ \def\BKM@param{0}%
+ \else
+ \BKM@CalcParam
+ \fi
+ \edef\BKM@view{\BKM@view\space\BKM@param}%
+}
+\def\BKM@CheckRect#1#2{%
+ \BKM@@CheckRect#1#2#2#2#2\@nil
+}
+\def\BKM@@CheckRect#1 #2 #3 #4 #5\@nil{%
+ \def\BKM@temp{0}%
+ \def\BKM@param{#1}%
+ \ifx\BKM@param\@empty
+ \def\BKM@param{0}%
+ \def\BKM@temp{1}%
+ \else
+ \BKM@CalcParam
+ \fi
+ \edef\BKM@view{\BKM@view\space\BKM@param}%
+ \def\BKM@param{#2}%
+ \ifx\BKM@param\@empty
+ \def\BKM@param{0}%
+ \def\BKM@temp{1}%
+ \else
+ \BKM@CalcParam
+ \fi
+ \edef\BKM@view{\BKM@view\space\BKM@param}%
+ \def\BKM@param{#3}%
+ \ifx\BKM@param\@empty
+ \def\BKM@param{0}%
+ \def\BKM@temp{1}%
+ \else
+ \BKM@CalcParam
+ \fi
+ \edef\BKM@view{\BKM@view\space\BKM@param}%
+ \def\BKM@param{#4}%
+ \ifx\BKM@param\@empty
+ \def\BKM@param{0}%
+ \def\BKM@temp{1}%
+ \else
+ \BKM@CalcParam
+ \fi
+ \edef\BKM@view{\BKM@view\space\BKM@param}%
+ \ifnum\BKM@temp>\z@
+ \PackageWarning{bookmark}{Missing parameters for `\BKM@type'}%
+ \fi
+}
+\def\BKM@CheckXYZ#1#2{%
+ \BKM@@CheckXYZ#1#2#2#2\@nil
+}
+\def\BKM@@CheckXYZ#1 #2 #3 #4\@nil{%
+ \def\BKM@param{#1}%
+ \let\BKM@temp\BKM@param
+ \@onelevel@sanitize\BKM@temp
+ \ifx\BKM@param\@empty
+ \let\BKM@param\BKM@null
+ \else
+ \ifx\BKM@temp\BKM@null
+ \else
+ \BKM@CalcParam
+ \fi
+ \fi
+ \edef\BKM@view{\BKM@view\space\BKM@param}%
+ \def\BKM@param{#2}%
+ \let\BKM@temp\BKM@param
+ \@onelevel@sanitize\BKM@temp
+ \ifx\BKM@param\@empty
+ \let\BKM@param\BKM@null
+ \ifx\BKM@temp\BKM@null
+ \else
+ \BKM@CalcParam
+ \fi
+ \fi
+ \edef\BKM@view{\BKM@view\space\BKM@param}%
+ \def\BKM@param{#3}%
+ \ifx\BKM@param\@empty
+ \let\BKM@param\BKM@null
+ \fi
+ \edef\BKM@view{\BKM@view\space\BKM@param}%
+}
+\def\BKM@null{null}
+\@onelevel@sanitize\BKM@null
+\def\BKM@CalcParam{%
+ \begingroup
+ \let\calc\@firstofone
+ \expandafter\BKM@@CalcParam\BKM@param\@empty\@empty\@nil
+}
+\def\BKM@@CalcParam#1#2#3\@nil{%
+ \ifx\calc#1%
+ \@ifundefined{calc@assign@dimen}{%
+ \setlength{\dimen@}{\dimexpr#2\relax}%
+ }{%
+ \setlength{\dimen@}{#2}%
+ }%
+ \dimen@.99626\dimen@
+ \edef\BKM@param{\strip@pt\dimen@}%
+ \expandafter\endgroup
+ \expandafter\def\expandafter\BKM@param\expandafter{\BKM@param}%
+ \else
+ \endgroup
+ \fi
+}
+\define@key{BKM}{pdftex}[]{%
+ \def\BKM@driver{pdftex}%
+}
+\define@key{BKM}{dvips}[]{%
+ \def\BKM@driver{dvips}%
+}
+\define@key{BKM}{dvipdfm}[]{%
+ \def\BKM@driver{dvipdfm}%
+}
+\define@key{BKM}{dvipdfmx}[]{%
+ \def\BKM@driver{dvipdfm}%
+}
+\define@key{BKM}{xetex}[]{%
+ \def\BKM@driver{dvipdfm}%
+}
+\InputIfFileExists{bookmark.cfg}{}{}
+\providecommand*{\BookmarkDriverDefault}{dvips}
+\ifpdf
+ \def\BKM@driver{pdftex}%
+\else
+ \ifxetex
+ \def\BKM@driver{dvipdfm}%
+ \else
+ \let\BKM@driver\BookmarkDriverDefault
+ \fi
+\fi
+\ProcessKeyvalOptions*
+\DisableKeyvalOption{BKM}{pdftex}
+\DisableKeyvalOption{BKM}{dvips}
+\DisableKeyvalOption{BKM}{dvipdfm}
+\DisableKeyvalOption{BKM}{dvipdfmx}
+\DisableKeyvalOption{BKM}{xetex}
+\def\BKM@temp{pdftex}%
+\ifpdf
+ \ifx\BKM@temp\BKM@driver
+ \else
+ \PackageWarningNoLine{bookmark}{%
+ Wrong driver `\BKM@driver', using `pdftex' instead%
+ }%
+ \let\BKM@driver\BKM@temp
+ \fi
+\else
+ \ifx\BKM@temp\BKM@driver
+ \PackageError{bookmark}{%
+ Wrong driver, pdfTeX is not running in PDF mode.\MessageBreak
+ Package loading is aborted%
+ }\@ehc
+ \expandafter\expandafter\expandafter\endinput
+ \fi
+ \def\BKM@temp{dvipdfm}%
+ \ifxetex
+ \ifx\BKM@temp\BKM@driver
+ \else
+ \PackageWarningNoLine{bookmark}{%
+ Wrong driver `\BKM@driver',\MessageBreak
+ using `dvipdfm' for XeTeX instead%
+ }%
+ \let\BKM@driver\BKM@temp
+ \fi
+ \fi
+\fi
+\InputIfFileExists{bkm-\BKM@driver.def}{}{%
+ \PackageError{bookmark}{%
+ Unsupported driver `\BKM@driver'.\MessageBreak
+ Package loading is aborted%
+ }\@ehc
+ \endinput
+}
+\renewcommand*{\pdfbookmark}[3][0]{%
+ \bookmark[level=#1,dest={#3.#1}]{#2}%
+ \hyper@anchorstart{#3.#1}\hyper@anchorend
+}
+\renewcommand*{\currentpdfbookmark}{%
+ \pdfbookmark[\BKM@currentlevel]%
+}
+\renewcommand*{\subpdfbookmark}{%
+ \expandafter\pdfbookmark\expandafter[%
+ \the\numexpr\BKM@currentlevel+1\relax
+ ]%
+}
+\renewcommand*{\belowpdfbookmark}[2]{%
+ \xdef\BKM@gtemp{\number\BKM@currentlevel}%
+ \subpdfbookmark{#1}{#2}%
+ \global\let\BKM@currentlevel\BKM@gtemp
+}
+\renewcommand*{\Hy@writebookmark}[5]{%
+ \ifnum#4>\Hy@bookmarksdepth\relax
+ \else
+ \begingroup
+ \ifHy@bookmarksnumbered
+ \let\numberline\Hy@numberline
+ \let\partnumberline\Hy@numberline
+ \let\chapternumberline\Hy@numberline
+ \else
+ \let\numberline\@gobble
+ \let\partnumberline\@gobble
+ \let\chapternumberline\@gobble
+ \fi
+ \bookmark[level=#4,dest={#3}]{#2}%
+ \endgroup
+ \fi
+}
+\let\ReadBookmarks\relax
+\endinput
+%%
+%% End of file `bookmark.sty'.
diff --git a/Master/texmf-dist/tex/latex/oberdiek/flags.sty b/Master/texmf-dist/tex/latex/oberdiek/flags.sty
new file mode 100644
index 00000000000..d27d287ff7d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/oberdiek/flags.sty
@@ -0,0 +1,115 @@
+%%
+%% This is file `flags.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% flags.dtx (with options: `package')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3 of this license or (at your option) any later
+%% version. The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of
+%% LaTeX version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status "maintained".
+%%
+%% This Current Maintainer of this work is Heiko Oberdiek.
+%%
+%% This work consists of the main source file flags.dtx
+%% and the derived files
+%% flags.sty, flags.pdf, flags.ins, flags.drv.
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{flags}%
+ [2007/02/18 v0.1 Flag setting in bit fields (HO)]
+\newcommand*{\resetflags}[1]{%
+ \expandafter\let\csname flags@#1\endcsname\@empty
+}
+\newcommand*{\printflags}[1]{%
+ \expandafter\@printflags\csname flags@#1\endcsname
+}
+\def\@printflags#1{%
+ \expandafter\@firstofone\expandafter{%
+ \number\numexpr
+ \ifx#1\@empty
+ 0%
+ \else
+ \expandafter\@@printflags#1%
+ \fi
+ }%
+}
+\def\@@printflags#1#2\fi{%
+ \fi
+ #1%
+ \ifx\\#2\\%
+ \else
+ +2*\numexpr\expandafter\@@printflags#2%
+ \fi
+}
+\newcommand*{\setflag}[2]{%
+ \expandafter\@setflag\csname flags@#1\expandafter\endcsname
+ \expandafter{\romannumeral\number\numexpr#2-1\relax000}%
+}
+\def\@setflag#1#2{%
+ \edef#1{%
+ \expandafter\@@setflag\expandafter{#1}{#2}%
+ }%
+}
+\def\@@setflag#1#2{%
+ \ifx\\#1\\%
+ \FLAGS@zero#2\relax
+ 1%
+ \else
+ \ifx\\#2\\%
+ 1\@gobble#1%
+ \else
+ \@car#1\@nil
+ \expandafter\@@@setflag\expandafter{\@gobble#2}{#1}%
+ \fi
+ \fi
+}
+\def\@@@setflag#1#2\fi\fi{%
+ \fi\fi
+ \expandafter\@@setflag\expandafter{\@cdr#2\@nil}{#1}%
+}
+\newcommand*{\clearflag}[2]{%
+ \expandafter\@clearflag\csname flags@#1\expandafter\endcsname
+ \expandafter{\romannumeral\number\numexpr#2-1\relax000}%
+}
+\def\@clearflag#1#2{%
+ \edef#1{%
+ \expandafter\@@clearflag\expandafter{#1}{#2}%
+ }%
+}
+\def\@@clearflag#1#2{%
+ \ifx\\#1\\%
+ \else
+ \ifx\\#2\\%
+ 0\@gobble#1%
+ \else
+ \@car#1\@nil
+ \expandafter\@@@clearflag\expandafter{\@gobble#2}{#1}%
+ \fi
+ \fi
+}
+\def\@@@clearflag#1#2\fi\fi{%
+ \fi\fi
+ \expandafter\@@clearflag\expandafter{\@cdr#2\@nil}{#1}%
+}
+\def\FLAGS@zero#1{%
+ \ifx#1\relax
+ \else
+ 0%
+ \expandafter\FLAGS@zero
+ \fi
+}
+\endinput
+%%
+%% End of file `flags.sty'.
diff --git a/Master/texmf-dist/tex/latex/oberdiek/hypcap.sty b/Master/texmf-dist/tex/latex/oberdiek/hypcap.sty
index 9d87bd2d252..dfecf584ad2 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/hypcap.sty
+++ b/Master/texmf-dist/tex/latex/oberdiek/hypcap.sty
@@ -8,7 +8,7 @@
%%
%% This is a generated file.
%%
-%% Copyright (C) 1999-2001, 2006 by
+%% Copyright (C) 1999-2001, 2006, 2007 by
%% Heiko Oberdiek <oberdiek@uni-freiburg.de>
%%
%% This work may be distributed and/or modified under the
@@ -29,7 +29,7 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{hypcap}%
- [2006/02/20 v1.5 Adjusting anchors of captions (HO)]
+ [2007/02/19 v1.6 Adjusting anchors of captions (HO)]
\@ifundefined{hyper@@anchor}{%
\PackageError{hypcap}{You have to load 'hyperref' first}\@ehc
\endinput
@@ -41,6 +41,7 @@
\newcommand*\capstart{%
\H@refstepcounter\@captype % first part of caption
\hyper@makecurrent\@captype
+ \global\let\hc@currentHref\@currentHref
\vspace*{-\hypcapspace}%
\begingroup
\let\leavevmode\relax
@@ -56,7 +57,11 @@
\long\def\hc@@caption#1[#2]#3{%
\let\caption\hc@org@caption
\global\@capstartfalse
- \hyper@makecurrent\@captype
+ \ifHy@hypertexnames
+ \hyper@makecurrent\@captype
+ \else
+ \global\let\@currentHref\hc@currentHref
+ \fi
\par\addcontentsline{%
\csname ext@#1\endcsname}{#1}{%
\protect\numberline{%
diff --git a/Master/texmf-dist/tex/latex/oberdiek/zref-abspage.sty b/Master/texmf-dist/tex/latex/oberdiek/zref-abspage.sty
index fdc0eba202e..270b021ff9c 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/zref-abspage.sty
+++ b/Master/texmf-dist/tex/latex/oberdiek/zref-abspage.sty
@@ -33,8 +33,8 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-abspage}%
- [2007/01/23 v1.4 Module abspage for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module abspage for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
\RequirePackage{everyshi}%
\newcounter{abspage}%
diff --git a/Master/texmf-dist/tex/latex/oberdiek/zref-base.sty b/Master/texmf-dist/tex/latex/oberdiek/zref-base.sty
index bd4e627c48d..50eaea33a1c 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/zref-base.sty
+++ b/Master/texmf-dist/tex/latex/oberdiek/zref-base.sty
@@ -33,7 +33,7 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-base}%
- [2007/01/23 Module base for zref (HO)]
+ [2007/02/18 Module base for zref (HO)]
\def\ZREF@name{zref}
\def\ZREF@ErrorNoLine#1#2{%
\begingroup
@@ -171,6 +171,9 @@
\def\zref@setcurrent#1{%
\expandafter\def\csname Z@C@#1\endcsname
}
+\def\zref@getcurrent#1{%
+ \csname Z@C@#1\endcsname
+}
\def\zref@label#1{%
\zref@labelbylist{#1}\ZREF@mainlist
}
diff --git a/Master/texmf-dist/tex/latex/oberdiek/zref-counter.sty b/Master/texmf-dist/tex/latex/oberdiek/zref-counter.sty
index 4625851aaeb..894bbf6e1a5 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/zref-counter.sty
+++ b/Master/texmf-dist/tex/latex/oberdiek/zref-counter.sty
@@ -33,8 +33,8 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-counter}%
- [2007/01/23 v1.4 Module counter for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module counter for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
\zref@newprop{counter}{}
\zref@addprop\ZREF@mainlist{counter}
diff --git a/Master/texmf-dist/tex/latex/oberdiek/zref-dotfill.sty b/Master/texmf-dist/tex/latex/oberdiek/zref-dotfill.sty
index ad258ee9656..b3d84d4131a 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/zref-dotfill.sty
+++ b/Master/texmf-dist/tex/latex/oberdiek/zref-dotfill.sty
@@ -33,10 +33,10 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-dotfill}%
- [2007/01/23 v1.4 Module dotfill for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module dotfill for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
-\RequirePackage{zref-savepos}[2007/01/23]
+\RequirePackage{zref-savepos}[2007/02/18]
\zref@require@unique
\RequirePackage{keyval}
\define@key{ZREF@DF}{unit}{%
diff --git a/Master/texmf-dist/tex/latex/oberdiek/zref-hyperref.sty b/Master/texmf-dist/tex/latex/oberdiek/zref-hyperref.sty
index 1ef719054dd..dea0d847acb 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/zref-hyperref.sty
+++ b/Master/texmf-dist/tex/latex/oberdiek/zref-hyperref.sty
@@ -33,8 +33,8 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-hyperref}%
- [2007/01/23 v1.4 Module hyperref for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module hyperref for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
\zref@newprop{anchor}[]{%
\@ifundefined{@currentHref}{}{\@currentHref}%
diff --git a/Master/texmf-dist/tex/latex/oberdiek/zref-lastpage.sty b/Master/texmf-dist/tex/latex/oberdiek/zref-lastpage.sty
index 915fbd1bb1f..cf8fc71037e 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/zref-lastpage.sty
+++ b/Master/texmf-dist/tex/latex/oberdiek/zref-lastpage.sty
@@ -33,8 +33,8 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-lastpage}%
- [2007/01/23 v1.4 Module lastpage for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module lastpage for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
\AtBeginDocument{%
\AtEndDocument{%
diff --git a/Master/texmf-dist/tex/latex/oberdiek/zref-perpage.sty b/Master/texmf-dist/tex/latex/oberdiek/zref-perpage.sty
index 01b42bd2ce0..098e30ba839 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/zref-perpage.sty
+++ b/Master/texmf-dist/tex/latex/oberdiek/zref-perpage.sty
@@ -33,10 +33,10 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-perpage}%
- [2007/01/23 v1.4 Module perpage for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module perpage for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
-\RequirePackage{zref-abspage}[2007/01/23]
+\RequirePackage{zref-abspage}[2007/02/18]
\zref@newprop*{pagevalue}[0]{\number\c@page}
\zref@newlist{perpage}
\zref@addprop{perpage}{abspage}
diff --git a/Master/texmf-dist/tex/latex/oberdiek/zref-savepos.sty b/Master/texmf-dist/tex/latex/oberdiek/zref-savepos.sty
index 547fc105a61..7aec935d066 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/zref-savepos.sty
+++ b/Master/texmf-dist/tex/latex/oberdiek/zref-savepos.sty
@@ -33,14 +33,14 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-savepos}%
- [2007/01/23 v1.4 Module savepos for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module savepos for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
\begingroup
\@ifundefined{pdfsavepos}{%
\ZREF@ErrorNoLine{%
- \string\pdfsavepos\space is not supported\MessageBreak
- in this pdfTeX version%
+ \string\pdfsavepos\space is not supported.\MessageBreak
+ It is provided by pdfTeX (1.40) or XeTeX%
}\ZREF@UpdatePdfTeX
\endgroup
\endinput
@@ -49,12 +49,16 @@
\RequirePackage{ifpdf}
\ifpdf
\else
- \ifnum\pdftexversion<140 %
- \ZREF@ErrorNoLine{%
- \string\pdfsavepos\space is not supported in DVI mode\MessageBreak
- of this pdfTeX version%
- }\ZREF@UpdatePdfTeX
- \expandafter\expandafter\expandafter\endinput
+ \begingroup\expandafter\expandafter\expandafter\endgroup
+ \expandafter\ifx\csname pdftexversion\endcsname\relax
+ \else
+ \ifnum\pdftexversion<140 %
+ \ZREF@ErrorNoLine{%
+ \string\pdfsavepos\space is not supported in DVI mode\MessageBreak
+ of this pdfTeX version%
+ }\ZREF@UpdatePdfTeX
+ \expandafter\expandafter\expandafter\endinput
+ \fi
\fi
\fi
\zref@newlist{savepos}
diff --git a/Master/texmf-dist/tex/latex/oberdiek/zref-titleref.sty b/Master/texmf-dist/tex/latex/oberdiek/zref-titleref.sty
index 62d5e5b2257..1a44aabc8e0 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/zref-titleref.sty
+++ b/Master/texmf-dist/tex/latex/oberdiek/zref-titleref.sty
@@ -33,8 +33,8 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-titleref}%
- [2007/01/23 v1.4 Module titleref for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module titleref for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
\RequirePackage{keyval}
\let\zref@titleref@current\@empty
diff --git a/Master/texmf-dist/tex/latex/oberdiek/zref-totpages.sty b/Master/texmf-dist/tex/latex/oberdiek/zref-totpages.sty
index 20470f4add1..7cba89f1e69 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/zref-totpages.sty
+++ b/Master/texmf-dist/tex/latex/oberdiek/zref-totpages.sty
@@ -33,11 +33,11 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-totpages}%
- [2007/01/23 v1.4 Module totpages for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module totpages for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
-\RequirePackage{zref-abspage}[2007/01/23]
-\RequirePackage{zref-lastpage}[2007/01/23]
+\RequirePackage{zref-abspage}[2007/02/18]
+\RequirePackage{zref-lastpage}[2007/02/18]
\newcommand*{\ztotpages}{%
\zref@extractdefault{LastPage}{abspage}{0}%
}
diff --git a/Master/texmf-dist/tex/latex/oberdiek/zref-user.sty b/Master/texmf-dist/tex/latex/oberdiek/zref-user.sty
index aae1366d12a..39703379ca3 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/zref-user.sty
+++ b/Master/texmf-dist/tex/latex/oberdiek/zref-user.sty
@@ -33,8 +33,8 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-user}%
- [2007/01/23 v1.4 Module user for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module user for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
\newcommand*\zlabel{%
\ifx\label\@gobble
diff --git a/Master/texmf-dist/tex/latex/oberdiek/zref-xr.sty b/Master/texmf-dist/tex/latex/oberdiek/zref-xr.sty
index 29e7426d9d5..4907b2ddb7c 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/zref-xr.sty
+++ b/Master/texmf-dist/tex/latex/oberdiek/zref-xr.sty
@@ -33,8 +33,8 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref-xr}%
- [2007/01/23 v1.4 Module xr for zref (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 Module xr for zref (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
\RequirePackage{keyval}
\zref@newprop{url}{}%
diff --git a/Master/texmf-dist/tex/latex/oberdiek/zref.sty b/Master/texmf-dist/tex/latex/oberdiek/zref.sty
index 2c03e84ecf1..ea6f14395e5 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/zref.sty
+++ b/Master/texmf-dist/tex/latex/oberdiek/zref.sty
@@ -33,13 +33,13 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{zref}
- [2007/01/23 v1.4 New reference scheme for LaTeX2e (HO)]
-\RequirePackage{zref-base}[2007/01/23]
+ [2007/02/18 v1.5 New reference scheme for LaTeX2e (HO)]
+\RequirePackage{zref-base}[2007/02/18]
\@ifundefined{ZREF@baseok}{\endinput}{}
\def\ZREF@temp#1{%
\DeclareOption{#1}{%
\AtEndOfPackage{%
- \RequirePackage{zref-#1}[2007/01/23]%
+ \RequirePackage{zref-#1}[2007/02/18]%
}%
}%
}
diff --git a/Master/texmf-dist/tpm/oberdiek.tpm b/Master/texmf-dist/tpm/oberdiek.tpm
index 3760a6c12ca..064735eb25c 100644
--- a/Master/texmf-dist/tpm/oberdiek.tpm
+++ b/Master/texmf-dist/tpm/oberdiek.tpm
@@ -3,7 +3,7 @@
<rdf:Description about="http://texlive.dante.de/texlive/Package/oberdiek.zip">
<TPM:Name>oberdiek</TPM:Name>
<TPM:Type>Package</TPM:Type>
- <TPM:Date>2007/01/24 18:33:23</TPM:Date>
+ <TPM:Date>2007/02/20 13:19:00</TPM:Date>
<TPM:Version></TPM:Version>
<TPM:Creator>rahtz</TPM:Creator>
<TPM:Title>Packages written by Heiko Oberdiek</TPM:Title>
@@ -12,7 +12,7 @@
<TPM:Size>9195719</TPM:Size>
<TPM:License></TPM:License>
<TPM:Build/>
- <TPM:RunFiles size="666374">
+ <TPM:RunFiles size="697740">
texmf-dist/scripts/oberdiek/pdfatfi.pl
texmf-dist/tex/generic/oberdiek/alphalph.sty
texmf-dist/tex/generic/oberdiek/engord.sty
@@ -27,12 +27,16 @@ texmf-dist/tex/latex/oberdiek/atfidvips.def
texmf-dist/tex/latex/oberdiek/atfipdftex.def
texmf-dist/tex/latex/oberdiek/attachfile2.sty
texmf-dist/tex/latex/oberdiek/auxhook.sty
+texmf-dist/tex/latex/oberdiek/bkm-dvipdfm.def
+texmf-dist/tex/latex/oberdiek/bkm-dvips.def
+texmf-dist/tex/latex/oberdiek/bkm-pdftex.def
texmf-dist/tex/latex/oberdiek/bmpsize-base.sty
texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfm.def
texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfmx.def
texmf-dist/tex/latex/oberdiek/bmpsize-dvips.def
texmf-dist/tex/latex/oberdiek/bmpsize-test.tex
texmf-dist/tex/latex/oberdiek/bmpsize.sty
+texmf-dist/tex/latex/oberdiek/bookmark.sty
texmf-dist/tex/latex/oberdiek/centernot.sty
texmf-dist/tex/latex/oberdiek/chemarr.sty
texmf-dist/tex/latex/oberdiek/classlist.sty
@@ -41,6 +45,7 @@ texmf-dist/tex/latex/oberdiek/dtx-attach.sty
texmf-dist/tex/latex/oberdiek/dvipscol.sty
texmf-dist/tex/latex/oberdiek/embedfile.sty
texmf-dist/tex/latex/oberdiek/epstopdf.sty
+texmf-dist/tex/latex/oberdiek/flags.sty
texmf-dist/tex/latex/oberdiek/grffile.sty
texmf-dist/tex/latex/oberdiek/holtxdoc.sty
texmf-dist/tex/latex/oberdiek/hypbmsec.sty
@@ -109,12 +114,14 @@ texmf-dist/tex/latex/oberdiek/zref-xr.sty
texmf-dist/tex/latex/oberdiek/zref.sty
texmf-dist/tpm/oberdiek.tpm
</TPM:RunFiles>
- <TPM:DocFiles size="7156618">
+ <TPM:DocFiles size="7487533">
texmf-dist/doc/latex/oberdiek/aliascnt.pdf
texmf-dist/doc/latex/oberdiek/alphalph.pdf
texmf-dist/doc/latex/oberdiek/attachfile2.pdf
texmf-dist/doc/latex/oberdiek/auxhook.pdf
texmf-dist/doc/latex/oberdiek/bmpsize.pdf
+texmf-dist/doc/latex/oberdiek/bookmark-example.tex
+texmf-dist/doc/latex/oberdiek/bookmark.pdf
texmf-dist/doc/latex/oberdiek/centernot.pdf
texmf-dist/doc/latex/oberdiek/chemarr-example.tex
texmf-dist/doc/latex/oberdiek/chemarr.pdf
@@ -126,6 +133,7 @@ texmf-dist/doc/latex/oberdiek/embedfile.pdf
texmf-dist/doc/latex/oberdiek/engord.pdf
texmf-dist/doc/latex/oberdiek/epstopdf.pdf
texmf-dist/doc/latex/oberdiek/example-mycolorsetup.sty
+texmf-dist/doc/latex/oberdiek/flags.pdf
texmf-dist/doc/latex/oberdiek/grffile.pdf
texmf-dist/doc/latex/oberdiek/holtxdoc.pdf
texmf-dist/doc/latex/oberdiek/hypbmsec.pdf
@@ -170,12 +178,13 @@ texmf-dist/doc/latex/oberdiek/twoopt.pdf
texmf-dist/doc/latex/oberdiek/zref-example.tex
texmf-dist/doc/latex/oberdiek/zref.pdf
</TPM:DocFiles>
- <TPM:SourceFiles size="1372727">
+ <TPM:SourceFiles size="1431770">
texmf-dist/source/latex/oberdiek/aliascnt.dtx
texmf-dist/source/latex/oberdiek/alphalph.dtx
texmf-dist/source/latex/oberdiek/attachfile2.dtx
texmf-dist/source/latex/oberdiek/auxhook.dtx
texmf-dist/source/latex/oberdiek/bmpsize.dtx
+texmf-dist/source/latex/oberdiek/bookmark.dtx
texmf-dist/source/latex/oberdiek/centernot.dtx
texmf-dist/source/latex/oberdiek/chemarr.dtx
texmf-dist/source/latex/oberdiek/classlist.dtx
@@ -184,6 +193,7 @@ texmf-dist/source/latex/oberdiek/dvipscol.dtx
texmf-dist/source/latex/oberdiek/embedfile.dtx
texmf-dist/source/latex/oberdiek/engord.dtx
texmf-dist/source/latex/oberdiek/epstopdf.dtx
+texmf-dist/source/latex/oberdiek/flags.dtx
texmf-dist/source/latex/oberdiek/grffile.dtx
texmf-dist/source/latex/oberdiek/holtxdoc.dtx
texmf-dist/source/latex/oberdiek/hypbmsec.dtx
diff --git a/Master/texmf/lists/oberdiek b/Master/texmf/lists/oberdiek
index 24b8f89491e..4729d3304c4 100644
--- a/Master/texmf/lists/oberdiek
+++ b/Master/texmf/lists/oberdiek
@@ -3,6 +3,8 @@ texmf-dist/doc/latex/oberdiek/alphalph.pdf
texmf-dist/doc/latex/oberdiek/attachfile2.pdf
texmf-dist/doc/latex/oberdiek/auxhook.pdf
texmf-dist/doc/latex/oberdiek/bmpsize.pdf
+texmf-dist/doc/latex/oberdiek/bookmark-example.tex
+texmf-dist/doc/latex/oberdiek/bookmark.pdf
texmf-dist/doc/latex/oberdiek/centernot.pdf
texmf-dist/doc/latex/oberdiek/chemarr-example.tex
texmf-dist/doc/latex/oberdiek/chemarr.pdf
@@ -14,6 +16,7 @@ texmf-dist/doc/latex/oberdiek/embedfile.pdf
texmf-dist/doc/latex/oberdiek/engord.pdf
texmf-dist/doc/latex/oberdiek/epstopdf.pdf
texmf-dist/doc/latex/oberdiek/example-mycolorsetup.sty
+texmf-dist/doc/latex/oberdiek/flags.pdf
texmf-dist/doc/latex/oberdiek/grffile.pdf
texmf-dist/doc/latex/oberdiek/holtxdoc.pdf
texmf-dist/doc/latex/oberdiek/hypbmsec.pdf
@@ -62,6 +65,7 @@ texmf-dist/source/latex/oberdiek/alphalph.dtx
texmf-dist/source/latex/oberdiek/attachfile2.dtx
texmf-dist/source/latex/oberdiek/auxhook.dtx
texmf-dist/source/latex/oberdiek/bmpsize.dtx
+texmf-dist/source/latex/oberdiek/bookmark.dtx
texmf-dist/source/latex/oberdiek/centernot.dtx
texmf-dist/source/latex/oberdiek/chemarr.dtx
texmf-dist/source/latex/oberdiek/classlist.dtx
@@ -70,6 +74,7 @@ texmf-dist/source/latex/oberdiek/dvipscol.dtx
texmf-dist/source/latex/oberdiek/embedfile.dtx
texmf-dist/source/latex/oberdiek/engord.dtx
texmf-dist/source/latex/oberdiek/epstopdf.dtx
+texmf-dist/source/latex/oberdiek/flags.dtx
texmf-dist/source/latex/oberdiek/grffile.dtx
texmf-dist/source/latex/oberdiek/holtxdoc.dtx
texmf-dist/source/latex/oberdiek/hypbmsec.dtx
@@ -117,12 +122,16 @@ texmf-dist/tex/latex/oberdiek/atfidvips.def
texmf-dist/tex/latex/oberdiek/atfipdftex.def
texmf-dist/tex/latex/oberdiek/attachfile2.sty
texmf-dist/tex/latex/oberdiek/auxhook.sty
+texmf-dist/tex/latex/oberdiek/bkm-dvipdfm.def
+texmf-dist/tex/latex/oberdiek/bkm-dvips.def
+texmf-dist/tex/latex/oberdiek/bkm-pdftex.def
texmf-dist/tex/latex/oberdiek/bmpsize-base.sty
texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfm.def
texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfmx.def
texmf-dist/tex/latex/oberdiek/bmpsize-dvips.def
texmf-dist/tex/latex/oberdiek/bmpsize-test.tex
texmf-dist/tex/latex/oberdiek/bmpsize.sty
+texmf-dist/tex/latex/oberdiek/bookmark.sty
texmf-dist/tex/latex/oberdiek/centernot.sty
texmf-dist/tex/latex/oberdiek/chemarr.sty
texmf-dist/tex/latex/oberdiek/classlist.sty
@@ -131,6 +140,7 @@ texmf-dist/tex/latex/oberdiek/dtx-attach.sty
texmf-dist/tex/latex/oberdiek/dvipscol.sty
texmf-dist/tex/latex/oberdiek/embedfile.sty
texmf-dist/tex/latex/oberdiek/epstopdf.sty
+texmf-dist/tex/latex/oberdiek/flags.sty
texmf-dist/tex/latex/oberdiek/grffile.sty
texmf-dist/tex/latex/oberdiek/holtxdoc.sty
texmf-dist/tex/latex/oberdiek/hypbmsec.sty