From 038a5dc7d31591d03bb7dd2bee2ca5e89f0ff26a Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 21 Feb 2007 23:54:19 +0000 Subject: oberdiek bookmark0.2, hypcap1.6 (20feb07) git-svn-id: svn://tug.org/texlive/trunk@3977 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf | Bin 135763 -> 135763 bytes Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf | Bin 160191 -> 160191 bytes .../texmf-dist/doc/latex/oberdiek/attachfile2.pdf | Bin 213461 -> 213461 bytes Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf | Bin 130184 -> 130183 bytes Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf | Bin 280267 -> 280354 bytes .../doc/latex/oberdiek/bookmark-example.tex | 119 ++ Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf | Bin 0 -> 192896 bytes Master/texmf-dist/doc/latex/oberdiek/centernot.pdf | Bin 112771 -> 112771 bytes Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf | Bin 123355 -> 123355 bytes Master/texmf-dist/doc/latex/oberdiek/classlist.pdf | Bin 121655 -> 121656 bytes .../texmf-dist/doc/latex/oberdiek/colonequals.pdf | Bin 131988 -> 131988 bytes Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf | Bin 112937 -> 112937 bytes Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf | Bin 164912 -> 164912 bytes Master/texmf-dist/doc/latex/oberdiek/engord.pdf | Bin 143598 -> 143599 bytes Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf | Bin 121025 -> 121025 bytes Master/texmf-dist/doc/latex/oberdiek/flags.pdf | Bin 0 -> 119524 bytes Master/texmf-dist/doc/latex/oberdiek/grffile.pdf | Bin 147793 -> 147793 bytes Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf | Bin 133607 -> 133606 bytes Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf | Bin 140926 -> 140927 bytes Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf | Bin 124741 -> 125803 bytes .../texmf-dist/doc/latex/oberdiek/hypdestopt.pdf | Bin 152648 -> 152648 bytes Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf | Bin 147589 -> 147589 bytes Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf | Bin 118518 -> 118518 bytes Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf | Bin 134610 -> 134610 bytes Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf | Bin 126817 -> 126817 bytes Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf | Bin 422273 -> 422273 bytes Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf | Bin 243559 -> 243768 bytes Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf | Bin 159138 -> 159138 bytes .../texmf-dist/doc/latex/oberdiek/makerobust.pdf | Bin 118571 -> 118571 bytes Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf | Bin 405712 -> 419292 bytes Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf | Bin 158110 -> 158110 bytes .../texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf | Bin 130295 -> 130295 bytes Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf | Bin 157796 -> 157795 bytes Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf | Bin 163250 -> 163251 bytes Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf | Bin 138926 -> 138925 bytes Master/texmf-dist/doc/latex/oberdiek/picture.pdf | Bin 136096 -> 136096 bytes Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf | Bin 180277 -> 180277 bytes Master/texmf-dist/doc/latex/oberdiek/refcount.pdf | Bin 132580 -> 132582 bytes .../texmf-dist/doc/latex/oberdiek/setouterhbox.pdf | Bin 162513 -> 162513 bytes Master/texmf-dist/doc/latex/oberdiek/settobox.pdf | Bin 138620 -> 138620 bytes Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf | Bin 122640 -> 122639 bytes Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf | Bin 163606 -> 163607 bytes Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf | Bin 112676 -> 112676 bytes Master/texmf-dist/doc/latex/oberdiek/telprint.pdf | Bin 139246 -> 139246 bytes .../texmf-dist/doc/latex/oberdiek/transparent.pdf | Bin 120962 -> 120962 bytes Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf | Bin 132916 -> 132916 bytes Master/texmf-dist/doc/latex/oberdiek/zref.pdf | Bin 284242 -> 284984 bytes .../texmf-dist/source/latex/oberdiek/bmpsize.dtx | 50 +- .../texmf-dist/source/latex/oberdiek/bookmark.dtx | 1606 ++++++++++++++++++++ Master/texmf-dist/source/latex/oberdiek/flags.dtx | 434 ++++++ Master/texmf-dist/source/latex/oberdiek/hypcap.dtx | 25 +- .../texmf-dist/source/latex/oberdiek/kvoptions.dtx | 4 +- .../texmf-dist/source/latex/oberdiek/oberdiek.ins | 4 +- .../texmf-dist/source/latex/oberdiek/oberdiek.tex | 35 +- .../texmf-dist/source/latex/oberdiek/refcount.dtx | 2 +- Master/texmf-dist/source/latex/oberdiek/zref.dtx | 116 +- .../texmf-dist/tex/latex/oberdiek/bkm-dvipdfm.def | 158 ++ Master/texmf-dist/tex/latex/oberdiek/bkm-dvips.def | 274 ++++ .../texmf-dist/tex/latex/oberdiek/bkm-pdftex.def | 236 +++ .../texmf-dist/tex/latex/oberdiek/bmpsize-base.sty | 18 +- .../tex/latex/oberdiek/bmpsize-dvipdfm.def | 4 +- .../tex/latex/oberdiek/bmpsize-dvipdfmx.def | 4 +- .../tex/latex/oberdiek/bmpsize-dvips.def | 4 +- .../texmf-dist/tex/latex/oberdiek/bmpsize-test.tex | 2 +- Master/texmf-dist/tex/latex/oberdiek/bmpsize.sty | 4 +- Master/texmf-dist/tex/latex/oberdiek/bookmark.sty | 388 +++++ Master/texmf-dist/tex/latex/oberdiek/flags.sty | 115 ++ Master/texmf-dist/tex/latex/oberdiek/hypcap.sty | 11 +- .../texmf-dist/tex/latex/oberdiek/zref-abspage.sty | 4 +- Master/texmf-dist/tex/latex/oberdiek/zref-base.sty | 5 +- .../texmf-dist/tex/latex/oberdiek/zref-counter.sty | 4 +- .../texmf-dist/tex/latex/oberdiek/zref-dotfill.sty | 6 +- .../tex/latex/oberdiek/zref-hyperref.sty | 4 +- .../tex/latex/oberdiek/zref-lastpage.sty | 4 +- .../texmf-dist/tex/latex/oberdiek/zref-perpage.sty | 6 +- .../texmf-dist/tex/latex/oberdiek/zref-savepos.sty | 24 +- .../tex/latex/oberdiek/zref-titleref.sty | 4 +- .../tex/latex/oberdiek/zref-totpages.sty | 8 +- Master/texmf-dist/tex/latex/oberdiek/zref-user.sty | 4 +- Master/texmf-dist/tex/latex/oberdiek/zref-xr.sty | 4 +- Master/texmf-dist/tex/latex/oberdiek/zref.sty | 6 +- Master/texmf-dist/tpm/oberdiek.tpm | 18 +- 82 files changed, 3568 insertions(+), 146 deletions(-) create mode 100644 Master/texmf-dist/doc/latex/oberdiek/bookmark-example.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf create mode 100644 Master/texmf-dist/doc/latex/oberdiek/flags.pdf create mode 100644 Master/texmf-dist/source/latex/oberdiek/bookmark.dtx create mode 100644 Master/texmf-dist/source/latex/oberdiek/flags.dtx create mode 100644 Master/texmf-dist/tex/latex/oberdiek/bkm-dvipdfm.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/bkm-dvips.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/bkm-pdftex.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/bookmark.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/flags.sty (limited to 'Master/texmf-dist') diff --git a/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf b/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf index 4989cdf78f7..19999c30507 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf and b/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf and b/Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf and b/Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf and b/Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf and b/Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf 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 +%% +%% 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 Binary files /dev/null and b/Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/centernot.pdf and b/Master/texmf-dist/doc/latex/oberdiek/centernot.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf and b/Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/classlist.pdf and b/Master/texmf-dist/doc/latex/oberdiek/classlist.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/colonequals.pdf and b/Master/texmf-dist/doc/latex/oberdiek/colonequals.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf and b/Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf and b/Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/engord.pdf and b/Master/texmf-dist/doc/latex/oberdiek/engord.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf and b/Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf 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 Binary files /dev/null and b/Master/texmf-dist/doc/latex/oberdiek/flags.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/grffile.pdf and b/Master/texmf-dist/doc/latex/oberdiek/grffile.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf and b/Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf and b/Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf and b/Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdf and b/Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf and b/Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf and b/Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf and b/Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf and b/Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf and b/Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf and b/Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf and b/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/makerobust.pdf and b/Master/texmf-dist/doc/latex/oberdiek/makerobust.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf and b/Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf and b/Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf and b/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf and b/Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf and b/Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf and b/Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/picture.pdf and b/Master/texmf-dist/doc/latex/oberdiek/picture.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf and b/Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/refcount.pdf and b/Master/texmf-dist/doc/latex/oberdiek/refcount.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdf and b/Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/settobox.pdf and b/Master/texmf-dist/doc/latex/oberdiek/settobox.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf and b/Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf and b/Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf and b/Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/telprint.pdf and b/Master/texmf-dist/doc/latex/oberdiek/telprint.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/transparent.pdf and b/Master/texmf-dist/doc/latex/oberdiek/transparent.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf and b/Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf 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 Binary files a/Master/texmf-dist/doc/latex/oberdiek/zref.pdf and b/Master/texmf-dist/doc/latex/oberdiek/zref.pdf 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 +% Copyright (C) 2006, 2007 by Heiko Oberdiek % % 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 +Copyright (C) 2006, 2007 by Heiko Oberdiek 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} % @@ -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 +% +% 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 +% +%<*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 + +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 +% +%<*ignore> +\fi +% +%<*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} +% +% \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} +% +% \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} +% +% \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<>% + }% + \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} +% +% \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{<>}}% + \fi + \else + \edef\BKM@action{% + user{% + <<% + \BKM@unescapehex{\BKM@DO@rawaction}% + >>% + }% + }% + \fi + \else + \edef\BKM@action{% + user{<>}% + }% + \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} +% +% \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} +% +% \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} +% +% \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 +% +% 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 +% +%<*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 + +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 +% +%<*ignore> +\fi +% +%<*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} +% +% \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} +% +% \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 % % 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 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 % % \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 @@ -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 @@ -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} @@ -297,6 +301,19 @@ options \xoption{viewport}, \xoption{trim} and \xoption{clip}. \end{abstract} \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} @@ -378,6 +395,16 @@ epstopdf is automatically called to convert it to pdf format. \end{abstract} \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} 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 % % \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 +%% +%% 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<>% + }% + \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 +%% +%% 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 +%% +%% 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{<>}}% + \fi + \else + \edef\BKM@action{% + user{% + <<% + \BKM@unescapehex{\BKM@DO@rawaction}% + >>% + }% + }% + \fi + \else + \edef\BKM@action{% + user{<>}% + }% + \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 +%% Copyright (C) 2006, 2007 by Heiko Oberdiek %% %% 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 +%% Copyright (C) 2006, 2007 by Heiko Oberdiek %% %% 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 +%% Copyright (C) 2006, 2007 by Heiko Oberdiek %% %% 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 +%% Copyright (C) 2006, 2007 by Heiko Oberdiek %% %% 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 +%% Copyright (C) 2006, 2007 by Heiko Oberdiek %% %% 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 +%% Copyright (C) 2006, 2007 by Heiko Oberdiek %% %% 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 +%% +%% 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 +%% +%% 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 %% %% 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 @@ oberdiek Package - 2007/01/24 18:33:23 + 2007/02/20 13:19:00 rahtz Packages written by Heiko Oberdiek @@ -12,7 +12,7 @@ 9195719 - + 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 - + 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 - + 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 -- cgit v1.2.3