Florent Rougon <[EMAIL PROTECTED]> wrote: > Ross Boylan <[EMAIL PROTECTED]> wrote: > >> Anyway, the BOTTOM LINE with the current Debian setup seems to be that >> if you want to specify page size explicitly, and have that respected >> by all post-processing tools, you need to use >> \usepackage[dvips,xxxx]{geometry}, where xxx is the papersize. >> Apparently xxx can either be "paper=letterpaper" or just >> "letterpaper". > > Even if this works _now_, I think advising users to pass the "dvips" > option no matter which driver they are using is 1) ugly 2) bound to lead > to problems later. I'd rather tell them to specify the driver they are > actually using.
Well, either that, or let geometry choose a working default. Atsuhito's analysis made me think that such a default in fact exists. I looked at the code of geometry.sty, and I found that geometry does not really care for the pdftex or vtex options: It detects properly pdftex in PDF mode or vtex in two of its modes, and sets its internal driver variables accordingly. Moreover, there's no difference between the dvips and dvipdfm specials. In other words, we have this matrix of actually used driver specials (dvips <=> dvipdfm): \ driver \ option: dvips pdftex vtex none -\ \--\ driver \-\ used \_______________________________________ | DVI mode | dvips none none none | PDF mode | pdftex pdftex pdftex pdftex | vtex | vtex vtex vtex vtex In other words: It always uses the right driver with pdfTeX in PDF mode or vtex, with (pdf)TeX in DVI mode, however, it does nothing unless you specificy "dvips" (or "dvipdfm"). It seems to assume that one might want to use some other driver (which do exist), and that this driver will stop working if dvips-type specials are present. If this is the case, it might make sense for upstream geometry to not make dvips the default in DVI mode, but I question whether a distribution like TeX Live or Debian shouldn't choose dvips as the default for DVI mode in a configuration file. Users who want to use other drivers can always remove the configuration setting. I just tried it with dvilj6, and it seems to work even with dvips-type specials in the DVI file (and it did the best it could, creating a a5 file that could be printed on our A4 laserjet). dvilj says: "dvilj: warning: Invalid keyword or value in \special - <papersize> ignored", so this seems safe. I don't have the energy to try many more, in particular since Taking this together, I think there *is* a bug, and that is that we do not have a sensible default set of \special commands in DVI files. It could be fixed by simply doing -%%\ExecuteOptions{a4paper,dvips} +\ExecuteOptions{dvips} in geometry.cfg (moving this file below /etc). Regards, Frank -- Dr. Frank Küster Single Molecule Spectroscopy, Protein Folding @ Inst. f. Biochemie, Univ. Zürich Debian Developer (teTeX/TeXLive)