diff options
author | Karl Berry <karl@freefriends.org> | 2023-02-25 22:06:25 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2023-02-25 22:06:25 +0000 |
commit | 87f7da60bedb9baa17b3cf395c4ca4ac8cc7f8f4 (patch) | |
tree | d85c4ebd9e71e59717141a7b01df709d1e10f8f9 /Master | |
parent | 3aa8d9864cfba44da31702861cb6a211fc1c8935 (diff) |
footnoterange (25feb23) (branch)
git-svn-id: svn://tug.org/texlive/branches/branch2022.final@66156 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r-- | Master/texmf-dist/doc/latex/footnoterange/README | 57 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/footnoterange/footnoterange-example.pdf | bin | 82896 -> 136751 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/footnoterange/footnoterange.pdf | bin | 320112 -> 335731 bytes | |||
-rw-r--r-- | Master/texmf-dist/source/latex/footnoterange/footnoterange.drv | 40 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/footnoterange/footnoterange.dtx | 692 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/footnoterange/footnoterange.ins | 48 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/footnoterange/footnoterange.sty | 129 |
7 files changed, 500 insertions, 466 deletions
diff --git a/Master/texmf-dist/doc/latex/footnoterange/README b/Master/texmf-dist/doc/latex/footnoterange/README index fb785c94288..b5dcac38f62 100644 --- a/Master/texmf-dist/doc/latex/footnoterange/README +++ b/Master/texmf-dist/doc/latex/footnoterange/README @@ -1,4 +1,4 @@ -README for footnoterange package, 2019/11/24, v1.0c +README for footnoterange package, 2023-02-25, v1.1a TABLE OF CONTENTS @@ -25,32 +25,38 @@ at that place) is given. Depending on loading of hyperref package and use of its hyperfootnotes-option the references are hyperlinked. (References to footnotes in the footnoterange* environment are never hyperlinked.) +The example additionally demonstrates how other footnote- +number-representations (\Roman, \roman, \Alph, \alph, +\fnsymbol) are possible, especially for more footnotes than +letters in the alphabet or symbols in fnsymbol. +Creation of smaller link boxes for footnotes is explained +in the documentation. This material is published under the LPPL 1.3c: This work may be distributed and/or modified under the conditions of the LaTeX Project -Public License, either version 1.3c of this license or (at your option) any -later version. This version of this license is in +Public License, either version 1.3c of this license or (at your option) +any later version. This version of this license is in https://www.latex-project.org/lppl/lppl-1-3c.txt and the latest version of this license is in https://www.latex-project.org/lppl.txt -and version 1.3c or later is part of all distributions of LaTeX version -2005/12/01 or later. +and version 1.3c or later is part of all distributions of +LaTeX version 2005-12-01 or later. 2 DOWNLOAD ========== -`footnoterange' is available on CTAN: -https://www.ctan.org/pkg/footnoterange +"footnoterange" is available on CTAN: +https://ctan.org/pkg/footnoterange Also a ZIP file is provided that contains the files: -the manual (footnoterange.pdf), +the manual (footnoterange.pdf), the example (footnoterange-example.tex), the compiled example (footnoterange-example.pdf), driver (footnoterange.drv), footnoterange.dtx, -installation file (footnoterange.ins), +installation file (footnoterange.ins), the style file (footnoterange.sty), and this README, already sorted in a TDS tree: -http://mirror.ctan.org/install/macros/latex/contrib/footnoterange.tds.zip +https://mirror.ctan.org/install/macros/latex/contrib/footnoterange.tds.zip 3 INSTALLATION @@ -58,7 +64,7 @@ http://mirror.ctan.org/install/macros/latex/contrib/footnoterange.tds.zip Installation with ZIP file in TDS format ---------------------------------------- -The ZIP file `footnoterange.tds.zip' contains the files +The ZIP file "footnoterange.tds.zip" contains the files sorted in a TDS tree. Thus you can directly unpack the ZIP file inside a TDS tree. See https://www.ctan.org/TDS-guidelines for an explanation @@ -75,13 +81,11 @@ Manual installation ------------------- a) Download the footnoterange files from CTAN. If necessary, unpack them. -b) Generate the package, driver, and example files: - tex footnoterange.ins - footnoterange.ins can also be created by +b) Generate the package and driver files: tex footnoterange.dtx -c) Install the file `footnoterange.sty' in your TDS tree: +c) Install the file "footnoterange.sty" in your TDS tree: cp footnoterange.sty TDS:tex/latex/footnoterange/ - Replace `TDS:' by the prefix of your TDS tree + Replace "TDS:" by the prefix of your TDS tree (texmf directory). d) Create the documentation, if necessary, e.g. pdflatex footnoterange.dtx @@ -89,13 +93,13 @@ d) Create the documentation, if necessary, e.g. pdflatex footnoterange.dtx makeindex -s gind.ist footnoterange.idx pdflatex footnoterange.dtx -e) Update the databases if necessary, e.g. for teTeX: - mktexlsr .../texmf +e) Update the databases if necessary, e.g. for TeXLive + texhash or mktexlsr. f) Create the footnoterange-example.pdf, if necessary, e.g. pdflatex footnoterange-example.tex pdflatex footnoterange-example.tex pdflatex footnoterange-example.tex -h) Copy the documentation files to +g) Copy the documentation files to "TDS:doc/latex/footnoterange/": README, footnoterange.pdf, footnoterange-example.tex, footnoterange-example.pdf. @@ -104,12 +108,7 @@ h) Copy the documentation files to 4 ADDITIONAL PACKAGES ===================== -footnoterange loads other packages: -* ltxcmds, https://www.ctan.org/pkg/ltxcmds -* letltxmacro, https://www.ctan.org/pkg/letltxmacro -which again load other packages -(see the result of the \listfiles command in the log-file - of the example). +footnoterange loads no other packages, but the example does. 5 PACKAGE COMPATIBILITY @@ -135,12 +134,12 @@ A bug report should contain: warning messages. * \errorcontextlines=\maxdimen can be added in the TeX code to get more information in TeX error messages. -* Minimal test file that shows the problem, but does not - contain any unnecessary packages and code. +* Minimal test file that shows the problem, + but does not contain any unnecessary packages and code. * Used drivers/programs. * Version information about used packages and programs. -* If you are using LaTeX, then add "\listfiles". Then - a list of version information is printed at the end +* If you are using LaTeX, then add "\listfiles" to the document. + Then a list of version information is printed at the end of the LaTeX run. * Please no other files than the minimal test file. The other files .log, .dvi, .ps, .pdf are seldom diff --git a/Master/texmf-dist/doc/latex/footnoterange/footnoterange-example.pdf b/Master/texmf-dist/doc/latex/footnoterange/footnoterange-example.pdf Binary files differindex 693449febb3..23446dd163e 100644 --- a/Master/texmf-dist/doc/latex/footnoterange/footnoterange-example.pdf +++ b/Master/texmf-dist/doc/latex/footnoterange/footnoterange-example.pdf diff --git a/Master/texmf-dist/doc/latex/footnoterange/footnoterange.pdf b/Master/texmf-dist/doc/latex/footnoterange/footnoterange.pdf Binary files differindex 6cc3317374d..a48f55e5b3a 100644 --- a/Master/texmf-dist/doc/latex/footnoterange/footnoterange.pdf +++ b/Master/texmf-dist/doc/latex/footnoterange/footnoterange.pdf diff --git a/Master/texmf-dist/source/latex/footnoterange/footnoterange.drv b/Master/texmf-dist/source/latex/footnoterange/footnoterange.drv index 8c3f2da2601..cd67ac23f76 100644 --- a/Master/texmf-dist/source/latex/footnoterange/footnoterange.drv +++ b/Master/texmf-dist/source/latex/footnoterange/footnoterange.drv @@ -9,18 +9,14 @@ %% This is a generated file. %% %% Project: footnoterange -%% Version: 2019/11/24 v1.0c +%% Version: 2023-02-25 v1.1a +%% Info: References to ranges of footnotes %% -%% Copyright (C) 2012 - 2019 by -%% H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de> +%% Copyright (C) 2012 - 2023 by +%% H.-Martin Muench <Martin dot Muench at Uni-Bonn dot de> %% Portions of code copyrighted by other people as marked; %% lines marked "FMi": code by Frank Mittelbach, thanks! %% -%% The usual disclaimer applies: -%% If it doesn't work right that's your problem. -%% (Nevertheless, please send an e-mail to the maintainer -%% when you find an error in this package.) -%% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either %% version 1.3c of this license or (at your option) any later @@ -29,7 +25,7 @@ %% and the latest version of this license is in %% https://www.latex-project.org/lppl.txt %% and version 1.3c or later is part of all distributions of -%% LaTeX version 2005/12/01 or later. +%% LaTeX version 2005-12-01 or later. %% %% This work has the LPPL maintenance status "maintained". %% @@ -42,23 +38,18 @@ %% footnoterange-example.tex, footnoterange-example.pdf. %% %% In memoriam -%% Claudia Simone Barth + 1996/01/30 -%% Tommy Muench + 2014/01/02 -%% Hans-Klaus Muench + 2014/08/24 +%% Claudia Simone Barth + 1996-01-30 +%% Tommy Muench + 2014-01-02 +%% Hans-Klaus Muench + 2014-08-24 %% -\NeedsTeXFormat{LaTeX2e}[2015/01/01] -\ProvidesFile{footnoterange.drv}[2019/11/24 v1.0c - References to ranges of footnotes (HMM)] -\documentclass{ltxdoc}[2015/03/26]% v2.0w -\usepackage{holtxdoc}[2012/03/21]% v0.24 -%% footnoterange may work with earlier versions of LaTeX2e and those -%% class and package, but this was not tested. -%% Please consider updating your LaTeX, class, and package -%% to the most recent version (if they are not already the most -%% recent version). +\NeedsTeXFormat{LaTeX2e}[2022-11-01] +\ProvidesFile{footnoterange.drv}% + [2023-02-25 v1.1a References to ranges of footnotes (HMM)] +\documentclass{ltxdoc}[2022/06/22]% v2.1i Standard LaTeX documentation class +\usepackage{holtxdoc}[2019/12/09]% v0.30 Private additional ltxdoc support (HO) \hypersetup{% pdfsubject={References to ranges of footnotes (HMM)},% - pdfkeywords={LaTeX, footnoterange, footnotes, footnote, reference, H.-Martin Muench},% + pdfkeywords={LaTeX, footnoterange, footnotes, footnote, reference},% pdfencoding=auto,% pdflang={en},% breaklinks=true,% @@ -74,8 +65,7 @@ pdfnewwindow=true% } \CodelineIndex -\hyphenation{printing docu-ment} -\gdef\unit#1{\mathord{\thinspace\mathrm{#1}}} +\hyphenation{docu-ment} \begin{document} \DocInput{footnoterange.dtx}% \end{document} diff --git a/Master/texmf-dist/source/latex/footnoterange/footnoterange.dtx b/Master/texmf-dist/source/latex/footnoterange/footnoterange.dtx index 307cb9862e5..a8a4b8d395e 100644 --- a/Master/texmf-dist/source/latex/footnoterange/footnoterange.dtx +++ b/Master/texmf-dist/source/latex/footnoterange/footnoterange.dtx @@ -1,10 +1,11 @@ % \iffalse meta-comment % % File: footnoterange.dtx -% Version: 2019/11/24 v1.0c +% Version: 2023-02-25 v1.1a +% Info: References to ranges of footnotes % -% Copyright (C) 2012 - 2019 by -% H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de> +% Copyright (C) 2012 - 2023 by +% H.-Martin Münch <Martin dot Muench at Uni-Bonn dot de> % Portions of code copyrighted by other people as marked; % lines marked "FMi": code by Frank Mittelbach, thanks! % @@ -16,11 +17,11 @@ % and the latest version of this license is in % https://www.latex-project.org/lppl.txt % and version 1.3c or later is part of all distributions of -% LaTeX version 2005/12/01 or later. +% LaTeX version 2005-12-01 or later. % % This work has the LPPL maintenance status "maintained". % -% The Current Maintainer of this work is H.-Martin Muench. +% The Current Maintainer of this work is H.-Martin Münch. % % This work consists of the main source file footnoterange.dtx, % the README, and the derived files @@ -28,47 +29,12 @@ % footnoterange.ins, footnoterange.drv, % footnoterange-example.tex, footnoterange-example.pdf. % -% 'footnoterange' is available on CTAN: +% "footnoterange" is available on CTAN: % https://www.ctan.org/pkg/footnoterange % % Also a TDS.ZIP file is provided that contains all the files % already sorted in a TDS tree: -% http://mirror.ctan.org/install/macros/latex/contrib/footnoterange.tds.zip -% -% Unpacking: -% (a) If footnoterange.ins is present: -% tex footnoterange.ins -% (b) Without footnoterange.ins: -% tex footnoterange.dtx -% (c) If you insist on using LaTeX -% latex \let\install=y\input{footnoterange.dtx} -% (quote the arguments according to the demands of your shell) -% -% Documentation: -% (a) If footnoterange.drv is present: -% (pdf)latex footnoterange.drv -% makeindex -s gind.ist footnoterange.idx -% (pdf)latex footnoterange.drv -% makeindex -s gind.ist footnoterange.idx -% (pdf)latex footnoterange.drv -% (b) Without footnoterange.drv: -% (pdf)latex footnoterange.dtx -% makeindex -s gind.ist footnoterange.idx -% (pdf)latex footnoterange.dtx -% makeindex -s gind.ist footnoterange.idx -% (pdf)latex footnoterange.dtx -% -% The class ltxdoc loads the configuration file ltxdoc.cfg -% if available. Here you can specify further options, e.g. -% use DIN A4 as paper format: -% \PassOptionsToClass{a4paper}{article} -% -% Installation: -% TDS:tex/latex/footnoterange/footnoterange.sty -% TDS:doc/latex/footnoterange/footnoterange.pdf -% TDS:doc/latex/footnoterange/footnoterange-example.tex -% TDS:doc/latex/footnoterange/footnoterange-example.pdf -% TDS:source/latex/footnoterange/footnoterange.dtx +% https://mirror.ctan.org/install/macros/latex/contrib/footnoterange.tds.zip % %<*ignore> \begingroup @@ -83,10 +49,10 @@ %</ignore> %<*install> \input docstrip.tex -\Msg{*********************************************************************************} -\Msg{* Installation} -\Msg{* Package: footnoterange 2019/11/24 v1.0c References to ranges of footnotes (HMM)} -\Msg{*********************************************************************************} +\Msg{**********************************************************************************} +\Msg{* Installation *} +\Msg{* Package: footnoterange 2023-02-25 v1.1a References to ranges of footnotes (HMM)*} +\Msg{**********************************************************************************} \keepsilent \askforoverwritefalse @@ -97,18 +63,14 @@ This is a generated file. Project: footnoterange -Version: 2019/11/24 v1.0c +Version: 2023-02-25 v1.1a +Info: References to ranges of footnotes -Copyright (C) 2012 - 2019 by - H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de> +Copyright (C) 2012 - 2023 by + H.-Martin Muench <Martin dot Muench at Uni-Bonn dot de> Portions of code copyrighted by other people as marked; lines marked "FMi": code by Frank Mittelbach, thanks! -The usual disclaimer applies: -If it doesn't work right that's your problem. -(Nevertheless, please send an e-mail to the maintainer - when you find an error in this package.) - This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c of this license or (at your option) any later @@ -117,7 +79,7 @@ version. This version of this license is in and the latest version of this license is in https://www.latex-project.org/lppl.txt and version 1.3c or later is part of all distributions of -LaTeX version 2005/12/01 or later. +LaTeX version 2005-12-01 or later. This work has the LPPL maintenance status "maintained". @@ -130,9 +92,9 @@ the README, and the derived files footnoterange-example.tex, footnoterange-example.pdf. In memoriam - Claudia Simone Barth + 1996/01/30 - Tommy Muench + 2014/01/02 - Hans-Klaus Muench + 2014/08/24 + Claudia Simone Barth + 1996-01-30 + Tommy Muench + 2014-01-02 + Hans-Klaus Muench + 2014-08-24 \endpreamble \let\MetaPrefix\DoubleperCent @@ -181,25 +143,20 @@ In memoriam % The next bit of code contains the documentation driver file for % \TeX , i.\,e., the file that will produce the documentation you % are currently reading. It will be extracted from this file by the -% \verb|docstrip| programme. That is, run \LaTeX{} on \verb|docstrip| -% and specify the \verb|driver| option when \verb|docstrip| +% \texttt{docstrip} programme. That is, run \LaTeX{} on \texttt{docstrip} +% and specify the \texttt{driver} option when \texttt{docstrip} % asks for options. % % \begin{macrocode} %<*driver> -\NeedsTeXFormat{LaTeX2e}[2015/01/01] -\ProvidesFile{footnoterange.drv}[2019/11/24 v1.0c - References to ranges of footnotes (HMM)] -\documentclass{ltxdoc}[2015/03/26]% v2.0w -\usepackage{holtxdoc}[2012/03/21]% v0.24 -%% footnoterange may work with earlier versions of LaTeX2e and those -%% class and package, but this was not tested. -%% Please consider updating your LaTeX, class, and package -%% to the most recent version (if they are not already the most -%% recent version). +\NeedsTeXFormat{LaTeX2e}[2022-11-01] +\ProvidesFile{footnoterange.drv}% + [2023-02-25 v1.1a References to ranges of footnotes (HMM)] +\documentclass{ltxdoc}[2022/06/22]% v2.1i Standard LaTeX documentation class +\usepackage{holtxdoc}[2019/12/09]% v0.30 Private additional ltxdoc support (HO) \hypersetup{% pdfsubject={References to ranges of footnotes (HMM)},% - pdfkeywords={LaTeX, footnoterange, footnotes, footnote, reference, H.-Martin Muench},% + pdfkeywords={LaTeX, footnoterange, footnotes, footnote, reference},% pdfencoding=auto,% pdflang={en},% breaklinks=true,% @@ -215,34 +172,14 @@ In memoriam pdfnewwindow=true% } \CodelineIndex -\hyphenation{printing docu-ment} -\gdef\unit#1{\mathord{\thinspace\mathrm{#1}}} +\hyphenation{docu-ment} \begin{document} \DocInput{footnoterange.dtx}% \end{document} %</driver> % \end{macrocode} -% % \fi % -% \CheckSum{321} -% -% \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{footnoterange.drv} % % \begingroup @@ -259,30 +196,35 @@ In memoriam % \edef\x{\noexpand\DoNotIndex{\@backslashchar9}}%^^A % }%^^A % \expandafter\endgroup\x -% \DoNotIndex{\,,\\} -% \DoNotIndex{\documentclass,\usepackage,\ProvidesPackage,\begin,\end} -% \DoNotIndex{\MessageBreak} -% \DoNotIndex{\NeedsTeXFormat,\DoNotIndex,\verb} -% \DoNotIndex{\def,\edef,\gdef,\global,\xdef} -% \DoNotIndex{\ifx,\listfiles,\mathord,\mathrm} -% \DoNotIndex{\bigskip,\space,\thinspace,\ldots} -% \DoNotIndex{\indent,\noindent,\newline,\linebreak,\pagebreak,\newpage} -% \DoNotIndex{\textbf,\textit,\textsf,\textsc,\texttt,\textquotedblleft,\textquotedblright} -% \DoNotIndex{\plainTeX,\TeX,\LaTeX,\pdfLaTeX} -% \DoNotIndex{\section,\pagenumbering,\smallskip} -% \DoNotIndex{\@ifpackageloaded} -% \DoNotIndex{\arabic, \Alph, \alph, \alphalph, \Roman, \roman, \fnsymbol} +% \DoNotIndex{\,,\@currentHref,\@fnsymbol,\@ifl@t@r,\@mpfn,\@textsuperscript} +% \DoNotIndex{\addtocounter,\aftergroup,\Alph,\alph,\AlphAlph,\alphalph,\arabic} +% \DoNotIndex{\begin,\bigskip,\documentclass,\empty,\end,\fmtversion} +% \DoNotIndex{\footnote,\footnotemark,\footnotetext,\hbox,\href} +% \DoNotIndex{\Hy@footnote@currentHref,\Hy@saved@currentHref,\hyper@makecurrent} +% \DoNotIndex{\hyperref,\IfFormatAtLeastTF,\ifhmode,\ifHy@hyperfootnotes} +% \DoNotIndex{\IfPackageLoadedTF,\ifx,\ignorespaces,\item,\label,\listfiles} +% \DoNotIndex{\makeatletter,\makeatother,\medskip,\MessageBreak,\NeedsTeXFormat} +% \DoNotIndex{\newalphalph,\newcommand,\NewCommandCopy,\newcounter,\newenvironment} +% \DoNotIndex{\newline,\newpage,\noindent,\nolinebreak,\normalfont} +% \DoNotIndex{\PackageError,\PackageInfo,\PackageWarning,\pagebreak,\pagenumbering} +% \DoNotIndex{\par,\phantomsection,\protect,\protected@edef,\ProvidesPackage} +% \DoNotIndex{\ref,\renewcommand,\RenewCommandCopy,\Roman,\roman,\section,\setcounter} +% \DoNotIndex{\space,\spacefactor,\stepcounter,\textquotedblleft,\textquotedblright} +% \DoNotIndex{\textsf,\texttt,\the,\unskip,\url,\usepackage,\value,\verb} +% \DoNotIndex{\thefootnote,\fnr@aftergroup,\fnr@arabic,\fnr@first,\fnr@formated} +% \DoNotIndex{\fnr@mopt,\fnr@opt,\fnr@origfn,\fnr@origfnmark} +% \DoNotIndex{\fnrfnsymbol,\fnsymbol,\fnsymbolfnr,\fnsymbolfnri,\fnsymbolfnrx} % % \title{The \xpackage{footnoterange} package} -% \date{2019/11/24 v1.0c} -% \author{H.-Martin M\"{u}nch\\\xemail{Martin.Muench at Uni-Bonn.de}} +% \date{2023-02-25 v1.1a} +% \author{H.-Martin Münch\\\xemail{Martin.Muench at Uni-Bonn.de}} % % \maketitle % % \begin{abstract} % \noindent This package provides the environments |footnoterange| and % |footnoterange*|. Multiple footnotes inside these environments -% are not referenced as e.\,g. +% are not referenced as e.\,g. % % \makeatletter% % \hbox{\textquotedblleft \@textsuperscript {\normalfont 1 2 3}\textquotedblright} % but as \hbox{\textquotedblleft \@textsuperscript {\normalfont 1--3}\textquotedblright ,\ } @@ -291,46 +233,44 @@ In memoriam % Depending on loading of \xpackage{hyperref} and use of its |hyperfootnotes|-option % the references are hyperlinked. (References to footnotes in |footnoterange*| % are never hyperlinked.) +% The example additionally demonstrates how other footnote-number-representations +% (|\Roman|, |\roman|, |\Alph|, |\alph|, |\fnsymbol|) are possible, especially for +% more footnotes than letters in the alphabet or symbols in |fnsymbol|. +% Creation of smaller link boxes for footnotes is explained in the documentation. % \end{abstract} % % \bigskip % % \noindent Disclaimer for web links: The author is not responsible for any contents -% referred to in this work unless if having full knowledge of illegal contents. -% If any damage occurs by the use of information presented there, only the -% author of the respective pages might be liable, not the one who has referred -% to these pages. -% -% \noindent Save per page about $200\unit{ml}$ water, -% $2\unit{g}$ CO$_{2}$ and $2\unit{g}$ wood: -% Therefore please print only if this is really necessary. -% -% \medskip +% referred to in this work unless having full knowledge of illegal contents. +% If any damage occurs by the use of information presented there, +% only the author of the respective pages might be liable, +% not the one who has referred to those pages. % % \tableofcontents % -%\newpage -% % \section{Introduction} -% \indent This \LaTeXe{} package provides the environments |footnoterange| and\newline +% This \LaTeX{} package provides the environments |footnoterange| and\newline % |footnoterange*|. Multiple footnotes inside these environments are not referenced -% as e.\,g. +% as e.\,g. % % \makeatletter% % \hbox{\textquotedblleft \@textsuperscript {\normalfont 1 2 3}\textquotedblright} % but as \hbox{\textquotedblleft \@textsuperscript {\normalfont 1--3}\textquotedblright ,\ } % \makeatother% -% i.\,e. the range (from first to last -% referred footnote at that place) is given. Depending on loading of -% \xpackage{hyperref} and use of its |hyperfootnotes|-option the references are -% hyperlinked. References to footnotes in |footnoterange*| are never hyperlinked.\newline +% i.\,e. the range (from first to last referred footnote at that place) is given. +% Depending on loading of \xpackage{hyperref} and use of its |hyperfootnotes|-option +% the references are hyperlinked. References to footnotes in |footnoterange*| +% are never hyperlinked.\newline % |\footnotemark\footnotetext| instead of |\footnote| is not supported inside -% |footnoterange| and |footnoterange*| environments. -% -% \bigskip +% |footnoterange| and |footnoterange*| environments.\newline +% The example additionally demonstrates how other footnote-number-representations +% (|\Roman|, |\roman|, |\Alph|, |\alph|, |\fnsymbol|) are possible, especially for +% more footnotes than letters in the alphabet or symbols in |fnsymbol|.\newline +% Creation of smaller link boxes for footnotes is explained in the following +% section Usage. % % \section{Usage} -% -% \indent Just load the package placing +% Just load the package placing % \begin{quote} % |\usepackage{footnoterange}| % \end{quote} @@ -377,20 +317,42 @@ In memoriam % into account: The number of footnote references is restricted (for % example with \verb|\Alph| only references A to Z are possible), which % can be fixed e.\,g. with the \url{https://ctan.org/pkg/alphalph} package -% (but not automatically), and references to footnote-symbol-ranges (\verb|\fnsymbol|) -% are probably not very clear. +% (see footnoterange-example), and references to footnote-symbol-ranges +% (\verb|\fnsymbol|) might not be very clear. +% \pagebreak +% +% The link boxes for the footnotes span the line-height. If smaller boxes +% are wanted, this can be accomplished by: +% \begin{description} +% \item[-] making a copy of \texttt{footnoterange.sty} +% \item[-] renaming the copy to \texttt{footnoterangesb.sty} +% \item[-] in |\newcommand{\fnr@ifhyperfnrA}{...}| and +% |\newcommand{\fnr@ifhyperfnrN}{...}| removing the +% |\hyperref[fnr:\arabic\@mpfn]| and both |\hyperref[fnr:\fnr@first]| +% (while \emph{not} removing their arguments!) +% \item[-] replacing the first |\ref*| in |\newcommand{\fnr@ifhyperfnrA}{...}| and +% the first and second |\ref*| in |\newcommand{\fnr@ifhyperfnrN}{...}| +% by |\ref| (and saving the \texttt{.sty} file) +% \item[-] moving the \texttt{footnoterangesb.sty} into your private \texttt{texmf-local} tree +% \item[-] refreshing the file file name databases, for example, \TeX\,Live\ users +% run \verb|texhash| or \verb|mktexlsr|. +% \item[-] using |\usepackage{footnoterangesb}| instead of |\usepackage{footnoterange}| +% in your document. +% \item[-] Regular footnote(links) are \emph{not} changed by this! +% \end{description} % % \subsection*{Options} % \indent The \xpackage{footnoterange} package takes no options. % % \section{Alternatives\label{sec:Alternatives}} +% The \xpackage{fnpct} (\url{https://ctan.org/pkg/fnpct}), 2021-01-21, v1.0, +% and newer \emph{supports ranges for multiple footnotes natively}. +% For older versions the setting of multiple footnotes (|\multfootnote|), +% suppressing of footnotemarks \hbox{(|*|),} +% and customizing the multi-footnote-separator \hbox{(|\setfnpct{mult-fn-sep={| +% \emph{something} |}}|)} can be combined with stepping of the footnote-counter +% to give a footnoterange: % -% The \xpackage{fnpct} (\url{https://www.ctan.org/pkg/fnpct}) package allows to set -% multiple footnotes (|\multfootnote|), suppress a footnotemark \hbox{(|*|),} -% and customize the multi-footnote-separator \hbox{(|\setfnpct{mult-fn-sep={| -% \emph{something} |}}|)}. -% Combining these with stepping of the footnotecounter gives a footnoterange: -% % \begin{verbatim} % \documentclass{article} % \usepackage{hyperref} @@ -408,19 +370,17 @@ In memoriam % \makeatother% % \end{document} % \end{verbatim} -% +% % \noindent If you programmed or found another alternative, which is available at % \url{https://www.CTAN.org/}, please send an e-mail to me with the name, % location at CTAN, and a short notice, and I will probably list it here. % % \section{Example} -% % \begin{macrocode} %<*example> -\documentclass[british]{article}[2014/09/29]% v1.4h -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\usepackage[% - extension=pdf,% +\NeedsTeXFormat{LaTeX2e}[2022-11-01] +\documentclass[british]{article}[2022/07/02]% v1.4n Standard LaTeX document class +\usepackage[extension=pdf,% plainpages=false,% pdfpagelabels=true,% hyperindex=false,% @@ -428,36 +388,39 @@ In memoriam pdftitle={footnoterange package example},% pdfauthor={H.-Martin Muench},% pdfsubject={Example for the footnoterange package},% - pdfkeywords={LaTeX, footnoterange, H.-Martin Muench},% + pdfkeywords={LaTeX, footnoterange},% pdfview=FitH,% pdfstartview=FitH,% pdfpagelayout=OneColumn,% hyperfootnotes=true% -]{hyperref}[2012/11/06]% v6.83m +]{hyperref}[2023-02-07]% v7.00v Hypertext links for LaTeX + +\usepackage{footnoterange}[2023-02-25]% v1.1a References to ranges of footnotes (HMM) -\usepackage{footnoterange}[2019/11/24]% v1.0c + % For footnotes labelled after Z, z, and ¶ (Pilcrow character): +\usepackage{alphalph}[2019/12/09]% v2.6 Convert numbers to letters (HO) +\makeatletter +\NewCommandCopy{\fnrfnsymbol}{\@fnsymbol} +\makeatother +\newalphalph{\fnsymbolfnr}[mult]{\fnrfnsymbol}{5} -\gdef\unit#1{\mathord{\thinspace\mathrm{#1}}}% \listfiles \begin{document} \pagenumbering{arabic} \section*{Example for footnoterange} This example demonstrates the use of package\newline -\textsf{footnoterange}, v1.0c as of 2019/11/24 (HMM).\newline +\textsf{footnoterange}, v1.1a as of 2023-02-25, +references to ranges of footnotes (HMM).\newline The package does not use options.\newline \verb|footnoterange-example.pdf| can be created by\newline \verb|pdflatex footnoterange-example.tex|,\newline and \verb|footnoterange-example.tex| can be created by\newline \verb|tex footnoterange.dtx|.\newline \verb|footnoterange.dtx| is at -\url{https://www.ctan.org/pkg/footnoterange}.\newline +\url{https://ctan.org/pkg/footnoterange}.\newline -\noindent For more details please see the documentation!\newline - -\noindent Save per page about $200\unit{ml}$ water, -$2\unit{g}$ CO$_{2}$ and $2\unit{g}$ wood:\newline -Therefore please print only if this is really necessary.\newline +\noindent For more details please see the documentation! This\footnote{Lorem} text bears a multiplicity of footnotes. Because the \verb|hyperref| package is used with option @@ -472,35 +435,36 @@ Because the \verb|hyperref| package is used with option \footnote{elit,}% \footnote{sed}% \end{footnoterange} -are hyperlinked.\footnote{do eiusmod\ldots} Using +are hyperlinked.\footnote{do eiusmod tempor incididunt % +ut labore et dolore magna aliqua.} Using \verb|hyperfootnotes=false| or not using \verb|hyperref| will remove the hyperlinks to the footnotes.\medskip This text also bears a multiplicity of footnotes, but due to the use of the starred \begin{footnoterange*} -\footnote{Ut purus elit,}% -\footnote{vestibulum ut,}% -\footnote{placerat ac,}% -\footnote{adipiscing vitae,}% -\footnote{felis.}% -\footnote{Curabitur}% -\footnote{dictum}% -\footnote{gravida}% +\footnote{Ut enim}% +\footnote{ad minim veniam,}% +\footnote{quis}% +\footnote{nostrud}% +\footnote{exercitation}% +\footnote{ullamco}% +\footnote{laboris}% +\footnote{nisi}% \end{footnoterange*} form of the environment they are not -hyperlinked.\footnote{mauris\ldots}\medskip - -The use of the optional parameter for footnotes -\begin{footnoterange} -\footnote[101]{Nam arcu libero,}% -\footnote[102]{nonummy eget,}% -\footnote[103]{consectetuer id,}% -\footnote[104]{vulputate a,}% -\footnote[105]{magna.} -\end{footnoterange} -is also possible, but should be used consistently. +hyperlinked.\footnote{ut aliquip ex ea commodo consequat.} +\medskip +The use of the optional parameter for footnotes% +\begin{footnoterange}% +\footnote[101]{Duis}% +\footnote[102]{aute}% +\footnote[103]{irure}% +\footnote[104]{dolor}% +\footnote[105]{in reprehenderit}% +\end{footnoterange}% +{} is also possible, but should be used consistently. \pagebreak When there is only one footnote @@ -509,17 +473,119 @@ When there is only one footnote \end{footnoterange} in the \verb|footnoterange| environment, only one footnotemark is used and an info is written into the -\verb|log|-file.\medskip +\verb|log|-file. + +\bigskip The usage of other footnote-number-representations -(e.\,g.~\verb|\Roman|, \verb|\roman|, \verb|\Alph|, \verb|\alph|, -\verb|\fnsymbol|) is also possible, but two things must be taken -into account: The number of footnote references is restricted -(for example with \verb|\Alph| only references A to Z are possible), -which can be fixed e.\,g. with the -\href{https://www.ctan.org/pkg/alphalph}{\texttt{alphalph} package}, -and references to footnote-symbol-ranges (\verb|\fnsymbol|) -are probably not very clear. +(e.\,g.~\verb|\Roman|% +\renewcommand{\thefootnote}{\Roman{footnote}}% +\begin{footnoterange}% +\footnote{Nam arcu libero,}% +\footnote{nonummy eget,}% +\footnote{consectetuer id,}% +\footnote{vulputate a,}% +\footnote{magna.}% +\end{footnoterange}% +, \verb|\roman|% +\renewcommand{\thefootnote}{\roman{footnote}}% +\begin{footnoterange}% +\footnote{in voluptate}% +\footnote{velit}% +\footnote{esse}% +\footnote{cillum}% +\footnote{dolore}% +\end{footnoterange}% +% \end{macrocode} +% \pagebreak +% \begin{macrocode} +, \verb|\Alph|% +\renewcommand*{\thefootnote}{\AlphAlph{\value{footnote}}}% +\begin{footnoterange}% +\footnote{eu fugiat}% +\footnote{nulla}% +\footnote{pariatur.}% +\footnote{Excepteur}% +\footnote{sint}% +\end{footnoterange}% +, \verb|\alph|% +\renewcommand{\thefootnote}{\alphalph{\value{footnote}}}% +\begin{footnoterange}% +\footnote{occaecat}% +\footnote{cupidatat}% +\footnote{non proident,}% +\footnote{sunt}% +\footnote{in culpa}% +\end{footnoterange}% +, \verb|\fnsymbol|% +\renewcommand{\thefootnote}{\protect\fnsymbolfnr{\arabic{footnote}}}% +\begin{footnoterange}% +\footnote{qui officia}% +\footnote{deserunt}% +\footnote{mollit}% +\footnote{anim}% +\footnote{id est laborum.}% +\end{footnoterange}% +) is also possible, but two things must be taken into account: + +\begin{enumerate} + \item By default the number of footnote references is restricted + (for example with \verb|\Alph| only references A to Z are possible), + which needs to be fixed. In this example the + \href{https://ctan.org/pkg/alphalph}{\texttt{alphalph} package} + is used for this purpose. + \item References to footnote-symbol-ranges (\verb|\fnsymbol|) + might not be very clear. For example, if the symbols % + \newcounter{fnrxcnt}% + \setcounter{fnrxcnt}{1}% + \fnsymbolfnr{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 1 + \fnsymbolfnr{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 2 + \fnsymbolfnr{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 3 + \fnsymbolfnr{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 4 + \fnsymbolfnr{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 5 + \fnsymbolfnr{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 6 + \fnsymbolfnr{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 7 + {} are used, % + \setcounter{fnrxcnt}{2}\fnsymbolfnr{\value{fnrxcnt}}--% + \setcounter{fnrxcnt}{7}\fnsymbolfnr{\value{fnrxcnt}} % + means second to seventh footnote.\par% + But if % + \newalphalph{\fnsymbolfnri}[mult]{\fnrfnsymbol}{6}% + \setcounter{fnrxcnt}{1}% + \fnsymbolfnri{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 1 + \fnsymbolfnri{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 2 + \fnsymbolfnri{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 3 + \fnsymbolfnri{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 4 + \fnsymbolfnri{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 5 + \fnsymbolfnri{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 6 + \fnsymbolfnri{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 7 + \fnsymbolfnri{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 8 + {} are used, % + \setcounter{fnrxcnt}{2}\fnsymbolfnri{\value{fnrxcnt}}--% + \setcounter{fnrxcnt}{8}\fnsymbolfnri{\value{fnrxcnt}} % + means second to eighth footnote.\par% + And if % + \newalphalph{\fnsymbolfnrx}[mult]{\fnrfnsymbol}{3}% + \setcounter{fnrxcnt}{1}% + \fnsymbolfnrx{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 1 + \fnsymbolfnrx{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 2 + \fnsymbolfnrx{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 3 + \fnsymbolfnrx{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 4 + \fnsymbolfnrx{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 5 + \fnsymbolfnrx{\value{fnrxcnt}}\stepcounter{fnrxcnt}% 6 + {} are used, % + \setcounter{fnrxcnt}{2}\fnsymbolfnrx{\value{fnrxcnt}}--% + \setcounter{fnrxcnt}{5}\fnsymbolfnrx{\value{fnrxcnt}} % + means second to fifth footnote.% +\end{enumerate} + +\newpage + +The \texttt{Lorem ipsum} text for the footnotes was taken from +\url{https://www.lipsum.com/}, where as original source +sections~1.10.32 and 1.10.33 of +\textquotedblleft de Finibus Bonorum et Malorum\textquotedblright{} +by Cicero, written in 45~BCE, is given. \end{document} %</example> @@ -528,7 +594,6 @@ are probably not very clear. % \StopEventually{} % % \section{The implementation} -% % We start off by checking that we are loading into \LaTeXe{} and % announcing the name and version of this package. % @@ -537,23 +602,23 @@ are probably not very clear. % \end{macrocode} % % \begin{macrocode} -\NeedsTeXFormat{LaTeX2e}[2011/06/27] -\ProvidesPackage{footnoterange}[2019/11/24 v1.0c - References to ranges of footnotes (HMM)] -% \end{macrocode} -% -% A short description of the \xpackage{footnoterange} package: -% -% \begin{macrocode} -%% Provides the footnoterange and footnoterange* environments to -%% refer to ranges of footnotes. -% \end{macrocode} -% -% We need the \xpackage{ltxcmds} package: -% -% \begin{macrocode} -\RequirePackage{ltxcmds}[2011/11/09]% v1.22; for "\ltx@ifpackageloaded" -\RequirePackage{letltxmacro}[2010/09/02]% v1.4; for "\GlobalLetLtxMacro" +\NeedsTeXFormat{LaTeX2e}[2022-11-01] +\ProvidesPackage{footnoterange}[2023-02-25 v1.1a % + References to ranges of footnotes (HMM)] +%% Provides the footnoterange and footnoterange* environments +%% to refer to ranges of footnotes. + +\@ifl@t@r\fmtversion{2022/11/01}{% would have understood + % \IfFormatAtLeastTF{2022-11-01}{<true code>}{<false code>} + }{\PackageError{footnoterange}{% + Newer LaTeX format needed or older footnoterange package% + }{Needed LaTeX format version: 2022-11-01 or newer.\MessageBreak% + Found\space\space LaTeX format version: \fmtversion.\MessageBreak% + Either update your TeX distribution\MessageBreak% + or use an archived version of footnoterange\MessageBreak% + (see section History in the documentation).\MessageBreak% + } + } % \end{macrocode} % @@ -562,7 +627,6 @@ are probably not very clear. % relates the |\else| and/or |\fi| (wrongly) to other |\if|s or groups. % Therefore the |\ifHy@hyperfootnotes| are placed in their own commands, % which are not looked at when the \xpackage{hyperref} package has not been loaded. -% % \pagebreak % % \begin{macro}{\fnr@ifhyperrfn} @@ -596,7 +660,7 @@ are probably not very clear. \nolinebreak% % no \footnotemark here \addtocounter\@mpfn{+1}% - \ltx@ifpackageloaded{hyperref}{\fnr@ifhyperrfn}{\relax}% + \IfPackageLoadedTF{hyperref}{\fnr@ifhyperrfn}{\relax}% % \end{macrocode} % % See the explanation before the declaration of the |\fnr@ifhyperrfn| command! @@ -611,39 +675,31 @@ are probably not very clear. % and it gets a label. % % \begin{macrocode} - \ifx\fnr@opt\empty% + \ifx\fnr@opt\empty\relax% \footnotetext{\label{fnr:\fnr@arabic}#2}% \else% \PackageWarning{footnoterange}{% Custom footnote-numbers used in a footnoterange\MessageBreak% environment: Footnote with natural number\MessageBreak% \ifx\fnr@formated\fnr@arabic% - \fnr@arabic\space% + \fnr@arabic% \else% \space\fnr@arabic\space (\fnr@formated )% \fi% \MessageBreak% was renumbered to \fnr@opt\MessageBreak% }% - \ltx@ifpackageloaded{hyperref}{% hyperref loaded - \footnotetext[#1]{\phantomsection\label{fnr:\fnr@arabic}#2}% - }{% hyperref not loaded - \footnotetext[#1]{\label{fnr:\fnr@arabic}#2}% - }% + \IfPackageLoadedTF{hyperref}{% + \footnotetext[#1]{\phantomsection\label{fnr:\fnr@arabic}#2}% + }{\footnotetext[#1]{\label{fnr:\fnr@arabic}#2}% + }% \fi% } % \end{macrocode} % \end{macro} -% -% \begin{macrocode} - -% \end{macrocode} -% \pagebreak -% -% |\ifHy@hyperfootnotes| \textquotedblleft encapsulation\textquotedblright{} again: -% % \begin{macro}{\fnr@ifhyperfnrA} +% |\ifHy@hyperfootnotes| \textquotedblleft encapsulation\textquotedblright{} again: % \begin{macrocode} \newcommand{\fnr@ifhyperfnrA}{% \ifHy@hyperfootnotes% option hyperfootnotes=true @@ -656,7 +712,6 @@ are probably not very clear. % \end{macrocode} % \end{macro} -% % \begin{macro}{\fnr@ifhyperfnrN} % \begin{macrocode} \newcommand{\fnr@ifhyperfnrN}{% @@ -668,7 +723,7 @@ are probably not very clear. \@textsuperscript{\normalfont \ref*{fnr:\arabic\@mpfn}}}}% \else% option hyperfootnotes=false \hbox{\@textsuperscript{\normalfont \ref*{fnr:\fnr@first}% - --\ref*{fnr:\arabic\@mpfn}}}% + --\ref*{fnr:\arabic\@mpfn}}}% \fi% } @@ -680,7 +735,12 @@ are probably not very clear. % |\fnr@first| and the current |\footnote| definition as |\fnr@origfn| % and uses |\fnr@rangefootnote| instead. % +% Because we cannot |\RenewCommandCopy| a command which does not exist, +% we need to once define |\fnr@origfnmark|. +% % \begin{macrocode} +\AddToHook{begindocument}{\NewCommandCopy{\fnr@origfnmark}{\footnotemark}} + \newenvironment{footnoterange}{% % at begin of the footnoterange environment \ifhmode \unskip \fi% FMi @@ -689,8 +749,8 @@ are probably not very clear. \addtocounter\@mpfn{-1}% \let\fnr@origfn\footnote% \let\footnote\fnr@rangefootnote% - \GlobalLetLtxMacro{\fnr@origfnmark}{\footnotemark}% - \GlobalLetLtxMacro{\footnotemark}{\fnr@rangefootnotemark}% + \RenewCommandCopy{\fnr@origfnmark}{\footnotemark}% + \RenewCommandCopy{\footnotemark}{\fnr@rangefootnotemark}% \ignorespaces% FMi % \end{macrocode} % @@ -698,7 +758,7 @@ are probably not very clear. % % \begin{macrocode} }{% at end of the footnoterange environment - \ifhmode% FMi + \ifhmode% FMi \unskip% FMi % \end{macrocode} % @@ -721,32 +781,31 @@ are probably not very clear. % % \begin{macrocode} \let\footnote\fnr@origfn% - \GlobalLetLtxMacro{\footnotemark}{\fnr@origfnmark}% + \RenewCommandCopy{\footnotemark}{\fnr@origfnmark}% % \end{macrocode} % % and the references are placed: % % \begin{macrocode} - \ifx\fnr@first\fnr@arabic% There is only one reference in the environment. + \ifx\fnr@first\fnr@arabic\relax% There is only one reference in the environment. \PackageInfo{footnoterange}{% Environment footnoterange used,\MessageBreak% - but only one footnote (number \fnr@first ) is contained% - \MessageBreak% - }% - \ltx@ifpackageloaded{hyperref}{\fnr@ifhyperfnrA% hyperref package loaded - }{% hyperref package not loaded - \hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr@first}}}% - }% + but only one footnote (number \fnr@first ) is contained\MessageBreak}% + \IfPackageLoadedTF{hyperref}{\fnr@ifhyperfnrA% + }{\hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr@first}}}% + }% \else% - \ltx@ifpackageloaded{hyperref}{\fnr@ifhyperfnrN% hyperref package loaded - }{% hyperref package not loaded - \hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr@first}% - --\ref{fnr:\arabic\@mpfn}}}% - }% +% \end{macrocode} +% \pagebreak +% \begin{macrocode} + \IfPackageLoadedTF{hyperref}{\fnr@ifhyperfnrN% + }{\hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr@first}% + --\ref{fnr:\arabic\@mpfn}}}% + }% \fi% % \end{macrocode} % -% Restore the spacefactor after the environment has ended. \% FMi +% Restore the space-factor after the environment has ended. \% FMi % % \begin{macrocode} \aftergroup\fnr@aftergroup% FMi @@ -768,40 +827,33 @@ are probably not very clear. \addtocounter\@mpfn{-1}% \let\fnr@origfn\footnote% \let\footnote\fnr@rangefootnote% - \GlobalLetLtxMacro{\fnr@origfnmark}{\footnotemark}% - \GlobalLetLtxMacro{\footnotemark}{\fnr@rangefootnotemark}% + \RenewCommandCopy{\fnr@origfnmark}{\footnotemark}% + \RenewCommandCopy{\footnotemark}{\fnr@rangefootnotemark}% \ignorespaces% FMi }{% at end of the footnoterange* environment - \ifhmode% FMi + \ifhmode% FMi \unskip% FMi \xdef\fnr@aftergroup{\spacefactor\the\spacefactor\relax}% FMi \else% FMi \xdef\fnr@aftergroup{\relax}% \fi% FMi \let\footnote\fnr@origfn% - \GlobalLetLtxMacro{\footnotemark}{\fnr@origfnmark}% - \ifx\fnr@first\fnr@arabic% There is only one reference in the environment. + \RenewCommandCopy{\footnotemark}{\fnr@origfnmark}% + \ifx\fnr@first\fnr@arabic\relax% There is only one reference in the environment. \PackageInfo{footnoterange}{% Environment footnoterange used,\MessageBreak% - but only one footnote (number \fnr@first ) is contained% - \MessageBreak% - }% -% \end{macrocode} -% \pagebreak -% \begin{macrocode} - \ltx@ifpackageloaded{hyperref}{% hyperref package loaded - \hbox{\@textsuperscript{\normalfont \ref*{fnr:\fnr@first}}}% - }{% hyperref package not loaded - \hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr@first}}}% - }% + but only one footnote (number \fnr@first ) is contained\MessageBreak}% + \IfPackageLoadedTF{hyperref}{% + \hbox{\@textsuperscript{\normalfont \ref*{fnr:\fnr@first}}}% + }{\hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr@first}}}% + }% \else% - \ltx@ifpackageloaded{hyperref}{% hyperref package loaded - \hbox{\@textsuperscript{\normalfont \ref*{fnr:\fnr@first}% - --\ref*{fnr:\arabic\@mpfn}}}% - }{% hyperref package not loaded - \hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr@first}% - --\ref{fnr:\arabic\@mpfn}}}% - }% + \IfPackageLoadedTF{hyperref}{% + \hbox{\@textsuperscript{\normalfont \ref*{fnr:\fnr@first}% + --\ref*{fnr:\arabic\@mpfn}}}% + }{\hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr@first}% + --\ref{fnr:\arabic\@mpfn}}}% + }% \fi% \aftergroup\fnr@aftergroup% FMi } @@ -809,12 +861,11 @@ are probably not very clear. % \end{macrocode} % \end{environment} % +% \begin{macro}{\fnr@rangefootnotemark} % The \xpackage{footnoterange} package does not handle |\footnotemark|s, % but at least the user is made aware of this: % -% \begin{macro}{\fnr@rangefootnotemark} % \begin{macrocode} - \newcommand{\fnr@rangefootnotemark}[1][\empty]{% \PackageError{footnoterange}{% \string\footnotemark\space not supported in footnoterange(*) environment% @@ -827,7 +878,7 @@ are probably not very clear. with your own fixing code).% }% \xdef\fnr@mopt{#1}% - \ifx\fnr@mopt\empty% + \ifx\fnr@mopt\empty\relax% \fnr@origfnmark% \else% \fnr@origfnmark[#1]% @@ -841,93 +892,86 @@ are probably not very clear. %</package> % \end{macrocode} % -% \pagebreak -% % \section{Installation} -% % \subsection{Downloads\label{ss:Downloads}} -% % Everything is available on CTAN, -% \url{https://www.ctan.org/tex-archive/}, +% \url{https://www.CTAN.org/}, % but may need additional packages themselves. % % \DescribeMacro{footnoterange.dtx} % For unpacking the \xfile{footnoterange.dtx} file % and constructing the documentation it is required: % \begin{description} -% \item[-] \TeX{} Format \LaTeXe{}, \url{https://www.CTAN.org/} +% \item[-] \TeX Format \LaTeXe{} 2022-11-01 or newer: \url{https://www.CTAN.org} % -% \item[-] document class \xpackage{ltxdoc}, 2015/03/26, v2.0w, -% \url{https://ctan.org/pkg/ltxdoc} +% \item[-] document class \xclass{ltxdoc}, 2022/06/22, v2.1i, +% \url{https://www.ctan.org/pkg/ltxdoc} % -% \item[-] package \xpackage{holtxdoc}, 2012/03/21, v0.24, -% \url{https://ctan.org/pkg/holtxdoc} +% \item[-] package \xpackage{holtxdoc}, 2019/12/09, v0.30, +% \url{https://www.ctan.org/pkg/holtxdoc} % \end{description} % % \DescribeMacro{footnoterange.sty} % The |footnoterange.sty| for \LaTeXe{} (i.\,e. each document using % the \xpackage{footnoterange} package) requires: % \begin{description} -% \item[-] \TeX{} Format \LaTeXe{}, \url{https://www.CTAN.org/} -% -% \item[-] package \xpackage{ltxcmds}, 2011/04/18, v1.20, -% \url{https://www.ctan.org/pkg/ltxcmds} +% \item[-] \TeX Format \LaTeXe{} 2022-11-01 or newer: \url{https://www.CTAN.org} % \end{description} % % \DescribeMacro{footnoterange-example.tex} % The |footnoterange-example.tex| requires the same files as all % documents using the \xpackage{footnoterange} package and additionally: % \begin{description} -% \item[-] class \xpackage{article}, 2007/10/19, v1.4h, from \xpackage{classes.dtx}:\newline -% \url{https://www.ctan.org/tex-archive/macros/latex/base/} +% \item[-] class \xpackage{article}, 2022/07/02, v1.4n, from \xpackage{classes}:\\ +% \url{https://www.ctan.org/pkg/classes} % -% \item[-] package \xpackage{footnoterange}, 2019/11/24, v1.0c,\newline -% \url{https://www.ctan.org/pkg/footnoterange}\newline +% \item[-] package \xpackage{footnoterange}, 2023-02-25, v1.1a,\newline +% \url{https://ctan.org/pkg/footnoterange}\newline % (Well, it is the example file for this package, and because you are % reading the documentation for the \xpackage{footnoterange} package, % it can be assumed that you already have some version of it -- % is it the current one?) % -% \item[-] package \xpackage{hyperref}, 2012/11/06, v6.83m,\newline -% \url{https://www.ctan.org/pkg/hyperref} +% \item[-] package \xpackage{hyperref}, 2023-02-07, v7.00v,\newline +% \url{https://ctan.org/pkg/hyperref} +% +% \item[-] package \xpackage{alphalph}, 2019/12/09, v2.6,\newline +% \url{https://ctan.org/pkg/alphalph} % \end{description} % % \DescribeMacro{Oberdiek} % \DescribeMacro{holtxdoc} -% \DescribeMacro{ltxcmds} % \DescribeMacro{alphalph} -% All packages of \textsc{Heiko Oberdiek}'s bundle `oberdiek' -% (especially \xpackage{holtxdoc}, \xpackage{ltxcmds}, and \xpackage{alphalph}) -% are also available in a TDS compliant ZIP archive:\newline -% \url{http://mirror.ctan.org/install/macros/latex/contrib/oberdiek.tds.zip}.\newline +% All packages of the `oberdiek' bundle (especially \xpackage{alphalph}) +% are also available in a TDS compliant ZIP archive:\\ +% \url{https://mirror.ctan.org/install/macros/latex/contrib/oberdiek.tds.zip}.\\ % It is probably best to download and use this, because the packages in there -% should be both recent and compatible. +% are quite probably both recent and compatible among themselves.\\ % % \DescribeMacro{hyperref} % \noindent \xpackage{hyperref} is not included in that bundle and needs to be -% downloaded separately,\newline -% \url{http://mirrors.ctan.org/install/macros/latex/contrib/hyperref.tds.zip}. -% -% \DescribeMacro{M\"{u}nch} -% A list of my packages can be found at \url{https://www.ctan.org/author/muench-hm}. +% downloaded separately,\\ +% \url{https://mirror.ctan.org/install/macros/latex/contrib/hyperref.tds.zip}.\\ % -% \pagebreak +% \DescribeMacro{Münch} +% A hyperlinked list of my (other) packages can be found at +% \url{https://ctan.org/author/muench-hm}.\\ % % \subsection{Package, unpacking TDS} % \paragraph{Package.} This package is available on \url{https://www.CTAN.org}. % \begin{description} -% \item[\url{http://mirror.ctan.org/macros/latex/contrib/footnoterange/footnoterange.dtx}]\hspace*{0.1cm} +% \item[\url{https://mirror.ctan.org/macros/latex/contrib/footnoterange/footnoterange.dtx}]\hspace*{0.1cm} % The source file. -% \item[\url{http://mirror.ctan.org/macros/latex/contrib/footnoterange/footnoterange.pdf}]\hspace*{0.1cm} +% \item[\url{https://mirror.ctan.org/macros/latex/contrib/footnoterange/footnoterange.pdf}]\hspace*{0.1cm} % The documentation. -% \item[\url{http://mirror.ctan.org/macros/latex/contrib/footnoterange/footnoterange-example.pdf}]\hspace*{0.1cm} +% \item[\url{https://mirror.ctan.org/macros/latex/contrib/footnoterange/footnoterange-example.pdf}]\hspace*{0.1cm} % The compiled example file, as it should look like. % \item[\url{http://mirror.ctan.org/macros/latex/contrib/footnoterange/README}]\hspace*{0.1cm}\newline\hspace*{0.1cm} % The README file. % \end{description} % There is also a footnoterange.tds.zip available: % \begin{description} -% \item[\url{http://mirror.ctan.org/install/macros/latex/contrib/footnoterange.tds.zip}]\hspace*{0.1cm} +% \item[\url{https://mirror.ctan.org/install/macros/latex/contrib/footnoterange.tds.zip}]\hspace*{0.1cm} % Everything in TDS compliant, compiled format. % \end{description} % which additionally contains\newline @@ -1024,13 +1068,13 @@ are probably not very clear. % \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. +% place, see the documentation of \docstrip{}. % % \subsection{Refresh file name databases} % -% If your \TeX~distribution (\TeX{} Live, \mikTeX, \teTeX, \dots) relies on -% file name databases, you must refresh these. For example, \teTeX{} users run -% \verb|texhash| or \verb|mktexlsr|. +% If your \TeX~distribution (\TeX\,Live, \mikTeX, \dots) relies on +% file name databases, you must refresh these. For example, \TeX\,Live\ users +% run \verb|texhash| or \verb|mktexlsr|. % % \subsection{Some details for the interested} % @@ -1063,11 +1107,11 @@ are probably not very clear. % % \begin{quote} %\begin{verbatim} -%pdflatex footnoterange.drv +%pdflatex footnoterange.dtx %makeindex -s gind.ist footnoterange.idx -%pdflatex footnoterange.drv +%pdflatex footnoterange.dtx %makeindex -s gind.ist footnoterange.idx -%pdflatex footnoterange.drv +%pdflatex footnoterange.dtx %\end{verbatim} % \end{quote} % @@ -1075,7 +1119,7 @@ are probably not very clear. % % The example file, \textsf{footnoterange-example.tex}, can be compiled via\newline % \indent \verb|(pdf)latex footnoterange-example.tex|\newline -% but will need probably two compiler runs to get everything right.\newline +% but will need probably at least two compiler runs to get everything right.\newline % \verb|footnoterange-example.tex| can be created by\newline % \indent \verb|tex footnoterange.dtx|.\newline % \verb|footnoterange.dtx| is at @@ -1083,12 +1127,12 @@ are probably not very clear. % % \section{Acknowledgements} % -% I (H.-Martin M\"{u}nch) would like to thank \textsc{Heiko Oberdiek} -% for providing a~lot~(!) of useful packages (from -% which I also got everything I know about creating a file in \xext{dtx} -% format, ok, say it: copying), \textsc{Frank Mittelbach} for several bug reports, -% for code for improving the package, and for pointing me to the \xpackage{fnpct} -% package as alternative, Willie Wong for reporting a bug and its fix, +% I (H.-Martin Münch) would like to thank \textsc{Heiko Oberdiek} +% for providing a lot of useful packages (from which I also got everything +% I know about creating a file in \xext{dtx} format, OK, say it: copying), +% \textsc{Frank Mittelbach} for several bug reports, for code for improving +% the package, and for pointing me to the \xpackage{fnpct} package +% as alternative, \textsc{Willie Wong} for reporting a bug and its fix, % everybody of the CTAN team for managing CTAN, % the \Newsgroup{comp.text.tex} and \Newsgroup{de.comp.text.tex} newsgroups, % and everybody at \url{https://tex.stackexchange.com/} @@ -1099,7 +1143,6 @@ are probably not very clear. % (\url{https://tex.stackexchange.com/users/10127/user001}) on\newline % \url{https://tex.stackexchange.com/q/44165/6865}. % -% \newpage % \phantomsection % \begin{History}\label{History} % \begin{Version}{2011/02/11 v0.1ff.} @@ -1111,11 +1154,24 @@ are probably not very clear. % \begin{Version}{2018/10/15 v1.0b} % \item Fixed/updated minor details. % \item Bug fix: Did not work without \xpackage{hyperref}, wrong spacefactor. -% \item Listing the \href{https://www.ctan.org/pkg/fnpct}{\xpackage{fnpct}} +% \item Listing the \href{https://ctan.org/pkg/fnpct}{\xpackage{fnpct}} % package as alternative. % \end{Version} % \begin{Version}{2019/11/24 v1.0c} % \item Bug fix: Issue with footnote symbols. +% \item This version has been archived at\\ +% \url{https://web.archive.org/web/20230220154207/https://mirrors.ctan.org/install/macros/latex/contrib/footnoterange.tds.zip}. +% \end{Version} +% \begin{Version}{2023-02-25 v1.1a} +% \item Converted to UTF-8. +% \item Updated to \LaTeX{} format 2022-11-01. +% \item Example now also demonstrates the usage of +% footnote-{}number-{}representations other than |arabic|:\newline +% |\Roman|, |\roman|, |\Alph|, |\alph|, |\fnsymbol|~(!), +% especially for more footnotes then A--Z, a--z, % +% \newcounter{fnrxcnt}\setcounter{fnrxcnt}{1}\fnsymbol{fnrxcnt}--\setcounter{fnrxcnt}{5}\fnsymbol{fnrxcnt}. +% \item Creation of smaller link-boxes explained in the documentation. +% \item Documentation and README updates. % \end{Version} % \end{History} % diff --git a/Master/texmf-dist/source/latex/footnoterange/footnoterange.ins b/Master/texmf-dist/source/latex/footnoterange/footnoterange.ins index fbbb9c3d719..16659e4718b 100644 --- a/Master/texmf-dist/source/latex/footnoterange/footnoterange.ins +++ b/Master/texmf-dist/source/latex/footnoterange/footnoterange.ins @@ -9,18 +9,14 @@ %% This is a generated file. %% %% Project: footnoterange -%% Version: 2019/11/24 v1.0c +%% Version: 2023-02-25 v1.1a +%% Info: References to ranges of footnotes %% -%% Copyright (C) 2012 - 2019 by -%% H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de> +%% Copyright (C) 2012 - 2023 by +%% H.-Martin Muench <Martin dot Muench at Uni-Bonn dot de> %% Portions of code copyrighted by other people as marked; %% lines marked "FMi": code by Frank Mittelbach, thanks! %% -%% The usual disclaimer applies: -%% If it doesn't work right that's your problem. -%% (Nevertheless, please send an e-mail to the maintainer -%% when you find an error in this package.) -%% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either %% version 1.3c of this license or (at your option) any later @@ -29,7 +25,7 @@ %% and the latest version of this license is in %% https://www.latex-project.org/lppl.txt %% and version 1.3c or later is part of all distributions of -%% LaTeX version 2005/12/01 or later. +%% LaTeX version 2005-12-01 or later. %% %% This work has the LPPL maintenance status "maintained". %% @@ -42,15 +38,15 @@ %% footnoterange-example.tex, footnoterange-example.pdf. %% %% In memoriam -%% Claudia Simone Barth + 1996/01/30 -%% Tommy Muench + 2014/01/02 -%% Hans-Klaus Muench + 2014/08/24 +%% Claudia Simone Barth + 1996-01-30 +%% Tommy Muench + 2014-01-02 +%% Hans-Klaus Muench + 2014-08-24 %% \input docstrip.tex -\Msg{*********************************************************************************} -\Msg{* Installation} -\Msg{* Package: footnoterange 2019/11/24 v1.0c References to ranges of footnotes (HMM)} -\Msg{*********************************************************************************} +\Msg{**********************************************************************************} +\Msg{* Installation *} +\Msg{* Package: footnoterange 2023-02-25 v1.1a References to ranges of footnotes (HMM)*} +\Msg{**********************************************************************************} \keepsilent \askforoverwritefalse @@ -61,18 +57,14 @@ This is a generated file. Project: footnoterange -Version: 2019/11/24 v1.0c +Version: 2023-02-25 v1.1a +Info: References to ranges of footnotes -Copyright (C) 2012 - 2019 by - H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de> +Copyright (C) 2012 - 2023 by + H.-Martin Muench <Martin dot Muench at Uni-Bonn dot de> Portions of code copyrighted by other people as marked; lines marked "FMi": code by Frank Mittelbach, thanks! -The usual disclaimer applies: -If it doesn't work right that's your problem. -(Nevertheless, please send an e-mail to the maintainer - when you find an error in this package.) - This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c of this license or (at your option) any later @@ -81,7 +73,7 @@ version. This version of this license is in and the latest version of this license is in https://www.latex-project.org/lppl.txt and version 1.3c or later is part of all distributions of -LaTeX version 2005/12/01 or later. +LaTeX version 2005-12-01 or later. This work has the LPPL maintenance status "maintained". @@ -94,9 +86,9 @@ the README, and the derived files footnoterange-example.tex, footnoterange-example.pdf. In memoriam - Claudia Simone Barth + 1996/01/30 - Tommy Muench + 2014/01/02 - Hans-Klaus Muench + 2014/08/24 + Claudia Simone Barth + 1996-01-30 + Tommy Muench + 2014-01-02 + Hans-Klaus Muench + 2014-08-24 \endpreamble \let\MetaPrefix\DoubleperCent diff --git a/Master/texmf-dist/tex/latex/footnoterange/footnoterange.sty b/Master/texmf-dist/tex/latex/footnoterange/footnoterange.sty index 632ba4c46bd..066a2e02550 100644 --- a/Master/texmf-dist/tex/latex/footnoterange/footnoterange.sty +++ b/Master/texmf-dist/tex/latex/footnoterange/footnoterange.sty @@ -9,18 +9,14 @@ %% This is a generated file. %% %% Project: footnoterange -%% Version: 2019/11/24 v1.0c +%% Version: 2023-02-25 v1.1a +%% Info: References to ranges of footnotes %% -%% Copyright (C) 2012 - 2019 by -%% H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de> +%% Copyright (C) 2012 - 2023 by +%% H.-Martin Muench <Martin dot Muench at Uni-Bonn dot de> %% Portions of code copyrighted by other people as marked; %% lines marked "FMi": code by Frank Mittelbach, thanks! %% -%% The usual disclaimer applies: -%% If it doesn't work right that's your problem. -%% (Nevertheless, please send an e-mail to the maintainer -%% when you find an error in this package.) -%% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either %% version 1.3c of this license or (at your option) any later @@ -29,7 +25,7 @@ %% and the latest version of this license is in %% https://www.latex-project.org/lppl.txt %% and version 1.3c or later is part of all distributions of -%% LaTeX version 2005/12/01 or later. +%% LaTeX version 2005-12-01 or later. %% %% This work has the LPPL maintenance status "maintained". %% @@ -42,17 +38,27 @@ %% footnoterange-example.tex, footnoterange-example.pdf. %% %% In memoriam -%% Claudia Simone Barth + 1996/01/30 -%% Tommy Muench + 2014/01/02 -%% Hans-Klaus Muench + 2014/08/24 +%% Claudia Simone Barth + 1996-01-30 +%% Tommy Muench + 2014-01-02 +%% Hans-Klaus Muench + 2014-08-24 %% -\NeedsTeXFormat{LaTeX2e}[2011/06/27] -\ProvidesPackage{footnoterange}[2019/11/24 v1.0c - References to ranges of footnotes (HMM)] -%% Provides the footnoterange and footnoterange* environments to -%% refer to ranges of footnotes. -\RequirePackage{ltxcmds}[2011/11/09]% v1.22; for "\ltx@ifpackageloaded" -\RequirePackage{letltxmacro}[2010/09/02]% v1.4; for "\GlobalLetLtxMacro" +\NeedsTeXFormat{LaTeX2e}[2022-11-01] +\ProvidesPackage{footnoterange}[2023-02-25 v1.1a % + References to ranges of footnotes (HMM)] +%% Provides the footnoterange and footnoterange* environments +%% to refer to ranges of footnotes. + +\@ifl@t@r\fmtversion{2022/11/01}{% would have understood + % \IfFormatAtLeastTF{2022-11-01}{<true code>}{<false code>} + }{\PackageError{footnoterange}{% + Newer LaTeX format needed or older footnoterange package% + }{Needed LaTeX format version: 2022-11-01 or newer.\MessageBreak% + Found\space\space LaTeX format version: \fmtversion.\MessageBreak% + Either update your TeX distribution\MessageBreak% + or use an archived version of footnoterange\MessageBreak% + (see section History in the documentation).\MessageBreak% + } + } \newcommand{\fnr@ifhyperrfn}{% \ifHy@hyperfootnotes% option hyperfootnotes=true @@ -70,33 +76,31 @@ \nolinebreak% % no \footnotemark here \addtocounter\@mpfn{+1}% - \ltx@ifpackageloaded{hyperref}{\fnr@ifhyperrfn}{\relax}% + \IfPackageLoadedTF{hyperref}{\fnr@ifhyperrfn}{\relax}% \xdef\fnr@opt{#1}% contains the optional argument \xdef\fnr@arabic{\arabic\@mpfn}% \protected@edef\fnr@formated{\thefootnote}% - \ifx\fnr@opt\empty% + \ifx\fnr@opt\empty\relax% \footnotetext{\label{fnr:\fnr@arabic}#2}% \else% \PackageWarning{footnoterange}{% Custom footnote-numbers used in a footnoterange\MessageBreak% environment: Footnote with natural number\MessageBreak% \ifx\fnr@formated\fnr@arabic% - \fnr@arabic\space% + \fnr@arabic% \else% \space\fnr@arabic\space (\fnr@formated )% \fi% \MessageBreak% was renumbered to \fnr@opt\MessageBreak% }% - \ltx@ifpackageloaded{hyperref}{% hyperref loaded - \footnotetext[#1]{\phantomsection\label{fnr:\fnr@arabic}#2}% - }{% hyperref not loaded - \footnotetext[#1]{\label{fnr:\fnr@arabic}#2}% - }% + \IfPackageLoadedTF{hyperref}{% + \footnotetext[#1]{\phantomsection\label{fnr:\fnr@arabic}#2}% + }{\footnotetext[#1]{\label{fnr:\fnr@arabic}#2}% + }% \fi% } - \newcommand{\fnr@ifhyperfnrA}{% \ifHy@hyperfootnotes% option hyperfootnotes=true \hbox{\hyperref[fnr:\fnr@first]{% @@ -115,10 +119,12 @@ \@textsuperscript{\normalfont \ref*{fnr:\arabic\@mpfn}}}}% \else% option hyperfootnotes=false \hbox{\@textsuperscript{\normalfont \ref*{fnr:\fnr@first}% - --\ref*{fnr:\arabic\@mpfn}}}% + --\ref*{fnr:\arabic\@mpfn}}}% \fi% } +\AddToHook{begindocument}{\NewCommandCopy{\fnr@origfnmark}{\footnotemark}} + \newenvironment{footnoterange}{% % at begin of the footnoterange environment \ifhmode \unskip \fi% FMi @@ -127,8 +133,8 @@ \addtocounter\@mpfn{-1}% \let\fnr@origfn\footnote% \let\footnote\fnr@rangefootnote% - \GlobalLetLtxMacro{\fnr@origfnmark}{\footnotemark}% - \GlobalLetLtxMacro{\footnotemark}{\fnr@rangefootnotemark}% + \RenewCommandCopy{\fnr@origfnmark}{\footnotemark}% + \RenewCommandCopy{\footnotemark}{\fnr@rangefootnotemark}% \ignorespaces% FMi }{% at end of the footnoterange environment \ifhmode% FMi @@ -138,23 +144,19 @@ \xdef\fnr@aftergroup{\relax}% \fi% FMi \let\footnote\fnr@origfn% - \GlobalLetLtxMacro{\footnotemark}{\fnr@origfnmark}% - \ifx\fnr@first\fnr@arabic% There is only one reference in the environment. + \RenewCommandCopy{\footnotemark}{\fnr@origfnmark}% + \ifx\fnr@first\fnr@arabic\relax% There is only one reference in the environment. \PackageInfo{footnoterange}{% Environment footnoterange used,\MessageBreak% - but only one footnote (number \fnr@first ) is contained% - \MessageBreak% - }% - \ltx@ifpackageloaded{hyperref}{\fnr@ifhyperfnrA% hyperref package loaded - }{% hyperref package not loaded - \hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr@first}}}% - }% + but only one footnote (number \fnr@first ) is contained\MessageBreak}% + \IfPackageLoadedTF{hyperref}{\fnr@ifhyperfnrA% + }{\hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr@first}}}% + }% \else% - \ltx@ifpackageloaded{hyperref}{\fnr@ifhyperfnrN% hyperref package loaded - }{% hyperref package not loaded - \hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr@first}% - --\ref{fnr:\arabic\@mpfn}}}% - }% + \IfPackageLoadedTF{hyperref}{\fnr@ifhyperfnrN% + }{\hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr@first}% + --\ref{fnr:\arabic\@mpfn}}}% + }% \fi% \aftergroup\fnr@aftergroup% FMi } @@ -167,8 +169,8 @@ \addtocounter\@mpfn{-1}% \let\fnr@origfn\footnote% \let\footnote\fnr@rangefootnote% - \GlobalLetLtxMacro{\fnr@origfnmark}{\footnotemark}% - \GlobalLetLtxMacro{\footnotemark}{\fnr@rangefootnotemark}% + \RenewCommandCopy{\fnr@origfnmark}{\footnotemark}% + \RenewCommandCopy{\footnotemark}{\fnr@rangefootnotemark}% \ignorespaces% FMi }{% at end of the footnoterange* environment \ifhmode% FMi @@ -178,31 +180,26 @@ \xdef\fnr@aftergroup{\relax}% \fi% FMi \let\footnote\fnr@origfn% - \GlobalLetLtxMacro{\footnotemark}{\fnr@origfnmark}% - \ifx\fnr@first\fnr@arabic% There is only one reference in the environment. + \RenewCommandCopy{\footnotemark}{\fnr@origfnmark}% + \ifx\fnr@first\fnr@arabic\relax% There is only one reference in the environment. \PackageInfo{footnoterange}{% Environment footnoterange used,\MessageBreak% - but only one footnote (number \fnr@first ) is contained% - \MessageBreak% - }% - \ltx@ifpackageloaded{hyperref}{% hyperref package loaded - \hbox{\@textsuperscript{\normalfont \ref*{fnr:\fnr@first}}}% - }{% hyperref package not loaded - \hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr@first}}}% - }% + but only one footnote (number \fnr@first ) is contained\MessageBreak}% + \IfPackageLoadedTF{hyperref}{% + \hbox{\@textsuperscript{\normalfont \ref*{fnr:\fnr@first}}}% + }{\hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr@first}}}% + }% \else% - \ltx@ifpackageloaded{hyperref}{% hyperref package loaded - \hbox{\@textsuperscript{\normalfont \ref*{fnr:\fnr@first}% - --\ref*{fnr:\arabic\@mpfn}}}% - }{% hyperref package not loaded - \hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr@first}% - --\ref{fnr:\arabic\@mpfn}}}% - }% + \IfPackageLoadedTF{hyperref}{% + \hbox{\@textsuperscript{\normalfont \ref*{fnr:\fnr@first}% + --\ref*{fnr:\arabic\@mpfn}}}% + }{\hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr@first}% + --\ref{fnr:\arabic\@mpfn}}}% + }% \fi% \aftergroup\fnr@aftergroup% FMi } - \newcommand{\fnr@rangefootnotemark}[1][\empty]{% \PackageError{footnoterange}{% \string\footnotemark\space not supported in footnoterange(*) environment% @@ -215,7 +212,7 @@ with your own fixing code).% }% \xdef\fnr@mopt{#1}% - \ifx\fnr@mopt\empty% + \ifx\fnr@mopt\empty\relax% \fnr@origfnmark% \else% \fnr@origfnmark[#1]% |