summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/isodoc
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2013-11-24 22:39:41 +0000
committerKarl Berry <karl@freefriends.org>2013-11-24 22:39:41 +0000
commit7d8d8f2338990bb460545d4ca8b2738b0d3bb25e (patch)
tree8b8a228ae53884bb0e743634ff0d889f7fa074dc /Master/texmf-dist/source/latex/isodoc
parent6e0f34e245fab47908d119308f36b78b2dbc833d (diff)
isodoc (24nov13)
git-svn-id: svn://tug.org/texlive/trunk@32230 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/isodoc')
-rw-r--r--Master/texmf-dist/source/latex/isodoc/isodoc.dtx245
1 files changed, 151 insertions, 94 deletions
diff --git a/Master/texmf-dist/source/latex/isodoc/isodoc.dtx b/Master/texmf-dist/source/latex/isodoc/isodoc.dtx
index 861f1e8669a..520ad047246 100644
--- a/Master/texmf-dist/source/latex/isodoc/isodoc.dtx
+++ b/Master/texmf-dist/source/latex/isodoc/isodoc.dtx
@@ -32,7 +32,7 @@ Execute the inst script with the --help option for more information.
%<class>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
%<class>\ProvidesClass{isodoc}%
%<*class>
- [2013/08/27 v1.00 isodoc class for letters and invoices]
+ [2013/08/27 v1.01 isodoc class for letters and invoices]
%</class>
%<class>\ifx\pdfoutput\undefined\else%
%<class>\ifnum\pdfoutput=1\else\ClassError{isodoc}{Compile me with pdflatex or xelatex!}{}
@@ -45,6 +45,7 @@ Execute the inst script with the --help option for more information.
\usepackage[a4paper,margin=20mm,left=50mm,nohead]{geometry}
\usepackage{hyperref}
%\OnlyDescription
+\IndexMin=1580pt
\RecordChanges
\CodelineIndex\EnableCrossrefs
\hypersetup{
@@ -110,11 +111,11 @@ Execute the inst script with the --help option for more information.
% \changes{v0.02}{2007/04/05}{
% - added options phoneprefix, routingno, logoaddress\\
% - accountname now optional\\
-% - accountnumber -$>$ accountno\\
+% - accountnumber $\Rightarrow$ accountno\\
% - german and french translations corrected\\
% - indents removed in header fields\\
% - expect printer to have more unprintable border\\
-% - ascriptiontext -$>$ accountnametext for dutch\\
+% - ascriptiontext $\Rightarrow$ accountnametext for dutch\\
% - Interdocument language changes now work\\
% - Vatno, if defined, is reported with accountdata\\
% - country in returnaddress now separated with dot\\
@@ -163,13 +164,14 @@ Execute the inst script with the --help option for more information.
% }
% \changes{v0.08}{2010/08/24}{
% - now compatible with XeLaTeX\\
-% - made independent of babel/polyglossia packages: user must Require those, if needed\\
+% - made independent of babel and polyglossia packages:
+% user must Require those, if needed\\
% - handling of font and encoding now left to the user\\
-% - language names same as in babel (norwegian -$>$ norsk)\\
+% - language names same as in babel (norwegian $\Rightarrow$ norsk)\\
% - option language added\\
-% - option english is synonym for language=UKenglish\\
-% - option american is synonym for language=USenglish\\
-% - language options /only/ change keyword translations\\
+% - option english is synonym for language-UKenglish\\
+% - option american is synonym for language-USenglish\\
+% - language options \textsl{only} change keyword translations\\
% - new translations added: italian, spanish, catalan, serbian\\
% - option fontpackage removed\\
% - option cityzip moves zip behind city\\
@@ -196,19 +198,20 @@ Execute the inst script with the --help option for more information.
% \changes{v1.00}{2013/08/27}{
% This version has incompatibilites with previous versions:\\
% - languages renamed according to ISO 3166\\
-% - options dutch, english, american, german, french now obsolete, use\\
-% language option with argument nl-NL, en-GB, en-US, de-DE, fr-FR\\
+% - options dutch, english, american, german, french now obsolete, use
+% language option with argument nl-NL, en-GB, en-US, de-DE, fr-FR
% respectively.\\
% - localbank option removed, as IBAN is now used for all accounts\\
-% - footer fields appear in the order in which they were defined with\\
+% - footer fields appear in the order in which they were defined with
% the footorder option.\\
-% - the autograph command has been completely redefined and simplified.\\
-% Other changes:\\
+% - the autograph command has been completely redefined and simplified.
+% }
+% \changes{v1.00 continued}{2013/08/28}{
% - documentation improved\\
-% - empty foot fields can be added with extra semicolons in the\\
+% - empty foot fields can be added with extra semicolons in the
% footorder option.\\
% - copyto option added\\
-% - vertical bar in invoices is automatically extended for\\
+% - vertical bar in invoices is automatically extended for
% multiline entries.\\
% - vertical bar in invoices can be suppressed with option novertical\\
% - if class option twoside is set, letters and invoices start recto.\\
@@ -217,6 +220,17 @@ Execute the inst script with the --help option for more information.
% - added pdfauthor and pdfcreator (isodoc) to pdf-comment\\
% - reorganized documentation directory and install script
% }
+% \changes{v1.01}{2013/11/22}{
+% - vattext was missing in all language files\\
+% - aus $\Rightarrow$ von; subjecttext $\Rightarrow$ empty for de-DE\\
+% - closing parts in minipages for better page break\\
+% - more comment on toname, today, language, subject\\
+% - moved contents of isodocsymbols.sty into isodoc.dtx and removed it\\
+% - empty subjectext generates bold subject line (habit in de-DE)\\
+% - page headings forced in one line\\
+% - more instructions for first line of address\\
+% - phone number prefix +nn\textbackslash, instead of +nn{-}-
+% }
% \DoNotIndex{%
% \ , \", \', \@auxout, \AtBeginDocument, \AtEndDocument, \Cbox, \CurrentOption,
% \DeclareOption, \DescribeMacro, \LARGE, \Large, \LoadClass, \ML, \NN,
@@ -246,7 +260,7 @@ Execute the inst script with the --help option for more information.
%
% \maketitle
% \begin{abstract}\noindent
-% The \texttt{isodoc} class can be used for the preparation of letters,
+% The |isodoc| class can be used for the preparation of letters,
% invoices, and, in the future, similar documents.
% Documents are set up with options, thus making the class easily adaptable to
% user's wishes and extensible for other document types.
@@ -259,21 +273,21 @@ Execute the inst script with the --help option for more information.
%
% This class is intended to be used for the preparation of letters and
% invoices. Its starting point was Victor Eijkhout's NTG
-% {\texttt{brief}} class\footnote{CTAN: ntgclass/briefdoc.pdf}, which
-% implements the \textsc{nen 1026} standard. The \texttt{brief} class
+% |brief| class\footnote{CTAN: ntgclass/briefdoc.pdf}, which
+% implements the \textsc{nen 1026} standard. The |brief| class
% does not provide facilities for invoices and it is not easily
% extensible.
%
-% The goal for the \texttt{isodoc} class is to be extensible and easy to
-% use by providing \textsl{key=value} configuration. Furthermore, texts
+% The goal for the |isodoc| class is to be extensible and easy to
+% use by providing |key=value| configuration. Furthermore, texts
% that need to be placed on prescribed positions on the page (there are
-% many such texts) are positioned by using the {\texttt{textpos}}
+% many such texts) are positioned by using the {|textpos|}
% package.\footnote{CTAN: textpos/textpos.pdf} This provides a very
% robust construction of the page.
%
% The class itself contains many general definitions, but variable data, such as
% opening, closing,
-% address and many more, have to be defined using \textsl{key=value}
+% address and many more, have to be defined using |key=value|
% definitions, either in the document or
% in a style file. The latter is indicated for definitions that don't vary on a
% per document basis, such as your company name, address, email address and so
@@ -359,10 +373,16 @@ Execute the inst script with the --help option for more information.
% it-IT, es-ES, ca-ES, nb-NO, sr-RS; the hyphens in these names are
% optional, so you can, for example, also write enGB.\NN
% }
+% The definitions for the languages are in language definition files named
+% |isodoc-|\textsl{xx-YY}|.ldf|, where xx stands for the language, and YY for regional
+% variants. These files contain definitions like:
+%
+% |\gdef\phonetext{telephone}|
+%
% If you are not satisfied with isodoc's choices for your language, you can change those,
-% but \textsl{only after loading the language in the preamble}, i.e. you need to choose
+% but \textsl{only after loading the language in the preamble}, \textsl{i.e.} you need to choose
% your language in a style file or in the |\setupdocument| statement, because otherwise
-% isodoc will overwrite your changes with the definition for the English language.
+% isodoc will overwrite your changes with the definition for the |en-GB| (English) language.
%
% \OPTS{Logo}{Information about the sender is defined here. The logo, by
% default, consists of a large company name on top a rule with, hanging under the rule,
@@ -393,7 +413,7 @@ Execute the inst script with the --help option for more information.
% country. With it, your country will be added to
% return and logo addresses, your zip code will be
% prefixed with your country code, telephone numbers will
-% be prefixed with +31-- (or whatever your \T{areacode}
+% be prefixed with |+31\,| (or whatever your \T{areacode}
% option has been set to) instead of just a 0.\NN
% }
%
@@ -418,7 +438,14 @@ Execute the inst script with the --help option for more information.
% \T{addresswidth = ...}& The address window's width. The default is 70 mm (2 columns).\NN
% \T{to = ...} & The addressee's address. New lines can be introduced with the \C{}\C{}
% command; lines longer than 70 mm will cause extra
-% newlines.\NN\relax
+% newlines. The first part of this address, up to the first |\\|,
+% is considered to be the name of the addressee, and is reported in
+% the headings of page~2 and subsequent pages.\footnote{German users
+% may want to create an address starting with \textsl{Herrn} on the
+% first line and the addressee's name (\textsl{Hansen}) on line~2,
+% and still have \textsl{Herrn Hansen} in the page header of page~2.
+% You can do that by replacing the first |"\\"| with |"\newline\ "|.}
+% \NN\relax
% \T{[no]return} & Do or don't print a return address on top of the
% addressee's address. This is useful if blank window envelopes
% are used. The return address is composed from the
@@ -462,13 +489,17 @@ Execute the inst script with the --help option for more information.
% the default as this would make the date untraceable
% from the document source only. However, you can force
% the use of \C{today} by providing the string |today|
-% for the argument.\NN
+% (\textsl{not} |\today|!) for the argument.\NN
% \T{forcedate = ...} & The restrictions of the |date| option can be overridden by
% using the |forcedate| option instead; you can thus enter
% anything you like for the date.\NN
-% \T{subject = ...} & subject of this document; is placed raggedright under the other
-% fields, over the full textwidth. Use newlines if you want to
-% restrict the width of the text.\NN
+% \T{subject = ...} & subject of this document; is placed under the other fields,
+% and over the full text width, in a two-column table with
+% "Subject:" (or the current language's equivalent) in the first
+% column and the text, raggedright, in the second column.
+% Use newlines if you want to restrict the width of the text.
+% In some languages (|de-DE|) the "Subject:" is omitted and the
+% subject text is typeset in bold face.\NN
% }
%
% \OPTS{Opening and Closing}{A letter is started with an opening -- something
@@ -515,19 +546,26 @@ Execute the inst script with the --help option for more information.
% in the order defined in the \T{footorder} option; available fields, defined with options of
% the same name, are currently \T{website}, \T{phone}, \T{cellphone}, \T{fax} and \T{email}.}{
% \T{[no]footer} & enables or disables printing a page footer; there is room
-% for upto four fields, if you set five fields, the last
+% for up to four fields, if you set five fields, the last
% one will appear in the right margin.\NN
% \T{footorder = ...} & changes the order of footer fields. The argument
-% should be a semicolon (;) separated list of fieldnames.
+% should be a semicolon (;) separated list of field names.
% The default is \T{website;phone;cellphone;email}. Empty fields can
% be inserted with extra |;|'s. \NN
% \T{phoneprefix} & prefix for phone numbers. The default is `0'; will be changed
-% into `+$<$areacode$>$-' if the \T{foreign} option is used.\NN
-% \T{phone = ...} & if defined, and phone occurs in the footorder string, prints `phone'
-% in the page footer, with the contents under it, prefixed with a~0 or,
-% if the \T{foreign} option was used, the areacode (set with the
-% \T{areacode} option.) Telephone numbers should thus be entered
-% without a prefix.\NN
+% into |+nn\,| (where |nn| is the area code) if the \T{foreign} option
+% is used.\NN
+% \T{phone = ...} & if defined\footnote{You \textsl{can} define the footer entries as
+% an empty string, such as |phone=,| or |phone={},|; this may be
+% useful in style files used by more than one user, each with
+% their own phone number. If such a user forgets to use the
+% |phone| key, the phone number will be displayed as
+% \textsl{undefined} on a pink background.}, and phone occurs in
+% the footorder string, prints `phone' in the page footer, with
+% the contents under it, prefixed with a~0 or, if the \T{foreign}
+% option was used, the area code (set with the \T{areacode}
+% option.) Telephone numbers should thus be entered without a
+% prefix.\NN
% \T{cellphone = ...} & same for cellphone...\NN
% \T{fax = ...} & fax...\NN
% \T{email = ...} & email...\NN
@@ -634,14 +672,14 @@ Execute the inst script with the --help option for more information.
% \DescribeMacro{\letter}
% The |\letter| command produces one letter and can be called multiple times. It
% has two arguments. The first argument is optional and must be a list of
-% \textsl{key=value} pairs. The options set here are usually those that vary among
+% |key=value| pairs. The options set here are usually those that vary among
% different letters. The second argument contains the letter's content. This
% content will, depending on the options set, automatically be surrounded by an
% opening, a closing, an autograph, a signature and a remark about any
% enclosures. The first page of each letter will be decorated with a logo,
% the addressee's address, a return address,
% various reference fields, a footer, a folding mark---all as defined by
-% \textsl{key=value} pairs in |\setupdocument| or in the |\letter| command itself.
+% |key=value| pairs in |\setupdocument| or in the |\letter| command itself.
%
% The second an following pages will have a heading, quoting the name of the
% addressee and a page number. Examples of letters can be found in the
@@ -706,7 +744,7 @@ Execute the inst script with the --help option for more information.
% The \C{autograph} command, which will normally appear in a style file,
% serves to define up to eight autographs based on \textsc{pdf},
% \textsc{jpeg} or \textsc{png} images. In the following it is important to
-% know that the closing always remains at the same postion: two
+% know that the closing always remains at the same position: two
% |\baselineskips| under the end of the text body; autographs and the signature
% will be positioned relative to this fixed closing.
%
@@ -766,7 +804,7 @@ Execute the inst script with the --help option for more information.
% with command names used in isodoc. So they have gotten their own names here:
% \bigskip\\
% \begin{tabular}{rrr}\FL
-% command & ascii& result \ML
+% command & ASCII& result \ML
% |\LetterSymbol| & 66 & \LetterSymbol\NN
% |\EuroSymbol| & 164 & \EuroSymbol\NN
% |\EuroSymbol| & 164 & \EuroSymbol\NN
@@ -787,7 +825,7 @@ Execute the inst script with the --help option for more information.
% This source essentially shows three items:
% \begin{compactenum}
% \item the inclusion of a package |letter|; we'll come to that shortly.
-% \item the command |\setupdocument| called with many \textsl{key=value} arguments, each
+% \item the command |\setupdocument| called with many |key=value| arguments, each
% defining one of the texts that go into the letter.
% \item the command |\letter|, enclosing the body of the letter;
% just to give the letter some real body, a small text has
@@ -932,11 +970,11 @@ Execute the inst script with the --help option for more information.
% Several colors can be changed, by using the |\definecolor| command;
% the defaults (all black) are set here:\\
% \DescribeMacro{headcolor}
-% \texttt{headcolor:} color for the header and footer field texts\\
+% |headcolor:| color for the header and footer field texts\\
% \DescribeMacro{headingcolor}
-% \texttt{headingcolor:} color for the fancy headings\\
+% |headingcolor:| color for the fancy headings\\
% \DescribeMacro{markercolor}
-% \texttt{markercolor:} color for the folding marks
+% |markercolor:| color for the folding marks
% \begin{macrocode}
\definecolor{headcolor}{gray}{0}
\definecolor{headingcolor}{gray}{0}
@@ -1155,10 +1193,10 @@ Execute the inst script with the --help option for more information.
% \DescribeMacro{website}
% \DescribeMacro{email}
% Currently the |phone|, |cellphone|, |fax|, |email| and |website| are
-% recognised as possible footer fields. Phone and fax number will be prefixed
+% recognized as possible footer fields. Phone and fax number will be prefixed
% with a 0, unless the |foreign| option was used: then the prefix will be
-% `+nn-', where nn is the areacode. The latter is set with the |areacode|
-% option, which is `Undefined areacode' by default.
+% `+nn\,', where nn is the area code. The latter is set with the |areacode|
+% option, which is `Undefined area code' by default.
% \begin{macrocode}
\define@key{isodoc}{areacode} {\def\areacode{#1}}
\def\areacode{\Undefined{areacode}}
@@ -1219,7 +1257,7 @@ Execute the inst script with the --help option for more information.
% \end{macrocode}
%
% \subsubsection{Header fields}
-% There are four header fields, each one quarter of the textwidth wide.
+% There are four header fields, each one quarter of the |\textwidth| wide.
% Under those, if the subject has been defined, a subject line.
% The header position is 98mm by default, but it can be shifted with the |bodyshift| option.
% \DescribeMacro{ourref}
@@ -1235,7 +1273,7 @@ Execute the inst script with the --help option for more information.
% \end{macrocode}
% \DescribeMacro{date}
% The date must be entered in either of three formats: yyyy-mm-dd, yyyymmdd
-% or the string |today|. Here we check that a correct format is offered and
+% or the string |today| (\textsl{not} |\today|!). Here we check that a correct format is offered and
% that the values for |mm| and |dd| are in the range 1--12 and 1--31 respectively.
% The string |today| sets the date to today's date.
% \begin{macrocode}
@@ -1364,10 +1402,10 @@ Execute the inst script with the --help option for more information.
\define@key{isodoc}{acceptreference} {\def\acceptreference{#1}}
\def\acceptreference{\Undefined{ref}}
% \end{macrocode}
-% For now, we define field positons for the E05 accept form only; when data for
+% For now, we define field positions for the E05 accept form only; when data for
% other forms become available, the content of |\accepttype| will have to be
% checked. Here is a rough layout of the E05 accept form -- the last character
-% tells if the items are tyepset in a Tbox (T) or in a Cbox (C):
+% tells if the items are typeset in a Tbox (T) or in a Cbox (C):
%
% \begin{verbatim}
% description T
@@ -1399,7 +1437,17 @@ Execute the inst script with the --help option for more information.
% \subsection{User Macros}
% Some symbols taken from marvosym.sty:
% \begin{macrocode}
-\RequirePackage{isodocsymbols}
+\newcommand{\@isodocsym}{%
+ \fontfamily{mvs}\fontencoding{U}%
+ \fontseries{m}\fontshape{n}\selectfont
+}
+\def\EuroSymbol {{\@isodocsym\char164}}
+\def\EUROSymbol {{\@isodocsym\char99 }}
+\def\LetterSymbol {{\@isodocsym\char66 }}
+\def\EmailSymbol {{\@isodocsym\char107}}
+\def\PhoneSymbol {{\@isodocsym\char84 }}
+\def\MobileSymbol {{\@isodocsym\char72 }}
+\let\EUR\EuroSymbol
% \end{macrocode}
% The autograph is either just a newline, or a vertical spacing where you can
% put your autograph manually, or a graphic. In the latter case, is must have
@@ -1466,7 +1514,7 @@ Execute the inst script with the --help option for more information.
% The logo, by default, consists of a large company name on top a rule,
% with a contact person's name (probably your own name) and address
% hanging under the rule.
-% If the osf-txfonts package is used, oldstyle figures are disabled here.
+% If the osf-txfonts package is used, old style figures are disabled here.
% \DescribeMacro{\logo}
% \begin{macrocode}
\newcommand{\zippedcity}{\ifcityzip\city\ \prezip\ \zip\else\prezip\ \zip\ \city\fi}
@@ -1512,9 +1560,9 @@ Execute the inst script with the --help option for more information.
% \begin{compactenum}
% \item yyyymmdd
% \item yyyy-mm-dd
-% \item today % i.e. the string "today"
+% \item today % i.e. the string "today" (\textsl{not} |\today|!)
% \end{compactenum}
-% The resulting |\date| format depends on the language option, i.e.,
+% The resulting |\date| format depends on the language option, \textsl{i.e.},
% the month is in that language, and the formatting is according to the
% usage in the language. The value for dd may be 00; in that case the day
% will not be reported. Some examples, assuming language=en-GB:
@@ -1691,7 +1739,7 @@ Execute the inst script with the --help option for more information.
}
% \end{macrocode}
% The counter |\lettercount| is used to construct a label on the last
-% page of each letter/invoice of this document; it wil be set to
+% page of each letter/invoice of this document; it will be set to
% \texttt{LastPageOf\textsl{n}}, where \textsl{n} is the letter
% number: 1, 2, 3, ... This allows for page headings saying ``Page n
% of m.'' This label is automatically added at the end of each letter.
@@ -1700,7 +1748,7 @@ Execute the inst script with the --help option for more information.
% \end{macrocode}
% \DescribeMacro{\invoice}
% |\invoice| prints an invoice. The first argument is optional, and may
-% contain the same \textsl{key=value} statement as |\setupdocument|. This is
+% contain the same |key=value| statement as |\setupdocument|. This is
% useful if the document contains more than one invoice for different
% addressees.
%
@@ -1729,7 +1777,7 @@ Execute the inst script with the --help option for more information.
\clearpage{\pagestyle{empty}\cleardoublepage}
\setcounter{section}{0}
\setkeys{isodoc}{#1}
- \def\isodoc@lead{\ifforeign+\areacode-\else\phoneprefix\fi}
+ \def\isodoc@lead{\ifforeign+\areacode\,\else\phoneprefix\fi}
\ifx\isodoc@phone\empty\else\def\phone{\isodoc@lead\isodoc@phone}\fi
\ifx\isodoc@cellphone\empty\else\def\cellphone{\isodoc@lead\isodoc@cellphone}\fi
\ifx\isodoc@fax\empty\else\def\fax{\isodoc@lead\isodoc@fax}\fi
@@ -1760,7 +1808,7 @@ Execute the inst script with the --help option for more information.
\totext: \toname\ (\date)}
\else
\fancyhead[L]{\color{headingcolor}%
- \totext: \toname\ (\date)}
+ \mbox{\totext: \toname\ (\date)}}
\fancyhead[R]{\color{headingcolor}%
\pagetext\ \thepage\ \oftext{}
\begin{NoHyper}\pageref{LastPageOf\thelettercount}\end{NoHyper}}
@@ -1805,9 +1853,11 @@ Execute the inst script with the --help option for more information.
}
\ifx\subject\empty\else%
\Tbox{35}{\subjectpos}{140}{\noindent
- \begin{tabularx}{\hsize}{@{}l>{\raggedright}X@{}}
- \@hft\subjecttext&\subject
- \end{tabularx}
+ \ifx\subjecttext\empty{\bfseries\subject}\else%
+ \begin{tabularx}{\hsize}{@{}l>{\raggedright}X@{}}
+ \@hft\subjecttext&\subject
+ \end{tabularx}
+ \fi
}
\fi
\else
@@ -1839,36 +1889,43 @@ Execute the inst script with the --help option for more information.
\vspace{\textskip mm}
\thispagestyle{empty}
\noindent\ignorespaces#2
- {\parindent=0pt\parskip=\baselineskip
- \ifclosing
- \ifcase\autographversion
- \par\closing\closingcomma\\\signature % 0: closing on the next line
- \or\par\closing\closingcomma\\[\closingskip]\signature % 1: whiteskip
- \or\autographA
- \or\autographB
- \or\autographC
- \or\autographD
- \or\autographE
- \or\autographF
- \or\autographG
- \or\autographH
- \else
- \par\Undefined{autograph: \autographversion}\\
- \fi
- \fi
- \ifx\enclosures\empty\else
- \vfill
- \setbox1=\vbox{\enclosures}%
- \textbf{\ifdim\ht1>\baselineskip\enclosurestext\else\enclosuretext\fi}%
- \\\enclosures
- \fi
- \ifx\copyto\empty\else
- \ifx\enclosures\empty\vfill\else\\[2ex]\fi
- \setbox1=\vbox{\copyto}%
- \textbf{\copytotext}%
- \\\copyto
- \fi
- }
+ \ifclosing
+ \par\noindent\begin{minipage}[t]{\hsize}
+ \parindent=0pt\parskip=\baselineskip
+ \ifcase\autographversion
+ \par\closing\closingcomma\\\signature % 0: closing on the next line
+ \or\par\closing\closingcomma\\[\closingskip]\signature % 1: whiteskip
+ \or\autographA
+ \or\autographB
+ \or\autographC
+ \or\autographD
+ \or\autographE
+ \or\autographF
+ \or\autographG
+ \or\autographH
+ \else
+ \par\Undefined{autograph: \autographversion}\\
+ \fi
+ \end{minipage}
+ \fi
+ \ifx\enclosures\empty\else
+ \par\noindent\begin{minipage}[t]{\hsize}
+ \parindent=0pt\parskip=\baselineskip
+ \vfill
+ \setbox1=\vbox{\enclosures}%
+ \textbf{\ifdim\ht1>\baselineskip\enclosurestext\else\enclosuretext\fi}%
+ \\\enclosures
+ \end{minipage}
+ \fi
+ \ifx\copyto\empty\else
+ \par\noindent\begin{minipage}[t]{\hsize}
+ \parindent=0pt\parskip=\baselineskip
+ \ifx\enclosures\empty\vfill\else\\[2ex]\fi
+ \setbox1=\vbox{\copyto}%
+ \textbf{\copytotext}%
+ \\\copyto
+ \end{minipage}
+ \fi
\label{LastPageOf\thelettercount}
}}
% \end{macrocode}