summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2012-01-05 19:27:46 +0100
committerHans Hagen <pragma@wxs.nl>2012-01-05 19:27:46 +0100
commitccd017319769de5b82557281a60514bc7244e45e (patch)
treebb7ce726169434bf2d161b15e89cc31007badfc4
parent6b3e925da3d2f7bf4755144c7d8c1fbe54f3ae07 (diff)
downloadcontext-ccd017319769de5b82557281a60514bc7244e45e.tar.gz
beta 2011.12.19 00:49
-rw-r--r--tex/context/base/anch-pgr.mkiv2
-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 -> 4071 bytes
-rw-r--r--tex/context/base/context-version.pngbin106425 -> 106448 bytes
-rw-r--r--tex/context/base/context.mkii2
-rw-r--r--tex/context/base/context.mkiv2
-rw-r--r--tex/context/base/core-con.mkiv40
-rw-r--r--tex/context/base/font-ini.mkiv69
-rw-r--r--tex/context/base/mult-sys.mkiv1
-rw-r--r--tex/context/base/pack-rul.mkiv21
-rw-r--r--tex/context/base/page-bck.mkiv72
-rw-r--r--tex/context/base/status-files.pdfbin23963 -> 23978 bytes
-rw-r--r--tex/context/base/status-lua.pdfbin169723 -> 169719 bytes
-rw-r--r--tex/context/base/strc-itm.mkvi4
-rw-r--r--tex/context/base/symb-ini.mkiv28
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua2
17 files changed, 128 insertions, 119 deletions
diff --git a/tex/context/base/anch-pgr.mkiv b/tex/context/base/anch-pgr.mkiv
index 45843c76d..d957bb6dd 100644
--- a/tex/context/base/anch-pgr.mkiv
+++ b/tex/context/base/anch-pgr.mkiv
@@ -13,6 +13,8 @@
\writestatus{loading}{ConTeXt Anchoring Macros / Grapics}
+%D We can use the commandhandler here.
+
%D Before we come to graphics support, we have to make sure of
%D the reference point on the page. The next macro does so and
%D is hooked into the page building routine.
diff --git a/tex/context/base/cont-new.mkii b/tex/context/base/cont-new.mkii
index 54e5b76c2..91f661c53 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.17 10:04}
+\newcontextversion{2011.12.19 00:49}
%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 9573a034c..f06d41d2d 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.17 10:04}
+\newcontextversion{2011.12.19 00:49}
%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 a67105ca2..f1a7d7efe 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 d62edb2fa..5e89d54f7 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 5fb02040a..51adcf0a0 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.17 10:04}
+\edef\contextversion{2011.12.19 00:49}
%D For those who want to use this:
diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv
index cf9fd47c2..35cc7f31b 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.17 10:04}
+\edef\contextversion{2011.12.19 00:49}
%D For those who want to use this:
diff --git a/tex/context/base/core-con.mkiv b/tex/context/base/core-con.mkiv
index d8820050a..a0e76a2fa 100644
--- a/tex/context/base/core-con.mkiv
+++ b/tex/context/base/core-con.mkiv
@@ -158,11 +158,18 @@
%D These conversions are dedicated to Frans Goddijn.
\unexpanded\def\oldstylenumerals#1%
- {{\os\number#1}}
+ {\begingroup
+ \os\number#1%
+ \endgroup}
-\unexpanded\def\oldstyleromannumerals#1%
- {{\leftrulefalse\rightrulefalse\ss\txx\boxrulewidth.15ex
- \ruledhbox spread .15em{\hss\uppercased{\romannumerals{#1}}\hss}}}
+\unexpanded\def\oldstyleromannumerals#1% will become obsolete
+ {\begingroup
+ \leftrulefalse
+ \rightrulefalse
+ \ss\txx
+ \boxrulewidth.15ex
+ \ruledhbox spread .15em{\hss\uppercased{\romannumerals{#1}}\hss}%
+ \endgroup}
%D \macros
%D {protectconversion}
@@ -172,8 +179,7 @@
%D introduce:
\def\protectconversion
- {\def\doconvertcharacters##1{##1}} % was \relax
- %{\def\doconvertcharacters##1{\ifcase0##1 0\else##1\fi}} more save
+ {\let\doconvertcharacters\firstofoneargument}
%D \macros
%D {normaltime,normalyear,normalmonth,normalday}
@@ -212,13 +218,13 @@
%D \showsetup{month}
%D \showsetup{MONTH}
-\def\monthlong {\doconvertmonthlong}
-\def\monthshort{\doconvertmonthshort}
-\def\month {\doconvertmonth}
+\let\monthlong \doconvertmonthlong % was \def
+\let\monthshort\doconvertmonthshort % was \def
+\let\month \doconvertmonth % was \def
-\def\MONTH #1{{\WORD{\month {#1}}}}
-\def\MONTHLONG #1{{\WORD{\monthlong {#1}}}}
-\def\MONTHSHORT#1{{\WORD{\monthshort{#1}}}}
+\def\MONTH #1{\WORD{\month {#1}}}
+\def\MONTHLONG #1{\WORD{\monthlong {#1}}}
+\def\MONTHSHORT#1{\WORD{\monthshort{#1}}}
%D We never explicitly needed this, but Tobias Burnus pointed
%D out that it would be handy to convert to the day of the
@@ -286,7 +292,7 @@
{\doconvertday}
\def\WEEKDAY#1%
- {{\WORD{\doconvertday{#1}}}}
+ {\WORD{\doconvertday{#1}}}
%D \macros
%D {weekoftheday}
@@ -497,24 +503,24 @@
%D \type{\normalday} can be used for for date manipulations.
\long\def\processmonth#1#2#3% year month command
- {\bgroup
+ {\begingroup
\getdayspermonth{#1}{#2}%
\dostepwiserecurse1\numberofdays1%
{\normalyear #1\relax
\normalmonth#2\relax
\normalday \recurselevel\relax
#3}%
- \egroup}
+ \endgroup}
\def\lastmonth{12} % can be set to e.g. 1 when testing
\long\def\processyear#1#2#3#4% year command before after
- {\bgroup
+ {\begingroup
\dorecurse\lastmonth
{\normalyear #1\relax
\normalmonth\recurselevel\relax
#3\processmonth\normalyear\normalmonth{#2}#4}%
- \egroup}
+ \endgroup}
%D \macros
%D {defineconversion, convertnumber}
diff --git a/tex/context/base/font-ini.mkiv b/tex/context/base/font-ini.mkiv
index 99018eb2b..14376b733 100644
--- a/tex/context/base/font-ini.mkiv
+++ b/tex/context/base/font-ini.mkiv
@@ -459,6 +459,13 @@
\def\@noletter@ {@f@no@} % second alternative typeface
\def\@fontclass@ {@f@cl@} % fontclass
+% \edef\@size@ {\??fh:b:} % bodyfont size prefix (12pt etc)
+% \edef\@style@ {\??fh:f:} % full style prefix (roman etc)
+% \edef\@shortstyle@ {\??fh:s:} % short style prefix (rm etc)
+% \edef\@letter@ {\??fh:l:} % first alternative typeface
+% \edef\@noletter@ {\??fh:n:} % second alternative typeface
+% \edef\@fontclass@ {\??fh:c:} % fontclass
+
%D \macros
%D {fontclass, defaultfontclass}
%D
@@ -1484,21 +1491,6 @@
\the\everyfontswitch
\let\rawfontidentifier\oldrawfontidentifier}
-% \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
@@ -2455,12 +2447,6 @@
\everyvbox{\zerostagepreloadfonts}
\to \everydump
-% \def\firststagepreloadfonts % see core-def.mkiv
-% {\doifmodeelse{*nofonts}
-% {\writestatus\m!fonts{latin modern fonts are not preloaded}}
-% {\preloaddefaultfonts
-% \writestatus\m!fonts{preloading latin modern fonts (first stage)}}}
-
\def\firststagepreloadfonts % *nofonts -> *preloadfonts
{\doifmodeelse{*preloadfonts}
{\preloaddefaultfonts
@@ -3493,7 +3479,7 @@
%D (a rather small period indeed), the same as \PICTEX\ uses
%D for drawing purposes.
-\definefont [rasterfont] [Serif at 5pt]
+\definefont [rasterfont] [Serif at 5pt] % obsolete
%D \macros
%D {infofont}
@@ -3791,17 +3777,19 @@
\def\setemphasisboldface
{\let\savedemphasisboldface\bf
\let\setemphasisboldface\relax
- \unexpanded\def\bf
- {%\relax
- \let\bf\relax % new
- \ifx\fontalternative\c!it
- \bi
- \else\ifx\fontalternative\c!sl
- \bs
- \else
- \savedemphasisboldface
- \fi\fi
- \let\bf\savedemphasisboldface}}
+ \let\bf\emphasisboldface_bf}
+
+\unexpanded\def\emphasisboldface_bf
+ {%\relax
+ \let\bf\relax % new
+ \ifx\fontalternative\c!it
+ \bi
+ \else\ifx\fontalternative\c!sl
+ \bs
+ \else
+ \savedemphasisboldface
+ \fi\fi
+ \let\bf\savedemphasisboldface}
%D Donald's (adapted) macros take the next character into
%D account when placing italic correction. As a bonus we also
@@ -3879,12 +3867,13 @@
%D {emphbf,emphit,emphsl,emphtf}
%D
%D The next emphasis alternatives are for \THANH. They adapt
-%D their style as good as possible.
+%D their style as good as possible. These macros are obsolete
+%D in \MKIV.
-\def\emphbf{\groupedcommand{\bf\def\emphit{\bi}\def\emphsl{\bs}}{}}
-\def\emphit{\groupedcommand{\it\def\emphbf{\bi}\def\emphsl{\sl}}{}}
-\def\emphsl{\groupedcommand{\sl\def\emphbf{\bs}\def\emphit{\it}}{}}
-\def\emphtf{\groupedcommand{\tf\def\emphbf{\bf}\def\emphit{\it}\def\emphsl{\sl}}{}}
+\unexpanded\def\emphbf{\groupedcommand{\bf\def\emphit{\bi}\def\emphsl{\bs}}{}}
+\unexpanded\def\emphit{\groupedcommand{\it\def\emphbf{\bi}\def\emphsl{\sl}}{}}
+\unexpanded\def\emphsl{\groupedcommand{\sl\def\emphbf{\bs}\def\emphit{\it}}{}}
+\unexpanded\def\emphtf{\groupedcommand{\tf\def\emphbf{\bf}\def\emphit{\it}\def\emphsl{\sl}}{}}
%D \startbuffer
%D TEXT {\emphbf text \emphit text \emphtf text \emphsl text} TEXT
@@ -4168,8 +4157,8 @@
%D \type{\SS}. Ok, I should have used \type{\sf} instead of
%D \type{\ss} in the first place.
-\ifx\undefined\SS \let\SS=\ss \fi
-\ifx\undefined\sz \let\sz=\ss \fi
+\ifdefined\SS \else \let\SS=\ss \fi
+\ifdefined\sz \else \let\sz=\ss \fi
%D Personally I think that using \TEX\ macro packages is
%D complicated by the way fonts are handled. Apart from the
diff --git a/tex/context/base/mult-sys.mkiv b/tex/context/base/mult-sys.mkiv
index 6c2ef2502..09918ba6c 100644
--- a/tex/context/base/mult-sys.mkiv
+++ b/tex/context/base/mult-sys.mkiv
@@ -543,6 +543,7 @@
\definesystemvariable {fe} % FoxetExtensions
\definesystemvariable {ff} % FontFile
\definesystemvariable {fg} % FiGuurmaten
+\definesystemvariable {fh} % FontHash
\definesystemvariable {fi} % FIle
\definesystemvariable {fl} % Floats
\definesystemvariable {fm} % ForMules
diff --git a/tex/context/base/pack-rul.mkiv b/tex/context/base/pack-rul.mkiv
index f3de471f3..a7af6b50c 100644
--- a/tex/context/base/pack-rul.mkiv
+++ b/tex/context/base/pack-rul.mkiv
@@ -13,6 +13,9 @@
\writestatus{loading}{ConTeXt Packaging Macros / Ruled Content}
+% eventually this will use the commandhandler code (same trick as with itemize)
+% rulethickness push/pop will go
+
%D redo framedtexts like framedcontent (parameter stuff)
%D After a few months testing this solution is now added
@@ -714,14 +717,14 @@
\box\framebox
\egroup}
-%D Here is another fast one:
+%D The next macro uses a box and takes its natural width and
+%D height so these can better be correct.
-\def\localbackgroundframed#1#2#3#4#5% namespace location box wd ht
- {\setbox#3\vbox\bgroup
- \doinitializeframed{#1#2}% watch out! am used here
- \expandafter\def\csname#1#2\c!component\endcsname{#2}%
- % \expandafter\def\csname#1#2\c!width \endcsname{#4}%
- % \expandafter\def\csname#1#2\c!height \endcsname{#5}%
+\def\localbackgroundframed#1#2#3% namespace component box
+ {\bgroup
+ \doinitializeframed{#1}%
+ \expandafter\def\csname\@@framed\c!component\endcsname{#2}% watch out: hard coded @@framed
+ \setbox\framebox\box#3%
\!!framedframeoffset\framedparameter\c!frameoffset
\edef\@@framedbackgroundoffset{\framedparameter\c!backgroundoffset}%
\ifx\@@framedbackgroundoffset\v!frame
@@ -729,10 +732,6 @@
\else
\!!framedbackgroundoffset\@@framedbackgroundoffset
\fi
- \setbox\framebox\box#3%
- \wd\framebox#4%
- \ht\framebox#5%
- \dp\framebox\zeropoint
\edef\framedbackground {\framedparameter\c!background}%
\edef\framedrulethickness{\framedparameter\c!rulethickness}%
\edef\@@localframing {\framedparameter\c!frame}%
diff --git a/tex/context/base/page-bck.mkiv b/tex/context/base/page-bck.mkiv
index 164549d9d..31d440771 100644
--- a/tex/context/base/page-bck.mkiv
+++ b/tex/context/base/page-bck.mkiv
@@ -12,6 +12,10 @@
%C details.
% todo: ma:r:c
+%
+% Currently the text cells are fakes and no (foreground) frames which
+% makes sense as order might matter e.g. is text sticks in other
+% cells. The page, text etc ares do support foreground order change.
\writestatus{loading}{ConTeXt Page Macros / Backgrounds}
@@ -143,17 +147,22 @@
%D macro. This means that all normal frame and overlay
%D features can be used.
-\def\page_backgrounds_add_to_box#1#2#3#4% area box width height / zero test added
+\def\page_backgrounds_add_to_box#1% area
{\ifcsname\??ma#1\endcsname
- \ifdim#3>\zeropoint
- \ifdim#4>\zeropoint
- \ifcsname\??ma#1\c!setups\endcsname % to be done
- \doprocesslocalsetups{\csname\??ma#1\c!setups\endcsname}% should not produce funny spaces !
- \fi
- \localbackgroundframed\??ma{#1}{#2}{#3}{#4}%
- \fi
- \fi
- \fi}
+ \expandafter\page_backgrounds_add_to_box_indeed
+ \else
+ \expandafter\gobblefourarguments
+ \fi#1}
+
+% we don't need the dimensions here as this is a real framed but the question is: do we indeed
+% need a real framed or can we use a fake (i.e. no foreground, only for hidden)
+
+\def\page_backgrounds_add_to_box_indeed#1#2#3#4% area box width height / always non zero
+ {\ifcsname\??ma#1\c!setups\endcsname % to be done
+ \doprocesslocalsetups{\csname\??ma#1\c!setups\endcsname}% should not produce funny spaces !
+ \fi
+ % #2 has the right dimensions already
+ \setbox#2\hbox{\localbackgroundframed{\??ma#1}#1#2}}% a real framed (including foreground)
%D There are quite some backgrounds. At the bottom layer,
%D there is the {\em paper} background. This one is only
@@ -335,28 +344,28 @@
% \fi
\vskip\dimexpr-\topheight-\topdistance\relax
\ifdim\topheight>\zeropoint
- \page_backgrounds_set_box_column\v!top\topheight
+ \page_backgrounds_set_box_row\v!top\topheight
\fi
\vskip\topdistance
\ifdim\headerheight>\zeropoint
- \page_backgrounds_set_box_column\v!header\headerheight
+ \page_backgrounds_set_box_row\v!header\headerheight
\fi
\vskip\headerdistance
\ifdim\textheight>\zeropoint
- \page_backgrounds_set_box_column\v!text\textheight
+ \page_backgrounds_set_box_row\v!text\textheight
\fi
\vskip\footerdistance
\ifdim\footerheight>\zeropoint
- \page_backgrounds_set_box_column\v!footer\footerheight
+ \page_backgrounds_set_box_row\v!footer\footerheight
\fi
\vskip\bottomdistance
\ifdim\bottomheight>\zeropoint
- \page_backgrounds_set_box_column\v!bottom\bottomheight
+ \page_backgrounds_set_box_row\v!bottom\bottomheight
\fi
\vfilll}%
\smashbox#1}
-\def\page_backgrounds_set_box_column#1#2% maybe helper
+\def\page_backgrounds_set_box_row#1#2% maybe helper
{\setbox\scratchbox\vbox to #2
\bgroup\hbox\bgroup
\goleftonpage
@@ -410,16 +419,31 @@
% [\c!component=#1:#2]%
% {\vbox to #4{\vss\hbox to#3{\hss\csname\??ma#1#2\c!command\endcsname\hss}\vss}}}
+% these are fake framed .. maybe it's nicer to honor foreground here as well
+% but it's probably a slow downer
+
\def\page_backgrounds_set_box_cell#1#2#3#4% pos pos width height
{\begingroup
\ifcsname\??ma#1#2\c!setups\endcsname
\doprocesslocalsetups{\csname\??ma#1#2\c!setups\endcsname}% should not produce funny spaces !
\fi
- \setbox\scratchbox\hbox{\csname\??ma#1#2\c!command\endcsname}%
- \localbackgroundframed\??ma{#1#2}\scratchbox#3#4%
- \box\scratchbox
+ \ifcsname\??ma#1#2\c!command\endcsname
+ \expandafter\page_backgrounds_set_box_cell_nop
+ \else
+ \expandafter\page_backgrounds_set_box_cell_yes
+ \fi#1#2#3#4%
+ \localbackgroundframed{\??ma#1#2}{#1:#2}\scratchbox
\endgroup}
+\def\page_backgrounds_set_box_cell_nop#1#2#3#4%
+ {\setbox\scratchbox\emptyvbox
+ \wd\scratchbox#3%
+ \ht\scratchbox#4}
+
+\def\page_backgrounds_set_box_cell_yes#1#2#3#4%
+ {\setbox\scratchbox\vbox to #4{\vss\hbox to#3{\hss\csname\??ma#1#2\c!command\endcsname\hss}\vss}%
+ \dp\scratchbox\zeropoint}
+
%D The background mechanism is quite demanding in terms or
%D resources. We used to delay these definitions till runtime
%D usage, but since today's \TEX's are large, we now do the
@@ -494,6 +518,8 @@
%D Each areas (currently there are $1+3+25+1=30$ of them)
%D has its own low level framed object associated.
+% hm, we can delay them
+
\unexpanded\def\installsomebackground#1#2{\inheritlocalframed[\??ma#1#2][\??od]}
\installsomebackground \v!paper \empty
@@ -594,11 +620,9 @@
% {\setbox#1\hbox{\fastlocalframed[\??ma\v!local][]{\registerMPlocaltextarea{\box#1}}}%
% \global\advance\localpositionnumber\plusone} % afterwards !
-\def\page_backgrounds_add_local_to_box_indeed#1% patch yet unchecked, \doglobal support is gone
- {\scratchwidth \wd#1%
- \scratchheight\ht#1%
- \setbox#1\hbox{\registerMPlocaltextarea{\box#1}}%
- \setbox#1\hbox{\localbackgroundframed\??ma\v!local#1\scratchwidth\scratchheight}%
+\def\page_backgrounds_add_local_to_box_indeed#1%
+ {\setbox#1\hbox{\registerMPlocaltextarea{\box#1}}%
+ \setbox#1\hbox{\localbackgroundframed{\??ma\v!local}\v!local#1}%
\global\advance\localpositionnumber\plusone} % afterwards !
% Test how previous macro behaves with depth:
diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf
index 38db9bfd2..47193ae79 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 75a569f81..fa85f0670 100644
--- a/tex/context/base/status-lua.pdf
+++ b/tex/context/base/status-lua.pdf
Binary files differ
diff --git a/tex/context/base/strc-itm.mkvi b/tex/context/base/strc-itm.mkvi
index 3d3a7f953..0dc06b105 100644
--- a/tex/context/base/strc-itm.mkvi
+++ b/tex/context/base/strc-itm.mkvi
@@ -541,10 +541,10 @@
{\normal_setup_itemgroup[#category][\c!option={#whatever}]}}
\def\itemgroups_setup_list_level_a#category#whatever#level%
- {\normal_setup_itemgroup[#category:#level][\c!option={#whatever}]}
+ {\normal_setup_itemgroup[#category:#level][#whatever]}
\def\itemgroups_setup_list_level_b#category#whatever#level%
- {\normal_setup_itemgroup[#category:#level][#whatever]}
+ {\normal_setup_itemgroup[#category:#level][\c!option={#whatever}]}
\def\itemgroups_setup_list#subcategories#category#whatever%
{\doifassignmentelse{#whatever}
diff --git a/tex/context/base/symb-ini.mkiv b/tex/context/base/symb-ini.mkiv
index c58429074..8ccd8552f 100644
--- a/tex/context/base/symb-ini.mkiv
+++ b/tex/context/base/symb-ini.mkiv
@@ -45,7 +45,7 @@
% ss:tag -> symbol
% ss:set:tag -> symbol out of set
-% sstag -> list of symbols in set
+% ss*tag -> list of symbols in set
\unexpanded\def\definesymbol
{\dotripleempty\dodefinesymbol}
@@ -59,12 +59,6 @@
\addvalue{\??ss*\currentsymboldef}{#1}%
\fi}
-% \def\doifinsymbolsetelse#1#2{\doifdefinedelse{\??ss:#1:#2}}
-% \def\doifinsymbolset #1#2{\doifdefined {\??ss:#1:#2}}
-% \def\doifsymbolsetelse #1{\doifdefinedelse{\??ss*#1}}
-%
-% \def\symbolset#1{\executeifdefined{\??ss*#1}\empty} % no [#1], to be used in commalists etc
-
\def\doifinsymbolsetelse#1#2{\ifcsname\??ss:#1:#2\endcsname\@EA\firstoftwoarguments\else\@EA\secondoftwoarguments\fi}
\def\doifinsymbolset #1#2{\ifcsname\??ss:#1:#2\endcsname\@EA\firstofoneargument \else\@EA\gobbleoneargument \fi}
\def\doifsymbolsetelse #1{\ifcsname\??ss*#1\endcsname \@EA\firstoftwoarguments\else\@EA\secondoftwoarguments\fi}
@@ -76,7 +70,7 @@
%D Since symbols are used frequently in interactive
%D documents, we speed up this one. Well, that was history,
%D since now we simplified things a bit, because the low
-%D level macros have been sped up now and then.
+%D level macros have been sped up every now and then.
\unexpanded\def\symbol % This one always gobbles spaces,
{\dodoubleempty\dosymbol} % so never change it again!
@@ -112,8 +106,6 @@
\secondargumentfalse
\donormalsymbol[#3][]}
-% \doifinsymbolset{#1}{#2}{\dodosymbol{#1}{#2}}
-
\def\donormalsymbol[#1][#2]%
{\nosymboltrue
\ifsecondargument
@@ -131,8 +123,6 @@
\fi
\fi}
-% \doifinsymbolset{#1}\currentsymbol{\dodosymbol{#1}\currentsymbol}
-
\def\fetchsymbol#1%
{\ifnosymbol
\ifcsname\??ss:#1:\currentsymbol\endcsname
@@ -140,8 +130,6 @@
\fi
\fi}
-% \doifinsymbolsetelse\empty{#1}{\dodosymbol\empty}\firstofoneargument{#1}}
-
\def\redosymbol#1%
{\ifcsname\??ss::#1\endcsname
\dodosymbol\empty{#1}%
@@ -165,8 +153,8 @@
\def\figuresymbol
{\dodoubleempty\dofiguresymbol}
-\ifx\externalfigure \undefined \def\externalfigure[#1][#2]{#1} \fi
-\ifx\resetexternalfigures\undefined \let\resetexternalfigures\relax \fi
+\ifdefined\externalfigure \else \def\externalfigure[#1][#2]{#1} \fi
+\ifdefined\resetexternalfigures \else \let\resetexternalfigures\relax \fi
\def\dofiguresymbol[#1][% #2]%
{\externalfigure[#1][\c!reset=\v!yes,\c!symbol=\v!yes,\c!height=\defaultsymbolheight,}% #2]}
@@ -197,7 +185,7 @@
{\doifinsymbolset\empty\currentsymbol\nosymbolfalse}
\def\doifsymboldefinedelse#1%
- {\bgroup
+ {\begingroup
\edef\currentsymbol{#1}%
\let\fetchsymbol\xfetchsymbol
\nosymboltrue
@@ -205,12 +193,12 @@
\ifnosymbol
\xredosymbol\currentsymbol
\ifnosymbol
- \egroup\@EAEAEA\secondoftwoarguments
+ \endgroup\@EAEAEA\secondoftwoarguments
\else
- \egroup\@EAEAEA\firstoftwoarguments
+ \endgroup\@EAEAEA\firstoftwoarguments
\fi
\else
- \egroup\@EA\firstoftwoarguments
+ \endgroup\@EA\firstoftwoarguments
\fi}
%D \macros
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index dcfc88170..4917f63f4 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/17/11 10:04:41
+-- merge date : 12/19/11 00:49:41
do -- begin closure to overcome local limits and interference