texlive[48912] Master/texmf-dist: footnoterange (15oct18)

commits+karl at tug.org commits+karl at tug.org
Mon Oct 15 23:22:14 CEST 2018


Revision: 48912
          http://tug.org/svn/texlive?view=revision&revision=48912
Author:   karl
Date:     2018-10-15 23:22:13 +0200 (Mon, 15 Oct 2018)
Log Message:
-----------
footnoterange (15oct18)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/footnoterange/README
    trunk/Master/texmf-dist/doc/latex/footnoterange/footnoterange-example.pdf
    trunk/Master/texmf-dist/doc/latex/footnoterange/footnoterange.pdf
    trunk/Master/texmf-dist/source/latex/footnoterange/footnoterange.drv
    trunk/Master/texmf-dist/source/latex/footnoterange/footnoterange.dtx
    trunk/Master/texmf-dist/source/latex/footnoterange/footnoterange.ins
    trunk/Master/texmf-dist/tex/latex/footnoterange/footnoterange.sty

Removed Paths:
-------------
    trunk/Master/texmf-dist/doc/latex/footnoterange/footnoterange-example.tex

Modified: trunk/Master/texmf-dist/doc/latex/footnoterange/README
===================================================================
--- trunk/Master/texmf-dist/doc/latex/footnoterange/README	2018-10-15 21:21:57 UTC (rev 48911)
+++ trunk/Master/texmf-dist/doc/latex/footnoterange/README	2018-10-15 21:22:13 UTC (rev 48912)
@@ -1,4 +1,4 @@
-README for footnoterange package, 2012/02/17, v1.0a
+README for footnoterange package, 2018/10/15, v1.0b
 
 
 TABLE OF CONTENTS
@@ -17,7 +17,7 @@
 1 INTRODUCTION
 ==============
 
-This LaTeX2e package provides the environments footnoterange
+This LaTeX package provides the environments footnoterange
 and footnoterange*. Multiple footnotes inside these
 environments are not referenced as e.g. "1 2 3" but as
 "1-3", i.e. the range (from first to last referred footnote
@@ -25,40 +25,34 @@
 package and use of its hyperfootnotes-option the references
 are hyperlinked. (References to footnotes in the
 footnoterange* environment are never hyperlinked.)
-This material is subject to the LaTeX Project Public License
-(LPPL). See http://www.ctan.org/tex-archive/help/Catalogue/
-licenses.lppl.html for the details of that license.
 
+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
+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.
 
+
 2 DOWNLOAD
 ==========
 
 `footnoterange' is available on CTAN:
-  CTAN:macros/latex/contrib/footnoterange/
+https://www.ctan.org/pkg/footnoterange
 
-Running
-tex footnoterange.dtx
-generates the files
-footnoterange.ins, footnoterange.drv, footnoterange.sty,
-and footnoterange-example.tex.
+Also a ZIP file is provided that contains the files:
+the manual (footnoterange.pdf),
+the compiled example (footnoterange-example.pdf),
+driver (footnoterange.drv), footnoterange.dtx,
+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
 
-Also a ZIP file is provided that contains these files,
-the manual (footnoterange.pdf), the compiled example
-(footnoterange-example.pdf), and this README, already
-sorted in a TDS tree:
-  CTAN:install/macros/latex/contrib/footnoterange.tds.zip
 
-`CTAN:' means one of the `Comprehensive TeX Archive Network'
-nodes or one of its mirrors. This is explained in
-  http://www.tex.ac.uk/cgi-bin/texfaq2html?label=archives
-
-The CTAN stuff will be mirrored automatically from the
-ftp server, so
-  ftp://ftp.tug.org/pub/tex/footnoterange/
-corresponds to
-  CTAN:macros/latex/contrib/footnoterange/
-
-
 3 INSTALLATION
 ==============
 
@@ -67,7 +61,8 @@
 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 CTAN:tds.zip for an explanation of TDS.)
+See https://www.ctan.org/TDS-guidelines for an explanation
+of TDS.
 Example:
   cd /...somewhere.../texmf
   unzip /...downloadpath.../footnoterange.tds.zip
@@ -80,13 +75,15 @@
 -------------------
 a) Download the footnoterange files from CTAN.
    If necessary, unpack them.
-b) Generate the package and driver files:
+b) Generate the package, driver, and example files:
+     tex footnoterange.ins
+   footnoterange.ins can also be created by
      tex footnoterange.dtx
-c) Install the file `*.sty' in your TDS tree:
-     cp *.sty TDS:tex/latex/footnoterange/
+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
    (texmf directory).
-d) Create the documentation (if necessary), e.g.
+d) Create the documentation, if necessary, e.g.
      pdflatex footnoterange.dtx
      makeindex -s gind.ist footnoterange.idx
      pdflatex footnoterange.dtx
@@ -94,11 +91,11 @@
      pdflatex footnoterange.dtx
 e) Update the databases if necessary, e.g. for teTeX:
      mktexlsr .../texmf
-f) Create the footnoterange-example.pdf (if necessary), e.g.
+f) Create the footnoterange-example.pdf, if necessary, e.g.
      pdflatex footnoterange-example.tex
      pdflatex footnoterange-example.tex
      pdflatex footnoterange-example.tex
-g) Copy the documentation files to
+h) Copy the documentation files to
    "TDS:doc/latex/footnoterange/":
    README, footnoterange.pdf, footnoterange-example.tex,
    footnoterange-example.pdf.
@@ -108,8 +105,8 @@
 =====================
 
 footnoterange loads other packages:
-* ltxcmds, http://ctan.org/pkg/ltxcmds
-* xspace, http://ctan.org/pkg/xspace
+* 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).
@@ -125,13 +122,13 @@
 
 
 6 AUTHOR/MAINTAINER
-=====================
+===================
 
-* H.-Martin Münch
+H.-Martin Münch
 
 
 7 BUG REPORTS
-==============
+=============
 
 A bug report should contain:
 * Comprehensive problem description. This includes error or
@@ -158,6 +155,8 @@
 
 
 8 KNOWN PROBLEMS
-=================
+================
 
-* as yet: none.
\ No newline at end of file
+The footnoterange package does not handle \footnotemark
+in footnoteranges (see \fnr at rangefootnotemark in the
+documentation).
\ No newline at end of file

Modified: trunk/Master/texmf-dist/doc/latex/footnoterange/footnoterange-example.pdf
===================================================================
(Binary files differ)

Deleted: trunk/Master/texmf-dist/doc/latex/footnoterange/footnoterange-example.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/footnoterange/footnoterange-example.tex	2018-10-15 21:21:57 UTC (rev 48911)
+++ trunk/Master/texmf-dist/doc/latex/footnoterange/footnoterange-example.tex	2018-10-15 21:22:13 UTC (rev 48912)
@@ -1,142 +0,0 @@
-%%
-%% This is file `footnoterange-example.tex',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% footnoterange.dtx  (with options: `example')
-%% 
-%% This is a generated file.
-%% 
-%% Project: footnoterange
-%% Version: 2012/02/17 v1.0a
-%% 
-%% Copyright (C) 2012 by
-%%     H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de>
-%% 
-%% The usual disclaimer applies:
-%% If it doesn't work right that's your problem.
-%% (Nevertheless, 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
-%% version. This version of this license is in
-%%    http://www.latex-project.org/lppl/lppl-1-3c.txt
-%% and the latest version of this license is in
-%%    http://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.
-%% 
-%% This work has the LPPL maintenance status "maintained".
-%% 
-%% The Current Maintainer of this work is H.-Martin Muench.
-%% 
-%% This work consists of the main source file footnoterange.dtx,
-%% the README, and the derived files
-%%    footnoterange.sty, footnoterange.pdf,
-%%    footnoterange.ins, footnoterange.drv,
-%%    footnoterange-example.tex, footnoterange-example.pdf.
-%% 
-\documentclass[british]{article}[2007/10/19]% v1.4h
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\usepackage[%
- extension=pdf,%
- plainpages=false,%
- pdfpagelabels=true,%
- hyperindex=false,%
- pdflang={en},%
- pdftitle={footnoterange package example},%
- pdfauthor={H.-Martin Muench},%
- pdfsubject={Example for the footnoterange package},%
- pdfkeywords={LaTeX, footnoterange, H.-Martin Muench},%
- pdfview=FitH,%
- pdfstartview=FitH,%
- pdfpagelayout=OneColumn,%
- hyperfootnotes=true%
-]{hyperref}[2012/02/06]% v6.82o
-
-\usepackage{footnoterange}[2012/02/17]% v1.0a
-
-\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.0a as of 2012/02/17 (HMM).\newline
-The package does not use options.\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
-
-This\footnote{Lorem} text bears a multiplicity of footnotes.
-Because the \texttt{hyperref} package is used with option
-\texttt{hyperfootnotes=true}, the footnotes%
-\begin{footnoterange}%
-\footnote{ipsum}%
-\footnote{dolor}%
-\footnote{sit}%
-\footnote{amet,}%
-\footnote{consectetur}%
-\footnote{adipisicing}%
-\footnote{elit,}%
-\footnote{sed}%
-\end{footnoterange}%
- are hyperlinked.\footnote{do eiusmod\ldots} Using
-\texttt{hyperfootnotes=false} or not using \texttt{hyperref}
-will remove the hyperlinks to the footnotes.\newline
-
-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}%
-\end{footnoterange*}%
- form of the environment they are not
-hyperlinked.\footnote{mauris\ldots}\newline
-
-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.
-
-\pagebreak
-
-When there is only one footnote%
-\begin{footnoterange}%
-\footnote{a single footnote}%
-\end{footnoterange}%
- in the \texttt{footnoterange} environment, only one
-footnotemark is used and an info is written into the
-log-file.\newline
-
-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 \texttt{alphalph} package, and references
-to footnote-symbol-ranges (\verb|\fnsymbol|) are probably
-not very clear.
-
-\end{document}
-\endinput
-%%
-%% End of file `footnoterange-example.tex'.

Modified: trunk/Master/texmf-dist/doc/latex/footnoterange/footnoterange.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/source/latex/footnoterange/footnoterange.drv
===================================================================
--- trunk/Master/texmf-dist/source/latex/footnoterange/footnoterange.drv	2018-10-15 21:21:57 UTC (rev 48911)
+++ trunk/Master/texmf-dist/source/latex/footnoterange/footnoterange.drv	2018-10-15 21:22:13 UTC (rev 48912)
@@ -9,14 +9,16 @@
 %% This is a generated file.
 %% 
 %% Project: footnoterange
-%% Version: 2012/02/17 v1.0a
+%% Version: 2018/10/15 v1.0b
 %% 
-%% Copyright (C) 2012 by
+%% Copyright (C) 2012 - 2018 by
 %%     H.-Martin M"unch <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, send an e-mail to the maintainer
+%% (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
@@ -23,9 +25,9 @@
 %% 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
-%%    http://www.latex-project.org/lppl/lppl-1-3c.txt
+%%    https://www.latex-project.org/lppl/lppl-1-3c.txt
 %% and the latest version of this license is in
-%%    http://www.latex-project.org/lppl.txt
+%%    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.
 %% 
@@ -39,11 +41,16 @@
 %%    footnoterange.ins, footnoterange.drv,
 %%    footnoterange-example.tex, footnoterange-example.pdf.
 %% 
-\NeedsTeXFormat{LaTeX2e}[2011/06/27]
-\ProvidesFile{footnoterange.drv}%
-  [2012/02/17 v1.0a References to ranges of footnotes (HMM)]
-\documentclass{ltxdoc}[2007/11/11]% v2.0u
-\usepackage{holtxdoc}[2011/02/04]%  v0.21
+%% In memoriam
+%%  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}[2018/10/15 v1.0b
+            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
@@ -68,7 +75,7 @@
 }
 \CodelineIndex
 \hyphenation{printing docu-ment}
-\gdef\unit#1{\mathord{\thinspace\mathrm{#1}}}%
+\gdef\unit#1{\mathord{\thinspace\mathrm{#1}}}
 \begin{document}
   \DocInput{footnoterange.dtx}%
 \end{document}

Modified: trunk/Master/texmf-dist/source/latex/footnoterange/footnoterange.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/footnoterange/footnoterange.dtx	2018-10-15 21:21:57 UTC (rev 48911)
+++ trunk/Master/texmf-dist/source/latex/footnoterange/footnoterange.dtx	2018-10-15 21:22:13 UTC (rev 48912)
@@ -1,18 +1,20 @@
 % \iffalse meta-comment
 %
 % File: footnoterange.dtx
-% Version: 2012/02/17 v1.0a
+% Version: 2018/10/15 v1.0b
 %
-% Copyright (C) 2012 by
+% Copyright (C) 2012 - 2018 by
 %    H.-Martin M"unch <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!
 %
 % 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
-%    http://www.latex-project.org/lppl/lppl-1-3c.txt
+%    https://www.latex-project.org/lppl/lppl-1-3c.txt
 % and the latest version of this license is in
-%    http://www.latex-project.org/lppl.txt
+%    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.
 %
@@ -26,14 +28,12 @@
 %    footnoterange.ins, footnoterange.drv,
 %    footnoterange-example.tex, footnoterange-example.pdf.
 %
-% Distribution:
-%    CTAN:macros/latex/contrib/footnoterange/footnoterange.dtx
-%    CTAN:macros/latex/contrib/footnoterange/footnoterange.pdf
-%    CTAN:install/macros/latex/contrib/footnoterange.tds.zip
+% 'footnoterange' is available on CTAN:
+% https://www.ctan.org/pkg/footnoterange
 %
-% Cf. http://ctan.org/pkg/footnoterange and
-% http://www.tex.ac.uk/tex-archive/help/Catalogue/entries/footnoterange.html
-% (when they have been created)
+% 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:
@@ -84,8 +84,8 @@
 %<*install>
 \input docstrip.tex
 \Msg{*********************************************************************************}
-\Msg{* Installation                                                                   }
-\Msg{* Package: footnoterange 2012/02/17 v1.0a References to ranges of footnotes (HMM)}
+\Msg{* Installation}
+\Msg{* Package: footnoterange 2018/10/15 v1.0b References to ranges of footnotes (HMM)}
 \Msg{*********************************************************************************}
 
 \keepsilent
@@ -97,14 +97,16 @@
 This is a generated file.
 
 Project: footnoterange
-Version: 2012/02/17 v1.0a
+Version: 2018/10/15 v1.0b
 
-Copyright (C) 2012 by
+Copyright (C) 2012 - 2018 by
     H.-Martin M"unch <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, send an e-mail to the maintainer
+(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
@@ -111,9 +113,9 @@
 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
-   http://www.latex-project.org/lppl/lppl-1-3c.txt
+   https://www.latex-project.org/lppl/lppl-1-3c.txt
 and the latest version of this license is in
-   http://www.latex-project.org/lppl.txt
+   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.
 
@@ -127,6 +129,11 @@
    footnoterange.ins, footnoterange.drv,
    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
+
 \endpreamble
 \let\MetaPrefix\DoubleperCent
 
@@ -146,7 +153,7 @@
 \Msg{* To finish the installation you have to move the following}
 \Msg{* file into a directory searched by TeX:}
 \Msg{*}
-\Msg{*     footnoterange.sty}
+\Msg{* footnoterange.sty}
 \Msg{*}
 \Msg{* To produce the documentation run the file `footnoterange.drv'}
 \Msg{* through (pdf)LaTeX, e.g.}
@@ -172,19 +179,19 @@
 % \section{The documentation driver file}
 %
 % The next bit of code contains the documentation driver file for
-% \TeX{}, i.\,e., the file that will produce the documentation you
+% \TeX , i.\,e., the file that will produce the documentation you
 % are currently reading. It will be extracted from this file by the
-% \texttt{docstrip} programme. That is, run \LaTeX{} on \texttt{docstrip}
-% and specify the \texttt{driver} option when \texttt{docstrip}
+% \verb|docstrip| programme. That is, run \LaTeX{} on \verb|docstrip|
+% and specify the \verb|driver| option when \verb|docstrip|
 % asks for options.
 %
 %    \begin{macrocode}
 %<*driver>
-\NeedsTeXFormat{LaTeX2e}[2011/06/27]
-\ProvidesFile{footnoterange.drv}%
-  [2012/02/17 v1.0a References to ranges of footnotes (HMM)]
-\documentclass{ltxdoc}[2007/11/11]% v2.0u
-\usepackage{holtxdoc}[2011/02/04]%  v0.21
+\NeedsTeXFormat{LaTeX2e}[2015/01/01]
+\ProvidesFile{footnoterange.drv}[2018/10/15 v1.0b
+            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
@@ -209,7 +216,7 @@
 }
 \CodelineIndex
 \hyphenation{printing docu-ment}
-\gdef\unit#1{\mathord{\thinspace\mathrm{#1}}}%
+\gdef\unit#1{\mathord{\thinspace\mathrm{#1}}}
 \begin{document}
   \DocInput{footnoterange.dtx}%
 \end{document}
@@ -218,7 +225,7 @@
 %
 % \fi
 %
-% \CheckSum{207}
+% \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
@@ -252,7 +259,6 @@
 %       \edef\x{\noexpand\DoNotIndex{\@backslashchar9}}%^^A
 %     }%^^A
 %   \expandafter\endgroup\x
-%
 % \DoNotIndex{\,,\\}
 % \DoNotIndex{\documentclass,\usepackage,\ProvidesPackage,\begin,\end}
 % \DoNotIndex{\MessageBreak}
@@ -261,7 +267,7 @@
 % \DoNotIndex{\ifx,\listfiles,\mathord,\mathrm}
 % \DoNotIndex{\bigskip,\space,\thinspace,\ldots}
 % \DoNotIndex{\indent,\noindent,\newline,\linebreak,\pagebreak,\newpage}
-% \DoNotIndex{\textbf,\textit,\textsf,\texttt,\textsc,\textquotedblleft,\textquotedblright}
+% \DoNotIndex{\textbf,\textit,\textsf,\textsc,\texttt,\textquotedblleft,\textquotedblright}
 % \DoNotIndex{\plainTeX,\TeX,\LaTeX,\pdfLaTeX}
 % \DoNotIndex{\section,\pagenumbering,\smallskip}
 % \DoNotIndex{\@ifpackageloaded}
@@ -268,18 +274,18 @@
 % \DoNotIndex{\arabic, \Alph, \alph, \alphalph, \Roman, \roman, \fnsymbol}
 %
 % \title{The \xpackage{footnoterange} package}
-% \date{2012/02/17 v1.0a}
+% \date{2018/10/15 v1.0b}
 % \author{H.-Martin M\"{u}nch\\\xemail{Martin.Muench at Uni-Bonn.de}}
 %
 % \maketitle
 %
 % \begin{abstract}
-%  This \LaTeXe{} package provides the environments |footnoterange| and
-% |footnoterange*|. Multiple footnotes inside these environments are not referenced
-% as e.\,g.
+% \noindent This package provides the environments |footnoterange| and
+% |footnoterange*|. Multiple footnotes inside these environments
+% are not referenced as e.\,g.
 % \makeatletter%
-% \hbox {\textquotedblleft \@textsuperscript {\normalfont 1 2 3}\textquotedblright}
-% but as \hbox {\textquotedblleft \@textsuperscript {\normalfont 1--3}\textquotedblright ,\ }
+% \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
@@ -290,36 +296,35 @@
 % \bigskip
 %
 % \noindent Disclaimer for web links: The author is not responsible for any contents
-% referred to in this work unless he has full knowledge of illegal 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.
+%
 % \bigskip
 %
-% \noindent {\color{green} 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.}
-%
-% \pagebreak
-%
 % \tableofcontents
 %
-% \bigskip
+%\newpage
 %
-% \section{Introduction\label{sec:Introduction}}
-%
-% \indent This \LaTeXe{} package provides the environments |footnoterange| and\\
+% \section{Introduction}
+% \indent This \LaTeXe{} package provides the environments |footnoterange| and\newline
 % |footnoterange*|. Multiple footnotes inside these environments are not referenced
 % as e.\,g.
 % \makeatletter%
-% \hbox {\textquotedblleft \@textsuperscript {\normalfont 1 2 3}\textquotedblright}
-% but as \hbox {\textquotedblleft \@textsuperscript {\normalfont 1--3}\textquotedblright ,\ }
+% \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.
+% hyperlinked. References to footnotes in |footnoterange*| are never hyperlinked.\newline
+% |\footnotemark\footnotetext| instead of |\footnote| is not supported inside
+% |footnoterange| and |footnoterange*| environments.
 %
 % \bigskip
 %
@@ -333,13 +338,11 @@
 % be used. The package should be loaded after \xpackage{hyperref} (if that package is used)
 % and after any other package redefining footnotes. Usage of the |footnoterange| (or
 % |footnoterange*|) environment is simple: Just encapsulate the footnotes, which shall
-% be referred as range instead of referencing as single ones.\\
+% be referred as range instead of referencing as single ones (see the example file).
 %
-% \pagebreak
-%
-% About hyperlinks:\\
-% Footnote-references in a |footnoterange*| environment are never hyperlinked.\\
-% Footnote-references in a |footnoterange| environment may be hyperlinked:\\
+% About hyperlinks:\newline
+% Footnote-references in a |footnoterange*| environment are never hyperlinked.\newline
+% Footnote-references in a |footnoterange| environment may be hyperlinked:
 % \begin{itemize}
 %  \item When the \xpackage{hyperref} package is not loaded, they are not
 %         hyperlinked (naturally).
@@ -357,16 +360,16 @@
 % |[42], [43], [44]| resulting in 42--44 is OK,
 % but |[42]| (original~2), unchanged~3, unchanged~4 resulting in
 % 42--4 is confusing). A warning about these changed footnotemarks is written
-% into the \xfile{.log}-file.\\
+% into the \xfile{.log}-file.
 %
 % When there is only a single footnote in a |footnoterange| environment,
 % this does not produce some reference like %
 % \makeatletter%
-% \hbox {\textquotedblleft \@textsuperscript {\normalfont 7--7}\textquotedblright{},\ }%
+% \hbox{\textquotedblleft \@textsuperscript {\normalfont 7--7}\textquotedblright{},\ }%
 % \makeatother%
-% but only one footnotemark is used automatically. Because it is strange to use a
-% |footnoterange| environment without a range of footnotes, an info is written
-% into the \xfile{.log}-file about this.\\
+% but only one footnotemark is used automatically. Because it is strange to use
+% a |footnoterange| environment without a range of footnotes, an info is written
+% into the \xfile{.log}-file about this.
 %
 % The usage of other footnote-number-representations
 % (e.\,g.~\verb|\Roman|, \verb|\roman|, \verb|\Alph|, \verb|\alph|,
@@ -373,27 +376,48 @@
 % \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 \url{http://ctan.org/pkg/alphalph} package
+% 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.\\
+% are probably not very clear.
 %
 % \subsection*{Options}
-% \indent The \xpackage{footnoterange} package takes no options.\\
+% \indent The \xpackage{footnoterange} package takes no options.
 %
 % \section{Alternatives\label{sec:Alternatives}}
 %
-% I do not know of any alternative package, but if you programmed or found
-% another alternative, which is available at \CTAN{}, please send an e-mail
-% to me with the name, location at \CTAN{}, and a short notice, and I will probably
-% list it here.\\
+% 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}
+% \usepackage{fnpct}
+% \begin{document}
+% The three little pigs built their houses
+% out of straw\footnote{not to be confused with hay},
+% sticks\footnote{or lumber according to some sources}
+% and bricks%
+% \makeatletter%
+% \setfnpct{mult-fn-sep={--}}%
+% \multfootnote{probably fired clay bricks\addtocounter\@mpfn{+1};%
+% *or something else;%
+% what do I know}. %
+% \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.
 %
-% \newpage
-%
 % \section{Example}
 %
 %    \begin{macrocode}
 %<*example>
-\documentclass[british]{article}[2007/10/19]% v1.4h
+\documentclass[british]{article}[2014/09/29]% v1.4h
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \usepackage[%
  extension=pdf,%
@@ -409,9 +433,9 @@
  pdfstartview=FitH,%
  pdfpagelayout=OneColumn,%
  hyperfootnotes=true%
-]{hyperref}[2012/02/06]% v6.82o
+]{hyperref}[2012/11/06]% v6.83m
 
-\usepackage{footnoterange}[2012/02/17]% v1.0a
+\usepackage{footnoterange}[2018/10/15]% v1.0b
 
 \gdef\unit#1{\mathord{\thinspace\mathrm{#1}}}%
 \listfiles
@@ -420,8 +444,14 @@
 \section*{Example for footnoterange}
 
 This example demonstrates the use of package\newline
-\textsf{footnoterange}, v1.0a as of 2012/02/17 (HMM).\newline
+\textsf{footnoterange}, v1.0b as of 2018/10/15 (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
 
 \noindent For more details please see the documentation!\newline
 
@@ -430,9 +460,9 @@
 Therefore please print only if this is really necessary.\newline
 
 This\footnote{Lorem} text bears a multiplicity of footnotes.
-Because the \texttt{hyperref} package is used with option
-\texttt{hyperfootnotes=true}, the footnotes%
-\begin{footnoterange}%
+Because the \verb|hyperref| package is used with option
+\verb|hyperfootnotes=true|, the footnotes
+\begin{footnoterange}
 \footnote{ipsum}%
 \footnote{dolor}%
 \footnote{sit}%
@@ -441,19 +471,14 @@
 \footnote{adipisicing}%
 \footnote{elit,}%
 \footnote{sed}%
-\end{footnoterange}%
- are hyperlinked.\footnote{do eiusmod\ldots} Using
-\texttt{hyperfootnotes=false} or not using \texttt{hyperref}
-will remove the hyperlinks to the footnotes.\newline
+\end{footnoterange}
+are hyperlinked.\footnote{do eiusmod\ldots} Using
+\verb|hyperfootnotes=false| or not using \verb|hyperref|
+will remove the hyperlinks to the footnotes.\medskip
 
-%    \end{macrocode}
-%
-% \pagebreak
-%
-%    \begin{macrocode}
 This text also bears a multiplicity of footnotes,
-but due to the use of the starred%
-\begin{footnoterange*}%
+but due to the use of the starred
+\begin{footnoterange*}
 \footnote{Ut purus elit,}%
 \footnote{vestibulum ut,}%
 \footnote{placerat ac,}%
@@ -462,38 +487,39 @@
 \footnote{Curabitur}%
 \footnote{dictum}%
 \footnote{gravida}%
-\end{footnoterange*}%
- form of the environment they are not
-hyperlinked.\footnote{mauris\ldots}\newline
+\end{footnoterange*}
+form of the environment they are not
+hyperlinked.\footnote{mauris\ldots}\medskip
 
-The use of the optional parameter for footnotes%
-\begin{footnoterange}%
+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.
+\end{footnoterange}
+is also possible, but should be used consistently.
 
 \pagebreak
 
-When there is only one footnote%
-\begin{footnoterange}%
-\footnote{a single footnote}%
-\end{footnoterange}%
- in the \texttt{footnoterange} environment, only one
+When there is only one footnote
+\begin{footnoterange}
+\footnote{a single footnote}
+\end{footnoterange}
+in the \verb|footnoterange| environment, only one
 footnotemark is used and an info is written into the
-log-file.\newline
+\verb|log|-file.\medskip
 
 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 \texttt{alphalph} package, and references
-to footnote-symbol-ranges (\verb|\fnsymbol|) are probably
-not very clear.
+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.
 
 \end{document}
 %</example>
@@ -501,8 +527,6 @@
 %
 % \StopEventually{}
 %
-% \newpage
-%
 % \section{The implementation}
 %
 % We start off by checking that we are loading into \LaTeXe{} and
@@ -514,7 +538,7 @@
 %
 %    \begin{macrocode}
 \NeedsTeXFormat{LaTeX2e}[2011/06/27]
-\ProvidesPackage{footnoterange}[2012/02/17 v1.0a
+\ProvidesPackage{footnoterange}[2018/10/15 v1.0b
             References to ranges of footnotes (HMM)]
 %    \end{macrocode}
 %
@@ -521,22 +545,48 @@
 % A short description of the \xpackage{footnoterange} package:
 %
 %    \begin{macrocode}
-%% Provides the footnoterange and footnoterange* environment to
+%% Provides the footnoterange and footnoterange* environments to
 %% refer to ranges of footnotes.
 %    \end{macrocode}
 %
-% We need the \xpackage{ltxcmds} and \xpackage{xspace} packages:
+% We need the \xpackage{ltxcmds} package:
 %
 %    \begin{macrocode}
-\RequirePackage{ltxcmds}[2011/04/18]% v1.20; for "\ltx at ifpackageloaded"
-\RequirePackage{xspace}[2009/10/20]%  v1.13; for "\@\xspace"
+\RequirePackage{ltxcmds}[2011/11/09]% v1.22; for "\ltx at ifpackageloaded"
+\RequirePackage{letltxmacro}[2010/09/02]% v1.4; for "\GlobalLetLtxMacro"
 
 %    \end{macrocode}
 %
-% The |\fnr at rangefootnote| is the internal replacement for the original\\
-% |\footnote| command inside of an |footnoterange| environment.
+% We use |\ifHy at hyperfootnotes ... \else ... \fi|, but when the \xpackage{hyperref}
+% package has not been loaded, |\ifHy at hyperfootnotes| is not defined, and \LaTeX
+% relates the |\else| and/or |\fi| (wrongly) to other |\if|s or groups.
+% Therefore the |\ifHy at 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 at ifhyperrfn}
 %    \begin{macrocode}
+\newcommand{\fnr at ifhyperrfn}{%
+  \ifHy at hyperfootnotes% option hyperfootnotes=true
+    \addtocounter{Hfootnote}{+1}%
+    % Code from the hyperref package
+      \global\let\Hy at saved@currentHref\@currentHref%
+      \hyper at makecurrent{Hfootnote}%
+      \global\let\Hy at footnote@currentHref\@currentHref%
+      \global\let\@currentHref\Hy at saved@currentHref%
+    % End of code from the hyperref package
+  \fi%
+}
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\fnr at rangefootnote}
+% The |\fnr at rangefootnote| is the internal replacement for the original\newline
+% |\footnote| command inside of a |footnoterange| environment.
+%
+%    \begin{macrocode}
 \newcommand{\fnr at rangefootnote}[2][\empty]{%
 %    \end{macrocode}
 %
@@ -545,21 +595,15 @@
 %    \begin{macrocode}
   \nolinebreak%
   % no \footnotemark here
-  \addtocounter{footnote}{+1}%
-  \ltx at ifpackageloaded{hyperref}{% hyperref loaded
-    \ifHy at hyperfootnotes% option hyperfootnotes=true
-      \addtocounter{Hfootnote}{+1}%
-      % Code from the hyperref package
-        \global\let\Hy at saved@currentHref\@currentHref%
-        \hyper at makecurrent{Hfootnote}%
-        \global\let\Hy at footnote@currentHref\@currentHref%
-        \global\let\@currentHref\Hy at saved@currentHref%
-      % End of code form the hyperref package
-    \fi%
-   }{% hyperref not loaded, nothing to be done here
-   }%
+  \addtocounter\@mpfn{+1}%
+  \ltx at ifpackageloaded{hyperref}{\fnr at ifhyperrfn}{\relax}%
+%    \end{macrocode}
+%
+% See the explanation before the declaration of the |\fnr at ifhyperrfn| command!
+%
+%    \begin{macrocode}
   \xdef\fnr at opt{#1}% contains the optional argument
-  \xdef\fnr at arabic{\arabic{footnote}}%
+  \xdef\fnr at arabic{\arabic\@mpfn}%
   \edef\fnr at formated{\thefootnote}%
 %    \end{macrocode}
 %
@@ -574,11 +618,12 @@
       Custom footnote-numbers used in a footnoterange\MessageBreak%
       environment: Footnote with natural number\MessageBreak%
       \ifx\fnr at formated\fnr at arabic%
-        \fnr at arabic \space %
+        \fnr at arabic\space%
       \else%
-        \space \fnr at arabic \space (\fnr at formated )\MessageBreak%
+        \space\fnr at arabic\space (\fnr at formated )%
       \fi%
-      was renumbered to \fnr at opt %
+      \MessageBreak%
+      was renumbered to \fnr at opt\MessageBreak%
      }%
     \ltx at ifpackageloaded{hyperref}{% hyperref loaded
       \footnotetext[#1]{\phantomsection\label{fnr:\fnr at arabic}#2}%
@@ -586,79 +631,128 @@
       \footnotetext[#1]{\label{fnr:\fnr at arabic}#2}%
      }%
   \fi%
-}%
+}
 
 %    \end{macrocode}
+% \end{macro}
 %
+%    \begin{macrocode}
+
+%    \end{macrocode}
+% \pagebreak
+%
+% |\ifHy at hyperfootnotes| \textquotedblleft encapsulation\textquotedblright{} again:
+%
+% \begin{macro}{\fnr at ifhyperfnrA}
+%    \begin{macrocode}
+\newcommand{\fnr at ifhyperfnrA}{%
+  \ifHy at hyperfootnotes% option hyperfootnotes=true
+    \hbox{\hyperref[fnr:\fnr at first]{%
+          \@textsuperscript{\normalfont \ref*{fnr:\fnr at first}}}}%
+  \else% option hyperfootnotes=false
+    \hbox{\@textsuperscript{\normalfont \ref*{fnr:\fnr at first}}}%
+  \fi%
+}
+
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\fnr at ifhyperfnrN}
+%    \begin{macrocode}
+\newcommand{\fnr at ifhyperfnrN}{%
+  \ifHy at hyperfootnotes% option hyperfootnotes=true
+    \hbox{\hyperref[fnr:\fnr at first]{%
+            \@textsuperscript{\normalfont \ref*{fnr:\fnr at first}}}%
+          \@textsuperscript{\normalfont --}%
+          \hyperref[fnr:\arabic\@mpfn]{%
+            \@textsuperscript{\normalfont \ref*{fnr:\arabic\@mpfn}}}}%
+  \else% option hyperfootnotes=false
+    \hbox{\@textsuperscript{\normalfont \ref*{fnr:\fnr at first}%
+                                        --\ref*{fnr:\arabic\@mpfn}}}%
+  \fi%
+}
+
+%    \end{macrocode}
+% \end{macro}
+%
 % \begin{environment}{footnoterange}
-% The |footnoterange| environment remembers the next footnote number as\\
+% The |footnoterange| environment remembers the next footnote number as\newline
 % |\fnr at first| and the current |\footnote| definition as |\fnr at origfn|
 % and uses |\fnr at rangefootnote| instead.
 %
 %    \begin{macrocode}
-
 \newenvironment{footnoterange}{%
   % at begin of the footnoterange environment
-  \addtocounter{footnote}{+1}%
-  \xdef\fnr at first{\arabic{footnote}}%
-  \addtocounter{footnote}{-1}%
+  \ifhmode \unskip \fi% FMi
+  \addtocounter\@mpfn{+1}%
+  \xdef\fnr at first{\arabic\@mpfn}%
+  \addtocounter\@mpfn{-1}%
   \let\fnr at origfn\footnote%
   \let\footnote\fnr at rangefootnote%
+  \GlobalLetLtxMacro{\fnr at origfnmark}{\footnotemark}%
+  \GlobalLetLtxMacro{\footnotemark}{\fnr at rangefootnotemark}%
+  \ignorespaces% FMi
 %    \end{macrocode}
 %
+% End of the environment:
+%
+%    \begin{macrocode}
+}{% at end of the footnoterange environment
+  \ifhmode% FMi 
+    \unskip% FMi
+%    \end{macrocode}
+%
+% Remember the spacefactor for restoring after the environment has ended
+% (only in |hmode|!). \% FMi
+%
+%    \begin{macrocode}
+    \xdef\fnr at aftergroup{\spacefactor\the\spacefactor\relax}% FMi
+  \else% FMi
+%    \end{macrocode}
+%
+% Otherwise do something harmless. \% FMi
+%
+%    \begin{macrocode}
+    \xdef\fnr at aftergroup{\relax}%
+  \fi% FMi
+%    \end{macrocode}
+%
 % At the end of the environment the previous definition of |\footnote| is restored
 %
 %    \begin{macrocode}
-}{% at end of the footnoterange environment
   \let\footnote\fnr at origfn%
+  \GlobalLetLtxMacro{\footnotemark}{\fnr at origfnmark}%
 %    \end{macrocode}
 %
 % and the references are placed:
 %
 %    \begin{macrocode}
-  \ifx\fnr at opt\empty%
-  \else%
-    \hspace{-0.85ex}%
-  \fi%
-  \ifx\fnr at first\fnr at arabic%
+  \ifx\fnr at first\fnr at arabic% There is only one reference in the environment.
     \PackageInfo{footnoterange}{%
       Environment footnoterange used,\MessageBreak%
       but only one footnote (number \fnr at first ) is contained%
       \MessageBreak%
      }%
-    \ltx at ifpackageloaded{hyperref}{% hyperref package loaded
-      \ifHy at hyperfootnotes% option hyperfootnotes=true
-        \hbox{\hyperref[fnr:\fnr at first]{%
-                \@textsuperscript {\normalfont \ref*{fnr:\fnr at first}}}}%
-      \else% option hyperfootnotes=false
-        \hbox {\@textsuperscript {\normalfont \ref*{fnr:\fnr at first}}}%
-      \fi%
+    \ltx at ifpackageloaded{hyperref}{\fnr at ifhyperfnrA% hyperref package loaded
     }{% hyperref package not loaded
-      \hbox {\@textsuperscript {\normalfont \ref{fnr:\fnr at first}}}%
+      \hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr at first}}}%
      }%
   \else%
-    \ltx at ifpackageloaded{hyperref}{% hyperref package loaded
-      \ifHy at hyperfootnotes% option hyperfootnotes=true
-        \hbox{\hyperref[fnr:\fnr at first]{%
-                \@textsuperscript {\normalfont \ref*{fnr:\fnr at first}}}%
-              \@textsuperscript {\normalfont --}%
-              \hyperref[fnr:\arabic{footnote}]{%
-                \@textsuperscript {\normalfont \ref*{%
-                                              fnr:\arabic{footnote}}}}}%
-      \else% option hyperfootnotes=false
-        \hbox {\@textsuperscript {\normalfont \ref*{fnr:\fnr at first}%
-                                       --\ref*{fnr:\arabic{footnote}}}}%
-      \fi%
+    \ltx at ifpackageloaded{hyperref}{\fnr at ifhyperfnrN% hyperref package loaded
     }{% hyperref package not loaded
-      \hbox {\@textsuperscript {\normalfont \ref{fnr:\fnr at first}%
-                                        --\ref{fnr:\arabic{footnote}}}}%
+      \hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr at first}%
+                                        --\ref{fnr:\arabic\@mpfn}}}%
      }%
   \fi%
-\@\xspace%
+%    \end{macrocode}
+%
+% Restore the spacefactor after the environment has ended. \% FMi
+%
+%    \begin{macrocode}
+  \aftergroup\fnr at aftergroup% FMi
 }
 
 %    \end{macrocode}
-%
 % \end{environment}
 %
 % \begin{environment}{footnoterange*}
@@ -666,44 +760,84 @@
 % environment but suppresses all hyperlinks to footnotes inside.
 %
 %    \begin{macrocode}
-
 \newenvironment{footnoterange*}{%
   % at begin of the footnoterange* environment
-  \addtocounter{footnote}{+1}%
-  \xdef\fnr at first{\arabic{footnote}}%
-  \addtocounter{footnote}{-1}%
+  \ifhmode \unskip \fi% FMi
+  \addtocounter\@mpfn{+1}%
+  \xdef\fnr at first{\arabic\@mpfn}%
+  \addtocounter\@mpfn{-1}%
   \let\fnr at origfn\footnote%
   \let\footnote\fnr at rangefootnote%
+  \GlobalLetLtxMacro{\fnr at origfnmark}{\footnotemark}%
+  \GlobalLetLtxMacro{\footnotemark}{\fnr at rangefootnotemark}%
+  \ignorespaces% FMi
 }{% at end of the footnoterange* environment
+  \ifhmode% FMi 
+    \unskip% FMi
+    \xdef\fnr at aftergroup{\spacefactor\the\spacefactor\relax}% FMi
+  \else% FMi
+    \xdef\fnr at aftergroup{\relax}%
+  \fi% FMi
   \let\footnote\fnr at origfn%
-  \ifx\fnr at first\fnr at arabic%
+  \GlobalLetLtxMacro{\footnotemark}{\fnr at origfnmark}%
+  \ifx\fnr at first\fnr at arabic% There is only one reference in the environment.
     \PackageInfo{footnoterange}{%
       Environment footnoterange used,\MessageBreak%
       but only one footnote (number \fnr at first ) is contained%
+      \MessageBreak%
      }%
+%    \end{macrocode}
+% \pagebreak
+%    \begin{macrocode}
     \ltx at ifpackageloaded{hyperref}{% hyperref package loaded
-      \hbox {\@textsuperscript {\normalfont \ref*{fnr:\fnr at first}}}%
+      \hbox{\@textsuperscript{\normalfont \ref*{fnr:\fnr at first}}}%
     }{% hyperref package not loaded
-      \hbox {\@textsuperscript {\normalfont \ref{fnr:\fnr at first}}}%
+      \hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr at first}}}%
      }%
   \else%
     \ltx at ifpackageloaded{hyperref}{% hyperref package loaded
-      \hbox {\@textsuperscript {\normalfont \ref*{fnr:\fnr at first}%
-                                       --\ref*{fnr:\arabic{footnote}}}}%
+      \hbox{\@textsuperscript{\normalfont \ref*{fnr:\fnr at first}%
+                                        --\ref*{fnr:\arabic\@mpfn}}}%
     }{% hyperref package not loaded
-      \hbox {\@textsuperscript {\normalfont \ref{fnr:\fnr at first}%
-                                        --\ref{fnr:\arabic{footnote}}}}%
+      \hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr at first}%
+                                        --\ref{fnr:\arabic\@mpfn}}}%
      }%
   \fi%
-\@\xspace%
+  \aftergroup\fnr at aftergroup% FMi
 }
+
 %    \end{macrocode}
-%
 % \end{environment}
 %
-% |\@\xspace| will preserve the space behind the environment (if there is one).
+% The \xpackage{footnoterange} package does not handle |\footnotemark|s,
+% but at least the user is made aware of this:
 %
+% \begin{macro}{\fnr at rangefootnotemark}
 %    \begin{macrocode}
+
+\newcommand{\fnr at rangefootnotemark}[1][\empty]{%
+  \PackageError{footnoterange}{%
+     \string\footnotemark\space not supported in footnoterange(*) environment%
+   }{The footnoterange package does not handle a \string\footnotemark.\MessageBreak%
+     Either use \string\footnote\string{...\string}\space instead of%
+     \string\footnotemark\space and \string\footnotetext\string{...\string}\MessageBreak%
+     in footnoterange and footnoterange* environments,\MessageBreak%
+     or do not use those environments around a \string\footnotemark\MessageBreak%
+     (or \string\renewcommand\string{\string\fnr at rangefootnotemark\string}\MessageBreak%
+     with your own fixing code).%
+    }%
+  \xdef\fnr at mopt{#1}%
+  \ifx\fnr at mopt\empty%
+    \fnr at origfnmark%
+  \else%
+    \fnr at origfnmark[#1]%
+  \fi%
+}
+
+%    \end{macrocode}
+% \end{macro}
+%
+%    \begin{macrocode}
 %</package>
 %    \end{macrocode}
 %
@@ -713,21 +847,21 @@
 %
 % \subsection{Downloads\label{ss:Downloads}}
 %
-% Everything should become available on \CTAN{} soon,
-% \url{http://www.ctan.org/tex-archive/},
-% but may need additional packages themselves.\\
+% Everything is available on CTAN,
+% \url{https://www.ctan.org/tex-archive/},
+% but may need additional packages themselves.
 %
 % \DescribeMacro{footnoterange.dtx}
-% For unpacking the |footnoterange.dtx| file and constructing the documentation
-% it is required:
+% For unpacking the \xfile{footnoterange.dtx} file
+% and constructing the documentation it is required:
 % \begin{description}
-% \item[-] \TeX{} Format \LaTeXe{}, \url{http://www.CTAN.org/}
+% \item[-] \TeX{} Format \LaTeXe{}, \url{https://www.CTAN.org/}
 %
-% \item[-] document class \xpackage{ltxdoc}, 2007/11/11, v2.0u,
-%           \url{http://ctan.org/pkg/ltxdoc}
+% \item[-] document class \xpackage{ltxdoc}, 2015/03/26, v2.0w,
+%           \url{https://ctan.org/pkg/ltxdoc}
 %
-% \item[-] package \xpackage{holtxdoc}, 2011/02/04, v0.21,
-%           \url{http://ctan.org/pkg/holtxdoc}
+% \item[-] package \xpackage{holtxdoc}, 2012/03/21, v0.24,
+%           \url{https://ctan.org/pkg/holtxdoc}
 % \end{description}
 %
 % \DescribeMacro{footnoterange.sty}
@@ -734,13 +868,10 @@
 % The |footnoterange.sty| for \LaTeXe{} (i.\,e. each document using
 % the \xpackage{footnoterange} package) requires:
 % \begin{description}
-% \item[-] \TeX{} Format \LaTeXe{}, \url{http://www.CTAN.org/}
+% \item[-] \TeX{} Format \LaTeXe{}, \url{https://www.CTAN.org/}
 %
 % \item[-] package \xpackage{ltxcmds}, 2011/04/18, v1.20,
-%           \url{http://ctan.org/pkg/ltxcmds}
-%
-% \item[-] package \xpackage{xspace}, 2009/10/20, v1.13,
-%           \url{http://ctan.org/pkg/xspace}
+%           \url{https://www.ctan.org/pkg/ltxcmds}
 % \end{description}
 %
 % \DescribeMacro{footnoterange-example.tex}
@@ -747,18 +878,18 @@
 % 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}:\\
-%           \CTAN{macros/latex/base/classes.dtx}
+% \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[-] package \xpackage{footnoterange}, 2012/02/17, v1.0a,\\
-%           \url{http://ctan.org/pkg/footnoterange}\\
+% \item[-] package \xpackage{footnoterange}, 2018/10/15, v1.0b,\newline
+%           \url{https://www.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/02/06, v6.82o,\\
-%           \CTAN{macros/latex/contrib/hyperref/hyperref.dtx}
+% \item[-] package \xpackage{hyperref}, 2012/11/06, v6.83m,\newline
+%           \url{https://www.ctan.org/pkg/hyperref}
 % \end{description}
 %
 % \DescribeMacro{Oberdiek}
@@ -767,45 +898,43 @@
 % \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:\\
-% \CTAN{install/macros/latex/contrib/oberdiek.tds.zip}.\\
+% are also available in a TDS compliant ZIP archive:\newline
+% \url{http://mirror.ctan.org/install/macros/latex/contrib/oberdiek.tds.zip}.\newline
 % It is probably best to download and use this, because the packages in there
-% are quite probably both recent and compatible among themselves.\\
+% should be both recent and compatible.
 %
 % \DescribeMacro{hyperref}
 % \noindent \xpackage{hyperref} is not included in that bundle and needs to be
-% downloaded separately,\\
-% \url{http://mirror.ctan.org/install/macros/latex/contrib/hyperref.tds.zip}.\\
+% downloaded separately,\newline
+% \url{http://mirrors.ctan.org/install/macros/latex/contrib/hyperref.tds.zip}.
 %
 % \DescribeMacro{M\"{u}nch}
-% A hyperlinked list of my (other) packages can be found at
-% \url{http://www.Uni-Bonn.de/~uzs5pv/LaTeX.html}.\\
+% A list of my packages can be found at \url{https://www.ctan.org/author/muench-hm}.
 %
 % \pagebreak
 %
 % \subsection{Package, unpacking TDS}
-% \paragraph{Package.} This package is available on \CTAN{}
+% \paragraph{Package.} This package is available on \url{https://www.CTAN.org}.
 % \begin{description}
-% \item[\CTAN{macros/latex/contrib/footnoterange/footnoterange.dtx}]\hspace*{0.1cm} \\
+% \item[\url{http://mirror.ctan.org/macros/latex/contrib/footnoterange/footnoterange.dtx}]\hspace*{0.1cm}
 %       The source file.
-% \item[\CTAN{macros/latex/contrib/footnoterange/footnoterange.pdf}]\hspace*{0.1cm} \\
+% \item[\url{http://mirror.ctan.org/macros/latex/contrib/footnoterange/footnoterange.pdf}]\hspace*{0.1cm}
 %       The documentation.
-% \item[\CTAN{macros/latex/contrib/footnoterange/footnoterange-example.pdf}]\hspace*{0.1cm} \\
+% \item[\url{http://mirror.ctan.org/macros/latex/contrib/footnoterange/footnoterange-example.pdf}]\hspace*{0.1cm}
 %       The compiled example file, as it should look like.
-% \item[\CTAN{macros/latex/contrib/footnoterange/README}]\hspace*{0.1cm} \\
+% \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[\CTAN{install/macros/latex/contrib/footnoterange.tds.zip}]\hspace*{0.1cm} \\
-%       Everything in \xfile{TDS} compliant, compiled format.
+% \item[\url{http://mirror.ctan.org/install/macros/latex/contrib/footnoterange.tds.zip}]\hspace*{0.1cm}
+%       Everything in TDS compliant, compiled format.
 % \end{description}
-% which additionally contains\\
+% which additionally contains\newline
 % \begin{tabular}{ll}
 % footnoterange.ins & The installation file.\\
 % footnoterange.drv & The driver to generate the documentation.\\
-% footnoterange.sty & The \xext{sty}le file.\\
-% footnoterange-example.tex & The example file.
+% footnoterange.sty & The \xext{sty}le file.
 % \end{tabular}
 %
 % \bigskip
@@ -814,12 +943,12 @@
 %
 % \paragraph{Unpacking.} The \xfile{.dtx} file is a self-extracting
 % \docstrip{} archive. The files are extracted by running the
-% \xfile{.dtx} through \plainTeX{}:
+% \xfile{.dtx} through \plainTeX:
 % \begin{quote}
 %   \verb|tex footnoterange.dtx|
 % \end{quote}
 %
-% About generating the documentation see paragraph~\ref{GenDoc} below.\\
+% About generating the documentation see paragraph~\ref{GenDoc} below.
 %
 % \paragraph{TDS.} Now the different files must be moved into
 % the different directories in your installation TDS tree
@@ -893,14 +1022,14 @@
 %   \usebox0
 % \fi
 % \end{quote}
-% If you have a \xfile{docstrip.cfg} that configures and enables \docstrip{}'s
-% \xfile{TDS} installing feature, then some files can already be in the right
-% place, see the documentation of \docstrip{}.
+% 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.
 %
 % \subsection{Refresh file name databases}
 %
-% If your \TeX{}~distribution (\teTeX{}, \mikTeX{},\dots{}) relies on file name
-% databases, you must refresh these. For example, \teTeX{} users run
+% 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|.
 %
 % \subsection{Some details for the interested}
@@ -912,7 +1041,7 @@
 % \item[\LaTeX:] Generate the documentation.
 % \end{description}
 % If you insist on using \LaTeX{} for \docstrip{} (really,
-% \docstrip{} does not need \LaTeX{}), then inform the autodetect routine
+% \docstrip{} does not need \LaTeX ), then inform the autodetect routine
 % about your intention:
 % \begin{quote}
 %   \verb|latex \let\install=y\input{footnoterange.dtx}|
@@ -930,37 +1059,46 @@
 % \end{quote}
 %
 % \noindent An example follows how to generate the
-% documentation with \pdfLaTeX{}:
+% documentation with \pdfLaTeX :
 %
 % \begin{quote}
 %\begin{verbatim}
-%pdflatex footnoterange.dtx
+%pdflatex footnoterange.drv
 %makeindex -s gind.ist footnoterange.idx
-%pdflatex footnoterange.dtx
+%pdflatex footnoterange.drv
 %makeindex -s gind.ist footnoterange.idx
-%pdflatex footnoterange.dtx
+%pdflatex footnoterange.drv
 %\end{verbatim}
 % \end{quote}
 %
 % \subsection{Compiling the example}
 %
-% The example file, \textsf{footnoterange-example.tex}, can be compiled via\\
-% |(pdf)latex footnoterange-example.tex|.\\
+% 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
+% \verb|footnoterange-example.tex| can be created by\newline
+% \indent \verb|tex footnoterange.dtx|.\newline
+% \verb|footnoterange.dtx| is at
+% \url{https://www.ctan.org/pkg/footnoterange}.\newline
 %
 % \section{Acknowledgements}
 %
-% I 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), and the
-% \Newsgroup{comp.text.tex} and \Newsgroup{de.comp.text.tex} newsgroups
-% for their help in all things \TeX{}. This package was created as response
-% to question \textquotedblleft Compressing consecutive footnote
-% marks\textquotedblright{} by user001\\
-% (\url{http://tex.stackexchange.com/users/10127/user001}) on\\
+% 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, everybody of the CTAN team for managing CTAN, and the
+% \Newsgroup{comp.text.tex} and \Newsgroup{de.comp.text.tex}
+% newsgroups and everybody at \url{https://tex.stackexchange.com/}
+% for their help in all things \hbox{\TeX{}.}
+% This package was created as response to question
+% \textquotedblleft Compressing consecutive footnote
+% marks\textquotedblright{} by user001\newline
+% (\url{http://tex.stackexchange.com/users/10127/user001}) on\newline
 % \url{http://tex.stackexchange.com/q/44165/6865}.
 %
 % \newpage
-%
 % \phantomsection
 % \begin{History}\label{History}
 %   \begin{Version}{2011/02/11 v0.1ff.}
@@ -969,6 +1107,12 @@
 %   \begin{Version}{2012/02/17 v1.0a}
 %     \item Package created and uploaded to CTAN.
 %   \end{Version}
+%   \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}}
+%           package as alternative.
+%   \end{Version}
 % \end{History}
 %
 % \bigskip
@@ -976,8 +1120,6 @@
 % When you find a mistake or have a suggestion for an improvement of this package,
 % please send an e-mail to the maintainer, thanks! (Please see BUG REPORTS in the README.)
 %
-% \bigskip
-%
 % \PrintIndex
 %
 % \Finale

Modified: trunk/Master/texmf-dist/source/latex/footnoterange/footnoterange.ins
===================================================================
--- trunk/Master/texmf-dist/source/latex/footnoterange/footnoterange.ins	2018-10-15 21:21:57 UTC (rev 48911)
+++ trunk/Master/texmf-dist/source/latex/footnoterange/footnoterange.ins	2018-10-15 21:22:13 UTC (rev 48912)
@@ -9,14 +9,16 @@
 %% This is a generated file.
 %% 
 %% Project: footnoterange
-%% Version: 2012/02/17 v1.0a
+%% Version: 2018/10/15 v1.0b
 %% 
-%% Copyright (C) 2012 by
+%% Copyright (C) 2012 - 2018 by
 %%     H.-Martin M"unch <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, send an e-mail to the maintainer
+%% (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
@@ -23,9 +25,9 @@
 %% 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
-%%    http://www.latex-project.org/lppl/lppl-1-3c.txt
+%%    https://www.latex-project.org/lppl/lppl-1-3c.txt
 %% and the latest version of this license is in
-%%    http://www.latex-project.org/lppl.txt
+%%    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.
 %% 
@@ -39,10 +41,15 @@
 %%    footnoterange.ins, footnoterange.drv,
 %%    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
+%% 
 \input docstrip.tex
 \Msg{*********************************************************************************}
-\Msg{* Installation                                                                   }
-\Msg{* Package: footnoterange 2012/02/17 v1.0a References to ranges of footnotes (HMM)}
+\Msg{* Installation}
+\Msg{* Package: footnoterange 2018/10/15 v1.0b References to ranges of footnotes (HMM)}
 \Msg{*********************************************************************************}
 
 \keepsilent
@@ -54,14 +61,16 @@
 This is a generated file.
 
 Project: footnoterange
-Version: 2012/02/17 v1.0a
+Version: 2018/10/15 v1.0b
 
-Copyright (C) 2012 by
+Copyright (C) 2012 - 2018 by
     H.-Martin M"unch <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, send an e-mail to the maintainer
+(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
@@ -68,9 +77,9 @@
 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
-   http://www.latex-project.org/lppl/lppl-1-3c.txt
+   https://www.latex-project.org/lppl/lppl-1-3c.txt
 and the latest version of this license is in
-   http://www.latex-project.org/lppl.txt
+   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.
 
@@ -84,6 +93,11 @@
    footnoterange.ins, footnoterange.drv,
    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
+
 \endpreamble
 \let\MetaPrefix\DoubleperCent
 
@@ -103,7 +117,7 @@
 \Msg{* To finish the installation you have to move the following}
 \Msg{* file into a directory searched by TeX:}
 \Msg{*}
-\Msg{*     footnoterange.sty}
+\Msg{* footnoterange.sty}
 \Msg{*}
 \Msg{* To produce the documentation run the file `footnoterange.drv'}
 \Msg{* through (pdf)LaTeX, e.g.}

Modified: trunk/Master/texmf-dist/tex/latex/footnoterange/footnoterange.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/footnoterange/footnoterange.sty	2018-10-15 21:21:57 UTC (rev 48911)
+++ trunk/Master/texmf-dist/tex/latex/footnoterange/footnoterange.sty	2018-10-15 21:22:13 UTC (rev 48912)
@@ -9,14 +9,16 @@
 %% This is a generated file.
 %% 
 %% Project: footnoterange
-%% Version: 2012/02/17 v1.0a
+%% Version: 2018/10/15 v1.0b
 %% 
-%% Copyright (C) 2012 by
+%% Copyright (C) 2012 - 2018 by
 %%     H.-Martin M"unch <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, send an e-mail to the maintainer
+%% (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
@@ -23,9 +25,9 @@
 %% 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
-%%    http://www.latex-project.org/lppl/lppl-1-3c.txt
+%%    https://www.latex-project.org/lppl/lppl-1-3c.txt
 %% and the latest version of this license is in
-%%    http://www.latex-project.org/lppl.txt
+%%    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.
 %% 
@@ -39,32 +41,38 @@
 %%    footnoterange.ins, footnoterange.drv,
 %%    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
+%% 
 \NeedsTeXFormat{LaTeX2e}[2011/06/27]
-\ProvidesPackage{footnoterange}[2012/02/17 v1.0a
+\ProvidesPackage{footnoterange}[2018/10/15 v1.0b
             References to ranges of footnotes (HMM)]
-%% Provides the footnoterange and footnoterange* environment to
+%% Provides the footnoterange and footnoterange* environments to
 %% refer to ranges of footnotes.
-\RequirePackage{ltxcmds}[2011/04/18]% v1.20; for "\ltx at ifpackageloaded"
-\RequirePackage{xspace}[2009/10/20]%  v1.13; for "\@\xspace"
+\RequirePackage{ltxcmds}[2011/11/09]% v1.22; for "\ltx at ifpackageloaded"
+\RequirePackage{letltxmacro}[2010/09/02]% v1.4; for "\GlobalLetLtxMacro"
 
+\newcommand{\fnr at ifhyperrfn}{%
+  \ifHy at hyperfootnotes% option hyperfootnotes=true
+    \addtocounter{Hfootnote}{+1}%
+    % Code from the hyperref package
+      \global\let\Hy at saved@currentHref\@currentHref%
+      \hyper at makecurrent{Hfootnote}%
+      \global\let\Hy at footnote@currentHref\@currentHref%
+      \global\let\@currentHref\Hy at saved@currentHref%
+    % End of code from the hyperref package
+  \fi%
+}
+
 \newcommand{\fnr at rangefootnote}[2][\empty]{%
   \nolinebreak%
   % no \footnotemark here
-  \addtocounter{footnote}{+1}%
-  \ltx at ifpackageloaded{hyperref}{% hyperref loaded
-    \ifHy at hyperfootnotes% option hyperfootnotes=true
-      \addtocounter{Hfootnote}{+1}%
-      % Code from the hyperref package
-        \global\let\Hy at saved@currentHref\@currentHref%
-        \hyper at makecurrent{Hfootnote}%
-        \global\let\Hy at footnote@currentHref\@currentHref%
-        \global\let\@currentHref\Hy at saved@currentHref%
-      % End of code form the hyperref package
-    \fi%
-   }{% hyperref not loaded, nothing to be done here
-   }%
+  \addtocounter\@mpfn{+1}%
+  \ltx at ifpackageloaded{hyperref}{\fnr at ifhyperrfn}{\relax}%
   \xdef\fnr at opt{#1}% contains the optional argument
-  \xdef\fnr at arabic{\arabic{footnote}}%
+  \xdef\fnr at arabic{\arabic\@mpfn}%
   \edef\fnr at formated{\thefootnote}%
   \ifx\fnr at opt\empty%
     \footnotetext{\label{fnr:\fnr at arabic}#2}%
@@ -73,11 +81,12 @@
       Custom footnote-numbers used in a footnoterange\MessageBreak%
       environment: Footnote with natural number\MessageBreak%
       \ifx\fnr at formated\fnr at arabic%
-        \fnr at arabic \space %
+        \fnr at arabic\space%
       \else%
-        \space \fnr at arabic \space (\fnr at formated )\MessageBreak%
+        \space\fnr at arabic\space (\fnr at formated )%
       \fi%
-      was renumbered to \fnr at opt %
+      \MessageBreak%
+      was renumbered to \fnr at opt\MessageBreak%
      }%
     \ltx at ifpackageloaded{hyperref}{% hyperref loaded
       \footnotetext[#1]{\phantomsection\label{fnr:\fnr at arabic}#2}%
@@ -85,90 +94,134 @@
       \footnotetext[#1]{\label{fnr:\fnr at arabic}#2}%
      }%
   \fi%
-}%
+}
 
 
+\newcommand{\fnr at ifhyperfnrA}{%
+  \ifHy at hyperfootnotes% option hyperfootnotes=true
+    \hbox{\hyperref[fnr:\fnr at first]{%
+          \@textsuperscript{\normalfont \ref*{fnr:\fnr at first}}}}%
+  \else% option hyperfootnotes=false
+    \hbox{\@textsuperscript{\normalfont \ref*{fnr:\fnr at first}}}%
+  \fi%
+}
+
+\newcommand{\fnr at ifhyperfnrN}{%
+  \ifHy at hyperfootnotes% option hyperfootnotes=true
+    \hbox{\hyperref[fnr:\fnr at first]{%
+            \@textsuperscript{\normalfont \ref*{fnr:\fnr at first}}}%
+          \@textsuperscript{\normalfont --}%
+          \hyperref[fnr:\arabic\@mpfn]{%
+            \@textsuperscript{\normalfont \ref*{fnr:\arabic\@mpfn}}}}%
+  \else% option hyperfootnotes=false
+    \hbox{\@textsuperscript{\normalfont \ref*{fnr:\fnr at first}%
+                                        --\ref*{fnr:\arabic\@mpfn}}}%
+  \fi%
+}
+
 \newenvironment{footnoterange}{%
   % at begin of the footnoterange environment
-  \addtocounter{footnote}{+1}%
-  \xdef\fnr at first{\arabic{footnote}}%
-  \addtocounter{footnote}{-1}%
+  \ifhmode \unskip \fi% FMi
+  \addtocounter\@mpfn{+1}%
+  \xdef\fnr at first{\arabic\@mpfn}%
+  \addtocounter\@mpfn{-1}%
   \let\fnr at origfn\footnote%
   \let\footnote\fnr at rangefootnote%
+  \GlobalLetLtxMacro{\fnr at origfnmark}{\footnotemark}%
+  \GlobalLetLtxMacro{\footnotemark}{\fnr at rangefootnotemark}%
+  \ignorespaces% FMi
 }{% at end of the footnoterange environment
+  \ifhmode% FMi
+    \unskip% FMi
+    \xdef\fnr at aftergroup{\spacefactor\the\spacefactor\relax}% FMi
+  \else% FMi
+    \xdef\fnr at aftergroup{\relax}%
+  \fi% FMi
   \let\footnote\fnr at origfn%
-  \ifx\fnr at opt\empty%
-  \else%
-    \hspace{-0.85ex}%
-  \fi%
-  \ifx\fnr at first\fnr at arabic%
+  \GlobalLetLtxMacro{\footnotemark}{\fnr at origfnmark}%
+  \ifx\fnr at first\fnr at arabic% There is only one reference in the environment.
     \PackageInfo{footnoterange}{%
       Environment footnoterange used,\MessageBreak%
       but only one footnote (number \fnr at first ) is contained%
       \MessageBreak%
      }%
-    \ltx at ifpackageloaded{hyperref}{% hyperref package loaded
-      \ifHy at hyperfootnotes% option hyperfootnotes=true
-        \hbox{\hyperref[fnr:\fnr at first]{%
-                \@textsuperscript {\normalfont \ref*{fnr:\fnr at first}}}}%
-      \else% option hyperfootnotes=false
-        \hbox {\@textsuperscript {\normalfont \ref*{fnr:\fnr at first}}}%
-      \fi%
+    \ltx at ifpackageloaded{hyperref}{\fnr at ifhyperfnrA% hyperref package loaded
     }{% hyperref package not loaded
-      \hbox {\@textsuperscript {\normalfont \ref{fnr:\fnr at first}}}%
+      \hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr at first}}}%
      }%
   \else%
-    \ltx at ifpackageloaded{hyperref}{% hyperref package loaded
-      \ifHy at hyperfootnotes% option hyperfootnotes=true
-        \hbox{\hyperref[fnr:\fnr at first]{%
-                \@textsuperscript {\normalfont \ref*{fnr:\fnr at first}}}%
-              \@textsuperscript {\normalfont --}%
-              \hyperref[fnr:\arabic{footnote}]{%
-                \@textsuperscript {\normalfont \ref*{%
-                                              fnr:\arabic{footnote}}}}}%
-      \else% option hyperfootnotes=false
-        \hbox {\@textsuperscript {\normalfont \ref*{fnr:\fnr at first}%
-                                       --\ref*{fnr:\arabic{footnote}}}}%
-      \fi%
+    \ltx at ifpackageloaded{hyperref}{\fnr at ifhyperfnrN% hyperref package loaded
     }{% hyperref package not loaded
-      \hbox {\@textsuperscript {\normalfont \ref{fnr:\fnr at first}%
-                                        --\ref{fnr:\arabic{footnote}}}}%
+      \hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr at first}%
+                                        --\ref{fnr:\arabic\@mpfn}}}%
      }%
   \fi%
-\@\xspace%
+  \aftergroup\fnr at aftergroup% FMi
 }
 
-
 \newenvironment{footnoterange*}{%
   % at begin of the footnoterange* environment
-  \addtocounter{footnote}{+1}%
-  \xdef\fnr at first{\arabic{footnote}}%
-  \addtocounter{footnote}{-1}%
+  \ifhmode \unskip \fi% FMi
+  \addtocounter\@mpfn{+1}%
+  \xdef\fnr at first{\arabic\@mpfn}%
+  \addtocounter\@mpfn{-1}%
   \let\fnr at origfn\footnote%
   \let\footnote\fnr at rangefootnote%
+  \GlobalLetLtxMacro{\fnr at origfnmark}{\footnotemark}%
+  \GlobalLetLtxMacro{\footnotemark}{\fnr at rangefootnotemark}%
+  \ignorespaces% FMi
 }{% at end of the footnoterange* environment
+  \ifhmode% FMi
+    \unskip% FMi
+    \xdef\fnr at aftergroup{\spacefactor\the\spacefactor\relax}% FMi
+  \else% FMi
+    \xdef\fnr at aftergroup{\relax}%
+  \fi% FMi
   \let\footnote\fnr at origfn%
-  \ifx\fnr at first\fnr at arabic%
+  \GlobalLetLtxMacro{\footnotemark}{\fnr at origfnmark}%
+  \ifx\fnr at first\fnr at arabic% There is only one reference in the environment.
     \PackageInfo{footnoterange}{%
       Environment footnoterange used,\MessageBreak%
       but only one footnote (number \fnr at first ) is contained%
+      \MessageBreak%
      }%
     \ltx at ifpackageloaded{hyperref}{% hyperref package loaded
-      \hbox {\@textsuperscript {\normalfont \ref*{fnr:\fnr at first}}}%
+      \hbox{\@textsuperscript{\normalfont \ref*{fnr:\fnr at first}}}%
     }{% hyperref package not loaded
-      \hbox {\@textsuperscript {\normalfont \ref{fnr:\fnr at first}}}%
+      \hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr at first}}}%
      }%
   \else%
     \ltx at ifpackageloaded{hyperref}{% hyperref package loaded
-      \hbox {\@textsuperscript {\normalfont \ref*{fnr:\fnr at first}%
-                                       --\ref*{fnr:\arabic{footnote}}}}%
+      \hbox{\@textsuperscript{\normalfont \ref*{fnr:\fnr at first}%
+                                        --\ref*{fnr:\arabic\@mpfn}}}%
     }{% hyperref package not loaded
-      \hbox {\@textsuperscript {\normalfont \ref{fnr:\fnr at first}%
-                                        --\ref{fnr:\arabic{footnote}}}}%
+      \hbox{\@textsuperscript{\normalfont \ref{fnr:\fnr at first}%
+                                        --\ref{fnr:\arabic\@mpfn}}}%
      }%
   \fi%
-\@\xspace%
+  \aftergroup\fnr at aftergroup% FMi
 }
+
+
+\newcommand{\fnr at rangefootnotemark}[1][\empty]{%
+  \PackageError{footnoterange}{%
+     \string\footnotemark\space not supported in footnoterange(*) environment%
+   }{The footnoterange package does not handle a \string\footnotemark.\MessageBreak%
+     Either use \string\footnote\string{...\string}\space instead of%
+     \string\footnotemark\space and \string\footnotetext\string{...\string}\MessageBreak%
+     in footnoterange and footnoterange* environments,\MessageBreak%
+     or do not use those environments around a \string\footnotemark\MessageBreak%
+     (or \string\renewcommand\string{\string\fnr at rangefootnotemark\string}\MessageBreak%
+     with your own fixing code).%
+    }%
+  \xdef\fnr at mopt{#1}%
+  \ifx\fnr at mopt\empty%
+    \fnr at origfnmark%
+  \else%
+    \fnr at origfnmark[#1]%
+  \fi%
+}
+
 \endinput
 %%
 %% End of file `footnoterange.sty'.



More information about the tex-live-commits mailing list