diff options
Diffstat (limited to 'Master/texmf-dist')
25 files changed, 1960 insertions, 1720 deletions
diff --git a/Master/texmf-dist/tex/context/third/letter/base/t-letter.tex b/Master/texmf-dist/tex/context/third/letter/base/t-letter.tex index e0647992b93..3ba2a36ee5a 100644 --- a/Master/texmf-dist/tex/context/third/letter/base/t-letter.tex +++ b/Master/texmf-dist/tex/context/third/letter/base/t-letter.tex @@ -1,14 +1,16 @@ %D \module %D [ file=t-letter, -%D version=2008.07.08, +%D version=2008.10.27, %D title=\CONTEXT\ User Module, %D subtitle=Framework for Letters, %D author=Wolfgang Schuster, %D date=\currentdate, -%D copyright=Public Domain] +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] %M \loadsetups[cont-en.xml] -%M \loadsetups[t-letter.xml] +%M \loadsetups[letter.xml] %D \subject{Constants and Variables} @@ -18,54 +20,52 @@ %D I use a few extra constants and variables in my module. -\startconstants all - - graphic: graphic - head: head - foot: foot - backaddress: backaddress - topmark: topmark - botmark: botmark - cutmark: cutmark - endmark: endmark - usermark: usermark - foldmark: foldmark - extension: extension - interface: interface - backgroundimage: backgroundimage - whitespace: whitespace - optimize: optimize - nexthead: nexthead - nextfoot: nextfoot -\stopconstants - -\startvariables all - - letter: letter - secondpage: secondpage - backaddress: backaddress - foot: foot - topmark: topmark - botmark: botmark - cutmark: cutmark - endmark: endmark - reference: reference - location: location - option: option - address: address - foldmark: foldmark - usermark: usermark - opening: opening - closing: closing - layer: layer - letternext: letternext - lettermain: lettermain - special: special - notation: notation - inside: inside - nexthead: nexthead - nextfoot: nextfoot -\stopvariables +\startinterface all + \setinterfaceconstant {graphic} {graphic} + \setinterfaceconstant {head} {head} + \setinterfaceconstant {foot} {foot} + \setinterfaceconstant {backaddress} {backaddress} + \setinterfaceconstant {topmark} {topmark} + \setinterfaceconstant {botmark} {botmark} + \setinterfaceconstant {cutmark} {cutmark} + \setinterfaceconstant {endmark} {endmark} + \setinterfaceconstant {usermark} {usermark} + \setinterfaceconstant {foldmark} {foldmark} + \setinterfaceconstant {extension} {extension} + \setinterfaceconstant {interface} {interface} + \setinterfaceconstant {backgroundimage} {backgroundimage} + \setinterfaceconstant {whitespace} {whitespace} + \setinterfaceconstant {optimize} {optimize} + \setinterfaceconstant {nexthead} {nexthead} + \setinterfaceconstant {nextfoot} {nextfoot} +\stopinterface + +\startinterface all + \setinterfacevariable {letter} {letter} + \setinterfacevariable {secondpage} {secondpage} + \setinterfacevariable {backaddress} {backaddress} + \setinterfacevariable {foot} {foot} + \setinterfacevariable {topmark} {topmark} + \setinterfacevariable {botmark} {botmark} + \setinterfacevariable {cutmark} {cutmark} + \setinterfacevariable {endmark} {endmark} + \setinterfacevariable {reference} {reference} + \setinterfacevariable {location} {location} + \setinterfacevariable {option} {option} + \setinterfacevariable {address} {address} + \setinterfacevariable {foldmark} {foldmark} + \setinterfacevariable {usermark} {usermark} + \setinterfacevariable {opening} {opening} + \setinterfacevariable {closing} {closing} + \setinterfacevariable {layer} {layer} + \setinterfacevariable {letternext} {letternext} + \setinterfacevariable {lettermain} {lettermain} + \setinterfacevariable {special} {special} + \setinterfacevariable {notation} {notation} + \setinterfacevariable {inside} {inside} + \setinterfacevariable {nexthead} {nexthead} + \setinterfacevariable {nextfoot} {nextfoot} +\stopinterface %D Before we start the real module let us introduce two namespaces %D for the style and content setup commands. @@ -77,7 +77,7 @@ \startmodule[letter] \setupmodule - [\c!style=cont-ltr, % default letter style + [\c!style=, % default letter style \c!extension=, % default letter extension \c!interface=default] % default letter interface @@ -452,6 +452,8 @@ \setupletterstyle [#1][\v!option] [\c!symbol=, + \c!alternative=\v!a, + \c!separator=\crlf, \c!offset=\zeropoint, \c!leftmargin=\zeropoint, \c!rightmargin=\zeropoint]% @@ -993,6 +995,12 @@ \useletterstyle [\currentmoduleparameter\c!style ] \useletterextension[\currentmoduleparameter\c!extension] +%D The special style \mono{user} is not included in the archive and has +%D to be written by the user itself, it can be used to set default values +%D for personal letters and to load additional extensions and styles. + +\useletterstyle[user] % don't rely on the name, it can change for the moment + \stopmodule \protect \endinput diff --git a/Master/texmf-dist/tex/context/third/letter/extension/addrentry.nle b/Master/texmf-dist/tex/context/third/letter/extension/addrentry.nle index b6c2b4d053d..947876c101a 100644 --- a/Master/texmf-dist/tex/context/third/letter/extension/addrentry.nle +++ b/Master/texmf-dist/tex/context/third/letter/extension/addrentry.nle @@ -1,33 +1,35 @@ -%D \module
-%D [ file=addrentry,
-%D version=2008.07.05,
-%D title=\CONTEXT\ Letter Extension,
-%D subtitle=KOMA-Script addrentry support,
-%D author=Wolfgang Schuster,
-%D date=\currentdate,
-%D copyright=Public Domain]
-
-\unprotect
-
-\def\addrentry#1#2#3#4#5#6#7#8#9%
- {\doifsomething{#1}
- {\doifelsenothing{#2}
- {\setvalue{\????ld\????ld#9}{#1\\#3}}
- {\setvalue{\????ld\????ld#9}{#2\space#1\\#3}}}}
-
-\def\adrentry#1#2#3#4#5#6#7%
- {\addrentry{#1}{#2}{#3}{#4}{#5}{#6}{#7}{}}
-
-\let\adrchar\gobbleoneargument
-
-\def\address!file!extension{adr}
-
-\def\useaddressfile
- {\dosingleargument\douseaddressfile}
-
-\def\douseaddressfile[#1]%
- {\def\dododouseaddressfile##1%
- {\readfile{##1.\address!file!extension}\donothing\donothing}%
- \processcommalist[#1]\dododouseaddressfile}
-
-\protect \endinput
+%D \module +%D [ file=addrentry, +%D version=2008.09.24, +%D title=\CONTEXT\ Letter Extension, +%D subtitle=KOMA-Script addrentry support, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] + +\unprotect + +\def\addrentry#1#2#3#4#5#6#7#8#9% + {\doifsomething{#1} + {\doifelsenothing{#2} + {\setvalue{\????ld\????ld#9}{#1\\#3}} + {\setvalue{\????ld\????ld#9}{#2\space#1\\#3}}}} + +\def\adrentry#1#2#3#4#5#6#7#8% + {\addrentry{#1}{#2}{#3}{#4}{#5}{#6}{#7}{}{#8}} + +\let\adrchar\gobbleoneargument + +\def\address!file!extension{adr} + +\def\useaddressfile + {\dosingleargument\douseaddressfile} + +\def\douseaddressfile[#1]% + {\def\dododouseaddressfile##1% + {\readfile{##1.\address!file!extension}\donothing\donothing}% + \processcommalist[#1]\dododouseaddressfile} + +\protect \endinput diff --git a/Master/texmf-dist/tex/context/third/letter/extension/corres.nle b/Master/texmf-dist/tex/context/third/letter/extension/corres.nle index 6a68de79d8e..21eb2612a70 100644 --- a/Master/texmf-dist/tex/context/third/letter/extension/corres.nle +++ b/Master/texmf-dist/tex/context/third/letter/extension/corres.nle @@ -1,43 +1,44 @@ -%D \module
-%D [ file=corres,
-%D version=2008.07.05,
-%D title=\CONTEXT\ Letter Extension,
-%D subtitle=XML Handling,
-%D author=Wolfgang Schuster,
-%D date=\currentdate,
-%D copyright=Public Domain]
-
-\unprotect
-
-\startconstants all
-
- prefix: prefix
- suffix: suffix
- initials: initials
- formalname: formalname
- informalname: informalname
-\stopconstants
-
-\usemodule[corres]
-
-\setupletter
- [\c!prefix=\XMLflush{prefix},
- \c!suffix=\XMLflush{suffix},
- \c!initials=\XMLflush{initials},
- \c!formalname=\XMLflush{formalname},
- \c!informalname=\XMLflush{informalname}]
-
-\setupletter
- [\c!toaddress=\XMLflush{address}]
-
-\startsetups[letter:opening]
-\lettervalue\c!prefix
-\doiflettervalue\c!formalname\space
-\lettervalue\c!formalname
-\stopsetups
-
-\startsetups[contact:handle]
-\setups[letter:place]
-\stopsetups
-
-\protect \endinput
+%D \module +%D [ file=corres, +%D version=2008.10.27, +%D title=\CONTEXT\ Letter Extension, +%D subtitle=XML Handling, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] + +\unprotect + +\startinterface all + \setinterfaceconstant {prefix} {prefix} + \setinterfaceconstant {suffix} {suffix} + \setinterfaceconstant {initials} {initials} + \setinterfaceconstant {formalname} {formalname} + \setinterfaceconstant {informalname} {informalname} +\stopinterface + +\usemodule[corres] + +\setupletter + [\c!prefix=\XMLflush{prefix}, + \c!suffix=\XMLflush{suffix}, + \c!initials=\XMLflush{initials}, + \c!formalname=\XMLflush{formalname}, + \c!informalname=\XMLflush{informalname}] + +\setupletter + [\c!toaddress=\XMLflush{address}] + +\startsetups[letter:opening] +\lettervalue\c!prefix +\doiflettervalue\c!formalname\space +\lettervalue\c!formalname +\stopsetups + +\startsetups[contact:handle] +\setups[letter:place] +\stopsetups + +\protect \endinput diff --git a/Master/texmf-dist/tex/context/third/letter/extension/label.nle b/Master/texmf-dist/tex/context/third/letter/extension/label.nle index 78df3e84e60..5e1d344e087 100644 --- a/Master/texmf-dist/tex/context/third/letter/extension/label.nle +++ b/Master/texmf-dist/tex/context/third/letter/extension/label.nle @@ -1,268 +1,271 @@ -%D \module
-%D [ file=label,
-%D version=2008.07.03,
-%D title=\CONTEXT\ Letter Extension,
-%D subject=Labels,
-%D author=Wolfgang Schuster,
-%D date=\currentdate,
-%D copyright=Public Domain]
-
-\unprotect
-
-\startconstants all
-
- yourref: yourref
- yourmail: yourmail
- myref: myref
- mymail: mymail
- customer: customer
- invoice: invoice
- subject: subject
- cc: cc
- enclosure: enclosure
- phone: phone
- fax: fax
- email: email
- url: url
- bank: bank
- name: name
- room: room
-% yourorder: yourorder -> Ihre Bestellung vom
-% ourinvoice: ourinvoice -> Unsere Rechnung vom
-\stopconstants
-
-%D Label: name
-
-\setuplabeltext[\s!en][\v!letter:\c!name=Name]
-\setuplabeltext[\s!nl][\v!letter:\c!name=]
-\setuplabeltext[\s!de][\v!letter:\c!name=Name]
-\setuplabeltext[\s!fr][\v!letter:\c!name=]
-\setuplabeltext[\s!it][\v!letter:\c!name=]
-\setuplabeltext[\s!es][\v!letter:\c!name=]
-
-%D Label: room
-
-\setuplabeltext[\s!en][\v!letter:\c!room=Room]
-\setuplabeltext[\s!nl][\v!letter:\c!room=]
-\setuplabeltext[\s!de][\v!letter:\c!room=Zimmer]
-\setuplabeltext[\s!fr][\v!letter:\c!room=]
-\setuplabeltext[\s!it][\v!letter:\c!room=]
-\setuplabeltext[\s!es][\v!letter:\c!room=]
-
-%D Label: yourref
-
-\setuplabeltext[\s!en][\v!letter:\c!yourref=Your ref.]
-\setuplabeltext[\s!nl][\v!letter:\c!yourref=Uw kenmerk]
-\setuplabeltext[\s!de][\v!letter:\c!yourref=Ihr Zeichen]
-\setuplabeltext[\s!fr][\v!letter:\c!yourref=Vos r\eacute f\eacute rences]
-\setuplabeltext[\s!it][\v!letter:\c!yourref=Vs./Rif.]
-\setuplabeltext[\s!es][\v!letter:\c!yourref=Su ref.]
-
-%D Label: yourmail
-
-\setuplabeltext[\s!en][\v!letter:\c!yourmail=Your letter of]
-\setuplabeltext[\s!nl][\v!letter:\c!yourmail=Uw brief van]
-\setuplabeltext[\s!de][\v!letter:\c!yourmail=Ihre Nachricht vom]
-\setuplabeltext[\s!fr][\v!letter:\c!yourmail=Votre lettre du]
-\setuplabeltext[\s!it][\v!letter:\c!yourmail=Vs.~lettera del]
-\setuplabeltext[\s!es][\v!letter:\c!yourmail=Su carta de]
-
-%D Label: myref
-
-\setuplabeltext[\s!en][\v!letter:\c!myref=Our ref.]
-\setuplabeltext[\s!nl][\v!letter:\c!myref=Ons kenmerk]
-\setuplabeltext[\s!de][\v!letter:\c!myref=Unser Zeichen]
-\setuplabeltext[\s!fr][\v!letter:\c!myref=Nos r\eacute f\eacute rences]
-\setuplabeltext[\s!it][\v!letter:\c!myref=Ns./Rif.]
-\setuplabeltext[\s!es][\v!letter:\c!myref=Nuestra ref.]
-
-%D Label: mymail
-
-\setuplabeltext[\s!en][\v!letter:\c!mymail=Our letter of]
-\setuplabeltext[\s!nl][\v!letter:\c!mymail=Ons brief van]
-\setuplabeltext[\s!de][\v!letter:\c!mymail=Unsere Nachricht vom]
-\setuplabeltext[\s!fr][\v!letter:\c!mymail=]
-\setuplabeltext[\s!it][\v!letter:\c!mymail=]
-\setuplabeltext[\s!es][\v!letter:\c!mymail=]
-
-%D Label: customer
-
-\setuplabeltext[\s!en][\v!letter:\c!customer=Customer no.]
-\setuplabeltext[\s!nl][\v!letter:\c!customer=Klant No.]
-\setuplabeltext[\s!de][\v!letter:\c!customer=Kundennummer]
-\setuplabeltext[\s!fr][\v!letter:\c!customer=Num\eacute ro de client]
-\setuplabeltext[\s!it][\v!letter:\c!customer=Nr.~cliente]
-\setuplabeltext[\s!es][\v!letter:\c!customer=No. de cliente]
-
-%D Label: invoice
-
-\setuplabeltext[\s!en][\v!letter:\c!invoice=Invoice no.]
-\setuplabeltext[\s!nl][\v!letter:\c!invoice=Rekening No.]
-\setuplabeltext[\s!de][\v!letter:\c!invoice=Rechnungsnummer]
-\setuplabeltext[\s!fr][\v!letter:\c!invoice=Num\eacute ro de facture]
-\setuplabeltext[\s!it][\v!letter:\c!invoice=Nr.~fattura]
-\setuplabeltext[\s!es][\v!letter:\c!invoice=No. de factura]
-
-%D Label: attention
-
-\setuplabeltext[\s!en][\v!letter:\c!attention=] % Attention
-\setuplabeltext[\s!nl][\v!letter:\c!attention=]
-\setuplabeltext[\s!de][\v!letter:\c!attention=]
-\setuplabeltext[\s!fr][\v!letter:\c!attention=]
-\setuplabeltext[\s!it][\v!letter:\c!attention=]
-\setuplabeltext[\s!es][\v!letter:\c!attention=]
-
-%D Label: subject
-
-\setuplabeltext[\s!en][\v!letter:\c!subject=] % Subject
-\setuplabeltext[\s!nl][\v!letter:\c!subject=] % Onderwerp
-\setuplabeltext[\s!de][\v!letter:\c!subject=] % Betrifft
-\setuplabeltext[\s!fr][\v!letter:\c!subject=] % Concernant
-\setuplabeltext[\s!it][\v!letter:\c!subject=] % Oggetto
-\setuplabeltext[\s!es][\v!letter:\c!subject=] % Asunto
-
-%D Label: cc
-
-\setuplabeltext[\s!en][\v!letter:\c!cc=cc]
-\setuplabeltext[\s!nl][\v!letter:\c!cc=Kopie aan]
-\setuplabeltext[\s!de][\v!letter:\c!cc=Kopien an]
-\setuplabeltext[\s!fr][\v!letter:\c!cc=Copie \agrave]
-\setuplabeltext[\s!it][\v!letter:\c!cc=Per conoscenza]
-\setuplabeltext[\s!es][\v!letter:\c!cc=Copias]
-
-%D Label: enclosure
-
-\setuplabeltext[\s!en][\v!letter:\c!enclosure=encl]
-\setuplabeltext[\s!nl][\v!letter:\c!enclosure=Bijlage(n)]
-\setuplabeltext[\s!de][\v!letter:\c!enclosure=Anlagen]
-\setuplabeltext[\s!fr][\v!letter:\c!enclosure=Annexes]
-\setuplabeltext[\s!it][\v!letter:\c!enclosure=Allegato]
-\setuplabeltext[\s!es][\v!letter:\c!enclosure=Adjunto]
-
-%D Label: to
-
-\setuplabeltext[\s!en][\v!letter:\c!to=To]
-\setuplabeltext[\s!nl][\v!letter:\c!to=Aan]
-\setuplabeltext[\s!de][\v!letter:\c!to=An]
-\setuplabeltext[\s!fr][\v!letter:\c!to=A]
-\setuplabeltext[\s!it][\v!letter:\c!to=A]
-\setuplabeltext[\s!es][\v!letter:\c!to=A]
-
-%D Label: toname
-
-\setuplabeltext[\s!en][\v!letter:\c!toname=To]
-\setuplabeltext[\s!nl][\v!letter:\c!toname=Aan]
-\setuplabeltext[\s!de][\v!letter:\c!toname=An]
-\setuplabeltext[\s!fr][\v!letter:\c!toname=A]
-\setuplabeltext[\s!it][\v!letter:\c!toname=A]
-\setuplabeltext[\s!es][\v!letter:\c!toname=A]
-
-%D Label: from
-
-\setuplabeltext[\s!en][\v!letter:\c!from=From]
-\setuplabeltext[\s!nl][\v!letter:\c!from=Van]
-\setuplabeltext[\s!de][\v!letter:\c!from=Von]
-\setuplabeltext[\s!fr][\v!letter:\c!from=De]
-\setuplabeltext[\s!it][\v!letter:\c!from=Da]
-\setuplabeltext[\s!es][\v!letter:\c!from=De]
-
-%D Label: fromname
-
-\setuplabeltext[\s!en][\v!letter:\c!fromname=From]
-\setuplabeltext[\s!nl][\v!letter:\c!fromname=Van]
-\setuplabeltext[\s!de][\v!letter:\c!fromname=Von]
-\setuplabeltext[\s!fr][\v!letter:\c!fromname=De]
-\setuplabeltext[\s!it][\v!letter:\c!fromname=Da]
-\setuplabeltext[\s!es][\v!letter:\c!fromname=De]
-
-%D Label: date
-
-\setuplabeltext[\s!en][\v!letter:\c!date=Date]
-\setuplabeltext[\s!nl][\v!letter:\c!date=Datum]
-\setuplabeltext[\s!de][\v!letter:\c!date=Datum]
-\setuplabeltext[\s!fr][\v!letter:\c!date=Date]
-\setuplabeltext[\s!it][\v!letter:\c!date=Data]
-\setuplabeltext[\s!es][\v!letter:\c!date=Fecha]
-
-%D Label: phone
-
-\setuplabeltext[\s!en][\v!letter:\c!phone=Phone]
-\setuplabeltext[\s!nl][\v!letter:\c!phone=Telefoon]
-\setuplabeltext[\s!de][\v!letter:\c!phone=Telefon]
-\setuplabeltext[\s!fr][\v!letter:\c!phone=T\eacute l\eacute phone]
-\setuplabeltext[\s!it][\v!letter:\c!phone=Telefono]
-\setuplabeltext[\s!es][\v!letter:\c!phone=Tel\eacute fono]
-
-%D Label: fax
-
-\setuplabeltext[\s!en][\v!letter:\c!fax=Fax]
-\setuplabeltext[\s!nl][\v!letter:\c!fax=Fax]
-\setuplabeltext[\s!de][\v!letter:\c!fax=Fax]
-\setuplabeltext[\s!fr][\v!letter:\c!fax=T\eacute l\eacute fax]
-\setuplabeltext[\s!it][\v!letter:\c!fax=Fax]
-\setuplabeltext[\s!es][\v!letter:\c!fax=Fax]
-
-%D Label: email
-
-\setuplabeltext[\s!en][\v!letter:\c!email=Email]
-\setuplabeltext[\s!nl][\v!letter:\c!email=E--mail]
-\setuplabeltext[\s!de][\v!letter:\c!email=E-Mail]
-\setuplabeltext[\s!fr][\v!letter:\c!email=E-mail]
-\setuplabeltext[\s!it][\v!letter:\c!email=Email]
-\setuplabeltext[\s!es][\v!letter:\c!email=Email]
-
-%D Label: url
-
-\setuplabeltext[\s!en][\v!letter:\c!url=Url]
-\setuplabeltext[\s!nl][\v!letter:\c!url=URL]
-\setuplabeltext[\s!de][\v!letter:\c!url=URL]
-\setuplabeltext[\s!fr][\v!letter:\c!url=URL]
-\setuplabeltext[\s!it][\v!letter:\c!url=Sito Web]
-\setuplabeltext[\s!es][\v!letter:\c!url=URL]
-
-%D Label: bank
-
-\setuplabeltext[\s!en][\v!letter:\c!bank=Bank account]
-\setuplabeltext[\s!nl][\v!letter:\c!bank=Bankrekening]
-\setuplabeltext[\s!de][\v!letter:\c!bank=Bankverbindung]
-\setuplabeltext[\s!fr][\v!letter:\c!bank=Compte en banque]
-\setuplabeltext[\s!it][\v!letter:\c!bank=Conto bancario]
-\setuplabeltext[\s!es][\v!letter:\c!bank=Cuenta bancaria]
-
-%D Label: date
-
-\setuplabeltext[\s!en][\v!memo:\c!date=Date: ]
-\setuplabeltext[\s!nl][\v!memo:\c!date=Datum: ]
-\setuplabeltext[\s!de][\v!memo:\c!date=Datum: ]
-\setuplabeltext[\s!fr][\v!memo:\c!date=Date: ]
-\setuplabeltext[\s!it][\v!memo:\c!date=Data: ]
-\setuplabeltext[\s!es][\v!memo:\c!date=Fecha: ]
-
-%D Label: fromname
-
-\setuplabeltext[\s!en][\v!letter:\c!fromname=From: ]
-\setuplabeltext[\s!nl][\v!memo:\c!fromname=Van: ]
-\setuplabeltext[\s!de][\v!memo:\c!fromname=Von: ]
-\setuplabeltext[\s!fr][\v!memo:\c!fromname=De: ]
-\setuplabeltext[\s!it][\v!memo:\c!fromname=Da: ]
-\setuplabeltext[\s!es][\v!memo:\c!fromname=De: ]
-
-%D Label: toname
-
-\setuplabeltext[\s!en][\v!memo:\c!toname=To: ]
-\setuplabeltext[\s!nl][\v!memo:\c!toname=Aan: ]
-\setuplabeltext[\s!de][\v!memo:\c!toname=An: ]
-\setuplabeltext[\s!fr][\v!memo:\c!toname=A: ]
-\setuplabeltext[\s!it][\v!memo:\c!toname=A: ]
-\setuplabeltext[\s!es][\v!memo:\c!toname=A: ]
-
-%D Label: subject
-
-\setuplabeltext[\s!en][\v!memo:\c!subject=Subject: ]
-\setuplabeltext[\s!nl][\v!memo:\c!subject=Onderwerp: ]
-\setuplabeltext[\s!de][\v!memo:\c!subject=Betrifft: ]
-\setuplabeltext[\s!fr][\v!memo:\c!subject=Concernant: ]
-\setuplabeltext[\s!it][\v!memo:\c!subject=Oggetto: ]
-\setuplabeltext[\s!es][\v!memo:\c!subject=Asunto: ]
-
-\protect \endinput
+%D \module +%D [ file=label, +%D version=2008.08.08, +%D title=\CONTEXT\ Letter Extension, +%D subject=Labels, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] + +\unprotect + +% french labels: Olivier Guéry + +\startinterface all + \setinterfaceconstant {yourref} {yourref} + \setinterfaceconstant {yourmail} {yourmail} + \setinterfaceconstant {myref} {myref} + \setinterfaceconstant {mymail} {mymail} + \setinterfaceconstant {customer} {customer} + \setinterfaceconstant {invoice} {invoice} + \setinterfaceconstant {subject} {subject} + \setinterfaceconstant {cc} {cc} + \setinterfaceconstant {enclosure} {enclosure} + \setinterfaceconstant {phone} {phone} + \setinterfaceconstant {fax} {fax} + \setinterfaceconstant {email} {email} + \setinterfaceconstant {url} {url} + \setinterfaceconstant {bank} {bank} + \setinterfaceconstant {name} {name} + \setinterfaceconstant {room} {room} +% \setinterfaceconstant {yourorder} {yourorder} -> Ihre Bestellung vom +% \setinterfaceconstant {ourinvoice} {ourinvoice} -> Unsere Rechnung vom +\stopinterface + +%D Label: name + +\setuplabeltext[\s!en][\v!letter:\c!name=Name] +\setuplabeltext[\s!nl][\v!letter:\c!name=] +\setuplabeltext[\s!de][\v!letter:\c!name=Name] +\setuplabeltext[\s!fr][\v!letter:\c!name=Nom] +\setuplabeltext[\s!it][\v!letter:\c!name=] +\setuplabeltext[\s!es][\v!letter:\c!name=] + +%D Label: room + +\setuplabeltext[\s!en][\v!letter:\c!room=Room] +\setuplabeltext[\s!nl][\v!letter:\c!room=] +\setuplabeltext[\s!de][\v!letter:\c!room=Zimmer] +\setuplabeltext[\s!fr][\v!letter:\c!room=Salle] % Salle or Pièce +\setuplabeltext[\s!it][\v!letter:\c!room=] +\setuplabeltext[\s!es][\v!letter:\c!room=] + +%D Label: yourref + +\setuplabeltext[\s!en][\v!letter:\c!yourref=Your ref.] +\setuplabeltext[\s!nl][\v!letter:\c!yourref=Uw kenmerk] +\setuplabeltext[\s!de][\v!letter:\c!yourref=Ihr Zeichen] +\setuplabeltext[\s!fr][\v!letter:\c!yourref=Vos r\eacute f\eacute rences] +\setuplabeltext[\s!it][\v!letter:\c!yourref=Vs./Rif.] +\setuplabeltext[\s!es][\v!letter:\c!yourref=Su ref.] + +%D Label: yourmail + +\setuplabeltext[\s!en][\v!letter:\c!yourmail=Your letter of] +\setuplabeltext[\s!nl][\v!letter:\c!yourmail=Uw brief van] +\setuplabeltext[\s!de][\v!letter:\c!yourmail=Ihre Nachricht vom] +\setuplabeltext[\s!fr][\v!letter:\c!yourmail=Votre lettre du] +\setuplabeltext[\s!it][\v!letter:\c!yourmail=Vs.~lettera del] +\setuplabeltext[\s!es][\v!letter:\c!yourmail=Su carta de] + +%D Label: myref + +\setuplabeltext[\s!en][\v!letter:\c!myref=Our ref.] +\setuplabeltext[\s!nl][\v!letter:\c!myref=Ons kenmerk] +\setuplabeltext[\s!de][\v!letter:\c!myref=Unser Zeichen] +\setuplabeltext[\s!fr][\v!letter:\c!myref=Nos r\eacute f\eacute rences] +\setuplabeltext[\s!it][\v!letter:\c!myref=Ns./Rif.] +\setuplabeltext[\s!es][\v!letter:\c!myref=Nuestra ref.] + +%D Label: mymail + +\setuplabeltext[\s!en][\v!letter:\c!mymail=Our letter of] +\setuplabeltext[\s!nl][\v!letter:\c!mymail=Ons brief van] +\setuplabeltext[\s!de][\v!letter:\c!mymail=Unsere Nachricht vom] +\setuplabeltext[\s!fr][\v!letter:\c!mymail=Notre lettre du] +\setuplabeltext[\s!it][\v!letter:\c!mymail=] +\setuplabeltext[\s!es][\v!letter:\c!mymail=] + +%D Label: customer + +\setuplabeltext[\s!en][\v!letter:\c!customer=Customer no.] +\setuplabeltext[\s!nl][\v!letter:\c!customer=Klant No.] +\setuplabeltext[\s!de][\v!letter:\c!customer=Kundennummer] +\setuplabeltext[\s!fr][\v!letter:\c!customer=Num\eacute ro de client] +\setuplabeltext[\s!it][\v!letter:\c!customer=Nr.~cliente] +\setuplabeltext[\s!es][\v!letter:\c!customer=No. de cliente] + +%D Label: invoice + +\setuplabeltext[\s!en][\v!letter:\c!invoice=Invoice no.] +\setuplabeltext[\s!nl][\v!letter:\c!invoice=Rekening No.] +\setuplabeltext[\s!de][\v!letter:\c!invoice=Rechnungsnummer] +\setuplabeltext[\s!fr][\v!letter:\c!invoice=Num\eacute ro de facture] +\setuplabeltext[\s!it][\v!letter:\c!invoice=Nr.~fattura] +\setuplabeltext[\s!es][\v!letter:\c!invoice=No. de factura] + +%D Label: attention + +\setuplabeltext[\s!en][\v!letter:\c!attention=] % Attention +\setuplabeltext[\s!nl][\v!letter:\c!attention=] +\setuplabeltext[\s!de][\v!letter:\c!attention=] +\setuplabeltext[\s!fr][\v!letter:\c!attention=] +\setuplabeltext[\s!it][\v!letter:\c!attention=] +\setuplabeltext[\s!es][\v!letter:\c!attention=] + +%D Label: subject + +\setuplabeltext[\s!en][\v!letter:\c!subject=] % Subject +\setuplabeltext[\s!nl][\v!letter:\c!subject=] % Onderwerp +\setuplabeltext[\s!de][\v!letter:\c!subject=] % Betrifft +\setuplabeltext[\s!fr][\v!letter:\c!subject=Concernant] % Concernant or Sujet +\setuplabeltext[\s!it][\v!letter:\c!subject=] % Oggetto +\setuplabeltext[\s!es][\v!letter:\c!subject=] % Asunto + +%D Label: cc + +\setuplabeltext[\s!en][\v!letter:\c!cc=cc] +\setuplabeltext[\s!nl][\v!letter:\c!cc=Kopie aan] +\setuplabeltext[\s!de][\v!letter:\c!cc=Kopien an] +\setuplabeltext[\s!fr][\v!letter:\c!cc=Copie \agrave] +\setuplabeltext[\s!it][\v!letter:\c!cc=Per conoscenza] +\setuplabeltext[\s!es][\v!letter:\c!cc=Copias] + +%D Label: enclosure + +\setuplabeltext[\s!en][\v!letter:\c!enclosure=encl] +\setuplabeltext[\s!nl][\v!letter:\c!enclosure=Bijlage(n)] +\setuplabeltext[\s!de][\v!letter:\c!enclosure=Anlagen] +\setuplabeltext[\s!fr][\v!letter:\c!enclosure=Annexes] +\setuplabeltext[\s!it][\v!letter:\c!enclosure=Allegato] +\setuplabeltext[\s!es][\v!letter:\c!enclosure=Adjunto] + +%D Label: to + +\setuplabeltext[\s!en][\v!letter:\c!to=To] +\setuplabeltext[\s!nl][\v!letter:\c!to=Aan] +\setuplabeltext[\s!de][\v!letter:\c!to=An] +\setuplabeltext[\s!fr][\v!letter:\c!to=\Agrave] +\setuplabeltext[\s!it][\v!letter:\c!to=A] +\setuplabeltext[\s!es][\v!letter:\c!to=A] + +%D Label: toname + +\setuplabeltext[\s!en][\v!letter:\c!toname=To] +\setuplabeltext[\s!nl][\v!letter:\c!toname=Aan] +\setuplabeltext[\s!de][\v!letter:\c!toname=An] +\setuplabeltext[\s!fr][\v!letter:\c!toname=\Agrave] +\setuplabeltext[\s!it][\v!letter:\c!toname=A] +\setuplabeltext[\s!es][\v!letter:\c!toname=A] + +%D Label: from + +\setuplabeltext[\s!en][\v!letter:\c!from=From] +\setuplabeltext[\s!nl][\v!letter:\c!from=Van] +\setuplabeltext[\s!de][\v!letter:\c!from=Von] +\setuplabeltext[\s!fr][\v!letter:\c!from=De] +\setuplabeltext[\s!it][\v!letter:\c!from=Da] +\setuplabeltext[\s!es][\v!letter:\c!from=De] + +%D Label: fromname + +\setuplabeltext[\s!en][\v!letter:\c!fromname=From] +\setuplabeltext[\s!nl][\v!letter:\c!fromname=Van] +\setuplabeltext[\s!de][\v!letter:\c!fromname=Von] +\setuplabeltext[\s!fr][\v!letter:\c!fromname=De] +\setuplabeltext[\s!it][\v!letter:\c!fromname=Da] +\setuplabeltext[\s!es][\v!letter:\c!fromname=De] + +%D Label: date + +\setuplabeltext[\s!en][\v!letter:\c!date=Date] +\setuplabeltext[\s!nl][\v!letter:\c!date=Datum] +\setuplabeltext[\s!de][\v!letter:\c!date=Datum] +\setuplabeltext[\s!fr][\v!letter:\c!date=Date] +\setuplabeltext[\s!it][\v!letter:\c!date=Data] +\setuplabeltext[\s!es][\v!letter:\c!date=Fecha] + +%D Label: phone + +\setuplabeltext[\s!en][\v!letter:\c!phone=Phone] +\setuplabeltext[\s!nl][\v!letter:\c!phone=Telefoon] +\setuplabeltext[\s!de][\v!letter:\c!phone=Telefon] +\setuplabeltext[\s!fr][\v!letter:\c!phone=T\eacute l\eacute phone] +\setuplabeltext[\s!it][\v!letter:\c!phone=Telefono] +\setuplabeltext[\s!es][\v!letter:\c!phone=Tel\eacute fono] + +%D Label: fax + +\setuplabeltext[\s!en][\v!letter:\c!fax=Fax] +\setuplabeltext[\s!nl][\v!letter:\c!fax=Fax] +\setuplabeltext[\s!de][\v!letter:\c!fax=Fax] +\setuplabeltext[\s!fr][\v!letter:\c!fax=T\eacute l\eacute fax] % or Fax +\setuplabeltext[\s!it][\v!letter:\c!fax=Fax] +\setuplabeltext[\s!es][\v!letter:\c!fax=Fax] + +%D Label: email + +\setuplabeltext[\s!en][\v!letter:\c!email=Email] +\setuplabeltext[\s!nl][\v!letter:\c!email=E--mail] +\setuplabeltext[\s!de][\v!letter:\c!email=E-Mail] +\setuplabeltext[\s!fr][\v!letter:\c!email=Courriel] % Adresse électronique +\setuplabeltext[\s!it][\v!letter:\c!email=Email] +\setuplabeltext[\s!es][\v!letter:\c!email=Email] + +%D Label: url + +\setuplabeltext[\s!en][\v!letter:\c!url=Url] +\setuplabeltext[\s!nl][\v!letter:\c!url=URL] +\setuplabeltext[\s!de][\v!letter:\c!url=URL] +\setuplabeltext[\s!fr][\v!letter:\c!url=Site web] +\setuplabeltext[\s!it][\v!letter:\c!url=Sito Web] +\setuplabeltext[\s!es][\v!letter:\c!url=URL] + +%D Label: bank + +\setuplabeltext[\s!en][\v!letter:\c!bank=Bank account] +\setuplabeltext[\s!nl][\v!letter:\c!bank=Bankrekening] +\setuplabeltext[\s!de][\v!letter:\c!bank=Bankverbindung] +\setuplabeltext[\s!fr][\v!letter:\c!bank=Compte en banque] +\setuplabeltext[\s!it][\v!letter:\c!bank=Conto bancario] +\setuplabeltext[\s!es][\v!letter:\c!bank=Cuenta bancaria] + +%D Label: date + +\setuplabeltext[\s!en][\v!memo:\c!date=Date: ] +\setuplabeltext[\s!nl][\v!memo:\c!date=Datum: ] +\setuplabeltext[\s!de][\v!memo:\c!date=Datum: ] +\setuplabeltext[\s!fr][\v!memo:\c!date=Date\thinspace: ] +\setuplabeltext[\s!it][\v!memo:\c!date=Data: ] +\setuplabeltext[\s!es][\v!memo:\c!date=Fecha: ] + +%D Label: fromname + +\setuplabeltext[\s!en][\v!memo:\c!fromname=From: ] +\setuplabeltext[\s!nl][\v!memo:\c!fromname=Van: ] +\setuplabeltext[\s!de][\v!memo:\c!fromname=Von: ] +\setuplabeltext[\s!fr][\v!memo:\c!fromname=De\thinspace: ] +\setuplabeltext[\s!it][\v!memo:\c!fromname=Da: ] +\setuplabeltext[\s!es][\v!memo:\c!fromname=De: ] + +%D Label: toname + +\setuplabeltext[\s!en][\v!memo:\c!toname=To: ] +\setuplabeltext[\s!nl][\v!memo:\c!toname=Aan: ] +\setuplabeltext[\s!de][\v!memo:\c!toname=An: ] +\setuplabeltext[\s!fr][\v!memo:\c!toname=\Agrave\thinspace: ] +\setuplabeltext[\s!it][\v!memo:\c!toname=A: ] +\setuplabeltext[\s!es][\v!memo:\c!toname=A: ] + +%D Label: subject + +\setuplabeltext[\s!en][\v!memo:\c!subject=Subject: ] +\setuplabeltext[\s!nl][\v!memo:\c!subject=Onderwerp: ] +\setuplabeltext[\s!de][\v!memo:\c!subject=Betrifft: ] +\setuplabeltext[\s!fr][\v!memo:\c!subject=Concernant\thinspace: ] +\setuplabeltext[\s!it][\v!memo:\c!subject=Oggetto: ] +\setuplabeltext[\s!es][\v!memo:\c!subject=Asunto: ] + +\protect \endinput diff --git a/Master/texmf-dist/tex/context/third/letter/extension/optimize.nle b/Master/texmf-dist/tex/context/third/letter/extension/optimize.nle index 05a7f182799..f5cea432a32 100644 --- a/Master/texmf-dist/tex/context/third/letter/extension/optimize.nle +++ b/Master/texmf-dist/tex/context/third/letter/extension/optimize.nle @@ -1,41 +1,43 @@ -%D \module
-%D [ file=optimize,
-%D version=2008.04.23,
-%D title=\CONTEXT\ Letter Extension,
-%D subtitle=Alternative input method,
-%D author=Wolfgang Schuster,
-%D date=\currentdate,
-%D copyright=Public Domain]
-
-\unprotect
-
-%D The \tex{minustwo} counter was added with the \CONTEXT\ version
-%D from \date[d=18,m=4,y=2008] and older versions will complain
-%D about a undefined control sequence, to prevend this problem
-%D I added a test if \tex{minustwo} is undefined and define it this
-%D is necessary.
-
-\ifx\minustwo\undefined \newcount\minustwo \minustwo=-2 \fi
-
-\newcount\letter!value!skip \letter!value!skip \plusten
-\newcount\letter!value!number \letter!value!number\zerocount
-
-\definetwopasslist\v!letter
-
-\setvalue{\v!letter\s!start\c!optimize\v!yes}%
- {\global\advance\letter!value!number\plusone
- \gettwopassdata{\v!letter}%
- \iftwopassdatafound
- \letter!value!skip\twopassdata
- \ctxparskip=\dimexpr\letter!value!skip\ctxparskip/10\relax
- \fi}
-
-\setvalue{\v!letter\s!stop\c!optimize\v!yes}%
- {\ifdim\pagetotal<.25\textheight
- \advance\letter!value!skip\minustwo
- \else\ifdim\pagetotal<.5\textheight
- \advance\letter!value!skip\plustwo
- \fi\fi
- \lazysavetwopassdata{\v!letter}{\number\letter!value!number}{\number\letter!value!skip}}
-
-\protect \endinput
+%D \module +%D [ file=optimize, +%D version=2008.04.23, +%D title=\CONTEXT\ Letter Extension, +%D subtitle=Alternative input method, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] + +\unprotect + +%D The \tex{minustwo} counter was added with the \CONTEXT\ version +%D from \date[d=18,m=4,y=2008] and older versions will complain +%D about a undefined control sequence, to prevend this problem +%D I added a test if \tex{minustwo} is undefined and define it this +%D is necessary. + +\ifx\minustwo\undefined \newcount\minustwo \minustwo=-2 \fi + +\newcount\letter!value!skip \letter!value!skip \plusten +\newcount\letter!value!number \letter!value!number\zerocount + +\definetwopasslist\v!letter + +\setvalue{\v!letter\s!start\c!optimize\v!yes}% + {\global\advance\letter!value!number\plusone + \gettwopassdata{\v!letter}% + \iftwopassdatafound + \letter!value!skip\twopassdata + \ctxparskip=\dimexpr\letter!value!skip\ctxparskip/10\relax + \fi} + +\setvalue{\v!letter\s!stop\c!optimize\v!yes}% + {\ifdim\pagetotal<.25\textheight + \advance\letter!value!skip\minustwo + \else\ifdim\pagetotal<.5\textheight + \advance\letter!value!skip\plustwo + \fi\fi + \lazysavetwopassdata{\v!letter}{\number\letter!value!number}{\number\letter!value!skip}} + +\protect \endinput diff --git a/Master/texmf-dist/tex/context/third/letter/extension/pragma.nle b/Master/texmf-dist/tex/context/third/letter/extension/pragma.nle index 7453bd69182..7e73308f9ad 100644 --- a/Master/texmf-dist/tex/context/third/letter/extension/pragma.nle +++ b/Master/texmf-dist/tex/context/third/letter/extension/pragma.nle @@ -1,48 +1,50 @@ -%D \module
-%D [ file=pragma,
-%D version=2008.01.23,
-%D title=\CONTEXT\ Letter Extension,
-%D subtitle=Pragma ADE Example Text,
-%D author=Wolfgang Schuster,
-%D date=\currentdate,
-%D copyright=Public Domain]
-
-\unprotect
-
-%D Dummies
-
-\startsetups[letter:test]
-
- \startlocalsetups [letter:head]
- % nothing
- \stoplocalsetups
-
- \startlocalsetups[letter:address]
- A Fancy Name \endgraf
- A Nice Address \endgraf
- The Place To Go
- \stoplocalsetups
-
- \startlocalsetups[letter:reference]
- \rightaligned{\currentdate}
- \stoplocalsetups
-
- \startlocalsetups[letter:opening]
- Hi There,
- \stoplocalsetups
-
- \startlocalsetups[letter:content]
- \dorecurse{2}{\input tufte \blank}
- \stoplocalsetups
-
- \startlocalsetups[letter:closing]
- That Was Me
- \stoplocalsetups
-
- \startlocalsetups[letter:appendices]
- % nothing
- \stoplocalsetups
-
-\stopsetups
-
-\protect \endinput
+%D \module +%D [ file=pragma, +%D version=2008.01.23, +%D title=\CONTEXT\ Letter Extension, +%D subtitle=Pragma ADE Example Text, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] + +\unprotect + +%D Dummies + +\startsetups[letter:test] + + \startlocalsetups [letter:head] + % nothing + \stoplocalsetups + + \startlocalsetups[letter:address] + A Fancy Name \endgraf + A Nice Address \endgraf + The Place To Go + \stoplocalsetups + + \startlocalsetups[letter:reference] + \rightaligned{\currentdate} + \stoplocalsetups + + \startlocalsetups[letter:opening] + Hi There, + \stoplocalsetups + + \startlocalsetups[letter:content] + \dorecurse{2}{\input tufte \blank} + \stoplocalsetups + + \startlocalsetups[letter:closing] + That Was Me + \stoplocalsetups + + \startlocalsetups[letter:appendices] + % nothing + \stoplocalsetups + +\stopsetups + +\protect \endinput diff --git a/Master/texmf-dist/tex/context/third/letter/interface/default.nli b/Master/texmf-dist/tex/context/third/letter/interface/default.nli index f11f1700564..cfada0a811c 100644 --- a/Master/texmf-dist/tex/context/third/letter/interface/default.nli +++ b/Master/texmf-dist/tex/context/third/letter/interface/default.nli @@ -1,634 +1,674 @@ -%D \module
-%D [ file=default,
-%D version=2008.07.08,
-%D title=\CONTEXT\ Letter Interface,
-%D subtitle=Default Interface,
-%D author=Wolfgang Schuster,
-%D date=\currentdate,
-%D copyright=Public Domain]
-
-%M \loadsetups[letter.xml]
-
-%D \subject{Constants and Variables}
-
-\unprotect
-
-%D I define a few additional constants and variables, I will move them
-%D to the base some time.
-
-\startconstants all
-
- opening: opening
- content: content
- closing: closing
- signature: signature
- dispatch: dispatch
- appendices: appendices
- fromaddress: fromaddress
- frombank: frombank
- frommail: frommail
- fromfax: fromfax
- fromlogo: fromlogo
- fromname: fromname
- fromphone: fromphone
- fromurl: fromurl
- toname: toname
- toaddress: toaddress
- enclosure: enclosure
- copy: copy
- postscript: postscript
- attention: attention
- distribution: distribution
- salutation: salutation
- addressee: addressee
-\stopconstants
-
-\startvariables all
-
- e: e
- data: data
- sender: sender
- dispatch: dispatch
- enclosure: enclosure
- copy: copy
- nobreak: nobreak
- memo: memo
- addressee: addressee
-\stopvariables
-
-%D We have at the moment only the values from the core module, I use the settings
-%D from the dinb file as default settings, you could replace them in your own
-%D document but I won't use another letterstyle for this interface.
-%D
-%D The labels are stored in a common file, you could use them in your own interface
-%D but you have to live with my names.
-
-\useletterstyle [dinb] % layout
-\useletterextension[label] % labels
-
-%D \subject{Reference line}
-%D
-%D Dimen value to save the height of the reference line.
-
-\newdimen\letter!height!reference
-
-%D We come now to the new macros defined in this file, they are meant to place the
-%D information about date, phone number and more information. You could select on of
-%D the alternatives with \type{\setupletter[alternative=...]}.
-%D
-%D I define here only what I need myself but you're free to define your own
-%D alternatives but try to avoid to use the same names as I do. You could also send
-%D me your alternatives and I will include them.
-%D
-%D This is the first alternative a, it use the values from the style file without any
-%D change, this is the normal layout for a DIN letter.
-
-\long\def\doformatreferencelista#1%
- {\def\\{\egroup\hbox\bgroup}%
- \setupinterlinespace\hbox\bgroup#1\egroup\par}
-
-\long\def\formatreferencelista#1%
- {\bgroup
- \convertargument#1\to\ascii
- \vbox
- {\vbox{\doattributes{\????ld\ascii}\c!titlestyle\c!titlecolor
- {\doformatreferencelista{\labeltext{\v!letter:\ascii}}}}
- \vtop{\doattributes{\????ld\ascii}\c!textstyle\c!textcolor
- {\doformatreferencelista{\lettervalue\ascii}}}}%
- \egroup
- \hfill}
-
-\setvalue{\v!letter:\v!reference:\v!a}%
- {\setbox\scratchbox\hbox\!!to\hsize
- {\getcommacommandsize[\@@@@ldlist]% \@@@@ldreference?
- \ifnum\commalistsize<\plustwo\hfill\fi
- \processcommacommand[\@@@@ldlist]\formatreferencelista\unskip}%
- \global\letter!height!reference\dimexpr\ht\scratchbox+\dp\scratchbox\relax
- \box\scratchbox}
-
-\startsetups[letter:reference:\v!a]
-
-\setupletterstyle
- [\v!reference]
- [\c!hoffset=\backspace,
- \c!voffset=\dimexpr\letterstylevalue\v!address\c!voffset+\letterstylevalue\v!address\c!height+\plusthree\c!mm\relax,
- \c!width=\textwidth]
-
-\setupletterstyle
- [\v!firstpage]
- [\c!topspace=\dimexpr\letterstylevalue\v!reference\c!voffset+\letter!height!reference+\plustwo\lineheight\relax]
-
-\stopsetups
-
-%D This is the alternative b, you could use it if you want to place the information
-%D in a infoblock not just a simple line, it is also better suited if you want to
-%D place more infomration.
-
-\long\def\formatreferencelistb#1%
- {\bgroup
- \doifelse{#1}\v!line
- {\blank[\v!line]}
- {\hbox
- {\doattributes{\????ld#1}\c!titlestyle\c!titlecolor
- {\labeltext{\v!letter:#1}\lettervalue{#1\c!separator}}%
- \doattributes{\????ld#1}\c!textstyle\c!textcolor
- {\lettervalue{#1}}}}%
- \egroup}
-
-\setvalue{\v!letter:\v!reference:\v!b}%
- {\vtop % why not \vbox?
- {\processcommacommand[\@@@@ldlist]\formatreferencelistb}}
-
-\startsetups[letter:reference:\v!b]
-
-\setupletterstyle
- [\v!reference]
- [\v!layer]
- [\c!hoffset=125.7mm,
- \c!voffset=\letterstylevalue\v!address\c!voffset]
-
-\setupletterstyle
- [\v!reference]
- [\v!frame]
- [\c!width=\dimexpr\paperwidth-\letterstylevalue{\v!reference\v!layer}\c!hoffset-\cutspace\relax,
- \c!height=\v!fit]
-
-\stopsetups
-
-%D The third alternative c could used, if you want to place just a single line
-%D with text and nothing more, like your place and the date. You need only the
-%D following two lines in your document.
-%D
-%D \starttyping
-%D \setupletter[alternative=c,list=reference]
-%D \setupletter[reference=\rightaligned{Place, \currentdate}]
-%D \stoptyping
-
-\long\def\formatreferencelistc#1%
- {\bgroup
- \convertargument#1\to\ascii
- \doattributes{\????ld\ascii}\c!textstyle\c!textcolor
- {\lettervalue\ascii}%
- \egroup}
-
-\setvalue{\v!letter:\v!reference:\v!c}%
- {\hbox\!!to\hsize
- {\processcommacommand[\@@@@ldlist]\formatreferencelistc}}
-
-\startsetups[letter:reference:\v!c]
-
-\setups[letter:reference:\v!a]
-
-\stopsetups
-
-%D Alternative d, text is placed in a block like alternative bit the text
-%D is put in a table.
-
-\long\def\doformatreferencelistd#1%
- {\doifelse{#1}\v!line
- {\NC\NC\NC\NR} % ugly but working
- {\NC \doattributes{\????ld#1}\c!titlestyle\c!titlecolor
- {\labeltext{\v!letter:#1}\lettervalue{#1\c!separator}}%
- \NC\doattributes{\????ld#1}\c!textstyle\c!textcolor{\lettervalue{#1}}
- \NC\NR}}
-
-\def\formatreferencelistd#1%
- {\appendtoks\doformatreferencelistd{#1}\to\scratchtoks}
-
-\setvalue{\v!letter:\v!reference:\v!d}%
- {\vtop % why not \vbox?
- {\scratchtoks\emptytoks
- \processcommacommand[\@@@@ldlist]\formatreferencelistd
- \setuptabulate[\c!before=,\c!after=]%
- \starttabulate[|l|l|]
- \the\scratchtoks
- \stoptabulate}}
-
-\startsetups[letter:reference:\v!d]
-
-\setupletterstyle
- [\v!reference]
- [\v!layer]
- [\c!hoffset=125.7mm,
- \c!voffset=\letterstylevalue\v!address\c!voffset]
-
-\setupletterstyle
- [\v!reference]
- [\v!frame]
- [\c!width=\dimexpr\paperwidth-\letterstylevalue{\v!reference\v!layer}\c!hoffset-\cutspace\relax,
- \c!height=\v!fit]
-
-\stopsetups
-
-%D Alternative e, nearly the same as a but you could control the width of the
-%D fields with the width key for \tex{setupletter}.
-
-\long\def\doformatreferenceliste#1%
- {\def\\{\egroup\hbox\bgroup}%
- \setupinterlinespace\hbox\bgroup#1\egroup\par}
-
-\long\def\formatreferenceliste#1%
- {\bgroup
- \convertargument#1\to\ascii
- \doifelselettervalue{\ascii\c!width}
- {\hbox\!!to\lettervalue{\ascii\c!width}}
- {\hbox}%
- {\vbox
- {\vbox{\doattributes{\????ld\ascii}\c!titlestyle\c!titlecolor
- {\doformatreferenceliste{\labeltext{\v!letter:\ascii}}}}
- \vtop{\doattributes{\????ld\ascii}\c!textstyle\c!textcolor
- {\doformatreferenceliste{\lettervalue\ascii}}}}}%
- \egroup}
-
-\setvalue{\v!letter:\v!reference:\v!e}%
- {\hbox\!!to\hsize
- {\processcommacommand[\@@@@ldlist]\formatreferenceliste\hss}}
-
-\startsetups[letter:reference:\v!e]
-
-\setups[letter:reference:\v!a]
-
-\stopsetups
-
-%D The alternative \mono{none} could be used to disable the reference.
-%D
-%D The advantage is to change only the list alternative to nothing, another
-%D method to get this result to use alternative c and remove all values from
-%D the reference but the none key is better.
-
-\resetvalue{\v!letter:\v!reference:\v!none}
-
-\startsetups[letter:reference:\v!none]
-
- % Use the topspace value from the style
-
-\stopsetups
-
-%D \subject{Setup commands}
-%D
-%D \macros
-%D {setupletter,setlettervalue}
-%D
-%D The values for the letter field is set eitheir either with \tex{setupletter}
-%D or with \tex{setlettervalue}, the first commands allows you to input the data
-%D in a key-val list while the second is only able to accept a single value.
-%D
-%D The first definition for \tex{setupletter} was defined in \filename{t-letter.tex}
-%D and used till \date[d=20,m=4,y=2008] but I decided to replace it by a simpler
-%D method to avoid a few lines of code in my letter and the letter versions from
-%D \date[d=21,m=4,y=2008] will use the new user interface. The old definition from
-%D \filename{t-letter.tex} is now oveloaded in will eventually disappear.
-%D
-%D The second command to set \tex{setlettervalue} was developed as a alternative
-%D method to set values for the letter, I implemnted the command at the same time
-%D as I changed the user interface.
-%D
-%D Untill the old definition for \tex{setupletter} remains in \filename{t-letter.tex}
-%D I have to redefine also \tex{lettervalue}, \tex{doiflettervalue} and
-%D \tex{doifelselettervalue} because the old and new definitions differe in the
-%D number of arguments but the new definition will move to the core file as soon
-%D as I replace \tex{setupletter} in the core.
-
-%D \starttyping
-%D \def\setupletter
-%D {\dodoubleempty\dosetupletter}
-%D
-%D \def\dosetupletter[#1][#2]%
-%D {\ifsecondargument
-%D \dodosetupletter[#1][#2]%
-%D \else
-%D \dodosetupletter[#1][]%
-%D \fi}
-%D
-%D \def\dodosetupletter[#1][#2]%
-%D {\doifelsenothing{#2}
-%D {\getparameters[\????ld][#1]}
-%D {\def\dododosetupletter##1%
-%D {\getparameters[\????ld##1][#2]}%
-%D \processcommalist[#1]\dododosetupletter}}
-%D
-%D \def\lettervalue#1%
-%D {\csname\????ld#1\endcsname}
-%D
-%D \def\doiflettervalue#1%
-%D {\doiftextelse{\lettervalue{#1}}
-%D \firstofoneargument
-%D \gobbleoneargument}
-%D
-%D \def\doifelselettervalue#1%
-%D {\doiftextelse{\lettervalue{#1}}
-%D \firstoftwoarguments
-%D \secondoftwoarguments}
-%D
-%D \definecomplexorsimple\setlettervalue
-%D
-%D \def\complexsetlettervalue[#1]#2%
-%D {\setvalue{\????ld#1}{#2}}
-%D
-%D \def\simplesetlettervalue#1#2%
-%D {\setvalue{\????ld#1}{#2}}
-%D \stoptyping
-
-%D \subject{Letter environment}
-%D
-%D \macros
-%D {startletter}
-%D
-%D The main macro in this file, it is used to write the letter content.
-%D It is also possible to set the address and a few other values like
-%D the opening and closing with the optional argument, the values are
-%D local in this case and not global like the values you could set with
-%D \tex{setupletter}.
-%D
-%D \showsetup{startletter}
-
-\def\startletter
- {\bgroup\dodoubleempty\dostartletter}
-
-\def\dostartletter[#1][#2]%
- {\ifsecondargument
- \setupletter[#1]%
- \doifundefinedelse{\????ld\????ld#2}
- {\setvalue{\????ld\c!toaddress}{#2}}
- {\setvalue{\????ld\c!toaddress}{\getvalue{\????ld\????ld#2}}}%
- \else\iffirstargument
- \doifassignmentelse{#1}
- {\setupletter[#1]}
- {\doifundefinedelse{\????ld\????ld#1}
- {\setvalue{\????ld\c!toaddress}{#1}}
- {\setvalue{\????ld\c!toaddress}{\getvalue{\????ld\????ld#1}}}}%
- \fi\fi
- \def\stopletter
- {\setups[letter:place]\egroup
- \setupsubpagenumber[\c!state=\@@@@lsoptionstate]}%
- \dostartbuffer[lettercontent][startletter][stopletter]}
-
-%D Patched version of the \tex{flushbufferline} macro for \MKII,
-%D the changes are definition as long and removing of \tex{string}
-%D in the argument of the last write block.
-
-\long\def\flushbufferline#1%
- {\iftmpblockstarted
- \ifsegmentatebuffer
- \ifemptybufferline
- \immediate\write\tmpblocks{\string\stopbufferparagraph }%
- \immediate\write\tmpblocks{\string\startbufferparagraph}%
- \else
- \immediate\write\tmpblocks{#1}%
- \fi
- \else
- \immediate\write\tmpblocks{#1}%
- \fi
- \else
- \doifsomething{#1}
- {\tmpblockstartedtrue
- \immediate\write\tmpblocks{#1}}%
- \fi}
-
-%D \macros
-%D {startlettercontent}
-%D
-%D The letter content is saved in the value content, although I could
-%D place it in the corresponding I prefer this solution because you could
-%D now use it in your own macros and redefine the content setups to your
-%D own wishes.
-
-\setupletter
- [\c!content={\getbuffer[lettercontent]}]
-
-\def\startlettercontent
- {\dostartbuffer[lettercontent][startlettercontent][stoplettercontent]}
-
-%D After the definition of all macros I could now put the content
-%D in the corresponding setups, this is only important if you want
-%D to define your own layout for header, address etc.
-
-\startsetups[letter:head]
-\let\\\endgraf
-\lettervalue\c!fromname
-\doiflettervalue\c!fromname\endgraf
-\lettervalue\c!fromaddress
-\stopsetups
-
-%D \subject{Addressee field}
-%D
-%D The address field is separated into two different fields.
-%D The upper field is meant for dispatch information, the official height
-%D in germany is 3 lines but this would lead to different heights dependent
-%D of the font size and the fonts own height. The lower field contains the
-%D name and address of the receiver and has a height of 6 lines in germany.
-%D This value will lead to the same problem as the upper field, because the
-%D whole address field has a fixed height and both field should fit into
-%D this space. I solved this problem by assinging the upper field 1/3 of the
-%D address height and the lower field 2/3 of the address height.
-%D
-%D If you hace problem to put all information in the limited space you could
-%D try to reduce the font size or reduce the interlinespace in the field.
-
-\presetlocalframed[\????ls\v!dispatch]
-\presetlocalframed[\????ls\v!addressee]
-
-\startsetups[letter:address]
-\let\\\endgraf
-\offinterlineskip\vskip-\lineheight
-\doif\@@@@lsoptiondispatch \v!yes{\setups[letter:place:dispatch]}
-\doif\@@@@lsoptionaddressee\v!yes{\setups[letter:place:addressee]}
-\stopsetups
-
-\startsetups[letter:place:dispatch]
-
- \localframed
- [\????ls\v!dispatch]
- {\doadaptleftskip {\letterstylevalue\v!addressee\c!leftmargin}%
- \doadaptrightskip{\letterstylevalue\v!addressee\c!rightmargin}%
- \doattributes{\????ls\v!addressee}\c!style\c!color{\setups[letter:address:dispatch]}}
-
-\stopsetups
-
-\startsetups[letter:place:addressee]
-
- \localframed
- [\????ls\v!addressee]
- {\doadaptleftskip {\letterstylevalue\v!addressee\c!leftmargin}%
- \doadaptrightskip{\letterstylevalue\v!addressee\c!rightmargin}%
- \doattributes{\????ls\v!addressee}\c!style\c!color{\setups[letter:address:content]}}
-
-\stopsetups
-
-\startsetups[letter:address:dispatch]
-\lettervalue\c!dispatch
-\stopsetups
-
-\startsetups[letter:address:content]
-\lettervalue\c!toname
-\doiflettervalue\c!toname\endgraf
-\lettervalue\c!toaddress
-\stopsetups
-
-%D The following setups shouldn't be changed ar you will loose information
-%D in the output.
-%D
-%D The reference line is choosen with the alternative key or if you set
-%D a not defined alternative the definition a is choosen.
-
-\startsetups[letter:reference]
-\executeifdefined{\v!letter:\v!reference:\@@@@ldalternative}{\getvalue{\v!letter:\v!reference:\v!a}}
-\stopsetups
-
-\startsetups[letter:title]
-\doifelselettervalue\c!title
- {\lettervalue\c!title}
- {\doiflettervalue\c!attention
- {\labeltext{\v!letter:\c!attention}\lettervalue\c!attention}}
-\stopsetups
-
-\startsetups[letter:subject]
-\labeltext{\v!letter:\c!subject}\lettervalue\c!subject
-\stopsetups
-
-\startsetups[letter:opening]
-\doifelselettervalue\c!opening
- {\lettervalue\c!opening}
- {\doiflettervalue\c!salutation
- {\lettervalue\c!salutation}}
-\stopsetups
-
-\startsetups[letter:content]
-\lettervalue\c!content
-\stopsetups
-
-%D \subject{Closing and appendices}
-%D
-%D It is possible to attach a signature to the closing command, before the signature
-%D a skip is inserted but only if the the signature key has a value. The height of the
-%D closing environment itself has a height of 4 lines to provide a free space for your
-%D own handwritten signature and to have a little bit space between the closing text
-%D and the appendices.
-
-\setvalue{\v!letter:\v!closing:\v!a}%
- {\lettervalue\c!closing
- \doiflettervalue\c!signature{\letterstylevalue\v!closing\c!inbetween}%
- \lettervalue\c!signature}
-
-\startsetups[letter:closing]
-\let\\\crlf
-\executeifdefined{\v!letter:\v!closing:\@@@@lsclosingalternative}{\getvalue{\v!letter:\v!closing:\v!a}}
-\stopsetups
-
-\startsetups[letter:appendices]
-\let\\\crlf
-\doflushletterdescription
-\stopsetups
-
-\dodefineletterdescription[\v!enclosure]
-
-\startsetups[letter:enclosure]
-\processaction
- [\lettervalue\c!enclosure]
- [ \v!empty=>\vrule\!!height\zeropoint\!!height\zeropoint\!!width\hsize\relax\ifvmode\nowhitespace\fi,
- \s!unknown=>\lettervalue\c!enclosure]
-\stopsetups
-
-\dodefineletterdescription[\v!copy]
-
-\startsetups[letter:copy]
-\processaction
- [\lettervalue\c!copy]
- [ \v!empty=>\vrule\!!height\zeropoint\!!height\zeropoint\!!width\hsize\relax\ifvmode\nowhitespace\fi,
- \s!unknown=>\lettervalue\c!copy]
-\stopsetups
-
-\dodefineletterdescription[\v!postscript]
-
-\startsetups[letter:postscript]
-\processaction
- [\lettervalue\c!postscript]
- [ \v!empty=>\vrule\!!height\zeropoint\!!height\zeropoint\!!width\hsize\relax\ifvmode\nowhitespace\fi,
- \s!unknown=>\lettervalue\c!postscript]
-\stopsetups
-
-\setvalue{\v!letter:\v!backaddress:\v!yes}%
- {\lettervalue\c!fromname
- \doiflettervalue\c!fromaddress\\
- \lettervalue\c!fromaddress}
-
-\setvalue{\v!letter:\v!backaddress:\v!auto}%
- {\lettervalue\c!fromname
- \doiflettervalue\c!fromaddress\\
- \lettervalue\c!fromaddress}
-
-\resetvalue{\v!letter:\v!backaddress:\v!no}
-
-\setvalue{\v!letter:\v!backaddress:\s!unknown}%
- {\doifelselettervalue\c!backaddress
- {\lettervalue\c!backaddress}
- {\lettervalue\c!fromname
- \doiflettervalue\c!fromaddress\\
- \lettervalue\c!fromaddress}}
-
-\startsetups[letter:backaddress]
-\def\\{\lettervalue{\c!backaddress\c!separator}}
-\executeifdefined{\v!letter:\v!backaddress:\@@@@ldbackaddress}{\getvalue{\v!letter:\v!backaddress:\s!unknown}}
-\stopsetups
-
-%D To prevent a pagebreak between the last line of the text and
-%D the siganture a nonbreakable vertical space is necessary.
-%D The vertical space is inserted in the style file with the normal
-%D before and after commands where we control the distance between
-%D the elements.
-
-\defineblankmethod [\v!nobreak] {\penalty\plustenthousand}
-
-%D \subject{Additional settings}
-%D
-%D I set alternative a as default value for alternative, the only content
-%D is the date with a label. f you dont want a label choose alternative c
-%D or change the label.
-
-\startsetups[letter:optimize]
-
- \setbox\scratchbox\hbox % trial typesetting to get the heigth of the reference line
- {\executeifdefined{\v!letter:\v!reference:\@@@@ldalternative}{\getvalue{\v!letter:\v!reference:\v!a}}}
-
- \setups[letter:reference:\@@@@ldalternative]
-
-\stopsetups
-
-\setupletter
- [\c!alternative=\v!a,
- \c!backaddress=\v!yes,
- \c!list=\v!date,
- \c!date=\currentdate,
- \c!width=\zeropoint,
- \c!backaddress\c!separator=\textcomma\space]
-
-\setupletterstyle
- [\v!option]
- [\c!dispatch=\v!yes,
- \c!addressee=\v!yes]
-
-\setupletterstyle
- [\v!dispatch,\v!addressee]
- [\c!align=\v!right,
- \c!width=\hsize,
- \c!leftmargin=\zeropoint,
- \c!rightmargin=\zeropoint,
- \c!offset=\zeropoint,
- \c!frame=\v!off]
-
-\setupletterstyle
- [\v!dispatch]
- [\c!location=\v!bottom,
- \c!height=\dimexpr(\vsize/9)*3\relax]
-
-\setupletterstyle
- [\v!addressee]
- [\c!location=\v!top,
- \c!height=\dimexpr(\vsize/9)*6\relax]
-
-\setupletterstyle
- [\v!closing]
- [\c!after={\blank[\v!line]},
- \c!inbetween={\blank[\v!nobreak,2*\v!line]}]
-
-\protect \endinput
+%D \module +%D [ file=default, +%D version=2008.10.27, +%D title=\CONTEXT\ Letter Interface, +%D subtitle=Default Interface, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] + +%M \loadsetups[letter.xml] + +%D \subject{Constants and Variables} + +\unprotect + +%D I define a few additional constants and variables, I will move them +%D to the base some time. + +\startinterface all + \setinterfaceconstant {opening} {opening} + \setinterfaceconstant {content} {content} + \setinterfaceconstant {closing} {closing} + \setinterfaceconstant {signature} {signature} + \setinterfaceconstant {dispatch} {dispatch} + \setinterfaceconstant {appendices} {appendices} + \setinterfaceconstant {fromaddress} {fromaddress} + \setinterfaceconstant {frombank} {frombank} + \setinterfaceconstant {frommail} {frommail} + \setinterfaceconstant {fromfax} {fromfax} + \setinterfaceconstant {fromlogo} {fromlogo} + \setinterfaceconstant {fromname} {fromname} + \setinterfaceconstant {fromphone} {fromphone} + \setinterfaceconstant {fromurl} {fromurl} + \setinterfaceconstant {toname} {toname} + \setinterfaceconstant {toaddress} {toaddress} + \setinterfaceconstant {enclosure} {enclosure} + \setinterfaceconstant {copy} {copy} + \setinterfaceconstant {postscript} {postscript} + \setinterfaceconstant {attention} {attention} + \setinterfaceconstant {distribution} {distribution} + \setinterfaceconstant {salutation} {salutation} + \setinterfaceconstant {addressee} {addressee} +\stopinterface + +\startinterface all + \setinterfacevariable {e} {e} + \setinterfacevariable {data} {data} + \setinterfacevariable {sender} {sender} + \setinterfacevariable {dispatch} {dispatch} + \setinterfacevariable {enclosure} {enclosure} + \setinterfacevariable {copy} {copy} + \setinterfacevariable {nobreak} {nobreak} + \setinterfacevariable {endgraf} {endgraf} + \setinterfacevariable {memo} {memo} + \setinterfacevariable {addressee} {addressee} + \setinterfacevariable {french} {french} + \setinterfacevariable {simplified} {simplified} + \setinterfacevariable {fullblock} {fullblock} + \setinterfacevariable {hanging} {hanging} + \setinterfacevariable {modified} {modified} +\stopinterface + +%D \subject{Reference line} +%D +%D Dimen value to save the height of the reference line. + +\newdimen\letter!height!reference + +%D We come now to the new macros defined in this file, they are meant to place the +%D information about date, phone number and more information. You could select on of +%D the alternatives with \type{\setupletter[alternative=...]}. +%D +%D I define here only what I need myself but you're free to define your own +%D alternatives but try to avoid to use the same names as I do. You could also send +%D me your alternatives and I will include them. +%D +%D This is the first alternative a, it use the values from the style file without any +%D change, this is the normal layout for a DIN letter. + +\long\def\doformatreferencelista#1% + {\def\\{\egroup\hbox\bgroup}% + \setupinterlinespace\hbox\bgroup#1\egroup\par} + +\long\def\formatreferencelista#1% + {\bgroup + \convertargument#1\to\ascii + \vbox + {\vbox{\doattributes{\????ld\ascii}\c!titlestyle\c!titlecolor + {\doformatreferencelista{\labeltext{\v!letter:\ascii}}}} + \vtop{\doattributes{\????ld\ascii}\c!textstyle\c!textcolor + {\doformatreferencelista{\lettervalue\ascii}}}}% + \egroup + \hfill} + +\setvalue{\v!letter:\v!reference:\v!a}% + {\setbox\scratchbox\hbox\!!to\hsize + {\getcommacommandsize[\@@@@ldlist]% \@@@@ldreference? + \ifnum\commalistsize<\plustwo\hfill\fi + \processcommacommand[\@@@@ldlist]\formatreferencelista\unskip}% + \global\letter!height!reference\dimexpr\ht\scratchbox+\dp\scratchbox\relax + \box\scratchbox} + +\startsetups[letter:reference:\v!a] + +\setupletterstyle + [\v!reference] + [\c!hoffset=\backspace, + \c!voffset=\dimexpr\letterstylevalue\v!address\c!voffset+\letterstylevalue\v!address\c!height+\plusthree\c!mm\relax, + \c!width=\textwidth] + +\setupletterstyle + [\v!firstpage] + [\c!topspace=\dimexpr\letterstylevalue\v!reference\c!voffset+\letter!height!reference+\plustwo\lineheight\relax] + +\stopsetups + +%D This is the alternative b, you could use it if you want to place the information +%D in a infoblock not just a simple line, it is also better suited if you want to +%D place more infomration. + +\long\def\formatreferencelistb#1% + {\bgroup + \doifelse{#1}\v!line + {\blank[\v!line]} + {\hbox + {\doattributes{\????ld#1}\c!titlestyle\c!titlecolor + {\labeltext{\v!letter:#1}\lettervalue{#1\c!separator}}% + \doattributes{\????ld#1}\c!textstyle\c!textcolor + {\lettervalue{#1}}}}% + \egroup} + +\setvalue{\v!letter:\v!reference:\v!b}% + {\vtop % why not \vbox? + {\processcommacommand[\@@@@ldlist]\formatreferencelistb}} + +\startsetups[letter:reference:\v!b] + +\setupletterstyle + [\v!reference] + [\v!layer] + [\c!hoffset=125.7mm, + \c!voffset=\letterstylevalue\v!address\c!voffset] + +\setupletterstyle + [\v!reference] + [\v!frame] + [\c!width=\dimexpr\paperwidth-\letterstylevalue{\v!reference\v!layer}\c!hoffset-\cutspace\relax, + \c!height=\v!fit] + +\stopsetups + +%D The third alternative c could used, if you want to place just a single line +%D with text and nothing more, like your place and the date. You need only the +%D following two lines in your document. +%D +%D \starttyping +%D \setupletter[alternative=c,list=reference] +%D \setupletter[reference=\rightaligned{Place, \currentdate}] +%D \stoptyping + +\long\def\formatreferencelistc#1% + {\bgroup + \convertargument#1\to\ascii + \doattributes{\????ld\ascii}\c!textstyle\c!textcolor + {\lettervalue\ascii}% + \egroup} + +\setvalue{\v!letter:\v!reference:\v!c}% + {\hbox\!!to\hsize + {\processcommacommand[\@@@@ldlist]\formatreferencelistc}} + +\startsetups[letter:reference:\v!c] + +\setups[letter:reference:\v!a] + +\stopsetups + +%D Alternative d, text is placed in a block like alternative bit the text +%D is put in a table. + +\long\def\doformatreferencelistd#1% + {\doifelse{#1}\v!line + {\NC\NC\NC\NR} % ugly but working + {\NC \doattributes{\????ld#1}\c!titlestyle\c!titlecolor + {\labeltext{\v!letter:#1}\lettervalue{#1\c!separator}}% + \NC\doattributes{\????ld#1}\c!textstyle\c!textcolor{\lettervalue{#1}} + \NC\NR}} + +\def\formatreferencelistd#1% + {\appendtoks\doformatreferencelistd{#1}\to\scratchtoks} + +\setvalue{\v!letter:\v!reference:\v!d}% + {\vtop % why not \vbox? + {\scratchtoks\emptytoks + \processcommacommand[\@@@@ldlist]\formatreferencelistd + \setuptabulate[\c!before=,\c!after=]% + \starttabulate[|l|l|] + \the\scratchtoks + \stoptabulate}} + +\startsetups[letter:reference:\v!d] + +\setupletterstyle + [\v!reference] + [\v!layer] + [\c!hoffset=125.7mm, + \c!voffset=\letterstylevalue\v!address\c!voffset] + +\setupletterstyle + [\v!reference] + [\v!frame] + [\c!width=\dimexpr\paperwidth-\letterstylevalue{\v!reference\v!layer}\c!hoffset-\cutspace\relax, + \c!height=\v!fit] + +\stopsetups + +%D Alternative e, nearly the same as a but you could control the width of the +%D fields with the width key for \tex{setupletter}. + +\long\def\doformatreferenceliste#1% + {\def\\{\egroup\hbox\bgroup}% + \setupinterlinespace\hbox\bgroup#1\egroup\par} + +\long\def\formatreferenceliste#1% + {\bgroup + \convertargument#1\to\ascii + \doifelselettervalue{\ascii\c!width} + {\hbox\!!to\lettervalue{\ascii\c!width}} + {\hbox}% + {\vbox + {\vbox{\doattributes{\????ld\ascii}\c!titlestyle\c!titlecolor + {\doformatreferenceliste{\labeltext{\v!letter:\ascii}}}} + \vtop{\doattributes{\????ld\ascii}\c!textstyle\c!textcolor + {\doformatreferenceliste{\lettervalue\ascii}}}}}% + \egroup} + +\setvalue{\v!letter:\v!reference:\v!e}% + {\hbox\!!to\hsize + {\processcommacommand[\@@@@ldlist]\formatreferenceliste\hss}} + +\startsetups[letter:reference:\v!e] + +\setups[letter:reference:\v!a] + +\stopsetups + +%D The alternative \mono{none} could be used to disable the reference. +%D +%D The advantage is to change only the list alternative to nothing, another +%D method to get this result to use alternative c and remove all values from +%D the reference but the none key is better. + +\resetvalue{\v!letter:\v!reference:\v!none} + +\startsetups[letter:reference:\v!none] + + % Use the topspace value from the style + +\stopsetups + +%D \subject{Setup commands} +%D +%D \macros +%D {setupletter,setlettervalue} +%D +%D The values for the letter field is set eitheir either with \tex{setupletter} +%D or with \tex{setlettervalue}, the first commands allows you to input the data +%D in a key-val list while the second is only able to accept a single value. +%D +%D The first definition for \tex{setupletter} was defined in \filename{t-letter.tex} +%D and used till \date[d=20,m=4,y=2008] but I decided to replace it by a simpler +%D method to avoid a few lines of code in my letter and the letter versions from +%D \date[d=21,m=4,y=2008] will use the new user interface. The old definition from +%D \filename{t-letter.tex} is now oveloaded in will eventually disappear. +%D +%D The second command to set \tex{setlettervalue} was developed as a alternative +%D method to set values for the letter, I implemnted the command at the same time +%D as I changed the user interface. +%D +%D Untill the old definition for \tex{setupletter} remains in \filename{t-letter.tex} +%D I have to redefine also \tex{lettervalue}, \tex{doiflettervalue} and +%D \tex{doifelselettervalue} because the old and new definitions differe in the +%D number of arguments but the new definition will move to the core file as soon +%D as I replace \tex{setupletter} in the core. + +%D \starttyping +%D \def\setupletter +%D {\dodoubleempty\dosetupletter} +%D +%D \def\dosetupletter[#1][#2]% +%D {\ifsecondargument +%D \dodosetupletter[#1][#2]% +%D \else +%D \dodosetupletter[#1][]% +%D \fi} +%D +%D \def\dodosetupletter[#1][#2]% +%D {\doifelsenothing{#2} +%D {\getparameters[\????ld][#1]} +%D {\def\dododosetupletter##1% +%D {\getparameters[\????ld##1][#2]}% +%D \processcommalist[#1]\dododosetupletter}} +%D +%D \def\lettervalue#1% +%D {\csname\????ld#1\endcsname} +%D +%D \def\doiflettervalue#1% +%D {\doiftextelse{\lettervalue{#1}} +%D \firstofoneargument +%D \gobbleoneargument} +%D +%D \def\doifelselettervalue#1% +%D {\doiftextelse{\lettervalue{#1}} +%D \firstoftwoarguments +%D \secondoftwoarguments} +%D +%D \definecomplexorsimple\setlettervalue +%D +%D \def\complexsetlettervalue[#1]#2% +%D {\setvalue{\????ld#1}{#2}} +%D +%D \def\simplesetlettervalue#1#2% +%D {\setvalue{\????ld#1}{#2}} +%D \stoptyping + +%D \subject{Letter environment} +%D +%D \macros +%D {startletter} +%D +%D The main macro in this file, it is used to write the letter content. +%D It is also possible to set the address and a few other values like +%D the opening and closing with the optional argument, the values are +%D local in this case and not global like the values you could set with +%D \tex{setupletter}. +%D +%D \showsetup{startletter} + +\def\startletter + {\bgroup\dodoubleempty\dostartletter} + +\def\dostartletter[#1][#2]% + {\ifsecondargument + \setupletter[#1]% + \doifundefinedelse{\????ld\????ld#2} + {\setvalue{\????ld\c!toaddress}{#2}} + {\setvalue{\????ld\c!toaddress}{\getvalue{\????ld\????ld#2}}}% + \else\iffirstargument + \doifassignmentelse{#1} + {\setupletter[#1]} + {\doifundefinedelse{\????ld\????ld#1} + {\setvalue{\????ld\c!toaddress}{#1}} + {\setvalue{\????ld\c!toaddress}{\getvalue{\????ld\????ld#1}}}}% + \fi\fi + \def\stopletter + {\setups[letter:place]\egroup + \setupsubpagenumber[\c!state=\@@@@lsoptionstate]}% + \dostartbuffer[lettercontent][startletter][stopletter]} + +%D Patched version of the \tex{flushbufferline} macro for \MKII, +%D the changes are definition as long and removing of \tex{string} +%D in the argument of the last write block. + +\long\def\flushbufferline#1% + {\iftmpblockstarted + \ifsegmentatebuffer + \ifemptybufferline + \immediate\write\tmpblocks{\string\stopbufferparagraph }% + \immediate\write\tmpblocks{\string\startbufferparagraph}% + \else + \immediate\write\tmpblocks{#1}% + \fi + \else + \immediate\write\tmpblocks{#1}% + \fi + \else + \doifsomething{#1} + {\tmpblockstartedtrue + \immediate\write\tmpblocks{#1}}% + \fi} + +%D \macros +%D {startlettercontent} +%D +%D The letter content is saved in the value content, although I could +%D place it in the corresponding I prefer this solution because you could +%D now use it in your own macros and redefine the content setups to your +%D own wishes. + +\setupletter + [\c!content={\getbuffer[lettercontent]}] + +\def\startlettercontent + {\dostartbuffer[lettercontent][startlettercontent][stoplettercontent]} + +%D After the definition of all macros I could now put the content +%D in the corresponding setups, this is only important if you want +%D to define your own layout for header, address etc. + +\setvalue{\v!letter:\v!head:\v!a}% + {\lettervalue\c!fromname + \doiflettervalue\c!fromname\\ + \lettervalue\c!fromaddress} + +\startsetups[letter:head] +\def\\{\letterstylevalue\v!head\c!separator}% +\executeifdefined{\v!letter:\v!head:\@@@@lsheadalternative}{\getvalue{\v!letter:\v!head:\v!a}}% +\stopsetups + +\startsetups[letter:foot] +\executeifdefined{\v!letter:\v!foot:\@@@@lsfootalternative}\donothing +\stopsetups + +\startsetups[letter:nexthead] +\executeifdefined{\v!letter:\v!nexthead:\@@@@lsnextheadalternative}\donothing +\stopsetups + +\startsetups[letter:nextfoot] +\executeifdefined{\v!letter:\v!nextfoot:\@@@@lsnextfootalternative}\donothing +\stopsetups + +\setvalue{\v!letter:\v!header:\v!fullblock}% + {\hbox\!!to\hsize + {\rlap{\lettervalue\c!toname}% + \midaligned{\pagenumber}% + \llap{\framed[\c!frame=\v!off,\c!location=\v!top,\c!align=\v!left] + {\lettervalue\c!date \\ + \lettervalue\c!reference}}}} + +\setvalue{\v!letter:\v!header:\v!hanging}% + {\hbox\!!to\hsize + {\framed[\c!frame=\v!off,\c!location=\v!top,\c!align=v!right] + {\lettervalue\c!toname \\ + \lettervalue\c!date \\ + \lettervalue\c!reference \\ + \labeltext{page}\pagenumber}}\hss} + +\copycsname\v!letter:\v!header:\v!modified\endcsname\csname\v!letter:\v!header:\v!hanging\endcsname + +\startsetups[letter:header] +\executeifdefined{\v!letter:\v!header:\@@@@lsheaderalternative}\donothing +\stopsetups + +\startsetups[letter:footer] +\executeifdefined{\v!letter:\v!footer:\@@@@lsfooteralternative}\donothing +\stopsetups + +%D \subject{Addressee field} +%D +%D The address field is separated into two different fields. +%D The upper field is meant for dispatch information, the official height +%D in germany is 3 lines but this would lead to different heights dependent +%D of the font size and the fonts own height. The lower field contains the +%D name and address of the receiver and has a height of 6 lines in germany. +%D This value will lead to the same problem as the upper field, because the +%D whole address field has a fixed height and both field should fit into +%D this space. I solved this problem by assinging the upper field 1/3 of the +%D address height and the lower field 2/3 of the address height. +%D +%D If you hace problem to put all information in the limited space you could +%D try to reduce the font size or reduce the interlinespace in the field. + +\presetlocalframed[\????ls\v!dispatch] +\presetlocalframed[\????ls\v!addressee] + +\startsetups[letter:place:dispatch] + + \localframed + [\????ls\v!dispatch] + {\doadaptleftskip {\letterstylevalue\v!dispatch\c!leftmargin}% + \doadaptrightskip{\letterstylevalue\v!dispatch\c!rightmargin}% + \doattributes{\????ls\v!dispatch}\c!style\c!color{\setups[letter:address:dispatch]}} + +\stopsetups + +\startsetups[letter:place:addressee] + + \localframed + [\????ls\v!addressee] + {\doadaptleftskip {\letterstylevalue\v!addressee\c!leftmargin}% + \doadaptrightskip{\letterstylevalue\v!addressee\c!rightmargin}% + \doattributes{\????ls\v!addressee}\c!style\c!color{\setups[letter:address:content]}} + +\stopsetups + +\setvalue{\v!letter:\v!address:\v!a}% + {\doif\@@@@lsoptiondispatch \v!yes{\setups[letter:place:dispatch]}% + \doif\@@@@lsoptionaddressee\v!yes{\setups[letter:place:addressee]}} + +\startsetups[letter:address] +\offinterlineskip\vskip-\lineheight +\executeifdefined{\v!letter:\v!address:\@@@@lsaddressalternative}{\getvalue{\v!letter:\v!address:\v!a}}% +\stopsetups + +\startsetups[letter:address:dispatch] +\lettervalue\c!dispatch +\stopsetups + +\startsetups[letter:address:content] +\def\\{\letterstylevalue\v!address\c!separator}% +\lettervalue\c!toname +\doiflettervalue\c!toname\\ +\lettervalue\c!toaddress +\stopsetups + +%D The following setups shouldn't be changed ar you will loose information +%D in the output. +%D +%D The reference line is choosen with the alternative key or if you set +%D a not defined alternative the definition a is choosen. + +\startsetups[letter:reference] +\executeifdefined{\v!letter:\v!reference:\@@@@lsreferencealternative}{\getvalue{\v!letter:\v!reference:\v!a}} +\stopsetups + +\resetvalue{\v!letter:\v!location:\v!a} + +\setvalue{\v!letter:\v!location:\v!french}% + {\lettervalue\c!place + \doiflettervalue\c!place{\lettervalue{\c!place\c!separator}}% + \lettervalue\c!date} + +\startsetups[letter:location] +\executeifdefined{\v!letter:\v!location:\@@@@lslocationalternative}{\getvalue{\v!letter:\v!location:\v!a}} +\stopsetups + +\startsetups[letter:title] +\doifelselettervalue\c!title + {\lettervalue\c!title} + {\doiflettervalue\c!attention + {\labeltext{\v!letter:\c!attention}\lettervalue\c!attention}} +\stopsetups + +\startsetups[letter:subject] +\labeltext{\v!letter:\c!subject}\lettervalue\c!subject +\stopsetups + +\setvalue{\v!letter:\v!opening:\v!a}% + {\doifelselettervalue\c!opening + {\lettervalue\c!opening} + {\doiflettervalue\c!salutation + {\lettervalue\c!salutation}}} + +\setvalue{\v!letter:\v!opening:\v!french}% + {\ExpandSecondAfter\doifsomething{\letterstylevalue\v!option\c!indenting} + {\setupindenting[\@@@@lsoptionindenting]}% + \getvalue{\v!letter:\v!opening:\v!a}} + +\startsetups[letter:opening] +\executeifdefined{\v!letter:\v!opening:\@@@@lsopeningalternative}{\getvalue{\v!letter:\v!opening:\v!a}} +\stopsetups + +\startsetups[letter:content] +\lettervalue\c!content +\stopsetups + +%D \subject{Closing and appendices} +%D +%D It is possible to attach a signature to the closing command, before the signature +%D a skip is inserted but only if the the signature key has a value. The height of the +%D closing environment itself has a height of 4 lines to provide a free space for your +%D own handwritten signature and to have a little bit space between the closing text +%D and the appendices. + +\setvalue{\v!letter:\v!closing:\v!a}% + {\lettervalue\c!closing + \doiflettervalue\c!signature{\letterstylevalue\v!closing\c!inbetween}% + \lettervalue\c!signature} + +\setvalue{\v!letter:\v!closing:\v!french}% + {\ExpandSecondAfter\doifsomething{\letterstylevalue\v!option\c!indenting} + {\setupindenting[\@@@@lsoptionindenting,\v!first]}% + \lettervalue\c!closing + \doiflettervalue\c!signature{\letterstylevalue\v!closing\c!inbetween}% + \raggedcenter\doadaptleftskip{.5\textwidth}% quick and dirty + \lettervalue\c!signature\endgraf} + +\setvalue{\v!letter:\v!closing:\v!simplified}% + {\doiflettervalue\c!signature{\letterstylevalue\v!closing\c!inbetween}% + \lettervalue\c!signature} + +\startsetups[letter:closing] +\def\\{\letterstylevalue\v!closing\c!separator}% +\executeifdefined{\v!letter:\v!closing:\@@@@lsclosingalternative}{\getvalue{\v!letter:\v!closing:\v!a}}% +\stopsetups + +\startsetups[letter:appendices] +\let\\\crlf +\doflushletterdescription +\stopsetups + +\dodefineletterdescription[\v!enclosure] + +\startsetups[letter:enclosure] +\processaction + [\lettervalue\c!enclosure] + [ \v!empty=>\vrule\!!height\zeropoint\!!depth\zeropoint\!!width\hsize\relax\ifvmode\nowhitespace\fi, + \s!unknown=>\lettervalue\c!enclosure] +\stopsetups + +\dodefineletterdescription[\v!copy] + +\startsetups[letter:copy] +\processaction + [\lettervalue\c!copy] + [ \v!empty=>\vrule\!!height\zeropoint\!!depth\zeropoint\!!width\hsize\relax\ifvmode\nowhitespace\fi, + \s!unknown=>\lettervalue\c!copy] +\stopsetups + +\dodefineletterdescription[\v!postscript] + +\startsetups[letter:postscript] +\processaction + [\lettervalue\c!postscript] + [ \v!empty=>\vrule\!!height\zeropoint\!!depth\zeropoint\!!width\hsize\relax\ifvmode\nowhitespace\fi, + \s!unknown=>\lettervalue\c!postscript] +\stopsetups + +\setvalue{\v!letter:\v!backaddress:\v!yes}% + {\lettervalue\c!fromname + \doiflettervalue\c!fromaddress\\ + \lettervalue\c!fromaddress} + +\resetvalue{\v!letter:\v!backaddress:\v!no} + +\setvalue{\v!letter:\v!backaddress:\v!auto}% + {\doifelselettervalue\c!backaddress + {\lettervalue\c!backaddress} + {\lettervalue\c!fromname + \doiflettervalue\c!fromaddress\\ + \lettervalue\c!fromaddress}} + +\startsetups[letter:backaddress] +\def\\{\letterstylevalue\c!backaddress\c!separator}% +\executeifdefined{\v!letter:\v!backaddress:\@@@@lsbackaddressalternative}{\getvalue{\v!letter:\v!backaddress:\v!no}}% +\stopsetups + +%D To prevent a pagebreak between the last line of the text and +%D the siganture a nonbreakable vertical space is necessary. +%D The vertical space is inserted in the style file with the normal +%D before and after commands where we control the distance between +%D the elements. + +\defineblankmethod [\v!nobreak] {\penalty\plustenthousand} +\defineblankmethod [\v!endgraf] {\endgraf} + +%D \subject{Additional settings} +%D +%D I set alternative a as default value for alternative, the only content +%D is the date with a label. f you dont want a label choose alternative c +%D or change the label. + +\startsetups[letter:optimize] + + \setbox\scratchbox\hbox % trial typesetting to get the heigth of the reference line + {\executeifdefined{\v!letter:\v!reference:\@@@@lsreferencealternative}{\getvalue{\v!letter:\v!reference:\v!a}}} + + %\setups[letter:reference:\@@@@lsreferencealternative] + +\stopsetups + +%D We have at the moment only the values from the core module, I use the settings +%D from the dinb file as default settings, you could replace them in your own +%D document but I won't change the default style. +%D +%D The labels are stored in a common file, you could use them in your own interface +%D but you have to live with my names. + +\useletterstyle [dinb] % layout +\useletterextension[label] % labels + +\protect \endinput diff --git a/Master/texmf-dist/tex/context/third/letter/interface/knuth.nli b/Master/texmf-dist/tex/context/third/letter/interface/knuth.nli index 1ecddf56683..886f1da7a98 100644 --- a/Master/texmf-dist/tex/context/third/letter/interface/knuth.nli +++ b/Master/texmf-dist/tex/context/third/letter/interface/knuth.nli @@ -1,57 +1,59 @@ -%D \module
-%D [ file=knuth,
-%D version=2008.04.17,
-%D title=\CONTEXT\ Letter Interface,
-%D subtitle=Lettformat Interface, % Donald Knuth's own letter format
-%D author=Wolfgang Schuster,
-%D date=\currentdate,
-%D copyright=Public Domain]
-
-\unprotect
-
-\useletterstyle[knuth]
-
-\def\address
- {\startbuffer[address][address][body]}
-
-\def\body
- {\startbuffer[body][body][closing]}
-
-\def\closing
- {\def\endletter{\setups[letter:place]}%
- \startbuffer[closing][closing][endletter]}
-
-\def\annotations
- {\blank[line]\leftskip=0pt}
-
-\def\ps
- {\let\par\space
- \blank[medium]\leftskip=0pt}
-
-\startsetups[letter:reference]
-
-\stopsetups
-
-\startsetups[letter:opening]
-
- \obeylines
- \getbuffer[address]
-
-\stopsetups
-
-\startsetups[letter:content]
-
- \getbuffer[body]
-
-\stopsetups
-
-\startsetups[letter:closing]
-
- \leftskip=4in
- \obeylines
- \def\par{\normalpar\vskip1cm\let\par\normalpar}
- \getbuffer[closing]
-
-\stopsetups
-
-\protect \endinput
+%D \module +%D [ file=knuth, +%D version=2008.04.17, +%D title=\CONTEXT\ Letter Interface, +%D subtitle=Lettformat Interface, % Donald Knuth's own letter format +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] + +\unprotect + +\useletterstyle[knuth] + +\def\address + {\dostartbuffer[address][address][body]} + +\def\body + {\dostartbuffer[body][body][closing]} + +\def\closing + {\def\endletter{\setups[letter:place]}% + \dostartbuffer[closing][closing][endletter]} + +\def\annotations + {\blank[line]\leftskip=0pt} + +\def\ps + {\let\par\space + \blank[medium]\leftskip=0pt} + +\startsetups[letter:reference] + +\stopsetups + +\startsetups[letter:opening] + + \obeylines + \getbuffer[address] + +\stopsetups + +\startsetups[letter:content] + + \getbuffer[body] + +\stopsetups + +\startsetups[letter:closing] + + \leftskip=4in + \obeylines + \def\par{\normalpar\vskip1cm\let\par\normalpar} + \getbuffer[closing] + +\stopsetups + +\protect \endinput diff --git a/Master/texmf-dist/tex/context/third/letter/interface/pragma.nli b/Master/texmf-dist/tex/context/third/letter/interface/pragma.nli index 5bb287af0a5..f149c1ff7e0 100644 --- a/Master/texmf-dist/tex/context/third/letter/interface/pragma.nli +++ b/Master/texmf-dist/tex/context/third/letter/interface/pragma.nli @@ -5,7 +5,9 @@ %D subtitle=Pragma Style, %D author=Wolfgang Schuster, %D date=\currentdate, -%D copyright=Public Domain] +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] \unprotect @@ -158,7 +160,7 @@ \stopsetups \def\startlettercontent - {\startbuffer[texletter][startlettercontent][stoplettercontent]} + {\dostartbuffer[texletter][startlettercontent][stoplettercontent]} \startsetups[letter:content] \getvariable{letter:data}{content} diff --git a/Master/texmf-dist/tex/context/third/letter/style/blockstyle.nls b/Master/texmf-dist/tex/context/third/letter/style/blockstyle.nls index 165c41165b7..fcc0fb24de9 100644 --- a/Master/texmf-dist/tex/context/third/letter/style/blockstyle.nls +++ b/Master/texmf-dist/tex/context/third/letter/style/blockstyle.nls @@ -1,56 +1,58 @@ -%D \module
-%D [ file=blockstyle,
-%D version=2008.05.28,
-%D title=\CONTEXT\ Letter Style,
-%D subtitle=Blockstyle initalization,
-%D author=Wolfgang Schuster,
-%D date=\currentdate,
-%D copyright=Public Domain]
-
-\unprotect
-
-\useletterstyle[default]
-
-\def\letter!order!sections
- {\v!letter\v!head,\v!date\v!line,\v!reference\v!line,
- \v!special\v!notation,\v!inside\v!address,\v!title,
- \v!opening,\v!subject,\v!content,\v!closing,\v!appendices}
-
-\setupletter
- [\c!alternative=\v!none]
-
-\setupletterstyle
- [\v!option]
- [\c!backaddress=\v!no,
- \c!address=\v!no,
- \c!reference=\v!no,
- \c!marking=\v!no]
-
-\startsetups[letter:head]
-% sender information appear in a lettersection
-\stopsetups
-
-\startsetups[letter:\v!letter\v!head]
-\let\\\crlf
-\lettervalue\c!fromaddress
-\stopsetups
-
-\startsetups[letter:\v!date\v!line]
-\lettervalue\c!date
-\stopsetups
-
-\startsetups[letter:\v!reference\v!line]
-\lettervalue\c!reference
-\stopsetups
-
-\startsetups[letter:\v!special\v!notation]
-\lettervalue\c!dispatch
-\stopsetups
-
-\startsetups[letter:\v!inside\v!address]
-\let\\\crlf
-\doiflettervalue\c!toname {\lettervalue\c!toname \crlf}
-\doiflettervalue\c!toaddress{\lettervalue\c!toaddress\crlf}
-\stopsetups
-
-\protect \endinput
+%D \module +%D [ file=blockstyle, +%D version=2008.05.28, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Blockstyle initalization, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] + +\unprotect + +\useletterstyle[default] + +\def\letter!order!sections + {\v!letter\v!head,\v!date\v!line,\v!reference\v!line, + \v!special\v!notation,\v!inside\v!address,\v!title, + \v!opening,\v!subject,\v!content,\v!closing,\v!appendices} + +\setupletter + [\c!alternative=\v!none] + +\setupletterstyle + [\v!option] + [\c!backaddress=\v!no, + \c!address=\v!no, + \c!reference=\v!no, + \c!marking=\v!no] + +\startsetups[letter:head] +% sender information appear in a lettersection +\stopsetups + +\startsetups[letter:\v!letter\v!head] +\let\\\crlf +\lettervalue\c!fromaddress +\stopsetups + +\startsetups[letter:\v!date\v!line] +\lettervalue\c!date +\stopsetups + +\startsetups[letter:\v!reference\v!line] +\lettervalue\c!reference +\stopsetups + +\startsetups[letter:\v!special\v!notation] +\lettervalue\c!dispatch +\stopsetups + +\startsetups[letter:\v!inside\v!address] +\let\\\crlf +\doiflettervalue\c!toname {\lettervalue\c!toname \crlf} +\doiflettervalue\c!toaddress{\lettervalue\c!toaddress\crlf} +\stopsetups + +\protect \endinput diff --git a/Master/texmf-dist/tex/context/third/letter/style/default.nls b/Master/texmf-dist/tex/context/third/letter/style/default.nls index 4637dfec6a8..4878317b08b 100644 --- a/Master/texmf-dist/tex/context/third/letter/style/default.nls +++ b/Master/texmf-dist/tex/context/third/letter/style/default.nls @@ -1,34 +1,87 @@ -%D \module
-%D [ file=default,
-%D version=2008.07.08,
-%D title=\CONTEXT\ Letter Style,
-%D subtitle=Blockstyle initalization,
-%D author=Wolfgang Schuster,
-%D date=\currentdate,
-%D copyright=Public Domain]
-
-\unprotect
-
-\def\doresetletterlayer #1{\dododefineletterlayer[#1]}
-\def\doresetlettersection#1{\dodefinelettersection[#1]}
-
-\processcommacommand[\letter!list!layers ]\doresetletterlayer
-\processcommacommand[\letter!list!sections]\doresetlettersection
-
-\setupletterstyle
- [\v!firstpage,\v!secondpage]
- [\c!topspace=.08417508418\paperheight,
- \c!top=\!!zeropoint,
- \c!topdistance=\!!zeropoint,
- \c!header=.06734006734\paperheight,
- \c!headerdistance=\!!zeropoint,
- \c!height=.84175084175\paperheight,
- \c!footerdistance=\!!zeropoint,
- \c!footer=.06734006734\paperheight,
- \c!bottomdistance=\!!zeropoint,
- \c!bottom=\!!zeropoint,
- \c!backspace=.11904761905\paperwidth,
- \c!width=.71428571429\paperwidth,
- \c!bottomspace=\!!zeropoint]
-
-\protect \endinput
+%D \module +%D [ file=default, +%D version=2008.10.27, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Blockstyle initalization, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] + +\unprotect + +\def\doresetletterlayer #1{\dododefineletterlayer[#1]} +\def\doresetlettersection#1{\dodefinelettersection[#1]} + +\processcommacommand[\letter!list!layers ]\doresetletterlayer +\processcommacommand[\letter!list!sections]\doresetlettersection + +\setupletterstyle + [\v!firstpage,\v!secondpage] + [\c!topspace=.08417508418\paperheight, + \c!top=\!!zeropoint, + \c!topdistance=\!!zeropoint, + \c!header=.06734006734\paperheight, + \c!headerdistance=\!!zeropoint, + \c!height=.84175084175\paperheight, + \c!footerdistance=\!!zeropoint, + \c!footer=.06734006734\paperheight, + \c!bottomdistance=\!!zeropoint, + \c!bottom=\!!zeropoint, + \c!backspace=.11904761905\paperwidth, + \c!width=.71428571429\paperwidth, + \c!bottomspace=\!!zeropoint] + +\setupletter + [\c!alternative=\v!a, + \c!list=\v!date, + \c!date=\currentdate, + \c!width=\zeropoint] + +\setupletterstyle + [\v!option] + [\c!dispatch=\v!yes, + \c!addressee=\v!yes] + +\setupletterstyle + [\v!nexthead,\v!nextfoot] + [\c!state=\v!next] + +\setupletterstyle + [\v!reference] + [\v!option] + [%\c!list=\lettervalue\c!list, % not yet + \c!alternative=\lettervalue\c!alternative] + +\setupletterstyle + [\v!backaddress] + [\v!option] + [\c!alternative=\v!no, + \c!separator=\textcomma\space] + +\setupletterstyle + [\v!dispatch,\v!addressee] + [\c!align=\v!right, + \c!width=\hsize, + \c!leftmargin=\zeropoint, + \c!rightmargin=\zeropoint, + \c!offset=\zeropoint, + \c!frame=\v!off] + +\setupletterstyle + [\v!dispatch] + [\c!location=\v!bottom, + \c!height=\dimexpr(\vsize/9)*3\relax] + +\setupletterstyle + [\v!addressee] + [\c!location=\v!top, + \c!height=\dimexpr(\vsize/9)*6\relax] + +\setupletterstyle + [\v!closing] + [\c!after={\blank[\v!line]}, + \c!inbetween={\blank[\v!endgraf,\v!nobreak,2*\v!line]}] + +\protect \endinput diff --git a/Master/texmf-dist/tex/context/third/letter/style/dina.nls b/Master/texmf-dist/tex/context/third/letter/style/dina.nls index 24b535b5fa4..54b87231216 100644 --- a/Master/texmf-dist/tex/context/third/letter/style/dina.nls +++ b/Master/texmf-dist/tex/context/third/letter/style/dina.nls @@ -5,7 +5,9 @@ %D subtitle=DIN 676 A, %D author=Wolfgang Schuster, %D date=\currentdate, -%D copyright=Public Domain] +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] \unprotect diff --git a/Master/texmf-dist/tex/context/third/letter/style/dinb.nls b/Master/texmf-dist/tex/context/third/letter/style/dinb.nls index 2714f536e99..69da94987e0 100644 --- a/Master/texmf-dist/tex/context/third/letter/style/dinb.nls +++ b/Master/texmf-dist/tex/context/third/letter/style/dinb.nls @@ -5,10 +5,14 @@ %D subtitle=DIN 676 B, %D author=Wolfgang Schuster, %D date=\currentdate, -%D copyright=Public Domain] +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] \unprotect +\useletterstyle[default] % default values + \setupletterstyle [\v!firstpage,\v!secondpage] [\c!topspace=114.3mm, @@ -29,7 +33,7 @@ \setupletterstyle [\v!title,\v!subject,\v!opening,\v!appendices] [\c!before=, - \c!after={\blank[line]}] + \c!after={\blank[\v!line]}] \setupletterstyle [\v!title] @@ -96,8 +100,7 @@ \c!height=5mm, \c!voffset=\dimexpr\letterstylevalue\v!address\c!voffset-\letterstylevalue\v!backaddress\c!height\relax, \c!width=85mm, - \c!style=\c!tf\c!xx, - \c!bottomframe=\v!on] + \c!style=\c!tf\c!xx] \setupletterstyle [\v!reference] diff --git a/Master/texmf-dist/tex/context/third/letter/style/dutch.nls b/Master/texmf-dist/tex/context/third/letter/style/dutch.nls index 43d69a381b7..841daf4e005 100644 --- a/Master/texmf-dist/tex/context/third/letter/style/dutch.nls +++ b/Master/texmf-dist/tex/context/third/letter/style/dutch.nls @@ -5,7 +5,9 @@ %D subtitle=Dutch NEN Style, %D author=Wolfgang Schuster, %D date=\currentdate, -%D copyright=Public Domain] +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] \unprotect @@ -51,7 +53,8 @@ [\v!backaddress] [\c!voffset=50mm, \c!height=5mm, - \c!width=80mm] + \c!width=80mm, + \c!bottomframe=\v!yes] \setupletterstyle [\v!address] diff --git a/Master/texmf-dist/tex/context/third/letter/style/english.nls b/Master/texmf-dist/tex/context/third/letter/style/english.nls index bcbfcdea3ff..64000adb8d3 100644 --- a/Master/texmf-dist/tex/context/third/letter/style/english.nls +++ b/Master/texmf-dist/tex/context/third/letter/style/english.nls @@ -1,23 +1,25 @@ -%D \module
-%D [ file=english,
-%D version=2008.03.13,
-%D title=\CONTEXT\ Letter Style,
-%D subtitle=English style,
-%D author=Wolfgang Schuster,
-%D date=\currentdate,
-%D copyright=Public Domain]
-
-\unprotect
-
-%D This is the second letter style for my letter module. The first
-%D style was \mono{dina.nls} with its slightly different alternative
-%D \mono{dinb.nls} but both count only as one style.
-
-\def\letter!order!sections
- {\v!title,\v!opening,\v!subject,\v!content,\v!closing,\v!appendices}
-
-\setupletterstyle
- [\v!subject]
- [\c!style=]
-
-\protect \endinput
+%D \module +%D [ file=english, +%D version=2008.03.13, +%D title=\CONTEXT\ Letter Style, +%D subtitle=English style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] + +\unprotect + +%D This is the second letter style for my letter module. The first +%D style was \mono{dina.nls} with its slightly different alternative +%D \mono{dinb.nls} but both count only as one style. + +\def\letter!order!sections + {\v!title,\v!opening,\v!subject,\v!content,\v!closing,\v!appendices} + +\setupletterstyle + [\v!subject] + [\c!style=] + +\protect \endinput diff --git a/Master/texmf-dist/tex/context/third/letter/style/french.nls b/Master/texmf-dist/tex/context/third/letter/style/french.nls index b2c93696af8..b2cc80c14c3 100644 --- a/Master/texmf-dist/tex/context/third/letter/style/french.nls +++ b/Master/texmf-dist/tex/context/third/letter/style/french.nls @@ -1,52 +1,87 @@ -%D \module
-%D [ file=french,
-%D version=2008.04.28,
-%D title=\CONTEXT\ Letter Style,
-%D subtitle=French Style,
-%D author=Wolfgang Schuster,
-%D date=\currentdate,
-%D copyright=Public Domain]
-
-\unprotect
-
-\useletterstyle[dinb]
-
-\setupletterstyle
- [\v!firstpage,\v!secondpage]
- [\c!backspace=26mm,
- \c!width=\v!middle,
- \c!topspace=105mm,
- \c!bottomspace=22mm,
- \c!height=\v!fit]
-
-\setupletterstyle
- [\v!secondpage]
- [\c!topspace=27mm,
- \c!header=12mm]
-
-\setupletterstyle
- [\v!head]
- [\c!hoffset=16mm,
- \c!voffset=23mm]
-
-\setupletterstyle
- [\v!address]
- [\c!hoffset=115mm,
- \c!voffset=53mm]
-
-\setupletterstyle
- [\v!location]
- [\c!hoffset=115mm,
- \c!voffset=28mm]
-
-\setupletterstyle
- [\v!title,\v!subject,\v!opening,\v!content,\v!closing,\v!appendices]
- [\c!leftmargin=15mm]
-
-\setupletterstyle
- [\v!option]
- [\c!cutmark=\v!no,
- \c!botmark=\v!no,
- \c!usermark=\v!yes]
-
-\protect \endinput
+%D \module +%D [ file=french, +%D version=2008.08.07, +%D title=\CONTEXT\ Letter Style, +%D subtitle=French Style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] + +\unprotect + +\useletterstyle[dinb] + +\setupletterstyle + [\v!firstpage,\v!secondpage] + [\c!backspace=25mm, + \c!width=\v!middle, + \c!topspace=95mm, + \c!bottomspace=25mm, + \c!height=\v!fit] + +\setupletterstyle + [\v!secondpage] + [\c!topspace=15mm, + \c!header=10mm] + +\setupletterstyle + [\v!head] + [\c!hoffset=\backspace, + \c!voffset=25mm] + +\setupletterstyle + [\v!backaddress] + [\c!alternative=\v!no] + +\setupletterstyle + [\v!address] + [\c!hoffset=107mm, + \c!voffset=55mm] + +\setupletterstyle + [\v!addressee] + [\c!height=\vsize, + \c!location=\v!normal, + \c!align=\v!right] + +\setupletterstyle + [\v!location] + [\c!hoffset=107mm, + \c!voffset=30mm] + +\setupletterstyle + [\v!reference] + [\c!alternative=\v!none] + +\setupletterstyle + [\v!closing] + [\c!inbetween={\blank[\v!endgraf,\v!nobreak,2*\v!line]}] + +\setupletterstyle + [\v!enclosure] + [\c!location=\v!left, + \c!width=\v!fit, + \c!headstyle=\c!tf] + +\setupletterstyle + [\v!opening] + [\c!after={\blank[2*\v!line]}] + +\setupletterstyle + [\v!content] + [\c!after={\blank[\v!nobreak,2*\v!line]}] + +\setupletterstyle + [\v!location,\v!opening,\v!closing] + [\c!alternative=\v!french] + +\setupletterstyle + [\v!option] + [\c!whitespace=\v!line, + \c!cutmark=\v!no, + \c!botmark=\v!no, + \c!dispatch=\v!no] + +\protect \endinput diff --git a/Master/texmf-dist/tex/context/third/letter/style/fullblock.nls b/Master/texmf-dist/tex/context/third/letter/style/fullblock.nls index db5505b0cf6..e449e6f5e9a 100644 --- a/Master/texmf-dist/tex/context/third/letter/style/fullblock.nls +++ b/Master/texmf-dist/tex/context/third/letter/style/fullblock.nls @@ -1,57 +1,59 @@ -%D \module
-%D [ file=fullblock,
-%D version=2008.05.28,
-%D title=\CONTEXT\ Letter Style,
-%D subtitle=full-block/complete block style,
-%D author=Wolfgang Schuster,
-%D date=\currentdate,
-%D copyright=Public Domain]
-
-\unprotect
-
-\useletterstyle[blockstyle]
-
-\setupletterstyle
- [\v!letter\v!head,\v!reference\v!line,\v!special\v!notation,
- \v!inside\v!address,\v!title,\v!opening,\v!subject,\v!content]
- [\c!after={\blank[\v!line]}]
-
-\setupletterstyle
- [\v!closing]
- [\c!after={\blank[2*\v!line]}]
-
-\setupletterstyle
- [\v!firstpage,\v!secondpage]
- [\c!backspace=1in,
- \c!width=\v!middle,
- \c!topspace=1in,
- \c!header=0in,
- \c!footer=0in,
- \c!height=\v!fit]
-
-\setupletterstyle
- [\v!secondpage]
- [\c!header=.5in]
-
-\startsetups[letter:header:fullblock]
-
- \framed
- [\c!frame=\v!off,
- \c!location=\v!top,
- \c!align=\v!left]
- {\lettervalue\c!date \\
- \lettervalue\c!reference}
-
-\stopsetups
-
-\setupletterstyle
- [\v!header]
- [\c!lefttext=\lettervalue\c!toname,
- \c!middletext=\pagenumber,
- \c!righttext=\setups{letter:header:fullblock}]
-
-\setupletterstyle
- [\v!option]
- [\c!whitespace=\v!line]
-
-\protect \endinput
+%D \module +%D [ file=fullblock, +%D version=2008.05.28, +%D title=\CONTEXT\ Letter Style, +%D subtitle=full-block/complete block style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] + +\unprotect + +\useletterstyle[blockstyle] + +\setupletterstyle + [\v!letter\v!head,\v!reference\v!line,\v!special\v!notation, + \v!inside\v!address,\v!title,\v!opening,\v!subject,\v!content] + [\c!after={\blank[\v!line]}] + +\setupletterstyle + [\v!closing] + [\c!after={\blank[2*\v!line]}] + +\setupletterstyle + [\v!firstpage,\v!secondpage] + [\c!backspace=1in, + \c!width=\v!middle, + \c!topspace=1in, + \c!header=0in, + \c!footer=0in, + \c!height=\v!fit] + +\setupletterstyle + [\v!secondpage] + [\c!header=.5in] + +\startsetups[letter:header:fullblock] + + \framed + [\c!frame=\v!off, + \c!location=\v!top, + \c!align=\v!left] + {\lettervalue\c!date \\ + \lettervalue\c!reference} + +\stopsetups + +\setupletterstyle + [\v!header] + [\c!lefttext=\lettervalue\c!toname, + \c!middletext=\pagenumber, + \c!righttext=\setups{letter:header:fullblock}] + +\setupletterstyle + [\v!option] + [\c!whitespace=\v!line] + +\protect \endinput diff --git a/Master/texmf-dist/tex/context/third/letter/style/hanging.nls b/Master/texmf-dist/tex/context/third/letter/style/hanging.nls index 0257a5c7cb0..a78231235b0 100644 --- a/Master/texmf-dist/tex/context/third/letter/style/hanging.nls +++ b/Master/texmf-dist/tex/context/third/letter/style/hanging.nls @@ -1,67 +1,69 @@ -%D \module
-%D [ file=hanging,
-%D version=2008.05.28,
-%D title=\CONTEXT\ Letter Style,
-%D subtitle=Hanging indented style,
-%D author=Wolfgang Schuster,
-%D date=\currentdate,
-%D copyright=Public Domain]
-
-\unprotect
-
-\useletterstyle[blockstyle]
-
-\setupletterstyle
- [\v!letter\v!head,\v!reference\v!line,\v!special\v!notation,
- \v!inside\v!address,\v!title,\v!opening,\v!content]
- [\c!after={\blank[\v!line]}]
-
-\setupletterstyle
- [\v!letter\v!head,\v!reference\v!line,
- \v!date\v!line,\v!special\v!notation,\v!closing]
- [\c!leftmargin=.5\textwidth]
-
-\setupletterstyle
- [\v!content]
- [\c!before=\everypar{\hangindent1.5em\relax}]
-
-\setupletterstyle
- [\v!closing]
- [\c!after={\blank[2*\v!line]}]
-
-\setupletterstyle
- [\v!firstpage,\v!secondpage]
- [\c!backspace=1in,
- \c!width=\v!middle,
- \c!topspace=1in,
- \c!header=0in,
- \c!footer=0in,
- \c!height=\v!fit]
-
-\setupletterstyle
- [\v!secondpage]
- [\c!header=1in]
-
-\setuplabeltext[en][page=Page~]
-
-\startsetups[letter:header:hanging]
-
- \framed
- [\c!frame=\v!off,
- \c!align=v!right]
- {\lettervalue\c!toname \\
- \lettervalue\c!date \\
- \lettervalue\c!reference \\
- \labeltext{page}\pagenumber}
-
-\stopsetups
-
-\setupletterstyle
- [\v!header]
- [\c!lefttext=\setups{letter:header:hanging}]
-
-\setupletterstyle
- [\v!option]
- [\c!whitespace=\v!line]
-
-\protect \endinput
+%D \module +%D [ file=hanging, +%D version=2008.05.28, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Hanging indented style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] + +\unprotect + +\useletterstyle[blockstyle] + +\setupletterstyle + [\v!letter\v!head,\v!reference\v!line,\v!special\v!notation, + \v!inside\v!address,\v!title,\v!opening,\v!content] + [\c!after={\blank[\v!line]}] + +\setupletterstyle + [\v!letter\v!head,\v!reference\v!line, + \v!date\v!line,\v!special\v!notation,\v!closing] + [\c!leftmargin=.5\textwidth] + +\setupletterstyle + [\v!content] + [\c!before=\everypar{\hangindent1.5em\relax}] + +\setupletterstyle + [\v!closing] + [\c!after={\blank[2*\v!line]}] + +\setupletterstyle + [\v!firstpage,\v!secondpage] + [\c!backspace=1in, + \c!width=\v!middle, + \c!topspace=1in, + \c!header=0in, + \c!footer=0in, + \c!height=\v!fit] + +\setupletterstyle + [\v!secondpage] + [\c!header=1in] + +\setuplabeltext[en][page=Page~] + +\startsetups[letter:header:hanging] + + \framed + [\c!frame=\v!off, + \c!align=v!right] + {\lettervalue\c!toname \\ + \lettervalue\c!date \\ + \lettervalue\c!reference \\ + \labeltext{page}\pagenumber} + +\stopsetups + +\setupletterstyle + [\v!header] + [\c!lefttext=\setups{letter:header:hanging}] + +\setupletterstyle + [\v!option] + [\c!whitespace=\v!line] + +\protect \endinput diff --git a/Master/texmf-dist/tex/context/third/letter/style/knuth.nls b/Master/texmf-dist/tex/context/third/letter/style/knuth.nls index 4f06d76bcb8..ae34f0208ca 100644 --- a/Master/texmf-dist/tex/context/third/letter/style/knuth.nls +++ b/Master/texmf-dist/tex/context/third/letter/style/knuth.nls @@ -5,7 +5,9 @@ %D subtitle=Letterformat Style, %D author=Wolfgang Schuster, %D date=\currentdate, -%D copyright=Public Domain] +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] \unprotect diff --git a/Master/texmf-dist/tex/context/third/letter/style/memo.nls b/Master/texmf-dist/tex/context/third/letter/style/memo.nls index 34c4ba4eac4..d25d1398c89 100644 --- a/Master/texmf-dist/tex/context/third/letter/style/memo.nls +++ b/Master/texmf-dist/tex/context/third/letter/style/memo.nls @@ -1,70 +1,72 @@ -%D \module
-%D [ file=memo,
-%D version=2008.07.03,
-%D title=\CONTEXT\ Letter Style,
-%D subtitle=Memo style,
-%D author=Wolfgang Schuster,
-%D date=\currentdate,
-%D copyright=Public Domain]
-
-\unprotect
-
-\useletterstyle[blockstyle]
-
-\def\letter!order!sections
- {\v!date\v!line,\v!reference\v!line,\v!inside\v!address,
- \v!letter\v!head,\v!special\v!notation,\v!title,
- \v!opening,\v!subject,\v!content,\v!closing,\v!appendices}
-
-\setupletterstyle
- [\v!letter\v!head,\v!reference\v!line,
- \v!special\v!notation,\v!inside\v!address,
- \v!title,\v!subject]
- [\c!before=\nowhitespace,
- \c!after=\nowhitespace]
-
-\setupletterstyle
- [\v!subject,\v!content,\v!closing]
- [\c!after={\blank[\v!line]}]
-
-\setupletterstyle
- [\v!closing]
- [\c!leftmargin=.5\textwidth]
-
-\setupletterstyle
- [\v!firstpage,\v!secondpage]
- [\c!backspace=1in,
- \c!width=\v!middle,
- \c!topspace=1in,
- \c!header=0in,
- \c!footer=0in,
- \c!height=\v!fit]
-
-\setupletterstyle
- [\v!option]
- [\c!whitespace=\v!line,
- \c!opening=\v!no,
- \c!reference\c!line=\v!no,
- \v!special\v!notation=\v!no,
- \c!title=\v!no]
-
-\startsetups[letter:\v!date\v!line]
-\labeltext{\v!memo:\c!date}\lettervalue\c!date
-\stopsetups
-
-\startsetups[letter:\v!letter\v!head]
-\let\\\crlf
-\labeltext{\v!memo:\c!fromname}\lettervalue\c!fromname
-\stopsetups
-
-\startsetups[letter:\v!inside\v!address]
-\let\\\crlf
-\labeltext{\v!memo:\c!toname}\lettervalue\c!toname
-\stopsetups
-
-\startsetups[letter:subject]
-\let\\\crlf
-\labeltext{\v!memo:\c!subject}\lettervalue\c!subject
-\stopsetups
-
-\protect \endinput
+%D \module +%D [ file=memo, +%D version=2008.07.03, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Memo style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] + +\unprotect + +\useletterstyle[blockstyle] + +\def\letter!order!sections + {\v!date\v!line,\v!reference\v!line,\v!inside\v!address, + \v!letter\v!head,\v!special\v!notation,\v!title, + \v!opening,\v!subject,\v!content,\v!closing,\v!appendices} + +\setupletterstyle + [\v!letter\v!head,\v!reference\v!line, + \v!special\v!notation,\v!inside\v!address, + \v!title,\v!subject] + [\c!before=\nowhitespace, + \c!after=\nowhitespace] + +\setupletterstyle + [\v!subject,\v!content,\v!closing] + [\c!after={\blank[\v!line]}] + +\setupletterstyle + [\v!closing] + [\c!leftmargin=.5\textwidth] + +\setupletterstyle + [\v!firstpage,\v!secondpage] + [\c!backspace=1in, + \c!width=\v!middle, + \c!topspace=1in, + \c!header=0in, + \c!footer=0in, + \c!height=\v!fit] + +\setupletterstyle + [\v!option] + [\c!whitespace=\v!line, + \c!opening=\v!no, + \c!reference\c!line=\v!no, + \v!special\v!notation=\v!no, + \c!title=\v!no] + +\startsetups[letter:\v!date\v!line] +\labeltext{\v!memo:\c!date}\lettervalue\c!date +\stopsetups + +\startsetups[letter:\v!letter\v!head] +\let\\\crlf +\labeltext{\v!memo:\c!fromname}\lettervalue\c!fromname +\stopsetups + +\startsetups[letter:\v!inside\v!address] +\let\\\crlf +\labeltext{\v!memo:\c!toname}\lettervalue\c!toname +\stopsetups + +\startsetups[letter:subject] +\let\\\crlf +\labeltext{\v!memo:\c!subject}\lettervalue\c!subject +\stopsetups + +\protect \endinput diff --git a/Master/texmf-dist/tex/context/third/letter/style/modified.nls b/Master/texmf-dist/tex/context/third/letter/style/modified.nls index de8f65110f1..df661ba7f9b 100644 --- a/Master/texmf-dist/tex/context/third/letter/style/modified.nls +++ b/Master/texmf-dist/tex/context/third/letter/style/modified.nls @@ -1,63 +1,65 @@ -%D \module
-%D [ file=modified,
-%D version=2008.05.28,
-%D title=\CONTEXT\ Letter Style,
-%D subtitle=Block/Modified block style,
-%D author=Wolfgang Schuster,
-%D date=\currentdate,
-%D copyright=Public Domain]
-
-\unprotect
-
-\useletterstyle[blockstyle]
-
-\setupletterstyle
- [\v!letter\v!head,\v!reference\v!line,\v!special\v!notation,
- \v!inside\v!address,\v!title,\v!opening,\v!content]
- [\c!after={\blank[\v!line]}]
-
-\setupletterstyle
- [\v!letter\v!head,\v!reference\v!line,
- \v!date\v!line,\v!special\v!notation,\v!closing]
- [\c!leftmargin=.5\textwidth]
-
-\setupletterstyle
- [\v!closing]
- [\c!after={\blank[2*\v!line]}]
-
-\setupletterstyle
- [\v!firstpage,\v!secondpage]
- [\c!backspace=1in,
- \c!width=\v!middle,
- \c!topspace=1in,
- \c!header=0in,
- \c!footer=0in,
- \c!height=\v!fit]
-
-\setupletterstyle
- [\v!secondpage]
- [\c!header=1in]
-
-\setuplabeltext[en][page=Page~]
-
-\startsetups[letter:header:modified]
-
- \framed
- [\c!frame=\v!off,
- \c!align=v!right]
- {\lettervalue\c!toname \\
- \lettervalue\c!date \\
- \lettervalue\c!reference \\
- \labeltext{page}\pagenumber}
-
-\stopsetups
-
-\setupletterstyle
- [\v!header]
- [\c!lefttext=\setups{letter:header:modified}]
-
-\setupletterstyle
- [\v!option]
- [\c!whitespace=\v!line]
-
-\protect \endinput
+%D \module +%D [ file=modified, +%D version=2008.05.28, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Block/Modified block style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] + +\unprotect + +\useletterstyle[blockstyle] + +\setupletterstyle + [\v!letter\v!head,\v!reference\v!line,\v!special\v!notation, + \v!inside\v!address,\v!title,\v!opening,\v!content] + [\c!after={\blank[\v!line]}] + +\setupletterstyle + [\v!letter\v!head,\v!reference\v!line, + \v!date\v!line,\v!special\v!notation,\v!closing] + [\c!leftmargin=.5\textwidth] + +\setupletterstyle + [\v!closing] + [\c!after={\blank[2*\v!line]}] + +\setupletterstyle + [\v!firstpage,\v!secondpage] + [\c!backspace=1in, + \c!width=\v!middle, + \c!topspace=1in, + \c!header=0in, + \c!footer=0in, + \c!height=\v!fit] + +\setupletterstyle + [\v!secondpage] + [\c!header=1in] + +\setuplabeltext[en][page=Page~] + +\startsetups[letter:header:modified] + + \framed + [\c!frame=\v!off, + \c!align=v!right] + {\lettervalue\c!toname \\ + \lettervalue\c!date \\ + \lettervalue\c!reference \\ + \labeltext{page}\pagenumber} + +\stopsetups + +\setupletterstyle + [\v!header] + [\c!lefttext=\setups{letter:header:modified}] + +\setupletterstyle + [\v!option] + [\c!whitespace=\v!line] + +\protect \endinput diff --git a/Master/texmf-dist/tex/context/third/letter/style/pragma.nls b/Master/texmf-dist/tex/context/third/letter/style/pragma.nls index a806947df8b..72ecdc87451 100644 --- a/Master/texmf-dist/tex/context/third/letter/style/pragma.nls +++ b/Master/texmf-dist/tex/context/third/letter/style/pragma.nls @@ -5,7 +5,9 @@ %D subtitle=Pragma Style, %D author=Wolfgang Schuster, %D date=\currentdate, -%D copyright=Public Domain] +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] \unprotect diff --git a/Master/texmf-dist/tex/context/third/letter/style/semiblock.nls b/Master/texmf-dist/tex/context/third/letter/style/semiblock.nls index c61ac22b279..1455fef1c29 100644 --- a/Master/texmf-dist/tex/context/third/letter/style/semiblock.nls +++ b/Master/texmf-dist/tex/context/third/letter/style/semiblock.nls @@ -1,52 +1,54 @@ -%D \module
-%D [ file=semiblock,
-%D version=2008.05.28,
-%D title=\CONTEXT\ Letter Style,
-%D subtitle=Semiblock style,
-%D author=Wolfgang Schuster,
-%D date=\currentdate,
-%D copyright=Public Domain]
-
-\unprotect
-
-\useletterstyle[blockstyle]
-
-\setupletterstyle
- [\v!letter\v!head,\v!reference\v!line,\v!special\v!notation,
- \v!inside\v!address,\v!title,\v!opening,\v!subject,\v!content]
- [\c!after={\blank[\v!line]}]
-
-\setupletterstyle
- [\v!letter\v!head,\v!reference\v!line,
- \v!date\v!line,\v!special\v!notation,\v!closing]
- [\c!leftmargin=.5\textwidth]
-
-\setupletterstyle
- [\v!closing]
- [\c!after={\blank[2*\v!line]}]
-
-\setupletterstyle
- [\v!firstpage,\v!secondpage]
- [\c!backspace=1in,
- \c!width=\v!middle,
- \c!topspace=1in,
- \c!header=0in,
- \c!footer=0in,
- \c!height=\v!fit]
-
-\setupletterstyle
- [\v!secondpage]
- [\c!header=.5in]
-
-\setupletterstyle
- [\v!header]
- [\c!lefttext=\lettervalue\c!toname,
- \c!middletext=\pagenumber,
- \c!righttext=\lettervalue\c!date]
-
-\setupletterstyle
- [\v!option]
- [\c!whitespace=\v!line,
- \c!indenting={\v!yes,\v!medium,\v!first}]
-
-\protect \endinput
+%D \module +%D [ file=semiblock, +%D version=2008.05.28, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Semiblock style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] + +\unprotect + +\useletterstyle[blockstyle] + +\setupletterstyle + [\v!letter\v!head,\v!reference\v!line,\v!special\v!notation, + \v!inside\v!address,\v!title,\v!opening,\v!subject,\v!content] + [\c!after={\blank[\v!line]}] + +\setupletterstyle + [\v!letter\v!head,\v!reference\v!line, + \v!date\v!line,\v!special\v!notation,\v!closing] + [\c!leftmargin=.5\textwidth] + +\setupletterstyle + [\v!closing] + [\c!after={\blank[2*\v!line]}] + +\setupletterstyle + [\v!firstpage,\v!secondpage] + [\c!backspace=1in, + \c!width=\v!middle, + \c!topspace=1in, + \c!header=0in, + \c!footer=0in, + \c!height=\v!fit] + +\setupletterstyle + [\v!secondpage] + [\c!header=.5in] + +\setupletterstyle + [\v!header] + [\c!lefttext=\lettervalue\c!toname, + \c!middletext=\pagenumber, + \c!righttext=\lettervalue\c!date] + +\setupletterstyle + [\v!option] + [\c!whitespace=\v!line, + \c!indenting={\v!yes,\v!medium,\v!first}] + +\protect \endinput diff --git a/Master/texmf-dist/tex/context/third/letter/style/simplified.nls b/Master/texmf-dist/tex/context/third/letter/style/simplified.nls index 90d1cccc188..504556ca409 100644 --- a/Master/texmf-dist/tex/context/third/letter/style/simplified.nls +++ b/Master/texmf-dist/tex/context/third/letter/style/simplified.nls @@ -1,59 +1,64 @@ -%D \module
-%D [ file=simplified,
-%D version=2008.05.28,
-%D title=\CONTEXT\ Letter Style,
-%D subtitle=Simplified style,
-%D author=Wolfgang Schuster,
-%D date=\currentdate,
-%D copyright=Public Domain]
-
-\unprotect
-
-\useletterstyle[blockstyle]
-
-\setupletterstyle
- [\v!letter\v!head,\v!reference\v!line,\v!special\v!notation,
- \v!inside\v!address,\v!title,\v!opening,\v!subject,\v!content]
- [\c!after={\blank[\v!line]}]
-
-\setupletterstyle
- [\v!closing]
- [\c!after={\blank[2*\v!line]}]
-
-\setupletterstyle
- [\v!firstpage,\v!secondpage]
- [\c!backspace=1in,
- \c!width=\v!middle,
- \c!topspace=1in,
- \c!header=0in,
- \c!footer=0in,
- \c!height=\v!fit]
-
-\setupletterstyle
- [\v!secondpage]
- [\c!header=.5in]
-
-\startsetups[letter:header:simplified]
-
- \framed
- [\c!frame=\v!off,
- \c!location=\v!top,
- \c!align=\v!left]
- {\lettervalue\c!date \\
- \lettervalue\c!reference}
-
-\stopsetups
-
-\setupletterstyle
- [\v!header]
- [\c!lefttext=\lettervalue\c!toname,
- \c!middletext=\pagenumber,
- \c!righttext=\setups{letter:header:simplified}]
-
-\setupletterstyle
- [\v!option]
- [\c!whitespace=\v!line,
- %\c!closing=\v!no, % not possible at the moment because it disables the signature
- \c!opening=\v!no]
-
-\protect \endinput
+%D \module +%D [ file=simplified, +%D version=2008.05.28, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Simplified style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] + +\unprotect + +\useletterstyle[blockstyle] + +\setupletterstyle + [\v!letter\v!head,\v!reference\v!line,\v!special\v!notation, + \v!inside\v!address,\v!title,\v!opening,\v!subject,\v!content] + [\c!after={\blank[\v!line]}] + +\setupletterstyle + [\v!closing] + [\c!after={\blank[2*\v!line]}] + +\setupletterstyle + [\v!firstpage,\v!secondpage] + [\c!backspace=1in, + \c!width=\v!middle, + \c!topspace=1in, + \c!header=0in, + \c!footer=0in, + \c!height=\v!fit] + +\setupletterstyle + [\v!secondpage] + [\c!header=.5in] + +\startsetups[letter:header:simplified] + + \framed + [\c!frame=\v!off, + \c!location=\v!top, + \c!align=\v!left] + {\lettervalue\c!date \\ + \lettervalue\c!reference} + +\stopsetups + +\setupletterstyle + [\v!header] + [\c!lefttext=\lettervalue\c!toname, + \c!middletext=\pagenumber, + \c!righttext=\setups{letter:header:simplified}] + +\setupletterstyle + [\v!closing] + [\c!alternative=\v!simplified] + +\setupletterstyle + [\v!option] + [\c!whitespace=\v!line, + \c!opening=\v!no] + +\protect \endinput diff --git a/Master/texmf-dist/tex/context/third/letter/style/user.ori b/Master/texmf-dist/tex/context/third/letter/style/user.ori new file mode 100644 index 00000000000..beaaf4e9405 --- /dev/null +++ b/Master/texmf-dist/tex/context/third/letter/style/user.ori @@ -0,0 +1,59 @@ +%D \module +%D [ file=user, +%D version=2008.07.08, +%D title=\CONTEXT\ Letter Style, +%D subtitle=User Settings, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D email=schuster.wolfgang@googlemail.com, +%D license=Public Domain] + +\unprotect + +%D You could use this file to set default values for your own letters. +%D To enable the values rename the file to \mono{user.nls} and place in +%D a directory in your local TeX tree where ConTeXt is able to find it. +%D +%D This style file is loaded together with the main module and the default +%D interface but after the default styles and after every style loaded +%D with the optional argument for \tex{usemodule} but additional styles +%D which you load after \tex{usemodule} could overwrite the values in this +%D style, to take care of this you could either load this module again +%D in your document or set the values directly in your files after +%D the styles are loaded. + +%D Change the interface. + +% \useletterinterface[pragma] +% \useletterinterface[knuth] + +%D Load your default styles. + +% \useletterstyle[default] +% \useletterstyle[dina] +% \useletterstyle[dinb] +% \useletterstyle[dutch] +% \useletterstyle[memo] +% \useletterstyle[hanging] +% \useletterstyle[modified] +% \useletterstyle[fullblock] +% \useletterstyle[semiblock] +% \useletterstyle[blockstyle] +% \useletterstyle[simplified] + +% \useletterstyle[simplified] + +%D You could preload extension files you normally use in your documents. + +% \useletterextension[corres] +% \useletterextension[optimize] +% \useletterextension[addrentry] + +%D You can change the default to your own preferences. + +% \setupletterstyle +% [\v!option] +% [\c!backaddress=\v!yes] + +\protect \endinput |