summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/isodoc/isodoc.dtx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2013-09-04 22:54:57 +0000
committerKarl Berry <karl@freefriends.org>2013-09-04 22:54:57 +0000
commit9dc8a44e7c3a5c0d92836f7d5cfaff9782d77acf (patch)
treebc1f69d3f39f163e642d199f770ac718afceb8b2 /Master/texmf-dist/source/latex/isodoc/isodoc.dtx
parentefbe9b2e9c32a3b15fdcb9041c69f3c8715927a7 (diff)
isodoc (3sep13)
git-svn-id: svn://tug.org/texlive/trunk@31572 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/isodoc/isodoc.dtx')
-rw-r--r--Master/texmf-dist/source/latex/isodoc/isodoc.dtx1385
1 files changed, 563 insertions, 822 deletions
diff --git a/Master/texmf-dist/source/latex/isodoc/isodoc.dtx b/Master/texmf-dist/source/latex/isodoc/isodoc.dtx
index 7ca661f36dc..861f1e8669a 100644
--- a/Master/texmf-dist/source/latex/isodoc/isodoc.dtx
+++ b/Master/texmf-dist/source/latex/isodoc/isodoc.dtx
@@ -1,28 +1,38 @@
% \iffalse meta-comment
-%
-% Copyright (C) 2006 by Wybo Dekker <wybo@dekkerdocumenten.nl>
-% -------------------------------------------------------
-%
-% This file may be distributed and/or modified under the
-% conditions of the LaTeX Project Public License, either version 1.2
-% of this license or (at your option) any later version.
-% The latest version of this license is in:
-%
-% http://www.latex-project.org/lppl.txt
-%
-% and version 1.2 or later is part of all distributions of LaTeX
-% version 1999/12/01 or later.
-%
-% \fi
-%
-% \iffalse
+%<*internal>
+\iffalse
+%</internal>
+%<*readme>
+-------------------------------------------------------------------------------------
+isodoc --- Typesetting of letters and invoices
+Author: Wybo Dekker
+E-mail: wybo@dekkerdocumenten.nl
+License: Released under the LaTeX Project Public License v1.3c or later
+See: http://www.latex-project.org/lppl.txt
+-------------------------------------------------------------------------------------
+
+Short description:
+The isodoc class is used for the preparation of letters and invoices.
+Future versions will support the preparation of other, similar
+documents. Documents are easily configured to the user's requirements
+through key=value options.
+At the origin of this class was Victor Eijkhout’s NTG brief class,
+which implements the NEN1026 standard.
+
+Installation:
+Execute the inst script with the --help option for more information.
+
+%</readme>
+%<*internal>
+\fi
+%</internal>
%<*driver>
\ProvidesFile{isodoc.dtx}
%</driver>
%<class>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
%<class>\ProvidesClass{isodoc}%
%<*class>
- [2012/04/04 v0.11 isodoc class for letters and invoices]
+ [2013/08/27 v1.00 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!}{}
@@ -32,9 +42,28 @@
\usepackage[l2tabu,orthodox]{nag}
\usepackage{isodocsymbols,charter}
\usepackage{ctable,pdfpages,paralist,sverb,ltablex}
-\parindent0pt\parskip1ex
-\PageIndex
-\IndexPrologue{\section*{Index}}
+\usepackage[a4paper,margin=20mm,left=50mm,nohead]{geometry}
+\usepackage{hyperref}
+%\OnlyDescription
+\RecordChanges
+\CodelineIndex\EnableCrossrefs
+\hypersetup{
+ pdftitle = The isodoc class,
+ pdfauthor = Wybo Dekker,
+ pdfsubject = {Preparation of letters and invoices},
+ pdfkeywords = {
+ letter,
+ invoice,
+ key=value options,
+ NEN1026
+ },
+ 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}
@@ -53,6 +82,8 @@
\def\CMP#1{\C{#1}\marginpar{\C{#1}}}
\begin{document}
\DocInput{isodoc.dtx}
+ \PrintChanges
+ \PrintIndex
\end{document}
%</driver>
% \fi
@@ -75,80 +106,117 @@
% Grave accent \` Left brace \{ Vertical bar \|
% Right brace \} Tilde \~}
%
-% \changes{v0.1}{2006/03/18}{Initial version}
-% \changes{v0.2}{2007/04/05}{added options phoneprefix, routingno, logoaddress
-% accountname now optional
-% accountnumber $\Rightarrow$ accountno
-% german and french translations corrected
-% indents removed in header fields
-% expect printer to have more unprintable border
-% ascriptiontext $\Rightarrow$ accountnametext for dutch
-% Interdocument language changes now work;
-% Vatno, if defined, is reported with accountdata;
-% country in returnaddress now separated with dot;
-% option changes kept local to the letter/invoice;
-% English/American accountname text adapted
-% }
-% \changes{v0.3}{2007/08/21}{several errors in documentation corrected
-% }
-% \changes{v0.3b}{2007/08/21}{non-zero parskip generated whitespace in standard textblocks;
-% several accept positions fixed,
-% added option shift,
-% whitespace problems solved,
-% added option currency,
-% added option cityzip - without documentation
-% }
-% \changes{v0.4}{2008/05/01}{options shift, currency, cityzip added
-% norwegian translations added (thanks Sveinung Heggen)
-% }
-% \changes{v0.5}{2008/07/12}{text misplacement in subject-less letters
-% corrected
-% norwegian translations corrected
-% }
-% \changes{v0.6}{2008/07/12}{moved all documentation files in subdirectory doc,
-% because files appeared to be wrongly placed on the
-% TeX Collection DVD
-% Some minor corrections
-% }
-% \changes{v0.7}{2010/01/02}{using eurosym package instead of marvosym;
-% using frenchb package instead of french;
-% added addresswidth option, default stays 2 cols;
-% changes suggested by Fabrice Niessen (thanks!):
-% added header/noheader options;
-% added bodyshift option;
-% date format can be yyyy-mm-dd or a literal `today';
-% added forcedate option to enter anything for date;
-% added foldleft and foldright options, default stays right;
-% headingcolor, if defined, colors fancy headings;
-% headcolor, if defined, colors headings in header and footer;
-% foldmarkcolor, if defined, colors foldmark
-% }
-% \changes{v0.8}{2010/08/24}{now compatible with XeLaTeX
-% made independent of babel/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)
-% option language added
-% option english is synonym for language=UKenglish
-% option american is synonym for language=USenglish
-% language options /only/ change keyword translations
-% new translations added: italian, spanish, catalan, serbian
-% option fontpackage removed
-% option cityzip moves zip behind city
-% now compatible with XeLaTeX
-% positioning of headings, subject, opening, body text fixed
-% repaired several minor bugs
-% }
-% \changes{v0.9}{2012/02/19}{subject text uses full textwidth; use newlines if needed
-% introducing isodocsymbols.sty
-% new option closingcomma
-% subject uses full textwidth
-% new option closingcomma
-% using foreach package for footfields
-% removed some unwanted whitespace
-% }
-% \changes{v0.10}{2012/02/21}{bug: missing prefixes for phone numbers
-% added option footorder, setting the order of footer fields
+% \changes{v0.01}{2006/03/18}{Initial version}
+% \changes{v0.02}{2007/04/05}{
+% - added options phoneprefix, routingno, logoaddress\\
+% - accountname now optional\\
+% - accountnumber -$>$ accountno\\
+% - german and french translations corrected\\
+% - indents removed in header fields\\
+% - expect printer to have more unprintable border\\
+% - ascriptiontext -$>$ accountnametext for dutch\\
+% - Interdocument language changes now work\\
+% - Vatno, if defined, is reported with accountdata\\
+% - country in returnaddress now separated with dot\\
+% - option changes kept local to the letter/invoice\\
+% - English/American accountname text adapted
+% }
+% \changes{v0.03}{2007/08/21}{
+% several errors in documentation corrected
% }
+% \changes{v0.03b}{2007/08/21}{
+% - non-zero parskip generated whitespace in standard textblocks\\
+% - several accept positions fixed,\\
+% - added option shift,\\
+% - whitespace problems solved,\\
+% - added option currency,\\
+% - added option cityzip - without documentation
+% }
+% \changes{v0.04}{2008/05/01}{
+% - options shift, currency, cityzip added\\
+% - norwegian translations added (thanks Sveinung Heggen)
+% }
+% \changes{v0.05}{2008/07/12}{
+% - text misplacement in subject-less letters\\
+% - corrected\\
+% - norwegian translations corrected
+% }
+% \changes{v0.06}{2008/07/12}{
+% - moved all documentation files in subdirectory doc,\\
+% - because files appeared to be wrongly placed on the \\
+% - TeX Collection DVD\\
+% - Some minor corrections
+% }
+% \changes{v0.07}{2010/01/02}{
+% - using eurosym package instead of marvosym\\
+% - using frenchb package instead of french\\
+% - added addresswidth option, default stays 2 cols\\
+% - changes suggested by Fabrice Niessen (thanks!)\\
+% - added header/noheader options\\
+% - added bodyshift option\\
+% - date format can be yyyy-mm-dd or a literal today\\
+% - added forcedate option to enter anything for date\\
+% - added foldleft and foldright options, default stays right\\
+% - headingcolor, if defined, colors fancy headings\\
+% - headcolor, if defined, colors headings in header and footer\\
+% - foldmarkcolor, if defined, colors foldmark
+% }
+% \changes{v0.08}{2010/08/24}{
+% - now compatible with XeLaTeX\\
+% - made independent of babel/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)\\
+% - option language added\\
+% - option english is synonym for language=UKenglish\\
+% - option american is synonym for language=USenglish\\
+% - language options /only/ change keyword translations\\
+% - new translations added: italian, spanish, catalan, serbian\\
+% - option fontpackage removed\\
+% - option cityzip moves zip behind city\\
+% - now compatible with XeLaTeX\\
+% - positioning of headings, subject, opening, body text fixed\\
+% - repaired several minor bugs
+% }
+% \changes{v0.09}{2012/02/19}{
+% - subject text uses full textwidth; use newlines if needed\\
+% - introducing isodocsymbols.sty\\
+% - new option closingcomma\\
+% - subject uses full textwidth\\
+% - using foreach package for footfields\\
+% - removed some unwanted whitespace
+% }
+% \changes{v0.10}{2012/02/21}{
+% - bug: missing prefixes for phone numbers\\
+% - added option footorder, setting the order of footer fields
+% }
+% \changes{v0.11}{2012/04/04}{
+% - added color and tabularx to required packages\\
+% - removed hypersetup (author/version info); didn't work
+% }
+% \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\\
+% respectively.\\
+% - localbank option removed, as IBAN is now used for all accounts\\
+% - 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:\\
+% - documentation improved\\
+% - empty foot fields can be added with extra semicolons in the\\
+% footorder option.\\
+% - copyto option added\\
+% - 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.\\
+% - the itotal command got an optional argument.\\
+% - closingcomma did not work\\
+% - added pdfauthor and pdfcreator (isodoc) to pdf-comment\\
+% - reorganized documentation directory and install script
+% }
% \DoNotIndex{%
% \ , \", \', \@auxout, \AtBeginDocument, \AtEndDocument, \Cbox, \CurrentOption,
% \DeclareOption, \DescribeMacro, \LARGE, \Large, \LoadClass, \ML, \NN,
@@ -177,7 +245,6 @@
% \author{Wybo Dekker \\ \texttt{wybo@dekkerdocumenten.nl}}
%
% \maketitle
-%
% \begin{abstract}\noindent
% The \texttt{isodoc} class can be used for the preparation of letters,
% invoices, and, in the future, similar documents.
@@ -240,7 +307,19 @@
% \end{document}
% \end{verbatim}
%
-% \section{Options}
+% This document describes several examples. The distribution contains a directory
+% |examples| where each of these has a complete set of files, ready to experiment with.
+%
+% \section{Class options}
+% The isodoc class is based on the |article| class and you can use the same
+% class options. Note, however, that if you change the font size from its
+% default (10pt) to an other value (11pt, 12pt) this applies to all text,
+% including headings, address label, et cetera. This is normally not what
+% you want. If you really want to change the font size of, for example, the
+% text body, do so with the usual font commands. Doing so will result in
+% poorly balanced document, however.
+%
+% \section{Options for \textsf{\textbackslash setupdocument}}
%
% Options are given as key=value pairs, separated by comma's.
% Extra comma's, including one behind the last pair, don't hurt.
@@ -264,25 +343,26 @@
% \OPTS{Language}{The options described here relate to the language used
% for the isodoc interface (headings, footings, date, banking data and so
% on.) This language is independent of the language you set with the |babel|
-% or |polyglossia| packages. So, for example, you can write your document in english and
-% use dutch for the interface. Also, use of |babel| or |polyglossia| is not required.
+% or |polyglossia| packages. So, for example, you can write your document in English and
+% use Dutch for the interface. Also, use of |babel| or |polyglossia| is not required.
%
% Currently only a few interface languages are defined. As I am not particularly
% strong in the translation of administrative terminology, please feel free to
% send me corrections. And if you don't find your own language here, please send
% me your translations and your language will be added.
%
-% The options below set the language, UKenglish is used by default. Preferably, the |language|
-% option should be used; the other options are there for compatibility with earlier versions.}{
+% The |language| option sets the language, en-GB is used by
+% default.\footnote{The options |dutch, english, american, german,| and
+% |french| still work, but are obsolete and will be removed in a future version.}}{
% \T{language = ...} & sets the interface language to any language defined by the class.
-% Currently these are: UKenglish, USenglish, french, german, dutch,
-% italian, spanish, catalan, norsk, serbian\NN
-% \T{dutch} & a synonym for |language = dutch|, \NN
-% \T{english} & a synonym for |language = UKenglish|,\NN
-% \T{german} & a synonym for |language = german|,\NN
-% \T{american} & a synonym for |language = USenglish|,\NN
-% \T{french} & a synonym for |language = french|.\NN
+% Currently these are: en-GB, en-US, fr-FR, de-DE, nl-NL, nl-BE
+% 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
% }
+% 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
+% 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.
%
% \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,
@@ -314,10 +394,7 @@
% 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}
-% option has been set to) instead of just a 0. In
-% the \C{accountdata} command, it causes \textsc{iban} en
-% \textsc{bic} code to be included, unless the |localbank|
-% option is used.\NN
+% option has been set to) instead of just a 0.\NN
% }
%
% \OPTS{Address window}{The addressee's address is printed in a window. The
@@ -358,7 +435,6 @@
% bullets.\NN
% }
%
-% \pagebreak
% \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,
@@ -392,7 +468,7 @@
% 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
+% restrict the width of the text.\NN
% }
%
% \OPTS{Opening and Closing}{A letter is started with an opening -- something
@@ -400,10 +476,10 @@
% `Regards,\T{<newline>}Betty', perhaps with an autograph (or white space) in between.}{
% \T{opening = ...} & Dear John\NN
% \T{openingcomma = ...}& by default, the opening phrase is followed by a comma, but you
-% can change that here.\NN
+% can change that here.\NN
% \T{closing = ...} & Regards\NN
% \T{closingcomma = ...}& by default, the closing phrase is followed by a comma, but you
-% can change that here.\NN
+% can change that here.\NN
% \T{signature = ...} & Betty\NN
% \T{autograph = ...} & \begin{minipage}[t]{\hsize}
% This keyword can have one of the 10 values 0--9:\\[-\baselineskip]
@@ -427,23 +503,28 @@
% 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
% }
%
-% \OPTS{Footer fields}{Footer fields are shown in the order in which
-% they appear below; they are empty by default, and empty fields are not displayed.
-% The order of the fields can be changed with the \T{footorder} option.}{
+% \OPTS{Footer fields}{If the \T{footer} option is used, up to five footer fields are shown
+% 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
% 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.
-% The default is \T{website;phone;cellphone;fax;email}.\NN
+% \T{footorder = ...} & changes the order of footer fields. The argument
+% should be a semicolon (;) separated list of fieldnames.
+% 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 not empty, prints `phone' in the first field of the
-% page footer, with the contents under it, prefixed with a~0 or,
+% \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
@@ -482,10 +563,9 @@
% \T{accountname = ...} & Your bank account's ascription.
% Will not be cited if undefined.\NN
% \T{iban = ...} & Your account's \textsc{iban}...\NN
-% \T{bic = ...} & and \textsc{bic} code; \textsc{iban} and \textsc{bic}
-% are only reported in invoices to foreign
-% customers---see the \T{foreign} keyword.\NN
-% \T{vatno = ...} & Your \textsc{vat} reference number, not yet used.\NN
+% \T{bic = ...} & and \textsc{bic} code; enter both in lower case: they are typeset
+% in small caps.\NN
+% \T{vatno = ...} & Your \textsc{vat} reference number.\NN
% \T{chamber = ...} & Your Chamber of Commerce subscription number, not yet
% used.\NN
% }
@@ -505,11 +585,14 @@
% \T{[no]fill} & Use the \T{fill} keyword to justify text both left and
% right; the default is \T{nofill}: left justification
% only.\NN
-% \T{shift = ...} & The many textpositions in isodoc are defined in millimeters,
+% \T{shift = ...} & The many text positions in isodoc are defined in millimeters,
% but sometimes printers show an aberration in their horizontal
% or vertical printing position. You can correct for this with the
% \T{shift = x,y} option, where x and y (both 0 by default) shift
% the output to the right and down, respectively, in millimeters.\NN
+% \T{[no]vertical} & Invoice tables are printed with a vertical line between
+% description and amount. The |novertical| option suppresses this,
+% the |vertical| option restores it.
% }
%
% \section{Commands}
@@ -531,28 +614,18 @@
% Most of the options have a corresponding command with the same name.
% Although not very often, it may sometimes be useful to have those
% commands available. These are the options with a corresponding
-% command:\footnote{Note for developers: the table lines below can be
-% generated with a ruby script listkeys (included in the distribution):
-% |listkeys show|}
+% command:
%
% \noindent\begin{tabular}{@{}lllll@{}}
-% accept &cellphone &fold &nofill &subject \NN
-% acceptaccount &chamber &fold2 &nofold &term \NN
-% acceptaddress &city &fold3 &nofooter &to \NN
-% acceptcents &cityzip &foldleft &noheader &vatno \NN
-% acceptdesc &closing &foldright &noreturn &website \NN
-% acceptdescription &closingskip &footer &opening &who \NN
-% accepteuros &company &footorder &openingcomma &yourletter \NN
-% acceptreference &country &forcedate &ourref &yourref \NN
-% accountname &countrycode &foreign &phone &zip \NN
-% accountno &currency &french &phoneprefix & \NN
-% addresscenter &date &german &return & \NN
-% addresswidth &dutch &header &returnaddress & \NN
-% american &email &iban &rightaddress & \NN
-% areacode &enclosures &language &routingno & \NN
-% autograph &english &leftaddress &shift & \NN
-% bic &fax &localbank &signature & \NN
-% bodyshift &fill &logoaddress &street & \NN
+% accept & accountno & country & iban & subject \NN
+% acceptaccount & areacode & countrycode & logoaddress & term \NN
+% acceptaddress & bic & currency & ourref & to \NN
+% acceptcents & cellphone & date & phone & vatno \NN
+% acceptdesc & chamber & email & phoneprefix & website \NN
+% acceptdescription & city & enclosures & return & who \NN
+% accepteuros & cityzip & fax & returnaddress & yourletter\NN
+% acceptreference & company & & routingno & yourref \NN
+% accountname & copyto & header & street & zip \NN
% \end{tabular}
%
% \noindent So you could write in your letter: ``please send me the money on my bank
@@ -590,71 +663,91 @@
% The |\itable| command uses |tabularx| to create a two-column table. The
% first column of the table will have the header `Description' (or its
% equivalent in the language selected), the header of the second column says
-% `Amount (EUR)'. The single argument of |\itable| should contain the
-% contents of the table and is of the form:
+% `Amount (EUR)'. The argument of |\itable| should contain the
+% contents of the table and could be of the form:
% \begin{verbatim}
-% item 1 & amount 1\NN
-% item 2 & amount 2\NN
+% item 1 & amount 1\\
+% item 2 & amount 2\\
% ...
-% item n & amount n \NN
-% \cmidrule[.05em]{2-2}
-% Total & amount \NN
+% item n & amount n\\\cline{2-2}
+% Total & amount\\
% \end{verbatim}
-% However, the next two commands may be used to enter these data more cleanly:
+% However, the next two commands may be used to enter these data more cleanly,
+% and they provide better line spacings:
%
% \DescribeMacro{\iitem}
% The |\iitem{item}{amount}| command (|iitem| stands for Invoice Item) is
-% equivalent to writing |item & amount\NN|.
+% equivalent to writing |item & amount\\|.
%
% \DescribeMacro{\itotal}
-% The |\itotal{amount}| command (|itotal| stands for Invoice total) is
+% The |\itotal[...]{amount}| command (|itotal| stands for Invoice total) is
% equivalent to writing:
-% |\cmidrule[.05em]{2-2} Total & amount \NN|, with the additional
+% |\cline{2-2} Total & amount\\|, with the additional
% advantage that the word `Total' will be replaced with its equivalent
-% in the current language. Thus, the argument to the |\itable|
+% in the current language, or, if the optional argument is given, with that
+% optional argument. Thus, the argument to the |\itable|
% command show above can also be written:
% \begin{verbatim}
% \iitem{item 1}{amount 1}
% \iitem{item 2}{amount 2}
+% \itotal[Subtotal]{amount}
% ...
% \iitem{item n}{amount n}
% \total{amount}
% \end{verbatim}
% \DescribeMacro{\accountdata}
-% The |\accountdata| command prints a little table with accounting information
-% needed by the creditor for paying the invoice. It is constructed using the
-% values of the options |accountno|, |accountname|, |routingno|, |iban|, and
-% |bic|. The latter two are only included if the |foreign| option was used.
+% The |\accountdata| command prints a little table with accounting
+% information needed by the creditor for paying the invoice. It is
+% constructed using the values of the options |term|, |accountno|, |iban|,
+% |bic|, |accountname|, |routingno|, |ourref|, and |vatno|, in that order,
+% and as far as they have been defined.
%
% \DescribeMacro{\autograph}
% 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. One of these
-% autographs will be drawn between the closing (\textsl{Best regards})
-% and the signature (\textsl{Betty}) if you use the \T{autograph} option
-% with a value from 2 through 9. \C{autograph} has 7 arguments:
+% 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
+% |\baselineskips| under the end of the text body; autographs and the signature
+% will be positioned relative to this fixed closing.
+%
+% The selected autograph (argument 1) will be drawn near the closing
+% (\textsl{Best regards}) if you use the \T{autograph} option with a value
+% from 2 through 9. The position of the signature (\textsl{Betty}) will
+% depend on the argument 4 of |\autograph|. \C{autograph} has 6 arguments,
+% defined in the table below. The arguments 3, 4 and 5 are integer
+% percentages of the height of the image (argument 2). This means that you
+% can change the height of the image and still keep the positions of
+% closing, signature and the left margin at the same relative positions in
+% the image. These percentages may be negative, or larger than 100\%.
%
% \begin{tabularx}{\hsize}{@{}rX@{}}
% arg 1:&2,3,...9: autograph number; will be translated internally to define
% |\autographA|, |\autographB|... |\autographH|\NN
-% 2:&scaling factor for the image\NN
-% 3:&distance the autograph outdents in the margin\NN
-% 4:&vertical position of the baseline of the closing
-% (\textsl{Regards,}) from the top\NN
-% 5:&vertical position of the baseline of the signature (\textsl{John
-% Letterwriter}) from the top\NN
-% 6:&height of the image\NN
-% 7:&the image (jpg, png, pdf...)\NN
+% 2:&the height of the image (a dimen)\NN
+% 3:&the vertical position (\%) of the baseline of the closing (Regards,) from the top\NN
+% 4:&the vertical position (\%) of the baseline of the signature (John Letterwriter) from the closing\NN
+% 5:&the distance (\%) the autograph outdents in the margin\NN
+% 6:&the image (jpg, png, pdf...)\NN
% \end{tabularx}
%
-% The arguments 3--6 must be dimensions, and for a given autograph image should
-% be inferred by inspecting the image with an image manipulation program
-% like, for example, the gimp. In the lower left corner of the gimp window,
-% select the units of length, move the pointer to the positions where you want
-% margin, closing, and signature and to the bottom of the image, read the x, y,
-% y and y positions respectively and use those for the argument 3, 4, 5, and 6.
-%
-% \FIG{letter}{letter1}{Minimal letter example}
+% \paragraph{How to design an autograph in 4 steps:}
+% \begin{compactenum}
+% \item Make a scan of your signature on a white background. Remove the
+% white background using an image manipulation program such as the |gimp|
+% (\textsl{layer $\Rightarrow$ transparency $\Rightarrow$ color to alpha}) and save it as a
+% \textsc{png} image. Removing the background is only necessary if you plan
+% to move the image over the text body, which would then be covered by the
+% white background --- closing and signature will be printed \textsl{over}
+% the image.
+% \item Guess where you want the closing's baseline to appear in the image,
+% expressed as an integer percentage of the image height from the top of
+% the image. Use this number for argument~3.
+% \item Same for the signature, to use as argument~4.
+% \item Same for the text body margin: distance of it from the left side of
+% 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
@@ -690,10 +783,10 @@
% Usage of the class is best explained by example.
% \subsection{A simple letter}
% Here is the latex source for a small letter; its result appears in figure~\ref{letter1}:
-% \verbinput{letter.txt}
+% \verbinput{examples/letter/letter.tex}
% This source essentially shows three items:
% \begin{compactenum}
-% \item the inclusion of a package |mystyle|; we'll come to that shortly.
+% \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
% defining one of the texts that go into the letter.
% \item the command |\letter|, enclosing the body of the letter;
@@ -703,9 +796,9 @@
% Of course this is not all of the information needed to create a
% letter. For example, there should be a logo, telling the addressee who I am
% and there should be contact information such as my address, telephone number
-% and so on. This is where the included |mystyle| package plays its part. Here
+% and so on. This is where the included |letter| package plays its part. Here
% is an example of such a style file:
-% \verbinput{mystyle.txt}
+% \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
% |\autograph| command sets up an autograph, based on an image file. Apart
@@ -715,44 +808,52 @@
% and |signature| in the style file, and that I did not override those in the
% letter's source.
%
-% \FIG{logo1}{logo1}{Long letter example with a non-standard logo, page 1}
-% \FIG{logo2}{logo2}{Long letter example with a non-standard logo, page 2}
+% \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 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
-% |autograph=2|. Alternative values are |0| (nothing between closing and
-% signature), |1| 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
+% (\textsl{W.H.~Dekker}) an autograph has been placed. This was done by
+% setting the option |autograph|, which has a default value of 2.
+% Alternative values are |0| (nothing between closing and signature), |1|
+% 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.
% \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.
+% 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.
+
% \end{compactitem}
%
% \subsection{Multiple letters, redefined logo}
@@ -760,14 +861,14 @@
% and~\ref{logo2}: we use a modified style file, with a
% redefined logo, so we don't need a page footer; we use preprinted right-windowed
% envelopes, so a return address is not needed. Here is the style file
-% (|logostyle.sty|):
-% \verbinput{logostyle.txt}
+% (|logoletter.sty|):
+% \verbinput{examples/logoletter/logoletter.sty}
% \label{logoredef}
-% \FIG{invoice}{invoice}{Invoice example}
+% \FIG{examples/invoice/invoice.pdf}{invoice}{Invoice example}
% 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:
-% \verbinput{logoletter.txt}
+% \verbinput{examples/logoletter/logoletter.tex}
% In this case, the same letter had to be sent to two different people,
% with different openings and addresses of course. So the letter's body
% is separately defined and the |\letter| command is called twice, with
@@ -777,7 +878,7 @@
%
% \section{Usage: invoices}
% \subsection{A simple invoice}
-% \FIG{accept}{accept}{Invoice example with accept form}
+% \FIG{examples/accept/accept.pdf}{accept}{Invoice example with accept form}
%
% Invoices (can) have the same structure as letters, except that the |\opening|
% isn't ``Dear Somebody'' anymore, but something like ``Invoice''. And the
@@ -786,13 +887,13 @@
% be paid, and the corresponding amounts of money.
%
% An example, as usual, is most instructive:
-% \verbinput{invoice.txt}
+% \verbinput{examples/invoice/invoice.tex}
% The result is shown in figure~\ref{invoice}.
%
% \subsection{Invoice with redefined logo}
% When the |accept| option is used, the invoice will be created with an invoice
% form on the lower third part of the page. Here is an example:
-% \verbinput{accept.txt}
+% \verbinput{examples/accept/accept.tex}
% Normally such invoices are printed on preprinted paper with an easily
% detachable, perforated form. In this example, the form itself has been
% printed, too. The |graphicx| and |textpos| packages have already been made
@@ -800,6 +901,7 @@
% example.
%% \StopEventually{}
%
+% \clearpage
% \section{Implementation}
% The basis is the |article| class with all options:
%
@@ -812,7 +914,7 @@
% spacing in tables and more. |ctable| also brings us |array|, |tabularx|,
% |color|, and |xkeyval|. |eurosym| is used for the euro symbol.
% \begin{macrocode}
-\RequirePackage{ctable,color,tabularx,eurosym,graphicx,stringstrings,calc}
+\RequirePackage{ctable,color,tabularx,graphicx,xstring,calc}
\RequirePackage{forarray}
% \end{macrocode}
%
@@ -849,14 +951,6 @@
\pagestyle{fancy}
\AtBeginDocument{\addtolength{\headheight}{\baselineskip}}
% \end{macrocode}
-% The |\xxxdoc| commands (like |\dutchdoc|) set the default language via
-% |\AtBeginDocument|, but other language changes should be done without that.
-% So we must have a boolean to check if we are in the preamble:
-%
-% \begin{macrocode}
-\newif\ifpreamble\preambletrue
-\AtBeginDocument{\preamblefalse}
-% \end{macrocode}
% Background color for signaling items that should have been defined, but
% weren't:
% \begin{macrocode}
@@ -881,6 +975,16 @@
\AtBeginDocument{\textblockorigin{\@xshift mm}{\@yshift mm}}
}
% \end{macrocode}
+% The |vertical| option prints a vertical bar in invoices between description
+% and amount -- (this is the default), the |novertical| option suppresses it.
+% \DescribeMacro{vertical}
+% \DescribeMacro{novertical}
+% \begin{macrocode}
+\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:
% \DescribeMacro{foreign}
@@ -895,28 +999,21 @@
\define@key{isodoc}{cityzip}[\cityziptrue]{\cityziptrue}
\newif\ifcityzip\cityzipfalse
% \end{macrocode}
-% \DescribeMacro{localbank}
-% When the |foreign| option is used, \textsc{iban} and \textsc{bic} codes are
-% reported, but this can be suppressed with the |localbank| option:
-% \begin{macrocode}
-\define@key{isodoc}{localbank}[\localbanktrue]{\localbanktrue}
- \newif\iflocalbank\localbankfalse
-% \end{macrocode}
% \DescribeMacro{dutch}
% \DescribeMacro{english}
% \DescribeMacro{german}
% \DescribeMacro{american}
% \DescribeMacro{french}
% \DescribeMacro{language}
-% The following keys set the language; English, set at the |\EndOfClass| is the
+% The following keys set the language; en-GB, set at the |\EndOfClass| is the
% default.
% \begin{macrocode}
-\define@key{isodoc}{dutch} []{\isodoc@dutch}
-\define@key{isodoc}{english} []{\isodoc@UKenglish}
-\define@key{isodoc}{german} []{\isodoc@german}
-\define@key{isodoc}{american}[]{\isodoc@USenglish}
-\define@key{isodoc}{french} []{\isodoc@french}
-\define@key{isodoc}{language}{\csname isodoc@#1\endcsname}
+\define@key{isodoc}{dutch} []{\isodoc@nlNL\ClassWarning{isodoc}{the option dutch is obsolete: use language=nl-NL}}
+\define@key{isodoc}{english} []{\isodoc@enGB\ClassWarning{isodoc}{the option english is obsolete: use language=en-GB}}
+\define@key{isodoc}{german} []{\isodoc@deDE\ClassWarning{isodoc}{the option german is obsolete: use language=de-DE}}
+\define@key{isodoc}{american}[]{\isodoc@enUS\ClassWarning{isodoc}{the option american is obsolete: use language=en-US}}
+\define@key{isodoc}{french} []{\isodoc@frFR\ClassWarning{isodoc}{the option french is obsolete: use language=fr-FR}}
+\define@key{isodoc}{language}{\StrSubstitute{#1}{-}{}[\@iso]\csname isodoc@\@iso\endcsname}
% \end{macrocode}
% \DescribeMacro{fill}
% \DescribeMacro{nofill}
@@ -995,8 +1092,8 @@
\def\toaddress{\Undefined{to}}
\long\def\processto#1{\xproc #1\\@@@\ifx\toaddress\empty
\else \yproc #1@@@\fi}
-\long\def\xproc #1\\#2@@@{\def\toname{#1}\def\toaddress{#2}}
-\long\def\yproc #1\\#2@@@{\def\toaddress{#2}}
+\long\def\xproc #1\\#2@@@{\gdef\toname{#1}\gdef\toaddress{#2}}
+\long\def\yproc #1\\#2@@@{\gdef\toaddress{#2}}
% \end{macrocode}
% \DescribeMacro{return}
% \DescribeMacro{noreturn}
@@ -1044,7 +1141,7 @@
% The default is the have no footer.
% \begin{macrocode}
\define@key{isodoc}{footorder} {\def\footorder{#1}}
- \def\footorder{website;phone;cellphone;fax;email}
+ \def\footorder{website;phone;cellphone;email}
\define@key{isodoc}{footer} []{\footertrue}
\newif\iffooter\footerfalse
\define@key{isodoc}{nofooter}[]{\footerfalse}
@@ -1067,16 +1164,19 @@
\def\areacode{\Undefined{areacode}}
\define@key{isodoc}{phone} {\def\isodoc@phone{#1}}
\def\isodoc@phone{}
+ \def\phone{\Undefined{phone}}
\define@key{isodoc}{phoneprefix}{\def\phoneprefix{#1}}
\def\phoneprefix{0}
\define@key{isodoc}{cellphone} {\def\isodoc@cellphone{#1}}
\def\isodoc@cellphone{}
+ \def\cellphone{\Undefined{cellphone}}
\define@key{isodoc}{fax} {\def\isodoc@fax{#1}}
\def\isodoc@fax{}
+ \def\fax{\Undefined{fax}}
\define@key{isodoc}{website} {\def\website{#1}}
- \def\website{}
+ \def\website{\Undefined{website}}
\define@key{isodoc}{email} {\def\email{#1}}
- \def\email{}
+ \def\email{\Undefined{email}}
% \end{macrocode}
% \subsubsection{Folding mark}
% \DescribeMacro{nofold}
@@ -1140,7 +1240,6 @@
% The string |today| sets the date to today's date.
% \begin{macrocode}
\define@key{isodoc}{date}{\@isomakedate{#1}}
- \def\date{\Undefined{date}}
% \end{macrocode}
% \DescribeMacro{forcedate}
% If you know what you do you can substitute anything you like for the date by
@@ -1162,9 +1261,9 @@
% semicolon or an exclamation mark.
% \begin{macrocode}
\define@key{isodoc}{opening} {\def\opening{#1}}
- \def\openingcomma{,}
-\define@key{isodoc}{openingcomma}{\def\openingcomma{#1}}
\def\opening{\Undefined{opening}}
+\define@key{isodoc}{openingcomma}{\def\openingcomma{#1}}
+ \def\openingcomma{,}
% \end{macrocode}
% \subsubsection{Closing, autograph, signature}
% \DescribeMacro{closing}
@@ -1174,9 +1273,10 @@
% which can be set by the |closingskip| option, which is |2\baselineskip| by
% default:
% \begin{macrocode}
-\define@key{isodoc}{closing} {\def\closing{#1}}
- \def\closingcomma{,}
+\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
% \end{macrocode}
@@ -1204,6 +1304,12 @@
\define@key{isodoc}{enclosures} {\def\enclosures{#1}}
\def\enclosures{}
% \end{macrocode}
+% \DescribeMacro{copyto}
+% Cc-ed names are set by the |copyto| option. There are none by default.
+% \begin{macrocode}
+\define@key{isodoc}{copyto} {\def\copyto{#1}}
+ \def\copyto{}
+% \end{macrocode}
% \subsubsection{Invoice specific data}
% \DescribeMacro{term}
% \DescribeMacro{accountno}
@@ -1225,7 +1331,7 @@
\define@key{isodoc}{bic} {\def\bic{#1}}
\define@key{isodoc}{vatno} {\def\vatno{#1}}
\define@key{isodoc}{chamber} {\def\chamber{#1}}
- \def\chamber{Undefined{chamber}}
+ \def\chamber{\Undefined{chamber}}
\define@key{isodoc}{currency} {\def\currency{#1}}
\def\currency{\EuroSymbol}
% \end{macrocode}
@@ -1248,15 +1354,15 @@
\define@key{isodoc}{acceptaddress} {\def\acceptaddress{#1}}
\def\acceptaddress{}
\define@key{isodoc}{acceptcents} {\def\acceptcents{#1}}
- \def\acceptcents{Undefined{}}
+ \def\acceptcents{\Undefined{}}
\define@key{isodoc}{acceptdescription}{\def\acceptdescription{#1}}
\def\acceptdescription{}
\define@key{isodoc}{acceptdesc} {\def\acceptdesc{#1}}
\def\acceptdesc{}
\define@key{isodoc}{accepteuros} {\def\accepteuros{#1}}
- \def\accepteuros{Undefined{}}
+ \def\accepteuros{\Undefined{}}
\define@key{isodoc}{acceptreference} {\def\acceptreference{#1}}
- \def\acceptreference{Undefined{ref}}
+ \def\acceptreference{\Undefined{ref}}
% \end{macrocode}
% For now, we define field positons for the E05 accept form only; when data for
% other forms become available, the content of |\accepttype| will have to be
@@ -1299,25 +1405,39 @@
% put your autograph manually, or a graphic. In the latter case, is must have
% been defined with the macro |\autograph|, which defines an autograph from an
% image.\footnote{Thanks, Hans Hagen and Piet van Oostrum, for its definition}\\
-% The arguments 3 - 6 can be found by measuring those (with the gimp, for example)
-% in the unscaled (raw) image (which is the last argument).
+% Arguments (positions and outdents are taken as integer percentages of the
+% image height, from the top of the image):
% \\[1ex]
% \begin{tabularx}{\hsize}{@{}rX@{}}
% arg 1:&2,3,...9: autograph number; will be translated internally to define
% |\autographA|, |\autographB|... |\autographH|\NN
-% 2:&scaling factor for the image\NN
-% 3:&the distance the autograph outdents in the margin\NN
-% 4:&the vertical position of the baseline of the closing (Regards,) from the top\NN
-% 5:&the vertical position of the baseline of the signature (John Letterwriter) from the top\NN
-% 6:&the height of the image\NN
-% 7:&the image (jpg, png, pdf...)\NN
+% 2:&height of the image\NN
+% 3:&closing baseline position\NN
+% 4:&signature baseline position\NN
+% 5:&outdent in the margin\NN
+% 6:&the image (jpg, png, pdf...)\NN
% \end{tabularx}
+%
% \DescribeMacro{\autograph}
% \begin{macrocode}
-\newdimen\myoutdent
-\newdimen\signskip
-\newdimen\mydown
-\def\autograph#1#2#3#4#5#6#7{%
+\newdimen\iso@outdent
+\newdimen\iso@signpos
+\newdimen\iso@down
+\newdimen\iso@closingpos
+% \end{macrocode}
+% The arguments 3-5 of autograph have changed from dimens in versions up to 0.11
+% to integer numbers in version 1.00 and later. The |iso@isNum| macro will prevent
+% the appearance of incomprehensible error message by issuing a class error if
+% one of the arguments is not a number.
+% \begin{macrocode}
+\def\iso@isNum#1#2{%
+ \sbox\z@{\@tempcnta=0#1\relax}
+ \ifdim\wd0>\z@\relax\ClassError{isodoc}%
+ {Argument #2 of autograph must be a number!}%
+ {You are probably using the oldstyle autograph arguments}\fi
+}
+\def\autograph#1#2#3#4#5#6{%
+ \iso@isNum{#3}{3}\iso@isNum{#4}{4}\iso@isNum{#5}{5}
\ifnum #1<2
\ClassError{isodoc}{autograph #1 cannot be changed (first arg must be 2..9)}{}
\fi
@@ -1331,12 +1451,14 @@
\lccode`5=`D \lccode`9=`H
\lowercase{\def\temp{#1}}%
\expandafter\egroup\expandafter\def\csname autograph\temp\endcsname{%
- \myoutdent=#3
- \signskip=#5\advance\signskip-#4
- \mydown=#6\advance\mydown-#4
- \par\hspace*{-#2\myoutdent}%
- \raisebox{-#2\mydown}[0bp][0bp]{\includegraphics[scale=#2]{#7}}\\[-\baselineskip]
- \closing\\[-2\baselineskip]\\[#2\signskip]\signature%
+ \vskip-2\baselineskip%
+ \setlength{\iso@down}{#2*#3/100-#2-2\baselineskip}
+ \setlength{\iso@outdent}{-#2*#5/100}
+ \setlength{\iso@signpos}{#2*(#4-#3)/100}
+ \hspace*{\iso@outdent}\raisebox{\iso@down}[0pt][0pt]{\includegraphics[height=#2]{#6}}%
+ \\[\baselineskip]%
+ \closing\closingcomma\\[\iso@signpos]\\[-2\baselineskip]%
+ \signature%
}
}
% \end{macrocode}
@@ -1385,46 +1507,57 @@
}
% \end{macrocode}
% \DescribeMacro{\@isomakedate}
+% \@isomakedate sets the |\year|, |\month| and |\day| counters for |\@iso@date|.
+% The argument can have one of three forms:
+% \begin{compactenum}
+% \item yyyymmdd
+% \item yyyy-mm-dd
+% \item today % i.e. the string "today"
+% \end{compactenum}
+% The resulting |\date| format depends on the language option, 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:
+% \begin{tabbing}
+% 2013-01-01 \= 1st January 2013\\
+% 2013-01-00 \> January 2013\\
+% 20130101 \> 1st January 2013\\
+% 20130100 \> January 2013\\
+% today \> 3rd June 2013 % assuming that's today's date
+% \end{tabbing}
% \begin{macrocode}
\newcount\@isoyear \@isoyear=\year \year=0
\newcount\@isomonth \@isomonth=\month
\newcount\@isoday \@isoday=\day
-\def\@isomakedate#1{%
- \def\@isoarg{#1}\def\@isotoday{today}
- \ifx\@isoarg\@isotoday
+\def\@isomakedate#1{
+ \StrSubstitute[2]{#1}{-}{}[\@iso@arg]
+ \IfStrEq{\@iso@arg}{today}{
\year=\@isoyear
\month=\@isomonth
\day=\@isoday
- \else
- \stringlength[q]{\@isoarg}
- \ifnum\theresult=10
- \substring[q]{\@isoarg}{5}{5}
- \if\thestring-\else\ClassError{isodoc}{
- Illegal date separator: \thestring (must be -)}{}\fi
- \substring[q]{\@isoarg}{8}{8}
- \if\thestring-\else\ClassError{isodoc}{
- Illegal date separator: \thestring (must be -)}{}\fi
- \else
- \ifnum\theresult=8\else\ClassError{isodoc}{
- Illegal date: not yyyymmdd | yyyy-mm-dd | today}{}\fi
- \fi
- \Treatments{0}{0}{0}{1}{0}{0}
- \substring[q]{\@isoarg}{1}{$} \let\@isodigits=\thestring \def\@isoarg{\thestring}
- \stringlength[q]{\@isodigits}
- \ifnum\theresult=8\else\ClassError{isodoc}{Illegal date: must have 8 digits}{}\fi
- \substring[q]{\@isoarg}{1}{4} \year=\thestring \def\@isoarg{\@isodigits}
- \substring[q]{\@isoarg}{5}{6} \month=\thestring \def\@isoarg{\@isodigits}
- \substring[q]{\@isoarg}{7}{8} \day=\thestring \def\@isoarg{\@isodigits}
- \ifnum \month > 12 \ClassError{isodoc}{Illegal date: month>12}{}\fi
- \ifnum \day > 31 \ClassError{isodoc}{Illegal date: day>31}{}\fi
- \fi
+ }{\IfInteger{\@iso@arg}{}{\ClassError{isodoc}{
+ Illegal date: not yyyymmdd | yyyy-mm-dd | today}{}\fi}
+ \StrLeft{\@iso@arg}{4}[\@iso]\year=\@iso
+ \StrRight{\@iso@arg}{2}[\@iso]\day=\@iso
+ \StrMid{\@iso@arg}{5}{6}[\@iso]\month=\@iso
+ }
+ \ifnum\month > 12 \ClassError{isodoc}{Illegal date: month>12}{}\fi
+ \ifnum\day > 31 \ClassError{isodoc}{Illegal date: day>31}{}\fi
+}
+% \end{macrocode}
+% \DescribeMacro{\date}
+% |\date| displays the date. Its value is that of |forcedate| if that
+% option was used; otherwise it is |undefined|, unless the |date| option
+% was used.
+% \begin{macrocode}
+\def\date{%
+ \ifx\forcedate\empty%
+ \ifnum\year=0\Undefined{date}\else\@isodate\fi
+ \else\forcedate\fi
}
% \end{macrocode}
% \DescribeMacro{\accountdata}
-% Print a table with banking information. Show account number, account
-% name + city, and a reference. If the |foreign| key was used,
-% \textsc{iban} and \textsc{bic} codes are also reported, but can be suppressed
-% with the |localbank| option.
+% Print a table with banking information. Show all data as far as defined/not empty:
% \begin{macrocode}
\def\accountdata{
\textbf{\accountdatatext:}\\
@@ -1432,19 +1565,23 @@
\ifx\term\undefined\else
\termtext: & \term\ \daystext\\
\fi
+ \ifx\accounto\undefined\else
\accountnotext: & \accountno\\
+ \fi
+ \ifx\iban\undefined\else
+ \ibantext: & \scshape \iban\\
+ \fi
+ \ifx\bic\undefined\else
+ \bictext: & \scshape \bic\\
+ \fi
\ifx\accountname\undefined\else
\accountnametext: & \accountname{}\\
\fi
\ifx\routingno\undefined\else
\routingnotext: & \routingno{}\\
\fi
+ \ifx\ourref\empty\else
\referencetext: & \ourref\\
- \ifforeign
- \iflocalbank\else
- iban: & \scshape \iban\\
- bic: & \scshape \bic\\
- \fi
\fi
\ifx\vatno\undefined\else
\vatnotext: & \vatno\\
@@ -1453,117 +1590,105 @@
}
% \end{macrocode}
% The |\showkeys| command is useful for debugging. It prints a table showing the
-% values of most keys.\footnote{Note for developers: the table lines below can
-% be generated with a ruby script listkeys (included in the distribution):
-% |listkeys defs|}
+% current values of most keys.
% \DescribeMacro{\showkeys}
% \begin{macrocode}
\def\showkeys{%
- \begin{tabular}{ll}
- accept & \accept\NN
- acceptaccount & \acceptaccount\NN
- acceptaddress & \acceptaddress\NN
- acceptcents & \acceptcents\NN
- acceptdesc & \acceptdesc\NN
- acceptdescription & \acceptdescription\NN
- accepteuros & \accepteuros\NN
- acceptreference & \acceptreference\NN
- accountname & \accountname\NN
- accountno & \accountno\NN
- addresscenter & \addresscenter\NN
- addresswidth & \addresswidth\NN
- american & \american\NN
- areacode & \areacode\NN
- autograph & \autograph\NN
- bic & \bic\NN
- bodyshift & \bodyshift\NN
- cellphone & \cellphone\NN
- chamber & \chamber\NN
- city & \city\NN
- cityzip & \cityzip\NN
- closing & \closing\NN
- closingskip & \closingskip\NN
- company & \company\NN
- country & \country\NN
- countrycode & \countrycode\NN
- currency & \currency\NN
- date & \date\NN
- dutch & \dutch\NN
- email & \email\NN
- enclosures & \enclosures\NN
- english & \english\NN
- fax & \fax\NN
- fill & \fill\NN
- fold & \fold\NN
- fold2 & \fold2\NN
- fold3 & \fold3\NN
- foldleft & \foldleft\NN
- foldright & \foldright\NN
- footer & \footer\NN
- footorder & \footorder\NN
- forcedate & \forcedate\NN
- foreign & \foreign\NN
- french & \french\NN
- german & \german\NN
- header & \header\NN
- iban & \iban\NN
- language & \language\NN
- leftaddress & \leftaddress\NN
- localbank & \localbank\NN
- logoaddress & \logoaddress\NN
- nofill & \nofill\NN
- nofold & \nofold\NN
- nofooter & \nofooter\NN
- noheader & \noheader\NN
- noreturn & \noreturn\NN
- opening & \opening\NN
- openingcomma & \openingcomma\NN
- ourref & \ourref\NN
- phone & \phone\NN
- phoneprefix & \phoneprefix\NN
- return & \return\NN
- returnaddress & \returnaddress\NN
- rightaddress & \rightaddress\NN
- routingno & \routingno\NN
- shift & \shift\NN
- signature & \signature\NN
- street & \street\NN
- subject & \subject\NN
- term & \term\NN
- to & \to\NN
- vatno & \vatno\NN
- website & \website\NN
- who & \who\NN
- yourletter & \yourletter\NN
- yourref & \yourref\NN
- zip & \zip\NN
+ \begin{tabular}{rl}
+ acceptaccount & \acceptaccount\NN
+ acceptaddress & \acceptaddress\NN
+ acceptcents & \acceptcents\NN
+ acceptdesc & \acceptdesc\NN
+ acceptdescription & \acceptdescription\NN
+ accepteuros & \accepteuros\NN
+ acceptreference & \acceptreference\NN
+ accountname & \ifx\accountname\undefined (undefined, so not shown)%
+ \else\accountname\fi\NN
+ accountno & \ifx\accountno\undefined (undefined, so not shown)%
+ \else\accountno\fi\NN
+ areacode & \areacode\NN
+ bic & \ifx\bic\undefined (undefined, so not shown)%
+ \else\bic\fi\NN
+ cellphone & \cellphone\NN
+ chamber & \chamber\NN
+ city & \city\NN
+ closing & \closing\NN
+ company & \company\NN
+ country & \country\NN
+ countrycode & \countrycode\NN
+ currency & \currency\NN
+ date & \date\NN
+ email & \email\NN
+ enclosures & \begin{minipage}[t]{\hsize}
+ \mbox{}\enclosures\\[-1.5ex]
+ \end{minipage}\NN
+ copyto & \begin{minipage}[t]{\hsize}
+ \mbox{}\copyto \\[-1.5ex]
+ \end{minipage}\NN
+ fax & \fax\NN
+ iban & \ifx\iban\undefined (undefined, so not shown)
+ \else\iban\fi\NN
+ opening & \opening\NN
+ ourref & \ourref\NN
+ phone & \phone\NN
+ returnaddress & \begin{minipage}[t]{\hsize}
+ \mbox{}\returnaddress\\[-1.5ex]
+ \end{minipage}\NN
+ routingno & \ifx\routingno\undefined (undefined, so not shown)
+ \else\routingno\fi\NN
+ signature & \signature\NN
+ street & \street\NN
+ subject & \subject\NN
+ toaddress & \begin{minipage}[t]{\hsize}
+ \mbox{}\toaddress\\[-1.5ex]
+ \end{minipage}\NN
+ toname & \toname\NN
+ vatno & \ifx\vatno\undefined (undefined, so not shown)
+ \else\vatno\fi\NN
+ website & \website\NN
+ who & \who\NN
+ yourletter & \yourletter\NN
+ yourref & \yourref\NN
+ zip & \zip\NN
\end{tabular}
}
\AtEndOfClass{%
\usepackage{hyperref}
- \year=0
}
% \DescribeMacro{\itable}
% |\itable| inserts an invoice table; arg1 should be the rows of the table.
% \begin{macrocode}
-\def\itable#1{
- \begin{tabularx}{\hsize}{@{}X@{\barsep\quad\qquad}r@{}}
- \multicolumn{2}{@{}c@{}}{\sffamily\descriptiontext\hfill
- \amounttext (\currency)}\ML
- #1
- \end{tabularx}
+\def\isodoc@bara{\raisebox{-1ex}{\rule{0pt}{3ex}}}
+\def\isodoc@barb{\rule{0pt}{2.7ex}}
+\def\isodoc@barc{\rule{0pt}{1ex}}
+\def\itable#1{\arrayrulewidth0.05em%
+ \ifvertical
+ \begin{tabularx}{\hsize}{@{}X|r@{}}%
+ \sffamily\descriptiontext &
+ \sffamily \amounttext (\currency)\isodoc@bara\\\hline\\[-5.6ex]
+ \isodoc@barb #1%
+ \end{tabularx}
+ \else
+ \begin{tabularx}{\hsize}{@{}Xr@{}}%
+ \sffamily\descriptiontext &
+ \sffamily \amounttext (\currency)\isodoc@bara\\\hline\\[-5.6ex]
+ \isodoc@barb #1%
+ \end{tabularx}
+ \fi
}
% \DescribeMacro{\iitem}
% |\iitem| inserts an invoice item in the |\itable|.
-% It inserts |arg1 & % arg2\NN|:
+% It inserts |\\arg1 & % arg2|:
% \begin{macrocode}
-\def\iitem#1#2{#1&#2\NN}
+\def\iitem#1#2{\\#1&#2\ignorespaces}
% \DescribeMacro{\itotal}
% \end{macrocode}
% |\itotal| inserts an invoice total in the |\itable|.\\
-% It inserts |\cmidrule[.05em]{2-2}Total & arg1\NN|:
+% The optional argument replaces |\totaltext|.
% \begin{macrocode}
-\def\itotal#1{\cmidrule[.05em]{2-2}\totaltext&\textbf{#1}\NN}
+\newcommand{\itotal}[2][\totaltext]{%
+ \isodoc@barc\\\cline{2-2}#1&\textbf{#2}\isodoc@barb
+}
% \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
@@ -1589,7 +1714,6 @@
\newcount\footcount
\newcommand{\invoice}[2][]{%
\closingfalse
- \def\barsep{\raisebox{-1.5ex}[0pt][0pt]{\rule{.05em}{4ex}}}%
\letter[#1,
opening={\bfseries\scshape\Large\invoicetext},
openingcomma={},
@@ -1602,7 +1726,8 @@
% The code is enclosed in an extra pair of braces, in order to keep option changes local
% \begin{macrocode}
\newcommand{\letter}[2][]{{%
- \newpage
+ \clearpage{\pagestyle{empty}\cleardoublepage}
+ \setcounter{section}{0}
\setkeys{isodoc}{#1}
\def\isodoc@lead{\ifforeign+\areacode-\else\phoneprefix\fi}
\ifx\isodoc@phone\empty\else\def\phone{\isodoc@lead\isodoc@phone}\fi
@@ -1610,14 +1735,18 @@
\ifx\isodoc@fax\empty\else\def\fax{\isodoc@lead\isodoc@fax}\fi
% \end{macrocode}
% By now, a language should have been chosen; if not, issue a warning
-% and set the language to the default: UKenglish
+% and set the language to the default: -n-GB
% \begin{macrocode}
- \ifx\yourlettertext\undefined\ClassWarning{isodoc}{
- You did not use the language option; using the default: UKenglish
- }\isodoc@UKenglish\fi
+ \ifx\yourlettertext\undefined%
+ \ClassWarning{isodoc}{You did not use the language option; using the default: en-GB}
+ \isodoc@enGB%
+ \fi
\ifnum\value{lettercount}=0%
\hypersetup{pdftitle={letter to \toname\ dated \today},
- pdfsubject={\subject}}
+ pdfsubject={\subject},
+ pdfauthor={\who},
+ pdfcreator={LaTeX with isodoc class},
+ }
\fi
\addtocounter{lettercount}{1}
\setcounter{page}{1}
@@ -1672,9 +1801,7 @@
}
\Tbox{140}{\headerpos}{35}{\noindent
{\@hft\datetext}\\
- \ifx\forcedate\empty%
- \ifnum\year=0\Undefined{date}\else\date\fi
- \else\forcedate\fi
+ \date
}
\ifx\subject\empty\else%
\Tbox{35}{\subjectpos}{140}{\noindent
@@ -1687,8 +1814,7 @@
\advance\textskip-12
\fi
% \end{macrocode}
-% Create any non-empty footfields, starting at the left;
-% (===>must have to be made variable with an option footfieldorder):
+% Create the footfields that occur in |\footorder|, starting at the left;
% \begin{macrocode}
\footcount=35
\iffooter
@@ -1699,8 +1825,8 @@
{\@hft\csname\thislevelitem text\endcsname}\\
\csname\thislevelitem\endcsname
}
- \advance\footcount35
\fi
+ \advance\footcount35
}{\footorder}
\fi
{ \parskip=0pt\parindent=0pt
@@ -1736,6 +1862,12 @@
\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
}
\label{LastPageOf\thelettercount}
}}
@@ -1816,410 +1948,19 @@
{\ocrb\acceptcents}
}
% \end{macrocode}
-% \DescribeMacro{\isodoc@catalan}
-% contributed by Cristian Peraferrer:
-% \begin{macrocode}
-\def\isodoc@catalan{%
- \gdef\accountdatatext {Dades banc\`aries}
- \gdef\accountnametext {a nom de}
- \gdef\accountnotext {N\'um. de compte}
- \gdef\amounttext {Quantitat}
- \gdef\ccname {cc}
- \gdef\cellphonetext {M\`obil}
- \gdef\chambertext {Cambra de comer\c{c}}
- \gdef\datetext {Data}
- \gdef\daystext {dies}
- \gdef\descriptiontext {Descripci\'o}
- \gdef\emailtext {E-mail}
- \gdef\enclosurestext {Annexos:}
- \gdef\enclosuretext {Annex:}
- \gdef\faxtext {Fax}
- \gdef\invoicetext {factura}
- \gdef\oftext {de}
- \gdef\ourreftext {La nostra refer\`encia}
- \gdef\pagetext {P\`agina}
- \gdef\phonetext {Tel\`efon}
- \gdef\referencetext {Refer\`encia}
- \gdef\routingnotext {Nombre de ruta}
- \gdef\subjecttext {Assumpte}
- \gdef\termtext {Termini del pagament}
- \gdef\totaltext {Total}
- \gdef\totext {A}
- \gdef\vatnotext {N\'um. IVA}
- \gdef\vattext {IVA}
- \gdef\websitetext {Web}
- \gdef\yourlettertext {La seva carta del}
- \gdef\yourreftext {La seva refer\`encia}
- \gdef\date {\number\day\space\ifcase\month\or
- gener\or febrer\or mar\c{c}\or abril\or maig\or juny\or
- juliol\or agost\or setembre\or octubre\or novembre\or desembre\fi
- \space \number\year
- }
-}
-% \end{macrocode}
-% \DescribeMacro{\isodoc@dutch}
-% \begin{macrocode}
-\def\isodoc@dutch{%
- \gdef\accountdatatext {Betalingsgegevens}
- \gdef\accountnametext {ten name van}
- \gdef\accountnotext {rekening nr}
- \gdef\amounttext {Bedrag}
- \gdef\ccname {Cc:}
- \gdef\cellphonetext {mobiel}
- \gdef\chambertext {kvk}
- \gdef\datetext {Datum}
- \gdef\daystext {dagen}
- \gdef\descriptiontext {Omschrijving}
- \gdef\emailtext {e-mail}
- \gdef\enclosurestext {Bijlagen:}
- \gdef\enclosuretext {Bijlage:}
- \gdef\faxtext {telefax}
- \gdef\invoicetext {rekening}
- \gdef\oftext {van}
- \gdef\ourreftext {Ons kenmerk}
- \gdef\pagetext {Bladnummer}
- \gdef\phonetext {telefoon}
- \gdef\referencetext {kenmerk}
- \gdef\routingnotext {banknummer}
- \gdef\subjecttext {Onderwerp:}
- \gdef\termtext {betalingstermijn}
- \gdef\totaltext {Totaal}
- \gdef\totext {Aan}
- \gdef\vatnotext {btw nr}
- \gdef\vattext {Btw}
- \gdef\websitetext {webstek}
- \gdef\yourlettertext {Uw brief van}
- \gdef\yourreftext {Uw kenmerk}
- \gdef\date {\number\day\space\ifcase\month\or
- januari\or februari\or maart\or april\or mei\or juni\or juli\or
- augustus\or september\or oktober\or november\or december\fi
- \space \number\year}
-}
-% \end{macrocode}
-% \DescribeMacro{\isodoc@french}
+% \DescribeMacro{\isodoc@xxYY}
% \begin{macrocode}
-\def\isodoc@french{%
- \gdef\accountdatatext {Donn\'ees banquaires}
- \gdef\accountnametext {au nom de}
- \gdef\accountnotext {no. compte}
- \gdef\amounttext {Montant}
- \gdef\ccname {Copie \`a}
- \gdef\cellphonetext {portable}
- \gdef\chambertext {c.c.i.}
- \gdef\datetext {Date:}
- \gdef\daystext {jours}
- \gdef\descriptiontext {Description}
- \gdef\emailtext {email}
- \gdef\enclosurestext {Pi\`eces jointes:}
- \gdef\enclosuretext {Pi\`ece jointe:}
- \gdef\faxtext {t\'el\'efax}
- \gdef\invoicetext {facture}
- \gdef\oftext {de}
- \gdef\ourreftext {Nos r\'ef\'erences:}
- \gdef\pagetext {Page}
- \gdef\phonetext {t\'el\'ephone}
- \gdef\referencetext {r\'ef\'erence}
- \gdef\routingnotext {num\'ero d'acheminement}
- \gdef\subjecttext {Objet:}
- \gdef\termtext {terme}
- \gdef\totaltext {Total}
- \gdef\totext {\`A l'attention de}
- \gdef\vatnotext {no. T.V.A.}
- \gdef\vattext {T.V.A.}
- \gdef\websitetext {site Web}
- \gdef\yourlettertext {Votre lettre du}
- \gdef\yourreftext {Vos r\'ef\'erences:}
- \gdef\date {\number\day\ifnum\day=1$^{er}$\fi\space\ifcase\month\or
- janvier\or f\'evrier\or mars\or avril\or mai\or juin\or
- juillet\or ao\^ut\or septembre\or octobre\or
- novembre\or d\'ecembre\fi \space \number\year}
-}
-% \end{macrocode}
-% \DescribeMacro{\isodoc@german}
-% \begin{macrocode}
-\def\isodoc@german{%
- \gdef\accountdatatext {Bezahlungsdaten}
- \gdef\accountnametext {Name}
- \gdef\accountnotext {Konto Nr}
- \gdef\amounttext {Betrag}
- \gdef\ccname {Kopien an}
- \gdef\cellphonetext {Handy}
- \gdef\chambertext {Register Nr}
- \gdef\datetext {Datum}
- \gdef\daystext {Tage}
- \gdef\descriptiontext {Umschreibung}
- \gdef\emailtext {E-mail}
- \gdef\enclosurestext {Anlagen:}
- \gdef\enclosuretext {Anlage:}
- \gdef\faxtext {Telefax}
- \gdef\invoicetext {rechnung}
- \gdef\oftext {aus}
- \gdef\ourreftext {Unser Zeichen}
- \gdef\pagetext {Seite}
- \gdef\phonetext {Telefon}
- \gdef\referencetext {Beleg Nr}
- \gdef\routingnotext {BLZ}
- \gdef\subjecttext {Betrifft:}
- \gdef\termtext {Zahlungstermin}
- \gdef\totaltext {Insgesamt}
- \gdef\totext {An}
- \gdef\vatnotext {Ustid Nr}
- \gdef\vattext {MwSt}
- \gdef\websitetext {Webseite}
- \gdef\yourlettertext {Ihr Brief vom}
- \gdef\yourreftext {Ihr Zeichen}
- \gdef\date {\number\day.\space\ifcase\month\or
- Januar\or Februar\or M\"arz\or April\or Mai\or Juni\or
- Juli\or August\or September\or Oktober\or November\or Dezember\fi
- \space\number\year}
-}
-% \end{macrocode}
-% \DescribeMacro{\isodoc@italian}
-% contributed by Walter Giocoso:
-% \begin{macrocode}
-\def\isodoc@italian{%
- \gdef\accountdatatext {Coordinate bancarie}
- \gdef\accountnametext {intestato a}
- \gdef\accountnotext {n$^o$~del conto}
- \gdef\amounttext {Prezzo}
- \gdef\ccname {Per conoscenza a:}
- \gdef\cellphonetext {cellulare:}
- \gdef\chambertext {}
- \gdef\datetext {Data:}
- \gdef\daystext {giorni}
- \gdef\descriptiontext {Descrizione}
- \gdef\emailtext {e-mail:}
- \gdef\enclosurestext {Allegati:}
- \gdef\enclosuretext {Allegato:}
- \gdef\faxtext {fax:}
- \gdef\invoicetext {fattura}
- \gdef\oftext {di}
- \gdef\ourreftext {Nostro riferimento:}
- \gdef\pagetext {Pagina}
- \gdef\phonetext {telefono:}
- \gdef\referencetext {riferimento}
- \gdef\routingnotext {numero di routing}
- \gdef\subjecttext {Oggetto:}
- \gdef\termtext {scadenza}
- \gdef\totaltext {Totale}
- \gdef\totext {All'attenzione di:}
- \gdef\vatnotext {Partita I.V.A.}
- \gdef\vattext {I.V.A.}
- \gdef\websitetext {sito Web:}
- \gdef\yourlettertext {Vostra lettera del:}
- \gdef\yourreftext {Vostro riferimento:}
- \gdef\date {\number\day\ifnum\day=1\fi
- ~\ifcase\month\or
- Gennaio\or Febbraio\or Marzo\or Aprile\or Maggio\or Giugno\or
- Luglio\or Agosto\or Settembre\or Ottobre\or Novembre\or Dicembre\fi
- \space \number\year}
-}
-% \end{macrocode}
-% \DescribeMacro{\isodoc@norsk}
-% contributed by Sveinung Heggen:
-% \begin{macrocode}
-\def\isodoc@norsk {%
- \gdef\accountdatatext {betales til}
- \gdef\accountnametext {til}
- \gdef\accountnotext {faktura nr}
- \gdef\amounttext {Bel\o{}p}
- \gdef\ccname {kopi til:}
- \gdef\cellphonetext {mobil}
- \gdef\chambertext {}
- \gdef\datetext {Dato}
- \gdef\daystext {dager}
- \gdef\descriptiontext {Beskrivelse}
- \gdef\emailtext {e-post}
- \gdef\enclosurestext {Vedlegg:}
- \gdef\enclosuretext {Vedlegg:}
- \gdef\faxtext {telefaks}
- \gdef\invoicetext {faktura}
- \gdef\oftext {av}
- \gdef\ourreftext {V\aa{}r ref:}
- \gdef\pagetext {Side}
- \gdef\phonetext {telefon}
- \gdef\referencetext {referanse}
- \gdef\routingnotext {routing-nummer}
- \gdef\subjecttext {Vedr:}
- \gdef\termtext {betalingsfrist}
- \gdef\totaltext {Total}
- \gdef\totext {Til}
- \gdef\vatnotext {Org. nr.}
- \gdef\vattext {Mva}
- \gdef\websitetext {hjemmeside}
- \gdef\yourlettertext {Deres brev av}
- \gdef\yourreftext {Deres ref:}
- \gdef\date {\number\day.\space\ifcase\month\or
- januar\or februar\or mars\or april\or mai\or juni\or
- juli\or august\or september\or oktober\or november\or desember\fi
- \space \number\year}
-}
-% \end{macrocode}
-% \DescribeMacro{\isodoc@serbian}
-% contributed by Zoran T. Filipovic:
-% \begin{macrocode}
-\def\isodoc@serbian {%
- \gdef\totaltext {Ukupno}
- \gdef\vattext {PDV}
- \gdef\accountdatatext {Podaci o bankarskom sektoru}
- \gdef\accountnametext {na ime}
- \gdef\accountnotext {Ra\v cun br.}
- \gdef\amounttext {Iznos}
- \gdef\ccname {Kopije}
- \gdef\cellphonetext {Mobilni}
- \gdef\chambertext {Spisak br.}
- \gdef\datetext {Datum}
- \gdef\daystext {dana}
- \gdef\descriptiontext {Opis}
- \gdef\emailtext {Email}
- \gdef\enclosurestext {Prilozi:}
- \gdef\enclosuretext {Prilog:}
- \gdef\faxtext {Telefax}
- \gdef\invoicetext {faktura}
- \gdef\oftext {od}
- \gdef\ourreftext {Na\v s broj}
- \gdef\pagetext {Strana}
- \gdef\phonetext {Telefon}
- \gdef\referencetext {Dokumet br.}
- \gdef\routingnotext {BLZ}
- \gdef\subjecttext {Predmet:}
- \gdef\termtext {rok pla\' canja}
- \gdef\totext {U}
- \gdef\vatnotext {porez br.}
- \gdef\websitetext {Website}
- \gdef\yourlettertext {Va\v se pismo od}
- \gdef\yourreftext {Va\v s broj}
- \gdef\date{\number\day.~\ifcase\month\or
- Januar\or Februar\or Mart\or April\or Maj\or Jun\or
- Jul\or Avgust\or Septembar\or Oktobar\or Novembar\or Decembar\fi
- \space\number\year}
-}
-% \end{macrocode}
-% \DescribeMacro{\isodoc@spanish}
-% contributed by Cristian Peraferrer:
-% \begin{macrocode}
-\def\isodoc@spanish{%
- \gdef\accountdatatext {Datos bancarios}
- \gdef\accountnametext {a nombre de}
- \gdef\accountnotext {N\'um. de cuenta}
- \gdef\amounttext {Cantidad}
- \gdef\ccname {cc}
- \gdef\cellphonetext {M\'ovil}
- \gdef\chambertext {C\'amara de comercio}
- \gdef\datetext {Fecha}
- \gdef\daystext {d\'{\i}as}
- \gdef\descriptiontext {Descripci\'on}
- \gdef\emailtext {E-mail}
- \gdef\enclosurestext {Anexos:}
- \gdef\enclosuretext {Anexo:}
- \gdef\faxtext {Fax}
- \gdef\invoicetext {factura}
- \gdef\oftext {de}
- \gdef\ourreftext {Nuestra referencia}
- \gdef\pagetext {P\'agina}
- \gdef\phonetext {Tel\'efono}
- \gdef\referencetext {Referencia}
- \gdef\routingnotext {n\'umero de ruta}
- \gdef\subjecttext {Asunto}
- \gdef\termtext {Plazo de pago}
- \gdef\totaltext {Total}
- \gdef\totext {A}
- \gdef\vatnotext {N\'um. IVA}
- \gdef\vattext {IVA}
- \gdef\websitetext {Web}
- \gdef\yourlettertext {Su carta de}
- \gdef\yourreftext {Su referencia}
- \gdef\date {\number\day\space\ifcase\month\or
- enero\or febrero\or marzo\or abril\or mayo\or junio\or
- julio\or agosto\or septiembre\or octubre\or noviembre\or diciembre\fi
- \space \number\year
- }
-}
-% \DescribeMacro{\isodoc@UKenglish}
-% \begin{macrocode}
-\def\isodoc@UKenglish{%
- \gdef\accountdatatext {Banking data}
- \gdef\accountnametext {in the name of}
- \gdef\accountnotext {Account no.}
- \gdef\amounttext {Amount}
- \gdef\ccname {cc}
- \gdef\cellphonetext {cellphone}
- \gdef\chambertext {ch.comm.}
- \gdef\datetext {Date}
- \gdef\daystext {days}
- \gdef\descriptiontext {Description}
- \gdef\emailtext {email}
- \gdef\enclosurestext {Enclosures:}
- \gdef\enclosuretext {Enclosure:}
- \gdef\faxtext {telefax}
- \gdef\invoicetext {invoice}
- \gdef\oftext {of}
- \gdef\ourreftext {Our reference}
- \gdef\pagetext {Page}
- \gdef\phonetext {telephone}
- \gdef\referencetext {Reference}
- \gdef\routingnotext {Routing no}
- \gdef\subjecttext {Subject:}
- \gdef\termtext {term of payment}
- \gdef\totaltext {Total}
- \gdef\totext {To}
- \gdef\vatnotext {vat no.}
- \gdef\vattext {Vat}
- \gdef\websitetext {website}
- \gdef\yourlettertext {Your letter of}
- \gdef\yourreftext {Your reference}
- \gdef\date{\ifcase\day\or
- 1st\or 2nd\or 3rd\or 4th\or 5th\or
- 6th\or 7th\or 8th\or 9th\or 10th\or
- 11th\or 12th\or 13th\or 14th\or 15th\or
- 16th\or 17th\or 18th\or 19th\or 20th\or
- 21st\or 22nd\or 23rd\or 24th\or 25th\or
- 26th\or 27th\or 28th\or 29th\or 30th\or
- 31st\fi\space\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
- \space \number\year}
-}
-% \end{macrocode}
-% \DescribeMacro{\isodoc@USenglish}
-% \begin{macrocode}
-\def\isodoc@USenglish{%
- \gdef\accountdatatext {Bank details}
- \gdef\accountnametext {in the name of}
- \gdef\accountnotext {Account no.}
- \gdef\amounttext {Amount}
- \gdef\ccname {cc}
- \gdef\cellphonetext {cellphone}
- \gdef\chambertext {ch.comm.}
- \gdef\datetext {Date}
- \gdef\daystext {days}
- \gdef\descriptiontext {Description}
- \gdef\emailtext {email}
- \gdef\enclosurestext {Enclosures:}
- \gdef\enclosuretext {Enclosure:}
- \gdef\faxtext {telefax}
- \gdef\invoicetext {invoice}
- \gdef\oftext {of}
- \gdef\ourreftext {Our reference}
- \gdef\pagetext {Page}
- \gdef\phonetext {telephone}
- \gdef\referencetext {Reference}
- \gdef\routingnotext {Routing no}
- \gdef\subjecttext {Subject:}
- \gdef\termtext {term of payment}
- \gdef\totaltext {Total}
- \gdef\totext {To}
- \gdef\vatnotext {vat no.}
- \gdef\vattext {Vat}
- \gdef\websitetext {website}
- \gdef\yourlettertext {Your letter of}
- \gdef\yourreftext {Your reference}
- \gdef\date {\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
- \space\number\day, \number\year}
-}
+\input{isodoc-ca-ES.ldf}
+\input{isodoc-de-DE.ldf}
+\input{isodoc-en-GB.ldf}
+\input{isodoc-en-US.ldf}
+\input{isodoc-es-ES.ldf}
+\input{isodoc-fr-FR.ldf}
+\input{isodoc-it-IT.ldf}
+\input{isodoc-nb-NO.ldf}
+\input{isodoc-nl-BE.ldf}
+\input{isodoc-nl-NL.ldf}
+\input{isodoc-sr-RS.ldf}
% \end{macrocode}
% \Finale
\endinput
-$Id: isodoc.dtx,v 1.40 2012/09/26 13:41:30 wybo Exp $