home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-dist / unixtex-6.1b-src.tgz / tar.out / contrib / unixtex / xdvik / README < prev    next >
Text File  |  1996-09-28  |  18KB  |  421 lines

  1. This directory contains Xdvik, my (kb@cs.umb.edu) modified version of
  2. Paul Vojta's xdvi.  See `Makefile.in' for the version number.
  3. See `NEWS' for changes by release.
  4.  
  5. The file `INSTALL' explains the installation process, which I changed to
  6. use a GNU-style (Autoconf-generated) `configure' script to guess
  7. system-dependent information, instead of requiring the installer to do
  8. everything in the Makefile.
  9.  
  10. Aside from configuration, this differs from the original primarily in
  11. that it uses the same code for path searching as TeX and my other
  12. distributions. I haven't tested the X10 and non-Unix support present in
  13. the original.
  14.  
  15. Please report bugs to tex-k@cs.umb.edu, rather than Paul, so he is not
  16. bothered with bugs that aren't in his program. (Email
  17. tex-k-request@cs.umb.edu with a line containing
  18.     subscribe you@preferred.email.address
  19. in the body of the message to join this mailing list.)
  20.  
  21. xdvik is free software; Paul's original files are public domain.  The
  22. files I wrote are covered by the GNU General Public License -- see the
  23. files COPYING*.
  24.  
  25. You can get the original xdvi from ftp.x.org:contrib/xdvi*.
  26.  
  27. kb@cs.umb.edu
  28. Member of the League for Programming Freedom -- write lpf@uunet.uu.net.
  29.  
  30. (The rest of this file is the README from the original distribution.
  31. The configuration info is irrelevant to this version.)
  32. DESCRIPTION
  33.  
  34. xdvi is a program for previewing .dvi files, which are produced by the
  35. mathematical typesetting system, TeX.
  36.  
  37. INSTALLATION INSTRUCTIONS
  38.  
  39. You can compile and install with either imake or just plain make.
  40.  
  41. To install with imake, do the following:
  42.  
  43.     1.    Set the OSDEFS flags in the Imakefile (see SETTING OSDEFS, below).
  44.  
  45.     2.  Set the OPTIONDEFS flags in the Imakefile (see COMPILATION OPTIONS,
  46.     below).
  47.  
  48.     3.    Set the font path options in the Imakefile (see SETTING THE FONT PATH,
  49.     below).
  50.  
  51.     4.    Make the Makefile:    xmkmf
  52.  
  53.     5.  Compile xdvi:        make
  54.     If you have problems, see COMMON PROBLEMS WHEN COMPILING, below.
  55.  
  56.     6.    Try out xdvi.  
  57.     If the settings in step 3 are incorrect, then you can use the
  58.     corresponding environment variables to quickly try out different
  59.     values.  Then rm font_open.o and go back to step 3.
  60.  
  61.     7.    Make xdvi.man
  62.  
  63.     8.    Install xdvi and xdvi.man.
  64.  
  65. Or, to install with plain make, do the following:
  66.  
  67.     0.    Copy Makefile.std to Makefile.
  68.  
  69.     1.    Set the OSDEFS flags in the Makefile (see SETTING OSDEFS, below).
  70.  
  71.     2.  Set the OPTIONDEFS flags in the Makefile (see COMPILATION OPTIONS,
  72.     below).
  73.  
  74.     3.    Set the font path options in the Makefile (see FONT PATH OPTIONS,
  75.     below).
  76.  
  77.     Then continue with steps 5-8 as above.
  78.  
  79.  
  80. SETTING OSDEFS
  81.  
  82.     The OSDEFS variable should contain definitions to indicate what type
  83.     of system you are using.  They may be some of the following:
  84.  
  85.     SYSV        Set for System V compilation.
  86.     VMS        Set for VMS compilation.
  87.     MSBITFIRST    Store bitmaps internally with the most significant bit
  88.             at the left.  For performance reasons, it would be best
  89.             to set this to coincide with what your server uses.
  90.             Use the keystroke '^P' to find information in this
  91.             regard.  Generally, you should use MSBITFIRST if and
  92.             only if '^P' reports bitord = 1, and BMSHORT/BMBYTE
  93.             (below) should be set to match whatever '^P' reports
  94.             under "Unit =".  But, if bitord = byteord, then the
  95.             latter setting should not matter much.
  96.     BMSHORT        Store bitmaps in short integers instead of 32-bit
  97.             integers.  See MSBITFIRST for other relevant comments.
  98.             To check performance, you can use:
  99.                 time xdvi -d 8 file.dvi
  100.     BMBYTE        Store bitmaps in bytes instead of 32-bit integers.
  101.  
  102.     The following table gives OSDEFS settings for some systems:
  103.  
  104.     Machine        O/S        OSDEFS
  105.     -------        ---        ------
  106.     DEC Alpha    OSF/1 2.0    OSDEFS=
  107.     Intel x86    Linux        OSDEFS=
  108.     NeXT        NeXTStep    OSDEFS=-DMSBITFIRST -DVFORK -Dpid_t=int
  109.     RS6000        AIX        OSDEFS=-DMSBITFIRST -DSVR3 -DSTREAMSCONN
  110.     SGI        IRIX 5.1    OSDEFS=-DMSBITFIRST -DSVR4
  111.                     (If not using imake, also add
  112.                     -cckr -float -KPIC -G 0 -Wf,-XNh2000
  113.                     to CFLAGS.)
  114.     Sun 3        Sunos 4.x    OSDEFS=-DMSBITFIRST -DVFORK
  115.                       or   -DMSBITFIRST -DVFORK=include
  116.     Sun Sparc    Sunos 4.x    OSDEFS=-DMSBITFIRST -DVFORK=include
  117.     Sun Sparc    Solaris        OSDEFS=-DMSBITFIRST -DSYSV
  118.  
  119.     If, when running xdvi, you will usually be displaying remotely
  120.     (e.g., on an X terminal), then you may want to set the BMSHORT/BMLONG
  121.     flags and the byte order to correspond to the most common display
  122.     device.
  123.  
  124.  
  125. COMPILATION OPTIONS
  126.  
  127.     The OPTIONDEFS variable should be set to indicate which options
  128.     xdvi should be compiled with.  These are listed below.
  129.  
  130.     There is really no difference between OSDEFS and OPTIONDEFS; the only
  131.     reason for keeping them separate is to allow OSDEFS to be tabulated
  132.     as above.
  133.  
  134.     Option Flag    Explanation
  135.     -----------     -----------
  136.  
  137.     USE_PK        Use pk format font files.  This is preferred because
  138.             pk font files are smaller.
  139.     USE_GF        Use gf format font files.
  140.     BUTTONS        Put radio buttons on the right side of the window for
  141.             commonly used commands.
  142.     NOTOOL        Compile using raw X calls.
  143.     GREY        Use greyscale anti-aliasing for displaying shrunken
  144.             bitmaps.
  145.     PS_DPS        Use Display PostScript <TM> to display PostScript <TM>
  146.             specials.  Your system must have DPS for this to work.
  147.     PS_NEWS        Use the NeWS server to display PostScript specials.
  148.             Your system must have the NeWS include files and
  149.             libraries for this to compile; the xdvi binary can be
  150.             run with either a standard X server or the NeWS server,
  151.             but in the former case the code generated by PS_NEWS
  152.             will have no effect.
  153.     PS_GS        Use GhostScript <TM> to render PostScript specials.
  154.             Your system must have Ghostscript installed for this
  155.             to work.  Versions earlier than 2.6.1 have not been
  156.             tested with xdvi.
  157.     MAKEPK        If a font is not found, then try to call Metafont to
  158.             create the font.  When using this option, remember to
  159.             set the paths in MakeTeXPK correctly for your site,
  160.             and be sure that the destination directory for
  161.             MakeTeXPK appears in your DEFAULT_FONT_PATH variable.
  162.             To have PostScript<TM>-like fonts made as well, see
  163.             the package gsftopk distributed with xdvi.
  164.     MAKEPKCMD=\"/usr/local/tex/bin/MakeTeXPK\" Same as the above, but this
  165.             variant explicitly declares which command to use to
  166.             create the font.
  167.     A4        Use European size paper by default.
  168.     TEXXET        Enables op-codes 250 and 251 (used for right-to-left
  169.             languages).
  170.     BDPI        Default number of pixels per inch to use.
  171.             Don't forget to make corresponding changes to
  172.             DEFAULT_FONT_SIZES.
  173.     ALTFONT        Default font to use if the font named in the dvi file
  174.             cannot be found.  Can be set to NULL.  By default,
  175.             it is "cmr10".
  176.     XDVIFONTS_ONLY    Never check the TEXFONTS environment variable.
  177.             Normally xdvi checks TEXFONTS if the XDVIFONTS variable
  178.             is not set.  This option is recommended if the version
  179.             of TeX in use requires that the TEXFONTS variable be
  180.             set.  See the relevant paragraph in xdvi_man.sed for
  181.             more details.  This option turns off that paragraph.
  182.     SEARCH_SUBDIRECTORIES Enable recursive searching of subdirectories for
  183.             font files (* and ** specifiers).
  184.             This also enables the TEXFONTS_SUBDIR environment
  185.             variable and the DEFAULT_SUBDIR_PATH makefile variable.
  186.     NOQUERY        Set this if you have trouble compiling the definition
  187.             of drawingWidgetClass.
  188.  
  189.  
  190. SETTING THE FONT PATH
  191.  
  192.     Read the ENVIRONMENT section of xdvi_man.sed to determine the correct
  193.     default values for the XDVIFONTS and XDVISIZES environment variables.
  194.     Edit the Imakefile or Makefile and change the values of the make
  195.     variables DEFAULT_FONT_PATH and DEFAULT_FONT_SIZES to these values.
  196.     If your site uses virtual fonts, do the same thing with the
  197.     DEFAULT_VF_PATH variable.  Note that support of virtual fonts in xdvi
  198.     does not include support of built-in Postscript<tm> fonts.
  199.     Usually you will want to use the same font files as your printer;
  200.     given a choice, however, it has been suggested that write-white
  201.     fonts look better.
  202.  
  203.     (Note:  If you are using both imake and the "/*" or "/**" syntax for
  204.         recursive searching of subdirectories, you should enclose
  205.         the string in quotes, since /* marks the beginning of a C
  206.         comment, and the Imakefile is processed by cpp.)
  207.  
  208.  
  209. COMMON PROBLEMS WHEN COMPILING
  210.  
  211.     Some early versions of `make' may complain and abort if the file
  212.     Makefile.cfg does not exist.  If this is the case, do:
  213.                 touch Makefile.cfg
  214.                 make config
  215.     before running make.  (If `make' complains but continues by running
  216.     ./mkconfig, then this is OK.)
  217.  
  218.     If you get the error that the #include file <stdlib.h> does not exist,
  219.     then you should include -DX_NOT_STDC_ENV in your OSDEFS variable.
  220.     In X11R5 or later this problem should not occur.
  221.  
  222. ================================================================
  223.  
  224.     This program is the combined work of many people, including but not
  225. restricted to:
  226.     Eric Cooper, CMU
  227.     Bob Scheifler, MIT LCS
  228.     Paal Kvamme, Norwegian Institute of Technology
  229.     H\aa vard Eidnes, Norwegian Institute of Technology
  230.     Mark Eichin, MIT SIPB
  231.     Paul Vojta, UC Berkeley
  232.     Jeffrey Lee, U of Toronto
  233.     Donald Richardson, Clarkson Univ.
  234.     Ricardo Telichevesky, MIT
  235.     Luis Miguel Silveira, MIT
  236.  
  237. At the present time, the person to send bug reports to is Paul Vojta,
  238.     vojta@math.berkeley.edu.
  239. When doing so, please specify hardware and OS version, OPTIONDEFS
  240. and OSDEFS settings in the Makefile, and anything else that may be
  241. relevant.  Be sure you've checked the FAQ first, especially for questions
  242. regarding searching for font files.
  243.  
  244. This software has been tested on Sparc (SunOS 4.1.3), Sun3 (SunOS 4.1.3),
  245. Intel 486 (Linux 1.0), and RS6000 (AIX), although not all of these were
  246. running R6.
  247.  
  248. In addition to the various comp.sources.x archives, current versions of this
  249. program can also be obtained via anonymous ftp from the following location:
  250.     ftp.x.org        file contrib/applications/xdvi.tar.Z
  251.     [198.112.44.100]
  252. To ease the load on ftp.x.org, you may also check other X archives, for example:
  253.     gatekeeper.dec.com    file pub/X11/contrib/applications/xdvi.tar.Z
  254.     [16.1.0.2]
  255. For those who like to live on the bleeding edge, the latest and greatest
  256. beta test version is often available on:
  257.     math.berkeley.edu    pub/Software/TeX/xdvi_beta.tar.Z
  258.     [128.32.183.94]    
  259.  
  260. Paul Vojta, 11 May 1994
  261.  
  262. ================================================================
  263.  
  264. Note for IBM RS6000 users:  some of the libraries are in non-obvious places:
  265.  
  266.     libXmu    /usr/lpp/X11/Xamples/lib/Xmu/libXmu.a
  267.     libXaw    /usr/lpp/X11/Xamples/lib/Xaw/libXaw.a
  268.  
  269. These should be moved to /usr/lib or some more reasonable place (or use
  270. symlinks), and ditto for the include files, which are initially placed
  271. in /usr/lpp/X11/Xamples/include.
  272.  
  273. ================================================================
  274.  
  275. Notes of historical nature follow.  Most recent changes are listed at the end
  276. of the file.
  277.  
  278. ================================================================
  279.  
  280. This directory contains a version of xdvi capable of reading GF, PXL
  281. and PK font files. This version of xdvi is based on the source that
  282. "came with" X v10r3. Xdvi was modified by Paal Kvamme at the Norwegian
  283. Institute of Technology, based on the modifications I had made to
  284. dviimp (a dvi to ImPress converter). This code was again more or less
  285. directly translated from the web source of PKtoPX.
  286.  
  287. If you discover (and fix) any bugs in this code, please notify me, so
  288. I can make the corresponding changes myself.
  289.  
  290. ---------
  291. H}vard Eidnes    (TeXish: H\aa vard Eidnes)
  292. Division of Computer Science
  293. Norwegian Institute of Technology
  294.  
  295. E-Mail: h_eidnes%vax.runit.unit.uninett@nta-vax.arpa
  296. ================================================================
  297. Also has path search added by Mark Eichin, looks in TEXFONTS
  298. ================================================================
  299.  
  300. ================================================================
  301. Additional notes:
  302.     X11 version now works on the IBM PC/RT as well as VAX.
  303.             [eichin:19880313.1330EST]
  304. ================================================================
  305. *MORE* fixes (for athena release locker) [eichin:19880722.2058EST]
  306. Fixes:
  307.     narrow vertical and horizontal lines no longer disappear.
  308.     bogus underlining (which usually occured on even sample sizes
  309. of odd sized characters) no longer occurs.
  310.     -S number (or typing number followed by S) will adjust the
  311. sampling fraction; 0 is special cased to mean if anything in the
  312. sampled zone is set, set the sample, else clear it. Interesting to
  313. experiment with, though not useful for reading (the default value of 3
  314. is just right.)
  315.     -display and -geometry arguments work (so do old style forms,
  316. though they were broken before)
  317.     fixed one of the PK debugging messages to print the correct
  318. font name instead of printing the pointer as text.
  319.     included Ken Raeburn <raeburn>'s changes to support multiple
  320. screens.
  321. ================================================================
  322. More changes:
  323.  
  324.     1.  Incorporated the bitmap under a viewport widget using the toolkit
  325.     (X11 only);
  326.     2.  Added an icon and icon geometry arguments (X11 only);
  327.     3.  Supported window resizing;
  328.     4.  Added a 'c' option to move whatever is currently under the cursor to
  329.     the center of the window;
  330.     5.  Added an 'R' option to reread the .dvi file, and added logic to make
  331.     'R' happen automatically whenever any part of the window is exposed
  332.     and the dvi file changes (so that you can iconify xdvi, run tex,
  333.     deiconify xdvi, and voila!);
  334.     6.  Added a 'magnifying glass':  when you push a button, a window pops
  335.     up, showing the region of the page, unshrunk;
  336.     7.  Added support for gf fonts;
  337.     8.  Upgraded font searching (at our site we use /usr/custom/tex82/gf
  338.     for gf fonts, /usr/custom/tex82/pk for pk fonts, etc.);
  339.     9.  Made numerous internal changes (removed all the lint I could,
  340.     made unshrunk bitmaps permanently resident, which speeds up size
  341.     changing, made table.h necessary only for pxl.h, split up the source
  342.     file into xdvi.c, dvi.c, gf.c, pxl.c, and pk.c, made shrinking occur
  343.     relative to the character's hot point, etc.)
  344.    10.  The program reads SIGIO signals and processes incoming events
  345.     immediately, so that it can stop displaying things that would be
  346.     erased anyway.  If these interrupts are not coming through, then
  347.     it also checks for incoming events every several dozen characters
  348.     displayed.
  349.    11.  Further split up dvi.c into dvi_init.c and dvi_draw.c; added
  350.     compilation options for various internal bitmap representations.
  351.     Fixed it so gcc won't give warnings, and so it works with R3 toolkit.
  352. --  Patchlevel 2:  --
  353.    12.  Added MAXCHARS compilation option.  Eliminated the nonsense with
  354.     generating table.h.
  355. --  Patchlevel 3:  --
  356.    13.  Added -altfont command line option and SYSV compilation option.
  357. ================================================================================
  358.  
  359. 4/1989  Modified for System V boxes. -DSYSV compiler option.
  360.  
  361. Donald Richardson, donr@crystal.mie.clarkson.edu
  362.  
  363. ================================================================================
  364. --  Patchlevel 4:  --
  365.    14.  Removed MAXCHARS compilation option.  It's automatic now.  Made X10
  366.     scrolling smoother.  Implemented the moving magnifying glass.
  367. --  Patchlevel 5:  --
  368.    15.  Implemented compilation without the toolkit, as well as scrollbars
  369.     and tpic support in X10.  Also this version should work with color
  370.     VAXstations, although overstrike characters will come out incorrectly.
  371.    16.  Fixed a bug in gf reading routines:  specials at the beginning of
  372.     a character def. were not being processed.  Thanks to
  373.     kevin@amath.washington.edu for a bug report and fix.
  374.    17.  Added 'k' keystroke.
  375. --  Patchlevel 6:  --
  376.    18.  Added buttons on the right side of the window.
  377.    19.  Added -pagewidth and -pageheight command line options and A4
  378.     compilation option.
  379.    20.  Added a yet more robust font finding algorithm.
  380. --  Patchlevel 7:  --
  381.    21.  Replaced -pagewidth and -pageheight options with -paper.
  382. --  Patchlevel 8:  --
  383.    22.  Added compatibility for X11R4 and VMS.  Fixed up alignment of rules.
  384. --  Patchlevel 9:  --
  385.    23.    Removed obsolete '#' and '=' options from the X11 version:  they
  386.     interfere with emacs.
  387. --  Patchlevel 10: --
  388.    24.    Implemented arrow keys, expert mode, searching for the font's actual
  389.     size first, the -[xy]offset and -sw options, and numerous bug fixes.
  390. --  Patchlevel 11: --
  391.    25.    Implemented recursive searching for font files in subdirectories.
  392.    26.    Changed +sw to -hushspecials and implemented -hush.
  393.    27.    Modified mksedscript so that the man page comes out neater.
  394.    28.  Added a -keep option and resource to match the `k' keystroke.
  395. --  Patchlevel 12: --
  396.    29.  Implemented virtual fonts (this does not include built-in
  397.     Postscript<tm> fonts!!!).
  398.    30.    X11R5 support, and numerous bug fixes.
  399. --  Patchlevel 13: --
  400.    31.  Added support for TeXXeT.
  401. --  Patchlevel 14: --
  402.    32.  Added support for greyscale anti-aliasing.
  403. --  Patchlevel 15: --
  404.    33.  Added support for MakeTeXPK, as in dvips.
  405. --  Patchlevel 16: --
  406.    34.    In the code for greyscale anti-aliasing, try to allocate a colormap
  407.     so that GXor operations can be used for drawing.  Also interpolate
  408.     between foreground and background colors.
  409. --  Patchlevel 17: --
  410.    35.    Fixed some bugs in the greyscale code.
  411.    36.    Implemented an environment variable for the MakeTeXPK script.
  412.    37.    Replaced mksedscript with a script using /bin/sh.
  413. --  Patchlevel 18: --
  414.    38.    Implemented checking of checksums and the -hushchecksums option.
  415.    39.  Implemented non-square magnifying glasses.
  416.    40.    Removed support for X10.
  417.    41.    Removed support for the pxl font format.
  418.    42.    Added support for PostScript specials via DPS or NeWS or gs.
  419.  
  420. Paul Vojta, vojta@math.berkeley.edu
  421.