summaryrefslogtreecommitdiff
path: root/tex/context/base/core-job.mkiv
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/base/core-job.mkiv')
-rw-r--r--tex/context/base/core-job.mkiv313
1 files changed, 0 insertions, 313 deletions
diff --git a/tex/context/base/core-job.mkiv b/tex/context/base/core-job.mkiv
deleted file mode 100644
index a413d1d6a..000000000
--- a/tex/context/base/core-job.mkiv
+++ /dev/null
@@ -1,313 +0,0 @@
-%D \module
-%D [ file=core-job, % copied from main-001,
-%D version=1997.03.31,
-%D title=\CONTEXT\ Core Macros,
-%D subtitle=Job Handling,
-%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.
-
-%D This module is still to be split and documented.
-
-\writestatus{loading}{ConTeXt Core Macros / Job Handling}
-
-\unprotect
-
-\registerctxluafile{core-job}{1.001}
-
-\let \currentproject \empty
-\let \currentproduct \empty
-\let \currentenvironment \empty
-\let \currentcomponent \empty
-
-\let \loadedfiles \empty
-\let \processedfiles \empty
-
-\let \nomorefiles \relax
-
-\let \allinputpaths \empty
-\let \locatedfilepath \empty
-
-\newcount\textlevel
-\newcount\fileprocesslevel
-
-\setvalue{\c!file::0}{\jobname}
-
-\def\processedfile % is used in styles, don't change !
- {\getvalue{\c!file::\number\fileprocesslevel}}
-
-\def\dostarttextfile#1%
- {\global\advance\fileprocesslevel\plusone
- \setxvalue{\c!file::\number\fileprocesslevel}{#1}%
- \doglobal\addtocommalist{#1}\processedfiles}
-
-\def\dostoptextfile
- {\global\advance\fileprocesslevel\minusone}
-
-\def\processlocalfile#1#2%
- {#1{#2}\donothing{\readfile{#2}\donothing\donothing}}
-
-\def\processfile #1{\ctxcommand{processfile("#1")}}
-\def\doifinputfileelse #1{\ctxcommand{doifinputfileelse("#1")}}
-\def\locatefilepath #1{\edef\locatedfilepath{\ctxcommand{locatefilepath("#1")}}}
-\def\usepath [#1]{\edef\allinputpaths{\ctxcommand{usepath("#1")}}}
-\def\usesubpath [#1]{\edef\allinputpaths{\ctxcommand{usesubpath("#1")}}}
-\def\usezipfile {\dodoubleempty\dousezipfile}
-\def\dousezipfile[#1][#2]{\ctxcommand{usezipfile("#1","#2")}} % [filename] [optional subtree]
-\def\loadexamodes {\dosingleempty\doloadexamodes}
-\def\doloadexamodes [#1]{\ctxcommand{loadexamodes("#1")}}
-
-\def\registerfileinfo[#1#2]#3% geen \showmessage ?
- {\writestatus\m!system{#1#2 file #3 at line \the\inputlineno}}
-
-\def\doloadsystemfile#1% only mkiv files
- {\readsysfile{#1.\mksuffix}{\showmessage\m!system2{#1.\mksuffix}}\donothing}
-
-\def\loadsystemfiles
- {\doloadsystemfile\f!newfilename % new code, to be integrated at some point, plus fixes posted on the list
- \doloadsystemfile\f!locfilename % new code, somewhat experimental, not distributed (outside the dev group)
- \doloadsystemfile\f!expfilename % new code, very experimental, can be engine specific, mostly for me only
- \doloadsystemfile\f!sysfilename} % local settings, but probably not that good an idea to use
-
-%D We don't want multiple jobfiles to interfere.
-
-\def\loadoptionfile % todo : mark document.* tables as storage
- {\readjobfile{\jobname.\f!optionextension}
- {\writestatus\m!system{\jobname.\f!optionextension\space loaded}%
- \ctxcommand{logoptionfile("\jobname.\f!optionextension")}}%
- {\writestatus\m!system{no \jobname.\f!optionextension}}}
-
-% Most natural ...
-%
-% \def\doateverystarttext
-% {\the\everystarttext
-% \global\let\doateverystarttext\relax}
-%
-% ... most practical, since we can load env's in a
-% something.run file (nested \starttext's; see for
-% instance x-res-08, where we definitely want to
-% open the file!).
-
-\def\doateverystarttext
- {\the\everystarttext
- \global\everystarttext\emptytoks}
-
-\unexpanded\def\starttext
- {\doateverystarttext
- \ifcase\textlevel
- \registerfileinfo[begin]\jobfilename
- \fi
- \global\advance\textlevel\plusone}
-
-\unexpanded\def\stoptext
- {\global\advance\textlevel\minusone
- \ifnum\textlevel>\zerocount \else
- \flushfinallayoutpage % optional
- \page % anyway
- \the\everystoptext
- %\the\everybye %
- %\the\everygoodbye % == \end (new)
- %\expandafter\normalend %
-\ifcase\textlevel
- \registerfileinfo[end]\jobfilename
-\fi
- \expandafter\finalend
- \fi}
-
-\def\forcequitjob#1%
- {\writestatus\m!system{forcing quit: #1}%
- \batchmode
- \dorecurse\textlevel{\stoptext}
- \normalend}
-
-\let\autostoptext\relax
-
-\def\autostarttext
- {\ifcase\textlevel
- \starttext
- \writestatus\m!system{auto \string\starttext..\string\stoptext}%
- \let\autostoptext\stoptext
- \fi}
-
-\def\finalend
- {\ifnum\textlevel>\zerocount \else
- \the\everybye
- \the\everygoodbye
- \doifsometokselse\everynotabene{\writeline\the\everynotabene\writeline}\donothing
- \global\everybye \emptytoks % rather unneeded
- \global\everygoodbye\emptytoks % but for sure
- \expandafter\normalend
- \fi}
-
-\let\end\finalend
-
-\def\emergencyend
- {\writestatus\m!system{invalid \@EA\string\csname\e!start\v!text\endcsname...\@EA\string\csname\e!stop\v!text\endcsname\space structure}%
- \stoptext}
-
-\def\currentfile{\inputfilename}
-
-\def\doexecutefileonce#1%
- {\beforesplitstring#1\at.\to\currentfile
- \doifnotinset\currentfile\loadedfiles
- {\addtocommalist\currentfile\loadedfiles
- \doexecutefile{#1}}}
-
-\def\doexecutefile#1%
- {\registerfileinfo[begin]{#1}%
- \dostarttextfile{#1}%
- \processfile{#1}%
- \dostoptextfile
- \registerfileinfo[end]{#1}}
-
-\def\donotexecutefile#1%
- {}
-
-\unexpanded\def\project {\doifnextoptionalelse\useproject \redoproject}
-\unexpanded\def\environment{\doifnextoptionalelse\useenvironment\redoenvironment}
-\unexpanded\def\product {\doifnextoptionalelse\useproduct \redoproduct}
-\unexpanded\def\component {\doifnextoptionalelse\usecomponent \redocomponent}
-
-\def\redoproject #1 {\useproject [#1]}
-\def\redoenvironment #1 {\useenvironment[#1]}
-\def\redoproduct #1 {\useproduct [#1]}
-\def\redocomponent #1 {\usecomponent [#1]}
-
-\def\useproject[#1]%
- {}
-
-\def\useenvironment[#1]% maybe commalist
- {\pushmacro\dostartenvironment % we could use a depth counter
- \pushmacro\stopenvironment
- \unexpanded\def\dostartenvironment[##1]{}%
- \let\stopenvironment\relax
- \startreadingfile
- \doexecutefileonce{#1}
- \stopreadingfile
- \popmacro\stopenvironment
- \popmacro\dostartenvironment}
-
-\def\useproduct[#1]%
- {}
-
-\def\usecomponent[#1]%
- {\dostarttextfile{#1}%
- \processfile{#1}%
- \dostoptextfile}
-
-\newcount\filelevel
-
-\let\currentcomponent \v!text
-\let\currentcomponentpath\f!currentpath
-
-\def\donextlevel#1#2#3#4#5#6#7\\% we will move this to lua
- {\pushmacro\currentcomponent
- \pushmacro\currentcomponentpath
- \let\currentcomponent#1%
- \setsystemmode\currentcomponent
- \splitfilename{#1}%
- \ifx\splitoffpath\empty
- \let\currentcomponentpath\f!currentpath
- \else
- \let\currentcomponentpath\splitoffpath
- \fi
- \beforesplitstring#7\at.\to#2\relax % can become path + base
- \ifcase\filelevel\relax
- \starttext
- \unexpanded\def\useproject [##1]{#3{##1}}%
- \unexpanded\def\useenvironment[##1]{#4{##1}}%
- \unexpanded\def\useproduct [##1]{#5{##1}}%
- \unexpanded\def\usecomponent [##1]{#6{##1}}%
- \fi
- \advance\filelevel\plusone
- \addtocommalist{#1}\loadedfiles}
-
-\def\doprevlevel
- {\popmacro\currentcomponentpath
- \popmacro\currentcomponent
- \setsystemmode\currentcomponent
- \ifnum\filelevel=\plusone
- \expandafter\stoptext
- \else
- \advance\filelevel\minusone
- \expandafter\endinput
- \fi}
-
-\unexpanded\def\startproject {\doifnextoptionalelse\dostartproject \redostartproject}
-\unexpanded\def\startenvironment{\doifnextoptionalelse\dostartenvironment\redostartenvironment}
-\unexpanded\def\startproduct {\doifnextoptionalelse\dostartproduct \redostartproduct}
-\unexpanded\def\startcomponent {\doifnextoptionalelse\dostartcomponent \redostartcomponent}
-
-\def\redostartproject #1 {\dostartproject [#1]}
-\def\redostartenvironment #1 {\dostartenvironment[#1]}
-\def\redostartproduct #1 {\dostartproduct [#1]}
-\def\redostartcomponent #1 {\dostartcomponent [#1]}
-
-\def\dostartproject[#1]%
- {\donextlevel\v!project\currentproject
- \donotexecutefile\doexecutefileonce
- \doexecutefileonce\doexecutefile#1\\}
-
-\def\dostartproduct[#1]%
- {\doateverystarttext
- \donextlevel\v!product\currentproduct
- \doexecutefileonce\doexecutefileonce
- \donotexecutefile\doexecutefile#1\\}
-
-\def\dostartcomponent[#1]%
- {\doateverystarttext
- \donextlevel\v!component\currentcomponent
- \doexecutefileonce\doexecutefileonce
- \donotexecutefile\doexecutefile#1\\}
-
-\def\dostartenvironment[#1]%
- {\donextlevel\v!environment\currentenvironment
- \donotexecutefile\doexecutefileonce
- \donotexecutefile\donotexecutefile#1\\}
-
-% \startproject test
-% 1: \startmode[*project] project \stopmode \endgraf
-% 2: \startmode[*product] product \stopmode \endgraf
-% \stopproject
-
-\unexpanded\def\stopproject {\doprevlevel}
-\unexpanded\def\stopproduct {\doprevlevel}
-\unexpanded\def\stopcomponent {\doprevlevel}
-\unexpanded\def\stopenvironment{\doprevlevel}
-
-% more or less replaced by modes
-
-\setvalue{\e!start\v!localenvironment}[#1]%
- {\let\loadedlocalenvironments\empty
- \def\docommand##1%
- {\beforesplitstring##1\at.\to\someevironment
- \addtocommalist\someevironment\loadedlocalenvironments}%
- \processcommalist[#1]\docommand
- \doifcommonelse{\currentproject,\currentproduct,\currentcomponent,\currentenvironment}\loadedlocalenvironments
- {\letvalue{\e!stop\v!localenvironment}\relax}
- {\grabuntil{\e!stop\v!localenvironment}\gobbleoneargument}}
-
-\setvalue{\v!localenvironment}{\doifnextoptionalelse\uselocalenvironment\redolocalenvironment}
-
-\def\redolocalenvironment#1 {\uselocalenvironment[#1]}
-
-\def\uselocalenvironment[#1]{\doexecutefileonce{#1}}
-
-\neverypar\emptytoks % here ?
-
-% \appendtoks \flushnotes \to \everypar
-% \appendtoks \synchronizesidefloats \to \everypar
-% \appendtoks \checkindentation \to \everypar
-% \appendtoks \showparagraphnumber \to \everypar
-% %appendtoks \flushmargincontents \to \everypar
-% \appendtoks \flushcommentanchors \to \everypar
-% \appendtoks \synchronizenotes \to \everypar
-
-% \appendtoks \flushnotes \to \everydisplay
-% \appendtoks \adjustsidefloatdisplaylines \to \everydisplay
-
-\protect \endinput