diff options
Diffstat (limited to 'Master/texmf-dist/source/latex')
-rw-r--r-- | Master/texmf-dist/source/latex/hyperref/backref.dtx | 66 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/hyperref/doc/manual.tex | 4 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/hyperref/hyperref.dtx | 187 |
3 files changed, 226 insertions, 31 deletions
diff --git a/Master/texmf-dist/source/latex/hyperref/backref.dtx b/Master/texmf-dist/source/latex/hyperref/backref.dtx index bb6cbdcd3d6..8a24e6d27dd 100644 --- a/Master/texmf-dist/source/latex/hyperref/backref.dtx +++ b/Master/texmf-dist/source/latex/hyperref/backref.dtx @@ -1,5 +1,5 @@ % \iffalse -%% File: backref.dtx Copyright (C) 1995-2005 David Carlisle, Sebastian Rahtz, Heiko Oberdiek +%% File: backref.dtx Copyright (C) 1995-2009 David Carlisle, Sebastian Rahtz, Heiko Oberdiek % %% This file is part of the `Hyperref Bundle'. %% ------------------------------------------- @@ -22,9 +22,9 @@ %<driver>\ProvidesFile{backref.drv} % \fi % \ProvidesFile{backref.dtx} - [2006/09/05 v1.28 Bibliographical back referencing]% + [2009/11/14 v1.29 Bibliographical back referencing]% % -% \CheckSum{574} +% \CheckSum{620} % % \iffalse %<*driver> @@ -690,6 +690,66 @@ } % \end{macrocode} % \end{macro} +% +% \subsection{Rerun warning} +% +% The following code computes a MD5 sum and the file size of the +% |.brf| file at the begin and the end of the document and compares +% them. A rerun warning is given, if they do not match. +% This method requires pdf\TeX\ or Lua\TeX. The method fails, +% if the MD5 sum and the file size are the same for +% a changed |.brf| file (it's probably very seldom). +% \begin{macrocode} +\RequirePackage{pdftexcmds}[2009/04/10] +\begingroup + \xdef\BR@CheckSumBefore{% + \@ifundefined{pdf@filemdfivesum}{}{% + \pdf@filemdfivesum{\jobname.brf}% + }% + :% + \@ifundefined{pdf@filesize}{}{% + \pdf@filesize{\jobname.brf}% + }% + }% +\endgroup +\AtBeginDocument{% + \AtEndDocument{% + \clearpage + \if@filesw + \immediate\write\@mainaux{% + \string\csname\space BR@CheckEnd\string\endcsname + }% + \fi + }% +% \end{macrocode} +% \begin{macro}{\BR@CheckEnd} +% \begin{macrocode} + \def\BR@CheckEnd{% + \begingroup + \@ifundefined{tf@brf@open}{}{% + \immediate\closeout\tf@brf + }% + \edef\BR@CheckSumAfter{% + \@ifundefined{pdf@filemdfivesum}{}{% + \pdf@filemdfivesum{\jobname.brf}% + }% + :% + \@ifundefined{pdf@filesize}{}{% + \pdf@filesize{\jobname.brf}% + }% + }% + \ifx\BR@CheckSumBefore\BR@CheckSumAfter + \else + \PackageWarningNoLine{backref}{% + Rerun to get bibliographical references right% + }% + \fi + \endgroup + }% +} +% \end{macrocode} +% \end{macro} +% % \begin{macrocode} %</package> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/hyperref/doc/manual.tex b/Master/texmf-dist/source/latex/hyperref/doc/manual.tex index 5c1e94e4129..ee623aec628 100644 --- a/Master/texmf-dist/source/latex/hyperref/doc/manual.tex +++ b/Master/texmf-dist/source/latex/hyperref/doc/manual.tex @@ -525,7 +525,7 @@ pdfnumcopies & integer & empty & number of printed copies \\ pdfpagelayout & text & empty & set layout of PDF pages \\ pdfpagelabels & boolean & true & set PDF page labels \\ pdfpagetransition & text & empty & set PDF page transition style \\ -pdfpicktrackbypdfsize & text & empty & set option for print dialog \\ +pdfpicktraybypdfsize & text & empty & set option for print dialog \\ pdfprintarea & text & empty & set /PrintArea of viewer preferences \\ pdfprintclip & text & empty & set /PrintClip of viewer preferences \\ pdfprintpagerange & n n (n n)* @@ -680,7 +680,7 @@ pdfpagemode & \textit{empty} & set default mode of PDF display \\ pdfpagelabels & \textit{true} & set PDF page labels \\ pdfpagescrop & \textit{empty} & set crop size of PDF document \\ pdfpagetransition & \textit{empty} & set PDF page transition style \\ -pdfpicktrackbypdfsize +pdfpicktraybypdfsize & \textit{empty} & set option for print dialog \\ pdfprintarea & \textit{empty} & set /PrintArea of viewer preferences \\ pdfprintclip & \textit{empty} & set /PrintClip of viewer preferences \\ diff --git a/Master/texmf-dist/source/latex/hyperref/hyperref.dtx b/Master/texmf-dist/source/latex/hyperref/hyperref.dtx index a8b8e4023c3..92a11a1e1d8 100644 --- a/Master/texmf-dist/source/latex/hyperref/hyperref.dtx +++ b/Master/texmf-dist/source/latex/hyperref/hyperref.dtx @@ -38,7 +38,7 @@ %<puenc>\ProvidesFile{puenc.def} %<puvnenc>\ProvidesFile{puvnenc.def} %<puarenc>\ProvidesFile{puarenc.def} -%<!none> [2009/10/09 v6.79a +%<!none> [2009/11/14 v6.79e %<package> Hypertext links for LaTeX] %<nohyperref> Dummy hyperref (SR)] %<driver> Hyperref documentation driver file] @@ -114,7 +114,7 @@ \end{document} %</driver> % \fi -% \CheckSum{24653} +% \CheckSum{24810} % % \MakeShortVerb{|} % \StopEventually{} @@ -145,6 +145,8 @@ % } % \makeatother % +% \providecommand*{\eTeX}{\mbox{$\varepsilon$-\TeX}} +% % \section{File hycheck.tex} % % Many commands of \LaTeX\ or other packages cannot be @@ -9745,12 +9747,19 @@ \ifHy@hyperindex \def\HyInd@ParenLeft{(}% \def\HyInd@ParenRight{)}% + \def\hyperindexformat#1#2{% + \let\HyOrg@hyperpage\hyperpage + \let\hyperpage\@firstofone + #1{\HyOrg@hyperpage{#2}}% + \let\hyperpage\HyOrg@hyperpage + }% \Hy@nextfalse \@ifpackageloaded{multind}{\Hy@nexttrue}{}% \@ifpackageloaded{index}{\Hy@nexttrue}{}% \@ifpackageloaded{amsmidx}{\Hy@nexttrue}{}% \begingroup \lccode`\|=\expandafter`\HyInd@EncapChar\relax + \lccode`\/=`\\\relax \lowercase{\endgroup \ifHy@next \let\HyInd@org@wrindex\@wrindex @@ -9759,13 +9768,28 @@ \ifx\\#3\\% \HyInd@org@wrindex{#1}{#2|hyperpage}% \else - \def\Hy@temp@A{#3}% - \ifcase0\ifx\Hy@temp@A\HyInd@ParenLeft 1\fi - \ifx\Hy@temp@A\HyInd@ParenRight 1\fi - \relax - \HyInd@org@wrindex{#1}{#2|#3}% + \HyInd@@@wrindex{#1}{#2}#3\\% + \fi + }% + \def\HyInd@@@wrindex#1#2#3#4\\{% + \def\Hy@temp@A{#3}% + \ifcase0\ifx\Hy@temp@A\HyInd@ParenLeft 1\fi + \ifx\Hy@temp@A\HyInd@ParenRight 1\fi + \relax + \HyInd@org@wrindex{#1}{% + #2|hyperindexformat{/#3#4}% + }% + \else + \ifx\\#4\\% + \ifx\Hy@temp@A\HyInd@ParenRight + \HyInd@org@wrindex{#1}{#2|#3}% + \else + \HyInd@org@wrindex{#1}{#2|#3hyperpage}% + \fi \else - \HyInd@org@wrindex{#1}{#2|#3hyperpage}% + \HyInd@org@wrindex{#1}{% + #2|#3hyperindexformat{/#4}% + }% \fi \fi }% @@ -9778,22 +9802,41 @@ \string\indexentry{#1|hyperpage}{\thepage}% }% \else - \def\Hy@temp@A{#2}% - \ifcase0\ifx\Hy@temp@A\HyInd@ParenLeft 1\fi - \ifx\Hy@temp@A\HyInd@ParenRight 1\fi - \relax + \HyInd@@@wrindex{#1}#2\\% + \fi + \fi + \endgroup + \@esphack + }% + \def\HyInd@@@wrindex#1#2#3\\{% + \def\Hy@temp@A{#2}% + \ifcase0\ifx\Hy@temp@A\HyInd@ParenLeft 1\fi + \ifx\Hy@temp@A\HyInd@ParenRight 1\fi + \relax + \protected@write\@indexfile{}{% + \string\indexentry{% + #1|hyperindexformat{/#2#3}% + }{\thepage}% + }% + \else + \ifx\\#3\\% + \ifx\Hy@temp@A\HyInd@ParenRight \protected@write\@indexfile{}{% - \string\indexentry{#1|#2}{\thepage}% + \string\indexentry{#1|#2}{\thepage}% }% \else \protected@write\@indexfile{}{% \string\indexentry{#1|#2hyperpage}{\thepage}% }% \fi + \else + \protected@write\@indexfile{}{% + \string\indexentry{% + #1|#2hyperindexformat{/#3}% + }{\thepage}% + }% \fi \fi - \endgroup - \@esphack }% \fi }% @@ -10375,7 +10418,7 @@ % Since version 1.30.0 pdf\TeX\ offers \cs{pdfescapestring}. % \begin{macrocode} %<*pdftex|dvipdfm|vtex|pdfmarkbase|dviwindo> -\RequirePackage{pdftexcmds}[2007/11/11] +\RequirePackage{pdftexcmds}[2009/04/10] \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname pdf@escapestring\endcsname\relax \begingroup @@ -12061,11 +12104,21 @@ % \end{macrocode} % \begin{macrocode} \AtBeginShipoutFirst{% - \ifx\special@paper\@empty - \else - \ifHy@setpagesize - \special{papersize=\special@paper}% - \fi + \ifHy@setpagesize + \begingroup + \@ifundefined{stockwidth}{% + \ifx\special@paper\@empty + \special{papersize=\the\paperwidth,\the\paperheight}% + \else + \special{papersize=\special@paper}% + \fi + }{% + \ifdim\stockwidth=\z@ + \else + \special{papersize=\the\stockwidth,\the\stockheight}% + \fi + }% + \endgroup \fi \Hy@DisableOption{setpagesize}% } @@ -13682,11 +13735,22 @@ } def% }% } -\AfterBeginDocument{% - \ifx\special@paper\@empty\else - \ifHy@setpagesize - \special{papersize=\special@paper}% - \fi +\AtBeginShipoutFirst{% + \ifHy@setpagesize + \begingroup + \@ifundefined{stockwidth}{% + \ifx\special@paper\@empty + \special{papersize=\the\paperwidth,\the\paperheight}% + \else + \special{papersize=\special@paper}% + \fi + }{% + \ifdim\stockwidth=\z@ + \else + \special{papersize=\the\stockwidth,\the\stockheight}% + \fi + }% + \endgroup \fi \Hy@DisableOption{setpagesize}% } @@ -16198,6 +16262,19 @@ % in Heidelberg. See |paper.pdf| and |slides.pdf| in the % |doc| directory of hyperref. % +% When using the right-to-left typesetting based on \eTeX, the order +% of the |\BOOKMARK| commands written to the |\@outlinefile| could +% appear wrong, because of mis-feature of \eTeX's implementation (that +% it processes the shipped out lines left-to-right, instead of the +% order in which they appear in the document). The wrong order will +% appear when the file contains two bookmarks on the same line typeset +% right-to-left. +% +% To work around this problem, the |bookmark@seq@number| counter is +% used to write the bookmark's sequential number into a comment in the +% |\@outlinefile|, which could be used to post-process it to achieve +% the proper ordering of |\BOOKMARK| commands in that file. +% % \begin{macrocode} \def\Hy@writebookmark#1#2#3#4#5{% % section number, text, label, level, file @@ -16257,15 +16334,18 @@ \fi \pdfstringdef\Hy@tempa{#2}% \if@filesw + \stepcounter{bookmark@seq@number}% \protected@write\@outlinefile{}{% \protect\BOOKMARK [\Hy@level][\@bookmarkopenstatus{\Hy@level}]{#3}% {\Hy@tempa}{\Hy@tempb}% + \@percentchar\space\thebookmark@seq@number }% \fi \fi \endgroup } +\newcounter{bookmark@seq@number} % \end{macrocode} % In the call of \cmd{\BOOKMARK} the braces around \verb|#4| % are omitted, because it is not likely, that the level number @@ -16303,6 +16383,59 @@ % The macros for calculating structure of outlines % are derived from those by Petr Olsak used in the texinfopdf macros. % +% \subsubsection{Rerun warning} +% +% \begin{macro}{\Hy@OutlineRerunCheck} +% \begin{macrocode} +\def\Hy@OutlineRerunCheck{% + \begingroup + \xdef\Hy@OutlineCheckSumBefore{% + \@ifundefined{pdf@filemdfivesum}{}{% + \pdf@filemdfivesum{\jobname.out}% + }% + :% + \@ifundefined{pdf@filesize}{}{% + \pdf@filesize{\jobname.out}% + }% + }% + \endgroup + \AtEndDocument{% + \clearpage + \if@filesw + \immediate\write\@mainaux{% + \string\csname\space Hy@OutlineCheckEnd\string\endcsname + }% + \fi + }% +} +\AtBeginDocument{% + \def\Hy@OutlineCheckEnd{% + \begingroup + \immediate\closeout\@outlinefile + \edef\Hy@OutlineCheckSumAfter{% + \@ifundefined{pdf@filemdfivesum}{}{% + \pdf@filemdfivesum{\jobname.out}% + }% + :% + \@ifundefined{pdf@filesize}{}{% + \pdf@filesize{\jobname.out}% + }% + }% + \ifx\Hy@OutlineCheckSumBefore\Hy@OutlineCheckSumAfter + \else + \Hy@WarningNoLine{% + Rerun to get outlines right\MessageBreak + or use package `bookmark'% + }% + \fi + \endgroup + }% +} +% \end{macrocode} +% \end{macro} +% +% \subsubsection{Driver stuff} +% % The VTEX section was written originally by VTEX, but then % amended by Denis Girou (\Email{denis.girou@idris.fr}), % then by by Taco Hoekwater (\Email{taco.hoekwater@wkap.nl}. The problem @@ -16409,6 +16542,7 @@ \else \if@filesw \newwrite\@outlinefile + \Hy@OutlineRerunCheck \immediate\openout\@outlinefile=\jobname.out\relax \ifHy@typexml \immediate\write\@outlinefile{<relaxxml>\relax}% @@ -16480,6 +16614,7 @@ \else \if@filesw \newwrite\@outlinefile + \Hy@OutlineRerunCheck \immediate\openout\@outlinefile=\jobname.out\relax \ifHy@typexml \immediate\write\@outlinefile{<relaxxml>\relax}% |