diff options
author | Taco Hoekwater <taco@elvenkind.com> | 2011-06-01 08:54:21 +0000 |
---|---|---|
committer | Taco Hoekwater <taco@elvenkind.com> | 2011-06-01 08:54:21 +0000 |
commit | d7ccb42582f85acf30568913610ccf4d602023fb (patch) | |
tree | 7292e3545a420676878e7451b68892d360c62cb6 /Master/texmf-dist/tex/context/base/core-sys.mkiv | |
parent | 2d62a6fe9b80def59c392268022f1f9a2d6e358f (diff) |
commit context 2011.05.18
git-svn-id: svn://tug.org/texlive/trunk@22719 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/context/base/core-sys.mkiv')
-rw-r--r-- | Master/texmf-dist/tex/context/base/core-sys.mkiv | 131 |
1 files changed, 79 insertions, 52 deletions
diff --git a/Master/texmf-dist/tex/context/base/core-sys.mkiv b/Master/texmf-dist/tex/context/base/core-sys.mkiv index 649e5e65c9b..f61cabec3d2 100644 --- a/Master/texmf-dist/tex/context/base/core-sys.mkiv +++ b/Master/texmf-dist/tex/context/base/core-sys.mkiv @@ -35,20 +35,14 @@ %D End of lines to the output. \TEX\ will map this onto the platform specific %D line ending. I hate this mess. -%newlinechar=10 \def\outputnewlinechar{\rawcharacter{10}} -\newlinechar=10 \edef\outputnewlinechar{^^J} +\edef\operatingsystem {\ctxwrite {os.platform}} -\edef\operatingsystem {\ctxlua{tex.write(os.platform)}} - -\def\jobfilename {\ctxlua{tex.sprint(tex.texcatcodes,environment.jobfilename or "")}} -\def\jobfilesuffix {\ctxlua{tex.sprint(tex.texcatcodes,environment.jobfilesuffix or "")}} -\def\inputfilebarename{\ctxlua{tex.sprint(tex.texcatcodes,environment.inputfilebarename or "")}} -\def\inputfilesuffix {\ctxlua{tex.sprint(tex.texcatcodes,environment.inputfilesuffix or "")}} -\def\inputfilename {\ctxlua{tex.sprint(tex.texcatcodes,environment.inputfilename or "")}} -\def\outputfilename {\ctxlua{tex.sprint(tex.texcatcodes,environment.outputfilename or "")}} - -\def\initializenewlinechar - {\bgroup\newlinechar=10\xdef\outputnewlinechar{^^J}\egroup} +\def \jobfilename {\ctxsprint{environment.jobfilename or ""}} +\def \jobfilesuffix {\ctxsprint{environment.jobfilesuffix or ""}} +\def \inputfilebarename{\ctxsprint{environment.inputfilebarename or ""}} +\def \inputfilesuffix {\ctxsprint{environment.inputfilesuffix or ""}} +\def \inputfilename {\ctxsprint{environment.inputfilename or ""}} +\def \outputfilename {\ctxsprint{environment.outputfilename or ""}} \newtoks \everysetupsystem @@ -106,8 +100,6 @@ {\let\jobfullname\empty} {\doif\jobfilesuffix\c!tex{\edef\jobfullname{\jobfilename.#1}}}} -\let\systemendofline\outputnewlinechar % will become obsolete - \def\systemparameter#1{\executeifdefined{\??sv#1}\empty} %D There are a couple of system states avaiable: @@ -150,7 +142,7 @@ \s!default=>\getnewrandomseed\scratchcounter, \s!unknown=>\scratchcounter#1]% \expanded{\setrandomseed{\the\scratchcounter}}% - % \writestatus\m!systems{randomseed: \the\scratchcounter}% + % \writestatus\m!system{randomseed: \the\scratchcounter}% \egroup}} \setupsystem @@ -194,44 +186,79 @@ \definecomplexorsimple\start \definecomplexorsimple\stop -\def\dododefinestartstop[#1][#2]% todo: use indirect commands - {\getparameters - [\??be#1] - [\c!before=, - \c!after=, - \c!inbetween=, - \c!commands=, - \c!style=, - #2]% - \setuvalue{#1}% - {\groupedcommand - {\getvalue{\??be#1\c!commands}% - \dostartattributes{\??be#1}\c!style\c!color} - {\dostopattributes - \getvalue{\??be#1\c!inbetween}}}% - \setvalue{\e!start#1}% - {\getvalue{\??be#1\c!before}% - \bgroup - \getvalue{\??be#1\c!commands}% - \dostartattributes{\??be#1}\c!style\c!color\empty}% - \setvalue{\e!stop#1}% - {\dostopattributes - \egroup - \getvalue{\??be#1\c!after}}} +% \def\dododefinestartstop[#1][#2]% todo: use indirect commands +% {\getparameters +% [\??be#1] +% [\c!before=, +% \c!after=, +% \c!inbetween=, +% \c!commands=, +% \c!style=, +% #2]% +% \setuvalue{#1}% +% {\groupedcommand +% {\getvalue{\??be#1\c!commands}% +% \dostarttagged\t!construct{#1}% +% \dostartattributes{\??be#1}\c!style\c!color} +% {\dostopattributes +% \dostoptagged +% \getvalue{\??be#1\c!inbetween}}}% +% \setuvalue{\e!start#1}% +% {\getvalue{\??be#1\c!before}% +% \bgroup +% \getvalue{\??be#1\c!commands}% +% \dostarttagged\t!construct{#1}% +% \dostartattributes{\??be#1}\c!style\c!color\empty}% +% \setuvalue{\e!stop#1}% +% {\dostopattributes +% \dostoptagged +% \egroup +% \getvalue{\??be#1\c!after}}} +% +% \def\dodefinestartstop[#1][#2]% +% {\def\docommand##1{\dododefinestartstop[##1][#2]}% +% \processcommalist[#1]\docommand} +% +% \unexpanded\def\definestartstop +% {\dodoubleargument\dodefinestartstop} +% +% \def\dosetupstartstop[#1][#2]% +% {\def\docommand##1{\getparameters[\??be##1][#2]}% +% \processcommalist[#1]\docommand} +% +% \unexpanded\def\setupstartstop +% {\dodoubleargument\dosetupstartstop} -\def\dodefinestartstop[#1][#2]% - {\def\docommand##1{\dododefinestartstop[##1][#2]}% - \processcommalist[#1]\docommand} -\unexpanded\def\definestartstop - {\dodoubleargument\dodefinestartstop} +% \c!before \c!after \c!inbetween \c!commands \c!style \c!color -\def\dosetupstartstop[#1][#2]% - {\def\docommand##1{\getparameters[\??be##1][#2]}% - \processcommalist[#1]\docommand} +\installcommandhandler{\??be}{startstop}{\??be} + +\appendtoks + \normalexpanded{\dodefinestartstop{\currentstartstop}}% +\to \everydefinestartstop -\unexpanded\def\setupstartstop - {\dodoubleargument\dosetupstartstop} +\unexpanded\def\dodefinestartstop#1% + {\setuvalue{#1}% + {\groupedcommand + {\def\currentstartstop{#1}% + \startstopparameter\c!commands + \dostarttagged\t!construct\currentstartstop + \dosetstartstopattributes\c!style\c!color} + {\def\currentstartstop{#1}% + \dostoptagged + \startstopparameter\c!inbetween}}% + \setuvalue{\e!start#1}% + {\namedstartstopparameter{#1}\c!before + \bgroup + \def\currentstartstop{#1}% + \startstopparameter\c!commands + \dostarttagged\t!construct\currentstartstop + \dosetstartstopattributes\c!style\c!color}% + \setuvalue{\e!stop#1}% + {\dostoptagged + \egroup + \namedstartstopparameter{#1}\c!after}} % \docommand kan niet worden gebruikt omdat deze macro % soms lokaal wordt gebruikt @@ -267,7 +294,7 @@ \def\complexdefine[#1]#2#3% {\ifx#2\undefined \else - \showmessage\m!systems4{\string#2}% + \showmessage\m!system4{\string#2}% \fi \ifcase0#1\def#2{#3}% \or\def#2##1{#3}% @@ -350,7 +377,7 @@ % end % \stopluacode % -% \unexpanded\def\define#1#{\ctxlua{commands.define([[\detokenize{#1}]])}} +% \unexpanded\def\define#1#{\ctxcommand{define([[\detokenize{#1}]])}} % % \starttext % \define[2]\whatevera{#1+#2} |