From 7696c3d5f27bb48b74d35dcc420a1210dda72cd8 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 27 Mar 2009 17:39:22 +0000 Subject: newlfm update (24mar09) git-svn-id: svn://tug.org/texlive/trunk@12534 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/source/latex/newlfm/newlfm.dtx | 2145 ++++++++++++---------- 1 file changed, 1164 insertions(+), 981 deletions(-) (limited to 'Master/texmf-dist/source/latex/newlfm') diff --git a/Master/texmf-dist/source/latex/newlfm/newlfm.dtx b/Master/texmf-dist/source/latex/newlfm/newlfm.dtx index 434da7d7455..b6f9be3f803 100644 --- a/Master/texmf-dist/source/latex/newlfm/newlfm.dtx +++ b/Master/texmf-dist/source/latex/newlfm/newlfm.dtx @@ -1,6 +1,6 @@ -% \iffalse meta-comment +%% \iffalse meta-comment % -% Copyright (C) 1999-2004 Paul Thompson +% Copyright (C) 1999-2009 Paul Thompson % This program is free software; you can redistribute it and/or % modify it under the terms of the GNU General Public License % as published by the Free Software Foundation; either version 2 @@ -71,12 +71,12 @@ %<*driver> \ProvidesFile{newlfm.drv} % -%<+package> [2009/1/09 v9.1 +%<+package> [2009/03/24 v9.3 %<+package> Letter-Fax-Memo LaTeX Document Class] -%<+addrset> [2009/1/09 v9.1 +%<+addrset> [2009/03/24 v9.3 %<+addrset> Address macros]% -%<+setdim> [2009/1/09 v9.1 -%<+setdim> Dimension Setting macros] +%<+setdim> [2009/03/24 v9.3 +%<+setdim> Address macros] % \end{macrocode} % % \section{The documentation driver file} @@ -92,8 +92,7 @@ % \changes{v1.3}{1999/03/25}{Removed the streamlist and here packages from % the list of required packages. These were not actually used.} % \changes{v1.4}{1999/03/25}{Fixed the timestamp macro, using a fix from -% Michael Dritschel, Purdue University. Posted 5/5/99. Viva Las -% Revolution!! Viva Mexico!!! Viva Las Cinco de Mayo!!!} +% Michael Dritschel, Purdue University. Posted 5/5/99.} % \changes{v1.5}{1999/07/25}{Fixed the Blank macros, enabling the header and % footer information to be properly blanked. Added two macros to print form % letters.} @@ -153,7 +152,17 @@ % \changes{v8.3}{2004/11/02}{Election special. Cello-window option added.} % \changes{v8.4}{2004/11/06}{Fixed a number of other errors, including % multiple repeated envelope labels.} -% \changes{v1.1}{2009/1/09}{Added ability to add letterhead paper as 'watermark' .eps file} +% \changes{v9.1}{2009/1/09}{Added ability to add letterhead paper as a background to +% the normal processing. Add restlettera, restletterb, restletterc, restletterd, restlettere +% designation for information to be printed on a page(s) after the signature.} +% \changes{v9.2}{2009/1/14}{Redid the box-up process to more fully and correctly +% handle text material in the header and footer sections. Approach now uses lrbox +% and minipage rather than sbox. lrbox/minipage can handle multi-line sections, and +% sizes them correctly.} +% \changes{v9.3}{2009/3/24}{Added facility to include extra pages after the signature, for +% letter material to be structured in a normal and simple manner. Defaults for several +% important commands have now been added; prior to this, omitting some commands has led +% to crucial errors.} % % \iffalse % \begin{macrocode} @@ -1063,6 +1072,16 @@ % comment character, to ensure that end-of-line characters are not % translated into hard-to-detect space characters. % +% \subsection{Including a pre-set sheet as background} +% In some cases, the letterhead or pre-set form is to be included as a full sheet of +% letterhead information. In this case, the pre-set form may be designated +% using the command |Background| (for letterhead form for the first page), and |background| +% (for pre-set form for subsequent pages after the first page). The form to be +% included should be set up as a valid graphical object. In the case of the use of +% the |pdflatex| process, it should be set up as a |.pdf| form, and in the case of +% |latex| processing, it should be set up as a valid |.ps| form, using the +% encapsulated PostScript approach with a valid bounding box. +% % \subsection{Blank block printing commands} % In some cases, the user wishes to use the included graphical objects to % size the header and footer areas (covered in Section \ref{sect:lhead} @@ -1479,9 +1498,10 @@ % \section{Miscellaneous topics} % \subsection{Lines} % By default, |newlfm| demarcates the header and footer sections with -% lines. These may be eliminated using the commands |noheadline|, -% |nofootline|, or |nolines|. These commands eliminate lines in both -% letterhead page and non-letterhead page. Line widths may be set as +% lines. These may be eliminated using the commands |noHeadline|, |noFootline|, +% |noLines| (for the letterhead page), and |noheadline|, |nofootline|, +% |nolines| (for subsequent pages). These commands eliminate lines in either the +% letterhead page or the non-letterhead page. Line widths may be set as % well, using the commands |Headlinewd| (sets head linewidth for % letterhead page), |headlinewd| (sets head linewidth for % non-letterhead page), |Footlinewd| (sets foot linewidth for @@ -1492,6 +1512,20 @@ % \newlfmP{Headlinewd=.5pt,footlinewd=.75pt} % \end{verbatim} % If a line width is set to 0pt, the line is not printed. +% \subsection{Printing information on additional pages} +% In many letters, the letterhead page is to be followed by additional information +% on additional, non-letterhead pages. This may be done using the +% |\restlettera{text}|, |\restletterb{text}|, |\restletterc{text}|, +% |\restletterd{text}|, and |\restlettere{text}| +% commands. Following the issuance of the signature, a |\newpage| command is +% issued, and the information contained in the +% |\restlettera{text}|, |\restletterb{text}|, |\restletterc{text}|, +% |\restletterd{text}|, and |\restlettere{text}| blocks are printed. These +% need not be used sequentially. +% These blocks must not have spaces. If paragraphs are to be used, use |\paragraph| +% to force the new paragraph without an actual blank line. In addition, extra material +% in each section is limited to a single page. The letterhead rules for the extra +% pages follow the rules for the non-first page. % \subsection{Setting the date} % The date for the letter is set to be the date upon which the letter is % typeset. To change the date, use |\dateset{May 20, 1974}| (feel free @@ -1721,7 +1755,7 @@ % either in the document-header option block or in the % |\newlfmP| command) % \item \textbf{Letter date information:} |\dateset| -% \item \textbf{Water-mark page:} |\waterpage| +% \item \textbf{Back-ground information:} |\Background|, |\background| % \item \textbf{Memo styles:} |stdmemo|, |fullmemo| (\tabpagr{memoopt}) % \item \textbf{Memo options:} |memoaddrto|, |memoemailto|, |memophoneto|, % |memofaxto|, |memoaddrfrom|, |memoemailfrom|, |memophonefrom|, @@ -1797,6 +1831,9 @@ % |blankrmargin|, |blanklmargin|, |Blankheader|, |Blankfooter|, % |Blankrmargin|, |Blanklmargin|, |blankall|, |Blankall|, % |Blank| (\tabpagr{blankopt}) +% \item Extended letters: |\restlettera{text}|, |\restletterb{text}|, +% |\restletterc{text}|, |\restletterd{text}|, and |\restlettere{text}| prints +% additional pages after the signature with additional information. % \item {\textbf{Printing commands:}} |\printnameto|, |\printaddrto|, % |\printphoneto|, |\printphoneato|, |\printphonebto|, |\printphonecto|, % |\printphonedto|, |\printphoneoto|, |\printphonehto|, |\printpagerto|, @@ -1854,101 +1891,162 @@ \RequirePackage{setspace}% \RequirePackage{lastpage}% \@ifundefined{ps@@empty}{% - \ClassError{newlfm}{Version of fancyhdr.sty is not current. \MessageBreak - Please obtain a recent copy of fancyhdr.sty (Version 1.99d or later) - from CTAN.} {Go to CTAN and download the current version of - fancyhdr.sty}}{} + \ClassError{newlfm}{Version of fancyhdr.sty is not current. \MessageBreak Please obtain + a recent copy of fancyhdr.sty (Version 1.99d or later) from CTAN.} {Go to CTAN and + download the current version of fancyhdr.sty}}{} \RequirePackage{calc}[1997/11/11]% \RequirePackage{graphicx}[1997/06/09]% \RequirePackage{rotating}[1997/06/09]% % \end{macrocode} % \paragraph{\texttt{newlength} definitions:} -% Begin by defining all newlength commands here: -% \begin{macrocode} -\newlength{\@addr@fr@sk@b} \newlength{\@addr@fr@sk@a} \newlength{\@addr@to@sk@b}% -\newlength{\@addr@to@sk@a} \newlength{\@blka@b} \newlength{\@blka@a}% -\newlength{\@blkb@b} \newlength{\@blkb@a} \newlength{\@blkc@b}% -\newlength{\@blkc@a} \newlength{\@caption@skip@above}\newlength{\@caption@skip@below}% -\newlength{\@cello@h} \newlength{\@cello@w} \newlength{\@cello@d}% -\newlength{\@cello@l} \newlength{\@dt@sk@b} \newlength{\@dt@sk@a}% -\newlength{\@Dth@H@L} \newlength{\@Dth@H@C} \newlength{\@Dth@H@R}% -\newlength{\@Dth@F@L} \newlength{\@Dth@F@C} \newlength{\@Dth@F@R}% -\newlength{\@Dth@h@l} \newlength{\@Dth@h@c} \newlength{\@Dth@h@r}% -\newlength{\@Dth@f@l} \newlength{\@Dth@f@c} \newlength{\@Dth@f@r}% -\newlength{\@greet@to@sk@b} \newlength{\@greet@to@sk@a} \newlength{\@Hgt@Head}% -\newlength{\@Hrw} \newlength{\@hrw} \newlength{\@extr@hor}% -\newlength{\@Frw} \newlength{\@frw}% -\newlength{\@Hgt@Foot} \newlength{\@Hgt@head} \newlength{\@Hgt@foot}% -\newlength{\@Hgt@H@L} \newlength{\@Hgt@H@C} \newlength{\@Hgt@H@R}% -\newlength{\@Hgt@F@L} \newlength{\@Hgt@F@C} \newlength{\@Hgt@F@R}% -\newlength{\@Hgt@h@l} \newlength{\@Hgt@h@c} \newlength{\@Hgt@h@r}% -\newlength{\@Hgt@f@l} \newlength{\@Hgt@f@c} \newlength{\@Hgt@f@r}% -\newlength{\@lab@bl} \newlength{\@lab@pl} \newlength{\@lab@pw}% -\newlength{\@lab@bh} \newlength{\@lab@bw} \newlength{\@lab@th}% -\newlength{\@lab@lm} \newlength{\@marg@lt} \newlength{\@marg@rt}% -\newlength{\@marg@tp} \newlength{\@marg@bt} \newlength{\@marg@tp@a}% -\newlength{\@marg@bt@a} \newlength{\@marg@tp@b} \newlength{\@marg@tp@s}% -\newlength{\@marg@bt@b} \newlength{\@marg@lt@r} \newlength{\@marg@lt@l}% -\newlength{\@marg@rt@r} \newlength{\@marg@rt@l} \newlength{\@marg@lt@tp@d}% -\newlength{\@marg@rt@tp@d} \newlength{\@Min@Hgt@Head} \newlength{\@Min@Hgt@head}% -\newlength{\@Min@Hgt@Foot} \newlength{\@Min@Hgt@foot} \newlength{\@Min@Hgt@Right}% -\newlength{\@Min@Hgt@right} \newlength{\@Min@Hgt@Left} \newlength{\@Min@Hgt@left}% -\newlength{\@Plg} \newlength{\@Pwd} \newlength{\@plg}% -\newlength{\@pwd} \newlength{\@post@sig@sp@a} \newlength{\@post@sig@sp@b}% -\newlength{\@pre@memo@sp} \newlength{\@post@memo@sp} \newlength{\@sig@sk@b}% -\newlength{\@sig@sk@a} \newlength{\@sig@sp} \newlength{\@text@width}% -\newlength{\@sig@sk@c} \newlength{\@sig@sk@r}% -\newlength{\@cls@sk@a} \newlength{\@cls@sk@b}% -\newlength{\@text@height} \newlength{\@unpr@tp} \newlength{\@unpr@bm}% -\newlength{\@unpr@rt} \newlength{\@unpr@lt} \newlength{\@util}% -\newlength{\@utila} \newlength{\@utilb} \newlength{\@utilc}% -\newlength{\@utild} \newlength{\@utile}% -\newlength{\@xda} \newlength{\@xdb} \newlength{\@xdc}% -\newlength{\@xdd} \newlength{\@xde} \newlength{\@xdf}% -\newlength{\@xdg} \newlength{\@xdh} \newlength{\@xdi}% -% \end{macrocode} -% \paragraph{\texttt{newlength} default values:} -% Begin by defining all newlength commands here: +% Begin by defining all newlength commands here, and then additionally set the +% lengths for all those which need initialization: % \begin{macrocode} -\setlength{\@cello@h}{1in} \setlength{\@cello@w}{3in}% -\setlength{\@cello@d}{2.5in} \setlength{\@cello@l}{1in}% -\setlength{\@marg@tp@s}{0in} \setlength{\@marg@bt@b}{0in}% -\setlength{\@unpr@tp}{0in} \setlength{\@unpr@bm}{0in}% -\setlength{\@unpr@rt}{0in} \setlength{\@unpr@lt}{0in}% -\setlength{\@marg@lt@r}{0in} \setlength{\@marg@lt@l}{0in}% -\setlength{\@marg@rt@r}{0in} \setlength{\@marg@lt}{1in}% -\setlength{\@marg@rt}{1in} \setlength{\@marg@tp}{1in}% -\setlength{\@marg@bt}{1in} \setlength{\@marg@tp@a}{0in}% -\setlength{\@marg@bt@a}{0in} \setlength{\@marg@tp@b}{0in}% -\setlength{\@marg@rt@l}{0in} \setlength{\@marg@lt@tp@d}{0pt}% -\setlength{\@marg@rt@tp@d}{0pt}% -\setlength{\@Hrw}{1pt} \setlength{\@hrw}{1pt}% -\setlength{\@Frw}{1pt} \setlength{\@frw}{1pt}% -\setlength{\@sig@sk@a}{5pt} \setlength{\@sig@sk@b}{5pt} -\setlength{\@cls@sk@a}{0pt} \setlength{\@cls@sk@b}{1em} -\setlength{\@sig@sk@c}{5pt} \setlength{\@sig@sk@r}{5pt}% -\setlength{\@extr@hor}{0pt} +\newlength{\@addr@fr@sk@b}\setlength{\@addr@fr@sk@b}{0in}% +\newlength{\@addr@fr@sk@a}\setlength{\@addr@fr@sk@a}{0in}% +\newlength{\@addr@to@sk@b}\setlength{\@addr@to@sk@b}{0in}% +\newlength{\@addr@to@sk@a}\setlength{\@addr@to@sk@a}{0in}% +\newlength{\@blka@b}\setlength{\@blka@b}{0in}% +\newlength{\@blka@a}\setlength{\@blka@a}{0in}% +\newlength{\@blkb@b}\setlength{\@blkb@b}{0in}% +\newlength{\@blkb@a}\setlength{\@blkb@a}{0in}% +\newlength{\@blkc@b}\setlength{\@blkc@b}{0in}% +\newlength{\@blkc@a}\setlength{\@blkc@a}{0in}% +\newlength{\@caption@skip@above}\setlength{\@caption@skip@above}{0in}% +\newlength{\@caption@skip@below}\setlength{\@caption@skip@below}{0in}% +\newlength{\@cello@h}\setlength{\@cello@h}{1in}% +\newlength{\@cello@w}\setlength{\@cello@w}{3in}% +\newlength{\@cello@d}\setlength{\@cello@d}{2.5in}% +\newlength{\@cello@l}\setlength{\@cello@l}{1in}% +\newlength{\@dt@sk@b}\setlength{\@dt@sk@b}{0in}% +\newlength{\@dt@sk@a}\setlength{\@dt@sk@a}{0in}% +\newlength{\@Dth@H@L}\setlength{\@Dth@H@L}{0in}% +\newlength{\@Dth@H@C}\setlength{\@Dth@H@C}{0in}% +\newlength{\@Dth@H@R}\setlength{\@Dth@H@R}{0in}% +\newlength{\@Dth@F@L}\setlength{\@Dth@F@L}{0in}% +\newlength{\@Dth@F@C}\setlength{\@Dth@F@C}{0in}% +\newlength{\@Dth@F@R}\setlength{\@Dth@F@R}{0in}% +\newlength{\@Dth@h@l}\setlength{\@Dth@h@l}{0in}% +\newlength{\@Dth@h@c}\setlength{\@Dth@h@c}{0in}% +\newlength{\@Dth@h@r}\setlength{\@Dth@h@r}{0in}% +\newlength{\@Dth@f@l}\setlength{\@Dth@f@l}{0in}% +\newlength{\@Dth@f@c}\setlength{\@Dth@f@c}{0in}% +\newlength{\@Dth@f@r}\setlength{\@Dth@f@r}{0in}% +\newlength{\@greet@to@sk@b}\setlength{\@greet@to@sk@b}{0in}% +\newlength{\@greet@to@sk@a}\setlength{\@greet@to@sk@a}{0in}% +\newlength{\@Hgt@Head}\setlength{\@Hgt@Head}{0in}% +\newlength{\@Hrw}\setlength{\@Hrw}{1pt}% +\newlength{\@hrw}\setlength{\@hrw}{1pt}% +\newlength{\@extr@hor}\setlength{\@extr@hor}{0pt}% +\newlength{\@Frw}\setlength{\@Frw}{1pt}% +\newlength{\@frw}\setlength{\@frw}{1pt}% +\newlength{\@Hgt@Foot}\setlength{\@Hgt@Foot}{0in}% +\newlength{\@Hgt@head}\setlength{\@Hgt@head}{0in}% +\newlength{\@Hgt@foot}\setlength{\@Hgt@foot}{0in}% +\newlength{\@Hgt@H@L}\setlength{\@Hgt@H@L}{0in}% +\newlength{\@Hgt@H@C}\setlength{\@Hgt@H@C}{0in}% +\newlength{\@Hgt@H@R}\setlength{\@Hgt@H@R}{0in}% +\newlength{\@Hgt@F@L}\setlength{\@Hgt@F@L}{0in}% +\newlength{\@Hgt@F@C}\setlength{\@Hgt@F@C}{0in}% +\newlength{\@Hgt@F@R}\setlength{\@Hgt@F@R}{0in}% +\newlength{\@Hgt@h@l}\setlength{\@Hgt@h@l}{0in}% +\newlength{\@Hgt@h@c}\setlength{\@Hgt@h@c}{0in}% +\newlength{\@Hgt@h@r}\setlength{\@Hgt@h@r}{0in}% +\newlength{\@Hgt@f@l}\setlength{\@Hgt@f@l}{0in}% +\newlength{\@Hgt@f@c}\setlength{\@Hgt@f@c}{0in}% +\newlength{\@Hgt@f@r}\setlength{\@Hgt@f@r}{0in}% +\newlength{\@lab@bl}\setlength{\@lab@bl}{0in}% +\newlength{\@lab@pl}\setlength{\@lab@pl}{0in}% +\newlength{\@lab@pw}\setlength{\@lab@pw}{0in}% +\newlength{\@lab@bh}\setlength{\@lab@bh}{0in}% +\newlength{\@lab@bw}\setlength{\@lab@bw}{0in}% +\newlength{\@lab@th}\setlength{\@lab@th}{0in}% +\newlength{\@lab@lm}\setlength{\@lab@lm}{0in}% +\newlength{\@marg@lt}\setlength{\@marg@lt}{1in}% +\newlength{\@marg@rt}\setlength{\@marg@rt}{1in}% +\newlength{\@marg@tp}\setlength{\@marg@tp}{1in}% +\newlength{\@marg@bt}\setlength{\@marg@bt}{1in}% +\newlength{\@marg@tp@a}\setlength{\@marg@tp@a}{0in}% +\newlength{\@marg@bt@a}\setlength{\@marg@bt@a}{0in}% +\newlength{\@marg@bt@b}\setlength{\@marg@bt@b}{0in}% +\newlength{\@marg@tp@b}\setlength{\@marg@tp@b}{0in}% +\newlength{\@marg@tp@s}\setlength{\@marg@tp@s}{0in}% +\newlength{\@marg@lt@r}\setlength{\@marg@lt@r}{0in}% +\newlength{\@marg@lt@l}\setlength{\@marg@lt@l}{0in}% +\newlength{\@marg@rt@r}\setlength{\@marg@rt@r}{0in}% +\newlength{\@marg@rt@l}\setlength{\@marg@rt@l}{0in}% +\newlength{\@marg@lt@tp@d}\setlength{\@marg@lt@tp@d}{0pt}% +\newlength{\@marg@rt@tp@d}\setlength{\@marg@rt@tp@d}{0pt}% +\newlength{\@Min@Hgt@Head}\setlength{\@Min@Hgt@Head}{0in}% +\newlength{\@Min@Hgt@head}\setlength{\@Min@Hgt@head}{0in}% +\newlength{\@Min@Hgt@Foot}\setlength{\@Min@Hgt@Foot}{0in}% +\newlength{\@Min@Hgt@foot}\setlength{\@Min@Hgt@foot}{0in}% +\newlength{\@Min@Hgt@Right}\setlength{\@Min@Hgt@Right}{0in}% +\newlength{\@Min@Hgt@right}\setlength{\@Min@Hgt@right}{0in}% +\newlength{\@Min@Hgt@Left}\setlength{\@Min@Hgt@Left}{0in}% +\newlength{\@Min@Hgt@left}\setlength{\@Min@Hgt@left}{0in}% +\newlength{\@Plg}\setlength{\@Plg}{0in}% +\newlength{\@Pwd}\setlength{\@Pwd}{0in}% +\newlength{\@plg}\setlength{\@plg}{0in}% +\newlength{\@pwd}\setlength{\@pwd}{0in}% +\newlength{\@post@sig@sp@a}\setlength{\@post@sig@sp@a}{0in}% +\newlength{\@post@sig@sp@b}\setlength{\@post@sig@sp@b}{0in}% +\newlength{\@pre@memo@sp}\setlength{\@pre@memo@sp}{0in}% +\newlength{\@post@memo@sp}\setlength{\@post@memo@sp}{0in}% +\newlength{\@sig@sp}\setlength{\@sig@sp}{0in}% +\newlength{\@text@width}\setlength{\@text@width}{0in}% +\newlength{\@sig@sk@a}\setlength{\@sig@sk@a}{5pt}% +\newlength{\@sig@sk@b}\setlength{\@sig@sk@b}{5pt}% +\newlength{\@sig@sk@c}\setlength{\@sig@sk@c}{5pt}% +\newlength{\@sig@sk@r}\setlength{\@sig@sk@r}{5pt}% +\newlength{\@cls@sk@a}\setlength{\@cls@sk@a}{1em}% +\newlength{\@cls@sk@b}\setlength{\@cls@sk@b}{1em}% +\newlength{\@text@height}\setlength{\@text@height}{0in}% +\newlength{\@unpr@tp}\setlength{\@unpr@tp}{0in}% +\newlength{\@unpr@bm}\setlength{\@unpr@bm}{0in}% +\newlength{\@unpr@rt}\setlength{\@unpr@rt}{0in}% +\newlength{\@unpr@lt}\setlength{\@unpr@lt}{0in}% +\newlength{\@util}\setlength{\@util}{0in}% +\newlength{\@utila}\setlength{\@utila}{0in}% +\newlength{\@utilb}\setlength{\@utilb}{0in}% +\newlength{\@utilc}\setlength{\@utilc}{0in}% +\newlength{\@utild}\setlength{\@utild}{0in}% +\newlength{\@utile}\setlength{\@utile}{0in}% +\newlength{\@xda}\setlength{\@xda}{0in}% +\newlength{\@xdb}\setlength{\@xdb}{0in}% +\newlength{\@xdc}\setlength{\@xdc}{0in}% +\newlength{\@xdd}\setlength{\@xdd}{0in}% +\newlength{\@xde}\setlength{\@xde}{0in}% +\newlength{\@xdf}\setlength{\@xdf}{0in}% +\newlength{\@xdg}\setlength{\@xdg}{0in}% +\newlength{\@xdh}\setlength{\@xdh}{0in}% +\newlength{\@xdi}\setlength{\@xdi}{0in}% +\txa{newlength done}% % \end{macrocode} % \paragraph{\texttt{newsavebox} definitions:} % Define all newsavebox commands here: % \begin{macrocode} \newsavebox{\@sig@box@a}\newsavebox{\b@addr@fr}\newsavebox{\b@addr@to}% -\newsavebox{\@x@c} \newsavebox{\@x@l} \newsavebox{\@x@r}% -\newsavebox{\fba} \newsavebox{\adrfr} \newsavebox{\adrto}% -\newsavebox{\@sig@box@b}\newsavebox{\@sig@box@c}\newsavebox{\@sig@box@d} -\newsavebox{\@sig@box@e}\newsavebox{\@sig@box@f}\newsavebox{\@sig@box@g} -\newsavebox{\@sig@box@h}\newsavebox{\@sig@box@i}\newsavebox{\@sig@box@j} +\newsavebox{\@x@c}\newsavebox{\@x@l}\newsavebox{\@x@r}% +\newsavebox{\fba}\newsavebox{\adrfr}\newsavebox{\adrto}% +\newsavebox{\@sig@box@b}\newsavebox{\@sig@box@c}\newsavebox{\@sig@box@d}% +\newsavebox{\@sig@box@e}\newsavebox{\@sig@box@f}\newsavebox{\@sig@box@g}% +\newsavebox{\@sig@box@h}\newsavebox{\@sig@box@i}\newsavebox{\@sig@box@j}% +\newsavebox{\@rest@ltr}\newsavebox{\@resta@ltr}\newsavebox{\@restb@ltr}% +\newsavebox{\@restc@ltr}\newsavebox{\@restd@ltr}\newsavebox{\@reste@ltr}% +\txa{newsavebox done}% % \end{macrocode} % \paragraph{\texttt{newcounter} definitions:} % Define all newcounter commands here: % \begin{macrocode} -\newcounter{@c@pos} \newcounter{figure} \newcounter{table}% -\newcounter{@sig@tot} \newcounter{@lab@tot@row}% -\newcounter{@lab@tot@col} \newcounter{@lab@cnt@row} \newcounter{@lab@cnt@col}% +\newcounter{@c@pos}\newcounter{figure}\newcounter{table}% +\newcounter{@sig@tot}\newcounter{@lab@tot@row}% +\newcounter{@lab@tot@col}\newcounter{@lab@cnt@row}\newcounter{@lab@cnt@col}% \newcount\@nlfm@addr% \newcount\@nlfm@util% \newcount\@nlfm@uta% \newcount\@nlfm@utb% +\txa{newcount done}% % \end{macrocode} % \paragraph{\texttt{newboolean} definitions:} % Boolean variables are defined here. Package |ifthen| defines @@ -1957,118 +2055,128 @@ % \begin{macrocode} \newboolean{@addr@fr@l}% \newboolean{@addr@fr@p}% -\newboolean{@addr@fr@e} \setboolean{@addr@fr@e}{false}% -\newboolean{@addr@fr@f} \setboolean{@addr@fr@f}{false}% -\newboolean{@addr@fr@t} \setboolean{@addr@fr@t}{false}% -\newboolean{@addr@swtch} \setboolean{@addr@swtch}{true}% +\newboolean{@addr@fr@e}\setboolean{@addr@fr@e}{false}% +\newboolean{@addr@fr@f}\setboolean{@addr@fr@f}{false}% +\newboolean{@addr@fr@t}\setboolean{@addr@fr@t}{false}% +\newboolean{@addr@swtch}\setboolean{@addr@swtch}{true}% \newboolean{@addr@to@l}% \newboolean{@addr@to@p}% -\newboolean{@addr@to@f} \setboolean{@addr@to@f}{false}% -\newboolean{@addr@to@e} \setboolean{@addr@to@e}{false}% -\newboolean{@addr@to@t} \setboolean{@addr@to@t}{false}% -\newboolean{@b@h} \setboolean{@b@h}{false}% -\newboolean{@b@f} \setboolean{@b@f}{false}% -\newboolean{@b@r} \setboolean{@b@r}{false}% -\newboolean{@b@l} \setboolean{@b@l}{false}% -\newboolean{@B@h} \setboolean{@B@h}{false}% -\newboolean{@B@f} \setboolean{@B@f}{false}% -\newboolean{@B@r} \setboolean{@B@r}{false}% -\newboolean{@B@l} \setboolean{@B@l}{false}% -\newboolean{@bg@use} \setboolean{@bg@use}{false}% -\newboolean{@Bg@use} \setboolean{@Bg@use}{false}% -\newboolean{@cello@win} \setboolean{@cello@win}{false}% -\newboolean{@cf@use} \setboolean{@cf@use}{false}% -\newboolean{@Ch@use} \setboolean{@Ch@use}{false}% -\newboolean{@Cf@use} \setboolean{@Cf@use}{false}% -\newboolean{@COf@use} \setboolean{@COf@use}{false}% -\newboolean{@CUh@use} \setboolean{@CUh@use}{false}% -\newboolean{@ch@use} \setboolean{@ch@use}{false}% +\newboolean{@addr@to@f}\setboolean{@addr@to@f}{false}% +\newboolean{@addr@to@e}\setboolean{@addr@to@e}{false}% +\newboolean{@addr@to@t}\setboolean{@addr@to@t}{false}% +\newboolean{@b@h}\setboolean{@b@h}{false}% +\newboolean{@b@f}\setboolean{@b@f}{false}% +\newboolean{@b@r}\setboolean{@b@r}{false}% +\newboolean{@b@l}\setboolean{@b@l}{false}% +\newboolean{@B@h}\setboolean{@B@h}{false}% +\newboolean{@B@f}\setboolean{@B@f}{false}% +\newboolean{@B@r}\setboolean{@B@r}{false}% +\newboolean{@B@l}\setboolean{@B@l}{false}% +\newboolean{@bg@use}\setboolean{@bg@use}{false}% +\newboolean{@Bg@use}\setboolean{@Bg@use}{false}% +\newboolean{@cello@win}\setboolean{@cello@win}{false}% +\newboolean{@cf@use}\setboolean{@cf@use}{false}% +\newboolean{@Ch@use}\setboolean{@Ch@use}{false}% +\newboolean{@Cf@use}\setboolean{@Cf@use}{false}% +\newboolean{@COf@use}\setboolean{@COf@use}{false}% +\newboolean{@CUh@use}\setboolean{@CUh@use}{false}% +\newboolean{@ch@use}\setboolean{@ch@use}{false}% \newboolean{@do@any}% -\newboolean{@dt@l} \setboolean{@dt@l}{true}% -\newboolean{@dt@c} \setboolean{@dt@c}{false}% +\newboolean{@dt@l}\setboolean{@dt@l}{true}% +\newboolean{@dt@c}\setboolean{@dt@c}{false}% \newboolean{@dt@p}% -\newboolean{@env@open} \setboolean{@env@open}{false}% -\newboolean{@env@close} \setboolean{@env@close}{false}% -\newboolean{@fax@m@run} \setboolean{@fax@m@run}{false}% +\newboolean{@env@open}\setboolean{@env@open}{false}% +\newboolean{@env@close}\setboolean{@env@close}{false}% +\newboolean{@fax@m@run}\setboolean{@fax@m@run}{false}% \newboolean{@fax@hdr@pg}% \newboolean{@fax@RA}% \newboolean{@fax@RU}% -\newboolean{@fax@bla} \setboolean{@fax@bla}{true}% -\newboolean{@fax@blb} \setboolean{@fax@blb}{false}% -\newboolean{@fl} \setboolean{@fl}{true}% +\newboolean{@fax@bla}\setboolean{@fax@bla}{true}% +\newboolean{@fax@blb}\setboolean{@fax@blb}{false}% +\newboolean{@fl}\setboolean{@fl}{true}% +\newboolean{@Fl}\setboolean{@Fl}{true}% \newboolean{@greet@p}% \newboolean{@greet@l}% -\newboolean{@hl} \setboolean{@hl}{true}% +\newboolean{@hl}\setboolean{@hl}{true}% +\newboolean{@Hl}\setboolean{@Hl}{true}% \newboolean{@in@tab}% -\newboolean{@in@makeenv} \setboolean{@in@makeenv}{false}% -\newboolean{@l@am} \setboolean{@l@am}{true}% -\newboolean{@l@en} \setboolean{@l@en}{false}% -\newboolean{@l@ge} \setboolean{@l@ge}{false}% -\newboolean{@l@fr} \setboolean{@l@fr}{false}% -\newboolean{@l@ot} \setboolean{@l@ot}{false}% -\newboolean{@l@pi} \setboolean{@l@pi}{false}% -\newboolean{@lab@t} \setboolean{@lab@t}{true}% -\newboolean{@lab@cft} \setboolean{@lab@cft}{false}% -\newboolean{@lab@rft} \setboolean{@lab@rft}{false}% -\newboolean{@Lf@use} \setboolean{@Lf@use}{false}% -\newboolean{@lf@use} \setboolean{@lf@use}{false}% -\newboolean{@Lh@use} \setboolean{@Lh@use}{false}% -\newboolean{@lh@use} \setboolean{@lh@use}{false}% -\newboolean{@LOf@use} \setboolean{@LOf@use}{false}% -\newboolean{@LUh@use} \setboolean{@LUh@use}{false}% +\newboolean{@in@makeenv}\setboolean{@in@makeenv}{false}% +\newboolean{@l@am}\setboolean{@l@am}{true}% +\newboolean{@l@en}\setboolean{@l@en}{false}% +\newboolean{@l@ge}\setboolean{@l@ge}{false}% +\newboolean{@l@fr}\setboolean{@l@fr}{false}% +\newboolean{@l@ot}\setboolean{@l@ot}{false}% +\newboolean{@l@pi}\setboolean{@l@pi}{false}% +\newboolean{@lab@t}\setboolean{@lab@t}{true}% +\newboolean{@lab@cft}\setboolean{@lab@cft}{false}% +\newboolean{@lab@rft}\setboolean{@lab@rft}{false}% +\newboolean{@Lf@use}\setboolean{@Lf@use}{false}% +\newboolean{@lf@use}\setboolean{@lf@use}{false}% +\newboolean{@Lh@use}\setboolean{@Lh@use}{false}% +\newboolean{@lh@use}\setboolean{@lh@use}{false}% +\newboolean{@LOf@use}\setboolean{@LOf@use}{false}% +\newboolean{@LUh@use}\setboolean{@LUh@use}{false}% \newboolean{@marg@lt@fl@tp}\setboolean{@marg@lt@fl@tp}{false}% \newboolean{@marg@rt@fl@tp}\setboolean{@marg@rt@fl@tp}{false}% -\newboolean{@marg@luse} \setboolean{@marg@luse}{false}% -\newboolean{@marg@ruse} \setboolean{@marg@ruse}{false}% -\newboolean{@marg@Luse} \setboolean{@marg@Luse}{false}% -\newboolean{@marg@Ruse} \setboolean{@marg@Ruse}{false}% +\newboolean{@marg@luse}\setboolean{@marg@luse}{false}% +\newboolean{@marg@ruse}\setboolean{@marg@ruse}{false}% +\newboolean{@marg@Luse}\setboolean{@marg@Luse}{false}% +\newboolean{@marg@Ruse}\setboolean{@marg@Ruse}{false}% \newboolean{@memo@bl}% \newboolean{@memo@a}% -\newboolean{@memo@b} \setboolean{@memo@b}{false}% -\newboolean{@memo@c} \setboolean{@memo@c}{false}% -\newboolean{@memo@d} \setboolean{@memo@d}{false}% -\newboolean{@memo@e} \setboolean{@memo@e}{true}% -\newboolean{@memo@f} \setboolean{@memo@f}{true}% -\newboolean{@memo@g} \setboolean{@memo@g}{true}% -\newboolean{@memo@h} \setboolean{@memo@h}{false}% -\newboolean{@memo@i} \setboolean{@memo@i}{false}% -\newboolean{@memo@j} \setboolean{@memo@j}{false}% -\newboolean{@memo@k} \setboolean{@memo@k}{false}% -\newboolean{@memo@l} \setboolean{@memo@l}{false}% -\newboolean{@memo@m} \setboolean{@memo@m}{false}% -\newboolean{@memo@n} \setboolean{@memo@n}{false}% -\newboolean{@no@cen} \setboolean{@no@cen}{false}% -\newboolean{@no@spc} \setboolean{@no@spc}{false}% -\newboolean{@ROf@use} \setboolean{@ROf@use}{false}% -\newboolean{@Rf@use} \setboolean{@Rf@use}{false}% -\newboolean{@rf@use} \setboolean{@rf@use}{false}% -\newboolean{@Rh@use} \setboolean{@Rh@use}{false}% -\newboolean{@RUh@use} \setboolean{@RUh@use}{false}% -\newboolean{@rh@use} \setboolean{@rh@use}{false}% -\newboolean{@over@all} \setboolean{@over@all}{true}% -\newboolean{@over@setto} \setboolean{@over@setto}{false}% -\newboolean{@over@setfr} \setboolean{@over@setfr}{false}% -\newboolean{@over@sigbl} \setboolean{@over@sigbl}{false}% -\newboolean{@pt@regard} \setboolean{@pt@regard}{false}% -\newboolean{@s@b@s} \setboolean{@s@b@s}{false}% -\newboolean{@set@env} \setboolean{@set@env}{false}% +\newboolean{@memo@b}\setboolean{@memo@b}{false}% +\newboolean{@memo@c}\setboolean{@memo@c}{false}% +\newboolean{@memo@d}\setboolean{@memo@d}{false}% +\newboolean{@memo@e}\setboolean{@memo@e}{true}% +\newboolean{@memo@f}\setboolean{@memo@f}{true}% +\newboolean{@memo@g}\setboolean{@memo@g}{true}% +\newboolean{@memo@h}\setboolean{@memo@h}{false}% +\newboolean{@memo@i}\setboolean{@memo@i}{false}% +\newboolean{@memo@j}\setboolean{@memo@j}{false}% +\newboolean{@memo@k}\setboolean{@memo@k}{false}% +\newboolean{@memo@l}\setboolean{@memo@l}{false}% +\newboolean{@memo@m}\setboolean{@memo@m}{false}% +\newboolean{@memo@n}\setboolean{@memo@n}{false}% +\newboolean{@no@cen}\setboolean{@no@cen}{false}% +\newboolean{@no@spc}\setboolean{@no@spc}{false}% +\newboolean{@rest@l}\setboolean{@rest@l}{false}% +\newboolean{@resta@l}\setboolean{@resta@l}{false}% +\newboolean{@restb@l}\setboolean{@restb@l}{false}% +\newboolean{@restc@l}\setboolean{@restc@l}{false}% +\newboolean{@restd@l}\setboolean{@restd@l}{false}% +\newboolean{@reste@l}\setboolean{@reste@l}{false}% +\newboolean{@ROf@use}\setboolean{@ROf@use}{false}% +\newboolean{@Rf@use}\setboolean{@Rf@use}{false}% +\newboolean{@rf@use}\setboolean{@rf@use}{false}% +\newboolean{@Rh@use}\setboolean{@Rh@use}{false}% +\newboolean{@RUh@use}\setboolean{@RUh@use}{false}% +\newboolean{@rh@use}\setboolean{@rh@use}{false}% +\newboolean{@ov@a}\setboolean{@ov@a}{true}% +\newboolean{@ov@t}\setboolean{@ov@t}{false}% +\newboolean{@ov@l}\setboolean{@ov@l}{false}% +\newboolean{@ov@f}\setboolean{@ov@f}{false}% +\newboolean{@ov@s}\setboolean{@ov@s}{false}% +\newboolean{@pt@regard}\setboolean{@pt@regard}{false}% +\newboolean{@s@b@s}\setboolean{@s@b@s}{false}% +\newboolean{@set@env}\setboolean{@set@env}{false}% \newboolean{@sig@p}% \newboolean{@sig@mp}% -\newboolean{@sig@l} \setboolean{@sig@l}{true}% -\newboolean{@sig@c} \setboolean{@sig@l}{false}% -\newboolean{@space@d} \setboolean{@space@d}{true} -\newboolean{@space@s} \setboolean{@space@s}{false} -\newboolean{@mult@sig} \setboolean{@mult@sig}{false}% +\newboolean{@sig@l}\setboolean{@sig@l}{true}% +\newboolean{@sig@c}\setboolean{@sig@l}{false}% +\newboolean{@space@d}\setboolean{@space@d}{true}% +\newboolean{@space@s}\setboolean{@space@s}{false}% +\newboolean{@mult@sig}\setboolean{@mult@sig}{false}% \newboolean{@use@sig}% \newboolean{@use@close}% \newboolean{@use@sig@nm}% \newboolean{@use@all@fr}% \newboolean{@use@all@to}% -\newboolean{@use@envlab} \setboolean{@use@envlab}{false}% -\newboolean{@use@water} \setboolean{@use@water}{false}% -\newboolean{@ztila} \newboolean{@ztilb}% -\newboolean{@pr@p} \setboolean{@pr@p}{false}% -\newboolean{@pr@by} +\newboolean{@use@envlab}\setboolean{@use@envlab}{false}% +\newboolean{@use@water}\setboolean{@use@water}{false}% +\newboolean{@ztila}\newboolean{@ztilb}% +\newboolean{@pr@p}\setboolean{@pr@p}{false}% +\newboolean{@pr@by}% +\txa{newboolean done}% % \end{macrocode} % % \subsection{newlfm commands} @@ -2076,9 +2184,9 @@ % \paragraph{Ordering of date, from-address and to-address:} % These commands allow the ordering of date, to-block and from-block: % \begin{macrocode} -\def\@d@pos#1{\def\@intd@pos{#1}} -\def\@t@pos#1{\def\@intt@pos{#1}} -\def\@f@pos#1{\def\@intf@pos{#1}} +\def\@d@pos#1{\def\@intd@pos{#1}}% +\def\@t@pos#1{\def\@intt@pos{#1}}% +\def\@f@pos#1{\def\@intf@pos{#1}}% % \end{macrocode} % % \paragraph{\texttt{keyval} processing:} When using the |keyval| @@ -2086,33 +2194,34 @@ % must be used. At this point, this is not 100 \% correct, and so it % will be altered as soon as I can figger it out. % \begin{macrocode} -\def\newlfmParam{\@ifnextchar[%] -\newlx@i{\newlx@i[]}} -\def\newlx@i[#1]{{\setkeys{ov}{#1}}} -\def\Dimens{\@ifnextchar[%] -\Dimens@i{\Dimens@i[]}} -\def\Dimens@i[#1]{{\setkeys{ov}{#1}}} -\def\Language{\@ifnextchar[%] -\Lang@i{\Lang@i[]}} -\def\Lang@i[#1]{{\setkeys{ov}{#1}}} -\def\MemoParam{\@ifnextchar[%] -\MemoP@i{\MemoP@i[]}} -\def\MemoP@i[#1]{{\setkeys{ov}{#1}}} -\def\LetterParam{\@ifnextchar[%] -\LetrP@i{\LetrP@i[]}} -\def\LetrP@i[#1]{{\setkeys{ov}{#1}}} -\def\FAZParam{\@ifnextchar[%] -\FAXP@i{\FAXP@i[]}} -\def\FAXP@i[#1]{{\setkeys{ov}{#1}}} -\def\LetterP#1{\setkeys{ov}{#1}} -\def\newlfmP#1{\setkeys{ov}{#1}} -\def\LanguageP#1{\setkeys{ov}{#1}} -\def\FAXP#1{\setkeys{ov}{#1}} -\def\DimensP#1{\setkeys{ov}{#1}} -\def\MemoP#1{\setkeys{ov}{#1}} -\def\iffixt#1#2{\ifthenelse{\equal{#1}{true}}{\setboolean{#2}{true}}{}} -\def\iffixf#1#2{\ifthenelse{\equal{#1}{true}}{\setboolean{#2}{false}}{}} -\def\iffixq#1#2{\ifthenelse{\equal{#1}{true}}{#2}{}} +\def\newlfmParam{\@ifnextchar[%]% +\newlx@i{\newlx@i[]}}% +\def\newlx@i[#1]{{\setkeys{ov}{#1}}}% +\def\Dimens{\@ifnextchar[%]% +\Dimens@i{\Dimens@i[]}}% +\def\Dimens@i[#1]{{\setkeys{ov}{#1}}}% +\def\Language{\@ifnextchar[%]% +\Lang@i{\Lang@i[]}}% +\def\Lang@i[#1]{{\setkeys{ov}{#1}}}% +\def\MemoParam{\@ifnextchar[%]% +\MemoP@i{\MemoP@i[]}}% +\def\MemoP@i[#1]{{\setkeys{ov}{#1}}}% +\def\LetterParam{\@ifnextchar[%]% +\LetrP@i{\LetrP@i[]}}% +\def\LetrP@i[#1]{{\setkeys{ov}{#1}}}% +\def\FAZParam{\@ifnextchar[%]% +\FAXP@i{\FAXP@i[]}}% +\def\FAXP@i[#1]{{\setkeys{ov}{#1}}}% +\def\LetterP#1{\setkeys{ov}{#1}}% +\def\newlfmP#1{\setkeys{ov}{#1}}% +\def\LanguageP#1{\setkeys{ov}{#1}}% +\def\FAXP#1{\setkeys{ov}{#1}}% +\def\DimensP#1{\setkeys{ov}{#1}}% +\def\MemoP#1{\setkeys{ov}{#1}}% +\def\iffixt#1#2{\ifthenelse{\equal{#1}{true}}{\setboolean{#2}{true}}{}}% +\def\iffixf#1#2{\ifthenelse{\equal{#1}{true}}{\setboolean{#2}{false}}{}}% +\def\iffixq#1#2{\ifthenelse{\equal{#1}{true}}{#2}{}}% +\txa{Done with key definitions sections}% % \end{macrocode} % % \paragraph{Language option definitions:} @@ -2148,17 +2257,24 @@ \def\PhrMore#1{\def\@more@phr{#1}}% \def\PhrPRend#1{\def\@PRend@phr{#1}}% \def\lth{}\def\sig{}\def\adr{}% -\def\letrh#1{\def\@ltr@head{#1}}% +\def\letrh#1{\def\@ltr@h{#1}\setboolean{@ov@l}{true}}% +\define@key{ov}{letrh}{\def\@ltr@h{#1}\setboolean{@ov@l}{true}}% +\txa{Done with phr defs}% \def\waterpage#1{\def\@water@page{#1}\setboolean{@use@water}{true}}% -\define@key{ov}{letrh}{\def\@ltr@head{#1}}% \define@key{ov}{waterpage}{\def\@water@page{#1}\setboolean{@use@water}{true}}% -\def\@adr@to{}\def\@adr@fr{}\def\@ltr@head{}\def\@sig@blok{}\def\@water@page{}% -\def\addrt#1{\def\@adr@to{#1}\setboolean{@over@setto}{true}}% -\define@key{ov}{addrt}{\def\@adr@to{#1}\setboolean{@over@setto}{true}}% -\def\addrf#1{\def\@adr@fr{#1}\setboolean{@over@setfr}{true}}% -\define@key{ov}{addrf}{\def\@adr@fr{#1}\setboolean{@over@setfr}{true}}% -\def\sigtr#1{\def\@sig@blok{#1}\setboolean{@over@sigbl}{true}}%% -\define@key{ov}{sigtr}{\def\@sig@blok{#1}\setboolean{@over@sigbl}{true}}% +\txa{Waterpage}% +\def\Background#1{\def\@Backgrnd{#1}\setboolean{@Bg@use}{true}}% +\txa{Z}% +\define@key{ov}{Background}{\def\@Backgrnd{#1}\setboolean{@Bg@use}{true}}% +\def\background#1{\setboolean{@bg@use}{true}\def\@backgrnd{#1}}% +\define@key{ov}{background}{\setboolean{@bg@use}{true}\def\@backgrnd{#1}}% +\def\@adr@t{}\def\@adr@f{}\def\@ltr@h{}\def\@sig@b{}% +\def\addrt#1{\def\@adr@t{#1}\setboolean{@ov@t}{true}}% +\define@key{ov}{addrt}{\def\@adr@t{#1}\setboolean{@ov@t}{true}}% +\def\addrf#1{\def\@adr@f{#1}\setboolean{@ov@f}{true}}% +\define@key{ov}{addrf}{\def\@adr@f{#1}\setboolean{@ov@f}{true}}% +\def\sigtr#1{\def\@sig@b{#1}\setboolean{@ov@s}{true}}%% +\define@key{ov}{sigtr}{\def\@sig@b{#1}\setboolean{@ov@s}{true}}% \def\MinHead#1{\setlength{\@Min@Hgt@Head}{#1}} \define@key{ov}{MinHead}{\setlength{\@Min@Hgt@Head}{#1}}% \def\minhead#1{\setlength{\@Min@Hgt@head}{#1}} @@ -2177,34 +2293,34 @@ \define@key{ov}{minright}{\setlength{\@Min@Hgt@right}{#1}}% \def\@def@l{american}% \def\@am@phr{% - \DatePhrase{Date}% - \PhrFAXcovp{FAX Cover Page}% - \PhrFAXpgcnt{FAX Page Count}% - \PhrFax{FAX}% - \PhrPager{Pager}% - \PhrEmail{E-mail}% - \PhrDocument{Document}% - \PhrPhone{Telephone}% - \PhrRe{Re}% - \PhrSubre{\ensuremath{\mathrm{Re}_2}}% - \PhrCc{cc}% - \PhrPs{Ps}% - \PhrMessage{Message}% - \PhrPps{Pps}% - \PhrPpps{Ppps}% - \PhrEncl{Encl}% - \PhrPager{Page}% - \PhrTo{To}% - \PhrFrom{From}% - \PhrRegard{Regarding}% - \PhrContact{Contact}% - \PhrRelease{For Immediate Release}% - \PhrMore{--- more ---}% - \PhrPRend{\# \# \#}% +\DatePhrase{Date}% +\PhrFAXcovp{FAX Cover Page}% +\PhrFAXpgcnt{FAX Page Count}% +\PhrFax{FAX}% +\PhrPager{Pager}% +\PhrEmail{E-mail}% +\PhrDocument{Document}% +\PhrPhone{Telephone}% +\PhrRe{Re}% +\PhrSubre{\ensuremath{\mathrm{Re}_2}}% +\PhrCc{cc}% +\PhrPs{Ps}% +\PhrMessage{Message}% +\PhrPps{Pps}% +\PhrPpps{Ppps}% +\PhrEncl{Encl}% +\PhrPager{Page}% +\PhrTo{To}% +\PhrFrom{From}% +\PhrRegard{Regarding}% +\PhrContact{Contact}% +\PhrRelease{For Immediate Release}% +\PhrMore{--- more ---}% +\PhrPRend{\# \# \#}% } \InputIfFileExists{extracd.tex}% - {\typeout{Reading alternative macro definitions from extracd.tex}}% - {\typeout{All language information must be in newlfm.cls}}% +{\typeout{Reading alternative macro definitions from extracd.tex}}% +{\typeout{All language information must be in newlfm.cls}}% \DeclareOption{french}% {\def\@def@l{french}\setboolean{@l@fr}{true} \@fr@phr}% \define@key{ov}{french}[true]% @@ -2312,6 +2428,18 @@ \define@key{ov}{memoskipafter}{\setlength{\@post@memo@sp}{#1}}% \def\memoskipbefore#1{\setlength{\@pre@memo@sp}{#1}}% \define@key{ov}{memoskipbefore}{\setlength{\@pre@memo@sp}{#1}}% +\def\restletter#1{\setboolean{@resta@l}{true}% +\begin{lrbox}{\@resta@ltr}\begin{minipage}{\textwidth}#1\end{minipage}\end{lrbox}} +\def\restlettera#1{\setboolean{@resta@l}{true}% +\begin{lrbox}{\@resta@ltr}\begin{minipage}{\textwidth}#1\end{minipage}\end{lrbox}} +\def\restletterb#1{\setboolean{@restb@l}{true}% +\begin{lrbox}{\@restb@ltr}\begin{minipage}{\textwidth}#1\end{minipage}\end{lrbox}} +\def\restletterc#1{\setboolean{@restc@l}{true}% +\begin{lrbox}{\@restc@ltr}\begin{minipage}{\textwidth}#1\end{minipage}\end{lrbox}} +\def\restletterd#1{\setboolean{@restd@l}{true}% +\begin{lrbox}{\@restd@ltr}\begin{minipage}{\textwidth}#1\end{minipage}\end{lrbox}} +\def\restlettere#1{\setboolean{@reste@l}{true}% +\begin{lrbox}{\@reste@ltr}\begin{minipage}{\textwidth}#1\end{minipage}\end{lrbox}} \def\unprtop#1{\setlength{\@unpr@tp}{#1}} \define@key{ov}{unprtop}{\setlength{\@unpr@tp}{#1}}% \def\unprbottom#1{\setlength{\@unpr@bm}{#1}} @@ -2399,11 +2527,11 @@ \define@key{ov}{memofaxfrom}[true]{\iffixt{#1}{@memo@j}}% \DeclareOption{memodate}{\setboolean{@dt@p}{true}}% \define@key{ov}{memodate}[true]{\iffixt{#1}{@dt@p}}% -\DeclareOption{memonofrom} {\setboolean{@memo@e}{true}}% +\DeclareOption{memonofrom}{\setboolean{@memo@e}{true}}% \define@key{ov}{memonofrom}[true]{\iffixt{#1}{@memo@e}}% -\DeclareOption{memonoto} {\setboolean{@memo@g}{true}}% +\DeclareOption{memonoto}{\setboolean{@memo@g}{true}}% \define@key{ov}{memonoto}[true]{\iffixt{#1}{@memo@g}}% -\DeclareOption{memonore} {\setboolean{@memo@f}{true}}% +\DeclareOption{memonore}{\setboolean{@memo@f}{true}}% \define@key{ov}{memonore}[true]{\iffixt{#1}{@memo@f}}% \DeclareOption{fullmemo}{\@opt@flm}% \define@key{ov}{fullmemo}[true]{\iffixq{#1}{\@opt@flm}}% @@ -2450,21 +2578,21 @@ \define@key{ov}{faxheaderpage}[true]% {\iffixq{#1}{\setboolean{@fax@hdr@pg}{true}\setboolean{@fax@RA}{false}}}% \DeclareOption{faxhba}% Print fax header block on leader in right top-margin. - {\setboolean{@fax@RA}{true}\setboolean{@fax@hdr@pg}{false}}% +{\setboolean{@fax@RA}{true}\setboolean{@fax@hdr@pg}{false}}% \define@key{ov}{faxhba}[true]% Print fax header block on leader in right top-margin. - {\iffixq{#1}{\setboolean{@fax@RA}{true}\setboolean{@fax@hdr@pg}{false}}}% +{\iffixq{#1}{\setboolean{@fax@RA}{true}\setboolean{@fax@hdr@pg}{false}}}% \DeclareOption{faxhbb}% Print fax header block - leader - upper right quad letter - {\setboolean{@fax@RU}{true}\setboolean{@fax@hdr@pg}{false}}% +{\setboolean{@fax@RU}{true}\setboolean{@fax@hdr@pg}{false}}% \DeclareOption{faxbla}% Print FAX block in \Rheader - {\setboolean{@fax@bla}{true}\setboolean{@fax@blb}{false}}% +{\setboolean{@fax@bla}{true}\setboolean{@fax@blb}{false}}% \DeclareOption{faxblb}% - {\setboolean{@fax@blb}{true}\setboolean{@fax@bla}{false}}% +{\setboolean{@fax@blb}{true}\setboolean{@fax@bla}{false}}% \DeclareOption{faxblocka}%Print FAX block in \Rheader - {\setboolean{@fax@bla}{true}\setboolean{@fax@blb}{false}}% +{\setboolean{@fax@bla}{true}\setboolean{@fax@blb}{false}}% \define@key{ov}{faxblocka}[true]% {\iffixq{#1}{\setboolean{@fax@bla}{true}\setboolean{@fax@blb}{false}}}% \DeclareOption{faxblockb}% - {\setboolean{@fax@blb}{true}\setboolean{@fax@bla}{false}}% +{\setboolean{@fax@blb}{true}\setboolean{@fax@bla}{false}}% \define@key{ov}{faxblockb}[true]% {\iffixq{#1}{\setboolean{@fax@blb}{true}\setboolean{@fax@bla}{false}}}% % \end{macrocode} @@ -2861,12 +2989,12 @@ unprleft=-1pt}% }% \renewcommand{\theequation}{\@arabic\c@equation}% \renewcommand{\footnoterule}{% - \kern-\p@% - \hrule \@width .4\columnwidth% - \kern .6\p@}% - \long\def\@makefntext#1{% - \noindent \hangindent 5\p@% - \hb@xt@5\p@{\hss\@makefnmark}#1}% +\kern-\p@% +\hrule \@width .4\columnwidth% +\kern .6\p@}% +\long\def\@makefntext#1{% +\noindent \hangindent 5\p@% +\hb@xt@5\p@{\hss\@makefnmark}#1}% % \end{macrocode}% % % \begin{macro}{table,figure} @@ -2888,12 +3016,12 @@ unprleft=-1pt}% \newenvironment{table*}{\@dblfloat{table}}{\end@dblfloat}% \setlength\@caption@skip@above{10\p@}\setlength\@caption@skip@below{0\p@}% \long\def\@makecaption#1#2{% - \vskip\@caption@skip@above\sbox\@tempboxa{#1: #2}% - \ifdim \wd\@tempboxa >\hsize% - #1: #2\par% - \else\global \@minipagefalse% - \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% - \fi\vskip\@caption@skip@below}% +\vskip\@caption@skip@above\sbox\@tempboxa{#1: #2}% +\ifdim \wd\@tempboxa >\hsize% +#1: #2\par% +\else\global \@minipagefalse% +\hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% +\fi\vskip\@caption@skip@below}% \newcommand{\section}[1]{{\Large {\bfseries #1}}}% % \end{macrocode}% % \end{macro}% @@ -2904,24 +3032,24 @@ unprleft=-1pt}% % % \begin{macrocode} \def\monthname{% timestamp function - \ifcase\month% - \or January\or February\or March\or April \or May\or June% - \or July\or August\or September\or October \or November\or December% - \fi% +\ifcase\month% +\or January\or February\or March\or April \or May\or June% +\or July\or August\or September\or October \or November\or December% +\fi% }% \def\timestring{% - \begingroup% - \count0 = \time \divide\count0 by 60% - \count2 = \count0 % the hour% - \count4 = \time \multiply\count0 by 60% - \advance\count4 by -\count0 % the minute% - \ifnum\count4<10 \toks1 = {0} \else \toks1 = {}\fi% - \ifnum\count2<12 \toks0 = {A.M.} % - \else \toks0 = {P.M.}\advance\count2 by -12\fi% - \ifnum\count2=0 \count2 = 12 \fi % make midnight 12% - {\number\count2:\the\toks1 \number\count4% - \thinspace \the\toks0}% - \endgroup% +\begingroup% +\count0 = \time \divide\count0 by 60% +\count2 = \count0 % the hour% +\count4 = \time \multiply\count0 by 60% +\advance\count4 by -\count0 % the minute% +\ifnum\count4<10 \toks1 = {0} \else \toks1 = {}\fi% +\ifnum\count2<12 \toks0 = {A.M.} % +\else \toks0 = {P.M.}\advance\count2 by -12\fi% +\ifnum\count2=0 \count2 = 12 \fi % make midnight 12% +{\number\count2:\the\toks1 \number\count4% +\thinspace \the\toks0}% +\endgroup% }% \def\timestamp{\number\day\space\monthname\space\number\year,\space\timestring}% \def\datestamp{\monthname\space\number\day,\space\number\year}% @@ -2937,6 +3065,12 @@ unprleft=-1pt}% \define@key{ov}{nofootline}[true]{\iffixq{#1}{\setboolean{@fl}{false}}}% \def\nolines{\setboolean{@fl}{false}\setboolean{@hl}{false}}% \define@key{ov}{nolines}[true]{\iffixq{#1}{\setboolean{@fl}{false}\setboolean{@hl}{false}}}% +\def\noHeadline{\setboolean{@Hl}{false}}% +\define@key{ov}{noHeadline}[true]{\iffixq{#1}{\setboolean{@Hl}{false}}}% +\def\noFootline{\setboolean{@Fl}{false}}% +\define@key{ov}{noFootline}[true]{\iffixq{#1}{\setboolean{@Fl}{false}}}% +\def\noLines{\setboolean{@Fl}{false}\setboolean{@hl}{false}}% +\define@key{ov}{noLines}[true]{\iffixq{#1}{\setboolean{@Fl}{false}\setboolean{@Hl}{false}}}% \def\@plhl{1}\def\nopheadline{\def\@plhl{0}}% \def\@plfl{1}\def\nopfootline{\def\@plfl{0}}% \def\Headlinewd#1{\setlength{\@Hrw}{#1}}% @@ -2960,20 +3094,20 @@ unprleft=-1pt}% % \begin{macro}{ltrhead}% % \begin{macrocode}% \fancypagestyle{ltrhead}{% - \def\ifta{0}% - \txa{Before setting up letterhead}% - \showdim{Letterhead}% - \fancyhf{}% - \txa{Current stored info: \string\@ltr@head:\@ltr@head}% - \fancyfoot[L]{\@Lfooter}% - \fancyfoot[C]{\@Cfooter}% - \fancyfoot[R]{\@Rfooter}% - \fancyhead[L]{\@Lheader \vspace*{\the\@marg@tp@a}}% - \fancyhead[C]{\@Cheader \vspace*{\the\@marg@tp@a}}% - \fancyhead[R]{\@Rheader \vspace*{\the\@marg@tp@a}}% - \showdim{Letterhead}% - \def\@lodd{\relax}% - \def\@rodd{\relax}% +\def\ifta{0}% +\txa{Before setting up letterhead}% +\showdim{Letterhead}% +\fancyhf{}% +\txa{Current stored info: \string\@ltr@h:\@ltr@h}% +\fancyfoot[L]{\@Lfooter}% +\fancyfoot[C]{\@Cfooter}% +\fancyfoot[R]{\@Rfooter}% +\fancyhead[L]{\@Lheader \vspace*{\the\@marg@tp@a}}% +\fancyhead[C]{\@Cheader \vspace*{\the\@marg@tp@a}}% +\fancyhead[R]{\@Rheader \vspace*{\the\@marg@tp@a}}% +\showdim{Letterhead}% +\def\@lodd{\relax}% +\def\@rodd{\relax}% % \ifempty{\@LUheader}{}{\vspace*{-.5in}\@LUheader \vspace*{.5in}}% % }% % section 2 goes here if we go to plan b% % \ifempty{\@RUheader}{}{}% @@ -2985,24 +3119,24 @@ unprleft=-1pt}% % \txa{Left: \the\@utila}% % \settoheight{\@utila}{\@Cheader}\settodepth{\@utilb}{\@Cheader}\addtolength{\@utila}{\@utilb}% % \txa{Center: \the\@utila}% - \txa{After setting up letterhead}% - \def\ifta{0}% +\txa{After setting up letterhead}% +\def\ifta{0}% }% % \end{macrocode}% % \end{macro}% % \begin{macro}{othhead}% % \begin{macrocode}% \fancypagestyle{othhead}{% - \def\ifta{0}% - \fancyhf{}% - \fancyfoot[L]{\@lfooter}% - \fancyfoot[C]{\@cfooter}% - \fancyfoot[R]{\@rfooter}% - \fancyhead[L]{\@lheader \vspace*{\the\@marg@tp@a}}% - \fancyhead[R]{\@rheader \vspace*{\the\@marg@tp@a}}% - \fancyhead[C]{\@cheader \vspace*{\the\@marg@tp@a}}% - \def\@lodd{\relax}% - \def\@rodd{\relax}% +\def\ifta{0}% +\fancyhf{}% +\fancyfoot[L]{\@lfooter}% +\fancyfoot[C]{\@cfooter}% +\fancyfoot[R]{\@rfooter}% +\fancyhead[L]{\@lheader \vspace*{\the\@marg@tp@a}}% +\fancyhead[R]{\@rheader \vspace*{\the\@marg@tp@a}}% +\fancyhead[C]{\@cheader \vspace*{\the\@marg@tp@a}}% +\def\@lodd{\relax}% +\def\@rodd{\relax}% }% % \end{macrocode} % \end{macro}% @@ -3038,115 +3172,115 @@ unprleft=-1pt}% % %<*setdim> \def\ifta{0}\def\iftb{0}% -\def\txa#1{\ifthenelse{\equal{\ifta}{1}}{\typeout{#1}}{}}%% +\def\txa#1{\ifthenelse{\equal{\ifta}{1}}{\typeout{#1}}{}}% \def\settext#1#2#3#4#5{% - \txa{\string\textheight: #1}\txa{\string\textwidth: #2}% - \global\setlength{\textheight}{#1}% - \global\setlength{\textwidth}{#2}% - \global\setlength{\evensidemargin}{#3}% - \global\setlength{\oddsidemargin}{#4}% - \global\setlength{\columnsep}{#5}% - \@change@text% -} +\txa{\string\textheight: #1}\txa{\string\textwidth: #2}% +\global\setlength{\textheight}{#1}% +\global\setlength{\textwidth}{#2}% +\global\setlength{\evensidemargin}{#3}% +\global\setlength{\oddsidemargin}{#4}% +\global\setlength{\columnsep}{#5}% +\@change@text% +}% \def\lsettext#1#2#3#4#5{% - \txa{\string\textheight: #1}\txa{\string\textwidth: #2}% - \setlength{\textheight}{#1}% - \setlength{\textwidth}{#2}% - \setlength{\evensidemargin}{#3}% - \setlength{\oddsidemargin}{#4}% - \setlength{\columnsep}{#5}% - \@lchange@text% -} +\txa{\string\textheight: #1}\txa{\string\textwidth: #2}% +\setlength{\textheight}{#1}% +\setlength{\textwidth}{#2}% +\setlength{\evensidemargin}{#3}% +\setlength{\oddsidemargin}{#4}% +\setlength{\columnsep}{#5}% +\@lchange@text% +}% \def\@change@text{% - \global\setlength{\@colht}{\textheight}% - \txa{\string\@colht:\the\@colht}% - \global\setlength{\@colroom}{\textheight}% - \global\setlength{\vsize}{\textheight}% - \global\setlength{\columnwidth}{\textwidth}% - \if@twocolumn% - \advance\columnwidth-\columnsep \divide\columnwidth\tw@% - \@firstcolumntrue% - \fi% - \global\setlength{\hsize}{\columnwidth}% - \global\setlength{\linewidth}{\hsize}% +\global\setlength{\@colht}{\textheight}% +\txa{\string\@colht:\the\@colht}% +\global\setlength{\@colroom}{\textheight}% +\global\setlength{\vsize}{\textheight}% +\global\setlength{\columnwidth}{\textwidth}% +\if@twocolumn% +\advance\columnwidth-\columnsep \divide\columnwidth\tw@% +\@firstcolumntrue% +\fi% +\global\setlength{\hsize}{\columnwidth}% +\global\setlength{\linewidth}{\hsize}% }% \def\@lchange@text{% - \setlength{\@colht}{\textheight}% - \txa{\string\@colht:\the\@colht}% - \setlength{\@colroom}{\textheight}% - \setlength{\vsize}{\textheight}% - \setlength{\columnwidth}{\textwidth}% - \if@twocolumn% - \advance\columnwidth-\columnsep \divide\columnwidth\tw@% - \@firstcolumntrue% - \fi% - \setlength{\hsize}{\columnwidth}% - \setlength{\linewidth}{\hsize}% +\setlength{\@colht}{\textheight}% +\txa{\string\@colht:\the\@colht}% +\setlength{\@colroom}{\textheight}% +\setlength{\vsize}{\textheight}% +\setlength{\columnwidth}{\textwidth}% +\if@twocolumn% +\advance\columnwidth-\columnsep \divide\columnwidth\tw@% +\@firstcolumntrue% +\fi% +\setlength{\hsize}{\columnwidth}% +\setlength{\linewidth}{\hsize}% }% \def\retdims{% - \showdim{Setpage A}% - \txa{In setpage: \npind}% - \global\setlength{\@xda}{\textheight}% - \global\setlength{\@xdb}{\textwidth}% - \global\setlength{\@xdc}{\evensidemargin}% - \global\setlength{\@xdd}{\oddsidemargin}% - \global\setlength{\@xde}{\columnsep}% - \global\setlength{\@xdf}{\topmargin}% - \global\setlength{\@xdg}{\headheight}% - \global\setlength{\@xdh}{\headsep}% - \global\setlength{\@xdi}{\footskip}% -} +\showdim{Setpage A}% +\txa{In setpage: \npind}% +\global\setlength{\@xda}{\textheight}% +\global\setlength{\@xdb}{\textwidth}% +\global\setlength{\@xdc}{\evensidemargin}% +\global\setlength{\@xdd}{\oddsidemargin}% +\global\setlength{\@xde}{\columnsep}% +\global\setlength{\@xdf}{\topmargin}% +\global\setlength{\@xdg}{\headheight}% +\global\setlength{\@xdh}{\headsep}% +\global\setlength{\@xdi}{\footskip}% +}% \def\rstdims{% - \showdim{Setpage A}% - \txa{In setpage: \npind}% - \global\setlength{\textheight}{\@xda}% - \global\setlength{\textwidth}{\@xdb}% - \global\setlength{\evensidemargin}{\@xdc}% - \global\setlength{\oddsidemargin}{\@xdd}% - \global\setlength{\columnsep}{\@xde}% - \global\setlength{\topmargin}{\@xdf}% - \global\setlength{\headheight}{\@xdg}% - \global\setlength{\headsep}{\@xdh}% - \global\setlength{\footskip}{\@xdi}% - \@change@text% -} +\showdim{Setpage A}% +\txa{In setpage: \npind}% +\global\setlength{\textheight}{\@xda}% +\global\setlength{\textwidth}{\@xdb}% +\global\setlength{\evensidemargin}{\@xdc}% +\global\setlength{\oddsidemargin}{\@xdd}% +\global\setlength{\columnsep}{\@xde}% +\global\setlength{\topmargin}{\@xdf}% +\global\setlength{\headheight}{\@xdg}% +\global\setlength{\headsep}{\@xdh}% +\global\setlength{\footskip}{\@xdi}% +\@change@text% +}% \def\setpage#1#2#3#4#5#6#7#8#9{% - \showdim{Setpage A}% - \txa{In setpage: \npind}% - \settext{#1}{#2}{#3}{#4}{#5}% - \global\setlength{\topmargin}{#6}% - \global\setlength{\headheight}{#7}% - \global\setlength{\headsep}{#8}% - \global\setlength{\footskip}{#9}% - \@change@text% - \showdim{Setpage B}% -} +\showdim{Setpage A}% +\txa{In setpage: \npind}% +\settext{#1}{#2}{#3}{#4}{#5}% +\global\setlength{\topmargin}{#6}% +\global\setlength{\headheight}{#7}% +\global\setlength{\headsep}{#8}% +\global\setlength{\footskip}{#9}% +\@change@text% +\showdim{Setpage B}% +}% \def\lsetpage#1#2#3#4#5#6#7#8#9{% - \showdim{Setpage A}% - \txa{In setpage: \npind}% - \lsettext{#1}{#2}{#3}{#4}{#5}% - \setlength{\topmargin}{#6}% - \setlength{\headheight}{#7}% - \setlength{\headsep}{#8}% - \setlength{\footskip}{#9}% - \@lchange@text% - \showdim{Setpage B}% -} +\showdim{Setpage A}% +\txa{In setpage: \npind}% +\lsettext{#1}{#2}{#3}{#4}{#5}% +\setlength{\topmargin}{#6}% +\setlength{\headheight}{#7}% +\setlength{\headsep}{#8}% +\setlength{\footskip}{#9}% +\@lchange@text% +\showdim{Setpage B}% +}% \def\changetext#1#2#3#4#5{% - \addtolength{\textheight}{#1}% - \addtolength{\textwidth}{#2}% - \addtolength{\evensidemargin}{#3}% - \addtolength{\oddsidemargin}{#4}% - \addtolength{\columnsep}{#5}% - \@change@text% +\addtolength{\textheight}{#1}% +\addtolength{\textwidth}{#2}% +\addtolength{\evensidemargin}{#3}% +\addtolength{\oddsidemargin}{#4}% +\addtolength{\columnsep}{#5}% +\@change@text% }% \def\changepage#1#2#3#4#5#6#7#8#9{% - \changetext{#1}{#2}{#3}{#4}{#5}% - \addtolength{\topmargin}{#6}% - \addtolength{\headheight}{#7}% - \addtolength{\headsep}{#8}% - \addtolength{\footskip}{#9}% - \@change@text% +\changetext{#1}{#2}{#3}{#4}{#5}% +\addtolength{\topmargin}{#6}% +\addtolength{\headheight}{#7}% +\addtolength{\headsep}{#8}% +\addtolength{\footskip}{#9}% +\@change@text% }% % %<*addrset> @@ -3154,26 +3288,8 @@ unprleft=-1pt}% % \begin{macrocode} \def\makeletterhead#1#2{\expandafter\newcommand\csname lth#1\endcsname{#2}}% \def\makelth#1#2{\expandafter\newcommand\csname lth#1\endcsname{#2}}% -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\makesig} -% In this wrapper macro, signature \info{} is associated with a name, -% just as described above in the makelth macro. -% -% \begin{macrocode} \def\makesignature#1#2{\expandafter\newcommand\csname sig#1\endcsname{#2}}% \def\makesig#1#2{\expandafter\newcommand\csname sig#1\endcsname{#2}}% -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\makeadr} -% In this wrapper macro, address \info{} is associated with a name, -% just as described above in the makelth macro. This includes macros -% such as nameto, phoneto, faxto and other \info{} associated with a -% particular addressee. -% -% \begin{macrocode} \def\makeadr#1#2{\expandafter\newcommand\csname adr#1\endcsname{#2}}% \def\makeaddress#1#2{\expandafter\newcommand\csname adr#1\endcsname{#2}}% % \end{macrocode} @@ -3205,20 +3321,28 @@ unprleft=-1pt}% % ({\bfseries NOTE:} Although this is under development, these commands are % not yet functional. % \begin{macrocode} -\providecommand{\@Backgrd}{} \providecommand{\@backgrd}{}% -\providecommand{\@Lfooter}{} \providecommand{\@Cfooter}{}% -\providecommand{\@Rfooter}{} \providecommand{\@lfooter}{}% -\providecommand{\@cfooter}{} \providecommand{\@rfooter}{}% -\providecommand{\@LOfooter}{} \providecommand{\@COfooter}{}% -\providecommand{\@ROfooter}{} \providecommand{\@Lheader}{}% -\providecommand{\@Cheader}{} \providecommand{\@Rheader}{}% -\providecommand{\@lheader}{} \providecommand{\@cheader}{}% -\providecommand{\@rheader}{} \providecommand{\@LUheader}{}% -\providecommand{\@CUheader}{} \providecommand{\@RUheader}{}% -\providecommand{\@Rmarg}{} \providecommand{\@Lmarg}{}% -\providecommand{\@rmarg}{} \providecommand{\@lmarg}{}% -\def\Backgrd#1{\setboolean{@Bg@use}{true}\def\@Backgrd{#1}}% -\def\backgrd#1{\setboolean{@bg@use}{true}\def\@backgrd{#1}}% +\providecommand{\@Lfooter}{}% +\providecommand{\@Cfooter}{}% +\providecommand{\@Rfooter}{}% +\providecommand{\@lfooter}{}% +\providecommand{\@cfooter}{}% +\providecommand{\@rfooter}{}% +\providecommand{\@LOfooter}{}% +\providecommand{\@COfooter}{}% +\providecommand{\@ROfooter}{}% +\providecommand{\@Lheader}{}% +\providecommand{\@Cheader}{}% +\providecommand{\@Rheader}{}% +\providecommand{\@lheader}{}% +\providecommand{\@cheader}{}% +\providecommand{\@rheader}{}% +\providecommand{\@LUheader}{}% +\providecommand{\@CUheader}{}% +\providecommand{\@RUheader}{}% +\providecommand{\@Rmarg}{}% +\providecommand{\@Lmarg}{}% +\providecommand{\@rmarg}{}% +\providecommand{\@lmarg}{}% \def\Lfooter#1{\setboolean{@Lf@use}{true}\def\@Lfooter{#1}}% \def\Cfooter#1{\setboolean{@Cf@use}{true}\def\@Cfooter{#1}}% \def\Rfooter#1{\setboolean{@Rf@use}{true}\def\@Rfooter{#1}}% @@ -3349,7 +3473,7 @@ unprleft=-1pt}% % % |\nolines| seemingly should disable header and footer lines, but % it only takes effect via |\@set@em@up|, which is only used if -% |@over@all| is true. It's not in this case. That might be a +% |@ov@a| is true. It's not in this case. That might be a % problem with the implementation of |\nolines|. It would be good % if the redefinition of the line width only persisted within a % give lfmp environment. It's not clear that is the case. @@ -3374,6 +3498,10 @@ unprleft=-1pt}% \def\ifta{0}% \txa{Setup beginning of press release}% \renewcommand{\headrulewidth}{0pt}\renewcommand{\footrulewidth}{0pt}% +\setboolean{@Hl}{false}\setlength{\@Hrw}{0pt}% +\setboolean{@hl}{false}\setlength{\@hrw}{0pt}% +\setboolean{@Fl}{false}\setlength{\@Frw}{0pt}% +\setboolean{@fl}{false}\setlength{\@frw}{0pt}% \begin{flushleft}% \rule{\textwidth}{1pt} \par \noindent% \centerline{\LARGE \@pr@release \strut} \par\noindent% @@ -3496,17 +3624,17 @@ unprleft=-1pt}% % FAX Block A is boxed in a frame. % \begin{macrocode} \newcommand{\faxblocka}{% - \sbox{\fba}{% - \framebox[3.0in]{\parbox[b]{3.0in}{\setlength{\tabcolsep}{0pt} - \begin{tabular}{p{1.0in}p{2in}} - \multicolumn{2}{l}{\Large \hspace*{.25in} - \@fax@phr{} \@doc@phr} \\ \hline - \@hnfr@phr:\space & \@name@fr \\ - \@fax@phr:\space & \@fax@fr \\ \hline - \@hnto@phr:\space & \@name@to \\ - \@fax@phr:\space & \@fax@to \\ \hline - \@re@phr: & \@re@line - \end{tabular}}}}} +\sbox{\fba}{% +\framebox[3.0in]{\parbox[b]{3.0in}{\setlength{\tabcolsep}{0pt}% +\begin{tabular}{p{1.0in}p{2in}}% +\multicolumn{2}{l}{\Large \hspace*{.25in}% +\@fax@phr{} \@doc@phr} \\ \hline% +\@hnfr@phr:\space & \@name@fr \\% +\@fax@phr:\space & \@fax@fr \\ \hline% +\@hnto@phr:\space & \@name@to \\% +\@fax@phr:\space & \@fax@to \\ \hline% +\@re@phr: & \@re@line% +\end{tabular}}}}}% % \end{macrocode} % \end{macro} % \begin{macro}{faxblockb} @@ -3518,13 +3646,13 @@ unprleft=-1pt}% % FAX Block B is boxed in a frame. % \begin{macrocode} \newcommand{\faxblockb}{% - {\parbox[t]{\textwidth}{\fbox{% - \begin{tabular}{llll}% - \@hnfr@phr:\space & \@name@fr & \@hnto@phr:\space & \@name@to \\% - \@fax@phr:\space & \@fax@fr & \@fax@phr:\space & \@fax@to \\% - \@phn@phr:\space & \@phn@fr & \@phn@phr:\space & \@phn@to \\% - \@re@phr: & \multicolumn{3}{l}{\parbox[t]{2in}{\@re@line}} \\% - \end{tabular}% +{\parbox[t]{\textwidth}{\fbox{% +\begin{tabular}{llll}% +\@hnfr@phr:\space & \@name@fr & \@hnto@phr:\space & \@name@to \\% +\@fax@phr:\space & \@fax@fr & \@fax@phr:\space & \@fax@to \\% +\@phn@phr:\space & \@phn@fr & \@phn@phr:\space & \@phn@to \\% +\@re@phr: & \multicolumn{3}{l}{\parbox[t]{2in}{\@re@line}} \\% +\end{tabular}% }}}}% % \end{macrocode} % \end{macro} @@ -3553,11 +3681,11 @@ unprleft=-1pt}% % This is the actual section for openlfm. % \begin{macrocode} \newcommand*{\openlfm}{% -\ifthenelse{\boolean{@use@water}} -{\ClearShipoutPicture -\AddToShipoutPicture{\includegraphics[natheight=11in,natwidth=8.5in]{\@water@page}} -}{} \def\ifta{0}% +\ifthenelse{\boolean{@use@water}}% +{\ClearShipoutPicture% +\AddToShipoutPicture{\includegraphics[natheight=11in,natwidth=8.5in]{\@water@page}}% +}{}% \ifthenelse{\boolean{@marg@Ruse}}% Here we set up right-side marginal notes {\setlength{\@utile}{-\@Hgt@Head+\@marg@rt@tp@d}% Adjust column top to leftmargintopdist \normalmarginpar% @@ -3643,6 +3771,8 @@ unprleft=-1pt}% \def\@fix@one@box{% \settowidth{\@utila}{\setlength{\tabcolsep}{0pt}% \begin{tabular}{l}% +\hspace*{1pt} +\vspace*{\@cls@sk@b} \\% \ifthenelse{\boolean{@use@close}}{{\@closeline}\\}{}% \vspace*{\@cls@sk@a} \\% \ifthenelse{\boolean{@use@sig}}% @@ -3650,17 +3780,14 @@ unprleft=-1pt}% \ifthenelse{\boolean{@use@sig@nm}}{\@sig@nm\\}{\@name@fr\\}% \end{tabular}% }% -\sbox{\@sig@box@b} {% -\setlength{\tabcolsep}{0pt}\noindent% -\begin{tabular}{p{\the\@utila}}% +\sbox{\@sig@box@b} {\begin{tabular}{p{\the\@utila}}% +\hspace*{1pt}\vspace*{\@cls@sk@b} \\% \ifthenelse{\boolean{@use@close}}{{\@closeline}\\}{}% \vspace*{\@cls@sk@a} \\% \ifthenelse{\boolean{@use@sig}}% {{\@sig@fr}\\}{\parbox[t][\the\@sig@sp][t]{.1pt}{\vspace*{\@sig@sp}}\\}% \ifthenelse{\boolean{@use@sig@nm}}{\@sig@nm\\}{\@name@fr\\}% -\end{tabular}% -}% -}% +\end{tabular}}}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \def\closlfm{\def\ifta{0}\txa{In closlfm}% \setlength{\@utila}{\@sig@sk@b}\addtolength{\@utila}{-1.5\baselineskip}% @@ -3672,7 +3799,7 @@ unprleft=-1pt}% {}% note require {} to finish ifthenelse %%%%% \ifthenelse{\boolean{@mult@sig}}% -{% +{%\begin{flushleft}% \ifthenelse{\equal{\the@sig@tot}{1}}{\def\@sig@tab{l}}{}% Set multiple columns \ifthenelse{\equal{\the@sig@tot}{2}}{\def\@sig@tab{ll}}{}% \ifthenelse{\equal{\the@sig@tot}{3}}{\def\@sig@tab{lll}}{}% @@ -3717,13 +3844,17 @@ unprleft=-1pt}% \ifthenelse{\equal{\the@lab@cnt@col}{\the@sig@tot}}% {\txa{else condition}% \setcounter{@lab@cnt@col}{0}\setlength{\@utile}{\@sig@sk@r}}{\hspace*{\the\@sig@sk@c}}}% -\vspace*{\the\@sig@sk@a}% +\vspace*{\the\@sig@sk@a}%\end{flushleft} }% {% Print normal signature -\@fix@one@box% +\@fix@one@box\settowidth{\@utila}{\usebox{\@sig@box@b}}% Set up box, measure \Prnt@Chk{@sig@p}{@sig@l}{@sig@c}% -{\parbox{\@utila}{\usebox{\@sig@box@b}}}{}{\@cls@sk@b}{\@sig@sk@a}% -}% +{\parbox{\@utila}{\usebox{\@sig@box@b}}}{}{\@cls@sk@b}{\@sig@sk@a}}% +\ifthenelse{\boolean{@resta@l}}{\newpage\usebox{\@resta@ltr}}{}% +\ifthenelse{\boolean{@restb@l}}{\newpage\usebox{\@restb@ltr}}{}% +\ifthenelse{\boolean{@restc@l}}{\newpage\usebox{\@restc@ltr}}{}% +\ifthenelse{\boolean{@restd@l}}{\newpage\usebox{\@restd@ltr}}{}% +\ifthenelse{\boolean{@reste@l}}{\newpage\usebox{\@reste@ltr}}{}% }% % \end{macrocode} % \end{macro} @@ -3754,111 +3885,111 @@ unprleft=-1pt}% % not begin with \verb|@|). User-optional commands are defined in the text % above. % \begin{macrocode} -\def\addr#1{\protect\def\@addrxx{#1}} \addr{}% -\def\addrfr#1{\protect\def\@addr@fr{#1}} \addrfr{}% -\def\addrfrom#1{\protect\def\@addr@fr{#1}} \addrfrom{}% -\def\addrto#1{\protect\def\@addr@to{#1}} \addrto{}% -\def\cclist#1{\protect\def\@cc@item{#1}} \cclist{---BLANK---}% cc list -\def\city#1{\protect\def\@city{#1}} \city{}% +\def\addr#1{\protect\def\@addrxx{#1}}\addr{}% +\def\addrfr#1{\protect\def\@addr@fr{#1}}\addrfr{}% +\def\addrfrom#1{\protect\def\@addr@fr{#1}}\addrfrom{}% +\def\addrto#1{\protect\def\@addr@to{#1}}\addrto{}% +\def\cclist#1{\protect\def\@cc@item{#1}}\cclist{---BLANK---}% cc list +\def\city#1{\protect\def\@city{#1}}\city{}% \def\closeln#1{\protect\def\@closeline{#1}\setboolean{@use@close}{true}}% Letter closing line \def\closeline#1{\protect\def\@closeline{#1}\setboolean{@use@close}{true}}% -\def\dateset#1{\protect\def\@xdate{#1}} \dateset{\today}% Letter date -\def\dept#1{\protect\def\@dept{#1}} \dept{}% -\def\degree#1{\protect\def\@degree{#1}} \degree{}% -\def\email#1{\protect\def\@email{#1}} \email{}% -\def\emailb#1{\protect\def\@emailb{#1}} \emailb{}% -\def\emailc#1{\protect\def\@emailc{#1}} \emailc{}% -\def\emailbto#1{\protect\def\@emailb@to{#1}} \emailbto{}% -\def\emailcto#1{\protect\def\@emailc@to{#1}} \emailcto{}% -\def\emailbfr#1{\protect\def\@emailb@fr{#1}} \emailbfr{}% -\def\emailcfr#1{\protect\def\@emailc@fr{#1}} \emailcfr{}% -\def\emailfr#1{\protect\def\@email@fr{#1}} \emailfr{}% -\def\emailfrom#1{\protect\def\@email@fr{#1}} \emailfrom{}% -\def\emailto#1{\protect\def\@email@to{#1}} \emailto{}% -\def\encllist#1{\protect\def\@encl@item{#1}} \encllist{---BLANK---}% -\def\fax#1{\protect\def\@fax{#1}} \fax{}% -\def\faxto#1{\protect\def\@fax@to{#1}} \faxto{}% -\def\faxfr#1{\protect\def\@fax@fr{#1}} \faxfr{}% -\def\faxfrom#1{\protect\def\@fax@fr{#1}} \faxfrom{}% -\def\faxmssg#1{\protect\def\@fax@mssg{#1}} \faxmssg{}% -\def\fname#1{\protect\def\@f@name{#1}} \fname{}% -\def\fnameto#1{\protect\def\@f@name@to{#1}} \fnameto{}% -\def\fnamefr#1{\protect\def\@f@name@fr{#1}} \fnamefr{}% -\def\greet#1{\protect\def\@greet{#1}} \greet{}% -\def\greetto#1{\protect\def\@greet@to{#1}} \greetto{}% -\def\greetfr#1{\protect\def\@greet@fr{#1}} \greetfr{}% -\def\initials#1{\protect\def\@init@item{#1}} \initials{}% -\def\institute#1{\protect\def\@institute{#1}} \institute{}% -\def\jtitle#1{\protect\def\@jtitle{#1}} \jtitle{}% -\def\lname#1{\protect\def\@l@name{#1}} \lname{}% -\def\lnameto#1{\protect\def\@l@name@to{#1}} \lnameto{}% -\def\lnamefr#1{\protect\def\@l@name@fr{#1}} \lnamefr{}% -\def\mname#1{\protect\def\@m@name{#1}} \mname{}% -\def\mnameto#1{\protect\def\@m@name@to{#1}} \mnameto{}% -\def\mnamefr#1{\protect\def\@m@name@fr{#1}} \mnamefr{}% -\def\name#1{\protect\def\@namev{#1}} \name{}% -\def\namefr#1{\protect\def\@name@fr{#1}} \namefr{}% -\def\namefrom#1{\protect\def\@name@fr{#1}} \namefrom{}% -\def\nameto#1{\protect\def\@name@to{#1}} \nameto{}% -\def\organization#1{\protect\def\@org{#1}} \organization{}% -\def\pager#1{\protect\def\@pager{#1}} \pager{}% -\def\pagerto#1{\protect\def\@pager@to{#1}} \pagerto{}% -\def\pagerfrom#1{\protect\def\@pager@fr{#1}} \pagerfrom{}% -\def\pagerfr#1{\protect\def\@pager@fr{#1}} \pagerfr{}% -\def\phone#1{\protect\def\@phn{#1}} \phone{}% Phone -\def\phonea#1{\protect\def\@phna{#1}} \phonea{}% Phone -\def\phoneb#1{\protect\def\@phnb{#1}} \phoneb{}% Phone -\def\phonec#1{\protect\def\@phnc{#1}} \phonec{}% Phone -\def\phoned#1{\protect\def\@phnd{#1}} \phoned{}% Phone -\def\phoneo#1{\protect\def\@phno{#1}} \phoneo{}% Phone -\def\phoneh#1{\protect\def\@phnh{#1}} \phoneh{}% Phone -\def\phonefr#1{\protect\def\@phn@fr{#1}} \phonefr{}% Phone from -\def\phonefrom#1{\protect\def\@phn@fr{#1}} \phonefrom{}% Phone from -\def\phoneafrom#1{\protect\def\@phn@fr{#1}} \phoneafrom{}% Phone from -\def\phoneafr#1{\protect\def\@phn@fr{#1}} \phoneafrom{}% Phone from -\def\phonebfrom#1{\protect\def\@phnb@fr{#1}} \phonebfrom{}% Phone from -\def\phonecfrom#1{\protect\def\@phnc@fr{#1}} \phonecfrom{}% Phone from -\def\phonedfrom#1{\protect\def\@phnd@fr{#1}} \phonedfrom{}% Phone from -\def\phonebfr#1{\protect\def\@phnb@fr{#1}} \phonebfrom{}% Phone from -\def\phonecfr#1{\protect\def\@phnc@fr{#1}} \phonecfrom{}% Phone from -\def\phonedfr#1{\protect\def\@phnd@fr{#1}} \phonedfrom{}% Phone from -\def\phoneto#1{\protect\def\@phn@to{#1}} \phoneto{}% Phone to -\def\phoneoto#1{\protect\def\@phno@to{#1}} \phoneoto{}% Phone to -\def\phonehfr#1{\protect\def\@phnh@fr{#1}} \phonehfr{}% Phone to -\def\phoneofr#1{\protect\def\@phno@fr{#1}} \phoneofr{}% Phone to -\def\phonehto#1{\protect\def\@phnh@to{#1}} \phonehto{}% Phone to -\def\phoneato#1{\protect\def\@phn@to{#1}} \phoneto{}% Phone to -\def\phonebto#1{\protect\def\@phnb@to{#1}} \phonebto{}% Phone to -\def\phonecto#1{\protect\def\@phnc@to{#1}} \phonecto{}% Phone to -\def\phonedto#1{\protect\def\@phnd@to{#1}} \phonedto{}% Phone to -\def\plngadj#1{\protect\def\@f@f{#1}} \plngadj{0in}% -\def\position#1{\protect\def\@position{#1}} \position{}% -\def\ppsitem#1{\protect\def\@pps@item{#1}} \ppsitem{---BLANK---}% -\def\pppsitem#1{\protect\def\@ppps@item{#1}} \pppsitem{---BLANK---}% -\def\psitem#1{\protect\def\@ps@item{#1}} \psitem{---BLANK---}% -\def\re#1{\protect\def\@re@line{#1}} \re{---BLANK---}% +\def\dateset#1{\protect\def\@xdate{#1}}\dateset{\today}% Letter date +\def\dept#1{\protect\def\@dept{#1}}\dept{}% +\def\degree#1{\protect\def\@degree{#1}}\degree{}% +\def\email#1{\protect\def\@email{#1}}\email{}% +\def\emailb#1{\protect\def\@emailb{#1}}\emailb{}% +\def\emailc#1{\protect\def\@emailc{#1}}\emailc{}% +\def\emailbto#1{\protect\def\@emailb@to{#1}}\emailbto{}% +\def\emailcto#1{\protect\def\@emailc@to{#1}}\emailcto{}% +\def\emailbfr#1{\protect\def\@emailb@fr{#1}}\emailbfr{}% +\def\emailcfr#1{\protect\def\@emailc@fr{#1}}\emailcfr{}% +\def\emailfr#1{\protect\def\@email@fr{#1}}\emailfr{}% +\def\emailfrom#1{\protect\def\@email@fr{#1}}\emailfrom{}% +\def\emailto#1{\protect\def\@email@to{#1}}\emailto{}% +\def\encllist#1{\protect\def\@encl@item{#1}}\encllist{---BLANK---}% +\def\fax#1{\protect\def\@fax{#1}}\fax{}% +\def\faxto#1{\protect\def\@fax@to{#1}}\faxto{}% +\def\faxfr#1{\protect\def\@fax@fr{#1}}\faxfr{}% +\def\faxfrom#1{\protect\def\@fax@fr{#1}}\faxfrom{}% +\def\faxmssg#1{\protect\def\@fax@mssg{#1}}\faxmssg{}% +\def\fname#1{\protect\def\@f@name{#1}}\fname{}% +\def\fnameto#1{\protect\def\@f@name@to{#1}}\fnameto{}% +\def\fnamefr#1{\protect\def\@f@name@fr{#1}}\fnamefr{}% +\def\greet#1{\protect\def\@greet{#1}}\greet{}% +\def\greetto#1{\protect\def\@greet@to{#1}}\greetto{}% +\def\greetfr#1{\protect\def\@greet@fr{#1}}\greetfr{}% +\def\initials#1{\protect\def\@init@item{#1}}\initials{}% +\def\institute#1{\protect\def\@institute{#1}}\institute{}% +\def\jtitle#1{\protect\def\@jtitle{#1}}\jtitle{}% +\def\lname#1{\protect\def\@l@name{#1}}\lname{}% +\def\lnameto#1{\protect\def\@l@name@to{#1}}\lnameto{}% +\def\lnamefr#1{\protect\def\@l@name@fr{#1}}\lnamefr{}% +\def\mname#1{\protect\def\@m@name{#1}}\mname{}% +\def\mnameto#1{\protect\def\@m@name@to{#1}}\mnameto{}% +\def\mnamefr#1{\protect\def\@m@name@fr{#1}}\mnamefr{}% +\def\name#1{\protect\def\@namev{#1}}\name{}% +\def\namefr#1{\protect\def\@name@fr{#1}}\namefr{}% +\def\namefrom#1{\protect\def\@name@fr{#1}}\namefrom{}% +\def\nameto#1{\protect\def\@name@to{#1}}\nameto{}% +\def\organization#1{\protect\def\@org{#1}}\organization{}% +\def\pager#1{\protect\def\@pager{#1}}\pager{}% +\def\pagerto#1{\protect\def\@pager@to{#1}}\pagerto{}% +\def\pagerfrom#1{\protect\def\@pager@fr{#1}}\pagerfrom{}% +\def\pagerfr#1{\protect\def\@pager@fr{#1}}\pagerfr{}% +\def\phone#1{\protect\def\@phn{#1}}\phone{}% Phone +\def\phonea#1{\protect\def\@phna{#1}}\phonea{}% Phone +\def\phoneb#1{\protect\def\@phnb{#1}}\phoneb{}% Phone +\def\phonec#1{\protect\def\@phnc{#1}}\phonec{}% Phone +\def\phoned#1{\protect\def\@phnd{#1}}\phoned{}% Phone +\def\phoneo#1{\protect\def\@phno{#1}}\phoneo{}% Phone +\def\phoneh#1{\protect\def\@phnh{#1}}\phoneh{}% Phone +\def\phonefr#1{\protect\def\@phn@fr{#1}}\phonefr{}% Phone from +\def\phonefrom#1{\protect\def\@phn@fr{#1}}\phonefrom{}% Phone from +\def\phoneafrom#1{\protect\def\@phn@fr{#1}}\phoneafrom{}% Phone from +\def\phoneafr#1{\protect\def\@phn@fr{#1}}\phoneafrom{}% Phone from +\def\phonebfrom#1{\protect\def\@phnb@fr{#1}}\phonebfrom{}% Phone from +\def\phonecfrom#1{\protect\def\@phnc@fr{#1}}\phonecfrom{}% Phone from +\def\phonedfrom#1{\protect\def\@phnd@fr{#1}}\phonedfrom{}% Phone from +\def\phonebfr#1{\protect\def\@phnb@fr{#1}}\phonebfrom{}% Phone from +\def\phonecfr#1{\protect\def\@phnc@fr{#1}}\phonecfrom{}% Phone from +\def\phonedfr#1{\protect\def\@phnd@fr{#1}}\phonedfrom{}% Phone from +\def\phoneto#1{\protect\def\@phn@to{#1}}\phoneto{}% Phone to +\def\phoneoto#1{\protect\def\@phno@to{#1}}\phoneoto{}% Phone to +\def\phonehfr#1{\protect\def\@phnh@fr{#1}}\phonehfr{}% Phone to +\def\phoneofr#1{\protect\def\@phno@fr{#1}}\phoneofr{}% Phone to +\def\phonehto#1{\protect\def\@phnh@to{#1}}\phonehto{}% Phone to +\def\phoneato#1{\protect\def\@phn@to{#1}}\phoneto{}% Phone to +\def\phonebto#1{\protect\def\@phnb@to{#1}}\phonebto{}% Phone to +\def\phonecto#1{\protect\def\@phnc@to{#1}}\phonecto{}% Phone to +\def\phonedto#1{\protect\def\@phnd@to{#1}}\phonedto{}% Phone to +\def\plngadj#1{\protect\def\@f@f{#1}}\plngadj{0in}% +\def\position#1{\protect\def\@position{#1}}\position{}% +\def\ppsitem#1{\protect\def\@pps@item{#1}}\ppsitem{---BLANK---}% +\def\pppsitem#1{\protect\def\@ppps@item{#1}}\pppsitem{---BLANK---}% +\def\psitem#1{\protect\def\@ps@item{#1}}\psitem{---BLANK---}% +\def\re#1{\protect\def\@re@line{#1}}\re{---BLANK---}% \def\regarding#1{\setboolean{@pt@regard}{true}\protect\def\@regard@line{#1}}% -\def\role#1{\protect\def\@role{#1}} \role{}% -\def\sender#1{\protect\def\@sender{#1}} \sender{}% +\def\role#1{\protect\def\@role{#1}}\role{}% +\def\sender#1{\protect\def\@sender{#1}}\sender{}% \def\signature#1{\protect\def\@sig@fr{#1}\setboolean{@use@sig}{true}}% \def\sigacross#1{\setcounter{@sig@tot}{#1}}% \def\siglist#1{\protect\def\@sig@list{#1}\setboolean{@mult@sig}{true}% \setboolean{@sig@l}{true}\setboolean{@sig@c}{false}}% \def\signame#1{\protect\def\@sig@nm{#1}\setboolean{@use@sig@nm}{true}}% -\def\socsec#1{\protect\def\@socsec{#1}} \socsec{}% -\def\SSnumto#1{\protect\def\@SS@num@to{#1}} \SSnumto{}% -\def\state#1{\protect\def\@state{#1}} \state{}% -\def\staddr#1{\protect\def\@staddr{#1}} \staddr{}% -\def\subre#1{\protect\def\@sub@re@line{#1}} \subre{}% -\def\subdept#1{\protect\def\@subdept{#1}} \subdept{}% -\def\zip#1{\protect\def\@zip{#1}} \zip{}% +\def\socsec#1{\protect\def\@socsec{#1}}\socsec{}% +\def\SSnumto#1{\protect\def\@SS@num@to{#1}}\SSnumto{}% +\def\state#1{\protect\def\@state{#1}}\state{}% +\def\staddr#1{\protect\def\@staddr{#1}}\staddr{}% +\def\subre#1{\protect\def\@sub@re@line{#1}}\subre{}% +\def\subdept#1{\protect\def\@subdept{#1}}\subdept{}% +\def\zip#1{\protect\def\@zip{#1}}\zip{}% \def\byline#1{\setboolean{@pr@by}{true}\protect\def\@pr@byline{#1}}% \byline{}\setboolean{@pr@by}{false}% \def\headline#1{\protect\def\@pr@headline{#1}% - \protect\def\@pr@shorthead{#1}} \headline{---BLANK---}% -\def\release#1{\protect\def\@pr@release{#1}} \release{\@release@phr}% -\def\shorthead#1{\protect\def\@pr@shorthead{#1}} % set by headline -\regarding{---BLANK---} \setboolean{@pt@regard}{false}% +\protect\def\@pr@shorthead{#1}}\headline{---BLANK---}% +\def\release#1{\protect\def\@pr@release{#1}}\release{\@release@phr}% +\def\shorthead#1{\protect\def\@pr@shorthead{#1}}\regarding{---BLANK---}% +\setboolean{@pt@regard}{false}% \siglist{}% \signature{}% \sigacross{1}% @@ -3877,52 +4008,86 @@ unprleft=-1pt}% % above. % \begin{macrocode} \def\fixadr#1{\expandafter\csname adr#1\endcsname}% -\def\setadrto#1{\global\protect\let\@addrxx\@empty% -\global\protect\let\@namev\@empty \global\protect\let\@phn\@empty% -\global\protect\let\@phna\@empty \global\protect\let\@phnb\@empty% -\global\protect\let\@phnc\@empty \global\protect\let\@phnd\@empty% -\global\protect\let\@phno\@empty \global\protect\let\@phnh\@empty% -\global\protect\let\@pager\@empty \global\protect\let\@fax\@empty% -\global\protect\let\@greet\@empty \global\protect\let\@email\@empty% -\global\protect\let\@emailb\@empty \global\protect\let\@emailc\@empty% -\global\protect\let\@l@name\@empty \global\protect\let\@f@name\@empty% -#1\txa{In setadrto - }\txa{Second} -\txa{\@addrxx} -\global\protect\let\@addr@to\@addrxx \txa{Z} \global\protect\let\@name@to\@namev% -\txa{A1} -\global\protect\let\@phn@to\@phn \global\protect\let\@phna@to\@phna% -\global\protect\let\@phnb@to\@phnb \global\protect\let\@phnc@to\@phnc% -\txa{A2} -\global\protect\let\@phnd@to\@phnd \global\protect\let\@phno@to\@phno% -\global\protect\let\@phnh@to\@phnh \global\protect\let\@pager@to\@pager% -\txa{A3} -\global\protect\let\@fax@to\@fax \global\protect\let\@greet@to\@greet% -\global\protect\let\@email@to\@email \global\protect\let\@emailb@to\@emailb% -\txa{A4} -\global\protect\let\@emailc@to\@emailc \global\protect\let\@l@name@to\@l@name% +\def\setadrto#1{% +\global\protect\let\@addrxx\@empty% +\global\protect\let\@namev\@empty% +\global\protect\let\@phn\@empty% +\global\protect\let\@phna\@empty% +\global\protect\let\@phnb\@empty% +\global\protect\let\@phnc\@empty% +\global\protect\let\@phnd\@empty% +\global\protect\let\@phno\@empty% +\global\protect\let\@phnh\@empty% +\global\protect\let\@pager\@empty% +\global\protect\let\@fax\@empty% +\global\protect\let\@greet\@empty% +\global\protect\let\@email\@empty% +\global\protect\let\@emailb\@empty% +\global\protect\let\@emailc\@empty% +\global\protect\let\@l@name\@empty% +\global\protect\let\@f@name\@empty% +#1\txa{In setadrto - }\txa{Second}\txa{\@addrxx}% +\global\protect\let\@addr@to\@addrxx% +\txa{Z}% +\global\protect\let\@name@to\@namev% +\txa{A1}% +\global\protect\let\@phn@to\@phn% +\global\protect\let\@phna@to\@phna% +\global\protect\let\@phnb@to\@phnb% +\global\protect\let\@phnc@to\@phnc% +\txa{A2}% +\global\protect\let\@phnd@to\@phnd% +\global\protect\let\@phno@to\@phno% +\global\protect\let\@phnh@to\@phnh% +\global\protect\let\@pager@to\@pager% +\txa{A3}% +\global\protect\let\@fax@to\@fax% +\global\protect\let\@greet@to\@greet% +\global\protect\let\@email@to\@email% +\global\protect\let\@emailb@to\@emailb% +\txa{A4}% +\global\protect\let\@emailc@to\@emailc% +\global\protect\let\@l@name@to\@l@name% \global\protect\let\@f@name@to\@f@name% -\txa{End of setadrto} +\txa{End of setadrto}% }% -\def\setadrfr#1{\global\protect\let\@addrxx\@empty% -\global\protect\let\@namev\@empty \global\protect\let\@phn\@empty% -\global\protect\let\@phna\@empty \global\protect\let\@phnb\@empty% -\global\protect\let\@phnc\@empty \global\protect\let\@phnd\@empty% -\global\protect\let\@phno\@empty \global\protect\let\@phnh\@empty% -\global\protect\let\@pager\@empty \global\protect\let\@fax\@empty% -\global\protect\let\@greet\@empty \global\protect\let\@email\@empty% -\global\protect\let\@emailb\@empty \global\protect\let\@emailc\@empty% -\global\protect\let\@l@name\@empty \global\protect\let\@f@name\@empty% +\def\setadrfr#1{% +\global\protect\let\@addrxx\@empty% +\global\protect\let\@namev\@empty% +\global\protect\let\@phn\@empty% +\global\protect\let\@phna\@empty% +\global\protect\let\@phnb\@empty% +\global\protect\let\@phnc\@empty% +\global\protect\let\@phnd\@empty% +\global\protect\let\@phno\@empty% +\global\protect\let\@phnh\@empty% +\global\protect\let\@pager\@empty% +\global\protect\let\@fax\@empty% +\global\protect\let\@greet\@empty% +\global\protect\let\@email\@empty% +\global\protect\let\@emailb\@empty% +\global\protect\let\@emailc\@empty% +\global\protect\let\@l@name\@empty% +\global\protect\let\@f@name\@empty% #1\txa{In setadrfr}% -\global\protect\let\@addr@fr\@addrxx \global\protect\let\@name@fr\@namev% -\global\protect\let\@phn@fr\@phn \global\protect\let\@phna@fr\@phna% -\global\protect\let\@phnb@fr\@phnb \global\protect\let\@phnc@fr\@phnc% -\global\protect\let\@phnd@fr\@phnd \global\protect\let\@phno@fr\@phno% -\global\protect\let\@phnh@fr\@phnh \global\protect\let\@pager@fr\@pager% -\global\protect\let\@fax@fr\@fax \global\protect\let\@greet@fr\@greet% -\global\protect\let\@email@fr\@email \global\protect\let\@emailb@fr\@emailb% -\global\protect\let\@emailc@fr\@emailc \global\protect\let\@l@name@fr\@l@name% +\global\protect\let\@addr@fr\@addrxx% +\global\protect\let\@name@fr\@namev% +\global\protect\let\@phn@fr\@phn% +\global\protect\let\@phna@fr\@phna% +\global\protect\let\@phnb@fr\@phnb% +\global\protect\let\@phnc@fr\@phnc% +\global\protect\let\@phnd@fr\@phnd% +\global\protect\let\@phno@fr\@phno% +\global\protect\let\@phnh@fr\@phnh% +\global\protect\let\@pager@fr\@pager% +\global\protect\let\@fax@fr\@fax% +\global\protect\let\@greet@fr\@greet% +\global\protect\let\@email@fr\@email% +\global\protect\let\@emailb@fr\@emailb% +\global\protect\let\@emailc@fr\@emailc% +\global\protect\let\@l@name@fr\@l@name% \global\protect\let\@f@name@fr\@f@name% -\txa{End of setadrfr} +\txa{End of setadrfr}% }% \DeclareRobustCommand*{\printnameto}{\@name@to}% \DeclareRobustCommand*{\printaddrto}{\@addr@to}% @@ -3994,10 +4159,10 @@ unprleft=-1pt}% % each different letter. % % \begin{macrocode} -\newif \if@read@one \@read@onetrue -\def\@ltr@info@name{letrinfo.tex} -%\DeclareOption{InfoFileName}[1]{\renewcommand{\@ltr@info@name}{#1}} -\define@key{ov}{InfoFileName}{\def\@ltr@info@name{#1}} +\newif \if@read@one \@read@onetrue% +\def\@ltr@info@name{letrinfo.tex}% +%\DeclareOption{InfoFileName}[1]{\renewcommand{\@ltr@info@name}{#1}}% +\define@key{ov}{InfoFileName}{\def\@ltr@info@name{#1}}% \InputIfFileExists{\@ltr@info@name}% {\typeout{Reading default letter definitions from \@ltr@info@name}}% {\typeout{\@ltr@info@name\ not found. All letter definitions must be in newlfm.cls}}% @@ -4023,7 +4188,7 @@ unprleft=-1pt}% % commands, but are no longer supported. % \end{enumerate} % \begin{macrocode} -\gdef\npind{0} +\gdef\npind{0}% \def\ltrbody#1{\protect\def\@ltr@body{#1}}% \DeclareRobustCommand{\letterbody}[1]{\def\@ltr@body{#1}}% \DeclareRobustCommand*{\doltr}[1]% @@ -4032,20 +4197,20 @@ unprleft=-1pt}% \DeclareRobustCommand*{\@env@label}[1]{#1\parbox[t][\@lab@bh][t]{\@lab@bw}% {{\@name@to \\ \@addr@to} \hfill}}% \DeclareRobustCommand*{\@env@oth}[2]{% -\txa{box height:\the\@lab@bh, box width:\the\@lab@bw, between: \the\tabcolsep} +\txa{box height:\the\@lab@bh, box width:\the\@lab@bw, between: \the\tabcolsep}% \parbox[t][\@lab@bh][t]{\@lab@bw}{\@lab@size \strut #1 \\ #2 \strut}}% -\DeclareRobustCommand*{\@env@row}[4]{\settowidth{\@utila}{\@hnfr@phr:} -\setlength{\tabcolsep}{0pt} -\fbox{\parbox[t][\@lab@bh][t]{\@lab@bw}{ -\@lab@size \begin{tabular}{ll}{\Large\@hnfr@phr:}&{\Large\@hnto@phr:}\\ -\parbox[t]{2.0in}{#3\\#4}&\parbox[t]{2.0in}{#1\\#2} +\DeclareRobustCommand*{\@env@row}[4]{\settowidth{\@utila}{\@hnfr@phr:}% +\setlength{\tabcolsep}{0pt}% +\fbox{\parbox[t][\@lab@bh][t]{\@lab@bw}{% +\@lab@size \begin{tabular}{ll}{\Large\@hnfr@phr:}&{\Large\@hnto@phr:}\\% +\parbox[t]{2.0in}{#3\\#4}&\parbox[t]{2.0in}{#1\\#2}% \end{tabular}\hfill}}}% \DeclareRobustCommand*{\@env@col}[4]{\parbox[t][\@lab@bh][t]{\@lab@bw}{% {\@lab@size{\Large\@hnfr@phr:}\\#3\\#4\\{\Large\@hnto@phr:}\\#1\\#2}}}% \DeclareRobustCommand*{\x@env@col}[4]{\parbox[t][\@lab@bh][t]{\@lab@bw}{% -{\@lab@size\begin{tabular}{p{.5in}p{3.25in}}{\Large\@hnfr@phr:}\\&\parbox[t]{3.25in}{#4} +{\@lab@size\begin{tabular}{p{.5in}p{3.25in}}{\Large\@hnfr@phr:}\\&\parbox[t]{3.25in}{#4}% \vspace*{10pt}\\{\Large\@hnto@phr:}\\&\parbox[t]{3.25in}{#2}\\\end{tabular}}}}% -\def\multletter#1{\@for\@addr@x:=#1\do{{\oneletter{\@addr@x}}}} +\def\multletter#1{\@for\@addr@x:=#1\do{{\oneletter{\@addr@x}}}}% \def\doletter#1{\setadrto{#1}\txa{ZA}% \begin{newlfm}\@ltr@body\end{newlfm}\gdef\npind{D}\newpage}% \def\oneletter#1{\txa{In oneletter}\setadrto{\csname adr#1\endcsname}\txa{ZB}\addrt{#1}% @@ -4053,130 +4218,138 @@ unprleft=-1pt}% \DeclareRobustCommand*{\@env@ext}[1]{\txa{#1:1}% \setadrto{\csname adr#1\endcsname}\txa{ZC}\txa{#1:2}% \@env@oth{\@name@to}{\@addr@to}\txa{#1:3}}% -\def\clearall{\def\@ltr@head{}\def\@adr@to{}\def\@adr@fr{}\def\@sig@blok{}% -\setboolean{@over@setto}{false}\setboolean{@over@setfr}{false}}% +\def\clearall{\def\@ltr@h{}\def\@adr@t{}\def\@adr@f{}\def\@sig@b{}% +\setboolean{@ov@t}{false}\setboolean{@ov@f}{false} +\setboolean{@ov@s}{false}\setboolean{@ov@l}{false}}% \def\makeenvst{}% \def\makeenvfn{% - \def\ifta{0}% - \nolines\dateset{}\clearall\noheadline\@dim@resetfalse\def\headrulewidth{0pt}% - \@clear@box\def\footrulewidth{0pt}% - \setboolean{@over@all}{false}\setboolean{@fax@RA}{false}% - \setboolean{@fax@RU}{false}\setboolean{@fax@hdr@pg}{false}% - \setboolean{@no@spc}{true}\setboolean{@B@f}{false}% - \setboolean{@B@h}{false}\setboolean{@B@l}{false}% - \setboolean{@B@r}{false}\setboolean{@b@f}{false}% - \setboolean{@b@h}{false}\setboolean{@b@l}{false}% - \setboolean{@b@r}{false}\setboolean{@sig@p}{false}% - \setboolean{@sig@mp}{false}\setboolean{@env@open}{false}% - \ifthenelse{\lengthtest{\@lab@th<12pt}}{\setlength{\@lab@th}{12.1pt}}{}% - \ifthenelse{\boolean{@use@envlab}}{% - \def\ifta{0}% - \setpage{11in}{8.5in}{-1in}{72pt}{0in}{-1in}{120pt}{0in}{20pt}% - \txa{use@envlab true}% - }% - {% - \gdef\npind{A3}% - \setpage{\@lab@pl}{8.5in}{-1in}{\@lab@lm}{0in}{-1in}{\@lab@th}{0in}{20pt}% - \txa{use@envlab false}% - \txa{headheight:\the\@lab@th}% - }% - \setboolean{@in@makeenv}{true}% - \begin{newlfm}\pagestyle{empty}\thispagestyle{empty}% - \def\ifta{0}% - \showdim{Start of makeenvfn}% - \@nlfm@util=0% - \setcounter{@lab@cnt@col}{0} \setcounter{@lab@cnt@row}{0}% - \setboolean{@env@open}{true} \setboolean{@env@close}{true}% - \setboolean{@ztila}{false}% - \def\ifta{0}% - \txa{Count:\number\@nlfm@addr,Test:\number\@nlfm@util}% - \setboolean{@do@any}{false}% - \loop \ifnum\number\@nlfm@util<\number\@nlfm@addr% - \global\advance\@nlfm@util by1% - \txa{Loop S Count: \number\@nlfm@util}% - \setboolean{@do@any}{true}% - \def\@onet{\csname @aadr@t\number\@nlfm@util\endcsname}% - \def\@onef{\csname @aadr@f\number\@nlfm@util\endcsname}% - \txa{\string\@onet:\@onet -- \string\@onef:\@onef} - \protect\setadrto{\csname adr\@onet\endcsname}\txa{ZD}% - \protect\setadrfr{\csname adr\@onef\endcsname}% - \def\ifta{0}% - \txa{To: adr\@onet,\@name@to --- From: \@name@fr,adr\@onef --- Just:\@tab@just}% - \txa{@aadr@t\number\@nlfm@util: \csname @aadr@t\number\@nlfm@util\endcsname}% - \ifthenelse{\boolean{@env@open}}% - {\setcounter{@lab@cnt@row}{0}\txa{New page}% - \setboolean{@env@open}{false} \setboolean{@env@close}{true}% - \def\ifta{0}% - \showdim{Checking values before newpage}% - \gdef\npind{C}% - \ifthenelse{\boolean{@ztila}}{\newpage}{}% - \setboolean{@ztila}{true}% - \showdim{Checking values after newpage}% - \def\ifta{0}% - \setlength{\tabcolsep}{\@lab@bl} \begin{table}[t] \begin{tabular}{\@tab@just}% - \txa{Starting table}% - }% - {}% - \ifthenelse{\boolean{@lab@t}}% - {\txa{Label to only}\@env@oth{\@name@to}{\@addr@to}}{}% - \ifthenelse{\boolean{@lab@rft}}% - {\txa{Label row from to}\@env@row{\@name@to}{\@addr@to}{\@name@fr}{\@addr@fr}}{}% - \ifthenelse{\boolean{@lab@cft}}% - {\txa{Label col from to}\@env@col{\@name@to}{\@addr@to}{\@name@fr}{\@addr@fr}}{}% - \addtocounter{@lab@cnt@col}{1}% - \ifthenelse{\equal{\the@lab@cnt@col}{\the@lab@tot@col}}% - {\addtocounter{@lab@cnt@row}{1}\setcounter{@lab@cnt@col}{0}% - \txa{Ending row}\\}% - {\txa{Ending column}&}% - \ifthenelse{\equal{\the@lab@cnt@row}{\the@lab@tot@row}}% - {\setcounter{@lab@cnt@row}{0}\setcounter{@lab@cnt@col}{0}% - \txa{Ending table}\\ \end{tabular}\end{table}% - \setboolean{@env@close}{false} \setboolean{@env@open}{true}% - }% - {}% - \def\ifta{0}% - \txa{Loop E Count: \number\@nlfm@util}% - \repeat% - \txa{Ending table}% - \txa{Out of big loop: \arabic{@lab@cnt@col}}% - \def\ifta{0}% - \global\@nlfm@uta=\value{@lab@cnt@row}% - \sbox{\@x@l}{\phantom{A}} - \ifthenelse{\boolean{@env@close} \and \boolean{@do@any}} - {\txa{\the@lab@cnt@col, \the@lab@cnt@row, \the@lab@tot@row} +\def\ifta{0}% +\ClearShipoutPicture% +\nolines\dateset{}\clearall\noheadline\noHeadline\@dim@resetfalse +\setboolean{@Hl}{false}\setlength{\@Hrw}{0pt}% +\setboolean{@hl}{false}\setlength{\@hrw}{0pt}% +\setboolean{@Fl}{false}\setlength{\@Frw}{0pt}% +\setboolean{@fl}{false}\setlength{\@frw}{0pt}% +\@clear@box% +\def\headrulewidth{0pt}% +\def\footrulewidth{0pt}% +\setboolean{@ov@a}{false}\setboolean{@fax@RA}{false}% +\setboolean{@fax@RU}{false}\setboolean{@fax@hdr@pg}{false}% +\setboolean{@no@spc}{true}\setboolean{@B@f}{false}% +\setboolean{@B@h}{false}\setboolean{@B@l}{false}% +\setboolean{@B@r}{false}\setboolean{@b@f}{false}% +\setboolean{@b@h}{false}\setboolean{@b@l}{false}% +\setboolean{@b@r}{false}\setboolean{@sig@p}{false}% +\setboolean{@sig@mp}{false}\setboolean{@env@open}{false}% +\ifthenelse{\lengthtest{\@lab@th<12pt}}{\setlength{\@lab@th}{12.1pt}}{}% +\ifthenelse{\boolean{@use@envlab}}{% +\def\ifta{0}% +\setpage{11in}{8.5in}{-1in}{72pt}{0in}{-1in}{120pt}{0in}{20pt}% +\txa{use@envlab true}% +}% +{% +\gdef\npind{A3}% +\setpage{\@lab@pl}{8.5in}{-1in}{\@lab@lm}{0in}{-1in}{\@lab@th}{0in}{20pt}% +\txa{use@envlab false}% +\txa{headheight:\the\@lab@th}% +}% +\setboolean{@in@makeenv}{true}% +\begin{newlfm}\pagestyle{empty}\thispagestyle{empty}% +\def\ifta{0}% +\showdim{Start of makeenvfn}% +\@nlfm@util=0% +\setcounter{@lab@cnt@col}{0} \setcounter{@lab@cnt@row}{0}% +\setboolean{@env@open}{true} \setboolean{@env@close}{true}% +\setboolean{@ztila}{false}% +\def\ifta{0}% +\txa{Count:\number\@nlfm@addr,Test:\number\@nlfm@util}% +\setboolean{@do@any}{false}% +\loop \ifnum\number\@nlfm@util<\number\@nlfm@addr% +\global\advance\@nlfm@util by1% +\txa{Loop S Count: \number\@nlfm@util}% +\setboolean{@do@any}{true}% +\def\@onet{\csname @aadr@t\number\@nlfm@util\endcsname}% +\def\@onef{\csname @aadr@f\number\@nlfm@util\endcsname}% +\txa{\string\@onet:\@onet -- \string\@onef:\@onef} +\protect\setadrto{\csname adr\@onet\endcsname}\txa{ZD}% +\protect\setadrfr{\csname adr\@onef\endcsname}% +\def\ifta{0}% +\txa{To: adr\@onet,\@name@to --- From: \@name@fr,adr\@onef --- Just:\@tab@just}% +\txa{@aadr@t\number\@nlfm@util: \csname @aadr@t\number\@nlfm@util\endcsname}% +\ifthenelse{\boolean{@env@open}}% +{\setcounter{@lab@cnt@row}{0}\txa{New page}% +\setboolean{@env@open}{false} \setboolean{@env@close}{true}% +\def\ifta{0}% +\showdim{Checking values before newpage}% +\gdef\npind{C}% +\ifthenelse{\boolean{@ztila}}{\newpage}{}% +\setboolean{@ztila}{true}% +\showdim{Checking values after newpage}% +\def\ifta{0}% +\setlength{\tabcolsep}{\@lab@bl} \begin{table}[t] \begin{tabular}{\@tab@just}% +\txa{Starting table}% +}% +{}% +\ifthenelse{\boolean{@lab@t}}% +{\txa{Label to only}\@env@oth{\@name@to}{\@addr@to}}{}% +\ifthenelse{\boolean{@lab@rft}}% +{\txa{Label row from to}\@env@row{\@name@to}{\@addr@to}{\@name@fr}{\@addr@fr}}{}% +\ifthenelse{\boolean{@lab@cft}}% +{\txa{Label col from to}\@env@col{\@name@to}{\@addr@to}{\@name@fr}{\@addr@fr}}{}% +\addtocounter{@lab@cnt@col}{1}% +\ifthenelse{\equal{\the@lab@cnt@col}{\the@lab@tot@col}}% +{\addtocounter{@lab@cnt@row}{1}\setcounter{@lab@cnt@col}{0}% +\txa{Ending row}\\}% +{\txa{Ending column}&}% +\ifthenelse{\equal{\the@lab@cnt@row}{\the@lab@tot@row}}% +{\setcounter{@lab@cnt@row}{0}\setcounter{@lab@cnt@col}{0}% +\txa{Ending table}\\ \end{tabular}\end{table}% +\setboolean{@env@close}{false} \setboolean{@env@open}{true}% +}% +{}% +\def\ifta{0}% +\txa{Loop E Count: \number\@nlfm@util}% +\repeat% +\txa{Ending table}% +\txa{Out of big loop: \arabic{@lab@cnt@col}}% +\def\ifta{0}% +\global\@nlfm@uta=\value{@lab@cnt@row}% +\sbox{\@x@l}{\phantom{A}} +\ifthenelse{\boolean{@env@close} \and \boolean{@do@any}} +{\txa{\the@lab@cnt@col, \the@lab@cnt@row, \the@lab@tot@row} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Finish off current row first %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - \ifthenelse{\equal{\arabic{@lab@cnt@col}}{0}}{}% - {\whiledo{\the@lab@cnt@col<\the@lab@tot@col}% - {\@env@oth{\usebox{\@x@l}}{\usebox{\@x@l}}% - \addtocounter{@lab@cnt@col}{1}% - \ifthenelse{\the@lab@cnt@col<\the@lab@tot@col}{&}{}} \\% - \addtocounter{@lab@cnt@row}{1} - }% +\ifthenelse{\equal{\arabic{@lab@cnt@col}}{0}}{}% +{\whiledo{\the@lab@cnt@col<\the@lab@tot@col}% +{\@env@oth{\usebox{\@x@l}}{\usebox{\@x@l}}% +\addtocounter{@lab@cnt@col}{1}% +\ifthenelse{\the@lab@cnt@col<\the@lab@tot@col}{&}{}} \\% +\addtocounter{@lab@cnt@row}{1} +}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Add remaining rows, each with all columns %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - \whiledo{\the@lab@cnt@row<\the@lab@tot@row}% - {\setcounter{@lab@cnt@col}{0} - \whiledo{\the@lab@cnt@col<\the@lab@tot@col}% - {\@env@oth{\usebox{\@x@l}}{\usebox{\@x@l}}% - \addtocounter{@lab@cnt@col}{1}% - \ifthenelse{\the@lab@cnt@col<\the@lab@tot@col}{&}{\\} - } - \addtocounter{@lab@cnt@row}{1}% - \ifthenelse{\the@lab@cnt@row<\the@lab@tot@row} - {} - {\\ \end{tabular}\end{table} \newpage - \showdim{At the end of the table}} - \setboolean{@env@close}{false}% - \setboolean{@env@open}{true} - }% - }% - {}% - \setboolean{@use@envlab}{false} - \end{newlfm}% - \def\ifta{0}% +\whiledo{\the@lab@cnt@row<\the@lab@tot@row}% +{\setcounter{@lab@cnt@col}{0} +\whiledo{\the@lab@cnt@col<\the@lab@tot@col}% +{\@env@oth{\usebox{\@x@l}}{\usebox{\@x@l}}% +\addtocounter{@lab@cnt@col}{1}% +\ifthenelse{\the@lab@cnt@col<\the@lab@tot@col}{&}{\\} +} +\addtocounter{@lab@cnt@row}{1}% +\ifthenelse{\the@lab@cnt@row<\the@lab@tot@row} +{} +{\\ \end{tabular}\end{table} \newpage +\showdim{At the end of the table}} +\setboolean{@env@close}{false}% +\setboolean{@env@open}{true} +}% +}% +{}% +\setboolean{@use@envlab}{false} +\end{newlfm}% +\def\ifta{0}% }% % \end{macrocode} % \end{macro} @@ -4200,107 +4373,107 @@ unprleft=-1pt}% % \end{enumerate} % \begin{macrocode} \newenvironment{newlfm}{% Start of fax environment, in fax class% - \if@read@one \global\@read@onefalse \fi% - \def\ifta{0}\txa{Start of newlfm startup} - \txa{nameto: \@name@to} - \ifthenelse{\boolean{@over@all}}{\txa{overall: true}}{\txa{overall: false}} - \ifthenelse{\boolean{@over@setto}}{\txa{oversetto: true}}{\txa{oversetto: false}} - \txa{namefrom: \@name@fr} - \ifthenelse{\boolean{@over@setfr}}{\txa{oversetfr: true}}{\txa{oversetfr: false}} - \ifthenelse{\boolean{@over@all}}{% - \faxblocka% - }{} - \ifthenelse{\boolean{@fax@RA}}% - {\ifthenelse{\boolean{@fax@bla}}{\Rheader{\usebox{\fba}}}{}% - \ifthenelse{\boolean{@fax@blb}}{\Rheader{\faxblockb}}{}}{}% - \ifthenelse{\boolean{@fax@RU}}% - {\txa{setting up ruh}% - \ifthenelse{\boolean{@fax@bla}}{\RUheader{\faxblocka}}{}% - \ifthenelse{\boolean{@fax@blb}}{\RUheader{\faxblockb}}{}}{}% - \ifthenelse{\boolean{@over@all}}{% - \expandafter\csname lth\@ltr@head \endcsname% - \ifthenelse{\boolean{@over@setto}}{% - \setadrto{\expandafter\csname adr\@adr@to \endcsname}}{}% - \ifthenelse{\boolean{@over@setfr}}{\txa{True}% - \setadrfr{\expandafter\csname adr\@adr@fr \endcsname}}{\txa{false}}% - \ifthenelse{\boolean{@over@sigbl}}{\txa{True}% - \expandafter\csname sig\@sig@blok \endcsname}{\txa{false}}% - \@set@em@up - }{} - \txa{setting up ruh}% - \def\ifta{0}% +\if@read@one \global\@read@onefalse \fi% +\def\ifta{0}\txa{Start of newlfm startup} +\ifthenelse{\boolean{@ov@a}}{\txa{oa: t}}{\txa{oa: f}} +\ifthenelse{\boolean{@ov@t}}{\txa{ot: t}}{\txa{ot: f}} +\ifthenelse{\boolean{@ov@f}}{\txa{of: t}}{\txa{of: f}} +\ifthenelse{\boolean{@ov@l}}{\txa{ol: t}}{\txa{ol: f}} +\ifthenelse{\boolean{@ov@s}}{\txa{os: t}}{\txa{os: f}} +\txa{nameto: \@name@to} +\txa{namefrom: \@name@fr} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%% Begin with fax cover page +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\ifthenelse{\boolean{@ov@a}}{\faxblocka}{} +\ifthenelse{\boolean{@fax@RA}}% +{\ifthenelse{\boolean{@fax@bla}}{\Rheader{\usebox{\fba}}}{}% +\ifthenelse{\boolean{@fax@blb}}{\Rheader{\faxblockb}}{}}{}% +\ifthenelse{\boolean{@fax@RU}}% +{\txa{setting up ruh}% +\ifthenelse{\boolean{@fax@bla}}{\RUheader{\faxblocka}}{}% +\ifthenelse{\boolean{@fax@blb}}{\RUheader{\faxblockb}}{}}{}% +\ifthenelse{\boolean{@ov@a}}{% +\ifthenelse{\boolean{@ov@l}}{\expandafter\csname lth\@ltr@h \endcsname}{}% +\ifthenelse{\boolean{@ov@t}}{\setadrto{\expandafter\csname adr\@adr@t \endcsname}}{}% +\ifthenelse{\boolean{@ov@f}}{\setadrfr{\expandafter\csname adr\@adr@f \endcsname}}{}% +\ifthenelse{\boolean{@ov@s}}{\expandafter\csname sig\@sig@b \endcsname}{}% +\@set@em@up +}{} +\txa{setting up ruh}% +\def\ifta{0}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - \txa{name@to:\@name@to} - \ifthenelse{\boolean{@over@setto}}{\txa{oversetto:true}}{\txa{oversetto:false}} - \txa{name@fr:\@name@fr} - \ifthenelse{\boolean{@over@setfr}}{\txa{oversetfr:true}}{\txa{oversetfr:false}} - \retdims% - \ifthenelse{\boolean{@fax@hdr@pg}}% - {{\txa{FAX Page Setup}% - \def\ifta{0}% - \showdim{Before resetting dimensions for fax}% - \faxpage% - \def\ifta{0}% - \showdim{After resetting dimensions for fax}% - \showdim{After restoring dimensions for fax}% - \txa{Before newpage issued}% - \txa{After newpage issued}% - \showdim{After fax page setup}% - }}{}% - \rstdims% +\txa{name@to:\@name@to} +\ifthenelse{\boolean{@ov@t}}{\txa{oversetto:true}}{\txa{oversetto:false}} +\txa{name@fr:\@name@fr} +\ifthenelse{\boolean{@ov@f}}{\txa{oversetfr:true}}{\txa{oversetfr:false}} +\retdims% +\ifthenelse{\boolean{@fax@hdr@pg}}% +{{\txa{FAX Page Setup}% +\def\ifta{0}% +\showdim{Before resetting dimensions for fax}% +\faxpage% +\def\ifta{0}% +\showdim{After resetting dimensions for fax}% +\showdim{After restoring dimensions for fax}% +\txa{Before newpage issued}% +\txa{After newpage issued}% +\showdim{After fax page setup}% +}}{}% +\rstdims% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - \def\ifta{0}\showdim{After fax page section closes}\gdef\npind{G} - \if@twoside \ifodd\c@page% - \else\thispagestyle{empty}\null\newpage\fi \fi% - \c@page\@ne% - \interlinepenalty=200 % smaller than the TeXbook value% - \setlength{\headwidth}{\textwidth}% - \txa{Before Rfooter}\ifthenelse{\boolean{@B@f}}% - {\Cfooter{\phantom{\Cfooter}} \Rfooter{\phantom{\Rfooter}} \Lfooter{\phantom{\Lfooter}}} {}% - \txa{Before Rheader}\ifthenelse{\boolean{@B@h}}% - {\Rheader{\phantom{\Rheader}} \Lheader{\phantom{\Lheader}} \Cheader{\phantom{\Cheader}}} {}% - \txa{Before Lmargin}\ifthenelse{\boolean{@B@l}}% - {\ifempty{\@Lmarg}{}{\Lmargin{\phantom{\Lmargin}}}}{}% - \txa{Before Rmargin}\ifthenelse{\boolean{@B@r}}% - {\ifempty{\@Rmarg}{}{\Rmargin{\phantom{\Rmargin}}}}{}% - \txa{Before rfooter}\ifthenelse{\boolean{@b@f}}% - {\rfooter{\phantom{\rfooter}} \lfooter{\phantom{\lfooter}} \cfooter{\phantom{\cfooter}}} {}% - \txa{Before rheader}\ifthenelse{\boolean{@b@h}}% - {\rheader{\phantom{\rheader}} \lheader{\phantom{\lheader}} \cheader{\phantom{\cheader}}} {}% - \txa{Before lmargin}\ifthenelse{\boolean{@b@l}}% - {\lmargin{\phantom{\lmargin}}} {}% - \txa{Before rmargin}\ifthenelse{\boolean{@b@r}}% - {\rmargin{\phantom{\rmargin}}} {}% - \setlength{\textwidth}{\paperwidth-\@marg@rt-\@marg@lt-1pt}% - \txa{Before opening}% - \txa{\string\@marg@rt: \the\@marg@rt, \string\@marg@rt: \the\@marg@rt}% - \txa{\string\textwidth: \the\textwidth, \string\paperwidth: \the\paperwidth}% -% \ifthenelse{\boolean{@over@all}}{% - \openlfm% +\def\ifta{0}\showdim{After fax page section closes}\gdef\npind{G} +\if@twoside \ifodd\c@page% +\else\thispagestyle{empty}\null\newpage\fi \fi% +\c@page\@ne% +\interlinepenalty=200 % smaller than the TeXbook value% +\setlength{\headwidth}{\textwidth}% +\txa{Before Rfooter}\ifthenelse{\boolean{@B@f}}% +{\Cfooter{\phantom{\Cfooter}} \Rfooter{\phantom{\Rfooter}} \Lfooter{\phantom{\Lfooter}}} {}% +\txa{Before Rheader}\ifthenelse{\boolean{@B@h}}% +{\Rheader{\phantom{\Rheader}} \Lheader{\phantom{\Lheader}} \Cheader{\phantom{\Cheader}}} {}% +\txa{Before Lmargin}\ifthenelse{\boolean{@B@l}}% +{\ifempty{\@Lmarg}{}{\Lmargin{\phantom{\Lmargin}}}}{}% +\txa{Before Rmargin}\ifthenelse{\boolean{@B@r}}% +{\ifempty{\@Rmarg}{}{\Rmargin{\phantom{\Rmargin}}}}{}% +\txa{Before rfooter}\ifthenelse{\boolean{@b@f}}% +{\rfooter{\phantom{\rfooter}} \lfooter{\phantom{\lfooter}} \cfooter{\phantom{\cfooter}}} {}% +\txa{Before rheader}\ifthenelse{\boolean{@b@h}}% +{\rheader{\phantom{\rheader}} \lheader{\phantom{\lheader}} \cheader{\phantom{\cheader}}} {}% +\txa{Before lmargin}\ifthenelse{\boolean{@b@l}}% +{\lmargin{\phantom{\lmargin}}} {}% +\txa{Before rmargin}\ifthenelse{\boolean{@b@r}}% +{\rmargin{\phantom{\rmargin}}} {}% +\setlength{\textwidth}{\paperwidth-\@marg@rt-\@marg@lt-1pt}% +\txa{Before opening}% +\txa{\string\@marg@rt: \the\@marg@rt, \string\@marg@rt: \the\@marg@rt}% +\txa{\string\textwidth: \the\textwidth, \string\paperwidth: \the\paperwidth}% +% \ifthenelse{\boolean{@ov@a}}{% +\openlfm% % }{} - \def\ifta{0}% - \txa{nameto:\@name@to} - \txa{namefr:\@name@fr} - \txa{\string\@marg@rt: \the\@marg@rt, \string\@marg@rt: \the\@marg@rt}% - \txa{\string\textwidth: \the\textwidth, \string\paperwidth: \the\paperwidth}% - \txa{After opening}% - \def\ifta{0}% - \txa{\string\@marg@rt: \the\@marg@rt, \string\@marg@rt: \the\@marg@rt}% - \txa{\string\textwidth: \the\textwidth, \string\paperwidth: \the\paperwidth}% - \txa{Before pagestyle}% - \pagestyle{othhead}\thispagestyle{ltrhead}% - \def\ifta{0}% - \txa{After pagestyle}% - \ifthenelse{\boolean{@in@makeenv}}{\txa{makeenv true}}{\txa{makeenv false}% - \global\advance \@nlfm@addr by1% - \txa{Count: \number\@nlfm@addr -- To: \@adr@to -- From: \@adr@fr} - \expandafter\xdef\csname @aadr@t\number\@nlfm@addr\endcsname{\@adr@to}% - \expandafter\xdef\csname @aadr@f\number\@nlfm@addr\endcsname{\@adr@fr}% - \txa{Count: \number\@nlfm@addr -- To: \@adr@to -- From: \@adr@fr} - \txa{@aadr@t\number\@nlfm@addr: \csname @aadr@t\number\@nlfm@addr\endcsname}% - \txa{To: \csname @aadr@t\number\@nlfm@addr\endcsname,\@adr@to}% - }% - \showdim{Dimensions at end of newlfm startup section}\def\ifta{0}% +\def\ifta{0}% +\txa{nameto:\@name@to} +\txa{namefr:\@name@fr} +\txa{\string\@marg@rt: \the\@marg@rt, \string\@marg@rt: \the\@marg@rt}% +\txa{\string\textwidth: \the\textwidth, \string\paperwidth: \the\paperwidth}% +\txa{After opening}% +\def\ifta{0}% +\txa{\string\@marg@rt: \the\@marg@rt, \string\@marg@rt: \the\@marg@rt}% +\txa{\string\textwidth: \the\textwidth, \string\paperwidth: \the\paperwidth}% +\txa{Before pagestyle}% +\pagestyle{othhead}\thispagestyle{ltrhead}% +\def\ifta{0}% +\txa{After pagestyle}% +\ifthenelse{\boolean{@in@makeenv}}{\txa{makeenv true}}{\txa{makeenv false}% +\global\advance \@nlfm@addr by1% +\txa{Count: \number\@nlfm@addr -- To: \@adr@t -- From: \@adr@f} +\expandafter\xdef\csname @aadr@t\number\@nlfm@addr\endcsname{\@adr@t}% +\expandafter\xdef\csname @aadr@f\number\@nlfm@addr\endcsname{\@adr@f}% +\txa{Count: \number\@nlfm@addr -- To: \@adr@t -- From: \@adr@f} +\txa{@aadr@t\number\@nlfm@addr: \csname @aadr@t\number\@nlfm@addr\endcsname}% +\txa{To: \csname @aadr@t\number\@nlfm@addr\endcsname,\@adr@t}% +}% +\showdim{Dimensions at end of newlfm startup section}\def\ifta{0}% }% % \end{macrocode} % The next block of code defines the operation at the close of the @@ -4318,33 +4491,33 @@ unprleft=-1pt}% % % \begin{macrocode} {% Here we are at the processing of the close of the newlfm env - \def\ifta{0}\txa{At the start of the close of newlfm env}% - \ifthenelse{\boolean{@pr@p}}{\closlfm}{}% - \ifthenelse{\boolean{@sig@p}}% - {\txa{Before closing}% - \ifthenelse{\boolean{@pr@p}}{}{\closlfm}% - \txa{After closing}% - \showdim{Current Dimensions}% - \@post@sig@bl{\@ps@phr}{\@ps@item}{---BLANK---}% - \@post@sig@bl{\@pps@phr}{\@pps@item}{---BLANK---}% - \@post@sig@bl{\@ppps@phr}{\@ppps@item}{---BLANK---}% - \@post@sig@bl{\@encl@phr}{\@encl@item}{---BLANK---}% - \@post@sig@bl{\@cc@phr}{\@cc@item}{---BLANK---}}{}% - \ifthenelse{\boolean{@sig@mp}}{ - \@post@sig@bl{\@ps@phr}{\@ps@item}{---BLANK---}% - \@post@sig@bl{\@pps@phr}{\@pps@item}{---BLANK---}% - \@post@sig@bl{\@ppps@phr}{\@ppps@item}{---BLANK---}% - \@post@sig@bl{\@encl@phr}{\@encl@item}{---BLANK---}% - \@post@sig@bl{\@cc@phr}{\@cc@item}{---BLANK---}}{}% - \ifthenelse{\boolean{@env@open}}{}{}% +\def\ifta{0}\txa{At the start of the close of newlfm env}% +\ifthenelse{\boolean{@pr@p}}{\closlfm}{}% +\ifthenelse{\boolean{@sig@p}}% +{\txa{Before closing}% +\ifthenelse{\boolean{@pr@p}}{}{\closlfm}% +\txa{After closing}% +\showdim{Current Dimensions}% +\@post@sig@bl{\@ps@phr}{\@ps@item}{---BLANK---}% +\@post@sig@bl{\@pps@phr}{\@pps@item}{---BLANK---}% +\@post@sig@bl{\@ppps@phr}{\@ppps@item}{---BLANK---}% +\@post@sig@bl{\@encl@phr}{\@encl@item}{---BLANK---}% +\@post@sig@bl{\@cc@phr}{\@cc@item}{---BLANK---}}{}% +\ifthenelse{\boolean{@sig@mp}}{ +\@post@sig@bl{\@ps@phr}{\@ps@item}{---BLANK---}% +\@post@sig@bl{\@pps@phr}{\@pps@item}{---BLANK---}% +\@post@sig@bl{\@ppps@phr}{\@ppps@item}{---BLANK---}% +\@post@sig@bl{\@encl@phr}{\@encl@item}{---BLANK---}% +\@post@sig@bl{\@cc@phr}{\@cc@item}{---BLANK---}}{}% +\ifthenelse{\boolean{@env@open}}{}{}% % \ifthenelse{\boolean{@use@envlab}}{\@make@big@env}{}% - \txa{Before the pagebreak}% - \gdef\npind{J}% - \stopletter\@@par\pagebreak\@@par% - \immediate\write\@auxout{\string\newlabel{totpage}{{\thepage}{0}}}% - \@clear@box% - \global\@read@onetrue% - \setboolean{@s@b@s}{false}% +\txa{Before the pagebreak}% +\gdef\npind{J}% +\stopletter\@@par\pagebreak\@@par% +\immediate\write\@auxout{\string\newlabel{totpage}{{\thepage}{0}}}% +\@clear@box% +\global\@read@onetrue% +\setboolean{@s@b@s}{false}% % \end{macrocode} % The end of the |doublespace| environment also destroys the % settings for the page headers (except for the the first page, which, @@ -4359,42 +4532,42 @@ unprleft=-1pt}% }{}% }% \def\@make@big@env{ - \@nlfm@util=0% - \def\ifta{0}% - \txa{In @make@big@env}% - \txa{Count: \number\@nlfm@addr}% - \txa{ZI}% - \txa{@aadr@t\number\@nlfm@addr: \csname @aadr@t\number\@nlfm@addr\endcsname}% - \txa{To: \csname @aadr@t\number\@nlfm@addr\endcsname,\@adr@to}% - \loop \ifnum\@nlfm@util < \@nlfm@addr% - \advance\@nlfm@util by1% - \def\@onet{\expandafter\csname @aadr@t\number\@nlfm@util\endcsname}% - \def\@onef{\expandafter\csname @aadr@f\number\@nlfm@util\endcsname}% - \setadrto{\expandafter\csname adr\@onet\endcsname}\txa{ZF}% - \setadrfr{\expandafter\csname adr\@onef\endcsname}% - \gdef\npind{I}% - \newpage% - \def\ifta{0}% - \gdef\npind{A4}% - \setpage{11in}{8.5in}{1in}{1in}{0pt}{0in}{120in}{0in}{0in}% - \txa{Actually using the makeenvelope...}% - \startlabels% - \@capitalizeaddressfalse% - \txa{From: \@name@fr}% - \txa{To: \@name@to}% - \mlabel{\@name@fr \hspace*{.1pt} \\ \@addr@fr \hspace*{.1pt}}% - {\@name@to \hspace*{.1pt} \\ \@addr@to \hspace*{.1pt}}% - \txa{From: \@name@fr}% - \txa{To: \@name@to}% - \repeat% - \global\@nlfm@addr=0% - \txa{Count at end: \number\@nlfm@addr}% +\@nlfm@util=0% +\def\ifta{0}% +\txa{In @make@big@env}% +\txa{Count: \number\@nlfm@addr}% +\txa{ZI}% +\txa{@aadr@t\number\@nlfm@addr: \csname @aadr@t\number\@nlfm@addr\endcsname}% +\txa{To: \csname @aadr@t\number\@nlfm@addr\endcsname,\@adr@t}% +\loop \ifnum\@nlfm@util < \@nlfm@addr% +\advance\@nlfm@util by1% +\def\@onet{\expandafter\csname @aadr@t\number\@nlfm@util\endcsname}% +\def\@onef{\expandafter\csname @aadr@f\number\@nlfm@util\endcsname}% +\setadrto{\expandafter\csname adr\@onet\endcsname}\txa{ZF}% +\setadrfr{\expandafter\csname adr\@onef\endcsname}% +\gdef\npind{I}% +\newpage% +\def\ifta{0}% +\gdef\npind{A4}% +\setpage{11in}{8.5in}{1in}{1in}{0pt}{0in}{120in}{0in}{0in}% +\txa{Actually using the makeenvelope...}% +\startlabels% +\@capitalizeaddressfalse% +\txa{From: \@name@fr}% +\txa{To: \@name@to}% +\mlabel{\@name@fr \hspace*{.1pt} \\ \@addr@fr \hspace*{.1pt}}% +{\@name@to \hspace*{.1pt} \\ \@addr@to \hspace*{.1pt}}% +\txa{From: \@name@fr}% +\txa{To: \@name@to}% +\repeat% +\global\@nlfm@addr=0% +\txa{Count at end: \number\@nlfm@addr}% } \def\@clear@box{ -\Backgrd{} \backgrd{} \Lfooter{} \Cfooter{} \Rfooter{} \LOfooter{}% -\COfooter{}\ROfooter{}\lfooter{} \cfooter{} \rfooter{} \Lheader{}% -\Cheader{} \Rheader{} \LUheader{}\CUheader{}\RUheader{}\lheader{}% -\cheader{} \rheader{} \Rmargin{} \Lmargin{} \rmargin{} \lmargin{}% +\Background{}\background{}\Lfooter{}\Cfooter{}\Rfooter{}\LOfooter{}% +\COfooter{}\ROfooter{}\lfooter{}\cfooter{}\rfooter{}\Lheader{}% +\Cheader{}\Rheader{}\LUheader{}\CUheader{}\RUheader{}\lheader{}% +\cheader{}\rheader{}\Rmargin{}\Lmargin{}\rmargin{}\lmargin{}% }% % \end{macrocode} % \end{macro} @@ -4406,7 +4579,7 @@ unprleft=-1pt}% \raggedbottom% \providecommand{\@texttop}{}% \DeclareRobustCommand*{\@texttop} - {\ifnum\c@page=1\vskip \z@ plus.00006fil\relax\fi}% +{\ifnum\c@page=1\vskip \z@ plus.00006fil\relax\fi}% \onecolumn% \def\@set@em@up{% % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4427,10 +4600,12 @@ unprleft=-1pt}% % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % First, set the header and footer widths % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifthenelse{\boolean{@hl}}{\def\headrulewidth{\the\@Hrw}} - {\setlength{\@Hrw}{0pt}\def\headrulewidth{0pt}}% -\ifthenelse{\boolean{@fl}}{\def\footrulewidth{\the\@Frw}} - {\setlength{\@Frw}{0pt}\def\footrulewidth{0pt}}% +\ifthenelse{\boolean{@Hl}}% +{\def\headrulewidth{\the\@Hrw}}% +{\setlength{\@Hrw}{0pt}\def\headrulewidth{0pt}}% +\ifthenelse{\boolean{@Fl}}% +{\def\footrulewidth{\the\@Frw}}% +{\setlength{\@Frw}{0pt}\def\footrulewidth{0pt}}% % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Now, set the contents of the header and footer sections into boxes % Boxes can be measured @@ -4440,69 +4615,67 @@ unprleft=-1pt}% % Check the heights and depths of boxes % Letterhead header section % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\sbox{\@x@c}{\@Cheader}\sbox{\@x@l}{\@Lheader}\sbox{\@x@r}{\@Rheader}% +\begin{lrbox}{\@x@c}\begin{minipage}{\textwidth}\@Cheader\end{minipage}\end{lrbox}% +\begin{lrbox}{\@x@l}\begin{minipage}{\textwidth}\@Lheader\end{minipage}\end{lrbox}% +\begin{lrbox}{\@x@r}\begin{minipage}{\textwidth}\@Rheader\end{minipage}\end{lrbox}% \ifthenelse{\boolean{@Ch@use}}% -{\settoheight{\@Hgt@H@C}{\strut\usebox{\@x@c}\strut}% -\settodepth{\@Dth@H@C}{\strut\usebox{\@x@c}\strut}% +{\settoheight{\@Hgt@H@C}{\strut\usebox{\@x@c}\strut}\settodepth{\@Dth@H@C}{\strut\usebox{\@x@c}\strut}% \addtolength{\@Hgt@H@C}{\@Dth@H@C}}{\setlength{\@Hgt@H@C}{0pt}}% \ifthenelse{\boolean{@Rh@use}}% -{\settoheight{\@Hgt@H@R}{\strut\usebox{\@x@r}\strut}% -\settodepth{\@Dth@H@R}{\strut\usebox{\@x@r}\strut}% +{\settoheight{\@Hgt@H@R}{\strut\usebox{\@x@r}\strut}\settodepth{\@Dth@H@R}{\strut\usebox{\@x@r}\strut}% \addtolength{\@Hgt@H@R}{\@Dth@H@R}}{\setlength{\@Hgt@H@R}{0pt}}% \ifthenelse{\boolean{@Lh@use}}% -{\settoheight{\@Hgt@H@L}{\strut\usebox{\@x@l}\strut}% -\settodepth{\@Dth@H@L}{\strut\usebox{\@x@l}\strut}% +{\settoheight{\@Hgt@H@L}{\strut\usebox{\@x@l}\strut}\settodepth{\@Dth@H@L}{\strut\usebox{\@x@l}\strut}% \addtolength{\@Hgt@H@L}{\@Dth@H@L}}{\setlength{\@Hgt@H@L}{0pt}}% % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Check the heights and depths of boxes % Non-letterhead header section % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\sbox{\@x@c}{\@cheader}\sbox{\@x@l}{\@lheader}\sbox{\@x@r}{\@rheader}% +\begin{lrbox}{\@x@c}\begin{minipage}{\textwidth}\@cheader\end{minipage}\end{lrbox}% +\begin{lrbox}{\@x@l}\begin{minipage}{\textwidth}\@lheader\end{minipage}\end{lrbox}% +\begin{lrbox}{\@x@r}\begin{minipage}{\textwidth}\@rheader\end{minipage}\end{lrbox}% +\txa{\@lheader}% +\txa{\@rheader}% \ifthenelse{\boolean{@ch@use}}% -{\settoheight{\@Hgt@h@c}{\strut\usebox{\@x@c}\strut}% -\settodepth{\@Dth@h@c}{\strut\usebox{\@x@c}\strut}% +{\settoheight{\@Hgt@h@c}{\strut\usebox{\@x@c}\strut}\settodepth{\@Dth@h@c}{\strut\usebox{\@x@c}\strut}% \addtolength{\@Hgt@h@c}{\@Dth@h@c}}{\setlength{\@Hgt@h@c}{0pt}}% \ifthenelse{\boolean{@rh@use}}% -{\settoheight{\@Hgt@h@r}{\strut\usebox{\@x@r}\strut}% -\settodepth{\@Dth@h@r}{\strut\usebox{\@x@r}\strut}% -\addtolength{\@Hgt@h@r}{\@Dth@h@r}}{\setlength{\@Hgt@h@r}{0pt}}% +{\settoheight\@Hgt@h@r{\strut\usebox{\@x@r}\strut}\settodepth\@Dth@h@r{\strut\usebox{\@x@r}\strut}% +\addtolength\@Hgt@h@r{\@Dth@h@r}}{\setlength\@Hgt@h@r{0pt}}% \ifthenelse{\boolean{@lh@use}}% -{\settoheight{\@Hgt@h@l}{\strut\usebox{\@x@l}\strut}% -\settodepth{\@Dth@h@l}{\strut\usebox{\@x@l}\strut}% -\addtolength{\@Hgt@h@l}{\@Dth@h@l}}{\setlength{\@Hgt@h@l}{0pt}}% +{\settoheight\@Hgt@h@l{\strut\usebox{\@x@l}\strut}\settodepth\@Dth@h@l{\strut\usebox{\@x@l}\strut}% +\addtolength\@Hgt@h@l{\@Dth@h@l}}{\setlength\@Hgt@h@l{0pt}}% % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Check the heights and depths of boxes % Letterhead footer section % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\sbox{\@x@c}{\@Cfooter}\sbox{\@x@l}{\@Lfooter}\sbox{\@x@r}{\@Rfooter}% +\begin{lrbox}{\@x@c}\begin{minipage}{\textwidth}\@Cfooter\end{minipage}\end{lrbox}% +\begin{lrbox}{\@x@l}\begin{minipage}{\textwidth}\@Lfooter\end{minipage}\end{lrbox}% +\begin{lrbox}{\@x@r}\begin{minipage}{\textwidth}\@Rfooter\end{minipage}\end{lrbox}% \ifthenelse{\boolean{@Cf@use}}% -{\settoheight{\@Hgt@F@C}{\strut\usebox{\@x@c}\strut}% -\settodepth{\@Dth@F@C}{\strut\usebox{\@x@c}\strut}% +{\settoheight{\@Hgt@F@C}{\strut\usebox{\@x@c}\strut}\settodepth{\@Dth@F@C}{\strut\usebox{\@x@c}\strut}% \addtolength{\@Hgt@F@C}{\@Dth@F@C}}{\setlength{\@Hgt@F@C}{0pt}}% \ifthenelse{\boolean{@Rf@use}}% -{\settoheight{\@Hgt@F@R}{\strut\usebox{\@x@r}\strut}% -\settodepth{\@Dth@F@R}{\strut\usebox{\@x@r}\strut}% +{\settoheight{\@Hgt@F@R}{\strut\usebox{\@x@r}\strut}\settodepth{\@Dth@F@R}{\strut\usebox{\@x@r}\strut}% \addtolength{\@Hgt@F@R}{\@Dth@F@R}}{\setlength{\@Hgt@F@R}{0pt}}% \ifthenelse{\boolean{@Lf@use}}% -{\settoheight{\@Hgt@F@L}{\strut\usebox{\@x@l}\strut}% -\settodepth{\@Dth@F@L}{\strut\usebox{\@x@l}\strut}% +{\settoheight{\@Hgt@F@L}{\strut\usebox{\@x@l}\strut}\settodepth{\@Dth@F@L}{\strut\usebox{\@x@l}\strut}% \addtolength{\@Hgt@F@L}{\@Dth@F@L}}{\setlength{\@Hgt@F@L}{0pt}}% % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Check the heights and depths of boxes % Non-letterhead footer section % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\sbox{\@x@c}{\@cfooter}\sbox{\@x@l}{\@lfooter}\sbox{\@x@r}{\@rfooter}% +\begin{lrbox}{\@x@c}\begin{minipage}{\textwidth}\@cfooter\end{minipage}\end{lrbox}% +\begin{lrbox}{\@x@l}\begin{minipage}{\textwidth}\@lfooter\end{minipage}\end{lrbox}% +\begin{lrbox}{\@x@r}\begin{minipage}{\textwidth}\@rfooter\end{minipage}\end{lrbox}% \ifthenelse{\boolean{@ch@use}}% -{\settoheight{\@Hgt@f@c}{\strut\usebox{\@x@c}\strut}% -\settodepth{\@Dth@f@c}{\strut\usebox{\@x@c}\strut}% +{\settoheight{\@Hgt@f@c}{\strut\usebox{\@x@c}\strut}\settodepth{\@Dth@f@c}{\strut\usebox{\@x@c}\strut}% \addtolength{\@Hgt@f@c}{\@Dth@f@c}}{\setlength{\@Hgt@f@c}{0pt}}% \ifthenelse{\boolean{@rh@use}}% -{\settoheight{\@Hgt@f@r}{\strut\usebox{\@x@r}\strut}% -\settodepth{\@Dth@f@r}{\strut\usebox{\@x@r}\strut}% +{\settoheight{\@Hgt@f@r}{\strut\usebox{\@x@r}\strut}\settodepth{\@Dth@f@r}{\strut\usebox{\@x@r}\strut}% \addtolength{\@Hgt@f@r}{\@Dth@f@r}}{\setlength{\@Hgt@f@r}{0pt}}% \ifthenelse{\boolean{@lh@use}}% -{\settoheight{\@Hgt@f@l}{\strut\usebox{\@x@l}\strut}% -\settodepth{\@Dth@f@l}{\strut\usebox{\@x@l}\strut}% +{\settoheight{\@Hgt@f@l}{\strut\usebox{\@x@l}\strut}\settodepth{\@Dth@f@l}{\strut\usebox{\@x@l}\strut}% \addtolength{\@Hgt@f@l}{\@Dth@f@l}}{\setlength{\@Hgt@f@l}{0pt}}% % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Determine the height of the letterhead header @@ -4527,7 +4700,9 @@ unprleft=-1pt}% \txa{6) @Hgt@Head: \the\@Hgt@Head}% \addtolength{\@Hgt@Head}{\@marg@tp@a}% \txa{7) @Hgt@Head: \the\@Hgt@Head}% -\addtolength{\@Hgt@Head}{\the\@Hrw+2.60005pt}% +\addtolength{\@Hgt@Head}{\@Hrw}% +\addtolength{\@Hgt@Head}{2.60005pt}% +\addtolength{\@Hgt@Head}{\@unpr@tp}% \ifthenelse{\lengthtest{\@Hrw<2pt}}{\addtolength{\@Hgt@Head}{2.0pt}}{}% \txa{8) @Hgt@Head: \the\@Hgt@Head,\the\@Hrw,\headrulewidth}% }% @@ -4545,13 +4720,16 @@ unprleft=-1pt}% {\setlength{\@Hgt@head}{\@Hgt@h@r}}{}% \ifthenelse{\lengthtest{\@Hgt@head<\@Min@Hgt@head}}% {\setlength{\@Hgt@head}{\@Min@Hgt@head}}{}% -% \addtolength{\@Hgt@head}{8pt} +% \addtolength{\@Hgt@head}{8pt}% \ifthenelse{\lengthtest{\@Hgt@head<1pt}}% {\setlength{\@Hgt@head}{\@marg@tp}}% {%\ifthenelse{\lengthtest{\@marg@tp@a<\@unpr@tp}}% %{\setlength{\@marg@tp@a}{\@unpr@tp}}{}% \addtolength{\@Hgt@head}{\@marg@tp@a}% -\addtolength{\@Hgt@head}{\the\@hrw+2.60005pt}% +\addtolength{\@Hgt@head}{\@hrw}% +\addtolength{\@Hgt@head}{2.60005pt}% +\txa{unprtop: \the\@unpr@tp}% +\addtolength{\@Hgt@head}{\@unpr@tp}% \ifthenelse{\lengthtest{\@hrw<2pt}}{\addtolength{\@Hgt@head}{2.0pt}}{}% }% \txa{Left: \the\@Hgt@h@l, Center: \the\@Hgt@h@c, Right: \the\@Hgt@h@r}% @@ -4590,11 +4768,17 @@ unprleft=-1pt}% %\addtolength{\@Hgt@Head}{1pt}% %\addtolength{\@Hgt@head}{1pt}% \setlength{\@Plg}{\paperheight-\@Hgt@Head-\@Hgt@Foot-\@marg@tp@b-\@marg@tp@a-% -\@marg@bt@a-\@marg@bt@b-\@f@f-\footrulewidth-\headrulewidth}% +\@marg@bt@a-\@marg@bt@b-\@f@f-\@Hrw-\@Frw}% \setlength{\@plg}{\paperheight-\@Hgt@head-\@Hgt@foot-\@marg@tp@b-\@marg@tp@a-% -\@marg@bt@a-\@marg@bt@b-\@f@f-\footrulewidth-\headrulewidth}% +\@marg@bt@a-\@marg@bt@b-\@f@f-\@hrw-\@frw}% \ifthenelse{\lengthtest{\@text@height>.1pt}}{\setlength{\@Plg}{\@text@height}}{}% -\ifthenelse{\boolean{@Bg@use}}{\AddToShipoutPicture*{\@Backgrd}}{}% +\ifthenelse{\boolean{@Bg@use}} +{\ClearShipoutPicture +\AddToShipoutPicture{\includegraphics[natheight=11in,natwidth=8.5in]{\@Backgrnd}}} +{\ifthenelse{\boolean{@bg@use}} +{\ClearShipoutPicture +\AddToShipoutPicture{\includegraphics[natheight=11in,natwidth=8.5in]{\@backgrnd}} +}{}} % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Print feedback if requested % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4753,18 +4937,18 @@ unprleft=-1pt}% \txa{13. \the\@utilb} \ifthenelse{\lengthtest{\@utila > 0pt}}{\setboolean{@ztila}{true}} {\typeout{Cello window requested, but cannot be used.} - \typeout{'To-address' cannot be placed vertically. Suggestions:} - \typeout{1. Make letterhead components smaller.} - \typeout{2. Eliminate date or 'from-address' from letter.} - \typeout{3. Move date or 'from-address' below 'to-address'.} - \setboolean{@ztila}{false}% +\typeout{'To-address' cannot be placed vertically. Suggestions:} +\typeout{1. Make letterhead components smaller.} +\typeout{2. Eliminate date or 'from-address' from letter.} +\typeout{3. Move date or 'from-address' below 'to-address'.} +\setboolean{@ztila}{false}% } \ifthenelse{\lengthtest{\@utilb > 0pt}}{\setboolean{@ztilb}{true}} {\typeout{Cello window requested, but cannot be used.} - \typeout{'To-address' cannot be placed horizontally. Suggestions:} - \typeout{1. Make left-margin width smaller.} - \typeout{2. Eliminate margin components.} - \setboolean{@ztilb}{false}% +\typeout{'To-address' cannot be placed horizontally. Suggestions:} +\typeout{1. Make left-margin width smaller.} +\typeout{2. Eliminate margin components.} +\setboolean{@ztilb}{false}% } \ifthenelse{\boolean{@ztila} \and \boolean{@ztilb}}{ \setlength{\@addr@to@sk@b}{\@utila} @@ -4867,32 +5051,31 @@ unprleft=-1pt}% \color@endbox }% }% -\txa{After shipout} -\global\let\if@newlist\@@if@newlist -\showdim{New page - before reset} -\if@dim@reset -\if@repth \global\textheight \@rep@th \global\@repthfalse \fi -\fi -\global \@colht \textheight +\txa{After shipout}% +\global\let\if@newlist\@@if@newlist% +\showdim{New page - before reset}% +\if@dim@reset% +\if@repth \global\textheight \@rep@th \global\@repthfalse \fi% +\fi% +\global \@colht \textheight% \stepcounter{page}% -\let\firstmark\botmark -\if@dim@reset -\if@repth \global\textheight \@rep@th \global\@repthfalse \fi -\if@reptw \global\textwidth \@rep@tw \global\@reptwfalse \fi -\if@repom \global\oddsidemargin \@rep@om \global\@repomfalse \fi -\if@repem \global\evensidemargin \@rep@em \global\@repemfalse \fi -\if@repcs \global\columnsep \@rep@cs \global\@repcsfalse \fi -\if@reptm \global\topmargin \@rep@tm \global\@reptmfalse -\txa{Fixing tm} \fi -\if@rephh \global\headheight \@rep@hh \global\@rephhfalse \fi -\if@rephs \global\headsep \@rep@hs \global\@rephsfalse \fi -\if@repfs \global\footskip \@rep@fs \global\@repfsfalse \fi -\fi -\showdim{New page - after reset} +\let\firstmark\botmark% +\if@dim@reset% +\if@repth \global\textheight \@rep@th \global\@repthfalse \fi% +\if@reptw \global\textwidth \@rep@tw \global\@reptwfalse \fi% +\if@repom \global\oddsidemargin \@rep@om \global\@repomfalse \fi% +\if@repem \global\evensidemargin \@rep@em \global\@repemfalse \fi% +\if@repcs \global\columnsep \@rep@cs \global\@repcsfalse \fi% +\if@reptm \global\topmargin \@rep@tm \global\@reptmfalse \txa{Fixing tm} \fi% +\if@rephh \global\headheight \@rep@hh \global\@rephhfalse \fi% +\if@rephs \global\headsep \@rep@hs \global\@rephsfalse \fi% +\if@repfs \global\footskip \@rep@fs \global\@repfsfalse \fi% +\fi% +\showdim{New page - after reset}% \def\ifta{0}% -\renewcommand{\headrulewidth}{\the\@Hrw} -\renewcommand{\footrulewidth}{\the\@Frw} -} +\renewcommand{\headrulewidth}{\the\@hrw}% +\renewcommand{\footrulewidth}{\the\@frw}% +}% \AtEndDocument{% \ifthenelse{\boolean{@set@env}}% {\@clear@box% @@ -4907,20 +5090,20 @@ unprleft=-1pt}% }{}% \ifthenelse{\boolean{@use@envlab}}{\@make@big@env}{}% }% -\AtBeginDocument{ +\AtBeginDocument{% \def\ifta{0}% -\txa{AtBeginDocument...} -\@nlfm@addr=0 -\ifthenelse{\boolean{@use@envlab}} -{ -\IfFileExists{envlab.sty} -{\makelabels} -{\typeout{The option was issued. File cannot be found.} -\typeout{Option is disabled. Please install envlab system.} -\setboolean{@use@envlab}{false}}}{} -{} -\txa{At the very very end...} -} +\txa{AtBeginDocument...}% +\@nlfm@addr=0% +\ifthenelse{\boolean{@use@envlab}}% +{% +\IfFileExists{envlab.sty}% +{\makelabels}% +{\typeout{The option was issued. File cannot be found.}% +\typeout{Option is disabled. Please install envlab system.}% +\setboolean{@use@envlab}{false}}}{}% +{}% +\txa{At the very very end...}% +}% \endinput% % \end{macrocode} % -- cgit v1.2.3