diff options
Diffstat (limited to 'Master/texmf-dist/tex/context/base/mult-ini.mkiv')
-rw-r--r-- | Master/texmf-dist/tex/context/base/mult-ini.mkiv | 62 |
1 files changed, 39 insertions, 23 deletions
diff --git a/Master/texmf-dist/tex/context/base/mult-ini.mkiv b/Master/texmf-dist/tex/context/base/mult-ini.mkiv index 5033a523336..e20548f9b5f 100644 --- a/Master/texmf-dist/tex/context/base/mult-ini.mkiv +++ b/Master/texmf-dist/tex/context/base/mult-ini.mkiv @@ -118,6 +118,11 @@ \def\!!fill {fill} \def\!!to {to} \def\!!spread{spread} + +%D Kind of special: + +\edef\!!TLT{\detokenize{TLT}} +\edef\!!TRT{\detokenize{TRT}} %D \macros %D {defineinterfaceconstant, @@ -157,9 +162,9 @@ %D \def\e!name{meaning} %D \stoptyping -\def\defineinterfaceconstant #1#2{\setvalue{\c!prefix!#1}{#2}} -\def\defineinterfacevariable #1#2{\setvalue{\v!prefix!#1}{#2}} -\def\defineinterfaceelement #1#2{\setvalue{\e!prefix!#1}{#2}} +\unexpanded\def\defineinterfaceconstant #1#2{\setvalue{\c!prefix!#1}{#2}} +\unexpanded\def\defineinterfacevariable #1#2{\setvalue{\v!prefix!#1}{#2}} +\unexpanded\def\defineinterfaceelement #1#2{\setvalue{\e!prefix!#1}{#2}} %D Next come some interface independant constants: %D @@ -168,12 +173,12 @@ %D \definefileconstant {name} {meaning} %D \stoptyping -\def\definereferenceconstant #1#2{\setvalue{\r!prefix!#1}{#2}} -\def\definefileconstant #1#2{\setvalue{\f!prefix!#1}{#2}} +\unexpanded\def\definereferenceconstant #1#2{\setvalue{\r!prefix!#1}{#2}} +\unexpanded\def\definefileconstant #1#2{\setvalue{\f!prefix!#1}{#2}} %D A new one: -\def\definetypescriptconstant#1#2{\setvalue{\t!prefix!#1}{#2}} +\unexpanded\def\definetypescriptconstant#1#2{\setvalue{\t!prefix!#1}{#2}} %D And finaly we have the one argument, space saving constants %D @@ -182,8 +187,8 @@ %D \definemessageconstant {name} %D \stoptyping -\def\definesystemconstant #1{\setvalue{\s!prefix!#1}{#1}} -\def\definemessageconstant #1{\setvalue{\m!prefix!#1}{#1}} +\unexpanded\def\definesystemconstant #1{\setvalue{\s!prefix!#1}{#1}} +\unexpanded\def\definemessageconstant #1{\setvalue{\m!prefix!#1}{#1}} %D In a parameter driven system, some parameters are shared %D by more system components. In \CONTEXT\ we can distinguish @@ -194,7 +199,7 @@ %D \definesystemvariable {name} %D \stoptyping -\def\definesystemvariable#1{\setevalue{\??prefix#1}{\@@prefix#1}} +\unexpanded\def\definesystemvariable#1{\setevalue{\??prefix#1}{\@@prefix#1}} \definesystemvariable{ms} @@ -262,7 +267,7 @@ %D \stopinterface %D \stoptyping -\def\startinterface #1 +\unexpanded\def\startinterface #1 {\doifnot{#1}{all}{\doifnotinset\currentinterface{#1}{\gobbleuntil\stopinterface}}} \let\stopinterface\relax @@ -353,7 +358,7 @@ %D which puts the message text asked for in \type %D {\currentmessagetext}. -\def\startmessages #1 library: #2 % +\unexpanded\def\startmessages #1 library: #2 % {\bgroup \ifcsname\m!prefix!#2\endcsname\else\setgvalue{\m!prefix!#2}{#2}\fi \catcode13=\active @@ -370,10 +375,12 @@ {\ifcsname\m!prefix!#1\endcsname\else\setgvalue{\m!prefix!#1}{#1}\fi \ctxlua{interfaces.setmessage("#1","#2",\!!bs#3\!!es)}} -\unexpanded\def\setmessagetext #1#2{\edef\currentmessagetext{\ctxlua{tex.sprint(tex.ctxcatcodes,interfaces.getmessage("#1","#2"))}}} -\unexpanded\def\getmessage #1#2{\ctxlua{tex.sprint(tex.ctxcatcodes,interfaces.getmessage("#1","#2"))}} -\unexpanded\def\makemessage #1#2#3{\ctxlua{tex.sprint(tex.ctxcatcodes,interfaces.makemessage("#1","#2","#3"))}} -\unexpanded\def\showmessage #1#2#3{\ctxlua{interfaces.showmessage("#1","#2","#3")}} +\unexpanded\def\setmessagetext #1#2{\edef\currentmessagetext{\ctxlua{tex.sprint(tex.ctxcatcodes,interfaces.getmessage("#1","#2"))}}} +\unexpanded\def\doifelsemessage #1#2{\ctxlua{interfaces.doifelsemessage("#1","#2")}} +\unexpanded\def\getmessage #1#2{\ctxlua{tex.sprint(tex.ctxcatcodes,interfaces.getmessage("#1","#2"))}} +\unexpanded\def\getmessagedefault#1#2#3{\ctxlua{tex.sprint(tex.ctxcatcodes,interfaces.getmessage("#1","#2","#3"))}} +\unexpanded\def\makemessage #1#2#3{\ctxlua{tex.sprint(tex.ctxcatcodes,interfaces.makemessage("#1","#2","#3"))}} +\unexpanded\def\showmessage #1#2#3{\ctxlua{interfaces.showmessage("#1","#2","#3")}} %D \macros %D {ifshowwarnings, ifshowmessages} @@ -417,6 +424,12 @@ %D We already defined these auxiliary macros in the system %D modules. Starting with this module however, we have to take %D multi||linguality a bit more serious. +%D +%D The additional \type {\c!internal!n} prefixing is no longer +%D needed as we now have separate interface files when dealing +%D with setups (quick ref docs) and no longer reload the whole +%D interface. (We no longer need the link back to the main +%D internal interface.) \def\doresetvalue#1#2% {\dosetvalue{#1}{#2}{}} @@ -664,7 +677,7 @@ %D system module. Let us define some simple setup command: %D %D \starttyping -%D \def\setupbox[#1]% +%D \unexpanded\def\setupbox[#1]% %D {\getparameters[\??bx][#1]} %D \stoptyping %D @@ -683,7 +696,7 @@ %D depending on the actual language. In dutch we just say: %D %D \starttyping -%D \setupblock [width=3cm, height=1cm] +%D \stelblokin [breedte=3cm,hoogte=1cm] %D \stoptyping %D %D and get ourselves \type{\@@bxwidth} and \type{\@@bxheight} @@ -732,7 +745,10 @@ %D \stopnarrower %D Anno 2003 I've forgotten why the \type {\c!internal} is -%D still in there; it's probably a left over from an experiment. +%D still in there; it's probably a left over from the time that +%D the user interface documents were not using a specification +%D alongside a keyword specification but used a shared file in +%D which case we need to go in both directions. \let\c!internal!y \string \def\c!internal!n {-} @@ -757,7 +773,7 @@ %D in these situations we could use the c||version, but for %D documentation purposes the x||alternative comes in handy. -\def\defineinterfaceconstant#1#2% +\unexpanded\def\defineinterfaceconstant#1#2% {\setvalue{\c!prefix!#1}{#2}} %D \macros @@ -786,10 +802,10 @@ %D We just ignore these: -\def\startvariables{\gobbleuntil\stopvariables} -\def\startconstants{\gobbleuntil\stopconstants} -\def\startelements {\gobbleuntil\stopelements} -\def\startcommands {\gobbleuntil\stopcommands} +\unexpanded\def\startvariables{\gobbleuntil\stopvariables} +\unexpanded\def\startconstants{\gobbleuntil\stopconstants} +\unexpanded\def\startelements {\gobbleuntil\stopelements} +\unexpanded\def\startcommands {\gobbleuntil\stopcommands} %D \macros %D {interfaced} |