[NTG-context] How can I use ConTeXt from TeXLive2020 ?

Hans Hagen j.hagen at xs4all.nl
Tue Aug 11 17:25:53 CEST 2020


A few remarks.

In a mkiv luatex setup there are (on a unix system):

   luatex  : binary
   mtxrun  : a copy of mtxrun.lua
   context : a shell script starting mtxrun

Now, the problem there is that these shebang lines are limited, i.e. 
there is no way to pass an argument and we need to start luatex in lua 
mode. This is why the program refered to is texlua which is a copy of or 
symlink to luatex and when called with that name it knows that it has to 
start in lua mode.

On windows there are two small stubs: mtxrun.exe and context.exe an both 
will start luatex (no need for texlua there) with the same script etc.

In a luametatex setup we have a uniform and simpler model.

   luametatex   : binary
   mtxrun       : a copy of luametex or symlink to it
   context      : a copy of luametex or symlink to it
   mtxrun.lua   : used when mtxrun is started
   context.lua  : used when context is started

So, here the 'context' link (or copy) from it's name knows to start in 
lua mode and load context.lua (which actually loads mtxrun.lua + 
mtx-context.lua). It's the same on all platforms.

Now, already long ago we ditched all other stubs simply because given 
the amount of scripts in a tex live setup it's a recipe for clashes 
(scripts also have to compete with programs / scripts  installed as part 
of the os and other programs so even more opportunity for clashes). We 
just use

   mtxrun --script ...

instead (and texmfstart in a mkii setup).

These models cannot be mixed, which is why in a luametatex lmtx setup we 
use "context --luatex" to start mkiv, where luametatex is the runner.


ps. I remember the times that context was considered bad because it 
needed a runner, read: a script was part of the deal and a tex run 
should not have such a depedency; the need to install perl or ruby was 
seen as a shortcoming. We also used scripts to generate font metric 
files (context didn't depend on other programs for toc and index 
generation and had just one auxiliary file). But times have changed and 
scripts are now hip and modern in the tex ecosysystem, which is why we 
basically limit ourselves to just 'context' and 'mtxrun' and start all 
the other context related scripts indirectly.

                                           Hans Hagen | PRAGMA ADE
               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
        tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl

More information about the ntg-context mailing list