From 79cea64786aec3bc70e4dc925c671d369525533e Mon Sep 17 00:00:00 2001 From: Hans Hagen Date: Mon, 24 Jan 2005 00:00:00 +0100 Subject: stable 2005.01.24 --- tex/context/base/colo-ini.tex | 9 +- tex/context/base/cont-cz.tex | 20 +- tex/context/base/cont-de.tex | 28 +- tex/context/base/cont-en.tex | 2 + tex/context/base/cont-it.tex | 2 + tex/context/base/cont-new.tex | 88 +++- tex/context/base/cont-nl.tex | 26 +- tex/context/base/cont-ro.tex | 20 +- tex/context/base/cont-uk.tex | 26 +- tex/context/base/context.tex | 2 +- tex/context/base/core-con.tex | 11 +- tex/context/base/core-des.tex | 301 ++++++------ tex/context/base/core-fig.tex | 23 +- tex/context/base/core-fld.tex | 10 +- tex/context/base/core-int.tex | 57 +-- tex/context/base/core-itm.tex | 26 - tex/context/base/core-lst.tex | 389 ++++++++------- tex/context/base/core-ntb.tex | 2 +- tex/context/base/core-pos.tex | 12 +- tex/context/base/core-ref.tex | 20 +- tex/context/base/core-reg.tex | 8 +- tex/context/base/core-sec.tex | 220 ++++----- tex/context/base/core-spa.tex | 18 +- tex/context/base/core-syn.tex | 2 +- tex/context/base/font-ini.tex | 19 +- tex/context/base/hand-def.tex | 2 +- tex/context/base/mult-ini.tex | 5 + tex/context/base/mult-sys.tex | 8 + tex/context/base/page-ini.tex | 2 +- tex/context/base/prop-ini.tex | 2 + tex/context/base/spec-dpm.tex | 4 +- tex/context/base/spec-dpx.tex | 4 +- tex/context/base/spec-fdf.tex | 133 ++++-- tex/context/base/spec-tpd.tex | 12 +- tex/context/base/supp-box.tex | 38 +- tex/context/base/symb-ini.tex | 126 ++--- tex/context/base/symb-mis.tex | 76 +-- tex/context/base/symb-run.tex | 9 +- tex/context/base/syst-ext.tex | 184 +++++--- tex/context/base/syst-gen.tex | 4 +- tex/context/base/type-enc.tex | 966 +++++++++++++++----------------------- tex/context/base/type-exa.tex | 12 +- tex/context/base/type-fsf.tex | 54 +-- tex/context/base/type-ghz.tex | 78 +-- tex/context/base/type-ini.tex | 42 +- tex/context/base/type-map.tex | 2 +- tex/context/base/type-pre.tex | 29 +- tex/context/base/type-siz.tex | 2 +- tex/context/base/type-spe.tex | 6 +- tex/context/base/type-syn.tex | 2 +- tex/context/base/unic-000.tex | 5 +- tex/context/base/unic-001.tex | 3 +- tex/context/base/unic-030.tex | 183 ++++---- tex/context/base/unic-032.tex | 1 - tex/context/base/unic-ini.tex | 6 +- tex/context/base/xtag-ini.tex | 166 ++++--- tex/context/interface/keys-cz.xml | 2 +- tex/context/interface/keys-de.xml | 2 +- tex/context/interface/keys-en.xml | 2 +- tex/context/interface/keys-it.xml | 2 +- tex/context/interface/keys-nl.xml | 2 +- tex/context/interface/keys-ro.xml | 2 +- 62 files changed, 1755 insertions(+), 1764 deletions(-) (limited to 'tex') diff --git a/tex/context/base/colo-ini.tex b/tex/context/base/colo-ini.tex index e7c5a5a8f..805e6aee8 100644 --- a/tex/context/base/colo-ini.tex +++ b/tex/context/base/colo-ini.tex @@ -81,6 +81,7 @@ 9: -- kleurruimte wordt niet ondersteund 10: -- kleurruimte wordt ondersteund 11: kleur wordt vertaald in grijs + 12: -- is geregistreerd \stopmessages \startmessages english library: colors @@ -96,6 +97,7 @@ 9: -- color space is not supported 10: -- color space is supported 11: color is converted to gray + 12: -- is registered \stopmessages \startmessages german library: colors @@ -111,6 +113,7 @@ 9: -- Farbraum wird nicht unterstuetzt 10: -- Farbraum wird unterstuetzt 11: Farbe wird in Grau umgewandelt + 12: -- is registered \stopmessages \startmessages czech library: colors @@ -126,6 +129,7 @@ 9: -- prostor barev neni podporovan 10: -- prostor barev je podporovan 11: barva je prevedena na sed + 12: -- is registered \stopmessages \startmessages italian library: colors @@ -141,6 +145,7 @@ 9: spazio dei colori -- non supportato 10: spazio dei colori -- supportato 11: il colore è convertito in grigio + 12: -- is registered \stopmessages \startmessages norwegian library: colors @@ -156,6 +161,7 @@ 9: -- fargerom er ikke støttet 10: -- fargerom er støttet 11: fargen vil bli vist som grå + 12: -- is registered \stopmessages \startmessages romanian library: colors @@ -171,6 +177,7 @@ 9: spatiul de culoare -- nu este suportat 10: spatiul de culoare -- este suportat 11: culoarea este convertita la gri + 12: -- is registered \stopmessages %D We use a couple of local registers. That way we don't have @@ -1089,7 +1096,7 @@ \def\registerindexcolor#1:% {\ifundefined{\??cl:i:\@@cl@@n}% \letgvalue{\??cl:i:\@@cl@@n}\empty % signal - \writestatus\m!colors{registering index color \@@cl@@n}% + \showmessage\m!colors{12}\@@cl@@n \@EA\@EA\csname registerindexcolor#1\endcsname \else \@EA\dontregisterindexcolor diff --git a/tex/context/base/cont-cz.tex b/tex/context/base/cont-cz.tex index 39fb5c291..a8edbd5bd 100644 --- a/tex/context/base/cont-cz.tex +++ b/tex/context/base/cont-cz.tex @@ -2,30 +2,32 @@ %D [ file=cont-cz, %D version=1998.12.02, %D title=\CONTEXT, -%D subtitle=\CONTEXT\ Czech Format Generation, +%D subtitle=\CONTEXT\ Czech Format Generation, %D author=Hans Hagen, %D date=\currentdate, %D copyright={PRAGMA / Hans Hagen \& Ton Otten}] %C %C This module is part of the \CONTEXT\ macro||package and is -%C therefore copyrighted by \PRAGMA. See mreadme.pdf for -%C details. +%C therefore copyrighted by \PRAGMA. See mreadme.pdf for +%C details. -\catcode`\{=1 \catcode`\}=2 \def\defaultinterface{czech} +\catcode`\{=1 \catcode`\}=2 \def\defaultinterface{czech} -\input context.tex +\input context.tex -\unprotect +\unprotect \setupcurrentlanguage[\s!cz] -\loaduserspecifications +\loaduserspecifications -\installlanguage [\s!en] [\c!state=\v!start] -\installlanguage [\s!de] [\c!state=\v!start] +\installlanguage [\s!en] [\c!state=\v!start] +\installlanguage [\s!de] [\c!state=\v!start] \installlanguage [\s!sk] [\c!state=\v!start] \installlanguage [\s!cz] [\c!state=\v!start] \setupbodyfont [csr,ams,rm,12pt] +% \usetypescript[modern][\defaultencoding] \setupbodyfont[modern,12pt] + \protect \errorstopmode \dump \endinput diff --git a/tex/context/base/cont-de.tex b/tex/context/base/cont-de.tex index 90bbe875d..3e4d496b9 100644 --- a/tex/context/base/cont-de.tex +++ b/tex/context/base/cont-de.tex @@ -2,18 +2,18 @@ %D [ file=cont-de, %D version=1997.08.19, %D title=\CONTEXT, -%D subtitle=\CONTEXT\ German Format Generation, +%D subtitle=\CONTEXT\ German Format Generation, %D author=Hans Hagen, %D date=\currentdate, %D copyright={PRAGMA / Hans Hagen \& Ton Otten}] %C %C This module is part of the \CONTEXT\ macro||package and is -%C therefore copyrighted by \PRAGMA. See mreadme.pdf for -%C details. +%C therefore copyrighted by \PRAGMA. See mreadme.pdf for +%C details. -\catcode`\{=1 \catcode`\}=2 \def\defaultinterface{german} +\catcode`\{=1 \catcode`\}=2 \def\defaultinterface{german} -\input context.tex +\input context.tex \unprotect @@ -21,16 +21,18 @@ \loaduserspecifications -\installlanguage [\s!en] [\c!state=\v!start] -\installlanguage [\s!uk] [\c!state=\v!start] -\installlanguage [\s!de] [\c!state=\v!start] -\installlanguage [\s!fr] [\c!state=\v!start] -\installlanguage [\s!es] [\c!state=\v!start] -\installlanguage [\s!nl] [\c!state=\v!start] -\installlanguage [\s!it] [\c!state=\v!start] +\installlanguage [\s!en] [\c!state=\v!start] +\installlanguage [\s!uk] [\c!state=\v!start] +\installlanguage [\s!de] [\c!state=\v!start] +\installlanguage [\s!fr] [\c!state=\v!start] +\installlanguage [\s!es] [\c!state=\v!start] +\installlanguage [\s!nl] [\c!state=\v!start] +\installlanguage [\s!it] [\c!state=\v!start] -\installlanguage [deo] [\c!state=\v!start] +\installlanguage [deo] [\c!state=\v!start] \setupbodyfont [cmr,ams,rm,12pt] +% \usetypescript[modern][\defaultencoding] \setupbodyfont[modern,12pt] + \protect \errorstopmode \dump \endinput diff --git a/tex/context/base/cont-en.tex b/tex/context/base/cont-en.tex index ee291b7f3..dee7dd340 100644 --- a/tex/context/base/cont-en.tex +++ b/tex/context/base/cont-en.tex @@ -31,4 +31,6 @@ \setupbodyfont [cmr,ams,rm,12pt] +% \usetypescript[modern][\defaultencoding] \setupbodyfont[modern,12pt] + \protect \errorstopmode \dump \endinput diff --git a/tex/context/base/cont-it.tex b/tex/context/base/cont-it.tex index 2ade466b9..293c5681a 100644 --- a/tex/context/base/cont-it.tex +++ b/tex/context/base/cont-it.tex @@ -31,4 +31,6 @@ \setupbodyfont [cmr,ams,rm,12pt] +% \usetypescript[modern][\defaultencoding] \setupbodyfont[modern,12pt] + \protect \errorstopmode \dump \endinput diff --git a/tex/context/base/cont-new.tex b/tex/context/base/cont-new.tex index 787bbd111..82dd62e58 100644 --- a/tex/context/base/cont-new.tex +++ b/tex/context/base/cont-new.tex @@ -24,6 +24,25 @@ \ifx\normalcompound\undefined \let\normalcompound=| \fi +% twice as fast in #1=5 #2=40 situations, only gains some speed when +% multiple runs of large docs are done; fully expandable, no +% statuscounter needed, no restore (due to grouping) needed etc + +\beginETEX \numexpr + +\def\writestatus#1#2% + {\writestring{\expandafter\dosplitstatus\expandafter\statuswidth#1% + \space\space\space\space\space\space\space + \space\space\space\space\space\space\space + \space\space\space\space\space\space\end + \space:\space#2}} + +\def\dosplitstatus#1#2% + {\ifcase#1 \expandafter\nosplitstatus\fi#2% + \expandafter\dosplitstatus\expandafter{\the\numexpr#1+\minusone\relax}} + +\endETEX + \beginETEX % fallback to math when in text mode (handy for unicode vectors) @@ -73,10 +92,6 @@ \egroup -% in xtag-ini: - -\def\doexecuteXMLhexcharacter#1\relax{\getXMLcharacter{"#1}} - % in xtag-map: \unexpanded\def\xmlrent#1{\doXMLentity#1;} @@ -112,6 +127,69 @@ \def\XMLprocess#1% {\begingroup\enableXML\XMLflush{#1}\endgroup} +%D (Inspired by a discussion on the \CONTEXT\ mailing list) +%D +%D In \TEX\ each character can have one of 16 catcodes. This way the +%D backslash, dollar, ampersand, hash and some more characters get +%D their special meaning. If you want to process tokens under a +%D certain catcode regime, passing arguments can interfere badly. +%D +%D \startbuffer[a] +%D \def\whatever#1{[#1]} +%D \whatever{whatever \type {\whatever{you want}} $or$ not!} +%D \stopbuffer +%D +%D \typebuffer[a] +%D +%D Here we pass an argument to \type {\whatever} but part of that +%D argument is to be processed under a different catcode regime, i.e.\ +%D all characters that need to be typeset verbatim need to get +%D the catcode that makes it a letter. This is what we get when we typeset +%D the text verbatim: +%D +%D \starttyping +%D whatever \type {\whatever{you want}} $or$ not! +%D \stoptyping +%D +%D However, when passed to \type {\whatever} we get: +%D +%D \getbuffer[a] +%D +%D In \ETEX\ one can use \type {\scantokens} to circumvent this problem. +%D +%D \startbuffer[b] +%D \def\rescan#1{\scantokens{#1}} +%D \def\whatever#1{[\rescan{#1}]} +%D \whatever{whatever \type {\whatever{you want}} $or$ not!} +%D \stopbuffer +%D +%D \getbuffer[b] \typebuffer[b] +%D +%D This time the \type {\whatever} call gives: +%D +%D \getbuffer[b] +%D +%D In this example, two spaces have crept in. The first one, after the +%D macro name, is inserted by \TEX\ and cannot be avoided. The last space +%D is inserted by \type {\scantokens}, and is the consequence of the fact +%D that this macro mimics reading from a file. You can avoid the last +%D space by a slightly different definition: +%D +%D \startbuffer[c] +%D \def\rescan#1{\scantokens{#1\ignorespaces}} +%D \def\whatever#1{[\rescan{#1}]} +%D \whatever{whatever \type {\whatever{you want}} $or$ not!} +%D \stopbuffer +%D +%D \typebuffer[c] +%D +%D Unfortunately we still keep the first space, but at least it's better than +%D a failure: +%D +%D \getbuffer[c] + +\def\rescan#1{\scantokens{#1\ignorespaces}} + % In 2005 we will abandon support for font encodings that don't have % the ascii characters { } $ etc in their normal slot, i.e. latin modern % instead of computer modern. Then we can also clean up some of the ugly @@ -896,7 +974,7 @@ \beginETEX - \unexpanded\def\retype#1{\scantokens{\normaltype{#1}}} + \unexpanded\def\retype#1{\scantokens{\normaltype{#1}\ignorespaces}} \endETEX diff --git a/tex/context/base/cont-nl.tex b/tex/context/base/cont-nl.tex index d29711997..8a38aae3f 100644 --- a/tex/context/base/cont-nl.tex +++ b/tex/context/base/cont-nl.tex @@ -2,18 +2,18 @@ %D [ file=cont-nl, %D version=1997.08.19, %D title=\CONTEXT, -%D subtitle=\CONTEXT\ Dutch Format Generation, +%D subtitle=\CONTEXT\ Dutch Format Generation, %D author=Hans Hagen, %D date=\currentdate, %D copyright={PRAGMA / Hans Hagen \& Ton Otten}] %C %C This module is part of the \CONTEXT\ macro||package and is -%C therefore copyrighted by \PRAGMA. See mreadme.pdf for -%C details. +%C therefore copyrighted by \PRAGMA. See mreadme.pdf for +%C details. -\catcode`\{=1 \catcode`\}=2 \def\defaultinterface{dutch} +\catcode`\{=1 \catcode`\}=2 \def\defaultinterface{dutch} -\input context.tex +\input context.tex \unprotect @@ -21,14 +21,16 @@ \loaduserspecifications -\installlanguage [\s!en] [\c!state=\v!start] -\installlanguage [\s!uk] [\c!state=\v!start] -\installlanguage [\s!de] [\c!state=\v!start] -\installlanguage [\s!fr] [\c!state=\v!start] -\installlanguage [\s!es] [\c!state=\v!start] -\installlanguage [\s!nl] [\c!state=\v!start] -\installlanguage [\s!it] [\c!state=\v!start] +\installlanguage [\s!en] [\c!state=\v!start] +\installlanguage [\s!uk] [\c!state=\v!start] +\installlanguage [\s!de] [\c!state=\v!start] +\installlanguage [\s!fr] [\c!state=\v!start] +\installlanguage [\s!es] [\c!state=\v!start] +\installlanguage [\s!nl] [\c!state=\v!start] +\installlanguage [\s!it] [\c!state=\v!start] \setupbodyfont [cmr,ams,rm,12pt] +% \usetypescript[modern][\defaultencoding] \setupbodyfont[modern,12pt] + \protect \errorstopmode \dump \endinput diff --git a/tex/context/base/cont-ro.tex b/tex/context/base/cont-ro.tex index c25bc6f35..19ced0734 100644 --- a/tex/context/base/cont-ro.tex +++ b/tex/context/base/cont-ro.tex @@ -2,29 +2,31 @@ %D [ file=cont-ro, %D version=2000.01.09, %D title=\CONTEXT, -%D subtitle=\CONTEXT\ Romanian Format Generation, +%D subtitle=\CONTEXT\ Romanian Format Generation, %D author=Hans Hagen, %D date=\currentdate, %D copyright={PRAGMA / Hans Hagen \& Ton Otten}] %C %C This module is part of the \CONTEXT\ macro||package and is -%C therefore copyrighted by \PRAGMA. See mreadme.pdf for -%C details. +%C therefore copyrighted by \PRAGMA. See mreadme.pdf for +%C details. -\catcode`\{=1 \catcode`\}=2 \def\defaultinterface{romanian} +\catcode`\{=1 \catcode`\}=2 \def\defaultinterface{romanian} -\input context.tex +\input context.tex -\unprotect +\unprotect \setupcurrentlanguage[\s!ro] -\loaduserspecifications +\loaduserspecifications -\installlanguage [\s!en] [\c!state=\v!start] -\installlanguage [\s!de] [\c!state=\v!start] +\installlanguage [\s!en] [\c!state=\v!start] +\installlanguage [\s!de] [\c!state=\v!start] \installlanguage [\s!ro] [\c!state=\v!start] \setupbodyfont [cmr,ams,rm,12pt] +% \usetypescript[modern][\defaultencoding] \setupbodyfont[modern,12pt] + \protect \errorstopmode \dump \endinput diff --git a/tex/context/base/cont-uk.tex b/tex/context/base/cont-uk.tex index 185f5c993..f5d339119 100644 --- a/tex/context/base/cont-uk.tex +++ b/tex/context/base/cont-uk.tex @@ -2,18 +2,18 @@ %D [ file=cont-uk, %D version=1997.08.19, %D title=\CONTEXT, -%D subtitle=\CONTEXT\ English Format Generation, +%D subtitle=\CONTEXT\ English Format Generation, %D author=Hans Hagen, %D date=\currentdate, %D copyright={PRAGMA / Hans Hagen \& Ton Otten}] %C %C This module is part of the \CONTEXT\ macro||package and is -%C therefore copyrighted by \PRAGMA. See mreadme.pdf for -%C details. +%C therefore copyrighted by \PRAGMA. See mreadme.pdf for +%C details. -\catcode`\{=1 \catcode`\}=2 \def\defaultinterface{english} +\catcode`\{=1 \catcode`\}=2 \def\defaultinterface{english} -\input context.tex +\input context.tex \unprotect @@ -21,14 +21,16 @@ \loaduserspecifications -\installlanguage [\s!en] [\c!state=\v!start] -\installlanguage [\s!uk] [\c!state=\v!start] -\installlanguage [\s!de] [\c!state=\v!start] -\installlanguage [\s!fr] [\c!state=\v!start] -\installlanguage [\s!es] [\c!state=\v!start] -\installlanguage [\s!nl] [\c!state=\v!start] -\installlanguage [\s!it] [\c!state=\v!start] +\installlanguage [\s!en] [\c!state=\v!start] +\installlanguage [\s!uk] [\c!state=\v!start] +\installlanguage [\s!de] [\c!state=\v!start] +\installlanguage [\s!fr] [\c!state=\v!start] +\installlanguage [\s!es] [\c!state=\v!start] +\installlanguage [\s!nl] [\c!state=\v!start] +\installlanguage [\s!it] [\c!state=\v!start] \setupbodyfont [cmr,ams,rm,12pt] +% \usetypescript[modern][\defaultencoding] \setupbodyfont[modern,12pt] + \protect \errorstopmode \dump \endinput diff --git a/tex/context/base/context.tex b/tex/context/base/context.tex index 1b7184741..712dde751 100644 --- a/tex/context/base/context.tex +++ b/tex/context/base/context.tex @@ -31,7 +31,7 @@ %D 2004.8.30 the low level interface is english. Watch out and adapt %D your styles an modules. -\def\contextversion{2005.01.13} +\def\contextversion{2005.01.24} %D Welcome to the main module. When this module is ran through %D \type{initex} or \type {tex -i} or \type {whatevertex} using diff --git a/tex/context/base/core-con.tex b/tex/context/base/core-con.tex index 39e13ed44..ecb7d9ee8 100644 --- a/tex/context/base/core-con.tex +++ b/tex/context/base/core-con.tex @@ -139,7 +139,7 @@ \def\doconvertcharacters#1#2% {\ifnum#2>26 \bgroup - \!!counta#2 + \!!counta#2\relax \ifnum\!!counta>\zerocount \advance\!!counta \minusone \!!countb\!!counta @@ -352,18 +352,14 @@ \doifleapyearelse{#3}{\advance\!!countb 1}{}\relax \fi \!!countc\!!counta -% \DoDiv\!!countc by4to\!!countc \dosetdivision\!!countc4\!!countc \advance\!!countb \!!countc \!!countc\!!counta -% \DoDiv\!!countc by100to\!!countc \dosetdivision\!!countc{100}\!!countc \advance\!!countb -\!!countc \!!countc\!!counta -% \DoDiv\!!countc by400to\!!countc \dosetdivision\!!countc{400}\!!countc \advance\!!countb \!!countc -% \DoMod\!!countb by7to\!!countb \dosetmodulo\!!countb7\!!countb \advance\!!countb \plusone \@EA\egroup\@EA\normalweekday\the\!!countb\relax} @@ -446,13 +442,10 @@ {\bgroup \!!doneafalse \!!counta#1% -% \DoMod\!!counta by4to\!!countb \dosetmodulo\!!counta4\!!countb \ifcase\!!countb -% \DoMod\!!counta by100to\!!countb \dosetmodulo\!!counta{100}\!!countb \ifcase\!!countb \else \!!doneatrue \fi -% \DoMod\!!counta by400to\!!countb \dosetmodulo\!!counta{400}\!!countb \ifcase\!!countb \!!doneatrue \fi \fi @@ -466,7 +459,7 @@ {\doifleapyearelse{#1} {\def\numberofdays{29}} {\def\numberofdays{28}}% - \edef\numberofdays% + \edef\numberofdays {\ifcase#2 \or31\or\numberofdays\or31\or30\or 31\or30\or31\or31\or30\or31\or30\or31\fi}} diff --git a/tex/context/base/core-des.tex b/tex/context/base/core-des.tex index 3c107b6ff..d9a92e30b 100644 --- a/tex/context/base/core-des.tex +++ b/tex/context/base/core-des.tex @@ -36,51 +36,52 @@ \newbox\@@descriptionbox -\def\@@descriptionhandler#1% - {\getvalue{\??dd#1\s!do\c!command}{#1}} +\def\descriptionparameter#1{\csname\??dd\currentdescription#1\endcsname} -\def\normal@@descriptionhandler#1[#2]#3#4% +\def\@@descriptionhandler{\descriptionparameter{\s!do\c!command}} + +\def\normal@@descriptionhandler[#1]#2#3% {\doattributes - {\??dd#1}\c!headstyle\c!headcolor - {\getvalue{\??dd#1\c!command}{#4}}% NAAR BUITENSTE NIVEAU ! - \rawreference\s!def{#2}{#3}} % brrr moet in #4 + {\??dd\currentdescription}\c!headstyle\c!headcolor + {\descriptionparameter\c!command{#3}}% NAAR BUITENSTE NIVEAU ! + \rawreference\s!def{#1}{#2}} % brrr moet in #4 -\setvalue{@@description\v!left}#1% - {\@@descriptionhang{#1}\@@descriptionleftpure\@@descriptionlefthang} +\setvalue{@@description\v!left}% + {\@@descriptionhang\@@descriptionleftpure\@@descriptionlefthang} -\setvalue{@@description\v!right}#1% - {\@@descriptionhang{#1}\@@descriptionrightpure\@@descriptionrighthang} +\setvalue{@@description\v!right}% + {\@@descriptionhang\@@descriptionrightpure\@@descriptionrighthang} -\def\@@descriptionhang#1#2#3% +\def\@@descriptionhang#1#2% {\processaction - [\getvalue{\??dd#1\c!hang}] - [ \v!none=>\let\next#2,% - 0=>\let\next#2,% - \s!unknown=>\let\next#3,% - \s!default=>\let\next#2]% - \next{#1}} - -\def\@@descriptionleftpure#1[#2]#3% - {\@@dostartdescription{#1}[#2]{#3}% + [\descriptionparameter\c!hang] + [ \v!none=>\let\next#1,% + 0=>\let\next#1,% + \s!unknown=>\let\next#2,% + \s!default=>\let\next#1]% + \next} + +\def\@@descriptionleftpure[#1]#2% + {\@@dostartdescription[#1]{#2}% \noindent\ignorespaces \leftskip\@@leftdescriptionskip \rightskip\@@rightdescriptionskip \advance\leftskip \!!widtha - \@@makedescriptionpurebox{#1}\raggedright + \@@makedescriptionpurebox\raggedright \advance\leftskip \!!widthb \llap {\hbox to \leftskip {\hskip\@@leftdescriptionskip \copy\@@descriptionbox\hss}}% - \@@dodescription{#1}} + \@@dodescription} -\def\@@descriptionrightpure#1[#2]#3% - {\@@dostartdescription{#1}[#2]{#3}% +\def\@@descriptionrightpure[#1]#2% + {\@@dostartdescription[#1]{#2}% \noindent\ignorespaces \leftskip\@@leftdescriptionskip \rightskip\@@rightdescriptionskip \advance\rightskip \!!widtha - \@@makedescriptionpurebox{#1}\raggedleft + \@@makedescriptionpurebox\raggedleft \rlap {\hskip\hsize \hskip-\leftskip @@ -88,37 +89,37 @@ \copy\@@descriptionbox \hskip\@@rightdescriptionskip}% \advance\rightskip \!!widthb - \@@dodescription{#1}} + \@@dodescription} -\def\@@makedescriptionpurebox#1#2% +\def\@@makedescriptionpurebox#1% {\setbox\@@descriptionbox\vtop {\dontcomplain \hsize\!!widtha \leftskip\zeropoint \rightskip\zeropoint - #2\setupalign[\getvalue{\??dd#1\c!align}]% + #1\setupalign[\descriptionparameter\c!align]% \ifhbox\@@descriptionbox\unhcopy\else\copy\fi\@@descriptionbox}% \ht\@@descriptionbox\strutht \dp\@@descriptionbox\strutdp} -\def\@@descriptionlefthang#1[#2]#3% - {\@@dostartdescription{#1}[#2]{#3}% +\def\@@descriptionlefthang[#1]#2% + {\@@dostartdescription[#1]{#2}% \dontcomplain \advance\!!widtha \!!widthb \hangindent\!!widtha - \@@makedescriptionhangbox{#1}\raggedright{\advance\rightskip \!!widthb}% + \@@makedescriptionhangbox\raggedright{\advance\rightskip \!!widthb}% \noindent\ignorespaces \llap {\dontshowcomposition \vtop to \zeropoint{\box\@@descriptionbox}}% - \@@dodescription{#1}}% + \@@dodescription} -\def\@@descriptionrighthang#1[#2]#3% - {\@@dostartdescription{#1}[#2]{#3}% +\def\@@descriptionrighthang[#1]#2% + {\@@dostartdescription[#1]{#2}% \dontcomplain \advance\!!widtha \!!widthb \hangindent-\!!widtha - \@@makedescriptionhangbox{#1}\raggedleft{\advance\leftskip \!!widthb}% + \@@makedescriptionhangbox\raggedleft{\advance\leftskip \!!widthb}% \noindent\ignorespaces \rlap {\dontcomplain @@ -128,43 +129,44 @@ \advance\scratchdimen -\rightskip \hbox to \scratchdimen {\hss\vtop to \zeropoint{\box\@@descriptionbox}}}% - \@@dodescription{#1}} + \@@dodescription} -\def\@@makedescriptionhangbox#1#2#3% +\def\@@makedescriptionhangbox#1#2% {\setbox\@@descriptionbox\vtop % \vbox gaat fout in hang {\forgetall \dontcomplain \hsize\!!widtha - #2\setupalign[\getvalue{\??dd#1\c!align}]#3% + #1\setupalign[\descriptionparameter\c!align]#2% \ifhbox\@@descriptionbox\unhcopy\else\copy\fi\@@descriptionbox}% \ht\@@descriptionbox\strutht \dp\@@descriptionbox\strutdp - \doifinsetelse{\getvalue{\??dd#1\c!hang}}{\v!fit,\v!broad} - {\scratchdimen\ht\@@descriptionbox - \advance\scratchdimen \dp\@@descriptionbox - \doifvalue{\??dd#1\c!hang}\v!broad - {\advance\scratchdimen .5\strutht}% - \getnoflines\scratchdimen - \hangafter-\noflines} - {\hangafter-\getvalue{\??dd#1\c!hang}}}% - -\setvalue{@@description\v!top}#1[#2]#3% + \doifsomething{\descriptionparameter\c!hang} + {\doifinsetelse{\descriptionparameter\c!hang}{\v!fit,\v!broad} + {\scratchdimen\ht\@@descriptionbox + \advance\scratchdimen \dp\@@descriptionbox + \doif{\descriptionparameter\c!hang}\v!broad + {\advance\scratchdimen .5\strutht}% + \getnoflines\scratchdimen + \hangafter-\noflines} + {\hangafter-\descriptionparameter\c!hang}}} + +\setvalue{@@description\v!top}[#1]#2% {%\page[\v!preference]% % Weg ermee! %\dosomebreak{\goodbreak}% % Dit is beter en nodig! - \dohandelpaginaafX\plusone % En dit moet het maar worden. - \@@dostartdescription{#1}[#2]{\let\\=\space#3}% + \dohandlepagebreakX\plusone % En dit moet het maar worden. + \@@dostartdescription[#1]{\let\\=\space#2}% \noindent\ignorespaces \copy\@@descriptionbox\par \nobreak - \getvalue{\??dd#1\c!inbetween}% + \descriptionparameter\c!inbetween \nobreak - \@@dodescription{#1}} + \@@dodescription} -\def\do@@description#1#2[#3]#4% - {\@@dostartdescription{#2}[#3]{#4}% +\def\do@@description#1[#2]#3% + {\@@dostartdescription[#2]{#3}% \noindent\ignorespaces % not needed this ignore #1{\ifhbox\@@descriptionbox\unhcopy\else\copy\fi\@@descriptionbox}% - \@@dodescription{#2}} + \@@dodescription} \setvalue{@@description\v!inmargin }{\do@@description\inmargin} \setvalue{@@description\v!inleft }{\do@@description\inleft } @@ -175,40 +177,40 @@ \setvalue{@@description\v!innermargin }{\do@@description\ininner } \setvalue{@@description\v!outermargin }{\do@@description\inouter } -\setvalue{@@description\v!serried\v!fit}#1[#2]#3% - {\@@dostartdescription{#1}[#2]{#3}% +\setvalue{@@description\v!serried\v!fit}[#1]#2% + {\@@dostartdescription[#1]{#2}% \noindent\ignorespaces \ifhbox\@@descriptionbox\unhcopy\else\copy\fi\@@descriptionbox \hskip\!!widthb % toegevoegd - \@@dodescription{#1}} + \@@dodescription} -\setvalue{@@description\v!serried\v!broad}#1[#2]#3% - {\@@dostartdescription{#1}[#2]{#3}% +\setvalue{@@description\v!serried\v!broad}[#1]#2% + {\@@dostartdescription[#1]{#2}% \noindent\ignorespaces \ifhbox\@@descriptionbox\unhcopy\else\copy\fi\@@descriptionbox \hskip\!!widthb \!!plus .5\!!widthb \!!minus .25\!!widthb - \@@dodescription{#1}} + \@@dodescription} -\setvalue{@@description\v!serried\v!wide}#1[#2]#3% - {\@@dostartdescription{#1}[#2]{#3}% +\setvalue{@@description\v!serried\v!wide}[#1]#2% + {\@@dostartdescription[#1]{#2}% \noindent\ignorespaces \hbox to \!!widtha {\ifhbox\@@descriptionbox\unhcopy\else\copy\fi\@@descriptionbox\hss}% \hskip\!!widthb \ignorespaces - \@@dodescription{#1}} + \@@dodescription} -\setvalue{@@description\v!serried}#1[#2]#3% +\setvalue{@@description\v!serried}[#1]#2% {\processaction - [\getvalue{\??dd#1\c!width}] + [\descriptionparameter\c!width] [ \v!fit=>\let\next\v!fit, \v!broad=>\let\next\v!broad, \s!unknown=>\let\next\v!wide, \s!default=>\let\next\v!broad]% - \getvalue{@@description\v!serried\next}{#1}[#2]{#3}} + \getvalue{@@description\v!serried\next}[#1]{#2}} -\setvalue{@@description\v!hanging}#1[#2]#3% - {\@@dostartdescription{#1}[#2]{#3}% % adds \c!margin to \leftskip +\setvalue{@@description\v!hanging}[#1]#2% + {\@@dostartdescription[#1]{#2}% % adds \c!margin to \leftskip \noindent\ignorespaces \advance\leftskip -\leftskipadaption \relax \ifdim\leftskipadaption=\zeropoint @@ -226,7 +228,7 @@ \ifhbox\@@descriptionbox\unhcopy\else\copy\fi\@@descriptionbox \kern\ifdim\!!widthb=\zeropoint .75em\else\!!widthb\fi \ignorespaces - \@@dodescription{#1}} + \@@dodescription} %D A bonus definition %D @@ -244,14 +246,14 @@ \let\@@leftdescriptionskip \!!zeropoint \let\@@rightdescriptionskip\!!zeropoint -\def\@@dostartdescription#1[#2]#3% - {\getvalue{\??dd#1\c!before}% +\def\@@dostartdescription[#1]#2% + {\descriptionparameter\c!before \begingroup - \doadaptleftskip{\getvalue{\??dd#1\c!margin}}% + \doadaptleftskip{\descriptionparameter\c!margin}% \showcomposition - \!!widthb\getvalue{\??dd#1\c!distance}\relax + \!!widthb\descriptionparameter\c!distance\relax \ifdim\!!widthb=\zeropoint\relax - \doifvalue{\??dd#1\c!width}\v!broad{\!!widthb=1em}% + \doif{\descriptionparameter\c!width}\v!broad{\!!widthb=1em}% \fi % temp hack, we need to avoid this kind of preprocessing \setbox\@@descriptionbox\hbox % preroll @@ -259,54 +261,72 @@ \trialtypesettingtrue \dontcomplain \def\\{\crlf}% - \@@descriptionhandler{#1}[#2]{#3}% - {\begstrut\getvalue{\??dd#1\c!text}\ignorespaces#3\endstrut}}% + \@@descriptionhandler[#1]{#2}% + {\begstrut\descriptionparameter\c!text\ignorespaces#2\endstrut}}% % so far \assignwidth - {\!!widtha}% - {\getvalue{\??dd#1\c!width}}% - {\doifelsevaluenothing{\??dd#1\c!sample}% + \!!widtha + {\descriptionparameter\c!width}% + {\doifelsenothing{\descriptionparameter\c!sample}% {% preroll can move here (test first) \ifhbox\@@descriptionbox\unhcopy\else\copy\fi \@@descriptionbox}% - {\@@descriptionhandler{#1}[#2]{#3}% - {\getvalue{\??dd#1\c!text}\getvalue{\??dd#1\c!sample}}}} - {\!!widthb}% + {\@@descriptionhandler[#1]{#2}% + {\descriptionparameter\c!text\descriptionparameter\c!sample}}} + \!!widthb \setbox\@@descriptionbox\hbox {\forgetall \dontcomplain \let\\\endgraf - \doifelsevalue{\??dd#1\c!location}\v!serried - {\@@descriptionhandler{#1}[#2]{#3}% - {\begstrut\getvalue{\??dd#1\c!text}#3\endstrut}} - {\@@descriptionhandler{#1}[#2]{#3}% + \doifelse{\descriptionparameter\c!location}\v!serried + {\@@descriptionhandler[#1]{#2}% + {\begstrut\descriptionparameter\c!text#2\endstrut}} + {\@@descriptionhandler[#1]{#2}% {\vtop{\hsize\!!widtha\advance\hsize-\!!widthb - \begstrut\getvalue{\??dd#1\c!text}\ignorespaces#3\endstrut}}}}% - \doifelsevalue{\??dd#1\c!aligntitle}\v!no + \begstrut\descriptionparameter\c!text\ignorespaces#2\endstrut}}}}% + \doifelse{\descriptionparameter\c!aligntitle}\v!no {\edef\@@leftdescriptionskip {\the\leftskip }% \edef\@@rightdescriptionskip{\the\rightskip}} {\ifcase\insidedefinition \edef\@@leftdescriptionskip {\the\leftskip }% \edef\@@rightdescriptionskip{\the\rightskip}% \fi}% - \expanded{\indenting[\getvalue{\??dd#1\c!indenting}]}% - \ifcase\insidedefinition % better a system mode + \expanded{\indenting[\descriptionparameter\c!indenting]}% + % better a system mode + \ifcase\insidedefinition \chardef\insidedefinition\plusone \or \chardef\insidedefinition\plustwo \fi} % now happens elsewhere : \noindent\ignorespaces \def\@@stopdescription#1% - {\par % maybe better after \dostopattributes + {\def\currentdescription{#1}% \dostopattributes + \par % maybe better after \dostopattributes \endgroup - \getvalue{\??dd#1\c!after}% + \descriptionparameter\c!after \egroup % temporary hack - \dochecknextindentation{\??dd#1}} + \dochecknextindentation{\??dd#1}}% \currentdescription}} -\def\@@dodescription#1% - {\dostartattributes{\??dd#1}\c!style\c!color\empty +\def\@@dodescription + {\dostartattributes{\??dd\currentdescription}\c!style\c!color\empty \ignorespaces} +% starters: + +\def\@@startdescription[#1][#2]% + {\def\currentdescription{#1}% + \doifelse{\descriptionparameter{\s!do\c!state}}\v!start + {\@@startsomedescription{#1}[#2]{}} + {\dowithwargument{\@@startsomedescription{#1}[#2]}}} + +\def\@@description[#1][#2]% + {\def\currentdescription{#1}% + \doifelse{\descriptionparameter{\s!do\c!state}}\v!start + {\@@somedescription{#1}[#2]{}} + {\dowithwargument{\@@somedescription{#1}[#2]}}} + +% these call: + \def\@@somedescription#1[#2]#3% {\dowithpar {\bgroup\@@makedescription{#1}[#2]{#3}}% @@ -317,21 +337,33 @@ \BeforePar{\@@makedescription{#1}[#2]{#3}}% \GotoPar} -\def\dodosetupdescriptions[#1][#2]% - {\getparameters[\??dd#1][#2]} +% which calls: + +\def\@@makedescription#1% + {\def\currentdescription{#1}% + \executeifdefined + {@@description\descriptionparameter\c!location} + {\getvalue{@@description\v!left}}} + +% \def\@@makedescription#1% +% {\def\currentdescription{#1}% +% \ifundefined{@@description\descriptionparameter\c!location}% +% \letvalue{\??dd#1\c!location}\v!left +% \fi +% \getvalue{@@description\descriptionparameter\c!location}} + +% definitions + +\def\setupdescriptions + {\dodoubleempty\dosetupdescriptions} \def\dosetupdescriptions[#1][#2]% % beter: \iffirstargument {\ConvertToConstant\doifelse{#2}{} {\dodosetupdescriptions[][#1]} {\dodoubleargumentwithset\dodosetupdescriptions[#1][#2]}} -\def\setupdescriptions - {\dodoubleempty\dosetupdescriptions} - -\def\@@makedescription#1[#2]% - {\ExpandAfter\doifundefined{@@description\getvalue{\??dd#1\c!location}} - {\setvalue{\??dd#1\c!location}{\v!left}}% - \getvalue{@@description\getvalue{\??dd#1\c!location}}{#1}[#2]} +\def\dodosetupdescriptions[#1]% [#2]% + {\getparameters[\??dd#1]} % [#2]} \def\dodefinedescription[#1][#2]% {\copyparameters[\??dd#1][\??dd] @@ -339,25 +371,12 @@ \c!width,\c!hang,\c!sample,\c!before,\c!inbetween,\c!after,\c!margin, \c!indenting,\c!indentnext,\c!align,\c!text,\c!distance,\c!command]% \getparameters[\??dd#1] - [\s!do\c!state=\v!stop, - \s!do\c!command=\normal@@descriptionhandler, - #2]% - \doifvalue{\??dd#1\c!location}\v!top - {\doassign[\??dd#1][\c!inbetween=\blank]}% + [\s!do\c!state=\v!stop,\s!do\c!command=\normal@@descriptionhandler,#2]% + \doifvalue{\??dd#1\c!location}\v!top{\doassign[\??dd#1][\c!inbetween=\blank]}% \setvalue {#1}{\dodoubleempty\@@description[#1]}% \setvalue{\e!start#1}{\dodoubleempty\@@startdescription[#1]}% \setvalue{\e!stop #1}{\@@stopdescription{#1}}}% -\def\@@startdescription[#1][#2]% - {\doifelsevalue{\??dd#1\s!do\c!state}\v!start - {\@@startsomedescription{#1}[#2]{}} - {\dowithwargument{\@@startsomedescription{#1}[#2]}}} - -\def\@@description[#1][#2]% - {\doifelsevalue{\??dd#1\s!do\c!state}\v!start - {\@@somedescription{#1}[#2]{}} - {\dowithwargument{\@@somedescription{#1}[#2]}}} - \def\definedescription {\dodoubleemptywithset\dodefinedescription} @@ -549,7 +568,7 @@ \c!coupling,\c!couplingway]% \getparameters[\??dd#3#1] [\c!text=#1,\??dd\c!number=#4,\c!conversion=,#5]}}% - \ExpandBothAfter\doif{\getvalue{\??dd#3#1\??dd\c!number}}{#1} + \doifvalue{\??dd#3#1\??dd\c!number}{#1} {\definenumber [#3#1] [\c!way=\getvalue{\??dd#1\c!way}, @@ -571,7 +590,7 @@ \def\donextenumerationnumber[#1][#2]% {\pluscounter{\??dd\c!coupling#1}% new: global crosslinking - \getvalue{\??dd\e!next#2\c!number}{#1}}% + \getvalue{\??dd\c!next#2\c!number}{#1}}% \def\dodefineenumeration[#1][#2][#3]% {\dododefineenumeration{#1}{1}{}[#2][#3]\showdnnumber @@ -639,9 +658,7 @@ \hskip#2\!!widtha\indent\box2% \hangindent#3\!!widtha \doattributes{\??ds#1}\c!style\c!color\empty - \AfterPar% must be redone - {\endgroup - \getvalue{\??ds#1\c!after}}% + \AfterPar{\endgroup\getvalue{\??ds#1\c!after}}% must be redone \GetPar} \def\dodefineindenting[#1][#2]% @@ -660,34 +677,30 @@ {\dodoubleargumentwithset\dodefinelabel} \def\dodefinelabel[#1][#2]% - {\getparameters - [\??lb#1] - [\c!way=\@@nrway,\c!command=,\c!location=,#2]% + {\definenumber + [#1] + [\c!command=,\c!location=,#2]% % downward compatible \processaction - [\getvalue{\??lb#1\c!location}] - [ \v!inmargin=>\setvalue{\??lb#1\c!command}{\inmargin}, - \v!inleft=>\setvalue{\??lb#1\c!command}{\inleft }, - \v!inright=>\setvalue{\??lb#1\c!command}{\inright }, - \v!margin=>\setvalue{\??lb#1\c!command}{\inmargin}]% - % inefficient, we need to redesign this command - \definenumber - [#1] - [\c!way=\getvalue{\??lb#1\c!way}]% - % generated commands + [\numberparameter{#1}\c!location] + [ \v!inmargin=>{\setupnumber[#1][\c!command=\inmargin]}, + \v!inleft=>{\setupnumber[#1][\c!command=\inleft ]}, + \v!inright=>{\setupnumber[#1][\c!command=\inright ]}, + \v!margin=>{\setupnumber[#1][\c!command=\inmargin]}]% + % generated commands (in addition to the number ones) \setvalue {#1}{\dodoubleempty\do@@label[#1]}% \setvalue{\s!reset #1}{\resetnumber[#1]}% \setvalue{\e!increment#1}{\incrementnumber[#1]}% \setvalue{\e!next #1}{\dodoubleempty\do@@nextlabel[#1]}% - \setvalue{\c!current #1}{\currentnumber[#1]}} % todo + \setvalue{\c!current #1}{\currentnumber[#1]}} \def\do@@label[#1][#2]% - {\getvalue{\??lb#1\c!before}% - \getvalue{\??lb#1\c!command}% - {\doattributes{\??lb#1}\c!headstyle\c!headcolor - {\dotextprefix{\getvalue{\??lb#1\c!text}}% + {\numberparameter{#1}\c!before + \numberparameter{#1}\c!command + {\doattributes{\@@thenumber{#1}}\c!headstyle\c!headcolor + {\dotextprefix{\numberparameter{#1}\c!text}% \getvalue{\e!next#1}[#2]}}% - \getvalue{\??lb#1\c!after}}% + \numberparameter{#1}\c!after}% \def\do@@nextlabel[#1][#2]% {\nextnumber[#1][\s!lab][#2]} diff --git a/tex/context/base/core-fig.tex b/tex/context/base/core-fig.tex index 2cfe7573c..3e120fb40 100644 --- a/tex/context/base/core-fig.tex +++ b/tex/context/base/core-fig.tex @@ -48,6 +48,7 @@ 8: figuurobject -- wordt opnieuw gebruikt 9: figuur -- wordt niet afgehandeld 10: figuur -- heeft geen afmetingen + 11: invoegen bron -- \stopmessages \startmessages english library: figures @@ -62,6 +63,7 @@ 8: figureobject -- is reused 9: figure -- is not handled 10: figure -- has zero dimensions + 11: including resource -- \stopmessages \startmessages german library: figures @@ -76,10 +78,9 @@ 8: Abbildungobjekt -- wurde wiederverwandt 9: Abbildung -- wird nicht unterstuetzt 10: figure -- has zero dimensions + 11: including resource -- \stopmessages -% TOBIAS: 10 - \startmessages czech library: figures title: obrazy 1: obraz -- nelze nalezt @@ -92,10 +93,9 @@ 8: obrazovy objekt -- je znovu pouzit 9: figure -- is not handled 10: figure -- has zero dimensions + 11: including resource -- \stopmessages -% TOM : 10 - \startmessages italian library: figures title: figure 1: figura -- non trovata @@ -108,6 +108,7 @@ 8: oggetto-figura -- riutilizzato 9: figura -- non gestita 10: la figura -- ha dimensioni nulle + 11: including resource -- \stopmessages \startmessages romanian library: figures @@ -122,6 +123,7 @@ 8: obiectul figura -- este refolosit 9: sufixul -- din figura -- nu este folosit 10: figura -- are dimensiuni nule + 11: including resource -- \stopmessages %D Due to the mere fact that \DVI|/|\PDF\ drivers differ in their @@ -986,7 +988,7 @@ \def\@@eflabel{#2}% \global\let\externalfigurelog\empty \iftraceexternalfigures - \writestatus\m!figures{including \expandedfigurename}% + \showmessage\m!figures{11}\expandedfigurename \fi \getparameters [\??ep] @@ -1151,25 +1153,24 @@ \ifcase\figurestatus \let\@@efframe\v!on \let\@@efobject\v!no - \showmessage\m!figures1{\@@effilename}% + \showmessage\m!figures1\@@effilename \or - \showmessage\m!figures2{\@@effullname}% + \showmessage\m!figures2\@@effullname \or \showmessage\m!figures3{\@@effullname,\@@eflenttype}% \or - \showmessage\m!figures4{\@@effullname}% + \showmessage\m!figures4\@@effullname \or \showmessage\m!figures5{\@@effullname,\@@efloadname}% \or % no message - \doifnot\@@efsymbol\v!yes - {\showmessage\m!figures8{\@@effullname}}% + \doifnot\@@efsymbol\v!yes{\showmessage\m!figures8\@@effullname}% \fi \ifdim\@@epw=\zeropoint \chardef\figurestatus1 \fi \ifdim\@@eph=\zeropoint \chardef\figurestatus1 \fi \global\gridfigurefalse \ifnum\figurestatus=1 % unknown dimensions, take width or height or scale \setnaturalfiguresize - \xdef\naturalfigurewidth{\the\figwid}% + \xdef\naturalfigurewidth {\the\figwid}% \xdef\naturalfigureheight{\the\fighei}% \let\@@efframe\v!off \else diff --git a/tex/context/base/core-fld.tex b/tex/context/base/core-fld.tex index b926b8a7a..614d35efe 100644 --- a/tex/context/base/core-fld.tex +++ b/tex/context/base/core-fld.tex @@ -222,7 +222,7 @@ \doglobal\addtocommalist{#1}\collectedfields \fi \the\everysetfield - \setxvalue{fielddata#1}% kortere tag + \setxvalue{fielddata#1}% kortere tag #7 needs expansion etc {\noexpand\dosetfield{#1}{#2}{#3}{#4}{#5}{#6}{#7}{#8}{#9}}% \egroup} @@ -557,7 +557,7 @@ \writestatus\m!fields{pass values too}% \fi} -\def\definesubfield% +\def\definesubfield {\dotripleempty\dodefinesubfield} \def\dodefinesubfield[#1][#2][#3]% for the moment only radio ones @@ -587,7 +587,7 @@ \ifx\@@DriverFieldType\empty \writestatus\m!fields{unknown field #1}% \else - \let\@@DriverFieldMode=\fieldparentmode + \let\@@DriverFieldMode\fieldparentmode %\def\docommando##1{\addtocommalist{##1}\@@DriverFieldKids}% \def\docommando##1{\appendtocommalist{##1}\@@DriverFieldKids}% \processcommalist[#2]\docommando @@ -613,7 +613,7 @@ \writestatus\m!fields{pass parent field and clones}% \fi} -\def\clonefield% +\def\clonefield {\doquadrupleempty\doclonefield} \def\docopyfield[#1][#2]% parent children @@ -628,7 +628,7 @@ \def\docommando##1{\appendtocommalist{##1}\@@DriverFieldKids}% \processcommalist[#2]\docommando \changefield{#1}% - \let\@@DriverFieldAutoParent=\@@DriverFieldAuto + \let\@@DriverFieldAutoParent\@@DriverFieldAuto \def\@@DriverFieldParent{#1}% \let\@@DriverFieldKids\empty \let\@@DriverFieldRoot\empty diff --git a/tex/context/base/core-int.tex b/tex/context/base/core-int.tex index 8a89dc9dc..64fd9a8aa 100644 --- a/tex/context/base/core-int.tex +++ b/tex/context/base/core-int.tex @@ -825,7 +825,7 @@ % [\getvalue{\??am#1\c!dummy}] % [ \v!yes=>\chardef\handleunknownmenuitem=0\relax, % \v!empty=>\chardef\handleunknownmenuitem=1\relax, - % \v!no=>\chardef\handleunknownmenuitem=2\relax]% + % \v!no=>\chardef\handleunknownmenuitem=2\relax]% \getvalue{\??am#1#3}\relax \ifextendedmenu \setamboxcommands{#1}{#4}% @@ -1256,8 +1256,7 @@ \def\domenubox[#1][#2]#3% {\bgroup \def\setlocationbox##1[##2]##3[##4]% - {\localframed[##1][##2]% - {\dolocationattributes{##1}\c!style\c!color{##3}}}% + {\localframed[##1][##2]{\dolocationattributes{##1}\c!style\c!color{##3}}}% \domenubutton[#1][#2]#3[]% \egroup} @@ -1325,13 +1324,12 @@ {\bgroup %\setupinteraction[\c!width=\!!zeropoint]% \setinteractionparameter\c!width\!!zeropoint - \setbox0=\hbox - {\localframed[\??ba][]% - {\dolocationattributes\??ba\c!style\c!color{\strut\@@batext}}}% + \setbox0\hbox + {\localframed[\??ba][]{\dolocationattributes\??ba\c!style\c!color{\strut\@@batext}}}% \dontcomplain - \def\onder% + \def\atthebottom {\leaders\hrule\!!depth1ex\!!height-.5ex\hfil}% - \def\boven##1##2##3% + \def\atthetop##1##2##3% {\dimen0=\wd0 \divide\dimen0 3 \multiply\dimen0 ##2\relax @@ -1339,9 +1337,9 @@ \advance\dimen0 -##3\dimen2 %\gotodestination % {}{#1}{\syncprefix:##1}{} - % {\hbox to \dimen0{\color[\locationcolor\@@bacolor]{\onder}}}}% + % {\hbox to \dimen0{\color[\locationcolor\@@bacolor]{\atthebottom}}}}% \gotobox - {\hbox to \dimen0{\color[\locationcolor\@@bacolor]{\onder}}}% + {\hbox to \dimen0{\color[\locationcolor\@@bacolor]{\atthebottom}}}% [#1::\syncprefix:##1]}% \hbox {\def\check##1##2% @@ -1353,15 +1351,15 @@ \setbox2\hbox to \wd0 {\ifnum\top=\first\relax \ifnum\first=\bot\relax - \boven\first30\relax + \atthetop\first30\relax \else - \boven\first21\hss\boven\bot11\relax + \atthetop\first21\hss\atthetop\bot11\relax \fi \else \ifnum\first=\bot\relax - \boven\top11\hss\boven\first21\relax + \atthetop\top11\hss\atthetop\first21\relax \else - \boven\top11\hss\boven\first11\hss\boven\bot11\relax + \atthetop\top11\hss\atthetop\first11\hss\atthetop\bot11\relax \fi \fi}% \wd2=\zeropoint\box2 @@ -1490,10 +1488,7 @@ \def\interactionbarb {\ifnum\lastpage>\firstpage\relax \interactionbuttons - [\v!firstpage, - \v!previouspage, - \v!nextpage, - \v!lastpage]% + [\v!firstpage,\v!previouspage,\v!nextpage,\v!lastpage]% \fi} \def\interactionbarc @@ -1723,10 +1718,7 @@ \def\interactionbarg {\ifnum\lastsubpage>\firstsubpage\relax \interactionbuttons - [\v!firstsubpage, - \v!previoussubpage, - \v!nextsubpage, - \v!lastsubpage]% + [\v!firstsubpage,\v!previoussubpage,\v!nextsubpage,\v!lastsubpage]% \fi} \def\checkinteractionbar#1#2#3% @@ -2346,23 +2338,6 @@ \edef\attachmentname{\attachmentname.\!!stringd}% \fi} -% \def\attachment[#1]% currently title equals newname -% {\iflocation -% \doifundefinedelse{\??at:#1} -% {\writestatus\m!interactions6{#1}}% -% {\doif\@@atstatus\v!start -% {\bgroup -% \getattachmentdata[#1]% -% \doiffileelse\attachmentfile -% {\doattachfile -% \attachmenttitle -% {1em}{\strutheight}{\strutdepth}\@@atkleur\@@atsymbool -% \attachmentname -% \attachmentfile}% -% {\writestatus\m!interactions5\attachmentfile}% -% \egroup}}% -% \fi} - \def\attachment {\dodoubleempty\doattachment} @@ -2370,7 +2345,7 @@ {\iflocation \ifsecondargument \doifundefined{\??at:#2} - {\writestatus\m!interactions6{#2}% + {\showmessage\m!interactions6{#2}% \useattachment[#2]}% \doif\@@atstatus\v!start {\bgroup @@ -2385,7 +2360,7 @@ \attachmentname \attachmentfile}% }}% - {\writestatus\m!interactions5\attachmentfile}% + {\showmessage\m!interactions5\attachmentfile}% \egroup}% \else\iffirstargument \attachment[][#1]% diff --git a/tex/context/base/core-itm.tex b/tex/context/base/core-itm.tex index 86171507e..b4b13bffc 100644 --- a/tex/context/base/core-itm.tex +++ b/tex/context/base/core-itm.tex @@ -284,32 +284,6 @@ \def\unknownitemsymbol{?} -% \def\setitemmark#1% % en pas op: resets \docommando -% {\doifelsenothing{#1} -% {\edef\currentitemsymbol{\itemlevel}} -% {\edef\currentitemsymbol{#1}}% -% \doifsymboldefinedelse\currentitemsymbol -% {\setxvalue{\@@globalitemsymbol\itemlevel}{\currentitemsymbol}% -% \setgvalue{\@@localitemsymbol \itemlevel}{\unknownitemsymbol}% -% \def\listitem{\symbol[\currentitemsymbol]}% -% \let\docommando\gobbleoneargument} -% {\doifconversiondefinedelse\currentitemsymbol -% {\setxvalue{\@@globalitemsymbol\itemlevel}{\currentitemsymbol}% -% \setgvalue{\@@localitemsymbol \itemlevel}% -% {\convertnumber{\currentitemsymbol}{\countervalue{\@@itemcounter\itemlevel}}}% -% \iftextitems -% \doifsomething{\getitemparameter\itemlevel\c!linkertekst} -% {\let\tempsymbol\empty}% -% \fi -% \def\listitem -% {\getitemparameter\itemlevel -% {\iftextitems\c!linkertekst\else\c!links\fi}% -% \getvalue{\@@localitemsymbol\itemlevel}\tempsymbol -% \getitemparameter\itemlevel -% {\iftextitems\c!rechtertekst\else\c!rechts\fi}}% -% \let\docommando\gobbleoneargument} -% {\let\listitem\empty}}} - \def\setitemmark#1% % en pas op: resets \docommando {\doifsymboldefinedelse{#1} {\edef\currentitemsymbol{#1}% diff --git a/tex/context/base/core-lst.tex b/tex/context/base/core-lst.tex index 36010cfb6..f30762561 100644 --- a/tex/context/base/core-lst.tex +++ b/tex/context/base/core-lst.tex @@ -40,12 +40,12 @@ \def\dodowritetolist#1#2#3#4% {\begingroup \expanded{\everylistentry\emptytoks\the\everylistentry}% \emptytoks, else loop - \def\currentlist{#1}% + \def\currentlist{#1}% evt naar dowritetolist \convertexpanded{\getvalue{\??li\currentlist\c!expansion}}{#3}\asciilistentry \makesectionformat \doifelse\@@nmstate\v!start {\def\dopagenummer{\noexpand\pagenumber}} - {\def\dopagenummer{0}}% + {\let\dopagenummer\!!zerocount}% % niet waterdicht, wat te doen met figuren en zo % first hack: scheelt rommel, second hack: alleen koppen \doifelsevalue{\??rf\currentlist\c!state}\v!start @@ -56,7 +56,7 @@ \bgroup \thisisnextinternal\currentlist %\thisisdestination{\currentlist::\sectionformat}% - \@EA\setsectieenkoppeling\@EA{\currentlist}% + \expanded{\setsectieenkoppeling{\currentlist}}% \edef\currentlevel{\@@sectionlevel\@@sectie}% \processcommacommand[\crossdocumentreferences]\dododowritetolist \egroup @@ -64,8 +64,8 @@ \thisisnextinternal\currentlist \fi \expanded - {\writeutilitycommand% - {\noexpand\listentry% + {\writeutilitycommand + {\noexpand\listentry {\currentlist}% {\nextinternalreference}% {#2}% @@ -95,10 +95,10 @@ \makesectionformat \doifelse{\@@nmstate}\v!start {\def\dopagenummer{\noexpand\pagenumber}} - {\def\dopagenummer{0}}% + {\let\dopagenummer\!!zerocount}% \expanded - {\writeutilitycommand% - {\noexpand\listbetween% + {\writeutilitycommand + {\noexpand\listbetween {#1}% {\ascii}% {\sectionformat\sectionseparator\sectionseparator\dopagenummer}% @@ -163,7 +163,8 @@ \getvalue{\??li\c!alternative} -\def\setlistparameter#1#2{\@EA\def\csname\??li#1#2\endcsname} +\def\setlistparameter#1#2#3{\@EA\def\csname\??li#1#2\endcsname{#3}} % often +\def\listparameter #1{\csname\??li\currentlist#1\endcsname} \def\dosetuplist[#1][#2]% slow -) {\def\docommand##1% @@ -200,13 +201,13 @@ \c!width=3em, \c!alternative=\c!b, \c!style=\v!normal, - \c!textstyle=\getvalue{\??li#1\c!style}, - \c!numberstyle=\getvalue{\??li#1\c!style}, - \c!pagestyle=\getvalue{\??li#1\c!style}, + \c!textstyle=\listparameter\c!style, + \c!numberstyle=\listparameter\c!style, + \c!pagestyle=\listparameter\c!style, \c!color=, - \c!textcolor=\getvalue{\??li#1\c!color}, - \c!numbercolor=\getvalue{\??li#1\c!color}, - \c!pagecolor=\getvalue{\??li#1\c!color}, + \c!textcolor=\listparameter\c!style, + \c!numbercolor=\listparameter\c!style, + \c!pagecolor=\listparameter\c!style, \c!numbercommand=\listnumbercommand, \c!textcommand=\listtextcommand, \c!pagecommand=\listpagecommand, @@ -235,8 +236,7 @@ \c!textstyle,\c!textcolor,\c!textcommand, \c!pagestyle,\c!pagecommand,\c!pagecolor, \c!numberstyle,\c!numbercolor,\c!numbercommand, - \c!pagenumber,\c!pageboundaries,\c!margin,\c!symbol, - \c!limittext, + \c!pagenumber,\c!pageboundaries,\c!margin,\c!symbol,\c!limittext, \c!aligntitle,\c!before,\c!after,\c!inbetween,\v!part\c!number,\c!label]% \getparameters[\??li#1][#3]}}% \addutilityreset{#1}% @@ -246,7 +246,7 @@ \def\definelist {\dotripleempty\dodefinelist} -\def\iflijstgeplaatst{\ifutilitydone} % is now a mode +\def\iflijstgeplaatst{\ifutilitydone} % obsolete, is now a mode \def\placelist {\dodoubleempty\doplacelist} @@ -297,10 +297,11 @@ % \chapter{third} \section{EE} \section{FF} % \stoptypen -\def\dosettoclevel#1#2% +\def\dosettoclevel#1#2% todo: check if criterium is headid, else error {\ifundefined{#1#2\c!number}% \dosetfilterlevel{\getvalue{#1#2\c!criterium}}\empty \else + % \doifnot{#2}\v!local ... \doifelsevaluenothing{#1#2\c!number}% {\dosetfilterlevel{\getvalue{#1#2\c!criterium}}\empty} {\setsectieenkoppeling{\getvalue{#1#2\c!criterium}}% @@ -332,9 +333,7 @@ \def\listpagecommand #1{\strut#1} \def\doassigndimen#1#2#3% - {\doifinsetelse{#2}{\v!fit,\v!broad} - {#1=#3\relax} - {#1=#2\relax}} + {\doifinsetelse{#2}{\v!fit,\v!broad}{#1=#3}{#1=#2}\relax} % \let\dohandlelistnumber\firstofoneargument % @@ -342,51 +341,74 @@ \def\dohandlelistnumber#1{\separatednumber{#1}} -\let\currentlistsymbol\empty - \def\listsymbol[#1]#2% - {{\dosetlistsymbol{#1}{#2}\currentlistsymbol}} - -\def\dosetlistsymbol#1% #2% - {\executeifdefined - {listsymbol@\getvalue{\??li#1\c!symbol}}% - \listsymbol@default - {#1}} % {#2} - -\def\listsymbol@none#1#2% - {\def\currentlistsymbol% - {\doassigndimen{\dimen0}{\getvalue{\??li#1\c!width}}{1.5em}% - \hbox to \dimen0{}}} - -\def\listsymbol@one#1#2% - {\def\currentlistsymbol{\strut$\bullet$}} - -\def\listsymbol@two#1#2% - {\def\currentlistsymbol{\vrule\!!width1em\!!height1ex\!!depth\zeropoint}} - -\def\listsymbol@three#1#2% - {\def\currentlistsymbol % very slow - {{\doassigndimen{\dimen0}{\getvalue{\??li#1\c!width }}{1.5em}% - \doassigndimen{\dimen2}{\getvalue{\??li#1\c!height}}{1ex}% - \doassigndimen{\dimen4}{\getvalue{\??li#1\c!depth }}{0pt}% - \vrule\!!width\dimen0\!!height\dimen2\!!depth\dimen4}}} - -\def\listsymbol@default#1#2% - {\doifelsevalue{\??li#1\c!prefix}\v!no % ook nog eerste - {\edef\splitlistsymbol{\removefirstprefix{#2}}} - {\doifelsevalue{\??li#1\c!prefix}\v!none - {\edef\splitlistsymbol{\removeallprefixes{#2}}}% - {\def\splitlistsymbol{#2}}}% geen \edef ivm  enz - \def\currentlistsymbol% kan iets efficienter met \ifdone - {\doifvalue{\??li#1\c!label}\v!yes{\leftlabeltext{#1}}% - \strut - \def\numberseparator{\getvalue{\??li#1\c!separator}}% - \@EA\dohandlelistnumber\@EA{\splitlistsymbol}% - \getvalue{\??li#1\c!stopper}% - \doifvalue{\??li#1\c!label}\v!yes{\rightlabeltext{#1}}}} - -\def\listsymbol@unknown#1#2% - {\def\currentlistsymbol{\getvalue{\??li#1\c!symbol}}} + {\begingroup + \def\currentlist{#1}% + \def\currentlistnumber{#2}% + \currentlistsymbol + \endgroup} + +% Beware, the list symbol macro gets an argument passed, i.e. when this +% argument is not picked up, the symbol becomes a kind of prefix. + +% for historical reasons we're stuck to symbols, so in order to generalize, +% we have to hook it into the symbol handler; we need a beter clean up later +% +% < 2005 +% +% \def\dosetlistsymbol % #1 +% {\executeifdefined{listsymbol@\listparameter\c!symbol}\listsymbol@default} % {#1} +% +% >= 2005 +% +% at this symbol level, we have access to the raw 'number' in +% \currentlistnumber + +\definesymbol[\v!list][\v!none ][\listsymbol@none ] +\definesymbol[\v!list][\v!one ][\listsymbol@one ] +\definesymbol[\v!list][\v!two ][\listsymbol@two ] +\definesymbol[\v!list][\v!three ][\listsymbol@three ] +\definesymbol[\v!list][\s!default][\listsymbol@default] +\definesymbol[\v!list][\s!unknown][\listsymbol@unknown] + +\def\currentlistsymbol + {\doifinsymbolsetelse\v!list{\listparameter\c!symbol} + {\directsymbol\v!list{\listparameter\c!symbol}} + {\directsymbol\v!list\s!default}} + +\def\listsymbol@none + {\doassigndimen\scratchdimen{\listparameter\c!width}{1.5em}% + \hbox to \scratchdimen{}} + +\def\listsymbol@one + {\strut$\bullet$} + +\def\listsymbol@two + {\vrule\!!width1em\!!height1ex\!!depth\zeropoint} + +\def\listsymbol@three + {\begingroup + \doassigndimen{\dimen0}{\listparameter\c!width }{1.5em}% + \doassigndimen{\dimen2}{\listparameter\c!height}{1ex}% + \doassigndimen{\dimen4}{\listparameter\c!depth }\zeropoint + \vrule\!!width\dimen0\!!height\dimen2\!!depth\dimen4% + \endgroup} + +\def\listsymbol@default + {\doifelse{\listparameter\c!prefix}\v!no % ook nog eerste + {\edef\splitlistsymbol{\@EA\removefirstprefix\@EA{\currentlistnumber}}}% one level expansion + {\doifelse{\listparameter\c!prefix}\v!none + {\edef\splitlistsymbol{\@EA\removeallprefixes\@EA{\currentlistnumber}}}% + {\let\splitlistsymbol\currentlistnumber}}% geen \edef ivm  enz + \doif{\listparameter\c!label}\v!yes{\leftlabeltext\currentlist}% + \strut + \def\numberseparator{\listparameter\c!separator}% + \@EA\dohandlelistnumber\@EA{\splitlistsymbol}% + \listparameter\c!stopper + \doif{\listparameter\c!label}\v!yes{\rightlabeltext\currentlist}} + +\def\listsymbol@unknown + {\listparameter\c!symbol} % so far for list symbols @@ -413,75 +435,82 @@ \def\newlineinlist{\space} +\let\currentlist\s!unknown + \def\dolistelement#1#2#3#4#5#6% pas op: wordt ook elders gedefinieerd {\doiftoclevelelse[#5]{\dodolistelement{#1}{#2}{#3}{#4}{#5}{#6}}{}} \def\dodolistelement#1#2#3#4#5#6% - {\getvalue{\@@dodolistelement\getvalue{\??li#1\c!alternative}}% + {\def\currentlist{#1}% + \def\currentlistnumber{#3}% + \getvalue{\@@dodolistelement\listparameter\c!alternative}% %\showcomposition \let\@@iawidth\!!zeropoint % moet boolean worden \bgroup \edef\listelements - {\getvalue{\??li#1\c!pageboundaries}}% + {\listparameter\c!pageboundaries}% \ExpandBothAfter\doifinset{#3}\listelements {\showmessage\m!systems{14}{#3}% \page}% \egroup \dontcomplain - \setfullsectionnumber{\??li#1}% - \dosetlistsymbol{#1}{#3}% + \setfullsectionnumber{\??li\currentlist}% \dosomelistelement{#1}{#2}{#3}{#4}{#5}{#6}% \global\utilitydonetrue} -\def\dolistattributes#1#2#3% - {\doifvaluesomething{\??li#1#3} +\def\donestedlistattributes#1#2% + {\doifvaluesomething{\??li\currentlist#2} % color {\resetinteractionparameter\c!color \resetinteractionparameter\c!contrastcolor}% - \doattributes{\??li#1}{#2}{#3}} + \dolistattributes{#1}{#2}} + +\def\dostartlistattributes{\dostartattributes{\??li\currentlist}} +\def\dostoplistattributes {\dostopattributes} +\def\dolistattributes {\doattributes{\??li\currentlist}} \def\dodocommandlistelement#1#2#3#4#5#6% {\doifdefinedelse{\??li#1\c!command} - {\getvalue{\??li#1\c!command}% - {#3}{#4}{\pageprefix\??li#1[#5]\translatednumber[#5]}} - {[#1: #3 - #4 - \pageprefix\??li#1[#5]\translatednumber[#5]]}} + {\listparameter\c!command + {#3}{#4}{\pageprefix\??li\currentlist[#5]\translatednumber[#5]}} + {[\currentlist: #3 - #4 - \pageprefix\??li\currentlist[#5]\translatednumber[#5]]}} \def\dodofreelistelement#1#2#3#4#5#6#7#8% {\def\makelistelement##1##2% {\noindent % new and needed \hbox - {\doifelsevalue{\??li#1\c!interaction}{##1} % \??li ipv \??ia - {\setbox0\hbox{\showcontrastlocation{\??li#1}{#6}{##2}}% - \linklisttoelement{#1}{#2}{#5}{#6}{\box0}}%{\copy0}}% + {\doifelse{\listparameter\c!interaction}{##1} % \??li ipv \??ia + {\setbox0\hbox{\showcontrastlocation{\??li\currentlist}{#6}{##2}}% + \linklisttoelement{#2}{#5}{#6}{\box0}}%{\copy0}}% {##2}}}% - \getvalue{\??li#1\c!before}% can be \hskip + \listparameter\c!before% can be \hskip \doifdefinedelse{\??li#1\c!command} - {\makelistelement{\getvalue{\??li#1\c!interaction}}% this forces all - {\getvalue{\??li#1\c!command}% + {\makelistelement{\listparameter\c!interaction}% this forces all + {\listparameter\c!command {#3}% geen conversies etc {#4}% geen conversies etc - {\pageprefix\??li#1[#5]% + {\pageprefix\??li\currentlist[#5]% \translatednumber[#5]}}} {#7% \vbox {\forgetall \makelistelement\v!all {\makelistelement\v!sectionnumber - {\dolistattributes{#1}\c!numberstyle\c!numbercolor - {\getvalue{\??li#1\c!numbercommand}{\currentlistsymbol}}}% + {\donestedlistattributes\c!numberstyle\c!numbercolor + {\listparameter\c!numbercommand{\currentlistsymbol}}}% \makelistelement\v!text - {\dolistattributes{#1}\c!textstyle\c!textcolor + {\donestedlistattributes\c!textstyle\c!textcolor {\let\\=\newlineinlist \dontconvertfont - \getvalue{\??li#1\c!textcommand}{#4}}}% - \doifvalue{\??li#1\c!pagenumber}\v!yes + \listparameter\c!textcommand{#4}}}% + \doif{\listparameter\c!pagenumber}\v!yes {\doifsomething{#5} {\makelistelement\v!pagenumber - {\dolistattributes{#1}\c!pagestyle\c!pagecolor - {\getvalue{\??li#1\c!pagecommand} - {\pageprefix\??li#1[#5]% + {\donestedlistattributes\c!pagestyle\c!pagecolor + {\listparameter\c!pagecommand + {\pageprefix\??li\currentlist[#5]% \translatednumber[#5]}}}}}}}% #8}% - \getvalue{\??li#1\c!after}} + \listparameter\c!after} \def\dodofreehlistelement#1#2#3#4#5#6% {\dodofreelistelement{#1}{#2}{#3}{#4}{#5}{#6} @@ -492,78 +521,79 @@ {\ifvmode\nointerlineskip\fi} % at multi-line lists {\nointerlineskip\endgraf\allowbreak}} % -% to be documented: uitlijnen, hang +% to be documented: align, hang % now also in abc -\def\limitatedlistentry#1#2% - {\doifelsenothing{\??li#1\c!maxwidth} - {\getvalue{\??li#1\c!textcommand}{#2}} - {\getvalue{\??li#1\c!textcommand}% +\def\limitatedlistentry#1% + {\doifelsenothing{\listparameter\c!maxwidth} + {\listparameter\c!textcommand{#1}} + {\listparameter\c!textcommand {\limitatetext - {#2}% - {\getvalue{\??li#1\c!maxwidth}}% - {\splitsymbol{\getvalue{\??li#1\c!limittext}}}}}} + {#1}% + {\listparameter\c!maxwidth}% + {\splitsymbol{\listparameter\c!limittext}}}}} \def\dodofixdlistelementABC#1#2#3#4#5#6% weeden {\endgraf - \leftskip\getvalue{\??li#1\c!margin}% na de \endgraf ! - \getvalue{\??li#1\c!before}% - \!!widthc\getvalue{\??li#1\c!distance}% - \doifelsevalue{\??li#1\c!width}\v!fit + \leftskip\listparameter\c!margin% na de \endgraf ! + \listparameter\c!before + \!!widthc\listparameter\c!distance + \doifelse{\listparameter\c!width}\v!fit {\!!widtha\zeropoint} {\doifelsenothing{#3} - {\doifelsevalue{\??li#1\c!aligntitle}\v!yes + {\doifelse{\listparameter\c!aligntitle}\v!yes {\!!widtha\zeropoint \!!widthc\zeropoint} - {\!!widtha\getvalue{\??li#1\c!width}}} - {\!!widtha\getvalue{\??li#1\c!width}}}% - \getvalue{\??li\c!alternative\getvalue{\??li#1\c!alternative}}% + {\!!widtha\listparameter\c!width}} + {\!!widtha\listparameter\c!width}}% + \getvalue{\??li\c!alternative\listparameter\c!alternative}% \endgraf \def\makelistelement##1##2% - {\doifelsevalue{\??li#1\c!interaction}{##1} + {\doifelse{\listparameter\c!interaction}{##1} {\setbox0\hbox{\showcontrastlocation\??ia{#6}{##2}}% - \linklisttoelement{#1}{#2}{#5}{#6}{\box0}}%{\copy0}}% + \linklisttoelement{#2}{#5}{#6}{\box0}}%{\copy0}}% {\hbox{##2}}}% - \doifvalue{\??li#1\c!interaction}\v!text % not supported - {\setlistparameter{#1}\c!interaction\v!all}% + \doif{\listparameter\c!interaction}\v!text % not supported ! ! ! ! ! ! text == all + {\setlistparameter\currentlist\c!interaction\v!all}% % \makelistelement\v!all % {\hbox to \hsize + \dontleavehmode % new, else no margin \makelistelement\v!all {\setlocalhsize \hsize\localhsize \hbox to \hsize {\forgetall - \dostartattributes{\??li#1}\c!style\c!color\empty + \dostartlistattributes\c!style\c!color\empty \!!widthb\hsize \setbox2\hbox \ifdim\!!widtha>\zeropoint to \!!widtha \fi {\makelistelement\v!sectionnumber - {\dolistattributes{#1}\c!numberstyle\c!numbercolor - {\getvalue{\??li#1\c!numbercommand}{\currentlistsymbol}}% + {\donestedlistattributes\c!numberstyle\c!numbercolor + {\listparameter\c!numbercommand{\currentlistsymbol}}% \hfill}}% \setbox4\hbox - {\doifvalue{\??li#1\c!pagenumber}\v!yes + {\doif{\listparameter\c!pagenumber}\v!yes {\doifsomething{#5} % \listwidth is new ; temp hack {\hbox \ifdim\listwidth>\zeropoint to \listwidth\fi {\hfill \makelistelement\v!pagenumber - {\dolistattributes{#1}\c!pagestyle\c!pagecolor - {\getvalue{\??li#1\c!pagecommand}% - {\pageprefix\??li#1[#5]% + {\donestedlistattributes\c!pagestyle\c!pagecolor + {\listparameter\c!pagecommand + {\pageprefix\??li\currentlist[#5]% \translatednumber[#5]}}}}}}}% \vbox {\hsize\!!widthb - \setupalign[\getvalue{\??li#1\c!align}]% + \setupalign[\listparameter\c!align]% \ifdim\!!widtha<\hsize - \hangindent=\wd2 - \dimen2=\!!widthc % \getvalue{\??li#1\c!distance}% + \hangindent\wd2 + \dimen2=\!!widthc % \listparameter\c!distance \advance\hangindent \dimen2 - \hangafter=1 - \doifvalue{\??li#1\c!hang}\v!no{\hangafter\zerocount}% + \hangafter\plusone + \doif{\listparameter\c!hang}\v!no{\hangafter\zerocount}% \ifdim\wd4=\zeropoint % \ifvoid4 % we kunnen gewoon afbreken aan het eind \else \ifdim\listskip>\zeropoint\relax - \rightskip=\listskip\!!plus10em\relax - \parfillskip=-\rightskip + \rightskip\listskip\!!plus10em\relax + \parfillskip-\rightskip \fi \fi \else @@ -574,11 +604,11 @@ \box2\relax \hskip\dimen2 \bgroup - \dolistattributes{#1}\c!textstyle\c!textcolor + \donestedlistattributes\c!textstyle\c!textcolor {\let\\=\newlineinlist \dontconvertfont - %\getvalue{\??li#1\c!textcommand}{#4}}% - \limitatedlistentry{#1}{#4}}% + %\listparameter\c!textcommand{#4}}% + \limitatedlistentry{#4}}% %\carryoverpar % new otherwise wrong linespacing \egroup \ifdim\wd4=\zeropoint\relax % \ifvoid4 @@ -589,11 +619,12 @@ \relax \fi}% \hss - \dostopattributes}}% new + \dostoplistattributes}}% new + \endgraf % new, else problems with nointerlinespace and prevdepth \nointerlineskip % anders verkeerde spatiering bij multi-line \endgraf \allowbreak - \getvalue{\??li#1\c!after}} + \listparameter\c!after} % % example from the context list % @@ -621,56 +652,57 @@ % te gebruiken en die te letten \def\dodofixdlistelementD#1#2#3#4#5#6% - {%\leftskip=\getvalue{\??li#1\c!margin}% + {%\leftskip=\listparameter\c!margin \ifvmode - \advance\leftskip\getvalue{\??li#1\c!margin}% AANGEPAST + \advance\leftskip\listparameter\c!margin% AANGEPAST \fi \bgroup \ifvmode \noindent\leavevmode % leavevmode ? ? ? \fi - \doifvalue{\??li#1\c!interaction}\v!text % not supported - {\setlistparameter{#1}\c!interaction\v!sectionnumber}% - \doifvalue{\??li#1\c!interaction}\v!all % not supported - {\setlistparameter{#1}\c!interaction\v!sectionnumber}% + \doif{\listparameter\c!interaction}\v!text % not supported + {\setlistparameter\currentlist\c!interaction\v!sectionnumber}% + \doif{\listparameter\c!interaction}\v!all % not supported + {\setlistparameter\currentlist\c!interaction\v!sectionnumber}% \def\makelistelement##1##2% - {\doifelsevalue{\??li#1\c!interaction}{##1} + {\doifelse{\listparameter\c!interaction}{##1} {\setbox0\hbox{\showcontrastlocation\??ia{#6}{##2}}% - \linklisttoelement{#1}{#2}{#5}{#6}{\box0}}%{\copy0}}% + \linklisttoelement{#2}{#5}{#6}{\box0}}%{\copy0}}% {\hbox{##2}}}% - \setbox4=\hbox - {\doifvalue{\??li#1\c!pagenumber}\v!yes + \setbox4\hbox + {\doif{\listparameter\c!pagenumber}\v!yes {\doifsomething{#5} {\makelistelement\v!pagenumber - {\dolistattributes{#1}\c!pagestyle\c!pagecolor - {\getvalue{\??li#1\c!pagecommand} - {\pageprefix\??li#1[#5]% + {\donestedlistattributes\c!pagestyle\c!pagecolor + {\listparameter\c!pagecommand + {\pageprefix\??li\currentlist[#5]% \translatednumber[#5]}}}}}}% \donetrue - \doifnothing{#3}{\doifvaluenothing{\??li#1\c!symbol}\donefalse}% + \doifnothing{#3}{\doifnothing{\listparameter\c!symbol}\donefalse}% + % == \doifnothing{#3\listparameter\c!symbol}\donefalse \ifdone \hbox - {\getvalue{\??li#1\c!left}% + {\listparameter\c!left \makelistelement\v!sectionnumber - {\dolistattributes{#1}\c!numberstyle\c!numbercolor - {\getvalue{\??li#1\c!numbercommand}{\currentlistsymbol}}}% - \getvalue{\??li#1\c!right}% + {\donestedlistattributes\c!numberstyle\c!numbercolor + {\listparameter\c!numbercommand{\currentlistsymbol}}}% + \listparameter\c!right \hskip.5em}% \nobreak \fi \tolerance3500 % niet zomaar veranderen - \dolistattributes{#1}\c!textstyle\c!textcolor + \donestedlistattributes\c!textstyle\c!textcolor {\let\\=\newlineinlist \dontconvertfont - %\getvalue{\??li#1\c!textcommand}{#4}}% - \limitatedlistentry{#1}{#4}}% + %\listparameter\c!textcommand{#4}}% + \limitatedlistentry{#4}}% \ifvoid4\else \nobreak \hskip.75em\relax \nobreak \box4 \fi - \dimen0=\getvalue{\??li#1\c!distance}\relax + \dimen0=\listparameter\c!distance\relax \ifdim\dimen0<1em\relax \hskip1em\!!plus1em\!!minus.25em\relax \else @@ -681,20 +713,20 @@ \def\dodofixdlistelementE#1% {\dodofixdlistelementEFG {\setupinteraction[\c!strut=\v!no]} - {\localframed[\??li#1][\c!depth=\!!zeropoint,\c!color=]} - {#1}} + {\localframed[\??li\currentlist][\c!depth=\!!zeropoint,\c!color=]} + {}} \def\dodofixdlistelementF#1% {\dodofixdlistelementEFG {} - {\dosetraggedhbox{\getvalue{\??li#1\c!align}}\raggedbox} - {#1}} + {\dosetraggedhbox{\listparameter\c!align}\raggedbox} + {}} \def\dodofixdlistelementG#1% {\dodofixdlistelementEFG {} \midaligned - {#1}} + {}} \def\dodofixdlistelementEFG#1#2#3#4#5#6#7#8% {\noindent @@ -703,32 +735,32 @@ \let\\=\newlineinlist \setbox0\hbox {#2{\showcontrastlocation\??ia{#8}% - {\dostartattributes{\??li#3}\c!style\c!color\empty + {\dostartlistattributes\c!style\c!color\empty \ignorespaces\dontconvertfont\setstrut \begstrut - %\doifelsenothing{\??li#3\c!maxwidth} - % {\getvalue{\??li#3\c!textcommand}{#6}} - % {\getvalue{\??li#3\c!textcommand}{\limitatetext{#6}{\getvalue{\??li#3\c!maxwidth}}{\unknown}}}% - \limitatedlistentry{#3}{#6}% + %\doifelsenothing{\listparameter\c!maxwidth} + % {\listparameter\c!textcommand{#6}} + % {\listparameter\c!textcommand{\limitatetext{#6}{\listparameter\c!maxwidth}{\unknown}}}% + \limitatedlistentry{#6}% \endstrut % struts new - \dostopattributes}}}% - \linklisttoelement{#3}{#4}{#7}{#8}{\box0}}%{\copy0}}% + \dostoplistattributes}}}% + \linklisttoelement{#4}{#7}{#8}{\box0}}%{\copy0}}% \par % should be an option - \getvalue{\??li#3\c!inbetween}} + \listparameter\c!inbetween} % better: % -% \def\linklisttoelement#1#2#3#4#5% % list location format page data +% \def\linklisttoelement#1#2#3#4% % list location format page data % {\ifautocrossdocument -% \gotodestination{}{}{#1::\@@filterblocknumberpart[#3]}{#4}{#5}% +% \gotodestination{}{}{\currentlist::\@@filterblocknumberpart[#2]}{#3}{#4}% % \else -% \gotonextinternal{#1}{#2}{#4}{#5}% +% \gotonextinternal\currentlist{#1}{#3}{#4}% % \fi} % % but for the moment: -\def\linklisttoelement#1#2#3#4#5% % list location format page data - {\gotonextinternal{#1}{#2}{#4}{#5}} +\def\linklisttoelement#1#2#3#4% % list location format page data + {\gotonextinternal\currentlist{#1}{#3}{#4}} \def\writetolist[#1]#2#3% {\doifsomething{#1} @@ -743,9 +775,9 @@ % NOG ENGELS MAKEN -\def\listlength {\utilitylistlength} +\def\listlength{\utilitylistlength} \def\listwidth {\utilitylistwidth} -\def\listheight {\utilitylistheight} +\def\listheight{\utilitylistheight} \def\utilitylistlength {0} \def\utilitylistwidth {0pt} @@ -755,11 +787,10 @@ {\doiftoclevelelse[#5] {\doglobal\increment\utilitylistlength \hbox - {\doattributes - {\??li#1}\c!textstyle\c!textcolor + {\dolistattributes\c!textstyle\c!textcolor {\let\\=\newlineinlist \dontconvertfont - \getvalue{\??li#1\c!textcommand}{#4}}}% + \listparameter\c!textcommand{#4}}}% \global\utilitydonetrue} {}} @@ -855,7 +886,7 @@ \makesectionformat \doifelse{\@@nmstate}\v!start {\def\dopagenummer{\noexpand\pagenumber}} - {\def\dopagenummer{0}}% + {\let\dopagenummer\!!zerocount}% \expanded {\writeutilitycommand% {\noexpand\referencelistentry% @@ -895,7 +926,7 @@ \c!before=, \c!after=, #2]% - \setcounter{#1}{0}% + \resetcounter{#1}% \addutilityreset{#1}% \setvalue{\s!set #1}{\dodosetreferencelist {#1}}% \setvalue{\s!reset#1}{\dodoresetreferencelist{#1}}} @@ -995,7 +1026,7 @@ \def\setupremaininglistlength[#1]% {\getparameters[\??ll][#1]% - \xdef\listlengthcounter{0}} + \globallet\listlengthcounter\!!zerocount} \setupremaininglistlength [\c!left=\hss,\c!right=,\c!number=\v!yes, diff --git a/tex/context/base/core-ntb.tex b/tex/context/base/core-ntb.tex index c136b737a..b95b59edc 100644 --- a/tex/context/base/core-ntb.tex +++ b/tex/context/base/core-ntb.tex @@ -227,7 +227,7 @@ \def\setupTBLcell#1#2% cell over col over row {\setupTBLsection % already forgotten -\getvalue{\@@tblprefix\c!each\v!each}% +\getvalue{\@@tblprefix\v!each\v!each}% \getvalue{\@@tblprefix\c!y\v!each}% \getvalue{\@@tblprefix\c!x\v!each}% \getvalue{\@@tblprefix\c!y\v!oddeven{#1}}% diff --git a/tex/context/base/core-pos.tex b/tex/context/base/core-pos.tex index 9022fa131..52bef61b1 100644 --- a/tex/context/base/core-pos.tex +++ b/tex/context/base/core-pos.tex @@ -1797,12 +1797,12 @@ \def\dopresettextbackground#1% todo: \backgroundparameter {\ExpandFirstAfter\processaction % \EFA niet echt nodig [\getvalue{\??td#1\c!location}] - [ \v!text=>\let\dodostarttextbackground\dostarttextbackgroundtxt - \let\dodostoptextbackground \dostoptextbackgroundtxt, - \v!paragraph=>\let\dodostarttextbackground\dostarttextbackgroundpar - \let\dodostoptextbackground \dostoptextbackgroundpar, - \v!none=>\let\dodostarttextbackground\relax - \let\dodostoptextbackground \relax]% + [ \v!text=>\let\dodostarttextbackground\dostarttextbackgroundtxt + \let\dodostoptextbackground \dostoptextbackgroundtxt, + \v!paragraph=>\let\dodostarttextbackground\dostarttextbackgroundpar + \let\dodostoptextbackground \dostoptextbackgroundpar, + \v!none=>\let\dodostarttextbackground\relax + \let\dodostoptextbackground \relax]% \ifx\dodostarttextbackground\dostarttextbackgroundpar % untested \ifnum\textbackgrounddepth>\plusone % new \let\dodostarttextbackground\dostarttextbackgroundtxt diff --git a/tex/context/base/core-ref.tex b/tex/context/base/core-ref.tex index 49f8c4e24..cfa3d92b1 100644 --- a/tex/context/base/core-ref.tex +++ b/tex/context/base/core-ref.tex @@ -3529,17 +3529,17 @@ \def\dointeractionbuttons[#1][#2]% er is een verdeel macro \horizontalfractions {\iflocation + % BUG: fails when frame=off; best is to rewrite this macro \bgroup \doif\@@ibstate\v!stop\locationfalse \iflocation \ifsecondargument + \setupinteractionbar[#1]% \checkinteractionbar{1.5em}\v!broad\!!zeropoint % brrrrr - \setbox2=\hbox - {\setupsymbolset[\@@iasymbolset]% - \localframed[\??ib][#1,\c!background=]{\symbol[\v!previouspage]}}% + \setbox2\hbox + {\localframed[\??ib][\c!background=]{\symbol[\@@iasymbolset][\v!previouspage]}}% \!!heighta\ht2 % needed because we default to nothing - \setupinteractionbar[#1,\c!strut=\v!no]% - %\setupinteraction[\c!width=\!!zeropoint]% + \setupinteractionbar[\c!strut=\v!no]% \setinteractionparameter\c!width\!!zeropoint \!!counta\zerocount % new, was 1 \processallactionsinset @@ -3547,7 +3547,7 @@ [ \v!page=>\advance\!!counta 4, \v!subpage=>\advance\!!counta 4, \s!unknown=>\advance\!!counta 1]% - \ifdim\@@ibwidth=\!!zeropoint\relax + \ifdim\@@ibwidth=\zeropoint \!!widtha2em \advance\!!widtha \@@ibdistance % new \!!widthb\!!counta\!!widtha @@ -3561,13 +3561,11 @@ \divide\!!widtha \!!counta \!!widthb\@@ibwidth \fi - \def\goto##1% + \def\goto##1% clash ? {\setnostrut - \setupsymbolset[\@@iasymbolset]% \edef\localreference{##1}% - \dodocomplexbutton\??ib - [\c!height=\!!heighta,\c!width=\!!widtha]% - {\dontleavehmode\symbol[\localreference]}% + \expanded{\dodocomplexbutton\??ib[\c!height=\the\!!heighta,\c!width=\the\!!widtha]}% + {\dontleavehmode\symbol[\@@iasymbolset][\localreference]}% [\localreference]% \hss}% \hbox to \!!widthb diff --git a/tex/context/base/core-reg.tex b/tex/context/base/core-reg.tex index 9bf43bf45..03a491a35 100644 --- a/tex/context/base/core-reg.tex +++ b/tex/context/base/core-reg.tex @@ -817,11 +817,11 @@ {\useJSscripts[reg]% \useJSpreamblenow{LinkedRegisters}% \setupinteraction[\c!openpageaction=JS(UpdateRegisterField{\v!register})]% - \definereference[\v!reset \v!register][JS(ResetRegisterEntry{\v!register})]% - \definereference[\v!first \v!register][JS(GotoFirstRegisterEntry{\v!register})]% - \definereference[\v!previous \v!register][JS(GotoPreviousRegisterEntry{\v!register})]% + \definereference[\v!reset\v!register][JS(ResetRegisterEntry{\v!register})]% + \definereference[\v!first\v!register][JS(GotoFirstRegisterEntry{\v!register})]% + \definereference[\v!previous\v!register][JS(GotoPreviousRegisterEntry{\v!register})]% \definereference[\v!next\v!register][JS(GotoNextRegisterEntry{\v!register})]% - \definereference[\v!last \v!register][JS(GotoLastRegisterEntry{\v!register})]} + \definereference[\v!last\v!register][JS(GotoLastRegisterEntry{\v!register})]} \def\doinitializelinkregister#1% {} diff --git a/tex/context/base/core-sec.tex b/tex/context/base/core-sec.tex index 47d04e399..b3a0e4336 100644 --- a/tex/context/base/core-sec.tex +++ b/tex/context/base/core-sec.tex @@ -166,7 +166,7 @@ {\bgroup % added \globallet\voorafgaandenummer\empty \ifsectienummer - \doifvalue{\??sb\@@sectieblok\c!number}\v!yes % added + \doifvalue{\??sb\@@sectionblock\c!number}\v!yes % added {\doifelsevalue{\@@thenumber{#1}\c!sectionnumber}\v!yes \donetrue\donefalse \doifvalue{\@@thenumber{#1}\c!sectionnumber}\v!number @@ -207,13 +207,6 @@ {\voorafgaandenummer\convertednumber[#1]}% \egroup} -% \def\preparethenumber#1#2#3% {\??id#1} \number \result -% {\doifelsevaluenothing{#1\c!scheider} -% {\let\numberseparator\empty -% \let#3#2} -% {\unexpanded\def\numberseparator{\getvalue{#1\c!scheider}}% -% \edef#3{\@EA\separatednumber\@EA{#2}}}} % hm, etex - \def\preparethenumber#1#2#3% {\??id#1} \number \result {\doifelsevaluenothing{#1\c!separator} {\let\numberseparator\empty @@ -226,11 +219,6 @@ {\maakhetnummer[#1]% \hetnummer} -%\def\currentnumber[#1]% -% {%\getvalue{\getvalue{\@@thenumber{#1}\c!zetwijze}}% -% \getvalue{\getvalue{\@@thenumber{#1}\c!plaats}}% -% {\dotextprefix{\getvalue{\@@thenumber{#1}\c!tekst}}\lossenummer[#1]}} - \def\currentnumber[#1]% kan tekst hier weg ? {\dotextprefix{\getvalue{\@@thenumber{#1}\c!text}}\lossenummer[#1]} @@ -356,33 +344,33 @@ {\countervalue{\??se#1}} % zoeken op \??se % \def\@@sectionconversion#1% -% {\getvalue{\??cv\getvalue{\??se#1\@@sectieblok\c!conversie}}} +% {\getvalue{\??cv\getvalue{\??se#1\@@sectionblock\c!conversion}}} % suited for chinese too: % \def\@@sectionconversion#1#2% a doublure with \@@shortsectionnumber % {\ifnum#2=0 0\else % else troubles with \uchar -% \@EA\ifx\csname\??se#1\@@sectieblok\c!conversie\endcsname\relax -% \@EA\ifx\csname\??se#1\c!conversie\endcsname\relax +% \@EA\ifx\csname\??se#1\@@sectionblock\c!conversion\endcsname\relax +% \@EA\ifx\csname\??se#1\c!conversion\endcsname\relax % #2% % \else -% \getvalue{\??cv\getvalue{\??se#1\c!conversie}}{#2}% +% \getvalue{\??cv\getvalue{\??se#1\c!conversion}}{#2}% % \fi % \else -% \getvalue{\??cv\getvalue{\??se#1\@@sectieblok\c!conversie}}{#2}% +% \getvalue{\??cv\getvalue{\??se#1\@@sectionblock\c!conversion}}{#2}% % \fi % \fi} \def\@@sectionconversion#1#2% a doublure with \@@shortsectionnumber {\ifnum#2=0 0\else % else troubles with \uchar - \@EA\ifx\csname\??se#1\@@sectieblok\c!conversion\endcsname\relax + \@EA\ifx\csname\??se#1\@@sectionblock\c!conversion\endcsname\relax \@EA\ifx\csname\??se#1\c!conversion\endcsname\relax #2% \else \convertnumber{\getvalue{\??se#1\c!conversion}}{#2}% \fi \else - \convertnumber{\getvalue{\??se#1\@@sectieblok\c!conversion}}{#2}% + \convertnumber{\getvalue{\??se#1\@@sectionblock\c!conversion}}{#2}% \fi \fi} @@ -837,7 +825,7 @@ % suited for chinese too: % % \def\@@shortsectionnumber#1% -% {\@EA\ifx\csname\??se#1\@@sectieblok\c!conversie\endcsname\relax +% {\@EA\ifx\csname\??se#1\@@sectionblock\c!conversie\endcsname\relax % \@@sectionvalue{#1}% % \else % \@@sectionconversion{#1}{\@@sectionvalue{#1}}% @@ -847,7 +835,7 @@ % % \def\@@shortsectionnumber#1% % {\@EA\ifx\csname\??se#1\c!eigennummer\endcsname\relax -% \@EA\ifx\csname\??se#1\@@sectieblok\c!conversie\endcsname\relax +% \@EA\ifx\csname\??se#1\@@sectionblock\c!conversie\endcsname\relax % \@EA\ifx\csname\??se#1\c!conversie\endcsname\relax % \@@sectionvalue{#1}% % \else @@ -862,7 +850,7 @@ \def\@@shortsectionnumber#1% {\@EA\ifx\csname\??se#1\c!ownnumber\endcsname\relax - \@EA\ifx\csname\??se#1\@@sectieblok\c!conversion\endcsname\relax + \@EA\ifx\csname\??se#1\@@sectionblock\c!conversion\endcsname\relax \@EA\ifx\csname\??se#1\c!conversion\endcsname\relax \@@sectionvalue{#1}% \else @@ -875,60 +863,60 @@ \csname\??se#1\c!ownnumber\endcsname \fi} -\def\dosetlocalsectieblok#1#2#3% new \edef's +\def\dosetlocalsectionblock#1#2#3% new \edef's {\edef\@@sectiontype {#1}% - \edef\@@sectieblok {#2}% - \edef\@@sectieblokken{#3}} + \edef\@@sectionblock {#2}% + \edef\@@sectionblocks{#3}} % beware, the \resetsectionmarks generates some nodes that % will result in an additional last page, which needs to be % captured at the end -% \def\doaroundsectieblok#1% -% {\doifvaluesomething{\??sb#1\c!pagina} -% {\ExpandFirstAfter\page[\getvalue{\??sb#1\c!pagina}]}% +% \def\doaroundsectionblock#1% +% {\doifvaluesomething{\??sb#1\c!page} +% {\ExpandFirstAfter\page[\getvalue{\??sb#1\c!page}]}% % \resetsectioncounters\zerosection % was firstsection % \resetsectionmarks\zerosection} -% \def\dostartsectieblok#1#2% +% \def\dostartsectionblock#1#2% % {\begingroup -% \doaroundsectieblok{#1}% % going to a new page or so +% \doaroundsectionblock{#1}% % going to a new page or so % \getvalue{\??sb#1}% % set name of section block -% \getsectieblokomgeving{#1}% % special settings, grouped +% \getsectionblockenvironment{#1}% % special settings, grouped % %\expandafter\csname#2true\endcsname % obsolete % \setsystemmode{#1}% % can be used in conditionals -% \getvalue{\??sb\@@sectieblok\c!voor}% this one is not to be moved! -% \showmessage\m!structures1\@@sectieblokken} +% \getvalue{\??sb\@@sectionblock\c!before}% this one is not to be moved! +% \showmessage\m!structures1\@@sectionblocks} -% \def\dostopsectieblok -% {\showmessage\m!structures2\@@sectieblokken -% \getvalue{\??sb\@@sectieblok\c!na}% don't move -% \doaroundsectieblok\@@sectieblok +% \def\dostopsectionblock +% {\showmessage\m!structures2\@@sectionblocks +% \getvalue{\??sb\@@sectionblock\c!after}% don't move +% \doaroundsectionblock\@@sectionblock % \endgroup} -\def\doaroundsectieblok - {\doifvaluesomething{\??sb\@@sectieblok\c!page} - {\page[\getvalue{\??sb\@@sectieblok\c!page}]}% +\def\doaroundsectionblock + {\doifvaluesomething{\??sb\@@sectionblock\c!page} + {\page[\getvalue{\??sb\@@sectionblock\c!page}]}% \resetsectioncounters\zerosection % was firstsection \resetsectionmarks\zerosection} \def\dostartsectionblock#1#2% {\begingroup \getvalue{\??sb#1}% - \doaroundsectieblok -% \doifvaluesomething{\??sb\@@sectieblok\c!pagina}{\page[\getvalue{\??sb\@@sectieblok\c!pagina}]}% + \doaroundsectionblock +% \doifvaluesomething{\??sb\@@sectionblock\c!page}{\page[\getvalue{\??sb\@@sectionblock\c!page}]}% % \resetsectioncounters\zerosection % was firstsection % \resetsectionmarks\zerosection - \getsectieblokomgeving\@@sectieblok - \setsystemmode\@@sectieblok - \getvalue{\??sb\@@sectieblok\c!before}% - \showmessage\m!structures1\@@sectieblokken} + \getsectionblockenvironment\@@sectionblock + \setsystemmode\@@sectionblock + \getvalue{\??sb\@@sectionblock\c!before}% + \showmessage\m!structures1\@@sectionblocks} \def\dostopsectionblock - {\showmessage\m!structures2\@@sectieblokken - \getvalue{\??sb\@@sectieblok\c!after}% don't move - \doaroundsectieblok -% \doifvaluesomething{\??sb\@@sectieblok\c!pagina}{\page[\getvalue{\??sb\@@sectieblok\c!pagina}]}% + {\showmessage\m!structures2\@@sectionblocks + \getvalue{\??sb\@@sectionblock\c!after}% don't move + \doaroundsectionblock +% \doifvaluesomething{\??sb\@@sectionblock\c!page}{\page[\getvalue{\??sb\@@sectionblock\c!page}]}% % \resetsectioncounters\zerosection % was firstsection % \resetsectionmarks\zerosection \endgroup} @@ -940,17 +928,17 @@ \def\setupsectionblock {\dodoubleargument\dosetupsectionblock} -\long\def\setsectieblokomgeving#1#2% +\long\def\setsectionblockenvironment#1#2% {\long\setvalue{\??sb\s!do#1}{\do{#2}}} -\def\getsectieblokomgeving#1% +\def\getsectionblockenvironment#1% {\let\do\firstofoneargument\getvalue{\??sb\s!do#1}} \setvalue{\e!start\v!sectionblockenvironment}% - {\dosingleargument\dostartsectieblokomgeving} + {\dosingleargument\dostartsectionblockenvironment} -\def\dostartsectieblokomgeving[#1]% evt \pushendofline \popendofline - {\long\def\do##1##2{\setsectieblokomgeving{#1}{##1##2}}% +\def\dostartsectionblockenvironment[#1]% evt \pushendofline \popendofline + {\long\def\do##1##2{\setsectionblockenvironment{#1}{##1##2}}% \grabuntil{\e!stop\v!sectionblockenvironment}{\getvalue{\??sb\s!do#1}}} %D \starttyping @@ -978,7 +966,7 @@ \newcounter\currentsectionblock -\def\currentsection{\@@sectieblok} +\def\currentsection{\@@sectionblock} \def\dodefinesectionblock[#1][#2][#3]% {\getparameters @@ -990,9 +978,9 @@ #3]% \expandafter\newif\csname if#2\endcsname % better a mode \doglobal\increment\currentsectionblock - \setsectieblokomgeving{#1}{}% + \setsectionblockenvironment{#1}{}% \setevalue{\??sb#1}% - {\noexpand\dosetlocalsectieblok{\currentsectionblock}{#1}{#2}}% + {\noexpand\dosetlocalsectionblock{\currentsectionblock}{#1}{#2}}% \setvalue{\e!start#2}% {\dostartsectionblock{#1}{#2}}% \setvalue{\e!stop#2}% @@ -1001,14 +989,14 @@ \def\definesectionblock {\dotripleargument\dodefinesectionblock} -\def\sectiebloklabel#1#2% - {\@EA\ifx\csname\??ko#1\@@sectieblok\c!label\endcsname\relax +\def\sectionblocklabel#1#2% + {\@EA\ifx\csname\??ko#1\@@sectionblock\c!label\endcsname\relax \labeltexts{#1}{#2}% \else - \labeltexts{\getvalue{\??ko#1\@@sectieblok\c!label}}{#2}% + \labeltexts{\getvalue{\??ko#1\@@sectionblock\c!label}}{#2}% \fi} -\dosetlocalsectieblok{2}{\v!bodypart}{\v!bodymatter} % hm, dirty +\dosetlocalsectionblock{2}{\v!bodypart}{\v!bodymatter} % hm, dirty \def\setsectiontype[#1]% {\getvalue{\??sb#1}} @@ -1023,12 +1011,12 @@ \def\@@kolevel{1} \def\headlevel{\@@kolevel} -\def\dohandelpaginaafAA#1% +\def\dohandlepagebreakAA#1% {\ifnum\lastpenalty>0 \global\paginageblokkeerdtrue \fi} -\def\dohandelpaginaafAB#1% will be replaced by a more clever (signaling) mechanism (in beta) +\def\dohandlepagebreakAB#1% will be replaced by a more clever (signaling) mechanism (in beta) {\flushsidefloats \getvalue{\??ko#1\c!before}% %\whitespace vervangen door \noindent elders @@ -1048,21 +1036,21 @@ \fi \xdef\@@kolevel{\getvalue{\??se\@@sectie\c!level}}} -\def\dohandelpaginaafBB#1#2#3% +\def\dohandlepagebreakBB#1#2#3% {\doifinset{\getvalue{\??tk#2\c!state}}{\v!normal,\v!start} {\doifvaluesomething{\??ko#1#3} {\setuplayouttext[#2][\c!state=\getvalue{\??ko#1#3}]}}} -\def\dohandelpaginaafB#1% +\def\dohandlepagebreakB#1% {\doifvaluesomething{\??ko#1\c!page} {\def\resetcurrentsectionmarks% toegevoegd, zie \page {\resetsectionmarks{\previoussection\@@sectie}}% \page[\getvalue{\??ko#1\c!page}]% - \dohandelpaginaafBB{#1}\v!header\c!header - \dohandelpaginaafBB{#1}\v!text \c!text - \dohandelpaginaafBB{#1}\v!footer\c!footer}} + \dohandlepagebreakBB{#1}\v!header\c!header + \dohandlepagebreakBB{#1}\v!text \c!text + \dohandlepagebreakBB{#1}\v!footer\c!footer}} -\def\dohandelpaginaafX#1% zie doordefinieren / boven +\def\dohandlepagebreakX#1% zie doordefinieren / boven {\bgroup \!!countb\@@kolevel \advance\!!countb #1 @@ -1072,20 +1060,20 @@ \dosomebreak{\penalty\!!counta}% \egroup} -\def\handelpaginaaf#1% - {\dohandelpaginaafAA{#1}% +\def\handlepagebreak#1% + {\dohandlepagebreakAA{#1}% \ifnum\countervalue{\??se\previoussection\@@sectie}>\zerocount\relax \ifnum\countervalue{\??se\@@sectie}>\zerocount - \dohandelpaginaafB{#1}% + \dohandlepagebreakB{#1}% \else - \doifnotvalue{\??ko#1\c!continue}\v!yes{\dohandelpaginaafB{#1}}% + \doifnotvalue{\??ko#1\c!continue}\v!yes{\dohandlepagebreakB{#1}}% \fi \else - \dohandelpaginaafB{#1}% + \dohandlepagebreakB{#1}% \fi - \dohandelpaginaafAB{#1}} + \dohandlepagebreakAB{#1}} -\def\handelpaginaafC#1% +\def\handlepagebreakC#1% {\xdef\@@kolevel{\getvalue{\??se\@@sectie\c!level}}% \nobreak} @@ -1126,7 +1114,7 @@ \doifnothing\@@sectie {\edef\@@sectie{\getvalue{\??ko\@@koppeling\c!section}}}} -% \handelpaginaaf komt het eerst omdat eventueel +% \handlepagebreak komt het eerst omdat eventueel % subpaginanummers moeten worden afgehandeld. Vervolgens % worden de nummers opgehoogd en referenties geset, dan % volgt de kop en tot slot de worden de marks en de prefix @@ -1190,7 +1178,7 @@ % \doifelsevalue{\??ko#1\c!eigennummer}\v!ja % {\def\someheadconversion{#2}} % {\bepaalkopnummer[#1]% -% \@EA\ifx\csname\??se\@@sectie\@@sectieblok\c!kopconversie\endcsname\relax +% \@EA\ifx\csname\??se\@@sectie\@@sectionblock\c!kopconversie\endcsname\relax % \@EA\ifx\csname\??se\@@sectie\c!kopconversie\endcsname\relax % \def\someheadconversion{#2}% % \else @@ -1203,12 +1191,12 @@ % \fi % \fi % \else -% \@EA\ifx\csname\??se\@@sectie\@@sectieblok\c!kopconversie\endcsname\empty +% \@EA\ifx\csname\??se\@@sectie\@@sectionblock\c!kopconversie\endcsname\empty % \def\someheadconversion{#2}% % \else % \someheadconversiontrue % \def\someheadconversion% -% {\fullsectionnumber{#1}{\getvalue{\??se\@@sectie\@@sectieblok\c!kopconversie}}{#2}}% +% {\fullsectionnumber{#1}{\getvalue{\??se\@@sectie\@@sectionblock\c!kopconversie}}{#2}}% % \fi % \fi}} % @@ -1221,7 +1209,7 @@ \def\someheadconversion{#2}} {\letgvalue{\??se\@@sectie\c!ownnumber}\relax \determineheadnumber[#1]% - \@EA\ifx\csname\??se\@@sectie\@@sectieblok\c!headconversion\endcsname\relax + \@EA\ifx\csname\??se\@@sectie\@@sectionblock\c!headconversion\endcsname\relax \@EA\ifx\csname\??se\@@sectie\c!headconversion\endcsname\relax \def\someheadconversion{#2}% \else @@ -1234,12 +1222,12 @@ \fi \fi \else - \@EA\ifx\csname\??se\@@sectie\@@sectieblok\c!headconversion\endcsname\empty + \@EA\ifx\csname\??se\@@sectie\@@sectionblock\c!headconversion\endcsname\empty \def\someheadconversion{#2}% \else \someheadconversiontrue \def\someheadconversion% - {\fullsectionnumber{#1}{\getvalue{\??se\@@sectie\@@sectieblok\c!headconversion}}{#2}}% + {\fullsectionnumber{#1}{\getvalue{\??se\@@sectie\@@sectionblock\c!headconversion}}{#2}}% \fi \fi}} @@ -1247,7 +1235,7 @@ \def \ignoredfullsectionnumber#1#2#3{#3} \let \storedfullsectionnumber \relax % \def\expandablefullsectionnumber#1#2#3{#3} -%\unexpanded\def \naturalfullsectionnumber#1#2#3{\sectiebloklabel{#1}{\getvalue{\??cv#2}{#3}}} +%\unexpanded\def \naturalfullsectionnumber#1#2#3{\sectionblocklabel{#1}{\getvalue{\??cv#2}{#3}}} %\unexpanded\def \limitedfullsectionnumber#1#2#3{\getvalue{\??cv#2}{#3}} % under test: @@ -1258,7 +1246,7 @@ {\convertnumber{#2}{#3}} \unexpanded\def\naturalfullsectionnumber#1#2#3% - {\sectiebloklabel{#1}{\convertnumber{#2}{#3}}} + {\sectionblocklabel{#1}{\convertnumber{#2}{#3}}} \unexpanded\def\limitedfullsectionnumber#1#2#3% {\convertnumber{#2}{#3}} @@ -1330,27 +1318,19 @@ \else \let\localkoprefix\empty \fi -% \doifelsevalue{\??ko#1\c!plaatskop}\v!ja -% \placeheadtrue\placeheadfalse -% \processaction -% [\getvalue{\??ko#1\c!plaatskop}] -% [ \v!ja=>\placeheadtrue \emptyheadfalse, -% \v!leeg=>\placeheadtrue \emptyheadtrue, -% \v!nee=>\placeheadfalse\emptyheadtrue]% \placeheadtrue \processaction [\getvalue{\??ko#1\c!placehead}] [ \v!yes=>\emptyheadfalse, \v!empty=>\emptyheadtrue, - \v!no=>\emptyheadtrue\placeheadfalse]% -% + \v!no=>\emptyheadtrue\placeheadfalse]% \doifelsevalue{\??ko#1\c!resetnumber}\v!no {\setfalse\@@resetsubheadnumbers}% {\settrue \@@resetsubheadnumbers}% \writetolistfalse \processaction [\getvalue{\??ko#1\c!incrementnumber}] - [ \v!yes=>\incrementnumbertrue, + [ \v!yes=>\incrementnumbertrue, \v!no=>\incrementnumberfalse, \v!list=>\incrementnumberfalse % beware, since no numbers are used, no nested lists are @@ -1366,7 +1346,7 @@ \displaysectionheadfalse \displaysectionheadtrue \ifsectienummer - \doifelsevalue{\??sb\@@sectieblok\c!number}\v!yes + \doifelsevalue{\??sb\@@sectionblock\c!number}\v!yes {\doifelsevalue{\??ko#1\c!number}\v!yes \headnumbertrue \headnumberfalse} @@ -1381,7 +1361,7 @@ % \ifincrementnumber \ifplacehead - \checknexthead\handelpaginaaf{#1}% + \checknexthead\handlepagebreak{#1}% \setsectieenkoppeling{#1}% can be changed when [voor=\somehead{..}...] \ifheadprefix %\setupreferencing[\c!prefix=-]% @@ -1395,7 +1375,7 @@ \getvalue{\??ko#1\c!inbetween}% \ifsomeheadconversion \let\fullsectionnumber\naturalfullsectionnumber - \doplaatskopnummertekst + \doplaceheadnumbertext {#1} {\setsectionlistreference{\@@sectie}{#1}% \pagetype[\@@koppeling]% @@ -1413,7 +1393,7 @@ \let\fullsectionnumber\ignoredfullsectionnumber \writesection{#1}{\someheadconversion}{#4}% \else - \doplaatskopnummertekst + \doplaceheadnumbertext {#1} {\setsectionlistreference{\@@sectie}{#1}% \pagetype[\@@koppeling]% @@ -1421,7 +1401,7 @@ \resetsectionmarks\@@sectie \setlistparameter\@@koppeling\c!expansion{\getvalue{\??ko#1\c!expansion}}% \dowritetolist\@@koppeling{#3}{#4}\v!head} - {\sectiebloklabel{#1}{\dohandleheadnumber{#3}}}% handle is new + {\sectionblocklabel{#1}{\dohandleheadnumber{#3}}}% handle is new {#4} {\marking[#1]{#4}% \doifelsevalue{\??ko#1\c!ownnumber}\v!yes % rommelig omdat @@ -1439,7 +1419,10 @@ \rawreference\s!sec{#2}{{#3}{\asciititle}}% \resetsectionmarks\@@sectie \setlistparameter\@@koppeling\c!expansion{\getvalue{\??ko#1\c!expansion}}% - \dowritetolist\@@koppeling{}{#4}\v!head} +\doifelsevalue{\??ko#1\c!ownnumber}\v!yes % brrr, new per 18/1/2005, sometimes we need + {\dowritetolist\@@koppeling{#3}{#4}\v!head} % entries in the list (special purpose) but + {\dowritetolist\@@koppeling {}{#4}\v!head}% not in the header, ok we could pop in a command +}% \dowritetolist\@@koppeling{}{#4}\v!head} {#4} {\marking[#1]{#4}% \doifelsevalue{\??ko#1\c!ownnumber}\v!yes % brrr @@ -1466,7 +1449,7 @@ % % do nothing / should be vbox to 0pt % - \checknexthead\dohandelpaginaafB{#1}% toegevoegd ivm subpaginanr / tug sheets + \checknexthead\dohandlepagebreakB{#1}% toegevoegd ivm subpaginanr / tug sheets \setsectieenkoppeling{#1}% can be changed when [voor=\somehead{..}...] \ifheadprefix \setupreferenceprefix[-]% @@ -1506,7 +1489,7 @@ \else % todo : ref prefix \ifplacehead - \checknexthead\handelpaginaaf{#1}% + \checknexthead\handlepagebreak{#1}% \setsectieenkoppeling{#1}% can be changed when [voor=\somehead{..}...] \getvalue{\??ko#1\c!inbetween}% \doplaceheadtext @@ -1525,7 +1508,7 @@ \fi \else % do nothing / should be vbox to 0pt - \checknexthead\handelpaginaaf{#1}% + \checknexthead\handlepagebreak{#1}% \setsectieenkoppeling{#1}% can be changed when [voor=\somehead{..}...] \getvalue{\??ko#1\c!inbetween}% \forcesectiontolist{#1}{#4}% @@ -1703,7 +1686,7 @@ \fi \endheadplacement{#1}{#4}} -\def\doplaatskopnummertekst#1#2#3#4#5% maybe move modes outside box +\def\doplaceheadnumbertext#1#2#3#4#5% maybe move modes outside box {\beginheadplacement{#1}% \ifemptyhead % = needed \setbox0=\ifvertical\vbox\else\hbox\fi to \zeropoint @@ -1864,7 +1847,7 @@ {\ifhmode \scratchcounter=\lastpenalty\unpenalty % no beauty in this \ifdim\lastskip=\headsignal - \handelpaginaafC{#1}% + \handlepagebreakC{#1}% \global\continuousheadtrue \else \penalty\scratchcounter @@ -1967,27 +1950,6 @@ {\localheadsetup\noindent#2}% \fi} -% \defineheadplacement[\v!inmarge][\v!vertikaal]#1#2% -% {\vbox -% {\localheadsetup -% \begstrut % but use one \strut here! -% \ifheadnumbercontent -% \llap{\hbox to 5em{\hfill{#1}\hskip\linkermargeafstand}}% -% \fi -% {#2}}} - -% \defineheadplacement[\v!inmarge][\v!vertikaal]#1#2% -% {\vbox -% {\scratchdimen\linkermargeafstand -% \advance\scratchdimen\leftskip -% \edef\plaatskopinmarge{\the\scratchdimen}% re-use saves hash entry -% \localheadsetup -% \begstrut % but use one \strut here! -% \ifheadnumbercontent -% \llap{\hbox to 5em{\hfill{#1}\hskip\plaatskopinmarge}}% -% \fi -% {#2}}} - \def\placeheadmargin#1#2% {\vbox {\localheadsetup diff --git a/tex/context/base/core-spa.tex b/tex/context/base/core-spa.tex index 488b63c88..6baa67782 100644 --- a/tex/context/base/core-spa.tex +++ b/tex/context/base/core-spa.tex @@ -2171,13 +2171,21 @@ #1\minusone \fi} +% \def\setpenalties#1#2#3% +% {\ifx#1\undefined\else % space before #3 prevents lookahead problems, needed when #3=text +% #1\numexpr(#2+1)\space\doexpandedrecurse{\the\numexpr(#2)}{ #3}\zerocount\relax +% \fi} + \def\setpenalties#1#2#3% {\ifx#1\undefined\else % space before #3 prevents lookahead problems, needed when #3=text - #1\numexpr(#2+1)\space\doexpandedrecurse{\the\numexpr(#2)}{ #3}\zerocount\relax + #1\numexpr#2+\plusone\relax\space\doexpandedrecurse{\the\numexpr#2\relax}{ #3}\zerocount\relax \fi} +% \def\doexpandedrecurse#1#2% +% {\ifnum#1>\zerocount#2\@EA\doexpandedrecurse\@EA{\the\numexpr(#1-1)}{#2}\fi} + \def\doexpandedrecurse#1#2% - {\ifnum#1>\zerocount#2\@EA\doexpandedrecurse\@EA{\the\numexpr(#1-1)}{#2}\fi} + {\ifnum#1>\zerocount#2\@EA\doexpandedrecurse\@EA{\the\numexpr#1-1\relax}{#2}\fi} \endETEX @@ -3852,7 +3860,7 @@ % \vskip10pt % \hrule width10cm \endgraf -% etex only, evt splitskip macro gebruiken (syst-new) +% ! ! ! etex only, evt splitskip macro gebruiken (syst-new) \newskip\simplifiedskip \newskip\simplifiedcounter @@ -3869,10 +3877,10 @@ \def\getsimplifiedskip#1#2% {\simplifiedskip#1\relax - \ifdim\simplifiedskip=\zeropoint + \ifzeropt\simplifiedskip % \ifdim\simplifiedskip=\zeropoint #2\zerocount \else - \simplifiedcounter\dimexpr(10\dimexpr(#1/10))\relax + \simplifiedcounter\dimexpr10\dimexpr#1/10\relax\relax \advance\simplifiedskip-\simplifiedcounter #2\number\simplifiedskip\relax \fi} diff --git a/tex/context/base/core-syn.tex b/tex/context/base/core-syn.tex index 7f8a35149..0b6685a30 100644 --- a/tex/context/base/core-syn.tex +++ b/tex/context/base/core-syn.tex @@ -28,7 +28,7 @@ \newif\ifsynonymmeaning -% \def\currentsynonymparameter#1{\csname\??sm\currentsynonym#1\endcsname} +% todo: \def\synonymparameter#1{\csname\??sm\currentsynonym#1\endcsname} \def\dosetupsynonyms[#1][#2]% {\getparameters[\??sm#1][#2]} diff --git a/tex/context/base/font-ini.tex b/tex/context/base/font-ini.tex index fc07a4d52..7fa2610eb 100644 --- a/tex/context/base/font-ini.tex +++ b/tex/context/base/font-ini.tex @@ -1217,8 +1217,8 @@ %D We could instead have used dirty grouping tricks, but this %D one works too. -\def\defaultrelativefontsize{1} -\def\localrelativefontsize {1} +\let\defaultrelativefontsize \plusone +\let\localrelativefontsize \plusone \def\localabsolutefontsize {\fontbody} \let\relativefontsize \defaultrelativefontsize @@ -1320,21 +1320,21 @@ \xdef\somefontspec{ at \the\scaledfont}} \def\getfontparameters - {\expandafter\setfontparameter\@@fontdata,]=,} + {\expandafter\dogetfontparameter\@@fontdata,]=,} \def\getglobalfontparameters - {\expandafter\setglobalfontparameter\@@fontdata,]=,} + {\expandafter\dogetglobalfontparameter\@@fontdata,]=,} -\def\setfontparameter#1=#2,% +\def\dogetfontparameter#1=#2,% {\if]#1\else \expandafter\def\csname\??ff\@@fontfile#1\endcsname{#2}% - \expandafter\setfontparameter + \expandafter\dogetfontparameter \fi} -\def\setglobalfontparameter#1=#2,% +\def\dogetglobalfontparameter#1=#2,% {\if]#1\else \expandafter\gdef\csname\??ff\@@fontfile#1\endcsname{#2}% - \expandafter\setglobalfontparameter + \expandafter\dogetglobalfontparameter \fi} \let\@@fontencoding\empty @@ -1710,7 +1710,6 @@ \else \unexpanded\setvalue{#1}{\dododefinefont{#1}{#2}}% \fi} -% {\definefont[#1][#2 sa 1][#3]}} {\definefont[#1][#2 sa *][#3]}} %\def\redodefinefont#1#2#3% @@ -2669,7 +2668,7 @@ %D sequence of a session. After the loading job is done, the %D macro relaxes itself and reset the signal. -\def\preloadfonts% +\def\preloadfonts {\showmessage\m!fonts6{\normalizedbodyfontsize\normalspace\fontstyle}% \global\loadingfontsfalse \doswitchpoints[\normalizedbodyfontsize]% diff --git a/tex/context/base/hand-def.tex b/tex/context/base/hand-def.tex index 8cc5ff1d6..280769750 100644 --- a/tex/context/base/hand-def.tex +++ b/tex/context/base/hand-def.tex @@ -513,7 +513,7 @@ % hz variants -\definefonthandling [hz] [hz,extended] [\c!type=\v!hz] +\definefonthandling [hz] [hz,extended] [\c!type=\v!hz] % min=20 max=20 step=5 % combined variants diff --git a/tex/context/base/mult-ini.tex b/tex/context/base/mult-ini.tex index 95c89b228..19e87e591 100644 --- a/tex/context/base/mult-ini.tex +++ b/tex/context/base/mult-ini.tex @@ -71,6 +71,7 @@ \def\k!prefix!{k!} \def\l!prefix!{l!} \def\m!prefix!{m!} \def\p!prefix!{p!} \def\r!prefix!{r!} \def\s!prefix!{s!} \def\v!prefix!{v!} \def\x!prefix!{x!} \def\y!prefix!{y!} +\def\t!prefix!{t!} %D \macros %D [constants,variables,commands] @@ -153,6 +154,10 @@ \def\definereferenceconstant #1#2{\setvalue{\r!prefix!#1}{#2}} \def\definefileconstant #1#2{\setvalue{\f!prefix!#1}{#2}} +%D A new one: + +\def\definetypescriptconstant#1#2{\setvalue{\t!prefix!#1}{#2}} + %D And finaly we have the one argument, space saving constants %D %D \starttyping diff --git a/tex/context/base/mult-sys.tex b/tex/context/base/mult-sys.tex index 62cb8a4c8..d0ad04f74 100644 --- a/tex/context/base/mult-sys.tex +++ b/tex/context/base/mult-sys.tex @@ -656,6 +656,14 @@ \definefileconstant {filfilename} {cont-fil} \definefileconstant {modfilename} {cont-mod} +%D Handy for typescripts: + +\definetypescriptconstant {name} {name} +\definetypescriptconstant {default} {default} +\definetypescriptconstant {map} {map} +\definetypescriptconstant {special} {special} +\definetypescriptconstant {size} {size} + %D The next two files specify user settings as well as %D \TEXEXEC\ settings when generating a format. diff --git a/tex/context/base/page-ini.tex b/tex/context/base/page-ini.tex index 96703a789..16315a924 100644 --- a/tex/context/base/page-ini.tex +++ b/tex/context/base/page-ini.tex @@ -1497,7 +1497,7 @@ \let\resetcurrentsectionmarks\relax -% was: \resetsectionmarks\firstsection, zie \handelpaginaaf +% was: \resetsectionmarks\firstsection, zie \handlepagebreak \def\page {\pagebreak} % the short form of \pagebreak (mult-com one) \def\page{\pagebreak} % for the moment, keep this one diff --git a/tex/context/base/prop-ini.tex b/tex/context/base/prop-ini.tex index f77bb4633..db6a45c8d 100644 --- a/tex/context/base/prop-ini.tex +++ b/tex/context/base/prop-ini.tex @@ -159,6 +159,8 @@ \letvalue{\??py\s!empty}\empty +% beware, normally \*parameter concerns the current one + \def\propertyparameter#1#2% expands to #1 when not defined (see \define...) {\csname\??py \ifcsname\??py#1#2\endcsname diff --git a/tex/context/base/spec-dpm.tex b/tex/context/base/spec-dpm.tex index 74fb16963..f306c4a5c 100644 --- a/tex/context/base/spec-dpm.tex +++ b/tex/context/base/spec-dpm.tex @@ -30,7 +30,9 @@ %D Literal \PDF\ inclusion is implemented as: -\def\PDFcode#1{\special{pdf: content #1}} +\def\PDFcode #1{\special{pdf: content #1}} +\def\PDFcontentcode#1{\special{pdf: content #1}} +\def\PDFdirectcode #1{\special{pdf: literal #1}} %D \macros %D {dosetuppaper} diff --git a/tex/context/base/spec-dpx.tex b/tex/context/base/spec-dpx.tex index 1641e0daa..c665ce289 100644 --- a/tex/context/base/spec-dpx.tex +++ b/tex/context/base/spec-dpx.tex @@ -52,7 +52,9 @@ %D %D Literal \PDF\ inclusion is implemented as: -\def\PDFcode#1{\special{pdf: literal #1}} % no direct in pdftex ! ! ! +\def\PDFcode #1{\special{pdf: literal #1}} +\def\PDFcontentcode#1{\special{pdf: literal #1}} +\def\PDFdirectcode #1{\special{pdf: literal direct #1}} %D \type{\dosetuppaper} in \type{spec-dpm} did not work properly %D because DVIPDFM did not permit changing the page size. diff --git a/tex/context/base/spec-fdf.tex b/tex/context/base/spec-fdf.tex index 07551aa78..f8aeb4fba 100644 --- a/tex/context/base/spec-fdf.tex +++ b/tex/context/base/spec-fdf.tex @@ -1282,6 +1282,8 @@ \def\FDFflagPopUp {131072} % 18 \def\FDFflagEdit {262144} % 19 +\def\FDFflagRadiosInUnison {33554412} % 26 + %D A few more (pdf 1.4) flags, what the spell check one: for %D obscure reasons for Adobe downward compatibility means %D enabling features that harm old applications like testing. @@ -1368,25 +1370,32 @@ \let\FDFdefaultindex\!!zerocount \let\FDFdefaultvalue\empty +% Why do we need to tweak this mechanism each time acrobat updates ... +% it would make sense to have version specific sections in pdf files +% since my guess is that it never will be done right since each year +% new programmers have new ideas about what is supposed to happen with +% kids. So .. best is not to trust this feature esp not for radio +% widgets. (new flags, different interpretation of AS etc etc) + \def\setFDFvalues[#1][#2]% #1 = list (item=>value) #2 = default {\let\FDFvalues \empty %when radio opt works ok %\let\FDFfirstvalues \empty %\let\FDFsecondvalues\empty - %\let\FDFkidlist \empty + \let\FDFkidlist \empty %\let\FDFdefaultindex\!!zerocount %\let\FDFdefaultvalue\empty %\scratchcounter\zerocount \def\dodocommando##1=>##2=>##3\end - {%\addtocommalist{##1}\FDFkidlist + {\addtocommalist{##1}\FDFkidlist %\edef\FDFfirstvalues{\FDFfirstvalues(##1)}% %\doif{##1}{#2}{\edef\FDFdefaultindex{\the\scratchcounter}}% %\advance\scratchcounter\plusone \doifelsenothing{##2} - {%\doif{##1}{#2}{\edef\FDFdefaultvalue{##1}}% + {\doif{##1}{#2}{\edef\FDFdefaultvalue{##1}}% %\edef\FDFsecondvalues{\FDFsecondvalues(##1)}% \edef\FDFvalues{\FDFvalues [(##1)(##1)] }} - {%\doif{##1}{#2}{\edef\FDFdefaultvalue{##2}}% + {\doif{##1}{#2}{\edef\FDFdefaultvalue{##2}}% %\edef\FDFsecondvalues{\FDFsecondvalues(##2)}% \edef\FDFvalues{\FDFvalues [(##2)(##1)] }}}% ! ##1 is shown \def\docommando##1% @@ -1781,13 +1790,16 @@ \def\docommando##1% {\doPDFgetobjectreference{FDF}{#1##1}\PDFobjectreference \edef\FDFkids{\FDFkids\PDFobjectreference\space}}% - \@EA\processcommalist\@EA[#2]\docommando} + \@EA\processcommalist\@EA[#2]\docommando + \ifx\FDFkids\empty\else\edef\FDFkids{/Kids [\FDFkids]}\fi +% \edef\FDFkids{/Kids [\FDFkids]}% + } %D \macros %D {doFDFpresetlinefield,doFDFpresettextfield, %D doFDFpresetchoicefield,doFDFpresetpopupfield,doFDFpresetcombofield, %D doFDFpresetpushfield,doFDFpresetcheckfield, -%D doFDFpresetradiofield,doFDFpresetradiorecord} +%D doFDFpresetfield,doFDFpresetradiorecord} %D %D I would say: read the \PDF\ reference manual first and see %D what happens here next. Lucky us that they have so much in @@ -1820,7 +1832,7 @@ \doPDFdictionaryobject class FDF name #1 data {/T (#1) /FT /Tx /MaxLen \ifcase0#5 1000 \else#5 \fi - /Kids [\FDFkids] + \FDFkids\space %/DV (#4) /V (#4) % value added /DV (\FDFtext) /V (\FDFtext) % value added /Ff \FDFflag\space @@ -1882,7 +1894,7 @@ \setFDFkids[kids:][\currentFDFkids]% \doPDFdictionaryobject class FDF name #1 data {/T (#1) /FT /Ch - /Kids [\FDFkids] + \FDFkids\space /DV (#4) /V (#4) /Ff \FDFflag\space /F \FDFplus\space @@ -1946,13 +1958,14 @@ /F \FDFplus\space \FDFlayer\space \FDFappearance\space +% /IF << /SW /N >> % strange, only works for stupid buttons \FDFactions}% \registerFDFobject{#1}% \or % no appearance and layer ? \setFDFkids[kids:][\currentFDFkids]% \doPDFdictionaryobject class FDF name #1 data {/T (#1) /FT /Btn - /Kids [\FDFkids] + \FDFkids\space \ifFDFvalues /DV /\FDFdefault\space /V /\FDFdefault\space @@ -2032,7 +2045,7 @@ \doPDFgetobjectreference{FDF}{#6}\PDFobjectreference \doPDFdictionaryobject class FDF name #1 data {/Parent \PDFobjectreference\space - /Kids [\FDFkids] + \FDFkids\space /F \FDFplus\space \FDFactions}% \registerFDFobject{#1}% @@ -2075,12 +2088,32 @@ % \def\docommando##1{\edef\FDFstrings{\FDFstrings(##1)}}% % \processcommacommand[#1]\docommando} +% Beware, RadiosInUnison is really needed in the pre 1.5/6 time this +% was the default but out of a sudden it's no longer the case. Also +% the NoToggleToOff interferes with kids of kids and both it will +% break older documents, i.e. so much for pdf as standard. With +% features like widgets we can probably best wait till adobe tools +% themselves support it because that's probably the moment that +% functionality gets frozen/becomes definitive. Actually, acrobat +% flattens the kids tree, so that's yet another situation. The +% interesting thing is that it worked ok in acrobat 2/3 but got bugged +% in later versions. [The rationale is in html compatibility, which +% seems to be more important than compatibility of documents, which in +% turn renders acrobat useless for forms.] Anyway, synchronization is +% broken or not depending on the combination pdfversion/acrobatversion. + \def\doFDFpresetradiorecord#1#2#3#4#5% {\bgroup - \setFDFswitches[Radio,NoToggleToOff,#3]% - \setFDFkids[#4][]% -%\setFDFvalues[#4][#2]% -%\expanded{\setFDFkids[][\FDFkidlist]}% + % < pdf 1.5 (1.5 was broken) + % \setFDFswitches[Radio,NoToggleToOff,RadiosInUnison,#3]% + % > pdf 1.5 + \setFDFswitches[Radio,RadiosInUnison,#3]% + % older, else fatal error + % \setFDFkids[#4][]% + % newer + \setFDFvalues[#4][#2]% inits kidlist + \expanded{\setFDFkids[][\FDFkidlist]}% + % \setFDFactions[#5]% \doPDFdictionaryobject class FDF name #1 data {%/Subtype /Widget @@ -2095,14 +2128,14 @@ /H /N % /opt is buggy in 5.05, only works once, sigh %\ifx\FDFfirstvalues\FDFsecondvalues - /V /#2 + /V /#2 %\else % /V /\FDFdefaultindex\space % /Opt [\FDFsecondvalues] %\fi /Ff \FDFflag\space /F \FDFplus\space - /Kids [\FDFkids] + \FDFkids\space \FDFactions}% \egroup} @@ -2670,7 +2703,7 @@ \def\doPDFovalbox#1#2#3#4#5#6#7% todo: \scratchdimen/\scatchbox {\bgroup - \dimen0=#4\divide\dimen0 2 + \dimen0=#4\divide\dimen0 \plustwo \doPDFovalcalc{0pt}{+\dimen0}\xmin \doPDFovalcalc{#1}{-\dimen0}\xmax \doPDFovalcalc{#2}{-\dimen0}\ymax @@ -2684,9 +2717,10 @@ \doPDFovalcalc{#5}{\zeropoint}\radius \edef\dostroke{#6}% \edef\dofill{#7}% - \setbox0\hbox - {\ifnum\dostroke\dofill>0 - \ifPDFstrokecolor\else\ifnum\dostroke=1 + % no \ifcase, else \relax in pdfcode + \setbox\scratchbox\hbox + {\ifnum\dostroke\dofill>\zerocount + \ifPDFstrokecolor\else\ifnum\dostroke=\plusone \writestatus\m!colors{pdf stroke color will fail}\wait \fi\fi \PDFcode @@ -2701,11 +2735,11 @@ \xmin \space \ymax\space \xmin\space \yymax\space y \xmin \space \yymin\space l \xmin \space \ymin\space \xxmin\space \ymin\space y - \ifnum\dostroke=1 S \fi - \ifnum\dofill=1 f \fi + \ifnum\dostroke=\plusone S \fi + \ifnum\dofill =\plusone f \fi Q}% \fi}% - \wd0=#1\ht0=#2\dp0=#3\box0 + \wd\scratchbox#1\ht\scratchbox#2\dp\scratchbox#3\box\scratchbox \egroup} %D \macros @@ -2723,22 +2757,22 @@ % \newif\ifPDFstrokecolor \PDFstrokecolortrue \def\doPDFstartgraymode#1% - {\PDFcode{#1 g\ifPDFstrokecolor\space#1 G\fi}} + {\PDFdirectcode{#1 g\ifPDFstrokecolor\space#1 G\fi}} \def\doPDFstopgraymode - {\PDFcode{0 g\ifPDFstrokecolor\space0 G\fi}} + {\PDFdirectcode{0 g\ifPDFstrokecolor\space0 G\fi}} \def\doPDFstartrgbcolormode#1#2#3% - {\PDFcode{#1 #2 #3 rg\ifPDFstrokecolor\space#1 #2 #3 RG\fi}} + {\PDFdirectcode{#1 #2 #3 rg\ifPDFstrokecolor\space#1 #2 #3 RG\fi}} \def\doPDFstartcmykcolormode#1#2#3#4% - {\PDFcode{#1 #2 #3 #4 k\ifPDFstrokecolor\space#1 #2 #3 #4 K\fi}} + {\PDFdirectcode{#1 #2 #3 #4 k\ifPDFstrokecolor\space#1 #2 #3 #4 K\fi}} \def\doPDFstartgraycolormode#1% - {\PDFcode{#1 g\ifPDFstrokecolor\space#1 G\fi}} + {\PDFdirectcode{#1 g\ifPDFstrokecolor\space#1 G\fi}} % \def\doPDFstartspotcolormode#1#2% -% {\PDFcode{/#1 CS #2 SC /#1 cs #2 sc}} +% {\PDFdirectcode{/#1 CS #2 SC /#1 cs #2 sc}} \def\doPDFstartspotcolormode#1#2% redefining spotcolors is not possible anyway {\ifundefined{pdf:scs:#2}% @@ -2754,16 +2788,16 @@ \fi \egroup \fi - \PDFcode{/#1 cs /#1 CS \PDFgetspotcolorspec{#2}}} + \PDFdirectcode{/#1 cs /#1 CS \PDFgetspotcolorspec{#2}}} \def\PDFgetspotcolorspec#1% {\executeifdefined{pdf:scs:#1}\empty} % better no default than one with too less args \def\doPDFstartnonecolormode - {\PDFcode{/None CS 1 SC /None cs 1 sc}} + {\PDFdirectcode{/None CS 1 SC /None cs 1 sc}} \def\doPDFstopcolormode - {\PDFcode{0 g\ifPDFstrokecolor\space0 G\fi}} + {\PDFdirectcode{0 g\ifPDFstrokecolor\space0 G\fi}} %D We need to register the spot colors and their fallbacks. @@ -2872,12 +2906,11 @@ % can use the next alternative without running into inaccuracies. \def\doPDFstartrotation#1% grouped - {\PDFcode{q}% - \calculatecos{#1}% already calculated in core macro + {\calculatecos{#1}% already calculated in core macro \calculatesin{#1}% already calculated in core macro \edef\cos{\calculatedcos{#1}}% \edef\sin{\calculatedsin{#1}}% - \PDFcode{\cos\space\sin\space\negated\sin\space\cos\space0 0 cm}} + \PDFcode{q \cos\space\sin\space\negated\sin\space\cos\space0 0 cm}} \def\doPDFstoprotation {\PDFcode{Q}} @@ -2893,7 +2926,7 @@ {\PDFcode{q \ifdim#1\points=\zeropoint\@@PDFzeroscale\else#1\fi\space 0 0 \ifdim#2\points=\zeropoint\@@PDFzeroscale\else#2\fi\space 0 0 cm}} -\def\doPDFstopscaling% +\def\doPDFstopscaling {\PDFcode{Q}} %D \macros @@ -2901,10 +2934,10 @@ %D %D Mirroring is implemented in a similar way: -\def\doPDFstartmirroring% +\def\doPDFstartmirroring {\PDFcode{-1 0 0 1 0 0 cm}} -\def\doPDFstopmirroring% +\def\doPDFstopmirroring {\PDFcode{-1 0 0 1 0 0 cm}} %D \macros @@ -2916,13 +2949,13 @@ \def\doPDFstartnegative {\ifx\initializePDFnegative\undefined\else \initializePDFnegative - \PDFcode{/GSnegative gs}% + \PDFdirectcode{/GSnegative gs}% \fi} \def\doPDFstopnegative {\ifx\initializePDFnegative\undefined\else \initializePDFnegative - \PDFcode{/GSpositive gs}% + \PDFdirectcode{/GSpositive gs}% \fi} %D \macros @@ -2933,13 +2966,13 @@ \def\doPDFstartoverprint {\ifx\initializePDFoverprint\undefined\else \initializePDFoverprint - \PDFcode{/GSoverprint gs}% + \PDFdirectcode{/GSoverprint gs}% \fi} \def\doPDFstopoverprint {\ifx\initializePDFoverprint\undefined\else \initializePDFoverprint - \PDFcode{/GSknockout gs}% + \PDFdirectcode{/GSknockout gs}% \fi} %D Transparency support (experimental): @@ -2957,10 +2990,10 @@ \def\dodoPDFstarttransparency#1#2% {\presetPDFtransparency{#1}{#2}% - \PDFcode{\PDFtransparencyidentifier\space gs }} + \PDFdirectcode{\PDFtransparencyidentifier\space gs }} \def\dodoPDFstoptransparency - {\PDFcode{/Tr0 gs }} + {\PDFdirectcode{/Tr0 gs }} \def\doPDFstarttransparency {\ifPDFtransparencysupported @@ -3014,8 +3047,8 @@ \let\PDFhidelayers\empty \let\PDFvidelayers\empty -\def\doPDFstartlayer#1{\PDFcode{/OC /#1 BDC}} -\def\doPDFstoplayer {\PDFcode {EMC}} +\def\doPDFstartlayer#1{\PDFdirectcode{/OC /#1 BDC}} +\def\doPDFstoplayer {\PDFdirectcode {EMC}} % resource -> prop -> mc's -> OCG|OCMD (nested) @@ -3111,19 +3144,19 @@ \def\doPDFstartfonteffect#1#2#3% {\ifdim#2>\zeropoint \PointsToBigPoints{#2}\ascii - \PDFcode{\ascii\space w}% + \PDFdirectcode{\ascii\space w}% \fi \ifdim#3\points=\onepoint\else \scratchdimen#3\points - \PDFcode{\withoutpt{\the\scratchdimen}\space Tc}% + \PDFdirectcode{\withoutpt{\the\scratchdimen}\space Tc}% \fi % \ifdim#3\points=\onepoint\else % \PDFcode{#3\space Tc}% % \fi - \PDFcode{\purenumber#1 Tr}} + \PDFdirectcode{\purenumber#1 Tr}} \def\doPDFstopfonteffect - {\PDFcode{1 w 0 Tc 0 Tr}} + {\PDFdirectcode{1 w 0 Tc 0 Tr}} %D And that was all. diff --git a/tex/context/base/spec-tpd.tex b/tex/context/base/spec-tpd.tex index 184c9f94f..479ba7e49 100644 --- a/tex/context/base/spec-tpd.tex +++ b/tex/context/base/spec-tpd.tex @@ -120,7 +120,7 @@ \newcount\pdfdecimaldigits \fi -\pdfdecimaldigits=5 +\pdfdecimaldigits=10 \ifx\pdfoptionpdfinclusionerrorlevel\undefined \newcount\pdfoptionpdfinclusionerrorlevel @@ -189,7 +189,9 @@ \let\defaultspecial\normalspecial \to \everyresetspecials -\let\PDFcode\pdfliteral +\let\PDFcode \pdfliteral +\def\PDFcontentcode{\pdfliteral} +\def\PDFdirectcode {\pdfliteral direct} %D \macros %D {everyPDFximage} @@ -341,7 +343,7 @@ \ifdim#7>\zeropoint \!!width #7\fi \ifdim#8>\zeropoint \!!height #8\fi \pdfimagepagenumber -% \@@DriverImageBox +\@@DriverImageBox {#1}% \xdef\PDFimagereference{\the\pdflastximage}% \xdef\nofinsertpages{\the\pdflastximagepages}% @@ -733,11 +735,11 @@ \PointsToBigPoints{#3}\height \grabMPclippath{#1}{1}\width\height {0 0 m \width\space 0 l \width \height l 0 \height l}% - \pdfliteral + \pdfliteral % PDFcode ? {q 0 w \MPclippath\space W n}} \definespecial\dostopclipping - {\pdfliteral{Q n}} + {\pdfliteral{Q n}} % PDFcode %D \macros %D {dosetupinteraction} diff --git a/tex/context/base/supp-box.tex b/tex/context/base/supp-box.tex index af2e2f132..1a572e848 100644 --- a/tex/context/base/supp-box.tex +++ b/tex/context/base/supp-box.tex @@ -200,7 +200,7 @@ \def\dodosmash[#1]% {\edef\@@smash{#1}\futurelet\nexttoken\dododosmash} -\def\dododosmash +\def\dododosmash % if needed we can avoid the \next {\ifmmode \def\next##1{\mathpalette\mathsm@sh{##1}}% \else\ifx\nexttoken\bgroup @@ -622,6 +622,24 @@ %D But since this macro is used often and since this implementation %D is slower, we will not use that definition. +% maybe: +% +% depending on the size of the action, about 10% faster +% +% \newtoks\nextboxtoks +% +% \def\dowithnextbox {\afterassignment\redowithnextbox\nextboxtoks} +% \def\redowithnextbox {\afterassignment\dododowithnextbox\setbox\nextbox} +% \def\dododowithnextbox{\aftergroup\dodowithnextbox} +% \def\dodowithnextbox {\the\nextboxtoks} +% +% \long\def\dowithnextboxcontent#1% #2% inside, after +% {\def\dododowithnextbox{#1\aftergroup\dodowithnextbox}% +% \afterassignment\redowithnextboxcontent\nextboxtoks} +% +% \def\redowithnextboxcontent +% {\afterassignment\dododowithnextbox\setbox\nextbox} + %D \macros %D {llap, rlap, tlap, blap, clap} %D @@ -779,7 +797,7 @@ \newevery \everyshapebox \relax -\def\shapesignal{.12345678pt} +\def\shapesignal{.12345678pt} % or 12345sp % todo: in etex lastnode @@ -950,6 +968,7 @@ %D \macros %D {hyphenatedword, %D hyphenatedpar, +%D hyphenatedfile, %D dohyphenateword} %D %D The next one is a tricky one. \PLAIN\ \TEX\ provides @@ -998,13 +1017,19 @@ \setbox0\normalvbox {\hsize\zeropoint \hskip\zeropoint % really needed - \ifnum#1=\minusone + \ifnum#1<\zeropoint \obeyspaces \obeylines \def\obeyedspace{\hskip\zeropoint\hbox to \onepoint{}\hskip\zeropoint}% \let\obeyedline \obeyedspace - \def\next{#3}\scantokens\expandafter{\next}% - % also ok: \scantokens{#3}% + \ifcase-#1\or + \def\next{#3}\scantokens\expandafter{\next}% + % also ok: \scantokens{#3}% + \or + \readfile{#3}\donothing\donothing + \else + #3% + \fi \else #3% \fi}% @@ -1026,7 +1051,7 @@ {\unvbox2 \setbox2\lastbox \normalhbox{\unhbox2}}}% - \ifnum#1=\minusone\ifdim\wd2=\onepoint\space\else\box2\allowbreak\fi\else\box2\fi + \ifnum#1<\zeropoint\ifdim\wd2=\onepoint\space\else\box2\allowbreak\fi\else\box2\fi \ifzeropt\ht0 \exitloop\fi}% % \ifdim\ht0=\zeropoint\exitloop\fi}% \removeunwantedspaces}% \ifnum#1>\zerocount @@ -1040,6 +1065,7 @@ \def\hyphenatedword{\dohyphenateword\zerocount\empty} \def\hyphenatedpar {\dohyphenateword\minusone \empty} +\def\hyphenatedfile{\dohyphenateword{-2}\empty} %D You may want to give the following call a try: %D diff --git a/tex/context/base/symb-ini.tex b/tex/context/base/symb-ini.tex index a1bcd9fdd..d5b2e4d16 100644 --- a/tex/context/base/symb-ini.tex +++ b/tex/context/base/symb-ini.tex @@ -19,8 +19,6 @@ \unprotect -% TOBIAS - \startmessages dutch library: symbols title: symbolen 1: symboolset -- wordt geladen @@ -82,76 +80,61 @@ % ss:set:tag -> symbol out of set % sstag -> list of symbols in set -% \def\dodefinesymbol[#1][#2]% -% {\ifx\currentsymboldef\empty -% \setvalue{\??ss:#1}{#2}% -% \else -% \doifundefinedelse{\??ss\currentsymboldef} -% {\let\currentsymbollist\empty} -% {\edef\currentsymbollist{\csname\??ss\currentsymboldef\endcsname}}% -% \addtocommalist{#1}\currentsymbollist -% \setvalue{\??ss:\currentsymboldef:#1}{#2}% -% \letvalue{\??ss\currentsymboldef}\currentsymbollist -% \fi} +\def\definesymbol + {\dotripleempty\dodefinesymbol} -\def\dodefinesymbol[#1][#2]% - {\ifx\currentsymboldef\empty - \setvalue{\??ss:#1}{#2}% +\def\dodefinesymbol[#1][#2][#3]% class name meaning + {\ifthirdargument + \setvalue{\??ss:#1:#2}{#3}% + \doifsomething{#1}{\addvalue{\??ss*#1}{#2}}% \else \setvalue{\??ss:\currentsymboldef:#1}{#2}% - \addvalue{\??ss\currentsymboldef}{#1}% \fi} -\def\definesymbol - {\dodoubleargument\dodefinesymbol} +\def\doifinsymbolsetelse#1#2{\doifdefinedelse{\??ss:#1:#2}} +\def\doifinsymbolset #1#2{\doifdefined {\??ss:#1:#2}} +\def\doifsymbolsetelse #1{\doifdefinedelse{\??ss*#1}} -\unexpanded\def\symbol % This one always gobbles spaces, - {\dodoubleempty\dosymbol} % so never change it again! +\def\symbolset#1{\executeifdefined{\??ss*#1}\empty} % no [#1], to be used in commalists etc %D Since symbols are used frequently in interactive -%D documents, we speed up this one. +%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. -\newif\ifnosymbol \newtoks\everysymbol +\unexpanded\def\symbol % This one always gobbles spaces, + {\dodoubleempty\dosymbol} % so never change it again! -\def\dodosymbol#1% \relax's prevent lookahead problems - {\nosymbolfalse{\the\everysymbol\csname\??ss:#1\endcsname\relax}\relax} +\newif\ifnosymbol \newtoks\everysymbol -\beginTEX +\def\dodosymbol#1#2% \relax's prevent lookahead problems + {\nosymbolfalse{\the\everysymbol\csname\??ss:#1:#2\endcsname\relax}\relax} + +\def\directsymbol#1#2% no \relax, there can be an argument, see lists + {\executeifdefined{\??ss:#1:#2}\firstofoneargument} + +% \def\dosymbol[#1][#2]% +% {\nosymboltrue +% \ifsecondargument +% \doifinsymbolset{#1}{#2}{\dodosymbol{#1}{#2}}% +% \fi +% \ifnosymbol +% \edef\currentsymbol{#1}% +% \the\symbolsetups +% \ifnosymbol +% \redosymbol\currentsymbol +% \fi +% \fi} \def\dosymbol[#1][#2]% {\nosymboltrue - \ifsecondargument \@EA\ifx\csname\??ss:#1:#2\endcsname\relax\else - \dodosymbol{#1:#2}% - \fi \fi - \ifnosymbol + \ifsecondargument + \edef\currentsymbol{#2}% + \doifinsymbolset{#1}{#2}{\dodosymbol{#1}{#2}}% + \else \edef\currentsymbol{#1}% - \the\symbolsetups - \ifnosymbol - \redosymbol\currentsymbol - \fi - \fi} - -\def\fetchsymbol#1% - {\ifnosymbol - \@EA\ifx\csname\??ss:#1:\currentsymbol\endcsname\relax\else - \dodosymbol{#1:\currentsymbol}% - \fi - \fi} - -\def\redosymbol#1% - {\@EA\ifx\csname\??ss:#1\endcsname\relax\else\@EA\dodosymbol\fi{#1}} - -\endTEX - -\beginETEX \ifcsname - -\def\dosymbol[#1][#2]% - {\nosymboltrue - \ifsecondargument \ifcsname\??ss:#1:#2\endcsname - \dodosymbol{#1:#2}% - \fi \fi + \fi \ifnosymbol - \edef\currentsymbol{#1}% \the\symbolsetups \ifnosymbol \redosymbol\currentsymbol @@ -160,15 +143,12 @@ \def\fetchsymbol#1% {\ifnosymbol - \ifcsname\??ss:#1:\currentsymbol\endcsname - \dodosymbol{#1:\currentsymbol}% - \fi + \doifinsymbolset{#1}\currentsymbol{\dodosymbol{#1}\currentsymbol}% \fi} \def\redosymbol#1% - {\ifcsname\??ss:#1\endcsname\@EA\dodosymbol\else\fi{#1}} - -\endETEX +% {\doifinsymbolsetelse\empty{#1}{\dodosymbol\empty{#1}}{#1}} % more efficient: + {\doifinsymbolsetelse\empty{#1}{\dodosymbol\empty}\firstofoneargument{#1}} % % % % % % this should go in symb-fig, to be loaded after core-fig @@ -213,39 +193,23 @@ %D %D A handy private one: -\beginTEX - -\def\xfetchsymbol#1% - {\ifnosymbol - \@EA\ifx\csname\??ss:#1:\currentsymbol\endcsname\relax\else\nosymbolfalse\fi - \fi} - -\def\xredosymbol#1% - {\@EA\ifx\csname\??ss:#1\endcsname\relax\else\nosymbolfalse\fi} - -\endTEX - -\beginETEX +% a bit messy \def\xfetchsymbol#1% {\ifnosymbol - \ifcsname\??ss:#1:\currentsymbol\endcsname\nosymbolfalse\fi + \doifinsymbolset{#1}\currentsymbol\nosymbolfalse \fi} \def\xredosymbol#1% - {\ifcsname\??ss:#1\endcsname\nosymbolfalse\fi} - -\endETEX + {\doifinsymbolset\empty\currentsymbol\nosymbolfalse} \def\doifsymboldefinedelse#1% {\bgroup \edef\currentsymbol{#1}% \let\fetchsymbol\xfetchsymbol - %\let\redosymbol \xredosymbol \nosymboltrue \the\symbolsetups \ifnosymbol - %\redosymbol\currentsymbol \xredosymbol\currentsymbol \ifnosymbol \egroup\@EAEAEA\secondoftwoarguments diff --git a/tex/context/base/symb-mis.tex b/tex/context/base/symb-mis.tex index b9eeceae8..329d11f5e 100644 --- a/tex/context/base/symb-mis.tex +++ b/tex/context/base/symb-mis.tex @@ -39,27 +39,27 @@ %D Special hyperlinks, namely those to pages or navigational %D properties, are associated with symbols. -\definesymbol [\v!firstpage] [\gotobegincharacter] -\definesymbol [\v!previouspage] [\gobackwardcharacter] -\definesymbol [\v!nextpage] [\goforwardcharacter] -\definesymbol [\v!lastpage] [\gotoendcharacter] -\definesymbol [\v!firstsubpage] [\gotobegincharacter] -\definesymbol [\v!previoussubpage] [\gobackwardcharacter] -\definesymbol [\v!nextsubpage] [\goforwardcharacter] -\definesymbol [\v!lastsubpage] [\gotoendcharacter] -\definesymbol [\v!PreviousJump] [\gobackjumpcharacter] -\definesymbol [\v!NextJump] [\goforjumpcharacter] -\definesymbol [\v!CloseDocument] [\closecharacter] - -\definesymbol [\v!first] [{\symbol[\v!firstpage]}] -\definesymbol [\v!previous] [{\symbol[\v!previouspage]}] -\definesymbol [\v!next] [{\symbol[\v!nextpage]}] -\definesymbol [\v!last] [{\symbol[\v!lastpage]}] -\definesymbol [\v!somewhere] [\gotosomewherecharacter] -\definesymbol [\v!nowhere] [\gonowherecharacter] - -\definesymbol [\v!backward] [{\symbol[\v!previouspage]}] -\definesymbol [\v!forward] [{\symbol[\v!nextpage]}] +\definesymbol [\v!firstpage] [\gotobegincharacter] +\definesymbol [\v!previouspage] [\gobackwardcharacter] +\definesymbol [\v!nextpage] [\goforwardcharacter] +\definesymbol [\v!lastpage] [\gotoendcharacter] +\definesymbol [\v!firstsubpage] [\gotobegincharacter] +\definesymbol [\v!previoussubpage] [\gobackwardcharacter] +\definesymbol [\v!nextsubpage] [\goforwardcharacter] +\definesymbol [\v!lastsubpage] [\gotoendcharacter] +\definesymbol [\v!PreviousJump] [\gobackjumpcharacter] +\definesymbol [\v!NextJump] [\goforjumpcharacter] +\definesymbol [\v!CloseDocument] [\closecharacter] + +\definesymbol [\v!first] [{\symbol[\v!firstpage]}] +\definesymbol [\v!previous] [{\symbol[\v!previouspage]}] +\definesymbol [\v!next] [{\symbol[\v!nextpage]}] +\definesymbol [\v!last] [{\symbol[\v!lastpage]}] +\definesymbol [\v!somewhere] [\gotosomewherecharacter] +\definesymbol [\v!nowhere] [\gonowherecharacter] + +\definesymbol [\v!backward] [{\symbol[\v!previouspage]}] +\definesymbol [\v!forward] [{\symbol[\v!nextpage]}] %D The next two symbols (\symbol[P] and \symbol[S]) are %D variations in their math counterparts. The following ones @@ -67,8 +67,8 @@ % todo : hook this into \textsection -\definesymbol[S][\getglyph{MathSymbol}{\char"78}] -\definesymbol[P][\getglyph{MathSymbol}{\char"7B}] +\definesymbol [S] [\getglyph{MathSymbol}{\char"78}] +\definesymbol [P] [\getglyph{MathSymbol}{\char"7B}] %D These symbols are taken from the Computer Moders Roman %D symbol set or, when present, from the additional symbols of @@ -78,50 +78,50 @@ \def\dogotocharacter#1#2#3% {\ifx#1\undefined#2\else#3\fi} -\def\gotobegincharacter% +\def\gotobegincharacter {\hbox {\dogotocharacter\blacktriangleleft - {\setbox0=\hbox{\mathematics{\triangleleft}}% + {\setbox0\hbox{\mathematics{\triangleleft}}% \vrule\!!width.085ex\!!height1.075\ht0\!!depth\dp0 \kern-.11ex\box0} - {\setbox0=\hbox{\mathematics{\blacktriangleleft}}% - \setbox2=\hbox{\vrule\!!height\ht0\!!depth\dp0\!!width.25ex}% + {\setbox0\hbox{\mathematics{\blacktriangleleft}}% + \setbox2\hbox{\vrule\!!height\ht0\!!depth\dp0\!!width.25ex}% \hbox{\lower.03ex\box2\kern-.35ex\box0}}}} -\def\gotoendcharacter% +\def\gotoendcharacter {\hbox {\dogotocharacter\blacktriangleright - {\setbox0=\hbox{\mathematics{\triangleright}}% + {\setbox0\hbox{\mathematics{\triangleright}}% \copy0\kern-.11ex \vrule\!!width.085ex\!!height1.075\ht0\!!depth\dp0} - {\setbox0=\hbox{\mathematics{\blacktriangleright}}% - \setbox2=\hbox{\vrule\!!height\ht0\!!depth\dp0\!!width.25ex}% + {\setbox0\hbox{\mathematics{\blacktriangleright}}% + \setbox2\hbox{\vrule\!!height\ht0\!!depth\dp0\!!width.25ex}% \hbox{\box0\kern-.35ex\lower.03ex\box2}}}} -\def\gobackwardcharacter% +\def\gobackwardcharacter {\mathematics{\dogotocharacter\blacktriangleright\triangleleft\blacktriangleleft}} -\def\goforwardcharacter% +\def\goforwardcharacter {\mathematics{\dogotocharacter\blacktriangleright\triangleright\blacktriangleright}} -\def\gonowherecharacter% +\def\gonowherecharacter {\mathematics{\bullet}} %\def\gotosomewherecharacter% {} permits ^\... % {{\hbox{\hsmash{\gobackwardcharacter}\goforwardcharacter}}} -\def\gotosomewherecharacter% +\def\gotosomewherecharacter {{\hbox{\hsmash{\symbol[\v!previous]}\symbol[\v!next]}}} -\unexpanded\def\closecharacter% +\unexpanded\def\closecharacter {\dogotocharacter\boxtimes {\ruledhbox{\mathematics{\times}}} {\mathematics{\boxtimes}}} -\def\goforjumpcharacter% +\def\goforjumpcharacter {\hbox{\goforwardcharacter \kern-.5em\goforwardcharacter}} -\def\gobackjumpcharacter% +\def\gobackjumpcharacter {\hbox{\gobackwardcharacter\kern-.5em\gobackwardcharacter}} %D The next two symbols are for Daniel Flipo: diff --git a/tex/context/base/symb-run.tex b/tex/context/base/symb-run.tex index 8dd899c57..3ad195f82 100644 --- a/tex/context/base/symb-run.tex +++ b/tex/context/base/symb-run.tex @@ -13,18 +13,18 @@ \unprotect -\gdef\doshowsymbolset[#1][#2]% looks like \showexternalfigureb +\gdef\doshowsymbolset[#1][#2]% todo: make nicer, use legend or so {\vbox\bgroup \blank \getparameters[\??ss][\c!n=5,#2]% \forcesymbolset[#1]% - \doifdefined{\??ss#1} + \doifsymbolsetelse{#1} {\global\let\allfigures\empty \doglobal\newcounter\figurecounter \setupcolors[\c!state=\v!start]% to prevent mps color conversion \dontcomplain \def\doshowsymbols% global needed due to grouping in alignment - {\expanded{\globalprocesscommalist[\getvalue{\??ss#1}]\noexpand\docommando}}% + {\expanded{\globalprocesscommalist[\symbolset{#1}]}\docommando}% \def\docommando##1% {\vbox {\forgetall @@ -44,10 +44,11 @@ \tabskip\zeropoint \!!plus 1fill \halign to \hsize {&\hss##\hss\cr\doshowsymbols\crcr}}% + {}% \blank \egroup} -\gdef\showsymbolset% +\gdef\showsymbolset {\dodoubleempty\doshowsymbolset} \protect \endinput diff --git a/tex/context/base/syst-ext.tex b/tex/context/base/syst-ext.tex index 5bef964c5..f43adc799 100644 --- a/tex/context/base/syst-ext.tex +++ b/tex/context/base/syst-ext.tex @@ -258,10 +258,8 @@ \def\doincrement#1% 10% faster alternative {\ifx#1\undefined - %\dodoglobal\edef#1{1}% \dodoglobal\let#1\!!plusone \else\ifx#1\relax % \csname...\endcsname - %\dodoglobal\edef#1{1}% \dodoglobal\let#1\!!plusone \else \fastincrement#1% @@ -269,10 +267,8 @@ \def\dodecrement#1% 10% faster alternative {\ifx#1\undefined - %\dodoglobal\edef#1{-1}% \dodoglobal\let#1\!!minusone \else\ifx#1\relax % \csname...\endcsname - %\dodoglobal\edef#1{-1}% \dodoglobal\let#1\!!minusone \else \fastdecrement#1% @@ -290,25 +286,34 @@ \beginETEX \numexpr +% \def\doindecrement#1#2% +% {\dodoglobal\edef#2% +% {\the\numexpr(\ifx#2\undefined\else\ifx#2\relax\else#2\fi\fi#11)}} +% +% \def\doincrement{\doindecrement+} +% \def\dodecrement{\doindecrement-} +% +% some 3\% faster: + \def\doindecrement#1#2% {\dodoglobal\edef#2% - {\the\numexpr(\ifx#2\undefined\else\ifx#2\relax\else#2\fi\fi#11)}} + {\the\numexpr\ifx#2\undefined\else\ifx#2\relax\else#2\fi\fi+#1\relax}} -\def\doincrement{\doindecrement+} -\def\dodecrement{\doindecrement-} +\def\doincrement{\doindecrement\plusone } +\def\dodecrement{\doindecrement\minusone} \def\dodoindecrement#1#2,#3)% {\dodoglobal\edef#2% - {\the\numexpr(\ifx#2\undefined\else\ifx#2\relax\else#2\fi\fi#1#3)}} + {\the\numexpr\ifx#2\undefined\else\ifx#2\relax\else#2\fi\fi#1#3\relax}} \def\dodoincrement(#1% - {\doifnextcharelse,{\dodoindecrement+#1}{\dodoindecrement+#1,1}} + {\doifnextcharelse,{\dodoindecrement+#1}{\dodoindecrement+#1,\plusone}} \def\dododecrement(#1% - {\doifnextcharelse,{\dodoindecrement-#1}{\dodoindecrement-#1,1}} + {\doifnextcharelse,{\dodoindecrement-#1}{\dodoindecrement-#1,\plusone}} -\def\fastincrement#1{\dodoglobal\edef#1{\the\numexpr(#1+1)}} -\def\fastdecrement#1{\dodoglobal\edef#1{\the\numexpr(#1-1)}} +\def\fastincrement#1{\dodoglobal\edef#1{\the\numexpr#1+\plusone \relax}} +\def\fastdecrement#1{\dodoglobal\edef#1{\the\numexpr#1+\minusone\relax}} \endETEX @@ -729,7 +734,7 @@ \else \def\recurselevel{#1}% \@EAEAEA\redorecurse - \fi\@EA{\the\numexpr\recurselevel+1\relax}{#2}} + \fi\@EA{\the\numexpr\recurselevel+\plusone\relax}{#2}} \endETEX @@ -1320,7 +1325,7 @@ %D Now we can for instance define \type{\ifinstringelse} as: -\def\ifinstringelse% +\def\ifinstringelse {\ExpandBothAfter\p!doifinstringelse} %D \macros @@ -2375,22 +2380,22 @@ {\csname#1\endcsname} \def\pluscounter#1% - {\@EA\xdef\csname#1\endcsname{\the\numexpr(\csname#1\endcsname+1)}} + {\@EA\xdef\csname#1\endcsname{\the\numexpr\csname#1\endcsname+\plusone\relax}} \def\minuscounter#1% - {\@EA\xdef\csname#1\endcsname{\the\numexpr(\csname#1\endcsname-1)}} + {\@EA\xdef\csname#1\endcsname{\the\numexpr\csname#1\endcsname-\plusone\relax}} \def\resetcounter#1% {\global\@EA\let\csname#1\endcsname\zerocountervalue} \def\setcounter#1#2% - {\@EA\xdef\csname#1\endcsname{\the\numexpr(#2)}} + {\@EA\xdef\csname#1\endcsname{\the\numexpr#2\relax}} \def\savecounter#1% - {\@EA\xdef\csname !#1\endcsname{\the\numexpr(\csname#1\endcsname)}} + {\@EA\xdef\csname !#1\endcsname{\the\numexpr\csname#1\endcsname\relax}} \def\restorecounter#1% - {\@EA\xdef\csname#1\endcsname{\the\numexpr(\csname !#1\endcsname)}} + {\@EA\xdef\csname#1\endcsname{\the\numexpr\csname !#1\endcsname\relax}} \endETEX @@ -2899,61 +2904,112 @@ %D %D Beware: global! -\def\@s@{@s@} +% \def\@s@{@s@} +% +% \beginTEX +% +% \def\globalpushmacro#1% we can use a faster incement here +% {\@EA\doglobal\@EA\increment\csname\@s@*\string#1\endcsname +% \global\@EA\let\csname\csname\@s@*\string#1\endcsname*\string#1\endcsname#1} +% +% \def\globalpopmacro#1% \global\let +% {\global\@EA\let\@EA#1\csname\csname\@s@*\string#1\endcsname*\string#1\endcsname +% \@EA\doglobal\@EA\decrement\csname\@s@*\string#1\endcsname} +% +% \def\localpushmacro#1% this one can be used to push a value over an \egroup +% {\@EA\doglobal\@EA\increment\csname\@s@**\string#1\endcsname +% \global\@EA\let\csname\csname\@s@**\string#1\endcsname**\string#1\endcsname#1} +% +% \def\localpopmacro#1% \local\let +% {\@EA\let\@EA#1\csname\csname\@s@**\string#1\endcsname**\string#1\endcsname +% \global\@EA\decrement\csname\@s@**\string#1\endcsname} +% +% \endTEX +% +% \beginETEX \newcount +% +% \def\globalpushmacro#1% +% {\ifcsname\@s@*\string#1\endcsname \else +% \@EA\newcount\csname\@s@*\string#1\endcsname +% \fi +% \global\advance\csname\@s@*\string#1\endcsname \plusone +% \global\@EA\let\csname\the\csname\@s@*\string#1\endcsname*\string#1\endcsname#1} +% +% \def\globalpopmacro#1% \global\let +% {\global\@EA\let\@EA#1\csname\the\csname\@s@*\string#1\endcsname*\string#1\endcsname +% \global\advance\csname\@s@*\string#1\endcsname \minusone} +% +% \def\localpushmacro#1% this one can be used to push a value over an \egroup +% {\ifcsname\@s@**\string#1\endcsname \else +% \@EA\newcount\csname\@s@**\string#1\endcsname +% \fi +% \global\advance\csname\@s@**\string#1\endcsname \plusone +% \global\@EA\let\csname\the\csname\@s@**\string#1\endcsname**\string#1\endcsname#1} +% +% \def\localpopmacro#1% \local\let +% {\@EA\let\@EA#1\csname\the\csname\@s@**\string#1\endcsname**\string#1\endcsname +% \global\advance\csname\@s@**\string#1\endcsname \minusone } +% +% \endETEX +% +% some 5% faster (used a lot in typescripts, so ...) + +\def\@sl@{@sl@} +\def\@sg@{@sg@} + +\let\@@pushedmacro\empty \beginTEX \def\globalpushmacro#1% we can use a faster incement here - {\@EA\doglobal\@EA\increment\csname\@s@:\string#1\endcsname - \global\@EA\let\csname\csname\@s@:\string#1\endcsname:\string#1\endcsname#1} - -\def\globalpopmacro#1% \global\let - {\global\@EA\let\@EA#1\csname\csname\@s@:\string#1\endcsname:\string#1\endcsname - \@EA\doglobal\@EA\decrement\csname\@s@:\string#1\endcsname} + {\xdef\@@pushedmacro{\string#1}% + \@EA\doglobal\@EA\increment\csname\@sg@\@@pushedmacro\endcsname + \global\@EA\let\csname\csname\@sg@\@@pushedmacro\endcsname\@@pushedmacro\endcsname#1} -% this one can be used to push a value over an \egroup +\def\globalpopmacro#1% + {\xdef\@@pushedmacro{\string#1}% + \global\@EA\let\@EA#1\csname\csname\@sg@\@@pushedmacro\endcsname\@@pushedmacro\endcsname + \@EA\doglobal\@EA\decrement\csname\@sg@\@@pushedmacro\endcsname} -\def\localpushmacro#1% - {\@EA\doglobal\@EA\increment\csname\@s@::\string#1\endcsname - \global\@EA\let\csname\csname\@s@::\string#1\endcsname::\string#1\endcsname#1} +\def\localpushmacro#1% this one can be used to push a value over an \egroup + {\xdef\@@pushedmacro{\string#1}% + \@EA\doglobal\@EA\increment\csname\@sl@\@@pushedmacro\endcsname + \global\@EA\let\csname\csname\@sl@\@@pushedmacro\endcsname\@@pushedmacro\endcsname#1} -\def\localpopmacro#1% \local\let - {\@EA\let\@EA#1\csname\csname\@s@::\string#1\endcsname::\string#1\endcsname - \global\@EA\decrement\csname\@s@::\string#1\endcsname} +\def\localpopmacro#1% + {\xdef\@@pushedmacro{\string#1}% + \@EA\let\@EA#1\csname\csname\@sl@\@@pushedmacro\endcsname\@@pushedmacro\endcsname + \global\@EA\decrement\csname\@sl@\@@pushedmacro\endcsname} \endTEX -% * niet nodig, in @s@ stoppen - -\beginETEX \newcount +\beginETEX \def\globalpushmacro#1% - {\ifcsname\@s@*\string#1\endcsname \else - \@EA\newcount\csname\@s@*\string#1\endcsname + {\xdef\@@pushedmacro{\string#1}% + \ifcsname\@sg@\@@pushedmacro\endcsname \else + \@EA\newcount\csname\@sg@\@@pushedmacro\endcsname \fi - \global\advance\csname\@s@*\string#1\endcsname \plusone - \global\@EA\let\csname\the\csname\@s@*\string#1\endcsname*\string#1\endcsname#1} - -\def\globalpopmacro#1% \global\let - {%\ifcsname\@s@*\string#1\endcsname - \global\@EA\let\@EA#1\csname\the\csname\@s@*\string#1\endcsname*\string#1\endcsname - \global\advance\csname\@s@*\string#1\endcsname \minusone - %\else - % \message{error in \string#1}\wait - }%\fi} - -% this one can be used to push a value over an \egroup - -\def\localpushmacro#1% - {\ifcsname\@s@**\string#1\endcsname \else - \@EA\newcount\csname\@s@**\string#1\endcsname + \global\advance\csname\@sg@\@@pushedmacro\endcsname \plusone + \global\@EA\let\csname\the\csname\@sg@\@@pushedmacro\endcsname\@@pushedmacro\endcsname#1} + +\def\globalpopmacro#1% + {\xdef\@@pushedmacro{\string#1}% + \global\@EA\let\@EA#1\csname\the\csname\@sg@\@@pushedmacro\endcsname\@@pushedmacro\endcsname + \global\advance\csname\@sg@\@@pushedmacro\endcsname \minusone} + +\def\localpushmacro#1% this one can be used to push a value over an \egroup + {\xdef\@@pushedmacro{\string#1}% + \ifcsname\@sl@\@@pushedmacro\endcsname \else + \@EA\newcount\csname\@sl@\@@pushedmacro\endcsname \fi - \global\advance\csname\@s@**\string#1\endcsname \plusone - \global\@EA\let\csname\the\csname\@s@**\string#1\endcsname**\string#1\endcsname#1} + \global\advance\csname\@sl@\@@pushedmacro\endcsname \plusone + \global\@EA\let\csname\the\csname\@sl@\@@pushedmacro\endcsname\@@pushedmacro\endcsname#1} -\def\localpopmacro#1% \local\let - {\@EA\let\@EA#1\csname\the\csname\@s@**\string#1\endcsname**\string#1\endcsname - \global\advance\csname\@s@**\string#1\endcsname \minusone } +\def\localpopmacro#1% + {\xdef\@@pushedmacro{\string#1}% + \@EA\let\@EA#1\csname\the\csname\@sl@\@@pushedmacro\endcsname\@@pushedmacro\endcsname + \global\advance\csname\@sl@\@@pushedmacro\endcsname \minusone } \endETEX @@ -3801,11 +3857,17 @@ \beginETEX \dimexpr \numexpr +% \def\PointsToBigPoints#1#2% +% {\edef#2{\withoutpt\the\dimexpr(.996264\dimexpr(#1))}} + +% \def\PointsToWholeBigPoints#1#2% +% {\edef#2{\the\numexpr(\numexpr(\dimexpr(.996264\dimexpr(#1)))/\maxcard)}} + \def\PointsToBigPoints#1#2% - {\edef#2{\withoutpt\the\dimexpr(.996264\dimexpr(#1))}} + {\edef#2{\withoutpt\the\dimexpr.996264\dimexpr#1\relax\relax}} \def\PointsToWholeBigPoints#1#2% - {\edef#2{\the\numexpr(\numexpr(\dimexpr(.996264\dimexpr(#1)))/\maxcard)}} + {\edef#2{\the\numexpr\dimexpr.996264\dimexpr#1\relax\relax/\maxcard\relax}} \endETEX diff --git a/tex/context/base/syst-gen.tex b/tex/context/base/syst-gen.tex index 9cc88ddad..c6981a85c 100644 --- a/tex/context/base/syst-gen.tex +++ b/tex/context/base/syst-gen.tex @@ -4241,8 +4241,8 @@ %D \stoptyping %D %D Messages are formatted. One can provide the maximum with -%D of the identification string with the macro -%D \type{\statuswidth}. +%D of the identification string with the macro \type +%D {\statuswidth}. % \chardef\statuswidth=15 % diff --git a/tex/context/base/type-enc.tex b/tex/context/base/type-enc.tex index 60c1e63a0..bcc6dda0a 100644 --- a/tex/context/base/type-enc.tex +++ b/tex/context/base/type-enc.tex @@ -16,21 +16,15 @@ % texfont --ven=urw --col=palatino --enc=ec --sou=auto % texfont --ven-lucas --col=sun --enc=ec --sou=. -% Free fonts. - -% beter \typefacethree dan \typefaceencoding ! ! ! ! ! ! anders geen selectie op bv ec - -% Computer & Latin Modern Roman (DEK/AMS/BJ) - % \usetypescript [all] [latin-modern] [texnansi] -% % \setupbodyfont[reset] \setupbodyfont[cmr] -% % \starttext \showfont[Serif] \stoptext -% todo: plr- il2- ec- in distribution +% done: in type-dis.tex we remap the missing encoding-lm* files onto old metrics +% todo: we should consider handling qx in the same maner, remap qx-* in type-dis.tex +% todo: cyr fonts should be handled in the same way: t2b-lmr10 -> lbrm1000 -\starttypescript [all] [latin-modern] [texnansi,ec,qx] +\starttypescript [all] [latin-modern,computer-modern] [texnansi,ec,qx,pl0,t5] % Regular @@ -111,253 +105,312 @@ \stoptypescript -\starttypescript [all] [computer-modern] [ec] % will become ae - \definefontsynonym [cmb10] [aeb10] [encoding=ec,handling=glm] - \definefontsynonym [cmbx10] [aebx10] [encoding=ec,handling=glm] - \definefontsynonym [cmbx12] [aebx12] [encoding=ec,handling=glm] - \definefontsynonym [cmbx5] [aebx5] [encoding=ec,handling=glm] - \definefontsynonym [cmbx6] [aebx6] [encoding=ec,handling=glm] - \definefontsynonym [cmbx7] [aebx7] [encoding=ec,handling=glm] - \definefontsynonym [cmbx8] [aebx8] [encoding=ec,handling=glm] - \definefontsynonym [cmbx9] [aebx9] [encoding=ec,handling=glm] - \definefontsynonym [cmbxsl10] [aebxsl10] [encoding=ec,handling=glm] - \definefontsynonym [cmbxti10] [aebxti10] [encoding=ec,handling=glm] - \definefontsynonym [cmcsc10] [aecsc10] [encoding=ec,handling=glm] - \definefontsynonym [cmitt10] [aeitt10] [encoding=ec,handling=glm] - \definefontsynonym [cmr10] [aer10] [encoding=ec,handling=glm] - \definefontsynonym [cmr12] [aer12] [encoding=ec,handling=glm] - \definefontsynonym [cmr17] [aer17] [encoding=ec,handling=glm] - \definefontsynonym [cmr5] [aer5] [encoding=ec,handling=glm] - \definefontsynonym [cmr6] [aer6] [encoding=ec,handling=glm] - \definefontsynonym [cmr7] [aer7] [encoding=ec,handling=glm] - \definefontsynonym [cmr8] [aer8] [encoding=ec,handling=glm] - \definefontsynonym [cmr9] [aer9] [encoding=ec,handling=glm] - \definefontsynonym [cmsl10] [aesl10] [encoding=ec,handling=glm] - \definefontsynonym [cmsl12] [aesl12] [encoding=ec,handling=glm] - \definefontsynonym [cmsl8] [aesl8] [encoding=ec,handling=glm] - \definefontsynonym [cmsl9] [aesl9] [encoding=ec,handling=glm] - \definefontsynonym [cmsltt10] [aesltt10] [encoding=ec,handling=glm] - \definefontsynonym [cmss10] [aess10] [encoding=ec,handling=glm] - \definefontsynonym [cmss12] [aess12] [encoding=ec,handling=glm] - \definefontsynonym [cmss17] [aess17] [encoding=ec,handling=glm] - \definefontsynonym [cmss8] [aess8] [encoding=ec,handling=glm] - \definefontsynonym [cmss9] [aess9] [encoding=ec,handling=glm] - \definefontsynonym [cmssbx10] [aessbx10] [encoding=ec,handling=glm] - \definefontsynonym [cmssdc10] [aessdc10] [encoding=ec,handling=glm] - \definefontsynonym [cmssi10] [aessi10] [encoding=ec,handling=glm] - \definefontsynonym [cmssi12] [aessi12] [encoding=ec,handling=glm] - \definefontsynonym [cmssi17] [aessi17] [encoding=ec,handling=glm] - \definefontsynonym [cmssi8] [aessi8] [encoding=ec,handling=glm] - \definefontsynonym [cmssi9] [aessi9] [encoding=ec,handling=glm] - \definefontsynonym [cmtcsc10] [aetcsc10] [encoding=ec,handling=glm] - \definefontsynonym [cmti10] [aeti10] [encoding=ec,handling=glm] - \definefontsynonym [cmti12] [aeti12] [encoding=ec,handling=glm] - \definefontsynonym [cmti7] [aeti7] [encoding=ec,handling=glm] - \definefontsynonym [cmti8] [aeti8] [encoding=ec,handling=glm] - \definefontsynonym [cmti9] [aeti9] [encoding=ec,handling=glm] - \definefontsynonym [cmtt10] [aett10] [encoding=ec,handling=glm] - \definefontsynonym [cmtt12] [aett12] [encoding=ec,handling=glm] - \definefontsynonym [cmtt8] [aett8] [encoding=ec,handling=glm] - \definefontsynonym [cmtt9] [aett9] [encoding=ec,handling=glm] -\stoptypescript +% \starttypescript [all] [computer-modern] [ec] % will become ae +% \definefontsynonym [cmb10] [aeb10] [encoding=ec,handling=glm] +% \definefontsynonym [cmbx10] [aebx10] [encoding=ec,handling=glm] +% \definefontsynonym [cmbx12] [aebx12] [encoding=ec,handling=glm] +% \definefontsynonym [cmbx5] [aebx5] [encoding=ec,handling=glm] +% \definefontsynonym [cmbx6] [aebx6] [encoding=ec,handling=glm] +% \definefontsynonym [cmbx7] [aebx7] [encoding=ec,handling=glm] +% \definefontsynonym [cmbx8] [aebx8] [encoding=ec,handling=glm] +% \definefontsynonym [cmbx9] [aebx9] [encoding=ec,handling=glm] +% \definefontsynonym [cmbxsl10] [aebxsl10] [encoding=ec,handling=glm] +% \definefontsynonym [cmbxti10] [aebxti10] [encoding=ec,handling=glm] +% \definefontsynonym [cmcsc10] [aecsc10] [encoding=ec,handling=glm] +% \definefontsynonym [cmitt10] [aeitt10] [encoding=ec,handling=glm] +% \definefontsynonym [cmr10] [aer10] [encoding=ec,handling=glm] +% \definefontsynonym [cmr12] [aer12] [encoding=ec,handling=glm] +% \definefontsynonym [cmr17] [aer17] [encoding=ec,handling=glm] +% \definefontsynonym [cmr5] [aer5] [encoding=ec,handling=glm] +% \definefontsynonym [cmr6] [aer6] [encoding=ec,handling=glm] +% \definefontsynonym [cmr7] [aer7] [encoding=ec,handling=glm] +% \definefontsynonym [cmr8] [aer8] [encoding=ec,handling=glm] +% \definefontsynonym [cmr9] [aer9] [encoding=ec,handling=glm] +% \definefontsynonym [cmsl10] [aesl10] [encoding=ec,handling=glm] +% \definefontsynonym [cmsl12] [aesl12] [encoding=ec,handling=glm] +% \definefontsynonym [cmsl8] [aesl8] [encoding=ec,handling=glm] +% \definefontsynonym [cmsl9] [aesl9] [encoding=ec,handling=glm] +% \definefontsynonym [cmsltt10] [aesltt10] [encoding=ec,handling=glm] +% \definefontsynonym [cmss10] [aess10] [encoding=ec,handling=glm] +% \definefontsynonym [cmss12] [aess12] [encoding=ec,handling=glm] +% \definefontsynonym [cmss17] [aess17] [encoding=ec,handling=glm] +% \definefontsynonym [cmss8] [aess8] [encoding=ec,handling=glm] +% \definefontsynonym [cmss9] [aess9] [encoding=ec,handling=glm] +% \definefontsynonym [cmssbx10] [aessbx10] [encoding=ec,handling=glm] +% \definefontsynonym [cmssdc10] [aessdc10] [encoding=ec,handling=glm] +% \definefontsynonym [cmssi10] [aessi10] [encoding=ec,handling=glm] +% \definefontsynonym [cmssi12] [aessi12] [encoding=ec,handling=glm] +% \definefontsynonym [cmssi17] [aessi17] [encoding=ec,handling=glm] +% \definefontsynonym [cmssi8] [aessi8] [encoding=ec,handling=glm] +% \definefontsynonym [cmssi9] [aessi9] [encoding=ec,handling=glm] +% \definefontsynonym [cmtcsc10] [aetcsc10] [encoding=ec,handling=glm] +% \definefontsynonym [cmti10] [aeti10] [encoding=ec,handling=glm] +% \definefontsynonym [cmti12] [aeti12] [encoding=ec,handling=glm] +% \definefontsynonym [cmti7] [aeti7] [encoding=ec,handling=glm] +% \definefontsynonym [cmti8] [aeti8] [encoding=ec,handling=glm] +% \definefontsynonym [cmti9] [aeti9] [encoding=ec,handling=glm] +% \definefontsynonym [cmtt10] [aett10] [encoding=ec,handling=glm] +% \definefontsynonym [cmtt12] [aett12] [encoding=ec,handling=glm] +% \definefontsynonym [cmtt8] [aett8] [encoding=ec,handling=glm] +% \definefontsynonym [cmtt9] [aett9] [encoding=ec,handling=glm] +% \stoptypescript -\starttypescript [all] [computer-modern] [il2] - \definefontsynonym [cmb10] [csb10] [encoding=il2] - \definefontsynonym [cmbx10] [csbx10] [encoding=il2] - \definefontsynonym [cmbx12] [csbx12] [encoding=il2] - \definefontsynonym [cmbx5] [csbx5] [encoding=il2] - \definefontsynonym [cmbx6] [csbx6] [encoding=il2] - \definefontsynonym [cmbx7] [csbx7] [encoding=il2] - \definefontsynonym [cmbx8] [csbx8] [encoding=il2] - \definefontsynonym [cmbx9] [csbx9] [encoding=il2] - \definefontsynonym [cmbxsl10] [csbxsl10] [encoding=il2] - \definefontsynonym [cmbxti10] [csbxti10] [encoding=il2] - \definefontsynonym [cmcsc10] [cscsc10] [encoding=il2] - \definefontsynonym [cmdunh10] [csdunh10] [encoding=il2] - \definefontsynonym [cmff10] [csff10] [encoding=il2] - \definefontsynonym [cmfi10] [csfi10] [encoding=il2] - \definefontsynonym [cmfib8] [csfib8] [encoding=il2] - \definefontsynonym [cminch] [csinch] [encoding=il2] - \definefontsynonym [cmitt10] [csitt10] [encoding=il2] - \definefontsynonym [cmr10] [csr10] [encoding=il2] - \definefontsynonym [cmr12] [csr12] [encoding=il2] - \definefontsynonym [cmr17] [csr17] [encoding=il2] - \definefontsynonym [cmr5] [csr5] [encoding=il2] - \definefontsynonym [cmr6] [csr6] [encoding=il2] - \definefontsynonym [cmr7] [csr7] [encoding=il2] - \definefontsynonym [cmr8] [csr8] [encoding=il2] - \definefontsynonym [cmr9] [csr9] [encoding=il2] - \definefontsynonym [cmsl10] [cssl10] [encoding=il2] - \definefontsynonym [cmsl12] [cssl12] [encoding=il2] - \definefontsynonym [cmsl8] [cssl8] [encoding=il2] - \definefontsynonym [cmsl9] [cssl9] [encoding=il2] - \definefontsynonym [cmsltt10] [cssltt10] [encoding=il2] - \definefontsynonym [cmss10] [csss10] [encoding=il2] - \definefontsynonym [cmss12] [csss12] [encoding=il2] - \definefontsynonym [cmss17] [csss17] [encoding=il2] - \definefontsynonym [cmss8] [csss8] [encoding=il2] - \definefontsynonym [cmss9] [csss9] [encoding=il2] - \definefontsynonym [cmssbx10] [csssbx10] [encoding=il2] - \definefontsynonym [cmssdc10] [csssdc10] [encoding=il2] - \definefontsynonym [cmssi10] [csssi10] [encoding=il2] - \definefontsynonym [cmssi12] [csssi12] [encoding=il2] - \definefontsynonym [cmssi17] [csssi17] [encoding=il2] - \definefontsynonym [cmssi8] [csssi8] [encoding=il2] - \definefontsynonym [cmssi9] [csssi9] [encoding=il2] - \definefontsynonym [cmssq8] [csssq8] [encoding=il2] - \definefontsynonym [cmssqi8] [csssqi8] [encoding=il2] - \definefontsynonym [cmtcsc10] [cstcsc10] [encoding=il2] - \definefontsynonym [cmti10] [csti10] [encoding=il2] - \definefontsynonym [cmti12] [csti12] [encoding=il2] - \definefontsynonym [cmti7] [csti7] [encoding=il2] - \definefontsynonym [cmti8] [csti8] [encoding=il2] - \definefontsynonym [cmti9] [csti9] [encoding=il2] - \definefontsynonym [cmtt10] [cstt10] [encoding=il2] - \definefontsynonym [cmtt12] [cstt12] [encoding=il2] - \definefontsynonym [cmtt8] [cstt8] [encoding=il2] - \definefontsynonym [cmtt9] [cstt9] [encoding=il2] - \definefontsynonym [cmu10] [csu10] [encoding=il2] - \definefontsynonym [cmvtt10] [csvtt10] [encoding=il2] -\stoptypescript +% \starttypescript [all] [computer-modern] [il2] +% \definefontsynonym [cmb10] [csb10] [encoding=il2] +% \definefontsynonym [cmbx10] [csbx10] [encoding=il2] +% \definefontsynonym [cmbx12] [csbx12] [encoding=il2] +% \definefontsynonym [cmbx5] [csbx5] [encoding=il2] +% \definefontsynonym [cmbx6] [csbx6] [encoding=il2] +% \definefontsynonym [cmbx7] [csbx7] [encoding=il2] +% \definefontsynonym [cmbx8] [csbx8] [encoding=il2] +% \definefontsynonym [cmbx9] [csbx9] [encoding=il2] +% \definefontsynonym [cmbxsl10] [csbxsl10] [encoding=il2] +% \definefontsynonym [cmbxti10] [csbxti10] [encoding=il2] +% \definefontsynonym [cmcsc10] [cscsc10] [encoding=il2] +% \definefontsynonym [cmdunh10] [csdunh10] [encoding=il2] +% \definefontsynonym [cmff10] [csff10] [encoding=il2] +% \definefontsynonym [cmfi10] [csfi10] [encoding=il2] +% \definefontsynonym [cmfib8] [csfib8] [encoding=il2] +% \definefontsynonym [cminch] [csinch] [encoding=il2] +% \definefontsynonym [cmitt10] [csitt10] [encoding=il2] +% \definefontsynonym [cmr10] [csr10] [encoding=il2] +% \definefontsynonym [cmr12] [csr12] [encoding=il2] +% \definefontsynonym [cmr17] [csr17] [encoding=il2] +% \definefontsynonym [cmr5] [csr5] [encoding=il2] +% \definefontsynonym [cmr6] [csr6] [encoding=il2] +% \definefontsynonym [cmr7] [csr7] [encoding=il2] +% \definefontsynonym [cmr8] [csr8] [encoding=il2] +% \definefontsynonym [cmr9] [csr9] [encoding=il2] +% \definefontsynonym [cmsl10] [cssl10] [encoding=il2] +% \definefontsynonym [cmsl12] [cssl12] [encoding=il2] +% \definefontsynonym [cmsl8] [cssl8] [encoding=il2] +% \definefontsynonym [cmsl9] [cssl9] [encoding=il2] +% \definefontsynonym [cmsltt10] [cssltt10] [encoding=il2] +% \definefontsynonym [cmss10] [csss10] [encoding=il2] +% \definefontsynonym [cmss12] [csss12] [encoding=il2] +% \definefontsynonym [cmss17] [csss17] [encoding=il2] +% \definefontsynonym [cmss8] [csss8] [encoding=il2] +% \definefontsynonym [cmss9] [csss9] [encoding=il2] +% \definefontsynonym [cmssbx10] [csssbx10] [encoding=il2] +% \definefontsynonym [cmssdc10] [csssdc10] [encoding=il2] +% \definefontsynonym [cmssi10] [csssi10] [encoding=il2] +% \definefontsynonym [cmssi12] [csssi12] [encoding=il2] +% \definefontsynonym [cmssi17] [csssi17] [encoding=il2] +% \definefontsynonym [cmssi8] [csssi8] [encoding=il2] +% \definefontsynonym [cmssi9] [csssi9] [encoding=il2] +% \definefontsynonym [cmssq8] [csssq8] [encoding=il2] +% \definefontsynonym [cmssqi8] [csssqi8] [encoding=il2] +% \definefontsynonym [cmtcsc10] [cstcsc10] [encoding=il2] +% \definefontsynonym [cmti10] [csti10] [encoding=il2] +% \definefontsynonym [cmti12] [csti12] [encoding=il2] +% \definefontsynonym [cmti7] [csti7] [encoding=il2] +% \definefontsynonym [cmti8] [csti8] [encoding=il2] +% \definefontsynonym [cmti9] [csti9] [encoding=il2] +% \definefontsynonym [cmtt10] [cstt10] [encoding=il2] +% \definefontsynonym [cmtt12] [cstt12] [encoding=il2] +% \definefontsynonym [cmtt8] [cstt8] [encoding=il2] +% \definefontsynonym [cmtt9] [cstt9] [encoding=il2] +% \definefontsynonym [cmu10] [csu10] [encoding=il2] +% \definefontsynonym [cmvtt10] [csvtt10] [encoding=il2] +% \stoptypescript -\starttypescript [all] [computer-modern] [pl0] - \definefontsynonym [cmb10] [plb10] [encoding=pl0] - \definefontsynonym [cmbsy10] [plbsy10] [encoding=pl0] - \definefontsynonym [cmbx10] [plbx10] [encoding=pl0] - \definefontsynonym [cmbx12] [plbx12] [encoding=pl0] - \definefontsynonym [cmbx5] [plbx5] [encoding=pl0] - \definefontsynonym [cmbx6] [plbx6] [encoding=pl0] - \definefontsynonym [cmbx7] [plbx7] [encoding=pl0] - \definefontsynonym [cmbx8] [plbx8] [encoding=pl0] - \definefontsynonym [cmbx9] [plbx9] [encoding=pl0] - \definefontsynonym [cmbxsl10] [plbxsl10] [encoding=pl0] - \definefontsynonym [cmbxti10] [plbxti10] [encoding=pl0] - \definefontsynonym [cmcsc10] [plcsc10] [encoding=pl0] - \definefontsynonym [cmdunh10] [pldunh10] [encoding=pl0] - \definefontsynonym [cmex10] [plex10] [encoding=pl0] - \definefontsynonym [cmex9] [plex9] [encoding=pl0] - \definefontsynonym [cmff10] [plff10] [encoding=pl0] - \definefontsynonym [cmfi10] [plfi10] [encoding=pl0] - \definefontsynonym [cmfib8] [plfib8] [encoding=pl0] - \definefontsynonym [cminch] [plinch] [encoding=pl0] - \definefontsynonym [cmitt10] [plitt10] [encoding=pl0] - \definefontsynonym [cmmi10] [plmi10] [encoding=pl0] - \definefontsynonym [cmmi12] [plmi12] [encoding=pl0] - \definefontsynonym [cmmi5] [plmi5] [encoding=pl0] - \definefontsynonym [cmmi6] [plmi6] [encoding=pl0] - \definefontsynonym [cmmi7] [plmi7] [encoding=pl0] - \definefontsynonym [cmmi8] [plmi8] [encoding=pl0] - \definefontsynonym [cmmi9] [plmi9] [encoding=pl0] - \definefontsynonym [cmmib10] [plmib10] [encoding=pl0] - \definefontsynonym [cmr10] [plr10] [encoding=pl0] - \definefontsynonym [cmr12] [plr12] [encoding=pl0] - \definefontsynonym [cmr17] [plr17] [encoding=pl0] - \definefontsynonym [cmr5] [plr5] [encoding=pl0] - \definefontsynonym [cmr6] [plr6] [encoding=pl0] - \definefontsynonym [cmr7] [plr7] [encoding=pl0] - \definefontsynonym [cmr8] [plr8] [encoding=pl0] - \definefontsynonym [cmr9] [plr9] [encoding=pl0] - \definefontsynonym [cmsl10] [plsl10] [encoding=pl0] - \definefontsynonym [cmsl12] [plsl12] [encoding=pl0] - \definefontsynonym [cmsl8] [plsl8] [encoding=pl0] - \definefontsynonym [cmsl9] [plsl9] [encoding=pl0] - \definefontsynonym [cmsltt10] [plsltt10] [encoding=pl0] - \definefontsynonym [cmss10] [plss10] [encoding=pl0] - \definefontsynonym [cmss12] [plss12] [encoding=pl0] - \definefontsynonym [cmss17] [plss17] [encoding=pl0] - \definefontsynonym [cmss8] [plss8] [encoding=pl0] - \definefontsynonym [cmss9] [plss9] [encoding=pl0] - \definefontsynonym [cmssbi10] [plssbi10] [encoding=pl0] - \definefontsynonym [cmssbx10] [plssbx10] [encoding=pl0] - \definefontsynonym [cmssdc10] [plssdc10] [encoding=pl0] - \definefontsynonym [cmssi10] [plssi10] [encoding=pl0] - \definefontsynonym [cmssi12] [plssi12] [encoding=pl0] - \definefontsynonym [cmssi17] [plssi17] [encoding=pl0] - \definefontsynonym [cmssi8] [plssi8] [encoding=pl0] - \definefontsynonym [cmssi9] [plssi9] [encoding=pl0] - \definefontsynonym [cmssq8] [plssq8] [encoding=pl0] - \definefontsynonym [cmssqi8] [plssqi8] [encoding=pl0] - \definefontsynonym [cmsy10] [plsy10] [encoding=pl0] - \definefontsynonym [cmsy5] [plsy5] [encoding=pl0] - \definefontsynonym [cmsy6] [plsy6] [encoding=pl0] - \definefontsynonym [cmsy7] [plsy7] [encoding=pl0] - \definefontsynonym [cmsy8] [plsy8] [encoding=pl0] - \definefontsynonym [cmsy9] [plsy9] [encoding=pl0] - \definefontsynonym [cmtcsc10] [pltcsc10] [encoding=pl0] - \definefontsynonym [cmtex10] [pltex10] [encoding=pl0] - \definefontsynonym [cmtex8] [pltex8] [encoding=pl0] - \definefontsynonym [cmtex9] [pltex9] [encoding=pl0] - \definefontsynonym [cmti10] [plti10] [encoding=pl0] - \definefontsynonym [cmti12] [plti12] [encoding=pl0] - \definefontsynonym [cmti7] [plti7] [encoding=pl0] - \definefontsynonym [cmti8] [plti8] [encoding=pl0] - \definefontsynonym [cmti9] [plti9] [encoding=pl0] - \definefontsynonym [cmtt10] [pltt10] [encoding=pl0] - \definefontsynonym [cmtt12] [pltt12] [encoding=pl0] - \definefontsynonym [cmtt8] [pltt8] [encoding=pl0] - \definefontsynonym [cmtt9] [pltt9] [encoding=pl0] - \definefontsynonym [cmu10] [plu10] [encoding=pl0] - \definefontsynonym [cmvtt10] [plvtt10] [encoding=pl0] -\stoptypescript +% \starttypescript [all] [computer-modern] [pl0] +% \definefontsynonym [cmb10] [plb10] [encoding=pl0] +% \definefontsynonym [cmbsy10] [plbsy10] [encoding=pl0] +% \definefontsynonym [cmbx10] [plbx10] [encoding=pl0] +% \definefontsynonym [cmbx12] [plbx12] [encoding=pl0] +% \definefontsynonym [cmbx5] [plbx5] [encoding=pl0] +% \definefontsynonym [cmbx6] [plbx6] [encoding=pl0] +% \definefontsynonym [cmbx7] [plbx7] [encoding=pl0] +% \definefontsynonym [cmbx8] [plbx8] [encoding=pl0] +% \definefontsynonym [cmbx9] [plbx9] [encoding=pl0] +% \definefontsynonym [cmbxsl10] [plbxsl10] [encoding=pl0] +% \definefontsynonym [cmbxti10] [plbxti10] [encoding=pl0] +% \definefontsynonym [cmcsc10] [plcsc10] [encoding=pl0] +% \definefontsynonym [cmdunh10] [pldunh10] [encoding=pl0] +% \definefontsynonym [cmex10] [plex10] [encoding=pl0] +% \definefontsynonym [cmex9] [plex9] [encoding=pl0] +% \definefontsynonym [cmff10] [plff10] [encoding=pl0] +% \definefontsynonym [cmfi10] [plfi10] [encoding=pl0] +% \definefontsynonym [cmfib8] [plfib8] [encoding=pl0] +% \definefontsynonym [cminch] [plinch] [encoding=pl0] +% \definefontsynonym [cmitt10] [plitt10] [encoding=pl0] +% \definefontsynonym [cmmi10] [plmi10] [encoding=pl0] +% \definefontsynonym [cmmi12] [plmi12] [encoding=pl0] +% \definefontsynonym [cmmi5] [plmi5] [encoding=pl0] +% \definefontsynonym [cmmi6] [plmi6] [encoding=pl0] +% \definefontsynonym [cmmi7] [plmi7] [encoding=pl0] +% \definefontsynonym [cmmi8] [plmi8] [encoding=pl0] +% \definefontsynonym [cmmi9] [plmi9] [encoding=pl0] +% \definefontsynonym [cmmib10] [plmib10] [encoding=pl0] +% \definefontsynonym [cmr10] [plr10] [encoding=pl0] +% \definefontsynonym [cmr12] [plr12] [encoding=pl0] +% \definefontsynonym [cmr17] [plr17] [encoding=pl0] +% \definefontsynonym [cmr5] [plr5] [encoding=pl0] +% \definefontsynonym [cmr6] [plr6] [encoding=pl0] +% \definefontsynonym [cmr7] [plr7] [encoding=pl0] +% \definefontsynonym [cmr8] [plr8] [encoding=pl0] +% \definefontsynonym [cmr9] [plr9] [encoding=pl0] +% \definefontsynonym [cmsl10] [plsl10] [encoding=pl0] +% \definefontsynonym [cmsl12] [plsl12] [encoding=pl0] +% \definefontsynonym [cmsl8] [plsl8] [encoding=pl0] +% \definefontsynonym [cmsl9] [plsl9] [encoding=pl0] +% \definefontsynonym [cmsltt10] [plsltt10] [encoding=pl0] +% \definefontsynonym [cmss10] [plss10] [encoding=pl0] +% \definefontsynonym [cmss12] [plss12] [encoding=pl0] +% \definefontsynonym [cmss17] [plss17] [encoding=pl0] +% \definefontsynonym [cmss8] [plss8] [encoding=pl0] +% \definefontsynonym [cmss9] [plss9] [encoding=pl0] +% \definefontsynonym [cmssbi10] [plssbi10] [encoding=pl0] +% \definefontsynonym [cmssbx10] [plssbx10] [encoding=pl0] +% \definefontsynonym [cmssdc10] [plssdc10] [encoding=pl0] +% \definefontsynonym [cmssi10] [plssi10] [encoding=pl0] +% \definefontsynonym [cmssi12] [plssi12] [encoding=pl0] +% \definefontsynonym [cmssi17] [plssi17] [encoding=pl0] +% \definefontsynonym [cmssi8] [plssi8] [encoding=pl0] +% \definefontsynonym [cmssi9] [plssi9] [encoding=pl0] +% \definefontsynonym [cmssq8] [plssq8] [encoding=pl0] +% \definefontsynonym [cmssqi8] [plssqi8] [encoding=pl0] +% \definefontsynonym [cmsy10] [plsy10] [encoding=pl0] +% \definefontsynonym [cmsy5] [plsy5] [encoding=pl0] +% \definefontsynonym [cmsy6] [plsy6] [encoding=pl0] +% \definefontsynonym [cmsy7] [plsy7] [encoding=pl0] +% \definefontsynonym [cmsy8] [plsy8] [encoding=pl0] +% \definefontsynonym [cmsy9] [plsy9] [encoding=pl0] +% \definefontsynonym [cmtcsc10] [pltcsc10] [encoding=pl0] +% \definefontsynonym [cmtex10] [pltex10] [encoding=pl0] +% \definefontsynonym [cmtex8] [pltex8] [encoding=pl0] +% \definefontsynonym [cmtex9] [pltex9] [encoding=pl0] +% \definefontsynonym [cmti10] [plti10] [encoding=pl0] +% \definefontsynonym [cmti12] [plti12] [encoding=pl0] +% \definefontsynonym [cmti7] [plti7] [encoding=pl0] +% \definefontsynonym [cmti8] [plti8] [encoding=pl0] +% \definefontsynonym [cmti9] [plti9] [encoding=pl0] +% \definefontsynonym [cmtt10] [pltt10] [encoding=pl0] +% \definefontsynonym [cmtt12] [pltt12] [encoding=pl0] +% \definefontsynonym [cmtt8] [pltt8] [encoding=pl0] +% \definefontsynonym [cmtt9] [pltt9] [encoding=pl0] +% \definefontsynonym [cmu10] [plu10] [encoding=pl0] +% \definefontsynonym [cmvtt10] [plvtt10] [encoding=pl0] +% \stoptypescript -\starttypescript [all] [computer-modern] [t5] - \definefontsynonym [cmb10] [vnb10] [encoding=t5] - \definefontsynonym [cmbx10] [vnbx10] [encoding=t5] - \definefontsynonym [cmbx12] [vnbx12] [encoding=t5] - \definefontsynonym [cmbx5] [vnbx5] [encoding=t5] - \definefontsynonym [cmbx6] [vnbx6] [encoding=t5] - \definefontsynonym [cmbx7] [vnbx7] [encoding=t5] - \definefontsynonym [cmbx8] [vnbx8] [encoding=t5] - \definefontsynonym [cmbx9] [vnbx9] [encoding=t5] - \definefontsynonym [cmbxsl10] [vnbxsl10] [encoding=t5] - \definefontsynonym [cmbxti10] [vnbxti10] [encoding=t5] - \definefontsynonym [cmcsc10] [vncsc10] [encoding=t5] - \definefontsynonym [cmdunh10] [vndunh10] [encoding=t5] - \definefontsynonym [cmff10] [vnff10] [encoding=t5] - \definefontsynonym [cmfi10] [vnfi10] [encoding=t5] - \definefontsynonym [cmfib8] [vnfib8] [encoding=t5] - \definefontsynonym [cminch] [vninch] [encoding=t5] - \definefontsynonym [cmitt10] [vnitt10] [encoding=t5] - \definefontsynonym [cmr10] [vnr10] [encoding=t5] - \definefontsynonym [cmr12] [vnr12] [encoding=t5] - \definefontsynonym [cmr17] [vnr17] [encoding=t5] - \definefontsynonym [cmr5] [vnr5] [encoding=t5] - \definefontsynonym [cmr6] [vnr6] [encoding=t5] - \definefontsynonym [cmr7] [vnr7] [encoding=t5] - \definefontsynonym [cmr8] [vnr8] [encoding=t5] - \definefontsynonym [cmr9] [vnr9] [encoding=t5] - \definefontsynonym [cmsl10] [vnsl10] [encoding=t5] - \definefontsynonym [cmsl12] [vnsl12] [encoding=t5] - \definefontsynonym [cmsl8] [vnsl8] [encoding=t5] - \definefontsynonym [cmsl9] [vnsl9] [encoding=t5] - \definefontsynonym [cmsltt10] [vnsltt10] [encoding=t5] - \definefontsynonym [cmss10] [vnss10] [encoding=t5] - \definefontsynonym [cmss12] [vnss12] [encoding=t5] - \definefontsynonym [cmss17] [vnss17] [encoding=t5] - \definefontsynonym [cmss8] [vnss8] [encoding=t5] - \definefontsynonym [cmss9] [vnss9] [encoding=t5] - \definefontsynonym [cmssbx10] [vnssbx10] [encoding=t5] - \definefontsynonym [cmssdc10] [vnssdc10] [encoding=t5] - \definefontsynonym [cmssi10] [vnssi10] [encoding=t5] - \definefontsynonym [cmssi12] [vnssi12] [encoding=t5] - \definefontsynonym [cmssi17] [vnssi17] [encoding=t5] - \definefontsynonym [cmssi8] [vnssi8] [encoding=t5] - \definefontsynonym [cmssi9] [vnssi9] [encoding=t5] - \definefontsynonym [cmssq8] [vnssq8] [encoding=t5] - \definefontsynonym [cmssqi8] [vnssqi8] [encoding=t5] - \definefontsynonym [cmtcsc10] [vntcsc10] [encoding=t5] - \definefontsynonym [cmti10] [vnti10] [encoding=t5] - \definefontsynonym [cmti12] [vnti12] [encoding=t5] - \definefontsynonym [cmti7] [vnti7] [encoding=t5] - \definefontsynonym [cmti8] [vnti8] [encoding=t5] - \definefontsynonym [cmti9] [vnti9] [encoding=t5] - \definefontsynonym [cmtt10] [vntt10] [encoding=t5] - \definefontsynonym [cmtt12] [vntt12] [encoding=t5] - \definefontsynonym [cmtt8] [vntt8] [encoding=t5] - \definefontsynonym [cmtt9] [vntt9] [encoding=t5] - \definefontsynonym [cmu10] [vnu10] [encoding=t5] - \definefontsynonym [cmvtt10] [vnvtt10] [encoding=t5] -\stoptypescript +% \starttypescript [all] [computer-modern] [t5] +% \definefontsynonym [cmb10] [vnb10] [encoding=t5] +% \definefontsynonym [cmbx10] [vnbx10] [encoding=t5] +% \definefontsynonym [cmbx12] [vnbx12] [encoding=t5] +% \definefontsynonym [cmbx5] [vnbx5] [encoding=t5] +% \definefontsynonym [cmbx6] [vnbx6] [encoding=t5] +% \definefontsynonym [cmbx7] [vnbx7] [encoding=t5] +% \definefontsynonym [cmbx8] [vnbx8] [encoding=t5] +% \definefontsynonym [cmbx9] [vnbx9] [encoding=t5] +% \definefontsynonym [cmbxsl10] [vnbxsl10] [encoding=t5] +% \definefontsynonym [cmbxti10] [vnbxti10] [encoding=t5] +% \definefontsynonym [cmcsc10] [vncsc10] [encoding=t5] +% \definefontsynonym [cmdunh10] [vndunh10] [encoding=t5] +% \definefontsynonym [cmff10] [vnff10] [encoding=t5] +% \definefontsynonym [cmfi10] [vnfi10] [encoding=t5] +% \definefontsynonym [cmfib8] [vnfib8] [encoding=t5] +% \definefontsynonym [cminch] [vninch] [encoding=t5] +% \definefontsynonym [cmitt10] [vnitt10] [encoding=t5] +% \definefontsynonym [cmr10] [vnr10] [encoding=t5] +% \definefontsynonym [cmr12] [vnr12] [encoding=t5] +% \definefontsynonym [cmr17] [vnr17] [encoding=t5] +% \definefontsynonym [cmr5] [vnr5] [encoding=t5] +% \definefontsynonym [cmr6] [vnr6] [encoding=t5] +% \definefontsynonym [cmr7] [vnr7] [encoding=t5] +% \definefontsynonym [cmr8] [vnr8] [encoding=t5] +% \definefontsynonym [cmr9] [vnr9] [encoding=t5] +% \definefontsynonym [cmsl10] [vnsl10] [encoding=t5] +% \definefontsynonym [cmsl12] [vnsl12] [encoding=t5] +% \definefontsynonym [cmsl8] [vnsl8] [encoding=t5] +% \definefontsynonym [cmsl9] [vnsl9] [encoding=t5] +% \definefontsynonym [cmsltt10] [vnsltt10] [encoding=t5] +% \definefontsynonym [cmss10] [vnss10] [encoding=t5] +% \definefontsynonym [cmss12] [vnss12] [encoding=t5] +% \definefontsynonym [cmss17] [vnss17] [encoding=t5] +% \definefontsynonym [cmss8] [vnss8] [encoding=t5] +% \definefontsynonym [cmss9] [vnss9] [encoding=t5] +% \definefontsynonym [cmssbx10] [vnssbx10] [encoding=t5] +% \definefontsynonym [cmssdc10] [vnssdc10] [encoding=t5] +% \definefontsynonym [cmssi10] [vnssi10] [encoding=t5] +% \definefontsynonym [cmssi12] [vnssi12] [encoding=t5] +% \definefontsynonym [cmssi17] [vnssi17] [encoding=t5] +% \definefontsynonym [cmssi8] [vnssi8] [encoding=t5] +% \definefontsynonym [cmssi9] [vnssi9] [encoding=t5] +% \definefontsynonym [cmssq8] [vnssq8] [encoding=t5] +% \definefontsynonym [cmssqi8] [vnssqi8] [encoding=t5] +% \definefontsynonym [cmtcsc10] [vntcsc10] [encoding=t5] +% \definefontsynonym [cmti10] [vnti10] [encoding=t5] +% \definefontsynonym [cmti12] [vnti12] [encoding=t5] +% \definefontsynonym [cmti7] [vnti7] [encoding=t5] +% \definefontsynonym [cmti8] [vnti8] [encoding=t5] +% \definefontsynonym [cmti9] [vnti9] [encoding=t5] +% \definefontsynonym [cmtt10] [vntt10] [encoding=t5] +% \definefontsynonym [cmtt12] [vntt12] [encoding=t5] +% \definefontsynonym [cmtt8] [vntt8] [encoding=t5] +% \definefontsynonym [cmtt9] [vntt9] [encoding=t5] +% \definefontsynonym [cmu10] [vnu10] [encoding=t5] +% \definefontsynonym [cmvtt10] [vnvtt10] [encoding=t5] +% \stoptypescript + +% \starttypescript [all] [computer-modern] [ec] +% \definefontsynonym [cmb10] [ecrb1000] [encoding=ec] +% \definefontsynonym [cmbx10] [ecbx1000] [encoding=ec] +% \definefontsynonym [cmbx12] [ecbx1200] [encoding=ec] +% \definefontsynonym [cmbx5] [ecbx0500] [encoding=ec] +% \definefontsynonym [cmbx6] [ecbx0600] [encoding=ec] +% \definefontsynonym [cmbx7] [ecbx0700] [encoding=ec] +% \definefontsynonym [cmbx8] [ecbx0800] [encoding=ec] +% \definefontsynonym [cmbx9] [ecbx0900] [encoding=ec] +% \definefontsynonym [cmbxsl10] [ecbl1000] [encoding=ec] +% \definefontsynonym [cmbxti10] [ecbi1000] [encoding=ec] +% \definefontsynonym [cmcsc10] [eccc1000] [encoding=ec] +% \definefontsynonym [cmdunh10] [ecdh1000] [encoding=ec] +% \definefontsynonym [cmff10] [ecff1000] [encoding=ec] +% \definefontsynonym [cmfi10] [ecfi1000] [encoding=ec] +% \definefontsynonym [cmfib8] [ecfb0800] [encoding=ec] +% %\definefontsynonym [cminch] [ecinch00] [encoding=ec] +% \definefontsynonym [cmitt10] [ecit1000] [encoding=ec] +% \definefontsynonym [cmr10] [ecrm1000] [encoding=ec] +% \definefontsynonym [cmr12] [ecrm1200] [encoding=ec] +% \definefontsynonym [cmr17] [ecrm1700] [encoding=ec] +% \definefontsynonym [cmr5] [ecrm0500] [encoding=ec] +% \definefontsynonym [cmr6] [ecrm0600] [encoding=ec] +% \definefontsynonym [cmr7] [ecrm0700] [encoding=ec] +% \definefontsynonym [cmr8] [ecrm0800] [encoding=ec] +% \definefontsynonym [cmr9] [ecrm0900] [encoding=ec] +% \definefontsynonym [cmsl10] [ecsl1000] [encoding=ec] +% \definefontsynonym [cmsl12] [ecsl1200] [encoding=ec] +% \definefontsynonym [cmsl8] [ecsl0800] [encoding=ec] +% \definefontsynonym [cmsl9] [ecsl0900] [encoding=ec] +% \definefontsynonym [cmsltt10] [ecst1000] [encoding=ec] +% \definefontsynonym [cmss10] [ecss1000] [encoding=ec] +% \definefontsynonym [cmss12] [ecss1200] [encoding=ec] +% \definefontsynonym [cmss17] [ecss1700] [encoding=ec] +% \definefontsynonym [cmss8] [ecss0800] [encoding=ec] +% \definefontsynonym [cmss9] [ecss0900] [encoding=ec] +% \definefontsynonym [cmssbx10] [ecsx1000] [encoding=ec] +% %\definefontsynonym [cmssdc10] [ecssdc1000] [encoding=ec] +% \definefontsynonym [cmssi10] [ecsi1000] [encoding=ec] +% \definefontsynonym [cmssi12] [ecsi1200] [encoding=ec] +% \definefontsynonym [cmssi17] [ecsi1700] [encoding=ec] +% \definefontsynonym [cmssi8] [ecsi0800] [encoding=ec] +% \definefontsynonym [cmssi9] [ecsi0900] [encoding=ec] +% \definefontsynonym [cmssq8] [ecss0800] [encoding=ec] % ssq->ss +% \definefontsynonym [cmssqi8] [ecsi0800] [encoding=ec] % ssq->ss +% \definefontsynonym [cmtcsc10] [ectc1000] [encoding=ec] +% \definefontsynonym [cmti10] [ecti1000] [encoding=ec] +% \definefontsynonym [cmti12] [ecti1200] [encoding=ec] +% \definefontsynonym [cmti7] [ecti0700] [encoding=ec] +% \definefontsynonym [cmti8] [ecti0800] [encoding=ec] +% \definefontsynonym [cmti9] [ecti0900] [encoding=ec] +% \definefontsynonym [cmtt10] [ectt1000] [encoding=ec] +% \definefontsynonym [cmtt12] [ectt1200] [encoding=ec] +% \definefontsynonym [cmtt8] [ectt0800] [encoding=ec] +% \definefontsynonym [cmtt9] [ectt0900] [encoding=ec] +% \definefontsynonym [cmu10] [ecui1000] [encoding=ec] +% \definefontsynonym [cmvtt10] [ecvt1000] [encoding=ec] +% \stoptypescript %D {\em Comments by Victor Figurnov:} the wcmb10, wcmbx10, %D \unknown\ fonts below are taken from the Paradissa @@ -733,65 +786,6 @@ \definefontsynonym [cmvtt10] [lhvtt10] [encoding=lcy] \stoptypescript -% \starttypescript [all] [computer-modern] [ec] -% \definefontsynonym [cmb10] [ecrb1000] [encoding=ec] -% \definefontsynonym [cmbx10] [ecbx1000] [encoding=ec] -% \definefontsynonym [cmbx12] [ecbx1200] [encoding=ec] -% \definefontsynonym [cmbx5] [ecbx0500] [encoding=ec] -% \definefontsynonym [cmbx6] [ecbx0600] [encoding=ec] -% \definefontsynonym [cmbx7] [ecbx0700] [encoding=ec] -% \definefontsynonym [cmbx8] [ecbx0800] [encoding=ec] -% \definefontsynonym [cmbx9] [ecbx0900] [encoding=ec] -% \definefontsynonym [cmbxsl10] [ecbl1000] [encoding=ec] -% \definefontsynonym [cmbxti10] [ecbi1000] [encoding=ec] -% \definefontsynonym [cmcsc10] [eccc1000] [encoding=ec] -% \definefontsynonym [cmdunh10] [ecdh1000] [encoding=ec] -% \definefontsynonym [cmff10] [ecff1000] [encoding=ec] -% \definefontsynonym [cmfi10] [ecfi1000] [encoding=ec] -% \definefontsynonym [cmfib8] [ecfb0800] [encoding=ec] -% %\definefontsynonym [cminch] [ecinch00] [encoding=ec] -% \definefontsynonym [cmitt10] [ecit1000] [encoding=ec] -% \definefontsynonym [cmr10] [ecrm1000] [encoding=ec] -% \definefontsynonym [cmr12] [ecrm1200] [encoding=ec] -% \definefontsynonym [cmr17] [ecrm1700] [encoding=ec] -% \definefontsynonym [cmr5] [ecrm0500] [encoding=ec] -% \definefontsynonym [cmr6] [ecrm0600] [encoding=ec] -% \definefontsynonym [cmr7] [ecrm0700] [encoding=ec] -% \definefontsynonym [cmr8] [ecrm0800] [encoding=ec] -% \definefontsynonym [cmr9] [ecrm0900] [encoding=ec] -% \definefontsynonym [cmsl10] [ecsl1000] [encoding=ec] -% \definefontsynonym [cmsl12] [ecsl1200] [encoding=ec] -% \definefontsynonym [cmsl8] [ecsl0800] [encoding=ec] -% \definefontsynonym [cmsl9] [ecsl0900] [encoding=ec] -% \definefontsynonym [cmsltt10] [ecst1000] [encoding=ec] -% \definefontsynonym [cmss10] [ecss1000] [encoding=ec] -% \definefontsynonym [cmss12] [ecss1200] [encoding=ec] -% \definefontsynonym [cmss17] [ecss1700] [encoding=ec] -% \definefontsynonym [cmss8] [ecss0800] [encoding=ec] -% \definefontsynonym [cmss9] [ecss0900] [encoding=ec] -% \definefontsynonym [cmssbx10] [ecsx1000] [encoding=ec] -% %\definefontsynonym [cmssdc10] [ecssdc1000] [encoding=ec] -% \definefontsynonym [cmssi10] [ecsi1000] [encoding=ec] -% \definefontsynonym [cmssi12] [ecsi1200] [encoding=ec] -% \definefontsynonym [cmssi17] [ecsi1700] [encoding=ec] -% \definefontsynonym [cmssi8] [ecsi0800] [encoding=ec] -% \definefontsynonym [cmssi9] [ecsi0900] [encoding=ec] -% \definefontsynonym [cmssq8] [ecss0800] [encoding=ec] % ssq->ss -% \definefontsynonym [cmssqi8] [ecsi0800] [encoding=ec] % ssq->ss -% \definefontsynonym [cmtcsc10] [ectc1000] [encoding=ec] -% \definefontsynonym [cmti10] [ecti1000] [encoding=ec] -% \definefontsynonym [cmti12] [ecti1200] [encoding=ec] -% \definefontsynonym [cmti7] [ecti0700] [encoding=ec] -% \definefontsynonym [cmti8] [ecti0800] [encoding=ec] -% \definefontsynonym [cmti9] [ecti0900] [encoding=ec] -% \definefontsynonym [cmtt10] [ectt1000] [encoding=ec] -% \definefontsynonym [cmtt12] [ectt1200] [encoding=ec] -% \definefontsynonym [cmtt8] [ectt0800] [encoding=ec] -% \definefontsynonym [cmtt9] [ectt0900] [encoding=ec] -% \definefontsynonym [cmu10] [ecui1000] [encoding=ec] -% \definefontsynonym [cmvtt10] [ecvt1000] [encoding=ec] -% \stoptypescript - \starttypescript [serif] [computer-modern] [default] \definefontsynonym [ComputerModern] [cmr10] \definefontsynonym [ComputerModern-Italic] [cmti10] @@ -869,7 +863,7 @@ % AMS (AMS) -\starttypescript [math] [ams] [default] +\starttypescript [math] [computer-modern,latin-modern,ams] [default] \definefontsynonym [AMS-SymbolA] [msam10] \definefontsynonym [AMS-SymbolB] [msbm10] \stoptypescript @@ -924,10 +918,10 @@ % Courier (URW) \starttypescript [mono] [courier] [texnansi,ec,8r,t5] - \definefontsynonym [Courier] [\typefaceencoding-ucrr8a] [encoding=\typefaceencoding] - \definefontsynonym [Courier-Bold] [\typefaceencoding-ucrb8a] [encoding=\typefaceencoding] - \definefontsynonym [Courier-Oblique] [\typefaceencoding-ucrro8a] [encoding=\typefaceencoding] - \definefontsynonym [Courier-BoldOblique] [\typefaceencoding-ucrbo8a] [encoding=\typefaceencoding] + \definefontsynonym [Courier] [\typescriptthree-ucrr8a] [encoding=\typescriptthree] + \definefontsynonym [Courier-Bold] [\typescriptthree-ucrb8a] [encoding=\typescriptthree] + \definefontsynonym [Courier-Oblique] [\typescriptthree-ucrro8a] [encoding=\typescriptthree] + \definefontsynonym [Courier-BoldOblique] [\typescriptthree-ucrbo8a] [encoding=\typescriptthree] \stoptypescript % alternative 1 @@ -949,12 +943,12 @@ % Helvetica (URW) \starttypescript [sans] [helvetica] [texnansi,ec,8r,t5] - \definefontsynonym [Helvetica] [\typefaceencoding-uhvr8a] [encoding=\typefaceencoding] - \definefontsynonym [Helvetica-Italic] [\typefaceencoding-uhvri8a] [encoding=\typefaceencoding] - \definefontsynonym [Helvetica-Oblique] [\typefaceencoding-uhvro8a] [encoding=\typefaceencoding] - \definefontsynonym [Helvetica-Bold] [\typefaceencoding-uhvb8a] [encoding=\typefaceencoding] - \definefontsynonym [Helvetica-BoldItalic] [\typefaceencoding-uhvbi8a] [encoding=\typefaceencoding] - \definefontsynonym [Helvetica-BoldOblique] [\typefaceencoding-uhvbo8a] [encoding=\typefaceencoding] + \definefontsynonym [Helvetica] [\typescriptthree-uhvr8a] [encoding=\typescriptthree] + \definefontsynonym [Helvetica-Italic] [\typescriptthree-uhvri8a] [encoding=\typescriptthree] + \definefontsynonym [Helvetica-Oblique] [\typescriptthree-uhvro8a] [encoding=\typescriptthree] + \definefontsynonym [Helvetica-Bold] [\typescriptthree-uhvb8a] [encoding=\typescriptthree] + \definefontsynonym [Helvetica-BoldItalic] [\typescriptthree-uhvbi8a] [encoding=\typescriptthree] + \definefontsynonym [Helvetica-BoldOblique] [\typescriptthree-uhvbo8a] [encoding=\typescriptthree] \stoptypescript \starttypescript [sans] [helvetica] [qx] % narrow @@ -969,13 +963,13 @@ % Times Roman (URW) \starttypescript [serif] [times] [texnansi,ec,8r,t5] - \definefontsynonym [Times-Roman] [\typefaceencoding-utmr8a] [encoding=\typefaceencoding] - \definefontsynonym [Times-Italic] [\typefaceencoding-utmri8a] [encoding=\typefaceencoding] - \definefontsynonym [Times-Bold] [\typefaceencoding-utmb8a] [encoding=\typefaceencoding] - \definefontsynonym [Times-BoldItalic] [\typefaceencoding-utmbi8a] [encoding=\typefaceencoding] + \definefontsynonym [Times-Roman] [\typescriptthree-utmr8a] [encoding=\typescriptthree] + \definefontsynonym [Times-Italic] [\typescriptthree-utmri8a] [encoding=\typescriptthree] + \definefontsynonym [Times-Bold] [\typescriptthree-utmb8a] [encoding=\typescriptthree] + \definefontsynonym [Times-BoldItalic] [\typescriptthree-utmbi8a] [encoding=\typescriptthree] - \definefontsynonym [Times-Slanted] [\typefaceencoding-utmr8a-slanted-167] [encoding=\typefaceencoding] - \definefontsynonym [Times-BoldSlanted] [\typefaceencoding-utmb8a-slanted-167] [encoding=\typefaceencoding] + \definefontsynonym [Times-Slanted] [\typescriptthree-utmr8a-slanted-167] [encoding=\typescriptthree] + \definefontsynonym [Times-BoldSlanted] [\typescriptthree-utmb8a-slanted-167] [encoding=\typescriptthree] \definefontsynonym [Times] [Times-Roman] \stoptypescript @@ -1015,9 +1009,9 @@ % Antykwa Torunska (GUST) % \starttypescript [serif] [antykwa-torunska] [texnansi,ec,8r] -% \definefontsynonym [AntykwaTorunska-Regular] [\typefaceencoding-anttr] [encoding=\typefaceencoding] -% \definefontsynonym [AntykwaTorunska-Bold] [\typefaceencoding-anttb] [encoding=\typefaceencoding] -% \definefontsynonym [AntykwaTorunska-Italic] [\typefaceencoding-anttri] [encoding=\typefaceencoding] +% \definefontsynonym [AntykwaTorunska-Regular] [\typescriptthree-anttr] [encoding=\typescriptthree] +% \definefontsynonym [AntykwaTorunska-Bold] [\typescriptthree-anttb] [encoding=\typescriptthree] +% \definefontsynonym [AntykwaTorunska-Italic] [\typescriptthree-anttri] [encoding=\typescriptthree] % \stoptypescript \starttypescript [serif] [antykwa-torunska,antykwa-torunska-light,antykwa-torunska-cond,antykwa-torunska-lightcond] [texnansi,t2a,t2b,t2c,qx] @@ -1134,23 +1128,23 @@ % Antykwa Polstawskiego (GUST) \starttypescript [serif] [antykwa-poltawskiego] [texnansi,ec,8r] - \definefontsynonym [AntykwaPoltawskiego-Regular] [\typefaceencoding-antpr] [encoding=\typefaceencoding] - \definefontsynonym [AntykwaPoltawskiego-Bold] [\typefaceencoding-antpb] [encoding=\typefaceencoding] - \definefontsynonym [AntykwaPoltawskiego-Italic] [\typefaceencoding-antpri] [encoding=\typefaceencoding] - \definefontsynonym [AntykwaPoltawskiego-BoldItalic] [\typefaceencoding-antpbi] [encoding=\typefaceencoding] + \definefontsynonym [AntykwaPoltawskiego-Regular] [\typescriptthree-antpr] [encoding=\typescriptthree] + \definefontsynonym [AntykwaPoltawskiego-Bold] [\typescriptthree-antpb] [encoding=\typescriptthree] + \definefontsynonym [AntykwaPoltawskiego-Italic] [\typescriptthree-antpri] [encoding=\typescriptthree] + \definefontsynonym [AntykwaPoltawskiego-BoldItalic] [\typescriptthree-antpbi] [encoding=\typescriptthree] \stoptypescript % Palatino (URW) \starttypescript [serif] [palatino] [texnansi,ec,8r,t5] - \definefontsynonym [Palatino] [\typefaceencoding-uplr8a] [encoding=\typefaceencoding] - \definefontsynonym [Palatino-Italic] [\typefaceencoding-uplri8a] [encoding=\typefaceencoding] - \definefontsynonym [Palatino-Bold] [\typefaceencoding-uplb8a] [encoding=\typefaceencoding] - \definefontsynonym [Palatino-BoldItalic] [\typefaceencoding-uplbi8a] [encoding=\typefaceencoding] - - \definefontsynonym [Palatino-Slanted] [\typefaceencoding-uplr8a-slanted-167] [encoding=\typefaceencoding] - \definefontsynonym [Palatino-BoldSlanted] [\typefaceencoding-uplb8a-slanted-167] [encoding=\typefaceencoding] - \definefontsynonym [Palatino-Caps] [\typefaceencoding-uplr8a-capitalized-800] [encoding=\typefaceencoding] + \definefontsynonym [Palatino] [\typescriptthree-uplr8a] [encoding=\typescriptthree] + \definefontsynonym [Palatino-Italic] [\typescriptthree-uplri8a] [encoding=\typescriptthree] + \definefontsynonym [Palatino-Bold] [\typescriptthree-uplb8a] [encoding=\typescriptthree] + \definefontsynonym [Palatino-BoldItalic] [\typescriptthree-uplbi8a] [encoding=\typescriptthree] + + \definefontsynonym [Palatino-Slanted] [\typescriptthree-uplr8a-slanted-167] [encoding=\typescriptthree] + \definefontsynonym [Palatino-BoldSlanted] [\typescriptthree-uplb8a-slanted-167] [encoding=\typescriptthree] + \definefontsynonym [Palatino-Caps] [\typescriptthree-uplr8a-capitalized-800] [encoding=\typescriptthree] \stoptypescript \starttypescript [serif] [palatino] [qx] @@ -1168,7 +1162,7 @@ % when these fonts are in tex live ... % -% \definefontsynonym [Palatino-Caps] [TeXPalladioL-SC] [encoding=\typefaceencoding] +% \definefontsynonym [Palatino-Caps] [TeXPalladioL-SC] [encoding=\typescriptthree] \starttypescript [serif] [palatino] [ec,texnansi,8r] @@ -1202,14 +1196,13 @@ % Bookman (URW) \starttypescript [serif] [bookman] [ec,texnansi,8r,t5] - \definefontsynonym [Bookman-Light] [\typefaceencoding-ubkl8a] [encoding=\typefaceencoding] - \definefontsynonym [Bookman-LightItalic] [\typefaceencoding-ubkli8a] [encoding=\typefaceencoding] - \definefontsynonym [Bookman-DemiBold] [\typefaceencoding-ubkd8a] [encoding=\typefaceencoding] - \definefontsynonym [Bookman-DemiBoldItalic] [\typefaceencoding-ubkdi8a] [encoding=\typefaceencoding] - - \definefontsynonym [Bookman-LightSlanted] [\typefaceencoding-ubkl8a-slanted-167] [encoding=\typefaceencoding] - \definefontsynonym [Bookman-DemiBoldSlanted] [\typefaceencoding-ubkd8a-slanted-167] [encoding=\typefaceencoding] - \definefontsynonym [Bookman-Light-Caps] [\typefaceencoding-ubkl8a-capitalized-800] [encoding=\typefaceencoding] + \definefontsynonym [Bookman-Light] [\typescriptthree-ubkl8a] [encoding=\typescriptthree] + \definefontsynonym [Bookman-LightItalic] [\typescriptthree-ubkli8a] [encoding=\typescriptthree] + \definefontsynonym [Bookman-DemiBold] [\typescriptthree-ubkd8a] [encoding=\typescriptthree] + \definefontsynonym [Bookman-DemiBoldItalic] [\typescriptthree-ubkdi8a] [encoding=\typescriptthree] + \definefontsynonym [Bookman-LightSlanted] [\typescriptthree-ubkl8a-slanted-167] [encoding=\typescriptthree] + \definefontsynonym [Bookman-DemiBoldSlanted] [\typescriptthree-ubkd8a-slanted-167] [encoding=\typescriptthree] + \definefontsynonym [Bookman-Light-Caps] [\typescriptthree-ubkl8a-capitalized-800] [encoding=\typescriptthree] \stoptypescript \starttypescript [serif] [bookman] [qx] @@ -1226,7 +1219,7 @@ % Chancery (URW) \starttypescript [calligraphy] [chancery] [ec,texnansi,8r] - \definefontsynonym [Chancery] [\typefaceencoding-uzcmi8a] [encoding=\typefaceencoding] + \definefontsynonym [Chancery] [\typescriptthree-uzcmi8a] [encoding=\typescriptthree] \stoptypescript \starttypescript [calligraphy] [chancery] [qx] @@ -1236,39 +1229,37 @@ % New Century Schoolbook (URW) \starttypescript [serif] [schoolbook] [ec,texnansi,8r,t5] - \definefontsynonym [Schoolbook-Roman] [\typefaceencoding-uncr8a] [encoding=\typefaceencoding] - \definefontsynonym [Schoolbook-Italic] [\typefaceencoding-uncri8a] [encoding=\typefaceencoding] - \definefontsynonym [Schoolbook-Bold] [\typefaceencoding-uncb8a] [encoding=\typefaceencoding] - \definefontsynonym [Schoolbook-BoldItalic] [\typefaceencoding-uncbi8a] [encoding=\typefaceencoding] - \definefontsynonym [Schoolbook-RomanSlanted] [\typefaceencoding-uncr8a-slanted-167] [encoding=\typefaceencoding] - \definefontsynonym [Schoolbook-BoldSlanted] [\typefaceencoding-uncb8a-slanted-167] [encoding=\typefaceencoding] - \definefontsynonym [Schoolbook-Roman-Caps] [\typefaceencoding-uncr8a-capitalized-800] [encoding=\typefaceencoding] + \definefontsynonym [Schoolbook-Roman] [\typescriptthree-uncr8a] [encoding=\typescriptthree] + \definefontsynonym [Schoolbook-Italic] [\typescriptthree-uncri8a] [encoding=\typescriptthree] + \definefontsynonym [Schoolbook-Bold] [\typescriptthree-uncb8a] [encoding=\typescriptthree] + \definefontsynonym [Schoolbook-BoldItalic] [\typescriptthree-uncbi8a] [encoding=\typescriptthree] + \definefontsynonym [Schoolbook-RomanSlanted] [\typescriptthree-uncr8a-slanted-167] [encoding=\typescriptthree] + \definefontsynonym [Schoolbook-BoldSlanted] [\typescriptthree-uncb8a-slanted-167] [encoding=\typescriptthree] + \definefontsynonym [Schoolbook-Roman-Caps] [\typescriptthree-uncr8a-capitalized-800] [encoding=\typescriptthree] \stoptypescript % Utopia (Adobe) \starttypescript [serif] [utopia] [ec,texnansi] - \definefontsynonym [Utopia-Regular] [\typefaceencoding-putr8a] [encoding=\typefaceencoding] - \definefontsynonym [Utopia-Italic] [\typefaceencoding-putri8a] [encoding=\typefaceencoding] - \definefontsynonym [Utopia-Bold] [\typefaceencoding-putb8a] [encoding=\typefaceencoding] - \definefontsynonym [Utopia-BoldItalic] [\typefaceencoding-putbi8a] [encoding=\typefaceencoding] - - \definefontsynonym [Utopia-Slanted] [\typefaceencoding-putr8a-slanted-167] [encoding=\typefaceencoding] - \definefontsynonym [Utopia-BoldSlanted] [\typefaceencoding-putb8a-slanted-167] [encoding=\typefaceencoding] - \definefontsynonym [Utopia-Regular-Caps][\typefaceencoding-putr8a-capitalized-800] [encoding=\typefaceencoding] + \definefontsynonym [Utopia-Regular] [\typescriptthree-putr8a] [encoding=\typescriptthree] + \definefontsynonym [Utopia-Italic] [\typescriptthree-putri8a] [encoding=\typescriptthree] + \definefontsynonym [Utopia-Bold] [\typescriptthree-putb8a] [encoding=\typescriptthree] + \definefontsynonym [Utopia-BoldItalic] [\typescriptthree-putbi8a] [encoding=\typescriptthree] + \definefontsynonym [Utopia-Slanted] [\typescriptthree-putr8a-slanted-167] [encoding=\typescriptthree] + \definefontsynonym [Utopia-BoldSlanted] [\typescriptthree-putb8a-slanted-167] [encoding=\typescriptthree] + \definefontsynonym [Utopia-Regular-Caps][\typescriptthree-putr8a-capitalized-800] [encoding=\typescriptthree] \stoptypescript % Charter (Bitstream) \starttypescript [serif] [charter] [ec,texnansi,8r] - \definefontsynonym [Charter-Roman] [\typefaceencoding-bchr8a] [encoding=\typefaceencoding] - \definefontsynonym [Charter-Italic] [\typefaceencoding-bchri8a] [encoding=\typefaceencoding] - \definefontsynonym [Charter-Bold] [\typefaceencoding-bchb8a] [encoding=\typefaceencoding] - \definefontsynonym [Charter-BoldItalic] [\typefaceencoding-bchbi8a] [encoding=\typefaceencoding] - - \definefontsynonym [Charter-Slanted] [\typefaceencoding-bchr8a-slanted-167] [encoding=\typefaceencoding] - \definefontsynonym [Charter-BoldSlanted][\typefaceencoding-bchb8a-slanted-167] [encoding=\typefaceencoding] - \definefontsynonym [Charter-Roman-Caps] [\typefaceencoding-bchr8a-capitalized-800] [encoding=\typefaceencoding] + \definefontsynonym [Charter-Roman] [\typescriptthree-bchr8a] [encoding=\typescriptthree] + \definefontsynonym [Charter-Italic] [\typescriptthree-bchri8a] [encoding=\typescriptthree] + \definefontsynonym [Charter-Bold] [\typescriptthree-bchb8a] [encoding=\typescriptthree] + \definefontsynonym [Charter-BoldItalic] [\typescriptthree-bchbi8a] [encoding=\typescriptthree] + \definefontsynonym [Charter-Slanted] [\typescriptthree-bchr8a-slanted-167] [encoding=\typescriptthree] + \definefontsynonym [Charter-BoldSlanted][\typescriptthree-bchb8a-slanted-167] [encoding=\typescriptthree] + \definefontsynonym [Charter-Roman-Caps] [\typescriptthree-bchr8a-capitalized-800] [encoding=\typescriptthree] \stoptypescript % Whatever else we need: @@ -1279,223 +1270,4 @@ \definefontsynonym [MartinVogel] [fmvr8x] \stoptypescript -%D For those who want to use the existing tfm and vf files we -%D provide: - -\starttypescript [berry] [8r] - -\setupencoding[default=8r] - -\definefontsynonym [8r-utmr8a] [utmr8r] [encoding=8r] -\definefontsynonym [8r-utmri8a] [utmri8r] [encoding=8r] -\definefontsynonym [8r-utmb8a] [utmb8r] [encoding=8r] -\definefontsynonym [8r-utmbi8a] [utmbi8r] [encoding=8r] - -\definefontsynonym [8r-utmr8a-slanted-167] [utmro8r] [encoding=8r] -\definefontsynonym [8r-utmb8a-slanted-167] [utmbo8r] [encoding=8r] - -\definefontsynonym [8r-uhvr8a] [uhvr8r] [encoding=8r] -\definefontsynonym [8r-uhvro8a] [uhvro8r] [encoding=8r] -\definefontsynonym [8r-uhvb8a] [uhvb8r] [encoding=8r] -\definefontsynonym [8r-uhvbo8a] [uhvbo8r] [encoding=8r] - -\definefontsynonym [8r-ucrr8a] [ucrr8r] [encoding=8r] -\definefontsynonym [8r-ucrb8a] [ucrb8r] [encoding=8r] -\definefontsynonym [8r-ucrro8a] [ucrro8r] [encoding=8r] -\definefontsynonym [8r-ucrbo8a] [ucrbo8r] [encoding=8r] - -\definefontsynonym [8r-uplr8a] [uplr8r] [encoding=8r] -\definefontsynonym [8r-uplri8a] [uplri8r] [encoding=8r] -\definefontsynonym [8r-uplb8a] [uplb8r] [encoding=8r] -\definefontsynonym [8r-uplbi8a] [uplbi8r] [encoding=8r] -\definefontsynonym [8r-uplr8a-slanted-167] [uplro8r] [encoding=8r] -\definefontsynonym [8r-uplb8a-slanted-167] [uplbo8r] [encoding=8r] -\definefontsynonym [8r-uplr8a-capitalized-800] [uplr8r] [encoding=8r] - -\definefontsynonym [8r-ubkl8a] [ubkl8r] [encoding=8r] -\definefontsynonym [8r-ubkli8a] [ubkli8r] [encoding=8r] -\definefontsynonym [8r-ubkd8a] [ubkd8r] [encoding=8r] -\definefontsynonym [8r-ubkdi8a] [ubkdi8r] [encoding=8r] -\definefontsynonym [8r-ubkl8a-slanted-167] [ubklo8r] [encoding=8r] -\definefontsynonym [8r-ubkd8a-slanted-167] [ubkdo8r] [encoding=8r] -\definefontsynonym [8r-ubkl8a-capitalized-800] [ubkl8r] [encoding=8r] - -\definefontsynonym [8r-uzcmi8a] [uzcmi8r] [encoding=8r] - -\definefontsynonym [8r-putr8a] [putr8r] [encoding=8r] -\definefontsynonym [8r-putri8a] [putri8r] [encoding=8r] -\definefontsynonym [8r-putb8a] [putr8r] [encoding=8r] -\definefontsynonym [8r-putbi8a] [putbi8r] [encoding=8r] -\definefontsynonym [8r-putr8a-slanted-167] [putro8r] [encoding=8r] -\definefontsynonym [8r-putb8a-slanted-167] [putbo8r] [encoding=8r] -\definefontsynonym [8r-putr8a-capitalized-800] [putr8r] [encoding=8r] - -\definefontsynonym [8r-bchr8a] [bchr8r] [encoding=8r] -\definefontsynonym [8r-bchri8a] [bchri8r] [encoding=8r] -\definefontsynonym [8r-bchb8a] [bchb8r] [encoding=8r] -\definefontsynonym [8r-bchbi8a] [bchbi8r] [encoding=8r] -\definefontsynonym [8r-bchr8a-slanted-167] [bchro8r] [encoding=8r] -\definefontsynonym [8r-bchb8a-slanted-167] [bchbo8r] [encoding=8r] -\definefontsynonym [8r-bchr8a-capitalized-800] [bchr8r] [encoding=8r] - -\stoptypescript - -\starttypescript [berry] [ec] - -\setupencoding[default=ec] - -\definefontsynonym [ec-utmr8a] [utmr8t] [encoding=ec] -\definefontsynonym [ec-utmri8a] [utmri8t] [encoding=ec] -\definefontsynonym [ec-utmb8a] [utmb8t] [encoding=ec] -\definefontsynonym [ec-utmbi8a] [utmbi8t] [encoding=ec] - -\definefontsynonym [ec-utmr8a-slanted-167] [utmro8t] [encoding=ec] -\definefontsynonym [ec-utmb8a-slanted-167] [utmbo8t] [encoding=ec] - -\definefontsynonym [ec-uhvr8a] [uhvr8t] [encoding=ec] -\definefontsynonym [ec-uhvro8a] [uhvro8t] [encoding=ec] -\definefontsynonym [ec-uhvb8a] [uhvb8t] [encoding=ec] -\definefontsynonym [ec-uhvbo8a] [uhvbo8t] [encoding=ec] - -\definefontsynonym [ec-ucrr8a] [ucrr8t] [encoding=ec] -\definefontsynonym [ec-ucrb8a] [ucrb8t] [encoding=ec] -\definefontsynonym [ec-ucrro8a] [ucrro8t] [encoding=ec] -\definefontsynonym [ec-ucrbo8a] [ucrbo8t] [encoding=ec] - -\definefontsynonym [ec-uplr8a] [uplr8t] [encoding=ec] -\definefontsynonym [ec-uplri8a] [uplri8t] [encoding=ec] -\definefontsynonym [ec-uplb8a] [uplb8t] [encoding=ec] -\definefontsynonym [ec-uplbi8a] [uplbi8t] [encoding=ec] -\definefontsynonym [ec-uplr8a-slanted-167] [uplro8t] [encoding=ec] -\definefontsynonym [ec-uplb8a-slanted-167] [uplbo8t] [encoding=ec] -\definefontsynonym [ec-uplr8a-capitalized-800] [uplr8t] [encoding=ec] - -\definefontsynonym [ec-ubkl8a] [ubkl8t] [encoding=ec] -\definefontsynonym [ec-ubkli8a] [ubkli8t] [encoding=ec] -\definefontsynonym [ec-ubkd8a] [ubkd8t] [encoding=ec] -\definefontsynonym [ec-ubkdi8a] [ubkdi8t] [encoding=ec] -\definefontsynonym [ec-ubkl8a-slanted-167] [ubklo8t] [encoding=ec] -\definefontsynonym [ec-ubkd8a-slanted-167] [ubkdo8t] [encoding=ec] -\definefontsynonym [ec-ubkl8a-capitalized-800] [ubkl8t] [encoding=ec] - -\definefontsynonym [ec-uzcmi8a] [uzcmi8t] [encoding=ec] - -\definefontsynonym [ec-putr8a] [putr8t] [encoding=ec] -\definefontsynonym [ec-putri8a] [putri8t] [encoding=ec] -\definefontsynonym [ec-putb8a] [putr8t] [encoding=ec] -\definefontsynonym [ec-putbi8a] [putbi8t] [encoding=ec] -\definefontsynonym [ec-putr8a-slanted-167] [putro8t] [encoding=ec] -\definefontsynonym [ec-putb8a-slanted-167] [putbo8t] [encoding=ec] -\definefontsynonym [ec-putr8a-capitalized-800] [putr8t] [encoding=ec] - -\definefontsynonym [ec-bchr8a] [bchr8t] [encoding=ec] -\definefontsynonym [ec-bchri8a] [bchri8t] [encoding=ec] -\definefontsynonym [ec-bchb8a] [bchb8t] [encoding=ec] -\definefontsynonym [ec-bchbi8a] [bchbi8t] [encoding=ec] -\definefontsynonym [ec-bchr8a-slanted-167] [bchro8t] [encoding=ec] -\definefontsynonym [ec-bchb8a-slanted-167] [bchbo8t] [encoding=ec] -\definefontsynonym [ec-bchr8a-capitalized-800] [bchr8t] [encoding=ec] - -\stoptypescript - -% the following fonts are normally not present on tex live - -\starttypescript [berry] [texnansi] - -\setupencoding[default=texnansi] - -\definefontsynonym [texnansi-utmr8a] [utmr8y] [encoding=texnansi] -\definefontsynonym [texnansi-utmri8a] [utmri8y] [encoding=texnansi] -\definefontsynonym [texnansi-utmb8a] [utmb8y] [encoding=texnansi] -\definefontsynonym [texnansi-utmbi8a] [utmbi8y] [encoding=texnansi] - -\definefontsynonym [texnansi-utmr8a-slanted-167] [ptmro8y] [encoding=texnansi] -\definefontsynonym [texnansi-utmb8a-slanted-167] [ptmbo8y] [encoding=texnansi] - -\definefontsynonym [texnansi-uhvr8a] [uhvr8y] [encoding=texnansi] -\definefontsynonym [texnansi-uhvro8a] [uhvro8y] [encoding=texnansi] -\definefontsynonym [texnansi-uhvb8a] [uhvb8y] [encoding=texnansi] -\definefontsynonym [texnansi-uhvbo8a] [uhvbo8y] [encoding=texnansi] - -\definefontsynonym [texnansi-ucrr8a] [pcrr8y] [encoding=texnansi] -\definefontsynonym [texnansi-ucrb8a] [pcrb8y] [encoding=texnansi] -\definefontsynonym [texnansi-ucrro8a] [pcrro8y] [encoding=texnansi] -\definefontsynonym [texnansi-ucrbo8a] [pcrbo8y] [encoding=texnansi] - -\definefontsynonym [texnansi-uplr8a] [uplr8y] [encoding=texnansi] -\definefontsynonym [texnansi-uplri8a] [uplri8y] [encoding=texnansi] -\definefontsynonym [texnansi-uplb8a] [uplb8y] [encoding=texnansi] -\definefontsynonym [texnansi-uplbi8a] [uplbi8y] [encoding=texnansi] -\definefontsynonym [texnansi-uplr8a-slanted-167] [uplro8y] [encoding=texnansi] -\definefontsynonym [texnansi-uplb8a-slanted-167] [uplbo8y] [encoding=texnansi] -\definefontsynonym [texnansi-uplr8a-capitalized-800] [uplr8y] [encoding=texnansi] - -\definefontsynonym [texnansi-ubkl8a] [ubkl8y] [encoding=texnansi] -\definefontsynonym [texnansi-ubkli8a] [ubkli8y] [encoding=texnansi] -\definefontsynonym [texnansi-ubkd8a] [ubkd8y] [encoding=texnansi] -\definefontsynonym [texnansi-ubkdi8a] [ubkdi8y] [encoding=texnansi] -\definefontsynonym [texnansi-ubkl8a-slanted-167] [ubklo8y] [encoding=texnansi] -\definefontsynonym [texnansi-ubkd8a-slanted-167] [ubkdo8y] [encoding=texnansi] -\definefontsynonym [texnansi-ubkl8a-capitalized-800] [ubkl8y] [encoding=texnansi] - -\definefontsynonym [texnansi-uzcmi8a] [uzcmi8y] [encoding=texnansi] - -\definefontsynonym [texnansi-putr8a] [putr8y] [encoding=texnansi] -\definefontsynonym [texnansi-putri8a] [putri8y] [encoding=texnansi] -\definefontsynonym [texnansi-putb8a] [putr8y] [encoding=texnansi] -\definefontsynonym [texnansi-putbi8a] [putbi8y] [encoding=texnansi] -\definefontsynonym [texnansi-putr8a-slanted-167] [putro8y] [encoding=texnansi] -\definefontsynonym [texnansi-putb8a-slanted-167] [putbo8y] [encoding=texnansi] -\definefontsynonym [texnansi-putr8a-capitalized-800] [putr8y] [encoding=texnansi] - -\definefontsynonym [texnansi-bchr8a] [bchr8y] [encoding=texnansi] -\definefontsynonym [texnansi-bchri8a] [bchri8y] [encoding=texnansi] -\definefontsynonym [texnansi-bchb8a] [bchb8y] [encoding=texnansi] -\definefontsynonym [texnansi-bchbi8a] [bchbi8y] [encoding=texnansi] -\definefontsynonym [texnansi-bchr8a-slanted-167] [bchro8y] [encoding=texnansi] -\definefontsynonym [texnansi-bchb8a-slanted-167] [bchbo8y] [encoding=texnansi] -\definefontsynonym [texnansi-bchr8a-capitalized-800] [bchr8y] [encoding=texnansi] - -\stoptypescript - -\starttypescript [berry] [t5] - -\setupencoding[default=t5] - -\definefontsynonym [t5-utmr8a] [utmr8v] [encoding=t5] -\definefontsynonym [t5-utmri8a] [utmri8v] [encoding=t5] -\definefontsynonym [t5-utmb8a] [utmb8v] [encoding=t5] -\definefontsynonym [t5-utmbi8a] [utmbi8v] [encoding=t5] - -\definefontsynonym [t5-utmr8a-slanted-167] [utmro8v] [encoding=t5] -\definefontsynonym [t5-utmb8a-slanted-167] [utmbo8v] [encoding=t5] - -\definefontsynonym [t5-uhvr8a] [uhvr8v] [encoding=t5] -\definefontsynonym [t5-uhvro8a] [uhvro8v] [encoding=t5] -\definefontsynonym [t5-uhvb8a] [uhvb8v] [encoding=t5] -\definefontsynonym [t5-uhvbo8a] [uhvbo8v] [encoding=t5] - -\definefontsynonym [t5-ucrr8a] [ucrr8v] [encoding=t5] -\definefontsynonym [t5-ucrb8a] [ucrb8v] [encoding=t5] -\definefontsynonym [t5-ucrro8a] [ucrro8v] [encoding=t5] -\definefontsynonym [t5-ucrbo8a] [ucrbo8v] [encoding=t5] - -\definefontsynonym [t5-uplr8a] [uplr8v] [encoding=t5] -\definefontsynonym [t5-uplri8a] [uplri8v] [encoding=t5] -\definefontsynonym [t5-uplb8a] [uplb8v] [encoding=t5] -\definefontsynonym [t5-uplbi8a] [uplbi8v] [encoding=t5] -\definefontsynonym [t5-uplr8a-slanted-167] [uplro8v] [encoding=t5] -\definefontsynonym [t5-uplb8a-slanted-167] [uplbo8v] [encoding=t5] -\definefontsynonym [t5-uplr8a-capitalized-800] [uplr8v] [encoding=t5] - -\definefontsynonym [t5-ubkl8a] [ubkl8v] [encoding=t5] -\definefontsynonym [t5-ubkli8a] [ubkli8v] [encoding=t5] -\definefontsynonym [t5-ubkd8a] [ubkd8v] [encoding=t5] -\definefontsynonym [t5-ubkdi8a] [ubkdi8v] [encoding=t5] -\definefontsynonym [t5-ubkl8a-slanted-167] [ubklo8v] [encoding=t5] -\definefontsynonym [t5-ubkd8a-slanted-167] [ubkdo8v] [encoding=t5] -\definefontsynonym [t5-ubkl8a-capitalized-800] [ubkl8v] [encoding=t5] - -\stoptypescript - \endinput diff --git a/tex/context/base/type-exa.tex b/tex/context/base/type-exa.tex index 84f34ca58..bea98c43e 100644 --- a/tex/context/base/type-exa.tex +++ b/tex/context/base/type-exa.tex @@ -13,7 +13,7 @@ %D A couple of goodies: -\starttypescript [modern] [texnansi,ec,il2,pl0,t5,default] +\starttypescript [modern] [texnansi,ec,il2,qx,pl0,t5,default] \definetypeface [modern] [rm] [serif] [latin-modern] [computer-modern] [encoding=\typescripttwo] \definetypeface [modern] [ss] [sans] [latin-modern] [computer-modern] [encoding=\typescripttwo] @@ -22,7 +22,7 @@ \stoptypescript -\starttypescript [modern-base] [texnansi,ec,il2,pl0,t5,default] +\starttypescript [modern-base] [texnansi,ec,qx,il2,pl0,t5,default] \definetypeface [modern] [rm] [serif] [computer-modern] [default] [encoding=\typescripttwo] \definetypeface [modern] [ss] [sans] [computer-modern] [default] [encoding=\typescripttwo] @@ -31,7 +31,7 @@ \stoptypescript -\starttypescript [postscript] [texnansi,ec,8r,t5,uc] +\starttypescript [postscript] [texnansi,ec,qx,8r,t5,uc] \definetypeface [postscript] [rm] [serif] [times] [default] [encoding=\typescripttwo] \definetypeface [postscript] [ss] [sans] [helvetica] [default] [rscale=.9,encoding=\typescripttwo] @@ -40,7 +40,7 @@ \stoptypescript -\starttypescript [times] [texnansi,ec,8r,t5,uc] +\starttypescript [times] [texnansi,ec,qx,8r,t5,uc] \definetypeface [times] [rm] [serif] [times] [default] [encoding=\typescripttwo] \definetypeface [times] [ss] [sans] [helvetica] [default] [encoding=\typescripttwo,rscale=0.9] @@ -51,7 +51,7 @@ \stoptypescript -\starttypescript [palatino] [texnansi,ec,8r,t5,uc] +\starttypescript [palatino] [texnansi,ec,qx,8r,t5,uc] \definetypeface [palatino] [rm] [serif] [palatino] [default] [encoding=\typescripttwo] \definetypeface [palatino] [tt] [mono] [modern] [default] [encoding=\typescripttwo,rscale=1.075] @@ -159,7 +159,7 @@ \stoptypescript -\starttypescript [modernvariable] [texnansi,ec,8r,t5] +\starttypescript [modernvariable] [texnansi,ec,qx,8r,t5] \definetypeface [modernvariable] [rm] [serif] [simple] [default] [encoding=\typescripttwo] \definetypeface [modernvariable] [ss] [sans] [modern] [default] [encoding=\typescripttwo] diff --git a/tex/context/base/type-fsf.tex b/tex/context/base/type-fsf.tex index 264420abf..58c73dae4 100644 --- a/tex/context/base/type-fsf.tex +++ b/tex/context/base/type-fsf.tex @@ -19,20 +19,20 @@ \starttypescript [sans] [opus] [texnansi,ec,8r] - \definefontsynonym [Opus] [\typefaceencoding-opusrg] [encoding=\typefaceencoding] - \definefontsynonym [OpusSmCaps] [\typefaceencoding-opusscrg] [encoding=\typefaceencoding] - \definefontsynonym [Opus-Italic] [\typefaceencoding-opusi] [encoding=\typefaceencoding] - \definefontsynonym [Opus-Bold] [\typefaceencoding-opusb] [encoding=\typefaceencoding] - \definefontsynonym [Opus-BoldItalic] [\typefaceencoding-opusbi] [encoding=\typefaceencoding] - \definefontsynonym [OpusSmCaps-Bold] [\typefaceencoding-opusscb] [encoding=\typefaceencoding] + \definefontsynonym [Opus] [\typescriptthree-opusrg] [encoding=\typescriptthree] + \definefontsynonym [OpusSmCaps] [\typescriptthree-opusscrg] [encoding=\typescriptthree] + \definefontsynonym [Opus-Italic] [\typescriptthree-opusi] [encoding=\typescriptthree] + \definefontsynonym [Opus-Bold] [\typescriptthree-opusb] [encoding=\typescriptthree] + \definefontsynonym [Opus-BoldItalic] [\typescriptthree-opusbi] [encoding=\typescriptthree] + \definefontsynonym [OpusSmCaps-Bold] [\typescriptthree-opusscb] [encoding=\typescriptthree] - \definefontsynonym [Opus-Slanted] [\typefaceencoding-opusrg-slanted-167] [encoding=\typefaceencoding] - \definefontsynonym [Opus-BoldSlanted] [\typefaceencoding-opusb-slanted-167] [encoding=\typefaceencoding] + \definefontsynonym [Opus-Slanted] [\typescriptthree-opusrg-slanted-167] [encoding=\typescriptthree] + \definefontsynonym [Opus-BoldSlanted] [\typescriptthree-opusb-slanted-167] [encoding=\typescriptthree] \stoptypescript \starttypescript [map] [opus] [texnansi,ec,8r] - \loadmapfile[\typefaceencoding-fontsite-opus.map] + \loadmapfile[\typescriptthree-fontsite-opus.map] \stoptypescript \starttypescript [mono] [typewriter] [name] @@ -50,21 +50,21 @@ \starttypescript [mono] [typewriter] [texnansi,ec,8r] - \definefontsynonym [Typewriter] [\typefaceencoding-typerg] [encoding=\typefaceencoding] - \definefontsynonym [Typewriter-Italic] [\typefaceencoding-typei] [encoding=\typefaceencoding] - \definefontsynonym [Typewriter-Bold] [\typefaceencoding-typeb] [encoding=\typefaceencoding] - \definefontsynonym [Typewriter-BoldItalic] [\typefaceencoding-typebi] [encoding=\typefaceencoding] + \definefontsynonym [Typewriter] [\typescriptthree-typerg] [encoding=\typescriptthree] + \definefontsynonym [Typewriter-Italic] [\typescriptthree-typei] [encoding=\typescriptthree] + \definefontsynonym [Typewriter-Bold] [\typescriptthree-typeb] [encoding=\typescriptthree] + \definefontsynonym [Typewriter-BoldItalic] [\typescriptthree-typebi] [encoding=\typescriptthree] - \definefontsynonym [Typewriter-Slanted] [\typefaceencoding-typerg-slanted-167] [encoding=\typefaceencoding] - \definefontsynonym [Typewriter-BoldSlanted] [\typefaceencoding-typeb-slanted-167] [encoding=\typefaceencoding] + \definefontsynonym [Typewriter-Slanted] [\typescriptthree-typerg-slanted-167] [encoding=\typescriptthree] + \definefontsynonym [Typewriter-BoldSlanted] [\typescriptthree-typeb-slanted-167] [encoding=\typescriptthree] - \definefontsynonym [TypewriterCond] [\typefaceencoding-typecrg] - \definefontsynonym [TypewriterCond-Bold] [\typefaceencoding-typecb] + \definefontsynonym [TypewriterCond] [\typescriptthree-typecrg] + \definefontsynonym [TypewriterCond-Bold] [\typescriptthree-typecb] \stoptypescript \starttypescript [map] [typewriter] [texnansi,ec,8r] - \loadmapfile[\typefaceencoding-fontsite-typewriter.map] + \loadmapfile[\typescriptthree-fontsite-typewriter.map] \stoptypescript \starttypescript [serif] [garamond] [name] @@ -82,20 +82,20 @@ \starttypescript [serif] [garamond] [texnansi,ec,8r] - \definefontsynonym [FSGaramond] [\typefaceencoding-garamond] [encoding=\typefaceencoding] - \definefontsynonym [FSGaramondSmCaps] [\typefaceencoding-garasc] [encoding=\typefaceencoding] - \definefontsynonym [FSGaramond-Italic] [\typefaceencoding-garai] [encoding=\typefaceencoding] - \definefontsynonym [FSGaramond-Bold] [\typefaceencoding-garab] [encoding=\typefaceencoding] - \definefontsynonym [FSGaramond-BoldItalic] [\typefaceencoding-garabi] [encoding=\typefaceencoding] - \definefontsynonym [FSGaramondSmCaps-Bold] [\typefaceencoding-garascb] [encoding=\typefaceencoding] + \definefontsynonym [FSGaramond] [\typescriptthree-garamond] [encoding=\typescriptthree] + \definefontsynonym [FSGaramondSmCaps] [\typescriptthree-garasc] [encoding=\typescriptthree] + \definefontsynonym [FSGaramond-Italic] [\typescriptthree-garai] [encoding=\typescriptthree] + \definefontsynonym [FSGaramond-Bold] [\typescriptthree-garab] [encoding=\typescriptthree] + \definefontsynonym [FSGaramond-BoldItalic] [\typescriptthree-garabi] [encoding=\typescriptthree] + \definefontsynonym [FSGaramondSmCaps-Bold] [\typescriptthree-garascb] [encoding=\typescriptthree] - \definefontsynonym [FSGaramond-Slanted] [\typefaceencoding-garamond-slanted-167] [encoding=\typefaceencoding] - \definefontsynonym [FSGaramond-BoldSlanted] [\typefaceencoding-garab-slanted-167] [encoding=\typefaceencoding] + \definefontsynonym [FSGaramond-Slanted] [\typescriptthree-garamond-slanted-167] [encoding=\typescriptthree] + \definefontsynonym [FSGaramond-BoldSlanted] [\typescriptthree-garab-slanted-167] [encoding=\typescriptthree] \stoptypescript \starttypescript [map] [garamond] [texnansi,ec,8r] - \loadmapfile[\typefaceencoding-fontsite-garamond.map] + \loadmapfile[\typescriptthree-fontsite-garamond.map] \stoptypescript \endinput diff --git a/tex/context/base/type-ghz.tex b/tex/context/base/type-ghz.tex index 2b4fe2d76..44347bdba 100644 --- a/tex/context/base/type-ghz.tex +++ b/tex/context/base/type-ghz.tex @@ -8,12 +8,12 @@ \starttypescript [serif,handwriting] [zapfino] [texnansi,ec,8r] % todo: handwriting - \definefontsynonym [ZapfinoOne] [\typefaceencoding-lt54223] [encoding=\typefaceencoding] - \definefontsynonym [ZapfinoTwo] [\typefaceencoding-lt54224] [encoding=\typefaceencoding] - \definefontsynonym [ZapfinoThree] [\typefaceencoding-lt54225] [encoding=\typefaceencoding] - \definefontsynonym [ZapfinoFour] [\typefaceencoding-lt54226] [encoding=\typefaceencoding] + \definefontsynonym [ZapfinoOne] [\typescriptthree-lt54223] [encoding=\typescriptthree] + \definefontsynonym [ZapfinoTwo] [\typescriptthree-lt54224] [encoding=\typescriptthree] + \definefontsynonym [ZapfinoThree] [\typescriptthree-lt54225] [encoding=\typescriptthree] + \definefontsynonym [ZapfinoFour] [\typescriptthree-lt54226] [encoding=\typescriptthree] - \loadmapfile[\typefaceencoding-linotype-zapfino.map] + \loadmapfile[\typescriptthree-linotype-zapfino.map] \stoptypescript @@ -38,28 +38,28 @@ \starttypescript [sans] [optima,optima-nova] [texnansi,ec,8r] - \loadmapfile[\typefaceencoding-linotype-optima.map] + \loadmapfile[\typescriptthree-linotype-optima.map] - \definefontsynonym [OptimaLT] [\typefaceencoding-lte50019] [encoding=\typefaceencoding] - \definefontsynonym [OptimaLT-Italic] [\typefaceencoding-lte52401] [encoding=\typefaceencoding] - \definefontsynonym [OptimaLT-Bold] [\typefaceencoding-lte50021] [encoding=\typefaceencoding] - \definefontsynonym [OptimaLT-BoldItalic] [\typefaceencoding-lte54379] [encoding=\typefaceencoding] + \definefontsynonym [OptimaLT] [\typescriptthree-lte50019] [encoding=\typescriptthree] + \definefontsynonym [OptimaLT-Italic] [\typescriptthree-lte52401] [encoding=\typescriptthree] + \definefontsynonym [OptimaLT-Bold] [\typescriptthree-lte50021] [encoding=\typescriptthree] + \definefontsynonym [OptimaLT-BoldItalic] [\typescriptthree-lte54379] [encoding=\typescriptthree] - \definefontsynonym [OptimaLT-Medium] [\typefaceencoding-lte53505] [encoding=\typefaceencoding] - \definefontsynonym [OptimaLT-MediumItalic] [\typefaceencoding-lte53506] [encoding=\typefaceencoding] - \definefontsynonym [OptimaLT-DemiBold] [\typefaceencoding-lte53507] [encoding=\typefaceencoding] - \definefontsynonym [OptimaLT-DemiBoldItalic] [\typefaceencoding-lte53508] [encoding=\typefaceencoding] - \definefontsynonym [OptimaLT-Black] [\typefaceencoding-lte53509] [encoding=\typefaceencoding] - \definefontsynonym [OptimaLT-BlackItalic] [\typefaceencoding-lte53510] [encoding=\typefaceencoding] - \definefontsynonym [OptimaLT-ExtraBlack] [\typefaceencoding-lte53511] [encoding=\typefaceencoding] - \definefontsynonym [OptimaLT-ExtraBlackItalic] [\typefaceencoding-lte53512] [encoding=\typefaceencoding] + \definefontsynonym [OptimaLT-Medium] [\typescriptthree-lte53505] [encoding=\typescriptthree] + \definefontsynonym [OptimaLT-MediumItalic] [\typescriptthree-lte53506] [encoding=\typescriptthree] + \definefontsynonym [OptimaLT-DemiBold] [\typescriptthree-lte53507] [encoding=\typescriptthree] + \definefontsynonym [OptimaLT-DemiBoldItalic] [\typescriptthree-lte53508] [encoding=\typescriptthree] + \definefontsynonym [OptimaLT-Black] [\typescriptthree-lte53509] [encoding=\typescriptthree] + \definefontsynonym [OptimaLT-BlackItalic] [\typescriptthree-lte53510] [encoding=\typescriptthree] + \definefontsynonym [OptimaLT-ExtraBlack] [\typescriptthree-lte53511] [encoding=\typescriptthree] + \definefontsynonym [OptimaLT-ExtraBlackItalic] [\typescriptthree-lte53512] [encoding=\typescriptthree] \stoptypescript \starttypescript [map] [optima,optima-nova] [texnansi,ec,8r] - \loadmapfile[\typefaceencoding-linotype-optima.map] + \loadmapfile[\typescriptthree-linotype-optima.map] \stoptypescript @@ -79,15 +79,15 @@ \starttypescript [sans] [optima-nova] [texnansi,ec,8r] - \loadmapfile[\typefaceencoding-linotype-optima-nova.map] + \loadmapfile[\typescriptthree-linotype-optima-nova.map] - \definefontsynonym [OptimaNovaLT-Regular] [\typefaceencoding-lt55483] [encoding=\typefaceencoding] - \definefontsynonym [OptimaNovaLT-Italic] [\typefaceencoding-lt55486] [encoding=\typefaceencoding] + \definefontsynonym [OptimaNovaLT-Regular] [\typescriptthree-lt55483] [encoding=\typescriptthree] + \definefontsynonym [OptimaNovaLT-Italic] [\typescriptthree-lt55486] [encoding=\typescriptthree] \stoptypescript \starttypescript [map] [optima-nova] [texnansi,ec,8r] - \loadmapfile[\typefaceencoding-linotype-optima-nova.map] + \loadmapfile[\typescriptthree-linotype-optima-nova.map] \stoptypescript % palatino @@ -108,29 +108,29 @@ \starttypescript [serif] [palatino] [texnansi,ec,8r] - \loadmapfile[\typefaceencoding-linotype-palatino.map] + \loadmapfile[\typescriptthree-linotype-palatino.map] - \definefontsynonym[PalatinoLT-Roman] [\typefaceencoding-lte50001] [encoding=\typefaceencoding] - \definefontsynonym[PalatinoLT-Italic] [\typefaceencoding-lte50002] [encoding=\typefaceencoding] - \definefontsynonym[PalatinoLT-Bold] [\typefaceencoding-lte50003] [encoding=\typefaceencoding] - \definefontsynonym[PalatinoLT-BoldItalic] [\typefaceencoding-lte50004] [encoding=\typefaceencoding] + \definefontsynonym[PalatinoLT-Roman] [\typescriptthree-lte50001] [encoding=\typescriptthree] + \definefontsynonym[PalatinoLT-Italic] [\typescriptthree-lte50002] [encoding=\typescriptthree] + \definefontsynonym[PalatinoLT-Bold] [\typescriptthree-lte50003] [encoding=\typescriptthree] + \definefontsynonym[PalatinoLT-BoldItalic] [\typescriptthree-lte50004] [encoding=\typescriptthree] - \definefontsynonym[PalatinoLT-Light] [\typefaceencoding-lte52168] [encoding=\typefaceencoding] - \definefontsynonym[PalatinoLT-LightItalic] [\typefaceencoding-lte52169] [encoding=\typefaceencoding] - \definefontsynonym[PalatinoLT-Medium] [\typefaceencoding-lte52170] [encoding=\typefaceencoding] - \definefontsynonym[PalatinoLT-MediumItalic] [\typefaceencoding-lte52171] [encoding=\typefaceencoding] - \definefontsynonym[PalatinoLT-Black] [\typefaceencoding-lte52172] [encoding=\typefaceencoding] - \definefontsynonym[PalatinoLT-BlackItalic] [\typefaceencoding-lte52173] [encoding=\typefaceencoding] - \definefontsynonym[Palatino-BoldItalicOsF] [\typefaceencoding-pobio] [encoding=\typefaceencoding] - \definefontsynonym[Palatino-BoldOsF] [\typefaceencoding-pobos] [encoding=\typefaceencoding] - \definefontsynonym[Palatino-ItalicOsF] [\typefaceencoding-poios] [encoding=\typefaceencoding] + \definefontsynonym[PalatinoLT-Light] [\typescriptthree-lte52168] [encoding=\typescriptthree] + \definefontsynonym[PalatinoLT-LightItalic] [\typescriptthree-lte52169] [encoding=\typescriptthree] + \definefontsynonym[PalatinoLT-Medium] [\typescriptthree-lte52170] [encoding=\typescriptthree] + \definefontsynonym[PalatinoLT-MediumItalic] [\typescriptthree-lte52171] [encoding=\typescriptthree] + \definefontsynonym[PalatinoLT-Black] [\typescriptthree-lte52172] [encoding=\typescriptthree] + \definefontsynonym[PalatinoLT-BlackItalic] [\typescriptthree-lte52173] [encoding=\typescriptthree] + \definefontsynonym[Palatino-BoldItalicOsF] [\typescriptthree-pobio] [encoding=\typescriptthree] + \definefontsynonym[Palatino-BoldOsF] [\typescriptthree-pobos] [encoding=\typescriptthree] + \definefontsynonym[Palatino-ItalicOsF] [\typescriptthree-poios] [encoding=\typescriptthree] - \definefontsynonym[Palatino-SC] [\typefaceencoding-posc] [encoding=\typefaceencoding] + \definefontsynonym[Palatino-SC] [\typescriptthree-posc] [encoding=\typescriptthree] \stoptypescript \starttypescript [map] [palatino] [texnansi,ec,8r] - \loadmapfile[\typefaceencoding-linotype-palatino.map] + \loadmapfile[\typescriptthree-linotype-palatino.map] \stoptypescript \endinput diff --git a/tex/context/base/type-ini.tex b/tex/context/base/type-ini.tex index 7d2ed73c2..0be6ce73a 100644 --- a/tex/context/base/type-ini.tex +++ b/tex/context/base/type-ini.tex @@ -27,6 +27,7 @@ \usetypescriptfile[\f!typeprefix syn] % font file synonyms \usetypescriptfile[\f!typeprefix enc] % files and encodings +\usetypescriptfile[\f!typeprefix dis] % funny name remappings \usetypescriptfile[\f!typeprefix siz] % specific font sizes \usetypescriptfile[\f!typeprefix map] % pdftex mapping \usetypescriptfile[\f!typeprefix spe] % special macros @@ -71,7 +72,7 @@ \pushmacro\typescriptmethod \pushmacro\stoptypescript \typescriptfoundfalse - \writestatus\m!fonts{[\@@typescriptone] [\@@typescripttwo] [\@@typescriptthree]}% + \iftracetypescripts\writestatus\m!fonts{[\@@typescriptone] [\@@typescripttwo] [\@@typescriptthree]}\fi \processcommacommand[\typescriptfiles]\dododousetypescript \firsttypescriptpassfalse % testen \popmacro\stoptypescript @@ -346,13 +347,39 @@ \def\typefaceencoding{\defaultencoding} +% \def\dodefinetypeface[#1][#2][#3][#4][#5][#6]% +% {\dododefinetypeface[#1][#2]% +% \iffifthargument % sixth is optional +% % \getparameters[\??ts][rscale=1,\s!encoding=\defaultencoding,#6] +% % we need to expand since in #6 there can be a \typescripttwo +% \expanded{\getparameters[\??ts][\s!rscale=1,\s!encoding=\defaultencoding,#6]}% +% % toch niet \expanded{\getparameters[\??ts][\s!rscale=1,\s!encoding=\s!default,#6]}% +% \pushmacro\relativefontsize +% \pushmacro\typefaceencoding +% \pushmacro\fontclass +% \let\relativefontsize\@@tsrscale +% \let\typefaceencoding\@@tsencoding +% \setcurrentfontclass{#1} +% \saverelativefontsize{#2}{\relativefontsize}% fall back +% %\writestatus{typeface}{[#1] [#2] [#3] [#4]} +% \writestatus\m!fonts{[#1] [#2] [#3] [#4] / \typefaceencoding}% +% %\usetypescript[map][\typefaceencoding]% latest versions of pdftex can load after first page +% \usetypescript[#3,map][#4][name,default,\typefaceencoding,special]% is default needed +% \usetypescript[#3][#5][size]% +% \popmacro\fontclass +% \popmacro\typefaceencoding +% \popmacro\relativefontsize +% \else\iffourthargument +% \definetypeface[#1][#2][#3][#4][\s!default]% +% \else\ifthirdargument +% \getparameters[\??tf#1#2][#3]% +% \fi\fi\fi} + \def\dodefinetypeface[#1][#2][#3][#4][#5][#6]% {\dododefinetypeface[#1][#2]% \iffifthargument % sixth is optional - % \getparameters[\??ts][rscale=1,\s!encoding=\defaultencoding,#6] % we need to expand since in #6 there can be a \typescripttwo - \expanded{\getparameters[\??ts][\s!rscale=1,\s!encoding=\defaultencoding,#6]}% - % toch niet \expanded{\getparameters[\??ts][\s!rscale=1,\s!encoding=\s!default,#6]}% + \expanded{\getparameters[\??ts][\s!rscale=\plusone,\s!encoding=\defaultencoding,#6]}% \pushmacro\relativefontsize \pushmacro\typefaceencoding \pushmacro\fontclass @@ -360,11 +387,10 @@ \let\typefaceencoding\@@tsencoding \setcurrentfontclass{#1} \saverelativefontsize{#2}{\relativefontsize}% fall back - %\writestatus{typeface}{[#1] [#2] [#3] [#4]} - \writestatus\m!fonts{[#1] [#2] [#3] [#4] / \typefaceencoding}% + \iftracetypescripts\writestatus\m!fonts{[#1] [#2] [#3] [#4] / \typefaceencoding}\fi %\usetypescript[map][\typefaceencoding]% latest versions of pdftex can load after first page - \usetypescript[#3,map][#4][name,default,\typefaceencoding,special]% is default needed - \usetypescript[#3][#5][size]% + \usetypescript[#3,\t!map][#4][\t!name,\t!default,\typefaceencoding,\t!special]% is default needed + \usetypescript[#3][#5][\t!size]% \popmacro\fontclass \popmacro\typefaceencoding \popmacro\relativefontsize diff --git a/tex/context/base/type-map.tex b/tex/context/base/type-map.tex index a37f1e478..c5de41f84 100644 --- a/tex/context/base/type-map.tex +++ b/tex/context/base/type-map.tex @@ -66,7 +66,7 @@ % latin modern (t5 to be done) -\starttypescript [map] [latin-modern] [ec,texnansi,qx,t5] +\starttypescript [map] [latin-modern] [ec,texnansi,qx,t5,pl0] \loadmapfile[\typescriptthree-public-lm.map] \loadmapfile[\typescriptthree-var-exclusive-public-lm.map] \stoptypescript diff --git a/tex/context/base/type-pre.tex b/tex/context/base/type-pre.tex index e884ba47b..9d7817b78 100644 --- a/tex/context/base/type-pre.tex +++ b/tex/context/base/type-pre.tex @@ -14,24 +14,27 @@ %D This file defines some typescripts that simulate the pre-typescript way %D of defining fonts. This file will not be extended. +%D default font cmr,ams,rm,12pt + %D The Computer Modern Roman is derived from the Monotype~8a %D Times Roman. In this module, that is loaded by default, we %D define all relevant alternatives. \starttypescript [cmr] - \usetypescript [serif,sans,mono,math] [computer-modern] [default,name,size] + \usetypescript [serif,sans,mono,math] [computer-modern,latin-modern] [default,name,size] \usemathcollection[default] \stoptypescript %D This script remaps the default Computer Modern Font Files -%D onto the virtual EC ones, so that hyphenations work well. +%D onto the EC ones, so that hyphenations work well. (The proper +%D latin modern ec variants have replaed the ae ones.) \starttypescript [aer] - \usetypescript [serif,sans,mono,math] [computer-modern] [default,name,size,ec] + \usetypescript [serif,sans,mono,math] [computer-modern,latin-modern] [default,name,size,ec] \usemathcollection[default] @@ -42,7 +45,7 @@ \starttypescript [csr] - \usetypescript [serif,sans,mono,math] [computer-modern] [default,name,size,il2] + \usetypescript [serif,sans,mono,math] [computer-modern,latin-modern] [default,name,size,il2] \usemathcollection[default] @@ -53,7 +56,7 @@ \starttypescript [plr] - \usetypescript [serif,sans,mono,math] [computer-modern] [default,name,size,pl0] + \usetypescript [serif,sans,mono,math] [computer-modern,latin-modern] [default,name,size,pl0] \usemathcollection[default] @@ -64,7 +67,7 @@ \starttypescript [cyr] - \usetypescript [serif,sans,mono,math] [computer-modern] [default,name,size,cyr] + \usetypescript [serif,sans,mono,math] [computer-modern,latin-modern] [default,name,size,cyr] \usemathcollection[default] @@ -72,7 +75,7 @@ \starttypescript [lh-ec] - \usetypescript [serif,sans,mono,math] [computer-modern] [default,name,size,ec] + \usetypescript [serif,sans,mono,math] [computer-modern,latin-modern] [default,name,size,ec] \usemathcollection[default] @@ -80,7 +83,7 @@ \starttypescript [lh-t2a] - \usetypescript [serif,sans,mono,math] [computer-modern] [default,name,size,t2a] + \usetypescript [serif,sans,mono,math] [computer-modern,latin-modern] [default,name,size,t2a] \usemathcollection[default] @@ -88,7 +91,7 @@ \starttypescript [lh-t2b] - \usetypescript [serif,sans,mono,math] [computer-modern] [default,name,size,t2b] + \usetypescript [serif,sans,mono,math] [computer-modern,latin-modern] [default,name,size,t2b] \usemathcollection[default] @@ -96,7 +99,7 @@ \starttypescript [lh-t2c] - \usetypescript [serif,sans,mono,math] [computer-modern] [default,name,size,t2c] + \usetypescript [serif,sans,mono,math] [computer-modern,latin-modern] [default,name,size,t2c] \usemathcollection [default] @@ -104,7 +107,7 @@ \starttypescript [lh-x2] - \usetypescript [serif,sans,mono,math] [computer-modern] [default,name,size,x2] + \usetypescript [serif,sans,mono,math] [computer-modern,latin-modern] [default,name,size,x2] \usemathcollection [default] @@ -112,7 +115,7 @@ \starttypescript [lh-lcy] - \usetypescript [serif,sans,mono,math] [computer-modern] [default,name,size,lcy] + \usetypescript [serif,sans,mono,math] [computer-modern,latin-modern] [default,name,size,lcy] \usemathcollection [default] @@ -137,6 +140,8 @@ \usetypescript [serif] [concrete] [all] + \usemathcollection[default] + \stoptypescript %D The Euler Fonts are designed by Herman Zapf and can be diff --git a/tex/context/base/type-siz.tex b/tex/context/base/type-siz.tex index d6a504cd5..f4560b125 100644 --- a/tex/context/base/type-siz.tex +++ b/tex/context/base/type-siz.tex @@ -816,7 +816,7 @@ \stoptypescript -\starttypescript [math] [ams] [size] +\starttypescript [math] [computer-modern,latin-modern,ams] [size] \definebodyfont [17.3pt,14.4pt,12pt,11pt,10pt,9pt] [mm] [ma=msam10 sa 1, mb=msbm10 sa 1] diff --git a/tex/context/base/type-spe.tex b/tex/context/base/type-spe.tex index 6bc020f7a..09c63834a 100644 --- a/tex/context/base/type-spe.tex +++ b/tex/context/base/type-spe.tex @@ -18,7 +18,7 @@ \def\controlspace{\getglyph{ComputerModernMono}{\char32}} \stoptypescript -\starttypescript [math] [computer-modern] [special] +\starttypescript [math] [computer-modern,latin-modern,ams] [special] \usemathcollection[default] \stoptypescript @@ -26,10 +26,6 @@ \usemathcollection[lbr] \stoptypescript -\starttypescript [math] [ams] [special] - \usemathcollection[default] -\stoptypescript - \starttypescript [math] [times] [special] \usemathcollection[default] \stoptypescript diff --git a/tex/context/base/type-syn.tex b/tex/context/base/type-syn.tex index 49f532e2c..0f1c878c9 100644 --- a/tex/context/base/type-syn.tex +++ b/tex/context/base/type-syn.tex @@ -157,7 +157,7 @@ % American Math Society : Michael Spivak -\starttypescript [math] [ams] [name] +\starttypescript [math] [computer-modern,latin-modern,ams] [name] \definefontsynonym [MathAlpha] [AMS-SymbolA] \definefontsynonym [MathBeta] [AMS-SymbolB] \stoptypescript diff --git a/tex/context/base/unic-000.tex b/tex/context/base/unic-000.tex index cb5221df0..3f226f326 100644 --- a/tex/context/base/unic-000.tex +++ b/tex/context/base/unic-000.tex @@ -120,7 +120,8 @@ \startunicodevector 0 \expandafter\strippedcsname - \ifcase\numexpr(#1-159)!\@@unknownchar\or + \ifcase\numexpr(#1-159) % space needed, terminates expr + \unknownchar \or \nonbreakablespace \or \exclamdown \or \textcent \or @@ -132,7 +133,7 @@ \textdiaeresis \or \copyright \or \ordfeminine \or % FEMININE ORDINAL INDICATOR - \leftguillemot \or % LEFT-POINTING DOUBLE ANGLE QUOTATION MARK + \leftguillemot \or % LEFT-POINTING DOUBLE ANGLE QUOTATION MARK \textlognot \or \softhyphen \or \registered \or diff --git a/tex/context/base/unic-001.tex b/tex/context/base/unic-001.tex index 43ac71dee..9b7a43a5d 100644 --- a/tex/context/base/unic-001.tex +++ b/tex/context/base/unic-001.tex @@ -151,7 +151,8 @@ \startunicodevector 1 \expandafter\strippedcsname - \ifcase\numexpr(#1+1)\or + \ifcase\numexpr(#1+1) % space needed, terminates expr + \unknownchar \or \Amacron \or \amacron \or \Abreve \or diff --git a/tex/context/base/unic-030.tex b/tex/context/base/unic-030.tex index f94f49c53..b7d435f81 100644 --- a/tex/context/base/unic-030.tex +++ b/tex/context/base/unic-030.tex @@ -15,97 +15,98 @@ \startunicodevector 30 \expandafter\strippedcsname - \ifcase\numexpr(#1-159) \or % space needed, terminates expr - \Adotbelow \or - \adotbelow \or - \Ahook \or - \ahook \or - \Acircumflexacute \or - \acircumflexacute \or - \Acircumflexgrave \or - \acircumflexgrave \or - \Acircumflexhook \or - \acircumflexhook \or - \Acircumflextilde \or - \acircumflextilde \or - \Acircumflexdotbelow \or - \acircumflexdotbelow \or - \Abreveacute \or - \abreveacute \or - \Abrevegrave \or - \abrevegrave \or - \Abrevehook \or - \abrevehook \or - \Abrevetilde \or - \abrevetilde \or - \Abrevedotbelow \or - \abrevedotbelow \or - \Edotbelow \or - \edotbelow \or - \Ehook \or - \ehook \or - \Etilde \or - \etilde \or - \Ecircumflexacute \or - \ecircumflexacute \or - \Ecircumflexgrave \or - \ecircumflexgrave \or - \Ecircumflexhook \or - \ecircumflexhook \or - \Ecircumflextilde \or - \ecircumflextilde \or - \Ecircumflexdotbelow \or - \ecircumflexdotbelow \or - \Ihook \or - \ihook \or - \Idotbelow \or - \idotbelow \or - \Odotbelow \or - \odotbelow \or - \Ohook \or - \ohook \or - \Ocircumflexacute \or - \ocircumflexacute \or - \Ocircumflexgrave \or - \ocircumflexgrave \or - \Ocircumflexhook \or - \ocircumflexhook \or - \Ocircumflextilde \or - \ocircumflextilde \or - \Ocircumflexdotbelow \or - \ocircumflexdotbelow \or - \Ohornacute \or - \ohornacute \or - \Ohorngrave \or - \ohorngrave \or - \Ohornhook \or - \ohornhook \or - \Ohorntilde \or - \ohorntilde \or - \Ohorndotbelow \or - \ohorndotbelow \or - \Udotbelow \or - \udotbelow \or - \Uhook \or - \uhook \or - \Uhornacute \or - \uhornacute \or - \Uhorngrave \or - \uhorngrave \or - \Uhornhook \or - \uhornhook \or - \Uhorntilde \or - \uhorntilde \or - \Uhorndotbelow \or - \uhorndotbelow \or - \Ygrave \or - \ygrave \or - \Ydotbelow \or - \ydotbelow \or - \Yhook \or - \yhook \or - \Ytilde \or - \ytilde \else + \ifcase\numexpr(#1-159) % space needed, terminates expr + \unknownchar \or + \Adotbelow \or + \adotbelow \or + \Ahook \or + \ahook \or + \Acircumflexacute \or + \acircumflexacute \or + \Acircumflexgrave \or + \acircumflexgrave \or + \Acircumflexhook \or + \acircumflexhook \or + \Acircumflextilde \or + \acircumflextilde \or + \Acircumflexdotbelow \or + \acircumflexdotbelow \or + \Abreveacute \or + \abreveacute \or + \Abrevegrave \or + \abrevegrave \or + \Abrevehook \or + \abrevehook \or + \Abrevetilde \or + \abrevetilde \or + \Abrevedotbelow \or + \abrevedotbelow \or + \Edotbelow \or + \edotbelow \or + \Ehook \or + \ehook \or + \Etilde \or + \etilde \or + \Ecircumflexacute \or + \ecircumflexacute \or + \Ecircumflexgrave \or + \ecircumflexgrave \or + \Ecircumflexhook \or + \ecircumflexhook \or + \Ecircumflextilde \or + \ecircumflextilde \or + \Ecircumflexdotbelow \or + \ecircumflexdotbelow \or + \Ihook \or + \ihook \or + \Idotbelow \or + \idotbelow \or + \Odotbelow \or + \odotbelow \or + \Ohook \or + \ohook \or + \Ocircumflexacute \or + \ocircumflexacute \or + \Ocircumflexgrave \or + \ocircumflexgrave \or + \Ocircumflexhook \or + \ocircumflexhook \or + \Ocircumflextilde \or + \ocircumflextilde \or + \Ocircumflexdotbelow \or + \ocircumflexdotbelow \or + \Ohornacute \or + \ohornacute \or + \Ohorngrave \or + \ohorngrave \or + \Ohornhook \or + \ohornhook \or + \Ohorntilde \or + \ohorntilde \or + \Ohorndotbelow \or + \ohorndotbelow \or + \Udotbelow \or + \udotbelow \or + \Uhook \or + \uhook \or + \Uhornacute \or + \uhornacute \or + \Uhorngrave \or + \uhorngrave \or + \Uhornhook \or + \uhornhook \or + \Uhorntilde \or + \uhorntilde \or + \Uhorndotbelow \or + \uhorndotbelow \or + \Ygrave \or + \ygrave \or + \Ydotbelow \or + \ydotbelow \or + \Yhook \or + \yhook \or + \Ytilde \or + \ytilde \else \unknownchar \fi \stopunicodevector diff --git a/tex/context/base/unic-032.tex b/tex/context/base/unic-032.tex index 68881a035..4df855813 100644 --- a/tex/context/base/unic-032.tex +++ b/tex/context/base/unic-032.tex @@ -170,7 +170,6 @@ \strippedcsname \breakinghyphen \or % U+2010 HYPHEN \strippedcsname \nonbreakinghyphen\or % U+2011 NON-BREAKING HYPHEN \strippedcsname \textminus \or % U+2012 FIGURE DASH - % \ifcase\numexpr(#1-19) \strippedcsname \endash \or % U+2013 EN DASH \strippedcsname \emdash \or % U+2014 EM DASH \strippedcsname \unknownchar \or % U+2015 HORIZONTAL BAR diff --git a/tex/context/base/unic-ini.tex b/tex/context/base/unic-ini.tex index 636fb7d83..13c138dd8 100644 --- a/tex/context/base/unic-ini.tex +++ b/tex/context/base/unic-ini.tex @@ -152,12 +152,12 @@ %D `#4-\utf@g)} %D \stoptyping -\def\utfdiv#1{\number\numexpr((#1-\utf@g)/\utf@h)} -\def\utfmod#1{\number\numexpr(#1-\utf@h*((#1-\utf@g)/\utf@h))} +\def\utfdiv#1{\the\numexpr(#1-\utf@g)/\utf@h\relax} +\def\utfmod#1{\the\numexpr#1-\utf@h*((#1-\utf@g)/\utf@h)\relax} %D When tracing we also need: -\def\utfvid#1{\number\numexpr((#1-\medcard)/\maxcard)} +\def\utfvid#1{\the\numexpr(#1-\medcard)/\maxcard\relax} %D Using the three conversion macros, we can now implement %D a few handlers. They all call the general \type diff --git a/tex/context/base/xtag-ini.tex b/tex/context/base/xtag-ini.tex index f7efc8385..388646ef3 100644 --- a/tex/context/base/xtag-ini.tex +++ b/tex/context/base/xtag-ini.tex @@ -606,7 +606,7 @@ \the\everyXMLelement \fi \ifcase\kindofXMLelement\or - \let\currentXMLidentifier \rawXMLidentifier + \let \currentXMLidentifier \rawXMLidentifier \edef\currentXMLfullidentifier {\rawXMLelement }% \or \edef\currentXMLidentifier {/\rawXMLidentifier }% @@ -863,27 +863,33 @@ \chardef\XMLancestormode=2 % never change this one globally +% \def\XMLancestor#1% +% {\ifnum\numexpr(\XMLdepth-#1)>0 +% \csname\@@XMLdepth:\the\numexpr(\XMLdepth-#1)\endcsname +% \else +% \ifcase\XMLancestormode\or\s!unknown\or\currentXMLelement\fi +% \fi} + \def\XMLancestor#1% - {\ifnum\numexpr(\XMLdepth-#1)>0 - \csname\@@XMLdepth:\the\numexpr(\XMLdepth-#1)\endcsname + {\ifnum\numexpr\XMLdepth-#1\relax>\zerocount + \csname\@@XMLdepth:\the\numexpr\XMLdepth-#1\relax\endcsname \else \ifcase\XMLancestormode\or\s!unknown\or\currentXMLelement\fi \fi} -\def\XMLpureancestor#1% - {\ifnum\numexpr(\XMLdepth-#1)>0 - \csname\@@XMLdepth:\the\numexpr(\XMLdepth-#1)\endcsname - \fi} - -% \def\XMLpureancestor#1% test for relax insertion -% {\ifcase\numexpr(\XMLdepth-#1)\or +% \def\XMLpureancestor#1% +% {\ifnum\numexpr(\XMLdepth-#1)>0 % \csname\@@XMLdepth:\the\numexpr(\XMLdepth-#1)\endcsname % \fi} -\def\XMLparent{\XMLancestor\plusone} -\def\XMLself {\XMLancestor\zerocount} +\def\XMLpureancestor#1% + {\ifnum\numexpr\XMLdepth-#1\relax>\zerocount + \csname\@@XMLdepth:\the\numexpr\XMLdepth-#1\relax\endcsname + \fi} -\def\XMLpureparent{\XMLpureancestor\plusone} +\def\XMLparent {\XMLancestor \plusone } +\def\XMLself {\XMLancestor \zerocount} +\def\XMLpureparent{\XMLpureancestor\plusone } \def\XMLpureself {\XMLpureancestor\zerocount} % \def\XMLpureancestor#1% @@ -915,8 +921,11 @@ \def\XMLinh {\XMLinhpar\currentXMLelement} +% \def\pXMLinh#1% +% {\@EA\ppXMLinh\@EA{\the\numexpr(#1-\plusone)}} + \def\pXMLinh#1% - {\@EA\ppXMLinh\@EA{\the\numexpr(#1-\plusone)}} + {\@EA\ppXMLinh\@EA{\the\numexpr#1-\plusone\relax}} \def\ppXMLinh#1#2% {\@EA\ifx\csname\@@XMLvariable:#1:#2\endcsname\empty @@ -1217,63 +1226,76 @@ \def\executeXMLcharacter#1#2\relax {\if#1x% - \@EA\executeXMLhexcharacter + \@EA\noexecuteXMLhexcharacter \else - \@EA\executeXMLdeccharacter + \@EA\doexecuteXMLdeccharacter \fi#1#2\relax} -% \def\executeXMLhexcharacter x#1\relax % can be overloaded -% {\ifnum"#1<256 -% \@EA\getXMLcharacter -% \else\ifXMLrawentities -% \@EAEAEA\firstofoneargument +\def\noexecuteXMLhexcharacter x#1\relax + {\uppercase{\doexecuteXMLhexcharacter#1\relax}} + +% \unexpanded\def\getXMLcharacter#1% +% {\ifXMLrawentities +% \@EA\firstofoneargument +% \else\ifcsname\@@XMLentity:#1\endcsname +% \@EAEAEA\getXMLentity % \else -% \@EAEAEA\unknownXMLcharacter -% \fi\fi{\number"#1}} +% \@EAEAEA\unicodechar % was: \rawcharacter +% \fi\fi{#1}} +% +% \def\doexecuteXMLhexcharacter#1\relax{\getXMLcharacter{"#1}} +% \def\doexecuteXMLdeccharacter#1\relax{\getXMLcharacter {#1}} +% +% if we want to support x in entity overloading, we prefer: -\def\executeXMLhexcharacter x#1\relax % can be overloaded - {\uppercase{\doexecuteXMLhexcharacter#1\relax}} +\unexpanded\def\getXMLdeccharacter#1% + {\ifXMLrawentities + \@EA\rawXMLdecentity + \else\ifcsname\@@XMLentity:#1\endcsname + \@EAEAEA\getXMLdecentity + \else + \@EAEAEA\unicodechar + \fi\fi{#1}} -\def\doexecuteXMLhexcharacter#1\relax - {\ifnum"#1<256 - \@EA\getXMLcharacter - \else\ifXMLrawentities - \@EAEAEA\firstofoneargument +\unexpanded\def\getXMLhexcharacter#1% + {\ifXMLrawentities + \@EA\rawXMLhexentity + \else\ifcsname\@@XMLentity:x#1\endcsname + \@EAEAEA\getXMLhexentity \else - \@EAEAEA\unknownXMLcharacter - \fi\fi{\number"#1}} + \@EAEAEA\unicodehexchar + \fi\fi{#1}} -% == -% -% \def\executeXMLhexcharacter x#1\relax -% {\uppercase{\ifnum"#1}<256 -% \@EA\getXMLcharacter -% \else\ifXMLrawentities -% \@EAEAEA\firstofoneargument -% \else -% \@EAEAEA\unknownXMLcharacter -% \fi\fi{\uppercase{\number"#1}}} +\def\unicodehexchar#1{\unicodechar{"#1}} -\def\executeXMLdeccharacter#1\relax % can be overloaded - {\ifnum#1<256 - \@EA\getXMLcharacter - \else\ifXMLrawentities - \@EAEAEA\firstofoneargument - \else - \@EAEAEA\unknownXMLcharacter - \fi\fi{\number#1}} +\let\getXMLcharacter\getXMLdeccharacter -\ifx\unicodechar\undefined\let\unicodechar\rawcharacter\fi +\def\getXMLdecentity#1{\getXMLentity {#1}} +\def\getXMLhexentity#1{\getXMLentity{x#1}} -\unexpanded\def\getXMLcharacter#1% - {\ifcsname\@@XMLentity:#1\endcsname - \@EA\getXMLentity - \else - \@EA\unicodechar % was: \rawcharacter - \fi{#1}} +\def\rawXMLdecentity#1{#1} +\def\rawXMLhexentity#1{x#1} + +\def\doexecuteXMLhexcharacter#1\relax{\getXMLhexcharacter{#1}} +\def\doexecuteXMLdeccharacter#1\relax{\getXMLdeccharacter{#1}} + +% \defineXMLentity[8218] {Adam} +% \defineXMLentity[x007D]{Eve} +% +% \startbuffer +% @ ‘ ‚ “ ” „• +% & +% $ { }   … +% \stopbuffer +% +% \typebuffer \processXMLbuffer + +% left overs \def\unknownXMLcharacter#1{[#1]} +\ifx\unicodechar\undefined\let\unicodechar\rawcharacter\fi % brrrr + % \useXMLfilter[ent] % % \defineXMLsingular[test]{{\simplifyXMLentities\XMLpar{test}{bla}{}}} @@ -1575,8 +1597,12 @@ \let\dodocopyXMLargument\relax +% \def\dododocopyXMLargument +% {\@EA\let\csname\@@XMLvariable:\the\numexpr(\XMLdepth+1):\@@XMLname\@EA\endcsname +% \csname\@@XMLvariable:\@@XMLclass:\@@XMLname\endcsname} + \def\dododocopyXMLargument - {\@EA\let\csname\@@XMLvariable:\the\numexpr(\XMLdepth+1):\@@XMLname\@EA\endcsname + {\@EA\let\csname\@@XMLvariable:\the\numexpr\XMLdepth+\plusone\relax:\@@XMLname\@EA\endcsname \csname\@@XMLvariable:\@@XMLclass:\@@XMLname\endcsname} \def\copyXMLargumentindeed @@ -1978,17 +2004,19 @@ % \let\@@globalprefix\empty +% \long\def\prepareXMLargument#1#2#3% +% {\expanded{\scratchtoks +% {\the\scratchtoks +% \def\@EA\noexpand\csname\@@XMLvariable:#1:#2\endcsname{#3}% +% \noexpand\@EA\let\noexpand\csname\@@XMLvariable:\noexpand\the\numexpr(\XMLdepth+1):#2\endcsname +% \@EA\noexpand\csname\@@XMLvariable:#1:#2\endcsname}}} + \long\def\prepareXMLargument#1#2#3% {\expanded{\scratchtoks {\the\scratchtoks \def\@EA\noexpand\csname\@@XMLvariable:#1:#2\endcsname{#3}% -\noexpand\@EA\let\noexpand\csname\@@XMLvariable:\noexpand\the\numexpr(\XMLdepth+1):#2\endcsname -\@EA\noexpand\csname\@@XMLvariable:#1:#2\endcsname -% \ifx\@@globalprefix\empty\else -% \let\@EA\noexpand\csname\@@XMLvariable:\@@globalprefix:#2\endcsname -% \@EA\noexpand\csname\@@XMLvariable:#1:#2\endcsname -% \fi}}} -}}} + \noexpand\@EA\let\noexpand\csname\@@XMLvariable:\noexpand\the\numexpr\XMLdepth+\plusone\relax:#2\endcsname + \@EA\noexpand\csname\@@XMLvariable:#1:#2\endcsname}}} \long\def\setXMLargumentsN#1#2#3% element [tag] settings {\doifassignmentelse{#2} @@ -2048,8 +2076,7 @@ \chardef\@@precompile\plusone} \def\stopXMLcompiling - {\chardef\@@precompile\zerocount - }%\let\@@globalprefix\empty} + {\chardef\@@precompile\zerocount} % no \let\@@globalprefix\empty %D Interesting what kind of things are needed \unknown @@ -2343,8 +2370,11 @@ \@EA\pXMLanc \fi\XMLdepth{#1}} +% \def\pXMLanc#1% +% {\@EA\ppXMLanc\@EA{\the\numexpr(#1-\plusone)}} + \def\pXMLanc#1% - {\@EA\ppXMLanc\@EA{\the\numexpr(#1-\plusone)}} + {\@EA\ppXMLanc\@EA{\the\numexpr#1-\plusone\relax}} \def\ppXMLanc#1#2#3% {\ifcsname\@@XMLdepth:#1\endcsname % is er altijd dus redundant diff --git a/tex/context/interface/keys-cz.xml b/tex/context/interface/keys-cz.xml index 1216143e3..449a0f2ff 100644 --- a/tex/context/interface/keys-cz.xml +++ b/tex/context/interface/keys-cz.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/interface/keys-de.xml b/tex/context/interface/keys-de.xml index 3f7eabe9c..a4d88d7cc 100644 --- a/tex/context/interface/keys-de.xml +++ b/tex/context/interface/keys-de.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/interface/keys-en.xml b/tex/context/interface/keys-en.xml index f0561844c..50af420bd 100644 --- a/tex/context/interface/keys-en.xml +++ b/tex/context/interface/keys-en.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/interface/keys-it.xml b/tex/context/interface/keys-it.xml index 4197c9453..af7169abd 100644 --- a/tex/context/interface/keys-it.xml +++ b/tex/context/interface/keys-it.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/interface/keys-nl.xml b/tex/context/interface/keys-nl.xml index 082c88d59..4733f7018 100644 --- a/tex/context/interface/keys-nl.xml +++ b/tex/context/interface/keys-nl.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/interface/keys-ro.xml b/tex/context/interface/keys-ro.xml index d8771839d..79e76ea48 100644 --- a/tex/context/interface/keys-ro.xml +++ b/tex/context/interface/keys-ro.xml @@ -1,6 +1,6 @@ - + -- cgit v1.2.3