summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/hyperref/hyperref.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/hyperref/hyperref.dtx')
-rw-r--r--Master/texmf-dist/source/latex/hyperref/hyperref.dtx230
1 files changed, 119 insertions, 111 deletions
diff --git a/Master/texmf-dist/source/latex/hyperref/hyperref.dtx b/Master/texmf-dist/source/latex/hyperref/hyperref.dtx
index 313043283d7..81b6e3ef903 100644
--- a/Master/texmf-dist/source/latex/hyperref/hyperref.dtx
+++ b/Master/texmf-dist/source/latex/hyperref/hyperref.dtx
@@ -44,7 +44,7 @@
%<puenc>\ProvidesFile{puenc.def}
%<puvnenc>\ProvidesFile{puvnenc.def}
%<puarenc>\ProvidesFile{puarenc.def}
-%<!none> [2011/08/19 v6.82h %
+%<!none> [2011/09/28 v6.82i %
%<package> Hypertext links for LaTeX]
%<nohyperref> Dummy hyperref (SR)]
%<driver> Hyperref documentation driver file]
@@ -139,7 +139,7 @@
\end{document}
%</driver>
% \fi
-% \CheckSum{28602}
+% \CheckSum{28601}
%
% \MakeShortVerb{|}
% \StopEventually{}
@@ -815,15 +815,15 @@
\newif\ifHy@bookmarksnumbered
\newif\ifHy@bookmarksopen
\newif\ifHy@breaklinks
-\newif\ifHy@centerwindow
+\newif\ifHy@pdfcenterwindow
\newif\ifHy@CJKbookmarks
\newif\ifHy@colorlinks
\newif\ifHy@draft
\let\Hy@finaltrue\Hy@draftfalse
\let\Hy@finalfalse\Hy@drafttrue
-\newif\ifHy@escapeform
-\newif\ifHy@figures
-\newif\ifHy@fitwindow
+\newif\ifHy@pdfescapeform
+\newif\ifHy@hyperfigures
+\newif\ifHy@pdffitwindow
\newif\ifHy@frenchlinks
\newif\ifHy@hyperfootnotes
\newif\ifHy@hyperindex
@@ -831,14 +831,14 @@
\newif\ifHy@implicit
\newif\ifHy@linktocpage
\newif\ifHy@localanchorname
-\newif\ifHy@menubar
+\newif\ifHy@pdfmenubar
\newif\ifHy@naturalnames
\newif\ifHy@nesting
-\newif\ifHy@newwindowset
-\newif\ifHy@newwindow
+\newif\ifHy@pdfnewwindowset
+\newif\ifHy@pdfnewwindow
\newif\ifHy@ocgcolorlinks
\newif\ifHy@pageanchor
-\newif\ifHy@pagelabels
+\newif\ifHy@pdfpagelabels
\newif\ifHy@pdfpagehidden
\newif\ifHy@pdfstring
\newif\ifHy@plainpages
@@ -847,12 +847,14 @@
\newif\ifHy@seminarslides
\newif\ifHy@setpagesize
\newif\ifHy@texht
-\newif\ifHy@toolbar
+\newif\ifHy@pdftoolbar
\newif\ifHy@unicode
-\newif\ifHy@usetitle
+\newif\ifHy@pdfusetitle
\newif\ifHy@verbose
-\newif\ifHy@windowui
-\newif\ifHy@displaydoctitle
+\let\Hy@debugtrue\Hy@verbosetrue
+\let\Hy@debugfalse\Hy@verbosefalse
+\newif\ifHy@pdfwindowui
+\newif\ifHy@pdfdisplaydoctitle
\newif\ifHy@pdfa
% \end{macrocode}
% Defaults for the switches are now set.
@@ -862,37 +864,37 @@
\Hy@bookmarksopenfalse
\Hy@bookmarkstrue
\Hy@breaklinksfalse
-\Hy@centerwindowfalse
+\Hy@pdfcenterwindowfalse
\Hy@CJKbookmarksfalse
-\Hy@escapeformfalse
-\Hy@figuresfalse
-\Hy@fitwindowfalse
+\Hy@pdfescapeformfalse
+\Hy@hyperfiguresfalse
+\Hy@pdffitwindowfalse
\Hy@hyperfootnotestrue
\Hy@hyperindextrue
\Hy@hypertexnamestrue
\Hy@implicittrue
\Hy@linktocpagefalse
\Hy@localanchornamefalse
-\Hy@menubartrue
+\Hy@pdfmenubartrue
\Hy@naturalnamesfalse
\Hy@nestingfalse
-\Hy@newwindowsetfalse
-\Hy@newwindowfalse
+\Hy@pdfnewwindowsetfalse
+\Hy@pdfnewwindowfalse
\Hy@pageanchortrue
-\Hy@pagelabelstrue
+\Hy@pdfpagelabelstrue
\Hy@pdfpagehiddenfalse
\Hy@pdfstringfalse
\Hy@plainpagesfalse
\Hy@raiselinksfalse
\Hy@setpagesizetrue
\Hy@texhtfalse
-\Hy@toolbartrue
+\Hy@pdftoolbartrue
\Hy@typexmlfalse
\Hy@unicodefalse
-\Hy@usetitlefalse
+\Hy@pdfusetitlefalse
\Hy@verbosefalse
-\Hy@windowuitrue
-\Hy@displaydoctitlefalse
+\Hy@pdfwindowuitrue
+\Hy@pdfdisplaydoctitlefalse
\Hy@pdfafalse
% \end{macrocode}
%
@@ -4517,10 +4519,15 @@
% \begin{macro}{\IfHyperBooleanExists}
% \begin{macrocode}
\def\IfHyperBooleanExists#1{%
- \ltx@ifundefined{ifHy@#1}\ltx@secondoftwo\ltx@firstoftwo
+ \ltx@ifundefined{Hy@#1false}\ltx@secondoftwo{%
+ \ltx@ifundefined{KV@Hyp@#1@default}\ltx@secondoftwo\ltx@firstoftwo
+ }%
}
% \end{macrocode}
% \end{macro}
+% \begin{macrocode}
+\@namedef{KV@Hyp@stoppedearly@default}{}
+% \end{macrocode}
%
% \begin{macro}{\IfHyperBoolean}
% \begin{macrocode}
@@ -4538,9 +4545,8 @@
%
% \begin{macro}{\Hy@boolkey}
% \begin{macrocode}
-\def\Hy@boolkey{\@dblarg\Hy@@boolkey}
-\def\Hy@@boolkey[#1]#2#3{%
- \edef\Hy@tempa{#3}%
+\def\Hy@boolkey#1#2{%
+ \edef\Hy@tempa{#2}%
\lowercase\expandafter{%
\expandafter\def\expandafter\Hy@tempa\expandafter{\Hy@tempa}%
}%
@@ -4555,21 +4561,10 @@
\fi
\fi
\ifx\Hy@tempa\relax
- \Hy@WarnOptionValue{#3}{#1}{`true' or 'false'}%
+ \Hy@WarnOptionValue{#2}{#1}{`true' or 'false'}%
\else
\Hy@Info{Option `#1' set `\Hy@tempa'}%
- \csname Hy@#2\Hy@tempa\endcsname
- \fi
- \begingroup
- \def\x{#1}%
- \def\y{#2}%
- \expandafter\endgroup
- \ifx\x\y
- \else
- \expandafter\def\csname ifHy@#1\expandafter\endcsname
- \expandafter{%
- \csname ifHy@#2\endcsname
- }%
+ \csname Hy@#1\Hy@tempa\endcsname
\fi
}
% \end{macrocode}
@@ -4589,7 +4584,7 @@
% \begin{macro}{\Hy@DisableOption}
% \begin{macrocode}
\def\Hy@DisableOption#1{%
- \@ifundefined{KV@Hyp@#1@default}{%
+ \ltx@ifundefined{KV@Hyp@#1@default}{%
\define@key{Hyp}{#1}%
}{%
\define@key{Hyp}{#1}[]%
@@ -4724,7 +4719,7 @@
\Hy@boolkey{setpagesize}{#1}%
}
\define@key{Hyp}{debug}[true]{%
- \Hy@boolkey[debug]{verbose}{#1}%
+ \Hy@boolkey{debug}{#1}%
}
\define@key{Hyp}{linktocpage}[true]{%
\Hy@boolkey{linktocpage}{#1}%
@@ -5172,7 +5167,7 @@
% package) be hypertext links. Off by default. Needs more work.
% \begin{macrocode}
\define@key{Hyp}{hyperfigures}[true]{%
- \Hy@boolkey[hyperfigures]{figures}{#1}%
+ \Hy@boolkey{hyperfigures}{#1}%
}
% \end{macrocode}
%
@@ -6101,7 +6096,7 @@
% \end{macrocode}
% \begin{macrocode}
\define@key{Hyp}{pdfusetitle}[true]{%
- \Hy@boolkey[pdfusetitle]{usetitle}{#1}%
+ \Hy@boolkey{pdfusetitle}{#1}%
}
\def\HyXeTeX@CheckUnicode{%
\ifxetex
@@ -6375,22 +6370,22 @@
}
\define@key{Hyp}{pdfpagescrop}{\edef\@pdfpagescrop{#1}}
\define@key{Hyp}{pdftoolbar}[true]{%
- \Hy@boolkey[pdftoolbar]{toolbar}{#1}%
+ \Hy@boolkey{pdftoolbar}{#1}%
}
\define@key{Hyp}{pdfmenubar}[true]{%
- \Hy@boolkey[pdfmenubar]{menubar}{#1}%
+ \Hy@boolkey{pdfmenubar}{#1}%
}
\define@key{Hyp}{pdfwindowui}[true]{%
- \Hy@boolkey[pdfwindowui]{windowui}{#1}%
+ \Hy@boolkey{pdfwindowui}{#1}%
}
\define@key{Hyp}{pdffitwindow}[true]{%
- \Hy@boolkey[pdffitwindow]{fitwindow}{#1}%
+ \Hy@boolkey{pdffitwindow}{#1}%
}
\define@key{Hyp}{pdfcenterwindow}[true]{%
- \Hy@boolkey[pdfcenterwindow]{centerwindow}{#1}%
+ \Hy@boolkey{pdfcenterwindow}{#1}%
}
\define@key{Hyp}{pdfdisplaydoctitle}[true]{%
- \Hy@boolkey[pdfdisplaydoctitle]{displaydoctitle}{#1}%
+ \Hy@boolkey{pdfdisplaydoctitle}{#1}%
}
\define@key{Hyp}{pdfa}[true]{%
\Hy@boolkey{pdfa}{#1}%
@@ -6398,16 +6393,16 @@
\define@key{Hyp}{pdfnewwindow}[true]{%
\def\Hy@temp{#1}%
\ifx\Hy@temp\@empty
- \Hy@newwindowsetfalse
+ \Hy@pdfnewwindowsetfalse
\else
- \Hy@newwindowsettrue
- \Hy@boolkey[pdfnewwindow]{newwindow}{#1}%
+ \Hy@pdfnewwindowsettrue
+ \Hy@boolkey{pdfnewwindow}{#1}%
\fi
}
\def\Hy@SetNewWindow{%
- \ifHy@newwindowset
+ \ifHy@pdfnewwindowset
/NewWindow %
- \ifHy@newwindow true\else false\fi
+ \ifHy@pdfnewwindow true\else false\fi
\fi
}
\Hy@DefNameKey{pdfpagelayout}{%
@@ -6422,10 +6417,10 @@
\def\@pdflang{#1}%
}
\define@key{Hyp}{pdfpagelabels}[true]{%
- \Hy@boolkey[pdfpagelabels]{pagelabels}{#1}%
+ \Hy@boolkey{pdfpagelabels}{#1}%
}
\define@key{Hyp}{pdfescapeform}[true]{%
- \Hy@boolkey[pdfescapeform]{escapeform}{#1}%
+ \Hy@boolkey{pdfescapeform}{#1}%
}
% \end{macrocode}
% Default values:
@@ -6670,7 +6665,7 @@
% \end{macrocode}
%
% \begin{macrocode}
-\ifHy@figures
+\ifHy@hyperfigures
\Hy@Info{Hyper figures ON}%
\else
\Hy@Info{Hyper figures OFF}%
@@ -7309,8 +7304,8 @@
% \begin{macrocode}
\ifx\Hy@href@nextactionraw\@empty
\else
- \Hy@newwindowsettrue
- \Hy@newwindowtrue
+ \Hy@pdfnewwindowsettrue
+ \Hy@pdfnewwindowtrue
\fi
}
% \end{macrocode}
@@ -8787,7 +8782,7 @@
%
% \section{Setup}
% \begin{macrocode}
-\ifHy@figures
+\ifHy@hyperfigures
\Hy@Info{Hyper figures ON}%
\else
\Hy@Info{Hyper figures OFF}%
@@ -9083,7 +9078,7 @@
% these informations for the pdf information dictionary
% can be extracted by the \title and \author.
% \begin{macrocode}
-\ifHy@usetitle
+\ifHy@pdfusetitle
\let\HyOrg@title\title
\let\HyOrg@author\author
\def\title{\@ifnextchar[{\Hy@scanopttitle}{\Hy@scantitle}}%
@@ -9207,10 +9202,10 @@
% Internal macros of this module are marked with |\HyPL@|.
%
% \begin{macrocode}
-\ifHy@pagelabels
+\ifHy@pdfpagelabels
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname thepage\endcsname\relax
- \Hy@pagelabelsfalse
+ \Hy@pdfpagelabelsfalse
\Hy@WarningNoLine{%
Option `pdfpagelabels' is turned off\MessageBreak
because \string\thepage\space is undefined%
@@ -9556,7 +9551,7 @@
% \begin{macro}{\HyPL@StorePageLabel}
% This macro adds the entry |#1| to \cmd{\HyPL@Labels}.
% \begin{macrocode}
-\ifHy@pagelabels
+\ifHy@pdfpagelabels
\def\HyPL@StorePageLabel#1{%
\toks@\expandafter{\HyPL@Labels}%
\xdef\HyPL@Labels{%
@@ -9663,7 +9658,7 @@
%
% \begin{macrocode}
%<*pdfmarkbase|dvipdfm|xetex>
-\ifHy@pagelabels
+\ifHy@pdfpagelabels
% \end{macrocode}
%
% \begin{macro}{\HyPL@StorePageLabel}
@@ -10561,9 +10556,7 @@
% to keep track of markers otherwise. If the raw forms |\footnotemark|
% and |\footnotetext| are used, force them to use un-hyper original.
%
-% Tabularx causes footnote problems, disable the linking if that is loaded.
% \begin{macrocode}
-\@ifpackageloaded{tabularx}{\Hy@hyperfootnotesfalse}{}
\ifHy@hyperfootnotes
\newcounter{Hfootnote}%
\let\H@@footnotetext\@footnotetext
@@ -10644,6 +10637,21 @@
}%
% \end{macrocode}
%
+% Tabularx causes footnote problems, disable the linking if that is loaded.
+% Since v6.82i footnotes are only disabled inside the environment
+% `tabularx'.
+% \begin{macrocode}
+ \@ifpackageloaded{tabularx}{%
+ \let\HyOrg@TX@endtabularx\TX@endtabularx
+ \def\TX@endtabularx{%
+ \let\@footnotetext\H@@footnotetext
+ \let\@footnotemark\H@@footnotemark
+ \let\@mpfootnotetext\H@@mpfootnotetext
+ \HyOrg@TX@endtabularx
+ }%
+ }{}%
+% \end{macrocode}
+%
% Support for footnotes in p columns of longtable.
% Here \verb+\footnote+ commands are splitted into
% \verb+\footnotemark+ and a call of \verb+\footnotetext+
@@ -11679,7 +11687,7 @@
% \section{Included figures}
% Simply intercept the low level graphics package macro.
% \begin{macrocode}
-\ifHy@figures
+\ifHy@hyperfigures
\let\Hy@Gin@setfile\Gin@setfile
\def\Gin@setfile#1#2#3{%
\hyperimage{#3}{\Hy@Gin@setfile{#1}{#2}{#3}}%
@@ -12947,12 +12955,12 @@
\fi
\fi
\edef\Hy@temp{%
- \ifHy@toolbar\else /HideToolbar true\fi
- \ifHy@menubar\else /HideMenubar true\fi
- \ifHy@windowui\else /HideWindowUI true\fi
- \ifHy@fitwindow /FitWindow true\fi
- \ifHy@centerwindow /CenterWindow true\fi
- \ifHy@displaydoctitle /DisplayDocTitle true\fi
+ \ifHy@pdftoolbar\else /HideToolbar true\fi
+ \ifHy@pdfmenubar\else /HideMenubar true\fi
+ \ifHy@pdfwindowui\else /HideWindowUI true\fi
+ \ifHy@pdffitwindow /FitWindow true\fi
+ \ifHy@pdfcenterwindow /CenterWindow true\fi
+ \ifHy@pdfdisplaydoctitle /DisplayDocTitle true\fi
\Hy@UseNameKey{NonFullScreenPageMode}\@pdfnonfullscreenpagemode
\Hy@UseNameKey{Direction}\@pdfdirection
\Hy@UseNameKey{ViewArea}\@pdfviewarea
@@ -13689,12 +13697,12 @@
\pdfmark{pdfmark=/PAGES,CropBox=\@pdfpagescrop}%
\fi
\edef\Hy@temp{%
- \ifHy@toolbar\else /HideToolbar true\fi
- \ifHy@menubar\else /HideMenubar true\fi
- \ifHy@windowui\else /HideWindowUI true\fi
- \ifHy@fitwindow /FitWindow true\fi
- \ifHy@centerwindow /CenterWindow true\fi
- \ifHy@displaydoctitle /DisplayDocTitle true\fi
+ \ifHy@pdftoolbar\else /HideToolbar true\fi
+ \ifHy@pdfmenubar\else /HideMenubar true\fi
+ \ifHy@pdfwindowui\else /HideWindowUI true\fi
+ \ifHy@pdffitwindow /FitWindow true\fi
+ \ifHy@pdfcenterwindow /CenterWindow true\fi
+ \ifHy@pdfdisplaydoctitle /DisplayDocTitle true\fi
\Hy@UseNameKey{NonFullScreenPageMode}\@pdfnonfullscreenpagemode
\Hy@UseNameKey{Direction}\@pdfdirection
\Hy@UseNameKey{ViewArea}\@pdfviewarea
@@ -14168,12 +14176,12 @@
% \begin{macrocode}
\def\PDF@SetupDoc{%
\edef\Hy@temp{%
- \ifHy@toolbar\else /HideToolbar true\fi
- \ifHy@menubar\else /HideMenubar true\fi
- \ifHy@windowui\else /HideWindowUI true\fi
- \ifHy@fitwindow /FitWindow true\fi
- \ifHy@centerwindow /CenterWindow true\fi
- \ifHy@displaydoctitle /DisplayDocTitle true\fi
+ \ifHy@pdftoolbar\else /HideToolbar true\fi
+ \ifHy@pdfmenubar\else /HideMenubar true\fi
+ \ifHy@pdfwindowui\else /HideWindowUI true\fi
+ \ifHy@pdffitwindow /FitWindow true\fi
+ \ifHy@pdfcenterwindow /CenterWindow true\fi
+ \ifHy@pdfdisplaydoctitle /DisplayDocTitle true\fi
\Hy@UseNameKey{NonFullScreenPageMode}\@pdfnonfullscreenpagemode
\Hy@UseNameKey{Direction}\@pdfdirection
\Hy@UseNameKey{ViewArea}\@pdfviewarea
@@ -14563,7 +14571,7 @@
\Hy@CleanupFile\Hy@pstringF
\special{!%
aref <%
- \ifnum\Hy@VTeXversion>753 \ifHy@newwindow n\fi\fi
+ \ifnum\Hy@VTeXversion>753 \ifHy@pdfnewwindow n\fi\fi
f=\Hy@pstringF>#3;%
a=<%
\ifHy@pdfa /F 4\fi
@@ -15022,12 +15030,12 @@
\special{!pdfinfo u=<<</Base (\@baseurl)>>>}%
\fi
\special{!pdfinfo v=<<<%
- \ifHy@toolbar\else /HideToolbar true\fi
- \ifHy@menubar\else /HideMenubar true\fi
- \ifHy@windowui\else /HideWindowUI true\fi
- \ifHy@fitwindow /FitWindow true\fi
- \ifHy@centerwindow /CenterWindow true\fi
- \ifHy@displaydoctitle /DisplayDocTitle true\fi
+ \ifHy@pdftoolbar\else /HideToolbar true\fi
+ \ifHy@pdfmenubar\else /HideMenubar true\fi
+ \ifHy@pdfwindowui\else /HideWindowUI true\fi
+ \ifHy@pdffitwindow /FitWindow true\fi
+ \ifHy@pdfcenterwindow /CenterWindow true\fi
+ \ifHy@pdfdisplaydoctitle /DisplayDocTitle true\fi
\Hy@UseNameKey{NonFullScreenPageMode}\@pdfnonfullscreenpagemode
\Hy@UseNameKey{Direction}\@pdfdirection
\Hy@UseNameKey{ViewArea}\@pdfviewarea
@@ -15440,12 +15448,12 @@
\pdfmark{pdfmark=/PAGES,CropBox=\@pdfpagescrop}%
\fi
\edef\Hy@temp{%
- \ifHy@toolbar\else /HideToolbar true\fi
- \ifHy@menubar\else /HideMenubar true\fi
- \ifHy@windowui\else /HideWindowUI true\fi
- \ifHy@fitwindow /FitWindow true\fi
- \ifHy@centerwindow /CenterWindow true\fi
- \ifHy@displaydoctitle /DisplayDocTitle true\fi
+ \ifHy@pdftoolbar\else /HideToolbar true\fi
+ \ifHy@pdfmenubar\else /HideMenubar true\fi
+ \ifHy@pdfwindowui\else /HideWindowUI true\fi
+ \ifHy@pdffitwindow /FitWindow true\fi
+ \ifHy@pdfcenterwindow /CenterWindow true\fi
+ \ifHy@pdfdisplaydoctitle /DisplayDocTitle true\fi
\Hy@UseNameKey{NonFullScreenPageMode}\@pdfnonfullscreenpagemode
\Hy@UseNameKey{Direction}\@pdfdirection
\Hy@UseNameKey{ViewArea}\@pdfviewarea
@@ -16533,12 +16541,12 @@
\pdfmark{pdfmark=/PAGES,CropBox=\@pdfpagescrop}%
\fi
\edef\Hy@temp{%
- \ifHy@toolbar\else /HideToolbar true\fi
- \ifHy@menubar\else /HideMenubar true\fi
- \ifHy@windowui\else /HideWindowUI true\fi
- \ifHy@fitwindow /FitWindow true\fi
- \ifHy@centerwindow /CenterWindow true\fi
- \ifHy@displaydoctitle /DisplayDocTitle true\fi
+ \ifHy@pdftoolbar\else /HideToolbar true\fi
+ \ifHy@pdfmenubar\else /HideMenubar true\fi
+ \ifHy@pdfwindowui\else /HideWindowUI true\fi
+ \ifHy@pdffitwindow /FitWindow true\fi
+ \ifHy@pdfcenterwindow /CenterWindow true\fi
+ \ifHy@pdfdisplaydoctitle /DisplayDocTitle true\fi
\Hy@UseNameKey{NonFullScreenPageMode}\@pdfnonfullscreenpagemode
\Hy@UseNameKey{Direction}\@pdfdirection
\Hy@UseNameKey{ViewArea}\@pdfviewarea
@@ -18255,7 +18263,7 @@
\expandafter\ifx\csname pdfescapestring\endcsname\relax
\let\Hy@escapestring\@firstofone
\def\Hy@escapeform#1{%
- \ifHy@escapeform
+ \ifHy@pdfescapeform
\def\Hy@escapestring##1{%
\noexpand\Hy@escapestring{\noexpand##1}%
}%
@@ -18285,7 +18293,7 @@
}%
\else
\def\Hy@escapeform#1{%
- \ifHy@escapeform
+ \ifHy@pdfescapeform
\let\Hy@escapestring\pdfescapestring
\else
\let\Hy@escapestring\@firstofone