summaryrefslogtreecommitdiff
path: root/tex/context/base/mkiv/file-mod.mklx
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/base/mkiv/file-mod.mklx')
-rw-r--r--tex/context/base/mkiv/file-mod.mklx289
1 files changed, 0 insertions, 289 deletions
diff --git a/tex/context/base/mkiv/file-mod.mklx b/tex/context/base/mkiv/file-mod.mklx
deleted file mode 100644
index bf9b948bf..000000000
--- a/tex/context/base/mkiv/file-mod.mklx
+++ /dev/null
@@ -1,289 +0,0 @@
-%D \module
-%D [ file=file-mod, % was core-fil,
-%D version=20110701, % 1997.11.15,
-%D title=\CONTEXT\ File Macros,
-%D subtitle=Module Support,
-%D author=Hans Hagen,
-%D date=\currentdate,
-%D copyright={PRAGMA ADE \& \CONTEXT\ Development Team}]
-%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 File Macros / Modules}
-
-\unprotect
-
-\registerctxluafile{file-mod}{}
-
-%D \macros
-%D {usemodule}
-%D
-%D Most of \CONTEXT is preloaded in the format file. Some very domain specific
-%D typesetting topics are however dealt with in separate modules, e.g. typesetting
-%D of chemical structure formulas. These modules are loaded by:
-%D
-%D \showsetup{usemodule}
-%D
-%D More information on the specific modules can be found in their dedicated manuals.
-%D We use \type {\next} so that we can \type {\end} in modules.
-
-\installcorenamespace{module}
-
-\let\currentmodule \s!unknown
-\let\currentmodulecategory \empty
-\let\currentmoduleparameters\empty
-
-\installmacrostack\currentmodule
-\installmacrostack\currentmodulecategory
-\installmacrostack\currentmoduleparameters
-
-\permanent\tolerant\protected\def\usemodules[#category]#spacer[#name]#spacer[#parameters]% category=t|m|x|p|...
- {\push_macro_currentmodule
- \push_macro_currentmodulecategory
- \push_macro_currentmoduleparameters
- \ifparameters
- \let\currentmodule\empty
- \or
- \let \currentmodulecategory \empty
- \edef\currentmodule {#category}%
- \let \currentmoduleparameters\empty
- \or
- \ifhastok={#name}%
- \let\currentmodulecategory \empty
- \edef\currentmodule {#category}%
- \edef\currentmoduleparameters{#name}%
- \else
- \edef\currentmodulecategory {#category}%
- \edef\currentmodule {#name}%
- \let \currentmoduleparameters\empty
- \fi
- \or
- \edef\currentmodulecategory {#category}%
- \edef\currentmodule {#name}%
- \def \currentmoduleparameters{#parameters}%
- \fi
- \processcommacommand[\currentmodule]{\strc_modules_use\currentmodulecategory}%
- \pop_macro_currentmoduleparameters
- \pop_macro_currentmodulecategory
- \pop_macro_currentmodule}
-
-\def\strc_modules_use#category#name%
- {\ifempty\currentmoduleparameters\else
- \scratchtoks\expandafter{\currentmoduleparameters}%
- \normalexpanded{\getparameters[\??module#name:][\the\scratchtoks]}%
- \fi
- \clf_usemodules{#category}{#name}}
-
-\aliased\let\usemodule \usemodules
-\aliased\let\usetexmodule\usemodules
-
-\newcount\c_syst_modules_nesting
-\newtoks \everysetupmodule
-
-\permanent\tolerant\protected\def\startmodule[#1]#;#2 %
- {\global\advance\c_syst_modules_nesting\plusone
- \push_macro_currentmodule
- \push_macro_currentmoduleparameters
- \def\currentmodule{#1#2}}
-
-\permanent\protected\def\stopmodule
- {\ifcase\c_syst_modules_nesting
- \writestatus\m!system{module wrapping error in '\currentmodule'}%
- \else
- \pop_macro_currentmoduleparameters
- \pop_macro_currentmodule
- \global\advance\c_syst_modules_nesting\minusone
- \fi}
-
-\permanent\protected\def\setupmodule % to be lmtx'd
- {\ifempty\currentmoduleparameters
- \expandafter\syst_modules_setup_nop
- \else
- \expandafter\syst_modules_setup_yes
- \fi}
-
-\tolerant\def\syst_modules_setup_nop[#name]#spacer[#parameters]%
- {\ifarguments
- % nothing
- \or
- \doifassignmentelse{#name}{\getparameters[\??module\currentmodule:][#name]}\donothing
- \or
- \getparameters[\??module#name:][#parameters]% internal (defaults)
- \fi
- \the\everysetupmodule}
-
-\tolerant\def\syst_modules_setup_yes[#name]#spacer[#parameters]%
- {\scratchtoks\expandafter{\currentmoduleparameters}%
- \ifparameters
- \normalexpanded{\getparameters[\??module\currentmodule:][\the\scratchtoks]}%
- \or
- \ifhastok={#name}%
- \getparameters[\??module\currentmodule:][#name]% internal (defaults)
- \normalexpanded{\getparameters[\??module\currentmodule:][\the\scratchtoks]}% loadtime (user)
- \else
- \normalexpanded{\getparameters[\??module#1:][\the\scratchtoks]}% loadtime (user)
- \fi
- \or
- \getparameters[\??module#name:][#parameters]% internal (defaults)
- \normalexpanded{\getparameters[\??module#name:][\the\scratchtoks]}% loadtime (user)
- \fi
- \let\currentmoduleparameters\empty
- \the\everysetupmodule}
-
-\permanent\def\moduleparameter#name#parameter% should have been \namedmoduleparameter
- {\begincsname\??module#name:#parameter\endcsname}
-
-\letvalue\??module\empty % so we default to empty as with all parameters
-
-\permanent\def\currentmoduleparameter{\moduleparameter\currentmodule} % no need for inlining
-
-%permanent\protected\def\useluamodule[#name]{\clf_loadluamodule{#1}} % why not use useluamodule
-
-\permanent\protected\def\useluamodule [#name]{\clf_useluamodule{#1}}
-\permanent\protected\def\luaenvironment #name {\clf_loadluamodule{#1}}
-
-% \usemodule[newmml]
-% \usemodule[newmml][a=b]
-% \usemodule[x][newmml]
-% \usemodule[x][newmml][a=b]
-%
-% \startmodule [mathml]
-% \setupmodule[a=c] \relax [\currentmoduleparameter{a}] % user vars will be set afterwards
-% \setupmodule[a=c] \relax [\currentmoduleparameter{a}] % user vars are now forgotten
-% \stopmodule
-
-% one can introduce test sections with:
-%
-% \enablemode[newmml:test:\currentmoduleparameter{test}]
-% \startmode[newmml:test:yes} ... \stopmode
-%
-% these will be ignored unless test=yes
-%
-% however, a better way is:
-
-\permanent\protected\def\startmoduletestsection
- {\begingroup
- \setupmodule % we need to make sure that the vars are set
- \doifelse{\currentmoduleparameter\v!test}\v!yes
- {\endgroup
- \writestatus\currentmodule{loading experimental code}}
- {\endgroup
- \writestatus\currentmodule{skipping experimental code}%
- \gobbleuntil\stopmoduletestsection}}
-
-\aliased\let\stopmoduletestsection\donothing
-
-% will become file-run
-
-%D To save memory, we implement some seldomly used commands in a lazy way. Nota
-%D bene: such runtime definitions are to be defined global.
-%D
-%D \starttyping
-%D \fetchruntimecommand \showaccents \f!file_run % last is a file name
-%D \stoptyping
-
-\installcorenamespace{runtimeloaded}
-
-\permanent\protected\def\fetchruntimecommand#1#2%
- {\protected\def#1{\dofetchruntimecommand#1{#2}}}
-
-\def\dofetchruntimecommand#1#2% actually a test on #1 being define would be ok as well
- {\ifcsname\??runtimeloaded#2\endcsname
- % already loaded
- \else
- \glet#1\undefined
- \startreadingfile
- \startnointerference % \bgroup
- \cleanupfeatures % better \setnormalcatcodes / test first
- \readfile{#2.\mksuffix}\donothing\donothing
- \stopnointerference % \egroup
- \stopreadingfile
- \letgvalue{\??runtimeloaded#2}\empty
- \fi
- \ifx#1\undefined
- \writestatus\m!system{command \string#1 not found in file #2}%
- \protected\gdef#1{{\infofont[unknown command \string#1]}}%
- \fi
- #1}
-
-%D \macros
-%D {doifolderversionelse}
-%D
-%D We start with a macro specially for Aditya who wants to be able
-%D to use development versions of \MKIV\ for real documents.
-%D
-%D \starttyping
-%D \doifolderversionelse\contextversion{1010.10.10} {OLDER} {OKAY} => OLDER
-%D \doifolderversionelse\contextversion{2020.20.20} {OLDER} {OKAY} => OKAY
-%D \doifolderversionelse\contextversion{2020} {OLDER} {OKAY} => OKAY
-%D \stoptyping
-%D
-%D The version pattern is \type {yyyy.mm.dd} (with mm and dd being optional).
-
-\permanent\protected\def\doifelseolderversion#parent#child{\clf_doifelseolderversion{#parent}{#child}}
-\permanent\protected\def\doifelseoldercontext #child{\clf_doifelseolderversion{#child}{}}
-
-\aliased\let\doifolderversionelse\doifelseolderversion
-\aliased\let\doifoldercontextelse\doifelseoldercontext
-
-%D Relatively new (no need for a speedup here). Can't this now be done nicer?
-
-\permanent\protected\def\syst_modules_direct_lua#1#2%
- {\edef\m_module_command_command {#1}%
- \edef\m_module_command_function{#2}%
- \directsetup{module:\m_module_command_command:start}%
- \ctxlua{\m_module_command_function()}%
- \directsetup{module:\m_module_command_command:stop}}
-
-\permanent\protected\def\syst_modules_single_lua#1#2%
- {\edef\m_module_command_command {#1}%
- \edef\m_module_command_function{#2}%
- \dosingleempty\syst_modules_single_lua_indeed}
-
-\permanent\protected\def\syst_modules_single_lua_indeed[#1]%
- {\directsetup{module:\m_module_command_command:start}%
- \ctxlua{\m_module_command_function(\!!bs#1\!!es)}%
- \directsetup{module:\m_module_command_command:stop}}
-
-\permanent\protected\def\syst_modules_double_lua#1#2%
- {\edef\m_module_command_command {#1}%
- \edef\m_module_command_function{#2}%
- \dodoubleempty\syst_modules_double_lua_indeed}
-
-\permanent\protected\def\syst_modules_double_lua_indeed[#1][#2]%
- {\directsetup{module:\m_module_command_command:start}%
- \ctxlua{\m_module_command_function(\!!bs#1\!!es,\!!bs#2\!!es)}%
- \directsetup{module:\m_module_command_command:stop}}
-
-\permanent\protected\def\installmodulecommandlua #1#2{\enforced\permanent\protected\def#1{\normalexpanded{\syst_modules_direct_lua{\csstring#1}{#2}}}}
-\permanent\protected\def\installmodulecommandluasingle#1#2{\enforced\permanent\protected\def#1{\normalexpanded{\syst_modules_single_lua{\csstring#1}{#2}}}}
-\permanent\protected\def\installmodulecommandluadouble#1#2{\enforced\permanent\protected\def#1{\normalexpanded{\syst_modules_double_lua{\csstring#1}{#2}}}}
-
-\unexpanded\def\syst_modules_one_lua#1#2#3%
- {\directsetup{module:#1:start}%
- \ctxlua{#2(\!!bs#3\!!es)}%
- \directsetup{module:#1:stop}}
-
-\unexpanded\def\syst_modules_two_lua#1#2#3#4%
- {\directsetup{module:#1:start}%
- \ctxlua{#2(\!!bs#3\!!es,\!!bs#4\!!es)}%
- \directsetup{module:#1:stop}}
-
-\permanent\protected\def\installmodulecommandluaone#1#2{\enforced\permanent\protected\def#1{\normalexpanded{\syst_modules_one_lua{\csstring#1}{#2}}}}
-\permanent\protected\def\installmodulecommandluatwo#1#2{\enforced\permanent\protected\def#1{\normalexpanded{\syst_modules_two_lua{\csstring#1}{#2}}}}
-
-% obsolete
-%
-% \def\documentresources{\@@erurl}
-%
-% \unexpanded\def\setupexternalresources
-% {\dodoubleargument\getparameters[\??er]}
-%
-% \setupexternalresources
-% [url=]
-
-% new:
-
-\protect \endinput