diff options
author | Karl Berry <karl@freefriends.org> | 2012-07-30 22:41:07 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2012-07-30 22:41:07 +0000 |
commit | d3885abf094e492f24813fe3ec1147cb4b4e73a6 (patch) | |
tree | 6cb4420fb21aa9088ecd5c7cd3871e27d7773514 | |
parent | 8868bf00c8ec0ac5ca965d6e13f3a3a7f2fdb483 (diff) |
tablefootnote (30jul12)
git-svn-id: svn://tug.org/texlive/trunk@27256 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Master/texmf-dist/doc/latex/tablefootnote/README | 19 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/tablefootnote/tablefootnote-example.pdf | bin | 144583 -> 144590 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/tablefootnote/tablefootnote-example.tex | 8 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/tablefootnote/tablefootnote.pdf | bin | 354991 -> 344584 bytes | |||
-rw-r--r-- | Master/texmf-dist/source/latex/tablefootnote/tablefootnote.drv | 6 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/tablefootnote/tablefootnote.dtx | 318 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/tablefootnote/tablefootnote.ins | 6 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/tablefootnote/tablefootnote.sty | 145 |
8 files changed, 392 insertions, 110 deletions
diff --git a/Master/texmf-dist/doc/latex/tablefootnote/README b/Master/texmf-dist/doc/latex/tablefootnote/README index 938087e63b1..6c0c98393ec 100644 --- a/Master/texmf-dist/doc/latex/tablefootnote/README +++ b/Master/texmf-dist/doc/latex/tablefootnote/README @@ -1,4 +1,4 @@ -README for tablefootnote package, 2012/01/14, v1.0g +README for tablefootnote package, 2012/07/29, v1.0h TABLE OF CONTENTS @@ -25,9 +25,15 @@ would need to be replaced by \footnotemark in the (sideways)table environment ended. Additionally the counters for footnote and (when the hyperref package is used) Hfootnote would need to be adjusted manually. -(Even more changes would be needed in a sidewaystable.) +Then still the hyperlinks in a (sideways)table would not work. +When the footnotebackref package is used, \footnotemark and +\footnotetext{...} would need to be redefined. Just using \tablefootnote{...} in the (sideways)table does -all this automatically. +all this automatically. (Compatibility with the +footnotebackref package was achieved without redefining +\footnotemark or \footnotetext.) +Redefining \footnote was not done as to not create conflicts +with other packages. 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. @@ -111,12 +117,11 @@ g) Copy the documentation files to ===================== tablefootnote loads other packages: +* letltxmacro, http://ctan.org/pkg/letltxmacro * ltxcmds, http://ctan.org/pkg/ltxcmds -When the etoolbox package is available, it is used +When the etoolbox package is available, it is used: * etoolbox, http://ctan.org/pkg/etoolbox -otherwise the package -* letltxmacro, http://ctan.org/pkg/letltxmacro -is used. (All packages possibly load further packages. +(All packages possibly load further packages. See the result of the \listfiles command in the log-file of the example.) diff --git a/Master/texmf-dist/doc/latex/tablefootnote/tablefootnote-example.pdf b/Master/texmf-dist/doc/latex/tablefootnote/tablefootnote-example.pdf Binary files differindex 4a2c2ffd7ef..54bab4cc62c 100644 --- a/Master/texmf-dist/doc/latex/tablefootnote/tablefootnote-example.pdf +++ b/Master/texmf-dist/doc/latex/tablefootnote/tablefootnote-example.pdf diff --git a/Master/texmf-dist/doc/latex/tablefootnote/tablefootnote-example.tex b/Master/texmf-dist/doc/latex/tablefootnote/tablefootnote-example.tex index 97d1d34f977..1874116b609 100644 --- a/Master/texmf-dist/doc/latex/tablefootnote/tablefootnote-example.tex +++ b/Master/texmf-dist/doc/latex/tablefootnote/tablefootnote-example.tex @@ -9,7 +9,7 @@ %% This is a generated file. %% %% Project: tablefootnote -%% Version: 2012/01/14 v1.0g +%% Version: 2012/07/29 v1.0h %% %% Copyright (C) 2011 - 2012 by %% H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de> @@ -61,11 +61,11 @@ % print is OK for all those options pdfstartview=FitH,% pdfpagelayout=OneColumn% -]{hyperref}[2011/12/04]% v6.82m +]{hyperref}[2012/02/28]% v6.82p % Due to the urls used in the example, either the hyperref or the url % package are needed (or the urls must be removed before compiling). -\usepackage{tablefootnote}[2012/01/14]% v1.0g +\usepackage{tablefootnote}[2012/07/29]% v1.0h \gdef\unit#1{\mathord{\thinspace\mathrm{#1}}}% \listfiles @@ -74,7 +74,7 @@ \section*{Example for tablefootnote} This example demonstrates the use of package\newline -\textsf{tablefootnote}, v1.0g as of 2012/01/14 (HMM).\newline +\textsf{tablefootnote}, v1.0h as of 2012/07/29 (HMM).\newline There were no options used. (The package provides no options.)\newline \textbf{The \texttt{tablefootnote-example.tex} needs to be compiled diff --git a/Master/texmf-dist/doc/latex/tablefootnote/tablefootnote.pdf b/Master/texmf-dist/doc/latex/tablefootnote/tablefootnote.pdf Binary files differindex a519a24c22a..f2b9b714f35 100644 --- a/Master/texmf-dist/doc/latex/tablefootnote/tablefootnote.pdf +++ b/Master/texmf-dist/doc/latex/tablefootnote/tablefootnote.pdf diff --git a/Master/texmf-dist/source/latex/tablefootnote/tablefootnote.drv b/Master/texmf-dist/source/latex/tablefootnote/tablefootnote.drv index d5fc51c1417..a6255fd68cd 100644 --- a/Master/texmf-dist/source/latex/tablefootnote/tablefootnote.drv +++ b/Master/texmf-dist/source/latex/tablefootnote/tablefootnote.drv @@ -9,7 +9,7 @@ %% This is a generated file. %% %% Project: tablefootnote -%% Version: 2012/01/14 v1.0g +%% Version: 2012/07/29 v1.0h %% %% Copyright (C) 2011 - 2012 by %% H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de> @@ -41,9 +41,9 @@ %% \NeedsTeXFormat{LaTeX2e}[2011/06/27] \ProvidesFile{tablefootnote.drv}% - [2012/01/14 v1.0g Table foot notes (HMM)] + [2012/07/29 v1.0h Table foot notes (HMM)] \documentclass{ltxdoc}[2007/11/11]% v2.0u -\usepackage{holtxdoc}[2011/02/04]% v0.21 +\usepackage{holtxdoc}[2012/03/21]% v0.24 %% tablefootnote 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 diff --git a/Master/texmf-dist/source/latex/tablefootnote/tablefootnote.dtx b/Master/texmf-dist/source/latex/tablefootnote/tablefootnote.dtx index e760745a3c1..cc1c3077b04 100644 --- a/Master/texmf-dist/source/latex/tablefootnote/tablefootnote.dtx +++ b/Master/texmf-dist/source/latex/tablefootnote/tablefootnote.dtx @@ -1,7 +1,7 @@ % \iffalse meta-comment % % File: tablefootnote.dtx -% Version: 2012/01/14 v1.0g +% Version: 2012/07/29 v1.0h % % Copyright (C) 2011 - 2012 by % H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de> @@ -84,7 +84,7 @@ \input docstrip.tex \Msg{******************************************************************} \Msg{* Installation *} -\Msg{* Package: tablefootnote 2012/01/14 v1.0g Table foot notes (HMM) *} +\Msg{* Package: tablefootnote 2012/07/29 v1.0h Table foot notes (HMM) *} \Msg{******************************************************************} \keepsilent @@ -96,7 +96,7 @@ This is a generated file. Project: tablefootnote -Version: 2012/01/14 v1.0g +Version: 2012/07/29 v1.0h Copyright (C) 2011 - 2012 by H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de> @@ -181,9 +181,9 @@ the README, and the derived files %<*driver> \NeedsTeXFormat{LaTeX2e}[2011/06/27] \ProvidesFile{tablefootnote.drv}% - [2012/01/14 v1.0g Table foot notes (HMM)] + [2012/07/29 v1.0h Table foot notes (HMM)] \documentclass{ltxdoc}[2007/11/11]% v2.0u -\usepackage{holtxdoc}[2011/02/04]% v0.21 +\usepackage{holtxdoc}[2012/03/21]% v0.24 %% tablefootnote 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 @@ -221,7 +221,7 @@ the README, and the derived files % % \fi % -% \CheckSum{271} +% \CheckSum{431} % % \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 @@ -271,7 +271,7 @@ the README, and the derived files % \DoNotIndex{\value,\arabic,\hline,\text,\caption,\centering,\clear,\url} % % \title{The \xpackage{tablefootnote} package} -% \date{2012/01/14 v1.0g} +% \date{2012/07/29 v1.0h} % \author{H.-Martin M\"{u}nch\\\xemail{Martin.Muench at Uni-Bonn.de}} % % \maketitle @@ -313,11 +313,16 @@ the README, and the derived files % after the \texttt{(sideways)table} environment ended. Additionally the counters % for \texttt{footnote} and (when the \xpackage{hyperref} package is used) % \texttt{Hfootnote} would need to be adjusted manually. Then still the hyperlinks -% in a \texttt{(sideways)table} would not work. Just using |\tablefootnote{...}| -% in the (sideways)table does all this automatically. (Redefining |\footnote| was -% \emph{not} done as to not create conflicts with other packages.) +% in a \texttt{(sideways)table} would not work. When the +% \xpackage{footnotebackref} package is used, |\footnotemark| and +% |\footnotetext{...}| would need to be redefined. +% Just using |\tablefootnote{...}| in the (sideways)table does all this +% automatically. (Compatibility with the \xpackage{footnotebackref} package +% was achieved without redefining |\footnotemark| or |\footnotetext|.) +% Redefining |\footnote| was \emph{not} done as to not create conflicts with +% other packages. % -% \bigskip +% \pagebreak % % \section{Usage} % @@ -327,7 +332,12 @@ the README, and the derived files % \end{quote} % \enlargethispage{\baselineskip} % \noindent in the preamble of your \LaTeXe{} source file and use -% |\tablefootnote{...}| instead of |\footnote{...}| in (sideways)tables. +% |\tablefootnote{...}| instead of |\footnote{...}| in (sideways)tables.\\ +% When the \xpackage{footnotebackref} package is used, +% it must be loaded before the \xpackage{tablefootnote} package.\\ +% When the \xpackage{rotating} package (for |sidewaystable|s) is used, +% it must be loaded before the \xpackage{tablefootnote} package and it must be +% a recent version (v2.16a, 2009/03/28, or newer).\\ % If |\tablefootnote{...}| is used in a tabular environment, which is inside % of a (sideways)table environment, everything is fine, but when the tabular % environment is not inside of a (sideways)table, the \textbf{table}footnote @@ -373,12 +383,14 @@ the README, and the derived files % change the table-caption!) \texttt{sidewaystable} does not work with it.\\ % \url{http://www.ctan.org/pkg/longtable} % +% \pagebreak +% % \item[-] The \xpackage{supertabular} package provides the \texttt{mpsupertabular} % environment as replacement for the combined \texttt{table} and \texttt{tabular} % environments. Footnotes are just tablenotes (with working hyperlinks when using the % \xpackage{hyperref} package), i.\,e. numbered a, b, c and placed below the table % and not at the end of the page. Therefore there is no float problem (because the -% tablenotes numbering is not included in the continouse numbering of the footnotes). +% tablenotes numbering is not included in the continuous numbering of the footnotes). % Placing the \texttt{supertabular} inside of a \texttt{sidewaystable} breaks the % hyperlinks to the tablenotes.\\ % \url{http://www.ctan.org/pkg/supertabular} @@ -389,8 +401,6 @@ the README, and the derived files % included in the continuous numbering of the footnotes there is no float problem.\\ % \url{http://www.ctan.org/pkg/ctable} % -% \pagebreak -% % \item[-] The \xpackage{footnote} package provides |\makesavenoteenv{table}|. After % loading the package and using that command in the preamble, in tables |\footnote{...}| % can be used. Using |\makesavenoteenv{tabular}| and \\ @@ -427,6 +437,8 @@ the README, and the derived files % directly without \xpackage{threeparttablex} (see above).\\ % \url{http://www.ctan.org/pkg/threeparttablex} % +% \pagebreak +% % \item[-] One can manually use |\footnotemark| in the table and |\footnotetext{...}| % after the table environment ended and manually change the |footnote| and % (when the \xpackage{hyperref} package is used) |Hfootnote| counters and needs @@ -440,7 +452,9 @@ the README, and the derived files % \makeatother % \end{verbatim} % before each |\footnotetext{...}|, but with more than very few footnotes this can become -% much work (and prone to produce errors). And this does not even work with sidewaystables. +% much work (and is prone to produce errors). And this does not even work with +% sidewaystables. (And it does not work with the \xpackage{footnotebackref} package +% without redefining |\footnotemark| and |\footnotetext{...}|.) % \end{description} % % \bigskip @@ -479,11 +493,11 @@ the README, and the derived files % print is OK for all those options pdfstartview=FitH,% pdfpagelayout=OneColumn% -]{hyperref}[2011/12/04]% v6.82m +]{hyperref}[2012/02/28]% v6.82p % Due to the urls used in the example, either the hyperref or the url % package are needed (or the urls must be removed before compiling). -\usepackage{tablefootnote}[2012/01/14]% v1.0g +\usepackage{tablefootnote}[2012/07/29]% v1.0h \gdef\unit#1{\mathord{\thinspace\mathrm{#1}}}% \listfiles @@ -492,7 +506,7 @@ the README, and the derived files \section*{Example for tablefootnote} This example demonstrates the use of package\newline -\textsf{tablefootnote}, v1.0g as of 2012/01/14 (HMM).\newline +\textsf{tablefootnote}, v1.0h as of 2012/07/29 (HMM).\newline There were no options used. (The package provides no options.)\newline \textbf{The \texttt{tablefootnote-example.tex} needs to be compiled @@ -656,7 +670,7 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. % % \section{The implementation} % -% We start off by checking that we are loading into \LaTeXe\ and +% We start off by checking that we are loading into \LaTeXe{} and % announcing the name and version of this package. % % \begin{macrocode} @@ -665,7 +679,7 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. % % \begin{macrocode} \NeedsTeXFormat{LaTeX2e}[2011/06/27] -\ProvidesPackage{tablefootnote}[2012/01/14 v1.0g +\ProvidesPackage{tablefootnote}[2012/07/29 v1.0h Table foot notes (HMM)] % \end{macrocode} % @@ -677,17 +691,19 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. % \end{macrocode} % -% We need the \xpackage{ltxcmds} package by \textsc{Heiko Oberdiek}: +% We need the \xpackage{ltxcmds} and \xpackage{letltxmacro} packages +% by \textsc{Heiko Oberdiek}: % % \begin{macrocode} -\RequirePackage{ltxcmds}[2011/04/18]% v1.20 +\RequirePackage{ltxcmds}[2011/11/09]% v1.22 +\RequirePackage{letltxmacro}[2010/09/02]% v1.4 % \end{macrocode} % % A last information for the user: % % \begin{macrocode} -%% tablefootnote may work with earlier versions of LaTeX and that -%% package, but this was not tested. Please consider updating +%% tablefootnote may work with earlier versions of LaTeX and those +%% packages, but this was not tested. Please consider updating %% your LaTeX and packages to the most recent version %% (if they are not already the most recent version). @@ -729,29 +745,103 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. \def\tfn@fnt{0} \def\tfn@swt{0}% _s_ide_w_ays_t_able \def\tfn@fmpw{\relax}% f_oot_m_isc_p_ara_w_arn-switch +\def\tfn@fnbr{0}% f_oot_n_ote_b_ack_r_ef(erence package) + % \end{macrocode} % -% \DescribeMacro{\tfn@footnotemarks} +% \begin{macro}{\tablemakefntext} +% |\tablemakefntext| makes the footnotetext for a footnote in a table. +% +% \begin{macrocode} +\ltx@ifpackageloaded{footnotebackref}{% + \gdef\tfn@fnbr{1}% + \ifx\FootnoteBackref@symbol\empty% + \ifFootnoteBackref@numberlinked% + \newcommand\tablemakefntext[1]{% + \noindent\makebox[1.634em][r]{% + \mbox{\textsuperscript{\normalfont% + \hyperlink{tfn:\theHfootnote}{\@thefnmark}% + }}}% + \,#1% + } + \else + \newcommand\tablemakefntext[1]{% + \noindent\makebox[1.8em][r]{%1.634 + \mbox{\textsuperscript{\normalfont% + \@thefnmark% + }}}% + #1% + } + \fi + \else + \newcommand\tablemakefntext[1]{% + \noindent\makebox[1.8em][r]{% + \mbox{\textsuperscript{\normalfont% + \ifFootnoteBackref@numberlinked% + \hyperlink{tfn:\theHfootnote}{\@thefnmark}\,% + \else% + \@thefnmark% + \fi% + }}}% + \hyperlink{tfn:\theHfootnote}{\FootnoteBackref@symbol}% + #1% + } + \fi +}{ + \newcommand\tablemakefntext[1]{% + \noindent\makebox[1.8em][r]{%1.634 + \mbox{\textsuperscript{\normalfont% + \@thefnmark% + }}}% + #1% + } +} + + +% \end{macrocode} +% +% \end{macro} +% \begin{macro}{\swtablemakefntext} +% +% \begin{macrocode} +\newcommand\swtablemakefntext[1]{\noindent\ #1} + + +% \end{macrocode} +% \end{macro} +% +% \pagebreak +% +% \begin{macro}{\tfn@footnotemarks} % |\tfn@footnotemarks| uses the |\footnotemark| command to place a foot note mark % and decreases the |\tfn@footnotetablecount| (i.\,e.~increases the negative value) -% of the number of footnote(marks) in the table. +% of the number of footnote(marks) in the table. If the \xpackage{footnotebackref} +% package is used, it is also necessary to create an according |\hypertarget| for +% the back reference. % % \begin{macrocode} \newcommand{\tfn@footnotemarks}{% + \hbox{% \footnotemark% + \ltx@ifpackageloaded{footnotebackref}{% + \raisebox{\ht\strutbox}{\hypertarget{tfn:\theHfootnote}{}}% + }{% footnotebackref not loaded + }% + }% \@tempcnta=\tfn@footnotetablecount\relax% \advance\@tempcnta by -1% \xdef\tfn@footnotetablecount{\the\@tempcnta}% } % \end{macrocode} +% \end{macro} % -% \DescribeMacro{\tfn@footmiscparawarn} +% \begin{macro}{\tfn@footmiscparawarn} % When the \xpackage{footmisc} package is used with option |para|, % we need to issue a warning. (Any idea how to resolve this issue?)\\ % It must be given inside of it's own command, because |\ifFN@para| is not -% defined when \xpackage{footmisc} has not been loaded, and then the +% defined when \xpackage{footmisc} has not been loaded, and then the % |\fi| would be a |\fi| without |\if| (and \TeX{} does not like single % |\fi|s). % @@ -769,8 +859,9 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. } % \end{macrocode} +% \end{macro} % -% \DescribeMacro{\tfn@footnotetext} +% \begin{macro}{\tfn@footnotetext} % |\tfn@footnotetext| contains the |\footnotetext{...}| command and handles the % numbering. |\tfn@footnotetext| will be executed after the table. The foot note % counter has been increased automatically with each |\footnotemark|, therefore @@ -807,8 +898,8 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. % found at other places in that same package. % % \begin{macrocode} - % Code form the hyperref package, 2011/10/01, v6.82j, newer versions available - % by Heiko Oberdiek + % Code from the hyperref package by Heiko Oberdiek, + % 2011/10/01, v6.82j, newer versions available \global\let\Hy@saved@currentHref\@currentHref% \hyper@makecurrent{Hfootnote}% \global\let\Hy@footnote@currentHref\@currentHref% @@ -849,22 +940,38 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. % \end{macrocode} % % |\@makefnmark| is \\ -% |\hbox {\@textsuperscript {\normalfont \@thefnmark }}|, +% |\hbox {\@textsuperscript {\normalfont \@thefnmark }}|, \\ % but according to |\show\@thefnmark| here |\@thefnmark| is -% |{\protect \itshape}| instead of \\ -% |\thefootnote| (Why?!). +% |{\protect \itshape}| instead of |\thefootnote| (Why?!).\\ +% If the \xpackage{footnotebackref} package is used, +% back references must be created for the table footnotes, too. % % \begin{macrocode} + \ltx@ifpackageloaded{footnotebackref}{% + \LetLtxMacro{\tfncurrentmft}{\@makefntext}% + \LetLtxMacro{\@makefntext}{\swtablemakefntext}% + \footnotetext{\hbox {\@textsuperscript {\normalfont % + \hyperlink{tfn:\theHfootnote}{\thefootnote}% + }}\thinspace % + \ifx\FootnoteBackref@symbol\empty% + \else\hyperlink{tfn:\theHfootnote}{\FootnoteBackref@symbol}% + \fi% + #1}% + \LetLtxMacro{\@makefntext}{\tfncurrentmft}% + }{% footnotebackref not loaded \footnotetext{\hbox {\@textsuperscript {\normalfont \thefootnote % }}\thinspace #1}% + }% \fi% % \end{macrocode} % +% \pagebreak +% % For further footnotes in the table the \\ -% |\ifx\tfn@footnotetableprint\tfn@footnotezero|\ldots|\fi| form the beginning -% of this |\tfn@footnotetext| macro must not be repeated, therefore we deactivate -% this by defining |\tfn@footnotetableprint| to something other than |0| -% (here |1| is used). +% |\ifx\tfn@footnotetableprint\tfn@footnotezero|\ldots|\fi| \\ +% from the beginning of this |\tfn@footnotetext| macro must not be repeated, +% therefore we deactivate this by defining |\tfn@footnotetableprint| to +% something other than |0| (here |1| is used). % % \begin{macrocode} \gdef\tfn@footnotetableprint{1}% @@ -893,8 +1000,9 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. } % \end{macrocode} +% \end{macro} % -% \DescribeMacro{\tfn@tablefootnoteprintout} +% \begin{macro}{\tfn@tablefootnoteprintout} % When something shall be cleared or redefined, it is a good idea to define it. % It~will be later filled with the foot note text to be printed. % @@ -902,8 +1010,9 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. \newcommand{\tfn@tablefootnoteprintout}{\relax} % \end{macrocode} +% \end{macro} % -% \DescribeMacro{\tablefootnote} +% \begin{macro}{\tablefootnote} % |\tablefootnote{...}| is the command to be used by the user instead of |\footnote{...}| % in the table. It places a foot note mark via |\tfn@footnotemarks| and appends a % |\tfn@footnotetext{#1}| to the |\tfn@tablefootnoteprintout| macro. (And remembers that @@ -918,8 +1027,9 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. } % \end{macrocode} +% \end{macro} % -% \DescribeMacro{\tfn@swtbox} +% \begin{macro}{\tfn@swtbox} % For |sidewaystable|s the |\tfn@tablefootnoteprintout| is placed in a \\ % |\parbox|, which can be placed at the end of the |sidewaystable|: % @@ -934,6 +1044,9 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. } % \end{macrocode} +% \end{macro} +% +% \pagebreak % % |\tfn@tablefootnoteprintout| shall be executed after the end of the table environment. % The \xpackage{etoolbox} package provides very easy syntax for this: @@ -942,9 +1055,16 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. \IfFileExists{etoolbox.sty}{% \RequirePackage{etoolbox}[2011/01/03]% v2.1 \AfterEndEnvironment{table}{% - \tfn@tablefootnoteprintout% - \gdef\tfn@fnt{0}% - } + \ltx@ifpackageloaded{footnotebackref}{% + \LetLtxMacro{\tfncurrentmft}{\@makefntext}% + \LetLtxMacro{\@makefntext}{\tablemakefntext}% + \tfn@tablefootnoteprintout% + \LetLtxMacro{\@makefntext}{\tfncurrentmft}% + }{% footnotebackref not loaded + \tfn@tablefootnoteprintout% + }% + \gdef\tfn@fnt{0}% + }% % \end{macrocode} % % When the \xpackage{rotating} package has been loaded, we need to detect whether the @@ -965,7 +1085,14 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. \AtEndEnvironment{sidewaystable}{% \ifx\tfn@fnt\tfn@footnotezero% \relax \else% - \tfn@swtbox% + \ltx@ifpackageloaded{footnotebackref}{% + \LetLtxMacro{\tfncurrentmft}{\@makefntext}% + \LetLtxMacro{\@makefntext}{\tablemakefntext}% + \tfn@swtbox% + \LetLtxMacro{\@makefntext}{\tfncurrentmft}% + }{% footnotebackref not loaded + \tfn@swtbox% + }% \fi% \gdef\tfn@swt{0}% \gdef\tfn@fnt{0}% @@ -974,8 +1101,6 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. }{% % \end{macrocode} % -% \pagebreak -% % When the \xpackage{etoolbox} package is not available (e.\,g. because of missing % \eTeX{}) we~do a workaround: % @@ -987,7 +1112,6 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. \string\AfterEndEnvironment\space for tablefootnotes% \MessageBreak% }% - \RequirePackage{letltxmacro}[2010/09/02]% v1.4 \@ifpackagelater{letltxmacro}{2010/09/02}% {% >= 2010/09/02, OK \GlobalLetLtxMacro{\tfnorigtable}{\table} @@ -1035,8 +1159,15 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. % % \begin{macrocode} \ltx@LocalAppendToMacro{\float@endH}{% - \tfn@tablefootnoteprintout% - \gdef\tfn@fnt{0}% + \ltx@ifpackageloaded{footnotebackref}{% + \LetLtxMacro{\tfncurrentmft}{\@makefntext}% + \LetLtxMacro{\@makefntext}{\tablemakefntext}% + \tfn@tablefootnoteprintout% + \LetLtxMacro{\@makefntext}{\tfncurrentmft}% + }{% footnotebackref not loaded + \tfn@tablefootnoteprintout% + }% + \gdef\tfn@fnt{0}% }% }{\relax} \tfnorigtable% @@ -1047,7 +1178,14 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. % % \begin{macrocode} \tfnendorigtable% - \tfn@tablefootnoteprintout% + \ltx@ifpackageloaded{footnotebackref}{% + \LetLtxMacro{\tfncurrentmft}{\@makefntext}% + \LetLtxMacro{\@makefntext}{\tablemakefntext}% + \tfn@tablefootnoteprintout% + \LetLtxMacro{\@makefntext}{\tfncurrentmft}% + }{% footnotebackref not loaded + \tfn@tablefootnoteprintout% + }% \gdef\tfn@fnt{0}% }% % \end{macrocode} @@ -1064,7 +1202,14 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. }{% \ifx\tfn@fnt\tfn@footnotezero% \relax \else% - \tfn@swtbox% + \ltx@ifpackageloaded{footnotebackref}{% + \LetLtxMacro{\tfncurrentmft}{\@makefntext}% + \LetLtxMacro{\@makefntext}{\tablemakefntext}% + \tfn@swtbox% + \LetLtxMacro{\@makefntext}{\tfncurrentmft}% + }{% footnotebackref not loaded + \tfn@swtbox% + }% \fi% \gdef\tfn@swt{0}% \gdef\tfn@fnt{0}% @@ -1076,14 +1221,28 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. % \end{macrocode} % % \DescribeMacro{\AtBeginDocument} -% When the \xpackage{rotating} package (for |sidewaystable|s) is used, -% it must be loaded before the \xpackage{tablefootnote} package. -% (If it is loaded |\AtBeginDocument| after this check, the error message -% will not be given, but packages really should be loaded before -% |\AtBeginDocument|.) +% When the \xpackage{rotating} (for |sidewaystable|s) or the +% \xpackage{footnotebackref} (for back references for the footnotes) +% package is used, it must be loaded before the \xpackage{tablefootnote} package. +% Using both packages is also possible, in which case both must be loaded before +% the \xpackage{tablefootnote} package. If any one of those packages is loaded +% |\AtBeginDocument| after this check, the according error message will not be +% given, but packages really should be loaded before |\AtBeginDocument|. % % \begin{macrocode} \AtBeginDocument{% + \ltx@ifpackageloaded{footnotebackref}{% + \ifx\tfn@fnbr\tfn@footnotezero% + \PackageError{tablefootnote}{% + Package footnotebackref loaded after tablefootnote}{% + When using both the footnotebackref and the tablefootnote package,% + \MessageBreak% + the footnotebackref package MUST be loaded before the tablefootnote% + \space package!\MessageBreak% + }% + \fi% + }{% else \relax + } \ltx@ifpackageloaded{rotating}{% \ifx\tfn@rotating\tfn@footnotezero% \PackageError{tablefootnote}{% @@ -1098,8 +1257,6 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. } % \end{macrocode} % -% \pagebreak -% % When the document is compiled with \LuaLaTeX{}, hyperlinks in rotated content % will be misplaced, regardless of the use of the \xpackage{tablefootnote} package % (or of tables or footnotes). The text to be printed will be OK. @@ -1145,10 +1302,10 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. % \item[-] document class \xpackage{ltxdoc}, 2007/11/11, v2.0u, % \url{http://ctan.org/pkg/ltxdoc} % -% \item[-] package \xpackage{holtxdoc}, 2011/02/04, v0.21, +% \item[-] package \xpackage{holtxdoc}, 2012/03/21, v0.24, % \url{http://ctan.org/pkg/holtxdoc} % -% \item[-] package \xpackage{hypdoc}, 2010/03/26, v1.9, +% \item[-] package \xpackage{hypdoc}, 2011/08/19, v1.11, % \url{http://ctan.org/pkg/hypdoc} % \end{description} % @@ -1158,18 +1315,20 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. % \begin{description} % \item[-] \TeX{} Format \LaTeXe{}, \url{http://www.CTAN.org/} % -% \item[-] package \xpackage{ltxcmds}, 2011/04/18, v1.20, +% \item[-] package \xpackage{letltxmacro}, 2010/09/02, v1.4, +% \url{http://ctan.org/pkg/letltxmacro}. +% +% \item[-] package \xpackage{ltxcmds}, 2011/11/09, v1.22, % \url{http://ctan.org/pkg/ltxcmds} % \end{description} % % When the \xpackage{hyperref} package is used, also the \xpackage{ifluatex} package % is needed, but it is already loaded automatically by the \xpackage{hyperref} % package.\\ -% When the \xpackage{etoolbox} package is available, it is used, -% otherwise the \xpackage{letltxmacro} package is used: +% When the \xpackage{etoolbox} package is available, it is used: % \begin{description} -% \item[-] package \xpackage{letltxmacro}, 2010/09/02, v1.4, -% \url{http://ctan.org/pkg/letltxmacro}. +% \item[-] package \xpackage{etoolbox}, 2011/01/03, v2.1, +% \url{http://ctan.org/pkg/etoolbox}. % \end{description} % % \DescribeMacro{tablefootnote-example.tex} @@ -1189,10 +1348,10 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. % \url{http://ctan.org/pkg/placeins}\\ % for |\FloatBarrier| % -% \item[-] package \xpackage{hyperref}, 2011/12/04, v6.82m, +% \item[-] package \xpackage{hyperref}, 2012/02/28, v6.82p, % \url{http://ctan.org/pkg/hyperref} % -% \item[-] package \xpackage{tablefootnote}, 2012/01/14, v1.0g,\\ +% \item[-] package \xpackage{tablefootnote}, 2012/07/29, v1.0h,\\ % \url{http://ctan.org/pkg/tablefootnote}\\ % (Well, it is the example file for this package, and because you % are reading the documentation for the \xpackage{tablefootnote} package, @@ -1399,14 +1558,13 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. % the \xpackage{hyperref}, \xpackage{ifluatex}, \xpackage{letltxmacro}, % \xpackage{ltxcmds}, as well as a~lot~(!) of other useful packages % (from which I also got everything I know about creating a file in -% \xext{dtx} format, ok, say it: copying), +% \xext{dtx} format, OK, say it: copying), % and for information about the \pdfTeX{}-bug, % \textsc{Arno Trautmann} for reporting the bug (misplaced hyperreferences in % |sidewaystable|s using \LuaTeX{}, independently of the \xpackage{tablefootnote} -% package or footnotes at all)\footnote{The \xpackage{tablefootnote} package % -% seems to be helpful to detect issues in other things (which does not mean % -% that it does not create its own bugs!).} and the \Newsgroup{comp.text.tex} -% and \Newsgroup{de.comp.text.tex} newsgroups for their help in all things \TeX{}. +% package or footnotes at all) and the \Newsgroup{comp.text.tex} +% and \Newsgroup{de.comp.text.tex} newsgroups as well as everybody at +% \url{http://tex.stackexchange.com/} for their help in all things \TeX{}. % % \pagebreak % @@ -1481,8 +1639,8 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. % \end{verbatim} % between the |sidewaystable|s and their footnotes. % \item The warning about un-regarded |para|-option of \xpackage{footmoisc} -% package is only given at the second |tablefootnote| in a |sidewaystable|, -% not repeatedly for every |tablefootnote| in a |sidewaystable|. +% package is only given at the second |tablefootnote| in a |sidewaystable|, +% not repeatedly for every |tablefootnote| in a |sidewaystable|. % \item Minor details. % \end{Version} % \begin{Version}{2012/01/01 v1.0f} @@ -1493,7 +1651,13 @@ tablefootnote\footnote{\url{http://CTAN.org/pkg/tablefootnote}} package. % \begin{Version}{2012/01/14 v1.0g} % \item Bugfix: There was a |relax| instead of a |\relax|, fixed. % \end{Version} -% \end{History} +% \begin{Version}{2012/07/29 v1.0h} +% \item \xpackage{tablefootnote} is now compatible to the new +% \xpackage{footnotebackref} package, 2012/07/01, v1.0, +% \url{http://www.ctan.org/pkg/footnotebackref}. +% \item Minor details. +% \end{Version} +% \end{History} % % \bigskip % diff --git a/Master/texmf-dist/source/latex/tablefootnote/tablefootnote.ins b/Master/texmf-dist/source/latex/tablefootnote/tablefootnote.ins index e9fc9c0820d..4f0c71b9664 100644 --- a/Master/texmf-dist/source/latex/tablefootnote/tablefootnote.ins +++ b/Master/texmf-dist/source/latex/tablefootnote/tablefootnote.ins @@ -9,7 +9,7 @@ %% This is a generated file. %% %% Project: tablefootnote -%% Version: 2012/01/14 v1.0g +%% Version: 2012/07/29 v1.0h %% %% Copyright (C) 2011 - 2012 by %% H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de> @@ -42,7 +42,7 @@ \input docstrip.tex \Msg{******************************************************************} \Msg{* Installation *} -\Msg{* Package: tablefootnote 2012/01/14 v1.0g Table foot notes (HMM) *} +\Msg{* Package: tablefootnote 2012/07/29 v1.0h Table foot notes (HMM) *} \Msg{******************************************************************} \keepsilent @@ -54,7 +54,7 @@ This is a generated file. Project: tablefootnote -Version: 2012/01/14 v1.0g +Version: 2012/07/29 v1.0h Copyright (C) 2011 - 2012 by H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de> diff --git a/Master/texmf-dist/tex/latex/tablefootnote/tablefootnote.sty b/Master/texmf-dist/tex/latex/tablefootnote/tablefootnote.sty index ee680d0fe5f..ba844aa9b72 100644 --- a/Master/texmf-dist/tex/latex/tablefootnote/tablefootnote.sty +++ b/Master/texmf-dist/tex/latex/tablefootnote/tablefootnote.sty @@ -9,7 +9,7 @@ %% This is a generated file. %% %% Project: tablefootnote -%% Version: 2012/01/14 v1.0g +%% Version: 2012/07/29 v1.0h %% %% Copyright (C) 2011 - 2012 by %% H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de> @@ -40,14 +40,15 @@ %% tablefootnote-example.tex, tablefootnote-example.pdf. %% \NeedsTeXFormat{LaTeX2e}[2011/06/27] -\ProvidesPackage{tablefootnote}[2012/01/14 v1.0g +\ProvidesPackage{tablefootnote}[2012/07/29 v1.0h Table foot notes (HMM)] %% Provides the \tablefootnote{...} command %% for footnotes in (sideways)tables. -\RequirePackage{ltxcmds}[2011/04/18]% v1.20 -%% tablefootnote may work with earlier versions of LaTeX and that -%% package, but this was not tested. Please consider updating +\RequirePackage{ltxcmds}[2011/11/09]% v1.22 +\RequirePackage{letltxmacro}[2010/09/02]% v1.4 +%% tablefootnote may work with earlier versions of LaTeX and those +%% packages, but this was not tested. Please consider updating %% your LaTeX and packages to the most recent version %% (if they are not already the most recent version). @@ -73,9 +74,62 @@ \def\tfn@fnt{0} \def\tfn@swt{0}% _s_ide_w_ays_t_able \def\tfn@fmpw{\relax}% f_oot_m_isc_p_ara_w_arn-switch +\def\tfn@fnbr{0}% f_oot_n_ote_b_ack_r_ef(erence package) + +\ltx@ifpackageloaded{footnotebackref}{% + \gdef\tfn@fnbr{1}% + \ifx\FootnoteBackref@symbol\empty% + \ifFootnoteBackref@numberlinked% + \newcommand\tablemakefntext[1]{% + \noindent\makebox[1.634em][r]{% + \mbox{\textsuperscript{\normalfont% + \hyperlink{tfn:\theHfootnote}{\@thefnmark}% + }}}% + \,#1% + } + \else + \newcommand\tablemakefntext[1]{% + \noindent\makebox[1.8em][r]{%1.634 + \mbox{\textsuperscript{\normalfont% + \@thefnmark% + }}}% + #1% + } + \fi + \else + \newcommand\tablemakefntext[1]{% + \noindent\makebox[1.8em][r]{% + \mbox{\textsuperscript{\normalfont% + \ifFootnoteBackref@numberlinked% + \hyperlink{tfn:\theHfootnote}{\@thefnmark}\,% + \else% + \@thefnmark% + \fi% + }}}% + \hyperlink{tfn:\theHfootnote}{\FootnoteBackref@symbol}% + #1% + } + \fi +}{ + \newcommand\tablemakefntext[1]{% + \noindent\makebox[1.8em][r]{%1.634 + \mbox{\textsuperscript{\normalfont% + \@thefnmark% + }}}% + #1% + } +} + +\newcommand\swtablemakefntext[1]{\noindent\ #1} \newcommand{\tfn@footnotemarks}{% + \hbox{% \footnotemark% + \ltx@ifpackageloaded{footnotebackref}{% + \raisebox{\ht\strutbox}{\hypertarget{tfn:\theHfootnote}{}}% + }{% footnotebackref not loaded + }% + }% \@tempcnta=\tfn@footnotetablecount\relax% \advance\@tempcnta by -1% \xdef\tfn@footnotetablecount{\the\@tempcnta}% @@ -104,8 +158,8 @@ \addtocounter{footnote}{+1}% \ltx@ifpackageloaded{hyperref}{% \addtocounter{Hfootnote}{+1}% - % Code form the hyperref package, 2011/10/01, v6.82j, newer versions available - % by Heiko Oberdiek + % Code from the hyperref package by Heiko Oberdiek, + % 2011/10/01, v6.82j, newer versions available \global\let\Hy@saved@currentHref\@currentHref% \hyper@makecurrent{Hfootnote}% \global\let\Hy@footnote@currentHref\@currentHref% @@ -121,8 +175,21 @@ \ltx@ifpackageloaded{footmisc}{\tfn@fmpw}{\relax}% \gdef\tfn@fmpw{\relax}% \fi% + \ltx@ifpackageloaded{footnotebackref}{% + \LetLtxMacro{\tfncurrentmft}{\@makefntext}% + \LetLtxMacro{\@makefntext}{\swtablemakefntext}% + \footnotetext{\hbox {\@textsuperscript {\normalfont % + \hyperlink{tfn:\theHfootnote}{\thefootnote}% + }}\thinspace % + \ifx\FootnoteBackref@symbol\empty% + \else\hyperlink{tfn:\theHfootnote}{\FootnoteBackref@symbol}% + \fi% + #1}% + \LetLtxMacro{\@makefntext}{\tfncurrentmft}% + }{% footnotebackref not loaded \footnotetext{\hbox {\@textsuperscript {\normalfont \thefootnote % }}\thinspace #1}% + }% \fi% \gdef\tfn@footnotetableprint{1}% \@tempcnta=\tfn@footnotetablecount\relax% @@ -156,9 +223,16 @@ \IfFileExists{etoolbox.sty}{% \RequirePackage{etoolbox}[2011/01/03]% v2.1 \AfterEndEnvironment{table}{% - \tfn@tablefootnoteprintout% - \gdef\tfn@fnt{0}% - } + \ltx@ifpackageloaded{footnotebackref}{% + \LetLtxMacro{\tfncurrentmft}{\@makefntext}% + \LetLtxMacro{\@makefntext}{\tablemakefntext}% + \tfn@tablefootnoteprintout% + \LetLtxMacro{\@makefntext}{\tfncurrentmft}% + }{% footnotebackref not loaded + \tfn@tablefootnoteprintout% + }% + \gdef\tfn@fnt{0}% + }% \ltx@ifpackageloaded{rotating}{% \AtBeginEnvironment{sidewaystable}{% \gdef\tfn@swt{1}% @@ -166,7 +240,14 @@ \AtEndEnvironment{sidewaystable}{% \ifx\tfn@fnt\tfn@footnotezero% \relax \else% - \tfn@swtbox% + \ltx@ifpackageloaded{footnotebackref}{% + \LetLtxMacro{\tfncurrentmft}{\@makefntext}% + \LetLtxMacro{\@makefntext}{\tablemakefntext}% + \tfn@swtbox% + \LetLtxMacro{\@makefntext}{\tfncurrentmft}% + }{% footnotebackref not loaded + \tfn@swtbox% + }% \fi% \gdef\tfn@swt{0}% \gdef\tfn@fnt{0}% @@ -180,7 +261,6 @@ \string\AfterEndEnvironment\space for tablefootnotes% \MessageBreak% }% - \RequirePackage{letltxmacro}[2010/09/02]% v1.4 \@ifpackagelater{letltxmacro}{2010/09/02}% {% >= 2010/09/02, OK \GlobalLetLtxMacro{\tfnorigtable}{\table} @@ -209,14 +289,28 @@ \renewenvironment{table}{% \ltx@ifpackageloaded{float}{% \ltx@LocalAppendToMacro{\float@endH}{% - \tfn@tablefootnoteprintout% - \gdef\tfn@fnt{0}% + \ltx@ifpackageloaded{footnotebackref}{% + \LetLtxMacro{\tfncurrentmft}{\@makefntext}% + \LetLtxMacro{\@makefntext}{\tablemakefntext}% + \tfn@tablefootnoteprintout% + \LetLtxMacro{\@makefntext}{\tfncurrentmft}% + }{% footnotebackref not loaded + \tfn@tablefootnoteprintout% + }% + \gdef\tfn@fnt{0}% }% }{\relax} \tfnorigtable% }{% \tfnendorigtable% - \tfn@tablefootnoteprintout% + \ltx@ifpackageloaded{footnotebackref}{% + \LetLtxMacro{\tfncurrentmft}{\@makefntext}% + \LetLtxMacro{\@makefntext}{\tablemakefntext}% + \tfn@tablefootnoteprintout% + \LetLtxMacro{\@makefntext}{\tfncurrentmft}% + }{% footnotebackref not loaded + \tfn@tablefootnoteprintout% + }% \gdef\tfn@fnt{0}% }% \ltx@ifpackageloaded{rotating}{% @@ -228,7 +322,14 @@ }{% \ifx\tfn@fnt\tfn@footnotezero% \relax \else% - \tfn@swtbox% + \ltx@ifpackageloaded{footnotebackref}{% + \LetLtxMacro{\tfncurrentmft}{\@makefntext}% + \LetLtxMacro{\@makefntext}{\tablemakefntext}% + \tfn@swtbox% + \LetLtxMacro{\@makefntext}{\tfncurrentmft}% + }{% footnotebackref not loaded + \tfn@swtbox% + }% \fi% \gdef\tfn@swt{0}% \gdef\tfn@fnt{0}% @@ -238,6 +339,18 @@ } \AtBeginDocument{% + \ltx@ifpackageloaded{footnotebackref}{% + \ifx\tfn@fnbr\tfn@footnotezero% + \PackageError{tablefootnote}{% + Package footnotebackref loaded after tablefootnote}{% + When using both the footnotebackref and the tablefootnote package,% + \MessageBreak% + the footnotebackref package MUST be loaded before the tablefootnote% + \space package!\MessageBreak% + }% + \fi% + }{% else \relax + } \ltx@ifpackageloaded{rotating}{% \ifx\tfn@rotating\tfn@footnotezero% \PackageError{tablefootnote}{% |