summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2023-02-25 22:06:25 +0000
committerKarl Berry <karl@freefriends.org>2023-02-25 22:06:25 +0000
commit87f7da60bedb9baa17b3cf395c4ca4ac8cc7f8f4 (patch)
treed85c4ebd9e71e59717141a7b01df709d1e10f8f9 /Master
parent3aa8d9864cfba44da31702861cb6a211fc1c8935 (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/README57
-rw-r--r--Master/texmf-dist/doc/latex/footnoterange/footnoterange-example.pdfbin82896 -> 136751 bytes
-rw-r--r--Master/texmf-dist/doc/latex/footnoterange/footnoterange.pdfbin320112 -> 335731 bytes
-rw-r--r--Master/texmf-dist/source/latex/footnoterange/footnoterange.drv40
-rw-r--r--Master/texmf-dist/source/latex/footnoterange/footnoterange.dtx692
-rw-r--r--Master/texmf-dist/source/latex/footnoterange/footnoterange.ins48
-rw-r--r--Master/texmf-dist/tex/latex/footnoterange/footnoterange.sty129
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
index 693449febb3..23446dd163e 100644
--- a/Master/texmf-dist/doc/latex/footnoterange/footnoterange-example.pdf
+++ b/Master/texmf-dist/doc/latex/footnoterange/footnoterange-example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/footnoterange/footnoterange.pdf b/Master/texmf-dist/doc/latex/footnoterange/footnoterange.pdf
index 6cc3317374d..a48f55e5b3a 100644
--- a/Master/texmf-dist/doc/latex/footnoterange/footnoterange.pdf
+++ b/Master/texmf-dist/doc/latex/footnoterange/footnoterange.pdf
Binary files differ
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]%