3

My setup: TeX Live, version 2014.20141024-2 (packaged with Debian 8 Jessie)

In man tex it's written:

... when called as tex the tex format is used, which is identical to the plain format ...

If this is so, why greeting differs in following two commands ? (TeXk instead of TeX; and \write18 added)

$ tex
This is TeX, Version 3.14159265 (preloaded format=tex)
**
$ initex '\input plain \dump'
$ tex -fmt plain
This is TeXk, Version 3.14159265 (preloaded format=plain)
 restricted \write18 enabled.
**

Also, I need to override default tex.fmt with local tex.fmt, created from plain.tex:

I put new tex.fmt to /usr/local/share/texmf/web2c/, then run texhash on it.
kpsewhich tex.fmt gives /usr/local/share/texmf/web2c/tex.fmt, as expected.

But when I run 'tex', it uses default tex.fmt
How to override it?
EDIT: put new tex.fmt to /usr/local/share/texmf/web2c/tex/, and it will work.

  • Are you really using TeX Live 2015? TeX Live 2014 isn't even frozen yet. – cfr Apr 3 '15 at 2:57
  • @cfr: I'm using texlive packages that come with Debian 8 Jessie – Igor Liferenko Apr 3 '15 at 3:16
  • Which are not TeX Live 2015, I suspect.... – cfr Apr 3 '15 at 3:24
  • @cfr: I removed this part. – Igor Liferenko Apr 3 '15 at 3:31
  • 3
    @Igor: (1) If the program name is tex, most extensions such as parse_first_line are disabled by default. In this case the banner is This is TeX, Version 3.14159265 ... In the case of tex --fmt=plain ..., the program name is reset to plain, thus some extensions are enabled, so the banner changes into This is TeXk, Version 3.14159265 ... If you type tex --progname=tex --fmt=plain ..., the banner is again This is TeX, Version 3.14159265 .... (2) format files are searched in the following order: current directory, $TEXMF/web2c/$engine, $TEXMF/web2c. – Akira Kakuto Apr 3 '15 at 5:36
7

The tex.fmt is created by

\input plain
\dump
\endinput

Thus it is the same as your plain.fmt. In the present implementation of TeX, the banner

This is TeX, Version 3.14159265 ...

is printed only when the TeX is nearly equal to the original TeX by Knuth. This is discriminated by the program name 'tex'. In the case of

tex --fmt=plain ...

the program name is reset to

plain

so, some extensions such as

parse_first_line

are enabled. In this case the banner becomes

This is TeXk, Version 3.14159265 ...

If you type

tex --progname=tex --fmt=plain ...

then the banner is again

This is TeX, Version 3.14159265 ...

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.