[tex-k] Incompatibility between WEB and C versions of "ovp2ovf"

Igor Liferenko igor.liferenko at gmail.com
Mon Mar 14 06:51:06 CET 2016

Hi all,

On Fri Feb 26 06:05:30 CET 2016, Akira Kakuto wrote:
> FYI, C versions of ovp2ovf, ovf2ovp, opl2ofm, ofm2opl were probably
> written by John Plaice or his students in order to replace corresponding
> ones written by using the WEB. There are no man pages for them.
> Sometimes bugs were found in them compared with the WEB ones.
> Peter fixed a number of bugs. However the WEB versions still remain for the
> safety by prepending 'w'. There may be few users today of Aleph/Omega,
> however the utilities are still conveniently used, for example, to create
> virtual fonts in (u)pTeX.

BTW, this is a rather valuable info. Maybe it should be put to README?

The problem is that "wovp2ovf" automatically adds MAP to font 0, and
"ovp2ovf" does not do this.

First generate the same virtual font with two variants of ovp2ovf:

  echo "(MAPFONT D 0 (FONTNAME cmr10))" > myfont.vpl
  tftopl cmr10 > myfont.ovp
  ovp2ovf myfont.ovp myfont.ovf myfont.ofm
  wovp2ovf myfont.ovp webfont.ovf webfont.ofm

Now see the difference:

  ovf2ovp myfont.ovf myfont.ofm > myfont
  ovf2ovp webfont.ovf webfont.ofm > webfont
  diff myfont webfont

I wonder if it may be considered as a bug in C variant of ovp2ovf.

Before I learned about "wovp2ovf", I used "vptovf" to automatically
add MAP to font 0:

  echo "(MAPFONT D 0 (FONTNAME cmr10))" > myfont.vpl
  tftopl cmr10 >> myfont.vpl
  vptovf myfont.vpl
  rm myfont.vpl
  vftovp myfont.vf > myfont.ovp
  rm myfont.tfm myfont.vf
  ovp2ovf myfont.ovp

While we are talking about different variants of utilities:

I noticed that in
...trunk/Build/source/texk/web2c/omegaware/am/omegaware.am "otangle"
is used instead of "tangle". I cannot figure out the difference
between them.
Do you know why there are two separate executables in TeX Live? Which
one is better? Similarly, there should be "oweave", but there is not.
Do you know why?


More information about the tex-k mailing list