From d95bf37641f0782c7c929b8977be9f84d45b0b3f Mon Sep 17 00:00:00 2001 From: Manuel Pégourié-Gonnard Date: Tue, 2 Aug 2011 19:22:35 +0000 Subject: papermas 2011/06/02, v1.0f git-svn-id: svn://tug.org/texlive/trunk@23343 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/papermas/README | 24 +- Master/texmf-dist/doc/latex/papermas/ltxdoc.cfg | 103 --- .../doc/latex/papermas/papermas-example.pdf | Bin 83278 -> 83509 bytes .../doc/latex/papermas/papermas-example.tex | 26 +- Master/texmf-dist/doc/latex/papermas/papermas.pdf | Bin 360803 -> 339024 bytes .../texmf-dist/source/latex/papermas/papermas.drv | 55 +- .../texmf-dist/source/latex/papermas/papermas.dtx | 758 +++++++++------------ .../texmf-dist/source/latex/papermas/papermas.ins | 82 +-- Master/texmf-dist/tex/latex/papermas/papermas.sty | 195 +++--- 9 files changed, 509 insertions(+), 734 deletions(-) delete mode 100644 Master/texmf-dist/doc/latex/papermas/ltxdoc.cfg diff --git a/Master/texmf-dist/doc/latex/papermas/README b/Master/texmf-dist/doc/latex/papermas/README index 5fa74fc9203..54f9e3a3eb6 100644 --- a/Master/texmf-dist/doc/latex/papermas/README +++ b/Master/texmf-dist/doc/latex/papermas/README @@ -1,4 +1,4 @@ -README for papermas package, 2011/02/01, v1.0e +README for papermas package, 2011/06/02, v1.0f TABLE OF CONTENTS @@ -21,11 +21,9 @@ TABLE OF CONTENTS This package allows to compute the mass of a printed version of a document, useful e.g. when sending it by mail to determine the postage. -Warning/Disclaimer: The mass of (printer's) ink has to be added (and that -of envelope, address sticker, stamps,...). So, this is only an estimation without -guarantee - do not sue me, if you have got to pay excess postage! - -Further it allows to compute "base to the power of exponent" inside LaTeX. +Warning/Disclaimer: The mass of (printer's) ink has to be added and that +of envelope, address sticker, stamps,... Thus this is only an estimation +without guarantee - do not sue me, if you have got to pay excess postage! 2 DOWNLOAD @@ -35,7 +33,7 @@ Further it allows to compute "base to the power of exponent" inside LaTeX. CTAN:macros/latex/contrib/papermas/ Also a ZIP file is provided that contains the files, already -sorted in a TDS tree (should become available on CTAN soon): +sorted in a TDS tree: CTAN:install/macros/latex/contrib/papermas.tds.zip `CTAN:' means one of the `Comprehensive TeX Archive Network' @@ -44,9 +42,9 @@ nodes or one of its mirrors. This is explained in The CTAN stuff will be mirrored automatically from the ftp server, so - ftp://ftp.tug.org/pub/tex/pagesLTS/ + ftp://ftp.tug.org/pub/tex/papermas/ corresponds to - CTAN:macros/latex/contrib/pagesLTS/ + CTAN:macros/latex/contrib/papermas/ 3 INSTALLATION @@ -90,11 +88,13 @@ e) Update the databases if necessary, e. g. for teTeX: Depending on the driver and option settings, papermas loads other packages: * kvoptions.sty: - CTAN:macros/latex/contrib/oberdiek/kvoptions.pdf + CTAN:macros/latex/contrib/oberdiek/kvoptions.dtx +* intcalc.sty: + CTAN:macros/latex/contrib/oberdiek/intcalc.dtx * pagesLTS.sty: - CTAN:macros/latex/contrib/pagesLTS/pagesLTS.dtx + CTAN:macros/latex/contrib/pageslts/pagesLTS.dtx which again load other packages -(see the result of the \listfiles comman in the log-file +(see the result of the \listfiles command in the log-file of the example). diff --git a/Master/texmf-dist/doc/latex/papermas/ltxdoc.cfg b/Master/texmf-dist/doc/latex/papermas/ltxdoc.cfg deleted file mode 100644 index 306111f4a19..00000000000 --- a/Master/texmf-dist/doc/latex/papermas/ltxdoc.cfg +++ /dev/null @@ -1,103 +0,0 @@ -%% -%% This is file `ltxdoc.cfg', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% papermas.dtx (with options: `ltxdoc') -%% -%% This is a generated file. -%% -%% IMPORTANT NOTICE: -%% The package takes options. -%% -%% The usual disclaimers apply: -%% 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 -%% (Martin dot Muench at Uni-Bonn dot de). -%% -%% This work consists of the main source file papermas.dtx -%% and the derived files -%% papermas.sty, papermas.pdf, papermas.ins, papermas.drv, -%% papermas-example.tex. -%% -\NeedsTeXFormat{LaTeX2e}[1994/06/01] -\ProvidesFile{ltxdoc.cfg}[2011/02/01 v1.0b configuration file for papermas (HMM)] - %% Code from original ltxdoc.cfg [2007/01/08 latex-tds: ltxdoc.cls configuration (HO)], %% - % copyrighted 2006, 2007 Heiko Oberdiek, part of project `latex-tds'. - % That file may be distributed and/or modified under the - % conditions of the LaTeX Project Public License, either version 1.3 - % of this license or (at your option) any later version. - % 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. - % That work has the LPPL maintenance status `maintained'. - % The Current Maintainer of that work is Heiko Oberdiek. - % - \PassOptionsToClass{a4paper}{article} - \AtEndOfClass{% - \RequirePackage[numbered]{hypdoc}[2010/03/26]% v1.9 - \pdfstringdefDisableCommands{% - \let\env\relax % longtable.dtx - \let\mytt\relax % tabularx.dtx - }% - \addtolength{\topmargin}{-10mm}% - \addtolength{\textheight}{20mm}% - % Depending on the page style, the head or foot area - % are put into the text area. - % Usually the page style is the default "plain". - % tools/verbatim.dtx uses "myheadings". - \def\string@plain{plain}% - \def\string@myheadings{myheadings}% - \def\current@pagestyle{plain}% - \let\ltxdoc@cfg@pagestyle\pagestyle - \def\pagestyle#1{% - \def\current@pagestyle{#1}% - \ltxdoc@cfg@pagestyle{#1}% - }% - \edef\ltxdoc@cfg@jobname{\jobname}% - \def\ltxdoc@cfg@longtable{longtable}% - \@onelevel@sanitize\ltxdoc@cfg@longtable - \ifx\ltxdoc@cfg@jobname\ltxdoc@cfg@longtable - \def\current@pagestyle{both}% - \fi - \let\ltxdoc@cfg@document\document - \def\document{% - \ifx\current@pagestyle\string@plain - \addtolength{\textheight}{\headheight}% - \addtolength{\textheight}{\headsep}% - \setlength{\headheight}{0pt}% - \setlength{\headsep}{0pt}% - \global\textheight\textheight - \global\headheight\headheight - \global\headsep\headsep - \fi - \ifx\current@pagestyle\string@myheadings - \addtolength{\textheight}{\footskip}% - \global\textheight\textheight - \fi - \ltxdoc@cfg@document - }% - %% End of code from original ltxdoc.cfg [2007/01/08 latex-tds: ltxdoc.cls configuration (HO)] %% - %% Place additional code here. %% - } - -\endinput -%% -%% End of file `ltxdoc.cfg'. diff --git a/Master/texmf-dist/doc/latex/papermas/papermas-example.pdf b/Master/texmf-dist/doc/latex/papermas/papermas-example.pdf index 25742e3a8bc..797f673080f 100644 Binary files a/Master/texmf-dist/doc/latex/papermas/papermas-example.pdf and b/Master/texmf-dist/doc/latex/papermas/papermas-example.pdf differ diff --git a/Master/texmf-dist/doc/latex/papermas/papermas-example.tex b/Master/texmf-dist/doc/latex/papermas/papermas-example.tex index 132d0f4d12a..edc9f702a52 100644 --- a/Master/texmf-dist/doc/latex/papermas/papermas-example.tex +++ b/Master/texmf-dist/doc/latex/papermas/papermas-example.tex @@ -8,10 +8,13 @@ %% %% This is a generated file. %% -%% IMPORTANT NOTICE: -%% The package takes options. +%% Project: papermas +%% Version: 2011/06/02 v1.0f %% -%% The usual disclaimers apply: +%% Copyright (C) 2010, 2011 by +%% H.-Martin M"unch +%% +%% The usual disclaimer applys: %% 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.) @@ -28,17 +31,16 @@ %% %% This work has the LPPL maintenance status "maintained". %% -%% The Current Maintainer of this work is H.-Martin Muench -%% (Martin dot Muench at Uni-Bonn dot de). +%% The Current Maintainer of this work is H.-Martin Muench. %% %% This work consists of the main source file papermas.dtx %% and the derived files %% papermas.sty, papermas.pdf, papermas.ins, papermas.drv, %% papermas-example.tex. %% -\documentclass[british,a4paper]{article} +\documentclass[british,a4paper]{article}[2007/10/19]% v1.4h %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\usepackage{hyperref}[2010/12/16]% v6.81z +\usepackage{hyperref}[2011/04/17]% v6.82g \hypersetup{% extension=pdf,% plainpages=false,% @@ -55,7 +57,7 @@ bookmarksopen=false% } \usepackage{alphalph}[2010/04/18]% v2.3 -\usepackage[pagecontinue=true,alphMult=ab,AlphMulti=AB,fnsymbolmult=true,romanMult=true,RomanMulti=true]{pagesLTS}[2011/02/01]% v1.1m +\usepackage[pagecontinue=true,alphMult=ab,AlphMulti=AB,fnsymbolmult=true,romanMult=true,RomanMulti=true]{pagesLTS}[2011/03/17]% v1.1o %% These are the default options. %% \usepackage[format=4,masss=80,pagespersheet=2,decimalsep={.}]{papermas} %% These are the default options. %% @@ -67,7 +69,7 @@ \markboth{Example for papermas}{Example for papermas} This example demonstrates the use of package\newline -\textsf{papermas}, v1.0e as of 2011/02/01 (HMM).\newline +\textsf{papermas}, v1.0f as of 2011/06/02 (HMM).\newline The used options were \texttt{format=4} (ISO~A4), \texttt{masss=80} ($\unit{g}\unit{m}^{-2}$), and\newline \texttt{pagespersheet=2} (pages per sheet of paper, @@ -88,13 +90,12 @@ $\papermasstotal \unit{g}$. \bigskip -Save per page about $200\unit{ml}$~water, $2\unit{g}$~CO$_{2}$ -and $2\unit{g}$~wood:\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 I do NOT think, that it is necessary to print THIS file, really\newline (at least not after this page)! - \newpage Page \thepage \newpage Page \thepage \newpage Page \thepage @@ -147,6 +148,7 @@ I do NOT think, that it is necessary to print THIS file, really\newline \newpage Page \thepage \newpage Page \thepage \newpage Last page \thepage. + \end{document} \endinput %% diff --git a/Master/texmf-dist/doc/latex/papermas/papermas.pdf b/Master/texmf-dist/doc/latex/papermas/papermas.pdf index 625377fb5f9..0d73e982ea8 100644 Binary files a/Master/texmf-dist/doc/latex/papermas/papermas.pdf and b/Master/texmf-dist/doc/latex/papermas/papermas.pdf differ diff --git a/Master/texmf-dist/source/latex/papermas/papermas.drv b/Master/texmf-dist/source/latex/papermas/papermas.drv index d4c11d2afec..238abff14f4 100644 --- a/Master/texmf-dist/source/latex/papermas/papermas.drv +++ b/Master/texmf-dist/source/latex/papermas/papermas.drv @@ -8,10 +8,13 @@ %% %% This is a generated file. %% -%% IMPORTANT NOTICE: -%% The package takes options. +%% Project: papermas +%% Version: 2011/06/02 v1.0f %% -%% The usual disclaimers apply: +%% Copyright (C) 2010, 2011 by +%% H.-Martin M"unch +%% +%% The usual disclaimer applys: %% 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.) @@ -28,35 +31,25 @@ %% %% This work has the LPPL maintenance status "maintained". %% -%% The Current Maintainer of this work is H.-Martin Muench -%% (Martin dot Muench at Uni-Bonn dot de). +%% The Current Maintainer of this work is H.-Martin Muench. %% %% This work consists of the main source file papermas.dtx %% and the derived files %% papermas.sty, papermas.pdf, papermas.ins, papermas.drv, %% papermas-example.tex. %% -\NeedsTeXFormat{LaTeX2e}[1994/06/01] -\ProvidesFile{papermas.drv}[2011/02/01 v1.0e - Computes paper mass of a printout (HMM)]% +\NeedsTeXFormat{LaTeX2e}[2009/09/24] +\ProvidesFile{papermas.drv}% + [2011/06/02 v1.0f Computes paper mass of a printout (HMM)]% \documentclass{ltxdoc}[2007/11/11]% v2.0u -\usepackage{holtxdoc}[2010/04/24]% v0.19 +\usepackage{holtxdoc}[2011/02/04]% v0.21 %% papermas may work with earlier versions of LaTeX2e and those %% class and package, but this was not tested. %% Please consider updating your LaTeX, class, and package %% to the most recent version (if they are not already the most %% recent version). -%% Warning: holtxdoc, 2010/04/24 v0.19, requires the packages -%% hypdoc, 2010/03/26, v1.9 -%% hyperref, 2010/03/30, v6.80u (latest: 2010/12/16, v6.81z) -%% pdftexcmds, 2010/04/01, v0.9 -%% ltxcmds, 2010/03/09, v1.4 (latest: 2010/04/26, v1.7) -%% hologo, 2010/04/24, v1.2 -%% array (latest: 2008/09/09, v2.4c) -%% (or more recent versions) and does neither work with -%% nor check for earlier versions! \hypersetup{% - pdfsubject={Computes paper mass of a printout (HMM)},% + pdfsubject={Computeing paper mass of a printout (HMM)},% pdfkeywords={LaTeX, papermas, papermass, paper mass, paper, mass, weight, totpages, pagesLTS, Hans-Martin Muench},% pdfencoding=auto,% pdflang={en},% @@ -72,32 +65,10 @@ pdfwindowui=true,% pdfnewwindow=true% } -\setlength\hfuzz{1pt} % Ignore slight overfulls. + \CodelineIndex -\EnableCrossrefs \hyphenation{created document docu-menta-tion every-thing ignored} -\makeatletter \gdef\unit#1{\mathord{\thinspace\mathrm{#1}}}% -%% Code from tcilatex.tex, Macros for Scientific Word and Scientific WorkPlace 5.5 <06 Oct 2005> %% -%% Copyright (C) 2005 Mackichan Software, Inc. %% -%% That macro file is NOT proprietary and may be freely copied and distributed. %% -\def\RIfM@{\relax\protect\ifmmode} -\def\text{\RIfM@\expandafter\text@\else\expandafter\mbox\fi} -\let\nfss@text\text -\def\text@#1{\mathchoice - {\textdef@\displaystyle\f@size{#1}}% - {\textdef@\textstyle\tf@size{\firstchoice@false #1}}% - {\textdef@\textstyle\sf@size{\firstchoice@false #1}}% - {\textdef@\textstyle \ssf@size{\firstchoice@false #1}}% - \glb@settings} -\def\textdef@#1#2#3{\hbox{{% - \everymath{#1}% - \let\f@size#2\selectfont - #3}}} -\newif\iffirstchoice@ -\firstchoice@true -%% End of code from tcilatex.tex %% -\makeatother \begin{document} \DocInput{papermas.dtx}% \end{document} diff --git a/Master/texmf-dist/source/latex/papermas/papermas.dtx b/Master/texmf-dist/source/latex/papermas/papermas.dtx index 95a926b0fba..24a199a3413 100644 --- a/Master/texmf-dist/source/latex/papermas/papermas.dtx +++ b/Master/texmf-dist/source/latex/papermas/papermas.dtx @@ -1,12 +1,10 @@ % \iffalse meta-comment % -% papermas package -% file version: v1.0e -% file date: 2011/02/01 -% documentation date: 2011/02/01 +% File: papermas.dtx +% Version: 2011/06/02 v1.0f % -% Copyright (C) 2010, 2011 H.-Martin M\"{u}nch (Martin dot Muench at Uni-Bonn dot de) -% Portions of code copyrighted by other people as marked. +% Copyright (C) 2010, 2011 by +% H.-Martin M"unch % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either @@ -24,8 +22,13 @@ % % This work consists of the main source file papermas.dtx % and the derived files -% papermas.sty, papermas.ins, papermas.drv, -% papermas-example.tex, papermas.pdf. +% papermas.sty, papermas.pdf, papermas.ins, papermas.drv, +% papermas-example.tex. +% +% Distribution: +% CTAN:macros/latex/contrib/papermas/papermas.dtx +% CTAN:macros/latex/contrib/papermas/papermas.pdf +% CTAN:install/macros/latex/contrib/papermas.tds.zip % % Unpacking: % (a) If papermas.ins is present: @@ -63,6 +66,8 @@ % %<*ignore> \begingroup + \catcode123=1 % + \catcode125=2 % \def\x{LaTeX2e}% \expandafter\endgroup \ifcase 0\ifx\install y1\fi\expandafter @@ -72,13 +77,10 @@ % %<*install> \input docstrip.tex - -\obeyspaces -\Msg{******************************************************} -\Msg{* Installation *} -\Msg{* Package: papermas v1.0e 2011/02/01 LaTeX2e package *} -\Msg{* Computes paper mass of a printout (HMM) *} -\Msg{******************************************************} +\Msg{****************************************************************************} +\Msg{* Installation} +\Msg{* Package: papermas 2011/06/02 v1.0f Computes paper mass of a printout (HMM)} +\Msg{****************************************************************************} \keepsilent \askforoverwritefalse @@ -88,10 +90,13 @@ This is a generated file. -IMPORTANT NOTICE: -The package takes options. +Project: papermas +Version: 2011/06/02 v1.0f + +Copyright (C) 2010, 2011 by + H.-Martin M"unch -The usual disclaimers apply: +The usual disclaimer applys: 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.) @@ -108,8 +113,7 @@ 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 -(Martin dot Muench at Uni-Bonn dot de). +The Current Maintainer of this work is H.-Martin Muench. This work consists of the main source file papermas.dtx and the derived files @@ -122,38 +126,37 @@ and the derived files \generate{% \file{papermas.ins}{\from{papermas.dtx}{install}}% \file{papermas.drv}{\from{papermas.dtx}{driver}}% - \file{ltxdoc.cfg}{\from{papermas.dtx}{ltxdoc}}% \usedir{tex/latex/papermas}% \file{papermas.sty}{\from{papermas.dtx}{package}}% \usedir{doc/latex/papermas}% \file{papermas-example.tex}{\from{papermas.dtx}{example}}% } -\obeyspaces -\Msg{**************************************************************} -\Msg{* *} -\Msg{* To finish the installation you have to move the following *} -\Msg{* file into a directory searched by TeX: *} -\Msg{* *} -\Msg{* papermas.sty *} -\Msg{* *} -\Msg{* To produce the documentation run the file `papermas.drv' *} -\Msg{* through (pdf)LaTeX, e.g. *} -\Msg{* pdflatex papermas.drv *} -\Msg{* makeindex -s gind.ist papermas.idx *} -\Msg{* pdflatex papermas.drv *} -\Msg{* makeindex -s gind.ist papermas.idx *} -\Msg{* pdflatex papermas.drv *} -\Msg{* *} -\Msg{* At least two runs are necessary e. g. to get the *} -\Msg{* references right! *} -\Msg{* *} -\Msg{* Happy TeXing! *} -\Msg{* *} -\Msg{**************************************************************} +\catcode32=13\relax% active space +\let =\space% +\Msg{************************************************************************} +\Msg{*} +\Msg{* To finish the installation you have to move the following} +\Msg{* file into a directory searched by TeX:} +\Msg{*} +\Msg{* papermas.sty} +\Msg{*} +\Msg{* To produce the documentation run the file `papermas.drv'} +\Msg{* through (pdf)LaTeX, e.g.} +\Msg{* pdflatex papermas.drv} +\Msg{* makeindex -s gind.ist papermas.idx} +\Msg{* pdflatex papermas.drv} +\Msg{* makeindex -s gind.ist papermas.idx} +\Msg{* pdflatex papermas.drv} +\Msg{*} +\Msg{* At least two runs are necessary e. g. to get the} +\Msg{* references right!} +\Msg{*} +\Msg{* Happy TeXing!} +\Msg{*} +\Msg{************************************************************************} \endbatchfile - % %<*ignore> \fi @@ -170,27 +173,18 @@ and the derived files % % \begin{macrocode} %<*driver> -\NeedsTeXFormat{LaTeX2e}[1994/06/01] -\ProvidesFile{papermas.drv}[2011/02/01 v1.0e - Computes paper mass of a printout (HMM)]% +\NeedsTeXFormat{LaTeX2e}[2009/09/24] +\ProvidesFile{papermas.drv}% + [2011/06/02 v1.0f Computes paper mass of a printout (HMM)]% \documentclass{ltxdoc}[2007/11/11]% v2.0u -\usepackage{holtxdoc}[2010/04/24]% v0.19 +\usepackage{holtxdoc}[2011/02/04]% v0.21 %% papermas may work with earlier versions of LaTeX2e and those %% class and package, but this was not tested. %% Please consider updating your LaTeX, class, and package %% to the most recent version (if they are not already the most %% recent version). -%% Warning: holtxdoc, 2010/04/24 v0.19, requires the packages -%% hypdoc, 2010/03/26, v1.9 -%% hyperref, 2010/03/30, v6.80u (latest: 2010/12/16, v6.81z) -%% pdftexcmds, 2010/04/01, v0.9 -%% ltxcmds, 2010/03/09, v1.4 (latest: 2010/04/26, v1.7) -%% hologo, 2010/04/24, v1.2 -%% array (latest: 2008/09/09, v2.4c) -%% (or more recent versions) and does neither work with -%% nor check for earlier versions! \hypersetup{% - pdfsubject={Computes paper mass of a printout (HMM)},% + pdfsubject={Computeing paper mass of a printout (HMM)},% pdfkeywords={LaTeX, papermas, papermass, paper mass, paper, mass, weight, totpages, pagesLTS, Hans-Martin Muench},% pdfencoding=auto,% pdflang={en},% @@ -206,113 +200,19 @@ and the derived files pdfwindowui=true,% pdfnewwindow=true% } -\setlength\hfuzz{1pt} % Ignore slight overfulls. + \CodelineIndex -%\PageIndex % instead of \CodelineIndex to get the page numbers -\EnableCrossrefs -%\DisableCrossrefs % Say \DisableCrossrefs if index is ready. -%\RecordChanges % Gather update information. -%\OnlyDescription % Comment out for implementation details. \hyphenation{created document docu-menta-tion every-thing ignored} -\makeatletter \gdef\unit#1{\mathord{\thinspace\mathrm{#1}}}% -%% Code from tcilatex.tex, Macros for Scientific Word and Scientific WorkPlace 5.5 <06 Oct 2005> %% -%% Copyright (C) 2005 Mackichan Software, Inc. %% -%% That macro file is NOT proprietary and may be freely copied and distributed. %% -% These macros are for doing the AMS \text{} construct -\def\RIfM@{\relax\protect\ifmmode} -\def\text{\RIfM@\expandafter\text@\else\expandafter\mbox\fi} -\let\nfss@text\text -\def\text@#1{\mathchoice - {\textdef@\displaystyle\f@size{#1}}% - {\textdef@\textstyle\tf@size{\firstchoice@false #1}}% - {\textdef@\textstyle\sf@size{\firstchoice@false #1}}% - {\textdef@\textstyle \ssf@size{\firstchoice@false #1}}% - \glb@settings} -\def\textdef@#1#2#3{\hbox{{% - \everymath{#1}% - \let\f@size#2\selectfont - #3}}} -\newif\iffirstchoice@ -\firstchoice@true -%% End of code from tcilatex.tex %% -\makeatother \begin{document} \DocInput{papermas.dtx}% \end{document} % % \end{macrocode} % -% \begin{macrocode} -%<*ltxdoc> -\NeedsTeXFormat{LaTeX2e}[1994/06/01] -\ProvidesFile{ltxdoc.cfg}[2011/02/01 v1.0b configuration file for papermas (HMM)] - %% Code from original ltxdoc.cfg [2007/01/08 latex-tds: ltxdoc.cls configuration (HO)], %% - % copyrighted 2006, 2007 Heiko Oberdiek, part of project `latex-tds'. - % That file may be distributed and/or modified under the - % conditions of the LaTeX Project Public License, either version 1.3 - % of this license or (at your option) any later version. - % 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. - % That work has the LPPL maintenance status `maintained'. - % The Current Maintainer of that work is Heiko Oberdiek. - % - \PassOptionsToClass{a4paper}{article} - \AtEndOfClass{% - \RequirePackage[numbered]{hypdoc}[2010/03/26]% v1.9 - \pdfstringdefDisableCommands{% - \let\env\relax % longtable.dtx - \let\mytt\relax % tabularx.dtx - }% - \addtolength{\topmargin}{-10mm}% - \addtolength{\textheight}{20mm}% - % Depending on the page style, the head or foot area - % are put into the text area. - % Usually the page style is the default "plain". - % tools/verbatim.dtx uses "myheadings". - \def\string@plain{plain}% - \def\string@myheadings{myheadings}% - \def\current@pagestyle{plain}% - \let\ltxdoc@cfg@pagestyle\pagestyle - \def\pagestyle#1{% - \def\current@pagestyle{#1}% - \ltxdoc@cfg@pagestyle{#1}% - }% - \edef\ltxdoc@cfg@jobname{\jobname}% - \def\ltxdoc@cfg@longtable{longtable}% - \@onelevel@sanitize\ltxdoc@cfg@longtable - \ifx\ltxdoc@cfg@jobname\ltxdoc@cfg@longtable - \def\current@pagestyle{both}% - \fi - \let\ltxdoc@cfg@document\document - \def\document{% - \ifx\current@pagestyle\string@plain - \addtolength{\textheight}{\headheight}% - \addtolength{\textheight}{\headsep}% - \setlength{\headheight}{0pt}% - \setlength{\headsep}{0pt}% - \global\textheight\textheight - \global\headheight\headheight - \global\headsep\headsep - \fi - \ifx\current@pagestyle\string@myheadings - \addtolength{\textheight}{\footskip}% - \global\textheight\textheight - \fi - \ltxdoc@cfg@document - }% - %% End of code from original ltxdoc.cfg [2007/01/08 latex-tds: ltxdoc.cls configuration (HO)] %% - %% Place additional code here. %% - } - -% -% \end{macrocode} -% % \fi % -% \CheckSum{349} +% \CheckSum{374} % % \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 @@ -325,7 +225,7 @@ and the derived files % Minus \- Point \. Solidus \/ % Colon \: Semicolon \; Less than \< % Equals \= Greater than \> Question mark \? -% Commercial at \@ Left bracket \[ Backslash \\ +% Commercial at \@ Left bracket \[ Backslash \\ % Right bracket \] Circumflex \^ Underscore \_ % Grave accent \` Left brace \{ Vertical bar \| % Right brace \} Tilde \~} @@ -346,43 +246,31 @@ and the derived files % \edef\x{\noexpand\DoNotIndex{\@backslashchar9}}%^^A % }%^^A % \expandafter\endgroup\x -% \DoNotIndex{\documentclass,\usepackage,\hfuzz,\small,\tt,\begin,\end} -% \DoNotIndex{\NeedsTeXFormat,\filedate,\fileversion,\DoNotIndex} -% \DoNotIndex{\def,\edef,\divide,\advance,\multiply} -% \DoNotIndex{\",\-,\,,\\,\hskip,\H,\ldots,\indent,\noindent,\textbackslash} -% \DoNotIndex{\textbf,\textit,\textquotedblleft,\textquotedblright,\textsf,\texttt} -% \DoNotIndex{\ifthenelse,\and,\equal,\whiledo,\if,\ifx,\ifnum,\else,\fi} -% \DoNotIndex{\CodelineIndex,\EnableCrossrefs,\DisableCrossrefs} -% \DoNotIndex{\DocInput,\AltMacroFont} -% \DoNotIndex{\@ne,\tw@,\thr@@} -% \DoNotIndex{\newpage,\pagebreak,\newline,\linebreak,\nolinebreak} -% \DoNotIndex{\lipsum,\MessageBreak,\pageref,\protect} -% \DoNotIndex{\RecordChanges,\OnlyDescription} -% \DoNotIndex{\smallskip,\medskip,\bigskip,\space,\thinspace} -% \DoNotIndex{\item} +% \DoNotIndex{\,,\\} +% \DoNotIndex{\documentclass,\usepackage,\ProvidesPackage,\begin,\end} +% \DoNotIndex{\NeedsTeXFormat,\DoNotIndex,\verb} +% \DoNotIndex{\def,\edef,\gdef,\global} +% \DoNotIndex{\ifx,\kvoptions,\listfiles,\mathord,\mathrm,\ProcessKeyvalOptions} +% \DoNotIndex{\SetupKeyvalOptions} +% \DoNotIndex{\bigskip,\space,\thinspace,\Large,\linebreak,\MessageBreak} +% \DoNotIndex{\ldots,\indent,\noindent,\newline,\pagebreak,\pagenumbering} +% \DoNotIndex{\textbf,\textit,\textsf,\texttt,\textquotedblleft,\textquotedblright} % \DoNotIndex{\plainTeX,\TeX,\LaTeX,\pdfLaTeX} -% \DoNotIndex{\holtxdoc,\kvoptions,\Oberdiek} -% \DoNotIndex{\gdef,\listfiles,\thepage,\totpages,\undefined,\value} -% \DoNotIndex{\markboth,\M"{u}ench,\section,\totpages} +% \DoNotIndex{\chapter,\section} +% \DoNotIndex{\arabic,\newpage,\thepage,\value} % -% \title{The \textsf{papermas} package\footnote{This file% -% has version number v1.0e, last% -% revised 2011/02/01, documentation dated 2011/02/01.}} -% \author{H.-Martin M\"{u}nch\\ -% (\texttt{Martin dot Muench at Uni-Bonn dot de})} -% \date{2011/02/01} +% \title{The \xpackage{papermas} package} +% \date{2011/06/02 v1.0f} +% \author{H.-Martin M\"{u}nch\\\xemail{Martin.Muench at Uni-Bonn.de}} % % \maketitle % % \begin{abstract} -% This package allows to compute the number of sheets of paper needed to print a document -% as well as the mass of that printed version of the document, +% This \LaTeX\ package allows to compute the number of sheets of paper needed +% to print a document as well as the mass of that printed version of the document, % useful e.\,g. when sending it by mail to determine the postage.\\ % (The number of pages of a document can be determined with the -% \textsf{pagesLTS} package.)~--\\ -% Further this package allows to compute -% \textquotedblleft \textit{base} to the power of \textit{exponent}\textquotedblright -% \ inside \LaTeX. +% \xpackage{pagesLTS} package.) % \end{abstract} % % \bigskip @@ -395,20 +283,18 @@ and the derived files % % \bigskip % -% \noindent Save per page about $200\unit{ml}$ water, +% \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. -% -% \bigskip +% Therefore please print only if this is really necessary.} % -% %\newpage +% \newpage % % \tableofcontents % -% \bigskip +% \pagebreak % % \section{Introduction} -% \indent This package is kind of an add-on to my \textsf{pagesLTS} package, +% \indent This package is kind of an add-on to the \xpackage{pagesLTS} package, % but because that already uses some resources and computing the % number of sheets of paper or the paper mass probably is not % needed so often, this was made into a separate package.\\ @@ -417,22 +303,17 @@ and the derived files % as well as the mass of that printed version of the document, % useful e.\,g. when sending it by mail to determine the postage.\\ % \indent \textbf{Warning/Disclaimer}: The mass of (printer's) ink has to be added -% (and that of envelope, address sticker, stamps,...). -% So, this is only an estimation without guarantee -- +% and that of envelope, address sticker, stamps,\ldots\space +% Thus this is only an estimation without guarantee -- % do not sue me, if you have got to pay excess postage!\\ -% \indent Further this package allows to compute -% \textquotedblleft \textit{base} to the power of \textit{exponent}\textquotedblright -% \ inside \LaTeX.\\ -% \indent The name \textsf{papermas} is short for paper mass but written with only one \textsf{s}, +% \indent The name \xpackage{papermas} is short for paper mass but written with only one \textsf{s}, % because some software has problems with names with more than eight letters.\\ % It is \textsf{mass} and gives a result in grammes $\left[ \unit{g}\right]$, % because the weight $F=m\cdot g$ (really $\overrightarrow{F}=m\cdot \overrightarrow{g}$) -% $\left[ \unit{N}\right]$ would need the knowledge about the gravitational acceleration +% $\left[ \unit{N}\right]$ would require the knowledge of the gravitational acceleration % $g$ (depending on place and time, in central Europe approximately $9.81\unit{m}/\unit{s}^{2}$) % and give a result in \textsc{Newton}, which probably is not very useful. % -% \pagebreak -% % \section{Usage} % % \indent Just load the package placing @@ -440,12 +321,12 @@ and the derived files % |\usepackage[<|\textit{options}|>]{papermas}| % \end{quote} % \noindent in the preamble of your \LaTeXe\ source file -% (preferably after calling the \textsf{pagesLTS} package).\\ -% Because the \textsf{pagesLTS} package is used to get the total +% (preferably after calling the \xpackage{pagesLTS} package).\\ +% Because the \xpackage{pagesLTS} package is used to get the total % number of pages, please place a |\pagenumbering{...}| with % appropriate argument (e.\,g.~arabic, roman, Roman, fnsymbol, % alph, or Alph) right behind |\begin{document}| (see -% documentation of \textsf{pagesLTS} package).\\ +% documentation of \xpackage{pagesLTS} package).\\ % Now you can say % \begin{verbatim} % This document consists of $\arabic{pagesLTS.pagenr}$~pages. @@ -465,36 +346,37 @@ and the derived files % $130\unit{g}$. % \end{quote} % This information is also presented at the screen while compiling -% your document (look for \textsf{papermas}), in the \xfile{log} -% file (search for \textsf{Package papermas Info}), and can be found +% your document (look for \xpackage{papermas}), in the \xfile{log} +% file (search for \textsf{***~Paper~mass~***}), and can be found % in the \xfile{aux} file~-- probably one does not want to have the % information in the printed document.\\ -% (One could use the \textsf{color} package and +% One could use the \xpackage{(x)color} package and % \begin{verbatim} % {\color{white} This document ... of about $\papermasstotal \unit{g}$.} % \end{verbatim} % which does not show in the printed document (white background of the page -% assumed), but can be made visible on the screen be marking that text.) +% assumed), but can be made visible on the screen be marking that text. % % \subsection{Options} % \DescribeMacro{options} -% \indent The \textsf{papermas} package takes the following options: +% \indent The \xpackage{papermas} package takes the following options: % % \subsubsection{format\label{sss:format}} % \DescribeMacro{format} -% \indent Option |format| wants to know the ISO~A\ldots format +% \indent The option \texttt{format} wants to know the ISO~A\ldots format % of the paper used for printing, i.\,e. |format=4| means ISO~A4 % paper format (which is also the default). % % \subsubsection{masss\label{sss:mass}} % \DescribeMacro{masss} -% \indent Option |masss| wants to know the specific (therefore the third~s) -% mass of the paper used for printing in $\unit{g}/\unit{m}^{2}$. -% The default is |masss=80|, i.\,e. $80\unit{g}/\unit{m}^{2}$. +% \indent The option \texttt{masss} wants to know the specific (therefore +% the third~\texttt{s}) mass of the paper used for printing +% in $\unit{g}/\unit{m}^{2}$. The default is |masss=80|, +% i.\,e. $80\unit{g}/\unit{m}^{2}$. % % \subsubsection{pagespersheet\label{sss:pagespersheet}} % \DescribeMacro{pagespersheet} -% \indent Option |pagespersheet| wants to know, how many +% \indent The option \texttt{pagespersheet} wants to know, how many % pages are to be printed on one sheet of paper. % |pagespersheet=2| could mean duplex printing or printing two pages % on one side of paper while keeping the back side blank. This @@ -504,8 +386,8 @@ and the derived files % % \subsubsection{decimalsep\label{sss:decimalsep}} % \DescribeMacro{decimalsep} -% \indent Option |decimalsep| wants to know, what should be used -% for the decimal separator. In English this is +% \indent The option \texttt{decimalsep} wants to know, +% what should be used for the decimal separator. In English this is % \textquotedblleft .\textquotedblright , while in German it is % \textquotedblleft ,\textquotedblright . Enclose this in brackets, % e.\,g.~|decimalsep={.}| or |decimalsep={,}|. The default is @@ -518,13 +400,13 @@ and the derived files % \section{Alternatives\label{sec:Alternatives}} % % For determining the number of pages (not sheets of paper) -% instead of the \textsf{pagesLTS} package the alternatives listed +% instead of the \xpackage{pagesLTS} package the alternatives listed % in the description of that package could be used, but then % the according code in this package would need to be changed -% (and also e.\,g. the |ifcounter| used here).\\ -% With the \textsf{totpages} package optionally the number of +% (and also e.\,g. the |ifcounter| command used here).\\ +% With the \xpackage{totpages} package optionally the number of % sheets of paper needed to print the document can be computed, too.\\ -% (See \textsf{pagesLTS} documentation.)\\ +% (See \xpackage{pagesLTS} documentation.)\\ % % \bigskip % @@ -544,9 +426,9 @@ and the derived files % % \begin{macrocode} %<*example> -\documentclass[british,a4paper]{article} +\documentclass[british,a4paper]{article}[2007/10/19]% v1.4h %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\usepackage{hyperref}[2010/12/16]% v6.81z +\usepackage{hyperref}[2011/04/17]% v6.82g \hypersetup{% extension=pdf,% plainpages=false,% @@ -563,7 +445,7 @@ and the derived files bookmarksopen=false% } \usepackage{alphalph}[2010/04/18]% v2.3 -\usepackage[pagecontinue=true,alphMult=ab,AlphMulti=AB,fnsymbolmult=true,romanMult=true,RomanMulti=true]{pagesLTS}[2011/02/01]% v1.1m +\usepackage[pagecontinue=true,alphMult=ab,AlphMulti=AB,fnsymbolmult=true,romanMult=true,RomanMulti=true]{pagesLTS}[2011/03/17]% v1.1o %% These are the default options. %% \usepackage[format=4,masss=80,pagespersheet=2,decimalsep={.}]{papermas} %% These are the default options. %% @@ -575,7 +457,7 @@ and the derived files \markboth{Example for papermas}{Example for papermas} This example demonstrates the use of package\newline -\textsf{papermas}, v1.0e as of 2011/02/01 (HMM).\newline +\textsf{papermas}, v1.0f as of 2011/06/02 (HMM).\newline The used options were \texttt{format=4} (ISO~A4), \texttt{masss=80} ($\unit{g}\unit{m}^{-2}$), and\newline \texttt{pagespersheet=2} (pages per sheet of paper, @@ -596,18 +478,12 @@ $\papermasstotal \unit{g}$. \bigskip -Save per page about $200\unit{ml}$~water, $2\unit{g}$~CO$_{2}$ -and $2\unit{g}$~wood:\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 I do NOT think, that it is necessary to print THIS file, really\newline (at least not after this page)! -% \end{macrocode} -% -% \pagebreak -% -% \begin{macrocode} - \newpage Page \thepage \newpage Page \thepage \newpage Page \thepage @@ -660,14 +536,14 @@ I do NOT think, that it is necessary to print THIS file, really\newline \newpage Page \thepage \newpage Page \thepage \newpage Last page \thepage. + \end{document} % % \end{macrocode} % -% \pagebreak +% \newpage % -% \StopEventually{ -% } +% \StopEventually{} % % \section{The implementation} % @@ -679,13 +555,13 @@ I do NOT think, that it is necessary to print THIS file, really\newline % \end{macrocode} % % \begin{macrocode} -\NeedsTeXFormat{LaTeX2e}[1994/06/01] -\ProvidesPackage{papermas}[2011/02/01 v1.0e - Computes paper mass of a printout (HMM)]% +\NeedsTeXFormat{LaTeX2e}[2009/09/24] +\ProvidesPackage{papermas}[2011/06/02 v1.0f + Computes paper mass of a printout (HMM)] % \end{macrocode} % -% A short description of the \textsf{papermas} package: +% A short description of the \xpackage{papermas} package: % % \begin{macrocode} %% Allows to compute the number of sheets of paper @@ -693,35 +569,34 @@ I do NOT think, that it is necessary to print THIS file, really\newline %% mass of that printed version of the document, %% useful e. g. when sending it by mail to determine the postage. %% Warning/Disclaimer: Mass of (printer's) ink has to be added -%% (and that of envelope, address sticker, stamps,...)! +%% and that of envelope, address sticker, stamps,...! %% So, this is only an estimation without guarantee - %% do not sue me, if you have got to pay excess postage! -%% Further this package allows to compute -%% "base to the power of exponent" inside TeX. % \end{macrocode} % -% For the handling of the options we need the \textsf{kvoptions} -% package of Heiko Oberdiek (see subsection~\ref{ss:Downloads}): +% For the handling of the options we need the \xpackage{kvoptions} +% package of \textsc{Heiko Oberdiek} (see subsection~\ref{ss:Downloads}): % % \begin{macrocode} -\RequirePackage{kvoptions}[2010/02/22]% v3.7 +\RequirePackage{kvoptions}[2010/12/23]% v3.10 % \end{macrocode} % -% For the total number of pages we need the \textsf{pagesLTS} +% For the total number of pages we need the \xpackage{pagesLTS} % package of myself (see subsection~\ref{ss:Downloads}): % % \begin{macrocode} -\RequirePackage{pagesLTS}[2011/02/01]% v1.1m +\RequirePackage{pagesLTS}[2011/03/17]% v1.1o +\RequirePackage{intcalc}[2007/09/27]% v1.1; for intcalcPow % \end{macrocode} % -% A last information for the user(s): +% A last information for the user: % % \begin{macrocode} -%% papermas may work with earlier versions of those packages, -%% but this was not tested. Please consider updating your packages -%% to the most recent version (if they are not already the most -%% recent version). +%% papermas 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). % \end{macrocode} % See subsection~\ref{ss:Downloads} about how to get them.\\ @@ -731,21 +606,21 @@ I do NOT think, that it is necessary to print THIS file, really\newline % \begin{macrocode} \SetupKeyvalOptions{family = papermas,prefix = papermas@} \DeclareStringOption[4]{format}[4]% paper foormat, ISO A..., - % default: (ISO A) 4 +%% default: (ISO A) 4 \DeclareStringOption[80]{masss}[80]% specific mass of the paper, - % default: 80 (g/(m^2)) +%% default: 80 (g/(m^2)) \DeclareStringOption[2]{pagespersheet}[2]% number of pages per sheet, - % for duplex printing this is 2. +%% for duplex printing this is 2. \DeclareStringOption[.]{decimalsep}[.]% decimal separator, - % e. g. "." or ",": decimalsep={,} - brackets are needed!!! - % decimalsep={,\,} does not work for screen, aux, log output! +%% e. g. "." or ",": decimalsep={,} - brackets are needed!!! +%% decimalsep={,\,} does not work for screen, aux, log output! \ProcessKeyvalOptions* % \end{macrocode} % % \begin{macro}{unit} -% We define a |\unit| command similar to the one from {\sl Scientific WorkPlace\/}: +% We define a |\unit| command: % % \begin{macrocode} \gdef\unit#1{\mathord{\thinspace\mathrm{#1}}}% @@ -768,48 +643,6 @@ I do NOT think, that it is necessary to print THIS file, really\newline % \end{macrocode} % -% Introducing some new counters: -% -% \begin{macrocode} -\newcounter{papermas@rerun} -\newcounter{papermas@base} -\newcounter{papermas@exp} -\newcounter{papermas@result} -\newcounter{papermas@ini} -\setcounter{papermas@ini}{1} - -% \end{macrocode} -% -% \begin{macro}{\papermas@powerof} -% We need a command to compute -% \textquotedblleft base to the power of exponent\textquotedblright\ $\left( base^{exponent}\right) $.\\ -% (Is this really not already implementet in \LaTeX?!) -% -% \begin{macrocode} -\newcommand\papermas@powerof[2]{% - \setcounter{papermas@base}{#1} - \setcounter{papermas@exp}{#2} - \ifnum \value{papermas@ini}=1 - \setcounter{papermas@result}{\value{papermas@base}} - \setcounter{papermas@ini}{0} - \ifnum \value{papermas@exp}=0% - \setcounter{papermas@result}{1} - \else - \addtocounter{papermas@exp}{-1} - \fi - \fi - \ifnum \value{papermas@exp}=0% - \setcounter{papermas@ini}{1} - \else - \multiply \value{papermas@result} \value{papermas@base} - \addtocounter{papermas@exp}{-1} - \papermas@powerof{#1}{\value{papermas@exp}} - \fi% - } - -% \end{macrocode} -% \end{macro} -% % \begin{macro}{\papermas@totmass} % This is the internal command, which computes the total paper mass % of the printed document. @@ -856,7 +689,7 @@ I do NOT think, that it is necessary to print THIS file, really\newline % % \begin{macrocode} \ifnum \value{papermasmasss}<1% - \PackageError{pagesLTS}{Option masss has no valid value}% + \PackageError{papermas}{Option masss has no valid value}% {The masss option of the papermas package\MessageBreak% only takes positive numbers,\MessageBreak% because this should be the mass per square meter\MessageBreak% @@ -888,7 +721,7 @@ I do NOT think, that it is necessary to print THIS file, really\newline % % We introduce a new counter |papermas@sheets| for the number of % sheets printed and initialize it with the number of pages -% as computed by package \textsf{pagesLTS},\newline +% as computed by package \xpackage{pagesLTS},\newline % i.\,e. |pagesLTS.pagenr|. % % \begin{macrocode} @@ -935,17 +768,12 @@ I do NOT think, that it is necessary to print THIS file, really\newline % a sheet with format ISO A2 has a size of $1\unit{m}^{2}\cdot 2^{-2}$,\\ % \ldots, and\\ % a sheet with format ISO A\textit{n} has a size of $1\unit{m}^{2}\cdot 2^{-n}$.\\ -% Therefore we compute $2^{\text{\textbackslash value\{papermasA\}}}$: -% -% \begin{macrocode} - \papermas@powerof{2}{\value{papermasA}} -% \end{macrocode} % -% The result is saved in |papermas@result|.\\ -% We divide the specific paper mass by |papermas@result|: +% Therefore we compute $2^{\textrm{\textbackslash value\{papermasA\}}}$ +% and divide the specific paper mass by that value: % % \begin{macrocode} - \divide \value{papermasmasss} by \value{papermas@result} + \divide \value{papermasmasss} by \intcalcPow{2}{\value{papermasA}} % default: 16000 / 2^(\value{papermasA}) % \end{macrocode} % @@ -992,13 +820,14 @@ I do NOT think, that it is necessary to print THIS file, really\newline % % \begin{macrocode} \edef\papermastmpr{\arabic{papermas@tmpo}\papermas@decimalsep\arabic{papermas@tmpp}}% + \global\edef\papermas@mbs{\arabic{papermas@tmpo}}% \edef\papermastmpformat{\papermas@format}% \edef\papermastmpmasss{\papermas@masss}% \edef\papermastmppagespersheet{\papermas@pagespersheet}% \edef\papermastmpt{\arabic{papermas@sheets}}% % \end{macrocode} % -% We use the \textsf{pagesLTS} package, which already was used +% We use the \xpackage{pagesLTS} package, which already was used % to determine the total number of pages, to check for the % counter |papermassttl|. If it exists, nothing is done, % if it does not exist, it is declared as |\newcounter| @@ -1020,9 +849,11 @@ I do NOT think, that it is necessary to print THIS file, really\newline % % \begin{macrocode} \else - \PackageWarningNoLine{papermas}{% - Number of pages may have changed.\MessageBreak% - Rerun to get it right.\MessageBreak% + \AtVeryVeryEnd{% + \PackageWarningNoLine{papermas}{% + Number of pages may have changed.\MessageBreak% + Rerun to get it right% + }% }% \fi % \end{macrocode} @@ -1043,7 +874,7 @@ I do NOT think, that it is necessary to print THIS file, really\newline % % If we are allowed to write into the \xfile{aux}-file, % we do it here. If we are not allowed to do it, -% the \textsf{pagesLTS} package already gave an according +% the \xpackage{pagesLTS} package already gave an according % error message. % % \begin{macrocode} @@ -1053,7 +884,7 @@ I do NOT think, that it is necessary to print THIS file, really\newline % When it is read from the \xfile{aux}-file and % when its content is processed, the counter |papermassttl| % might not have been defined yet. Therefore we again use the -% |\pagesLTS@ifcounter| command of the \textsf{pagesLTS} package. +% |\pagesLTS@ifcounter| command of the \xpackage{pagesLTS} package. % % \begin{macrocode} \immediate\write\@auxout{\string @@ -1065,7 +896,7 @@ I do NOT think, that it is necessary to print THIS file, really\newline % it will be checked,\\ % whether |\value{papermassttl}=\value{papermasmasss}| (see above).\\ % If this is the case, everything is OK, no changes happened, -% and no rerun is necessary (at least not for \textsf{papermas}). +% and no rerun is necessary (at least not for \xpackage{papermas}). % % \begin{macrocode} \immediate\write\@auxout{\string @@ -1102,7 +933,7 @@ I do NOT think, that it is necessary to print THIS file, really\newline % \end{macrocode} % % \item we give at the screen the information about the |\papermasstotal|\\ -% (see |\AtVeryEnd| below) +% (see |\AtVeryVeryEnd| below) % % \item which will also appear in the \xfile{log}-file. %\end{enumerate} @@ -1126,25 +957,30 @@ I do NOT think, that it is necessary to print THIS file, really\newline % % \begin{macro}{\AtBeginDocument} % \indent |\AtBeginDocument| it is checked whether some commands, -% which are/will be defined via the \xfile{aux}-file, are undefined yet: +% which are/will be defined via the \xfile{aux}-file, are undefined yet. +% If this is the case, |\AtVeryVeryEnd| a rerun warning is given. % % \begin{macrocode} \AtBeginDocument{% - \def\papermas@undefined{\textbf{??}} - \setcounter{papermas@rerun}{0} - \ifx\papermasstotal\papermas@undefined \addtocounter{papermas@rerun}{000001} \fi - \ifx\papermasstotal\papermas@undefined \addtocounter{papermas@rerun}{000010} \fi - \ifx\papermasformat\papermas@undefined \addtocounter{papermas@rerun}{000100} \fi - \ifx\papermasmasss\papermas@undefined \addtocounter{papermas@rerun}{001000} \fi - \ifx\papermaspagespersheet\papermas@undefined \addtocounter{papermas@rerun}{010000} \fi - \ifx\papermassheets\papermas@undefined \addtocounter{papermas@rerun}{100000} \fi + \gdef\papermas@undefined{\textbf{??}} + \gdef\papermas@rerun{0} + \ifx\papermasstotal\papermas@undefined \gdef\papermas@rerun{1} \fi + \ifx\papermasformat\papermas@undefined \gdef\papermas@rerun{1} \fi + \ifx\papermasmasss\papermas@undefined \gdef\papermas@rerun{1} \fi + \ifx\papermaspagespersheet\papermas@undefined \gdef\papermas@rerun{1} \fi + \ifx\papermassheets\papermas@undefined \gdef\papermas@rerun{1} \fi + \ifx\papermas@rerun\pagesLTS@one + \AtVeryVeryEnd{ + \PackageWarningNoLine{papermas}{% + Variable(s) still undefined!\MessageBreak% + Rerun to get the variable(s) right% + } + } + \fi } + % \end{macrocode} -% -% If any one of those commands is undefined, |papermas@rerun| is $>1$, -% and we know that we need another compiler run.\\ -% % \end{macro} % % \begin{macro}{\AfterLastShipout} @@ -1161,76 +997,113 @@ I do NOT think, that it is necessary to print THIS file, really\newline % \end{macrocode} % -% |\AfterLastShipout| is a command from the \textsf{atveryend} -% package of Heiko Oberdiek, which is already loaded by my -% \textsf{pagesLTS} package (about how to get the \textsf{atveryend} -% package, please see the documentation of the \textsf{pagesLTS} +% |\AfterLastShipout| is a command from the \xpackage{atveryend} +% package of \textsc{Heiko Oberdiek}, which is already loaded by the +% \xpackage{pagesLTS} package (about how to get the \xpackage{atveryend} +% package, please see the documentation of the \xpackage{pagesLTS} % package -- you may need to get further packages for -% \textsf{pagesLTS} anyway, if they have not been installed +% \xpackage{pagesLTS} anyway, if they have not been installed % within your \LaTeX\ system). % % \end{macro} % -% \begin{macro}{\AtVeryEndDocument} +% \pagebreak +% +% For pretty printing the message of \xpackage{papermas} three internal +% commands are needed. We borrow the |pagesLTS.pnc.0| counter from the +% \xpackage{pagesLTS} package instead of defining another new one. % % \begin{macrocode} -\AtVeryEndDocument{% +\newcommand{\papermas@log}[1]{% + \ifnum#1>9% + \addtocounter{pagesLTS.pnc.0}{1}% + \papermas@log{\intcalcDiv{#1}{10}}% + \fi% + } + +\newcommand{\papermas@spaces}[2]{% + \edef\papermas@remember{\arabic{pagesLTS.pnc.0}}% + \setcounter{pagesLTS.pnc.0}{1}% + \papermas@log{#1}% + \addtocounter{pagesLTS.pnc.0}{-#2}% + \multiply \value{pagesLTS.pnc.0} -1% + \papermas@space{\arabic{pagesLTS.pnc.0}}% + \message{*^^J}% + \setcounter{pagesLTS.pnc.0}{\papermas@remember}% + } + +\newcommand{\papermas@space}[1]{% + \ifnum \value{pagesLTS.pnc.0}>0% + \message{}% + \fi% + \setcounter{pagesLTS.pnc.0}{#1}% + \addtocounter{pagesLTS.pnc.0}{-1}% + \ifnum \value{pagesLTS.pnc.0}>0% + \papermas@space{\arabic{pagesLTS.pnc.0}}% + \fi% + } + % \end{macrocode} % -% \indent |\AtVeryEndDocument{...}| is even later: -% \begin{quote} -% \textquotedblleft The code is called after the \xext{aux} file -% is closed and read in again. It is the place for final checks, -% rerun hints, final messages.\textquotedblright -% \end{quote} -% (\textsf{atveryend} package of Heiko Oberdiek, v1.5 as of 2010/03/24)\\ -% -% \DescribeMacro{Error code} -% Here it is used to give a rerun warning, when it is needed: +% \begin{macro}{\AtVeryVeryEnd} % % \begin{macrocode} - \ifnum\value{papermas@rerun}>0 - \PackageWarningNoLine{papermas}{!\MessageBreak% - Variable(s) still undefined.\MessageBreak% - (Error code \arabic{papermas@rerun}.)\MessageBreak% - Rerun to get the variable(s) right.\MessageBreak% - }% +\AtVeryVeryEnd{% % \end{macrocode} % -% \pagebreak +% \indent |\AtVeryVeryEnd{...}| is even later than |\AfterLastShipout|: +% \begin{quote} +% \textquotedblleft This code is called right before the final |\cs{@@end}|.\textquotedblright +% \end{quote} +% (\xpackage{atveryend} package of \textsc{Heiko Oberdiek}, v1.6 as of 2011/04/15).\\ % -% The \textquotedblleft Error code\textquotedblright\ can be deciphered as follows:\\ +% If no necessarity for a rerun was \textit{detected} (Check for other rerun warnings!), +% the final |\PackageInfo| is given. % -% |\papermasstotal 000001|\\ -% \indent |\papermasstotal 000010|\\ -% \indent |\papermasformat 000100|\\ -% \indent |\papermasmasss 001000|\\ -% \indent |\papermaspagespersheet 010000|\\ -% \indent |\papermassheets 100000|\\ +% \begin{macrocode} + \ifx\papermas@rerun\pagesLTS@zero% + \message{^^J}% + \message{papermas: ******************** Paper mass *******************^^J}% + \message{papermas: * This document consists of \arabic{pagesLTS.pagenr} pages.} + \papermas@spaces{\arabic{pagesLTS.pagenr}}{15}% + \message{papermas: * When printing \papermaspagespersheet\space pages on one sheet of paper,} + \papermas@spaces{\papermaspagespersheet}{5}% + \message{papermas: * \papermassheets\space sheets will be needed.} + \papermas@spaces{\papermassheets}{25}% + \message{papermas: * For ISO A \papermasformat\space paper of \papermasmasss\space g/m^2 specific mass,} + \papermas@spaces{\papermasmasss}{6}% + \message{papermas: * the printout will have a mass of about \papermasstotal\space g.} + \papermas@spaces{\papermas@mbs}{4}% + \message{papermas: ***************************************************^^J} + \message{^^J} + \fi% + } + +% \end{macrocode} +% \end{macro} % -% e.\,g. error code |1001| is |001001| is |\papermasmasss| and |\papermasstotal|.\\ +% \begin{macro}{\papermas@powerof} % -% If no necessarity for a rerun was \textit{detected} (Check for other rerun warnings!), -% the final |\PackageInfo| is given: +% The command |\papermas@powerof| is \textbf{obsolete}. |\intcalcPow| is used instead. +% For compatibility reasons we still provide the command (but with other code), +% and issue an error message. % % \begin{macrocode} - \else - \message{papermas: ***************************************************} - \message{papermas: * This document consists of \arabic{pagesLTS.pagenr} pages. *} - \message{papermas: * When printing \papermaspagespersheet\space pages on one sheet of paper, *} - \message{papermas: * \papermassheets\space sheets will be needed. *} - \message{papermas: * For ISO A \papermasformat\space paper of \papermasmasss\space g/m^2 specific mass, *} - \message{papermas: * the printout will have a mass of about \papermasstotal\space g. *} - \message{papermas: ***************************************************} - \PackageInfo{papermas}{***************************************************\MessageBreak% - * This document consists of \arabic{pagesLTS.pagenr} pages. *\MessageBreak% - * When printing \papermaspagespersheet\space pages on one sheet of paper, *\MessageBreak% - * \papermassheets\space sheets will be needed. *\MessageBreak% - * For ISO A \papermasformat\space paper of \papermasmasss\space g/m^2 specific mass, *\MessageBreak% - * the printout will have a mass of about \papermasstotal\space g. *\MessageBreak% - ***************************************************\MessageBreak% - }% - \fi% +\newcommand\papermas@powerof[2]{% + \PackageError{papermas}{Obsolete command \string\papermas@powerof used}{% + The command \string\papermas@powerof has been removed from the papermas package.\MessageBreak% + Please use e.g. \string\intcalcPow from the intcalc package instead.\MessageBreak% + You can now just type Return to continue, but this error message will be\MessageBreak% + issued again when using \string\papermas@powerof, and the command might be\MessageBreak% + removed completely from future versions of the papermas package.\MessageBreak% + }% + \AtVeryVeryEnd{% + \message{^^J% + papermas: Please remember to replace the \string\papermas@powerof\space command!^^J^^J% + }% + }% + \pagesLTS@ifcounter{papermas@result}% + \setcounter{papermas@result}{\intcalcPow{#1}{#2}}% } % \end{macrocode} @@ -1246,81 +1119,81 @@ I do NOT think, that it is necessary to print THIS file, really\newline % % \subsection{Downloads\label{ss:Downloads}} % -% Everything is available on \CTAN{}, \url{ftp://ftp.ctan.org/tex-archive/}, +% Everything is available at \CTAN{}, \url{http://www.ctan.org/tex-archive/}, % but may need additional packages themselves.\\ % % \DescribeMacro{papermas.dtx} % For unpacking the |papermas.dtx| file and constructing the documentation it is required: % \begin{description} -% \item[-] \TeX Format \LaTeXe, 1994/06/01, v2$\varepsilon $: \CTAN{} +% \item[-] \TeX Format \LaTeXe: \url{http://www.CTAN.org/} % -% \item[-] document class \textsf{ltxdoc}, 2007/11/11, v2.0u,\\ +% \item[-] document class \xpackage{ltxdoc}, 2007/11/11, v2.0u,\\ % \CTAN{macros/latex/base/ltxdoc.dtx} % -% \item[-] package \textsf{holtxdoc}, 2010/04/24, v0.19,\\ +% \item[-] package \xpackage{holtxdoc}, 2011/02/04, v0.21,\\ % \CTAN{macros/latex/contrib/oberdiek/holtxdoc.dtx} % -% \item[-] package \textsf{hypdoc}, 2010/03/26, v1.9,\\ +% \item[-] package \xpackage{hypdoc}, 2010/03/26, v1.9,\\ % \CTAN{macros/latex/contrib/oberdiek/hypdoc.dtx} % \end{description} % % \DescribeMacro{papermas.sty} -% The |papermas.sty| for \LaTeXe\ (i.\,e. all documents using -% the \textsf{papermas} package) requires: +% The \texttt{papermas.sty} for \LaTeXe\ (i.\,e. all documents using +% the \xpackage{papermas} package) requires: % \begin{description} -% \item[-] \TeX Format \LaTeXe, 1994/06/01, v2$\varepsilon $, \CTAN{} +% \item[-] \TeX Format \LaTeXe, \url{http://www.CTAN.org/} +% +% \item[-] package \xpackage{intcalc}, 2007/09/27, v1.1,\\ +% \CTAN{macros/latex/contrib/oberdiek/intcalc.dtx} % -% \item[-] package \textsf{kvoptions}, 2010/02/22, v3.7,\\ +% \item[-] package \xpackage{kvoptions}, 2010/12/23, v3.10,\\ % \CTAN{macros/latex/contrib/oberdiek/kvoptions.dtx} % -% \item[-] package \textsf{pagesLTS}, 2011/02/01, v1.1m,\\ -% \CTAN{macros/latex/contrib/pagesLTS/pagesLTS.dtx}\\ +% \item[-] package \xpackage{pagesLTS}, 2011/03/17, v1.1o,\\ +% \CTAN{macros/latex/contrib/pageslts/pagesLTS.dtx}\\ % \end{description} % % \DescribeMacro{papermas-example.tex} -% The |papermas-example.tex| requires the same files as all -% documents using the \textsf{papermas} package, especially: +% The \texttt{papermas-example.tex} requires the same files as all +% documents using the \xpackage{papermas} package, and additionally: % \begin{description} -% \item[-] package \textsf{papermas}, 2011/02/01, v1.0e,\\ +% \item[-] class \xpackage{article}, 2007/10/19, v1.4h, from \xpackage{classes.dtx}:\\ +% \CTAN{macros/latex/base/classes.dtx} +% +% \item[-] package \xpackage{papermas}, 2011/06/02, v1.0f,\\ % \CTAN{macros/latex/contrib/papermas/papermas.dtx}\\ % (Well, it is the example file for this package, and because you are reading the -% documentation for the \textsf{papermas} package, it can be assumed that you already +% documentation for the \xpackage{papermas} package, it can be assumed that you already % have some version of it -- is it the current one?) % \end{description} % % \DescribeMacro{totpages} -% As possible alternatives in section \ref{sec:Alternatives} there are listed +% As possible alternative in section \ref{sec:Alternatives} there is listed % \begin{description} -% \item[-] package \textsf{totpages}, 2005/09/19, v2.00,\\ +% \item[-] package \xpackage{totpages}, 2005/09/19, v2.00,\\ % \CTAN{macros/latex/contrib/totpages/totpages.dtx} % \end{description} % % \DescribeMacro{Oberdiek} % \DescribeMacro{holtxdoc} % \DescribeMacro{atveryend} +% \DescribeMacro{intcalc} % \DescribeMacro{kvoptions} -% All packages of Heiko Oberdiek's bundle `oberdiek' -% (especially \textsf{holtxdoc}, \textsf{atveryend}, \textsf{kvoptions}) +% All packages of \textsc{Heiko Oberdiek's} bundle `oberdiek' +% (especially \xpackage{holtxdoc}, \xpackage{atveryend}, \xpackage{intcalc}, +% and \xpackage{kvoptions}) % are also available in a TDS compliant ZIP archive:\\ % \CTAN{install/macros/latex/contrib/oberdiek.tds.zip}.\\ -% \textbf{Warning}: holtxdoc, 2010/04/24 v0.19, requires the packages -% \begin{description} -% \item[-] hypdoc, 2010/03/26, v1.9 -% \item[-] hyperref, 2010/03/30, v6.80u (latest: 2010/12/16, v6.81z) -% \item[-] pdftexcmds, 2010/04/01, v0.9 -% \item[-] ltxcmds, 2010/03/09, v1.4 (latest: 2010/04/26, v1.7) -% \item[-] hologo, 2010/04/24, v1.2 -% \item[-] array (latest: 2008/09/09, v2.4c) -% \end{description} -% (or more recent versions) and does neither work with -% nor check for earlier versions!\\ -% (It is probably best to download\\ -% \CTAN{install/macros/latex/contrib/oberdiek.tds.zip} -% and use this, because the packages in there should be both -% recent and compatible.)\\ +% It is probably best to download and use this, because the packages in there +% are quite probably both recent and compatible among themselves.\\ +% +% \DescribeMacro{hyperref} +% \noindent \xpackage{hyperref} is not included in that bundle and needs to be downloaded +% separately,\\ +% \url{http://mirror.ctan.org/install/macros/latex/contrib/hyperref.tds.zip}.\\ % % \DescribeMacro{M\"{u}nch} -% A list of my packages can be found at\\ +% A hyperlinked list of my (other) packages can be found at % \url{http://www.Uni-Bonn.de/~uzs5pv/LaTeX.html}.\\ % % \subsection{Package, unpacking TDS} @@ -1335,9 +1208,6 @@ I do NOT think, that it is necessary to print THIS file, really\newline % The compiled example file, as it should look like. % \item[\CTAN{macros/latex/contrib/papermas/README}]\hspace*{0.1cm} \\ % The README file. -% \end{description} -% There is also a papermas.tds.zip available: -% \begin{description} % \item[\CTAN{install/macros/latex/contrib/papermas.tds.zip}]\hspace*{0.1cm} \\ % Everything in TDS compliant, compiled format. % \end{description} @@ -1345,8 +1215,6 @@ I do NOT think, that it is necessary to print THIS file, really\newline % \begin{tabular}{ll} % papermas.ins & The installation file.\\ % papermas.drv & The driver to generate the documentation.\\ -% ltxdoc.cfg & The \LaTeX\ documentation configuration file,\\ -% & also for generating the documentation.\\ % papermas.sty & The \xext{sty}le file.\\ % papermas-example.tex & The example file.% % \end{tabular} @@ -1465,9 +1333,9 @@ I do NOT think, that it is necessary to print THIS file, really\newline % % \paragraph{Generating the documentation.\label{GenDoc}} % You can use both the \xfile{.dtx} or the \xfile{.drv} to generate -% the documentation. The process can be configured by the -% configuration file \xfile{ltxdoc.cfg}. For instance, put the following -% line into this file, if you want to have A4 as paper format: +% the documentation. The process can be configured by a +% configuration file \xfile{ltxdoc.cfg}. For instance, put this +% line into that file, if you want to have A4 as paper format: % \begin{quote} % \verb|\PassOptionsToClass{a4paper}{article}| % \end{quote} @@ -1495,17 +1363,20 @@ I do NOT think, that it is necessary to print THIS file, really\newline % % \section{Acknowledgements} % -% I (H.-Martin M\"{u}nch) would like to thank Heiko Oberdiek +% I would like to thank \textsc{Heiko Oberdiek} % (heiko dot oberdiek at googlemail dot com) for providing -% a~lot~(!) of useful packages (from which I also got everything I -% know about creating a file in \xfile{dtx} format, ok, say it: copying), +% 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. % +% \pagebreak +% % \phantomsection % \begin{History}\label{History} % \begin{Version}{2010/06/01 v1.0(a)} -% \item First version of this package. +% \item First version of this \xpackage{papermas} package. % \end{Version} % \begin{Version}{2010/06/03 v1.0b} % \item New |\papermassheets| and reruncheck introduced; several small changes. @@ -1515,41 +1386,54 @@ I do NOT think, that it is necessary to print THIS file, really\newline % \item Several changes in the documentation and the Readme file. % \end{Version} % \begin{Version}{2010/06/24 v1.0c} -% \item \textsf{holtxdoc} warning in \xfile{drv} updated. +% \item \xpackage{holtxdoc} warning in \xfile{drv} updated. % \item Corrected the location of the package at CTAN.\\ % (TDS was still missing due to packaging error.) -% \item Updated references to other packages: \textsf{hyperref} and \textsf{pagesLTS}. +% \item Updated references to other packages: \xpackage{hyperref} and \xpackage{pagesLTS}. % \item Added a list of my other packages. % \item Several changes to the documentation. % \item Introduced new \textbf{option}: |decimalsep|. % \end{Version} % \begin{Version}{2010/07/29 v1.0d} % \item Corrected given url of \texttt{papermas.tds.zip} and other urls. -% \item There is a new version of the used \textsf{hyperref} package: 2010/06/18,~v6.81g. -% \item There is a new version of the used \textsf{pagesLTS} package: 2010/07/29,~v1.1e. +% \item There is a new version of the used \xpackage{hyperref} package: 2010/06/18,~v6.81g. +% \item There is a new version of the used \xpackage{pagesLTS} package: 2010/07/29,~v1.1e. % \item Included a |\CheckSum|. % \end{Version} % \begin{Version}{2011/02/01 v1.0e} -% \item Updated to version 2010/12/16 v6.81z of the \textsf{hyperref} package. +% \item Updated to version 2010/12/16 v6.81z of the \xpackage{hyperref} package. % \item Removed wrong \%\ from the driver file. % \item Changed the |\unit| definition (got rid of an old |\rm|). % \item Replaced the list of my packages with a link to a web page list of those, % which has the advantage of showing the recent versions of all those packages. % \item Now using |\@ifundefined|. % \item Removed |/muench/| from the path at diverse locations. -% \item There is a new version of the used \textsf{pagesLTS} package: 2011/02/01,~v1.1m. +% \item There is a new version of the used \xpackage{pagesLTS} package: 2011/02/01,~v1.1m. % \item Some small changes. % \end{Version} +% \begin{Version}{2011/06/02 v1.0f} +% \item There is a new version of the used \xpackage{kvoptions} package: 2010/12/23,~v3.10. +% \item There is a new version of the used \xpackage{pagesLTS} package: 2011/03/17,~v1.1o. +% \item The \xpackage{holtxdoc} package was fixed (recent version: 2011/02/04,~v0.21), +% therefore the warning in \xfile{drv} could be removed. +% \item There is a new version of the used \xpackage{hyperref} package: 2011/04/17,~v6.82g. +% \item The rerun warnings are given after the \texttt{filelist} (if that is called +% with |\listfiles|) and the final \xpackage{papermas} information is presented +% |\AtVeryVeryEnd| (now only ones instead of twice). +% \item Replaced |\text| by |\textrm|. +% \item Instead of compiling \textquotedblleft $a$ to the power of $b$\textquotedblright\ itself, +% \xpackage{papermas} now uses the \xpackage{intcalc} package of \textsc{Heiko Oberdiek}. +% \item Removed five counters. +% \item A lot of small changes (also in the README). +% \end{Version} % \end{History} % -% % \PrintChanges -% % \bigskip % % 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.) % -% \pagebreak +% \bigskip % % \PrintIndex % diff --git a/Master/texmf-dist/source/latex/papermas/papermas.ins b/Master/texmf-dist/source/latex/papermas/papermas.ins index abbf72f3541..45242009c74 100644 --- a/Master/texmf-dist/source/latex/papermas/papermas.ins +++ b/Master/texmf-dist/source/latex/papermas/papermas.ins @@ -8,10 +8,13 @@ %% %% This is a generated file. %% -%% IMPORTANT NOTICE: -%% The package takes options. +%% Project: papermas +%% Version: 2011/06/02 v1.0f %% -%% The usual disclaimers apply: +%% Copyright (C) 2010, 2011 by +%% H.-Martin M"unch +%% +%% The usual disclaimer applys: %% 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.) @@ -28,8 +31,7 @@ %% %% This work has the LPPL maintenance status "maintained". %% -%% The Current Maintainer of this work is H.-Martin Muench -%% (Martin dot Muench at Uni-Bonn dot de). +%% The Current Maintainer of this work is H.-Martin Muench. %% %% This work consists of the main source file papermas.dtx %% and the derived files @@ -37,13 +39,10 @@ %% papermas-example.tex. %% \input docstrip.tex - -\obeyspaces -\Msg{******************************************************} -\Msg{* Installation *} -\Msg{* Package: papermas v1.0e 2011/02/01 LaTeX2e package *} -\Msg{* Computes paper mass of a printout (HMM) *} -\Msg{******************************************************} +\Msg{****************************************************************************} +\Msg{* Installation} +\Msg{* Package: papermas 2011/06/02 v1.0f Computes paper mass of a printout (HMM)} +\Msg{****************************************************************************} \keepsilent \askforoverwritefalse @@ -53,10 +52,13 @@ This is a generated file. -IMPORTANT NOTICE: -The package takes options. +Project: papermas +Version: 2011/06/02 v1.0f -The usual disclaimers apply: +Copyright (C) 2010, 2011 by + H.-Martin M"unch + +The usual disclaimer applys: 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.) @@ -73,8 +75,7 @@ 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 -(Martin dot Muench at Uni-Bonn dot de). +The Current Maintainer of this work is H.-Martin Muench. This work consists of the main source file papermas.dtx and the derived files @@ -87,38 +88,37 @@ and the derived files \generate{% \file{papermas.ins}{\from{papermas.dtx}{install}}% \file{papermas.drv}{\from{papermas.dtx}{driver}}% - \file{ltxdoc.cfg}{\from{papermas.dtx}{ltxdoc}}% \usedir{tex/latex/papermas}% \file{papermas.sty}{\from{papermas.dtx}{package}}% \usedir{doc/latex/papermas}% \file{papermas-example.tex}{\from{papermas.dtx}{example}}% } -\obeyspaces -\Msg{**************************************************************} -\Msg{* *} -\Msg{* To finish the installation you have to move the following *} -\Msg{* file into a directory searched by TeX: *} -\Msg{* *} -\Msg{* papermas.sty *} -\Msg{* *} -\Msg{* To produce the documentation run the file `papermas.drv' *} -\Msg{* through (pdf)LaTeX, e.g. *} -\Msg{* pdflatex papermas.drv *} -\Msg{* makeindex -s gind.ist papermas.idx *} -\Msg{* pdflatex papermas.drv *} -\Msg{* makeindex -s gind.ist papermas.idx *} -\Msg{* pdflatex papermas.drv *} -\Msg{* *} -\Msg{* At least two runs are necessary e. g. to get the *} -\Msg{* references right! *} -\Msg{* *} -\Msg{* Happy TeXing! *} -\Msg{* *} -\Msg{**************************************************************} +\catcode32=13\relax% active space +\let =\space% +\Msg{************************************************************************} +\Msg{*} +\Msg{* To finish the installation you have to move the following} +\Msg{* file into a directory searched by TeX:} +\Msg{*} +\Msg{* papermas.sty} +\Msg{*} +\Msg{* To produce the documentation run the file `papermas.drv'} +\Msg{* through (pdf)LaTeX, e.g.} +\Msg{* pdflatex papermas.drv} +\Msg{* makeindex -s gind.ist papermas.idx} +\Msg{* pdflatex papermas.drv} +\Msg{* makeindex -s gind.ist papermas.idx} +\Msg{* pdflatex papermas.drv} +\Msg{*} +\Msg{* At least two runs are necessary e. g. to get the} +\Msg{* references right!} +\Msg{*} +\Msg{* Happy TeXing!} +\Msg{*} +\Msg{************************************************************************} \endbatchfile - \endinput %% %% End of file `papermas.ins'. diff --git a/Master/texmf-dist/tex/latex/papermas/papermas.sty b/Master/texmf-dist/tex/latex/papermas/papermas.sty index 834ff5f5a72..0edfd143874 100644 --- a/Master/texmf-dist/tex/latex/papermas/papermas.sty +++ b/Master/texmf-dist/tex/latex/papermas/papermas.sty @@ -8,10 +8,13 @@ %% %% This is a generated file. %% -%% IMPORTANT NOTICE: -%% The package takes options. +%% Project: papermas +%% Version: 2011/06/02 v1.0f %% -%% The usual disclaimers apply: +%% Copyright (C) 2010, 2011 by +%% H.-Martin M"unch +%% +%% The usual disclaimer applys: %% 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.) @@ -28,46 +31,44 @@ %% %% This work has the LPPL maintenance status "maintained". %% -%% The Current Maintainer of this work is H.-Martin Muench -%% (Martin dot Muench at Uni-Bonn dot de). +%% The Current Maintainer of this work is H.-Martin Muench. %% %% This work consists of the main source file papermas.dtx %% and the derived files %% papermas.sty, papermas.pdf, papermas.ins, papermas.drv, %% papermas-example.tex. %% -\NeedsTeXFormat{LaTeX2e}[1994/06/01] -\ProvidesPackage{papermas}[2011/02/01 v1.0e - Computes paper mass of a printout (HMM)]% +\NeedsTeXFormat{LaTeX2e}[2009/09/24] +\ProvidesPackage{papermas}[2011/06/02 v1.0f + Computes paper mass of a printout (HMM)] %% Allows to compute the number of sheets of paper %% needed to print a document as well as the %% mass of that printed version of the document, %% useful e. g. when sending it by mail to determine the postage. %% Warning/Disclaimer: Mass of (printer's) ink has to be added -%% (and that of envelope, address sticker, stamps,...)! +%% and that of envelope, address sticker, stamps,...! %% So, this is only an estimation without guarantee - %% do not sue me, if you have got to pay excess postage! -%% Further this package allows to compute -%% "base to the power of exponent" inside TeX. -\RequirePackage{kvoptions}[2010/02/22]% v3.7 -\RequirePackage{pagesLTS}[2011/02/01]% v1.1m -%% papermas may work with earlier versions of those packages, -%% but this was not tested. Please consider updating your packages -%% to the most recent version (if they are not already the most -%% recent version). +\RequirePackage{kvoptions}[2010/12/23]% v3.10 +\RequirePackage{pagesLTS}[2011/03/17]% v1.1o +\RequirePackage{intcalc}[2007/09/27]% v1.1; for intcalcPow +%% papermas 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). \SetupKeyvalOptions{family = papermas,prefix = papermas@} \DeclareStringOption[4]{format}[4]% paper foormat, ISO A..., - % default: (ISO A) 4 +%% default: (ISO A) 4 \DeclareStringOption[80]{masss}[80]% specific mass of the paper, - % default: 80 (g/(m^2)) +%% default: 80 (g/(m^2)) \DeclareStringOption[2]{pagespersheet}[2]% number of pages per sheet, - % for duplex printing this is 2. +%% for duplex printing this is 2. \DeclareStringOption[.]{decimalsep}[.]% decimal separator, - % e. g. "." or ",": decimalsep={,} - brackets are needed!!! - % decimalsep={,\,} does not work for screen, aux, log output! +%% e. g. "." or ",": decimalsep={,} - brackets are needed!!! +%% decimalsep={,\,} does not work for screen, aux, log output! \ProcessKeyvalOptions* @@ -80,34 +81,6 @@ \@ifundefined{papermaspagespersheet}{\gdef\papermaspagespersheet{\textbf{??}}}{} \@ifundefined{papermassheets}{\gdef\papermassheets{\textbf{??}}}{} -\newcounter{papermas@rerun} -\newcounter{papermas@base} -\newcounter{papermas@exp} -\newcounter{papermas@result} -\newcounter{papermas@ini} -\setcounter{papermas@ini}{1} - -\newcommand\papermas@powerof[2]{% - \setcounter{papermas@base}{#1} - \setcounter{papermas@exp}{#2} - \ifnum \value{papermas@ini}=1 - \setcounter{papermas@result}{\value{papermas@base}} - \setcounter{papermas@ini}{0} - \ifnum \value{papermas@exp}=0% - \setcounter{papermas@result}{1} - \else - \addtocounter{papermas@exp}{-1} - \fi - \fi - \ifnum \value{papermas@exp}=0% - \setcounter{papermas@ini}{1} - \else - \multiply \value{papermas@result} \value{papermas@base} - \addtocounter{papermas@exp}{-1} - \papermas@powerof{#1}{\value{papermas@exp}} - \fi% - } - \newcommand\papermas@totmass{% \newcounter{papermasA}% paper mass for ISO A... \setcounter{papermasA}{\papermas@format}% e. g. 4 @@ -124,7 +97,7 @@ \setcounter{papermasmasss}{\papermas@masss}% default: 80 \multiply \value{papermasmasss} 100 % default: 8000 \ifnum \value{papermasmasss}<1% - \PackageError{pagesLTS}{Option masss has no valid value}% + \PackageError{papermas}{Option masss has no valid value}% {The masss option of the papermas package\MessageBreak% only takes positive numbers,\MessageBreak% because this should be the mass per square meter\MessageBreak% @@ -154,8 +127,7 @@ \fi \multiply \value{papermasmasss} \value{papermas@sheets} % default: 8000 (no default for this) - \papermas@powerof{2}{\value{papermasA}} - \divide \value{papermasmasss} by \value{papermas@result} + \divide \value{papermasmasss} by \intcalcPow{2}{\value{papermasA}} % default: 16000 / 2^(\value{papermasA}) % for the example 297 is used \newcounter{papermas@tmpm} @@ -183,6 +155,7 @@ \fi \fi \edef\papermastmpr{\arabic{papermas@tmpo}\papermas@decimalsep\arabic{papermas@tmpp}}% + \global\edef\papermas@mbs{\arabic{papermas@tmpo}}% \edef\papermastmpformat{\papermas@format}% \edef\papermastmpmasss{\papermas@masss}% \edef\papermastmppagespersheet{\papermas@pagespersheet}% @@ -191,9 +164,11 @@ \ifnum\value{papermassttl}=\value{papermasmasss} \relax \else - \PackageWarningNoLine{papermas}{% - Number of pages may have changed.\MessageBreak% - Rerun to get it right.\MessageBreak% + \AtVeryVeryEnd{% + \PackageWarningNoLine{papermas}{% + Number of pages may have changed.\MessageBreak% + Rerun to get it right% + }% }% \fi \setcounter{papermassttl}{\arabic{papermasmasss}} @@ -220,46 +195,92 @@ } \AtBeginDocument{% - \def\papermas@undefined{\textbf{??}} - \setcounter{papermas@rerun}{0} - \ifx\papermasstotal\papermas@undefined \addtocounter{papermas@rerun}{000001} \fi - \ifx\papermasstotal\papermas@undefined \addtocounter{papermas@rerun}{000010} \fi - \ifx\papermasformat\papermas@undefined \addtocounter{papermas@rerun}{000100} \fi - \ifx\papermasmasss\papermas@undefined \addtocounter{papermas@rerun}{001000} \fi - \ifx\papermaspagespersheet\papermas@undefined \addtocounter{papermas@rerun}{010000} \fi - \ifx\papermassheets\papermas@undefined \addtocounter{papermas@rerun}{100000} \fi + \gdef\papermas@undefined{\textbf{??}} + \gdef\papermas@rerun{0} + \ifx\papermasstotal\papermas@undefined \gdef\papermas@rerun{1} \fi + \ifx\papermasformat\papermas@undefined \gdef\papermas@rerun{1} \fi + \ifx\papermasmasss\papermas@undefined \gdef\papermas@rerun{1} \fi + \ifx\papermaspagespersheet\papermas@undefined \gdef\papermas@rerun{1} \fi + \ifx\papermassheets\papermas@undefined \gdef\papermas@rerun{1} \fi + \ifx\papermas@rerun\pagesLTS@one + \AtVeryVeryEnd{ + \PackageWarningNoLine{papermas}{% + Variable(s) still undefined!\MessageBreak% + Rerun to get the variable(s) right% + } + } + \fi } \AfterLastShipout{% \papermas@totmass% }% -\AtVeryEndDocument{% - \ifnum\value{papermas@rerun}>0 - \PackageWarningNoLine{papermas}{!\MessageBreak% - Variable(s) still undefined.\MessageBreak% - (Error code \arabic{papermas@rerun}.)\MessageBreak% - Rerun to get the variable(s) right.\MessageBreak% - }% - \else - \message{papermas: ***************************************************} - \message{papermas: * This document consists of \arabic{pagesLTS.pagenr} pages. *} - \message{papermas: * When printing \papermaspagespersheet\space pages on one sheet of paper, *} - \message{papermas: * \papermassheets\space sheets will be needed. *} - \message{papermas: * For ISO A \papermasformat\space paper of \papermasmasss\space g/m^2 specific mass, *} - \message{papermas: * the printout will have a mass of about \papermasstotal\space g. *} - \message{papermas: ***************************************************} - \PackageInfo{papermas}{***************************************************\MessageBreak% - * This document consists of \arabic{pagesLTS.pagenr} pages. *\MessageBreak% - * When printing \papermaspagespersheet\space pages on one sheet of paper, *\MessageBreak% - * \papermassheets\space sheets will be needed. *\MessageBreak% - * For ISO A \papermasformat\space paper of \papermasmasss\space g/m^2 specific mass, *\MessageBreak% - * the printout will have a mass of about \papermasstotal\space g. *\MessageBreak% - ***************************************************\MessageBreak% - }% +\newcommand{\papermas@log}[1]{% + \ifnum#1>9% + \addtocounter{pagesLTS.pnc.0}{1}% + \papermas@log{\intcalcDiv{#1}{10}}% \fi% } +\newcommand{\papermas@spaces}[2]{% + \edef\papermas@remember{\arabic{pagesLTS.pnc.0}}% + \setcounter{pagesLTS.pnc.0}{1}% + \papermas@log{#1}% + \addtocounter{pagesLTS.pnc.0}{-#2}% + \multiply \value{pagesLTS.pnc.0} -1% + \papermas@space{\arabic{pagesLTS.pnc.0}}% + \message{*^^J}% + \setcounter{pagesLTS.pnc.0}{\papermas@remember}% + } + +\newcommand{\papermas@space}[1]{% + \ifnum \value{pagesLTS.pnc.0}>0% + \message{}% + \fi% + \setcounter{pagesLTS.pnc.0}{#1}% + \addtocounter{pagesLTS.pnc.0}{-1}% + \ifnum \value{pagesLTS.pnc.0}>0% + \papermas@space{\arabic{pagesLTS.pnc.0}}% + \fi% + } + +\AtVeryVeryEnd{% + \ifx\papermas@rerun\pagesLTS@zero% + \message{^^J}% + \message{papermas: ******************** Paper mass *******************^^J}% + \message{papermas: * This document consists of \arabic{pagesLTS.pagenr} pages.} + \papermas@spaces{\arabic{pagesLTS.pagenr}}{15}% + \message{papermas: * When printing \papermaspagespersheet\space pages on one sheet of paper,} + \papermas@spaces{\papermaspagespersheet}{5}% + \message{papermas: * \papermassheets\space sheets will be needed.} + \papermas@spaces{\papermassheets}{25}% + \message{papermas: * For ISO A \papermasformat\space paper of \papermasmasss\space g/m^2 specific mass,} + \papermas@spaces{\papermasmasss}{6}% + \message{papermas: * the printout will have a mass of about \papermasstotal\space g.} + \papermas@spaces{\papermas@mbs}{4}% + \message{papermas: ***************************************************^^J} + \message{^^J} + \fi% + } + +\newcommand\papermas@powerof[2]{% + \PackageError{papermas}{Obsolete command \string\papermas@powerof used}{% + The command \string\papermas@powerof has been removed from the papermas package.\MessageBreak% + Please use e.g. \string\intcalcPow from the intcalc package instead.\MessageBreak% + You can now just type Return to continue, but this error message will be\MessageBreak% + issued again when using \string\papermas@powerof, and the command might be\MessageBreak% + removed completely from future versions of the papermas package.\MessageBreak% + }% + \AtVeryVeryEnd{% + \message{^^J% + papermas: Please remember to replace the \string\papermas@powerof\space command!^^J^^J% + }% + }% + \pagesLTS@ifcounter{papermas@result}% + \setcounter{papermas@result}{\intcalcPow{#1}{#2}}% + } + \endinput %% %% End of file `papermas.sty'. -- cgit v1.2.3