diff options
author | Norbert Preining <preining@logic.at> | 2014-03-03 01:28:16 +0000 |
---|---|---|
committer | Norbert Preining <preining@logic.at> | 2014-03-03 01:28:16 +0000 |
commit | 12d58bf20f1d0e51ef49ef952b676251137e8d4e (patch) | |
tree | b6166c7257ad469aa33668b536a3915a3cabfb0d /Master | |
parent | 766d9bbc3ad2de6c916ce68496922fe993550974 (diff) |
isodoc (3Mar)
git-svn-id: svn://tug.org/texlive/trunk@33075 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r-- | Master/texmf-dist/doc/latex/isodoc/README | 8 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/isodoc/invoice/invoice.sty | 5 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/isodoc/isodoc.pdf | bin | 1348777 -> 1351702 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/isodoc/letter/letter.sty | 29 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/isodoc/letter/letter.tex | 5 | ||||
-rwxr-xr-x | Master/texmf-dist/doc/latex/isodoc/listkeys | 50 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/isodoc/isodoc.dtx | 210 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/isodoc/isodoc.cls | 79 |
8 files changed, 228 insertions, 158 deletions
diff --git a/Master/texmf-dist/doc/latex/isodoc/README b/Master/texmf-dist/doc/latex/isodoc/README index f420fe10a06..870542fba6d 100644 --- a/Master/texmf-dist/doc/latex/isodoc/README +++ b/Master/texmf-dist/doc/latex/isodoc/README @@ -20,7 +20,7 @@ experiment with. Installation: Execute the inst script with the --help option for more information. -Changes in version 1.03: - - added logo and nologo options - - changed definitions for fancy headings and footings to allow for easy - adaptation in style files. +Changes in version 1.04: + - footers and copyto did not work correctly. + - closingskip option removed; use dimen signatureskip in style file. + - some skips now have own dimen for easier adaptation in style file. diff --git a/Master/texmf-dist/doc/latex/isodoc/invoice/invoice.sty b/Master/texmf-dist/doc/latex/isodoc/invoice/invoice.sty index a28f36b3cec..7fa98e875b5 100644 --- a/Master/texmf-dist/doc/latex/isodoc/invoice/invoice.sty +++ b/Master/texmf-dist/doc/latex/isodoc/invoice/invoice.sty @@ -11,14 +11,11 @@ accountno = 304046221, areacode = 31, bic = rabonl2u, city = Deil, -closing = Met vriendelijke groet, -closingskip = 4\baselineskip, company = Wybo Dekker, country = The Netherlands, countrycode = NL, language = nl-NL, email = wybo@xs4all.nl, -fax = 842\,234393, fold3, footer, iban = nl94rabo0304046221, @@ -26,8 +23,6 @@ opening = L.S., phone = 87\,8748496, % phone numbers without leading 0: cellphone = 6\,3033\,3955, return, -returnaddress = W.H.\ Dekker\\Deilsedijk 60\\4158 CH Deil, -signature = Wybo Dekker, street = Deilsedijk 60, website = www.xs4all.nl, who = Wybo Dekker, diff --git a/Master/texmf-dist/doc/latex/isodoc/isodoc.pdf b/Master/texmf-dist/doc/latex/isodoc/isodoc.pdf Binary files differindex 0d1b552c5b8..64c880d9166 100644 --- a/Master/texmf-dist/doc/latex/isodoc/isodoc.pdf +++ b/Master/texmf-dist/doc/latex/isodoc/isodoc.pdf diff --git a/Master/texmf-dist/doc/latex/isodoc/letter/letter.sty b/Master/texmf-dist/doc/latex/isodoc/letter/letter.sty index 778e4b0a1f9..f70540db96f 100644 --- a/Master/texmf-dist/doc/latex/isodoc/letter/letter.sty +++ b/Master/texmf-dist/doc/latex/isodoc/letter/letter.sty @@ -2,31 +2,28 @@ \ProvidesPackage{letter} [2010/08/21 v1.1 Letter Company style file for isodoc] \RequirePackage{pxfonts} +\definecolor{headcolor}{gray}{.3} +\definecolor{headingcolor}{gray}{.3} +\encldowntrue \setupdocument{return,footer,fold3, + areacode = 31, autograph = 0, - company = The Letter Company, - returnaddress = Letter Cy\\Deilsedijk 60\\Deil, - who = Wybo Dekker, - street = Deilsedijk 60, +% cellphone = 6\,15492070, city = Deil, - zip = 4158 CH, + closing = Best regards, + company = The Letter Company, country = The Netherlands, countrycode = NL, - areacode = 31, - phone = {87\,8748496}, - cellphone = {6\,15492070}, - fax = {}, - website = www.xs4all.nl, email = wybo@xs4all.nl, - accountno = {304046221}, - iban = nl61pstb0006238747, - bic = pstbnl21, - vatno = 28750482B01, - chamber = 11023220, opening = L.S., - closing = Best regards, + phone = 87\,8748496, + returnaddress = Letter Cy\\Deilsedijk 60\\Deil, signature = W.H.~Dekker, + street = Deilsedijk 60, + website = www.xs4all.nl, + who = Wybo Dekker, + zip = 4158 CH, } \autograph{2}{35mm}{34}{83}{28}{signmarked} \endinput diff --git a/Master/texmf-dist/doc/latex/isodoc/letter/letter.tex b/Master/texmf-dist/doc/latex/isodoc/letter/letter.tex index b92972fb97c..ae1f7e57b30 100644 --- a/Master/texmf-dist/doc/latex/isodoc/letter/letter.tex +++ b/Master/texmf-dist/doc/latex/isodoc/letter/letter.tex @@ -1,6 +1,5 @@ \documentclass{isodoc} \usepackage{letter} -\definecolor{headcolor}{gray}{.5} \setupdocument{ to = {TeX Users Group\\ 1466 NW Naito Parkway, Suite 3141\\ @@ -9,13 +8,13 @@ }, ourref = 1029, enclosures = isodoc documentation\\LPPL documentation, + copyto = {Dutch TeX User group, NTG}, subject = An example letter using the isodoc class -- with an extra long subject extending over two lines., autograph,foreign } - \begin{document} -\letter[language=it-IT]{ +\letter[language=itIT]{ This letter was composed using the \LaTeX{} isodoc class. \par\input{thuan} % for some body } diff --git a/Master/texmf-dist/doc/latex/isodoc/listkeys b/Master/texmf-dist/doc/latex/isodoc/listkeys new file mode 100755 index 00000000000..cd2e9336fd2 --- /dev/null +++ b/Master/texmf-dist/doc/latex/isodoc/listkeys @@ -0,0 +1,50 @@ +#!/bin/bash +#shopt -s extglob + +# after the addition of new options, two regions of the documentation in +# isodoc.dtx need to be updated: +# 1. the body of the definition of \showkeys +# listkeys will print that body with the argument `show' +# 2. The body of the tabular (in the section `Commands'), which shows +# the options having a corresponding command. +# listkeys will print that body with the argument `defs' +# +# An easy way to replace the data in isodoc.dtx is, using the vim editor: +# 1. select the lines (the contents of \def\showkeys, say) with V and then +# 2. type :!listkeys show + + +usage() { echo "Usage: listkeys defs|show"; exit; } +[[ -z $1 ]] && usage + +type=$1 +[[ $type =~ ^(defs|show)$ ]] || usage + +minipage='^(acceptdesc|copyto|enclosures|logoaddres|signature|returnaddress)$' +undef='^(accountname|accountno|bic|iban|routingno|vatno)$' +# find keys which have a corresponding command: +a=($( + while read -r x; do + [[ $x =~ define@key ]] || continue + # \define@key{isodoc}{closing} {\def\closing{#1}} + re='\\define@key\{isodoc\}\{([[:alpha:]]+)\}.*\\def\\\1\{' + # ----word---- ^^-same word + [[ $x =~ $re ]] || continue + echo ${BASH_REMATCH[1]} + done<isodoc.dtx |sort +)) + +if [[ $type == defs ]]; then + for i in ${a[@]}; do + if [[ $i =~ $minipage ]]; then + printf "%20s & \\%s\\NN\n" $i "@isodocmp{$i}" + elif [[ $i =~ $undef ]]; then + printf "%20s & \\%s\\NN\n" $i "@isodocun{$i}" + else + printf "%20s & \\%s\\NN\n" $i $i + fi + done +else + for i in ${a[@]}; do echo $i; done | + cols -5 --squeeze --sep=' & ' --suf='\NN' --pre='% ' +fi diff --git a/Master/texmf-dist/source/latex/isodoc/isodoc.dtx b/Master/texmf-dist/source/latex/isodoc/isodoc.dtx index 4049de35da6..338986adaf0 100644 --- a/Master/texmf-dist/source/latex/isodoc/isodoc.dtx +++ b/Master/texmf-dist/source/latex/isodoc/isodoc.dtx @@ -35,7 +35,7 @@ Execute the inst script with the --help option for more information. %<class>\NeedsTeXFormat{LaTeX2e}[1999/12/01] %<class>\ProvidesClass{isodoc}% %<*class> - [2014/02/01 v1.03 isodoc class for letters and invoices] + [2014/02/27 v1.04 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!}{} @@ -55,8 +55,7 @@ Execute the inst script with the --help option for more information. pdftitle = The isodoc class, pdfauthor = Wybo Dekker, pdfsubject = {Preparation of letters and invoices}, - pdfkeywords = { - letter, + pdfkeywords = {letter, invoice, key=value options, NEN1026 @@ -64,10 +63,6 @@ Execute the inst script with the --help option for more information. bookmarksopen, hidelinks } - -%\parindent0pt\parskip1ex -%\PageIndex -%\IndexPrologue{\section*{Index}} \newcommand{\FIG}[3]{ % pdfname label caption \ctable[label={#2},caption={#3},figure,botcap,framerule=.5pt]{@{}c@{}}{}{% \includegraphics[width=\textwidth]{#1} @@ -257,25 +252,35 @@ Execute the inst script with the --help option for more information. % - changed definitions for fancy headings and footings to allow for easy % adaptation in style files. % } +% \changes{v1.04}{2014/02/17}{ +% - footers and copyto did not work correctly.\\ +% - closingskip option removed; use dimen signatureskip in style file.\\ +% - some skips now have own dimen for easier adaptation in style file. +% } % \DoNotIndex{% -% \ , \", \', \@auxout, \AtBeginDocument, \AtEndDocument, \Cbox, \CurrentOption, -% \DeclareOption, \DescribeMacro, \LARGE, \Large, \LoadClass, \ML, \NN, -% \PassOptionsToClass, \ProcessOptions, \RequirePackage, \TPGrid, \Tbox, \\, \^, -% \`, \aa, \addtocounter, \advance, \barsep, \baselineskip, \begin, \bfseries, +% \ , \", \', \@auxout, \AtBeginDocument, \AtEndDocument, \Cbox, +% \CurrentOption, \DeclareOption, \DescribeMacro, \ForEachX, \IfInteger, +% \IfStrEq, \LARGE, \Large, \LoadClass, \ML, \NN, \PassOptionsToClass, +% \ProcessOptions, \RequirePackage, \StrLeft, \StrMid, \StrRight, +% \StrSubstitute, \TPGrid, \Tbox, \Undefined, \\, \^, \`, \aa, +% \addtocounter, \advance, \barsep, \baselineskip, \begin, \bfseries, % \bgroup, \clearpage, \cmidrule, \colorbox, \csname, \def, \define@key, % \definecolor, \egroup, \else, \empty, \end, \endcsname, \enspace, -% \expandafter, \fancyhead, \fancyhf, \fi, \filedat, \fileversion, -% \footnotesize, \geometry, \hfill, \hsize, \hspace, \ht, \if@twoside, -% \ifcase, \ifdim, \ifnum, \ifx, \ignorespaces, \immediate, \includegraphics, -% \lastpage@putlabel, \let, \long, \multicolumn, \newcommand, \newcount, -% \newdimen, \newenvironment, \newif, \newlabel, \noindent, \number, \o, \or, -% \pageref, \pagestyle, \paperheight, \paperwidth, \par, \parindent, \parskip, -% \pdfinfo, \qquad, \quad, \raggedright, \raisebox, \relax, -% \rightskip, \rule, \scriptsize, \scshape, \selectlanguage, \setbox, -% \setcounter, \setkeys, \sffamily, \space, \string, \tbfigures, \textbf, -% \textbullet, \thepage, \thispagestyle, \undefined, \unskip, \usepackage, -% \vbox, \vfill, \vspace, \write -% } +% \expandafter, \fancyfoot, \fancyhead, \fancyhf, \fboxsep, \fi, \filedat, +% \fileversion, \fill, \fontencoding, \fontfamily, \fontseries, \fontshape, +% \footnotesize, \gdef, \geometry, \hbox, \hfill, \hline, \hsize, \hspace, +% \ht, \hypersetup, \if@twoside, \ifcase, \ifdim, \ifnum, \ifx, +% \ignorespaces, \immediate, \includegraphics, \label, \lastpage@putlabel, +% \lccode, \let, \long, \lowercase, \mbox, \multicolumn, \newcommand, +% \newcount, \newcounter, \newdimen, \newenvironment, \newfont, \newif, +% \newlabel, \noindent, \number, \o, \or, \pageref, \pagestyle, +% \paperheight, \paperwidth, \par, \parindent, \parskip, \pdfinfo, \qquad, +% \quad, \raggedright, \raisebox, \relax, \rightskip, \rule, \sbox, +% \scriptsize, \scshape, \selectfont, \selectlanguage, \setbox, +% \setcounter, \setkeys, \setlength, \sffamily, \space, \string, +% \tbfigures, \textbf, \textbullet, \textsf, \thepage, \thislevelitem, +% \thispagestyle, \undefined, \unskip, \usepackage, \value, \vbox, \vfill, +% \vskip, \vspace, \wd, \write, \z@, % } % % \GetFileInfo{isodoc.dtx} % @@ -493,6 +498,7 @@ Execute the inst script with the --help option for more information. % bullets.\NN % } % +% \newpage % \OPTS{Header fields}{Under the address window, a header is printed. The % page is vertically divided in six columns, one each for the left and right % margins, and four which, in the header, @@ -543,34 +549,40 @@ Execute the inst script with the --help option for more information. % \T{closingcomma = ...}& by default, the closing phrase is followed by a comma, but you % can change that here.\NN % \T{signature = ...} & Betty\NN -% \T{autograph = ...} & \begin{minipage}[t]{\hsize} +% \T{autograph = ...} & \parbox[t]{\hsize}{% % This keyword can have one of the 10 values 0--9:\\[-\baselineskip] % \begin{compactitem} % \item [0:] no autograph; the \T{signature} appears right under -% the \T{closing}. This is the default if the \T{autograph} option -% is not used (using it without a value is equivalent to -% \T{autograph=2}). +% the \T{closing}. This is the default if the \T{autograph} option +% is not used (using it without a value is equivalent to +% \T{autograph=2}). % \item [1:] generates extra whitespace between -% \T{signature} and \T{closing} for a hand-written -% autograph. Change with the \T{closingskip} key. +% \T{signature} and \T{closing} for a hand-written +% autograph. The amount of whitespace is +% |\signatureskip|.\footnote{Change its value preferably in +% a style file.} % \item [2--9:] inserts one of eight autograph images -% which, with the \C{autograph} command, -% may have been defined in the style file.\\\mbox{} +% which, with the \C{autograph} command, +% may have been defined in the style file. % \end{compactitem} -% \end{minipage} +% } % \NN % \T{enclosures = ...} & This keyword can be used to add a note, at the end of % the document, which starts with \textbf{Enclosure:} % followed by the value of the keyword. Multiple % enclosures can be separated with \C{}\C{} commands. If % those are found, the starting text will be -% \textbf{Enclosures:}.\NN -% \T{copyto = ...} & This keyword can be used to add a note, at the end of -% the document, which starts with \textbf{Copy to:} -% followed by the value of the keyword. Multiple -% entries can be separated with \C{}\C{} commands.\NN -% \T{closingskip = ...} & white space between signature and closing. The -% default is \T{2}\C{baselineskip}.\NN +% \textbf{Enclosures:}. It appears under the closing, with a white +% line in between.\footnote{The whitespace in between can be influenced +% (preferable in a style file) with the dimen |\enclosureskip|, default +% |\baselineskip|. Alternatively, set |\encldowntrue| to move the +% enclosures to the bottom of the page.}\NN +% \T{copyto = ...} & This keyword can be used to add a note, at the end of the document, +% which starts with \textbf{Copy to:} followed by the value of the keyword. +% Multiple entries can be separated with \C{}\C{} commands. +% It appears under the enclosures or, if those are absent, the closing, +% with a white line in between.\footnote{The whitespace in between can +% be influenced with the dimen |\copytoskip|, default |\baselineskip|}\NN % } % % \OPTS{Footer fields}{If the \T{footer} option is used, up to five footer fields are shown @@ -621,6 +633,7 @@ Execute the inst script with the --help option for more information. % from the top of the paper.\NN % } % +% \newpage % \OPTS{Payment data}{In invoices you probably want to make clear where you want % your debtor to transfer his money to. You can do so by calling % the \C{accountdata} command, which generates a little table containing these data. @@ -816,7 +829,6 @@ Execute the inst script with the --help option for more information. % the image, expressed as an integer percentage of the image % \textsl{height}. % \end{compactenum} -% \FIG{examples/letter/letter.pdf}{letter1}{Minimal letter example} % % \DescribeMacro{\logo} % The |\logo| command is internally used to define the default logo; you can @@ -847,7 +859,9 @@ Execute the inst script with the --help option for more information. % \bigskip\\ % If you need other symbols, then please email me. % +% \newpage % \section{Usage: letters} +% \FIG{examples/letter/letter.pdf}{letter1}{Minimal letter example} % % Usage of the class is best explained by example. % \subsection{A simple letter} @@ -869,7 +883,7 @@ Execute the inst script with the --help option for more information. % is an example of such a style file: % \verbinput{examples/letter/letter.sty} % So in the style file, too, |\setupdocument| is used to register -% information that will common to almost all of my letters. The +% information that will be common to almost all of my letters. The % |\autograph| command sets up an autograph, based on an image file. Apart % from the code shown here, a style file can contain definitions for more % autographs, and a definition for a logo. Without the latter, a default logo is @@ -877,36 +891,33 @@ Execute the inst script with the --help option for more information. % and |signature| in the style file, and that I did not override those in the % letter's source. % -% \FIG{examples/logoletter/logo1.pdf}{logo1}{Long letter example with a non-standard logo, page 1} -% \FIG{examples/logoletter/logo2.pdf}{logo2}{Long letter example with a non-standard logo, page 2} -% % The letter source example shown above, in combination with this style example, % compiles to the letter shown in figure~\ref{letter1}. % This example illustrates some aspects of isodoc: % \begin{compactitem} % \item At the top, you see the default letterhead (logo). You can create % your own logo by redefining the |\logo| command. - +% % \item Under it is the address. It has a return address in script sized % sans serif boldface over it, because the |return| key has been used. A % return address is useful if you send your letters in a standard window % envelope. The positioning of the address is done in the style file, using % the |addresscenter| and |leftaddress| or |rightaddress| keywords. - +% % \item The paper is vertically divided in six equally wide columns. The % outer two columns are the left and right margins, the second to fifth % columns contain header and footer fields. - +% % \item The ``Your reference'' and ``Our reference'' fields have not been % set (with the |yourref| and |ourref| keys) and therefore stay empty by % default, the date field has also not been set, but it should be. % Therefore, the default value is ``Undefined date'', and a warning is % issued by a pink background. - +% % \item A folding mark has been printed in the extreme right margin, such % that on folding the paper along it, it will correctly fit in a 220 x 110 % mm envelope; this has been achieved by using the |fold3| key. - +% % \item In between closing (\textsl{Best regards,}) and signature % (\textsl{W.H.~Dekker}) an autograph has been placed. This was done by % setting the option |autograph|, which has a default value of 2. @@ -914,15 +925,20 @@ Execute the inst script with the --help option for more information. % for white space where an autograph can be placed with a pen after % printing, or one of the values |2-9|, which may have been associated with % other autograph images. In this case, I have used an autograph image in -% which I have drawn the boundary box and the \textsl{outdent}, -% \textsl{closing}, and \textsl{signature} positions defined in the -% |\autograph| command (see the section \textsl{Commands}) with red lines. +% which I have drawn the boundary box and the \textsl{height} (argument 2), +% \textsl{closing} (3), \textsl{signature} (4), and \textsl{outdent} (5) +% positions defined in the |\autograph| command (see the section +% \textsl{Commands}) with red lines. +% % \item The bottom of the letter has (up to) four fields with contact % information. This is useful if your logo does not show that % information. If it does, you can omit these fields by using the % |nofooter| key, or by not using the |footer| key, depending on the % default set in the style file. - +% +% \item Note that the footer fields include a cellphone field, but the +% cellphone number has not been defined, which results in an error message. +% % \end{compactitem} % % \subsection{Multiple letters, redefined logo} @@ -933,7 +949,8 @@ Execute the inst script with the --help option for more information. % (|logoletter.sty|): % \verbinput{examples/logoletter/logoletter.sty} % \label{logoredef} -% \FIG{examples/invoice/invoice.pdf}{invoice}{Invoice example} +% \FIG{examples/logoletter/logo1.pdf}{logo1}{Long letter example with a non-standard logo, page 1} +% \FIG{examples/logoletter/logo2.pdf}{logo2}{Long letter example with a non-standard logo, page 2} % The letter source does not use the |autograph| key, so the default value of % |2| is used; we write it in Dutch and use % a larger text, just to see what happens if more than one page is generated: @@ -947,6 +964,7 @@ Execute the inst script with the --help option for more information. % % \section{Usage: invoices} % \subsection{A simple invoice} +% \FIG{examples/invoice/invoice.pdf}{invoice}{Invoice example} % \FIG{examples/accept/accept.pdf}{accept}{Invoice example with accept form} % % Invoices (can) have the same structure as letters, except that the |\opening| @@ -1024,7 +1042,7 @@ Execute the inst script with the --help option for more information. % weren't: % \begin{macrocode} \definecolor{isodocpink}{rgb}{1,.7,.7} -\def\Undefined#1{\fboxsep1pt\colorbox{isodocpink}{Undefined #1}} +\def\Undefined#1{\fboxsep1pt\colorbox{isodocpink}{\strut Undefined #1}} % \end{macrocode} % A small sans serif font is used for header and footer field names and the % sender's address information. The idea is that this is used for all @@ -1052,7 +1070,6 @@ Execute the inst script with the --help option for more information. \define@key{isodoc}{vertical}[\verticaltrue]{\verticaltrue} \define@key{isodoc}{novertical}[\verticaltrue]{\verticalfalse} \newif\ifvertical\verticaltrue - % \end{macrocode} % Several items in the letter/invoice will be different in documents that are to % be sent abroad; this is set with the |foreign| option, false by default: @@ -1214,7 +1231,7 @@ Execute the inst script with the --help option for more information. % The default is the have no footer. % \begin{macrocode} \define@key{isodoc}{footorder} {\def\@footorder{#1}} - \def\@footorder{website;@phone;@cellphone;email} + \def\@footorder{website;phone;cellphone;email} \define@key{isodoc}{footer} []{\footertrue} \newif\iffooter\footerfalse \define@key{isodoc}{nofooter}[]{\footerfalse} @@ -1239,17 +1256,19 @@ Execute the inst script with the --help option for more information. \def\phoneprefix{0} \define@key{isodoc}{phone} {\def\phone{#1}} \def\phone{} - \def\@phone{\Undefined{@phone}} + \def\@phone{\Undefined{phone}} \define@key{isodoc}{cellphone} {\def\cellphone{#1}} \def\cellphone{} - \def\@cellphone{\Undefined{@cellphone}} + \def\@cellphone{\Undefined{cellphone}} \define@key{isodoc}{fax} {\def\fax{#1}} \def\fax{} - \def\@fax{\Undefined{@fax}} + \def\@fax{\Undefined{fax}} \define@key{isodoc}{website} {\def\website{#1}} - \def\website{\Undefined{website}} + \def\website{} + \def\@website{\Undefined{website}} \define@key{isodoc}{email} {\def\email{#1}} - \def\email{\Undefined{email}} + \def\email{} + \def\@email{\Undefined{email}} % \end{macrocode} % \subsubsection{Folding mark} % \DescribeMacro{nofold} @@ -1340,18 +1359,27 @@ Execute the inst script with the --help option for more information. % \end{macrocode} % \subsubsection{Closing, autograph, signature} % \DescribeMacro{closing} -% \DescribeMacro{closingskip} % The closing, something like `Best regards', is set by the |closing| option; -% the default is `Undefined closing'. It will be preceded by a vertical skip, -% which can be set by the |closingskip| option, which is |2\baselineskip| by -% default: +% the default is `Undefined closing'. It will be separated from the text with whitespace, +% which can be changed, preferably in a style file, with the |closingskip| length, which is +% |2\baselineskip| by default. % \begin{macrocode} \define@key{isodoc}{closing} {\def\closing{#1}} \def\closing{\Undefined{closing}} \define@key{isodoc}{closingcomma}{\def\@closingcomma{#1}} \def\@closingcomma{,} -\define@key{isodoc}{closingskip}{\closingskip=#1} - \newdimen\closingskip\closingskip=2\baselineskip +\define@key{isodoc}{closingskip}{\ClassError{isodoc}{The closingskip option has been removed + in version 1.04; instead set the signatureskip length, + preferably in a style file}} +% \end{macrocode} +% Some skips/booleans defined here to make it easier to redefine them in a style file. +% They precede the closing, copyto and enclosers and have no corresponding options (yet). +% \begin{macrocode} + \newdimen\closingskip\closingskip=\baselineskip + \newdimen\signatureskip\signatureskip=2\baselineskip + \newdimen\copytoskip\copytoskip=\baselineskip + \newdimen\enclosureskip\enclosureskip=\baselineskip + \newif\ifencldown\encldownfalse % \end{macrocode} % \DescribeMacro{autograph} % The autograph is either just a newline, or a vertical spacing where you can @@ -1827,9 +1855,11 @@ Execute the inst script with the --help option for more information. \ifx\phone \empty\else\def\@phone {\isodoc@lead\phone} \fi \ifx\cellphone\empty\else\def\@cellphone{\isodoc@lead\cellphone}\fi \ifx\fax \empty\else\def\@fax {\isodoc@lead\fax} \fi + \ifx\website \empty\else\def\@website {\website} \fi + \ifx\email \empty\else\def\@email {\email} \fi % \end{macrocode} % By now, a language should have been chosen; if not, issue a warning -% and set the language to the default: -n-GB +% and set the language to the default: -en-GB % \begin{macrocode} \ifx\yourlettertext\undefined% \ClassWarning{isodoc}{You did not use the language option; using the default: en-GB} @@ -1915,11 +1945,11 @@ Execute the inst script with the --help option for more information. \footcount=35 \iffooter \ForEachX{;}{% - \setbox0=\hbox{\csname\thislevelitem\endcsname} + \setbox0=\hbox{\csname @\thislevelitem\endcsname} \ifdim\wd0=0pt\else \Tbox{\footcount}{\footerpos}{35}{\noindent {\@hft\csname\thislevelitem text\endcsname}\\ - \csname\thislevelitem\endcsname + \csname @\thislevelitem\endcsname } \fi \advance\footcount35 @@ -1935,12 +1965,12 @@ Execute the inst script with the --help option for more information. \vspace{\textskip mm} \thispagestyle{empty} \noindent\ignorespaces#2 - \ifclosing - \par\noindent\begin{minipage}[t]{\hsize} - \parindent=0pt\parskip=\baselineskip + \ifclosing{\\[\closingskip] + \parindent=0pt\parskip=\baselineskip\noindent + \begin{minipage}[t]{\hsize} \ifcase\autographversion \par\closing\@closingcomma\\\signature % 0: closing on the next line - \or\par\closing\@closingcomma\\[\closingskip]\signature % 1: whiteskip + \or\par\closing\@closingcomma\\[\signatureskip]\signature % 1: whiteskip \or\autographA \or\autographB \or\autographC @@ -1953,25 +1983,23 @@ Execute the inst script with the --help option for more information. \par\Undefined{autograph: \autographversion}\\ \fi \end{minipage} - \fi - \ifx\enclosures\empty\else - \par\noindent\begin{minipage}[t]{\hsize} - \parindent=0pt\parskip=\baselineskip - \vfill + }\fi + \ifencldown\vspace*{\fill}\fi + \ifx\enclosures\empty\else{\\[\enclosureskip] + \noindent + \begin{minipage}[t]{\hsize} \setbox1=\vbox{\enclosures}% - \textbf{\ifdim\ht1>\baselineskip\enclosurestext\else\enclosuretext\fi}% - \\\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 + }\fi + \ifx\copyto\empty\else{\\[\copytoskip] + \noindent + \begin{minipage}[t]{\hsize} + \textbf{\copytotext}\\ + \copyto \end{minipage} - \fi + }\fi \label{LastPageOf\thelettercount} }} % \end{macrocode} diff --git a/Master/texmf-dist/tex/latex/isodoc/isodoc.cls b/Master/texmf-dist/tex/latex/isodoc/isodoc.cls index 870e1def5fd..60eb891b281 100644 --- a/Master/texmf-dist/tex/latex/isodoc/isodoc.cls +++ b/Master/texmf-dist/tex/latex/isodoc/isodoc.cls @@ -22,16 +22,10 @@ %% \NeedsTeXFormat{LaTeX2e}[1999/12/01] \ProvidesClass{isodoc}% - [2014/02/01 v1.03 isodoc class for letters and invoices] + [2014/02/27 v1.04 isodoc class for letters and invoices] \ifx\pdfoutput\undefined\else% \ifnum\pdfoutput=1\else\ClassError{isodoc}{Compile me with pdflatex or xelatex!}{} \fi\fi - - - - - - %% \StopEventually{} \DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}} \ProcessOptions @@ -49,7 +43,7 @@ \pagestyle{fancy} \AtBeginDocument{\addtolength{\headheight}{\baselineskip}} \definecolor{isodocpink}{rgb}{1,.7,.7} -\def\Undefined#1{\fboxsep1pt\colorbox{isodocpink}{Undefined #1}} +\def\Undefined#1{\fboxsep1pt\colorbox{isodocpink}{\strut Undefined #1}} \def\@hft{\footnotesize\sffamily\color{headcolor}} \def\@xyshift#1,#2@@@{\def\@xshift{#1}\def\@yshift{#2}} \define@key{isodoc}{shift}{% @@ -59,7 +53,6 @@ \define@key{isodoc}{vertical}[\verticaltrue]{\verticaltrue} \define@key{isodoc}{novertical}[\verticaltrue]{\verticalfalse} \newif\ifvertical\verticaltrue - \define@key{isodoc}{foreign}[\foreigntrue]{\foreigntrue} \newif\ifforeign\foreignfalse \define@key{isodoc}{cityzip}[\cityziptrue]{\cityziptrue} @@ -120,7 +113,7 @@ \newcount\openingpos \newcount\textskip \define@key{isodoc}{footorder} {\def\@footorder{#1}} - \def\@footorder{website;@phone;@cellphone;email} + \def\@footorder{website;phone;cellphone;email} \define@key{isodoc}{footer} []{\footertrue} \newif\iffooter\footerfalse \define@key{isodoc}{nofooter}[]{\footerfalse} @@ -130,17 +123,19 @@ \def\phoneprefix{0} \define@key{isodoc}{phone} {\def\phone{#1}} \def\phone{} - \def\@phone{\Undefined{@phone}} + \def\@phone{\Undefined{phone}} \define@key{isodoc}{cellphone} {\def\cellphone{#1}} \def\cellphone{} - \def\@cellphone{\Undefined{@cellphone}} + \def\@cellphone{\Undefined{cellphone}} \define@key{isodoc}{fax} {\def\fax{#1}} \def\fax{} - \def\@fax{\Undefined{@fax}} + \def\@fax{\Undefined{fax}} \define@key{isodoc}{website} {\def\website{#1}} - \def\website{\Undefined{website}} + \def\website{} + \def\@website{\Undefined{website}} \define@key{isodoc}{email} {\def\email{#1}} - \def\email{\Undefined{email}} + \def\email{} + \def\@email{\Undefined{email}} \define@key{isodoc}{nofold}[]{\yfold=-1mm} \newdimen\yfold\yfold=-1mm \define@key{isodoc}{foldleft}[]{\xfold=9mm} @@ -167,8 +162,14 @@ \def\closing{\Undefined{closing}} \define@key{isodoc}{closingcomma}{\def\@closingcomma{#1}} \def\@closingcomma{,} -\define@key{isodoc}{closingskip}{\closingskip=#1} - \newdimen\closingskip\closingskip=2\baselineskip +\define@key{isodoc}{closingskip}{\ClassError{isodoc}{The closingskip option has been removed + in version 1.04; instead set the signatureskip length, + preferably in a style file}} + \newdimen\closingskip\closingskip=\baselineskip + \newdimen\signatureskip\signatureskip=2\baselineskip + \newdimen\copytoskip\copytoskip=\baselineskip + \newdimen\enclosureskip\enclosureskip=\baselineskip + \newif\ifencldown\encldownfalse \define@key{isodoc}{autograph}[2]{\def\autographversion{#1}} \def\autographversion{0} \define@key{isodoc}{signature}{\def\signature{#1}} @@ -446,6 +447,8 @@ \ifx\phone \empty\else\def\@phone {\isodoc@lead\phone} \fi \ifx\cellphone\empty\else\def\@cellphone{\isodoc@lead\cellphone}\fi \ifx\fax \empty\else\def\@fax {\isodoc@lead\fax} \fi + \ifx\website \empty\else\def\@website {\website} \fi + \ifx\email \empty\else\def\@email {\email} \fi \ifx\yourlettertext\undefined% \ClassWarning{isodoc}{You did not use the language option; using the default: en-GB} \isodoc@enGB% @@ -523,11 +526,11 @@ \footcount=35 \iffooter \ForEachX{;}{% - \setbox0=\hbox{\csname\thislevelitem\endcsname} + \setbox0=\hbox{\csname @\thislevelitem\endcsname} \ifdim\wd0=0pt\else \Tbox{\footcount}{\footerpos}{35}{\noindent {\@hft\csname\thislevelitem text\endcsname}\\ - \csname\thislevelitem\endcsname + \csname @\thislevelitem\endcsname } \fi \advance\footcount35 @@ -543,12 +546,12 @@ \vspace{\textskip mm} \thispagestyle{empty} \noindent\ignorespaces#2 - \ifclosing - \par\noindent\begin{minipage}[t]{\hsize} - \parindent=0pt\parskip=\baselineskip + \ifclosing{\\[\closingskip] + \parindent=0pt\parskip=\baselineskip\noindent + \begin{minipage}[t]{\hsize} \ifcase\autographversion \par\closing\@closingcomma\\\signature % 0: closing on the next line - \or\par\closing\@closingcomma\\[\closingskip]\signature % 1: whiteskip + \or\par\closing\@closingcomma\\[\signatureskip]\signature % 1: whiteskip \or\autographA \or\autographB \or\autographC @@ -561,25 +564,23 @@ \par\Undefined{autograph: \autographversion}\\ \fi \end{minipage} - \fi - \ifx\enclosures\empty\else - \par\noindent\begin{minipage}[t]{\hsize} - \parindent=0pt\parskip=\baselineskip - \vfill + }\fi + \ifencldown\vspace*{\fill}\fi + \ifx\enclosures\empty\else{\\[\enclosureskip] + \noindent + \begin{minipage}[t]{\hsize} \setbox1=\vbox{\enclosures}% - \textbf{\ifdim\ht1>\baselineskip\enclosurestext\else\enclosuretext\fi}% - \\\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 + }\fi + \ifx\copyto\empty\else{\\[\copytoskip] + \noindent + \begin{minipage}[t]{\hsize} + \textbf{\copytotext}\\ + \copyto \end{minipage} - \fi + }\fi \label{LastPageOf\thelettercount} }} \def\Cbox#1#2#3#4{% |