From e1edadb492845c4b7206da9fb634dc4013826a45 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 5 Feb 2021 22:15:53 +0000 Subject: hyperref (5feb21) git-svn-id: svn://tug.org/texlive/trunk@57623 c570f23f-e606-0410-a88d-b1316a301751 --- .../texmf-dist/source/latex/hyperref/backref.dtx | 5 +- .../source/latex/hyperref/doc/manual.tex | 53 +- .../texmf-dist/source/latex/hyperref/hluatex.dtx | 38 +- .../texmf-dist/source/latex/hyperref/hyperref.dtx | 575 +++++---------------- .../texmf-dist/source/latex/hyperref/hyperref.ins | 7 +- .../texmf-dist/source/latex/hyperref/nameref.dtx | 5 +- 6 files changed, 160 insertions(+), 523 deletions(-) (limited to 'Master/texmf-dist/source/latex') diff --git a/Master/texmf-dist/source/latex/hyperref/backref.dtx b/Master/texmf-dist/source/latex/hyperref/backref.dtx index c0747046ad1..2687a448dea 100644 --- a/Master/texmf-dist/source/latex/hyperref/backref.dtx +++ b/Master/texmf-dist/source/latex/hyperref/backref.dtx @@ -3,7 +3,7 @@ %% Copyright (C) 1995-2000 David Carlisle, Sebastian Rahtz, Heiko Oberdiek %% 2001-2012 Heiko Oberdiek %% 2016-2019 Oberdiek Package Suport Group -%% 2019-2020 The LaTeX3 Project +%% 2019-2021 The LaTeX3 Project %% https://github.com/latex3/hyperref/issues %% %% This file is part of the `Hyperref Bundle'. @@ -32,12 +32,13 @@ %\ProvidesFile{backref.drv} % \fi % \ProvidesFile{backref.dtx} - [2020/01/14 v1.40 Bibliographical back referencing]% + [2021/02/04 v1.41 Bibliographical back referencing]% % % \CheckSum{768} % % \iffalse %<*driver> +\PassOptionsToPackage{numbered}{hypdoc} \documentclass{ltxdoc} \usepackage[numbered]{hypdoc} \usepackage{bmhydoc} diff --git a/Master/texmf-dist/source/latex/hyperref/doc/manual.tex b/Master/texmf-dist/source/latex/hyperref/doc/manual.tex index ded7aeb799a..ddd48e6ea14 100644 --- a/Master/texmf-dist/source/latex/hyperref/doc/manual.tex +++ b/Master/texmf-dist/source/latex/hyperref/doc/manual.tex @@ -177,7 +177,7 @@ } \makeatother \title{Hypertext marks in \hologo{LaTeX}: a manual for \xpackage{hyperref}} -\date{2020-05-15 v7.00e} +\date{2021-02-04 v7.00g} \begin{document} @@ -336,7 +336,7 @@ if it can be found, and this is a convenient place to set options on a site-wide basis. Note however that some options (for example \texttt{unicode}) can only be used as -packge options, and not in \verb|\hypersetup| as the option settings are processed +package options, and not in \verb|\hypersetup| as the option settings are processed as the package is read. As an example, the behavior of a particular file could be controlled by: @@ -559,9 +559,8 @@ plainpages & boolean & false & Forces page anchors to be named by the Arabic raiselinks & boolean & true & In the hypertex driver, the height of links is normally calculated by the driver as simply the base line of contained text; this options forces \verb|\special| commands to reflect the real height of the link (which could contain a graphic) \\ -breaklinks & boolean & false & Allows link text to break across lines; since this cannot be accommodated in PDF, it is - only set true by default if the pdftex driver is used. This makes links on multiple lines - into different PDF links to the same target. \\ +breaklinks & boolean & both & This option is in hyperref only used in the dviwindo driver, in all other cases it doesn't do anything sensible---it neither allows nor prevents links to be broken. The ocgx2 package +checks the state of the boolean.\\ pageanchor & boolean & true & Determines whether every page is given an implicit anchor at the top left corner. If this is turned off, \verb|\printindex| will not contain valid hyperlinks. \\ @@ -739,7 +738,7 @@ pdftitle & text & & Sets the document information Title field pdfauthor & text & & Sets the document information Author field \\ pdfsubject & text & & Sets the document information Subject field \\ pdfcreator & text & & Sets the document information Creator field \\ -addtopdfproducer & text & & Adds additional text to the document information Producer field \\ +addtopdfcreator & text & & Adds additional text to the document information Creator field \\ pdfkeywords & text & & Sets the document information Keywords field \\ pdftrapped & name & empty & Sets the document information Trapped entry. Possible values are \verb|True|, \verb|False| and \verb|Unknown|. An empty value means, the entry is not set.\\ @@ -808,7 +807,7 @@ pdfviewclip & name & empty & set /ViewClip of viewer preferences Possi \verb|BleedBox|, \verb|TrimBox|, and \verb|ArtBox|. The dafault according to the PDF~Refence is \verb|CropBox| \\ pdfwindowui & boolean & true & make PDF user interface elements visible \\ -unicode & boolean & false & Unicode encoded PDF strings +unicode & boolean & true & Unicode encoded PDF strings \end{longtable} Each link in Acrobat carries its own magnification level, which is set @@ -1017,7 +1016,7 @@ runcolor & \textit{filecolor} & color of `run' links\\ setpagesize & \textit{true} & set page size by special driver commands \\ tex4ht & & use \textsf{\TeX4ht} backend \\ textures & & use \textsf{Textures} backend \\ -unicode & \textit{false} & Unicode encoded pdf strings, by defaut true with \textsf{Xe\TeX} and \textsf{Lu\TeX} \\ +unicode & \textit{true} & Unicode encoded pdf strings, starting with version 2021-02-04 v7.00g set by default to true for all engines. \\ urlbordercolor & \textit{0 1 1} & color of border around URL links \\ urlcolor & \textit{magenta} & color of URL links \\ verbose & \textit{false} & be chatty \\ @@ -1392,6 +1391,19 @@ command names): } \end{verbatim} +\subsection{Pagelabels} +\begin{cmdsyntax} +\ci{thispdfpagelabel}\verb|{|\emph{page number format}\verb|}| +\end{cmdsyntax} + +This allows to change format of the page number shown in the tool bar of +a PDF viewer for a specific page, for example + +\verb+\thispdfpagelabel{Empty Page-\roman{page}}+ + +The command affects the page on which it is executed, so asynchronous page breaking +should be taken into account. It should be used in places where for example \verb+\thispagestyle+ can be use too. + \subsection{Utility macros} \label{hypercalcbp} @@ -1955,10 +1967,11 @@ sequence error would arise. \item \xoption{unicode} sets Unicode. It is encoded as UTF-16BE. Two bytes are used for most characters, surrogates need four bytes. \item \xoption{auto} PDFDocEncoding if the string does not contain characters - outside the encoding and Unicode otherwise. + outside the encoding (outside ascii if an unicode engine is used) + and Unicode otherwise. This option is normally no suited for the unicode engines. \end{itemize} - The luatex driver uses \xoption{unicode} by default. If another encoding should be forced, + All drivers use \xoption{unicode} by default now. If another encoding should be forced, it should be done in \verb|hypersetup|. \subsection{Color options/package hycolor} @@ -2293,7 +2306,7 @@ The way forms and their labels are laid out is determined by: These macros default to \#1 \#2 -What is actually shown in as the field is determined by: +What is actually shown in the field is determined by: \begin{cmdsyntax} \ci{MakeRadioField}\verb|{|\emph{width}\verb|}{|\emph{height}\verb|}| \end{cmdsyntax} @@ -2905,7 +2918,7 @@ For equations the following might work: \end{verbatim} - Also some babel versions can be problematic. For exmample, + Also some babel versions can be problematic. For example, 2005/05/21 v3.8g contains a patch for varioref that breaks the hyperref support for varioref. @@ -2978,21 +2991,21 @@ For equations the following might work: \subsubsection{XeTeX} - Default for the encoding of bookmarks is `pdfencoding=auto'. + Default for the encoding of bookmarks is \verb|pdfencoding=unicode|. That means the strings are always treated as unicode strings. - Only if the string restricts to the printable ASCII set, - it is written as ASCII string. The reason is that the - \verb|\special| does not support PDFDocEncoding. + If \verb|auto| or \verb|pdfdoc| is forced it applies only + if the string restricts to the printable ASCII set, + The reason is that the \verb|\special| does not support PDFDocEncoding. In older versions hyperref contained special conversion code from UTF-16BE back to UTF-8 in a number of places for - xetex to avoid the xdvipdfmx warning - + xetex to avoid the xdvipdfmx warning + \verb"Failed to convert input string to UTF16..." - + This is no longer needed with a current xdvipdfmx, so this code has been removed. \verb|\csname HyPsd@XeTeXBigCharstrue\endcsname| should no - longer be used. + longer be used. \section[Limitations]{Limitations% diff --git a/Master/texmf-dist/source/latex/hyperref/hluatex.dtx b/Master/texmf-dist/source/latex/hyperref/hluatex.dtx index 17d19b77ad5..b70a38a86a9 100644 --- a/Master/texmf-dist/source/latex/hyperref/hluatex.dtx +++ b/Master/texmf-dist/source/latex/hyperref/hluatex.dtx @@ -1,6 +1,6 @@ % \iffalse % Source File: hluatex.dtx -% 2020-05-15 v7.00e +% 2021-02-04 v7.00g % % Copyright % 2016-2019 Oberdiek Package Support Group @@ -31,7 +31,7 @@ % % \begin{macrocode} %<*luatex> -%% 2020-05-15 v7.00e +%% 2021-02-04 v7.00g %% force unicode encoding, see issue #101 %% code mostly copied from hxetex.def \HyPsd@LoadUnicode @@ -706,33 +706,10 @@ \Hy@RemoveDurPageAttr#1#4\END \fi } -\def\hyper@pagehidden{% - \ifHy@useHidKey - \expandafter - \Hy@RemoveHidPageAttr\the\pdfpageattr^^J/Hid{} \END - \ifHy@pdfpagehidden - \edef\@processme{% - \global\pdfpageattr{% - \the\pdfpageattr - ^^J/Hid true % SPACE - }% - }% - \@processme - \fi - \fi -} -\gdef\Hy@RemoveHidPageAttr#1^^J/Hid#2#3 #4\END{% - \ifx\\#2\\% - \global\pdfpageattr{#1}% - \else - \Hy@RemoveHidPageAttr#1#4\END - \fi -} \pdf@ifdraftmode{}{% \g@addto@macro\Hy@EveryPageHook{% \hyper@pagetransition \hyper@pageduration - \hyper@pagehidden }% } \Hy@AtBeginDocument{% @@ -811,17 +788,6 @@ \close@pdflink }% } -\def\Hy@FixNotFirstPage{% - \gdef\Hy@FixNotFirstPage{% - \setbox\AtBeginShipoutBox=\hbox{% - \copy\AtBeginShipoutBox - }% - }% -} -\ltx@ifpackagelater{atbegshi}{2011/10/05}{% -}{% - \AtBeginShipout{\Hy@FixNotFirstPage}% -} \def\@Gauge[#1]#2#3#4{% parameters, label, minimum, maximum \Hy@Message{Sorry, pdftex does not support FORM gauges}% } diff --git a/Master/texmf-dist/source/latex/hyperref/hyperref.dtx b/Master/texmf-dist/source/latex/hyperref/hyperref.dtx index aa618b1bd2b..3e84e320ab9 100644 --- a/Master/texmf-dist/source/latex/hyperref/hyperref.dtx +++ b/Master/texmf-dist/source/latex/hyperref/hyperref.dtx @@ -4,7 +4,7 @@ %% 1995-2001 Sebastian Rahtz, with portions written by David Carlisle and Heiko Oberdiek, %% 2001-2015 Heiko Oberdiek. %% 2016-2019 Oberdiek Package Support Group -%% 2019-2020 LaTeX3 Project +%% 2019-2021 LaTeX3 Project %% https://github.com/latex3/hyperref/issues %% %% This file is part of the `Hyperref Bundle'. @@ -50,7 +50,8 @@ %\ProvidesFile{puvnenc.def} %\ProvidesFile{puarenc.def} %\ProvidesFile{psdextra.def} -% [2020-05-15 v7.00e % +%\ProvidesFile{hyperref-langpatches.def} +% [2021-02-04 v7.00g % % Hypertext links for LaTeX] % Dummy hyperref (SR)] % Hyperref documentation driver file] @@ -89,7 +90,9 @@ % Hyperref: Additions to puenc.def for VnTeX] % Hyperref: Additions to puenc.def for Arabi] % Hyperref: Additions to PDF string support] +% Hyperref: patches for babel languages] %<*driver> +\PassOptionsToPackage{numbered}{hypdoc} \documentclass{ltxdoc} \usepackage{array,iftex} \iftutex @@ -586,28 +589,12 @@ % \begin{macrocode} \Hy@SetCatcodes % \end{macrocode} -% +% change 2020-07-24: require newer pdftexcmds and remove fallback code +% for version older than 2010. % \begin{macrocode} \RequirePackage{ltxcmds}[2010/11/12] \RequirePackage{iftex}[2019/10/24] -\RequirePackage{pdftexcmds}[2009/04/10] -\@ifpackagelater{pdftexcmds}{2010/11/04}{}{% - \ltx@IfUndefined{pdfdraftmode}{% - \let\pdf@ifdraftmode\ltx@secondoftwo - }{% - \ifpdf - \def\pdf@ifdraftmode{% - \ifnum\pdfdraftmode=\ltx@one - \expandafter\ltx@firstoftwo - \else - \expandafter\ltx@secondoftwo - \fi - }% - \else - \let\pdf@ifdraftmode\ltx@secondoftwo - \fi - }% -} +\RequirePackage{pdftexcmds}[2018/09/10] % \end{macrocode} % \begin{macrocode} \RequirePackage{infwarerr}[2010/04/08] @@ -733,18 +720,6 @@ \expandafter\ltx@firstoftwo \fi }% - \ltx@ifpackagelater{ltxcmds}{2010/09/11}{}{% - \begingroup - \lccode`0=`\{\relax - \lowercase{\endgroup - \def\ltx@leftbracechar{0}% - }% - \begingroup - \lccode`0=`\}\relax - \lowercase{\endgroup - \def\ltx@rightbracechar{0}% - }% - }% } % \end{macrocode} % @@ -853,7 +828,6 @@ \newif\ifHy@ocgcolorlinks \newif\ifHy@pageanchor \newif\ifHy@pdfpagelabels -\newif\ifHy@pdfpagehidden \newif\ifHy@pdfstring \newif\ifHy@plainpages \newif\ifHy@psize @@ -898,7 +872,6 @@ \Hy@pdfnewwindowfalse \Hy@pageanchortrue \Hy@pdfpagelabelstrue -\Hy@pdfpagehiddenfalse \Hy@pdfstringfalse \Hy@plainpagesfalse \Hy@raiselinksfalse @@ -907,7 +880,7 @@ \Hy@psdextrafalse \Hy@pdftoolbartrue \Hy@typexmlfalse -\Hy@unicodefalse +\Hy@unicodetrue \Hy@pdfusetitlefalse \Hy@verbosefalse \Hy@pdfwindowuitrue @@ -1332,8 +1305,8 @@ % % \paragraph{Environments.} % \begin{macrocode} - \def\begin#1{\csname#1\endcsname}% - \def\end#1{\csname end#1\endcsname}% + \def\begin##1{\csname##1\endcsname}% + \def\end##1{\csname end##1\endcsname}% % \end{macrocode} % % \paragraph{Package color.} @@ -1370,12 +1343,7 @@ \let\bbl@info\@gobble \csname HyPsd@babel@\language@group\endcsname }% - \HyPsd@GreekPatch \HyPsd@SpanishPatch - \HyPsd@RussianPatch -% \end{macrocode} -% \begin{macrocode} - \HyPsd@BabelPatch % \end{macrocode} % % \begin{macrocode} @@ -1902,7 +1870,7 @@ \ltx@IfUndefined{StringEncodingConvertTest}{% }{% \EdefUnescapeString\HyPsd@temp#1% - \ifxetex + \iftutex \let\HyPsd@UnescapedString\HyPsd@temp \StringEncodingConvertTest\HyPsd@temp\HyPsd@temp {utf16be}{ascii-print}{% @@ -1997,7 +1965,7 @@ \catcode62 \the\catcode62\relax % > \catcode64 \the\catcode64\relax % @ \catcode91 \the\catcode91\relax % [ - \catcode92 \the\catcode92\relax % \ + \catcode92 \the\catcode92\relax % (backslash) \catcode93 \the\catcode93\relax % ] \catcode123 \the\catcode123\relax % { \catcode124 \the\catcode124\relax % | @@ -2017,7 +1985,7 @@ \catcode61 12 % = \catcode62 12 % > \catcode91 12 % [ - \catcode92 0 % \ + \catcode92 0 % (backslash) \catcode93 12 % ] \catcode123 1 % { \catcode124 12 % | @@ -2063,6 +2031,9 @@ % \LaTeX's NFSS. Because of large memory requirements the % encoding file for Unicode support is only loaded, if option % |unicode| is specified as package option. +% change 2020-08-14: Starting with version +% v7.00f the file is always loaded and unicode is the +% default option. % \begin{macro}{\HyPsd@LoadUnicode} % Because the file |puenc.def| takes a lot of memory, the loading % is defined in the macro \cs{HyPsd@LoadUnicode} called by @@ -2238,10 +2209,17 @@ \x % \end{macrocode} % \end{macro} -% % \subsubsection{Babel languages} +% change 2020-10-10: moved language patches to its own file as a first step +% toward removing them completly. +% \begin{macrocode} +\newif\ifHy@next +\input{hyperref-langpatches.def} +% +%<*lang> +% \end{macrocode} % -% Since version 2008/03/16 v3.8j babel uses inside \cs{AtBeginDocument}: +% Since version 2008/03/16 v3.8j babel used inside \cs{AtBeginDocument}: %\begin{quote} %\begin{verbatim} %\pdfstringdefDisableCommands{% @@ -2249,122 +2227,21 @@ %} %\end{verbatim} %\end{quote} -% As consequence the shorthands are shown in the bookmarks, -% not its result. Therefore \cs{languageshorthands} is -% disabled before the user hook. If there is a need to -% use the command, then \cs{HyOrg@languageshorthands} -% can be used inside \cs{pdfstringdefDisableCommands}. -% \begin{macrocode} -\def\HyPsd@BabelPatch{% - \let\HyOrg@languageshorthands\languageshorthands - \let\languageshorthands\HyPsd@LanguageShorthands -} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname pdf@strcmp\endcsname\relax - \let\HyPsd@langshort@system\@empty - \def\HyPsd@LanguageShorthands#1{% - \expandafter\ifx\csname HyPsd@langshort@#1\endcsname - \HyPsd@langshort@system - \expandafter\@gobble - \else - \expandafter\@firstofone - \fi - {% - \HyOrg@languageshorthands{#1}% - }% - }% -\else - \def\HyPsd@LanguageShorthands#1{% - \ifnum\pdf@strcmp{#1}{system}=\z@ - \expandafter\@gobble - \else - \expandafter\@firstofone - \fi - {% - \HyOrg@languageshorthands{#1}% - }% - }% -\fi -\def\Hy@temp{% - \@ifpackageloaded{babel}{% - \@ifpackagelater{babel}{2008/03/16}{% - \let\Hy@temp\@empty - }{% - \def\HyPsd@BabelPatch{% - \let\HyOrg@languageshorthands\languageshorthands - }% - }% - }{}% -} -\Hy@temp -\expandafter\Hy@AtBeginDocument\expandafter{\Hy@temp} -% \end{macrocode} -% -% \begin{macrocode} -\newif\ifHy@next -% \end{macrocode} +% As consequence the shorthands were shown in the bookmarks, and required +% a hyperref patch. In version 3.48 babel removed this unneeded code +% and so the patch could be removed. % % Nothing to do for english. -% \begin{macrocode} -\ltx@IfUndefined{danish@sh@"@sel}{}{% - \def\HyPsd@babel@danish{% - \declare@shorthand{danish}{"|}{}% - \declare@shorthand{danish}{"~}{-}% - }% -} -\ltx@IfUndefined{dutch@sh@"@sel}{}{% - \def\HyPsd@babel@dutch{% - \declare@shorthand{dutch}{"|}{}% - \declare@shorthand{dutch}{"~}{-}% - }% -} -\ltx@IfUndefined{finnish@sh@"@sel}{}{% - \def\HyPsd@babel@finnish{% - \declare@shorthand{finnish}{"|}{}% - }% -} -\ltx@IfUndefined{french@sh@:@sel}{}{% - \def\HyPsd@babel@frenchb{% - \def\guill@spacing{ }% - }% -} -\ltx@IfUndefined{german@sh@"@sel}{}{% - \def\HyPsd@babel@german{% - \declare@shorthand{german}{"f}{f}% - \declare@shorthand{german}{"|}{}% - \declare@shorthand{german}{"~}{-}% - }% -} -\ltx@IfUndefined{macedonian@sh@"@sel}{}{% - \def\HyPsd@babel@macedonian{% - \declare@shorthand{macedonian}{"|}{}% - \declare@shorthand{macedonian}{"~}{-}% - }% -}{} -\ltx@IfUndefined{ngerman@sh@"@sel}{}{% - \def\HyPsd@babel@ngerman{% - \declare@shorthand{ngerman}{"|}{}% - \declare@shorthand{ngerman}{"~}{-}% - }% -} -\ltx@IfUndefined{portuges@sh@"@sel}{}{% - \def\HyPsd@babel@portuges{% - \declare@shorthand{portuges}{"|}{}% - }% -} -\ltx@IfUndefined{russian@sh@"@sel}{}{% - \def\HyPsd@babel@russian{% - \declare@shorthand{russian}{"|}{}% - \declare@shorthand{russian}{"~}{-}% - }% -} -\ltx@IfUndefined{slovene@sh@"@sel}{}{% - \def\HyPsd@babel@slovene{% - \declare@shorthand{slovene}{"|}{}% - }% -} -% \end{macrocode} -% Nested quoting environments are not supported (|<<|, |>>|). +% change 2020/07/16: removed patch for french. No longer needed. +% change 2020/07/21: removed patches for german, ngerman. Will be done by +% the language package. https://github.com/jspitz/babel-german/issues/4 +% change 2020/10/10: removed patches for danish, dutch, finnish, portugues, +% swedish, usorbian, slovene see https://github.com/latex3/babel/issues/84 +% change 2020/10/10: removed patch for macedonian, ukrainian; maintainers notified. +% change 2020/10/11: removed patch for russian, has been merged into babel-russian +% see https://github.com/kia999/babel-russian/pull/3 +% change 2021/02/04: removed patches for greek numerals, code is now in babel-greek. +% spanish: Nested quoting environments are not supported (|<<|, |>>|). % \begin{macrocode} \ltx@IfUndefined{spanish@sh@>@sel}{}{% \def\HyPsd@babel@spanish{% @@ -2376,164 +2253,6 @@ \declare@shorthand{spanish}{"?}{\textquestiondown}% }% } -\ltx@IfUndefined{swedish@sh@"@sel}{}{% - \def\HyPsd@babel@swedish{% - \declare@shorthand{swedish}{"|}{}% - \declare@shorthand{swedish}{"~}{-}% - }% -} -\ltx@IfUndefined{ukrainian@sh@"@sel}{}{% - \def\HyPsd@babel@ukrainian{% - \declare@shorthand{ukrainian}{"|}{}% - \declare@shorthand{ukrainian}{"~}{-}% - }% -} -\ltx@IfUndefined{usorbian@sh@"@sel}{}{% - \def\HyPsd@babel@usorbian{% - \declare@shorthand{usorbian}{"f}{f}% - \declare@shorthand{usorbian}{"|}{}% - }% -} -% \end{macrocode} -% \begin{macrocode} -\ltx@IfUndefined{greek@sh@\string~@sel}{% - \let\HyPsd@GreekPatch\@empty -}{% - \def\HyPsd@GreekPatch{% - \let\greeknumeral\HyPsd@greeknumeral - \let\Greeknumeral\HyPsd@Greeknumeral - }% -} -\def\HyPsd@greeknumeral#1{% - \HyPsd@GreekNum\@firstoftwo{#1}% -} -\def\HyPsd@Greeknumeral#1{% - \HyPsd@GreekNum\@secondoftwo{#1}% -} -\def\HyPsd@GreekNum#1#2{% - \ifHy@unicode - \ifnum#2<\@ne - \@arabic{#2}% - \else - \ifnum#2<1000000 % - \HyPsd@@GreekNum#1{#2}% - \else - \@arabic{#2}% - \fi - \fi - \else - \@arabic{#2}% - \fi -} -\def\HyPsd@@GreekNum#1#2{% - \ifnum#2<\@m - \ifnum#2<10 % - \expandafter\HyPsd@GreekNumI - \expandafter\@gobble\expandafter#1\number#2% - \else - \ifnum#2<100 % - \expandafter\HyPsd@GreekNumII - \expandafter\@gobble\expandafter#1\number#2% - \else - \expandafter\HyPsd@GreekNumIII - \expandafter\@gobble\expandafter#1\number#2% - \fi - \fi - \ifnum#2>\z@ - \textnumeralsigngreek - \fi - \else - \ifnum#2<\@M - \expandafter\HyPsd@GreekNumIV\expandafter#1\number#2% - \else - \ifnum#2<100000 % - \expandafter\HyPsd@GreekNumV\expandafter#1\number#2% - \else - \expandafter\HyPsd@GreekNumVI\expandafter#1\number#2% - \fi - \fi - \fi -} -\def\HyPsd@GreekNumI#1#2#3{% - #1{% - \ifnum#3>\z@ - \textnumeralsignlowergreek - \fi - }% - \expandafter#2% - \ifcase#3 % - {}{}% - \or\textalpha\textAlpha - \or\textbeta\textBeta - \or\textgamma\textGamma - \or\textdelta\textDelta - \or\textepsilon\textEpsilon - \or\textstigmagreek\textStigmagreek - \or\textzeta\textZeta - \or\texteta\textEta - \or\texttheta\textTheta - \else - {}{}% - \fi -} -\def\HyPsd@GreekNumII#1#2#3#4{% - #1{% - \ifnum#3>\z@ - \textnumeralsignlowergreek - \fi - }% - \expandafter#2% - \ifcase#3 % - {}{}% - \or\textiota\textIota - \or\textkappa\textKappa - \or\textlambda\textLambda - \or\textmu\textMu - \or\textnu\textNu - \or\textxi\textXi - \or\textomicron\textOmicron - \or\textpi\textPi - \or\textkoppagreek\textKoppagreek - \else - {}{}% - \fi - \HyPsd@GreekNumI#1#2#4% -} -\def\HyPsd@GreekNumIII#1#2#3#4#5{% - #1{% - \ifnum#3>\z@ - \textnumeralsignlowergreek - \fi - }% - \expandafter#2% - \ifcase#3 % - {}{}% - \or\textrho\textRho - \or\textsigma\textSigma - \or\texttau\textTau - \or\textupsilon\textUpsilon - \or\textphi\textPhi - \or\textchi\textChi - \or\textpsi\textPsi - \or\textomega\textOmega - \or\textsampigreek\textSampigreek - \else - {}{}% - \fi - \HyPsd@GreekNumII#1#2#4#5% -} -\def\HyPsd@GreekNumIV#1#2#3#4#5{% - \HyPsd@GreekNumI\@firstofone#1#2% - \HyPsd@@GreekNum#1{#3#4#5}% -} -\def\HyPsd@GreekNumV#1#2#3#4#5#6{% - \HyPsd@GreekNumII\@firstofone#1#2#3% - \HyPsd@@GreekNum#1{#4#5#6}% -} -\def\HyPsd@GreekNumVI#1#2#3#4#5#6#7{% - \HyPsd@GreekNumIII\@firstofone#1#2#3#4% - \HyPsd@@GreekNum#1{#5#6#7}% -} % \end{macrocode} % \begin{macrocode} \def\HyPsd@SpanishPatch{% @@ -2543,15 +2262,9 @@ }% } % \end{macrocode} -% Shorthand |"-| of `russianb.ldf' is not expandable, -% therefore it is disabled and replaced by |-|. % \begin{macrocode} -\def\HyPsd@RussianPatch{% - \ltx@IfUndefined{russian@sh@"@-@}{% - }{% - \@namedef{russian@sh@"@-@}{-}% - }% -} +% +%<*package> % \end{macrocode} % % \subsubsection{CJK patch} @@ -5169,7 +4882,11 @@ \def\HyPsd@pdfencoding@auto{auto} \def\HyPsd@pdfencoding@pdfdoc{pdfdoc} \def\HyPsd@pdfencoding@unicode{unicode} -\let\HyPsd@pdfencoding\Hy@pdfencoding@pdfdoc +% \end{macrocode} +% change 2020-08-14, use unicode by default: +% \begin{macrocode} +\let\HyPsd@pdfencoding\HyPsd@pdfencoding@unicode +\HyPsd@LoadUnicode \def\HyPsd@LoadStringEnc{% \RequirePackage{stringenc}[2009/12/15]% \let\HyPsd@LoadStringEnc\relax @@ -5613,13 +5330,13 @@ \def\pageautorefname{page}% } \def\HyLang@french{% - \def\equationautorefname{\'Equation}% + \def\equationautorefname{\'equation}% \def\footnoteautorefname{note}% \def\itemautorefname{item}% - \def\figureautorefname{Figure}% - \def\tableautorefname{Tableau}% - \def\partautorefname{Partie}% - \def\appendixautorefname{Appendice}% + \def\figureautorefname{figure}% + \def\tableautorefname{tableau}% + \def\partautorefname{partie}% + \def\appendixautorefname{annexe}% \def\chapterautorefname{chapitre}% \def\sectionautorefname{section}% \def\subsectionautorefname{sous-section}% @@ -5627,7 +5344,7 @@ \def\paragraphautorefname{paragraphe}% \def\subparagraphautorefname{sous-paragraphe}% \def\FancyVerbLineautorefname{ligne}% - \def\theoremautorefname{Th\'eor\`eme}% + \def\theoremautorefname{th\'eor\`eme}% \def\pageautorefname{page}% } \def\HyLang@german{% @@ -5958,6 +5675,42 @@ \def\theoremautorefname{Stelling}% \def\pageautorefname{pagina}% } +\def\HyLang@norsk{% + \def\equationautorefname{Ligning}% + \def\footnoteautorefname{fotnote}% + \def\itemautorefname{element}% + \def\figureautorefname{Figur}% + \def\tableautorefname{Tabell}% + \def\partautorefname{Del}% + \def\appendixautorefname{Tillegg}% + \def\chapterautorefname{kapittel}% + \def\sectionautorefname{seksjon}% + \def\subsectionautorefname{underseksjon}% + \def\subsubsectionautorefname{under-underseksjon}% + \def\paragraphautorefname{avsnitt}% + \def\subparagraphautorefname{underavsnitt}% + \def\FancyVerbLineautorefname{Linje}% + \def\theoremautorefname{Teorem}% + \def\pageautorefname{side}% +} +\def\HyLang@danish{% + \def\equationautorefname{Ligning}% + \def\footnoteautorefname{fodnote}% + \def\itemautorefname{element}% + \def\figureautorefname{Figur}% + \def\tableautorefname{Tabel}% + \def\partautorefname{Del}% + \def\appendixautorefname{Bilag}% + \def\chapterautorefname{kapitel}% + \def\sectionautorefname{sektion}% + \def\subsectionautorefname{under-sektion}% + \def\subsubsectionautorefname{under-under-sektion}% + \def\paragraphautorefname{afsnit}% + \def\subparagraphautorefname{underafsnit}% + \def\FancyVerbLineautorefname{linje}% + \def\theoremautorefname{Teorem}% + \def\pageautorefname{side}% +} % \end{macrocode} % % Instead of package babel's definition of \cmd{\addto} the @@ -6036,6 +5789,9 @@ \HyLang@DeclareLang{hungarian}{magyar}{} \HyLang@DeclareLang{greek}{greek}{} \HyLang@DeclareLang{dutch}{dutch}{} +\HyLang@DeclareLang{norsk}{norsk}{} +\HyLang@DeclareLang{norwegian}{norsk}{} +\HyLang@DeclareLang{danish}{danish}{} % \end{macrocode} % More work is needed in case of options |vietnamese| and |vietnam|. % \begin{macrocode} @@ -6297,21 +6053,6 @@ % \end{macrocode} % \end{macro} % -% The entry for the |/Hid| key in the page object is -% only necessary, if it is used and set to true for -% at least one time. If it is always false, then -% the |/Hid| key is not written to the pdf page -% object in order not to enlarge the pdf file. -% \begin{macrocode} -\newif\ifHy@useHidKey -\Hy@useHidKeyfalse -\define@key{Hyp}{pdfpagehidden}[true]{% - \Hy@boolkey{pdfpagehidden}{#1}% - \ifHy@pdfpagehidden - \global\Hy@useHidKeytrue - \fi -} -% \end{macrocode} % % The value of the |bordercolor| options are not processed % by the color package. Therefore the value consists of @@ -7194,15 +6935,10 @@ % so the NFSS2 definitions of PD1 or PU encoding is not % compatible. To fix this, \cmd{\texttilde} is defined % in babel manner. -% \begin{macrocode} -\Hy@nextfalse -\ltx@IfUndefined{spanish@sh@"@sel}{}{\Hy@nexttrue} -\ltx@IfUndefined{galician@sh@"@sel}{}{\Hy@nexttrue} -\ltx@IfUndefined{estonian@sh@"@sel}{}{\Hy@nexttrue} -\ifHy@next - \let\texttilde\~% -\fi -% \end{macrocode} +% +% change 2020-10-10: no trace of \cs{texttilde} can be found in the +% three languages spanish, galician and estonian so the patch has been removed +% as outdated. % % \begin{macrocode} \def\Hy@wrapper@babel#1#2{% @@ -10977,17 +10713,6 @@ % \end{macrocode} % \end{macro} % -% \begin{macrocode} -\@ifpackageloaded{fancyvrb}{% - \@ifpackagelater{fancyvrb}{1998/05/20}{}{% - \def\FV@StepLineNo{% - \FV@SetLineNo - \def\FV@StepLineNo{\H@refstepcounter{FancyVerbLine}}% - \FV@StepLineNo - }% - }% -}{} -% \end{macrocode} % % \section{Package lastpage support} % Package lastpage directly writes the |\newlabel| command to the @@ -14251,55 +13976,12 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}{\hyper@pagehidden} -% The boolean value of the key |/Hid| is stored in switch -% \cmd{\ifHy@pdfpagehidden}. -% First previous |/Hid| entries are removed, then the new -% one is appended, if the value is true (the PDF default -% is false). -% \begin{macrocode} -\def\hyper@pagehidden{% - \ifHy@useHidKey - \expandafter - \Hy@RemoveHidPageAttr\the\pdfpageattr^^J/Hid{} \END - \ifHy@pdfpagehidden - \edef\@processme{% - \global\pdfpageattr{% - \the\pdfpageattr - ^^J/Hid true % SPACE - }% - }% - \@processme - \fi - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\Hy@RemoveHidPageAttr} -% Macro \cmd{\Hy@RemoveHidPageAttr} removes a |/Hid| -% entry from \cmd{\pdfpageattr}. It is called with -% the end marker |^^J/Hid{} \END|. The trick is the -% empty group that does not appear in legal -% \cmd{\pdfpageattr} code. It appears in argument -% |#2| and shows, whether the parameter text -% catches a really |/Hid| object or the end marker. -% \begin{macrocode} -\gdef\Hy@RemoveHidPageAttr#1^^J/Hid#2#3 #4\END{% - \ifx\\#2\\% - \global\pdfpageattr{#1}% - \else - \Hy@RemoveHidPageAttr#1#4\END - \fi -} -% \end{macrocode} -% \end{macro} % % \begin{macrocode} \pdf@ifdraftmode{}{% \g@addto@macro\Hy@EveryPageHook{% \hyper@pagetransition \hyper@pageduration - \hyper@pagehidden }% } % \end{macrocode} @@ -14406,19 +14088,8 @@ % % Since version 2011/10/05 v1.16 of package `atbegshi' % \cs{AtBeginShipoutFirst} does not add a additional box layer. -% \begin{macrocode} -\def\Hy@FixNotFirstPage{% - \gdef\Hy@FixNotFirstPage{% - \setbox\AtBeginShipoutBox=\hbox{% - \copy\AtBeginShipoutBox - }% - }% -} -\ltx@ifpackagelater{atbegshi}{2011/10/05}{% -}{% - \AtBeginShipout{\Hy@FixNotFirstPage}% -} -% \end{macrocode} +% +% change 2020-10-01: the code has been removed as outdated. % % \begin{macrocode} % @@ -15396,22 +15067,10 @@ } % \end{macrocode} % \end{macro} -% \begin{macro}{\hyper@pagehidden} -% \begin{macrocode} -\def\hyper@pagehidden{% - \ifHy@useHidKey - \special{pdf:put @thispage % - <>% - }% - \fi -} -% \end{macrocode} -% \end{macro} % \begin{macrocode} \g@addto@macro\Hy@EveryPageBoxHook{% \hyper@pagetransition \hyper@pageduration - \hyper@pagehidden } % \end{macrocode} % \begin{macrocode} @@ -16054,15 +15713,9 @@ \fi \fi }% - \def\hyper@pagehidden{% - \ifHy@useHidKey - \special{!hidden\ifHy@pdfpagehidden +\else -\fi}% - \fi - }% \g@addto@macro\Hy@EveryPageBoxHook{% \hyper@pagetransition \hyper@pageduration - \hyper@pagehidden }% \fi % \end{macrocode} @@ -16456,26 +16109,10 @@ } % \end{macrocode} % \end{macro} -% \begin{macro}{\hyper@pagehidden} -% \begin{macrocode} -\def\hyper@pagehidden{% - \ifHy@useHidKey - \pdfmark{% - pdfmark=/PUT,% - Raw={% - \string{ThisPage\string}% - <>% - }% - }% - \fi -} -% \end{macrocode} -% \end{macro} % \begin{macrocode} \g@addto@macro\Hy@EveryPageBoxHook{% \hyper@pagetransition \hyper@pageduration - \hyper@pagehidden } % \end{macrocode} % \begin{macrocode} @@ -18037,6 +17674,7 @@ % % \section{Driver-specific form support} % \subsection{pdfmarks} +% change 2020-06-20: added /Euro to encoding % \begin{macrocode} %<*pdfmark> \long\def\@Form[#1]{% @@ -18060,6 +17698,7 @@ /quotedblbase/quotedblleft/quotedblright/quoteleft% /quoteright/quotesinglbase/trademark/fi/fl/Lslash/OE/Scaron% /Ydieresis/Zcaron/dotlessi/lslash/oe/scaron/zcaron % + 160/Euro % 164/currency % 166/brokenbar % 168/dieresis/copyright/ordfeminine % @@ -19146,6 +18785,7 @@ /quotedblbase/quotedblleft/quotedblright/quoteleft% /quoteright/quotesinglbase/trademark/fi/fl/Lslash/OE% /Scaron/Ydieresis/Zcaron/dotlessi/lslash/oe/scaron/zcaron % + 160/Euro % 164/currency % 166/brokenbar % 168/dieresis/copyright/ordfeminine % @@ -19624,6 +19264,7 @@ /quotedblbase/quotedblleft/quotedblright/quoteleft/quoteright% /quotesinglbase/trademark/fi/fl/Lslash/OE/Scaron/Ydieresis% /Zcaron/dotlessi/lslash/oe/scaron/zcaron % + 160/Euro % 164/currency % 166/brokenbar % 168/dieresis/copyright/ordfeminine % @@ -22668,8 +22309,10 @@ % \begin{macrocode} % U+0374 GREEK NUMERAL SIGN; numeralsigngreek \DeclareTextCommand{\textnumeralsigngreek}{PU}{\83\164}% U+0374 +\DeclareTextCommand{\textdexiakeraia}{PU}{\83\164}% U+0374 % U+0375 GREEK LOWER NUMERAL SIGN; numeralsignlowergreek \DeclareTextCommand{\textnumeralsignlowergreek}{PU}{\83\165}% U+0375 +\DeclareTextCommand{\textaristerikeraia}{PU}{\83\165}% U+0375 % U+0386 GREEK CAPITAL LETTER ALPHA WITH TONOS; Alphatonos \DeclareTextCompositeCommand{\'}{PU}{\textAlpha}{\83\206}% U+0386 % U+0388 GREEK CAPITAL LETTER EPSILON WITH TONOS; Epsilontonos @@ -22813,23 +22456,35 @@ \DeclareTextCompositeCommand{\'}{PU}{\textupsilon}{\83\315}% U+03CD % U+03CE GREEK SMALL LETTER OMEGA WITH TONOS; omegatonos \DeclareTextCompositeCommand{\'}{PU}{\textomega}{\83\316}% U+03CE +% U+03D8 GREEK LETTER ARCHAIC KOPPA; +\DeclareTextCommand{\textQoppa}{PU}{\83\330}% U+03D8 +% U+03D9 GREEK SMALL LETTER ARCHAIC KOPPA; +\DeclareTextCommand{\textqoppa}{PU}{\83\331}% U+03D9 % U+03DA GREEK LETTER STIGMA; Stigmagreek \DeclareTextCommand{\textStigmagreek}{PU}{\83\332}% U+03DA +\DeclareTextCommand{\textStigma}{PU}{\83\332}% U+03DA % U+03DB GREEK SMALL LETTER STIGMA \DeclareTextCommand{\textstigmagreek}{PU}{\83\333}% U+03DB +\DeclareTextCommand{\textstigma}{PU}{\83\333}% U+03DB % U+03DC GREEK LETTER DIGAMMA; Digammagreek \DeclareTextCommand{\textDigammagreek}{PU}{\83\334}% U+03DC +\DeclareTextCommand{\textDigamma}{PU}{\83\334}% U+03DC % U+03DD GREEK SMALL LETTER DIGAMMA \DeclareTextCommand{\textdigammagreek}{PU}{\83\335}% U+03DD +\DeclareTextCommand{\textdigamma}{PU}{\83\335}% U+03DD %* \textdigammagreek -> \digamma (AmS) % U+03DE GREEK LETTER KOPPA; Koppagreek +\DeclareTextCommand{\textKoppa}{PU}{\83\336}% U+03DE \DeclareTextCommand{\textKoppagreek}{PU}{\83\336}% U+03DE % U+03DF GREEK SMALL LETTER KOPPA +\DeclareTextCommand{\textkoppa}{PU}{\83\337}% U+03DF \DeclareTextCommand{\textkoppagreek}{PU}{\83\337}% U+03DF % U+03E0 GREEK LETTER SAMPI; Sampigreek \DeclareTextCommand{\textSampigreek}{PU}{\83\340}% U+03E0 +\DeclareTextCommand{\textSampi}{PU}{\83\340}% U+03E0 % U+03E1 GREEK SMALL LETTER SAMPI \DeclareTextCommand{\textsampigreek}{PU}{\83\341}% U+03E1 +\DeclareTextCommand{\textsampi}{PU}{\83\341}% U+03E1 % U+03F6 GREEK REVERSED LUNATE EPSILON SYMBOL; % \backepsilon (AmS) \DeclareTextCommand{\textbackepsilon}{PU}{\83\366}% U+03F6 diff --git a/Master/texmf-dist/source/latex/hyperref/hyperref.ins b/Master/texmf-dist/source/latex/hyperref/hyperref.ins index e313a869b79..d8cc5275b1a 100644 --- a/Master/texmf-dist/source/latex/hyperref/hyperref.ins +++ b/Master/texmf-dist/source/latex/hyperref/hyperref.ins @@ -7,7 +7,7 @@ %% 1995-2001 Sebastian Rahtz, with portions written by David Carlisle and Heiko Oberdiek %% 2001-2015 Heiko Oberdiek %% 2016-2019 Oberdiek Package Support Group -%% 2019-2020 LaTeX3 Project +%% 2019-2021 LaTeX3 Project %% https://github.com/latex3/hyperref/issues %% %% This file is part of the `Hyperref Bundle'. @@ -22,7 +22,7 @@ %% version 2005/12/01 or later. %% %% This work has the LPPL maintenance status `maintained'. -%% +%% %% The Current Maintainer of this work is Heiko Oberdiek. %% %% The list of all files belonging to the `Hyperref Bundle' is @@ -31,7 +31,7 @@ %% %% --------------- start of docstrip commands ------------------ %% -\def\filedate{2020/01/14} +\def\filedate{2021/02/04} \def\batchfile{hyperref.ins} \input docstrip @@ -87,6 +87,7 @@ \file{puarenc.def}{\from{hyperref.dtx}{puarenc}} \file{psdextra.def}{\from{hyperref.dtx}{psdextra}} \file{nohyperref.sty}{\from{hyperref.dtx}{nohyperref}} + \file{hyperref-langpatches.def}{\from{hyperref.dtx}{lang}} } \Msg{***************************************************************} diff --git a/Master/texmf-dist/source/latex/hyperref/nameref.dtx b/Master/texmf-dist/source/latex/hyperref/nameref.dtx index f6ea1c856a5..ec02e2eceb2 100644 --- a/Master/texmf-dist/source/latex/hyperref/nameref.dtx +++ b/Master/texmf-dist/source/latex/hyperref/nameref.dtx @@ -4,7 +4,7 @@ %% 2000 Sebastian Rahtz, Heiko Oberdiek %% 2001-2012 Heiko Oberdiek %% 2016-2019 Oberdiek Package Suport Group -%% 2019-2020 The LaTeX3 Project +%% 2019-2021 The LaTeX3 Project %% https://github.com/latex3/hyperref/issues %% %% This file is part of the `Hyperref Bundle'. @@ -33,11 +33,12 @@ %\ProvidesFile{nameref.drv} % \fi % \ProvidesFile{nameref.dtx} - [2019/09/16 v2.46 Cross-referencing by name of section]% + [2021-04-02 v2.47 Cross-referencing by name of section]% % % % \iffalse %<*driver> +\PassOptionsToPackage{numbered}{hypdoc} \documentclass{ltxdoc} \usepackage[numbered]{hypdoc} \usepackage{bmhydoc} -- cgit v1.2.3