TeX's primitives can be renamed by macro formats/packages: this allows new/altered features or behaviours. Usually this is done such that the originals are still available ('renamed'): certainly LaTeX2e does this (for example \@@end). Which primitives does ConTeXT rename/move, and where do they 'end up'? As there are two ConTeXt versions (MkII and MkIV), are there any differences between the two in this regard?
Asked
Active
Viewed 320 times
13
Joseph Wright
- 259,911
- 34
- 706
- 1,036
1 Answers
11
ConTeXt moves several primitives, renaming them systematically using the prefix \normal.... For ConTeXt MkII, all but one of the primitives moved are from TeX90: there is also one from e-TeX and one 'pdfTeX' one that appears only in LuaTeX:
\end\everyjob\expanded\input\language\mathop\month\outer\over\unexpanded\vcenter
All of these are saved as \normal..., e.g. \normalend is the \end primitive.
ConTeXt MkIV moves all of the above plus a few additional primitives from TeX90/e-TeX:
\/(saved as\normalitaliccorrection)\hoffset\left\middle\right\voffset
MkIV uses some Lua code to extend/alter the behaviour of these primitives: again the originals are saved as \normal....
It also moves two LuaTeX primitives:
\bodydir\pagedir
These are 'hidden' as \spac_directions_normal_body_dir and \spac_directions_normal_page_dir: the \normal... commands do exist but are not equivalent to the primitives.
Joseph Wright
- 259,911
- 34
- 706
- 1,036
2013.10.20commit: http://repo.or.cz/w/context.git/commit/b8ac6d7b7fdb16293c28034c349efd5b0b7b20b3?f=tex/context/base/math-fen.mkiv – Aditya Apr 17 '14 at 06:23\mathopis not moved in current TL2016 MkIV. If I typeset the following minimal expample\starttext\meaning\mathop\stoptextit simply prints\mathop. – Henri Menke Jun 20 '16 at 11:42\outeris just empty macro. – Henri Menke Jun 20 '16 at 11:50\outerprimitive in ConTeXt then\normalouter(or\primitive\outeror a Lua approach) is the way to go. – Joseph Wright Jun 20 '16 at 12:26