summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
Diffstat (limited to 'Master')
-rw-r--r--Master/texmf-dist/doc/context/third/letter/correspondence.pdfbin0 -> 418265 bytes
-rw-r--r--Master/texmf-dist/doc/context/third/letter/lm.pdfbin148626 -> 0 bytes
-rw-r--r--Master/texmf-dist/tex/context/interface/third/t-letter.xml48
-rwxr-xr-xMaster/texmf-dist/tex/context/interface/third/t-resume.xml75
-rw-r--r--Master/texmf-dist/tex/context/third/letter/base/t-correspondence.tex361
-rw-r--r--Master/texmf-dist/tex/context/third/letter/base/t-letter.tex34
-rw-r--r--Master/texmf-dist/tex/context/third/letter/extension/label.nle2
-rw-r--r--Master/texmf-dist/tex/context/third/letter/extension/optimize.nle13
-rw-r--r--Master/texmf-dist/tex/context/third/letter/interface/default.nli72
-rw-r--r--Master/texmf-dist/tex/context/third/letter/interface/knuth.nli14
-rw-r--r--Master/texmf-dist/tex/context/third/letter/interface/pragma.nli12
-rw-r--r--Master/texmf-dist/tex/context/third/letter/style/default.nls6
-rw-r--r--Master/texmf-dist/tex/context/third/letter/style/fullblock.nls2
-rw-r--r--Master/texmf-dist/tex/context/third/letter/style/knuth.nls18
-rw-r--r--Master/texmf-dist/tex/context/third/letter/style/modern.nrs10
15 files changed, 533 insertions, 134 deletions
diff --git a/Master/texmf-dist/doc/context/third/letter/correspondence.pdf b/Master/texmf-dist/doc/context/third/letter/correspondence.pdf
new file mode 100644
index 00000000000..6d00b374fd1
--- /dev/null
+++ b/Master/texmf-dist/doc/context/third/letter/correspondence.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/context/third/letter/lm.pdf b/Master/texmf-dist/doc/context/third/letter/lm.pdf
deleted file mode 100644
index a23ecef83c2..00000000000
--- a/Master/texmf-dist/doc/context/third/letter/lm.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/tex/context/interface/third/t-letter.xml b/Master/texmf-dist/tex/context/interface/third/t-letter.xml
index c8302c7fe8b..1e775d95173 100644
--- a/Master/texmf-dist/tex/context/interface/third/t-letter.xml
+++ b/Master/texmf-dist/tex/context/interface/third/t-letter.xml
@@ -38,6 +38,12 @@
<cd:constant type="lettermain"/>
</cd:define>
+<cd:define name="letterdescription">
+ <cd:constant type="postscript"/>
+ <cd:constant type="copy"/>
+ <cd:constant type="enclosure"/>
+</cd:define>
+
<cd:command name="setupletterstyle:layout" file="t-letter.tex">
<cd:sequence>
<cd:string value="setupletterstyle"/>
@@ -248,6 +254,48 @@
</cd:arguments>
</cd:command>
+<cd:command name="setupletterdescription" file="t-letter.tex">
+ <cd:sequence>
+ <cd:string value="setupletterstyle"/>
+ </cd:sequence>
+ <cd:arguments>
+ <cd:keywords list="yes">
+ <cd:resolve name="letterdescription"/>
+ </cd:keywords>
+ <cd:assignments list="yes">
+ <cd:parameter name="location">
+ <cd:constant type="left" default="yes"/>
+ <cd:constant type="right"/>
+ <cd:constant type="top"/>
+ <cd:constant type="text"/>
+ </cd:parameter>
+ <cd:parameter name="width">
+ <cd:constant type="fit"/>
+ <cd:constant type="broad" default="yes"/>
+ <cd:constant type="cd:dimension"/>
+ </cd:parameter>
+ <cd:parameter name="distance">
+ <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="inbetween">
+ <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:assignments>
+ </cd:arguments>
+</cd:command>
+
<cd:command name="useletterinterface" file="t-letter.tex">
<cd:sequence>
<cd:string value="useletterinterface"/>
diff --git a/Master/texmf-dist/tex/context/interface/third/t-resume.xml b/Master/texmf-dist/tex/context/interface/third/t-resume.xml
index 4b41cf887c3..a673151dad8 100755
--- a/Master/texmf-dist/tex/context/interface/third/t-resume.xml
+++ b/Master/texmf-dist/tex/context/interface/third/t-resume.xml
@@ -128,4 +128,79 @@
</cd:arguments>
</cd:command>
+<cd:command name="cvline" file="modern.nrs">
+ <cd:sequence>
+ <cd:string value="cvline"/>
+ </cd:sequence>
+ <cd:arguments>
+ <cd:keywords n="1" optional="yes">
+ <cd:constant type="cd:dimension"/>
+ </cd:keywords>
+ <cd:content n="2"/>
+ <cd:content n="3"/>
+ </cd:arguments>
+</cd:command>
+
+<cd:command name="cvlistitem" file="modern.nrs">
+ <cd:sequence>
+ <cd:string value="cvlistitem"/>
+ </cd:sequence>
+ <cd:arguments>
+ <cd:keywords n="1" optional="yes">
+ <cd:constant type="cd:text"/>
+ </cd:keywords>
+ <cd:content n="2"/>
+ </cd:arguments>
+</cd:command>
+
+<cd:command name="cvlistdoubleitem" file="modern.nrs">
+ <cd:sequence>
+ <cd:string value="cvlistdoubleitem"/>
+ </cd:sequence>
+ <cd:arguments>
+ <cd:keywords n="1" optional="yes">
+ <cd:constant type="cd:text"/>
+ </cd:keywords>
+ <cd:content n="2"/>
+ <cd:content n="3"/>
+ </cd:arguments>
+</cd:command>
+
+<cd:command name="cventry" file="modern.nrs">
+ <cd:sequence>
+ <cd:string value="cventry"/>
+ </cd:sequence>
+ <cd:arguments>
+ <cd:content n="1"/>
+ <cd:content n="2"/>
+ <cd:content n="3"/>
+ <cd:content n="4"/>
+ <cd:content n="5"/>
+ <cd:content n="6"/>
+ </cd:arguments>
+</cd:command>
+
+<cd:command name="cvlanguage" file="modern.nrs">
+ <cd:sequence>
+ <cd:string value="cvlanguage"/>
+ </cd:sequence>
+ <cd:arguments>
+ <cd:content n="1"/>
+ <cd:content n="2"/>
+ <cd:content n="3"/>
+ </cd:arguments>
+</cd:command>
+
+<cd:command name="cvcomputer" file="modern.nrs">
+ <cd:sequence>
+ <cd:string value="cvcomputer"/>
+ </cd:sequence>
+ <cd:arguments>
+ <cd:content n="1"/>
+ <cd:content n="2"/>
+ <cd:content n="3"/>
+ <cd:content n="4"/>
+ </cd:arguments>
+</cd:command>
+
</cd:interface>
diff --git a/Master/texmf-dist/tex/context/third/letter/base/t-correspondence.tex b/Master/texmf-dist/tex/context/third/letter/base/t-correspondence.tex
index 79ce09e5420..1d65d767885 100644
--- a/Master/texmf-dist/tex/context/third/letter/base/t-correspondence.tex
+++ b/Master/texmf-dist/tex/context/third/letter/base/t-correspondence.tex
@@ -1,6 +1,6 @@
%D \module
%D [ file=t-correspondence,
-%D version=2008.02.18,
+%D version=2009.03.18,
%D title=\CONTEXT\ User Module,
%D subtitle=Correspondence,
%D author=Wolfgang Schuster,
@@ -251,26 +251,6 @@
\appendtoks\gotonextcorrespage\to\beforeeverypage
-%D Value list
-
-\ifx\appendtovaluelist\undefined
-
-\def\appendtovaluelist#1%
- {\ifcsname#1\endcsname
- \@EA\ifx\csname#1\endcsname\empty
- \@EA\noappendtovaluelist\csname#1\@EAEAEA\endcsname
- \else
- \@EA\doappendtovaluelist\csname#1\@EAEAEA\endcsname
- \fi
- \else
- \@EA\noappendtovaluelist\csname#1\@EA\endcsname
- \fi}
-
-\def\doappendtovaluelist#1#2{\@EA\def\@EA#1\@EA{#1,#2}}
-\def\noappendtovaluelist#1#2{\def#1{#2}}
-
-\fi
-
%D Setup command for the styles
\def\definecorrespondencesetup[#1][#2][#3]%
@@ -301,10 +281,10 @@
{\definelayout[#1#3][#4]}
\def\dosetupcorrespondencesection[#1][#2][#3][#4]%
- {\getparameters[#2#3][#4]}
+ {\getcheckedparameters[#1\v!section:#3][#2#3][#4]}
\def\dosetupcorrespondencedescription[#1][#2][#3][#4]%
- {\getparameters[#2#3][#4]}
+ {\getcheckedparameters[#1\v!description:#3][#2#3][#4]}
\def\dosetupcorrespondencelayer[#1][#2][#3][#4]%
{\dodosetupcorrespondencelayer[#1][#2][#3][\v!layer,\v!frame,\v!option][#4]}
@@ -315,7 +295,7 @@
{\ifcsname dosetupcorrespondencelayer####1\endcsname
\@EA\@EA\csname dosetupcorrespondencelayer####1\endcsname
\else
- \@EA\@EA\csname dosetupcorrespondencelayer\v!option\endcsname
+ \@EA\dosetupcorrespondencelayeroption
\fi[#1][#2][##1][#5]}%
\processcommalist[#4]\dodododosetupcorrespondencelayer}%
\processcommalist[#3]\dododosetupcorrespondencelayer}
@@ -328,7 +308,7 @@
{\setuplocalframed[#2#3\v!frame][#4]}
\def\dosetupcorrespondencelayeroption[#1][#2][#3][#4]%
- {\getparameters[#2#3][#4]}
+ {\getcheckedparameters[#1\v!layer\v!option:#3][#2#3][#4]}
%D Setup command for the values
@@ -415,6 +395,10 @@
%D Layers
+\def\correspondencelayerkeys
+ {\c!state,\c!symbol,\c!separator,\c!offset,\c!spacebefore,\c!list,%
+ \c!alternative,\c!spaceafter,\c!leftmargin,\c!rightmargin}
+
\def\definecorrespondencelayer[#1][#2]%
{\setvalue{\s!do\e!define#1\v!layer}{\dodefinecorrespondencelayer[#1][#2]}%
\setvalue{\s!do\e!set #1\v!layer}{\dosetcorrespondencelayer [#1][#2]}}
@@ -424,15 +408,16 @@
\processaction
[#3]
[\v!foldmark=>{\processcommacommand[\csname#1!list!marking\endcsname]\dodododefinecorrespondencelayer},
- \v!header=>{\processcommacommand[\csname#1!list!header\endcsname]\dodododefinecorrespondencelayer},
- \v!footer=>{\processcommacommand[\csname#1!list!footer\endcsname]\dodododefinecorrespondencelayer},
+ \v!header=>{\processcommacommand[\csname#1!list!header\endcsname ]\dodododefinecorrespondencelayer},
+ \v!footer=>{\processcommacommand[\csname#1!list!footer\endcsname ]\dodododefinecorrespondencelayer},
\s!unknown=>{\dododefinecorrespondencelayer[#1][#2][#3]}]}
\def\dododefinecorrespondencelayer[#1][#2][#3]%
- {\setvalue{#2\v!option#3}{\v!yes}%
+ {\letvalue{#2\v!option#3}\v!yes
\doifundefined{#1:#2:#3}
- {\setvalue{#1:#2:#3}{\v!layer}%
- \appendtovaluelist{#1!list!layers}{#3}}%
+ {\letvalue{#1:#2:#3}\v!layer
+ \addvalue{#1!list!layers}{#3}}%
+ \setvalidparameterkeys[#1\v!layer\v!option:#3][\correspondencelayerkeys]%
\presetlocalframed[#2#3\v!frame]%
\definelayer
[#1:#3]
@@ -442,6 +427,7 @@
[#1][#2][#3][\v!option]%
[\c!state=\v!stop,
\c!symbol=,
+ \c!list=,
\c!alternative=\v!a,
\c!separator=\crlf,
\c!offset=\zeropoint,
@@ -462,16 +448,14 @@
\c!preset=\v!left\v!top]}
\def\dosetcorrespondencelayer[#1][#2][#3]%
- {\ExpandSecondAfter\doifinsetelse{#1}{\csname#1!list!marking\endcsname}
- {\doifelsecorrespondencestylevalue{#2}{#3}\c!symbol
- {\dodosetcorrespondencelayer[#1][#2][#3][\directsetup{#1:#3}]}
- {\dodosetcorrespondencelayer[#1][#2][#3][\correspondencestylevalue{#2}{#3}\c!symbol]}}
+ {\doifelsecorrespondencestylevalue{#2}{#3}\c!symbol
+ {\dodosetcorrespondencelayer[#1][#2][#3][\correspondencestylevalue{#2}{#3}\c!symbol]}
{\dodosetcorrespondencelayer[#1][#2][#3][\directsetup{#1:#3}]}}
\def\dodosetcorrespondencelayer[#1][#2][#3][#4]%
{\setlayer[#1:#3]
{\localframed[#2#3\v!frame]
- {\doadaptleftskip {\correspondencestylevalue{#2}{#3}\c!leftmargin}%
+ {\doadaptleftskip {\correspondencestylevalue{#2}{#3}\c!leftmargin }%
\doadaptrightskip{\correspondencestylevalue{#2}{#3}\c!rightmargin}%
\doattributes{#2#3}\c!style\c!color{#4}}}}
@@ -525,19 +509,25 @@
%D Sections
+\def\correspondencesectionkeys
+ {\c!before,\c!after,\c!align,\c!leftmargin,\c!rightmargin,\c!alternative,%
+ \c!inbetween,\c!separator,\c!optimize,\c!command,\c!style,\c!color}
+
\def\definecorrespondencesection[#1][#2]%
{\setvalue{\s!do\e!define#1\v!section}{\dodefinecorrespondencesection[#1][#2]}%
\setvalue{\s!do\e!set #1\v!section}{\dosetcorrespondencesection [#1][#2]}}
\def\dodefinecorrespondencesection[#1][#2][#3]%
- {\setvalue{#2\v!option#3}{\v!yes}%
+ {\letvalue{#2\v!option#3}\v!yes
\doifundefined{#1:#2:#3}
- {\setvalue{#1:#2:#3}{\v!section}%
- \appendtovaluelist{#1!list!sections}{#3}}%
+ {\letvalue{#1:#2:#3}\v!section
+ \addvalue{#1!list!sections}{#3}}%
+ \setvalidparameterkeys[#1\v!section:#3][\correspondencesectionkeys]%
\getparameters
[#2#3]
[\c!before=,
\c!after=,
+ \c!inbetween=,
\c!align=,
\c!leftmargin=\zeropoint,
\c!rightmargin=\zeropoint,
@@ -567,14 +557,18 @@
%D Descriptions
+\def\correspondencedescriptionkeys
+ {\c!location,\c!inbetween,\c!before,\c!after,\c!width,\c!headstyle,\c!headcolor,\c!distance}
+
\def\definecorrespondencedescription[#1][#2]%
{\setvalue{\s!do\e!define#1\v!description}{\dodefinecorrespondencedescription[#1][#2]}%
\setvalue{\s!do\e!set #1\v!description}{\dosetcorrespondencedescription [#1][#2]}%
\setvalue{\s!do\e!flush #1\v!description}{\doflushcorrespondencedescription [#1][#2]}}
\def\dodefinecorrespondencedescription[#1][#2][#3]%
- {\setvalue{#2\v!option#3}{\v!yes}%
- \doifundefined{#1:#2:#3}{\setvalue{#1:#2:#3}{\v!description}}%
+ {\letvalue{#2\v!option#3}\v!yes
+ \doifundefined{#1:#2:#3}{\letvalue{#1:#2:#3}\v!description}%
+ \setvalidparameterkeys[#1\v!description:#3][\correspondencedescriptionkeys]%
\getparameters
[#2#3]
[\c!location=\v!left,
@@ -582,7 +576,6 @@
\c!before=\blank,
\c!after=\blank,
\c!width=\v!broad,
- \c!distance=\zeropoint,
\c!headstyle=,
\c!headcolor=,
\c!distance=\zeropoint]}
@@ -592,6 +585,7 @@
\doifelsecorrespondencestylevalue{#2}{#3}\c!before
{\correspondencestylevalue{#2}{#3}\c!before}
\endgraf
+ \scratchdimen\zeropoint
\setbox\scratchbox\hbox{\doattributes{#2#3}\c!headstyle\c!headcolor{\labeltext{#1:#3}}}%
\doifelse{\correspondencestylevalue{#2}{#3}\c!width}\v!broad
{\ifdim\wd\scratchbox>\zeropoint
@@ -602,31 +596,31 @@
\scratchdimen\dimexpr\wd\scratchbox+\correspondencestylevalue{#2}{#3}\c!distance\relax
\fi}
{\scratchdimen\dimexpr\correspondencestylevalue{#2}{#3}\c!width+\correspondencestylevalue{#2}{#3}\c!distance\relax}}%
- \executeifdefined{\v!correspondence\v!description\correspondencestylevalue{#2}{#3}\c!location}\gobblethreearguments{#1}{#2}{#3}%
+ \executeifdefined{@@description@@\correspondencestylevalue{#2}{#3}\c!location}\gobblethreearguments{#1}{#2}{#3}%
\doifelsecorrespondencestylevalue{#2}{#3}\c!after
{\endgraf\correspondencestylevalue{#2}{#3}\c!after}
\endgraf
\egroup}
-\setvalue{\v!correspondence\v!description\v!left}#1#2#3%
+\setvalue{@@description@@\v!left}#1#2#3%
{\EveryPar{\hangindent\scratchdimen\hangafter\zerocount}%
\setbox\scratchbox\hbox\!!to\scratchdimen{\box\scratchbox\hss}%
\noindent\llap{\box\scratchbox}\directsetup{#1:#3}}
-\setvalue{\v!correspondence\v!description\v!right}#1#2#3%
+\setvalue{@@description@@\v!right}#1#2#3%
{\EveryPar{\hangindent-\scratchdimen\hangafter\zerocount}%
\setbox\scratchbox\hbox\!!to\scratchdimen{\hss\box\scratchbox}%
\setbox\scratchbox\hbox\!!to\!!zeropoint {\hskip\dimexpr\hsize-\scratchdimen\relax\box\scratchbox\hss}%
\noindent\rlap{\box\scratchbox}\directsetup{#1:#3}}
-\setvalue{\v!correspondence\v!description\v!top}#1#2#3%
+\setvalue{@@description@@\v!top}#1#2#3%
{\box\scratchbox\par
\nobreak
\doifcorrespondencestylevalue{#2}{#3}\c!inbetween{\correspondencestylevalue{#2}{#3}\c!inbetween}%
\nobreak
\directsetup{#1:#3}}
-\setvalue{\v!correspondence\v!description\v!text}#1#2#3%
+\setvalue{@@description@@\v!text}#1#2#3%
{\noindent\box\scratchbox\directsetup{#1:#3}}
\def\doflushcorrespondencedescription[#1][#2]%
@@ -634,4 +628,279 @@
{\doif{\correspondencestylevalue{#2}\v!option{##1}}\v!yes{\dosetcorrespondencedescription[#1][#2][##1]}}%
\processcommacommand[\csname#1!list!descriptions\endcsname]\dodoflushcorrespondencedescription}
+%D Commands to define named elements for header, footer etc. and use them,
+%D clone them or delete their content.
+
+\def\definecorrespondenceelement [#1]#2[#3]#4[#5]#6{\setvalue{#1:#3:#5}{#6}}
+\def\resetcorrespondenceelement [#1]#2[#3]#4[#5]{\resetvalue{#1:#3:#5}}
+\def\copycorrespondenceelement[#1]#2[#3]#4[#5]#6[#7]{\copycsname#1:#3:#5\endcsname\csname#1:#3:#7\endcsname}
+\def\correspondenceelement [#1]#2[#3]#4[#5]{\csname#1:#3:#5\endcsname}
+
+%D A simple test for the existence of Hans new key checker.
+
+\ifx\enablecheckparameters\undefined
+ \let\setvalidparameterkeys\gobbleparameters
+ \let\addvalidparameterkeys\gobbleparameters
+ \def\getcheckedparameters[#1]{\getparameters}
+\fi
+
+\beginLUATEX
+
+%D Lua table with all macro files and their current version, it is used
+%D to build the revision table in the manual. The Lua alternative is easier
+%D to maintain (same folder as the other files) and allows me to store more
+%D information as I can do with the TeX solution.
+
+\startluacode
+
+thirddata = thirddata or { }
+thirddata.correspondence = thirddata.correspondence or { }
+
+thirddata.correspondence.files = {
+ {
+ name = "t-correspondence.tex",
+ path = "tex/context/third/letter/base/",
+ type = "base",
+ version = "2009.03.18",
+ description = "Core module"
+ } ,
+ {
+ name = "t-letter.tex",
+ path = "tex/context/third/letter/base/",
+ type = "base",
+ version = "2009.02.13",
+ description = "Letter Module"
+
+ } ,
+ {
+ name = "t-resume.tex",
+ path = "tex/context/third/letter/base/",
+ type = "base",
+ version = "2009.02.12",
+ description = "Résumé Module"
+ } ,
+ {
+ name = "default.nli",
+ path = "tex/context/third/letter/interface/",
+ type = "interface",
+ version = "2009.03.13",
+ description = "Default letter interface"
+
+ } ,
+ {
+ name = "pragma.nli",
+ path = "tex/context/third/letter/interface/",
+ type = "interface",
+ version = "2009.02.12",
+ description = "m-letter.tex Interface"
+ } ,
+ {
+ name = "knuth.nli",
+ path = "tex/context/third/letter/interface/",
+ type = "interface",
+ version = "2009.01.23",
+ description = "letter.tex Interface"
+ } ,
+ {
+ name = "default.nri",
+ path = "tex/context/third/letter/interface/",
+ type = "interface",
+ version = "2009.02.14",
+ description = "Default resume interface"
+ } ,
+ {
+ name = "label.nle",
+ path = "tex/context/third/letter/extension/",
+ type = "extension",
+ version = "2009.02.13",
+ description = "Text labels"
+ } ,
+ {
+ name = "corres.nle",
+ path = "tex/context/third/letter/extension/",
+ type = "extension",
+ version = "2009.02.13",
+ description = "XML-Database"
+ } ,
+ {
+ name = "pragma.nle",
+ path = "tex/context/third/letter/extension/",
+ type = "extension",
+ version = "2008.01.23",
+ description = "Examples from m-letter.tex"
+ } ,
+ {
+ name = "optimize.nle",
+ path = "tex/context/third/letter/extension/",
+ type = "extension",
+ version = "2008.12.03",
+ description = "Page optimation"
+ } ,
+ {
+ name = "addrentry.nle",
+ path = "tex/context/third/letter/extension/",
+ type = "extension",
+ version = "2008.12.26",
+ description = "\tex{addrenetry} support"
+ } ,
+ {
+ name = "dina.nls",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2007.02.11",
+ description = "German style DIN 676 A"
+ } ,
+ {
+ name = "dinb.nls",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2009.02.14",
+ description = "German style DIN 676 B"
+ } ,
+ {
+ name = "pragma.nls",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2009.02.12",
+ description = "m-letter.tex style"
+ } ,
+ {
+ name = "knuth.nls",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2009.02.13",
+ description = "letter.tex style"
+ } ,
+ {
+ name = "dutch.nls",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2008.12.28",
+ description = "Dutch letter style"
+ } ,
+ {
+ name = "french.nls",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2008.08.07",
+ description = "French letter style"
+ } ,
+ {
+ name = "english.nls",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2008.03.13",
+ description = "English letter style"
+ } ,
+ {
+ name = "default.nls",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2009.02.14",
+ description = "Basic style"
+ } ,
+ {
+ name = "blockstyle.nls",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2008.11.29",
+ description = "Default block values"
+ } ,
+ {
+ name = "fullblock.nls",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2008.12.16",
+ description = "Full-block"
+ } ,
+ {
+ name = "semiblock.nls",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2008.12.16",
+ description = "Semiblock"
+ } ,
+ {
+ name = "modified.nls",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2008.12.16",
+ description = "Modified block"
+ } ,
+ {
+ name = "hanging.nls",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2008.12.25",
+ description = "Hanging intended"
+ } ,
+ {
+ name = "memo.nls",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2008.11.29",
+ description = "Memo style"
+ } ,
+ {
+ name = "simplified.nls",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2008.12.16",
+ description = "Simplified style"
+ } ,
+ {
+ name = "swiss.nls",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2009.02.14",
+ description = "Swiss style"
+ } ,
+ {
+ name = "swissleft.nls",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2009.02.14",
+ description = "Swiss left style"
+ } ,
+ {
+ name = "default.nrs",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2009.02.10",
+ description = "Default resume style"
+ } ,
+ {
+ name = "modern.nrs",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2009.03.13",
+ description = "modercv basic style"
+ } ,
+ {
+ name = "classic.nrs",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2009.02.11",
+ description = "modercv classic style"
+ } ,
+ {
+ name = "casual.nrs",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2009.02.11",
+ description = "modercv casual style"
+ } ,
+ {
+ name = "user.ori",
+ path = "tex/context/third/letter/style/",
+ type = "style",
+ version = "2008.07.08",
+ description = "Example for user settings"
+ } ,
+}
+
+\stopluacode
+
+\endLUATEX
+
\protect \endinput
diff --git a/Master/texmf-dist/tex/context/third/letter/base/t-letter.tex b/Master/texmf-dist/tex/context/third/letter/base/t-letter.tex
index 26208c5b8e4..57309518b74 100644
--- a/Master/texmf-dist/tex/context/third/letter/base/t-letter.tex
+++ b/Master/texmf-dist/tex/context/third/letter/base/t-letter.tex
@@ -1,6 +1,6 @@
%D \module
%D [ file=t-letter,
-%D version=2008.02.13,
+%D version=2009.03.04,
%D title=\CONTEXT\ User Module,
%D subtitle=Framework for Letters,
%D author=Wolfgang Schuster,
@@ -74,6 +74,11 @@
\def\doifletterstylevalue {\doifcorrespondencestylevalue \????ls}
\def\doifelseletterstylevalue{\doifelsecorrespondencestylevalue\????ls}
+\def\defineletterelement{\definecorrespondenceelement[\v!letter]}
+\def\resetletterelement {\resetcorrespondenceelement [\v!letter]}
+\def\copyletterelement {\copycorrespondenceelement [\v!letter]}
+\def\letterelement {\correspondenceelement [\v!letter]}
+
%D \subject{Interface, Style and Extension files}
%D
%D \macros
@@ -527,7 +532,7 @@
\startlocalsetups[\v!letter:\v!place:\v!topmark]
- \dosetletterlayer[\v!topmark]
+ \dosetheaderfooterlayer[\v!letter][\????ls][\v!topmark]
\stoplocalsetups
@@ -535,7 +540,7 @@
\startlocalsetups[\v!letter:\v!place:\v!botmark]
- \dosetletterlayer[\v!botmark]
+ \dosetheaderfooterlayer[\v!letter][\????ls][\v!botmark]
\stoplocalsetups
@@ -543,7 +548,7 @@
\startlocalsetups[\v!letter:\v!place:\v!cutmark]
- \dosetletterlayer[\v!cutmark]
+ \dosetheaderfooterlayer[\v!letter][\????ls][\v!cutmark]
\stoplocalsetups
@@ -551,7 +556,7 @@
\startlocalsetups[\v!letter:\v!place:\v!endmark]
- \dosetletterlayer[\v!endmark]
+ \dosetheaderfooterlayer[\v!letter][\????ls][\v!endmark]
\stoplocalsetups
@@ -559,15 +564,19 @@
\startlocalsetups[\v!letter:\v!place:\v!usermark]
- \dosetletterlayer[\v!usermark]
+ \dosetheaderfooterlayer[\v!letter][\????ls][\v!usermark]
\stoplocalsetups
- \doif\@@@@lsoptiontopmark \v!yes{\directsetup{\v!letter:\v!place:\v!topmark }}
- \doif\@@@@lsoptionbotmark \v!yes{\directsetup{\v!letter:\v!place:\v!botmark }}
- \doif\@@@@lsoptioncutmark \v!yes{\directsetup{\v!letter:\v!place:\v!cutmark }}
- \doif\@@@@lsoptionendmark \v!yes{\directsetup{\v!letter:\v!place:\v!endmark }}
- \doif\@@@@lsoptionusermark\v!yes{\directsetup{\v!letter:\v!place:\v!usermark}}
+ \ifx\@@@@lsoptionmarking\v!yes
+
+ \doif\@@@@lsoptiontopmark \v!yes{\directsetup{\v!letter:\v!place:\v!topmark }}
+ \doif\@@@@lsoptionbotmark \v!yes{\directsetup{\v!letter:\v!place:\v!botmark }}
+ \doif\@@@@lsoptioncutmark \v!yes{\directsetup{\v!letter:\v!place:\v!cutmark }}
+ \doif\@@@@lsoptionendmark \v!yes{\directsetup{\v!letter:\v!place:\v!endmark }}
+ \doif\@@@@lsoptionusermark\v!yes{\directsetup{\v!letter:\v!place:\v!usermark}}
+
+ \fi
\stopsetups
@@ -614,7 +623,7 @@
\setupbackgrounds
[\v!page]
- [\c!setups={\v!letter:\v!place:\v!head,\v!letter:\v!place:\v!foot},
+ [\c!setups={\v!letter:\v!place:\v!head,\v!letter:\v!place:\v!foot,\v!letter:\v!place:\v!foldmark},
\c!background=\letter!list!backgrounds]
\doifletterstylevalue\v!option\c!bodyfont {\setupbodyfont [\@@@@lsoptionbodyfont ]}
@@ -653,7 +662,6 @@
\startsetups[\v!letter:\v!layer]
- \doif\@@@@lsoptionmarking \v!yes{\directsetup{\v!letter:\v!place:\v!foldmark }}
\doif\@@@@lsoptionbackaddress\v!yes{\directsetup{\v!letter:\v!place:\v!backaddress}}
\doif\@@@@lsoptionaddress \v!yes{\directsetup{\v!letter:\v!place:\v!address }}
\doif\@@@@lsoptionreference \v!yes{\directsetup{\v!letter:\v!place:\v!reference }}
diff --git a/Master/texmf-dist/tex/context/third/letter/extension/label.nle b/Master/texmf-dist/tex/context/third/letter/extension/label.nle
index b4e59bb568a..6dbef282e14 100644
--- a/Master/texmf-dist/tex/context/third/letter/extension/label.nle
+++ b/Master/texmf-dist/tex/context/third/letter/extension/label.nle
@@ -1,6 +1,6 @@
%D \module
%D [ file=label,
-%D version=2009.02.13,
+%D version=2009.02.14,
%D title=\CONTEXT\ Letter Extension,
%D subject=Labels,
%D author=Wolfgang Schuster,
diff --git a/Master/texmf-dist/tex/context/third/letter/extension/optimize.nle b/Master/texmf-dist/tex/context/third/letter/extension/optimize.nle
index f5cea432a32..e606a272b2d 100644
--- a/Master/texmf-dist/tex/context/third/letter/extension/optimize.nle
+++ b/Master/texmf-dist/tex/context/third/letter/extension/optimize.nle
@@ -1,6 +1,6 @@
%D \module
%D [ file=optimize,
-%D version=2008.04.23,
+%D version=2008.12.03,
%D title=\CONTEXT\ Letter Extension,
%D subtitle=Alternative input method,
%D author=Wolfgang Schuster,
@@ -11,14 +11,6 @@
\unprotect
-%D The \tex{minustwo} counter was added with the \CONTEXT\ version
-%D from \date[d=18,m=4,y=2008] and older versions will complain
-%D about a undefined control sequence, to prevend this problem
-%D I added a test if \tex{minustwo} is undefined and define it this
-%D is necessary.
-
-\ifx\minustwo\undefined \newcount\minustwo \minustwo=-2 \fi
-
\newcount\letter!value!skip \letter!value!skip \plusten
\newcount\letter!value!number \letter!value!number\zerocount
@@ -40,4 +32,7 @@
\fi\fi
\lazysavetwopassdata{\v!letter}{\number\letter!value!number}{\number\letter!value!skip}}
+\setvalue{\v!letter\v!content\v!start\v!optimize\v!yes}{}
+\setvalue{\v!letter\v!content\v!stop \v!optimize\v!yes}{}
+
\protect \endinput
diff --git a/Master/texmf-dist/tex/context/third/letter/interface/default.nli b/Master/texmf-dist/tex/context/third/letter/interface/default.nli
index 2a4fb1b4054..fd9a61db84b 100644
--- a/Master/texmf-dist/tex/context/third/letter/interface/default.nli
+++ b/Master/texmf-dist/tex/context/third/letter/interface/default.nli
@@ -1,6 +1,6 @@
%D \module
%D [ file=default,
-%D version=2009.02.17,
+%D version=2009.03.13,
%D title=\CONTEXT\ Letter Interface,
%D subtitle=Default Interface,
%D author=Wolfgang Schuster,
@@ -43,7 +43,7 @@
\egroup
\hfill}
-\setvalue{\v!letter:\v!reference:\v!a}%
+\defineletterelement[\v!reference][\v!a]
{\setbox\scratchbox\hbox\!!to\hsize
{\getcommacommandsize[\@@@@lsreferencelist]% \@@@@ldreference?
\ifnum\commalistsize<\plustwo\hfill\fi
@@ -80,7 +80,7 @@
{\lettervalue{#1}}}}%
\egroup}
-\setvalue{\v!letter:\v!reference:\v!b}%
+\defineletterelement[\v!reference][\v!b]
{\vtop % why not \vbox?
{\processcommacommand[\@@@@lsreferencelist]\formatreferencelistb}}
@@ -116,7 +116,7 @@
{\lettervalue\ascii}%
\egroup}
-\setvalue{\v!letter:\v!reference:\v!c}%
+\defineletterelement[\v!reference][\v!c]
{\hbox\!!to\hsize
{\processcommacommand[\@@@@lsreferencelist]\formatreferencelistc}}
@@ -140,7 +140,7 @@
\def\formatreferencelistd#1%
{\appendtoks\doformatreferencelistd{#1}\to\scratchtoks}
-\setvalue{\v!letter:\v!reference:\v!d}%
+\defineletterelement[\v!reference][\v!d]
{\vtop % why not \vbox?
{\scratchtoks\emptytoks
\processcommacommand[\@@@@lsreferencelist]\formatreferencelistd
@@ -185,7 +185,7 @@
{\doformatreferenceliste{\lettervalue\ascii}}}}}%
\egroup}
-\setvalue{\v!letter:\v!reference:\v!e}%
+\defineletterelement[\v!reference][\v!e]
{\hbox\!!to\hsize
{\processcommacommand[\@@@@lsreferencelist]\formatreferenceliste\hss}}
@@ -201,7 +201,7 @@
%D method to get this result to use alternative c and remove all values from
%D the reference but the none key is better.
-\resetvalue{\v!letter:\v!reference:\v!none}
+\resetletterelement[\v!reference][\v!none]
\startsetups[\v!letter:\v!reference:\v!none]
@@ -234,7 +234,7 @@
\getparameters[\????ld][#1]%
\doifundefinedelse{\????ld\????ld#2}
{\setvalue{\????ld\c!toaddress}{#2}}
- {\setvalue{\????ld\c!toaddress}{\getvalue{\????ld\????ld#2}}}%
+ {\setvalue{\????ld\c!toaddress}{\getvalue{\????ld\????ld#2}}}%
\else\iffirstargument
\doifassignmentelse{#1}
{\getparameters[\????ld][#1]}
@@ -281,14 +281,14 @@
%D in the corresponding setups, this is only important if you want
%D to define your own layout for header, address etc.
-\setvalue{\v!letter:\v!head:\v!a}%
+\defineletterelement[\v!head][\v!a]
{\lettervalue\c!fromname
\doiflettervalue\c!fromname\\
\lettervalue\c!fromaddress}
\startsetups[\v!letter:\v!head]
-\def\\{\letterstylevalue\v!head\c!separator}%
-\executeifdefined{\v!letter:\v!head:\@@@@lsheadalternative}{\getvalue{\v!letter:\v!head:\v!a}}%
+\def\\{\letterstylevalue\v!head\c!separator}
+\executeifdefined{\v!letter:\v!head:\@@@@lsheadalternative}{\letterelement[\v!head][\v!a]}
\stopsetups
\startsetups[\v!letter:\v!foot]
@@ -303,7 +303,7 @@
\executeifdefined{\v!letter:\v!nextfoot:\@@@@lsnextfootalternative}\donothing
\stopsetups
-\setvalue{\v!letter:\v!nexthead:\v!fullblock}%
+\defineletterelement[\v!nexthead][\v!fullblock]
{\hbox\!!to\hsize
{\rlap{\lettervalue\c!toname}%
\midaligned{\pagenumber}%
@@ -311,7 +311,7 @@
{\lettervalue\c!date \\
\lettervalue\c!reference}}}}
-\setvalue{\v!letter:\v!nexthead:\v!hanging}%
+\defineletterelement[\v!nexthead][\v!hanging]
{\hbox\!!to\hsize
{\framed[\c!frame=\v!off,\c!location=\v!top,\c!align=v!right]
{\lettervalue\c!toname \\
@@ -319,14 +319,14 @@
\lettervalue\c!reference \\
\labeltext\c!page\pagenumber}}\hss}
-\setvalue{\v!letter:\v!nexthead:\v!semiblock}%
+\defineletterelement[\v!nexthead][\v!semiblock]
{\hbox\!!to\hsize
{\rlap{\lettervalue\c!toname}%
\midaligned{\pagenumber}%
\llap{\lettervalue\c!date}}}
-\copycsname\v!letter:\v!nexthead:\v!simplified\endcsname\csname\v!letter:\v!nexthead:\v!fullblock\endcsname
-\copycsname\v!letter:\v!nexthead:\v!modified \endcsname\csname\v!letter:\v!nexthead:\v!hanging \endcsname
+\copyletterelement[\v!nexthead][\v!simplified][\v!fullblock]
+\copyletterelement[\v!nexthead][\v!modified ][\v!hanging ]
%D \subject{Addressee field}
%D
@@ -366,13 +366,13 @@
\stopsetups
-\setvalue{\v!letter:\v!address:\v!a}%
+\defineletterelement[\v!address][\v!a]
{\doif\@@@@lsoptiondispatch \v!yes{\directsetup{\v!letter:\v!place:\v!dispatch }}%
\doif\@@@@lsoptionaddressee\v!yes{\directsetup{\v!letter:\v!place:\v!addressee}}}
\startsetups[\v!letter:\v!address]
\offinterlineskip\endgraf
-\executeifdefined{\v!letter:\v!address:\@@@@lsaddressalternative}{\getvalue{\v!letter:\v!address:\v!a}}%
+\executeifdefined{\v!letter:\v!address:\@@@@lsaddressalternative}{\letterelement[\v!address][\v!a]}%
\stopsetups
\startsetups[\v!letter:\v!address:\v!dispatch]
@@ -393,10 +393,10 @@
%D a not defined alternative the definition a is choosen.
\startsetups[\v!letter:\v!reference]
-\executeifdefined{\v!letter:\v!reference:\@@@@lsreferencealternative}{\getvalue{\v!letter:\v!reference:\v!a}}
+\executeifdefined{\v!letter:\v!reference:\@@@@lsreferencealternative}{\letterelement[\v!reference][\v!a]}
\stopsetups
-\resetvalue{\v!letter:\v!location:\v!a}
+\resetletterelement[\v!location][\v!a]
\setvalue{\v!letter:\v!location:\v!french}%
{\lettervalue\c!place
@@ -404,7 +404,7 @@
\lettervalue\c!date}
\startsetups[\v!letter:\v!location]
-\executeifdefined{\v!letter:\v!location:\@@@@lslocationalternative}{\getvalue{\v!letter:\v!location:\v!a}}
+\executeifdefined{\v!letter:\v!location:\@@@@lslocationalternative}{\letterelement[\v!location][\v!a]}
\stopsetups
\startsetups[\v!letter:\v!title]
@@ -419,19 +419,19 @@
\labeltext{\v!letter:\c!subject}\lettervalue\c!subject
\stopsetups
-\setvalue{\v!letter:\v!opening:\v!a}%
+\defineletterelement[\v!opening][\v!a]
{\doifelselettervalue\c!opening
{\lettervalue\c!opening}
{\doiflettervalue\c!salutation
{\lettervalue\c!salutation}}}
-\setvalue{\v!letter:\v!opening:\v!french}%
+\defineletterelement[\v!opening][\v!french]
{\ExpandSecondAfter\doifsomething{\letterstylevalue\v!option\c!indenting}
{\setupindenting[\@@@@lsoptionindenting]}%
- \getvalue{\v!letter:\v!opening:\v!a}}
+ \letterelement[\v!opening][\v!a]}
\startsetups[\v!letter:\v!opening]
-\executeifdefined{\v!letter:\v!opening:\@@@@lsopeningalternative}{\getvalue{\v!letter:\v!opening:\v!a}}
+\executeifdefined{\v!letter:\v!opening:\@@@@lsopeningalternative}{\letterelement[\v!opening][\v!a]}
\stopsetups
\startsetups[\v!letter:\v!content]
@@ -446,12 +446,12 @@
%D own handwritten signature and to have a little bit space between the closing text
%D and the appendices.
-\setvalue{\v!letter:\v!closing:\v!a}%
+\defineletterelement[\v!closing][\v!a]
{\lettervalue\c!closing
\doiflettervalue\c!signature{\letterstylevalue\v!closing\c!inbetween}%
\lettervalue\c!signature}
-\setvalue{\v!letter:\v!closing:\v!french}%
+\defineletterelement[\v!closing][\v!french]
{\ExpandSecondAfter\doifsomething{\letterstylevalue\v!option\c!indenting}
{\setupindenting[\@@@@lsoptionindenting,\v!first]}%
\lettervalue\c!closing
@@ -459,13 +459,13 @@
\raggedcenter\doadaptleftskip{.5\textwidth}% quick and dirty
\lettervalue\c!signature\endgraf}
-\setvalue{\v!letter:\v!closing:\v!simplified}%
+\defineletterelement[\v!closing][\v!simplified]
{\doiflettervalue\c!signature{\letterstylevalue\v!closing\c!inbetween}%
\lettervalue\c!signature}
\startsetups[\v!letter:\v!closing]
-\def\\{\letterstylevalue\v!closing\c!separator}%
-\executeifdefined{\v!letter:\v!closing:\@@@@lsclosingalternative}{\getvalue{\v!letter:\v!closing:\v!a}}%
+\def\\{\letterstylevalue\v!closing\c!separator}
+\executeifdefined{\v!letter:\v!closing:\@@@@lsclosingalternative}{\letterelement[\v!closing][\v!a]}
\stopsetups
\startsetups[\v!letter:\v!appendices]
@@ -491,14 +491,14 @@
\lettervalue\c!postscript
\stopsetups
-\setvalue{\v!letter:\v!backaddress:\v!yes}%
+\defineletterelement[\v!backaddress][\v!yes]
{\lettervalue\c!fromname
\doiflettervalue\c!fromaddress\\
\lettervalue\c!fromaddress}
-\resetvalue{\v!letter:\v!backaddress:\v!no}
+\resetletterelement[\v!backaddress][\v!no]
-\setvalue{\v!letter:\v!backaddress:\v!auto}%
+\defineletterelement[\v!backaddress][\v!auto]
{\doifelselettervalue\c!backaddress
{\lettervalue\c!backaddress}
{\lettervalue\c!fromname
@@ -506,8 +506,8 @@
\lettervalue\c!fromaddress}}
\startsetups[\v!letter:\v!backaddress]
-\def\\{\letterstylevalue\c!backaddress\c!separator}%
-\executeifdefined{\v!letter:\v!backaddress:\@@@@lsbackaddressalternative}{\getvalue{\v!letter:\v!backaddress:\v!no}}%
+\def\\{\letterstylevalue\c!backaddress\c!separator}
+\executeifdefined{\v!letter:\v!backaddress:\@@@@lsbackaddressalternative}{\letterelement[\v!backaddress][\v!no]}
\stopsetups
%D To prevent a pagebreak between the last line of the text and
@@ -528,7 +528,7 @@
\startsetups[\v!letter:\v!optimize]
\setbox\scratchbox\hbox % trial typesetting to get the heigth of the reference line
- {\executeifdefined{\v!letter:\v!reference:\@@@@lsreferencealternative}{\getvalue{\v!letter:\v!reference:\v!a}}}
+ {\dontcomplain\executeifdefined{\v!letter:\v!reference:\@@@@lsreferencealternative}\donothing}
\setups[\v!letter:\v!reference:\@@@@lsreferencealternative]
diff --git a/Master/texmf-dist/tex/context/third/letter/interface/knuth.nli b/Master/texmf-dist/tex/context/third/letter/interface/knuth.nli
index a4b4b17c85b..f7e58cf8fa7 100644
--- a/Master/texmf-dist/tex/context/third/letter/interface/knuth.nli
+++ b/Master/texmf-dist/tex/context/third/letter/interface/knuth.nli
@@ -1,6 +1,6 @@
%D \module
%D [ file=knuth,
-%D version=2009.01.23,
+%D version=2009.02.19,
%D title=\CONTEXT\ Letter Interface,
%D subtitle=Lettformat Interface, % Donald Knuth's own letter format
%D author=Wolfgang Schuster,
@@ -24,16 +24,20 @@
\dostartbuffer[closing][closing][endletter]}
\def\annotations
- {\blank[\v!line]\leftskip=0pt}
+ {\blank[\v!line]\leftskip\zeropoint}
\def\ps
{\let\par\space
- \blank[\v!medium]\leftskip=0pt}
+ \blank[\v!medium]\leftskip\zeropoint}
\startsetups[\v!letter:\v!reference]
\stopsetups
+\startsetups[\v!letter:\v!optimize]
+
+\stopsetups
+
\startsetups[\v!letter:\v!opening]
\obeylines
@@ -50,10 +54,10 @@
\startsetups[\v!letter:\v!closing]
- \leftskip=4in
+ \leftskip\dimexpr\textwidth/13*8\relax
\obeylines
\def\par{\normalpar\vskip1cm\def\par{\normalpar\nowhitespace}}
- \getbuffer[closing]
+ \getbuffer[closing]\normalpar
\stopsetups
diff --git a/Master/texmf-dist/tex/context/third/letter/interface/pragma.nli b/Master/texmf-dist/tex/context/third/letter/interface/pragma.nli
index eb4338c6bcd..a907a3c7c43 100644
--- a/Master/texmf-dist/tex/context/third/letter/interface/pragma.nli
+++ b/Master/texmf-dist/tex/context/third/letter/interface/pragma.nli
@@ -1,6 +1,6 @@
%D \module
%D [ file=pragma,
-%D version=2009.02.12,
+%D version=2009.02.19,
%D title=\CONTEXT\ Letter Extension,
%D subtitle=Pragma Style,
%D author=Wolfgang Schuster,
@@ -11,13 +11,9 @@
\unprotect
-\useletterstyle [pragma] % prefined layout
+\useletterstyle [pragma] % predefined layout
\useletterextension[pragma] % example text
-\setupletterstyle
- [\v!reference]
- [\c!alternative=\v!none]
-
\setvariables
[letter:head]
[graphic=]
@@ -120,6 +116,10 @@
\stopsetups
+\startsetups[letter:optimize]
+
+\stopsetups
+
\startsetups[letter:opening:unknown]
\labeltext{letter:opening:unknown}
\stopsetups
diff --git a/Master/texmf-dist/tex/context/third/letter/style/default.nls b/Master/texmf-dist/tex/context/third/letter/style/default.nls
index 03bbb50ed78..fa557bbc3ef 100644
--- a/Master/texmf-dist/tex/context/third/letter/style/default.nls
+++ b/Master/texmf-dist/tex/context/third/letter/style/default.nls
@@ -1,6 +1,6 @@
%D \module
%D [ file=default,
-%D version=2009.02.14,
+%D version=2009.03.04,
%D title=\CONTEXT\ Letter Style,
%D subtitle=Blockstyle initalization,
%D author=Wolfgang Schuster,
@@ -74,6 +74,10 @@
[\c!state=\v!right]
\setupletterstyle
+ [\v!topmark,\v!botmark,\v!cutmark]
+ [\c!state=\v!start]
+
+\setupletterstyle
[\v!reference]
[\v!option]
[\c!list=\lettervalue\c!list,
diff --git a/Master/texmf-dist/tex/context/third/letter/style/fullblock.nls b/Master/texmf-dist/tex/context/third/letter/style/fullblock.nls
index b7b094037ae..2dd224a89a1 100644
--- a/Master/texmf-dist/tex/context/third/letter/style/fullblock.nls
+++ b/Master/texmf-dist/tex/context/third/letter/style/fullblock.nls
@@ -1,6 +1,6 @@
%D \module
%D [ file=fullblock,
-%D version=2008.12.16
+%D version=2008.12.16,
%D title=\CONTEXT\ Letter Style,
%D subtitle=full-block/complete block style,
%D author=Wolfgang Schuster,
diff --git a/Master/texmf-dist/tex/context/third/letter/style/knuth.nls b/Master/texmf-dist/tex/context/third/letter/style/knuth.nls
index c033cfd3d8e..da6c271b639 100644
--- a/Master/texmf-dist/tex/context/third/letter/style/knuth.nls
+++ b/Master/texmf-dist/tex/context/third/letter/style/knuth.nls
@@ -1,6 +1,6 @@
%D \module
%D [ file=knuth,
-%D version=2009.02.13,
+%D version=2009.02.19,
%D title=\CONTEXT\ Letter Style,
%D subtitle=Letterformat Style,
%D author=Wolfgang Schuster,
@@ -17,7 +17,7 @@
\setupletterstyle
[\v!firstpage,\v!secondpage]
[\c!backspace=1in,
- \c!width=6.5in]
+ \c!width=\dimexpr\paperwidth-\plustwo\backspace\relax]
\setupletterstyle
[\v!firstpage]
@@ -34,17 +34,11 @@
[\v!option]
[\c!whitespace=\v!line]
-\newcount\knuthcount
-
-\setvalue{\v!letter:\v!nexthead:\v!knuth}%
- {\global\advance\knuthcount\plusone
- \hbox\!!to\hsize
- {\midaligned{\currentdate}%
- \llap{\labeltext\c!page\number\knuthcount}}}
-
\setvalue{\v!letter:\v!nexthead:\v!knuth}%
- {\global\advance\knuthcount\plusone
- \hskip\knuthcount em\number\knuthcount\relax}
+ {\hbox\!!to\hsize
+ {\rlap{\lettervalue\c!toname}%
+ \midaligned{\currentdate}%
+ \llap{\labeltext\c!page\correspagenumber}}}
\setupletterstyle
[\v!nexthead]
diff --git a/Master/texmf-dist/tex/context/third/letter/style/modern.nrs b/Master/texmf-dist/tex/context/third/letter/style/modern.nrs
index cceb25deaa0..d0137e101e5 100644
--- a/Master/texmf-dist/tex/context/third/letter/style/modern.nrs
+++ b/Master/texmf-dist/tex/context/third/letter/style/modern.nrs
@@ -1,6 +1,6 @@
%D \module
%D [ file=modern,
-%D version=2009.02.13,
+%D version=2009.03.22,
%D title=\CONTEXT\ Resume Style,
%D subtitle=Modern Style,
%D author=Wolfgang Schuster,
@@ -57,9 +57,11 @@
{\dosingleempty\docvline}
\def\docvline[#1]#2#3%
- {\starttable[s0|s0rp(\measure{hintscolumnwidth})|s0w(\measure{separatorcolumnwidth})|s0p(\measure{maincolumnwidth})|]
- \NC\doifelsenothing{#2}{~}{#2}\NC\NC#3\NC\NR
+ {\bgroup\dontcomplain
+ \starttable[s0|s0rp(\measure{hintscolumnwidth})|s0w(\measure{separatorcolumnwidth})|s0p(\measure{maincolumnwidth})|]
+ \NC\doifelsenothing{#2}{~}{\setupinterlinespace\relax#2}\NC\NC\setupinterlinespace\relax#3\NC\NR
\stoptable
+ \egroup
\doifelsenothing{#1}{\blank[.25em]}{\blank[#1]}}
\def\cvdoubleitem#1#2#3#4%
@@ -117,7 +119,7 @@
\startsetups[\v!resume:\v!optimize]
- \setbox\scratchbox\vbox{\getvalue{\v!resume:\v!head:\@@@@rsheadalternative}}
+ \setbox\scratchbox\vbox{\dontcomplain\getvalue{\v!resume:\v!head:\@@@@rsheadalternative}}
\ifdim\htdp\scratchbox>\zeropoint