WhizzyTeX Frequently Asked Questions

# WhizzyTeX Frequently Asked Questions ### Didier Rémy ### Last Modified: June 10, 2020

## Contents

## 1 Where to find it

The URL is http://cristal.inria.fr/whizzytex/

The last major release is 1.3.1 and the stable version is 1.3.5

The last version of the FAQ can be found at http://cristal.inria.fr/whizzytex/FAQ.html

## 2 Is this a Bug?

Before reporting a bug, have you checked that the source file correctly compiles and previews with the latex, previewer and options used in WhizzyTEX? (In recent versions of WhizzyTEX you may see the previewer’s command from Emacs using the menu View log... and selecting command.)

You may also check the latex log files (format, and latex, slice). In particular, format will show you the version of whizzytex.sty that has been loaded. Loading an old version will likely not work! (You may also check the Emacs version of whizzytex (from the Help entry of Whizzy menu).

Since the latex color package is implicitly loaded, you should also check the compatibility with this package by by explicitly including `\usepackage{color}` right before the `\begin{document}` (because whizzytex would load this package last) and checking that it still compiles with latex.

In advi mode (when option -advi is used), the advi package is also implicitly loaded. So you should then also try to latex your source with the package advi explicitly loaded before all other packages, since some errors may be indirectly due to this advi and not to WhizzyTEX itself—then send your bug report to Active-DVI.

Also, do not forget to check your version number before repporting a bug. See the value of variable whizzytex-mode in Emacs manually or through the Emacs on-line documentation of whizzytex-mode. This version number should be identical to the one of whizzytex.sty, which is displayed on the welcoming page when starting WhizzyTeX, and also to the one of the script whizzytex, which you can check with the shell command whizzytex -version. If these three version numbers do not match, you have a broken installation, maybe a file of old version takes priority, which you can solve by deleled the old file or adjusting the corresponding PATH variable.

## 3 Known problems

Fixed refers to last stable version.

1. WhizzyTEX uses hard links and hence does not work on file systems that do not support them, such as VFAT.
2. It has been reported with old versions that sometimes the cursor jumps to the end of the buffer while typing fast, and the mark is left a few characters before where the point was when the cursor jumped.

   The problem should be Fixed in versions ≥ 1.3.5.

   Otherwise, an (imperfect) workaround is to reduce the slicing speed e.g. by the follow setting (you may need to adjust the value):

               (setq whizzy-load-factor 0.1)

3. Its does not work with the `x-symbol` package.

   The `x-symbol` package may now work together with WhizzyTEX, provided you have a version of x-symbol greater than v4.3.3. However, the option Page-to-point may still not work (under `x-symbol`, the cursor would be inserted at the end of the buffer instead of at the current-position). Then, you may use the following alternative.

   Alternatively, with (X)Emacs version 21 and above, you may set `whizzy-write-annotate` to nil to tell WhizzyTEX not to use `write-region-annotation-functions`. The slice will be write slower, but in a way so that the `x-symbol` package should always be compatible with WhizzyTEX.

   You may also wish to set `'x-symbol-auto-conversion-method` to `'fast`.

4. How can a click in the `advi` window reposition the point in the emacs window?

   First, you should be using the `advi` previewer. Then, check the documentation of `advi`, since bindings may depend on versions. This is likely to be `shift-left-mouse` or `left-mouse`.

   There might also be a short-cut that temporarily rebinds `shift-xxx-mouse` to `xxx-mouse`. This can be toggled by typing `e` in the `advi` or by calling `advi` with the option `-edit`. Note that `shift-midddle-click` and `shift-right-click` (or their shortcut versions) are used for `move` and `resize` commands when WhizzyEditting.

## 4 Using WhizzyTEX with platex

WhizzyTEX has been designed to work with standard LaTeX. However, it should also work with other implementations of LaTeX, as long as they allow the creation of new formats.

As an example, to make it work with `platex` you can edit the script `whizzytex` and change some findings as follows (in the experimental version):

    INITEX="platex -ini"
    LATEX=platex
    FORMAT=platex
    BIBTEX=jbibtex
    FMT=fmt

## 5 Using WhizzyTEX under Windows

WhizzyTEX is designed for `Unix` plateforms. However, Marciano Siniscalchi reported that it successfully worked on his Window plateform under Cygwin (1.5.5-1), using Cygwin/Xfree 4.3 and xdvi from tetex 2.0.2-13.

The following modifications to the whizzytex script are necessary:

- Fix the `xdvi` script by replacing `xdvi.bin` by `exec xdvi.bin` on the last line of the script (as in some Linux distribs).
- Fix the `whizzytex` script by replacing the line

              preview() {mv $WHIZZY.dvi $WHIZZY.$VIEW; }

  with

              preview() {cp $WHIZZY.dvi $WHIZZY.$VIEW; rm $WHIZZY.dvi}

  (Permission to rename the .wdvi file is denied while `xdvi` is displaying it).
- Replace all occurrences of ulimit with true as ulimit is not implemented on Cygwin. Then, when WhizzyTEX falls into a loop during latex-ing, which is possible on some input, WhizzyTEX will not be able to get it out. (When such cases occur, you’ll have to quit and restart whizzytex by hand—after your source file has been fixed.)
- Replace all instances of wdvi with w.dvi (as Yap automatically adds .dvi to a file name not ending with .dvi and then complains about not finding the file).

Unfortunately, Cygwin/XFree86 is quite slow compared to XFree86 under Linux, etc. An alternative is to use a commercial X server, such as XWin32 from StarNet (www.xwin32.com). MI/X from Microimages (www.microimages.com) is another alternative, but since it is XFree86-based, it is not as fast as XWin32. Performance, even with XWin32, is still inferior to Linux.

### Using yap instead of xdvi under Cygwin

Gregory Borota has reported much better performances with yap than with xdvi under Cygwin. He has written a small wrapper interface around yap to make it look like xdvi for WhizzyTEX and patched the source of WhizzyTeX accordingly. See the README and INSTAL file coming with his whizzytex-yap-.tgz patch, coming with absolutely no warranty.

See also the detailed installation guide written by Gunnar Hellmund.

## 6 Using Virtual Fonts with Active-DVI

Active-DVI does not currently handle virtual fonts (when called with virtual fonts, it usually shows a more or less blank screen). This can be fixed by expanding virtual fonts with dvicopy prior to display as explained on the Active-DVI FAQ.

In WhizzyTEX, this can be done automatically by passing the option -dvicopy dvicopy or equivalently setting

            DVICOPY=dvicopy

in .whizzytexrc configuration file in the working directory.

## 7 Known bogus latex packages

### 7.1 ieee.cls [2000/01/11]

This package introduced a bug in the redefinition of `\@xfloaf` that makes it incompatible with the color package

To fix it, your must redefine it as follows:

    \def\@xfloat#1#2{\ifhmode \@bsphack\@floatpenalty -\@Mii\else
        \@floatpenalty-\@Miii\fi\def\@captype{#1}\ifinner
          \@parmoderr\@floatpenalty\z@
         \else\@next\@currbox\@freelist{\@tempcnta\csname ftype@#1\endcsname
           \multiply\@tempcnta\@xxxii\advance\@tempcnta\sixt@@n
           \@tfor \@tempa :=#2\do
                            {\if\@tempa h\advance\@tempcnta \@ne\fi
                             \if\@tempa t\advance\@tempcnta \tw@\fi
                             \if\@tempa b\advance\@tempcnta 4\relax\fi
                             \if\@tempa p\advance\@tempcnta 8\relax\fi
             }\global\count\@currbox\@tempcnta}\@fltovf\fi
        \global\setbox\@currbox \color@vbox \normalcolor \vbox\bgroup
        \def\baselinestretch{1}\small\normalsize
        \hsize\columnwidth \@parboxrestore}

> This document was translated from LATEX by HEVEA.