[tex-live] Re: Re: Please drop the DVI-with-pdfTeX hack!

Frank Küster frank at kuesterei.ch
Thu Sep 8 15:44:49 CEST 2005


"Jonathan Fine" <J.Fine at open.ac.uk> wrote:

> "Frank Küster" <frank at kuesterei.ch> wrote in message
> news:8764tc4v9u.fsf at alhambra.kuesterei.ch...
>> "Jonathan Fine" <J.Fine at open.ac.uk> wrote:
>
> <snip>
>
>> > Perhaps the microtype tail is trying to wag the dog.
>>
>> It's not only microtype, it is every package or document that tries to
>> access pdfTeX's additional primitives.  Now that we have decided to use
>> pdfTeX as our main engine, we can't say it's just our tail - it's quite
>> near to our heart.
>
> For me, TeX is much closer to my heart than pdfTeX and pdfeTeX.
>
> Off-topic:  According to http://www.latex-project.org/intro.html
>> LaTeX is based on Donald E. Knuth's TeX typesetting language.

There's no contradiction.  pdfTeX is an engine that understands DEK's
TeX typesetting language, but it's not the same as his "tex" program.
And no matter what is closer to your heart,  tex-live (and tetex) don't
use DEK's tex program except for plain tex, they use pdftex.

> Ralph's draft announcement wrote:
>> The advantage of this change is that now packages like microtype.sty can
>> be used to produce DVI files with the microtypographical extensions from
>> pdfTeX.
>
> In other words, the microtypographic extensions.
>
> But you are saying it is all pdfTeX additional primitives.
>
> Could someone clarify this.  Which is it?

According to the file itself
(http://tug.org/texlive/devsrc/Master/texmf/tex/generic/config/pdftex-dvi.tex),
the following primitves are undefined:

$ grep undefined pdftex-dvi.tex   
%   \ifx\pdfoutput\undefined
% we make the undefined primitives available as \normalPRIMITIVE, so
\let\pdfannnot\undefined
\let\pdfhorigin\undefined
\let\pdfinfo\undefined
\let\pdfliteral\undefined
\let\pdfmapfile\undefined
\let\pdfoutput\undefined
\let\pdfpageheight\undefined
\let\pdfpagewidth\undefined
\let\pdftexversion\undefined
\let\pdfvorigin\undefined
\let\pdftexrevision\undefined
\let\pdfxform\undefined
\let\pdfximage\undefined

So there are many more.  On the contrary, the microtypographic
extensions are still defined:

% these public primitives remain usable in dvi mode:
% \pdfadjustspacing
% \pdfavoidoverfull
% \pdffontattr
% \pdffontexpand
% \pdffontname
% \pdffontsize

The problem is that microtype tests for pdftexversion and pdftexrevision
and adjusts its code according to what it finds.  I think that this
approach is just exactly what these primitives are meant for.  It should
be possible to use them for that purpose, and not do strange hacks.

Regards, Frank
-- 
Frank Küster
Inst. f. Biochemie der Univ. Zürich
Debian Developer



More information about the tex-live mailing list