summaryrefslogtreecommitdiff
path: root/tex
diff options
context:
space:
mode:
Diffstat (limited to 'tex')
-rw-r--r--tex/context/base/colo-ini.mkiv29
-rw-r--r--tex/context/base/cont-new.mkii2
-rw-r--r--tex/context/base/cont-new.mkiv2
-rw-r--r--tex/context/base/context-version.pdfbin4075 -> 4074 bytes
-rw-r--r--tex/context/base/context-version.pngbin106211 -> 106151 bytes
-rw-r--r--tex/context/base/context.mkii2
-rw-r--r--tex/context/base/context.mkiv2
-rw-r--r--tex/context/base/font-ini.mkiv146
-rw-r--r--tex/context/base/spac-fnt.mkiv2
-rw-r--r--tex/context/base/status-files.pdfbin24019 -> 24024 bytes
-rw-r--r--tex/context/base/status-lua.pdfbin169698 -> 169695 bytes
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua2
12 files changed, 123 insertions, 64 deletions
diff --git a/tex/context/base/colo-ini.mkiv b/tex/context/base/colo-ini.mkiv
index 411ff9fbb..76bd14f09 100644
--- a/tex/context/base/colo-ini.mkiv
+++ b/tex/context/base/colo-ini.mkiv
@@ -759,12 +759,31 @@
% Since we couple definitions, we could stick to one test. Todo. Same for mpcolor.
+% : in currentpalet, maybe not, ugly (some day at the lua end)
+
\letvalueempty{(cs:-}
\letvalueempty{(ts:-}
-\unexpanded\def\doactivatecolor#1% : in currentpalet, maybe not, ugly (some day at the lua end)
+% \unexpanded\def\doactivatecolor#1% : in currentpalet, maybe not, ugly (some day at the lua end)
+% {\edef\currentcolorname{#1}%
+% \ifcsname(cs:\currentpalet\currentcolorname)\endcsname
+% \csname(cs:\currentpalet\currentcolorname)\endcsname
+% \csname(ts:\currentpalet\currentcolorname)\endcsname
+% \else\ifcsname(cs:\currentcolorname)\endcsname
+% \csname(cs:\currentcolorname)\endcsname
+% \csname(ts:\currentcolorname)\endcsname
+% \fi\fi}
+
+\unexpanded\def\doactivatecolor#1% not that much faster but less tracing
{\edef\currentcolorname{#1}%
- \ifcsname(cs:\currentpalet\currentcolorname)\endcsname
+ \ifx\currentpalet\empty
+ \expandafter\doactivatecolor_nop
+ \else
+ \expandafter\doactivatecolor_yes
+ \fi}
+
+\unexpanded\def\doactivatecolor_yes
+ {\ifcsname(cs:\currentpalet\currentcolorname)\endcsname
\csname(cs:\currentpalet\currentcolorname)\endcsname
\csname(ts:\currentpalet\currentcolorname)\endcsname
\else\ifcsname(cs:\currentcolorname)\endcsname
@@ -772,6 +791,12 @@
\csname(ts:\currentcolorname)\endcsname
\fi\fi}
+\unexpanded\def\doactivatecolor_nop
+ {\ifcsname(cs:\currentcolorname)\endcsname
+ \csname(cs:\currentcolorname)\endcsname
+ \csname(ts:\currentcolorname)\endcsname
+ \fi}
+
\let\normaldoactivatecolor\doactivatecolor
% new:
diff --git a/tex/context/base/cont-new.mkii b/tex/context/base/cont-new.mkii
index 7f31e795b..4e98dde32 100644
--- a/tex/context/base/cont-new.mkii
+++ b/tex/context/base/cont-new.mkii
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2011.12.15 13:56}
+\newcontextversion{2011.12.15 23:39}
%D This file is loaded at runtime, thereby providing an
%D excellent place for hacks, patches, extensions and new
diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv
index d9d2817ec..a4e0b7497 100644
--- a/tex/context/base/cont-new.mkiv
+++ b/tex/context/base/cont-new.mkiv
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2011.12.15 13:56}
+\newcontextversion{2011.12.15 23:39}
%D This file is loaded at runtime, thereby providing an
%D excellent place for hacks, patches, extensions and new
diff --git a/tex/context/base/context-version.pdf b/tex/context/base/context-version.pdf
index 4dd332d82..67301fb6a 100644
--- a/tex/context/base/context-version.pdf
+++ b/tex/context/base/context-version.pdf
Binary files differ
diff --git a/tex/context/base/context-version.png b/tex/context/base/context-version.png
index b67d9988f..55c03e63e 100644
--- a/tex/context/base/context-version.png
+++ b/tex/context/base/context-version.png
Binary files differ
diff --git a/tex/context/base/context.mkii b/tex/context/base/context.mkii
index d19abf5a7..b29c046ad 100644
--- a/tex/context/base/context.mkii
+++ b/tex/context/base/context.mkii
@@ -20,7 +20,7 @@
%D your styles an modules.
\edef\contextformat {\jobname}
-\edef\contextversion{2011.12.15 13:56}
+\edef\contextversion{2011.12.15 23:39}
%D For those who want to use this:
diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv
index 1044d2eb5..62bd4d532 100644
--- a/tex/context/base/context.mkiv
+++ b/tex/context/base/context.mkiv
@@ -20,7 +20,7 @@
%D your styles an modules.
\edef\contextformat {\jobname}
-\edef\contextversion{2011.12.15 13:56}
+\edef\contextversion{2011.12.15 23:39}
%D For those who want to use this:
diff --git a/tex/context/base/font-ini.mkiv b/tex/context/base/font-ini.mkiv
index 9ccad32d3..14c845793 100644
--- a/tex/context/base/font-ini.mkiv
+++ b/tex/context/base/font-ini.mkiv
@@ -140,7 +140,7 @@
% adapted, else wrong interlinespace
-\def\setfontparameters
+\unexpanded\def\setfontparameters
{\synchronizefontsfalse
\the\everybodyfont
\synchronizefontstrue}
@@ -149,21 +149,22 @@
\newcounter\pushedfont
-\def\savefont
+\unexpanded\def\savefont
{\edef\savedfont{\the\font}%
\pushmacro\savedfont}
-\def\restorefont
+\unexpanded\def\restorefont
{\popmacro\savedfont
\savedfont}
-\def\pushcurrentfont
+\unexpanded\def\pushcurrentfont
{\edef\popcurrentfont
- {\noexpand\def\noexpand\fontbody{\fontbody}%
- \noexpand\def\noexpand\fontstyle{\fontstyle}%
- \noexpand\dosetcurrentfontalternative{\fontalternative}%
- \noexpand\dosetcurrentfontsize{\fontsize}%
- \noexpand\synchronizefont}}
+ {\def\noexpand\fontbody {\fontbody}%
+ \def\noexpand\fontstyle {\fontstyle}%
+ \def\noexpand\fontalternative{\fontalternative}%
+ \def\noexpand\fontsize {\fontsize}%
+ \checkbigmathsynchronization
+ \synchronizefont}}
% \definetypeface[one][rm][serif][computer-roman][default]
% \definetypeface[two][rm][serif][computer-roman][default][rscale=.9]
@@ -1440,16 +1441,44 @@
\the\everyfontswitch
\let\rawfontidentifier\oldrawfontidentifier}
-\def\xxdododefinefont#1#2#3#4% \autofontsizetrue is set by calling routine
- {\edef\lastfontidentifier{#3}%
- \ifcsname\newfontidentifier\endcsname\else
- \def\localrelativefontsize{#1}%
- \def\localabsolutefontsize{#2}%
- \lowleveldefinefont{#4}\newfontidentifier
- \fi
+% \unexpanded\def\xxdododefinefont#1#2#3#4% \autofontsizetrue is set by calling routine
+% {\edef\lastfontidentifier{#1}%
+% \ifcsname\newfontidentifier\endcsname\else
+% \def\localrelativefontsize{#2}%
+% \def\localabsolutefontsize{#3}%
+% \lowleveldefinefont{#4}\newfontidentifier
+% \fi
+% \csname\newfontidentifier\endcsname
+% \autofontsizefalse
+% \ifskipfontcharacteristics \else
+% \setfontcharacteristics
+% \the\everyfontswitch
+% \fi
+% \let\newfontidentifier\oldnewfontidentifier}
+
+\unexpanded\def\xxdododefinefont#1%
+ {\edef\lastfontidentifier{#1}%
+ \ifcsname\newfontidentifier\endcsname
+ \expandafter\xxdododefinefont_nop
+ \else
+ \expandafter\xxdododefinefont_yes
+ \fi}
+
+\def\xxdododefinefont_yes#1#2#3% \autofontsizetrue is set by calling routine
+ {\def\localrelativefontsize{#1}%
+ \def\localabsolutefontsize{#2}%
+ \lowleveldefinefont{#3}\newfontidentifier
\csname\newfontidentifier\endcsname
\autofontsizefalse
- %\edef\lastfontidentifier{#3}%
+ \ifskipfontcharacteristics \else
+ \setfontcharacteristics
+ \the\everyfontswitch
+ \fi
+ \let\newfontidentifier\oldnewfontidentifier}
+
+\def\xxdododefinefont_nop#1#2#3% \autofontsizetrue is set by calling routine
+ {\csname\newfontidentifier\endcsname
+ \autofontsizefalse
\ifskipfontcharacteristics \else
\setfontcharacteristics
\the\everyfontswitch
@@ -2018,30 +2047,30 @@
\def\dodefinebodyfontnopxx#1#2[#3#4#5=#6]% style body def
{\ifcsname#1#3#4#5\endcsname\else\checkbodyfont{#1}{#3#4}{#5}\fi% not \definefontsize[#5]
\@EA\let\csname*#2#1#3#4#5*\endcsname\undefined
- \unexpanded\@EA\edef\csname#2#1#3#4#5\endcsname{\noexpand\xxdododefinefont{\number\relativefontsize}{#2}{#2#1#3#4#5}{\normalunexpanded{#6}}}}
+ \unexpanded\@EA\edef\csname#2#1#3#4#5\endcsname{\xxdododefinefont{#2#1#3#4#5}{\number\relativefontsize}{#2}{\normalunexpanded{#6}}}}
\def\dodefinebodyfontyesxx#1#2[#3#4#5=#6]% style body def
{\ifcsname#1#3#4#5\endcsname\else\checkbodyfont{#1}{#3#4}{#5}\fi% not \definefontsize[#5]
\global\@EA\let\csname*\fontclass#2#1#3#4#5*\endcsname\undefined
- \unexpanded\@EA\xdef\csname\fontclass#2#1#3#4#5\endcsname{\noexpand\xxdododefinefont{\number\relativefontsize}{#2}{#2#1#3#4#5}{\normalunexpanded{#6}}}}
+ \unexpanded\@EA\xdef\csname\fontclass#2#1#3#4#5\endcsname{\xxdododefinefont{#2#1#3#4#5}{\number\relativefontsize}{#2}{\normalunexpanded{#6}}}}
\def\dodefinebodyfontnopmm#1#2[#3#4#5=#6]% style body def
{\ifcsname#1#3#4#5\endcsname\else\checkbodyfont{#1}{#3#4}{#5}\fi% not \definefontsize[#5]
\@EA\let\csname*#2#1#3#4#51*\endcsname\undefined
\@EA\let\csname*#2#1#3#4#52*\endcsname\undefined
\@EA\let\csname*#2#1#3#4#53*\endcsname\undefined
- \unexpanded\@EA\edef\csname#2#1#3#4#51\endcsname{\noexpand\xxdododefinefont{\number\relativefontsize}{#2}{#2#1#3#4#51}{\normalunexpanded{#6}}}%
- \unexpanded\@EA\edef\csname#2#1#3#4#52\endcsname{\noexpand\xxdododefinefont{\number\relativefontsize}{#2}{#2#1#3#4#52}{\normalunexpanded{#6}}}%
- \unexpanded\@EA\edef\csname#2#1#3#4#53\endcsname{\noexpand\xxdododefinefont{\number\relativefontsize}{#2}{#2#1#3#4#53}{\normalunexpanded{#6}}}}
+ \unexpanded\@EA\edef\csname#2#1#3#4#51\endcsname{\xxdododefinefont{#2#1#3#4#51}{\number\relativefontsize}{#2}{\normalunexpanded{#6}}}%
+ \unexpanded\@EA\edef\csname#2#1#3#4#52\endcsname{\xxdododefinefont{#2#1#3#4#52}{\number\relativefontsize}{#2}{\normalunexpanded{#6}}}%
+ \unexpanded\@EA\edef\csname#2#1#3#4#53\endcsname{\xxdododefinefont{#2#1#3#4#53}{\number\relativefontsize}{#2}{\normalunexpanded{#6}}}}
\def\dodefinebodyfontyesmm#1#2[#3#4#5=#6]% style body def
{\ifcsname#1#3#4#5\endcsname\else\checkbodyfont{#1}{#3#4}{#5}\fi% not \definefontsize[#5]
\global\@EA\let\csname*\fontclass#2#1#3#4#51*\endcsname\undefined
\global\@EA\let\csname*\fontclass#2#1#3#4#52*\endcsname\undefined
\global\@EA\let\csname*\fontclass#2#1#3#4#53*\endcsname\undefined
- \unexpanded\@EA\xdef\csname\fontclass#2#1#3#4#51\endcsname{\noexpand\xxdododefinefont{\number\relativefontsize}{#2}{#2#1#3#4#51}{\normalunexpanded{#6}}}%
- \unexpanded\@EA\xdef\csname\fontclass#2#1#3#4#52\endcsname{\noexpand\xxdododefinefont{\number\relativefontsize}{#2}{#2#1#3#4#52}{\normalunexpanded{#6}}}%
- \unexpanded\@EA\xdef\csname\fontclass#2#1#3#4#53\endcsname{\noexpand\xxdododefinefont{\number\relativefontsize}{#2}{#2#1#3#4#53}{\normalunexpanded{#6}}}}
+ \unexpanded\@EA\xdef\csname\fontclass#2#1#3#4#51\endcsname{\xxdododefinefont{#2#1#3#4#51}{\number\relativefontsize}{#2}{\normalunexpanded{#6}}}%
+ \unexpanded\@EA\xdef\csname\fontclass#2#1#3#4#52\endcsname{\xxdododefinefont{#2#1#3#4#52}{\number\relativefontsize}{#2}{\normalunexpanded{#6}}}%
+ \unexpanded\@EA\xdef\csname\fontclass#2#1#3#4#53\endcsname{\xxdododefinefont{#2#1#3#4#53}{\number\relativefontsize}{#2}{\normalunexpanded{#6}}}}
\def\checkbodyfont#1% tests for ttsl mmbf
{\edef\c!!mm{#1}%
@@ -2623,7 +2652,7 @@
\let\bigmathfontsize\empty
-\def\synchronizebigmath
+\unexpanded\def\synchronizebigmath
{\ifx\bigmathfontsize\fontsize
% already in sync
\else
@@ -2631,7 +2660,7 @@
\synchronizemath
\fi}
-\def\checkbigmathsynchronization
+\unexpanded\def\checkbigmathsynchronization
{\ifcase\synchronizebigmathflag
% never
\or
@@ -2642,22 +2671,23 @@
%D So far for synchronisation. (We can inline the following macros.)
-\def\dosetcurrentfontsize#1%
+\unexpanded\def\dosetcurrentfontsize#1%
{\edef\fontsize{#1}%
\checkbigmathsynchronization}
-\def\dosetcurrentfontalternative#1%
+\unexpanded\def\dosetcurrentfontalternative#1%
{\edef\fontalternative{#1}}
-\def\setcurrentfont#1#2#3#4%
+\unexpanded\def\setcurrentfont#1#2#3#4%
{%\message{[1 #1 #2 #3 #4]}%
- \edef\fontbody{#1}%
- \edef\fontstyle{#2}%
- \dosetcurrentfontalternative{#3}%
- \dosetcurrentfontsize{#4}%
+ \edef\fontbody {#1}%
+ \edef\fontstyle {#2}%
+ \edef\fontalternative{#3}% \dosetcurrentfontalternative
+ \edef\fontsize {#4}%
+ \checkbigmathsynchronization
\synchronizefont}
-\def\setcurrentfontbody#1%
+\unexpanded\def\setcurrentfontbody#1%
{%\message{[2 #1]}%
\edef\fontbody{#1}%
\synchronizefont}
@@ -2673,52 +2703,56 @@
% \ifmmode\mr\fi % otherwise \rm not downward compatible
% \synchronizefont}
-\def\setcurrentfontstyle#1%
+\unexpanded\def\setcurrentfontstyle#1%
{%\message{[3 #1]}%
\edef\fontstyle{#1}%
\checkfontclass\fontstyle
\ifmmode\mr\fi % otherwise \rm not downward compatible
\synchronizefont}
-\def\setcurrentfontbodyalternative#1#2%
+\unexpanded\def\setcurrentfontbodyalternative#1#2%
{%\message{[4 #1 #2]}%
- \edef\fontbody{#1}%
- \dosetcurrentfontalternative{#2}%
+ \edef\fontbody {#1}%
+ \edef\fontalternative{#2}%
\synchronizefont}
-\def\setcurrentfontalternative#1%
+\unexpanded\def\setcurrentfontalternative#1%
{%\message{[5 #1]}%
- \dosetcurrentfontalternative{#1}%
+ \edef\fontalternative{#1}%
\synchronizefont}
-\def\setcurrentfontsize#1%
+\unexpanded\def\setcurrentfontsize#1%
{%\message{[6 #1]}%
- \dosetcurrentfontsize{#1}%
+ \edef\fontsize{#1}%
+ \checkbigmathsynchronization
\synchronizefont}
-\def\setcurrentfontstylealternative#1#2% \rmsl
+\unexpanded\def\setcurrentfontstylealternative#1#2% \rmsl
{%\message{[7 #1 #2]}%
- \edef\fontstyle{#1}%
- \dosetcurrentfontalternative{#2}%
+ \edef\fontstyle {#1}%
+ \edef\fontalternative{#2}%
\synchronizefont}
-\def\setcurrentfontstylesize#1#2% \rmsla
+\unexpanded\def\setcurrentfontstylesize#1#2% \rmsla
{%\message{[8 #1 #2]}%
\edef\fontstyle{#1}%
- \dosetcurrentfontsize{#2}%
+ \edef\fontsize {#2}%
+ \checkbigmathsynchronization
\synchronizefont}
-\def\setcurrentfontalternativesize#1#2% \sla
+\unexpanded\def\setcurrentfontalternativesize#1#2% \sla
{%\message{[9 #1 #2]}%
- \dosetcurrentfontalternative{#1}%
- \dosetcurrentfontsize{#2}%
+ \edef\fontalternative{#1}%
+ \edef\fontsize {#2}%
+ \checkbigmathsynchronization
\synchronizefont}
-\def\setcurrentfontstylealternativesize#1#2#3% \rmsla
+\unexpanded\def\setcurrentfontstylealternativesize#1#2#3% \rmsla
{%\message{[10 #1 #2 #3]}%
- \edef\fontstyle{#1}%
- \dosetcurrentfontalternative{#2}%
- \dosetcurrentfontsize{#3}%
+ \edef\fontstyle {#1}%
+ \edef\fontalternative{#2}%
+ \edef\fontsize {#3}%
+ \checkbigmathsynchronization
\synchronizefont}
%D In principle one can assign alternative fallback routines.
@@ -2729,7 +2763,7 @@
\let\fontstrategy\relax
-\def\synchronizefont % we can have dups i.e. no need to let fontstrategy
+\unexpanded\def\synchronizefont % we can have dups i.e. no need to let fontstrategy
{\tryingfonttrue
\ifx\fontclass\empty
\applyfontstrategies
diff --git a/tex/context/base/spac-fnt.mkiv b/tex/context/base/spac-fnt.mkiv
index 873641929..5bfe9aab0 100644
--- a/tex/context/base/spac-fnt.mkiv
+++ b/tex/context/base/spac-fnt.mkiv
@@ -27,7 +27,7 @@
#4%
\endgroup}
-\unexpanded\def\dostartattributes#1#2#3#4% nothing is done with #4 any longer
+\unexpanded\def\dostartattributes#1#2#3%
{\begingroup % geen \bgroup, anders in mathmode lege \hbox
\dousestylehashparameter{#1}{#2}%
\dousecolorhashparameter{#1}{#3}}
diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf
index 6fd5f7f54..a1f1bb246 100644
--- a/tex/context/base/status-files.pdf
+++ b/tex/context/base/status-files.pdf
Binary files differ
diff --git a/tex/context/base/status-lua.pdf b/tex/context/base/status-lua.pdf
index 544fde0a4..f61b2deaa 100644
--- a/tex/context/base/status-lua.pdf
+++ b/tex/context/base/status-lua.pdf
Binary files differ
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index eac42c455..1aceda930 100644
--- a/tex/generic/context/luatex/luatex-fonts-merged.lua
+++ b/tex/generic/context/luatex/luatex-fonts-merged.lua
@@ -1,6 +1,6 @@
-- merged file : luatex-fonts-merged.lua
-- parent file : luatex-fonts.lua
--- merge date : 12/15/11 13:56:19
+-- merge date : 12/15/11 23:39:33
do -- begin closure to overcome local limits and interference