From 93211732ba767f3d2be8e4b948553a42791302c8 Mon Sep 17 00:00:00 2001 From: Taco Hoekwater Date: Fri, 1 Dec 2006 10:42:41 +0000 Subject: context release 2006.11.29 git-svn-id: svn://tug.org/texlive/trunk@2572 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/context/base/cont-fil.tex | 3 + Master/texmf-dist/tex/context/base/cont-new.tex | 2 +- Master/texmf-dist/tex/context/base/context.tex | 6 +- Master/texmf-dist/tex/context/base/core-itm.tex | 7 +- Master/texmf-dist/tex/context/base/core-sec.tex | 13 ++- Master/texmf-dist/tex/context/base/core-spa.tex | 83 ++++++++--------- Master/texmf-dist/tex/context/base/core-var.tex | 13 ++- Master/texmf-dist/tex/context/base/core-vis.tex | 71 --------------- Master/texmf-dist/tex/context/base/enco-ans.tex | 1 + Master/texmf-dist/tex/context/base/font-uni.tex | 2 +- Master/texmf-dist/tex/context/base/math-ext.tex | 114 +++++++++++++++++++++--- Master/texmf-dist/tex/context/base/math-tex.tex | 1 + Master/texmf-dist/tex/context/base/meta-ini.tex | 5 ++ Master/texmf-dist/tex/context/base/page-mul.tex | 22 +++-- Master/texmf-dist/tex/context/base/s-map-10.tex | 2 + Master/texmf-dist/tex/context/base/s-ptj-01.tex | 52 +++++------ Master/texmf-dist/tex/context/base/spec-dpx.tex | 2 +- Master/texmf-dist/tex/context/base/spec-tst.tex | 1 + Master/texmf-dist/tex/context/base/supp-mps.tex | 2 + Master/texmf-dist/tex/context/base/symb-glm.tex | 36 ++++---- Master/texmf-dist/tex/context/base/syst-xtx.tex | 4 + Master/texmf-dist/tex/context/base/unic-cjk.tex | 4 +- Master/texmf-dist/tex/context/base/x-newmml.tex | 62 ++++++++----- Master/texmf-dist/tex/context/base/x-om2cml.xsl | 24 ++++- 24 files changed, 314 insertions(+), 218 deletions(-) (limited to 'Master/texmf-dist/tex/context/base') diff --git a/Master/texmf-dist/tex/context/base/cont-fil.tex b/Master/texmf-dist/tex/context/base/cont-fil.tex index dcd3ce9d35f..3ff54d356ec 100644 --- a/Master/texmf-dist/tex/context/base/cont-fil.tex +++ b/Master/texmf-dist/tex/context/base/cont-fil.tex @@ -111,4 +111,7 @@ %definefilesynonym [practexjournal] [ptj-01] \definefilesynonym [pracjourn] [ptj-01] +\definefilesynonym [maps] [map-10] +\definefilesynonym [map-se] [map-10] % for some time + \endinput diff --git a/Master/texmf-dist/tex/context/base/cont-new.tex b/Master/texmf-dist/tex/context/base/cont-new.tex index b9d5a9f934f..2b2110fe022 100644 --- a/Master/texmf-dist/tex/context/base/cont-new.tex +++ b/Master/texmf-dist/tex/context/base/cont-new.tex @@ -13,7 +13,7 @@ % it's about time to clean up this file ... -\newcontextversion{2006.11.20 11:37} +\newcontextversion{2006.11.29 09:55} %D This file is loaded at runtime, thereby providing an %D excellent place for hacks, patches, extensions and new diff --git a/Master/texmf-dist/tex/context/base/context.tex b/Master/texmf-dist/tex/context/base/context.tex index dc863ef6a26..dd6a50af891 100644 --- a/Master/texmf-dist/tex/context/base/context.tex +++ b/Master/texmf-dist/tex/context/base/context.tex @@ -42,7 +42,7 @@ %D your styles an modules. \edef\contextformat {\jobname} -\edef\contextversion{2006.11.20 11:37} +\edef\contextversion{2006.11.29 09:55} %D For those who want to use this: @@ -148,6 +148,8 @@ \loadcorefile{syst-var.tex} \loadcorefile{syst-str.tex} +%loadcorefile{syst-tra.tex} + \loadcorefile{syst-rtp.tex} \loadcorefile{math-pln.tex} @@ -175,7 +177,6 @@ \loadmkivfile{luat-ini.tex} % \loadmkivfile{luat-lib.tex} \loadmkivfile{luat-lmx.tex} -\loadmkivfile{luat-deb.tex} \loadmkivfile{luat-uni.tex} @@ -192,6 +193,7 @@ %D modules implement some basic typesetting functionality. \loadcorefile{core-var.tex} +\loadmkivfile{luat-deb.tex} \loadcorefile{supp-box.tex} \loadcorefile{supp-mrk.tex} diff --git a/Master/texmf-dist/tex/context/base/core-itm.tex b/Master/texmf-dist/tex/context/base/core-itm.tex index 364501f23a3..9f132a96ab2 100644 --- a/Master/texmf-dist/tex/context/base/core-itm.tex +++ b/Master/texmf-dist/tex/context/base/core-itm.tex @@ -494,9 +494,10 @@ \ifnum\itemlevel>\plusone \letitemparameter\itemlevel\c!inbetween\empty \fi - \else\ifconditional\packlistitem + \fi + \ifconditional\packlistitem \letitemparameter\itemlevel\c!inbetween\empty - \fi\fi + \fi \doifinset\v!columns{#1}% {\ifinsidecolumns\else\ifnum\itemcolumndepth=\zerocount \globallet\itemcolumndepth\itemlevel @@ -881,7 +882,7 @@ \fi \fi \else -\ifconditional\inlinelistitem +\ifconditional\textlistitem % was bugged: \inlinelistitem % \removeunwantedspaces\hskip\interwordspace\!!plus\emwidth\relax % new per 2006/10/20 \removeunwantedspaces\hskip\emwidth\!!plus\interwordstretch\!!minus\interwordshrink\relax % new per 2006/10/20 \else diff --git a/Master/texmf-dist/tex/context/base/core-sec.tex b/Master/texmf-dist/tex/context/base/core-sec.tex index 1e8188ea0d4..50032edcd24 100644 --- a/Master/texmf-dist/tex/context/base/core-sec.tex +++ b/Master/texmf-dist/tex/context/base/core-sec.tex @@ -1852,7 +1852,7 @@ %D [frame=off,offset=.5em,align=middle,width=broad] %D {\sc\def\stretchedspaceamount{.3em}\stretchednormalcase{#1}}} %D -%D \definehead[MySubject] +%D \definehead[MySubject][subject] %D \setuphead [MySubject][deeptextcommand=\StretchedBox] %D %D \MySubject{feeling stretched feeling stretched feeling stretched feeling stretched} @@ -2169,7 +2169,7 @@ \let\@@kolist=\empty -\def\dodefinehead[#1][#2]% % don't preset prefix to much +\def\dododefinehead#1#2% % don't preset prefix to much {\presetlabeltext[#1=]% \getparameters [\??ko#1] @@ -2265,6 +2265,15 @@ \setevalue{\??by\v!by#1}{\getvalue{\??ko#1\c!section}}% \setvalue{#1}{\dodoubleempty\doconstructhead[#1]}} +\def\dodefinehead[#1][#2]% + {\doifelsenothing{#2} + {% todo: message that it's an invalid definition + \setvalue{#1}{\endgraf[#1]\kern.5em}} + {\doifassignmentelse{#2} + {\dododefinehead{#1}{#2}} + {\doifdefined{\??ko#2\c!section} + {\dododefinehead{#1}{#2}}}}} + \def\definehead {\dodoubleemptywithset\dodefinehead} diff --git a/Master/texmf-dist/tex/context/base/core-spa.tex b/Master/texmf-dist/tex/context/base/core-spa.tex index c498ee0153d..e41f1921536 100644 --- a/Master/texmf-dist/tex/context/base/core-spa.tex +++ b/Master/texmf-dist/tex/context/base/core-spa.tex @@ -3823,51 +3823,52 @@ % \setupalign[reset,new,right,old] - \def\@@align@@rl{\if!!donea\veryraggedleft \else\raggedleft \fi} \def\@@align@@rr{\if!!donea\veryraggedright \else\raggedright \fi} \def\@@align@@rc{\if!!donea\veryraggedcenter\else\raggedcenter\fi} -\setvalue{@@align@@\v!new }{\@@asraggedfalse} -\setvalue{@@align@@\v!old }{\@@asraggedtrue} -\setvalue{@@align@@ }{} - -\setvalue{@@align@@\v!line }{\baselinebottom} -\setvalue{@@align@@\v!bottom }{\raggedbottom} -\setvalue{@@align@@\v!height }{\normalbottom} -\setvalue{@@align@@\v!width }{\notragged} -\setvalue{@@align@@\v!normal }{\notragged} -\setvalue{@@align@@\v!yes }{\notragged} -\setvalue{@@align@@\v!no }{\raggedright} -\setvalue{@@align@@\v!inner }{\if@@asragged \setraggedparagraphmode\@@align@@rl\@@align@@rr \else - \setraggedparagraphmode\@@align@@rr\@@align@@rl \fi} -\setvalue{@@align@@\v!outer }{\if@@asragged \setraggedparagraphmode\@@align@@rr\@@align@@rl \else - \setraggedparagraphmode\@@align@@rl\@@align@@rr \fi} -\setvalue{@@align@@\v!left }{\if@@asragged\@@align@@rl\else\@@align@@rr\fi} -\setvalue{@@align@@\v!right }{\if@@asragged\@@align@@rr\else\@@align@@rl\fi} -\setvalue{@@align@@\v!middle }{\if!!doneb\raggedwidecenter\else\@@align@@rc\fi} -\setvalue{@@align@@\v!flushleft }{\if!!donea\veryraggedright \else\raggedright\fi} -\setvalue{@@align@@\v!flushright }{\if!!donea\veryraggedleft \else\raggedleft \fi} -\setvalue{@@align@@\v!flushouter }{\setraggedparagraphmode\raggedleft\raggedright} -\setvalue{@@align@@\v!flushinner }{\setraggedparagraphmode\raggedright\raggedleft} -\setvalue{@@align@@\v!center }{\if!!doneb\raggedwidecenter\else\@@align@@rc\fi} -\setvalue{@@align@@\v!hanging }{\enableprotruding} -\setvalue{@@align@@\v!nothanging }{\disableprotruding} -\setvalue{@@align@@\v!hz }{\enableadjusting} -\setvalue{@@align@@\v!nohz }{\disableadjusting} -\setvalue{@@align@@\v!spacing }{\enablespacehandling \enablekernhandling} -\setvalue{@@align@@\v!nospacing }{\disablespacehandling\disablekernhandling} -\setvalue{@@align@@\v!hyphenated }{\dohyphens} -\setvalue{@@align@@\v!nothyphenated}{\nohyphens} -\setvalue{@@align@@\v!new }{\@@asraggedfalse} % so new will give you consistency -\setvalue{@@align@@\v!reset }{\notragged\normalbottom} - -\setvalue{@@align@@\v!tolerant }{\tolerance3000 \relax} -\setvalue{@@align@@\v!verytolerant}{\tolerance4500 \relax} -\setvalue{@@align@@\v!stretch }{\emergencystretch\bodyfontsize} - -\setvalue{@@ngila@@\v!broad }{\!!doneatrue} -\setvalue{@@ngila@@\v!wide }{\!!donebtrue} +\setvalue{@@ngila@@\v!broad }{\!!doneatrue} +\setvalue{@@ngila@@\v!wide }{\!!donebtrue} + +\def\installalign#1#2{\setvalue{@@align@@#1}{#2}} % can be used for overloads + +\installalign \v!new {\@@asraggedfalse} +\installalign \v!old {\@@asraggedtrue} +\installalign \empty {} + +\installalign \v!line {\baselinebottom} +\installalign \v!bottom {\raggedbottom} +\installalign \v!height {\normalbottom} +\installalign \v!width {\notragged} +\installalign \v!normal {\notragged} +\installalign \v!yes {\notragged} +\installalign \v!no {\raggedright} +\installalign \v!inner {\if@@asragged \setraggedparagraphmode\@@align@@rl\@@align@@rr \else + \setraggedparagraphmode\@@align@@rr\@@align@@rl \fi} +\installalign \v!outer {\if@@asragged \setraggedparagraphmode\@@align@@rr\@@align@@rl \else + \setraggedparagraphmode\@@align@@rl\@@align@@rr \fi} +\installalign \v!left {\if@@asragged\@@align@@rl\else\@@align@@rr\fi} +\installalign \v!right {\if@@asragged\@@align@@rr\else\@@align@@rl\fi} +\installalign \v!middle {\if!!doneb\raggedwidecenter\else\@@align@@rc\fi} +\installalign \v!flushleft {\if!!donea\veryraggedright \else\raggedright\fi} +\installalign \v!flushright {\if!!donea\veryraggedleft \else\raggedleft \fi} +\installalign \v!flushouter {\setraggedparagraphmode\raggedleft\raggedright} +\installalign \v!flushinner {\setraggedparagraphmode\raggedright\raggedleft} +\installalign \v!center {\if!!doneb\raggedwidecenter\else\@@align@@rc\fi} +\installalign \v!hanging {\enableprotruding} +\installalign \v!nothanging {\disableprotruding} +\installalign \v!hz {\enableadjusting} +\installalign \v!nohz {\disableadjusting} +\installalign \v!spacing {\enablespacehandling \enablekernhandling} +\installalign \v!nospacing {\disablespacehandling\disablekernhandling} +\installalign \v!hyphenated {\dohyphens} +\installalign \v!nothyphenated {\nohyphens} +\installalign \v!new {\@@asraggedfalse} % so new will give you consistency +\installalign \v!reset {\notragged\normalbottom} + +\installalign \v!tolerant {\tolerance3000 \relax} +\installalign \v!verytolerant {\tolerance4500 \relax} +\installalign \v!stretch {\emergencystretch\bodyfontsize} \def\dodosetupalign#1{\csname @@align@@#1\endcsname} \def\dodosetupngila#1{\csname @@ngila@@#1\endcsname} diff --git a/Master/texmf-dist/tex/context/base/core-var.tex b/Master/texmf-dist/tex/context/base/core-var.tex index eba38fdc565..4db5cb6e55e 100644 --- a/Master/texmf-dist/tex/context/base/core-var.tex +++ b/Master/texmf-dist/tex/context/base/core-var.tex @@ -143,7 +143,7 @@ \def\dodopreventmode#1% {\@EA\let\csname\@mode@#1\endcsname\preventedmode} -\def\dodoenablemode#1% +\def\dodoenablemode#1% mode can be relax {\ifcase0\csname\@mode@#1\endcsname\relax \@EA\let\csname\@mode@#1\endcsname\enabledmode \fi} @@ -153,6 +153,17 @@ \@EA\let\csname\@mode@#1\endcsname\disabledmode \fi} +% handy for mp + +\def\booleanmodevalue#1% can be \relax + {\expandafter\ifx\csname\@mode@#1\endcsname\relax + fals% + \else\ifnum0\csname\@mode@#1\endcsname=0 + fals% + \else + tru% + \fi\fi e} + % check macros \newif\ifcheckedmode diff --git a/Master/texmf-dist/tex/context/base/core-vis.tex b/Master/texmf-dist/tex/context/base/core-vis.tex index ed469e2e074..b20c9b9ce0b 100644 --- a/Master/texmf-dist/tex/context/base/core-vis.tex +++ b/Master/texmf-dist/tex/context/base/core-vis.tex @@ -319,19 +319,6 @@ \normalvskip\zeropoint\!!plus\ruleddepth}% \fi} -% \def\cutmarksymbols -% {\setbox\scratchbox\normalvbox to \cutmarklength -% {\normalvfill -% \normalhbox to \cutmarklength -% {\normalhfill\ssxx\cutmarksymbol\normalhfill}% -% \normalvfill}% -% \normalhbox to \ruledwidth -% {\scratchdimen\cutmarklength -% \divide\scratchdimen 2 -% \llap{\copy\scratchbox\normalhskip\cutmarkoffset\scratchdimen}% -% \normalhfill -% \rlap{\normalhskip\cutmarkoffset\scratchdimen\copy\scratchbox}}} - \def\cutmarksymbols#1% {\normalhbox to \ruledwidth {\setbox\scratchbox\normalhbox to \cutmarklength @@ -348,64 +335,6 @@ \normalvss}% \normalhss}} -% \def\makecutbox#1% -% {\edef\ruledheight{\the\ht#1}% -% \edef\ruleddepth {\the\dp#1}% -% \edef\ruledwidth {\the\wd#1}% -% \setbox#1\normalhbox -% {\dontcomplain -% \forgetall -% \boxmaxdepth\maxdimen -% \offinterlineskip -% \scratchdimen\cutmarklength -% \divide\scratchdimen 2 -% \hsize\ruledwidth -% \setbox\scratchbox\normalvbox -% {\setbox\scratchbox\normalhbox{\horizontalcuts}% -% \normalvskip-\cutmarkoffset\scratchdimen -% \normalvskip-2\scratchdimen -% \copy\scratchbox -% \normalvskip\cutmarkoffset\scratchdimen -% \hbox to \ruledwidth -% {\setbox\scratchbox\normalhbox{\verticalcuts}% -% \llap{\copy\scratchbox\normalhskip\cutmarkoffset\scratchdimen}% -% \bgroup -% \setbox\scratchbox\normalhbox{\baselinecuts}% -% \llap{\copy\scratchbox\normalhskip\cutmarkoffset\scratchdimen}% -% \normalhfill -% \rlap{\normalhskip\cutmarkoffset\scratchdimen\copy\scratchbox}% -% \egroup -% \rlap{\normalhskip\cutmarkoffset\scratchdimen\copy\scratchbox}}% -% \normalvskip\cutmarkoffset\scratchdimen -% \copy\scratchbox}% -% \ht\scratchbox\ruledheight -% \dp\scratchbox\ruleddepth -% \wd\scratchbox\zeropoint -% \resetcolorseparation -% \localstartcolor[\defaulttextcolor]% -% \box\scratchbox -% \ifx\cutmarksymbol\relax \else -% \setbox\scratchbox\normalvbox -% {\setbox\scratchbox\normalhbox{\cutmarksymbols}% -% \vskip-\cutmarkoffset\scratchdimen -% \vskip-\cutmarklength -% \copy\scratchbox -% \vskip\cutmarkoffset\scratchdimen -% \vskip\ruledheight -% \vskip\ruleddepth -% \vskip\cutmarkoffset\scratchdimen -% \copy\scratchbox}% -% \ht\scratchbox\ruledheight -% \dp\scratchbox\ruleddepth -% \wd\scratchbox\zeropoint -% \box\scratchbox -% \fi -% \localstopcolor -% \box#1}% -% \wd#1=\ruledwidth -% \ht#1=\ruledheight -% \dp#1=\ruleddepth} - \def\makecutbox#1% simplier with layers, todo {\edef\ruledheight{\the\ht#1}% \edef\ruleddepth {\the\dp#1}% diff --git a/Master/texmf-dist/tex/context/base/enco-ans.tex b/Master/texmf-dist/tex/context/base/enco-ans.tex index 6c7acf73189..7a48b5b5548 100644 --- a/Master/texmf-dist/tex/context/base/enco-ans.tex +++ b/Master/texmf-dist/tex/context/base/enco-ans.tex @@ -114,6 +114,7 @@ \definecharacter textasciitilde 158 \definecharacter textbackslash 92 \definecharacter textbraceleft 123 +\definecharacter textbar 124 \definecharacter textbraceright 125 \definecharacter textunderscore 95 diff --git a/Master/texmf-dist/tex/context/base/font-uni.tex b/Master/texmf-dist/tex/context/base/font-uni.tex index 3dee48ec48f..5d9e7a8819f 100644 --- a/Master/texmf-dist/tex/context/base/font-uni.tex +++ b/Master/texmf-dist/tex/context/base/font-uni.tex @@ -450,7 +450,7 @@ % the following \relax's are realy needed \doifvalue{\??uc#1\c!interlinespace}\v!yes \setupinterlinespace\relax - \doifvalue{\??uc#1\c!strut}\v!yes + \doifelsevalue{\??uc#1\c!strut}\v!yes {\setunicodestrut\unicodeheight\unicodedepth} {\resetunicodestrut}% \getvalue{\??uc#1\c!commands}\relax} diff --git a/Master/texmf-dist/tex/context/base/math-ext.tex b/Master/texmf-dist/tex/context/base/math-ext.tex index 177e3c8a4a9..e2155503db4 100644 --- a/Master/texmf-dist/tex/context/base/math-ext.tex +++ b/Master/texmf-dist/tex/context/base/math-ext.tex @@ -63,6 +63,13 @@ % temp here +%D We next define extensible arrows. Extensible arrows are arrows that change +%D their length accoding to the width of the text to be placed above and below +%D the arrow. Since we need to define a lot of arrows, we first define some +%D helper macros. The basic idea is to measure the width of the box to be +%D placed above and below the arrow, and make the \quotation{body} of the +%D arrow as long as the bigger of the two widths. + \def\mtharrfactor{1} \def\mtharrextra {0} @@ -109,6 +116,9 @@ \let\domthxarrsingle\domthxarr +%D There are some arrows which are created by stacking two arrows. The next +%D macro helps in defining such \quotation{double arrows}. + \def\domthxarrdouble#1#2#3#4#5#6#7% opt l r sp rs top bot {\mathrel {\scratchdimen.22ex\relax @@ -118,6 +128,67 @@ \kern-\wd2 \lower\scratchdimen\box2}} +%D \macros{definematharrow} +%D Macro for defining new arrows. We can define two types of arrows|<|single +%D arrows and double arrows. Single arrows are defined as +%D \starttyping +%D \definematharrow [xrightarrow] [0359] [\rightarrowfill] +%D \stoptyping +%D The first argument is the name of the arrow (\tex{xrightarrow} in this case.) +%D The second argument consists of a set of 4 numbers and specify the spacing +%D correction in math units~\type{mu}. These numbers define: +%D \startlines +%D 1st number: arrow||tip correction +%D 2nd number: arrow||tip correction +%D 3rd number: space (multiplied by \tex{matharrfactor} and advanced by \tex{matharrextra}) +%D 4th number: space (multiplied by \tex{matharrfactor} and advanced by \tex{matharrextra}) +%D \stoplines +%D +%D The third argument is the name of the extensible fill. The third argument +%D is optional when the arrow is redefined later (this is useful for font +%D specific tweaking of the skips.) For example, +%D \startbuffer +%D \math{\xrightarrow{above}} +%D \definematharrow[xrightarrow][0000] +%D \math{\xrightarrow{above}} +%D \definematharrow[xrightarrow][55{50}{50}] +%D \math{\xrightarrow{above}} +%D \stopbuffer +%D \typebuffer gives {\getbuffer} +%D +%D The double arrows are defined as follows +%D \starttyping +%D \definematharrow [xrightleftharpoons] [3095,0359] +%D [\rightharpoonupfill,\leftharpoondownfill] +%D \stoptyping +%D The second and the third set of arguments consist of comma separated +%D values. The first element of the second argument (\type{3095}) corresponds +%D to the spacing correction of top arrow fill (\tex{rightarrowupfill}). +%D Similarly, \type{0359} corresponds to bottom arrow fill +%D \tex{leftharpoondownfill}). Stacking them on top of each other we get +%D $\xrightleftharpoons[big]{above}{below}$. +%D The following math arrows are defined +%D \midaligned{\starttable[|l|m|] +%D \NC \tex{xrightarrow } \NC \xrightarrow [big] \NC \NR +%D \NC \tex{xleftarrow } \NC \xleftarrow [big] \NC \NR +%D \NC \tex{xequal } \NC \xequal [big] \NC \NR +%D \NC \tex{xRightarrow } \NC \xRightarrow [big] \NC \NR +%D \NC \tex{xLeftarrow } \NC \xLeftarrow [big] \NC \NR +%D \NC \tex{xLeftrightarrow } \NC \xLeftrightarrow [big] \NC \NR +%D \NC \tex{xleftrightarrow } \NC \xleftrightarrow [big] \NC \NR +%D \NC \tex{xmapsto } \NC \xmapsto [big] \NC \NR +%D \NC \tex{xtwoheadrightarrow } \NC \xtwoheadrightarrow [big] \NC \NR +%D \NC \tex{xtwoheadleftarrow } \NC \xtwoheadleftarrow [big] \NC \NR +%D \NC \tex{xrightharpoondown } \NC \xrightharpoondown [big] \NC \NR +%D \NC \tex{xrightharpoonup } \NC \xrightharpoonup [big] \NC \NR +%D \NC \tex{xleftharpoondown } \NC \xleftharpoondown [big] \NC \NR +%D \NC \tex{xleftharpoonup } \NC \xleftharpoonup [big] \NC \NR +%D \NC \tex{xhookleftarrow } \NC \xhookleftarrow [big] \NC \NR +%D \NC \tex{xhookrightarrow } \NC \xhookrightarrow [big] \NC \NR +%D \NC \tex{xleftrightharpoons } \NC \xleftrightharpoons [big] \NC \NR +%D \NC \tex{xrightleftharpoons } \NC \xrightleftharpoons [big] \NC \NR +%D \stoptable} + \def\definematharrow {\doquadrupleargument\dodefinematharrow} @@ -166,6 +237,14 @@ % Adapted from amsmath. +%D \macros{mtharrowfill,defaultmtharrowfill} +%D To extend the arrows we need to define a \quotation{math arrow fill}. This +%D command takes 7 arguments: the first four correspond the second argument of +%D \tex{definematharrow} explained above. The other three specify the tail, +%D body and head of the arrow. \tex{defaultmtharrowfill} has values tweaked to +%D match latin modern fonts. For fonts that are significantly different (e.g. +%D cows) a different set of values need to be determined. + \def\mtharrowfill#1#2#3#4#5#6#7% {$\mathsurround 0pt \thickmuskip0mu\medmuskip\thickmuskip\thinmuskip\thickmuskip @@ -176,7 +255,8 @@ \def\defaultmtharrowfill{\mtharrowfill 7227} -% Maybe redefine leftarrowfill and rightarrowfill using arrowfill +%D We now define some arrow fills that will be used for defining the arrows. +%D \tex{leftarrowfill} and \tex{rightarrowfill} are redefined using \tex{defaultmtharrowfill}. \def\rightarrowfill {\defaultmtharrowfill \relbar \relbar \rightarrow } \def\leftarrowfill {\defaultmtharrowfill \leftarrow \relbar \relbar } @@ -196,7 +276,9 @@ \def\hookleftfill {\defaultmtharrowfill \leftarrow \relbar{\relbar\joinrel\rhook}} \def\hookrightfill{\defaultmtharrowfill{\lhook\joinrel\relbar}\relbar \rightarrow} -% From amsmath.sty, extarrows.sty, extpfel.sty and mathtools.sty(ams) +%D Now we define most commonly used arrows. These include arrows defined in +%D \filename{amsmath.sty}, \filename{extarrows.sty}, \filename{extpfel.sty} +%D and mathtools.sty packages for \LATEX. \definematharrow [xrightarrow] [0359] [\rightarrowfill] \definematharrow [xleftarrow] [3095] [\leftarrowfill] @@ -216,17 +298,21 @@ \definematharrow [xleftrightharpoons] [3399,3399] [\leftharpoonupfill,\rightharpoondownfill] \definematharrow [xrightleftharpoons] [3399,3399] [\rightharpoonupfill,\leftharpoondownfill] -\definematharrow [xhdefaultookleftarrow] [3095] [\hookleftfill] -\definematharrow [xhdefaultookrightarrow] [0395] [\hookrightfill] - -% \startformula \xrightarrow{stuff on top}\stopformula -% \startformula \xrightarrow{}{stuff on top}\stopformula -% \startformula \xrightarrow{stuff below}{}\stopformula -% \startformula \xrightarrow{stuff below}{stuff on top}\stopformula - -% \startformula \xleftarrow [none]{stuff below}{stuff on top}\stopformula -% \startformula \xleftarrow [small]{stuff below}{stuff on top}\stopformula -% \startformula \xleftarrow [medium]{stuff below}{stuff on top}\stopformula -% \startformula \xleftarrow [big]{stuff below}{stuff on top}\stopformula +\definematharrow [xhookleftarrow] [3095] [\hookleftfill] +\definematharrow [xhookrightarrow] [0395] [\hookrightfill] + +%D These arrows can be used as folows: +%D \startbuffer +%D \startformula \xrightarrow{stuff on top}\stopformula +%D \startformula \xrightarrow{}{stuff on top}\stopformula +%D \startformula \xrightarrow{stuff below}{}\stopformula +%D \startformula \xrightarrow{stuff below}{stuff on top}\stopformula +%D +%D \startformula \xleftarrow [none]{stuff below}{stuff on top}\stopformula +%D \startformula \xleftarrow [small]{stuff below}{stuff on top}\stopformula +%D \startformula \xleftarrow [medium]{stuff below}{stuff on top}\stopformula +%D \startformula \xleftarrow [big]{stuff below}{stuff on top}\stopformula +%D \stopbuffer +%D \typebuffer which gives \getbuffer \protect \endinput diff --git a/Master/texmf-dist/tex/context/base/math-tex.tex b/Master/texmf-dist/tex/context/base/math-tex.tex index d2516bc62c6..fc3cd7ae610 100644 --- a/Master/texmf-dist/tex/context/base/math-tex.tex +++ b/Master/texmf-dist/tex/context/base/math-tex.tex @@ -414,6 +414,7 @@ \definemathsymbol [grave] [accent] [mr] ["12] \definemathsymbol [ddot] [accent] [mr] ["7F] \definemathsymbol [tilde] [accent] [mr] ["7E] +\definemathsymbol [mathring] [accent] [mr] ["17] \definemathsymbol [bar] [accent] [mr] ["16] \definemathsymbol [breve] [accent] [mr] ["15] \definemathsymbol [check] [accent] [mr] ["14] diff --git a/Master/texmf-dist/tex/context/base/meta-ini.tex b/Master/texmf-dist/tex/context/base/meta-ini.tex index d00a8a6b196..e2f9fa1f9f7 100644 --- a/Master/texmf-dist/tex/context/base/meta-ini.tex +++ b/Master/texmf-dist/tex/context/base/meta-ini.tex @@ -760,6 +760,11 @@ LastPageNumber:= lastpage; \stopMPinitializations +\appendtoks + \disablediscretionaries + \disablecompoundcharacters +\to\everyMPgraphic + \appendtoks \expanded{\definecolor[currentcolor][\currentcolorname]}% \to \everyMPgraphic diff --git a/Master/texmf-dist/tex/context/base/page-mul.tex b/Master/texmf-dist/tex/context/base/page-mul.tex index 4fd0979f8b8..edbf6206e02 100644 --- a/Master/texmf-dist/tex/context/base/page-mul.tex +++ b/Master/texmf-dist/tex/context/base/page-mul.tex @@ -1654,14 +1654,20 @@ \doifelse\@@klbalance\v!yes \balancecolumnstrue \balancecolumnsfalse - \processaction % ook nog: laatsteuitlijnen - [\@@klalign] - [ \v!yes=>\stretchcolumnstrue - \inheritcolumnsfalse, - \v!no=>\stretchcolumnsfalse - \inheritcolumnsfalse, - \v!text=>\stretchcolumnsfalse - \inheritcolumnstrue]% +\installalign\v!yes {\stretchcolumnstrue \inheritcolumnsfalse}% todo: new key +\installalign\v!no {\stretchcolumnsfalse\inheritcolumnsfalse}% todo: new key +\installalign\v!text{\stretchcolumnsfalse\inheritcolumnstrue }% +\stretchcolumnsfalse +\inheritcolumnstrue +\doifsomething\@@klalign{\expanded{\setupalign[\@@klalign]}}% +% \processaction +% [\@@klalign] +% [ \v!yes=>\stretchcolumnstrue +% \inheritcolumnsfalse, +% \v!no=>\stretchcolumnsfalse +% \inheritcolumnsfalse, +% \v!text=>\stretchcolumnsfalse +% \inheritcolumnstrue]% \nofcolumns=\@@kln % % probably more is needed, and how about nesting save's diff --git a/Master/texmf-dist/tex/context/base/s-map-10.tex b/Master/texmf-dist/tex/context/base/s-map-10.tex index 800eb5c156f..ec7ef6128b2 100644 --- a/Master/texmf-dist/tex/context/base/s-map-10.tex +++ b/Master/texmf-dist/tex/context/base/s-map-10.tex @@ -36,6 +36,8 @@ \doifmode{asym}{\enablemode[onecolumn]} % implies onecolumn \doifnotmode{onecolumn}{\MapsInColumnstrue} +\enablemode[realfonts] + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% fonts diff --git a/Master/texmf-dist/tex/context/base/s-ptj-01.tex b/Master/texmf-dist/tex/context/base/s-ptj-01.tex index 98ec3ae031f..188af73bd7e 100644 --- a/Master/texmf-dist/tex/context/base/s-ptj-01.tex +++ b/Master/texmf-dist/tex/context/base/s-ptj-01.tex @@ -1,6 +1,6 @@ %D \module %D [ file=s-ptj-01, -%D version=2006.11.14, +%D version=2006.11.28, %D title=\CONTEXT\ Style File, %D subtitle=PracTeX Journal Style, %D author=Aditya Mahajan, @@ -11,41 +11,31 @@ %C This module is part of the \CONTEXT\ macro||package and is %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. -%C -%C This work may be distributed and|/|or modified under the -%C conditions of the \LATEX\ Project Public License, either version~1.3 -%C of this license or (at your option) any later version. -%C The latest version of this license is in -%C \hyphenatedurl{http://www.latex-project.org/lppl.txt} -%C and version~1.3 or later is part of all distributions of \LATEX\ -%C version~2005/12/01 or later. -%C -%C This work has the LPPL maintenance status \quote{maintained}. -%C -%C The Current Maintainer of this work is Aditya Mahajan. -%C -%C The Base Interpreter for this work is any \CONTEXT||formal. -%C -%C This work consists of the file \filename{t-pracjourn.tex}. %M % These macros are needed to compile the documentation. %M \def\PracTeX{Prac\kern-0.07em\TeX} %M \def\PRACTEX{\PracTeX} %M \def\TPJ {The \PRACTEX\ Journal} %M \useurl[TPJ][http://www.tug.org/pracjourn/][][\TPJ] +%M \useurl[texgyre][http://www.gust.org.pl/projects/e-foundry/tex-gyre/] \writestatus {loading} {Context Module for the PracTeX Journal} %D This module is for producing acticles for \from[TPJ]. It merely copies the %D layout of the the \LATEX\ class \filename{pracjourn.cls} available from -%D \TPJ\ website (\url[TPJ]). A sample document is given at the end of this -%D file. The typeset sample can be obtained by +%D \TPJ\ website (\url[TPJ]). This module has a filename synonym +%D \filename{pracjourn}. So to use this module, you can write: %D \starttyping -%D texexec --mode=demo s-pracjourn.tex +%D \usemodule[pracjourn] +%D \stoptyping +%D A sample document is given at the end of this file. The typeset sample can +%D be obtained by +%D \starttyping +%D texmfstart texexec --mode=demo s-ptj-01.tex %D \stoptyping %D The documentation is written as comments. If you want to see a \PDF\ copy %D \starttyping -%D texexec --module s-pracjourn.tex +%D texmfstart texexec --module s-ptj-01.tex %D \stoptyping \startmodule[pracjourn] @@ -78,14 +68,14 @@ footerdistance=.25in, ] - %D Next we do the font setup. \TPJ\ uses mathpazo for roman and math faces and %D uses latin modern for sans serif and monotype. For the main face, 12pt is %D used with a 15.5pt baseline skip. Font protrusion is enabled, but font -%D expansion is not. We follow these conventions, but use -%D Pagella fonts from \TEX{gyre} project, and scale latin modern fonts by -%D 1.1 for better matching. Most of the numbers (page numbers, figure numbers, -%D section numbers) are set in oldstyle. +%D expansion is not. We follow these conventions, but use Pagella fonts from +%D \TEX{gyre} project, and scale latin modern fonts by 1.1 for better +%D matching. Right now, the \TEX{gyre} fonts are not distributed with +%D \CONTEXT. They can be downloaded from \url[texgyre]. Most of the numbers +%D (page numbers, figure numbers, section numbers) are set in oldstyle. \usetypescript [serif,sans,mono] [hanging] [pure] \setupalign [hanging] @@ -235,8 +225,8 @@ {\doadditionalinfo{Address}{\getvariable{pracjourn}{address}}} \iftitleskipdone \blank[big] \fi \doadditionalinfo{Abstract}% - {\setupindenting[yes] - \setupinterlinespace + {\setupindenting[yes]% + \setupinterlinespace% \getbuffer[abstract] \endgraf} \egroup @@ -368,8 +358,9 @@ \setupwhitespace [medium] \setupblank [medium] -%D We define logos for \PRACTEX\ and \TPJ. These can be accessed by -%D \type|\PracTeX|, \type|\PRACTEX| and \type|\TPJ|. +%D We define logos for \PRACTEX\ and \TPJ. These definitions are copied from +%D \filename{pracjourn.cls} and can be accessed by \type|\PracTeX|, +%D \type|\PRACTEX| and \type|\TPJ|. \def\PracTeX{Prac\kern-0.07em\TeX} \def\PRACTEX{\PracTeX} @@ -409,6 +400,7 @@ \immediate\closein\scratchread \protect + \stopmodule \doifnotmode{demo}{\endinput} diff --git a/Master/texmf-dist/tex/context/base/spec-dpx.tex b/Master/texmf-dist/tex/context/base/spec-dpx.tex index 0f038034272..1522304e7d3 100644 --- a/Master/texmf-dist/tex/context/base/spec-dpx.tex +++ b/Master/texmf-dist/tex/context/base/spec-dpx.tex @@ -119,7 +119,7 @@ % \definefileinsertion{dpx}{mps}{\handleepsimage} -\definefileinsertion{tpd}{mps} +\definefileinsertion{dpx}{mps} {\hbox {\convertMPtoPDF\@@DriverImageFile{1}{1}% \global\let\PDFimagereference\empty}} diff --git a/Master/texmf-dist/tex/context/base/spec-tst.tex b/Master/texmf-dist/tex/context/base/spec-tst.tex index 9f150dfe367..b8424e18ee1 100644 --- a/Master/texmf-dist/tex/context/base/spec-tst.tex +++ b/Master/texmf-dist/tex/context/base/spec-tst.tex @@ -31,6 +31,7 @@ \long\def\sanitizePDFuniencoding#1\to#2% {\enablePDFunicrlf + \simplifycommands % added due to Dohyun Kim \let\unicodechar\relax % prevent further expansion \retainlccodes\lccode32=255 % slooow \lowercasestring\PDFunicodetrigger#1\to#2% diff --git a/Master/texmf-dist/tex/context/base/supp-mps.tex b/Master/texmf-dist/tex/context/base/supp-mps.tex index e03ef826c35..d6e015372ee 100644 --- a/Master/texmf-dist/tex/context/base/supp-mps.tex +++ b/Master/texmf-dist/tex/context/base/supp-mps.tex @@ -388,6 +388,8 @@ \fi \next} +\appendtoks \obeyMPlines \to \everyMPgraphic % more efficient than in each following grouped write + \long\def\writeMPgraphiclongR#1% fast, no scanning {\bgroup \let\par\space diff --git a/Master/texmf-dist/tex/context/base/symb-glm.tex b/Master/texmf-dist/tex/context/base/symb-glm.tex index 63ac4ed2664..b07a3a42669 100644 --- a/Master/texmf-dist/tex/context/base/symb-glm.tex +++ b/Master/texmf-dist/tex/context/base/symb-glm.tex @@ -36,26 +36,26 @@ % % but was also one of the reasons for triggering the lm project, so: -\definefontsynonym [GuilSerif] [cork-lmr10] [encoding=ec] -\definefontsynonym [GuilSerifBold] [cork-lmbx10] [encoding=ec] -\definefontsynonym [GuilSerifItalic] [cork-lmti10] [encoding=ec] -\definefontsynonym [GuilSerifSlanted] [cork-lmsl10] [encoding=ec] -\definefontsynonym [GuilSerifBoldItalic] [cork-lmbxti10] [encoding=ec] -\definefontsynonym [GuilSerifBoldSlanted] [cork-lmbxsl10] [encoding=ec] +\definefontsynonym [GuilSerif] [ec-lmr10] [encoding=ec] +\definefontsynonym [GuilSerifBold] [ec-lmbx10] [encoding=ec] +\definefontsynonym [GuilSerifItalic] [ec-lmti10] [encoding=ec] +\definefontsynonym [GuilSerifSlanted] [ec-lmsl10] [encoding=ec] +\definefontsynonym [GuilSerifBoldItalic] [ec-lmbxti10] [encoding=ec] +\definefontsynonym [GuilSerifBoldSlanted] [ec-lmbxsl10] [encoding=ec] -\definefontsynonym [GuilSans] [cork-lmss10] [encoding=ec] -\definefontsynonym [GuilSansBold] [cork-lmssbx10] [encoding=ec] -\definefontsynonym [GuilSansItalic] [cork-lmssi10] [encoding=ec] -\definefontsynonym [GuilSansSlanted] [cork-lmssi10] [encoding=ec] -\definefontsynonym [GuilSansBoldItalic] [cork-lmssbi10] [encoding=ec] -\definefontsynonym [GuilSansBoldSlanted] [cork-lmssbi10] [encoding=ec] +\definefontsynonym [GuilSans] [ec-lmss10] [encoding=ec] +\definefontsynonym [GuilSansBold] [ec-lmssbx10] [encoding=ec] +\definefontsynonym [GuilSansItalic] [ec-lmssi10] [encoding=ec] +\definefontsynonym [GuilSansSlanted] [ec-lmssi10] [encoding=ec] +\definefontsynonym [GuilSansBoldItalic] [ec-lmssbi10] [encoding=ec] +\definefontsynonym [GuilSansBoldSlanted] [ec-lmssbi10] [encoding=ec] -\definefontsynonym [GuilMono] [cork-lmtt10] [encoding=ec] -%definefontsynonym [GuilMonoBold] [cork-lmtt10] [encoding=ec] -%definefontsynonym [GuilMonoSlanted] [cork-lmtt10] [encoding=ec] -%definefontsynonym [GuilMonoItalic] [cork-lmtt10] [encoding=ec] -%definefontsynonym [GuilMonoBoldItalic] [cork-lmtt10] [encoding=ec] -%definefontsynonym [GuilMonoBoldSlanted] [cork-lmtt10] [encoding=ec] +\definefontsynonym [GuilMono] [ec-lmtt10] [encoding=ec] +%definefontsynonym [GuilMonoBold] [ec-lmtt10] [encoding=ec] +%definefontsynonym [GuilMonoSlanted] [ec-lmtt10] [encoding=ec] +%definefontsynonym [GuilMonoItalic] [ec-lmtt10] [encoding=ec] +%definefontsynonym [GuilMonoBoldItalic] [ec-lmtt10] [encoding=ec] +%definefontsynonym [GuilMonoBoldSlanted] [ec-lmtt10] [encoding=ec] \definesymbol [xleftguillemot] [\getglyph{Guil}{\char19}] \definesymbol [xrightguillemot] [\getglyph{Guil}{\char20}] diff --git a/Master/texmf-dist/tex/context/base/syst-xtx.tex b/Master/texmf-dist/tex/context/base/syst-xtx.tex index 3c60b7824ed..3cf5aa29bac 100644 --- a/Master/texmf-dist/tex/context/base/syst-xtx.tex +++ b/Master/texmf-dist/tex/context/base/syst-xtx.tex @@ -39,6 +39,10 @@ \input enco-xtx.tex \fi +\ifx\XeTeXuseglyphmetrics\undefined \else + \XeTeXuseglyphmetrics=1 +\fi + % patch needed for turkish \setcclcuc 201C 201C 201C diff --git a/Master/texmf-dist/tex/context/base/unic-cjk.tex b/Master/texmf-dist/tex/context/base/unic-cjk.tex index 2835e6cf147..a4155f13605 100644 --- a/Master/texmf-dist/tex/context/base/unic-cjk.tex +++ b/Master/texmf-dist/tex/context/base/unic-cjk.tex @@ -11,6 +11,8 @@ %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. -\dostepwiserecurse{40}{159}{1}{\expanded{\defineunicodecommand {\recurselevel}} {\lookaheaduchar}} +\dostepwiserecurse {40}{159}{1}{\expanded{\defineunicodecommand{\recurselevel}} {\lookaheaduchar}} +\dostepwiserecurse{172}{215}{1}{\expanded{\defineunicodecommand{\recurselevel}} {\lookaheaduchar}} +\dostepwiserecurse{249}{250}{1}{\expanded{\defineunicodecommand{\recurselevel}} {\lookaheaduchar}} \endinput diff --git a/Master/texmf-dist/tex/context/base/x-newmml.tex b/Master/texmf-dist/tex/context/base/x-newmml.tex index 690c9ca7043..803190ee44d 100644 --- a/Master/texmf-dist/tex/context/base/x-newmml.tex +++ b/Master/texmf-dist/tex/context/base/x-newmml.tex @@ -100,6 +100,16 @@ \def\setupMMLappearance[#1]{\dodoubleargument\getparameters[@@MML#1]} +\def\startusingMMLarguments % optional maken + {\begingroup + %\expandXMLta % expand entities first + \getXMLta} + +\def\stopusingMMLarguments % optional maken + {\endgroup} + +\def\MMLargumentprefix{@@MML\currentXMLelement} + %D We will apply inner math to all bits and pieces made up by an %D \type {apply}. @@ -138,7 +148,7 @@ {\donetrue} {\XMLdoifonstackelse{apply} {\defXMLfirstnamedtext\ascii{apply}% - \startsavingXMLelements % best use a substack so that we donnot need to \edef + \startsavingXMLelements % best use a substack so that we do not need to \edef \ascii \stopsavingXMLelements} {}% @@ -993,35 +1003,41 @@ \defineXMLcommand [rem] {\flushXMLstackwith\plustwo{\getXMLentity{mod}}} -\defineXMLcommand [times] {\directsetup{mmc:times}} - \setupMMLappearance [times] [\c!symbol=\v!no,\c!auto=\v!yes] % new, auto catches cn cn cn +\defineXMLcommand [times] [\MMLargumentprefix] [] {\directsetup{mmc:times}} + \startsetups mmc:times - \setMMLcreset{\MMLcfunctionlist,\MMLcconstructlist}% - \doifelse\@@MMLtimesauto\v!no { - \let\@@MMLtimes@@symbol\@@MMLtimessymbol - } { - \countXMLnamedstack {cn} - \ifnum\scratchcounter>\plusone - \let\@@MMLtimes@@symbol\v!yes - \else - \let\@@MMLtimes@@symbol\@@MMLtimessymbol - \fi - } - \doifelse\@@MMLtimes@@symbol\v!yes { - \flushXMLstackwith\plustwo\times - } { - \doifelse\@@MMLtimes@@symbol{dot} { - \flushXMLstackwith\plustwo\cdot + \startusingMMLarguments + \setMMLcreset{\MMLcfunctionlist,\MMLcconstructlist}% + \doifelse\@@MMLtimesauto\v!no { + \let\@@MMLtimes@@symbol\@@MMLtimessymbol } { - \doifelse\@@MMLtimes@@symbol{times} { - \flushXMLstackwith\plustwo\times + \countXMLnamedstack {cn} + \ifnum\scratchcounter>\plusone + \doifinsetelse\@@MMLtimessymbol{\v!yes,\v!no} { + \let\@@MMLtimes@@symbol\v!yes + } { + \let\@@MMLtimes@@symbol\@@MMLtimessymbol + } + \else + \let\@@MMLtimes@@symbol\@@MMLtimessymbol + \fi + } + \doifelse\@@MMLtimes@@symbol\v!yes { + \flushXMLstackwith\plustwo\times + } { + \doifelse\@@MMLtimes@@symbol{dot} { + \flushXMLstackwith\plustwo\cdot } { - \flushXMLstackwith\plustwo\empty + \doifelse\@@MMLtimes@@symbol{times} { + \flushXMLstackwith\plustwo\times + } { + \flushXMLstackwith\plustwo\empty + } } } - } + \stopusingMMLarguments \stopsetups \defineXMLcommand [root] {\directsetup{mmc:root}} diff --git a/Master/texmf-dist/tex/context/base/x-om2cml.xsl b/Master/texmf-dist/tex/context/base/x-om2cml.xsl index 60888c10d7c..4bc1818078b 100644 --- a/Master/texmf-dist/tex/context/base/x-om2cml.xsl +++ b/Master/texmf-dist/tex/context/base/x-om2cml.xsl @@ -177,7 +177,29 @@ - + + + + + + + + + times + + + + + + + + + + + + + + -- cgit v1.2.3