diff options
Diffstat (limited to 'tex/context/base/java-ini.mkiv')
-rw-r--r-- | tex/context/base/java-ini.mkiv | 162 |
1 files changed, 0 insertions, 162 deletions
diff --git a/tex/context/base/java-ini.mkiv b/tex/context/base/java-ini.mkiv deleted file mode 100644 index a26c562b4..000000000 --- a/tex/context/base/java-ini.mkiv +++ /dev/null @@ -1,162 +0,0 @@ -%D \module -%D [ file=java-ini, -%D version=1998.01.30, -%D title=\CONTEXT\ JavaScript Macros, -%D subtitle=Initialization, -%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. - -\writestatus{loading}{ConTeXt JavaScript Macros / Initialization} - -\registerctxluafile{java-ini}{1.001} - -\unprotect - -%D \macros -%D {JS*} -%D -%D Because \JAVASCRIPT's are activated by the user, for -%D instance by activating on a button, their support is closely -%D related to the referencing mechanism. Integration takes -%D place by -%D -%D \starttyping -%D \goto{calculate total}[Sum()] -%D \stoptyping -%D -%D The \type{()} classify this as a script. If they are absent, -%D the keyword is treated as a normal reference. -%D -%D One can pass arguments to such a script by saying: -%D -%D \starttyping -%D \goto{calculate total}[Sum(1.5,2.3)] -%D \stoptyping - - -%D \macros -%D {startJScode} -%D -%D A piece of \JAVASCRIPT\ code is defined by saying: -%D -%D \starttyping -%D \startJScode{name} -%D name = 4 ; -%D \stopJScode -%D \stoptyping -%D -%D This assumes uses no preamble or presumes that the preamble is -%D always loaded, the next definition also tells \CONTEXT\ to -%D actually include the preamble needed. -%D -%D \starttyping -%D \startJScode{uses} uses {later} -%D uses = 6 ; -%D \stopJScode -%D \stoptyping -%D -%D \macros -%D {startJSpreamble} -%D -%D One can define insert \JAVASCRIPT\ code at the document level -%D by using: -%D -%D \starttyping -%D \startJSpreamble{oeps} -%D oeps = 1 ; -%D \stopJSpreamble -%D \stoptyping -%D -%D which is the same as: -%D -%D \starttyping -%D \startJSpreamble{now} used now -%D now = 2 ; -%D \stopJSpreamble -%D \stoptyping -%D -%D while the next definition is only included when actually -%D used. -%D -%D \starttyping -%D \startJSpreamble{later} used later -%D later = 3 ; -%D \stopJSpreamble -%D \stoptyping -%D -%D This command may be used more that once, but always before -%D the first page is shipped out. -%D -%D \macros -%D {setJSpreamble, addtoJSpreamble} -%D -%D In addition to the previous preamble definitions, we can -%D set a preamble \quote {in||line} and add tokens to a -%D preamble. -%D -%D \macros -%D {useJSpreamblenow} -%D -%D This macro can be used to force inclusion of postponed -%D \JAVASCRIPT\ preambles. - -\unexpanded\def\startJScode - {\begingroup\obeylualines\obeyluatokens\dostartJScode} - -\long\def\dostartJScode#1\stopJScode - {\normalexpanded{\endgroup\ctxlua{interactions.javascripts.storecode(\!!bs#1\!!es)}}} - -\let\stopJScode\relax - -\unexpanded\def\startJSpreamble - {\begingroup\obeylualines\obeyluatokens\dostartJSpreamble} - -\long\def\dostartJSpreamble#1\stopJSpreamble - {\normalexpanded{\endgroup\ctxlua{interactions.javascripts.storepreamble(\!!bs#1\!!es)}}} - -\let\stopJSpreamble\relax - -\def\setJSpreamble #1#2{\ctxlua{interactions.javascripts.storepreamble ("#1",\!!bs#2\!!es)}} -\def\addtoJSpreamble #1#2{\ctxlua{interactions.javascripts.addtopreamble ("#1",\!!bs#2\!!es)}} -\def\useJSpreamblenow #1{\ctxlua{interactions.javascripts.usepreamblenow("#1")}} - -%D \macros -%D {useJSscripts} -%D -%D In due time, users will build their collections of scripts, -%D which can be used (loaded) when applicable. Although not all -%D public, we will provide some general purpose scripts, -%D collected in files with names like \type{java-...}. One can -%D load these scripts with \type{\useJSscripts}, like: -%D -%D \starttyping -%D \useJSscripts[fld] -%D \stoptyping -%D -%D The not so complicated implementation of this macro is: - -\def\dodouseJSscripts#1% - {\doifelse{#1}\v!reset - {\let\allJSpreambles\empty} - {\ifcsname\c!file\f!javascriptprefix#1\endcsname \else - \startnointerference - \letgvalueempty{\c!file\f!javascriptprefix#1}% - \startreadingfile - \readsysfile{\truefilename{\f!javascriptprefix#1}}{\showmessage\m!javascript1{#1}}\donothing - \stopreadingfile - \stopnointerference - \fi}} - -\def\douseJSscripts[#1][#2]% - {\processcommalist[#1]\dodouseJSscripts - \processcommalist[#2]\useJSpreamblenow} - -\def\useJSscripts - {\dodoubleempty\douseJSscripts} - -\protect \endinput |