summaryrefslogtreecommitdiff
path: root/tex/context/base/context.tex
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/base/context.tex')
-rw-r--r--tex/context/base/context.tex320
1 files changed, 182 insertions, 138 deletions
diff --git a/tex/context/base/context.tex b/tex/context/base/context.tex
index ee9d715c4..5a1b62b81 100644
--- a/tex/context/base/context.tex
+++ b/tex/context/base/context.tex
@@ -1,5 +1,5 @@
%D \module
-%D [ file=context,
+%D [ filefile=context,
%D version=1995.10.10,
%D title=\CONTEXT,
%D subtitle=\CONTEXT\ Format Generation,
@@ -12,36 +12,81 @@
%C details.
% dec 07 2001 : cont-en.efmt : 4,035,912
+% aug 07 2004 : cont-en.efmt : 4,928,967 (5 more patterns)
+
+% todo 1: each module english commands
+% todo 2: replace lowlevel *!* by english variants
+% todo 3: make files more independent
+% todo 4: cleanup specials + adapt interface
+% todo 5: remove/replace old stuff (by new stuff, like couplepaper)
+% todo 6: create even more hooks (so that users can overload)
+% todo 7: conditionals
+% todo 8: redesign tui/tuo
\catcode`\{=1 \catcode`\}=2
-\def\contextversion{2004.8.18}
+%D From the next string (which is set by the script that assembles the
+%D distribution) later on we will calculate a number that can be used
+%D by use modules to identify the feature level. Starting with version
+%D 2004.8.30 the low level interface is english. Watch out and adapt
+%D your styles an modules.
+
+\def\contextversion{2004.8.30}
%D Welcome to the main module. When this module is ran through
-%D \type{initex} or \type{tex -i} or \type{whatevertex} using
+%D \type{initex} or \type {tex -i} or \type {whatevertex} using
%D \type{whatever switch}, the \CONTEXT\ format file is
%D generated. During this process the user is asked for an
%D interface language. Supplying \type{dutch} will generate a
-%D dutch version of \CONTEXT, supplying \type{english} will of
+%D dutch version of \CONTEXT, supplying \type {english} will of
%D course end op in a english version.
%D
+%D Another option is to use \TEXEXEC:
+%D
+%D \starttyping
+%D texexec --make [--alone] [--engine] [--all]
+%D texexec --make [--alone] [--engine] en nl ... metafun mptopdf
+%D \stoptyping
+%D
+%D More information can be found in the \TEXEXEC\ manual.
+
+%D When you write modules (or extensions) you should avoid
+%D conflicts with existing macro names and mechanisms. If you are
+%D coming from another macro package, don't assume that macros
+%D with the same name are doing the same! \CONTEXT\ was written
+%D from scratch and therefore similarities are often a coincidence
+%D (to some extent one always ends up with the same names for
+%D similar concepts). The underlying models for elementary subsystems
+%D that deal with encodings, languages and fonts probably differ.
+%D
+%D Time has learned that users coming from \LATEX\ should not fall
+%D into thinking that macros like \type {\protect} represent the
+%D same functionality in both systems; actually, due to the way
+%D \CONTEXT\ is set up, some of those macros do complete different
+%D things. Macro packages evolve independent of each other, which
+%D means that code written for one system will not work in another
+%D system, unless it's real generic code.
+%D
+%D An API will become available soon (keep an eye on the ConTeXt
+%D Wiki www.contextgarden.org) and or listen in to the context
+%D mailing list (ntg-context@ntg.nl). Much additional information
+%D can be found at the PRAGMA website (www.pragma-ade.com).
+
%D First we load the system modules. These implement a lot of
%D manipulation macros. The first one loads \PLAIN\ \TEX, as
%D minimal as possible.
-%input syst-tex.tex
-
-\input syst-pln.tex % stripped plain
-\input syst-prm.tex % saved primitives (will be extended)
+\input syst-pln.tex % english / stripped plain
+\input syst-prm.tex % english / saved primitives (will be extended)
-\input syst-etx.tex % etex
-\input syst-omg.tex % omega
-\input syst-gen.tex
-\input syst-ext.tex
-\input syst-new.tex
-\input syst-con.tex
+\input syst-etx.tex % english / etex
+\input syst-omg.tex % english / omega-aleph
+\input syst-gen.tex % english
+\input syst-ext.tex % english
+\input syst-new.tex % english
+\input syst-con.tex % english
-\input math-pln.tex % basic plain math
+\input math-pln.tex % english / basic plain math
%D To enable selective loading, we say:
@@ -50,50 +95,50 @@
%D In order to conveniently load files, we need a few
%D support modules.
-\input supp-ini.tex
-\input supp-fil.tex
+\input supp-ini.tex % english
+\input supp-fil.tex % english
%D After this we're ready for the multi||lingual interface
%D modules.
-\input mult-ini.tex
-\input mult-sys.tex
-\input mult-con.tex
-\input mult-com.tex
+\input mult-ini.tex % english
+\input mult-sys.tex % english
+\input mult-con.tex % english
+\input mult-com.tex % english
%D We also use some third party macros. These are loaded by
%D saying:
-\input thrd-ran.tex % based on: David Carlisle
-\input thrd-trg.tex % based on: Donald Arseneau
+\input thrd-ran.tex % english / based on: Donald Arseneau
+\input thrd-trg.tex % english / based on: David Carlisle
%D Now we're ready for some general support modules. These
%D modules implement some basic typesetting functionality.
-\input supp-box.tex
-\input supp-mrk.tex
-\input supp-vis.tex
-\input supp-fun.tex
-\input supp-eps.tex
-\input supp-pdf.tex
-\input supp-spe.tex
-\input supp-mps.tex
-\input supp-mpe.tex
-\input supp-tpi.tex
-\input supp-mat.tex
-\input supp-ran.tex
-\input supp-ali.tex
+\input supp-box.tex % english
+\input supp-mrk.tex % english
+\input supp-vis.tex % english
+\input supp-fun.tex % english
+\input supp-eps.tex % english
+\input supp-pdf.tex % english
+\input supp-spe.tex % english
+\input supp-mps.tex % english
+\input supp-mpe.tex % english
+\input supp-tpi.tex % english
+\input supp-mat.tex % english
+\input supp-ran.tex % english
+\input supp-ali.tex % english
%D The next module deals with language specific typographic
%D extensions.
-\input typo-ini.tex
+\input typo-ini.tex % english / I must not forget about this module
%D Verbatim typesetting is implemented in a separate class of
%D modules. The pretty typesetting modules are loaded at run
%D time.
-\input verb-ini.tex % replaces supp-ver
+\input verb-ini.tex % english / replaces supp-ver
%D The following modules are not sequentially dependent,
%D i.e. they have ugly dependencies, which will be cleaned
@@ -103,69 +148,70 @@
%D bit more advanced file handling as well as some general
%D variables, and features, so next we load:
-\input core-var.tex
-\input core-ins.tex
-\input core-fil.tex
-\input core-con.tex
+\input core-var.tex % english
+\input core-ins.tex % english
+\input core-fil.tex % english
+\input core-con.tex % english
%D We already need some synonyms (patterns). At runtime this
%D file will be reloaded.
-\input cont-fil.tex
+\input cont-fil.tex % english
%D \CONTEXT\ does not implement its own table handling. We
%D just go for the best there is and load \TABLE. Just to be
%D sure we do it here, before we redefine \type{|}.
-\input thrd-tab.tex % based on: Michael Wichura
+\input thrd-tab.tex % english / based on: Michael Wichura / will be reimplemented
%D Here comes the last support modules. They take care of
%D some language specific things.
-\input supp-lan.tex
-\input supp-num.tex
+\input supp-lan.tex % english
+\input supp-num.tex % english
%D The next few modules do what their names state. They
%D load additional definition modules when needed.
-\input enco-ini.tex
-\input filt-ini.tex
-\input hand-ini.tex
-\input regi-ini.tex
-\input lang-ini.tex
-\input unic-ini.tex
+\input enco-ini.tex % english
+\input filt-ini.tex % english
+\input hand-ini.tex % english
+\input regi-ini.tex % english
+\input lang-ini.tex % english
+\input unic-ini.tex % english
-\input colo-ini.tex
-\input colo-ext.tex
+\input colo-ini.tex % english
+\input colo-ext.tex % english
-\input spec-mis.tex
-\input spec-ini.tex
-\input spec-def.tex
-\input spec-var.tex
+\input spec-mis.tex % english
+\input spec-ini.tex % english
+\input spec-def.tex % english
+\input spec-var.tex % english
%D For the moment we load a lot of languages. In the future
%D we'll have to be more space conservative.
-\input lang-spe.tex
-\input lang-lab.tex
+\input lang-spe.tex % english
+\input lang-lab.tex % english
-\input lang-alt.tex
-\input lang-ana.tex
-\input lang-art.tex
-\input lang-bal.tex
-\input lang-cel.tex
-\input lang-ger.tex
-\input lang-grk.tex
-\input lang-ind.tex
-\input lang-ita.tex
-\input lang-sla.tex
-\input lang-ura.tex
+\input lang-ger.tex % english
+\input lang-ita.tex % english
+\input lang-sla.tex % english
-\input lang-vn.tex % vietnamese, will be grouped
+\input lang-alt.tex % english
+\input lang-ana.tex % english
+\input lang-art.tex % english
+\input lang-bal.tex % english
+\input lang-cel.tex % english
+\input lang-grk.tex % english
+\input lang-ind.tex % english
+\input lang-ura.tex % english
+
+\input lang-vn.tex % english / vietnamese, maybe this belongs in lang-ita
%D All kind of symbols are handled in:
-\input symb-ini.tex
+\input symb-ini.tex % english
%D Next we load some core macro's. These implement the
%D macros' that are seen by the users. The order of loading
@@ -181,26 +227,23 @@
\input core-ver.tex
\input core-vis.tex
%input core-con.tex
-\input core-rul.tex
+\input core-rul.tex % english
\input core-tab.tex
\input core-nav.tex
\input core-ref.tex
-\input core-obj.tex
+\input core-obj.tex % english
\input core-buf.tex
\input core-lst.tex
-\input core-num.tex
+\input core-num.tex % english
\input core-itm.tex
\input core-des.tex
-\input core-mat.tex
+\input core-mat.tex % english
\input core-syn.tex
-%input core-mul.tex % moved
\input core-spa.tex
\input core-sys.tex
-% experimental otr
-
\input page-ini.tex
-\input page-not.tex
+\input page-not.tex % english
\input page-one.tex
\input page-lay.tex
\input page-log.tex
@@ -209,15 +252,15 @@
\input page-flt.tex
\input page-mul.tex
\input page-set.tex
-\input page-lyr.tex
+\input page-lyr.tex % english
\input page-mak.tex
-\input page-num.tex
+\input page-num.tex % english
\input page-lin.tex
-\input page-mar.tex
-\input page-bck.tex
-\input page-app.tex
-\input page-flw.tex % flows - experimental
-\input page-spr.tex % spreads - experimental
+\input page-mar.tex % english
+\input page-bck.tex % english
+\input page-app.tex % english / unfinished
+\input page-flw.tex % english / experimental: flows
+\input page-spr.tex % english / experimental: spreads
\input core-job.tex
@@ -233,25 +276,25 @@
%D Like languages, fonts, encodings and symbols, \METAPOST\
%D support is also organized in its own class of modules.
-\input meta-ini.tex
-\input meta-pag.tex
-\input meta-fig.tex
+\input meta-ini.tex % english
+\input meta-pag.tex % english
+\input meta-fig.tex % english
%D On which the next one depends:
-\input core-pos.tex
-\input core-snc.tex
+\input core-pos.tex % english
+\input core-snc.tex % english
%D A few more languages, that have specifics using core
%D functionality:
-\input lang-chi.tex
+\input lang-chi.tex % english
%D How about fill||in fields and related stuff?
-\input java-ini.tex
-\input core-fld.tex
-\input core-hlp.tex
+\input java-ini.tex % english / needs a cleanup
+\input core-fld.tex % english / needs a cleanup
+\input core-hlp.tex % english / will become a m-module
%D Registers can depend on fields, so we load that now.
@@ -262,63 +305,64 @@
%D content. Here we also redefine \type{\it} as {\it italic}
%D instead of italian.
-\input font-ini.tex
-\input font-uni.tex
-\input font-bfm.tex
+\input font-ini.tex % english
+\input font-uni.tex % english
+\input font-bfm.tex % english
-\input type-ini.tex
+\input type-ini.tex % english
-\input prop-ini.tex
-\input prop-lay.tex % needs core-ref.tex
-\input prop-mis.tex
+\input prop-ini.tex % english
+\input prop-lay.tex % english / needs core-ref.tex
+\input prop-mis.tex % english
-\input math-ini.tex % after enco-ini.tex
+\input math-ini.tex % english / needs enco-ini.tex
%D Now we're ready for more core modules.
-\input core-fnt.tex
-\input core-not.tex
-\input core-lnt.tex
+\input core-fnt.tex % english / todo: document setupinitial !
+\input core-not.tex % english
+\input core-lnt.tex % english / to be documented (with idris)
\input core-mis.tex
-\input core-fig.tex % after page body
-\input core-par.tex
+\input core-fig.tex % english / after page body
+\input core-par.tex % english / maybe this should become a m-module
-\input core-box.tex
+\input core-box.tex % english
%D Language specific spacing.
-\input lang-spa.tex
+\input lang-spa.tex % english
%D Only the basic XML parser and remapper are part of the core.
%D These macrosa re loaded last since they overload and|/|or
%D extend previously defined ones.
-\input xtag-ini.tex
-\input xtag-ext.tex
-\input xtag-map.tex
-\input xtag-exp.tex
-\input xtag-pre.tex
-\input xtag-xsd.tex
-\input xtag-rng.tex
-%input xtag-ent.tex
+\input xtag-ini.tex % english
+\input xtag-ext.tex % english
+\input xtag-prs.tex % english
+\input xtag-map.tex % english
+\input xtag-exp.tex % english
+\input xtag-pre.tex % english
+\input xtag-xsd.tex % english
+\input xtag-rng.tex % english
+%input xtag-ent.tex % english
%D How about this:
-\input meta-xml.tex
+\input meta-xml.tex % english / to be documented
% %D The next two modules implement some additional
% %D functionality concerning classes of documents and output.
% %D These modules probably will be replaced some day.
%
-% \input docs-ini.tex
-% \input list-ini.tex
+% \input docs-ini.tex % obsolete
+% \input list-ini.tex % obsolete
%D \TEX\ related logo's are always typeset in a special way.
%D Here they come:
-\input cont-log.tex
+\input cont-log.tex % english
%D Defaults go here (more will be moved to this module
%D later):
@@ -328,12 +372,12 @@
%D At run time, a few more files are loaded, like:
%D
-%D \startopsomming[opelkaar]
-%D \som \type{cont-sys}: local (system dependant) defaults
-%D \som \type{cont-old}: substitutes for old (obsolete) macros
-%D \som \type{cont-new}: new macro implementations (for testing)
-%D \som \type{cont-fil}: filename and module synonyms
-%D \stopopsomming
+%D \startitemize[packed]
+%D \item \type{cont-sys}: local (system dependant) defaults
+%D \item \type{cont-old}: substitutes for old (obsolete) macros
+%D \item \type{cont-new}: new macro implementations (for testing)
+%D \item \type{cont-fil}: filename and module synonyms
+%D \stopitemize
%D Just to keep the user busy for a while, we say:
@@ -445,11 +489,11 @@
\unprotect
-\installlanguage [\s!en] [\c!status=\v!start]
+\installlanguage [\s!en] [\c!state=\v!start]
\startinterface english
- \installlanguage [\s!uk] [\c!status=\v!start]
+ \installlanguage [\s!uk] [\c!state=\v!start]
\stopinterface
@@ -458,7 +502,7 @@
\startinterface german
- \installlanguage [\s!de] [\c!status=\v!start]
+ \installlanguage [\s!de] [\c!state=\v!start]
\appendtoks \language [\s!de] \to \everyjob
\appendtoks \mainlanguage [\s!de] \to \everyjob
@@ -467,7 +511,7 @@
\startinterface dutch
- \installlanguage [\s!nl] [\c!status=\v!start]
+ \installlanguage [\s!nl] [\c!state=\v!start]
\appendtoks \language [\s!nl] \to \everyjob
\appendtoks \mainlanguage [\s!nl] \to \everyjob
@@ -476,7 +520,7 @@
\startinterface czech
- \installlanguage [\s!cz] [\c!status=\v!start]
+ \installlanguage [\s!cz] [\c!state=\v!start]
\appendtoks \language [\s!cz] \to \everyjob
\appendtoks \mainlanguage [\s!cz] \to \everyjob
@@ -485,7 +529,7 @@
\startinterface italian
- \installlanguage [\s!it] [\c!status=\v!start]
+ \installlanguage [\s!it] [\c!state=\v!start]
\appendtoks \language [\s!it] \to \everyjob
\appendtoks \mainlanguage [\s!it] \to \everyjob
@@ -494,7 +538,7 @@
\startinterface romanian
- \installlanguage [\s!ro] [\c!status=\v!start]
+ \installlanguage [\s!ro] [\c!state=\v!start]
\appendtoks \language [\s!ro] \to \everyjob
\appendtoks \mainlanguage [\s!ro] \to \everyjob
@@ -519,4 +563,4 @@
\errorstopmode \dump
-\endinput \ No newline at end of file
+\endinput