1
2
3\usemodule [ article basic ]
4\usemodule [ abbreviations logos ]
5
6\setupheader [ state = high ]
7
8\starttext
9
10\starttitle [ title = Filenames ]
11
12The \CONTEXT \ distribution follows a rather strict organisation . Originally
13all files that implemented macros had names using the pattern :
14
15\starttabulate [ Tw ( 1 0 em ) ]
16\FL
17\NC xxxx xxx . tex \NC \TEX \ file \NC \NR
18\NC mp xxxx . mp \NC \METAPOST \ file \NC \NR
19\LL
20\stoptabulate
21
22You can still find files that conform to these patterns but the organization
23evolved . The \type { tex } suffix is now normally used just for documents .
24
25Styles and modules can have names of any length , and can be recognized by their
26prefix :
27
28\starttabulate [ Tw ( 1 0 em ) ]
29\FL
30\NC s aaaa . tex \NC style ( rendering related ) \NC \NR
31\NC m aaaaaa . tex \NC module ( functionality related ) \NC \NR
32\NC x aaaaa . tex \NC xml module ( functionality related ) \NC \NR
33\LL
34\stoptabulate
35
36\CONTEXT \ \MKII , the frozen version for \PDFTEX \ and \XETEX , uses names like :
37
38\starttabulate [ Tw ( 1 0 em ) ]
39\FL
40\NC context . mkii \NC the main \TEX \ file \NC \NR
41\NC cont xx . mkii \NC an interface specific \TEX \ file \NC \NR
42\NC xxxx xxx . mkii \NC \TEX \ file \NC \NR
43\ML
44\NC mp xxxx . mpii \NC \METAPOST \ file \NC \NR
45\NC metafun . mpii \NC the main \METAFUN \ file \NC \NR
46\LL
47\stoptabulate
48
49\CONTEXT \ \MKIV , the current version , has files with names like :
50
51\starttabulate [ Tw ( 1 0 em ) ]
52\FL
53\NC context . mkiv \NC the main \TEX \ file \NC \NR
54\NC cont xx . mkiv \NC an interface specific \TEX \ file \NC \NR
55\NC xxxx xxx . mkiv \NC \TEX \ file \NC \NR
56\NC xxxx xxx . mkvi \NC \TEX \ file with named parameters \NC \NR
57\NC xxxx xxx . mkix \NC file with \LMX \ template \NC \NR
58\NC xxxx xxx . mkxi \NC file with \LMX \ template with named parameters \NC \NR
59\NC xxxx xxx . lua \NC a file with \LUA \ code \NC \NR
60\NC xxxx xxx . lfg \NC so called font goodie \LUA \ files \NC \NR
61\ML
62\NC metafun . mpiv \NC the main \METAFUN \ file \NC \NR
63\NC minifun . mpiv \NC a subset of \METAFUN \ \NC \NR
64\NC mp xxxx . mpiv \NC \METAPOST \ file \NC \NR
65\LL
66\stoptabulate
67
68There are more suffixes used , like \type { tua } and \type { tuc } for multipass
69jobdata , and \type { log } for log files . In the cache tree you can run into \type
70{ luv } , \type { lui } , \type { luj } and \type { lum } for startup data ,
71\type { tma } for \LUA \ cache files , \type { tmb } for \LUAJITTEX \ bytecode , \type
72{ tmc } for \LUATEX { bytecode } and \type { tmd } for \LUAMETATEX \ bytecode , but you
73can forget about them .
74
75There can be files with \type { imp } in the name : these relate to other files with
76a similar name .
77
78The follow up on \MKIV \ is called \LMTX \ ( or MkXL ? ) and is compatible with \MKIV : it uses ,
79at least now , mostly the same code . But , as it depends on \LUAMETATEX \ it also
80has some different internals . Therefore you will find some additional files :
81
82\starttabulate [ Tw ( 1 0 em ) ]
83\FL
84\NC context . mkxl \NC the main \TEX \ file \NC \NR
85\NC cont xx . mkxl \NC an interface specific \TEX \ file \NC \NR
86\NC xxxx xxx . mkxl \NC \TEX \ file \NC \NR
87\NC xxxx xxx . mklx \NC \TEX \ file with named parameters \NC \NR
88\ML
89\NC metafun . mpxl \NC the main \METAFUN \ file \NC \NR
90\NC minifun . mpxl \NC a subset of \METAFUN \ \NC \NR
91\NC mp xxxx . mpxl \NC \METAPOST \ file \NC \NR
92\LL
93\stoptabulate
94
95This means that a file \type { xxxx xxx } can be present with any of the \type
96{ mk . . } suffixes . In the standard distribution the \MKII \ and \MKIV \ files have
97their own path ( directory ) , and \LMTX \ only ships what it needs .
98
99This somewhat complicated setup is needed in order to support both \LUATEX \ and
100\LUAMETATEX \ system . The more \LUAMETATEX \ diverges from \LUATEX , the more the
101codebase will be split so eventually we might end up with \MKII , \MKIV \ and \LMTX \
102 as more or less independent versions . We try to share the \LUA \ code as much as
103possible , also because some components are generic .
104
105The name pattern \type { xxxx } groups the files in categories . These are also
106referred to from the interface definitions . Examples of categories are \type
107{ syst } for system modules that define various low level support macros and
108mechanisms . The user interface is handled by modules in the \type { mult }
109namespace . The \type { supp } modules layer on top of that and provide more
110helpers . The \type { font } and \type { type } modules deal with fonts , \type { lang }
111handles language support . The \type { strc } modules implement structural
112components , \type { tabl } does tables and \type { page } handles the layout .
113Specialized categories like \type { mlib } , \type { meta } and \type { grph } are for
114graphics , and \type { publ } is used for the publication ( bibliography ) subsystem .
115Just to give you an idea .
116
117\stoptitle
118
119\stoptext
120 |