diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/context/contrib/context-letter |
Initial commit
Diffstat (limited to 'macros/context/contrib/context-letter')
70 files changed, 9772 insertions, 0 deletions
diff --git a/macros/context/contrib/context-letter/VERSION b/macros/context/contrib/context-letter/VERSION new file mode 100644 index 0000000000..295009c0aa --- /dev/null +++ b/macros/context/contrib/context-letter/VERSION @@ -0,0 +1 @@ +2017.08.27 diff --git a/macros/context/contrib/context-letter/doc/context/third/letter/README b/macros/context/contrib/context-letter/doc/context/third/letter/README new file mode 100644 index 0000000000..cf4fa41dd6 --- /dev/null +++ b/macros/context/contrib/context-letter/doc/context/third/letter/README @@ -0,0 +1,21 @@ +Modulename : Correspondence (t-letter and t-memo) +Author : Wolfgang Schuster +License : GNU General Public License + +Description +=========== + +The correspondence package for ConTeXt consists of a module +to write letters and memos. Both modules work with MkII and +MkIV but the letter and memo modules for MkIV requires +a installation from 15 December 2011 or newer while the MkII +version of both modules work also with older installations. + +Usage +===== + +Letters +------- + +Memos +-----
\ No newline at end of file diff --git a/macros/context/contrib/context-letter/tex/context/interface/third/t-letter.xml b/macros/context/contrib/context-letter/tex/context/interface/third/t-letter.xml new file mode 100644 index 0000000000..9a9049146e --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/interface/third/t-letter.xml @@ -0,0 +1,423 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="en" version="2011.12.29"> + +<cd:define name="letterlayer"> + <cd:constant type="head"/> + <cd:constant type="nexthead"/> + <cd:constant type="lefthead"/> + <cd:constant type="righthead"/> + <cd:constant type="foot"/> + <cd:constant type="nextfoot"/> + <cd:constant type="leftfoot"/> + <cd:constant type="rightfoot"/> + <cd:constant type="address"/> + <cd:constant type="backaddress"/> + <cd:constant type="reference"/> + <cd:constant type="location"/> + <cd:constant type="topmark"/> + <cd:constant type="botmark"/> + <cd:constant type="cutmark"/> + <cd:constant type="endmark"/> + <cd:constant type="usermark"/> + <cd:constant type="lettermain"/> + <cd:constant type="letternext"/> +</cd:define> + +<cd:define name="lettersection"> + <cd:constant type="head"/> + <cd:constant type="date"/> + <cd:constant type="reference"/> + <cd:constant type="specialnotation"/> + <cd:constant type="address"/> + <cd:constant type="title"/> + <cd:constant type="subject"/> + <cd:constant type="opening"/> + <cd:constant type="content"/> + <cd:constant type="closing"/> + <cd:constant type="appendices"/> +</cd:define> + +<cd:define name="letterdescription"> + <cd:constant type="copy"/> + <cd:constant type="enclosure"/> + <cd:constant type="postscript"/> +</cd:define> + +<cd:command name="defineletterelement" file="s-cor-01.mkvi"> + <cd:sequence> + <cd:string value="defineletterelement"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1"> + <cd:constant type="layer"/> + <cd:constant type="section"/> + </cd:keywords> + <cd:keywords n="2"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:keywords n="3"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:content n="4"/> + </cd:arguments> +</cd:command> + +<cd:command name="letterelement" file="s-cor-01.mkvi"> + <cd:sequence> + <cd:string value="letterelement"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1"> + <cd:constant type="layer"/> + <cd:constant type="section"/> + </cd:keywords> + <cd:keywords n="2"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:keywords n="3"> + <cd:constant type="cd:name"/> + </cd:keywords> + </cd:arguments> +</cd:command> + +<cd:command name="setupletter" file="s-cor-01.mkvi"> + <cd:sequence> + <cd:string value="setupletter"/> + </cd:sequence> + <cd:arguments> + <cd:assignments n="1" list="yes"> + <cd:parameter name="KEY"> + <cd:constant type="VALUE"/> + </cd:parameter> + </cd:assignments> + </cd:arguments> +</cd:command> + +<cd:command name="setupletterdescription" file="s-cor-01.mkvi"> + <cd:sequence> + <cd:string value="setupletterdescription"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1" list="yes"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:assignments n="2" list="yes"> + <cd:parameter name="spacebefore"> + <cd:inherit name="blank" n="1"/> + </cd:parameter> + <cd:parameter name="spaceafter"> + <cd:inherit name="blank" n="1"/> + </cd:parameter> + <cd:parameter name="spaceinbetween"> + <cd:inherit name="blank" n="1"/> + </cd:parameter> + <cd:parameter name="before"> + <cd:constant type="cd:command"/> + </cd:parameter> + <cd:parameter name="after"> + <cd:constant type="cd:command"/> + </cd:parameter> + <cd:parameter name="headstyle"> + <cd:resolve name="style"/> + </cd:parameter> + <cd:parameter name="headcolor"> + <cd:constant type="cd:name"/> + </cd:parameter> + <!-- + <cd:parameter name="textstyle"> + <cd:resolve name="style"/> + </cd:parameter> + <cd:parameter name="textcolor"> + <cd:constant type="cd:name"/> + </cd:parameter> + --> + <cd:parameter name="width"> + <cd:constant type="fit" default="yes"/> + <cd:constant type="broad"/> + <cd:constant type="cd:dimension"/> + </cd:parameter> + <cd:parameter name="distance"> + <cd:constant type="cd:dimension"/> + </cd:parameter> + <cd:parameter name="location"> + <cd:constant type="left" default="yes"/> + <cd:constant type="top"/> + <cd:constant type="text"/> + </cd:parameter> + </cd:assignments> + </cd:arguments> +</cd:command> + +<cd:command name="setupletterelements" file="s-cor-01.mkvi"> + <cd:sequence> + <cd:string value="setupletterelements"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:keywords n="2" list="yes"> + <cd:constant type="cd:name"/> + </cd:keywords> + </cd:arguments> +</cd:command> + +<cd:command name="setupletterframe" file="s-cor-01.mkvi"> + <cd:sequence> + <cd:string value="setupletterframe"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1" list="yes"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:assignments n="2" list="yes"> + <cd:inherit name="setupframe" n="2"/> + </cd:assignments> + </cd:arguments> +</cd:command> + +<cd:command name="setupletterlayer" file="s-cor-01.mkvi"> + <cd:sequence> + <cd:string value="setupletterlayer"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1" list="yes"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:assignments n="2" list="yes"> + <cd:parameter name="x"> + <cd:constant type="cd:dimension"/> + </cd:parameter> + <cd:parameter name="y"> + <cd:constant type="cd:dimension"/> + </cd:parameter> + <cd:parameter name="preset"> + <cd:constant type="lefttop"/> + <cd:constant type="righttop"/> + <cd:constant type="leftbottom"/> + <cd:constant type="rightbottom"/> + <cd:constant type="middle"/> + <cd:constant type="middletop"/> + <cd:constant type="middlebottom"/> + <cd:constant type="middleleft"/> + <cd:constant type="middleright"/> + </cd:parameter> + <cd:parameter name="state"> + <cd:constant type="start"/> + <cd:constant type="stop"/> + <cd:constant type="next"/> + <cd:constant type="repeat"/> + <cd:constant type="left"/> + <cd:constant type="right"/> + <cd:constant type="even"/> + <cd:constant type="odd"/> + </cd:parameter> + <cd:parameter name="style"> + <cd:resolve name="style"/> + </cd:parameter> + <cd:parameter name="color"> + <cd:constant type="cd:name"/> + </cd:parameter> + <cd:parameter name="leftmargin"> + <cd:constant type="standard"/> + <cd:constant type="yes"/> + <cd:constant type="no"/> + <cd:constant type="cd:dimension"/> + </cd:parameter> + <cd:parameter name="rightmargin"> + <cd:constant type="standard"/> + <cd:constant type="yes"/> + <cd:constant type="no"/> + <cd:constant type="cd:dimension"/> + </cd:parameter> + <cd:parameter name="symbol"> + <cd:constant type="cd:name"/> + </cd:parameter> + <cd:parameter name="distance"> + <cd:constant type="cd:dimension"/> + </cd:parameter> + <cd:parameter name="alternative"> + <cd:constant type="cd:name"/> + </cd:parameter> + <cd:parameter name="list"> + <cd:constant type="cd:text"/> + </cd:parameter> + <cd:parameter name="separator"> + <cd:constant type="cd:text"/> + </cd:parameter> + </cd:assignments> + </cd:arguments> +</cd:command> + +<cd:command name="setupletterlayout" file="s-cor-01.mkvi"> + <cd:sequence> + <cd:string value="setupletterlayout"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1" list="yes"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:assignments n="2" list="yes"> + <cd:inherit name="setuplayout" n="2"/> + </cd:assignments> + </cd:arguments> +</cd:command> + +<cd:command name="setupletteroptions" file="s-cor-01.mkvi"> + <cd:sequence> + <cd:string value="setupletteroptions"/> + </cd:sequence> + <cd:arguments> + <cd:assignments n="1" list="yes"> + <cd:parameter name="bodyfont"> + <cd:inherit name="setupbodyfont"/> + </cd:parameter> + <cd:parameter name="whitespace"> + <cd:inherit name="setupwhitespace"/> + </cd:parameter> + <cd:parameter name="backgroundcolor"> + <cd:constant type="cd:name"/> + </cd:parameter> + <cd:parameter name="backgroundimage"> + <cd:constant type="cd:file"/> + </cd:parameter> + <cd:parameter name="background"> + <cd:constant type="cd:command"/> + </cd:parameter> + <cd:parameter name="indenting"> + <cd:inherit name="setupindenting"/> + </cd:parameter> + <cd:parameter name="marking"> + <cd:constant type="yes" default="yes"/> + <cd:constant type="no"/> + </cd:parameter> + <cd:parameter name="position"> + <cd:constant type="yes"/> + <cd:constant type="no" default="yes"/> + </cd:parameter> + <cd:parameter name="option"> + <cd:constant type="test"/> + </cd:parameter> + </cd:assignments> + </cd:arguments> +</cd:command> + +<cd:command name="setuplettersection" file="s-cor-01.mkvi"> + <cd:sequence> + <cd:string value="setuplettersection"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1" list="yes"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:assignments n="2" list="yes"> + <cd:parameter name="spacebefore"> + <cd:inherit name="blank" n="1"/> + </cd:parameter> + <cd:parameter name="spaceafter"> + <cd:inherit name="blank" n="1"/> + </cd:parameter> + <cd:parameter name="spaceinbetween"> + <cd:inherit name="blank" n="1"/> + </cd:parameter> + <cd:parameter name="style"> + <cd:resolve name="style"/> + </cd:parameter> + <cd:parameter name="color"> + <cd:constant type="cd:name"/> + </cd:parameter> + <cd:parameter name="leftmargin"> + <cd:constant type="standard"/> + <cd:constant type="yes"/> + <cd:constant type="no"/> + <cd:constant type="cd:dimension"/> + </cd:parameter> + <cd:parameter name="rightmargin"> + <cd:constant type="standard"/> + <cd:constant type="yes"/> + <cd:constant type="no"/> + <cd:constant type="cd:dimension"/> + </cd:parameter> + <cd:parameter name="before"> + <cd:constant type="cd:command"/> + </cd:parameter> + <cd:parameter name="after"> + <cd:constant type="cd:command"/> + </cd:parameter> + <cd:parameter name="align"> + <cd:inherit name="setupalign" n="1"/> + </cd:parameter> + <cd:parameter name="indenting"> + <cd:inherit name="setupindenting" n="1"/> + </cd:parameter> + <cd:parameter name="alternative"> + <cd:constant type="cd:name"/> + </cd:parameter> + <cd:parameter name="separator"> + <cd:constant type="cd:text"/> + </cd:parameter> + </cd:assignments> + </cd:arguments> +</cd:command> + +<cd:command name="setupletterstyle" file="s-cor-01.mkvi"> + <cd:sequence> + <cd:string value="setupletterstyle"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1" list="yes"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:assignments n="2" list="yes"> + <cd:parameter name="style"> + <cd:resolve name="style"/> + </cd:parameter> + <cd:parameter name="color"> + <cd:constant type="cd:name"/> + </cd:parameter> + <cd:parameter name="titlestyle"> + <cd:resolve name="style"/> + </cd:parameter> + <cd:parameter name="titlecolor"> + <cd:constant type="cd:name"/> + </cd:parameter> + <cd:parameter name="textstyle"> + <cd:resolve name="style"/> + </cd:parameter> + <cd:parameter name="textcolor"> + <cd:constant type="cd:name"/> + </cd:parameter> + <cd:parameter name="separator"> + <cd:constant type="cd:text"/> + </cd:parameter> + <cd:parameter name="width"> + <cd:constant type="cd:dimension"/> + </cd:parameter> + </cd:assignments> + </cd:arguments> +</cd:command> + +<cd:command name="letter" type="environment" file="s-cor-01.mkvi"> + <cd:sequence> + <cd:string value="letter"/> + </cd:sequence> + <cd:arguments> + <cd:assignments n="1" list="yes" optional="yes"> + <cd:inherit name="setupletter" n="1"/> + </cd:assignments> + </cd:arguments> +</cd:command> + +<cd:command name="useletterstyle" file="s-cor-01.mkvi"> + <cd:sequence> + <cd:string value="useletterstyle"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1" list="yes"> + <cd:constant type="cd:file"/> + </cd:keywords> + </cd:arguments> +</cd:command> + +</cd:interface>
\ No newline at end of file diff --git a/macros/context/contrib/context-letter/tex/context/interface/third/t-memo.xml b/macros/context/contrib/context-letter/tex/context/interface/third/t-memo.xml new file mode 100644 index 0000000000..b70da3937a --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/interface/third/t-memo.xml @@ -0,0 +1,377 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="en" version="2011.12.29"> + +<cd:command name="definememoelement" file="s-cor-02.mkvi"> + <cd:sequence> + <cd:string value="definememoelement"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1"> + <cd:constant type="layer"/> + <cd:constant type="section"/> + </cd:keywords> + <cd:keywords n="2"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:keywords n="3"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:content n="4"/> + </cd:arguments> +</cd:command> + +<cd:command name="memoelement" file="s-cor-02.mkvi"> + <cd:sequence> + <cd:string value="memoelement"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1"> + <cd:constant type="layer"/> + <cd:constant type="section"/> + </cd:keywords> + <cd:keywords n="2"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:keywords n="3"> + <cd:constant type="cd:name"/> + </cd:keywords> + </cd:arguments> +</cd:command> + +<cd:command name="setupmemo" file="s-cor-02.mkvi"> + <cd:sequence> + <cd:string value="setupmemo"/> + </cd:sequence> + <cd:arguments> + <cd:assignments n="1" list="yes"> + <cd:parameter name="KEY"> + <cd:constant type="VALUE"/> + </cd:parameter> + </cd:assignments> + </cd:arguments> +</cd:command> + +<cd:command name="setupmemodescription" file="s-cor-02.mkvi"> + <cd:sequence> + <cd:string value="setupmemodescription"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1" list="yes"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:assignments n="2" list="yes"> + <cd:parameter name="spacebefore"> + <cd:inherit name="blank" n="1"/> + </cd:parameter> + <cd:parameter name="spaceafter"> + <cd:inherit name="blank" n="1"/> + </cd:parameter> + <cd:parameter name="spaceinbetween"> + <cd:inherit name="blank" n="1"/> + </cd:parameter> + <cd:parameter name="before"> + <cd:constant type="cd:command"/> + </cd:parameter> + <cd:parameter name="after"> + <cd:constant type="cd:command"/> + </cd:parameter> + <cd:parameter name="headstyle"> + <cd:resolve name="style"/> + </cd:parameter> + <cd:parameter name="headcolor"> + <cd:constant type="cd:name"/> + </cd:parameter> + <!-- + <cd:parameter name="textstyle"> + <cd:resolve name="style"/> + </cd:parameter> + <cd:parameter name="textcolor"> + <cd:constant type="cd:name"/> + </cd:parameter> + --> + <cd:parameter name="width"> + <cd:constant type="fit" default="yes"/> + <cd:constant type="broad"/> + <cd:constant type="cd:dimension"/> + </cd:parameter> + <cd:parameter name="distance"> + <cd:constant type="cd:dimension"/> + </cd:parameter> + <cd:parameter name="location"> + <cd:constant type="left" default="yes"/> + <cd:constant type="top"/> + <cd:constant type="text"/> + </cd:parameter> + </cd:assignments> + </cd:arguments> +</cd:command> + +<cd:command name="setupmemoelements" file="s-cor-02.mkvi"> + <cd:sequence> + <cd:string value="setupmemoelements"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:keywords n="2" list="yes"> + <cd:constant type="cd:name"/> + </cd:keywords> + </cd:arguments> +</cd:command> + +<cd:command name="setupmemoframe" file="s-cor-02.mkvi"> + <cd:sequence> + <cd:string value="setupmemoframe"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1" list="yes"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:assignments n="2" list="yes"> + <cd:inherit name="setupframe" n="2"/> + </cd:assignments> + </cd:arguments> +</cd:command> + +<cd:command name="setupmemolayer" file="s-cor-02.mkvi"> + <cd:sequence> + <cd:string value="setupmemolayer"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1" list="yes"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:assignments n="2" list="yes"> + <cd:parameter name="x"> + <cd:constant type="cd:dimension"/> + </cd:parameter> + <cd:parameter name="y"> + <cd:constant type="cd:dimension"/> + </cd:parameter> + <cd:parameter name="preset"> + <cd:constant type="lefttop"/> + <cd:constant type="righttop"/> + <cd:constant type="leftbottom"/> + <cd:constant type="rightbottom"/> + <cd:constant type="middle"/> + <cd:constant type="middletop"/> + <cd:constant type="middlebottom"/> + <cd:constant type="middleleft"/> + <cd:constant type="middleright"/> + </cd:parameter> + <cd:parameter name="state"> + <cd:constant type="start"/> + <cd:constant type="stop"/> + <cd:constant type="next"/> + <cd:constant type="repeat"/> + <cd:constant type="left"/> + <cd:constant type="right"/> + <cd:constant type="even"/> + <cd:constant type="odd"/> + </cd:parameter> + <cd:parameter name="style"> + <cd:resolve name="style"/> + </cd:parameter> + <cd:parameter name="color"> + <cd:constant type="cd:name"/> + </cd:parameter> + <cd:parameter name="leftmargin"> + <cd:constant type="standard"/> + <cd:constant type="yes"/> + <cd:constant type="no"/> + <cd:constant type="cd:dimension"/> + </cd:parameter> + <cd:parameter name="rightmargin"> + <cd:constant type="standard"/> + <cd:constant type="yes"/> + <cd:constant type="no"/> + <cd:constant type="cd:dimension"/> + </cd:parameter> + <cd:parameter name="symbol"> + <cd:constant type="cd:name"/> + </cd:parameter> + <cd:parameter name="distance"> + <cd:constant type="cd:dimension"/> + </cd:parameter> + <cd:parameter name="alternative"> + <cd:constant type="cd:name"/> + </cd:parameter> + <cd:parameter name="list"> + <cd:constant type="cd:text"/> + </cd:parameter> + <cd:parameter name="separator"> + <cd:constant type="cd:text"/> + </cd:parameter> + </cd:assignments> + </cd:arguments> +</cd:command> + +<cd:command name="setupmemolayout" file="s-cor-02.mkvi"> + <cd:sequence> + <cd:string value="setupmemolayout"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1" list="yes"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:assignments n="2" list="yes"> + <cd:inherit name="setuplayout" n="2"/> + </cd:assignments> + </cd:arguments> +</cd:command> + +<cd:command name="setupmemooptions" file="s-cor-02.mkvi"> + <cd:sequence> + <cd:string value="setupmemooptions"/> + </cd:sequence> + <cd:arguments> + <cd:assignments n="1" list="yes"> + <cd:parameter name="bodyfont"> + <cd:inherit name="setupbodyfont"/> + </cd:parameter> + <cd:parameter name="whitespace"> + <cd:inherit name="setupwhitespace"/> + </cd:parameter> + <cd:parameter name="backgroundcolor"> + <cd:constant type="cd:name"/> + </cd:parameter> + <cd:parameter name="backgroundimage"> + <cd:constant type="cd:file"/> + </cd:parameter> + <cd:parameter name="background"> + <cd:constant type="cd:command"/> + </cd:parameter> + <cd:parameter name="indenting"> + <cd:inherit name="setupindenting"/> + </cd:parameter> + <cd:parameter name="marking"> + <cd:constant type="yes" default="yes"/> + <cd:constant type="no"/> + </cd:parameter> + <cd:parameter name="option"> + <cd:constant type="test"/> + </cd:parameter> + </cd:assignments> + </cd:arguments> +</cd:command> + +<cd:command name="setupmemosection" file="s-cor-02.mkvi"> + <cd:sequence> + <cd:string value="setupmemosection"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1" list="yes"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:assignments n="2" list="yes"> + <cd:parameter name="spacebefore"> + <cd:inherit name="blank" n="1"/> + </cd:parameter> + <cd:parameter name="spaceafter"> + <cd:inherit name="blank" n="1"/> + </cd:parameter> + <cd:parameter name="spaceinbetween"> + <cd:inherit name="blank" n="1"/> + </cd:parameter> + <cd:parameter name="style"> + <cd:resolve name="style"/> + </cd:parameter> + <cd:parameter name="color"> + <cd:constant type="cd:name"/> + </cd:parameter> + <cd:parameter name="leftmargin"> + <cd:constant type="standard"/> + <cd:constant type="yes"/> + <cd:constant type="no"/> + <cd:constant type="cd:dimension"/> + </cd:parameter> + <cd:parameter name="rightmargin"> + <cd:constant type="standard"/> + <cd:constant type="yes"/> + <cd:constant type="no"/> + <cd:constant type="cd:dimension"/> + </cd:parameter> + <cd:parameter name="before"> + <cd:constant type="cd:command"/> + </cd:parameter> + <cd:parameter name="after"> + <cd:constant type="cd:command"/> + </cd:parameter> + <cd:parameter name="align"> + <cd:inherit name="setupalign" n="1"/> + </cd:parameter> + <cd:parameter name="indenting"> + <cd:inherit name="setupindenting" n="1"/> + </cd:parameter> + <cd:parameter name="alternative"> + <cd:constant type="cd:name"/> + </cd:parameter> + <cd:parameter name="separator"> + <cd:constant type="cd:text"/> + </cd:parameter> + </cd:assignments> + </cd:arguments> +</cd:command> + +<cd:command name="setupmemostyle" file="s-cor-02.mkvi"> + <cd:sequence> + <cd:string value="setupmemostyle"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1" list="yes"> + <cd:constant type="cd:name"/> + </cd:keywords> + <cd:assignments n="2" list="yes"> + <cd:parameter name="style"> + <cd:resolve name="style"/> + </cd:parameter> + <cd:parameter name="color"> + <cd:constant type="cd:name"/> + </cd:parameter> + <cd:parameter name="titlestyle"> + <cd:resolve name="style"/> + </cd:parameter> + <cd:parameter name="titlecolor"> + <cd:constant type="cd:name"/> + </cd:parameter> + <cd:parameter name="textstyle"> + <cd:resolve name="style"/> + </cd:parameter> + <cd:parameter name="textcolor"> + <cd:constant type="cd:name"/> + </cd:parameter> + <cd:parameter name="separator"> + <cd:constant type="cd:text"/> + </cd:parameter> + <cd:parameter name="width"> + <cd:constant type="cd:dimension"/> + </cd:parameter> + </cd:assignments> + </cd:arguments> +</cd:command> + +<cd:command name="memo" type="environment" file="s-cor-02.mkvi"> + <cd:sequence> + <cd:string value="memo"/> + </cd:sequence> + <cd:arguments> + <cd:assignments n="1" list="yes" optional="yes"> + <cd:inherit name="setupmemo" n="1"/> + </cd:assignments> + </cd:arguments> +</cd:command> + +<cd:command name="usememostyle" file="s-cor-02.mkvi"> + <cd:sequence> + <cd:string value="usememostyle"/> + </cd:sequence> + <cd:arguments> + <cd:keywords n="1" list="yes"> + <cd:constant type="cd:file"/> + </cd:keywords> + </cd:arguments> +</cd:command> + +</cd:interface>
\ No newline at end of file diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-00.lua b/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-00.lua new file mode 100644 index 0000000000..9da0a71d03 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-00.lua @@ -0,0 +1,310 @@ +if not modules then modules = { } end modules ['s-mod-00'] = { + version = 1.000, + comment = "companion to mult-aux.mkiv", + author = "Wolfgang Schuster", + copyright = "Wolfgang Schuster", + license = "GNU General Public License" +} + +thirddata = thirddata or { } +thirddata.correspondence = thirddata.correspondence or { } + +local concat, toks, settings_to_array, settings_to_hash = table.concat, tex.toks, utilities.parsers.settings_to_array, utilities.parsers.settings_to_hash + +local correspondence = thirddata.correspondence +local constants = interfaces.constants +local variables = interfaces.variables + +local c_titlestyle = constants.titlestyle +local c_titlecolor = constants.titlecolor +local c_textcolor = constants.textcolor +local c_textstyle = constants.textstyle +local c_separator = constants.separator + +local v_correspondence = variables.correspondence +local v_letter = variables.letter +local v_memo = variables.memo +local v_resume = variables.resume +local v_frames = variables.frames +local v_stop = variables.stop +local v_layer = variables.layer +local v_section = variables.section +local v_color = variables.color +local v_singlesided = variables.singlesided +local v_reset = variables.reset +local v_line = variables.line +local v_top = variables.top +local v_bottom = variables.bottom +local v_off = variables.off +local v_right = variables.right +local v_page = variables.page +local v_paper = variables.paper +local v_text = variables.text +local v_start = variables.start +local v_list = variables.list + +-- list for the elements to be shown + +correspondence.data = { } + +function correspondence.elements_define(environment,name,list) + local index = concat({environment,name},":") + local list = settings_to_array(list) + correspondence.data[index] = list +end + +function correspondence.elements_access(environment,name) + local index = concat({environment,name},":") + local list = correspondence.data[index] + local entries = "" + if list and list ~= "" then + entries = concat(list,",") + end + context(entries) +end + +-- create synonyms for the default styles + +local patterns = { + [v_letter] = { "letter-imp-%s.mkiv", "letter-imp-%s.tex", "letter-%s.mkiv", "letter-%s.tex" }, + [v_memo] = { "memo-imp-%s.mkiv", "memo-imp-%s.tex", "memo-%s.mkiv", "memo-%s.tex" }, + [v_resume] = { "resume-imp-%s.mkiv", "resume-imp-%s.tex", "resume-%s.mkiv", "resume-%s.tex" }, + [v_frames] = { "frames-imp-%s.mkiv", "frames-imp-%s.tex", "frames-%s.mkiv", "frames-%s.tex" }, +} + +local function action(name,foundname) + context.startreadingfile() + context.pushendofline() + context.unprotect() + context.input(foundname) + context.protect() + context.popendofline() + context.stopreadingfile() +end + +function correspondence.file(environment,name) + local environment = environment + local name = name + commands.uselibrary { + name = name, + patterns = patterns[environment], + action = action, + } +end + +-- moved from TeX to Lua because it’s easier with the lists for the sections and layers + +function correspondence.place(environment,settings) + local bodyfont = settings.bodyfont + local whitespace = settings.whitespace + local interlinespace = settings.interlinespace + local language = settings.language + local backgroundcolor = settings.backgroundcolor + context.unprotect() + context(toks.t_correspondence_before) + context.page() + -- page layout is controlled with the \setup…layout commands + context.setuplayout{ method = v_correspondence } + -- disable headers and footers + context.setupheader{ state = v_stop } + context.setupfooter{ state = v_stop } + -- required for the manual, manual changes for the elements can be done with the “style” key + if bodyfont ~= "" then + context.setupbodyfont{bodyfont} + end + -- can be moved to the section elements because it’s only usefull for the content + if whitespace ~= "" then + context.setupwhitespace{whitespace} + end + -- feature + if interlinespace ~= "" then + context.setupinterlinespace{interlinespace} + end + -- I prefer to set this with \setup…options + if language ~= "" then + context.mainlanguage{language} + end + -- colored background is behind all other layers + if backgroundcolor ~= "" then + context.setupbackgrounds({ v_paper },{ background = v_color, backgroundcolor = backgroundcolor }) + end + -- layers + local layer = { } + for index, element in next, correspondence.data[concat({environment,v_layer},":")] or { } do + layer[index] = concat({environment,element},":") + end + local overlays = { + "correspondence:backgroundimage", + "correspondence:background", + concat(layer,","), + } + context.setupbackgrounds({ v_page },{ background = concat(overlays,",") }) + -- letters are always singlesided because the layout controlled by the module + context.setuppagenumbering{ alternative = v_singlesided, location = "" } + context.setupsubpagenumber{ way = v_text, state = v_start } + context.resetsubpagenumber() + -- sections + for _, element in next, correspondence.data[concat({environment,v_section},":")] or { } do + context.correspondence_section_place({environment},{element}) + end + context.page() + context.resetsubpagenumber() + -- make sure the normal layout is restored + context.setuplayout{v_reset} + context(toks.t_correspondence_after) + context.protect() +end + +correspondence.letter = { } + +local function reference_a(environment,value) + local environment = environment + local value = value + local style = nil + context.vbox( function() + style = concat({environment,value},":") + context.setevalue("currentcorrespondencestyle",style) + context.framed( { frame = v_off, location = v_bottom, align = v_right, offset = "0pt" }, function() + context.usecorrespondencestylestyleandcolor(c_titlestyle,c_titlecolor) + context.setupinterlinespace() + context.lettertext(value) + context.par() + end ) + context.framed( { frame = v_off, location = v_top, align = v_right, offset = "0pt" }, function() + context.usecorrespondencestylestyleandcolor(c_textstyle,c_textcolor) + context.setupinterlinespace() + context.correspondenceparameter(value) + context.par() + end ) + end ) +end + +function correspondence.letter.reference_a(environment,list) + local environment = environment + local list = settings_to_array(list) + local style = nil + if #list == 1 then + local value = list[1] + context.rightaligned( function() reference_a(environment,value) end ) + else + context.maxaligned( function() + for index, value in next, list do + if value == "" or value == v_line then + -- ignore empty entries and the “line” keyword + else + if index ~= 1 then context.hfill() end + reference_a(environment,value) + end + end + end ) + end +end + +function correspondence.letter.reference_b(environment,list) + local environment = environment + local list = settings_to_array(list) + local style = nil + context.vtop( function() + for _, value in next, list do + if value == "" then + -- ignore empty entries in the list + elseif value == v_line then + context.blank{v_line} + else + context.hbox( function() + style = concat({environment,value},":") + context.setevalue("currentcorrespondencestyle",style) + context.begingroup() + context.usecorrespondencestylestyleandcolor(c_titlestyle,c_titlecolor) + context.lettertext(value) + context.correspondencestyleparameter(c_separator) + context.endgroup() + context.begingroup() + context.usecorrespondencestylestyleandcolor(c_textstyle,c_textcolor) + context.correspondenceparameter(value) + context.endgroup() + end ) + end + end + end ) +end + +function correspondence.letter.reference_c(environment,list) + local environment = environment + local list = settings_to_array(list) + local style = nil + for _, value in next, list do + if value == "" or value == v_line then + -- ignore empty entries and the “line” keyword + else + style = concat({environment,value},":") + context.setvalue("currentcorrespondencestyle",style) + context.usecorrespondencestylestyleandcolor(c_textstyle,c_textcolor) + context.correspondenceparameter(value) + end + end +end + +function correspondence.letter.reference_d(environment,list) + local environment = environment + local list = settings_to_array(list) + local style = nil + context.vtop( function() + context.starttabulate( { "|l|l|" }, { before = "", after = "" } ) + for _, value in next, list do + if value == "" then + -- ignore empty entries in the list + elseif value == v_line then + context.TB() + else + style = concat({environment,value},":") + context.NC() + context.setvalue("currentcorrespondencestyle",style) + context.usecorrespondencestylestyleandcolor(c_titlestyle,c_titlecolor) + context.lettertext(value) + context.correspondencestyleparameter(c_separator) + context.NC() + context.setvalue("currentcorrespondencestyle",style) + context.usecorrespondencestylestyleandcolor(c_textstyle,c_textcolor) + context.correspondenceparameter(value) + context.NC() + context.NR() + end + end + context.stoptabulate() + end ) +end + +function correspondence.letter.reference_e(environment,list) + local environment = environment + local list = settings_to_array(list) + local style, settings = nil + context.leftaligned( function() + for _, value in next, list do + if value == "" or value == v_line then + -- ignore empty entries and the “line” keyword + else + context.unprotect() + context.correspondence_style_width( environment, value, function() reference_a(environment,value) end ) + context.protect() + end + end + end ) +end + +function correspondence.description_split(list) + local format, items = nil, nil + if string.find(list,":") then + format, items = string.splitup(list,":") + if format ~= v_list then + items = list + end + else + items = list + end + -- the macros are empty be default, change this only when necessary + context.unprotect() + if format then context.setvalue("m_correspondence_description_format",format) end + if items then context.setvalue("m_correspondence_description_items" ,items ) end + context.protect() +end
\ No newline at end of file diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-00.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-00.mkii new file mode 100644 index 0000000000..15645cb73a --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-00.mkii @@ -0,0 +1,678 @@ +%D \module +%D [ file=s-cor-00, +%D version=2012.06.10, +%D title=\CONTEXT\ User Module, +%D subtitle=Correspondence, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\unprotect + +% Constants and variables + +\startinterface all + \setinterfaceconstant {whitespace} {whitespace} + \setinterfaceconstant {backgroundimage} {backgroundimage} + \setinterfaceconstant {fromname} {fromname} + \setinterfaceconstant {fromaddress} {fromaddress} + \setinterfaceconstant {attention} {attention} + \setinterfaceconstant {subject} {subject} + \setinterfaceconstant {closing} {closing} + \setinterfaceconstant {signature} {signature} + \setinterfaceconstant {copy} {copy} + \setinterfaceconstant {enclosure} {enclosure} + \setinterfaceconstant {postscript} {postscript} + \setinterfaceconstant {dispatch} {dispatch} + \setinterfaceconstant {toname} {toname} + \setinterfaceconstant {toaddress} {toaddress} + \setinterfaceconstant {backaddress} {backaddress} + \setinterfaceconstant {opening} {opening} + \setinterfaceconstant {fromphone} {fromphone} + \setinterfaceconstant {fromfax} {fromfax} + \setinterfaceconstant {frommail} {frommail} + \setinterfaceconstant {fromurl} {fromurl} + \setinterfaceconstant {salutation} {salutation} + \setinterfaceconstant {language} {language} + \setinterfaceconstant {street} {street} + \setinterfaceconstant {city} {city} + \setinterfaceconstant {phone} {phone} + \setinterfaceconstant {email} {email} + \setinterfaceconstant {bankname} {bankname} + \setinterfaceconstant {banknumber} {banknumber} + \setinterfaceconstant {accountnumber} {accountnumber} + \setinterfaceconstant {room} {room} + \setinterfaceconstant {yourref} {yourref} + \setinterfaceconstant {yourmail} {yourmail} + \setinterfaceconstant {myref} {myref} + \setinterfaceconstant {mymail} {mymail} + \setinterfaceconstant {customer} {customer} + \setinterfaceconstant {invoice} {invoice} + \setinterfaceconstant {fax} {fax} + \setinterfaceconstant {url} {url} + \setinterfaceconstant {bank} {bank} + \setinterfaceconstant {organization} {organization} + \setinterfaceconstant {zip} {zip} + \setinterfaceconstant {country} {country} +\stopinterface + +\startinterface all + % all + \setinterfacevariable {correspondence} {correspondence} + \setinterfacevariable {nexthead} {nexthead} + \setinterfacevariable {lefthead} {lefthead} + \setinterfacevariable {righthead} {righthead} + \setinterfacevariable {foot} {foot} + \setinterfacevariable {nextfoot} {nextfoot} + \setinterfacevariable {leftfoot} {leftfoot} + \setinterfacevariable {rightfoot} {rightfoot} + \setinterfacevariable {topmark} {topmark} + \setinterfacevariable {botmark} {botmark} + \setinterfacevariable {cutmark} {cutmark} + \setinterfacevariable {endmark} {endmark} + \setinterfacevariable {usermark} {usermark} + % letter + \setinterfacevariable {lettermain} {lettermain} + \setinterfacevariable {letternext} {letternext} + \setinterfacevariable {letter} {letter} + \setinterfacevariable {address} {address} + \setinterfacevariable {backaddress} {backaddress} + \setinterfacevariable {location} {location} + \setinterfacevariable {opening} {opening} + \setinterfacevariable {closing} {closing} + \setinterfacevariable {secondpage} {secondpage} + \setinterfacevariable {copy} {copy} + \setinterfacevariable {enclosure} {enclosure} + \setinterfacevariable {french} {french} + \setinterfacevariable {specialnotation} {specialnotation} + \setinterfacevariable {e} {e} + \setinterfacevariable {place} {place} + \setinterfacevariable {gbrief} {gbrief} + \setinterfacevariable {fullblock} {fullblock} + \setinterfacevariable {semiblock} {semiblock} + \setinterfacevariable {simplified} {simplified} + \setinterfacevariable {modified} {modified} + \setinterfacevariable {blockstyle} {blockstyle} + \setinterfacevariable {knuth} {knuth} + % memo + \setinterfacevariable {memo} {memo} + \setinterfacevariable {memomain} {memomain} + \setinterfacevariable {memonext} {memonext} +\stopinterface + +% Messages + +\definemessageconstant {correspondence} + +\startinterface all + \setinterfacemessage{correspondence}{title}{correspondence} + \setinterfacemessage{correspondence}{1} {Undefined layer '--' for the '--' environment} + \setinterfacemessage{correspondence}{2} {Undefined section '--' for the '--' environment} + \setinterfacemessage{correspondence}{3} {Undefined description '--' for the '--' environment} +\stopinterface + +% Namespaces + +\def\????correspondence {@@@@correspondence} +\def\????correspondencebuffer {@@@@correspondencebuffer} +\def\????correspondencelayer {@@@@correspondencelayer} +\def\????correspondencelayerstate {@@@@correspondencelayerstate} +\def\????correspondenceframe {@@@@correspondenceframe} +\def\????correspondencesection {@@@@correspondencesection} +\def\????correspondenceoption {@@@@correspondenceoption} +\def\????correspondencedescription {@@@@correspondencedescription} +\def\????correspondencedescriptionlocation {@@@@correspondencedescriptionlocation} +\def\????correspondencestyle {@@@@correspondencestyle} +\def\????correspondenceelement {@@@@correspondenceelement} +\def\????correspondencelayout {@@@@correspondencelayout} + +% Environment + +\newtoks\everydefinecorrespondence + +\unexpanded\def\startcorrespondence[#1]% + {\starttext + \begingroup + \def\currentcorrespondence{#1}% + \dosingleempty\dostartcorrespondence} + +\def\dostartcorrespondence[#1]% + {\iffirstargument + \setupcurrentcorrespondence[#1]% + \fi + \dostartbuffer[\????correspondencebuffer\currentcorrespondence][\e!start\currentcorrespondence][\e!stop\currentcorrespondence]} + +\unexpanded\def\stopcorrespondence[#1]% + {\placecorrespondence[#1]% + \endgroup + \stoptext} + +\appendtoks + \normalprotected\expandafter\edef\csname\e!start\currentcorrespondence\endcsname{\startcorrespondence[\currentcorrespondence]}% + \normalprotected\expandafter\edef\csname\e!stop \currentcorrespondence\endcsname{\stopcorrespondence [\currentcorrespondence]}% +\to \everydefinecorrespondence + +\unexpanded\def\startcorrespondencecontent[#1]% + {\begingroup + \def\currentcorrespondence{#1}% + \dostartbuffer[\????correspondencebuffer\currentcorrespondence][\e!start\currentcorrespondence\v!content][\e!stop\currentcorrespondence\v!content]} + +\unexpanded\def\stopcorrespondencecontent[#1]% + {\endgroup} + +\appendtoks + \normalprotected\expandafter\edef\csname\e!start\currentcorrespondence\v!content\endcsname{\startcorrespondencecontent[\currentcorrespondence]}% + \normalprotected\expandafter\edef\csname\e!stop \currentcorrespondence\v!content\endcsname{\stopcorrespondencecontent [\currentcorrespondence]}% +\to \everydefinecorrespondence + +\unexpanded\def\correspondenceparameters#1#2#3% + {\def\currentcorrespondenceelement {#1:#2}% + \def\currentcorrespondencecontent {#1:#3:#2}% + \let\currentcorrespondencelayer \currentcorrespondenceelement + \let\currentcorrespondenceframe \currentcorrespondenceelement + \let\currentcorrespondencesection \currentcorrespondenceelement + \let\currentcorrespondencedescription\currentcorrespondenceelement} + +\unexpanded\def\definecorrespondence[#1]% + {\def\currentcorrespondence{#1}% + \the\everydefinecorrespondence} + +% Setup + +\def\correspondenceparameter + {\namedcorrespondenceparameter\currentcorrespondence} + +\def\namedcorrespondenceparameter#1#2% + {\csname + \ifcsname\????correspondence#1#2\endcsname + \????correspondence#1#2% + \else + \s!empty + \fi + \endcsname} + +\unexpanded\def\setupcorrespondence[#1]% + {\def\currentcorrespondence{#1}% + \setupcurrentcorrespondence} + +\unexpanded\def\setupcurrentcorrespondence + {\getparameters[\????correspondence\currentcorrespondence]} + +\appendtoks + \normalprotected\expandafter\edef\csname\e!setup\currentcorrespondence\e!endsetup\endcsname{\noexpand\dodoubleargument\setupcorrespondence[\currentcorrespondence]}% +\to \everydefinecorrespondence + +% Placement + +\newtoks\everybeforecorrespondence +\newtoks\everyaftercorrespondence + +\unexpanded\def\placecorrespondence[#1]% + {\begingroup + \edef\currentcorrespondence{#1}% + \let \currentcorrespondenceoption\currentcorrespondence + \the\everybeforecorrespondence + \page + \setupheader[\c!state=\v!stop]% + \setupfooter[\c!state=\v!stop]% + \doifsomething{\correspondenceoptionparameter\c!bodyfont }{\setupbodyfont [\correspondenceoptionparameter\c!bodyfont ]}% + \doifsomething{\correspondenceoptionparameter\c!whitespace}{\setupwhitespace[\correspondenceoptionparameter\c!whitespace]}% + \doifsomething{\correspondenceoptionparameter\c!language }{\mainlanguage [\correspondenceoptionparameter\c!language ]}% + % backgroundcolor is applied to the paper background + \doifsomething{\correspondenceoptionparameter\c!backgroundcolor}% + {\setupbackgrounds[\v!paper][\c!background=\v!color,\c!backgroundcolor=\correspondenceoptionparameter\c!backgroundcolor]} + % layers + \let\correspondencebackgrounds\empty + \def\addcorrespondencelayertolist##1{\addtocommalist{\currentcorrespondence:##1}\correspondencebackgrounds} + \processcommacommand[\accesscorrespondenceelements\currentcorrespondence\v!layer,correspondence:backgroundimage,correspondence:background]\addcorrespondencelayertolist + \expanded{\setupbackgrounds[\v!page][\c!background={\correspondencebackgrounds}]}% + % layout + \setuppagenumbering[\c!alternative=\v!singlesided,\c!location=]% + \setupsubpagenumber[\c!way=\v!by\v!text,\c!state=\v!start]% + % sections + \expanded{\processcommalistwithparameters[\accesscorrespondenceelements\currentcorrespondence\v!section]}{\placecorrespondencesection[\currentcorrespondence]}% + \page + \resetsubpagenumber + \setuplayout[\v!reset]% + \the\everyaftercorrespondence + \endgroup} + +\appendtoks + \normalprotected\expandafter\edef\csname\e!place\currentcorrespondence\endcsname{\placecorrespondence[\currentcorrespondence]}% +\to \everydefinecorrespondence + +% Layers + +\def\correspondencelayerparameter + {\namedcorrespondencelayerparameter\currentcorrespondencelayer} + +\def\namedcorrespondencelayerparameter#1#2% + {\csname + \ifcsname\????correspondencelayer#1#2\endcsname + \????correspondencelayer#1#2% + \else\ifcsname\????correspondencelayer#2\endcsname + \????correspondencelayer#2% + \else + \s!empty + \fi\fi + \endcsname} + +\def\correspondenceframeparameter + {\namedcorrespondenceframeparameter\currentcorrespondenceframe} + +\def\namedcorrespondenceframeparameter#1#2% + {\csname + \ifcsname\????correspondenceframe#1#2\endcsname + \????correspondenceframe#1#2% + \else\ifcsname\????correspondenceframe#2\endcsname + \????correspondenceframe#2% + \else + \s!empty + \fi\fi + \endcsname} + +\unexpanded\def\setupcorrespondencelayer[#1][#2][#3]% + {\def\dosetupcorrespondencelayer##1% + {\edef\currentcorrespondencelayer{#1:##1}% + \setupcurrentcorrespondencelayer[#3]% + \the\everysetupcorrespondencelayer}% + \processcommalist[#2]\dosetupcorrespondencelayer} + +\unexpanded\def\setupcurrentcorrespondencelayer + {\getparameters[\????correspondencelayer\currentcorrespondencelayer]} + +\unexpanded\def\setupcorrespondenceframe[#1][#2][#3]% + {\def\dosetupcorrespondenceframe##1% + {\edef\currentcorrespondenceframe{#1:##1}% + \setupcurrentcorrespondenceframe[#3]}% + \processcommalist[#2]\dosetupcorrespondenceframe} + +\unexpanded\def\setupcurrentcorrespondenceframe + {\getparameters[\????correspondenceframe\currentcorrespondenceframe]} + +\unexpanded\def\definecorrespondencelayer[#1][#2]% + {\def\currentcorrespondencelayer{#1:#2}% + \let\currentcorrespondenceframe\currentcorrespondencelayer + \copylocalframed[\????correspondenceframe\currentcorrespondenceframe][\????correspondenceframe]% + \expandafter\let\csname\????correspondencelayer\currentcorrespondencelayer\s!parent\endcsname\????correspondencelayer + \expandafter\let\csname\????correspondenceframe\currentcorrespondenceframe\s!parent\endcsname\????correspondenceframe + \definelayer [#1:#2][\c!width=\overlaywidth,\c!height=\overlayheight]% + \defineoverlay[#1:#2][\placecorrespondencelayer{#1}{#2}]} + +\newtoks\everysetupcorrespondencelayer + +\appendtoks + \setuplayer + [\currentcorrespondencelayer] + [ \c!x=\correspondencelayerparameter\c!x, + \c!y=\correspondencelayerparameter\c!y, + \c!preset=\correspondencelayerparameter\c!preset]% +\to \everysetupcorrespondencelayer + +\setvalue{\????correspondencelayerstate\v!start }{\!!doneatrue \!!donebfalse \!!donecfalse} +\setvalue{\????correspondencelayerstate\v!stop }{\!!doneafalse \!!donebfalse \!!donecfalse} +\setvalue{\????correspondencelayerstate\v!next }{\!!doneafalse \!!donebtrue \!!donectrue } +\setvalue{\????correspondencelayerstate\v!repeat}{\!!doneatrue \!!donebtrue \!!donectrue } +\setvalue{\????correspondencelayerstate\v!left }{\!!doneafalse \!!donebfalse \!!donectrue } +\setvalue{\????correspondencelayerstate\v!right }{\!!doneafalse \!!donebtrue \!!donecfalse} +\setvalue{\????correspondencelayerstate\v!even }{\!!doneafalse \!!donebfalse \!!donectrue } +\setvalue{\????correspondencelayerstate\v!odd }{\!!doneafalse \!!donebtrue \!!donecfalse} + +\unexpanded\def\placecorrespondencelayer#1#2% + {\correspondenceparameters{#1}{#2}\v!layer + \executeifdefined{\????correspondencelayerstate\correspondencelayerparameter\c!state}{\getvalue{\????correspondencelayerstate\v!stop}} + \ifnum\correspondencepage=\plusone + \if!!donea\doplacecorrespondencelayer{#1}{#2}\fi + \else\ifodd\correspondencepage + \if!!doneb\doplacecorrespondencelayer{#1}{#2}\fi + \else + \if!!donec\doplacecorrespondencelayer{#1}{#2}\fi + \fi\fi + \tightlayer[\currentcorrespondencelayer]} + +\unexpanded\def\doplacecorrespondencelayer#1#2% + {\setlayer + [\currentcorrespondencelayer] + {\localframed[\????correspondenceframe\currentcorrespondenceframe] + {\doadaptleftskip {\correspondencelayerparameter\c!leftmargin }% + \doadaptrightskip{\correspondencelayerparameter\c!rightmargin}% + \dostartattributes{\????correspondencelayer\currentcorrespondencelayer}\c!style\c!color + \doifsymboldefinedelse{\correspondencelayerparameter\c!symbol}% + {\symbol[\correspondencelayerparameter\c!symbol]} + {\placecorrespondenceelement[#1][\v!layer][#2][\correspondencelayerparameter\c!alternative]}% + \dostopattributes}}} + +\unexpanded\def\checkcorrespondencelayer[#1][#2]% + {\def\currentcorrespondencelayer{#1:#2}% + \ifcsname\????correspondencelayer\currentcorrespondencelayer\s!parent\endcsname \else + \showmessage\m!correspondence{2}{#1,#2}% + \fi} + +\getparameters + [\????correspondencelayer] + [ \c!state=\v!start, + \c!x=\zeropoint, + \c!y=\zeropoint, + \c!alternative=\s!default, + \c!distance=\lineheight, + \c!separator=\crlf] + +\presetlocalframed[\????correspondenceframe] + +\getparameters + [\????correspondenceframe] + [ \c!frame=\v!off, + \c!offset=\zeropoint, + \c!align=\v!right] + +% Sections + +\def\correspondencesectionparameter + {\namedcorrespondencesectionparameter\currentcorrespondencesection} + +\def\namedcorrespondencesectionparameter#1#2% + {\csname + \ifcsname\????correspondencesection#1#2\endcsname + \????correspondencesection#1#2% + \else\ifcsname\????correspondencesection#2\endcsname + \????correspondencesection#2% + \else + \s!empty + \fi\fi + \endcsname} + +\unexpanded\def\definecorrespondencesection[#1][#2]% + {\def\currentcorrespondencesection{#1:#2}% + \expandafter\let\csname\????correspondencesection\currentcorrespondencesection\s!parent\endcsname\????correspondencesection} + +\unexpanded\def\setupcorrespondencesection[#1][#2][#3]% + {\def\dosetupcorrespondencesection##1% + {\edef\currentcorrespondencesection{#1:##1}% + \setupcurrentcorrespondencesection[#3]}% + \processcommalist[#2]\dosetupcorrespondencesection} + +\unexpanded\def\setupcurrentcorrespondencesection + {\getparameters[\????correspondencesection\currentcorrespondencesection]} + +\unexpanded\def\placecorrespondencesection[#1][#2]% + {\begingroup + \correspondenceparameters{#1}{#2}\v!section + \ifcsname\????correspondencesection\currentcorrespondencesection\s!parent\endcsname + \doifsomethingelse{\correspondencesectionparameter\c!spacebefore}{\blank[\correspondencesectionparameter\c!spacebefore]}{\endgraf}% + \correspondencesectionparameter\c!before + \doadaptleftskip {\correspondencesectionparameter\c!leftmargin }% + \doadaptrightskip{\correspondencesectionparameter\c!rightmargin}% + \doifsomething{\correspondencesectionparameter\c!align }{\setupalign [\correspondencesectionparameter\c!align ]}% + \doifsomething{\correspondencesectionparameter\c!indenting}{\setupindenting[\correspondencesectionparameter\c!indenting]}% + \dostartattributes{\????correspondencesection\currentcorrespondencesection}\c!style\c!color + \placecorrespondenceelement[#1][\v!section][#2][\correspondencesectionparameter\c!alternative]% + \dostopattributes + \correspondencesectionparameter\c!after + \doifsomethingelse{\correspondencesectionparameter\c!spaceafter }{\blank[\correspondencesectionparameter\c!spaceafter ]}{\endgraf}% + \else + \showmessage\m!correspondence{2}{#1,#2}% + \fi + \endgroup} + +\getparameters + [\????correspondencesection] + [ \c!spacebefore=\v!line, + \c!spaceafter=\v!line, + \c!spaceinbetween={\v!samepage,\v!line}, + \c!alternative=\s!default, + \c!separator=\crlf] + +% Options + +\def\correspondenceoptionparameter + {\namedcorrespondenceoptionparameter\currentcorrespondenceoption} + +\def\namedcorrespondenceoptionparameter#1#2% + {\csname + \ifcsname\????correspondenceoption#1#2\endcsname + \????correspondenceoption#1#2% + \else\ifcsname\????correspondenceoption#2\endcsname + \????correspondenceoption#2% + \else + \s!empty + \fi\fi + \endcsname} + +\unexpanded\def\setupcorrespondenceoption[#1]% + {\edef\currentcorrespondenceoption{#1}% + \setupcurrentcorrespondenceoption}% + +\unexpanded\def\setupcurrentcorrespondenceoption + {\getparameters[\????correspondenceoption\currentcorrespondenceoption]} + +\defineoverlay + [\v!correspondence:\c!backgroundimage] + [\doifsomething{\correspondenceoptionparameter\c!backgroundimage} + {\overlayfigure{\correspondenceoptionparameter\c!backgroundimage}}] + +\defineoverlay + [\v!correspondence:\c!background] + [\correspondenceoptionparameter\c!background] + +% Descriptions + +\def\correspondencedescriptionparameter + {\namedcorrespondencedescriptionparameter\currentcorrespondencedescription} + +\def\namedcorrespondencedescriptionparameter#1#2% + {\csname + \ifcsname\????correspondencedescription#1#2\endcsname + \????correspondencedescription#1#2% + \else\ifcsname\????correspondencedescription#2\endcsname + \????correspondencedescription#2% + \else + \s!empty + \fi\fi + \endcsname} + +\unexpanded\def\definecorrespondencedescription[#1][#2]% + {\edef\currentcorrespondencedescription{#1:#2}% + \expandafter\let\csname\????correspondencedescription\currentcorrespondencedescription\s!parent\endcsname\????correspondencedescription} + +\unexpanded\def\setupcorrespondencedescription[#1][#2][#3]% + {\def\dosetupcorrespondencedescription##1% + {\edef\currentcorrespondencedescription{#1:##1} + \setupcurrentcorrespondencedescription[#3]}% + \processcommalist[#2]\dosetupcorrespondencedescription} + +\unexpanded\def\setupcurrentcorrespondencedescription + {\getparameters[\????correspondencedescription\currentcorrespondencedescription]} + +\unexpanded\def\placecorrespondencedescription#1#2% + {\begingroup + \edef\currentcorrespondencedescription{#1:#2}% + \ifcsname\????correspondencedescription\currentcorrespondencedescription\s!parent\endcsname + \doifsomethingelse{\correspondencedescriptionparameter\c!textcommand}\donetrue\donefalse + \ifdone + \doifsomethingelse{\correspondencedescriptionparameter\c!spacebefore}{\blank[\correspondencedescriptionparameter\c!spacebefore]}{\endgraf}% + \correspondencedescriptionparameter\c!before + \setbox\scratchbox\hbox + {\dostartattributes{\????correspondencedescription\currentcorrespondencedescription}\c!headstyle\c!headcolor + \correspondencedescriptionparameter\c!headcommand + \dostopattributes}% + \assignwidth + {\scratchdimen} + {\correspondencedescriptionparameter\c!width} + {\unhcopy\scratchbox} + {\correspondencedescriptionparameter\c!distance}% + \executeifdefined{\????correspondencedescriptionlocation\correspondencedescriptionparameter\c!location}{\getvalue{\????correspondencedescriptionlocation\v!left}}% + \correspondencedescriptionparameter\c!after + \doifsomethingelse{\correspondencedescriptionparameter\c!spaceafter}{\blank[\correspondencedescriptionparameter\c!spaceafter]}{\endgraf}% + \fi + \else + \showmessage\m!correspondence{3}{#1,#2}% + \fi + \endgroup} + +\setvalue{\????correspondencedescriptionlocation\v!left}% + {\EveryPar{\hangindent\scratchdimen\hangafter\zerocount}% + \setbox\scratchbox\hbox to \scratchdimen{\box\scratchbox\hss}% + \noindent\llap{\box\scratchbox}\correspondencedescriptionparameter\c!textcommand} + +\setvalue{\????correspondencedescriptionlocation\v!top}% + {\noindent\box\scratchbox + \doifsomethingelse{\correspondencedescriptionparameter\c!spaceinbetween} + {\blank[\correspondencedescriptionparameter\c!spaceinbetween]} + {\nobreak\endgraf}% + \correspondencedescriptionparameter\c!textcommand} + +\setvalue{\????correspondencedescriptionlocation\v!text}% + {\noindent\box\scratchbox\correspondencedescriptionparameter\c!textcommand} + +\getparameters + [\????correspondencedescription] + [\c!width=\v!fit, + \c!distance=1em, + \c!symbol=dash] + +% Elements + +\unexpanded\long\def\definecorrespondenceelement[#1][#2][#3][#4]#5% + {\long\setvalue{\????correspondenceelement:#1:#2:#3:#4}{#5}} + +\unexpanded\def\placecorrespondenceelement[#1][#2][#3][#4]% + {\correspondenceparameters{#1}{#3}{#2}% + \executeifdefined{\????correspondenceelement:#1:#2:#3:#4}{\getvalue{\????correspondenceelement:#1:#2:#3:\s!default}}} + +% Files + +\unexpanded\def\loadcorrespondencefile[#1][#2]% + {\processaction + [\currentcorrespondence] + [ \v!letter=>\let\doloadcorrespondencefile\doloadletterfile , + \v!memo=>\let\doloadcorrespondencefile\doloadmemofile , + \s!unknown=>\let\doloadcorrespondencefile\gobbleoneargument]% + \processcommalist[#2]\doloadcorrespondencefile} + +\def\doloadletterfile#1% + {\donefalse + \def\dodoloadletterfile##1% + {\ifdone \else + \startreadingfile + \readfile{##1}\donetrue\donefalse + \stopreadingfile + \fi}% + \dodoloadletterfile{letter-imp-#1.mkii}% + \dodoloadletterfile{letter-imp-#1.tex}% + \dodoloadletterfile{letter-#1.mkii}% + \dodoloadletterfile{letter-#1.tex}% + \ifdone \else + % style not found + \fi} + +\def\doloadmemofile#1% + {\donefalse + \def\dodoloadmemofile##1% + {\ifdone \else + \startreadingfile + \readfile{##1}\donetrue\donefalse + \stopreadingfile + \fi}% + \dodoloadmemofile{memo-imp-#1.mkii}% + \dodoloadmemofile{memo-imp-#1.tex}% + \dodoloadmemofile{memo-#1.mkii}% + \dodoloadmemofile{memo-#1.tex}% + \ifdone \else + % style not found + \fi} + +% Style + +\def\correspondencestyleparameter + {\namedcorrespondencestyleparameter\currentcorrespondencestyle} + +\def\namedcorrespondencestyleparameter#1#2% + {\csname + \ifcsname\????correspondencestyle#1#2\endcsname + \????correspondencestyle#1#2% + \else\ifcsname\????correspondencestyle#2\endcsname + \????correspondencestyle#2% + \else + \s!empty + \fi\fi + \endcsname} + +\unexpanded\def\setupcorrespondencestyle[#1][#2][#3]% + {\def\dosetupcorrespondencestyle##1% + {\edef\currentcorrespondencestyle{#1:##1}% + \setupcurrentcorrespondencestyle[#3]}% + \processcommalist[#2]\dosetupcorrespondencestyle} + +\unexpanded\def\setupcurrentcorrespondencestyle + {\getparameters[\????correspondencestyle\currentcorrespondencestyle]} + +\unexpanded\def\correspondencestylewidth#1#2#3% + {\edef\currentcorrespondencestyle{#1:#2}% + \edef\currentcorrespondencestylewidth{\correspondencestyleparameter\c!width}% + \hbox \ifx\currentcorrespondencestylewidth\empty \else to \correspondencestyleparameter\c!width \fi{#3\hss}} + +%D \section{Layout} +%D +%D \startitemize[packed] +%D \item firstpage and +%D \item secondpage. +%D \stopitemize + +\newcount\correspondencepage + +\appendtoks + \setuplayout[\????correspondencelayout\currentcorrespondence\v!firstpage]% + \global\correspondencepage\plusone +\to \everybeforecorrespondence + +\appendtoks + \everyaftershipout\expandafter{\the\everyaftershipout\setuplayout[\????correspondencelayout\currentcorrespondence\v!secondpage]}% + \everyaftershipout\expandafter{\the\everyaftershipout\global\advance\correspondencepage\plusone }% +\to \everybeforecorrespondence + +\unexpanded\def\definecorrespondencelayout[#1][#2]% + {\def\currentcorrespondencelayout{#1#2}% + \definelayout[\????correspondencelayout\currentcorrespondencelayout]} + +\unexpanded\def\setupcorrespondencelayout[#1][#2][#3]% + {\def\dosetupcorrespondencelayout##1% + {\def\currentcorrespondencelayout{#1##1}% + \setuplayout[\????correspondencelayout\currentcorrespondencelayout][#3]}% + \processcommalist[#2]\dosetupcorrespondencelayout} + +\appendtoks + \definecorrespondencelayout[\currentcorrespondence][\v!firstpage ]% + \definecorrespondencelayout[\currentcorrespondence][\v!secondpage]% +\to \everydefinecorrespondence + +% Lists + +\unexpanded\def\definecorrespondenceelements[#1][#2][#3]% + {\setvalue{\????correspondenceelement:#1:#2}{#3}} + +\def\accesscorrespondenceelements#1#2% + {\executeifdefined{\????correspondenceelement:#1:#2}\empty} + +% Extras + +\definesymbol[\v!cutmark][{\blackrule[\c!width=4mm,\c!height=\linewidth]}] + +\defineblankmethod[\v!samepage]{\penalty\!!tenthousand} + +\protect \endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-00.mkvi b/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-00.mkvi new file mode 100644 index 0000000000..9e06a46858 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-00.mkvi @@ -0,0 +1,1059 @@ +%D \module +%D [ file=s-cor-00, +%D version=2015.08.24, +%D title=\CONTEXT\ User Module, +%D subtitle=Correspondence, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\unprotect + +% Lua functions for the core and also for the frontend modules + +\ctxloadluafile{s-cor-00} + +% Constants and variables + +\startinterface all + \setinterfaceconstant {whitespace} {whitespace} + \setinterfaceconstant {backgroundimage} {backgroundimage} + \setinterfaceconstant {fromname} {fromname} + \setinterfaceconstant {fromaddress} {fromaddress} + \setinterfaceconstant {attention} {attention} + \setinterfaceconstant {subject} {subject} + \setinterfaceconstant {closing} {closing} + \setinterfaceconstant {signature} {signature} + \setinterfaceconstant {copy} {copy} + \setinterfaceconstant {enclosure} {enclosure} + \setinterfaceconstant {postscript} {postscript} + \setinterfaceconstant {dispatch} {dispatch} + \setinterfaceconstant {toname} {toname} + \setinterfaceconstant {toaddress} {toaddress} + \setinterfaceconstant {backaddress} {backaddress} + \setinterfaceconstant {opening} {opening} + \setinterfaceconstant {fromphone} {fromphone} + \setinterfaceconstant {fromfax} {fromfax} + \setinterfaceconstant {frommail} {frommail} + \setinterfaceconstant {fromurl} {fromurl} + \setinterfaceconstant {salutation} {salutation} + \setinterfaceconstant {language} {language} + \setinterfaceconstant {leftalign} {leftalign} + \setinterfaceconstant {rightalign} {rightalign} + \setinterfaceconstant {datestyle} {datestyle} + \setinterfaceconstant {datecolor} {datecolor} + \setinterfaceconstant {subtitlestyle} {subtitlestyle} + \setinterfaceconstant {subtitlecolor} {subtitlecolor} + \setinterfaceconstant {street} {street} + \setinterfaceconstant {city} {city} + \setinterfaceconstant {phone} {phone} + \setinterfaceconstant {email} {email} + \setinterfaceconstant {bankname} {bankname} + \setinterfaceconstant {banknumber} {banknumber} + \setinterfaceconstant {accountnumber} {accountnumber} + \setinterfaceconstant {room} {room} + \setinterfaceconstant {yourref} {yourref} + \setinterfaceconstant {yourmail} {yourmail} + \setinterfaceconstant {myref} {myref} + \setinterfaceconstant {mymail} {mymail} + \setinterfaceconstant {customer} {customer} + \setinterfaceconstant {invoice} {invoice} + \setinterfaceconstant {fax} {fax} + \setinterfaceconstant {url} {url} + \setinterfaceconstant {bank} {bank} + \setinterfaceconstant {organization} {organization} + \setinterfaceconstant {zip} {zip} + \setinterfaceconstant {country} {country} + \setinterfaceconstant {addressentry} {addressentry} + \setinterfaceconstant {rulewidth} {rulewidth} +\stopinterface + +\startinterface all + % all + \setinterfacevariable {correspondence} {correspondence} + \setinterfacevariable {nexthead} {nexthead} + \setinterfacevariable {lefthead} {lefthead} + \setinterfacevariable {righthead} {righthead} + \setinterfacevariable {foot} {foot} + \setinterfacevariable {nextfoot} {nextfoot} + \setinterfacevariable {leftfoot} {leftfoot} + \setinterfacevariable {rightfoot} {rightfoot} + \setinterfacevariable {topmark} {topmark} + \setinterfacevariable {botmark} {botmark} + \setinterfacevariable {cutmark} {cutmark} + \setinterfacevariable {endmark} {endmark} + \setinterfacevariable {usermark} {usermark} + % letter + \setinterfacevariable {letter} {letter} + \setinterfacevariable {lettermain} {lettermain} + \setinterfacevariable {letternext} {letternext} + \setinterfacevariable {address} {address} + \setinterfacevariable {backaddress} {backaddress} + \setinterfacevariable {location} {location} + \setinterfacevariable {opening} {opening} + \setinterfacevariable {closing} {closing} + \setinterfacevariable {secondpage} {secondpage} + \setinterfacevariable {copy} {copy} + \setinterfacevariable {enclosure} {enclosure} + \setinterfacevariable {french} {french} + \setinterfacevariable {specialnotation} {specialnotation} + \setinterfacevariable {e} {e} + \setinterfacevariable {place} {place} + \setinterfacevariable {gbrief} {gbrief} + \setinterfacevariable {fullblock} {fullblock} + \setinterfacevariable {semiblock} {semiblock} + \setinterfacevariable {simplified} {simplified} + \setinterfacevariable {modified} {modified} + \setinterfacevariable {blockstyle} {blockstyle} + \setinterfacevariable {knuth} {knuth} + \setinterfacevariable {generic} {generic} + % memo + \setinterfacevariable {memo} {memo} + \setinterfacevariable {memomain} {memomain} + \setinterfacevariable {memonext} {memonext} + % resume + \setinterfacevariable {resume} {resume} + \setinterfacevariable {resumemain} {resumemain} + \setinterfacevariable {resumenext} {resumenext} + \setinterfacevariable {casual} {casual} + \setinterfacevariable {classic} {classic} + % frames + \setinterfacevariable {frames} {frames} + \setinterfacevariable {framesmain} {framesmain} + \setinterfacevariable {framesnext} {framesnext} +\stopinterface + +% Messages + +\definemessageconstant {correspondence} + +\startinterface all + \setinterfacemessage{correspondence}{title}{correspondence} + \setinterfacemessage{correspondence}{1} {Undefined layer '--' for the '--' environment} + \setinterfacemessage{correspondence}{2} {Undefined section '--' for the '--' environment} + \setinterfacemessage{correspondence}{3} {Undefined description '--' for the '--' environment} +\stopinterface + +% Namespaces + +\installnamespace {correspondence} +\installnamespace {correspondencebuffer} +\installnamespace {correspondenceoverlay} +\installnamespace {correspondencelayer} +\installnamespace {correspondencelayerrenderings} +\installnamespace {correspondencelayeralternative} +\installnamespace {correspondencelayerstate} +\installnamespace {correspondenceframe} +\installnamespace {correspondencesection} +\installnamespace {correspondencesectionrenderings} +\installnamespace {correspondencesectionalternative} +\installnamespace {correspondenceoption} +\installnamespace {correspondencedescription} +\installnamespace {correspondencedescriptionlocation} +\installnamespace {correspondencedescriptionformat} +\installnamespace {correspondencestyle} +\installnamespace {correspondenceelement} +\installnamespace {correspondencelayout} +\installnamespace {correspondencehead} +\installnamespace {correspondenceheadbuffer} +\installnamespace {correspondenceheadrenderings} +\installnamespace {correspondenceheadalternative} +\installnamespace {correspondenceparagraph} +\installnamespace {correspondenceparagraphbuffer} +\installnamespace {correspondenceparagraphrenderings} +\installnamespace {correspondenceparagraphalternative} +\installnamespace {correspondenceparagraphsetups} + +% Itemgroup + +\defineitemgroup[\v!correspondence] + +% Environment + +\installcommandhandler \????correspondence {correspondence} \????correspondence + +\unexpanded\def\correspondence_start[#environment]% + {\starttext + \begingroup + \def\currentcorrespondence{#environment}% + \dosingleempty\correspondence_start_parameters} + +\def\correspondence_start_parameters[#parameters]% + {\iffirstargument + \setupcurrentcorrespondence[#parameters]% + \fi + \grabbufferdatadirect{\????correspondencebuffer\currentcorrespondence}{\e!start\currentcorrespondence}{\e!stop\currentcorrespondence}} + +\unexpanded\def\correspondence_stop[#environment]% + {\correspondence_place[#environment]% + \endgroup + \stoptext} + +\appendtoks + \setuevalue{\e!start\currentcorrespondence}{\correspondence_start[\currentcorrespondence]}% + \setuevalue{\e!stop \currentcorrespondence}{\correspondence_stop [\currentcorrespondence]}% +\to \everydefinecorrespondence + +\unexpanded\def\correspondence_content_start[#environment]% + {\begingroup + \edef\currentcorrespondence{#environment}% + \grabbufferdatadirect{\????correspondencebuffer\currentcorrespondence}{\e!start\currentcorrespondence\v!content}{\e!stop\currentcorrespondence\v!content}} + +\unexpanded\def\correspondence_content_stop[#environment]% + {\endgroup} + +\unexpanded\def\correspondence_content_get[#environment]% + {\edef\currentcorrespondence{#environment}% + \getbufferdata[\????correspondencebuffer\currentcorrespondence]} + +\appendtoks + \setuevalue{\e!start\currentcorrespondence\v!content}{\correspondence_content_start[\currentcorrespondence]}% + \setuevalue{\e!stop \currentcorrespondence\v!content}{\correspondence_content_stop [\currentcorrespondence]}% + \setuevalue{\e!get \currentcorrespondence\v!content}{\correspondence_content_get [\currentcorrespondence]}% +\to \everydefinecorrespondence + +\unexpanded\def\correspondence_parameters#environment#element% + {\edef\currentcorrespondenceenvironment{#environment}% + \edef\currentcorrespondenceelement {#element}% + \edef\currentcorrespondencelayer {#environment:#element}% + \edef\currentcorrespondenceframe {#environment:#element}% + \edef\currentcorrespondencesection {#environment:#element}% + \edef\currentcorrespondencedescription{#environment:#element}% + \edef\currentcorrespondencehead {#environment:#element}% + \edef\currentcorrespondenceparagraph {#environment:#element}} + +% Setup + +\unexpanded\def\correspondence_setup[#environment]% + {\edef\currentcorrespondence{#environment}% + \setupcurrentcorrespondence} + +\appendtoks + \setuevalue{\e!setup\currentcorrespondence\e!endsetup}{\dodoubleargument\correspondence_setup[\currentcorrespondence]}% +\to \everydefinecorrespondence + +% Placement + +\newtoks\t_correspondence_before +\newtoks\t_correspondence_between +\newtoks\t_correspondence_after + +% \unexpanded\def\correspondence_place[#environment]% +% {\begingroup +% \edef\currentcorrespondence{#environment}% +% \let \currentcorrespondenceoption\currentcorrespondence +% \ctxlua{thirddata.correspondence.place("\currentcorrespondence", { +% bodyfont = "\correspondenceoptionparameter\c!bodyfont", +% whitespace = "\correspondenceoptionparameter\c!whitespace", +% interlinespace = "\correspondenceoptionparameter\c!interlinespace", +% language = "\correspondenceoptionparameter\c!language", +% backgroundcolor = "\correspondenceoptionparameter\c!backgroundcolor", +% } )}% +% \endgroup} + +\unexpanded\def\correspondence_place[#environment]% + {\begingroup + \edef\currentcorrespondence{#environment}% + \let \currentcorrespondenceoption\currentcorrespondence + \the\t_correspondence_before + \page + \setuplayout[\c!method=\v!correspondence]% + \setupheader[\c!state=\v!stop]% + \setupfooter[\c!state=\v!stop]% + \edef\p_correspondence_bodyfont {\correspondenceoptionparameter\c!bodyfont }% + \edef\p_correspondence_whitespace {\correspondenceoptionparameter\c!whitespace }% + \edef\p_correspondence_interlinespace {\correspondenceoptionparameter\c!interlinespace }% + \edef\p_correspondence_language {\correspondenceoptionparameter\c!language }% + \edef\p_correspondence_backgroundcolor{\correspondenceoptionparameter\c!backgroundcolor}% + \ifx\p_correspondence_bodyfont \empty \else \setupbodyfont [\p_correspondence_bodyfont ]\fi + \ifx\p_correspondence_whitespace \empty \else \setupwhitespace [\p_correspondence_whitespace ]\fi + \ifx\p_correspondence_interlinespace \empty \else \setupinterlinespace[\p_correspondence_interlinespace]\fi + \ifx\p_correspondence_language \empty \else \mainlanguage [\p_correspondence_language ]\fi + \the\t_correspondence_between + \ifx\p_correspondence_backgroundcolor\empty \else + \setupbackgrounds[\v!paper][\c!background=\v!color,\c!backgroundcolor=\p_correspondence_backgroundcolor]% + \fi + \setupbackgrounds[\v!page ][\c!background={\????correspondenceoverlay\c!backgroundimage,\????correspondenceoverlay\c!background,\????correspondenceoverlay\v!layer}]% + \setuppagenumbering[\c!alternative=\v!singlesided,\c!location=]% + \setupsubpagenumber[\c!way=\v!text,\c!state=\v!start]% + \resetsubpagenumber + \normalexpanded{\processcommalist[\correspondence_elements_access\currentcorrespondence\v!section]}{\correspondence_section_place\currentcorrespondence}% + \page + \resetsubpagenumber + \setuplayout[\v!reset]% + \the\t_correspondence_after + \endgroup} + +%D Besides the normal letter environment there are three different ways to flush +%D the content of a letter after the text was set with a buffer etc. +%D +%D \startitemize +%D \item \type{\setups[letter:place]} +%D \item \type{\placeletter} +%D \item \type{\placecorrespondence[letter]} +%D \stopitemize + +\let\placecorrespondence\correspondence_place + +\appendtoks + \global\c_correspondence_page\zerocount +\to \t_correspondence_before + +\appendtoks + \setuevalue{\e!place\currentcorrespondence}{\correspondence_place[\currentcorrespondence]}% +\to \everydefinecorrespondence + +% Layers + +\installsimplecommandhandler \????correspondencelayer {correspondencelayer} \????correspondencelayer +\installsimpleframedcommandhandler \????correspondenceframe {correspondenceframe} \????correspondenceframe +\installcommandhandler \????correspondencelayeralternative {correspondencelayeralternative} \????correspondencelayeralternative + +\unexpanded\def\correspondence_layer_define[#environment][#element]% + {\def\currentcorrespondencelayer{#environment:#element}% + \let\currentcorrespondenceframe\currentcorrespondencelayer + \checkcorrespondencelayerparent + \checkcorrespondenceframeparent} + +\unexpanded\def\correspondence_layer_setup[#environment][#elements][#parameters]% + {\def\correspondence_layer_command#element% + {\edef\currentcorrespondencelayer{#environment:#element}% + \setupcurrentcorrespondencelayer[#parameters]}% + \processcommacommand[#elements]\correspondence_layer_command} + +\unexpanded\def\correspondence_frame_setup[#environment][#elements][#parameters]% + {\def\correspondence_frame_command#element% + {\edef\currentcorrespondenceframe{#environment:#element}% + \setupcurrentcorrespondenceframe[#parameters]}% + \processcommacommand[#elements]\correspondence_frame_command} + +\setvalue{\????correspondencelayerstate }{\!!doneafalse \!!donebfalse \!!donecfalse} +\setvalue{\????correspondencelayerstate\v!start }{\!!doneatrue \!!donebfalse \!!donecfalse} +\setvalue{\????correspondencelayerstate\v!stop }{\!!doneafalse \!!donebfalse \!!donecfalse} +\setvalue{\????correspondencelayerstate\v!next }{\!!doneafalse \!!donebtrue \!!donectrue } +\setvalue{\????correspondencelayerstate\v!repeat}{\!!doneatrue \!!donebtrue \!!donectrue } +\setvalue{\????correspondencelayerstate\v!left }{\!!doneafalse \!!donebfalse \!!donectrue } +\setvalue{\????correspondencelayerstate\v!right }{\!!doneafalse \!!donebtrue \!!donecfalse} +\setvalue{\????correspondencelayerstate\v!even }{\!!doneafalse \!!donebfalse \!!donectrue } +\setvalue{\????correspondencelayerstate\v!odd }{\!!doneafalse \!!donebtrue \!!donecfalse} + +\definelayer [\????correspondenceoverlay\v!layer][\c!width=\overlaywidth,\c!height=\overlayheight ] +\defineoverlay[\????correspondenceoverlay\v!layer][\correspondence_layer_place\currentcorrespondence] + +\unexpanded\def\correspondence_layer_place#environment% + {\def\correspondence_layer_state#element% + {\correspondence_parameters{#environment}{#element}% + \expandcheckedcsname\????correspondencelayerstate{\correspondencelayerparameter\c!state}\v!stop + \ifnum\c_correspondence_page=\plusone + \if!!donea\correspondence_layer_direct\fi + \else\ifodd\c_correspondence_page + \if!!doneb\correspondence_layer_direct\fi + \else + \if!!donec\correspondence_layer_direct\fi + \fi\fi}% + \processcommacommand[\correspondence_elements_access\currentcorrespondence\v!layer]\correspondence_layer_state + \tightlayer[\????correspondenceoverlay\v!layer]} + +\unexpanded\def\correspondence_layer_direct + {\setlayer + [\????correspondenceoverlay\v!layer] + [ \c!x=\correspondencelayerparameter\c!x, + \c!y=\correspondencelayerparameter\c!y, + \c!preset=\correspondencelayerparameter\c!preset] + {\inheritedcorrespondenceframeframed + {\doifsomething{\correspondencelayerparameter\c!bodyfont }{\switchtobodyfont [\correspondencelayerparameter\c!bodyfont ]}% + \doifsomething{\correspondencelayerparameter\c!interlinespace}{\setupinterlinespace[\correspondencelayerparameter\c!interlinespace]}% + \usecorrespondencelayerstyleandcolor\c!style\c!color + \doadaptleftskip {\correspondencelayerparameter\c!leftmargin }% + \doadaptrightskip{\correspondencelayerparameter\c!rightmargin}% + \doifsymboldefinedelse{\correspondencelayerparameter\c!symbol}% + {\symbol[\correspondencelayerparameter\c!symbol]} + {\correspondence_layer_alternative_place}}}} + +\unexpanded\def\correspondence_layer_check[#environment][#element]% + {\def\currentcorrespondencelayer{#environment:#element}% + \ifcsname\currentcorrespondencelayerhash\s!parent\endcsname \else + \showmessage\m!correspondence{2}{#element,#environment}% + \fi} + +\unexpanded\def\correspondence_layer_alternative_define[#environment][#self][#parent][#parameters]% + {\iffourthargument + \definecorrespondencelayeralternative[#environment:#self][#environment:#parent][#parameters]% + \else + \definecorrespondencelayeralternative[#environment:#self][#parent]% + \fi} + +\unexpanded\def\correspondence_layer_alternative_setup[#environment][#name][#parameters]% + {\setupcorrespondencelayeralternative[#environment:#name][#parameters]} + +\unexpanded\def\correspondence_layer_alternative_place + {\edef\p_correspondence_layer_alternative{\correspondencelayerparameter\c!alternative}% + \ifcsname\namedcorrespondencelayeralternativehash{\currentcorrespondencelayer:\p_correspondence_layer_alternative}\s!parent\endcsname + \edef\currentcorrespondencelayeralternative{\currentcorrespondencelayer:\p_correspondence_layer_alternative}% + \else\ifcsname\namedcorrespondencelayeralternativehash{\currentcorrespondenceenvironment:\p_correspondence_layer_alternative}\s!parent\endcsname + \edef\currentcorrespondencelayeralternative{\currentcorrespondenceenvironment:\p_correspondence_layer_alternative}% + \else + \let\currentcorrespondencelayeralternative\p_correspondence_layer_alternative + \fi\fi + \edef\p_correspondence_layer_renderingsetup{\correspondencelayeralternativeparameter\c!renderingsetup}% + \autosetups\p_correspondence_layer_renderingsetup} + +\definecorrespondencelayeralternative[\v!setups][\c!renderingsetup=\????correspondencelayerrenderings:\v!setups] + +\startsetups[\????correspondencelayerrenderings:\v!setups] + \autosetups{\currentcorrespondenceenvironment:\v!layer:\currentcorrespondenceelement} +\stopsetups + +\setupcorrespondencelayer + [ \c!state=\v!start, + \c!x=\zeropoint, + \c!y=\zeropoint, + \c!alternative=\s!default, + \c!distance=\lineheight, + \c!separator=\crlf] + +\setupcorrespondenceframe + [ \c!frame=\v!off, + \c!offset=\zeropoint, + \c!align=\v!flushleft] + +% Sections + +\installsimplecommandhandler \????correspondencesection {correspondencesection} \????correspondencesection +\installcommandhandler \????correspondencesectionalternative {correspondencesectionalternative} \????correspondencesectionalternative + +\unexpanded\def\correspondence_section_define[#environment][#element]% + {\def\currentcorrespondencesection{#environment:#element}% + \checkcorrespondencesectionparent} + +\unexpanded\def\correspondence_section_setup[#environment][#elements][#parameters]% + {\def\correspondence_section_command#element% + {\edef\currentcorrespondencesection{#environment:#element}% + \setupcurrentcorrespondencesection[#parameters]}% + \processcommacommand[#elements]\correspondence_section_command} + +\unexpanded\def\correspondence_section_place#environment#element% + {\begingroup + \correspondence_parameters{#environment}{#element}% + \ifcsname\currentcorrespondencesectionhash\s!parent\endcsname + \doifsomethingelse{\correspondencesectionparameter\c!spacebefore}{\blank[\correspondencesectionparameter\c!spacebefore]}\endgraf + \correspondencesectionparameter\c!before + \doadaptleftskip {\correspondencesectionparameter\c!leftmargin }% + \doadaptrightskip{\correspondencesectionparameter\c!rightmargin}% + \doifsomething{\correspondencesectionparameter\c!align }{\setupalign [\correspondencesectionparameter\c!align ]}% + \doifsomething{\correspondencesectionparameter\c!indenting}{\setupindenting[\correspondencesectionparameter\c!indenting]}% + \usecorrespondencesectionstyleandcolor\c!style\c!color + \correspondence_section_alternative_place + \correspondencesectionparameter\c!after + \doifsomethingelse{\correspondencesectionparameter\c!spaceafter }{\blank[\correspondencesectionparameter\c!spaceafter ]}\endgraf + \else + \showmessage\m!correspondence{2}{#element,#environment}% + \fi + \endgroup} + +\unexpanded\def\correspondence_section_alternative_define[#environment][#self][#parent][#parameters]% + {\iffourthargument + \definecorrespondencesectionalternative[#environment:#self][#environment:#parent][#parameters]% + \else + \definecorrespondencesectionalternative[#environment:#self][#parent]% + \fi} + +\unexpanded\def\correspondence_section_alternative_setup[#environment][#name][#parameters]% + {\setupcorrespondencesectionalternative[#environment:#name][#parameters]} + +\unexpanded\def\correspondence_section_alternative_place + {\edef\p_correspondence_section_alternative{\correspondencesectionparameter\c!alternative}% + \ifcsname\namedcorrespondencesectionalternativehash{\currentcorrespondencesection:\p_correspondence_section_alternative}\s!parent\endcsname + \edef\currentcorrespondencesectionalternative{\currentcorrespondencelayer:\p_correspondence_section_alternative}% + \else\ifcsname\namedcorrespondencesectionalternativehash{\currentcorrespondenceenvironment:\p_correspondence_section_alternative}\s!parent\endcsname + \edef\currentcorrespondencesectionalternative{\currentcorrespondenceenvironment:\p_correspondence_section_alternative}% + \else + \let\currentcorrespondencesectionalternative\p_correspondence_section_alternative + \fi\fi + \edef\p_correspondence_section_renderingsetup{\correspondencesectionalternativeparameter\c!renderingsetup}% + \autosetups\p_correspondence_section_renderingsetup} + +\definecorrespondencesectionalternative[\v!setups][\c!renderingsetup=\????correspondencesectionrenderings:\v!setups] + +\startsetups[\????correspondencesectionrenderings:\v!setups] + \autosetups{\currentcorrespondenceenvironment:\v!section:\currentcorrespondenceelement} +\stopsetups + +\setupcorrespondencesection + [ \c!spacebefore=\v!line, + \c!spaceafter=\v!line, + \c!spaceinbetween={\v!samepage,\v!line}, + \c!alternative=\s!default, + \c!separator=\crlf] + +% Options + +\installsimplecommandhandler \????correspondenceoption {correspondenceoption} \????correspondenceoption + +\unexpanded\def\correspondence_option_setup[#environment]% + {\edef\currentcorrespondenceoption{#environment}% + \setupcurrentcorrespondenceoption}% + +\defineoverlay + [\????correspondenceoverlay\c!backgroundimage] + [\doifsomething{\correspondenceoptionparameter\c!backgroundimage} + {\overlayfigure{\correspondenceoptionparameter\c!backgroundimage}}] + +\defineoverlay + [\????correspondenceoverlay\c!background] + [\correspondenceoptionparameter\c!background] + +% Descriptions + +\installsimplecommandhandler \????correspondencedescription {correspondencedescription} \????correspondencedescription +\installcommandhandler \????correspondencedescriptionalternative {correspondencedescriptionalternative} \????correspondencedescriptionalternative + +\let\m_correspondence_description_format\empty +\let\m_correspondence_description_items \empty + +\unexpanded\def\correspondence_description_define[#environment][#element]% + {\def\currentcorrespondencedescription{#environment:#element}% + \checkcorrespondencedescriptionparent} + +\unexpanded\def\correspondence_description_setup[#environment][#elements][#parameters]% + {\def\correspondence_description_command#element% + {\edef\currentcorrespondencedescription{#environment:#element} + \setupcurrentcorrespondencedescription[#parameters]}% + \processcommacommand[#elements]\correspondence_description_command} + +\unexpanded\def\correspondence_description_place#environment#element% + {\begingroup + \correspondence_parameters{#environment}{#element}% + \ifcsname\currentcorrespondencedescriptionhash\s!parent\endcsname + \doifsomethingelse{\correspondencedescriptionparameter\c!textcommand}\donetrue\donefalse + \ifdone + \doifsomethingelse{\correspondencedescriptionparameter\c!spacebefore}{\blank[\correspondencedescriptionparameter\c!spacebefore]}\endgraf + \correspondencedescriptionparameter\c!before + \setbox\scratchbox\hbox + {\usecorrespondencedescriptionstyleandcolor\c!headstyle\c!headcolor + \correspondencedescriptionparameter\c!headcommand}% + \assignwidth + {\correspondencedescriptionparameter\c!width} + {\scratchdimen} + {\unhcopy\scratchbox} + {\correspondencedescriptionparameter\c!distance}% + \ctxlua{thirddata.correspondence.description_split(\!!bs\correspondencedescriptionparameter\c!textcommand\!!es)}% + \expandcheckedcsname\????correspondencedescriptionlocation{\correspondencedescriptionparameter\c!location}\v!left + \correspondencedescriptionparameter\c!after + \doifsomethingelse{\correspondencedescriptionparameter\c!spaceafter}{\blank[\correspondencedescriptionparameter\c!spaceafter]}\endgraf + \fi + \else + \showmessage\m!correspondence{3}{#element,#environment}% + \fi + \endgroup} + +% \unexpanded\def\correspondence_description_alternative_define[#environment][#self][#parent][#parameters]% +% {\iffourthargument +% \definecorrespondencedescriptionalternative[#environment:#self][#environment:#parent][#parameters]% +% \else +% \definecorrespondencedescriptionalternative[#environment:#self][#parent]% +% \fi} +% +% \unexpanded\def\correspondence_description_alternative_setup[#environment][#name][#parameters]% +% {\setupcorrespondencedescriptionalternative[#environment:#name][#parameters]} +% +% \unexpanded\def\correspondence_description_alternative_place +% {\edef\p_correspondence_description_alternative{\correspondencedescriptionparameter\c!alternative}% +% \ifcsname\namedcorrespondencedescriptionalternativehash{\currentcorrespondencedescription:\p_correspondence_description_alternative}\s!parent\endcsname +% \edef\currentcorrespondencedescriptionalternative{\currentcorrespondencedescription:\p_correspondence_description_alternative}% +% \else\ifcsname\namedcorrespondencedescriptionalternativehash{\currentcorrespondenceenvironment:\p_correspondence_description_alternative}\s!parent\endcsname +% \edef\currentcorrespondencedescriptionalternative{\currentcorrespondenceenvironment:\p_correspondence_description_alternative}% +% \else +% \let\currentcorrespondencedescriptionalternative\p_correspondence_description_alternative +% \fi\fi +% \edef\p_correspondence_description_renderingsetup{\correspondencedescriptionalternativeparameter\c!renderingsetup}% +% \autosetups\p_correspondence_description_renderingsetup} + +\setvalue{\????correspondencedescriptionlocation\v!left}% + {\doadaptleftskip\scratchdimen + \setbox\scratchbox\hbox to \scratchdimen{\box\scratchbox\hss}% + \noindent\llap{\box\scratchbox}\correspondence_description_place_text} + +\setvalue{\????correspondencedescriptionlocation\v!top}% + {\noindent\box\scratchbox + \doifsomethingelse{\correspondencedescriptionparameter\c!spaceinbetween} + {\blank[\correspondencedescriptionparameter\c!spaceinbetween]} + {\nobreak\endgraf}% + \doadaptleftskip {\correspondencedescriptionparameter\c!leftmargin }% + \doadaptrightskip{\correspondencedescriptionparameter\c!rightmargin}% + \correspondence_description_place_text} + +\setvalue{\????correspondencedescriptionlocation\v!text}% + {\noindent\box\scratchbox\correspondence_description_place_text} + +\unexpanded\def\correspondence_description_place_text + {\expandcheckedcsname\????correspondencedescriptionformat\m_correspondence_description_format\v!none} + +\setvalue{\????correspondencedescriptionformat\v!list}% todo: use a simplified version of the itemize code + {\def\correspondence_description_format_item#text{\startitem#text\stopitem}% + \dontleavehmode\vtop\bgroup + \leftskip\zeropoint % prevent additional offset when “location=left” is used + \doif{\correspondencedescriptionparameter\c!symbol}\v!none{\setupitemgroup[\v!correspondence][\v!each][\c!width=\zeropoint,distance=\zeropoint]}% + \startitemgroup[\v!correspondence][\v!packed,\correspondencedescriptionparameter\c!symbol]% + \processcommacommand[\m_correspondence_description_items]\correspondence_description_format_item + \stopitemgroup + \egroup} + +\setvalue{\????correspondencedescriptionformat\v!none}% + {\m_correspondence_description_items} + +% \def\correspondence_description_item#text% +% {\begingroup +% \setbox\scratchbox\hbox +% {\usecorrespondencedescriptionstyleandcolor\c!symbolstyle\c!symbolcolor +% \symbol{\correspondencedescriptionparameter\c!symbol}}% +% \assignwidth +% {\correspondencedescriptionparameter\c!symbolwidth} +% {\scratchdimen} +% {\unhcopy\scratchbox} +% {\correspondencedescriptionparameter\c!symboldistance}% +% \endgroup} + +\setupcorrespondencedescription + [ \c!width=\v!fit, + \c!distance=1em, + \c!symbol=dash] + +% Paragraphs + +\installsimplecommandhandler \????correspondenceparagraph {correspondenceparagraph} \????correspondenceparagraph +\installcommandhandler \????correspondenceparagraphalternative {correspondenceparagraphalternative} \????correspondenceparagraphalternative + +% \newtoks\t_correspondence_paragraphs +% +% \appendtoks +% \the\t_correspondence_paragraphs +% \to \t_correspondence_before +% +% \unexpanded\def\correspondence_paragraph_define[#environment][#element]% +% {\def\currentcorrespondenceparagraph{#environment:#element}% +% \checkcorrespondenceparagraphparent +% \t_correspondence_paragraphs\expandafter{\the\t_correspondence_paragraphs\correspondence_paragraph_commands[#environment][#element]}} + +\unexpanded\def\correspondence_paragraph_define[#environment][#element]% + {\def\currentcorrespondenceparagraph{#environment:#element}% + \checkcorrespondenceparagraphparent + \correspondence_paragraph_commands[#environment][#element]} + +\unexpanded\def\correspondence_paragraph_setup[#environment][#elements][#parameters]% + {\def\correspondence_paragraph_command#element% + {\edef\currentcorrespondenceparagraph{#environment:#element}% + \setupcurrentcorrespondenceparagraph[#parameters]}% + \processcommacommand[#elements]\correspondence_paragraph_command} + +\unexpanded\def\correspondence_paragraph_commands[#environment][#element]% + {\setuevalue{\e!start#element}{\correspondence_paragraph_start[#environment][#element]}% + \setuevalue{\e!stop #element}{\correspondence_paragraph_stop [#environment][#element]}} + +\unexpanded\def\correspondence_paragraph_start[#environment][#element]% + {\begingroup + \correspondence_parameters{#environment}{#element}% + \dodoubleempty\correspondence_paragraph_start_parameters}% + +\unexpanded\def\correspondence_paragraph_start_parameters[#parameters][#dummy]% #dummy removes the linebreak before the first line + {\iffirstargument + \setupcurrentcorrespondenceparagraph[#parameters]% + \fi + \grabbufferdatadirect{\????correspondenceparagraphbuffer\currentcorrespondenceparagraph}{\e!start\currentcorrespondenceelement}{\e!stop\currentcorrespondenceelement}} + +\unexpanded\def\correspondence_paragraph_stop[#environment][#element]% + {\doifsomethingelse{\correspondenceparagraphparameter\c!spacebefore}{\blank[\correspondenceparagraphparameter\c!spacebefore]}\endgraf + \correspondence_paragraph_alternative_place + \doifsomethingelse{\correspondenceparagraphparameter\c!spaceafter }{\blank[\correspondenceparagraphparameter\c!spaceafter ]}\endgraf + \endgroup} + +\unexpanded\def\correspondence_paragraph_alternative_define[#environment][#self][#parent][#parameters]% + {\iffourthargument + \definecorrespondenceparagraphalternative[#environment:#self][#environment:#parent][#parameters]% + \else + \definecorrespondenceparagraphalternative[#environment:#self][#parent]% + \fi} + +\unexpanded\def\correspondence_paragraph_alternative_setup[#environment][#name][#parameters]% + {\setupcorrespondenceparagraphalternative[#environment:#name][#parameters]} + +\unexpanded\def\correspondence_paragraph_alternative_place + {\edef\p_correspondence_paragraph_alternative{\correspondenceparagraphparameter\c!alternative}% + \ifcsname\namedcorrespondenceparagraphalternativehash{\currentcorrespondenceparagraph:\p_correspondence_paragraph_alternative}\s!parent\endcsname + \edef\currentcorrespondenceparagraphalternative{\currentcorrespondenceparagraph:\p_correspondence_paragraph_alternative}% + \else\ifcsname\namedcorrespondenceparagraphalternativehash{\currentcorrespondenceenvironment:\p_correspondence_paragraph_alternative}\s!parent\endcsname + \edef\currentcorrespondenceparagraphalternative{\currentcorrespondenceenvironment:\p_correspondence_paragraph_alternative}% + \else + \let\currentcorrespondenceparagraphalternative\p_correspondence_paragraph_alternative + \fi\fi + \edef\p_correspondence_paragraph_renderingsetup{\correspondenceparagraphalternativeparameter\c!renderingsetup}% + \autosetups\p_correspondence_paragraph_renderingsetup} + +\definecorrespondenceparagraphalternative[\s!default ][\c!renderingsetup=\????correspondenceparagraphrenderings:\s!default ] +\definecorrespondenceparagraphalternative[\v!columns ][\c!renderingsetup=\????correspondenceparagraphrenderings:\v!columns ] +\definecorrespondenceparagraphalternative[\c!lefttext ][\c!renderingsetup=\????correspondenceparagraphrenderings:\c!lefttext ] +\definecorrespondenceparagraphalternative[\c!middletext][\c!renderingsetup=\????correspondenceparagraphrenderings:\c!middletext] +\definecorrespondenceparagraphalternative[\c!righttext ][\c!renderingsetup=\????correspondenceparagraphrenderings:\c!righttext ] + +\startsetups[\????correspondenceparagraphrenderings:\s!default] + \ifdefined\currentparentcorrespondenceparagraph + \getbufferdata[\????correspondenceparagraphbuffer\currentparentcorrespondenceparagraph] + \else + \getbufferdata[\????correspondenceparagraphbuffer\currentcorrespondenceparagraph ] + \fi +\stopsetups + +\newbox \b_correspondence_paragraph +\newcount\c_correspondence_paragraph + +\unexpanded\def\correspondence_paragraph_columns_start + {\begingroup + \global\c_correspondence_paragraph\zerocount + \edef\p_correspondence_paragraph_n {\correspondenceparagraphparameter\c!n }% + \edef\p_correspondence_paragraph_distance{\correspondenceparagraphparameter\c!distance}% + \letcorrespondenceparagraphparameter\c!alternative\v!default + \dontleavehmode\hbox\bgroup} + +\unexpanded\def\correspondence_paragraph_columns_stop + {\egroup + \endgroup} + +\unexpanded\def\correspondence_paragraph_columns_place + {\begingroup + \global\advance\c_correspondence_paragraph\plusone + \let\currentparentcorrespondenceparagraph\currentcorrespondenceparagraph + \chaintocurrentcorrespondenceparagraph{\currentparentcorrespondenceparagraph:\number\c_correspondence_paragraph}% + \edef\currentcorrespondenceparagraph {\currentparentcorrespondenceparagraph:\number\c_correspondence_paragraph}% + \edef\p_correspondence_columns_width {\correspondenceparagraphparameter\c!width}% + \setbox\b_correspondence_paragraph\vtop\bgroup + \ifx\p_correspondence_columns_width\empty \else \hsize\p_correspondence_columns_width \fi + \usealignparameter\correspondenceparagraphparameter + \begstrut + \usecorrespondenceparagraphstyleandcolor\c!style\c!color + \correspondence_paragraph_alternative_place + \endstrut + \egroup + \ifzeropt\p_correspondence_columns_width \else + \ifnum\c_correspondence_paragraph>\p_correspondence_paragraph_n + % more columns are used than specified + \else\ifnum\c_correspondence_paragraph=\p_correspondence_paragraph_n + \box\b_correspondence_paragraph + \else + \box\b_correspondence_paragraph + \hskip\p_correspondence_paragraph_distance + \fi\fi + \fi + \endgroup} + +\startsetups[\????correspondenceparagraphrenderings:\v!columns] + + \correspondence_paragraph_columns_start + \dorecurse\p_correspondence_paragraph_n\correspondence_paragraph_columns_place + \correspondence_paragraph_columns_stop + +\stopsetups + +\startsetups[\????correspondenceparagraphrenderings:\c!lefttext] + + \correspondenceparagraphparameter\c!lefttext + +\stopsetups + +\startsetups[\????correspondenceparagraphrenderings:\c!middletext] + + \correspondenceparagraphparameter\c!middletext + +\stopsetups + +\startsetups[\????correspondenceparagraphrenderings:\c!righttext] + + \correspondenceparagraphparameter\c!righttext + +\stopsetups + +\setupcorrespondenceparagraph + [\c!spacebefore=\v!line, + \c!spaceafter=\v!line, + \c!alternative=\s!default, + \c!distance=\zeropoint, + \c!width=\zeropoint, + \c!n=3] + +% Heading + +\installframedcommandhandler \????correspondencehead {correspondencehead} \????correspondencehead +\installcommandhandler \????correspondenceheadalternative {correspondenceheadalternative} \????correspondenceheadalternative + +\appendtoks + \definelist [\currentcorrespondencehead]% \definelist [\????correspondenceheadlist \currentcorrespondencehead] + \definemarking[\currentcorrespondencehead]% \definemarking[\????correspondenceheadmarking\currentcorrespondencehead] +\to \everydefinecorrespondencehead + +% \newtoks\t_correspondence_headings +% +% \appendtoks +% \the\t_correspondence_headings +% \to \t_correspondence_before +% +% \unexpanded\def\correspondence_head_define[#environment][#element]% +% {\def\currentcorrespondencehead{#environment:#element}% +% \checkcorrespondenceheadparent +% \t_correspondence_headings\expandafter{\the\t_correspondence_headings\correspondence_head_commands[#environment][#element]}} + +\unexpanded\def\correspondence_head_define[#environment][#element]% + {\def\currentcorrespondencehead{#environment:#element}% + \checkcorrespondenceheadparent + \correspondence_head_commands[#environment][#element]} + +\unexpanded\def\correspondence_head_setup[#environment][#elements][#parameters]% + {\def\correspondence_head_command#element% + {\edef\currentcorrespondencehead{#environment:#element}% + \setupcurrentcorrespondencehead[#parameters]}% + \processcommacommand[#elements]\correspondence_head_command} + +\unexpanded\def\correspondence_head_commands[#environment][#element]% + {%setuevalue {#element}{\correspondence_head_direct[#environment][#element]}% + \setuevalue{\e!start#element}{\correspondence_head_start [#environment][#element]}% + \setuevalue{\e!stop #element}{\correspondence_head_stop [#environment][#element]}} + +% \unexpanded\def\correspondence_head_direct[#environment][#element]% +% {\begingroup +% \correspondence_parameters{#environment}{#element}% +% \doifnextbgroupelse{\dosinglegroupempty\correspondence_head_direct_argument}{\dosingleempty\correspondence_head_direct_parameters}} +% +% \unexpanded\def\correspondence_head_direct_argument#title% +% {\setcorrespondenceheadparameter\c!title{#title}% +% \correspondence_head_alternative_place +% \endgroup} +% +% \unexpanded\def\correspondence_head_direct_parameters[#parameters]% +% {\iffirstargument +% \setupcurrentcorrespondencehead[#parameters]% +% \fi +% \correspondence_head_alternative_place +% \endgroup} + +\unexpanded\def\correspondence_head_start[#environment][#element]% + {\begingroup + \correspondence_parameters{#environment}{#element}% + \dodoubleempty\correspondence_head_start_parameters} + +\unexpanded\def\correspondence_head_start_parameters[#parameters][#dummy]% + {\iffirstargument + \setupcurrentcorrespondencehead[#parameters]% + \fi + \correspondenceheadparameter\c!beforesection + \correspondence_head_alternative_place} + +\unexpanded\def\correspondence_head_stop[#environment][#element]% + {\correspondenceheadparameter\c!aftersection + \endgroup} + +\unexpanded\def\correspondence_head_alternative_define[#environment][#self][#parent][#parameters]% + {\iffourthargument + \definecorrespondenceheadalternative[#environment:#self][#environment:#parent][#parameters]% + \else + \definecorrespondenceheadalternative[#environment:#self][#parent]% + \fi} + +\unexpanded\def\correspondence_head_alternative_setup[#environment][#name][#parameters]% + {\setupcorrespondenceheadalternative[#environment:#name][#parameters]} + +\unexpanded\def\correspondence_head_alternative_place + {\edef\p_correspondence_head_alternative{\correspondenceheadparameter\c!alternative}% + \ifcsname\namedcorrespondenceheadalternativehash{\currentcorrespondencehead:\p_correspondence_head_alternative}\s!parent\endcsname + \edef\currentcorrespondenceheadalternative{\currentcorrespondencehead:\p_correspondence_head_alternative}% + \else\ifcsname\namedcorrespondenceheadalternativehash{\currentcorrespondenceenvironment:\p_correspondence_head_alternative}\s!parent\endcsname + \edef\currentcorrespondenceheadalternative{\currentcorrespondenceenvironment:\p_correspondence_head_alternative}% + \else + \let\currentcorrespondenceheadalternative\p_correspondence_head_alternative + \fi\fi + \edef\p_correspondence_section_renderingsetup{\correspondenceheadalternativeparameter\c!renderingsetup}% + \autosetups\p_correspondence_section_renderingsetup} + +\unexpanded\def\correspondenceheadtitle + {\begingroup + \usecorrespondenceheadstyleandcolor\c!style\c!color + \correspondenceheadparameter\c!textcommand{\begstrut\correspondenceheadparameter\c!title\endstrut}% + \endgroup} + +\definecorrespondenceheadalternative[\s!default ][\c!renderingsetup=\????correspondenceheadrenderings:\s!default ] +\definecorrespondenceheadalternative[\v!margin ][\c!renderingsetup=\????correspondenceheadrenderings:\v!margin ] +\definecorrespondenceheadalternative[\v!inmargin][\c!renderingsetup=\????correspondenceheadrenderings:\v!inmargin] + +\startsetups[\????correspondenceheadrenderings:\s!default] + + \edef\p_spacebefore{\correspondenceheadparameter\c!spacebefore} + \edef\p_spaceafter {\correspondenceheadparameter\c!spaceafter } + + \ifx\p_spacebefore\empty \else + \blank[\p_spacebefore] + \fi + + \vbox\bgroup + \usealignparameter\correspondenceheadparameter + \correspondenceheadtitle + \egroup + + \ifx\p_spaceafter\empty \else + \blank[\p_spaceafter] + \fi + +\stopsetups + +\startsetups[\????correspondenceheadrenderings:\v!margin] + + \dontleavehmode\llap\bgroup + \vtop\bgroup + \hsize\leftmarginwidth + \usealignparameter\correspondenceheadparameter + \correspondenceheadtitle + \egroup + \hskip\leftmargindistance + \egroup + + \blank[\v!overlay] + +\stopsetups + +\setupcorrespondencehead + [ \c!spacebefore=\v!line, + \c!spaceafter={\v!samepage,\v!line}, + \c!alternative=\s!default, + \c!align=\v!middle, + \c!style=\v!bold] + +% Elements + +\unexpanded\def\correspondence_element_define[#environment][#type][#element][#name]% + {\edef\m_correspondence_element_type{#type}% + \ifx\m_correspondence_element_type\v!section + \expandafter\correspondence_element_define_section + \else + \expandafter\correspondence_element_define_layer + \fi[#environment][#type][#element][#name]} + +\def\correspondence_element_define_section[#environment][#type][#element][#name]#content% + {\definecorrespondencesectionalternative[#environment:#element:#name][\c!renderingsetup=\????correspondencesectionrenderings:\v!command]% + \setvalue{\????correspondenceelement:#environment:#type:#element:#name}{#content}} + +\def\correspondence_element_define_layer[#environment][#type][#element][#name]#content% + {\definecorrespondencelayeralternative[#environment:#element:#name][\c!renderingsetup=\????correspondencelayerrenderings:\v!command]% + \setvalue{\????correspondenceelement:#environment:#type:#element:#name}{#content}} + +\startsetups[\????correspondencesectionrenderings:\v!command] + \correspondence_element_place[\currentcorrespondenceenvironment][\v!section][\currentcorrespondenceelement][\correspondencesectionparameter\c!alternative] +\stopsetups + +\startsetups[\????correspondencelayerrenderings:\v!command] + \correspondence_element_place[\currentcorrespondenceenvironment][\v!layer][\currentcorrespondenceelement][\correspondencelayerparameter\c!alternative] +\stopsetups + +\unexpanded\def\correspondence_element_place[#environment][#type][#element][#name]% + {\expandcheckedcsname{\????correspondenceelement:#environment:#type:#element:}{#name}\s!default} + +% Files + +\unexpanded\def\correspondence_file_load[#environment][#names]% + {\def\correspondence_file_command#name% + {\ctxlua{thirddata.correspondence.file("#environment","#name")}}% + \processcommacommand[#names]\correspondence_file_command} + +% Style + +\installsimplecommandhandler \????correspondencestyle {correspondencestyle} \????correspondencestyle + +\unexpanded\def\correspondence_style_setup[#environment][#elements][#parameters]% + {\def\correspondence_style_command#element% + {\edef\currentcorrespondencestyle{#environment:#element}% + \setupcurrentcorrespondencestyle[#parameters]}% + \processcommacommand[#elements]\correspondence_style_command} + +\unexpanded\def\correspondence_style_width#environment#element#content% + {\edef\currentcorrespondencestyle {#environment:#element}% + \edef\p_correspondence_style_width{\correspondencestyleparameter\c!width}% + \hbox \ifx\p_correspondence_style_width\empty \else to \p_correspondence_style_width \fi{#content\hss}} + +\unexpanded\def\formattedcorrespondenceparameter#element% + {\begingroup + \edef\currentcorrespondenceelement{#element}% + \edef\currentcorrespondencestyle {\currentcorrespondence:#element}% + \usecorrespondencestylestyleandcolor\c!style\c!color + \correspondenceparameter\currentcorrespondenceelement + \endgroup} + +%D \section{Layout} +%D +%D \startitemize[packed] +%D \item firstpage, +%D \item secondpage, +%D \item leftpage and +%D \item rightpage. +%D \stopitemize + +\newcount\c_correspondence_page + +\installlayoutmethod \v!correspondence + {\global\advance\c_correspondence_page\plusone + \ifnum\c_correspondence_page=\plusone + \changetolayout{\????correspondencelayout\currentcorrespondence\v!firstpage}% + \else\ifodd\c_correspondence_page + \changetolayout{\????correspondencelayout\currentcorrespondence\v!rightpage}% + \else + \changetolayout{\????correspondencelayout\currentcorrespondence\v!leftpage }% + \fi\fi} + +\unexpanded\def\correspondence_layout_define + {\dotripleempty\correspondence_layout_define_indeed} + +\unexpanded\def\correspondence_layout_define_indeed[#environment][#self][#parent]% + {\def\m_correspondence_layout_self {#environment#self}% + \def\m_correspondence_layout_parent{#environment#parent}% + \ifthirdargument + \definelayout[\????correspondencelayout\m_correspondence_layout_self][\????correspondencelayout\m_correspondence_layout_parent]% + \else + \definelayout[\????correspondencelayout\m_correspondence_layout_self]% + \fi} + +\unexpanded\def\correspondence_layout_setup[#environment][#elements][#parameters]% + {\def\correspondence_layout_command#element% + {\def\m_correspondence_layout_current{#environment#element}% + \setuplayout[\????correspondencelayout\m_correspondence_layout_current][#parameters]}% + \processcommacommand[#elements]\correspondence_layout_command} + +\appendtoks + \correspondence_layout_define[\currentcorrespondence][\v!firstpage ]% + \correspondence_layout_define[\currentcorrespondence][\v!secondpage]% + \correspondence_layout_define[\currentcorrespondence][\v!leftpage ][\v!secondpage]% + \correspondence_layout_define[\currentcorrespondence][\v!rightpage ][\v!secondpage]% +\to \everydefinecorrespondence + +% Lists + +\def\correspondence_elements_define[#environment][#name][#list]% + {\ctxlua{thirddata.correspondence.elements_define("#environment","#name","#list")}} + +\def\correspondence_elements_access#environment#name% + {\ctxlua{thirddata.correspondence.elements_access("#environment","#name")}} + +% Extras + +\definesymbol[\v!cutmark][{\blackrule[\c!width=4mm,\c!height=\linewidth]}] + +\protect \endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-01.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-01.mkii new file mode 100644 index 0000000000..8acab8898d --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-01.mkii @@ -0,0 +1,916 @@ +%D \module +%D [ file=s-cor-01, +%D version=2013.01.02, +%D title=\CONTEXT\ User Module, +%D subtitle=Letters, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\unprotect + +\startmodule[letter] + +\usemodule[cor-00] + +\setupmodule + [\c!style=dinb] + +% Commands + +\definecorrespondence[\v!letter] + +\def\defineletterlayer {\dodoubleargument\definecorrespondencelayer [\v!letter]} +\def\definelettersection {\dodoubleargument\definecorrespondencesection [\v!letter]} +\def\defineletterdescription {\dodoubleargument\definecorrespondencedescription [\v!letter]} + +\def\defineletterelements {\dotripleargument\definecorrespondenceelements [\v!letter]} +\def\setupletterelements {\dotripleargument\definecorrespondenceelements [\v!letter]} + +\def\setupletterstyle {\dotripleargument\setupcorrespondencestyle [\v!letter]} +\def\setupletterlayer {\dotripleargument\setupcorrespondencelayer [\v!letter]} +\def\setupletterframe {\dotripleargument\setupcorrespondenceframe [\v!letter]} +\def\setupletterlayout {\dotripleargument\setupcorrespondencelayout [\v!letter]} +\def\setuplettersection {\dotripleargument\setupcorrespondencesection [\v!letter]} +\def\setupletterdescription {\dotripleargument\setupcorrespondencedescription [\v!letter]} +\def\setupletteroptions {\dodoubleargument\setupcorrespondenceoption [\v!letter]} +\def\setupletter {\dodoubleargument\setupcorrespondence [\v!letter]} + +\def\useletterstyle {\dodoubleargument\loadcorrespondencefile [\v!letter]} + +\def\defineletterelement {\doquadrupleargument\definecorrespondenceelement [\v!letter]} +\def\letterelement {\doquadrupleargument\placecorrespondenceelement [\v!letter]} + +\def\namedletterlayerparameter #1{\namedcorrespondencelayerparameter {\v!letter:#1}} +\def\namedletterframeparameter #1{\namedcorrespondenceframeparameter {\v!letter:#1}} +\def\namedlettersectionparameter#1{\namedcorrespondencesectionparameter{\v!letter:#1}} + +% Layers + +\defineletterlayer [\v!head] +\defineletterlayer [\v!nexthead] +\defineletterlayer [\v!lefthead] +\defineletterlayer [\v!righthead] + +\defineletterlayer [\v!foot] +\defineletterlayer [\v!nextfoot] +\defineletterlayer [\v!leftfoot] +\defineletterlayer [\v!rightfoot] + +\defineletterlayer [\v!address] +\defineletterlayer [\v!backaddress] + +\defineletterlayer [\v!reference] +\defineletterlayer [\v!location] + +\defineletterlayer [\v!topmark] +\defineletterlayer [\v!botmark] +\defineletterlayer [\v!cutmark] +\defineletterlayer [\v!endmark] +\defineletterlayer [\v!usermark] + +\defineletterlayer [\v!lettermain] +\defineletterlayer [\v!letternext] + +% Section + +\definelettersection [\v!head] +\definelettersection [\v!date] +\definelettersection [\v!reference] +\definelettersection [\v!specialnotation] +\definelettersection [\v!address] +\definelettersection [\v!title] +\definelettersection [\v!subject] +\definelettersection [\v!opening] +\definelettersection [\v!content] +\definelettersection [\v!closing] +\definelettersection [\v!appendices] + +% Descriptions + +\defineletterdescription [\v!copy] +\defineletterdescription [\v!enclosure] +\defineletterdescription [\v!postscript] + +% Setups + +% layer: head + +\defineletterelement[\v!layer][\v!head][\s!default] + {\def\\{\correspondencelayerparameter\c!separator}% + \correspondenceparameter\c!fromname + \doifsomething{\correspondenceparameter\c!fromname}\\ + \correspondenceparameter\c!fromaddress} + +\defineletterelement[\v!layer][\v!head][\v!left] + {\framed[\c!frame=\v!off,\c!align=\v!flushleft,\c!width=\v!broad,\c!offset=\zeropoint]\bgroup + \def\currentcorrespondencestyle{\v!letter:\c!fromname}% + \dostartattributes{\????correspondencestyle\currentcorrespondencestyle}\c!style\c!color + \correspondenceparameter\c!fromname + \dostopattributes + \\ + \def\currentcorrespondencestyle{\v!letter:\c!fromaddress}% + \dostartattributes{\????correspondencestyle\currentcorrespondencestyle}\c!style\c!color + \correspondenceparameter\c!fromaddress + \doifsomething{\correspondenceparameter\c!fromphone}{\\\correspondenceparameter\c!fromphone}% + \doifsomething{\correspondenceparameter\c!fromfax }{\\\correspondenceparameter\c!fromfax }% + \doifsomething{\correspondenceparameter\c!frommail }{\\\correspondenceparameter\c!frommail }% + \doifsomething{\correspondenceparameter\c!fromurl }{\\\correspondenceparameter\c!fromurl }% + \dostopattributes + \egroup} + +\defineletterelement[\v!layer][\v!head][\v!middle] + {\framed[\c!frame=\v!off,\c!align=\v!middle,\c!width=\v!broad,\c!offset=\zeropoint]\bgroup + \def\currentcorrespondencestyle{\v!letter:\c!fromname}% + \dostartattributes{\????correspondencestyle\currentcorrespondencestyle}\c!style\c!color + \correspondenceparameter\c!fromname + \dostopattributes + \\ + \def\currentcorrespondencestyle{\v!letter:\c!fromaddress}% + \dostartattributes{\????correspondencestyle\currentcorrespondencestyle}\c!style\c!color + \correspondenceparameter\c!fromaddress + \doifsomething{\correspondenceparameter\c!fromphone}{\\\correspondenceparameter\c!fromphone}% + \doifsomething{\correspondenceparameter\c!fromfax }{\\\correspondenceparameter\c!fromfax }% + \doifsomething{\correspondenceparameter\c!frommail }{\\\correspondenceparameter\c!frommail }% + \doifsomething{\correspondenceparameter\c!fromurl }{\\\correspondenceparameter\c!fromurl }% + \dostopattributes + \egroup} + +\defineletterelement[\v!layer][\v!head][\v!right] + {\framed[\c!frame=\v!off,\c!align=\v!flushright,\c!width=\v!broad,\c!offset=\zeropoint]\bgroup + \def\currentcorrespondencestyle{\v!letter:\c!fromname}% + \dostartattributes{\????correspondencestyle\currentcorrespondencestyle}\c!style\c!color + \correspondenceparameter\c!fromname + \dostopattributes + \\ + \def\currentcorrespondencestyle{\v!letter:\c!fromaddress}% + \dostartattributes{\????correspondencestyle\currentcorrespondencestyle}\c!style\c!color + \correspondenceparameter\c!fromaddress + \doifsomething{\correspondenceparameter\c!fromphone}{\\\correspondenceparameter\c!fromphone}% + \doifsomething{\correspondenceparameter\c!fromfax }{\\\correspondenceparameter\c!fromfax }% + \doifsomething{\correspondenceparameter\c!frommail }{\\\correspondenceparameter\c!frommail }% + \doifsomething{\correspondenceparameter\c!fromurl }{\\\correspondenceparameter\c!fromurl }% + \dostopattributes + \egroup} + +\defineletterelement[\v!layer][\v!head][\v!gbrief] + {\def\\{\correspondencelayerparameter\c!separator}% + \correspondenceparameter\c!fromname\hrule} + +\defineletterelement[\v!layer][\v!head][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!head}} + +% layer: nexthead + +\defineletterelement[\v!layer][\v!nexthead][\v!gbrief] + {\maxaligned + {\rlap{\correspondenceparameter\c!fromname} + \midaligned{\leftlettertext\v!pagenumber\subpagenumber\rightlettertext\v!pagenumber\lastsubpagenumber} + \llap{\correspondenceparameter\c!date}} + \hairline} + +\defineletterelement[\v!layer][\v!nexthead][\v!fullblock] + {\maxaligned + {\rlap{\correspondenceparameter\c!toname}% + \midaligned{\subpagenumber}% + \llap{\framed[\c!frame=\v!off,\c!location=\v!top,\c!align=\v!left] + {\correspondenceparameter\c!date \\ + \correspondenceparameter\c!reference}}}} + +\defineletterelement[\v!layer][\v!nexthead][\v!hanging] + {\maxaligned + {\framed[\c!frame=\v!off,\c!location=\v!top,\c!align=v!right] + {\correspondenceparameter\c!toname \\ + \correspondenceparameter\c!date \\ + \correspondenceparameter\c!reference \\ + \lettertext\c!page\subpagenumber}}} + +\defineletterelement[\v!layer][\v!nexthead][\v!semiblock] + {\maxaligned + {\rlap{\correspondenceparameter\c!toname}% + \midaligned{\subpagenumber}% + \llap{\correspondenceparameter\c!date}}} + +\defineletterelement[\v!layer][\v!nexthead][\v!simplified] + {\letterelement[\v!layer][\v!nexthead][\v!fullblock]} + +\defineletterelement[\v!layer][\v!nexthead][\v!modified] + {\letterelement[\v!layer][\v!nexthead][\v!hanging]} + +\defineletterelement[\v!layer][\v!nexthead][\v!knuth] + {\maxaligned + {\rlap{\correspondenceparameter\c!toname}% + \midaligned{\currentdate}% + \llap{\lettertext\c!page\subpagenumber}}} + +\defineletterelement[\v!layer][\v!nexthead][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!nexthead}} + +% layer: lefthead + +\defineletterelement[\v!layer][\v!lefthead][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!lefthead}} + +% layer: righthead + +\defineletterelement[\v!layer][\v!righthead][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!righthead}} + +% layer: foot + +\defineletterelement[\v!layer][\v!foot][\v!gbrief] + {\bTABLE[\c!frame=\v!off,\c!width=.25\hsize,\c!offset=\zeropoint] + \bTR[\c!style=\bfxx,\c!topframe=\v!on] + \bTD \lettertext\c!address \eTD + \bTD \lettertext\c!phone \eTD + \bTD \lettertext\c!email \eTD + \bTD \lettertext\c!bank \eTD + \eTR + \bTR + \bTD \correspondenceparameter\c!street \\\correspondenceparameter\c!city \eTD + \bTD \correspondenceparameter\c!phone \eTD + \bTD \correspondenceparameter\c!email \eTD + \bTD \correspondenceparameter\c!bankname\\\correspondenceparameter\c!banknumber\\\correspondenceparameter\c!accountnumber \eTD + \eTR + \eTABLE} + +\defineletterelement[\v!layer][\v!foot][\v!pagenumber] + {\midaligned{\leftlettertext\v!pagenumber\subpagenumber\rightlettertext\v!pagenumber\lastsubpagenumber}} + +\defineletterelement[\v!layer][\v!foot][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!foot}} + +% layer: nextfoot + +\defineletterelement[\v!layer][\v!nextfoot][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!nextfoot}} + +% layer: leftfoot + +\defineletterelement[\v!layer][\v!leftfoot][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!leftfoot}} + +% layer: rightfoot + +\defineletterelement[\v!layer][\v!rightfoot][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!rightfoot}} + +% layer: address + +\defineletterelement[\v!layer][\v!address][\s!default] + {\def\\{\correspondencelayerparameter\c!separator}% + \doifsomething{\correspondenceparameter\c!dispatch}{\correspondenceparameter\c!dispatch\\}% + \doifsomething{\correspondenceparameter\c!toname }{\correspondenceparameter\c!toname \\}% + \correspondenceparameter\c!toaddress} + +\defineletterelement[\v!layer][\v!address][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!address}} + +% layer: backaddress + +\defineletterelement[\v!layer][\v!backaddress][\s!default] + {\def\\{\correspondencelayerparameter\c!separator}% + \correspondenceparameter\c!fromname + \doifsomething{\correspondenceparameter\c!fromaddress}\\ + \correspondenceparameter\c!fromaddress} + +\defineletterelement[\v!layer][\v!backaddress][\v!auto] + {\def\\{\correspondencelayerparameter\c!separator}% + \doifsomethingelse{\correspondenceparameter\c!backaddress} + {\correspondenceparameter\c!backaddress} + {\letterelement[\v!layer][\v!backaddress][\s!default]}} + +\defineletterelement[\v!layer][\v!backaddress][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!backaddress}} + +% layer: reference + +\defineletterelement[\v!layer][\v!reference][\s!default] + {\correspondenceparameter\c!reference} + +\def\doformatletterreferenceAandE#1% + {\def\currentcorrespondencevalue {#1}% + \def\currentcorrespondencestyle{\v!letter:#1}% + \vbox\bgroup + \framed + [\c!frame=\v!off, + \c!foregroundstyle=\correspondencestyleparameter\c!titlestyle, + \c!foregroundcolor=\correspondencestyleparameter\c!titlecolor, + \c!location=\v!bottom, + \c!align=\v!right, + \c!offset=0pt] + {\setupinterlinespace\lettertext\currentcorrespondencevalue\par}% + \framed + [\c!frame=\v!off, + \c!foregroundstyle=\correspondencestyleparameter\c!textstyle, + \c!foregroundcolor=\correspondencestyleparameter\c!textcolor, + \c!location=\v!top, + \c!align=\v!right, + \c!offset=0pt] + {\setupinterlinespace\correspondenceparameter\currentcorrespondencevalue\par}% + \egroup} + +\def\doformatletterreferenceA#1% + {\doifsomething{#1} % ignore empty entries + {\doifnot{#1}{\v!line} % and the “line” keyword + {\doformatletterreferenceAandE{#1}\hfill}}} + +\defineletterelement[\v!layer][\v!reference][\v!a] + {\hbox to \hsize\bgroup + \getcommacommandsize[\correspondencelayerparameter\c!list]% + \ifnum\commalistsize=\plusone\hfill\fi + \processcommacommand[\correspondencelayerparameter\c!list]\doformatletterreferenceA + \unskip + \egroup} + +\def\doformatletterreferenceB#1% + {\doifsomething{#1}% ignore empty entries + {\doifelse{#1}{\v!line} + {\blank[\v!line]} + {\hbox\bgroup + \def\currentcorrespondencevalue {#1}% + \def\currentcorrespondencestyle{\v!letter:#1}% + \dostartattributes{\????correspondencestyle\currentcorrespondencestyle}\c!titlestyle\c!titlecolor + \lettertext\currentcorrespondencevalue + \correspondencestyleparameter\c!separator + \dostopattributes + \dostartattributes{\????correspondencestyle\currentcorrespondencestyle}\c!textstyle\c!textcolor + \correspondenceparameter\currentcorrespondencevalue + \dostopattributes + \egroup}}} + +\defineletterelement[\v!layer][\v!reference][\v!b] + {\vtop\bgroup + \processcommacommand[\correspondencelayerparameter\c!list]\doformatletterreferenceB + \egroup} + +\def\doformatletterreferenceC#1% + {\doifsomething{#1} % ignore empty entries + {\doifnot{#1}{\v!line} % and the “line” keyword + {\def\currentcorrespondencevalue {#1}% + \def\currentcorrespondencestyle{\v!letter:#1}% + \dostartattributes{\????correspondencestyle\currentcorrespondencestyle}\c!textstyle\c!textcolor + \correspondenceparameter\currentcorrespondencevalue + \dostopattributes}}} + +\defineletterelement[\v!layer][\v!reference][\v!c] + {\hbox to \hsize\bgroup + \processcommacommand[\correspondencelayerparameter\c!list]\doformatletterreferenceC + \egroup} + +\def\doformatletterreferenceD#1% + {\doifsomething{#1}% + {\doifelse{#1}{\v!line} + {\appendtoks\TB[\v!line]\to\scratchtoks} + {\def\currentcorrespondencevalue {#1}% + \def\currentcorrespondencestyle{\v!letter:#1}% + \startexpanded + \noexpand\appendtoks + \noexpand\NC + \dostartattributes{\????correspondencestyle\currentcorrespondencestyle}{\c!titlestyle}{\c!titlecolor}% + \lettertext\currentcorrespondencevalue + \correspondencestyleparameter\c!separator + \dostopattributes + \noexpand\NC + \dostartattributes{\????correspondencestyle\currentcorrespondencestyle}{\c!textstyle }{\c!textcolor }% + \correspondenceparameter\currentcorrespondencevalue + \dostopattributes + \noexpand\NC\noexpand\NR + \noexpand\to\noexpand\scratchtoks + \stopexpanded}}} + +\defineletterelement[\v!layer][\v!reference][\v!d] + {\vtop\bgroup + \scratchtoks\emptytoks + \processcommacommand[\correspondencelayerparameter\c!list]\doformatletterreferenceD + \starttabulate[|l|l|][\c!before=,\c!after=]% + \the\scratchtoks + \stoptabulate + \egroup} + +\def\doformatletterreferenceE#1% + {\doifsomething{#1} % ignore empty entries + {\doifnot{#1}{\v!line} % and the “line” keyword + {\correspondencestylewidth\v!letter{#1}{\doformatletterreferenceAandE{#1}}}}} + +\defineletterelement[\v!layer][\v!reference][\v!e] + {\hbox to \hsize\bgroup + \processcommacommand[\correspondencelayerparameter\c!list]\doformatletterreferenceE + \egroup} + +\defineletterelement[\v!layer][\v!reference][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!reference}} + +% layer: location + +\defineletterelement[\v!layer][\v!location][\v!french] + {\def\\{\correspondencelayerparameter\c!separator}% + \doifsomething{\correspondenceparameter\c!place}{\correspondenceparameter\c!place\\}% + \correspondenceparameter\c!date} + +\defineletterelement[\v!layer][\v!location][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!location}} + +% layer: topmark + +\defineletterelement[\v!layer][\v!topmark][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!topmark}} + +% layer: botmark + +\defineletterelement[\v!layer][\v!botmark][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!botmark}} + +% layer: cutmark + +\defineletterelement[\v!layer][\v!cutmark][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!cutmark}} + +% layer: endmark + +\defineletterelement[\v!layer][\v!endmark][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!endmark}} + +% layer: usermark + +\defineletterelement[\v!layer][\v!usermark][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!usermark}} + +% layer: lettermain + +\defineletterelement[\v!layer][\v!lettermain][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!lettermain}} + +% layer: letternext + +\defineletterelement[\v!layer][\v!letternext][\v!setups] + {\directsetup{\v!letter:\v!layer:\v!letternext}} + +% section: head + +\defineletterelement[\v!section][\v!head][\v!blockstyle] + {\correspondenceparameter\c!fromaddress} + +\defineletterelement[\v!section][\v!head][\v!setups] + {\directsetup{\v!letter:\v!section:\v!head}} + +% section: date + +\defineletterelement[\v!section][\v!date][\v!blockstyle] + {\correspondenceparameter\c!date} + +\defineletterelement[\v!section][\v!date][\v!setups] + {\directsetup{\v!letter:\v!section:\v!date}} + +% section: reference + +\defineletterelement[\v!section][\v!reference][\v!blockstyle] + {\def\\{\correspondencesectionparameter\c!separator}% + \correspondenceparameter\c!reference} + +\defineletterelement[\v!section][\v!reference][\v!setups] + {\directsetup{\v!letter:\v!section:\v!reference}} + +% section: specialnotation + +\defineletterelement[\v!section][\v!specialnotation][\v!blockstyle] + {\def\\{\correspondencesectionparameter\c!separator}% + \correspondenceparameter\c!dispatch} + +\defineletterelement[\v!section][\v!specialnotation][\v!setups] + {\directsetup{\v!letter:\v!section:\v!specialnotation}} + +% section: address + +\defineletterelement[\v!section][\v!address][\v!blockstyle] + {\def\\{\correspondencesectionparameter\c!separator}% + \correspondenceparameter\c!toname + \doifsomething{\correspondenceparameter\c!toname}\\ + \correspondenceparameter\c!toaddress} + +\defineletterelement[\v!section][\v!address][\v!knuth] + {\letterelement[\v!section][\v!address][\v!blockstyle]} + +\defineletterelement[\v!section][\v!address][\v!setups] + {\directsetup{\v!letter:\v!section:\v!address}} + +% section: title + +\defineletterelement[\v!section][\v!title][\s!default] + {\def\\{\correspondencesectionparameter\c!separator}% + \doifsomethingelse{\correspondenceparameter\c!title} + {\correspondenceparameter\c!title} + {\lettertext\c!attention\correspondenceparameter\c!attention}} + +\defineletterelement[\v!section][\v!title][\v!setups] + {\directsetup{\v!letter:\v!section:\v!title}} + +% section: subject + +\defineletterelement[\v!section][\v!subject][\s!default] + {\def\\{\correspondencesectionparameter\c!separator}% + \lettertext\c!subject\correspondenceparameter\c!subject} + +\defineletterelement[\v!section][\v!subject][\v!setups] + {\directsetup{\v!letter:\v!section:\v!subject}} + +% section: opening + +\defineletterelement[\v!section][\v!opening][\s!default] + {\def\\{\correspondencesectionparameter\c!separator}% + \doifsomethingelse{\correspondenceparameter\c!opening} + {\correspondenceparameter\c!opening} + {\correspondenceparameter\c!salutation}} + +\defineletterelement[\v!section][\v!opening][\v!french] + {\doifsomething{\correspondenceoptionparameter\c!indenting}{\setupindenting[\correspondenceoptionparameter\c!indenting]}% + \letterelement[\v!section][\v!opening][\s!default]} + +\defineletterelement[\v!section][\v!opening][\v!setups] + {\directsetup{\v!letter:\v!section:\v!opening}} + +% section: content + +\defineletterelement[\v!section][\v!content][\s!default] + {\setupbuffer[\c!before=,\c!after=]% + \getbuffer [\????correspondencebuffer\v!letter]} + +\defineletterelement[\v!section][\v!content][\v!setups] + {\directsetup{\v!letter:\v!section:\v!content}} + +% section: closing + +\defineletterelement[\v!section][\v!closing][\s!default] + {\def\\{\correspondencesectionparameter\c!separator}% + \correspondenceparameter\c!closing + \doifsomething{\correspondenceparameter\c!signature} + {\blank[\correspondencesectionparameter\c!spaceinbetween]% + \correspondenceparameter\c!signature}} + +\defineletterelement[\v!section][\v!closing][\v!french] + {\def\\{\correspondencesectionparameter\c!separator}% + \doifsomething{\correspondenceoptionparameter\c!indenting}{\setupindenting[\correspondenceoptionparameter\c!indenting,\v!first]}% + \correspondenceparameter\c!closing + \doifsomething{\correspondenceparameter\c!signature} + {\blank[\correspondencesectionparameter\c!spaceinbetween]% + \raggedcenter\doadaptleftskip{.5\textwidth}% + \correspondenceparameter\c!signature\endgraf}} + +\defineletterelement[\v!section][\v!closing][\v!knuth] + {\def\\{\correspondencesectionparameter\c!separator}% + \doadaptleftskip{\dimexpr\textwidth/13*8\relax}% + \correspondenceparameter\c!closing + \doifsomething{\correspondenceparameter\c!signature} + {\blank[\correspondencesectionparameter\c!spaceinbetween]% + \correspondenceparameter\c!signature}} + +\defineletterelement[\v!section][\v!closing][\v!setups] + {\directsetup{\v!letter:\v!section:\v!closing}} + +% section: appendices + +\defineletterelement[\v!section][\v!appendices][\s!default] + {\def\\{\correspondencesectionparameter\c!separator}% + \startpacked + \processcommacommand[\accesscorrespondenceelements\v!letter\v!description]{\placecorrespondencedescription\v!letter}% + \stoppacked} + +\defineletterelement[\v!section][\v!appendices][\v!setups] + {\directsetup{\v!letter:\v!section:\v!appendices}} + +\startsetups[\v!letter:\v!place] +\placecorrespondence[\v!letter] +\stopsetups + +% Extras + +\appendtoks + \ifx\currentcorrespondence\v!letter + \processallactionsinset + [\correspondenceoptionparameter\c!option] + [ \v!test=>{\useletterstyle[test]}, + \v!setups=>{\useletterstyle[setups]}]% + \fi +\to \everybeforecorrespondence + +\appendtoks + \ifx\currentcorrespondence\v!letter + \doif{\correspondenceoptionparameter\c!marking}\v!no{\setupletterlayer[\v!topmark,\v!botmark,\v!cutmark,\v!endmark,\v!usermark][\c!state=\v!stop]}% + \fi +\to \everybeforecorrespondence + +\appendtoks + \ifx\currentcorrespondence\v!letter + \doif{\correspondenceoptionparameter\c!position}\v!yes + {\setbox\scratchbox\vbox{\letterelement[\v!reference][\correspondencelayerparameter\c!alternative]}% + \normalexpanded + {\setupletterlayout + [\v!firstpage] + [\c!topspace=\dimexpr\namedletterlayerparameter\v!reference\c!y+\ht\scratchbox+\namedletterlayerparameter\v!reference\c!distance\relax]}}% + \fi +\to \everybeforecorrespondence + +% Labels + +\def\????lettertext{@@@@lettertext} + +\def\setuplettertext + {\dodoubleempty\dosetuplettertext} + +\def\dosetuplettertext[#1][#2]% + {\ifsecondargument + \def\dodosetuplettertext##1{\setuplabeltext[#1][\????lettertext##1]}% + \processcommalist[#2]\dodosetuplettertext + \else + \def\dodosetuplettertext##1{\setuplabeltext [\????lettertext##1]}% + \processcommalist[#1]\dodosetuplettertext + \fi} + +\def\lettertext #1{\labeltext {\????lettertext#1}} +\def\leftlettertext #1{\leftlabeltext {\????lettertext#1}} +\def\rightlettertext#1{\rightlabeltext{\????lettertext#1}} + +% name: + +\setuplettertext[\s!en][\c!name=Name] +\setuplettertext[\s!nl][\c!name=] +\setuplettertext[\s!de][\c!name=Name] +\setuplettertext[\s!fr][\c!name=Nom] +\setuplettertext[\s!it][\c!name=] +\setuplettertext[\s!es][\c!name=] + +% room: + +\setuplettertext[\s!en][\c!room=Room] +\setuplettertext[\s!nl][\c!room=] +\setuplettertext[\s!de][\c!room=Zimmer] +\setuplettertext[\s!fr][\c!room=Salle] % Salle or Pièce +\setuplettertext[\s!it][\c!room=] +\setuplettertext[\s!es][\c!room=] + +% yourref: + +\setuplettertext[\s!en][\c!yourref=Your ref.] +\setuplettertext[\s!nl][\c!yourref=Uw kenmerk] +\setuplettertext[\s!de][\c!yourref=Ihr Zeichen] +\setuplettertext[\s!fr][\c!yourref=Vos r\eacute f\eacute rences] +\setuplettertext[\s!it][\c!yourref=Vs./Rif.] +\setuplettertext[\s!es][\c!yourref=Su ref.] + +% yourmail: + +\setuplettertext[\s!en][\c!yourmail=Your letter of] +\setuplettertext[\s!nl][\c!yourmail=Uw brief van] +\setuplettertext[\s!de][\c!yourmail=Ihre Nachricht vom] +\setuplettertext[\s!fr][\c!yourmail=Votre lettre du] +\setuplettertext[\s!it][\c!yourmail=Vs.~lettera del] +\setuplettertext[\s!es][\c!yourmail=Su carta de] + +% myref: + +\setuplettertext[\s!en][\c!myref=Our ref.] +\setuplettertext[\s!nl][\c!myref=Ons kenmerk] +\setuplettertext[\s!de][\c!myref=Unser Zeichen] +\setuplettertext[\s!fr][\c!myref=Nos r\eacute f\eacute rences] +\setuplettertext[\s!it][\c!myref=Ns./Rif.] +\setuplettertext[\s!es][\c!myref=Nuestra ref.] + +% mymail: + +\setuplettertext[\s!en][\c!mymail=Our letter of] +\setuplettertext[\s!nl][\c!mymail=Ons brief van] +\setuplettertext[\s!de][\c!mymail=Unsere Nachricht vom] +\setuplettertext[\s!fr][\c!mymail=Notre lettre du] +\setuplettertext[\s!it][\c!mymail=] +\setuplettertext[\s!es][\c!mymail=] + +% customer: + +\setuplettertext[\s!en][\c!customer=Customer no.] +\setuplettertext[\s!nl][\c!customer=Klant No.] +\setuplettertext[\s!de][\c!customer=Kundennummer] +\setuplettertext[\s!fr][\c!customer=Num\eacute ro de client] +\setuplettertext[\s!it][\c!customer=Nr.~cliente] +\setuplettertext[\s!es][\c!customer=No. de cliente] + +% invoice: + +\setuplettertext[\s!en][\c!invoice=Invoice no.] +\setuplettertext[\s!nl][\c!invoice=Rekening No.] +\setuplettertext[\s!de][\c!invoice=Rechnungsnummer] +\setuplettertext[\s!fr][\c!invoice=Num\eacute ro de facture] +\setuplettertext[\s!it][\c!invoice=Nr.~fattura] +\setuplettertext[\s!es][\c!invoice=No. de factura] + +% attention: + +\setuplettertext[\s!en][\c!attention=] % Attention +\setuplettertext[\s!nl][\c!attention=] +\setuplettertext[\s!de][\c!attention=] +\setuplettertext[\s!fr][\c!attention=] +\setuplettertext[\s!it][\c!attention=] +\setuplettertext[\s!es][\c!attention=] + +% subject: + +\setuplettertext[\s!en][\c!subject=] % Subject +\setuplettertext[\s!nl][\c!subject=] % Onderwerp +\setuplettertext[\s!de][\c!subject=] % Betrifft +\setuplettertext[\s!fr][\c!subject=] % Concernant or Sujet +\setuplettertext[\s!it][\c!subject=] % Oggetto +\setuplettertext[\s!es][\c!subject=] % Asunto + +% cc: + +\setuplettertext[\s!en][\c!copy=cc] +\setuplettertext[\s!nl][\c!copy=Kopie aan] +\setuplettertext[\s!de][\c!copy=Kopien an] +\setuplettertext[\s!fr][\c!copy=Copie\agrave] +\setuplettertext[\s!it][\c!copy=Per conoscenza] +\setuplettertext[\s!es][\c!copy=Copias] + +% enclosure: + +\setuplettertext[\s!en][\c!enclosure=encl] +\setuplettertext[\s!nl][\c!enclosure=Bijlage(n)] +\setuplettertext[\s!de][\c!enclosure=Anlagen] +\setuplettertext[\s!fr][\c!enclosure=Annexes] +\setuplettertext[\s!it][\c!enclosure=Allegato] +\setuplettertext[\s!es][\c!enclosure=Adjunto] + +% to: + +\setuplettertext[\s!en][\c!to=To] +\setuplettertext[\s!nl][\c!to=Aan] +\setuplettertext[\s!de][\c!to=An] +\setuplettertext[\s!fr][\c!to=\Agrave] +\setuplettertext[\s!it][\c!to=A] +\setuplettertext[\s!es][\c!to=A] + +% toname: + +\setuplettertext[\s!en][\c!toname=To] +\setuplettertext[\s!nl][\c!toname=Aan] +\setuplettertext[\s!de][\c!toname=An] +\setuplettertext[\s!fr][\c!toname=\Agrave] +\setuplettertext[\s!it][\c!toname=A] +\setuplettertext[\s!es][\c!toname=A] + +% from: + +\setuplettertext[\s!en][\c!from=From] +\setuplettertext[\s!nl][\c!from=Van] +\setuplettertext[\s!de][\c!from=Von] +\setuplettertext[\s!fr][\c!from=De] +\setuplettertext[\s!it][\c!from=Da] +\setuplettertext[\s!es][\c!from=De] + +% fromname: + +\setuplettertext[\s!en][\c!fromname=From] +\setuplettertext[\s!nl][\c!fromname=Van] +\setuplettertext[\s!de][\c!fromname=Von] +\setuplettertext[\s!fr][\c!fromname=De] +\setuplettertext[\s!it][\c!fromname=Da] +\setuplettertext[\s!es][\c!fromname=De] + +% date: + +\setuplettertext[\s!en][\c!date=Date] +\setuplettertext[\s!nl][\c!date=Datum] +\setuplettertext[\s!de][\c!date=Datum] +\setuplettertext[\s!fr][\c!date=Date] +\setuplettertext[\s!it][\c!date=Data] +\setuplettertext[\s!es][\c!date=Fecha] + +% phone: + +\setuplettertext[\s!en][\c!phone=Phone] +\setuplettertext[\s!nl][\c!phone=Telefoon] +\setuplettertext[\s!de][\c!phone=Telefon] +\setuplettertext[\s!fr][\c!phone=T\eacute l\eacute phone] +\setuplettertext[\s!it][\c!phone=Telefono] +\setuplettertext[\s!es][\c!phone=Tel\eacute fono] + +% fax: + +\setuplettertext[\s!en][\c!fax=Fax] +\setuplettertext[\s!nl][\c!fax=Fax] +\setuplettertext[\s!de][\c!fax=Fax] +\setuplettertext[\s!fr][\c!fax=T\eacute l\eacute fax] % or Fax +\setuplettertext[\s!it][\c!fax=Fax] +\setuplettertext[\s!es][\c!fax=Fax] + +% email: + +\setuplettertext[\s!en][\c!email=Email] +\setuplettertext[\s!nl][\c!email=E–mail] +\setuplettertext[\s!de][\c!email=E-Mail] +\setuplettertext[\s!fr][\c!email=Courriel] % Adresse électronique +\setuplettertext[\s!it][\c!email=Email] +\setuplettertext[\s!es][\c!email=Email] + +% url: + +\setuplettertext[\s!en][\c!url=Url] +\setuplettertext[\s!nl][\c!url=URL] +\setuplettertext[\s!de][\c!url=URL] +\setuplettertext[\s!fr][\c!url=Site web] +\setuplettertext[\s!it][\c!url=Sito Web] +\setuplettertext[\s!es][\c!url=URL] + +% bank: + +\setuplettertext[\s!en][\c!bank=Bank account] +\setuplettertext[\s!nl][\c!bank=Bankrekening] +\setuplettertext[\s!de][\c!bank=Bankverbindung] +\setuplettertext[\s!fr][\c!bank=Compte en banque] +\setuplettertext[\s!it][\c!bank=Conto bancario] +\setuplettertext[\s!es][\c!bank=Cuenta bancaria] + +% organization: + +\setuplettertext[\s!en][\c!organization=Organization] +\setuplettertext[\s!nl][\c!organization=] +\setuplettertext[\s!de][\c!organization=Organisation] +\setuplettertext[\s!fr][\c!organization=] +\setuplettertext[\s!it][\c!organization=] +\setuplettertext[\s!es][\c!organization=] + +% city: + +\setuplettertext[\s!en][\c!city=City] +\setuplettertext[\s!nl][\c!city=] +\setuplettertext[\s!de][\c!city=Stadt] +\setuplettertext[\s!fr][\c!city=] +\setuplettertext[\s!it][\c!city=] +\setuplettertext[\s!es][\c!city=] + +% zip: + +\setuplettertext[\s!en][\c!zip=Zip] +\setuplettertext[\s!nl][\c!zip=] +\setuplettertext[\s!de][\c!zip=PLZ] +\setuplettertext[\s!fr][\c!zip=] +\setuplettertext[\s!it][\c!zip=] +\setuplettertext[\s!es][\c!zip=] + +% country: + +\setuplettertext[\s!en][\c!country=Country] +\setuplettertext[\s!nl][\c!country=] +\setuplettertext[\s!de][\c!country=Land] +\setuplettertext[\s!fr][\c!country=] +\setuplettertext[\s!it][\c!country=] +\setuplettertext[\s!es][\c!country=] + +% street: + +\setuplettertext[\s!en][\c!street=Street] +\setuplettertext[\s!nl][\c!street=] +\setuplettertext[\s!de][\c!street=Stra\ssharp e] +\setuplettertext[\s!fr][\c!street=] +\setuplettertext[\s!it][\c!street=] +\setuplettertext[\s!es][\c!street=] + +% page: + +\setuplettertext[\s!en][\c!page=Page~] +\setuplettertext[\s!nl][\c!page=] +\setuplettertext[\s!de][\c!page=Seite~] +\setuplettertext[\s!fr][\c!page=] +\setuplettertext[\s!it][\c!page=] +\setuplettertext[\s!es][\c!page=] + +% pagenumber: + +\setuplettertext[\s!en][\c!pagenumber={Page , of }] +\setuplettertext[\s!nl][\c!pagenumber=] +\setuplettertext[\s!de][\c!pagenumber={Seite , von }] +\setuplettertext[\s!fr][\c!pagenumber=] +\setuplettertext[\s!it][\c!pagenumber=] +\setuplettertext[\s!es][\c!pagenumber=] + +% Files + +\useletterstyle[default,\currentmoduleparameter\c!style] + +\stopmodule + +\protect \endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-01.mkvi b/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-01.mkvi new file mode 100644 index 0000000000..524bd06a32 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-01.mkvi @@ -0,0 +1,919 @@ +%D \module +%D [ file=s-cor-01, +%D version=2013.07.31, +%D title=\CONTEXT\ User Module, +%D subtitle=Letters, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\unprotect + +\startmodule[letter] + +\usemodule[cor-00] +\usemodule[cor-06] + +\setupmodule + [\c!style=dinb] + +% Namespaces + +\installnamespace {letterlayerrenderings} +\installnamespace {lettersectionrenderings} + +% Commands + +\definecorrespondence[\v!letter] + +\def\defineletterlayer {\dodoubleargument\correspondence_layer_define [\v!letter]} +\def\definelettersection {\dodoubleargument\correspondence_section_define [\v!letter]} +\def\defineletterdescription {\dodoubleargument\correspondence_description_define [\v!letter]} +\def\defineletterhead {\dodoubleargument\correspondence_head_define [\v!letter]} + +\def\defineletterlayeralternative {\doquadrupleempty\correspondence_layer_alternative_define [\v!letter]} +\def\definelettersectionalternative {\doquadrupleempty\correspondence_section_alternative_define [\v!letter]} +\def\defineletterheadalternative {\doquadrupleempty\correspondence_head_alternative_define [\v!letter]} + +\def\defineletterelements {\dotripleargument\correspondence_elements_define [\v!letter]} +\def\setupletterelements {\dotripleargument\correspondence_elements_define [\v!letter]} + +\def\setupletterstyle {\dotripleargument\correspondence_style_setup [\v!letter]} +\def\setupletterlayer {\dotripleargument\correspondence_layer_setup [\v!letter]} +\def\setupletterframe {\dotripleargument\correspondence_frame_setup [\v!letter]} +\def\setupletterlayout {\dotripleargument\correspondence_layout_setup [\v!letter]} +\def\setuplettersection {\dotripleargument\correspondence_section_setup [\v!letter]} +\def\setupletterdescription {\dotripleargument\correspondence_description_setup [\v!letter]} +\def\setupletterhead {\dotripleargument\correspondence_head_setup [\v!letter]} +\def\setupletteroptions {\dodoubleargument\correspondence_option_setup [\v!letter]} +\def\setupletter {\dodoubleargument\correspondence_setup [\v!letter]} + +\def\setupletterlayeralternative {\dotripleargument\correspondence_layer_alternative_setup [\v!letter]} +\def\setuplettersectionalternative {\dotripleargument\correspondence_section_alternative_setup [\v!letter]} +\def\setupletterheadalternative {\dotripleargument\correspondence_head_alternative_setup [\v!letter]} + +\def\useletterstyle {\dodoubleargument\correspondence_file_load [\v!letter]} + +\def\defineletterelement {\doquadrupleargument\correspondence_element_define [\v!letter]} +\def\letterelement {\doquadrupleargument\correspondence_element_place [\v!letter]} + +\def\namedletterlayerparameter #element{\namedcorrespondencelayerparameter {\v!letter:#element}} +\def\namedletterframeparameter #element{\namedcorrespondenceframeparameter {\v!letter:#element}} +\def\namedlettersectionparameter#element{\namedcorrespondencesectionparameter{\v!letter:#element}} + +% Heading + +\defineletterhead [\v!letter\v!section] +\defineletterhead [\v!letter\v!subsection] + +% Layers + +\defineletterlayer [\v!head] +\defineletterlayer [\v!nexthead] +\defineletterlayer [\v!lefthead] +\defineletterlayer [\v!righthead] + +\defineletterlayer [\v!foot] +\defineletterlayer [\v!nextfoot] +\defineletterlayer [\v!leftfoot] +\defineletterlayer [\v!rightfoot] + +\defineletterlayer [\v!address] +\defineletterlayer [\v!backaddress] + +\defineletterlayer [\v!reference] +\defineletterlayer [\v!location] + +\defineletterlayer [\v!topmark] +\defineletterlayer [\v!botmark] +\defineletterlayer [\v!cutmark] +\defineletterlayer [\v!endmark] +\defineletterlayer [\v!usermark] + +\defineletterlayer [\v!lettermain] +\defineletterlayer [\v!letternext] + +% Section + +\definelettersection [\v!head] +\definelettersection [\v!date] +\definelettersection [\v!reference] +\definelettersection [\v!specialnotation] +\definelettersection [\v!address] +\definelettersection [\v!title] +\definelettersection [\v!subject] +\definelettersection [\v!opening] +\definelettersection [\v!content] +\definelettersection [\v!closing] +\definelettersection [\v!appendices] + +% Descriptions + +\defineletterdescription [\v!copy] +\defineletterdescription [\v!enclosure] +\defineletterdescription [\v!postscript] + +% Setups + +% layer: head + +\defineletterlayeralternative[\v!head:\s!default][\c!renderingsetup=\????letterlayerrenderings:\v!head:\s!default] + +\defineletterlayeralternative + [\v!head:\v!generic] + [\c!renderingsetup=\????letterlayerrenderings:\v!head:\v!generic, + \c!rule=\correspondencelayerparameter\c!rule, + \c!rulewidth=\correspondencelayerparameter\c!rulewidth, + \c!rulecolor=\correspondencelayerparameter\c!rulecolor, + \c!rulethickness=\correspondencelayerparameter\c!rulethickness] + +\defineletterlayeralternative[\v!head:\v!left ][\v!head:\v!generic][\c!align=\v!flushleft ] +\defineletterlayeralternative[\v!head:\v!middle ][\v!head:\v!generic][\c!align=\v!middle ] +\defineletterlayeralternative[\v!head:\v!right ][\v!head:\v!generic][\c!align=\v!flushright] + +\defineletterlayeralternative[\v!head:\v!gbrief ][\c!renderingsetup=\????letterlayerrenderings:\v!head:\v!gbrief ] + +\startsetups[\????letterlayerrenderings:\v!head:\s!default] + \def\\{\correspondencelayerparameter\c!separator} + \correspondenceparameter\c!fromname + \doifsomething{\correspondenceparameter\c!fromname}\\ + \correspondenceparameter\c!fromaddress +\stopsetups + +\startsetups[\????letterlayerrenderings:\v!head:\v!generic] + \edef\p_rulewidth {\correspondencelayeralternativeparameter\c!rulewidth } + \edef\p_rulethickness{\correspondencelayeralternativeparameter\c!rulethickness} + \edef\p_rulecolor {\correspondencelayeralternativeparameter\c!rulecolor } + \startframed[\c!frame=\v!off,\c!align=\correspondencelayeralternativeparameter\c!align,\c!width=\v!broad,\c!offset=\zeropoint] + \begingroup + \def\currentcorrespondencestyle{\v!letter:\c!fromname}% + \usecorrespondencestylestyleandcolor\c!style\c!color + \correspondenceparameter\c!fromname + \endgroup + \endgraf + \doifcommonelse{\correspondencelayeralternativeparameter\c!rule}{\v!top,\c!before,\v!yes}\donetrue\donefalse + \ifdone + \vskip-.5\lineheight + \dontleavehmode + \blackrule + [ \c!width=\ifx\p_rulewidth \empty\hsize \else\p_rulewidth \fi, + \c!height=\ifx\p_rulethickness\empty\linewidth\else\p_rulethickness\fi, + \c!color=\ifx\p_rulecolor \empty\s!black \else\p_rulecolor \fi] + \fi + \endgraf + \begingroup + \def\currentcorrespondencestyle{\v!letter:\c!fromaddress}% + \usecorrespondencestylestyleandcolor\c!style\c!color + \correspondenceparameter\c!fromaddress + \doifsomething{\correspondenceparameter\c!fromphone}{\\\correspondenceparameter\c!fromphone}% + \doifsomething{\correspondenceparameter\c!fromfax }{\\\correspondenceparameter\c!fromfax }% + \doifsomething{\correspondenceparameter\c!frommail }{\\\correspondenceparameter\c!frommail }% + \doifsomething{\correspondenceparameter\c!fromurl }{\\\correspondenceparameter\c!fromurl }% + \endgroup + \endgraf + \doifcommonelse{\correspondencelayeralternativeparameter\c!rule}{\v!bottom,\c!after,\v!yes}\donetrue\donefalse + \ifdone + \vskip-.5\lineheight + \dontleavehmode + \blackrule + [ \c!width=\ifx\p_rulewidth \empty\hsize \else\p_rulewidth \fi, + \c!height=\ifx\p_rulethickness\empty\linewidth\else\p_rulethickness\fi, + \c!color=\ifx\p_rulecolor \empty\s!black \else\p_rulecolor \fi] + \fi + \stopframed +\stopsetups + +\setupcorrespondencelayeralternative + [\c!commandbefore=\correspondencelayerparameter\c!commandbefore, + \c!commandafter=\correspondencelayerparameter\c!commandafter] + +\startsetups[\????letterlayerrenderings:\v!head:\v!gbrief] + \def\\{\correspondencelayerparameter\c!separator} + \correspondenceparameter\c!fromname + \hrule +\stopsetups + +% layer: nexthead + +\defineletterlayeralternative[\v!nexthead:\v!gbrief ][\c!renderingsetup=\????letterlayerrenderings:\v!nexthead:\v!gbrief ] +\defineletterlayeralternative[\v!nexthead:\v!fullblock ][\c!renderingsetup=\????letterlayerrenderings:\v!nexthead:\v!fullblock] +\defineletterlayeralternative[\v!nexthead:\v!hanging ][\c!renderingsetup=\????letterlayerrenderings:\v!nexthead:\v!hanging ] +\defineletterlayeralternative[\v!nexthead:\v!semiblock ][\c!renderingsetup=\????letterlayerrenderings:\v!nexthead:\v!semiblock] +\defineletterlayeralternative[\v!nexthead:\v!simplified][\c!renderingsetup=\????letterlayerrenderings:\v!nexthead:\v!fullblock] +\defineletterlayeralternative[\v!nexthead:\v!modified ][\c!renderingsetup=\????letterlayerrenderings:\v!nexthead:\v!hanging ] +\defineletterlayeralternative[\v!nexthead:\v!knuth ][\c!renderingsetup=\????letterlayerrenderings:\v!nexthead:\v!knuth ] + +\startsetups[\????letterlayerrenderings:\v!nexthead:\v!gbrief] + \maxaligned + {\rlap{\correspondenceparameter\c!fromname} + \midaligned{\leftlettertext\c!pagenumber\subpagenumber\rightlettertext\c!pagenumber\lastsubpagenumber} + \llap{\correspondenceparameter\c!date}} + \hairline +\stopsetups + +\startsetups[\????letterlayerrenderings:\v!nexthead:\v!fullblock] + \maxaligned + {\rlap{\correspondenceparameter\c!toname} + \midaligned{\subpagenumber} + \llap{\framed[\c!frame=\v!off,\c!location=\v!top,\c!align=\v!left] + {\correspondenceparameter\c!date \\ + \correspondenceparameter\c!reference}}} +\stopsetups + +\startsetups[\????letterlayerrenderings:\v!nexthead:\v!hanging] + \maxaligned + {\framed[\c!frame=\v!off,\c!location=\v!top,\c!align=v!right] + {\correspondenceparameter\c!toname \\ + \correspondenceparameter\c!date \\ + \correspondenceparameter\c!reference \\ + \lettertext\c!page\subpagenumber}} +\stopsetups + +\startsetups[\????letterlayerrenderings:\v!nexthead:\v!semiblock] + \maxaligned + {\rlap{\correspondenceparameter\c!toname} + \midaligned{\subpagenumber} + \llap{\correspondenceparameter\c!date}} +\stopsetups + +\startsetups[\????letterlayerrenderings:\v!nexthead:\v!knuth] + \maxaligned + {\rlap{\correspondenceparameter\c!toname} + \midaligned{\currentdate} + \llap{\lettertext\c!page\subpagenumber}} +\stopsetups + +% layer: lefthead + +% setups -> see s-cor-00.mkvi + +% layer: righthead + +% setups -> see s-cor-00.mkvi + +% layer: foot + +\defineletterlayeralternative[\v!foot:\v!gbrief ][\c!renderingsetup=\????letterlayerrenderings:\v!foot:\v!gbrief] +\defineletterlayeralternative[\v!foot:\v!pagenumber][\c!renderingsetup=\????letterlayerrenderings:\v!foot:\v!pagenumber] + +\startsetups[\????letterlayerrenderings:\v!foot:\v!gbrief] + \bTABLE[\c!frame=\v!off,\c!width=.25\hsize,\c!offset=\zeropoint] + \bTR[\c!style=\bfxx,\c!topframe=\v!on] + \bTD \lettertext\c!address \eTD + \bTD \lettertext\c!phone \eTD + \bTD \lettertext\c!email \eTD + \bTD \lettertext\c!bank \eTD + \eTR + \bTR + \bTD \correspondenceparameter\c!street \\\correspondenceparameter\c!city \eTD + \bTD \correspondenceparameter\c!phone \eTD + \bTD \correspondenceparameter\c!email \eTD + \bTD \correspondenceparameter\c!bankname\\\correspondenceparameter\c!banknumber\\\correspondenceparameter\c!accountnumber \eTD + \eTR + \eTABLE +\stopsetups + +\startsetups[\????letterlayerrenderings:\v!foot:\v!pagenumber] + \centerbox{\hbox{\begstrut\leftlettertext\c!pagenumber\subpagenumber\rightlettertext\c!pagenumber\lastsubpagenumber\endstrut}} +\stopsetups + +% layer: nextfoot + +% setups -> see s-cor-00.mkvi + +% layer: leftfoot + +% setups -> see s-cor-00.mkvi + +% layer: rightfoot + +% setups -> see s-cor-00.mkvi + +% layer: address + +\defineletterlayeralternative[\v!address:\s!default][\c!renderingsetup=\????letterlayerrenderings:\v!address:\s!default] +\defineletterlayeralternative[\v!address:\v!a ][\c!renderingsetup=\????letterlayerrenderings:\v!address:\v!a ] + +\startsetups[\????letterlayerrenderings:\v!address:\s!default] + \def\\{\correspondencelayerparameter\c!separator} + \doifsomething{\correspondenceparameter\c!dispatch}{\correspondenceparameter\c!dispatch\\} + \doifsomething{\correspondenceparameter\c!toname }{\correspondenceparameter\c!toname \\} + \correspondenceparameter\c!toaddress +\stopsetups + +\startsetups[\????letterlayerrenderings:\v!address:\v!a] + \def\\{\correspondencelayerparameter\c!separator} + \doifsomethingelse{\correspondenceparameter\c!dispatch} + {\correspondenceparameter\c!dispatch\\} % check number of lines! + {\blank[2*\v!line]} + \doifsomething{\correspondenceparameter\c!toname}{\correspondenceparameter\c!toname\\} + \correspondenceparameter\c!toaddress +\stopsetups + +% layer: backaddress + +\defineletterlayeralternative[\v!backaddress:\s!default][\c!renderingsetup=\????letterlayerrenderings:\v!backaddress:\s!default] +\defineletterlayeralternative[\v!backaddress:\v!auto ][\c!renderingsetup=\????letterlayerrenderings:\v!backaddress:\v!auto ] + +\startsetups[\????letterlayerrenderings:\v!backaddress:\s!default] + \def\\{\correspondencelayerparameter\c!separator} + \correspondenceparameter\c!fromname + \doifsomething{\correspondenceparameter\c!fromaddress}\\ + \correspondenceparameter\c!fromaddress +\stopsetups + +\startsetups[\????letterlayerrenderings:\v!backaddress:\v!auto] + \def\\{\correspondencelayerparameter\c!separator} + \doifsomethingelse{\correspondenceparameter\c!backaddress} + {\correspondenceparameter\c!backaddress} + {\correspondenceparameter\c!fromname + \doifsomething{\correspondenceparameter\c!fromaddress}\\ + \correspondenceparameter\c!fromaddress} +\stopsetups + +% layer: reference + +\defineletterlayeralternative[\v!reference:\s!default][\c!renderingsetup=\????letterlayerrenderings:\v!reference:\s!default] +\defineletterlayeralternative[\v!reference:\v!a ][\c!renderingsetup=\????letterlayerrenderings:\v!reference:\v!a ] +%defineletterlayeralternative[\v!reference:\v!top ][\c!renderingsetup=\????letterlayerrenderings:\v!reference:\v!a ] +\defineletterlayeralternative[\v!reference:\v!b ][\c!renderingsetup=\????letterlayerrenderings:\v!reference:\v!b ] +%defineletterlayeralternative[\v!reference:\v!block ][\c!renderingsetup=\????letterlayerrenderings:\v!reference:\v!b ] +\defineletterlayeralternative[\v!reference:\v!c ][\c!renderingsetup=\????letterlayerrenderings:\v!reference:\v!c ] +%defineletterlayeralternative[\v!reference:\v!line ][\c!renderingsetup=\????letterlayerrenderings:\v!reference:\v!c ] +\defineletterlayeralternative[\v!reference:\v!d ][\c!renderingsetup=\????letterlayerrenderings:\v!reference:\v!d ] +%defineletterlayeralternative[\v!reference:\v!table ][\c!renderingsetup=\????letterlayerrenderings:\v!reference:\v!d ] +\defineletterlayeralternative[\v!reference:\v!e ][\c!renderingsetup=\????letterlayerrenderings:\v!reference:\v!e ] +%defineletterlayeralternative[\v!reference:\v!width ][\c!renderingsetup=\????letterlayerrenderings:\v!reference:\v!e ] + + +\startsetups[\????letterlayerrenderings:\v!reference:\s!default] + \correspondenceparameter\c!reference +\stopsetups + +\startsetups[\????letterlayerrenderings:\v!reference:\v!a] + \ctxlua{thirddata.correspondence.letter.reference_a("\v!letter","\correspondencelayerparameter\c!list")} +\stopsetups + +\startsetups[\????letterlayerrenderings:\v!reference:\v!b] + \ctxlua{thirddata.correspondence.letter.reference_b("\v!letter","\correspondencelayerparameter\c!list")} +\stopsetups + +\startsetups[\????letterlayerrenderings:\v!reference:\v!c] + \ctxlua{thirddata.correspondence.letter.reference_c("\v!letter","\correspondencelayerparameter\c!list")} +\stopsetups + +\startsetups[\????letterlayerrenderings:\v!reference:\v!d] + \ctxlua{thirddata.correspondence.letter.reference_d("\v!letter","\correspondencelayerparameter\c!list")} +\stopsetups + +\startsetups[\????letterlayerrenderings:\v!reference:\v!e] + \ctxlua{thirddata.correspondence.letter.reference_e("\v!letter","\correspondencelayerparameter\c!list")} +\stopsetups + +% layer: location + +\defineletterlayeralternative[\v!location:\v!french][\c!renderingsetup=\????letterlayerrenderings:\v!location:\v!french] + +\startsetups[\????letterlayerrenderings:\v!location:\v!french] + \def\\{\correspondencelayerparameter\c!separator} + \doifsomething{\correspondenceparameter\c!place}{\correspondenceparameter\c!place\\} + \correspondenceparameter\c!date +\stopsetups + +% layer: topmark + +% setups -> see s-cor-00.mkvi + +% layer: botmark + +% setups -> see s-cor-00.mkvi + +% layer: cutmark + +% setups -> see s-cor-00.mkvi + +% layer: endmark + +% setups -> see s-cor-00.mkvi + +% layer: usermark + +% setups -> see s-cor-00.mkvi + +% layer: lettermain + +% setups -> see s-cor-00.mkvi + +% layer: letternext + +% setups -> see s-cor-00.mkvi + +% section: head + +\definelettersectionalternative[\v!head:\v!blockstyle][\c!renderingsetup=\????lettersectionrenderings:\v!head:\v!blockstyle] + +\startsetups[\????lettersectionrenderings:\v!head:\v!blockstyle] + \def\\{\correspondencesectionparameter\c!separator} + \correspondenceparameter\c!fromaddress +\stopsetups + +% section: date + +\definelettersectionalternative[\v!date:\v!blockstyle][\c!renderingsetup=\????lettersectionrenderings:\v!date:\v!blockstyle] + +\startsetups[\????lettersectionrenderings:\v!date:\v!blockstyle] + \def\\{\correspondencesectionparameter\c!separator} + \correspondenceparameter\c!date +\stopsetups + +% section: reference + +\definelettersectionalternative[\v!reference:\v!blockstyle][\c!renderingsetup=\????lettersectionrenderings:\v!reference:\v!blockstyle] + +\startsetups[\????lettersectionrenderings:\v!reference:\v!blockstyle] + \def\\{\correspondencesectionparameter\c!separator} + \correspondenceparameter\c!reference +\stopsetups + +% section: specialnotation + +\definelettersectionalternative[\v!specialnotation:\v!blockstyle][\c!renderingsetup=\????lettersectionrenderings:\v!specialnotation:\v!blockstyle] + +\startsetups[\????lettersectionrenderings:\v!specialnotation:\v!blockstyle] + \def\\{\correspondencesectionparameter\c!separator} + \correspondenceparameter\c!dispatch +\stopsetups + +% section: address + +\definelettersectionalternative[\v!address:\v!blockstyle][\c!renderingsetup=\????lettersectionrenderings:\v!address:\v!blockstyle] +\definelettersectionalternative[\v!address:\v!knuth ][\c!renderingsetup=\????lettersectionrenderings:\v!address:\v!blockstyle] + +\startsetups[\????lettersectionrenderings:\v!address:\v!blockstyle] + \def\\{\correspondencesectionparameter\c!separator} + \correspondenceparameter\c!toname + \doifsomething{\correspondenceparameter\c!toname}\\ + \correspondenceparameter\c!toaddress +\stopsetups + +% section: title + +\definelettersectionalternative[\v!title:\s!default][\c!renderingsetup=\????lettersectionrenderings:\v!title:\s!default] + +\startsetups[\????lettersectionrenderings:\v!title:\s!default] + \def\\{\correspondencesectionparameter\c!separator} + \doifsomethingelse{\correspondenceparameter\c!title} + {\correspondenceparameter\c!title} + {\lettertext\c!attention\correspondenceparameter\c!attention} +\stopsetups + +% section: subject + +\definelettersectionalternative[\v!subject:\s!default][\c!renderingsetup=\????lettersectionrenderings:\v!subject:\s!default] + +\startsetups[\????lettersectionrenderings:\v!subject:\s!default] + \def\\{\correspondencesectionparameter\c!separator} + \lettertext\c!subject\correspondenceparameter\c!subject +\stopsetups + +% section: opening + +\definelettersectionalternative[\v!opening:\s!default][\c!renderingsetup=\????lettersectionrenderings:\v!opening:\s!default] +\definelettersectionalternative[\v!opening:\v!french ][\c!renderingsetup=\????lettersectionrenderings:\v!opening:\v!french ] + +\startsetups[\????lettersectionrenderings:\v!opening:\s!default] + \def\\{\correspondencesectionparameter\c!separator} + \doifsomethingelse{\correspondenceparameter\c!opening} + {\correspondenceparameter\c!opening} + {\correspondenceparameter\c!salutation} +\stopsetups + +\startsetups[\????lettersectionrenderings:\v!opening:\v!french] + \def\\{\correspondencesectionparameter\c!separator} + \doifsomething{\correspondenceoptionparameter\c!indenting}{\setupindenting[\correspondenceoptionparameter\c!indenting]} + \doifsomethingelse{\correspondenceparameter\c!opening} + {\correspondenceparameter\c!opening} + {\correspondenceparameter\c!salutation} +\stopsetups + +% section: content + +\definelettersectionalternative[\v!content:\s!default][\c!renderingsetup=\????lettersectionrenderings:\v!content:\s!default] + +\startsetups[\????lettersectionrenderings:\v!content:\s!default] + \getbufferdata[\????correspondencebuffer\v!letter] +\stopsetups + +% section: closing + +\definelettersectionalternative[\v!closing:\s!default ][\c!renderingsetup=\????lettersectionrenderings:\v!closing:\s!default ] +\definelettersectionalternative[\v!closing:\v!french ][\c!renderingsetup=\????lettersectionrenderings:\v!closing:\v!french ] +\definelettersectionalternative[\v!closing:\v!simplified][\c!renderingsetup=\????lettersectionrenderings:\v!closing:\v!simplified] +\definelettersectionalternative[\v!closing:\v!knuth ][\c!renderingsetup=\????lettersectionrenderings:\v!closing:\v!knuth ] + +\startsetups[\????lettersectionrenderings:\v!closing:\s!default] + \def\\{\correspondencesectionparameter\c!separator} + \correspondenceparameter\c!closing + \doifsomething{\correspondenceparameter\c!signature} + {\blank[\correspondencesectionparameter\c!spaceinbetween] + \correspondenceparameter\c!signature} +\stopsetups + +\startsetups[\????lettersectionrenderings:\v!closing:\v!french] + \def\\{\correspondencesectionparameter\c!separator} + \doifsomething{\correspondenceoptionparameter\c!indenting}{\setupindenting[\correspondenceoptionparameter\c!indenting,\v!first]} + \correspondenceparameter\c!closing + \doifsomething{\correspondenceparameter\c!signature} + {\blank[\correspondencesectionparameter\c!spaceinbetween] + \raggedcenter\doadaptleftskip{.5\textwidth} + \correspondenceparameter\c!signature\endgraf} +\stopsetups + +\startsetups[\????lettersectionrenderings:\v!closing:\v!simplified] + \def\\{\correspondencesectionparameter\c!separator} + \doifsomething{\correspondenceparameter\c!signature}{\blank[\correspondencesectionparameter\c!spaceinbetween]} + \correspondenceparameter\c!signature +\stopsetups + +\startsetups[\????lettersectionrenderings:\v!closing:\v!knuth] + \def\\{\correspondencesectionparameter\c!separator} + \doadaptleftskip{\dimexpr\textwidth/13*8\relax} + \correspondenceparameter\c!closing + \doifsomething{\correspondenceparameter\c!signature} + {\blank[\correspondencesectionparameter\c!spaceinbetween] + \correspondenceparameter\c!signature} +\stopsetups + +% section: appendices + +\definelettersectionalternative[\v!appendices:\s!default][\c!renderingsetup=\????lettersectionrenderings:\v!appendices:\s!default] + +\startsetups[\????lettersectionrenderings:\v!appendices:\s!default] + \def\\{\correspondencesectionparameter\c!separator} + \startpacked + \processcommacommand[\correspondence_elements_access\v!letter\v!description]{\correspondence_description_place\v!letter} + \stoppacked +\stopsetups + +% for backwards compatibility + +\startsetups[\v!letter:\v!place] +\correspondence_place[\v!letter] +\stopsetups + +% Extras + +\appendtoks + \ifx\currentcorrespondence\v!letter + \edef\p_correspondence_option_option{\correspondenceoptionparameter\c!option}% + \ifx\p_correspondence_option_option\empty \else + \processallactionsinset + [\correspondenceoptionparameter\c!option] + [ \v!test=>{\useletterstyle[test]}, + \v!setups=>{\useletterstyle[setups]}]% + \fi + \fi +\to \t_correspondence_before + +\appendtoks + \ifx\currentcorrespondence\v!letter + \edef\p_correspondence_option_marking{\correspondenceoptionparameter\c!marking}% + \ifx\p_correspondence_option_marking\v!yes + \setupletterlayer[\v!topmark,\v!botmark,\v!cutmark,\v!endmark,\v!usermark][\c!state=\v!start]% + \else\ifx\p_correspondence_option_marking\v!no + \setupletterlayer[\v!topmark,\v!botmark,\v!cutmark,\v!endmark,\v!usermark][\c!state=\v!stop ]% + \fi\fi + \fi +\to \t_correspondence_before + +\appendtoks + \ifx\currentcorrespondence\v!letter + \edef\p_correspondence_option_position{\correspondenceoptionparameter\c!position}% + \ifx\p_correspondence_option_position\v!yes % low level code, I need a better solution for this! + \setbox\scratchbox\vbox + {\edef\currentcorrespondencelayer {\v!letter:\v!reference}% + \edef\currentcorrespondenceenvironment{\v!letter}% + \correspondence_layer_alternative_place}% + \normalexpanded + {\setupletterlayout + [\v!firstpage] + [\c!topspace=\dimexpr\namedletterlayerparameter\v!reference\c!y+\ht\scratchbox+\namedletterlayerparameter\v!reference\c!distance\relax]}% + \fi + \fi +\to \t_correspondence_before + +\appendtoks + \ifx\currentcorrespondence\v!letter + \edef\p_correspondence_option_indenting{\correspondenceoptionparameter\c!indenting}% + \ifx\p_correspondence_option_indenting\empty \else + \setuplettersection[\v!content][\c!indenting=\p_correspondence_option_indenting]% + \fi + \fi +\to \t_correspondence_before + +\appendtoks % provide this also for the other modules + \ifx\currentcorrespondence\v!letter + \edef\p_correspondence_addressentry{\correspondenceparameter\c!addressentry}% + \ifx\p_correspondence_addressentry\empty \else + \let\currentaddressentry\p_correspondence_addressentry + \fi + \fi +\to \t_correspondence_before + +% Labels + +\definelabelclass [letter] + +% name: + +\setuplettertext[\s!en][\c!name=Name] +\setuplettertext[\s!nl][\c!name=] +\setuplettertext[\s!de][\c!name=Name] +\setuplettertext[\s!fr][\c!name=Nom] +\setuplettertext[\s!it][\c!name=] +\setuplettertext[\s!es][\c!name=] + +% room: + +\setuplettertext[\s!en][\c!room=Room] +\setuplettertext[\s!nl][\c!room=] +\setuplettertext[\s!de][\c!room=Zimmer] +\setuplettertext[\s!fr][\c!room=Salle] % Salle or Pièce +\setuplettertext[\s!it][\c!room=] +\setuplettertext[\s!es][\c!room=] + +% yourref: + +\setuplettertext[\s!en][\c!yourref=Your ref.] +\setuplettertext[\s!nl][\c!yourref=Uw kenmerk] +\setuplettertext[\s!de][\c!yourref=Ihr Zeichen] +\setuplettertext[\s!fr][\c!yourref=Vos références] +\setuplettertext[\s!it][\c!yourref=Vs./Rif.] +\setuplettertext[\s!es][\c!yourref=Su ref.] + +% yourmail: + +\setuplettertext[\s!en][\c!yourmail=Your letter of] +\setuplettertext[\s!nl][\c!yourmail=Uw brief van] +\setuplettertext[\s!de][\c!yourmail=Ihre Nachricht vom] +\setuplettertext[\s!fr][\c!yourmail=Votre lettre du] +\setuplettertext[\s!it][\c!yourmail=Vs.~lettera del] +\setuplettertext[\s!es][\c!yourmail=Su carta de] + +% myref: + +\setuplettertext[\s!en][\c!myref=Our ref.] +\setuplettertext[\s!nl][\c!myref=Ons kenmerk] +\setuplettertext[\s!de][\c!myref=Unser Zeichen] +\setuplettertext[\s!fr][\c!myref=Nos références] +\setuplettertext[\s!it][\c!myref=Ns./Rif.] +\setuplettertext[\s!es][\c!myref=Nuestra ref.] + +% mymail: + +\setuplettertext[\s!en][\c!mymail=Our letter of] +\setuplettertext[\s!nl][\c!mymail=Ons brief van] +\setuplettertext[\s!de][\c!mymail=Unsere Nachricht vom] +\setuplettertext[\s!fr][\c!mymail=Notre lettre du] +\setuplettertext[\s!it][\c!mymail=] +\setuplettertext[\s!es][\c!mymail=] + +% customer: + +\setuplettertext[\s!en][\c!customer=Customer no.] +\setuplettertext[\s!nl][\c!customer=Klant No.] +\setuplettertext[\s!de][\c!customer=Kundennummer] +\setuplettertext[\s!fr][\c!customer=Numéro de client] +\setuplettertext[\s!it][\c!customer=Nr.~cliente] +\setuplettertext[\s!es][\c!customer=No. de cliente] + +% invoice: + +\setuplettertext[\s!en][\c!invoice=Invoice no.] +\setuplettertext[\s!nl][\c!invoice=Rekening No.] +\setuplettertext[\s!de][\c!invoice=Rechnungsnummer] +\setuplettertext[\s!fr][\c!invoice=Numéro de facture] +\setuplettertext[\s!it][\c!invoice=Nr.~fattura] +\setuplettertext[\s!es][\c!invoice=No. de factura] + +% attention: + +\setuplettertext[\s!en][\c!attention=] % Attention +\setuplettertext[\s!nl][\c!attention=] +\setuplettertext[\s!de][\c!attention=] +\setuplettertext[\s!fr][\c!attention=] +\setuplettertext[\s!it][\c!attention=] +\setuplettertext[\s!es][\c!attention=] + +% subject: + +\setuplettertext[\s!en][\c!subject=] % Subject +\setuplettertext[\s!nl][\c!subject=] % Onderwerp +\setuplettertext[\s!de][\c!subject=] % Betrifft +\setuplettertext[\s!fr][\c!subject=] % Concernant or Sujet +\setuplettertext[\s!it][\c!subject=] % Oggetto +\setuplettertext[\s!es][\c!subject=] % Asunto + +% copy: + +\setuplettertext[\s!en][\c!copy=cc: ] +\setuplettertext[\s!nl][\c!copy=Kopie aan: ] +\setuplettertext[\s!de][\c!copy=Kopien an: ] +\setuplettertext[\s!fr][\c!copy=Copieà: ] +\setuplettertext[\s!it][\c!copy=Per conoscenza: ] +\setuplettertext[\s!es][\c!copy=Copias: ] + +% enclosure: + +\setuplettertext[\s!en][\c!enclosure=encl: ] +\setuplettertext[\s!nl][\c!enclosure=Bijlage(n): ] +\setuplettertext[\s!de][\c!enclosure=Anlagen: ] +\setuplettertext[\s!fr][\c!enclosure=Annexes: ] +\setuplettertext[\s!it][\c!enclosure=Allegato: ] +\setuplettertext[\s!es][\c!enclosure=Adjunto: ] + +% to: + +\setuplettertext[\s!en][\c!to=To] +\setuplettertext[\s!nl][\c!to=Aan] +\setuplettertext[\s!de][\c!to=An] +\setuplettertext[\s!fr][\c!to=À] +\setuplettertext[\s!it][\c!to=A] +\setuplettertext[\s!es][\c!to=A] + +% toname: + +\setuplettertext[\s!en][\c!toname=To] +\setuplettertext[\s!nl][\c!toname=Aan] +\setuplettertext[\s!de][\c!toname=An] +\setuplettertext[\s!fr][\c!toname=À] +\setuplettertext[\s!it][\c!toname=A] +\setuplettertext[\s!es][\c!toname=A] + +% from: + +\setuplettertext[\s!en][\c!from=From] +\setuplettertext[\s!nl][\c!from=Van] +\setuplettertext[\s!de][\c!from=Von] +\setuplettertext[\s!fr][\c!from=De] +\setuplettertext[\s!it][\c!from=Da] +\setuplettertext[\s!es][\c!from=De] + +% fromname: + +\setuplettertext[\s!en][\c!fromname=From] +\setuplettertext[\s!nl][\c!fromname=Van] +\setuplettertext[\s!de][\c!fromname=Von] +\setuplettertext[\s!fr][\c!fromname=De] +\setuplettertext[\s!it][\c!fromname=Da] +\setuplettertext[\s!es][\c!fromname=De] + +% date: + +\setuplettertext[\s!en][\c!date=Date] +\setuplettertext[\s!nl][\c!date=Datum] +\setuplettertext[\s!de][\c!date=Datum] +\setuplettertext[\s!fr][\c!date=Date] +\setuplettertext[\s!it][\c!date=Data] +\setuplettertext[\s!es][\c!date=Fecha] + +% phone: + +\setuplettertext[\s!en][\c!phone=Phone] +\setuplettertext[\s!nl][\c!phone=Telefoon] +\setuplettertext[\s!de][\c!phone=Telefon] +\setuplettertext[\s!fr][\c!phone=Téléphone] +\setuplettertext[\s!it][\c!phone=Telefono] +\setuplettertext[\s!es][\c!phone=Teléfono] + +% fax: + +\setuplettertext[\s!en][\c!fax=Fax] +\setuplettertext[\s!nl][\c!fax=Fax] +\setuplettertext[\s!de][\c!fax=Fax] +\setuplettertext[\s!fr][\c!fax=Téléfax] % or Fax +\setuplettertext[\s!it][\c!fax=Fax] +\setuplettertext[\s!es][\c!fax=Fax] + +% email: + +\setuplettertext[\s!en][\c!email=Email] +\setuplettertext[\s!nl][\c!email=E–mail] +\setuplettertext[\s!de][\c!email=E-Mail] +\setuplettertext[\s!fr][\c!email=Courriel] % Adresse électronique +\setuplettertext[\s!it][\c!email=Email] +\setuplettertext[\s!es][\c!email=Email] + +% url: + +\setuplettertext[\s!en][\c!url=Url] +\setuplettertext[\s!nl][\c!url=URL] +\setuplettertext[\s!de][\c!url=URL] +\setuplettertext[\s!fr][\c!url=Site web] +\setuplettertext[\s!it][\c!url=Sito Web] +\setuplettertext[\s!es][\c!url=URL] + +% bank: + +\setuplettertext[\s!en][\c!bank=Bank account] +\setuplettertext[\s!nl][\c!bank=Bankrekening] +\setuplettertext[\s!de][\c!bank=Bankverbindung] +\setuplettertext[\s!fr][\c!bank=Compte en banque] +\setuplettertext[\s!it][\c!bank=Conto bancario] +\setuplettertext[\s!es][\c!bank=Cuenta bancaria] + +% organization: + +\setuplettertext[\s!en][\c!organization=Organization] +\setuplettertext[\s!nl][\c!organization=] +\setuplettertext[\s!de][\c!organization=Organisation] +\setuplettertext[\s!fr][\c!organization=] +\setuplettertext[\s!it][\c!organization=] +\setuplettertext[\s!es][\c!organization=] + +% city: + +\setuplettertext[\s!en][\c!city=City] +\setuplettertext[\s!nl][\c!city=] +\setuplettertext[\s!de][\c!city=Stadt] +\setuplettertext[\s!fr][\c!city=] +\setuplettertext[\s!it][\c!city=] +\setuplettertext[\s!es][\c!city=] + +% zip: + +\setuplettertext[\s!en][\c!zip=Zip] +\setuplettertext[\s!nl][\c!zip=] +\setuplettertext[\s!de][\c!zip=PLZ] +\setuplettertext[\s!fr][\c!zip=] +\setuplettertext[\s!it][\c!zip=] +\setuplettertext[\s!es][\c!zip=] + +% country: + +\setuplettertext[\s!en][\c!country=Country] +\setuplettertext[\s!nl][\c!country=] +\setuplettertext[\s!de][\c!country=Land] +\setuplettertext[\s!fr][\c!country=] +\setuplettertext[\s!it][\c!country=] +\setuplettertext[\s!es][\c!country=] + +% street: + +\setuplettertext[\s!en][\c!street=Street] +\setuplettertext[\s!nl][\c!street=] +\setuplettertext[\s!de][\c!street=Straße] +\setuplettertext[\s!fr][\c!street=] +\setuplettertext[\s!it][\c!street=] +\setuplettertext[\s!es][\c!street=] + +% page: + +\setuplettertext[\s!en][\c!page=Page~] +\setuplettertext[\s!nl][\c!page=] +\setuplettertext[\s!de][\c!page=Seite~] +\setuplettertext[\s!fr][\c!page=] +\setuplettertext[\s!it][\c!page=] +\setuplettertext[\s!es][\c!page=] + +% pagenumber: + +\setuplettertext[\s!en][\c!pagenumber={Page , of }] +\setuplettertext[\s!nl][\c!pagenumber=] +\setuplettertext[\s!de][\c!pagenumber={Seite , von }] +\setuplettertext[\s!fr][\c!pagenumber=] +\setuplettertext[\s!it][\c!pagenumber=] +\setuplettertext[\s!es][\c!pagenumber=] + +% address: + +\setuplettertext[\s!en][\c!address=Address] +\setuplettertext[\s!nl][\c!address=] +\setuplettertext[\s!de][\c!address=Adresse] +\setuplettertext[\s!fr][\c!address=] +\setuplettertext[\s!it][\c!address=] +\setuplettertext[\s!es][\c!address=] + +% Files + +\useletterstyle[default,\currentmoduleparameter\c!style] + +\stopmodule + +\protect \endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-02.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-02.mkii new file mode 100644 index 0000000000..69206f144a --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-02.mkii @@ -0,0 +1,428 @@ +%D \module +%D [ file=s-cor-02, +%D version=2012.06.10, +%D title=\CONTEXT\ User Module, +%D subtitle=Memos, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\unprotect + +\startmodule[memo] + +\usemodule[cor-00] + +\setupmodule + [\c!style=memo] + +% Commands + +\definecorrespondence[\v!memo] + +\def\definememolayer {\dodoubleargument\definecorrespondencelayer [\v!memo]} +\def\definememosection {\dodoubleargument\definecorrespondencesection [\v!memo]} +\def\definememodescription {\dodoubleargument\definecorrespondencedescription [\v!memo]} + +\def\definememoelements {\dotripleargument\definecorrespondenceelements [\v!memo]} +\def\setupmemoelements {\dotripleargument\setupcorrespondenceelements [\v!memo]} + +\def\setupmemostyle {\dotripleargument\setupcorrespondencestyle [\v!memo]} +\def\setupmemolayer {\dotripleargument\setupcorrespondencelayer [\v!memo]} +\def\setupmemoframe {\dotripleargument\setupcorrespondenceframe [\v!memo]} +\def\setupmemolayout {\dotripleargument\setupcorrespondencelayout [\v!memo]} +\def\setupmemosection {\dotripleargument\setupcorrespondencesection [\v!memo]} +\def\setupmemodescription {\dotripleargument\setupcorrespondencedescription [\v!memo]} +\def\setupmemooptions {\dodoubleargument\setupcorrespondenceoption [\v!memo]} +\def\setupmemo {\dodoubleargument\setupcorrespondence [\v!memo]} + +\def\usememostyle {\dodoubleargument\loadcorrespondencefile [\v!memo]} + +\def\definememoelement {\doquadrupleargument\definecorrespondenceelement [\v!memo]} +\def\memoelement {\doquadrupleargument\placecorrespondenceelement [\v!memo]} + +\def\namedmemolayerparameter #1{\namedcorrespondencelayerparameter {\v!memo:#1}} +\def\namedmemoframeparameter #1{\namedcorrespondenceframeparameter {\v!memo:#1}} +\def\namedmemosectionparameter#1{\namedcorrespondencesectionparameter{\v!memo:#1}} + +% Layers + +\definememolayer [\v!head] +\definememolayer [\v!nexthead] +\definememolayer [\v!lefthead] +\definememolayer [\v!righthead] + +\definememolayer [\v!foot] +\definememolayer [\v!nextfoot] +\definememolayer [\v!leftfoot] +\definememolayer [\v!rightfoot] + +\definememolayer [\v!topmark] +\definememolayer [\v!botmark] +\definememolayer [\v!cutmark] +\definememolayer [\v!endmark] +\definememolayer [\v!usermark] + +\definememolayer [\v!memomain] +\definememolayer [\v!memonext] + +% Section + +\definememosection [\v!head] +\definememosection [\v!date] +\definememosection [\v!reference] +\definememosection [\v!specialnotation] +\definememosection [\v!address] +\definememosection [\v!title] +\definememosection [\v!opening] +\definememosection [\v!subject] +\definememosection [\v!content] +\definememosection [\v!closing] +\definememosection [\v!appendices] + +% Descriptions + +\definememodescription [\v!copy] +\definememodescription [\v!enclosure] +\definememodescription [\v!postscript] + +% Setups + +% layer: head + +\definememoelement[\v!layer][\v!head][\v!setups] + {\texsetup{\v!memo:\v!layer:\v!head}} + +% layer: nexthead + +\definememoelement[\v!layer][\v!nexthead][\v!setups] + {\texsetup{\v!memo:\v!layer:\v!nexthead}} + +% layer: lefthead + +\definememoelement[\v!layer][\v!lefthead][\v!setups] + {\texsetup{\v!memo:\v!layer:\v!lefthead}} + +% layer: righthead + +\definememoelement[\v!layer][\v!righthead][\v!setups] + {\texsetup{\v!memo:\v!layer:\v!righthead}} + +% layer: foot + +\definememoelement[\v!layer][\v!foot][\v!pagenumber] + {\centerbox{\hbox{\begstrut\leftmemotext\c!pagenumber\subpagenumber\rightmemotext\c!pagenumber\lastsubpagenumber\endstrut}}} + +% layer: topmark + +\definememoelement[\v!layer][\v!topmark][\v!setups] + {\texsetup{\v!memo:\v!layer:\v!topmark}} + +% layer: botmark + +\definememoelement[\v!layer][\v!botmark][\v!setups] + {\texsetup{\v!memo:\v!layer:\v!botmark}} + +% layer: cutmark + +\definememoelement[\v!layer][\v!cutmark][\v!setups] + {\texsetup{\v!memo:\v!layer:\v!cutmark}} + +% layer: endmark + +\definememoelement[\v!layer][\v!endmark][\v!setups] + {\texsetup{\v!memo:\v!layer:\v!endmark}} + +% layer: usermark + +\definememoelement[\v!layer][\v!usermark][\v!setups] + {\texsetup{\v!memo:\v!layer:\v!usermark}} + +% layer: memomain + +\definememoelement[\v!layer][\v!memomain][\v!setups] + {\texsetup{\v!memo:\v!layer:\v!memomain}} + +% layer: memonext + +\definememoelement[\v!layer][\v!memonext][\v!setups] + {\texsetup{\v!memo:\v!layer:\v!memonext}} + +% section: head + +\definememoelement[\v!section][\v!head][\s!default] + {\def\\{\correspondencesectionparameter\c!separator}% + \correspondenceparameter\c!fromaddress} + +\definememoelement[\v!section][\v!head][\v!memo] + {\def\\{\correspondencesectionparameter\c!separator}% + \startpacked + \doifsomething{\correspondenceparameter\c!fromname}{\memotext\c!fromname \correspondenceparameter\c!fromname \par} + \doifsomething{\correspondenceparameter\c!date }{\memotext\c!date \correspondenceparameter\c!date \par} + \doifsomething{\correspondenceparameter\c!toname }{\memotext\c!toname \correspondenceparameter\c!toname \par} + \doifsomething{\correspondenceparameter\c!subject }{\memotext\c!subject \correspondenceparameter\c!subject \par} + \stoppacked} + +\unexpanded\def\doformatmemoheadTABLE#1% + {\doifsomething{\correspondenceparameter#1} + {\NC % label + \def\currentcorrespondencestyle{\v!memo:#1}% + \usecorrespondencestylestyleandcolor\c!titlestyle\c!titlecolor + \memotext#1 + \EQ % text + \def\currentcorrespondencestyle{\v!memo:#1}% + \usecorrespondencestylestyleandcolor\c!textstyle\c!textcolor + \correspondenceparameter#1 + \NC\NR}} + +\definememoelement[\v!section][\v!head][\v!table] + {\def\\{\correspondencesectionparameter\c!separator}% + \starttabulate[|l|p|] + \doformatmemoheadTABLE\v!fromname + \doformatmemoheadTABLE\v!date + \doformatmemoheadTABLE\v!toname + \doformatmemoheadTABLE\v!subject + \stoptabulate} + +\unexpanded\def\doformatmemoheadMARGIN#1% + {\doifsomething{\correspondenceparameter#1} + {\def\currentcorrespondencestyle{\v!memo:#1}% + \dontleavehmode\llap\bgroup % label + \usecorrespondencestylestyleandcolor\c!titlestyle\c!titlecolor + \memotext#1 + \hskip\leftmargindistance + \egroup + \bgroup + \usecorrespondencestylestyleandcolor\c!textstyle\c!textcolor + \correspondenceparameter#1 + \egroup + \par}} + +\definememoelement[\v!section][\v!head][\v!margin] + {\def\\{\correspondencesectionparameter\c!separator}% + \startpacked + \doformatmemoheadMARGIN\c!fromname + \doformatmemoheadMARGIN\c!date + \doformatmemoheadMARGIN\c!toname + \doformatmemoheadMARGIN\c!subject + \stoppacked} + +\definememoelement[\v!section][\v!head][\v!setups] + {\texsetup{\v!memo:\v!section:\v!head}} + +% section: date + +\definememoelement[\v!section][\v!date][\s!default] + {\correspondenceparameter\c!date} + +\definememoelement[\v!section][\v!date][\v!setups] + {\texsetup{\v!memo:\v!section:\v!date}} + +% section: reference + +\definememoelement[\v!section][\v!reference][\s!default] + {\def\\{\correspondencesectionparameter\c!separator}% + \correspondenceparameter\c!reference} + +\definememoelement[\v!section][\v!reference][\v!setups] + {\texsetup{\v!memo:\v!section:\v!reference}} + +% section: specialnotation + +\definememoelement[\v!section][\v!specialnotation][\s!default] + {\def\\{\correspondencesectionparameter\c!separator}% + \correspondenceparameter\c!dispatch} + +\definememoelement[\v!section][\v!specialnotation][\v!setups] + {\texsetup{\v!memo:\v!section:\v!specialnotation}} + +% section: address + +\definememoelement[\v!section][\v!address][\s!default] + {\def\\{\correspondencesectionparameter\c!separator}% + \correspondenceparameter\c!toname + \doifsomething{\correspondenceparameter\c!toname}\\ + \correspondenceparameter\c!toaddress} + +\definememoelement[\v!section][\v!address][\v!setups] + {\texsetup{\v!memo:\v!section:\v!address}} + +% section: title + +\definememoelement[\v!section][\v!title][\s!default] + {\def\\{\correspondencesectionparameter\c!separator}% + \correspondenceparameter\c!title} + +\definememoelement[\v!section][\v!title][\v!setups] + {\texsetup{\v!memo:\v!section:\v!title}} + +% section: opening + +\definememoelement[\v!section][\v!opening][\s!default] + {\def\\{\correspondencesectionparameter\c!separator}% + \correspondenceparameter\c!opening} + +\definememoelement[\v!section][\v!opening][\v!setups] + {\texsetup{\v!memo:\v!section:\v!opening}} + +% section: subject + +\definememoelement[\v!section][\v!subject][\s!default] + {\def\\{\correspondencesectionparameter\c!separator}% + \memotext\c!subject\correspondenceparameter\c!subject} + +\definememoelement[\v!section][\v!subject][\v!setups] + {\texsetup{\v!memo:\v!section:\v!subject}} + +% section: content + +\definememoelement[\v!section][\v!content][\s!default] + {\setupbuffer[\c!before=,\c!after=]% + \getbuffer [\????correspondencebuffer\v!memo]} + +\definememoelement[\v!section][\v!content][\v!setups] + {\texsetup{\v!memo:\v!section:\v!content}} + +% section: closing + +\definememoelement[\v!section][\v!closing][\s!default] + {\def\\{\correspondencesectionparameter\c!separator}% + \correspondenceparameter\c!closing + \doifsomething{\correspondenceparameter\c!signature} + {\blank[\correspondencesectionparameter\c!spaceinbetween]% + \correspondenceparameter\c!signature}} + +\definememoelement[\v!section][\v!closing][\v!setups] + {\texsetup{\v!memo:\v!section:\v!closing}} + +% section: appendices + +\definememoelement[\v!section][\v!appendices][\s!default] + {\def\\{\correspondencesectionparameter\c!separator}% + \startpacked + \expanded{\processcommalistwithparameters[\accesscorrespondenceelements\v!memo\v!description]}{\placecorrespondencedescription[\v!memo]}% + \stoppacked} + +\startsetups[\v!memo:\v!section:\v!appendices] +\def\\{\correspondencesectionparameter\c!separator} +\memoelement[\v!section][\v!appendices][\correspondencesectionparameter\c!alternative] +\stopsetups + +\startsetups[\v!memo:\v!place] +\placecorrespondence[\v!memo] +\stopsetups + +% Extras + +\appendtoks + \ifx\currentcorrespondence\v!memo + \processallactionsinset + [\correspondenceoptionparameter\c!option] + [ \v!test=>{\usememostyle[test]}, + \v!setups=>{\usememostyle[setups]}]% + \fi +\to \everybeforecorrespondence + +\appendtoks + \ifx\currentcorrespondence\v!memo + \doif{\correspondenceoptionparameter\c!marking}\v!no{\setupmemolayer[\v!topmark,\v!botmark,\v!cutmark,\v!endmark,\v!usermark][\c!state=\v!stop]}% + \fi +\to \everybeforecorrespondence + +% Labels + +\def\????memotext{@@@@memotext} + +\def\setupmemotext + {\dodoubleempty\dosetupmemotext} + +\def\dosetupmemotext[#1][#2]% + {\ifsecondargument + \def\dodosetupmemotext##1{\setuplabeltext[#1][\????memotext##1]}% + \processcommalist[#2]\dodosetupmemotext + \else + \def\dodosetupmemotext##1{\setuplabeltext [\????memotext##1]}% + \processcommalist[#1]\dodosetupmemotext + \fi} + +\def\memotext #1{\labeltext {\????memotext#1}} +\def\leftmemotext #1{\leftlabeltext {\????memotext#1}} +\def\rightmemotext#1{\rightlabeltext{\????memotext#1}} + +% pagenumber: + +\setupmemotext[\s!en][\c!pagenumber={Page , of }] +\setupmemotext[\s!nl][\c!pagenumber=] +\setupmemotext[\s!de][\c!pagenumber={Seite , von }] +\setupmemotext[\s!fr][\c!pagenumber=] +\setupmemotext[\s!it][\c!pagenumber=] +\setupmemotext[\s!es][\c!pagenumber=] + +% date: + +\setupmemotext[\s!en][\c!date=Date: ] +\setupmemotext[\s!nl][\c!date=Datum: ] +\setupmemotext[\s!de][\c!date=Datum: ] +\setupmemotext[\s!fr][\c!date=Date\thinspace: ] +\setupmemotext[\s!it][\c!date=Data: ] +\setupmemotext[\s!es][\c!date=Fecha: ] + +% fromname: + +\setupmemotext[\s!en][\c!fromname=From: ] +\setupmemotext[\s!nl][\c!fromname=Van: ] +\setupmemotext[\s!de][\c!fromname=Von: ] +\setupmemotext[\s!fr][\c!fromname=De\thinspace: ] +\setupmemotext[\s!it][\c!fromname=Da: ] +\setupmemotext[\s!es][\c!fromname=De: ] + +% toname: + +\setupmemotext[\s!en][\c!toname=To: ] +\setupmemotext[\s!nl][\c!toname=Aan: ] +\setupmemotext[\s!de][\c!toname=An: ] +\setupmemotext[\s!fr][\c!toname=\Agrave\thinspace: ] +\setupmemotext[\s!it][\c!toname=A: ] +\setupmemotext[\s!es][\c!toname=A: ] + +% subject: + +\setupmemotext[\s!en][\c!subject=Subject: ] +\setupmemotext[\s!nl][\c!subject=Onderwerp: ] +\setupmemotext[\s!de][\c!subject=Betrifft: ] +\setupmemotext[\s!fr][\c!subject=Concernant\thinspace: ] +\setupmemotext[\s!it][\c!subject=Oggetto: ] +\setupmemotext[\s!es][\c!subject=Asunto: ] + +% address: + +\setupmemotext[\s!en][\c!address=Address] +\setupmemotext[\s!nl][\c!address=] +\setupmemotext[\s!de][\c!address=Adresse] +\setupmemotext[\s!fr][\c!address=] +\setupmemotext[\s!it][\c!address=] +\setupmemotext[\s!es][\c!address=] + +% Files + +\usememostyle[default,\currentmoduleparameter\c!style] + +\stopmodule + +\protect \endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-02.mkvi b/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-02.mkvi new file mode 100644 index 0000000000..e4c3efea32 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-02.mkvi @@ -0,0 +1,419 @@ +%D \module +%D [ file=s-cor-02, +%D version=2012.12.09, +%D title=\CONTEXT\ User Module, +%D subtitle=Memos, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\unprotect + +\startmodule[memo] + +\usemodule[cor-00] + +\setupmodule + [\c!style=memo] + +% Namespaces + +\installnamespace {memolayerrenderings} +\installnamespace {memosectionrenderings} + +% Commands + +\definecorrespondence[\v!memo] + +\def\definememolayer {\dodoubleargument\correspondence_layer_define [\v!memo]} +\def\definememosection {\dodoubleargument\correspondence_section_define [\v!memo]} +\def\definememodescription {\dodoubleargument\correspondence_description_define [\v!memo]} +\def\definememohead {\dodoubleargument\correspondence_head_define [\v!memo]} + +\def\definememolayeralternative {\doquadrupleempty\correspondence_layer_alternative_define [\v!memo]} +\def\definememosectionalternative {\doquadrupleempty\correspondence_section_alternative_define [\v!memo]} + +\def\definememoelements {\dotripleargument\correspondence_elements_define [\v!memo]} +\def\setupmemoelements {\dotripleargument\correspondence_elements_define [\v!memo]} + +\def\setupmemostyle {\dotripleargument\correspondence_style_setup [\v!memo]} +\def\setupmemolayer {\dotripleargument\correspondence_layer_setup [\v!memo]} +\def\setupmemoframe {\dotripleargument\correspondence_frame_setup [\v!memo]} +\def\setupmemolayout {\dotripleargument\correspondence_layout_setup [\v!memo]} +\def\setupmemosection {\dotripleargument\correspondence_section_setup [\v!memo]} +\def\setupmemodescription {\dotripleargument\correspondence_description_setup [\v!memo]} +\def\setupmemohead {\dotripleargument\correspondence_head_setup [\v!memo]} +\def\setupmemooptions {\dodoubleargument\correspondence_option_setup [\v!memo]} +\def\setupmemo {\dodoubleargument\correspondence_setup [\v!memo]} + +\def\setupmemolayeralternative {\dotripleargument\correspondence_layer_alternative_setup [\v!memo]} +\def\setupmemosectionalternative {\dotripleargument\correspondence_section_alternative_setup [\v!memo]} + +\def\usememostyle {\dodoubleargument\correspondence_file_load [\v!memo]} + +\def\definememoelement {\doquadrupleargument\correspondence_element_define [\v!memo]} +\def\memoelement {\doquadrupleargument\correspondence_element_place [\v!memo]} + +\def\namedmemolayerparameter #element{\namedcorrespondencelayerparameter {\v!memo:#element}} +\def\namedmemoframeparameter #element{\namedcorrespondenceframeparameter {\v!memo:#element}} +\def\namedmemosectionparameter#element{\namedcorrespondencesectionparameter{\v!memo:#element}} + +% Heading + +\definememohead [\v!memo\v!section] +\definememohead [\v!memo\v!subsection] + +% Layers + +\definememolayer [\v!head] +\definememolayer [\v!nexthead] +\definememolayer [\v!lefthead] +\definememolayer [\v!righthead] + +\definememolayer [\v!foot] +\definememolayer [\v!nextfoot] +\definememolayer [\v!leftfoot] +\definememolayer [\v!rightfoot] + +\definememolayer [\v!topmark] +\definememolayer [\v!botmark] +\definememolayer [\v!cutmark] +\definememolayer [\v!endmark] +\definememolayer [\v!usermark] + +\definememolayer [\v!memomain] +\definememolayer [\v!memonext] + +% Section + +\definememosection [\v!head] +\definememosection [\v!date] +\definememosection [\v!reference] +\definememosection [\v!specialnotation] +\definememosection [\v!address] +\definememosection [\v!title] +\definememosection [\v!opening] +\definememosection [\v!subject] +\definememosection [\v!content] +\definememosection [\v!closing] +\definememosection [\v!appendices] + +% Descriptions + +\definememodescription [\v!copy] +\definememodescription [\v!enclosure] +\definememodescription [\v!postscript] + +% Setups + +% layer: head + +% setups -> see s-cor-00.mkvi + +% layer: nexthead + +% setups -> see s-cor-00.mkvi + +% layer: lefthead + +% setups -> see s-cor-00.mkvi + +% layer: righthead + +% setups -> see s-cor-00.mkvi + +% layer: foot + +\definememolayeralternative[\v!foot:\v!pagenumber][\c!renderingsetup=\????memosectionrenderings:\v!foot:\v!pagenumber] + +\startsetups[\????memosectionrenderings:\v!foot:\v!pagenumber] + \centerbox{\hbox{\begstrut\leftmemotext\c!pagenumber\subpagenumber\rightmemotext\c!pagenumber\lastsubpagenumber\endstrut}} +\stopsetups + +% layer: topmark + +% setups -> see s-cor-00.mkvi + +% layer: botmark + +% setups -> see s-cor-00.mkvi + +% layer: cutmark + +% setups -> see s-cor-00.mkvi + +% layer: endmark + +% setups -> see s-cor-00.mkvi + +% layer: usermark + +% setups -> see s-cor-00.mkvi + +% layer: memomain + +% setups -> see s-cor-00.mkvi + +% layer: memonext + +% setups -> see s-cor-00.mkvi + +% section: head + +\definememosectionalternative[\v!head:\s!default][\c!renderingsetup=\????memosectionrenderings:\v!head:\s!default] +\definememosectionalternative[\v!head:\v!memo ][\c!renderingsetup=\????memosectionrenderings:\v!head:\v!memo ] +\definememosectionalternative[\v!head:\v!table ][\c!renderingsetup=\????memosectionrenderings:\v!head:\v!table ] +\definememosectionalternative[\v!head:\v!margin ][\c!renderingsetup=\????memosectionrenderings:\v!head:\v!margin ] + +\startsetups[\????memosectionrenderings:\v!memo:\v!head:\s!default] + \def\\{\correspondencesectionparameter\c!separator} + \correspondenceparameter\c!fromaddress +\stopsetups + +\startsetups[\???memosectionrenderings\v!head:\v!memo] + \def\\{\correspondencesectionparameter\c!separator} + \startpacked + \doifsomething{\correspondenceparameter\c!fromname}{\memotext\c!fromname \correspondenceparameter\c!fromname \par} + \doifsomething{\correspondenceparameter\c!date }{\memotext\c!date \correspondenceparameter\c!date \par} + \doifsomething{\correspondenceparameter\c!toname }{\memotext\c!toname \correspondenceparameter\c!toname \par} + \doifsomething{\correspondenceparameter\c!subject }{\memotext\c!subject \correspondenceparameter\c!subject \par} + \stoppacked +\stopsetups + +\unexpanded\def\correspondence_memo_head_table#element% + {\doifsomething{\correspondenceparameter#element} + {\NC % label + \def\currentcorrespondencestyle{\v!memo:#element}% + \usecorrespondencestylestyleandcolor\c!titlestyle\c!titlecolor + \memotext#element + \EQ % text + \def\currentcorrespondencestyle{\v!memo:#element}% + \usecorrespondencestylestyleandcolor\c!textstyle\c!textcolor + \correspondenceparameter#element + \NC\NR}} + +\startsetups[\????memosectionrenderings:\v!head:\v!table] + \def\\{\correspondencesectionparameter\c!separator} + \starttabulate[|l|p|] + \correspondence_memo_head_table\c!fromname + \correspondence_memo_head_table\c!date + \correspondence_memo_head_table\c!toname + \correspondence_memo_head_table\c!subject + \stoptabulate +\stopsetups + +\unexpanded\def\correspondence_memo_head_margin#element% + {\doifsomething{\correspondenceparameter#element} + {\def\currentcorrespondencestyle{\v!memo:#element}% + \dontleavehmode\llap\bgroup % label + \usecorrespondencestylestyleandcolor\c!titlestyle\c!titlecolor + \memotext#element + \hskip\leftmargindistance + \egroup + \bgroup + \usecorrespondencestylestyleandcolor\c!textstyle\c!textcolor + \correspondenceparameter#element + \egroup + \par}} + +\startsetups[\????memosectionrenderings:\v!head:\v!margin] + \def\\{\correspondencesectionparameter\c!separator} + \startpacked + \correspondence_memo_head_margin\c!fromname + \correspondence_memo_head_margin\c!date + \correspondence_memo_head_margin\c!toname + \correspondence_memo_head_margin\c!subject + \stoppacked +\stopsetups + +% section: date + +\definememosectionalternative[\v!date:\s!default][\c!renderingsetup=\????memosectionrenderings:\v!date:\s!default] + +\startsetups[\????memosectionrenderings:\v!date:\s!default] + \def\\{\correspondencesectionparameter\c!separator} + \correspondenceparameter\c!date +\stopsetups + +% section: reference + +\definememosectionalternative[\v!reference:\s!default][\c!renderingsetup=\????memosectionrenderings:\v!reference:\s!default] + +\startsetups[\????memosectionrenderings:\v!reference:\s!default] + \def\\{\correspondencesectionparameter\c!separator} + \correspondenceparameter\c!reference +\stopsetups + +% section: specialnotation + +\definememosectionalternative[\v!specialnotation:\s!default][\c!renderingsetup=\????memosectionrenderings:\v!specialnotation:\s!default] + +\startsetups[\????memosectionrenderings:\v!specialnotation:\s!default] + \def\\{\correspondencesectionparameter\c!separator} + \correspondenceparameter\c!dispatch +\stopsetups + +% section: address + +\definememosectionalternative[\v!address:\s!default][\c!renderingsetup=\????memosectionrenderings:\v!address:\s!default] + +\startsetups[\????memosectionrenderings:\v!address:\s!default] + \def\\{\correspondencesectionparameter\c!separator} + \correspondenceparameter\c!toname + \doifsomething{\correspondenceparameter\c!toname}\\ + \correspondenceparameter\c!toaddress +\stopsetups + +% section: title + +\definememosectionalternative[\v!title:\s!default][\c!renderingsetup=\????memosectionrenderings:\v!title:\s!default] + +\startsetups[\????memosectionrenderings:\v!title:\s!default] + \def\\{\correspondencesectionparameter\c!separator} + \correspondenceparameter\c!title +\stopsetups + +% section: opening + +\definememosectionalternative[\v!opening:\s!default][\c!renderingsetup=\????memosectionrenderings:\v!opening:\s!default] + +\startsetups[\????memosectionrenderings:\v!opening:\s!default] + \def\\{\correspondencesectionparameter\c!separator} + \correspondenceparameter\c!opening +\stopsetups + +% section: subject + +\definememosectionalternative[\v!subject:\s!default][\c!renderingsetup=\????memosectionrenderings:\v!subject:\s!default] + +\startsetups[\????memosectionrenderings:\v!subject:\s!default] + \def\\{\correspondencesectionparameter\c!separator} + \memotext\c!subject\correspondenceparameter\c!subject +\stopsetups + +% section: content + +\definememosectionalternative[\v!content:\s!default][\c!renderingsetup=\????memosectionrenderings:\v!content:\s!default] + +\startsetups[\????memosectionrenderings:\v!content:\s!default] + \getbufferdata[\????correspondencebuffer\v!memo] +\stopsetups + +% section: closing + +\definememosectionalternative[\v!closing:\s!default][\c!renderingsetup=\????memosectionrenderings:\v!closing:\s!default] + +\startsetups[\????memosectionrenderings:\v!closing:\s!default] + \def\\{\correspondencesectionparameter\c!separator} + \correspondenceparameter\c!closing + \doifsomething{\correspondenceparameter\c!signature} + {\blank[\correspondencesectionparameter\c!spaceinbetween] + \correspondenceparameter\c!signature} +\stopsetups + +% section: appendices + +\definememosectionalternative[\v!appendices:\s!default][\c!renderingsetup=\????memosectionrenderings:\v!appendices:\s!default] + +\startsetups[\????memosectionrenderings:\v!appendices:\s!default] + \def\\{\correspondencesectionparameter\c!separator} + \startpacked + \normalexpanded{\processcommalistwithparameters[\correspondence_elements_access\v!memo\v!description]}{\correspondence_description_place[\v!memo]} + \stoppacked +\stopsetups + +% for backwards compatibility + +\startsetups[\v!memo:\v!place] +\correspondence_place[\v!memo] +\stopsetups + +% Extras + +\appendtoks + \ifx\currentcorrespondence\v!memo + \processallactionsinset + [\correspondenceoptionparameter\c!option] + [ \v!test=>{\usememostyle[test]}, + \v!setups=>{\usememostyle[setups]}]% + \fi +\to \t_correspondence_before + +\appendtoks + \ifx\currentcorrespondence\v!memo + \doif{\correspondenceoptionparameter\c!marking}\v!no{\setupmemolayer[\v!topmark,\v!botmark,\v!cutmark,\v!endmark,\v!usermark][\c!state=\v!stop]}% + \fi +\to \t_correspondence_before + +% Labels + +\definelabelclass[memo] + +% pagenumber: + +\setupmemotext[\s!en][\c!pagenumber={Page , of }] +\setupmemotext[\s!nl][\c!pagenumber=] +\setupmemotext[\s!de][\c!pagenumber={Seite , von }] +\setupmemotext[\s!fr][\c!pagenumber=] +\setupmemotext[\s!it][\c!pagenumber=] +\setupmemotext[\s!es][\c!pagenumber=] + +% date: + +\setupmemotext[\s!en][\c!date=Date: ] +\setupmemotext[\s!nl][\c!date=Datum: ] +\setupmemotext[\s!de][\c!date=Datum: ] +\setupmemotext[\s!fr][\c!date=Date\thinspace: ] +\setupmemotext[\s!it][\c!date=Data: ] +\setupmemotext[\s!es][\c!date=Fecha: ] + +% fromname: + +\setupmemotext[\s!en][\c!fromname=From: ] +\setupmemotext[\s!nl][\c!fromname=Van: ] +\setupmemotext[\s!de][\c!fromname=Von: ] +\setupmemotext[\s!fr][\c!fromname=De\thinspace: ] +\setupmemotext[\s!it][\c!fromname=Da: ] +\setupmemotext[\s!es][\c!fromname=De: ] + +% toname: + +\setupmemotext[\s!en][\c!toname=To: ] +\setupmemotext[\s!nl][\c!toname=Aan: ] +\setupmemotext[\s!de][\c!toname=An: ] +\setupmemotext[\s!fr][\c!toname=À\thinspace: ] +\setupmemotext[\s!it][\c!toname=A: ] +\setupmemotext[\s!es][\c!toname=A: ] + +% subject: + +\setupmemotext[\s!en][\c!subject=Subject: ] +\setupmemotext[\s!nl][\c!subject=Onderwerp: ] +\setupmemotext[\s!de][\c!subject=Betrifft: ] +\setupmemotext[\s!fr][\c!subject=Concernant\thinspace: ] +\setupmemotext[\s!it][\c!subject=Oggetto: ] +\setupmemotext[\s!es][\c!subject=Asunto: ] + +% Files + +\usememostyle[default,\currentmoduleparameter\c!style] + +\stopmodule + +\protect \endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-03.mkvi b/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-03.mkvi new file mode 100644 index 0000000000..efacae35e9 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-03.mkvi @@ -0,0 +1,340 @@ +%D \module +%D [ file=s-cor-03, +%D version=2012.12.13, +%D title=\CONTEXT\ User Module, +%D subtitle=Resume, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\unprotect + +\startmodule[resume] + +\usemodule[cor-00] + +\setupmodule + [\c!style=] + +% Namespaces + +\installnamespace {resumelayerrenderings} +\installnamespace {resumesectionrenderings} + +% Commands + +\definecorrespondence[\v!resume] + +\def\defineresumelayer {\dodoubleargument\correspondence_layer_define [\v!resume]} +\def\defineresumesection {\dodoubleargument\correspondence_section_define [\v!resume]} +\def\defineresumedescription {\dodoubleargument\correspondence_description_define [\v!resume]} +\def\defineresumehead {\dodoubleargument\correspondence_head_define [\v!resume]} +\def\defineresumeparagraph {\dodoubleargument\correspondence_paragraph_define [\v!resume]} + +\def\defineresumelayeralternative {\doquadrupleempty\correspondence_layer_alternative_define [\v!resume]} +\def\defineresumesectionalternative {\doquadrupleempty\correspondence_section_alternative_define [\v!resume]} +\def\defineresumeheadalternative {\doquadrupleempty\correspondence_head_alternative_define [\v!resume]} +\def\defineresumeparagraphalternative {\doquadrupleempty\correspondence_paragraph_alternative_define [\v!resume]} + +\def\defineresumeelements {\dotripleargument\correspondence_elements_define [\v!resume]} +\def\setupresumeelements {\dotripleargument\correspondence_elements_define [\v!resume]} + +\def\setupresumestyle {\dotripleargument\correspondence_style_setup [\v!resume]} +\def\setupresumelayer {\dotripleargument\correspondence_layer_setup [\v!resume]} +\def\setupresumeframe {\dotripleargument\correspondence_frame_setup [\v!resume]} +\def\setupresumelayout {\dotripleargument\correspondence_layout_setup [\v!resume]} +\def\setupresumesection {\dotripleargument\correspondence_section_setup [\v!resume]} +\def\setupresumedescription {\dotripleargument\correspondence_description_setup [\v!resume]} +\def\setupresumehead {\dotripleargument\correspondence_head_setup [\v!resume]} +\def\setupresumeparagraph {\dotripleargument\correspondence_paragraph_setup [\v!resume]} +\def\setupresumeoptions {\dodoubleargument\correspondence_option_setup [\v!resume]} +\def\setupresume {\dodoubleargument\correspondence_setup [\v!resume]} + +\def\setupresumelayeralternative {\dotripleargument\correspondence_layer_alternative_setup [\v!resume]} +\def\setupresumesectionalternative {\dotripleargument\correspondence_section_alternative_setup [\v!resume]} +\def\setupresumeheadalternative {\dotripleargument\correspondence_head_alternative_setup [\v!resume]} +\def\setupresumeparagraphalternative {\dotripleargument\correspondence_paragraph_alternative_setup [\v!resume]} + +\def\useresumestyle {\dodoubleargument\correspondence_file_load [\v!resume]} + +\def\defineresumeelement {\doquadrupleargument\correspondence_element_define [\v!resume]} +\def\resumeelement {\doquadrupleargument\correspondence_element_place [\v!resume]} + +\def\namedresumelayerparameter #element{\namedcorrespondencelayerparameter {\v!resume:#element}} +\def\namedresumeframeparameter #element{\namedcorrespondenceframeparameter {\v!resume:#element}} +\def\namedresumesectionparameter #element{\namedcorrespondencesectionparameter {\v!resume:#element}} +\def\namedresumeparagraphparameter#element{\namedcorrespondenceparagraphparameter{\v!resume:#element}} + +% Heading + +\defineresumehead [\v!resume\v!section] +\defineresumehead [\v!resume\v!subsection] + +% Paragraphs + +\defineresumeparagraph [\v!resume\v!paragraph] +\defineresumeparagraph [\v!two\v!columns] +\defineresumeparagraph [\v!three\v!columns] + +% Layers + +\defineresumelayer [\v!head] +\defineresumelayer [\v!nexthead] +\defineresumelayer [\v!lefthead] +\defineresumelayer [\v!righthead] + +\defineresumelayer [\v!foot] +\defineresumelayer [\v!nextfoot] +\defineresumelayer [\v!leftfoot] +\defineresumelayer [\v!rightfoot] + +\defineresumelayer [\v!topmark] +\defineresumelayer [\v!botmark] +\defineresumelayer [\v!cutmark] +\defineresumelayer [\v!endmark] +\defineresumelayer [\v!usermark] + +\defineresumelayer [\v!resumemain] +\defineresumelayer [\v!resumenext] + +% Section + +\defineresumesection [\v!head] +\defineresumesection [\v!content] +\defineresumesection [\v!closing] + +% Setups + +% layer: head + +% setups -> see s-cor-00.mkvi + +% layer: nexthead + +% setups -> see s-cor-00.mkvi + +% layer: lefthead + +% setups -> see s-cor-00.mkvi + +% layer: righthead + +% setups -> see s-cor-00.mkvi + +% layer: foot + +\defineresumelayeralternative[\v!foot:\v!casual][\c!renderingsetup=\????resumelayerrenderings:\v!foot:\v!casual] + +\def\resumefootalternativecasual[#1][#2]% Can I make a generic version? + {\bgroup + \def\resumefootalternativecasual##1% + {\doifresumevalue{##1}{\advance\scratchcounter\plusone}}% + \def\doresumefootsingleelement##1% + {\doifresumevalue{##1}{\attributedresumevalue{#1}}}% + \def\doresumefootmultipleelement##1% + {\doifresumevalue{##1} + {\advance\scratchcounter\plusone + \attributedresumevalue{##1} + \unless\ifnum\scratchcounter=\resumefootvalues + #2% + \fi}}% + \scratchcounter\zerocount + \processcommalist[#1]\resumefootalternativecasual + \edef\resumefootvalues{\number\scratchcounter}% + \scratchcounter\zerocount + \ifnum\resumefootvalues>0 + \ifnum\resumefootvalues=1 + \processcommalist[#1]\doresumefootsingleelement + \else + \processcommalist[#1]\doresumefootmultipleelement + \fi + \fi + \egroup} + +\def\m_correspondence_resume_foot_casual#element% + {\ifvoid\scratchboxone + \doifsomething{\correspondenceparameter{#element}}{\setbox\scratchboxone\hbox{\formattedcorrespondenceparameter{#element}}}% + \else + \doifsomething{\correspondenceparameter{#element}} + {\setbox\scratchboxtwo\box\scratchboxone + \setbox\scratchboxone\hbox{\copy\scratchboxtwo \quad\color[resume:separator]{\symbol[bullet]}\quad \formattedcorrespondenceparameter{#element}}% + \ifdim\wd\scratchboxone>\hsize + \unhbox\scratchboxtwo\endgraf + \setbox\scratchboxone\hbox{\formattedcorrespondenceparameter{#element}}% + \fi}% + \fi} + +\startsetups[\????resumelayerrenderings:\v!foot:\v!casual] + \doifsomething{\correspondenceparameter{street}} + {\formattedcorrespondenceparameter{street} + \doifsomething{\correspondenceparameter{town}}{\quad\color[resume:separator]{\symbol[dash]}\quad}} + \doifsomething{\correspondenceparameter{town}}{\formattedcorrespondenceparameter{town}} + \par + \setbox\scratchboxone\box\voidbox + %\processcommalist[mobile,phone,fax,email,info]\m_correspondence_resume_foot_casual + \processcommacommand[\correspondencelayerparameter\c!list]\m_correspondence_resume_foot_casual + \unhbox\scratchboxone +\stopsetups + +% layer: nextfoot + +\defineresumelayeralternative[\v!nextfoot:\v!casual ][\c!renderingsetup=\????resumelayerrenderings:\v!nextfoot:\v!casual ] +\defineresumelayeralternative[\v!nextfoot:\v!classic][\c!renderingsetup=\????resumelayerrenderings:\v!nextfoot:\v!classic] + +\startsetups[\????resumelayerrenderings:\v!nextfoot:\v!casual] + \color[resume:address]{\it\subpagenumber/\lastsubpagenumber} +\stopsetups + +\startsetups[\????resumelayerrenderings:\v!nextfoot:\v!classic] + \color[resume:quote]{\it\subpagenumber/\lastsubpagenumber} +\stopsetups + +% layer: topmark + +% setups -> see s-cor-00.mkvi + +% layer: botmark + +% setups -> see s-cor-00.mkvi + +% layer: cutmark + +% setups -> see s-cor-00.mkvi + +% layer: endmark + +% setups -> see s-cor-00.mkvi + +% layer: usermark + +% setups -> see s-cor-00.mkvi + +% layer: resumemain + +% setups -> see s-cor-00.mkvi + +% layer: resumenext + +% setups -> see s-cor-00.mkvi + +% section: head + +\defineresumesectionalternative[\v!head:\s!default][\c!renderingsetup=\????resumesectionrenderings:\v!head:\s!default] + +\startsetups[\????resumesectionrenderings:\v!head:\s!default] + \def\\{\correspondencesectionparameter\c!separator} + \correspondenceparameter\c!fromaddress +\stopsetups + +\defineresumesectionalternative[\v!head:\v!casual][\c!renderingsetup=\????resumesectionrenderings:\v!head:\v!casual] + +\startsetups[\????resumesectionrenderings:\v!head:\v!casual] + \hbox to\hsize\bgroup + \framed[\c!offset=2\points,\c!strut=\v!no,\c!framecolor=resume:forename]{\correspondenceparameter{image}} + \hfill + \hbox\bgroup + \formattedcorrespondenceparameter{firstname} + \space + \formattedcorrespondenceparameter{familyname} + \egroup + \egroup + \vskip-\baselineskip + \blank[\v!medium] + \blackrule[\c!height=2\linewidth,\c!width=\hsize,\c!color=resume:1] + \doifsomething{\correspondenceparameter{quote}} + {\blank[\v!line] + \midaligned{\formattedcorrespondenceparameter{quote}}} +\stopsetups + +\defineresumesectionalternative[\v!head:\v!classic][\c!renderingsetup=\????resumesectionrenderings:\v!head:\v!classic] + +\startsetups[\????resumesectionrenderings:\v!head:\v!classic] + \hbox to \hsize\bgroup + \vbox\bgroup + \hbox{\formattedcorrespondenceparameter{firstname}\space\formattedcorrespondenceparameter{familyname}} + \doifsomething{\correspondenceparameter{title}} + {\blank[\v!medium] + \hbox{\formattedcorrespondenceparameter{title}}} + \egroup + \hfill + \startframed[\c!location=\v!bottom,\c!align=\v!left,\c!width=\v!fit,\c!frame=\v!off] + \doifsomething{\correspondenceparameter{street}}{\formattedcorrespondenceparameter{street}\\} + \doifsomething{\correspondenceparameter {town}}{\formattedcorrespondenceparameter {town}\\} + \doifsomething{\correspondenceparameter{mobile}}{\formattedcorrespondenceparameter{mobile}\\} + \doifsomething{\correspondenceparameter {phone}}{\formattedcorrespondenceparameter {phone}\\} + \doifsomething{\correspondenceparameter {fax}}{\formattedcorrespondenceparameter {fax}\\} + \doifsomething{\correspondenceparameter {email}}{\formattedcorrespondenceparameter {email}\\} + \doifsomething{\correspondenceparameter {info}}{\formattedcorrespondenceparameter {info}\\} + \stopframed + \quad + \framed[\c!offset=2\points,\c!strut=\v!no]{\correspondenceparameter{image}} + \egroup +\stopsetups + +% section: content + +\defineresumesectionalternative[\v!content:\s!default][\c!renderingsetup=\????resumesectionrenderings:\v!content:\s!default] + +\startsetups[\????resumesectionrenderings:\v!content:\s!default] + \getbufferdata[\????correspondencebuffer\v!resume] +\stopsetups + +% section: closing + +% setups -> see s-cor-00.mkvi + +% paragraph: + + + +% Extras + +\appendtoks + \ifx\currentcorrespondence\v!resume + \doif{\correspondenceoptionparameter\c!marking}\v!no{\setupresumelayer[\v!topmark,\v!botmark,\v!cutmark,\v!endmark,\v!usermark][\c!state=\v!stop]}% + \fi +\to \t_correspondence_before + +\appendtoks + \ifx\currentcorrespondence\v!resume + \edef\p_correspondence_option_position{\correspondenceoptionparameter\c!position}% + \ifx\p_correspondence_option_position\v!yes % low level code, I need a better solution for this! + \setbox\scratchbox\vbox + {\edef\currentcorrespondencelayer {\v!resume:\v!head}% + \edef\currentcorrespondenceenvironment{\v!resume}% + \correspondence_layer_alternative_place}% + \normalexpanded + {\setupresumelayout + [\v!firstpage] + [\c!topspace=\dimexpr\namedresumelayerparameter\v!head\c!y+\ht\scratchbox+\namedresumelayerparameter\v!head\c!distance\relax]}% + \fi + \fi +\to \t_correspondence_before + +% Labels + +\definelabelclass[resume] + +% Files + +\useresumestyle[default,\currentmoduleparameter\c!style] + +\stopmodule + +\protect \endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-06.mkvi b/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-06.mkvi new file mode 100644 index 0000000000..6d541bbbaa --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/base/s-cor-06.mkvi @@ -0,0 +1,55 @@ +%D \module +%D [ file=s-cor-06, +%D version=2012.09.21, +%D title=\CONTEXT\ User Module, +%D subtitle=Address entries, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2012 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\unprotect + +\installnamespace {addressentry} +\installcommandhandler \????addressentry {addressentry} \????addressentry + +\appendtoks + \addressentryparameter\c!reset +\to \everypresetaddressentry + +\appendtoks + \addressentryparameter\c!set +\to \everydefineaddressentry + +\unexpanded\def\addressentry + {\dodoubleempty\addressentry_cmd} + +\def\addressentry_cmd[#id][#key]% + {\begingroup + \ifsecondargument + \edef\currentaddressentry {#id}% + \edef\currentaddressentrykey{#key}% + \else + \edef\currentaddressentrykey{#id}% + \fi + \addressentryparameter\currentaddressentrykey + \endgroup} + +\stopmodule + +\protect \endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/base/t-letter.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/base/t-letter.mkii new file mode 100644 index 0000000000..625f7ecab5 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/base/t-letter.mkii @@ -0,0 +1,30 @@ +%D \module +%D [ file=t-letter, +%D version=2011.12.15, +%D title=\CONTEXT\ User Module, +%D subtitle=Letters, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\unprotect + +\usemodule[cor-01] + +\protect \endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/base/t-letter.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/base/t-letter.mkiv new file mode 100644 index 0000000000..7baa52c34a --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/base/t-letter.mkiv @@ -0,0 +1,66 @@ +%D \module +%D [ file=t-letter, +%D version=2011.12.16, +%D title=\CONTEXT\ User Module, +%D subtitle=Letters, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\unprotect + +\startinterface all + \setinterfacevariable {letter} {letter} +\stopinterface + +\def\useletterstyle {\dosingleargument\gobbleoneoptional} + +\def\setupletter {\dosingleargument\gobbleoneoptional} +\def\setupletterstyle {\dodoubleargument\gobbletwooptionals} +\def\setupletterlayer {\dodoubleargument\gobbletwooptionals} +\def\setupletterframe {\dodoubleargument\gobbletwooptionals} +\def\setupletterlayout {\dodoubleargument\gobbletwooptionals} +\def\setuplettersection {\dodoubleargument\gobbletwooptionals} +\def\setupletterdescription {\dodoubleargument\gobbletwooptionals} +\def\setupletteroptions {\dodoubleargument\gobbletwooptionals} +\def\setuplettertext {\dodoubleargument\gobbletwooptionals} + +\def\defineletterelements {\dodoubleargument\gobbletwooptionals} +\def\setupletterelements {\dodoubleargument\gobbletwooptionals} + +\def\letterelement {\dotripleargument\gobblethreeoptionals} + +\def\defineletterelement + {\dotripleargument\dodefineletterelement} + +\def\dodefineletterelement[#1][#2][#3]#4{} + +\setvalue{\e!start\v!letter}% + {\starttext + \dostartbuffer[\v!letter][\e!start\v!letter][\e!stop\v!letter]} + +\setvalue{\e!stop\v!letter}% + {\startstandardmakeup[\c!align=\v!middle,\c!style=\ttd\setupinterlinespace] + The \MKIV\ version of the \CONTEXT\ letter module requires a installation from \date[d=14,m=12,y=2011][year,.,mm,.,dd] or newer but the version you’re using is \contextversion. + \blank[2*\v!line] + You can either use the \MKII\ version of the module or install the \CONTEXT\ Suite from the http://wiki.contextgarden.net. + \stopstandardmakeup + \stoptext} + +\protect \endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/base/t-memo.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/base/t-memo.mkii new file mode 100644 index 0000000000..541ffa0830 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/base/t-memo.mkii @@ -0,0 +1,30 @@ +%D \module +%D [ file=t-memo, +%D version=2011.12.15, +%D title=\CONTEXT\ User Module, +%D subtitle=Memos, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\unprotect + +\usemodule[cor-02] + +\protect \endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/base/t-memo.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/base/t-memo.mkiv new file mode 100644 index 0000000000..e859aee477 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/base/t-memo.mkiv @@ -0,0 +1,66 @@ +%D \module +%D [ file=t-memo, +%D version=2011.12.16, +%D title=\CONTEXT\ User Module, +%D subtitle=Memos, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\unprotect + +\startinterface all + \setinterfacevariable {memo} {memo} +\stopinterface + +\def\usememostyle {\dosingleargument\gobbleoneoptional} + +\def\setupmemo {\dosingleargument\gobbleoneoptional} +\def\setupmemostyle {\dodoubleargument\gobbletwooptionals} +\def\setupmemolayer {\dodoubleargument\gobbletwooptionals} +\def\setupmemoframe {\dodoubleargument\gobbletwooptionals} +\def\setupmemolayout {\dodoubleargument\gobbletwooptionals} +\def\setupmemosection {\dodoubleargument\gobbletwooptionals} +\def\setupmemodescription {\dodoubleargument\gobbletwooptionals} +\def\setupmemooptions {\dodoubleargument\gobbletwooptionals} +\def\setupmemotext {\dodoubleargument\gobbletwooptionals} + +\def\definememoelements {\dodoubleargument\gobbletwooptionals} +\def\setupmemoelements {\dodoubleargument\gobbletwooptionals} + +\def\memoelement {\dotripleargument\gobblethreeoptionals} + +\def\definememoelement + {\dotripleargument\dodefinememoelement} + +\def\dodefinememoelement[#1][#2][#3]#4{} + +\setvalue{\e!start\v!memo}% + {\starttext + \dostartbuffer[\v!memo][\e!start\v!memo][\e!stop\v!memo]} + +\setvalue{\e!stop\v!memo}% + {\startstandardmakeup[\c!align=\v!middle,\c!style=\ttd\setupinterlinespace] + The \MKIV\ version of the \CONTEXT\ memo module requires a installation from \date[d=14,m=12,y=2011][year,.,mm,.,dd] or newer but the version you’re using is \contextversion. + \blank[2*\v!line] + You can either use the \MKII\ version of the module or install the \CONTEXT\ Suite from the http://wiki.contextgarden.net. + \stopstandardmakeup + \stoptext} + +\protect \endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-blockstyle.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-blockstyle.mkii new file mode 100644 index 0000000000..9b1e599d57 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-blockstyle.mkii @@ -0,0 +1,62 @@ +%D \module +%D [ file=letter-imp-blockstyle, +%D version=2011.12.24, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Blockstyle basics, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[default] + +\setuplettersection + [\v!head,\v!date,\v!reference,\v!specialnotation,\v!address] + [\c!alternative=\v!blockstyle] + +\setupletteroptions + [\c!marking=\v!no] + +\setupletterelements + [\v!layer] + [\v!lettermain, + \v!letternext, + \v!nexthead, + \v!lefthead, + \v!righthead, + \v!foot, + \v!nextfoot, + \v!topmark, + \v!botmark, + \v!cutmark] + +\setupletterelements + [\v!section] + [\v!head, + \v!date, + \v!reference, + \v!specialnotation, + \v!address, + \v!title, + \v!opening, + \v!subject, + \v!content, + \v!closing, + \v!appendices] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-blockstyle.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-blockstyle.mkiv new file mode 100644 index 0000000000..9b1e599d57 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-blockstyle.mkiv @@ -0,0 +1,62 @@ +%D \module +%D [ file=letter-imp-blockstyle, +%D version=2011.12.24, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Blockstyle basics, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[default] + +\setuplettersection + [\v!head,\v!date,\v!reference,\v!specialnotation,\v!address] + [\c!alternative=\v!blockstyle] + +\setupletteroptions + [\c!marking=\v!no] + +\setupletterelements + [\v!layer] + [\v!lettermain, + \v!letternext, + \v!nexthead, + \v!lefthead, + \v!righthead, + \v!foot, + \v!nextfoot, + \v!topmark, + \v!botmark, + \v!cutmark] + +\setupletterelements + [\v!section] + [\v!head, + \v!date, + \v!reference, + \v!specialnotation, + \v!address, + \v!title, + \v!opening, + \v!subject, + \v!content, + \v!closing, + \v!appendices] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-default.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-default.mkii new file mode 100644 index 0000000000..745ba2f56d --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-default.mkii @@ -0,0 +1,133 @@ +%D \module +%D [ file=letter-imp-default, +%D version=2012.06.10, +%D title=\CONTEXT\ User Module, +%D subtitle=Default letter style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\setupletter + [\c!date=\currentdate] + +\setupletterlayer + [\v!head,\v!nexthead,\v!lefthead,\v!righthead] + [\c!x=\backspace, + \c!y=\topspace] + +\setupletterframe + [\v!head,\v!nexthead,\v!lefthead,\v!righthead] + [\c!width=\textwidth] + +\setupletterlayer + [\v!foot,\v!nextfoot,\v!leftfoot,\v!rightfoot] + [\c!preset=\v!left\v!bottom, + \c!x=\backspace, + \c!y=\bottomspace] + +\setupletterframe + [\v!foot,\v!nextfoot,\v!leftfoot,\v!rightfoot] + [\c!width=\textwidth, + \c!height=\footerheight] + +%\setupletterlayer +% [\v!head] +% [\c!rulewidth=\hsize, +% \c!fromrule=\v!no, +% \c!rulecolor=\v!black, +% \c!alternative=\v!left] + +\setupletterlayer + [\v!nexthead,\v!nextfoot] + [\c!state=\v!next] + +\setupletterlayer + [\v!lefthead,\v!leftfoot] + [\c!state=\v!left] + +\setupletterlayer + [\v!righthead,\v!rightfoot] + [\c!state=\v!right] + +\setupletterlayer + [\v!backaddress] + [\c!alternative=\v!auto, + \c!separator={, }] + +\setupletterlayer + [\v!reference] + [\c!alternative=\v!a, + \c!list=\c!date] + +\setuplettersection + [\v!closing] + [\c!spaceafter=\v!line, + \c!spaceinbetween={\v!samepage,2*\v!line}] + +\defineletterelements + [\v!layer] + [\v!lettermain, + \v!letternext, + \v!head, + \v!nexthead, + \v!lefthead, + \v!righthead, + \v!foot, + \v!nextfoot, + \v!topmark, + \v!botmark, + \v!cutmark, + \v!endmark, + \v!usermark, + \v!backaddress, + \v!address, + \v!reference, + \v!location] + +\defineletterelements + [\v!section] + [\v!title, + \v!subject, + \v!opening, + \v!content, + \v!closing, + \v!appendices] + +\defineletterelements + [\v!description] + [\v!copy, + \v!enclosure, + \v!postscript] + +\setupletterdescription + [\c!copy] + [\c!headcommand=\lettertext\v!copy, + \c!textcommand=\correspondenceparameter\c!copy] + +\setupletterdescription + [\c!enclosure] + [\c!headcommand=\lettertext\v!enclosure, + \c!textcommand=\correspondenceparameter\c!enclosure] + +\setupletterdescription + [\c!postscript] + [\c!headcommand=\lettertext\v!postscript, + \c!textcommand=\correspondenceparameter\c!postscript] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-default.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-default.mkiv new file mode 100644 index 0000000000..745ba2f56d --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-default.mkiv @@ -0,0 +1,133 @@ +%D \module +%D [ file=letter-imp-default, +%D version=2012.06.10, +%D title=\CONTEXT\ User Module, +%D subtitle=Default letter style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\setupletter + [\c!date=\currentdate] + +\setupletterlayer + [\v!head,\v!nexthead,\v!lefthead,\v!righthead] + [\c!x=\backspace, + \c!y=\topspace] + +\setupletterframe + [\v!head,\v!nexthead,\v!lefthead,\v!righthead] + [\c!width=\textwidth] + +\setupletterlayer + [\v!foot,\v!nextfoot,\v!leftfoot,\v!rightfoot] + [\c!preset=\v!left\v!bottom, + \c!x=\backspace, + \c!y=\bottomspace] + +\setupletterframe + [\v!foot,\v!nextfoot,\v!leftfoot,\v!rightfoot] + [\c!width=\textwidth, + \c!height=\footerheight] + +%\setupletterlayer +% [\v!head] +% [\c!rulewidth=\hsize, +% \c!fromrule=\v!no, +% \c!rulecolor=\v!black, +% \c!alternative=\v!left] + +\setupletterlayer + [\v!nexthead,\v!nextfoot] + [\c!state=\v!next] + +\setupletterlayer + [\v!lefthead,\v!leftfoot] + [\c!state=\v!left] + +\setupletterlayer + [\v!righthead,\v!rightfoot] + [\c!state=\v!right] + +\setupletterlayer + [\v!backaddress] + [\c!alternative=\v!auto, + \c!separator={, }] + +\setupletterlayer + [\v!reference] + [\c!alternative=\v!a, + \c!list=\c!date] + +\setuplettersection + [\v!closing] + [\c!spaceafter=\v!line, + \c!spaceinbetween={\v!samepage,2*\v!line}] + +\defineletterelements + [\v!layer] + [\v!lettermain, + \v!letternext, + \v!head, + \v!nexthead, + \v!lefthead, + \v!righthead, + \v!foot, + \v!nextfoot, + \v!topmark, + \v!botmark, + \v!cutmark, + \v!endmark, + \v!usermark, + \v!backaddress, + \v!address, + \v!reference, + \v!location] + +\defineletterelements + [\v!section] + [\v!title, + \v!subject, + \v!opening, + \v!content, + \v!closing, + \v!appendices] + +\defineletterelements + [\v!description] + [\v!copy, + \v!enclosure, + \v!postscript] + +\setupletterdescription + [\c!copy] + [\c!headcommand=\lettertext\v!copy, + \c!textcommand=\correspondenceparameter\c!copy] + +\setupletterdescription + [\c!enclosure] + [\c!headcommand=\lettertext\v!enclosure, + \c!textcommand=\correspondenceparameter\c!enclosure] + +\setupletterdescription + [\c!postscript] + [\c!headcommand=\lettertext\v!postscript, + \c!textcommand=\correspondenceparameter\c!postscript] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-dina.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-dina.mkii new file mode 100644 index 0000000000..e21193474b --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-dina.mkii @@ -0,0 +1,52 @@ +%D \module +%D [ file=letter-imp-dina, +%D version=2011.10.29, +%D title=\CONTEXT\ Letter Style, +%D subtitle=DIN 676 A, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[dinb] + +\setupletterlayout + [\v!firstpage] + [\c!topspace=97.4mm] + +\setupletterlayer + [\v!topmark] + [\c!y=87mm] + +\setupletterlayer + [\v!botmark] + [\c!y=192mm] + +\setupletterframe + [\v!head] + [\c!height=10.1mm] + +\setupletterlayer + [\v!address] + [\c!y=32mm] + +\setupletterlayer + [\v!reference] + [\c!y=80.4mm] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-dina.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-dina.mkiv new file mode 100644 index 0000000000..e21193474b --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-dina.mkiv @@ -0,0 +1,52 @@ +%D \module +%D [ file=letter-imp-dina, +%D version=2011.10.29, +%D title=\CONTEXT\ Letter Style, +%D subtitle=DIN 676 A, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[dinb] + +\setupletterlayout + [\v!firstpage] + [\c!topspace=97.4mm] + +\setupletterlayer + [\v!topmark] + [\c!y=87mm] + +\setupletterlayer + [\v!botmark] + [\c!y=192mm] + +\setupletterframe + [\v!head] + [\c!height=10.1mm] + +\setupletterlayer + [\v!address] + [\c!y=32mm] + +\setupletterlayer + [\v!reference] + [\c!y=80.4mm] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-dinb.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-dinb.mkii new file mode 100644 index 0000000000..e363694220 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-dinb.mkii @@ -0,0 +1,139 @@ +%D \module +%D [ file=letter-imp-dinb, +%D version=2011.10.29, +%D title=\CONTEXT\ Letter Style, +%D subtitle=DIN 676 B, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[default] + +\setupletterlayout + [\v!firstpage,\v!secondpage] + [\c!topspace=114.3mm, + \c!bottomspace=30mm, % unknown value! + \c!backspace=24.1mm, + \c!header=0mm, + \c!footer=0mm, % unknown value! + \c!width=\v!middle, + \c!height=\v!middle] + +\setupletterlayout + [\v!secondpage] + [\c!topspace=20mm, + \c!bottomspace=20mm, + \c!header=10mm, + \c!footer=10mm] + +\setuplettersection + [\v!title,\v!subject,\v!opening,\v!appendices] + [\c!spacebefore=, + \c!spaceafter=\v!line] + +\setuplettersection + [\v!title] + [\c!align=\v!middle, + \c!style=\v!bold] + +\setuplettersection + [\v!subject] + [\c!spaceafter={2*\v!line}, + \c!style=\v!bold] + +\setuplettersection + [\v!content] + [\c!spaceafter={\v!samepage,\v!line}] + +\setuplettersection + [\v!closing] + [\c!spaceafter={3*\v!line}] + +\setupletterlayer + [\v!topmark,\v!botmark,\v!cutmark] + [\c!state=\v!start, + \c!x=5mm, + \c!symbol=\v!cutmark] + +\setupletterframe + [\v!topmark,\v!botmark,\v!cutmark] + [\c!strut=\v!no] + +\setupletterlayer + [\v!topmark] + [\c!y=105mm] + +\setupletterlayer + [\v!botmark] + [\c!y=210mm] + +\setupletterlayer + [\v!cutmark] + [\c!y=.5\paperheight] + +\setupletterlayer + [\v!head,\v!nexthead,\v!lefthead,\v!righthead] + [\c!x=\backspace, + \c!y=16.9mm] + +\setupletterframe + [\v!head,\v!nexthead,\v!lefthead,\v!righthead] + [\c!width=\textwidth, + \c!height=28.1mm] + +\setupletterlayer + [\v!foot,\v!nextfoot,\v!leftfoot,\v!rightfoot] + [\c!y=20mm] + +\setupletterframe + [\v!foot,\v!nextfoot,\v!leftfoot,\v!rightfoot] + [\c!height=10mm] + +\setupletterlayer + [\v!address] + [\c!x=\backspace, + \c!y=50mm] + +\setupletterframe + [\v!address] + [\c!width=85mm, + \c!height=40mm] + +\setupletterlayer + [\v!backaddress] + [\c!x=\backspace, + \c!y=\dimexpr\namedletterlayerparameter\v!address\c!y-\namedletterframeparameter\v!backaddress\c!height\relax, + \c!style=\tfxx] + +\setupletterframe + [\v!backaddress] + [\c!height=5mm, + \c!width=85mm] + +\setupletterlayer + [\v!reference] + [\c!x=\backspace, + \c!y=93.2mm] + +\setupletterframe + [\v!reference] + [\c!width=\textwidth, + \c!height=8.4mm] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-dinb.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-dinb.mkiv new file mode 100644 index 0000000000..e363694220 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-dinb.mkiv @@ -0,0 +1,139 @@ +%D \module +%D [ file=letter-imp-dinb, +%D version=2011.10.29, +%D title=\CONTEXT\ Letter Style, +%D subtitle=DIN 676 B, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[default] + +\setupletterlayout + [\v!firstpage,\v!secondpage] + [\c!topspace=114.3mm, + \c!bottomspace=30mm, % unknown value! + \c!backspace=24.1mm, + \c!header=0mm, + \c!footer=0mm, % unknown value! + \c!width=\v!middle, + \c!height=\v!middle] + +\setupletterlayout + [\v!secondpage] + [\c!topspace=20mm, + \c!bottomspace=20mm, + \c!header=10mm, + \c!footer=10mm] + +\setuplettersection + [\v!title,\v!subject,\v!opening,\v!appendices] + [\c!spacebefore=, + \c!spaceafter=\v!line] + +\setuplettersection + [\v!title] + [\c!align=\v!middle, + \c!style=\v!bold] + +\setuplettersection + [\v!subject] + [\c!spaceafter={2*\v!line}, + \c!style=\v!bold] + +\setuplettersection + [\v!content] + [\c!spaceafter={\v!samepage,\v!line}] + +\setuplettersection + [\v!closing] + [\c!spaceafter={3*\v!line}] + +\setupletterlayer + [\v!topmark,\v!botmark,\v!cutmark] + [\c!state=\v!start, + \c!x=5mm, + \c!symbol=\v!cutmark] + +\setupletterframe + [\v!topmark,\v!botmark,\v!cutmark] + [\c!strut=\v!no] + +\setupletterlayer + [\v!topmark] + [\c!y=105mm] + +\setupletterlayer + [\v!botmark] + [\c!y=210mm] + +\setupletterlayer + [\v!cutmark] + [\c!y=.5\paperheight] + +\setupletterlayer + [\v!head,\v!nexthead,\v!lefthead,\v!righthead] + [\c!x=\backspace, + \c!y=16.9mm] + +\setupletterframe + [\v!head,\v!nexthead,\v!lefthead,\v!righthead] + [\c!width=\textwidth, + \c!height=28.1mm] + +\setupletterlayer + [\v!foot,\v!nextfoot,\v!leftfoot,\v!rightfoot] + [\c!y=20mm] + +\setupletterframe + [\v!foot,\v!nextfoot,\v!leftfoot,\v!rightfoot] + [\c!height=10mm] + +\setupletterlayer + [\v!address] + [\c!x=\backspace, + \c!y=50mm] + +\setupletterframe + [\v!address] + [\c!width=85mm, + \c!height=40mm] + +\setupletterlayer + [\v!backaddress] + [\c!x=\backspace, + \c!y=\dimexpr\namedletterlayerparameter\v!address\c!y-\namedletterframeparameter\v!backaddress\c!height\relax, + \c!style=\tfxx] + +\setupletterframe + [\v!backaddress] + [\c!height=5mm, + \c!width=85mm] + +\setupletterlayer + [\v!reference] + [\c!x=\backspace, + \c!y=93.2mm] + +\setupletterframe + [\v!reference] + [\c!width=\textwidth, + \c!height=8.4mm] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-dutch.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-dutch.mkii new file mode 100644 index 0000000000..7febd6229b --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-dutch.mkii @@ -0,0 +1,79 @@ +%D \module +%D [ file=letter-imp-dutch, +%D version=2011.11.01, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Dutch style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[dinb] + +\setupletterlayout + [\v!firstpage,\v!secondpage] + [\c!topspace=105mm, + \c!bottomspace=30mm, + \c!backspace=33mm, + \c!width=\v!middle, + \c!height=\v!middle] + +\setupletterlayout + [\v!secondpage] + [\c!topspace=20mm, + \c!header=15mm, + \c!headerdistance=15mm, + \c!height=\v!middle] + +\setupletterlayer + [\v!topmark,\v!cutmark] + [\c!state=\v!repeat, + \c!x=3.5mm] + +\setuplettersection + [\v!subject] + [\c!spaceafter=\v!line] + +\setuplettersection + [\v!closing] + [\c!spaceinbetween=\v!line] + +\setupletterlayer + [\v!address] + [\c!y=55mm] + +\setupletterframe + [\v!address] + [\c!height=35mm, + \c!width=80mm] + +\setupletterlayer + [\v!backaddress] + [\c!y=50mm] + +\setupletterframe + [\v!backaddress] + [\c!width=80mm, + \c!height=5mm, + \c!bottomframe=\v!on] + +\setupletterlayer + [\v!botmark] + [\c!state=\v!stop] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-dutch.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-dutch.mkiv new file mode 100644 index 0000000000..7febd6229b --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-dutch.mkiv @@ -0,0 +1,79 @@ +%D \module +%D [ file=letter-imp-dutch, +%D version=2011.11.01, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Dutch style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[dinb] + +\setupletterlayout + [\v!firstpage,\v!secondpage] + [\c!topspace=105mm, + \c!bottomspace=30mm, + \c!backspace=33mm, + \c!width=\v!middle, + \c!height=\v!middle] + +\setupletterlayout + [\v!secondpage] + [\c!topspace=20mm, + \c!header=15mm, + \c!headerdistance=15mm, + \c!height=\v!middle] + +\setupletterlayer + [\v!topmark,\v!cutmark] + [\c!state=\v!repeat, + \c!x=3.5mm] + +\setuplettersection + [\v!subject] + [\c!spaceafter=\v!line] + +\setuplettersection + [\v!closing] + [\c!spaceinbetween=\v!line] + +\setupletterlayer + [\v!address] + [\c!y=55mm] + +\setupletterframe + [\v!address] + [\c!height=35mm, + \c!width=80mm] + +\setupletterlayer + [\v!backaddress] + [\c!y=50mm] + +\setupletterframe + [\v!backaddress] + [\c!width=80mm, + \c!height=5mm, + \c!bottomframe=\v!on] + +\setupletterlayer + [\v!botmark] + [\c!state=\v!stop] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-french.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-french.mkii new file mode 100644 index 0000000000..d922234b92 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-french.mkii @@ -0,0 +1,94 @@ +%D \module +%D [ file=letter-imp-french, +%D version=2013.06.21, +%D title=\CONTEXT\ Letter Style, +%D subtitle=French style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[dinb] + +\setupletterlayout + [\v!firstpage,\v!secondpage] + [\c!backspace=25mm, + \c!width=\v!middle, + \c!topspace=95mm, + \c!bottomspace=25mm, + \c!height=\v!fit] + +\setupletterlayout + [\v!secondpage] + [\c!topspace=15mm, + \c!header=10mm] + +\setupletterlayer + [\v!cutmark,\v!botmark] + [\c!state=\v!stop] + +\setupletterlayer + [\v!head] + [\c!x=\backspace, + \c!y=25mm] + +\setupletterlayer + [\v!backaddress] + [\c!state=\v!stop] + +\setupletterlayer + [\v!address] + [\c!x=107mm, + \c!y=55mm] + +\setupletterlayer + [\v!location] + [\c!x=107mm, + \c!y=30mm, + \c!alternative=\v!french] + +\setupletterlayer + [\v!reference] + [\c!state=\v!stop] + +\setuplettersection + [\v!closing] + [\c!spaceinbetween={\v!samepage,2*\v!line}] + +\setupletterdescription + [\v!enclosure] + [\c!location=\v!left, + \c!width=\v!fit, + \c!headstyle=\tf] + +\setuplettersection + [\v!opening] + [\c!spaceafter={2*\v!line}] + +\setuplettersection + [\v!content] + [\c!spaceafter={\v!samepage,2*\v!line}] + +\setuplettersection + [\v!opening,\v!closing] + [\c!alternative=\v!french] + +\setupletteroptions + [\c!whitespace=\v!line] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-french.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-french.mkiv new file mode 100644 index 0000000000..d922234b92 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-french.mkiv @@ -0,0 +1,94 @@ +%D \module +%D [ file=letter-imp-french, +%D version=2013.06.21, +%D title=\CONTEXT\ Letter Style, +%D subtitle=French style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[dinb] + +\setupletterlayout + [\v!firstpage,\v!secondpage] + [\c!backspace=25mm, + \c!width=\v!middle, + \c!topspace=95mm, + \c!bottomspace=25mm, + \c!height=\v!fit] + +\setupletterlayout + [\v!secondpage] + [\c!topspace=15mm, + \c!header=10mm] + +\setupletterlayer + [\v!cutmark,\v!botmark] + [\c!state=\v!stop] + +\setupletterlayer + [\v!head] + [\c!x=\backspace, + \c!y=25mm] + +\setupletterlayer + [\v!backaddress] + [\c!state=\v!stop] + +\setupletterlayer + [\v!address] + [\c!x=107mm, + \c!y=55mm] + +\setupletterlayer + [\v!location] + [\c!x=107mm, + \c!y=30mm, + \c!alternative=\v!french] + +\setupletterlayer + [\v!reference] + [\c!state=\v!stop] + +\setuplettersection + [\v!closing] + [\c!spaceinbetween={\v!samepage,2*\v!line}] + +\setupletterdescription + [\v!enclosure] + [\c!location=\v!left, + \c!width=\v!fit, + \c!headstyle=\tf] + +\setuplettersection + [\v!opening] + [\c!spaceafter={2*\v!line}] + +\setuplettersection + [\v!content] + [\c!spaceafter={\v!samepage,2*\v!line}] + +\setuplettersection + [\v!opening,\v!closing] + [\c!alternative=\v!french] + +\setupletteroptions + [\c!whitespace=\v!line] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-fullblock.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-fullblock.mkii new file mode 100644 index 0000000000..a8f29214a8 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-fullblock.mkii @@ -0,0 +1,52 @@ +%D \module +%D [ file=letter-imp-fullblock, +%D version=2011.12.24, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Fullblock style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[blockstyle] + +\setupletterlayout + [\v!firstpage,\v!secondpage] + [\c!backspace=1in, + \c!width=\v!middle, + \c!topspace=1in, + \c!header=0in, + \c!footer=0in, + \c!height=\v!fit] + +\setupletterlayout + [\v!secondpage] + [\c!header=.5in] + +\setuplettersection + [\v!closing] + [\c!spaceafter={2*\v!line}] + +\setupletterlayer + [\v!nexthead] + [\c!alternative=\v!fullblock] + +\setupletteroptions + [\c!whitespace=\v!line] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-fullblock.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-fullblock.mkiv new file mode 100644 index 0000000000..a8f29214a8 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-fullblock.mkiv @@ -0,0 +1,52 @@ +%D \module +%D [ file=letter-imp-fullblock, +%D version=2011.12.24, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Fullblock style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[blockstyle] + +\setupletterlayout + [\v!firstpage,\v!secondpage] + [\c!backspace=1in, + \c!width=\v!middle, + \c!topspace=1in, + \c!header=0in, + \c!footer=0in, + \c!height=\v!fit] + +\setupletterlayout + [\v!secondpage] + [\c!header=.5in] + +\setuplettersection + [\v!closing] + [\c!spaceafter={2*\v!line}] + +\setupletterlayer + [\v!nexthead] + [\c!alternative=\v!fullblock] + +\setupletteroptions + [\c!whitespace=\v!line] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-gbrief.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-gbrief.mkii new file mode 100644 index 0000000000..c655a2a6a5 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-gbrief.mkii @@ -0,0 +1,56 @@ +%D \module +%D [ file=letter-imp-gbrief, +%D version=2011.11.01, +%D title=\CONTEXT\ Letter Style, +%D subtitle=g-brief, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[dinb] + +\setupletterlayer + [\v!reference] + [\c!alternative=\v!a] + +\setupletterlayer + [\v!backaddress] + [\c!separator={~\mathematics\cdot~}] + +\setupletterframe + [\v!backaddress] + [\c!bottomframe=\v!on] + +\setupletterlayer + [\v!head,\v!foot,\v!nexthead] + [\c!alternative=\v!gbrief] + +\setupletterlayer + [\v!head] + [\c!style={\switchtobodyfont[20pt]\sc}] + +\setupletterlayer + [\v!foot] + [\c!style=\txx] + +\setupletterlayer + [\v!nexthead] + [\c!style=\v!smallcaps] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-gbrief.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-gbrief.mkiv new file mode 100644 index 0000000000..c655a2a6a5 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-gbrief.mkiv @@ -0,0 +1,56 @@ +%D \module +%D [ file=letter-imp-gbrief, +%D version=2011.11.01, +%D title=\CONTEXT\ Letter Style, +%D subtitle=g-brief, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[dinb] + +\setupletterlayer + [\v!reference] + [\c!alternative=\v!a] + +\setupletterlayer + [\v!backaddress] + [\c!separator={~\mathematics\cdot~}] + +\setupletterframe + [\v!backaddress] + [\c!bottomframe=\v!on] + +\setupletterlayer + [\v!head,\v!foot,\v!nexthead] + [\c!alternative=\v!gbrief] + +\setupletterlayer + [\v!head] + [\c!style={\switchtobodyfont[20pt]\sc}] + +\setupletterlayer + [\v!foot] + [\c!style=\txx] + +\setupletterlayer + [\v!nexthead] + [\c!style=\v!smallcaps] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-hanging.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-hanging.mkii new file mode 100644 index 0000000000..1b4dd7d436 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-hanging.mkii @@ -0,0 +1,61 @@ +%D \module +%D [ file=letter-imp-hanging, +%D version=2011.12.24, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Hanging indented style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[blockstyle] + +\setupletterlayout + [\v!firstpage,\v!secondpage] + [\c!backspace=1in, + \c!width=\v!middle, + \c!topspace=1in, + \c!header=0in, + \c!footer=0in, + \c!height=\v!fit] + +\setupletterlayout + [\v!secondpage] + [\c!header=1in] + +\setuplettersection + [\v!head,\v!reference,\v!date,\v!specialnotation,\v!closing] + [\c!leftmargin=.5\textwidth] + +\setuplettersection + [\v!content] + [\c!leftmargin=1.5em, + \c!indenting={\v!yes,-1.5em}] + +\setuplettersection + [\v!closing] + [\c!spaceafter={2*\v!line}] + +\setupletterlayer + [\v!nexthead] + [\c!alternative=\v!hanging] + +\setupletteroptions + [\c!whitespace=\v!line] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-hanging.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-hanging.mkiv new file mode 100644 index 0000000000..1b4dd7d436 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-hanging.mkiv @@ -0,0 +1,61 @@ +%D \module +%D [ file=letter-imp-hanging, +%D version=2011.12.24, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Hanging indented style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[blockstyle] + +\setupletterlayout + [\v!firstpage,\v!secondpage] + [\c!backspace=1in, + \c!width=\v!middle, + \c!topspace=1in, + \c!header=0in, + \c!footer=0in, + \c!height=\v!fit] + +\setupletterlayout + [\v!secondpage] + [\c!header=1in] + +\setuplettersection + [\v!head,\v!reference,\v!date,\v!specialnotation,\v!closing] + [\c!leftmargin=.5\textwidth] + +\setuplettersection + [\v!content] + [\c!leftmargin=1.5em, + \c!indenting={\v!yes,-1.5em}] + +\setuplettersection + [\v!closing] + [\c!spaceafter={2*\v!line}] + +\setupletterlayer + [\v!nexthead] + [\c!alternative=\v!hanging] + +\setupletteroptions + [\c!whitespace=\v!line] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-knuth.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-knuth.mkii new file mode 100644 index 0000000000..eb1ae07e1f --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-knuth.mkii @@ -0,0 +1,71 @@ +%D \module +%D [ file=letter-imp-knuth, +%D version=2011.12.26, +%D title=\CONTEXT\ User Module, +%D subtitle=Knuth letter style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[default] + +\setupletterstyle + [\v!firstpage,\v!secondpage] + [\c!backspace=1in, + \c!cutspace=1in, + \c!width=\v!middle] + +\setupletterstyle + [\v!firstpage] + [\c!header=0pt, + \c!topspace=2.2in, + \c!bottomspace=1.5in, + \c!height=\v!middle] + +\setupletterlayer + [\v!nexthead] + [\c!alternative=\v!knuth] + +\setuplettersection + [\v!address] + [\c!alternative=\v!knuth] + +\setuplettersection + [\v!closing] + [\c!alternative=\v!knuth, + \c!spaceinbetween=1cm] + +\setupletteroptions + [\c!whitespace=\v!line] + +\setupletterelements + [\v!layer] + [\v!lettermain, + \v!letternext, + \v!nexthead] + +\setupletterelements + [\v!section] + [\v!address, + \v!opening, + \v!content, + \v!closing] + + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-knuth.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-knuth.mkiv new file mode 100644 index 0000000000..eb1ae07e1f --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-knuth.mkiv @@ -0,0 +1,71 @@ +%D \module +%D [ file=letter-imp-knuth, +%D version=2011.12.26, +%D title=\CONTEXT\ User Module, +%D subtitle=Knuth letter style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[default] + +\setupletterstyle + [\v!firstpage,\v!secondpage] + [\c!backspace=1in, + \c!cutspace=1in, + \c!width=\v!middle] + +\setupletterstyle + [\v!firstpage] + [\c!header=0pt, + \c!topspace=2.2in, + \c!bottomspace=1.5in, + \c!height=\v!middle] + +\setupletterlayer + [\v!nexthead] + [\c!alternative=\v!knuth] + +\setuplettersection + [\v!address] + [\c!alternative=\v!knuth] + +\setuplettersection + [\v!closing] + [\c!alternative=\v!knuth, + \c!spaceinbetween=1cm] + +\setupletteroptions + [\c!whitespace=\v!line] + +\setupletterelements + [\v!layer] + [\v!lettermain, + \v!letternext, + \v!nexthead] + +\setupletterelements + [\v!section] + [\v!address, + \v!opening, + \v!content, + \v!closing] + + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-modified.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-modified.mkii new file mode 100644 index 0000000000..95323e8f42 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-modified.mkii @@ -0,0 +1,56 @@ +%D \module +%D [ file=letter-imp-modified, +%D version=2011.12.24, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Modified block style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[blockstyle] + +\setupletterlayout + [\v!firstpage,\v!secondpage] + [\c!backspace=1in, + \c!width=\v!middle, + \c!topspace=1in, + \c!header=0in, + \c!footer=0in, + \c!height=\v!middle] + +\setupletterlayout + [\v!secondpage] + [\c!header=1in] + +\setuplettersection + [\v!head,\v!reference,\v!date,\v!specialnotation,\v!closing] + [\c!leftmargin=.5\textwidth] + +\setuplettersection + [\v!closing] + [\c!spaceafter={2*\v!line}] + +\setupletterlayer + [\v!nexthead] + [\c!alternative=\v!hanging] + +\setupletteroptions + [\c!whitespace=\v!line] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-modified.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-modified.mkiv new file mode 100644 index 0000000000..95323e8f42 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-modified.mkiv @@ -0,0 +1,56 @@ +%D \module +%D [ file=letter-imp-modified, +%D version=2011.12.24, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Modified block style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[blockstyle] + +\setupletterlayout + [\v!firstpage,\v!secondpage] + [\c!backspace=1in, + \c!width=\v!middle, + \c!topspace=1in, + \c!header=0in, + \c!footer=0in, + \c!height=\v!middle] + +\setupletterlayout + [\v!secondpage] + [\c!header=1in] + +\setuplettersection + [\v!head,\v!reference,\v!date,\v!specialnotation,\v!closing] + [\c!leftmargin=.5\textwidth] + +\setuplettersection + [\v!closing] + [\c!spaceafter={2*\v!line}] + +\setupletterlayer + [\v!nexthead] + [\c!alternative=\v!hanging] + +\setupletteroptions + [\c!whitespace=\v!line] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-semiblock.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-semiblock.mkii new file mode 100644 index 0000000000..8dc6c86a95 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-semiblock.mkii @@ -0,0 +1,57 @@ +%D \module +%D [ file=letter-imp-semiblock, +%D version=2011.12.24, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Semiblock style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[blockstyle] + +\setupletterlayout + [\v!firstpage,\v!secondpage] + [\c!backspace=1in, + \c!width=\v!middle, + \c!topspace=1in, + \c!header=0in, + \c!footer=0in, + \c!height=\v!middle] + +\setupletterlayout + [\v!secondpage] + [\c!header=.5in] + +\setuplettersection + [\v!head,\v!reference,\v!date,\v!specialnotation,\v!closing] + [\c!leftmargin=.5\textwidth] + +\setuplettersection + [\v!closing] + [\c!spaceafter={2*\v!line}] + +\setupletterlayer + [\v!nexthead] + [\c!alternative=\v!semiblock] + +\setupletteroptions + [\c!whitespace=\v!line, + \c!indenting={\v!yes,\v!medium,\v!first}] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-semiblock.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-semiblock.mkiv new file mode 100644 index 0000000000..8dc6c86a95 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-semiblock.mkiv @@ -0,0 +1,57 @@ +%D \module +%D [ file=letter-imp-semiblock, +%D version=2011.12.24, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Semiblock style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[blockstyle] + +\setupletterlayout + [\v!firstpage,\v!secondpage] + [\c!backspace=1in, + \c!width=\v!middle, + \c!topspace=1in, + \c!header=0in, + \c!footer=0in, + \c!height=\v!middle] + +\setupletterlayout + [\v!secondpage] + [\c!header=.5in] + +\setuplettersection + [\v!head,\v!reference,\v!date,\v!specialnotation,\v!closing] + [\c!leftmargin=.5\textwidth] + +\setuplettersection + [\v!closing] + [\c!spaceafter={2*\v!line}] + +\setupletterlayer + [\v!nexthead] + [\c!alternative=\v!semiblock] + +\setupletteroptions + [\c!whitespace=\v!line, + \c!indenting={\v!yes,\v!medium,\v!first}] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-setups.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-setups.mkii new file mode 100644 index 0000000000..bddf849f03 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-setups.mkii @@ -0,0 +1,62 @@ +%D \module +%D [ file=letter-imp-setups, +%D version=2012.01.01, +%D title=\CONTEXT\ User Module, +%D subtitle=Setups style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\setupletterlayer + [\v!head,\v!nexthead,\v!lefthead,\v!righthead] + [\c!alternative=\v!setups] + +\setupletterlayer + [\v!foot,\v!nextfoot,\v!leftfoot,\v!rightfoot] + [\c!alternative=\v!setups] + +\setupletterlayer + [\v!address,\v!backaddress] + [\c!alternative=\v!setups] + +\setupletterlayer + [\v!reference,\v!location] + [\c!alternative=\v!setups] + +% \setupletterlayer +% [\v!topmark,\v!botmark,\v!cutmark,\v!endmark,\v!usermark] +% [\c!alternative=\v!setups] + +\setupletterlayer + [\v!lettermain,\v!letternext] + [\c!alternative=\v!setups] + +\setuplettersection % only used for blockstyle layouts + [\v!head,\v!date,\v!reference,\v!specialnotation,\v!address] + [\c!alternative=\v!setups] + +\setuplettersection % default sections + [\v!title,\v!subject,\v!opening,\v!content,\v!closing,\v!appendices] + [\c!alternative=\v!setups] + +% \setuplettersection % otherwise no text is shown +% [\v!content] +% [\c!alternative=\s!default] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-setups.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-setups.mkiv new file mode 100644 index 0000000000..bddf849f03 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-setups.mkiv @@ -0,0 +1,62 @@ +%D \module +%D [ file=letter-imp-setups, +%D version=2012.01.01, +%D title=\CONTEXT\ User Module, +%D subtitle=Setups style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\setupletterlayer + [\v!head,\v!nexthead,\v!lefthead,\v!righthead] + [\c!alternative=\v!setups] + +\setupletterlayer + [\v!foot,\v!nextfoot,\v!leftfoot,\v!rightfoot] + [\c!alternative=\v!setups] + +\setupletterlayer + [\v!address,\v!backaddress] + [\c!alternative=\v!setups] + +\setupletterlayer + [\v!reference,\v!location] + [\c!alternative=\v!setups] + +% \setupletterlayer +% [\v!topmark,\v!botmark,\v!cutmark,\v!endmark,\v!usermark] +% [\c!alternative=\v!setups] + +\setupletterlayer + [\v!lettermain,\v!letternext] + [\c!alternative=\v!setups] + +\setuplettersection % only used for blockstyle layouts + [\v!head,\v!date,\v!reference,\v!specialnotation,\v!address] + [\c!alternative=\v!setups] + +\setuplettersection % default sections + [\v!title,\v!subject,\v!opening,\v!content,\v!closing,\v!appendices] + [\c!alternative=\v!setups] + +% \setuplettersection % otherwise no text is shown +% [\v!content] +% [\c!alternative=\s!default] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-simplified.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-simplified.mkii new file mode 100644 index 0000000000..769b6055a4 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-simplified.mkii @@ -0,0 +1,65 @@ +%D \module +%D [ file=letter-imp-simplified, +%D version=2011.12.24, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Simplified style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[blockstyle] + +\setupletterlayout + [\v!firstpage,\v!secondpage] + [\c!backspace=1in, + \c!width=\v!middle, + \c!topspace=1in, + \c!header=0in, + \c!footer=0in, + \c!height=\v!middle] + +\setupletterlayout + [\v!secondpage] + [\c!header=.5in] + +\setuplettersection + [\v!closing] + [\c!spaceafter={2*\v!line}] + +\setuplettersection + [\v!nexthead,\v!closing] + [\c!alternative=\v!simplified] + +\setupletteroptions + [\c!whitespace=\v!line] + +\setupletterelements + [\v!section] + [\v!head + \v!date, + \v!reference, + \v!specialnotation, + \v!address, + \v!title, + \v!subject, + \v!content, + \v!closing, + \v!appendices] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-simplified.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-simplified.mkiv new file mode 100644 index 0000000000..769b6055a4 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-simplified.mkiv @@ -0,0 +1,65 @@ +%D \module +%D [ file=letter-imp-simplified, +%D version=2011.12.24, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Simplified style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[blockstyle] + +\setupletterlayout + [\v!firstpage,\v!secondpage] + [\c!backspace=1in, + \c!width=\v!middle, + \c!topspace=1in, + \c!header=0in, + \c!footer=0in, + \c!height=\v!middle] + +\setupletterlayout + [\v!secondpage] + [\c!header=.5in] + +\setuplettersection + [\v!closing] + [\c!spaceafter={2*\v!line}] + +\setuplettersection + [\v!nexthead,\v!closing] + [\c!alternative=\v!simplified] + +\setupletteroptions + [\c!whitespace=\v!line] + +\setupletterelements + [\v!section] + [\v!head + \v!date, + \v!reference, + \v!specialnotation, + \v!address, + \v!title, + \v!subject, + \v!content, + \v!closing, + \v!appendices] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-swiss.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-swiss.mkii new file mode 100644 index 0000000000..5544b000b1 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-swiss.mkii @@ -0,0 +1,54 @@ +%D \module +%D [ file=letter-imp-swiss, +%D version=2011.10.29, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Swiss style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[dinb] + +\setupletterlayer + [\v!head] + [\c!y=8mm] + +\setupletterlayer + [\v!address,\v!backaddress] + [\c!preset=\v!right\v!top, + \c!x=8mm] + +\setupletterframe + [\v!address,\v!backaddress] + [\c!width=90mm] + +%\setupletterlayer +% [\v!reference] +% [\c!y=98.5mm, +% \c!spaceafter=\v!line] + +\setupletterlayer + [\v!reference] + [\c!y=98.5mm] + +\setupletterlayer + [\v!foldmark] + [\c!state=\v!stop] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-swiss.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-swiss.mkiv new file mode 100644 index 0000000000..92f569d471 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-swiss.mkiv @@ -0,0 +1,53 @@ +%D \module +%D [ file=letter-imp-swiss, +%D version=2011.10.29, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Swiss style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[dinb] + +\setupletterlayer + [\v!head] + [\c!y=8mm] + +\setupletterlayer + [\v!address,\v!backaddress] + [\c!preset=\v!right\v!top, + \c!x=8mm] + +\setupletterframe + [\v!address,\v!backaddress] + [\c!width=90mm] + +%\setupletterlayer +% [\v!reference] +% [\c!y=98.5mm, +% \c!spaceafter=\v!line] + +\setupletterlayer + [\v!reference] + [\c!y=98.5mm] + +\setupletteroptions + [\c!marking=\v!no] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-swissleft.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-swissleft.mkii new file mode 100644 index 0000000000..19a2cb843c --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-swissleft.mkii @@ -0,0 +1,58 @@ +%D \module +%D [ file=letter-imp-swissleft, +%D version=2011.10.29, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Swiss left style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[dinb] + +\setupletterlayer + [\v!head] + [\c!y=8mm] + +\setupletterlayer + [\v!address] + [\c!x=20mm, + \c!y=40.5mm] + +\setupletterlayer + [\v!backaddress] + [\c!x=20mm] + +\setupletterframe + [\v!address,\v!backaddress] + [\c!width=100mm] + +%\setupletterlayer +% [\v!reference] +% [\c!y=89mm, +% \c!spaceafter=\v!line] + +\setupletterlayer + [\v!reference] + [\c!y=89mm] + +\setupletterlayer + [\v!foldmark] + [\c!state=\v!stop] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-swissleft.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-swissleft.mkiv new file mode 100644 index 0000000000..9f0b4e61a1 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/letter-imp-swissleft.mkiv @@ -0,0 +1,57 @@ +%D \module +%D [ file=letter-imp-swissleft, +%D version=2011.10.29, +%D title=\CONTEXT\ Letter Style, +%D subtitle=Swiss left style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useletterstyle[dinb] + +\setupletterlayer + [\v!head] + [\c!y=8mm] + +\setupletterlayer + [\v!address] + [\c!x=20mm, + \c!y=40.5mm] + +\setupletterlayer + [\v!backaddress] + [\c!x=20mm] + +\setupletterframe + [\v!address,\v!backaddress] + [\c!width=100mm] + +%\setupletterlayer +% [\v!reference] +% [\c!y=89mm, +% \c!spaceafter=\v!line] + +\setupletterlayer + [\v!reference] + [\c!y=89mm] + +\setupletteroptions + [\c!marking=\v!no] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-default.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-default.mkii new file mode 100644 index 0000000000..6af6824905 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-default.mkii @@ -0,0 +1,96 @@ +%D \module +%D [ file=memo-imp-default, +%D version=2012.02.04, +%D title=\CONTEXT\ User Module, +%D subtitle=Default memo style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\setupmemo + [\c!date=\currentdate] + +\setupmemooptions + [\c!marking=\v!no] + +\setupmemolayer + [\v!head,\v!nexthead,\v!lefthead,\v!righthead] + [\c!x=\backspace, + \c!y=\topspace] + +\setupmemoframe + [\v!head,\v!nexthead,\v!lefthead,\v!righthead] + [\c!width=\textwidth] + +\setupmemolayer + [\v!foot,\v!nextfoot,\v!leftfoot,\v!rightfoot] + [\c!preset=\v!left\v!bottom, + \c!x=\backspace, + \c!y=\bottomspace] + +\setupmemoframe + [\v!foot,\v!nextfoot,\v!leftfoot,\v!rightfoot] + [\c!width=\textwidth, + \c!height=\footerheight] + +\setupmemolayer + [\v!nexthead,\v!nextfoot] + [\c!state=\v!next] + +\setupmemolayer + [\v!lefthead,\v!leftfoot] + [\c!state=\v!left] + +\setupmemolayer + [\v!righthead,\v!rightfoot] + [\c!state=\v!right] + +\definememoelements + [\v!layer] + [\v!memomain, + \v!memonext, + \v!head, + \v!nexthead, + \v!lefthead, + \v!righthead, + \v!foot, + \v!nextfoot, + \v!leftfoot, + \v!rightfoot, + \v!topmark, + \v!botmark, + \v!cutmark, + \v!endmark, + \v!usermark] + +\definememoelements + [\v!section] + [\v!head + \v!date, + \v!reference, + \v!specialnotation, + \v!address, + \v!title, + \v!opening, + \v!subject, + \v!content, + \v!closing, + \v!appendices] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-default.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-default.mkiv new file mode 100644 index 0000000000..6af6824905 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-default.mkiv @@ -0,0 +1,96 @@ +%D \module +%D [ file=memo-imp-default, +%D version=2012.02.04, +%D title=\CONTEXT\ User Module, +%D subtitle=Default memo style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\setupmemo + [\c!date=\currentdate] + +\setupmemooptions + [\c!marking=\v!no] + +\setupmemolayer + [\v!head,\v!nexthead,\v!lefthead,\v!righthead] + [\c!x=\backspace, + \c!y=\topspace] + +\setupmemoframe + [\v!head,\v!nexthead,\v!lefthead,\v!righthead] + [\c!width=\textwidth] + +\setupmemolayer + [\v!foot,\v!nextfoot,\v!leftfoot,\v!rightfoot] + [\c!preset=\v!left\v!bottom, + \c!x=\backspace, + \c!y=\bottomspace] + +\setupmemoframe + [\v!foot,\v!nextfoot,\v!leftfoot,\v!rightfoot] + [\c!width=\textwidth, + \c!height=\footerheight] + +\setupmemolayer + [\v!nexthead,\v!nextfoot] + [\c!state=\v!next] + +\setupmemolayer + [\v!lefthead,\v!leftfoot] + [\c!state=\v!left] + +\setupmemolayer + [\v!righthead,\v!rightfoot] + [\c!state=\v!right] + +\definememoelements + [\v!layer] + [\v!memomain, + \v!memonext, + \v!head, + \v!nexthead, + \v!lefthead, + \v!righthead, + \v!foot, + \v!nextfoot, + \v!leftfoot, + \v!rightfoot, + \v!topmark, + \v!botmark, + \v!cutmark, + \v!endmark, + \v!usermark] + +\definememoelements + [\v!section] + [\v!head + \v!date, + \v!reference, + \v!specialnotation, + \v!address, + \v!title, + \v!opening, + \v!subject, + \v!content, + \v!closing, + \v!appendices] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-margin.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-margin.mkii new file mode 100644 index 0000000000..3783157b2f --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-margin.mkii @@ -0,0 +1,55 @@ +%D \module +%D [ file=memo-imp-margin, +%D version=2012.06.10, +%D title=\CONTEXT\ Memo Style, +%D subtitle=Margin style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\usememostyle[default] + +\setupmemolayout + [\v!firstpage,\v!secondpage] + [\c!header=0in] + +\setupmemosection + [\v!head] + [\c!alternative=\v!margin] + +\setupmemolayer + [\v!foot] + [\c!state=\v!repeat, + \c!alternative=\v!pagenumber] + +\setupmemooptions + [\c!whitespace=\v!line] + +\setupmemostyle + [\c!fromname,\c!date,\c!toname,\c!subject] + [\c!titlestyle=\tx] + +\definememoelements + [\v!section] + [\v!head, + \v!content, + \v!closing, + \v!appendices] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-margin.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-margin.mkiv new file mode 100644 index 0000000000..3783157b2f --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-margin.mkiv @@ -0,0 +1,55 @@ +%D \module +%D [ file=memo-imp-margin, +%D version=2012.06.10, +%D title=\CONTEXT\ Memo Style, +%D subtitle=Margin style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\usememostyle[default] + +\setupmemolayout + [\v!firstpage,\v!secondpage] + [\c!header=0in] + +\setupmemosection + [\v!head] + [\c!alternative=\v!margin] + +\setupmemolayer + [\v!foot] + [\c!state=\v!repeat, + \c!alternative=\v!pagenumber] + +\setupmemooptions + [\c!whitespace=\v!line] + +\setupmemostyle + [\c!fromname,\c!date,\c!toname,\c!subject] + [\c!titlestyle=\tx] + +\definememoelements + [\v!section] + [\v!head, + \v!content, + \v!closing, + \v!appendices] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-memo.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-memo.mkii new file mode 100644 index 0000000000..077a6c02dc --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-memo.mkii @@ -0,0 +1,55 @@ +%D \module +%D [ file=memo-imp-memo, +%D version=2012.02.04, +%D title=\CONTEXT\ Memo Style, +%D subtitle=Memo style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\usememostyle[default] + +\setupmemolayout + [\v!firstpage,\v!secondpage] + [\c!header=0in] + +\setupmemosection + [\v!head] + [\c!alternative=\v!memo] + +\setupmemolayer + [\v!foot] + [\c!state=\v!repeat, + \c!alternative=\v!pagenumber] + +\setupmemosection + [\v!closing] + [\c!leftmargin=.5\textwidth] + +\setupmemooptions + [\c!whitespace=\v!line] + +\definememoelements + [\v!section] + [\v!head, + \v!content, + \v!closing, + \v!appendices] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-memo.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-memo.mkiv new file mode 100644 index 0000000000..077a6c02dc --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-memo.mkiv @@ -0,0 +1,55 @@ +%D \module +%D [ file=memo-imp-memo, +%D version=2012.02.04, +%D title=\CONTEXT\ Memo Style, +%D subtitle=Memo style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\usememostyle[default] + +\setupmemolayout + [\v!firstpage,\v!secondpage] + [\c!header=0in] + +\setupmemosection + [\v!head] + [\c!alternative=\v!memo] + +\setupmemolayer + [\v!foot] + [\c!state=\v!repeat, + \c!alternative=\v!pagenumber] + +\setupmemosection + [\v!closing] + [\c!leftmargin=.5\textwidth] + +\setupmemooptions + [\c!whitespace=\v!line] + +\definememoelements + [\v!section] + [\v!head, + \v!content, + \v!closing, + \v!appendices] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-table.mkii b/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-table.mkii new file mode 100644 index 0000000000..2a21da6002 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-table.mkii @@ -0,0 +1,51 @@ +%D \module +%D [ file=memo-imp-table, +%D version=2012.02.04, +%D title=\CONTEXT\ Memo Style, +%D subtitle=Table style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\usememostyle[default] + +\setupmemolayout + [\v!firstpage,\v!secondpage] + [\c!header=0in] + +\setupmemosection + [\v!head] + [\c!alternative=\v!table] + +\setupmemolayer + [\v!foot] + [\c!state=\v!repeat, + \c!alternative=\v!pagenumber] + +\setupmemooptions + [\c!whitespace=\v!line] + +\definememoelements + [\v!section] + [\v!head, + \v!content, + \v!closing, + \v!appendices] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-table.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-table.mkiv new file mode 100644 index 0000000000..2a21da6002 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/memo-imp-table.mkiv @@ -0,0 +1,51 @@ +%D \module +%D [ file=memo-imp-table, +%D version=2012.02.04, +%D title=\CONTEXT\ Memo Style, +%D subtitle=Table style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2011 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\usememostyle[default] + +\setupmemolayout + [\v!firstpage,\v!secondpage] + [\c!header=0in] + +\setupmemosection + [\v!head] + [\c!alternative=\v!table] + +\setupmemolayer + [\v!foot] + [\c!state=\v!repeat, + \c!alternative=\v!pagenumber] + +\setupmemooptions + [\c!whitespace=\v!line] + +\definememoelements + [\v!section] + [\v!head, + \v!content, + \v!closing, + \v!appendices] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-casual-blue.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-casual-blue.mkiv new file mode 100644 index 0000000000..ce64b11bcb --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-casual-blue.mkiv @@ -0,0 +1,38 @@ +%D \module +%D [ file=resume-imp-casual-blue, +%D version=2014.10.31, +%D title=\CONTEXT\ Resume Style, +%D subtitle=Casual style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2012 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useresumestyle[casual] + +\definecolor [resume:forename] [r=0.65,g=0.65,b=0.65] +\definecolor [resume:surename] [r=0.45,g=0.45,b=0.45] +\definecolor [resume:title] [r=0.00,g=0.00,b=0.00] +\definecolor [resume:quote] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:address] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:rule] [r=0.25,g=0.50,b=0.75] +\definecolor [resume:section] [r=0.20,g=0.40,b=0.65] +\definecolor [resume:subsection] [r=0.20,g=0.40,b=0.65] +\definecolor [resume:separator] [r=0.25,g=0.50,b=0.75] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-casual-green.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-casual-green.mkiv new file mode 100644 index 0000000000..94c078313f --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-casual-green.mkiv @@ -0,0 +1,38 @@ +%D \module +%D [ file=resume-imp-casual-blue, +%D version=2014.10.31, +%D title=\CONTEXT\ Resume Style, +%D subtitle=Casual style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2012 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useresumestyle[casual] + +\definecolor [resume:forename] [r=0.65,g=0.65,b=0.65] +\definecolor [resume:surename] [r=0.45,g=0.45,b=0.45] +\definecolor [resume:title] [r=0.00,g=0.00,b=0.00] +\definecolor [resume:quote] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:address] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:rule] [r=0.55,g=0.85,b=0.35] +\definecolor [resume:section] [r=0.30,g=0.65,b=0.15] +\definecolor [resume:subsection] [r=0.30,g=0.65,b=0.15] +\definecolor [resume:separator] [r=0.30,g=0.65,b=0.15] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-casual-grey.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-casual-grey.mkiv new file mode 100644 index 0000000000..3ed16e01ef --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-casual-grey.mkiv @@ -0,0 +1,38 @@ +%D \module +%D [ file=resume-imp-casual-grey, +%D version=2014.10.31, +%D title=\CONTEXT\ Resume Style, +%D subtitle=Casual style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2012 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useresumestyle[casual] + +\definecolor [resume:forename] [r=0.65,g=0.65,b=0.65] +\definecolor [resume:surename] [r=0.45,g=0.45,b=0.45] +\definecolor [resume:title] [r=0.00,g=0.00,b=0.00] +\definecolor [resume:quote] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:address] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:rule] [r=0.75,g=0.75,b=0.75] +\definecolor [resume:section] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:subsection] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:separator] [r=0.35,g=0.35,b=0.35] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-casual-orange.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-casual-orange.mkiv new file mode 100644 index 0000000000..9a31830688 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-casual-orange.mkiv @@ -0,0 +1,38 @@ +%D \module +%D [ file=resume-imp-casual-orange, +%D version=2014.10.31, +%D title=\CONTEXT\ Resume Style, +%D subtitle=Casual style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2012 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useresumestyle[casual] + +\definecolor [resume:forename] [r=0.65,g=0.65,b=0.65] +\definecolor [resume:surename] [r=0.45,g=0.45,b=0.45] +\definecolor [resume:title] [r=0.00,g=0.00,b=0.00] +\definecolor [resume:quote] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:address] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:rule] [r=1.00,g=0.65,b=0.20] +\definecolor [resume:section] [r=0.95,g=0.55,b=0.15] +\definecolor [resume:subsection] [r=0.95,g=0.55,b=0.15] +\definecolor [resume:separator] [r=0.95,g=0.55,b=0.15] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-casual-red.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-casual-red.mkiv new file mode 100644 index 0000000000..9a3b991df8 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-casual-red.mkiv @@ -0,0 +1,38 @@ +%D \module +%D [ file=resume-imp-casual-red, +%D version=2014.10.31, +%D title=\CONTEXT\ Resume Style, +%D subtitle=Casual style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2012 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useresumestyle[casual] + +\definecolor [resume:forename] [r=0.65,g=0.65,b=0.65] +\definecolor [resume:surename] [r=0.45,g=0.45,b=0.45] +\definecolor [resume:title] [r=0.00,g=0.00,b=0.00] +\definecolor [resume:quote] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:address] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:rule] [r=1.00,g=0.30,b=0.30] +\definecolor [resume:section] [r=0.95,g=0.20,b=0.20] +\definecolor [resume:subsection] [r=0.95,g=0.20,b=0.20] +\definecolor [resume:separator] [r=0.95,g=0.20,b=0.20] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-casual.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-casual.mkiv new file mode 100644 index 0000000000..73424613cc --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-casual.mkiv @@ -0,0 +1,160 @@ +%D \module +%D [ file=resume-imp-casual, +%D version=2014.10.31, +%D title=\CONTEXT\ Resume Style, +%D subtitle=Casual style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2012 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useresumestyle[default] + +% The colors are black by default, use one of the color styles to change them. + +\definecolor [resume:forename] [black] +\definecolor [resume:surename] [black] +\definecolor [resume:title] [black] +\definecolor [resume:quote] [black] +\definecolor [resume:address] [black] +\definecolor [resume:rule] [black] +\definecolor [resume:section] [black] +\definecolor [resume:subsection] [black] +\definecolor [resume:separator] [black] + +% Values for the margins etc. + +\definemeasure [resume:margin] [.150\textwidth] +\definemeasure [resume:distance] [.025\textwidth] + +% Layout + +% \setupresumelayout +% [\v!firstpage,\v!secondpage] +% [\c!backspace=20mm, +% \c!width=168mm, +% \c!header=0pt, +% \c!footer=0pt, +% \c!topspace=30mm, +% \c!bottomspace=40mm, +% \c!height=\v!fit] + +% Section commands + +\define[1]\ResumeSectionCommand + {\hbox to \hsize\bgroup + \blackrule[\c!width=\measure{resume:margin},\c!height=1\exheight,\c!depth=-.5\exheight,\c!color=resume:rule]% + \hskip\measure{resume:distance}\relax + \vtop\bgroup + \hsize\dimexpr\hsize-\measure{resume:margin}-\measure{resume:distance}\relax + #1% + \egroup + \egroup} + +\setupresumehead + [\v!resume\v!section] + [\c!align=\v!flushleft, + \c!style=\tfb, + \c!color=modern:section, + \c!textcommand=\ResumeSectionCommand] + +\define[1]\ResumeSubsectionCommand + {\hbox to \hsize\bgroup + \hskip\dimexpr\measure{resume:margin}+\measure{resume:distance}\relax + \vtop\bgroup + \hsize\dimexpr\hsize-\measure{resume:margin}-\measure{resume:distance}\relax + #1% + \egroup + \egroup} + +\setupresumehead + [\v!resume\v!subsection] + [\c!align=\v!flushleft, + \c!style=\tfa, + \c!color=modern:subsection, + \c!textcommand=\ResumeSubsectionCommand] + +% Paragraphs + +\setupresumeparagraph + [\v!two\v!columns] + [\c!distance=\measure{resume:distance}] + +\setupresumeparagraph + [\v!two\v!columns:1] + [\c!width=\measure{resume:margin}] + +% Layer + +\setupresumesection + [\v!head] + [\c!alternative=\v!casual] + +\setupresumeframe + [\v!head] + [\c!height=3.5cm, + \c!frame=\v!off, + \c!align={\v!wide,\v!middle}] + +% Layer + +\setupresumelayer + [\v!foot] + [\c!alternative=\v!casual, + \c!preset=\v!left\v!bottom, + \c!x=\backspace, + \c!y=2cm, + \c!state=\v!repeat, + \c!list={mobile,phone,fax,email,info}] + +\setupresumeframe + [\v!foot] + [\c!frame=\v!off, + \c!width=\textwidth, + \c!height=2cm, + \c!align={\v!middle,\v!low}] + +\setupresumelayer + [\v!nextfoot] + [\c!alternative=\v!casual, + \c!preset=\v!left\v!bottom, + \c!x=\backspace, + \c!y=2cm, + \c!state=\v!repeat] + +\setupresumeframe + [\v!nextfoot] + [\c!frame=\v!off, + \c!width=\textwidth, + \c!height=2cm, + \c!align={\v!flushright,\v!low}] + +% Font and color settings + +\setupresumestyle [firstname] [\c!style=\tfd,\c!color=resume:forename] +\setupresumestyle [familyname][\c!style=\tfd,\c!color=resume:surename] +\setupresumestyle [quote] [\c!style=\tf, \c!color=resume:quote] +\setupresumestyle [street] [\c!style=\it, \c!color=resume:address] +\setupresumestyle [town] [\c!style=\it, \c!color=resume:address] +\setupresumestyle [mobile] [\c!style=\it, \c!color=resume:address] +\setupresumestyle [phone] [\c!style=\it, \c!color=resume:address] +\setupresumestyle [fax] [\c!style=\it, \c!color=resume:address] +\setupresumestyle [email] [\c!style=\it, \c!color=resume:address] +\setupresumestyle [info] [\c!style=\it, \c!color=resume:address] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-classic-blue.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-classic-blue.mkiv new file mode 100644 index 0000000000..8b0108e8ad --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-classic-blue.mkiv @@ -0,0 +1,38 @@ +%D \module +%D [ file=resume-imp-classic-blue, +%D version=2014.10.31, +%D title=\CONTEXT\ Resume Style, +%D subtitle=Classic style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2012 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useresumestyle[classic] + +\definecolor [resume:forename] [r=0.00,g=0.00,b=0.00] +\definecolor [resume:surename] [r=0.00,g=0.00,b=0.00] +\definecolor [resume:title] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:quote] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:address] [r=0.25,g=0.50,b=0.75] +\definecolor [resume:rule] [r=0.25,g=0.50,b=0.75] +\definecolor [resume:section] [r=0.20,g=0.40,b=0.65] +\definecolor [resume:subsection] [r=0.20,g=0.40,b=0.65] +\definecolor [resume:separator] [r=0.00,g=0.00,b=0.00] + +\endinput
\ No newline at end of file diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-classic-green.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-classic-green.mkiv new file mode 100644 index 0000000000..4b8efaa702 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-classic-green.mkiv @@ -0,0 +1,38 @@ +%D \module +%D [ file=resume-imp-classic-green, +%D version=2014.10.31, +%D title=\CONTEXT\ Resume Style, +%D subtitle=Classic style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2012 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useresumestyle[classic] + +\definecolor [resume:forename] [r=0.00,g=0.00,b=0.00] +\definecolor [resume:surename] [r=0.00,g=0.00,b=0.00] +\definecolor [resume:title] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:quote] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:address] [r=0.30,g=0.65,b=0.15] +\definecolor [resume:rule] [r=0.55,g=0.85,b=0.35] +\definecolor [resume:section] [r=0.30,g=0.65,b=0.15] +\definecolor [resume:subsection] [r=0.30,g=0.65,b=0.15] +\definecolor [resume:separator] [r=0.00,g=0.00,b=0.00] + +\endinput
\ No newline at end of file diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-classic-grey.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-classic-grey.mkiv new file mode 100644 index 0000000000..8e81770fe5 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-classic-grey.mkiv @@ -0,0 +1,38 @@ +%D \module +%D [ file=resume-imp-classic-grey, +%D version=2014.10.31, +%D title=\CONTEXT\ Resume Style, +%D subtitle=Classic style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2012 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useresumestyle[classic] + +\definecolor [resume:forename] [r=0.00,g=0.00,b=0.00] +\definecolor [resume:surename] [r=0.00,g=0.00,b=0.00] +\definecolor [resume:title] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:quote] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:address] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:rule] [r=0.75,g=0.75,b=0.75] +\definecolor [resume:section] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:subsection] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:separator] [r=0.00,g=0.00,b=0.00] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-classic-orange.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-classic-orange.mkiv new file mode 100644 index 0000000000..02e4701700 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-classic-orange.mkiv @@ -0,0 +1,38 @@ +%D \module +%D [ file=resume-imp-classic-orange, +%D version=2014.10.31, +%D title=\CONTEXT\ Resume Style, +%D subtitle=Classic style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2012 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useresumestyle[classic] + +\definecolor [resume:forename] [r=0.00,g=0.00,b=0.00] +\definecolor [resume:surename] [r=0.00,g=0.00,b=0.00] +\definecolor [resume:title] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:quote] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:address] [r=0.95,g=0.55,b=0.15] +\definecolor [resume:rule] [r=1.00,g=0.65,b=0.20] +\definecolor [resume:section] [r=0.95,g=0.55,b=0.15] +\definecolor [resume:subsection] [r=0.95,g=0.55,b=0.15] +\definecolor [resume:separator] [r=0.00,g=0.00,b=0.00] + +\endinput
\ No newline at end of file diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-classic-red.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-classic-red.mkiv new file mode 100644 index 0000000000..18a51c1aa7 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-classic-red.mkiv @@ -0,0 +1,38 @@ +%D \module +%D [ file=resume-imp-classic-red, +%D version=2014.10.31, +%D title=\CONTEXT\ Resume Style, +%D subtitle=Classic style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2012 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useresumestyle[classic] + +\definecolor [resume:forename] [r=0.00,g=0.00,b=0.00] +\definecolor [resume:surename] [r=0.00,g=0.00,b=0.00] +\definecolor [resume:title] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:quote] [r=0.35,g=0.35,b=0.35] +\definecolor [resume:address] [r=0.95,g=0.20,b=0.20] +\definecolor [resume:rule] [r=1.00,g=0.30,b=0.30] +\definecolor [resume:section] [r=0.95,g=0.20,b=0.20] +\definecolor [resume:subsection] [r=0.95,g=0.20,b=0.20] +\definecolor [resume:separator] [r=0.00,g=0.00,b=0.00] + +\endinput
\ No newline at end of file diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-classic.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-classic.mkiv new file mode 100644 index 0000000000..01710ec613 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-classic.mkiv @@ -0,0 +1,145 @@ +%D \module +%D [ file=resume-imp-classic, +%D version=2014.10.31, +%D title=\CONTEXT\ Resume Style, +%D subtitle=Classic style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2012 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\useresumestyle[default] + +% The colors are black by default, use one of the color styles to change them. + +\definecolor [resume:forename] [black] +\definecolor [resume:surename] [black] +\definecolor [resume:title] [black] +\definecolor [resume:quote] [black] +\definecolor [resume:address] [black] +\definecolor [resume:rule] [black] +\definecolor [resume:section] [black] +\definecolor [resume:subsection] [black] +\definecolor [resume:separator] [black] + +% Values for the margins etc. + +\definemeasure [resume:margin] [.150\textwidth] +\definemeasure [resume:distance] [.025\textwidth] + +% Layout + +% \setupresumelayout +% [\v!firstpage,\v!secondpage] +% [\c!backspace=20mm, +% \c!width=168mm, +% \c!header=0pt, +% \c!footer=0pt, +% \c!topspace=30mm, +% \c!bottomspace=40mm, +% \c!height=\v!fit] + +% Section commands + +\define[1]\ResumeSectionCommand + {\hbox to \hsize\bgroup + \blackrule[\c!width=\measure{resume:margin},\c!height=1\exheight,\c!depth=-.5\exheight,\c!color=resume:rule]% + \hskip\measure{resume:distance}\relax + \vtop\bgroup + \hsize\dimexpr\hsize-\measure{resume:margin}-\measure{resume:distance}\relax + #1% + \egroup + \egroup} + +\setupresumehead + [\v!resume\v!section] + [\c!align=\v!flushleft, + \c!style=\tfb, + \c!color=modern:section, + \c!textcommand=\ResumeSectionCommand] + +\define[1]\ResumeSubsectionCommand + {\hbox to \hsize\bgroup + \hskip\dimexpr\measure{resume:margin}+\measure{resume:distance}\relax + \vtop\bgroup + \hsize\dimexpr\hsize-\measure{resume:margin}-\measure{resume:distance}\relax + #1% + \egroup + \egroup} + +\setupresumehead + [\v!resume\v!subsection] + [\c!align=\v!flushleft, + \c!style=\tfa, + \c!color=modern:subsection, + \c!textcommand=\ResumeSubsectionCommand] + +% Paragraphs + +\setupresumeparagraph + [\v!two\v!columns] + [\c!distance=\measure{resume:distance}] + +\setupresumeparagraph + [\v!two\v!columns:1] + [\c!width=\measure{resume:margin}] + +% Layer + +\setupresumesection + [\v!head] + [\c!alternative=\v!classic] + +\setupresumeframe + [\v!head] + [\c!height=3.5cm, + \c!frame=\v!off, + \c!align={\v!wide,\v!middle}] + +% Layer + +\setupresumelayer + [\v!nextfoot] + [\c!alternative=\v!classic, + \c!preset=\v!left\v!bottom, + \c!x=\backspace, + \c!y=2cm, + \c!state=\v!repeat] + +\setupresumeframe + [\v!nextfoot] + [\c!frame=\v!off, + \c!width=\textwidth, + \c!height=2cm, + \c!align={\v!flushright,\v!lohi}] + +% Font and color settings + +\setupresumestyle [firstname] [\c!style=\tfd,\c!color=resume:forename] +\setupresumestyle [familyname][\c!style=\tfd,\c!color=resume:surename] +\setupresumestyle [quote] [\c!style=\tf, \c!color=resume:quote] +\setupresumestyle [title] [\c!style=\it, \c!color=resume:title] +\setupresumestyle [street] [\c!style=\it, \c!color=resume:address] +\setupresumestyle [town] [\c!style=\it, \c!color=resume:address] +\setupresumestyle [mobile] [\c!style=\it, \c!color=resume:address] +\setupresumestyle [phone] [\c!style=\it, \c!color=resume:address] +\setupresumestyle [fax] [\c!style=\it, \c!color=resume:address] +\setupresumestyle [email] [\c!style=\it, \c!color=resume:address] +\setupresumestyle [info] [\c!style=\it, \c!color=resume:address] + +\endinput diff --git a/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-default.mkiv b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-default.mkiv new file mode 100644 index 0000000000..a8a1eef1a4 --- /dev/null +++ b/macros/context/contrib/context-letter/tex/context/third/letter/style/resume-imp-default.mkiv @@ -0,0 +1,135 @@ +%D \module +%D [ file=resume-imp-default, +%D version=2012.02.04, +%D title=\CONTEXT\ Resume Style, +%D subtitle=Default style, +%D author=Wolfgang Schuster, +%D date=\currentdate, +%D copyright=Wolfgang Schuster, +%D license=GNU General Public License] + +%C Copyright (C) 2012 Wolfgang Schuster +%C +%C This program is free software: you can redistribute it and/or modify +%C it under the terms of the GNU General Public License as published by +%C the Free Software Foundation, either version 3 of the License, or +%C (at your option) any later version. +%C +%C This program is distributed in the hope that it will be useful, +%C but WITHOUT ANY WARRANTY; without even the implied warranty of +%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%C GNU General Public License for more details. +%C +%C You should have received a copy of the GNU General Public License +%C along with this program. If not, see <http://www.gnu.org/licenses/>. + +\setupresumelayout + [\v!firstpage,\v!secondpage] + [\c!topspace=2.5cm, + \c!header=0mm, % 2.0cm, + \c!headerdistance=0pt, + \c!height=\v!middle, + \c!footerdistance=0pt, + \c!footer=0mm, % 2.0cm, + \c!backspace=2.5cm, + \c!width=\v!middle, + \c!cutspace=3.5cm, + \c!grid=\v!no] + +\setupresumelayer + [\v!head,\v!nexthead,\v!lefthead,\v!righthead] + [\c!x=\backspace, + \c!y=\topspace] + +\setupresumeframe + [\v!head,\v!nexthead,\v!lefthead,\v!righthead] + [\c!width=\textwidth] + +\setupresumelayer + [\v!foot,\v!nextfoot,\v!leftfoot,\v!rightfoot] + [\c!preset=\v!left\v!bottom, + \c!x=\backspace, + \c!y=\bottomspace] + +\setupresumeframe + [\v!foot,\v!nextfoot,\v!leftfoot,\v!rightfoot] + [\c!width=\textwidth, + \c!height=\footerheight] + +\setupresumelayer + [\v!nexthead,\v!nextfoot] + [\c!state=\v!next] + +\setupresumelayer + [\v!lefthead,\v!leftfoot] + [\c!state=\v!left] + +\setupresumelayer + [\v!righthead,\v!rightfoot] + [\c!state=\v!right] + +\setupresumesection + [\v!closing] + [\c!spaceafter=\v!line, + \c!spaceinbetween={\v!samepage,2*\v!line}] + +\setupresumeparagraph + [\v!two\v!columns] + [\c!n=2, + \c!alternative=\v!columns, + \c!distance=\emwidth] + +\setupresumeparagraph + [\v!two\v!columns:1] + [\c!alternative=\c!lefttext, + \c!width=6\emwidth] + +\setupresumeparagraph + [\v!two\v!columns:2] + [\c!alternative=\v!default, + \c!width=\dimexpr\textwidth-\namedresumeparagraphparameter{\v!two\v!columns:1}\c!width-\namedresumeparagraphparameter{\v!two\v!columns}\c!distance\relax] + +\setupresumeparagraph + [\v!three\v!columns] + [\c!n=3, + \c!alternative=\v!columns, + \c!distance=\emwidth] + +\setupresumeparagraph + [\v!three\v!columns:1] + [\c!alternative=\c!lefttext, + \c!width=6\emwidth] + +\setupresumeparagraph + [\v!three\v!columns:2] + [\c!alternative=\v!default, + \c!width=\dimexpr\textwidth-\namedresumeparagraphparameter{\v!three\v!columns:1}\c!width-\namedresumeparagraphparameter{\v!three\v!columns:3}\c!width-\namedresumeparagraphparameter{\v!three\v!columns}\c!distance*2\relax] + +\setupresumeparagraph + [\v!three\v!columns:3] + [\c!alternative=\c!righttext, + \c!width=6\emwidth] + +\defineresumeelements + [\v!layer] + [\v!resumemain, + \v!resumenext, + \v!head, + \v!nexthead, + \v!lefthead, + \v!righthead, + \v!foot, + \v!nextfoot, + \v!topmark, + \v!botmark, + \v!cutmark, + \v!endmark, + \v!usermark] + +\defineresumeelements + [\v!section] + [\v!head, + \v!content, + \v!closing] + +\endinput |