INSTALLATION INSTRUCTIONS To install, do the following: 1. Read the ENVIRONMENTS section of xdvi.man.sed to determine the correct default values for the XDVIFONTS and XDVISIZES environment variables. Edit the Imakefile or Makefile and change the values of the make variables DEFAULT_FONT_PATH and DEFAULT_FONT_SIZES to these values. (Note: for X10 compilation, use Makefile_10 instead of Makefile.) You may also wish to change other compilation options; they are described later in this file. 2. make xdvi and try it out. If the settings in step one are incorrect, you can use the corresponding environment variables to quickly try out different values. If the values set in step 1 were incorrect, rm pxl_open.o and go back to step 1. 3. make xdvi.man. 4. Install xdvi and xdvi.man. The X10 flag only affects xdvi.c and pxl.c (and the flags MSBITFIRST, BMSHORT, and BMLONG, see below). You can also change the `make' variables FONTFORMATS_C and FONTFORMATS_O to reflect which font formats are actually used at your site. Other compilation flags are: FONT_PATH (xdvi.c) Name of the environment variable to use when searching for the font path DEFAULT_FONT_PATH (xdvi.c) Name of the default font path to use when the above environment variable is not set. See the ENVIRONMENT section of the man page for details on how to get xdvi to recognize the directory structure you use for storing fonts. SYSV (dvi_init pxl_open xdvi.c) Set for System V compilation. VMS Set for VMS compilation. MSBITFIRST (X11 only; xdvi.c dvi_draw.c gf.c pk.c pxl.c) Store bitmaps internally with the most significant bit at the left. For performance reasons, it would be best to set this to coincide with what your server uses. Use the keystroke '^P' to find information in this regard. Generally, you should use MSBITFIRST if and only if '^P' reports bitord = 1, and BMSHORT/BMLONG (below) should be set to match whatever '^P' reports under "Unit =". But, if bitord = byteord, then the latter setting should not matter much. BMSHORT (X11 only; xdvi.c dvi_draw.c gf.c pk.c pxl.c) Store bitmaps in short integers instead of bytes. See MSBITFIRST for other relevant comments. To check performance, you can use: time xdvi -d 8 file.dvi BMLONG (X11 only; xdvi.c dvi_draw.c gf.c pk.c pxl.c) Store bitmaps in long integers instead of bytes. ALTFONT (xdvi.c) Default font to use if the font named in the dvi file cannot be found. Can be set to NULL. By default, it is "cmr10". NOTOOL (X11 only; xdvi.c) Compile using raw X calls. BUTTONS (xdvi.c) Put radio buttons on the right side of the window for commonly used commands. A4 (xdvi.c) Use European size paper by default. All flags should be set in the appropriate Makefile via the variable ``DEFINES''. ================================================================ Notes of historical nature follow. Most recent changes are listed at the end of the file. ================================================================ This directory contains a version of xdvi capable of reading GF, PXL and PK font files. This version of xdvi is based on the source that "came with" X v10r3. Xdvi was modified by Paal Kvamme at the Norwegian Institute of Technology, based on the modifications I had made to dviimp (a dvi to ImPress converter). This code was again more or less directly translated from the web source of PKtoPX. If you discover (and fix) any bugs in this code, please notify me, so I can make the corresponding changes myself. --------- H}vard Eidnes (TeXish: H\aa vard Eidnes) Division of Computer Science Norwegian Institute of Technology E-Mail: h_eidnes%vax.runit.unit.uninett@nta-vax.arpa ================================================================ Also has path search added by Mark Eichin, looks in TEXFONTS ================================================================ ================================================================ Additional notes: X11 version now works on the IBM PC/RT as well as VAX. [eichin:19880313.1330EST] ================================================================ *MORE* fixes (for athena release locker) [eichin:19880722.2058EST] Fixes: narrow vertical and horizontal lines no longer disappear. bogus underlining (which usually occured on even sample sizes of odd sized characters) no longer occurs. -S number (or typing number followed by S) will adjust the sampling fraction; 0 is special cased to mean if anything in the sampled zone is set, set the sample, else clear it. Interesting to experiment with, though not useful for reading (the default value of 3 is just right.) -display and -geometry arguments work (so do old style forms, though they were broken before) fixed one of the PK debugging messages to print the correct font name instead of printing the pointer as text. included Ken Raeburn 's changes to support multiple screens. ================================================================ More changes: 1. Incorporated the bitmap under a viewport widget using the toolkit (X11 only); 2. Added an icon and icon geometry arguments (X11 only); 3. Supported window resizing; 4. Added a 'c' option to move whatever is currently under the cursor to the center of the window; 5. Added an 'R' option to reread the .dvi file, and added logic to make 'R' happen automatically whenever any part of the window is exposed and the dvi file changes (so that you can iconify xdvi, run tex, deiconify xdvi, and voila!); 6. Added a 'magnifying glass': when you push a button, a window pops up, showing the region of the page, unshrunk; 7. Added support for gf fonts; 8. Upgraded font searching (at our site we use /usr/custom/tex82/gf for gf fonts, /usr/custom/tex82/pk for pk fonts, etc.); 9. Made numerous internal changes (removed all the lint I could, made unshrunk bitmaps permanently resident, which speeds up size changing, made table.h necessary only for pxl.h, split up the source file into xdvi.c, dvi.c, gf.c, pxl.c, and pk.c, made shrinking occur relative to the character's hot point, etc.) 10. The program reads SIGIO signals and processes incoming events immediately, so that it can stop displaying things that would be erased anyway. If these interrupts are not coming through, then it also checks for incoming events every several dozen characters displayed. 11. Further split up dvi.c into dvi_init.c and dvi_draw.c; added compilation options for various internal bitmap representations. Fixed it so gcc won't give warnings, and so it works with R3 toolkit. -- Patchlevel 2: -- 12. Added MAXCHARS compilation option. Eliminated the nonsense with generating table.h. -- Patchlevel 3: -- 13. Added -altfont command line option and SYSV compilation option. ================================================================================ 4/1989 Modified for System V boxes. -DSYSV compiler option. Donald Richardson, donr@crystal.mie.clarkson.edu ================================================================================ -- Patchlevel 4: -- 14. Removed MAXCHARS compilation option. It's automatic now. Made X10 scrolling smoother. Implemented the moving magnifying glass. -- Patchlevel 5: -- 15. Implemented compilation without the toolkit, as well as scrollbars and tpic support in X10. Also this version should work with color VAXstations, although overstrike characters will come out incorrectly. 16. Fixed a bug in gf reading routines: specials at the beginning of a character def. were not being processed. Thanks to kevin@amath.washington.edu for a bug report and fix. 17. Added 'k' keystroke. -- Patchlevel 6: -- 18. Added buttons on the right side of the window. 19. Added -pagewidth and -pageheight command line options and A4 compilation option. 20. Added a yet more robust font finding algorithm. -- Patchlevel 7: -- 21. Replaced -pagewidth and -pageheight options with -paper. -- Patchlevel 8: -- 22. Added compatibility for X11R4 and VMS. Fixed up alignment of rules. -- Patchlevel 9: -- 23. Removed obsolete '#' and '=' options from the X11 version: they interfere with emacs. Paul Vojta, vojta@math.berkeley.edu