diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/pageslts/pagesLTS.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/pageslts/pagesLTS.dtx | 411 |
1 files changed, 303 insertions, 108 deletions
diff --git a/Master/texmf-dist/source/latex/pageslts/pagesLTS.dtx b/Master/texmf-dist/source/latex/pageslts/pagesLTS.dtx index 347bd1d7ae1..f34389566e0 100644 --- a/Master/texmf-dist/source/latex/pageslts/pagesLTS.dtx +++ b/Master/texmf-dist/source/latex/pageslts/pagesLTS.dtx @@ -1,9 +1,9 @@ % \iffalse meta-comment % % pagesLTS package (when searching on CTAN, look for pageslts) -% file version: v1.1i -% file date: 2010/08/25 -% documentation date: 2010/08/25 +% file version: v1.1j +% file date: 2010/09/12 +% documentation date: 2010/09/12 % % Copyright (C) 2010 H.-Martin M\"{u}nch (Martin dot Muench at Uni-Bonn dot de) % Portions of code copyrighted by other people as marked. @@ -89,7 +89,7 @@ \obeyspaces \Msg{******************************************************} \Msg{* Installation *} -\Msg{* Package: pagesLTS v1.1i 2010/08/25 LaTeX2e package *} +\Msg{* Package: pagesLTS v1.1j 2010/09/12 LaTeX2e package *} \Msg{* Refers to special pages' numbers/names (HMM) *} \Msg{******************************************************} @@ -104,13 +104,13 @@ This is a generated file. IMPORTANT NOTICE: On the first page backslash pagenumbering should be called (with the appropriate argument out of e.g. - * roman - Lowercase Roman numerals: i, ii, iii, iv,... - * Roman - Uppercase Roman numerals: I, II, III, IV,... - * arabic - Arabic numerals: 1, 2, 3, 4,... - * alph - Lowercase letters: a, b, c, d,... - * Alph - Uppercase letters: A, B, C, D,... + * roman - Lowercase Roman numerals: i, ii, iii, iv,... + * Roman - Uppercase Roman numerals: I, II, III, IV,... + * arabic - Arabic numerals: 1, 2, 3, 4,... + * alph - Lowercase letters: a, b, c, d,... + * Alph - Uppercase letters: A, B, C, D,... * fnsymbol - Footnote symbols: *, † (ddagger), ‡ (dddagger), - § (mathsection),... + § (mathsection),... ). The command backslash pagenumbering is renewed, but no change should be visible to the output text, because only labels are added. backslash OrigPagenumbering can be used to get the original meaning @@ -202,7 +202,7 @@ and the derived files % \begin{macrocode} %<*driver> \NeedsTeXFormat{LaTeX2e}[1994/06/01] -\ProvidesFile{pagesLTS.drv}[2010/08/25 v1.1i +\ProvidesFile{pagesLTS.drv}[2010/09/12 v1.1j Refers to special pages' numbers/names (HMM)]% \documentclass[landscape]{ltxdoc}[2007/11/11]% v2.0u \usepackage{geometry}[2010/07/13]% v5.5 @@ -322,7 +322,7 @@ and the derived files % % \fi % -% \CheckSum{1470} +% \CheckSum{1621} % % \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 @@ -375,11 +375,11 @@ and the derived files % \DoNotIndex{{pagesLTS.arabic, pagesLTS.roman, pagesLTS.Roman, pagesLTS.alph, pagesLTS.Alph,\ldots }} % % \title{The \textsf{pagesLTS} package\footnote{This file% -% has version number v1.1i, last% -% revised 2010/08/25, documentation dated 2010/08/25.}} +% has version number v1.1j, last% +% revised 2010/09/12, documentation dated 2010/09/12.}} % \author{H.-Martin M\"{u}nch\\ % (\texttt{Martin dot Muench at Uni-Bonn dot de})} -% \date{2010/08/25} +% \date{2010/09/12} % % \maketitle % @@ -421,7 +421,9 @@ and the derived files % and negative page numbers can be used with \texttt{arabic}, % \texttt{alph}, \texttt{Alph}, \texttt{roman}, \texttt{Roman}, % and \texttt{fnsymbol} page numbering (with \textsf{alphalph} package -% and according options). +% and according options).\\ +% \texttt{\textbackslash pageref*} and \texttt{\textbackslash pageref*}, +% for using \textsf{hyperref} but suppressing links, are supported. % \end{abstract} % % \bigskip @@ -456,7 +458,7 @@ and the derived files % $2\unit{g}$ CO$_{2}$ and $2\unit{g}$ wood: % Therefore please print only if this is really necessary. % -% \newpage +% \pagebreak % % \tableofcontents % @@ -541,7 +543,7 @@ and the derived files % \textbf{logical page numbers} together with % \textsf{hyperref}!\label{logical page numbers} % \begin{description} -% \item [-] In Adobe Reader 9.3.3 enable:\\ +% \item [-] In Adobe Reader 9.3.4 enable:\\ % \underline{E}dit $>$ Prefere\underline{n}ces (Ctrl+k) % $>$ Page Display $>$ Page Content and Information % $>$ Use logical page \nolinebreak{\underline{n}umbers\ .} @@ -583,7 +585,12 @@ and the derived files % with |\lastpageref{...}|). % In particular one can use the \textsf{fancyhdr} or \textsf{nccfancyhdr} % package, or redefinitions of the page headings and footings to get -% a reference to the (very) last page. +% a reference to the (very) last page.\\ +% \DescribeMacro{\pageref*} +% \DescribeMacro{\lastpageref*} +% If the \textsf{hyperref} package is used, the references are hyperlinked +% to their aims. If these hyperlinks shall be suppressed, |\pageref*{...}| +% and |\lastpageref*{...}| can be used. % % \subsection{Options} % \DescribeMacro{options} @@ -740,9 +747,9 @@ and the derived files % Again the \TeX\ capacity will be exceeded before % \nolinebreak{$\pm$ |MAX|\,}$ = \pm 2\,147\,483\,647$, and even if % $1\,000\,000\,000$ is internally possible, this would print -% $1\,000\,000$ times the letter~m, which would require either -% very small print or quite huge paper size.\\ -%(If you have a document with so many pages, you might think +% $1\,000\,000$ times the letter~\textsf{m} (or~\textsf{M}), +% which would require either very small print or quite huge paper size.\\ +% (If you have a document with so many pages, you might think % about splitting it in volumes. And page % \textquotedblleft numbers\textquotedblright\ with % thousands of digits are probably not easy to grasp for the reader, @@ -1218,7 +1225,7 @@ and the derived files % \begin{description} % \item[-] There can be a counter overflow, see preceding subsection~\ref{ss:overflow}. % -% \item[-] Adobe Acrobat Reader 9.3.3 does not show the correct page names +% \item[-] Adobe Acrobat Reader 9.3.4 does not show the correct page names % for all pages with \texttt{fnsymbol} page numbering scheme: % % \begin{center} @@ -1355,7 +1362,7 @@ and the derived files pdfpagelayout=SinglePage,% bookmarksopen=true% } -\usepackage[pagecontinue=true,alphMult=ab,AlphMulti=AB,fnsymbolmult=true,romanMult=true,RomanMulti=true]{pagesLTS}[2010/08/25]% v1.1i +\usepackage[pagecontinue=true,alphMult=ab,AlphMulti=AB,fnsymbolmult=true,romanMult=true,RomanMulti=true]{pagesLTS}[2010/09/12]% v1.1j %% These are the default options. %% \makeatletter \renewcommand{\@evenfoot}% @@ -1385,7 +1392,7 @@ and the derived files \markboth{Example for pagesLTS}{Example for pagesLTS} This example demonstrates the most common uses of package\\ -\textsf{pagesLTS}, v1.1i as of 2010/08/25 (HMM).\\ +\textsf{pagesLTS}, v1.1j as of 2010/09/12 (HMM).\\ The used options were \texttt{pagecontinue=true}, \texttt{alphMult=ab}, \texttt{AlphMulti=AB}, \linebreak \texttt{fnsymbolmult=true}, @@ -1398,6 +1405,29 @@ For more details please see the documentation!\\ package (or remove the package call from the preamble of this document).\\ +\textbf{Hyperlinks or not:} If the \textsf{hyperref} package is loaded, +the references are also hyperlinked:\\ +\smallskip +Page \thepage\ (\theCurrentPage; local: \theCurrentPageLocal) of % +\lastpageref{pagesLTS.roman}(\lastpageref{pagesLTS.roman.local}) + % +\lastpageref{pagesLTS.Roman}(\lastpageref{pagesLTS.Roman.local}) + % +\lastpageref{pagesLTS.arabic}(\lastpageref{pagesLTS.arabic.local}) + % +\lastpageref{pagesLTS.fnsymbol}(\lastpageref{pagesLTS.fnsymbol.local}) + % +\lastpageref{pagesLTS.alph}(\lastpageref{pagesLTS.alph.local}) + % +\lastpageref{pagesLTS.Alph}(\lastpageref{pagesLTS.Alph.local}) = % +\lastpageref{LastPages} pages.\\ +If the \textsf{hyperref} package is loaded, but the hyperlinks of the +references shall be suppressed, \texttt{\textbackslash pageref*\{...\}} +and \texttt{\textbackslash lastpageref*\{...\}} can be used:\\ +Page \thepage\ (\theCurrentPage; local: \theCurrentPageLocal) of % +\lastpageref*{pagesLTS.roman}(\lastpageref*{pagesLTS.roman.local}) + % +\lastpageref*{pagesLTS.Roman}(\lastpageref*{pagesLTS.Roman.local}) + % +\lastpageref*{pagesLTS.arabic}(\lastpageref*{pagesLTS.arabic.local}) + % +\lastpageref*{pagesLTS.fnsymbol}(\lastpageref*{pagesLTS.fnsymbol.local}) + % +\lastpageref*{pagesLTS.alph}(\lastpageref*{pagesLTS.alph.local}) + % +\lastpageref*{pagesLTS.Alph}(\lastpageref*{pagesLTS.Alph.local}) = % +\lastpageref*{LastPages} pages.\\ + \textbf{Trademarks} appear throughout this example without any trademark symbol; they are the property of their respective trademark owner. There is no intention of infringement; the @@ -1405,7 +1435,7 @@ usage is to the benefit of the trademark owner.\\ \textbf{Tip}: Use \textit{logical page numbers} for the display of the pdf!\\ -(In Adobe Reader 9.3.3: \underline{E}dit $>$ +(In Adobe Reader 9.3.4: \underline{E}dit $>$ Prefere\underline{n}ces (Ctrl+k) $>$ Page Display $>$ Page Content and Information $>$ Use logical page \nolinebreak{\underline{n}umbers.)}\\ @@ -1422,7 +1452,7 @@ 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. -\newpage +\pagebreak \tableofcontents @@ -1746,7 +1776,7 @@ current page numbering sheme): \theCurrentPageLocal\\ \section{fnsymbol} -Adobe Acrobat Reader 9.3.3 does not show the correct page names +Adobe Acrobat Reader 9.3.4 does not show the correct page names for all pages with \texttt{fnsymbol} page numbering scheme: \begin{tabular}{c|c|c|c} @@ -2281,7 +2311,7 @@ was added.)\\ % % \begin{macrocode} \NeedsTeXFormat{LaTeX2e}[1994/06/01] -\ProvidesPackage{pagesLTS}[2010/08/25 v1.1i +\ProvidesPackage{pagesLTS}[2010/09/12 v1.1j Refers to special pages' numbers/names (HMM)]% % \end{macrocode} @@ -2330,7 +2360,7 @@ was added.)\\ % is used twice (or even more often). % % \begin{macrocode} -\RequirePackage{undolabl}[2010/07/29]% v1.0f +\RequirePackage{undolabl}[2010/09/12]% v1.0g % \end{macrocode} % % We must not forget to give the source of |Prelim@EveryShipout|: @@ -2619,7 +2649,7 @@ was added.)\\ \def\pagesLTS@undolable{none} % \end{macrocode} % -% \newpage +% \pagebreak % % \begin{macrocode} \def\pagesLTS@messageNPN{% @@ -2856,7 +2886,7 @@ was added.)\\ % links to |page.VIII|. % % \begin{macrocode} - \pagesLTS@putlabel{pagesLTS.#1}{\thepage} + \pagesLTS@putlabel{pagesLTS.#1}{\thepage}{1} \addtocounter{page}{-1}% \ifx\pagesLTS@pnc\pagesLTS@zero% \relax% @@ -2869,7 +2899,7 @@ was added.)\\ % \begin{macrocode} \else% \addtocounter{page}{+1}% - \pagesLTS@putlabel{pagesLTS.#1.local}{\theCurrentPageLocal} + \pagesLTS@putlabel{pagesLTS.#1.local}{\theCurrentPageLocal}{1} % \end{macrocode} % % otherwise write into the \xfile{.aux} file something like\\ @@ -3161,7 +3191,7 @@ was added.)\\ % \end{macrocode} % % For further code for the case of \textsf{fnsymbol} please see below -% (|\lastpagereftxt|, page~\pageref{lastpagereftxtlabel}).\\ +% (|\lastpagereftext|, page~\pageref{lastpagereftextlabel}).\\ % The last page number is saved, in case the same page % numbering scheme is continued later. % @@ -3339,17 +3369,47 @@ was added.)\\ % \end{macrocode} % \end{macro} % +% \begin{macro}{\lastpageref*} +% If \textsf{hyperref} is used, but (some) references to some last page shall +% not be hyperlinked, a command |\lastpageref*| (analogous to |\pageref*|) is +% needed. Therefore we define (analogous to |\HyPsd@pageref| from +% the \textsf{hyperref} package of Heiko Oberdiek) +% +% \begin{macrocode} +% analogous to \HyPsd@pageref from the hyperref package of Heiko Oberdiek: +\def\lastpagereftxt#1{\pagesLTS@@pageref#1*\END} + +% \end{macrocode} +% +% Macro |\pagesLTSpageref| checks, whether a star is present (analogous to +% |\HyPsd@@pageref| again from the \textsf{hyperref} package +% of Heiko Oberdiek: +% +% \begin{macrocode} +\def\pagesLTS@@pageref#1*#2\END{% + \ifx\\#2\\% no star + \pagesLTS@@@pageref{#1}% + \else% star + \expandafter\pagesLTS@@@pagerefstar% + \fi% +} + +\def\pagesLTS@@@pageref#1{\lastpagereftext{#1}} +\def\pagesLTS@@@pagerefstar#1{\lastpagereftextstar{#1}} + +% \end{macrocode} +% \end{macro} +% % \phantomsection -% \begin{macro}{\lastpagereftxt} \label{lastpagereftxtlabel} +% \begin{macro}{\lastpagereftext} \label{lastpagereftextlabel} % \indent When |\lastpageref| is used somewhere inside the \texttt{txt} (text), -% i.\,e. not at the last page, it is defined as |\lastpagereftxt|. +% i.\,e. not at the last page, it is defined as |\lastpagereftxt| (see above). % When the page numbering scheme is \textsf{fnsymbol}, and the \textsf{hyperref} -% package has been loaded, a hyperref instead of a label is used -% for the reference to\\ -% |pagesLTS.fnsymbol.local.\arabic{pagesLTS.fnsymbol.local}|.\\ +% package has been loaded, a hyperref instead of a label is used for the reference +% to |pagesLTS.fnsymbol.local.\arabic{pagesLTS.fnsymbol.local}|.\\ % % \begin{macrocode} -\newcommand{\lastpagereftxt}[1]{% +\newcommand{\lastpagereftext}[1]{% \def\pagesLTS@tmpA{#1}% \def\pagesLTS@tmpB{pagesLTS.fnsymbol.local}% \ifx\pagesLTS@tmpA\pagesLTS@tmpB% @@ -3386,15 +3446,66 @@ was added.)\\ % \end{macrocode} % \end{macro} % +% \begin{macro}{\lastpagereftextstar} +% And the same for the starred version, where no hyperlink is generated: +% +% \begin{macrocode} +\newcommand{\lastpagereftextstar}[1]{% + \def\pagesLTS@tmpA{#1}% + \def\pagesLTS@tmpB{pagesLTS.fnsymbol.local}% + \ifx\pagesLTS@tmpA\pagesLTS@tmpB% + \arabic{pagesLTS.fnsymbol.local}% + \else% + \ifx\pagesLTS@hyper\pagesLTS@one% + \pageref*{#1}% + \else% +% \end{macrocode} +% +% There is no |\pageref*| without \textsf{hyperref}. +% +% \begin{macrocode} + \pageref{#1}% + \fi% + \fi% + \let\pagesLTS@tmpA\undefined% + \let\pagesLTS@tmpB\undefined% + } + +% \end{macrocode} +% \end{macro} +% % \begin{macro}{\lastpagerefend} % \indent When the \textsf{hyperref} package is used and the page numbering scheme % of the last page is \textsf{fnsymbol}, |\lastpageref| is defined as % |\lastpagerefend|. % Hyperrefs instead of labels are used for the reference to -% \textsf{fnsymbol} pages (including the last one). +% \textsf{fnsymbol} pages (including the last one).\\ +% +% Again it must be discriminated between unstarred form and starred form: +% +% \begin{macrocode} +\def\lastpagerefend#1{\pagesLTS@@pagerefend#1*\END} + +\def\pagesLTS@@pagerefend#1*#2\END{% + \ifx\\#2\\% no star + \pagesLTS@@@pagerefend{#1}% + \else% star + \expandafter\pagesLTS@@@pagerefendstar% + \fi% +} + +\def\pagesLTS@@@pagerefend#1{\l@stpagerefend{#1}} +\def\pagesLTS@@@pagerefendstar#1{\l@stpagerefendstar{#1}} + +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\l@stpagerefend} +% The unstarred form (i.\,e. with hyperlinks, if \textsf{hyperref} is loaded, +% otherwise without hyperlinks): % % \begin{macrocode} -\newcommand{\lastpagerefend}[1]{% +\newcommand{\l@stpagerefend}[1]{% \def\pagesLTS@tmpA{#1}% \def\pagesLTS@tmpB{pagesLTS.fnsymbol.local}% \ifx\pagesLTS@tmpA\pagesLTS@tmpB% @@ -3454,6 +3565,88 @@ was added.)\\ % \end{macrocode} % \end{macro} % +% \pagebreak +% +% \begin{macro}{\l@stpagerefendstar}% +% And the starred form, without hyperlinks, even if \textsf{hyperref} is loaded, +% otherwise (i.\,e. without loaded \textsf{hyperref}) this command is not called: +% +% \begin{macrocode} +\newcommand{\l@stpagerefendstar}[1]{% + \def\pagesLTS@tmpA{#1}% + \def\pagesLTS@tmpB{pagesLTS.fnsymbol.local}% + \ifx\pagesLTS@tmpA\pagesLTS@tmpB% + \arabic{pagesLTS.fnsymbol.local}% + \else% + \def\pagesLTS@tmpB{pagesLTS.fnsymbol}% + \ifx\pagesLTS@tmpA\pagesLTS@tmpB% + \ifx\pagesLTS@hyper\pagesLTS@one% + \pageref*{pagesLTS.fnsymbol}% + \else \pageref{pagesLTS.fnsymbol}% + \fi% + \else% + \def\pagesLTS@tmpB{LastPage}% + \ifx\pagesLTS@tmpA\pagesLTS@tmpB% + \ifx\pagesLTS@hyper\pagesLTS@one% + \pageref*{LastPage}% + \else \pageref{LastPage}% + \fi% + \else% + \def\pagesLTS@tmpB{VeryLastPage}% + \ifx\pagesLTS@tmpA\pagesLTS@tmpB% + \ifx\pagesLTS@hyper\pagesLTS@one% + \pageref*{VeryLastPage}% + \else \pageref{VeryLastPage}% + \fi% + \else% + \def\pagesLTS@tmpB{LastPages}% + \ifx\pagesLTS@tmpA\pagesLTS@tmpB% + \ifx\pagesLTS@hyper\pagesLTS@one% + \pageref*{LastPages}% + \else \pageref{LastPages}% + \fi% + \else% + \ifx\pagesLTS@hyper\pagesLTS@one% + \pageref*{#1}% + \else \pageref{#1}% + \fi% + \fi% + \fi% + \fi% + \fi% + \fi% + \let\pagesLTS@tmpA\undefined% + \let\pagesLTS@tmpB\undefined% + } + +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\overrideLTSlabel} +% |\overridelabel| from the \textsf{undolabl} package just |\undonewlabel|s +% a~label and places a new |\label{#1}|, but we need to place a +% |\pagesLTS@putlabel{#1}{#2}|, therefore we need another command instead of +% (but somewhat similar to) |\overridelabel|: +% +% \begin{macrocode} +% somewhat analogous to \overridelabel from the undolabl package: +\newcommand\overrideLTSlabel[2]{% + \@bsphack + \ifnum \value{pagesLTS.pnc.\pagesLTS@pnc}>1% + \edef\pagesLTStmpA{#1}% + \edef\pagesLTStmpB{pagesLTS.\pagesLTS@pnc.local}% + \ifx\pagesLTStmpA\pagesLTStmpB% + \immediate\write\@auxout{\string\undonewlabel{#1}\string\relax}% + \@overriddenmessage s{#1}% + \fi% + \fi% + \pagesLTS@putlabel{#1}{#2}{0}% + \@esphack + } + +% \end{macrocode} +% \end{macro} +% % \begin{macro}{\@pagesLTS@Prelim@EveryShipout} % \indent Because we cannot make references to pages with \textsf{fnsymbol} % page \textquotedblleft numbers\textquotedblright\ manually @@ -3517,27 +3710,16 @@ was added.)\\ \overridelabel{pagesLTS.\pagesLTS@pnc}% % \end{macrocode} % -% The \textsf{undolabl} package has been updated and now uses |\undonewlabel| with only -% one argument. +% We need to go forward one page (and later backward again), because +% |\overrideLTSlabel| calls a |\pagesLTS@putlabel|, and that one uses +% |\addtocounter{page}{-1}...\addtocounter{page}{+1}|, which is not +% needed here. % % \begin{macrocode} - \def\pagesLTS@uv{new}% - \ifx\pagesLTS@undolable\pagesLTS@uv% - \immediate\write\@auxout{\string - \undonewlabel{pagesLTS.\pagesLTS@pnc.local}}% - \else% - \def\pagesLTS@uv{old}% - \ifx\pagesLTS@undolable\pagesLTS@uv% - \immediate\write\@auxout{\string - \undonewlabel{pagesLTS.\pagesLTS@pnc.local}{\on@line}}% - \else% - \relax% Error: no undolabl package at all, message already given above - \fi% - \fi% + \addtocounter{page}{+1}% + \overrideLTSlabel{pagesLTS.\pagesLTS@pnc.local}{\theCurrentPageLocal}% + \addtocounter{page}{-1}% \fi% - \addtocounter{page}{+1}% - \pagesLTS@putlabel{pagesLTS.\pagesLTS@pnc.local}{\theCurrentPageLocal}% - \addtocounter{page}{-1}% \fi% %% Code from prelim2e package again: %% }% @@ -3555,6 +3737,8 @@ was added.)\\ % \end{macrocode} % \end{macro} % +% \pagebreak +% % \begin{macro}{\EveryShipout} % \indent At the end of each shipout, the following commands are executed: % @@ -3741,8 +3925,6 @@ was added.)\\ % \end{macrocode} % \end{macro} % -% \pagebreak -% % \begin{macro}{\pagesLTS@putlabelhyper} % \indent Here the labels are set, if the \textsf{hyperref} package % was loaded. Simply using |\label| would not work, because labels @@ -3822,7 +4004,7 @@ was added.)\\ % that page. We therefore subtract one from the page counter. % % \begin{macrocode} -\newcommand{\pagesLTS@putlabel}[2]{% +\newcommand{\pagesLTS@putlabel}[3]{% \addtocounter{page}{-1}% % \end{macrocode} % @@ -3848,8 +4030,18 @@ was added.)\\ \edef\pagesLTStmpA{#1}% \edef\pagesLTStmpB{pagesLTS.\pagesLTS@pnc.local}% \ifx\pagesLTStmpA\pagesLTStmpB% - \immediate\write\@auxout{\string - \undonewlabel{#1}}% + \edef\pagesLTStmpA{#3}% + \ifx\pagesLTStmpA\pagesLTS@one% +% \end{macrocode} +% +% Only when the third argument of |\pagesLTS@putlabel| is $1$, +% we do need to undo the label. Otherwise there is no label to +% undo, and the \textsf{undolabl} package would give an error. +% +% \begin{macrocode} + \immediate\write\@auxout{\string + \undonewlabel{#1}}% + \fi% \fi% \immediate\write\@auxout{\string \newlabel{#1}{{}{#2}}}% @@ -3868,8 +4060,6 @@ was added.)\\ % \end{macrocode} % \end{macro} % -% \pagebreak -% % \begin{macro}{\pagesLTS@putlabels} % \indent |\pagesLTS@putlabels| is nearly identical to |\pagesLTS@putlabelV|: % @@ -3914,7 +4104,7 @@ was added.)\\ % % \begin{macrocode} \addtocounter{page}{+1}% - \pagesLTS@putlabel{LastPages}{\theCurrentPage} + \pagesLTS@putlabel{LastPages}{\theCurrentPage}{1} % \end{macrocode} % % \noindent Here should follow a\\ @@ -3935,8 +4125,6 @@ was added.)\\ % \end{macrocode} % \end{macro} % -% \pagebreak -% % \begin{macro}{\AtBeginDocument} % \indent |\AtBeginDocument| it is checked whether writing % into an \xfile{.aux}-file is allowed. The \textsf{pagesLTS} @@ -3951,12 +4139,6 @@ was added.)\\ This package does not work without access to an .aux file.\MessageBreak% Press Ctrl+Z to exit.\MessageBreak% }% -% \end{macrocode} -% -% Maybe even abortion of the compilation should be forced? -% -% \begin{macrocode} - % \endinput \fi% % \end{macrocode} % @@ -4016,7 +4198,7 @@ was added.)\\ % \begin{macrocode} \@ifpackageloaded{lastpage}% {\@ifpackagelater{lastpage}{2010/07/28}% 2010/07/29 v1.2a - {\@ifpackagelater{lastpage}{2010/08/24}% 2010/08/25 v1.2d + {\@ifpackagelater{lastpage}{2010/09/11}% 2010/09/12 v1.2e {\PackageWarning{pagesLTS}{lastpage package detected.\MessageBreak% With pagesLTS package in use, lastpage has no function.\MessageBreak% Just remove the lastpage package from your document.\MessageBreak% @@ -4137,8 +4319,7 @@ was added.)\\ % \begin{macrocode} \@ifpackageloaded{undolabl}% {\@ifpackagelater{undolabl}{2010/07/14}% 2010/07/15 v1.0d - {\gdef\pagesLTS@undolable{new}% not necessarily newest, but new - \@ifpackagelater{undolabl}{2010/07/28}% 2010/07/29 v1.0f + {\@ifpackagelater{undolabl}{2010/09/11}% 2010/09/12 v1.0g {% recent version as of the time of last revision of this package: OK }{% old, but not obsolete version \PackageWarningNoLine{pagesLTS}{Old version of undolabl package used.\MessageBreak% @@ -4146,20 +4327,18 @@ was added.)\\ for a new version.\MessageBreak% }% } - }{\gdef\pagesLTS@undolable{old}% - \PackageError{pagesLTS}{Obsolete version of undolabl package used.}{% + }{\PackageError{pagesLTS}{Incompatible, obsolete version of undolabl package used.}{% See ftp://ftp.ctan.org/tex-archive/macros/latex/contrib/undolabl/ \MessageBreak% for a new version.\MessageBreak% - \@ehc% + Type X <return> to quit.\MessageBreak% }% } - }{\gdef\pagesLTS@undolable{none}% - \PackageError{pagesLTS}{Package undolabl missing}{% + }{\PackageError{pagesLTS}{Package undolabl missing}{% Package undolabl not found.\MessageBreak% The pagesLTS package needs the undolabl package.\MessageBreak% See e.g.\MessageBreak% ftp://ftp.ctan.org/tex-archive/macros/latex/contrib/undolabl/ \MessageBreak% - \@ehd% + Type X <return> to quit.\MessageBreak% }% } % \end{macrocode} @@ -4213,6 +4392,8 @@ was added.)\\ % \end{macrocode} % +% \pagebreak +% % \begin{macro}{\AtEndDocument} % \indent |\AtEndDocument| we put in a |\message| to show, % in what order things (which were called) are done @@ -4220,7 +4401,7 @@ was added.)\\ % % \begin{macrocode} \AtEndDocument{% - \message{AED: pagesLTS setting LastPage}% + \message{AED: pagesLTS setting LastPage ^^J}% % \end{macrocode} % % After this we issue a |\clearpage| to put out all floats, @@ -4241,7 +4422,7 @@ was added.)\\ \gdef\string\pagesLTS@eso{\pagesLTS@tmpA}}% \fi% \fi% - \pagesLTS@putlabel{LastPage}{\thepage}% + \pagesLTS@putlabel{LastPage}{\thepage}{1}% % \end{macrocode} % % We do not need the temporary definition any more. @@ -4351,8 +4532,8 @@ was added.)\\ % \textit{after} the \textsf{pagesLTS} package. % % \begin{macrocode} - \message{AED: pagesLTS setting VeryLastPage via AfterLastShipout}% - \pagesLTS@putlabel{VeryLastPage}{\thepage}% + \message{AED: pagesLTS setting VeryLastPage via AfterLastShipout ^^J}% + \pagesLTS@putlabel{VeryLastPage}{\thepage}{1}% % \end{macrocode} % % The \texttt{LastPages} label is set here, and @@ -4360,7 +4541,7 @@ was added.)\\ % and points to the (very) last page. % % \begin{macrocode} - \message{AED: pagesLTS setting LastPages via AfterLastShipout}% + \message{AED: pagesLTS setting LastPages via AfterLastShipout ^^J}% \pagesLTS@putlabels% % \end{macrocode} % @@ -4442,7 +4623,7 @@ was added.)\\ % % \item[-] package \textsf{kvoptions}, 2010/02/22, v3.7, \CTAN{macros/latex/contrib/oberdiek/kvoptions.dtx} % -% \item[-] package \textsf{undolabl}, 2010/07/29, v1.0f, \CTAN{macros/latex/contrib/undolabl/undolabl.dtx}\\ +% \item[-] package \textsf{undolabl}, 2010/09/12, v1.0g, \CTAN{macros/latex/contrib/undolabl/undolabl.dtx}\\ % \end{description} % % \DescribeMacro{pagesLTS-example.tex} @@ -4459,7 +4640,7 @@ was added.)\\ % % \item[-] package \textsf{hyperref}, 2010/06/18, v6.81g, \CTAN{macros/latex/contrib/hyperref.zip} % -% \item[-] package \textsf{pagesLTS}, 2010/08/25, v1.1i, \CTAN{macros/latex/contrib/pagesLTS/pagesLTS.dtx}\\ +% \item[-] package \textsf{pagesLTS}, 2010/09/12, v1.1j, \CTAN{macros/latex/contrib/pagesLTS/pagesLTS.dtx}\\ % (Well, it is the example file for this package, and because you are reading the % documentation for the \textsf{pagesLTS} package, it can be assumed that you already % have some version of it -- is it the current one?) @@ -4563,14 +4744,14 @@ was added.)\\ % That package allows to \textquotedblleft hide\textquotedblright\ some (hyperlinked) % text when printing the document while keeping the layout. % -% \item[lastpage] 2010/08/25, v1.2c, \CTAN{macros/latex/contrib/lastpage/lastpage.dtx} and\\ +% \item[lastpage] 2010/09/12, v1.2e, \CTAN{macros/latex/contrib/lastpage/lastpage.dtx} and\\ % \CTAN{install/macros/latex/contrib/lastpage.tds.zip}\\ % That package allows to refer to the (maybe not so) last page. % \textit{The package was originally invented by Jeffrey P. Goldberg.} % The \textsf{pagesLTS} package is much more mighty, but needs more resources % (e.\,g.~new counters).\\ % -% \item[pagesLTS] 2010/08/25, v1.1i, \CTAN{macros/latex/contrib/pagesLTS/pagesLTS.dtx} and\\ +% \item[pagesLTS] 2010/09/12, v1.1j, \CTAN{macros/latex/contrib/pagesLTS/pagesLTS.dtx} and\\ % \CTAN{install/macros/latex/contrib/pagesLTS.tds.zip}\\ % The package described in this very documentation:\\ % This package allows to refer to the (very) last page, gives the total number of @@ -4585,7 +4766,7 @@ was added.)\\ % Further that package allows to compute \textquotedblleft base to the power of % exponent\textquotedblright\ inside \LaTeX. % -% \item[undolabl] 2010/07/29, v1.0f, \CTAN{macros/latex/contrib/undolabl/undolabl.dtx} and\\ +% \item[undolabl] 2010/09/12, v1.0g, \CTAN{macros/latex/contrib/undolabl/undolabl.dtx} and\\ % \CTAN{install/macros/latex/contrib/undolabl.tds.zip}\\ % That package allows to override existing labels, especially automatically generated ones. % \textit{The main code of that package was invented by } @@ -4602,29 +4783,36 @@ was added.)\\ % % \subsection{Package, unpacking TDS} % -% \paragraph{Package.} This package is available on \CTAN{} (when searching on CTAN, look for pageslts). +% \paragraph{Package.} This package is available on \CTAN{} (when searching on CTAN, +% look for \textsf{pageslts} instead of \textsf{pagesLTS}). % \begin{description} % \item[\CTAN{macros/latex/contrib/pagesLTS/pagesLTS.dtx}]\hspace*{0.1cm} \\ % The source file. -% \item[\CTAN{macros/latex/contrib/pagesLTS/pagesLTS.ins}]\hspace*{0.1cm} \\ -% The installation file. -% \item[\CTAN{macros/latex/contrib/pagesLTS/pagesLTS.drv}]\hspace*{0.1cm} \\ -% The driver to generate the documentation. -% \item[\CTAN{macros/latex/contrib/pagesLTS/ltxdoc.cfg}]\hspace*{0.1cm} \\ -% The \LaTeX documentation configuration file, also for generating the documentation. % \item[\CTAN{macros/latex/contrib/pagesLTS/pagesLTS.pdf}]\hspace*{0.1cm} \\ % The documentation. -% \item[\CTAN{macros/latex/contrib/pagesLTS/pagesLTS.sty}]\hspace*{0.1cm} \\ -% The \xext{sty}le file. -% \item[\CTAN{macros/latex/contrib/pagesLTS/pagesLTS-example.tex}]\hspace*{0.1cm} \\ -% The example file. % \item[\CTAN{macros/latex/contrib/pagesLTS/pagesLTS-example.pdf}]\hspace*{0.1cm} \\ % The compiled example file, as it should look like. +% \item[\CTAN{macros/latex/contrib/pagesLTS/README}]\hspace*{0.1cm} \\ +% The README file. +% \end{description} +% There is also a pageslts.tds.zip available: +% \begin{description} % \item[\CTAN{install/macros/latex/contrib/pageslts.tds.zip}]\hspace*{0.1cm} \\ % Everything in TDS compliant, compiled format. % \end{description} +% which additionally contains\\ +% \begin{tabular}{ll} +% pagesLTS.ins & The installation file.\\ +% pagesLTS.drv & The driver to generate the documentation.\\ +% ltxdoc.cfg & The \LaTeX\ documentation configuration file,% +% \ also for generating the documentation.\\ +% pagesLTS.sty & The \xext{sty}le file.\\ +% pagesLTS-example.tex & The example file.% +% \end{tabular} +% +% \bigskip % -% For required other packages, see the preceding subsection. +% \noindent For required other packages, see the preceding subsection. % % \paragraph{Unpacking.} The \xfile{.dtx} file is a self-extracting % \docstrip\ archive. The files are extracted by running the @@ -4812,7 +5000,7 @@ was added.)\\ % \clearpage\lastpage@putlabel}% % \endinput % \end{verbatim} -% and then \textsf{hyperref} even redefines |\lastpage@putlabel|. +% and then \textsf{hyperref} and \textsf{revtex} even redefine |\lastpage@putlabel|. % \end{Version} % \begin{Version}{2010/02/18, \textsf{lastpage}} % \item \textsf{lastpage} v1.1: Proposed |LastPages| label by H.-Martin M\"{u}nch @@ -4923,6 +5111,13 @@ was added.)\\ % for \textsf{hyperref} package detection this had to be changed to % |\Hy@Warning|. % \end{Version} +% \begin{Version}{2010/09/12 v1.1j} +% \item Bug fix: \LaTeX\ issued a \textquotedblleft \texttt{Label(s) may have changed.% +% Rerun to get cross-references right.}\textquotedblright -warning, +% even if labels had not changed but were overwritten. +% \item Starred version of |\lastpageref| for suppressing hyperlinks introduced. +% \item A lot of details. +% \end{Version} % \end{History} % % % \PrintChanges |