XDVI(1)                                                   XDVI(1)

NAME
xdvi - DVI Previewer for the X Window System
SYNOPSIS
xdvi  [+[page]]  [-s shrink] [-S density] [-p pixels] [-l]
[-paper   papertype]   [-mgs[n]   size]    [-hushspecials]
[-hushchars]  [-hush]  [-altfont  font]  [-margins  dimen]
[-sidemargin dimen] [-topmargin  dimen]  [-offsets  dimen]
[-xoffset  dimen]  [-yoffset  dimen]  [-keep]  [-rv]  [-fg
color] [-bg color] [-hl color]  [-bd  color]  [-cr  color]
[-bw  width] [-geometry geometry] [-icongeometry geometry]
[-iconic] [-display display] [-copy] [-thorough] [-expert]
[-version] dvi_file
DESCRIPTION
Xdvi is a program which runs under the X window system. It
is used to preview DVI files, such as are produced by TeX.
This  program  has  the  capability  of  showing  the file
shrunken by various (integer)  factors,  and  also  has  a
``magnifying  glass'' which allows one to see a small part
of the unshrunk image momentarily.
Before displaying any page or part thereof, it  checks  to
see if the dvi file has changed since the last time it was
displayed.  If this is the case, then xdvi will reinitial-
ize  itself for the new dvi file.  For this reason, expos-
ing parts of the xdvi window while TeX is  running  should
be  avoided.  This feature allows you to preview many ver-
sions of the same file while running xdvi only once.
In addition to using keystrokes to move within  the  file,
xdvi  provides  buttons  on  the right side of the window,
which are synonymous with various sequences of keystrokes.
OPTIONS
In  addition  to specifying the .dvi file (with or without
the .dvi), Xdvi supports the following  command  line  op-
tions.   If the option begins with a `+' instead of a `-',
the option is restored to its default value.  By  default,
these  options  can be set via the resource names given in
parentheses in the description of each option.
+page  Specifies the first page to show.  If  +  is  given
       without  a  number,  the  last page is assumed; the
       first page is the default.
-s shrink
       (.shrinkFactor) Defines the initial shrink  factor.

The default value is 3.
-S density
(.densityPercent)  Determines the density used when
shrinking bitmaps for fonts.  A higher  value  pro-

X Version 11              27 March 1990                         1

XDVI(1)                                                   XDVI(1)

duces a lighter font.  The default value is 40.
-density density
Same as -S.
-p pixels
(.pixelsPerInch)  Defines  the size of the fonts to
use, in pixels per inch.  The default value is 300.
-altfont font
(.altFont)  Declares a default font to use when the
font in the dvi file cannot be found.  This is use-
ful, for example, with PostScript <tm> fonts.
-l     (.listFonts)  Causes the names of the fonts used to
be listed.
-hushspecials
(.hushSpecials) Causes xdvi  to  suppress  warnings
about \special strings which it cannot process.
-hushchars
(.hushLostChars)  Causes  xdvi to suppress warnings
about references to characters which  are  not  de-
fined in the font.
-hush  (.Hush)  Causes  xdvi  to suppress all suppressable
warnings.
-rv    (.reverseVideo) Causes the  page  to  be  displayed
with  white  characters  on a black background, in-
stead of vice versa.
-bw width
(.borderWidth) Specifies the width of the border of
the window.

-borderwidth width
Same as -bw.
-fg color
(.foreground)  Determines  the  color  of  the text
(foreground).
-foreground color
Same as -fg.
-bg color
(.background) Determines the  color  of  the  back-
ground.
-background color
Same as -bg.

X Version 11              27 March 1990                         2

XDVI(1)                                                   XDVI(1)

-hl color
(.highlight)  Determines the color of the page bor-
der.  The default is the foreground color.
-bd color
(.borderColor) Determines the color of  the  window
border.
-bordercolor color
Same as -bd.
-cr color
(.cursorColor)  Determines the color of the cursor.
The default is the color of the page border.
-thorough
(.thorough) Xdvi will usually try  to  ensure  that
overstrike  characters  (e.g.   \notin) are printed
correctly.  On monochrome displays, this is  always
possible  with one logical operation, either and or
or.  On color displays, however, this may take  two
operations, one to set the appropriate bits and one
to clear other bits.  If this is the case, then  by

default  xdvi  will instead use the copy operation,
which does not handle overstriking correctly.   The
``thorough''  option  chooses  the  slower but more
correct choice.  See also -copy, below.
-copy  (.copy) Always use the copy operation when  writing
characters to the display.  This option may be nec-
essary for correct operation on  a  color  display,
but overstrike characters will be incorrect.
-keep  (.keepPosition)  Sets  a flag to indicate that xdvi
should not move to the home position when moving to
a new page.  See also the `k' keystroke.
-expert
(.expert)  Prevent the buttons from appearing.  See
also the `x' keystroke.
-version
Print information on the version of xdvi.
-margins dimen
(.Margin) Specifies the size of both the top margin
and  side  margin.  This should be a decimal number
optionally followed by m", e.g., 1.5 or 3m, giv-
ing a measurement in inches or centimeters.  It de-
termines the ``home'' position of the  page  within
the  window as follows.  If the entire page fits in
the window, then the margin settings  are  ignored.
If,  even after removing the margins from the left,
right, top, and bottom, the page still  cannot  fit

X Version 11              27 March 1990                         3

XDVI(1)                                                   XDVI(1)

in  the  window, then the page is put in the window
such that the top and left margins are hidden,  and
presumably  the  upper left-hand corner of the text
on the page will be in the upper  left-hand  corner
of  the window.  Otherwise, the text is centered in
the window.  See also `M' under the KEYSTROKES sec-
tion.
-sidemargin dimen
(.sideMargin)   Specifies   the  side  margin  (see

above).
-topmargin dimen
(.topMargin) Specifies the top and  bottom  margins
(see above).
-offsets dimen
(.Offset) Specifies the size of both the horizontal
and vertical offsets of the  output  on  the  page.
This should be a decimal number optionally followed
by m", e.g., 1.5 or 3m, giving a measurement  in
inches  or  centimeters.  By decree of the Stanford
TeX Project, the default TeX page origin is  always
1 inch over and down from the top-left page corner,
even  when  non-American  paper  sizes  are   used.
Therefore, the default offsets are 1.0 inch.
-xoffset dimen
(.xOffset)  Specifies  the  size  of the horizontal
offset of the output on the page (see above).
-yoffset dimen
(.yOffset) Specifies the size of the vertical  off-
set of the output on the page (see above).
-paper papertype
(.paper)  Specifies  the  size of the printed page.
This may be of the form wxh (or wxhcm), where w  is
the  width in inches (or cm) and h is the height in
inches (or cm), respectively.  There are also  syn-
onyms   which   may  be  used:   us  (8.5x11),  usr
(11x8.5), legal (8.5x14),  foolscap  (13.5x17),  as
well  as the ISO sizes a1-a7, b1-b7, c1-c7, a1r-a7r
(a1-a7 rotated), etc.  The default size is 8.5 x 11
inches.
-nogrey
(.grey)  Turns  off  the  use  of  greyscale  anti-
aliasing when printing shrunken bitmaps.  (In  this
case,  the  logic  of the corresponding resource is
the reverse: -nogrey corresponds to grey:off;  +no-
grey to grey:on.)  See also the `G' keystroke.

X Version 11              27 March 1990                         4

XDVI(1)                                                   XDVI(1)

-mgs[n] size
(.magnifierSize[n])  Specifies the size of the win-
dow to be used for  the  ``magnifying  glass''  for
Button n.  See the MOUSE ACTIONS section.  Defaults
are 200, 350, 600, 900, and 1200.
-mgs size
Same as -mgs1.
-geometry geometry
(*geometry) Specifies the initial geometry  of  the
window.
-icongeometry geometry
(.iconGeometry)  Specifies the initial position for
the icon.
-iconic
(.iconic) Causes the XDVI window to  start  in  the
iconic  state.   The  default  is to start with the
window open.
-display host:display
Specifies the host and screen to be used  for  dis-
playing  the  dvi  file.  This is normally obtained
from the environment variable ``DISPLAY.''
KEYSTROKES
Xdvi recognizes the following keystrokes when typed in its
window.  Each may optionally be preceded by a (positive or
negative) number, whose interpretation will depend on  the
particular  keystroke.  Also, the ome", "Prior", "Next",
and arrow cursor keys are synonyms for `^', `b', `f', `l',
`r', `u', and `d' keys, respectively.
q      Quits the program.  Control-C and control-D will do
this, too.
n      Moves to the next page (or to the nth next page  if
a  number  is given).  Synonyms are `f', Space, Re-
turn, and Line Feed.
p      Moves to the previous page (or back n pages).  Syn-
onyms are `b', control-, and Delete.
g      Moves  to the page with the given number.  Initial-
ly, the first page is assumed to be page number  1,
but this can be changed with the `P' keystroke, be-
low.  If no page number is given, then it  goes  to
the last page.
P      ``This  is  page  number  n.''  This can be used to
make the `g' keystroke refer to actual page numbers

instead of absolute page numbers.

X Version 11              27 March 1990                         5

XDVI(1)                                                   XDVI(1)

Control-L
Redisplays the current page.
^Move to the ``home'' position of the page.  This is
normally the upper left-hand corner  of  the  page,
depending  on the margins as described in the -mar-
gins option, above.
u      Moves up two thirds of a window-full.
d      Moves down two thirds of a window-full.
l      Moves left two thirds of a window-full.
r      Moves right two thirds of a window-full.
c      Moves the page so that the point currently  beneath
the  cursor  is  moved to the middle of the window.
It also (gasp!) warps the cursor to the same place.
M      Sets  the margins so that the point currently under
the cursor is the upper  left-hand  corner  of  the
text  in  the  page.  Note that this command itself
does not move the image at all.  For details on how
the margins are used, see the -margins option.
s      Changes  the shrink factor to the given number.  If
no number is given, the smallest factor that  makes
the  entire  page  fit  in the window will be used.
(Margins are ignored in this computation.)
S      Sets the density factor to be used  when  shrinking
bitmaps.   This  should  be  a number between 0 and
100; higher numbers produce lighter characters.
R      Forces the dvi file to be reread.  This allows  you
to  preview  many  versions  of the same file while
running xdvi only once.
k      Normally when xdvi switches pages, it moves to  the

       home position as well.  The `k' keystroke toggles a
       `keep-position' flag which, when set, will keep the
       same position when moving between pages.  Also `0k'
       and `1k' clear and  set  this  flag,  respectively.
       See also the -keep option.
x      Toggles  expert  mode  (in which the buttons do not
       appear).  Also `0x' and `1x' clear and  reset  this
       mode, respectively.  See also the -expert option.
G      This key toggles the use of greyscale anti-aliasing
       for displaying shrunken bitmaps.  In addition,  the
       key  sequences  `0G'  and  `1G'  clear and set this
       flag, respectively.  See also the -nogrey option.

X Version 11              27 March 1990                         6

XDVI(1)                                                   XDVI(1)

MOUSE ACTIONS
If the shrink factor is set to any number other than  one,
then  clicking any mouse button will pop up a ``magnifying
glass'' which shows the unshrunk image in the vicinity  of
the mouse click.  This subwindow disappears when the mouse
button is released.  Different mouse buttons produce  dif-
ferent  sized  windows,  as  indicated by the -mgs option.
Moving the cursor while holding the button down will  move
the magnifying glass.
Also,  the  scrollbars (if present) behave in the standard
way:  pushing Button 2 in a scrollbar  moves  the  top  or
left  edge  of  the scrollbar to that point and optionally
drags it; pushing Button 1 moves the image up or right  by
an  amount  equal to the distance from the button press to
the upper left-hand corner of the window; pushing Button 3
moves the image down or left by the same amount.
ENVIRONMENT
Uses the environment variable ``DISPLAY'' to specify which
bit map display terminal to use.
The  environment  variable  ``XDVIFONTS''  determines  the
path(s)  searched  for fonts in the following manner.  The
string consists  of  one  or  more  strings  separated  by
colons.   In  each  such  string,  the substring ``%f'' is
changed to the font name; ``%d'' is changed to the  magni-

fication;  and  ``%p''  is  changed  to  the  font  family
(``gf'', ``pk'', or ``pxl'').  If no ``%f'' appears in the
string,  then the string ``/%f.%d%p'' is added on the end.
For example, if the string is ``/usr/TeX/lib/tex/fonts'' and
the  font  is  cmr10  at  300dpi,  then  it  searches  for
/usr/TeX/lib/tex/fonts/cmr10.300gf,
/usr/TeX/lib/tex/fonts/cmr10.300pk,                      and
/usr/TeX/lib/tex/fonts/cmr10.1500pxl, in that order.  An ex-
tra  colon  anywhere  in the ``XDVIFONTS'' variable causes
the system default paths to be tried at  that  point.   If
the  font is not found in the desired size, then xdvi will
invoke Metafont to create the font in  the  correct  size.
Failing  that,  it  will try to find the nearest size.  If
the font cannot be found at all, then  xdvi  will  try  to
vary  the point size of the font (within a certain range),
and if this fails, then it will use the font specified  as
the alternate font (cf. -altfont).
For  compatibility with TeX, you may also use ``TEXFONTS''
in place of ``XDVIFONTS'', although in that case the vari-
able  should not include any ``%'' specifiers.  The reason
for recognizing TEXFONTS is that certain versions  of  TeX
also  support  the  convention regarding an extra colon in
the font path; therefore, users who create their own fonts
can  put  both their .tfm and raster files in the same di-
rectory and do ``setenv TEXFONTS :MFdir'' or ``setenv TEX-
FONTS MFdir:'' in order to get both TeX and xdvi to search

X Version 11              27 March 1990                         7

XDVI(1)                                                   XDVI(1)

their directory in addition to the system standard  direc-
tories.   The  XDVIFONTS  variable  overrides the TEXFONTS
variable, so that on those sites where  TEXFONTS  must  be
set  explicitly, and therefore this feature is not useful,
the XDVIFONTS  may  be  set  to  an  empty  string  (i.e.,
``setenv XDVIFONTS'') to cause xdvi to ignore TEXFONTS.
xdvi  also  recognizes  the  PKFONTS  variable,  which  is
checked after XDVIFONTS but before TEXFONTS.
You can also enable recursive searching in the  font  path
by  using  the ``*'' and ``**'' specifiers.  At this point
in the path, xdvi will recursively  search  subdirectories
of  the  given  directory  in order to find font files.  A

single asterisk limits the search to one level;  a  double
asterisk  will  search through an arbitrary number of lev-
els.  Also, the variable TEXFONTS_SUBDIR can  be  used  to
give  a colon-separated list of directories to recursively
search.  This is equivalent to  including  the  specifiers
with  a  ``*'' after each; the usual conventions regarding
extra colons applies here, too, relative to a default sub-
directory  path.  Asterisks may not be preceded by a ``%''
specifier in any path component.
The ``XDVISIZES'' variable must be set to  indicate  which
sizes of fonts are available.  It should consist of a list
of numbers separated by colons.  If the list begins with a
colon,  the system default sizes are used, as well.  Sizes
are expressed in dots per inch; decimals may be  used  for
``pxl''  files: for example, a 300 dots per inch file mag-
nified by half a step comes out  to  1643  dots  per  five
inches, which should be encoded as 328.6.  The current de-
fault set of sizes is 300 : 328.6 : 360 : 432  :  518.4  :
622  :  746.4.   xdvi will also try the actual size of the
font before trying any of the given sizes.
Virtual fonts are also supported, although xdvi  does  not
have  any  built-in  fonts  to  which they can refer.  The
search path for .vf files can be specified with the  ``XD-
VIVFS''  environment  variable in a similar manner to that
for the ``XDVIFONTS'' variable.  xdvi will also check  the
VFFONTS  variable  if  the  XDVIFONTS variable is not set.
Virtual fonts are searched for immediately  after  looking
for the font as a normal font in the exact size specified.
FILES
/usr/TeX/lib/tex/fonts   Font pixel files.

SEE ALSO
X(1).
AUTHORS
Eric Cooper, CMU, did a version for  direct  output  to  a

X Version 11              27 March 1990                         8

XDVI(1)                                                   XDVI(1)

QVSS.  Modified for X by Bob Scheifler, MIT Laboratory for

Computer Science.  Modified for X11 by  Mark  Eichin,  MIT
SIPB.  Additional enhancements by many others.

X Version 11              27 March 1990                         9

12