1XDVI(1) General Commands Manual XDVI(1)
2
3
4
6 xdvi - DVI Previewer for the X Window System
7
9 xdvi [+[page]] [--help] [-allowshell] [-altfont font] [-anchorposition
10 anchor] [-bg color] [-browser WWWbrowser] [-copy] [-cr color] [-debug
11 bitmask|string[,string ...]] [-display host:display] [-dvipspath path]
12 [-editor command] [-expert] [-expertmode flag] [-fg color] [-findstring
13 string] [-font font] [-fullscreen ] [-gamma g] [-geometry geometry]
14 [-gsalpha] [-gspalette palette] [-h] [-help] [-hl color] [-hush]
15 [-hushbell] [-hushchars] [-hushchecksums] [-hushstdout] [-icongeometry
16 geometry] [-iconic] [-install] [-interpreter path] [-keep] [-l]
17 [-license] [-linkcolor color] [-linkstyle 0|1|2|3] [-margins dimen]
18 [-mfmode mode-def[:dpi]] [-mgs[n] size] [-mousemode 0|1|2] [-nocolor]
19 [-nofork] [-noghostscript] [-nogrey] [-nogssafer] [-noinstall]
20 [-nomakepk] [-nomatchinverted] [-noomega] [-noscan] [-notempfile]
21 [-notype1fonts] [-offsets dimen] [-p pixels] [-paper papertype]
22 [-pause] [-pausespecial special-string] [-postscript flag] [-rulecolor
23 color] [-rv] [-S density] [-s shrink] [-safer] [-sidemargin dimen]
24 [-sourceposition line[:col][ ]filename] [-statusline] [-text-encoding
25 encoding] [-thorough] [-topmargin dimen] [-unique] [-version]
26 [-visitedlinkcolor color] [-warnspecials] [-watchfile secs] [-wheelunit
27 pixels] [-xoffset dimen] [-yoffset dimen] [dvi_file]
28
30 Xdvi is a program for previewing dvi files, as produced e.g. by the
31 tex(1) program, under the X window system.
32
33 Xdvi can show the file shrunken by various integer factors, and it has
34 a ``magnifying glass'' for viewing parts of the page enlarged (see the
35 section MAGNIFIER below). This version of xdvi is also referred to as
36 xdvik since it uses the kpathsea library to locate and generate font
37 files. In addition to that, it supports the following features:
38
39 - hyperlinks in DVI files (section HYPERLINKS),
40
41 - direct rendering of PostScript<tm> Type 1 fonts (section TYPE 1
42 FONTS),
43
44 - source specials in the DVI file (section SOURCE SPECIALS),
45
46 - string search in DVI files (section STRING SEARCH),
47
48 - saving or printing (parts of) the DVI file (sections PRINT DIALOG
49 and SAVE DIALOG).
50
51 Xdvi can be compiled with the Motif toolkit or the Xaw (Athena) toolkit
52 (and variants of it), and the Motif version has a slightly different
53 GUI; these differences are noted below.
54
55 Before displaying a page of a DVI file, xdvi will check to see if the
56 file has changed since the last time it was displayed. If this is the
57 case, it will reload the file. This feature allows you to preview many
58 versions of the same file while running xdvi only once. Since it cannot
59 read partial DVI files, xdvik versions starting from 22.74.3 will cre‐
60 ate a temporary copy of the DVI file being viewed, to ensure that the
61 file can be viewed without interruptions. (The -notempfile can be used
62 to turn off this feature).
63
64 Xdvi can show PostScript<tm> specials by any of three methods. It will
65 try first to use Display PostScript<tm>, then NeWS, then it will try to
66 use Ghostscript to render the images. All of these options depend on
67 additional software to work properly; moreover, some of them may not be
68 compiled into this copy of xdvi.
69
70 For performance reasons, xdvi does not render PostScript specials in
71 the magnifying glass.
72
73 If no file name has been specified on the command line, xdvi will try
74 to open the most recently opened file; if the file history (accessible
75 via the File > Open Recent menu) is empty, or if none of the files in
76 the history are valid DVI files, it will pop up a file selector for
77 choosing a file name. (In previous versions, which didn't have a file
78 history, the file selector was always used; you can set the X resource
79 noFileArgUseHistory to false to get back the old behaviour.)
80
82 In addition to specifying the dvi file (with or without the .dvi exten‐
83 sion), xdvi supports the following command line options. If the option
84 begins with a `+' instead of a `-', the option is restored to its de‐
85 fault value. By default, these options can be set via the resource
86 names given in parentheses in the description of each option.
87
88 +page Specifies the first page to show. If + is given without a num‐
89 ber, the last page is assumed; the first page is the default.
90
91 -allowshell
92 (.allowShell) This option enables the shell escape in PostScript
93 specials. (For security reasons, shell escapes are disabled by
94 default.) This option should be rarely used; in particular it
95 should not be used just to uncompress files: that function is
96 done automatically if the file name ends in .Z, .gz, or .bz2.
97 Shell escapes are always turned off if the -safer option is
98 used.
99
100 -altfont font
101 (.altFont) Declares a default font to use when the font in the
102 dvi file cannot be found. This is useful, for example, with
103 PostScript <tm> fonts.
104
105 -anchorposition anchor
106 Jump to anchor after opening the DVI file. This is only useful
107 when invoking xdvi from other applications.
108
109 -background color
110 (.background) Determines the color of the background. Same as
111 -bg.
112
113 -bg color
114 (.background) Determines the color of the background.
115
116 -browser browser
117 (.wwwBrowser) Defines the web browser used for handling external
118 URLs. The value of this option or resource has the same syntax
119 as the BROWSER environment variable; see the explanation of that
120 variable in the section `ENVIRONMENT' below for a detailed de‐
121 scription. If neither the option nor the X resource wwwBrowser
122 is specified, the environment variables BROWSER and WWWBROWSER
123 (in that order) are used to determine the browser command. If
124 these are not set either, the following default value is used:
125 xdg-open %s:htmlview %s:firefox -remote -remote "openURL(%s,new-
126 window)":mozilla -remote "openURL(%s,new-window)":netscape
127 -raise -remote "openURL(%s,new-window)":xterm -e w3m %s:xterm -e
128 lynx %s:xterm -e wget %s
129
130 -copy (.copy) Always use the copy operation when writing characters to
131 the display. This option may be necessary for correct operation
132 on a color display, but overstrike characters will be incorrect.
133 If greyscale anti-aliasing is in use, the -copy operation will
134 disable the use of colorplanes and make overstrikes come out in‐
135 correctly. See also -thorough.
136
137 -cr color
138 (.cursorColor) Determines the color of the mouse cursor. The
139 default is the same as the foreground color.
140
141 -debug bitmask|string[,string ...]
142 (.debugLevel) If nonzero, prints additional information on stan‐
143 dard output. The argument can be either a bitmask specified as
144 a decimal number, or comma-separated list of strings.
145 For the bitmask representation, multiple values can be specified
146 by adding the numbers that represent the individual bits; e.g.
147 to debug all file searching and opening commands, use 4032 (=
148 2048 + 1024 + 512 + 256 + 128 + 64). Use -1 to turn on debugging
149 of everything (this will produce huge output).
150 For the string representation, use the strings listed in the
151 following table, with a comma to separate the values; e.g. to
152 debug all file searching and opening commands, use search,ex‐
153 pand,paths,hash,stat,open. (The option `kpathsea' is provided
154 as a shorthand for these.) Note that such a list may need to be
155 quoted to prevent the shell from interpreting commas or spaces
156 in the list.
157 The individual numbers and strings have the following meanings:
158
159 1 bitmap Bitmap creation
160 2 dvi DVI translation
161 4 pk PK fonts
162 8 batch Batch mode: Exit after
163 reading the DVI file
164 16 event Event handling
165 32 ps PostScript interpreter calls
166 64 stat Kpathsea stat(2) calls
167 128 hash Kpathsea hash table lookups
168 256 open Kpathsea file opening
169 512 paths Kpathsea path definitions
170 1024 expand Kpathsea path expansion
171 2048 search Kpathsea searching
172 4032 kpathsea All Kpathsea options
173 4096 htex Hypertex specials
174 8192 src Source specials
175 16384 client Client/server mode (see -unique
176 and -sourceposition options)
177 32768 ft FreeType library messages (Type 1 fonts)
178 65536 ft_verbose Verbose FreeType library messages (currently unused)
179 131072 gui GUI elements
180 262144 find Searching for strings in the DVI file
181 524288 files File history and opening DVI files
182
183 Some of the Kpathsea debugging options are actually provided by
184 Kpathsea; see the Debugging section in the Kpathsea manual for
185 more information on these.
186
187 -density density
188 (.densityPercent) Determines the density used when shrinking
189 bitmaps for fonts. A higher value produces a lighter font. The
190 default value is 40. If greyscaling is in use, this argument
191 does not apply; use -gamma instead. See also the `S' keystroke.
192 Same as -S.
193
194 -display host:display
195 Specifies the host and screen to be used for displaying the dvi
196 file. By default this is obtained from the environment variable
197 DISPLAY.
198
199 -dvipspath path
200 (.dvipsPath) Use path as the dvips program to use when printing.
201 The default for this is dvips. The program or script should
202 read the DVI file from standard input, and write the PostScript
203 file to standard output.
204
205 -editor editor
206 (.editor) Specifies the editor that will be invoked when the
207 source-special() action is triggered to start a reverse search
208 (by default via Ctrl-Mouse 1). The argument to this option is a
209 format string in which occurrences of ``%f'' are replaced by the
210 file name, occurrences of ``%l'' are replaced by the line number
211 within the file, and optional occurrences of ``%c'' are replaced
212 by the column number within the line.
213
214 If neither the option nor the X resource .editor is specified,
215 the following environment variables are checked to determine the
216 editor command: XEDITOR, VISUAL, and EDITOR (in this sequence).
217 If the string is found as the value of the VISUAL or EDITOR en‐
218 vironment variables, then ``xterm -e '' is prepended to the
219 string; if the editor is specified by other means, then it must
220 be in the form of a shell command to pop up an X window with an
221 editor in it. If none of these variables is set, a warning mes‐
222 sage is displayed and the command ``xterm -e vi +%l %f'' is
223 used.
224
225 If no ``%f'' or ``%l'' occurs in the string, the missing format
226 strings are appended automatically. (This is for compatibility
227 with other programs when using one of the environment vari‐
228 ables).
229
230 A new instance of the editor is started each time this command
231 is used; therefore it is preferable to use an editor that can be
232 invoked in `client' mode to load new files into the same in‐
233 stance. Example settings are:
234
235 emacsclient --no-wait
236 (older Emacsen)
237
238 gnuclient -q
239 (XEmacs and newer Emacsen)
240
241 gvim --servername xdvi --remote
242 (VIM v6.0+; the `--servername xdvi' option will cause
243 gvim to run a dedicated instance for the files opened by
244 xdvi.)
245
246 nc (nedit)
247
248 Note that those strings need to be enclosed into quotes when us‐
249 ing them on the command-line to protect them from the shell;
250 when using them as argument for the .editor resource in an X re‐
251 source file, no quotes should be used.
252
253 NOTE ON SECURITY: The argument of this option isn't executed as
254 a shell command, but via exec() to prevent evil tricks with the
255 contents of source specials.
256
257 -expert
258 This option is only supported for backwards compatibility; it is
259 equivalent to -expertmode 0, which should be preferred.
260
261 -expertmode flag
262 (.expertMode) With an argument of 0, this option switches off
263 the display of the buttons, scrollbars, the toolbar (Motif on‐
264 ly), the statusline and the page list. These GUI elements can
265 also be (de)activated separately, by combining the appropriate
266 values in the flag argument. This acts similar to the -debug op‐
267 tion: The integer flag is treated as a bitmap where each bit
268 represents one element. If the bit has the value 1, the element
269 is switched on, if it has the value 0, the element is switched
270 off. The meaning of the bits is as follows:
271
272 1 statusline
273 2 scrollbars
274 4 Motif: pagelist, Xaw: buttons and pagelist
275 8 toolbar (Motif only)
276 16 menubar (Motif only)
277
278 For example, to turn on only the statusline and the scrollbars,
279 use 3 (= 1 + 2). See also the `x' keystroke, where the bits are
280 addressed by their positions, from 1 to 3 (Xaw) or 5 (Motif),
281 respectively.
282
283 If the statusline is not active, all messages that would normally be
284 printed to the statusline will be printed to stdout, unless the -hush‐
285 stdout option is used.
286
287 -fg color
288 (.foreground) Determines the color of the text (foreground).
289
290 -findstring string
291 This option triggers a search for string in the DVI file men‐
292 tioned on the command-line, similar to forward search (see the
293 description of the sourceposition option): If there is already
294 another instance of xdvi running on the displaying that DVI
295 file, it will cause that instance to perform the search instead.
296 The search starts at the top of the current page of the DVI
297 file.
298
299 -font font
300 (*font) Sets the font used in menus, buttons etc., as described
301 in the X(7x) man page. The font for child windows can be set
302 separately, e.g.:
303
304 xdvi*statusline*font: \
305 -*-helvetica-medium-r-*-*-12-*-*-*-*-*-*-*
306
307
308 -foreground color
309 Same as -fg.
310
311 -fullscreen
312 When this option is used, xdvi will (try to) run in fullscreen
313 mode, with no window decorations. This option is not guaranteed
314 to work with all windowmanagers/desktops; if you're experiencing
315 problems with it, please use the -geometry option instead, and a
316 suitable window manager setting to remove the window decora‐
317 tions. When using this option for presentations, you might want
318 to get rid of all the control widgets as well, using the -ex‐
319 pertmode option. This option can also be toggled at runtime us‐
320 ing the fullscreen action (by default bound to Ctrl-l).
321
322 -gamma gamma
323 (.gamma) Controls the interpolation of colors in the greyscale
324 anti-aliasing color palette. Default value is 1.0. For 0 <
325 gamma < 1, the fonts will be lighter (more like the background),
326 and for gamma > 1, the fonts will be darker (more like the fore‐
327 ground). Negative values behave the same way, but use a slight‐
328 ly different algorithm. For color and grayscale displays; for
329 monochrome, see -density. See also the `S' keystroke.
330
331 -geometry geometry
332 (.geometry) Specifies the initial geometry of the main window,
333 as described in the X(7x) man page. The geometry of child win‐
334 dows can be set separately, e.g.:
335 xdvi*helpwindow.geometry: 600x800
336
337 -gsalpha
338 (.gsAlpha) Causes Ghostscript to be called with the x11alpha
339 driver instead of the x11 driver. The x11alpha driver enables
340 anti-aliasing in PostScript specials, for a nicer appearance.
341 It is available on newer versions of Ghostscript. This option
342 can also be toggled with the `V' keystroke.
343
344 -gspalette palette
345 (.palette) Specifies the palette to be used when using Ghost‐
346 script for rendering PostScript specials. Possible values are
347 Color, Greyscale, and Monochrome. The default is Color.
348
349 -h, -help, --help
350 Prints a short help text with an overview of the command-line
351 options to standard output.
352
353 -hl color
354 (.highlight) Determines the color of the page border, of the
355 ruler in `ruler mode', and of the highlighting markers in for‐
356 ward search and string search. The default is the foreground
357 color.
358
359 -hush (.Hush) Causes xdvi to suppress all suppressible warnings.
360
361 -hushbell
362 (.hushBell) Don't sound the X bell when an error occurs.
363
364 -hushchars
365 (.hushLostChars) Causes xdvi to suppress warnings about refer‐
366 ences to characters which are not defined in the font.
367
368 -hushchecksums
369 (.hushChecksums) Causes xdvi to suppress warnings about checksum
370 mismatches between the dvi file and the font file.
371
372 -hushstdout
373 (.hushStdout) Suppresses printing of status messages to stdout.
374 Note that errors or warnings will still be printed to stderr
375 even if this option is used.
376
377 -icongeometry geometry
378 (.iconGeometry) Specifies the initial position for the icon.
379
380 -iconic
381 (.iconic) Causes the xdvi window to start in the iconic state.
382 The default is to start with the window open.
383
384 -install
385 (.install) If xdvi is running under a PseudoColor visual, then
386 (by default) it will check for TrueColor visuals with more bits
387 per pixel, and switch to such a visual if one exists. If no
388 such visual exists, it will use the current visual and colormap.
389 If -install is selected, however, it will still use a TrueColor
390 visual with a greater depth, if one is available; otherwise, it
391 will install its own colormap on the current visual. If the
392 current visual is not PseudoColor, then xdvi will not switch the
393 visual or colormap, regardless of its options. The default val‐
394 ue of the install resource is the special value, maybe. There
395 is no +install option. See also -noinstall, and the GREYSCALING
396 AND COLORMAPS section.
397
398 -interpreter filename
399 (.interpreter) Use filename as the Ghostscript interpreter. By
400 default it uses gs.
401
402 -keep (.keepPosition) Sets a flag to indicate that xdvi should not
403 move to the home position when moving to a new page. See also
404 the `k' keystroke. This flag is honored by all page switching
405 actions and by up-or-previous() / down-or-next(), although the
406 latter only honor the horizontal position, not the vertical one.
407 This allows for a "continuous" scrolling back an forth through a
408 document with a display window narrower than a page width.
409
410 -l (.listFonts) List the names of all fonts used.
411
412 -license
413 Prints licensing information.
414
415 -linkcolor
416 (.linkColor) Color used for unvisited hyperlinks (`Blue2' by de‐
417 fault). Hyperlinks are unvisited before you click on them, or
418 after the DVI file has been reloaded. The value should be ei‐
419 ther a valid X color name (such as DarkGoldenrod4) or a hexadec‐
420 imal color string (such as #8b6508). See also -visitedlinkcolor
421 and -linkstyle.
422
423 -linkstyle
424 (.LinkStyle) Determines the style in which hyperlinks are dis‐
425 played. Possible values and their meanings are:
426
427 0 No highlighting of links
428 1 Underline links with link color
429 2 No underlining, color text with link color
430 3 Underline and display text colored with
431 link color
432
433 The values for link color are specified by the options/resources
434 -linkcolor and -visitedlinkcolor (which see).
435
436 -margins dimen
437 (.Margin) Specifies the size of both the top margin and side
438 margin. This determines the ``home'' position of the page with‐
439 in the window as follows. If the entire page fits in the win‐
440 dow, then the margin settings are ignored. If, even after re‐
441 moving the margins from the left, right, top, and bottom, the
442 page still cannot fit in the window, then the page is put in the
443 window such that the top and left margins are hidden, and pre‐
444 sumably the upper left-hand corner of the text on the page will
445 be in the upper left-hand corner of the window. Otherwise, the
446 text is centered in the window. The dimension should be a deci‐
447 mal number optionally followed by any of the two-letter abbrevi‐
448 ations for units accepted by TeX (pt, pc, in, bp, cm, mm, dd,
449 cc, or sp). By default, the unit will be cm (centimeters). See
450 also -sidemargin, -topmargin, and the keystroke `M.'
451
452 -mfmode mode-def
453 (.mfMode) Specifies a mode-def string, which can be used in
454 searching for fonts (see ENVIRONMENT, below). Generally, when
455 changing the mode-def, it is also necessary to change the font
456 size to the appropriate value for that mode. This is done by
457 adding a colon and the value in dots per inch; for example, -mf‐
458 mode ljfour:600. This method overrides any value given by the
459 pixelsPerInch resource or the -p command-line argument. The
460 metafont mode is also passed to metafont during automatic cre‐
461 ation of fonts. By default, it is unspecified.
462
463 -mgs size
464 Same as -mgs1.
465
466 -mgs[n] size
467 (.magnifierSize[n]) Specifies the size of the window to be used
468 for the ``magnifying glass'' for Button n. The size may be giv‐
469 en as an integer (indicating that the magnifying glass is to be
470 square), or it may be given in the form widthxheight. See the
471 MOUSE ACTIONS section. Defaults are 200x150, 400x250, 700x500,
472 1000x800, and 1200x1200.
473
474 -mousemode [0|1|2]
475 (.mouseMode) Specifies the default mode of xdvi at startup: Mag‐
476 nifier (0), Text Selection Mode (1) or Ruler Mode (2). See the
477 section MODES, below, for more information.
478
479 -nocolor
480 (.color) Turns off the use of color specials. This option can
481 be toggled with the `C' keystroke. (Note: -nocolor corresponds
482 to color:off; +nocolor to color:on.)
483
484 -nofork
485 (.fork) With the -sourceposition and -unique options, the de‐
486 fault behavior is for xdvi to put itself into the background
487 (like a daemon) if there is no appropriate instance of xdvi al‐
488 ready running. This argument makes it run in the foreground in‐
489 stead. This is useful for debugging, or if your client applica‐
490 tion cannot deal well with a program self-backgrounding itself
491 in this way -- e.g. the IPC functions in emacs are known to have
492 problems with this. If no -sourceposition or -unique argument
493 is given, then this option has no effect. (Note: -nofork corre‐
494 sponds to fork:off; +nofork to fork:on.)
495
496 -noghostscript
497 (.ghostscript) Inhibits the use of Ghostscript for displaying
498 PostScript<tm> specials. (Note: -noghostscript corresponds to
499 ghostscript:off; +noghostscript to ghostscript:on.)
500
501 -nogrey
502 (.grey) Turns off the use of greyscale anti-aliasing when print‐
503 ing shrunken bitmaps. (Note: -nogrey corresponds to grey:off;
504 +nogrey to grey:on.) See also the `G' keystroke.
505
506 -nogssafer
507 (.gsSafer) Normally, if Ghostscript is used to render PostScript
508 specials, the Ghostscript interpreter is run with the option
509 -dSAFER. The -nogssafer option runs Ghostscript without
510 -dSAFER. The -dSAFER option in Ghostscript disables PostScript
511 operators such as deletefile, to prevent possibly malicious
512 PostScript programs from having any effect. If the -safer op‐
513 tion is specified, then this option has no effect; in that case
514 Ghostscript is always run with -dSAFER. (Note: -nogssafer cor‐
515 responds to gsSafer:off; +nogssafer to gsSafer:on.)
516
517 -noinstall
518 (.install) Inhibit the default behavior of switching to a True‐
519 Color visual if one is available with more bits per pixel than
520 the current visual. (Note: -noinstall corresponds install:off;
521 there is no +noinstall option.) See also -install, and the
522 GREYSCALING AND COLORMAPS section.
523
524 -nomakepk
525 (.makePk) Turns off automatic generation of font files that can‐
526 not be found by other means. (Note: -nomakepk corresponds to
527 makePk:off; +nomakepk to makePK:on.)
528
529 -nomatchinverted
530 (.matchInverted) Don't highlight string search matches in in‐
531 verted color; instead, draw a rectangle in highlight color (see
532 the -hl option) around the match. This option is activated auto‐
533 matically if the display isn't running in TrueColor. (Note:
534 -nomatchinverted corresponds to matchInverted:off; +nomatchin‐
535 verted to matchInverted:on.)
536
537 -noomega
538 (.omega) This will disable the use of Omega extensions when in‐
539 terpreting DVI files. By default, the additional opcodes 129
540 and 134 are recognized by xdvi as Omega extensions and inter‐
541 preted as requests to set 2-byte characters. The only drawback
542 is that the virtual font array will require 65536 positions in‐
543 stead of the default 256 positions, i.e. the memory requirements
544 of xdvi will be slightly larger. If you find this unacceptable
545 or encounter another problem with the Omega extensions, you can
546 switch this extension off by using -noomega (but please do send
547 a bug report if you find such problems - see the bug address in
548 the AUTHORS section below).
549 (Note: -noomega corresponds to omega: off; +noomega to omega:
550 on.)
551
552 -noscan
553 (.prescan) By default, xdvi does a preliminary scan of the dvi
554 file to process any papersize specials; this is especially im‐
555 portant at startup since the paper size may be needed to deter‐
556 mine the window size. If PostScript<tm> is in use, then pres‐
557 canning is also necessary in order to properly process header
558 files. In addition, prescanning is needed to correctly deter‐
559 mine the background color of a page. This option turns off such
560 prescanning. (Prescanning will be automatically be turned back
561 on if xdvi detects any of the specials mentioned above.) (Note:
562 -noscan corresponds to prescan:off; +noscan to prescan:on.)
563
564 -notempfile
565 (.tempFile) As mentioned in the section DESCRIPTION above, xdvi
566 will create a temporary copy of the DVI file so that it can be
567 accessed without interruptions even while the file is being
568 rewritten by TeX. Since this introduces the overhead of copying
569 the file every time it has changed, the -notempfile allows you
570 to turn off this behaviour. In this case, exposing parts of the
571 window while the DVI file is being written by TeX will erase the
572 current window contents until the DVI file can be completely
573 reread.
574 (Note: -notempfile corresponds to tempFile:off; +notempfile to
575 tempFile:on.)
576
577 -notype1fonts
578 (.type1) This will disable the use of the FreeType library to
579 display PostScript<tm> Type 1 fonts. Use this option as a work‐
580 around when you encounter problems with the display of Type 1
581 fonts (but please don't forget to send a bug report in this
582 case, to the URL mentioned in the section AUTHORS below).
583 (Note: -notype1fonts corresponds to type1:off; +notype1fonts to
584 type1:on.)
585
586 -offsets dimen
587 (.Offset) Specifies the size of both the horizontal and vertical
588 offsets of the output on the page. By decree of the Stanford
589 TeX Project, the default TeX page origin is always 1 inch over
590 and down from the top-left page corner, even when non-American
591 paper sizes are used. Therefore, the default offsets are 1.0
592 inch. The argument dimen should be a decimal number optionally
593 followed by any of the two-letter abbreviations for units ac‐
594 cepted by TeX (pt, pc, in, bp, cm, mm, dd, cc, or sp). By de‐
595 fault, the unit will be cm (centimeters). See also -xoffset and
596 -yoffset.
597
598 -p pixels
599 (.pixelsPerInch) Defines the size of the fonts to use, in pixels
600 per inch. The default value is 600. This option is provided
601 only for backwards compatibility; the preferred way is to set
602 both the resolution and the Metafont mode via the -mfmode option
603 (which see).
604
605 -paper papertype
606 (.paper) Specifies the size of the printed page. Note that in
607 most cases it's best to specify the paper size in the TeX input
608 file via the line
609
610 \usepackage[dvips]{geometry}
611
612 which will be recognized by both dvips and xdvi; in that case
613 the use of a `-paper' option should be unnecessary.
614 The paper size may be specified in the form widthxheight option‐
615 ally followed by a unit, where width and height are decimal num‐
616 bers giving the width and height of the paper, respectively, and
617 the unit is any of the two-letter abbreviations for units ac‐
618 cepted by TeX (pt, pc, in, bp, cm, mm, dd, cc, or sp). By de‐
619 fault, the unit is cm (centimeters).
620 There are also synonyms which may be used: us (8.5x11in), legal
621 (8.5x14in), foolscap (13.5x17in), as well as the ISO sizes
622 a1-a7, b1-b7, c1-c7. Each of these also has a landscape or `ro‐
623 tated' variant: usr (11x8.5in), a1r-a7r, etc. For compatibility
624 with dvips, the formats letter (8.5x11in), ledger (17x11in) and
625 tabloid [22m(11x17in) are also supported (these don't have rotated
626 variants).
627 Any of the above sizes may be preceded by a plus sign (`+');
628 this causes the paper size given here to override any paper size
629 given in the dvi file. The default paper size is 21 x 29.7 cm
630 (A4 size).
631
632 -pause (.pause) This option provides a simple implementation of incre‐
633 mental (stepwise) display, which can be used for presentations.
634 When this option is used, xdvi will pause the display of the
635 current page whenever it encounters a special special-string
636 (xdvi:pause by default; the string can be customized via -paus‐
637 especial, see below), and the cursor will change its shape. The
638 action unpause-or-next() (by default bound to the Space key)
639 will display the next portion of the page up to the following
640 special-string, or until the end of the page is reached. When
641 the option is not used, specials containing special-string will
642 be ignored.
643
644 -pausespecial special-string
645 (.pauseSpecial) Sets the special string that causes xdvi to
646 pause when the -pause option is active. The default value of
647 special-string is xdvi:pause.
648
649 -postscript flag
650 (.postscript) If flag = 0, rendering of PostScript<tm> specials
651 is disabled; instead, bounding boxes will be displayed (if
652 available). A value of 1 (the default) switches PostScript<tm>
653 specials on. With a value of 2, the PostScript<tm> specials are
654 displayed along with their bounding boxes; this allows you to
655 visually check the correctness of the bounding boxes. The values
656 can also be toggled at runtime with the `v' keystroke and the
657 corresponding numerical prefix arguments 0, 1 and 2.
658
659 -ps2pdfpath path
660 (.ps2pdfPath) Use path as a conversion program from PostScript
661 to PDF. The program or script should accept two command-line ar‐
662 guments: The PostScript file as first argument, and the PDF out‐
663 put file as second argument.
664
665 -rulecolor color
666 (.ruleColor) Determines the color of the rules used for the mag‐
667 nifier (default: foreground color).
668
669 -q (.noInitFile) Ignore the $HOME/.xdvirc startup file (i.e. don't
670 read it at startup, and don't write it at exit). This forces the
671 defaults defined in $HOME/.Xdefaults to be used. See FILES for
672 more information on $HOME/.xdvirc.
673
674 -rv (.reverseVideo) Causes the page to be displayed with white char‐
675 acters on a black background, instead of vice versa.
676
677 -S density
678 (.densityPercent) Same as -density (which see).
679
680 -s shrink
681 (.shrinkFactor) Defines the initial shrink factor. The default
682 value is 8. If shrink is given as 0, then the initial shrink
683 factor is computed so that the page fits within the window (as
684 if the `s' keystroke were given without a number).
685
686 -safer (.safer) This option turns on all available security options; it
687 is designed for use when xdvi is called by a browser that ob‐
688 tains a dvi or TeX file from another site. This option selects
689 +nogssafer and +allowshell.
690
691 -sidemargin dimen
692 (.sideMargin) Specifies the side margin (see -margins).
693
694 -sourceposition line[:col][ ]filename
695 This option makes xdvi search in the dvi file for the place cor‐
696 responding to the indicated line (and, optionally, column) in
697 the .tex source file, and highlight the place found by drawing a
698 rectangle in the highlight color (see the -hl option) around the
699 corresponding text. In addition, when run with this argument
700 (and the -nofork option is not given, which see), xdvi will al‐
701 ways return immediately: if it finds another instance of xdvi
702 already showing dvi_file, then it will cause that instance to
703 raise its window and move to the given place in the dvi file;
704 otherwise it will start up its own instance in the background.
705 If several instances of xdvi are displaying the respective dvi
706 file, the instance which was last raised to the foreground will
707 be used.
708
709 The space before filename is only needed if the filename starts
710 with a digit. When the space is used, the argument needs to be
711 enclosed in quotes to prevent the shell from misinterpreting the
712 space as argument separator.
713
714 This option requires that dvi_file be prepared with source spe‐
715 cial information. See the section on SOURCE SPECIALS for de‐
716 tails on how to do this.
717
718 Here is a more detailed description of how the filename in the
719 -sourceposition argument is matched with the filename in the
720 source specials:
721
722 1. If neither of the filenames contains a path name component,
723 the filenames are compared ignoring the `.tex' extensions in
724 both filenames.
725
726 2. Otherwise, if one of the filenames does contain a path compo‐
727 nent (e.g.: ./test.tex, ../test.tex, /my/homedir/tex/test.tex
728 or any combination of these), both filenames are expanded to
729 a full path, with any occurrences of ../ and ./ expanded, and
730 multiple slashes removed.
731 The pathname in the -sourceposition is expanded relative to
732 the current working directory of the xdvi -sourceposition in‐
733 vocation, and the pathnames in the source specials are ex‐
734 panded relative to the path of the current DVI file being
735 viewed.
736 The path names are then compared ignoring the `.tex' exten‐
737 sions in both path names.
738
739 -statusline
740 (.statusline) This option is obsolete; use -expertmode flag in‐
741 stead (which see).
742
743 -text-encoding encoding
744 (.textEncoding) Use encoding as the text encoding of the string
745 in the "Find" window. Usually, this should not be needed since
746 the encoding is determined from the locale settings.
747
748 -thorough
749 (.thorough) Xdvi will usually try to ensure that overstrike
750 characters (e.g. \notin) are printed correctly. On monochrome
751 displays, this is always possible with one logical operation,
752 either and or or. On color displays, however, this may take two
753 operations, one to set the appropriate bits and one to clear
754 other bits. If this is the case, then by default xdvi will in‐
755 stead use the copy operation, which does not handle overstriking
756 correctly. The -thorough option chooses the slower but more
757 correct choice. See also -copy.
758
759 -topmargin dimen
760 (.topMargin) Specifies the top and bottom margins (see -mar‐
761 gins).
762
763 -unique
764 (.unique) This option will make another instance of xdvi running
765 on the same display act as a `server'. For example, the invoca‐
766 tion
767
768 xdvi -unique +5 file.dvi
769
770 will cause this other instance to load file.dvi on page 5 in
771 place of the file that it is currently displaying. If there is
772 already another instance of xdvi already displaying the file
773 file.dvi, then it will just jump to page 5. If the other in‐
774 stance of xdvi is displaying a different file, it will load
775 file.dvi instead. Otherwise, if no other instance of xdvi is
776 currently running on the display, this option instead starts a
777 new instance of xdvi in the background (unless the -nofork op‐
778 tion is specified, which see) displaying page 5 of file.dvi.
779 The filename and the +n option for the page number are the only
780 options available for controlling a remote instance of xdvi like
781 this; all other options are currently ignored.
782
783 -useTeXpages
784 Use logical TeX pages (the values of the \count0 register) in‐
785 stead of physical pages for the pagelist labels and when jumping
786 to a page in a document with the `g' keystroke (or the goto-
787 page() action). This option can be toggled via the `T' key‐
788 stroke.
789
790 -version
791 Print information on the version of xdvi.
792
793 -visitedlinkcolor
794 (.visitedLinkColor) Color used for visited hyperlinks (`Purple4'
795 by default). Hyperlinks become visited once you click on them.
796 As for linkColor, the value should be either a valid X color
797 name or a hexadecimal color string.
798
799 -warnspecials
800 (.warnSpecials) Causes xdvi to print warnings about \special
801 strings that it cannot process to stderr. These warnings are
802 suppressed by default.
803
804 -watchfile n
805 (.watchFile) If this option is set to a value larger than 0, xd‐
806 vi will check the DVI file for changes every n seconds. If the
807 DVI file has been completely written by TeX, it will be reloaded
808 automatically. Fractional values (e.g. `2.5') are possible. The
809 default for this option is 0, i.e. no watching.
810 Since xdvi cannot handle partial DVI files, it tries not to
811 reload the file while it is being rewritten. However, use of
812 the magnifier or switching of pages requires reading (a part of)
813 the DVI file, and if the tempfile option is switched off, this
814 will erase the current contents of the window until the DVI file
815 can be read entirely.
816
817 -wheelunit pixels
818 (.wheelUnit) Sets the number of pixels that a motion of a wheel
819 mouse will move the image up, down, left, or right. (See the
820 wheel and hwheel actions, below, for more information on this.)
821 If set to zero, the wheel mouse functionality is (essentially)
822 disabled. The default value is 80.
823
824 -xoffset dimen
825 (.xOffset) Specifies the size of the horizontal offset of the
826 output on the page. See -offsets.
827
828 -yoffset dimen
829 (.yOffset) Specifies the size of the vertical offset of the out‐
830 put on the page. See -offsets.
831
833 Xdvi recognizes the following keystrokes when typed in its window.
834 Each may optionally be preceded by a (positive or negative) number, a
835 `prefix argument', whose interpretation will depend on the particular
836 keystroke. This prefix argument can be discarded by pressing the ``Es‐
837 cape'' key. If present, the ``Help'', ``Prior'' and ``Next'' keys are
838 synonyms for `?', `b', and `f' keys, respectively.
839
840 The key bindings listed here are those that xdvi assigns by default.
841 The names appearing in brackets at the beginning of the descriptions
842 are the names of the actions associated with the keys; these can be
843 used to customize the key bindings, as explained in more detail in the
844 section CUSTOMIZATION below. If only a lowercase binding is listed,
845 both upper- and lowercase keys will work for that binding.
846
847 ESC key
848 [discard-number()] The escape key discards the numerical prefix
849 for all actions (useful when you mistyped a number).
850
851 Return key
852 [forward-page()] Moves to the next page (or to the nth next page
853 if a number is given). Synonyms are `n', `f' and Line Feed.
854
855 Backspace key
856 [back-page()] Moves to the previous page (or back n pages).
857 Synonyms are `p', `b' and Ctrl-h.
858
859 Delete key
860 [up-or-previous()] Moves up two-thirds of a window-full, or to
861 the top of the previous page if already at the top of the page.
862 With a float argument, moves up the corresponding fraction of a
863 window-full.
864
865 Space key
866 [unpause-or-next()] Moves down two-thirds of a window-full, or
867 to the next page if already at the bottom of the page.
868 When the option -pause special-string is used and the display is
869 currently paused, this key will instead display the next portion
870 of the page until the next special-string or the end of the page
871 is encountered. See the description of the -pause option for
872 details. The action [down-or-next()] does a similar thing, but
873 without pausing; it is not bound to a key by default.
874
875 Ctrl-Home (Xaw), Ctrl-osfBeginLine (Motif)
876 [goto-page(1)] Moves to the first page of the document.
877
878 Ctrl-End (Xaw), Ctrl-osfEndLine (Motif)
879 [goto-page()] Moves to the last page of the document.
880
881 Home (Xaw), osfBeginLine (Motif)
882 [home-or-top()] Move to the ``home'' position of the page, or to
883 the top of the page if the keep flag is set (in this case, the
884 page doesn't scroll horizontally).
885
886 End (Xaw), osfEndLine (Motif)
887 [end-or-bottom()] Move to the ``end'' position of the page (the
888 lower right-hand corner), or to the bottom of the page if the
889 keep flag is set (in this case, the page doesn't scroll horizon‐
890 tally).
891
892 Down arrow
893 [down(0.015)] Scrolls page down.
894
895 Up arrow
896 [up(0.015)] Scrolls page up.
897
898 Right arrow
899 [right(0.015)] Scrolls page right.
900
901 Left arrow
902 [left(0.015)] Scrolls page left.
903
904 Alt-Ctrl-+
905 [change-density(25)] Increase the darkness of the fonts in the
906 DVI window by adding to the gamma value (see also the `S' key‐
907 stroke).
908
909 Alt-Ctrl--
910 [change-density(-25)] Decrease the darkness of the fonts in the
911 DVI window by subtracting from the gamma value (see also the `S'
912 keystroke).
913
914 Ctrl-+ [set-shrink-factor(+)] Increase the shrink factor (see also the
915 `s' keystroke).
916
917 Ctrl-- [set-shrink-factor(-)] Decrease the shrink factor (see also the
918 `s' keystroke).
919
920 Ctr-[ [pagehistory-delete-backward()] Delete the current item in the
921 page history and move to the history item before the deleted
922 one. With a prefix argument n, delete n previous history items.
923 See PAGE HISTORY for details.
924
925 [ [pagehistory-back()] Move back in the page history (see PAGE
926 HISTORY for details). With a prefix argument n, move back n his‐
927 tory items.
928
929 Ctr-] [pagehistory-delete-forward()] Delete the current item in the
930 page history and move to the history item after the deleted one.
931 With a prefix argument n, delete n next history items. See PAGE
932 HISTORY for details.
933
934 ] [pagehistory-forward()] Move forward in the page history (see
935 PAGE HISTORY for details). With a prefix argument n, move for‐
936 ward n history items.
937
938 ^ [home()] Move to the ``home'' position of the page. This is
939 normally the upper left-hand corner of the page, depending on
940 the margins as described in the -margins option, above.
941
942 ? [help()] Same as the h key (which see).
943
944 B [htex-back()] This key jumps back to the previous hyperlink an‐
945 chor. See the section HYPERLINKS for more information on navi‐
946 gating the links.
947
948 b [back-page()] Moves to the previous page (or back n pages).
949 Synonyms are `p', Ctrl-h and Backspace.
950
951 C [set-color()] This key toggles the use of color specials. The
952 key sequences `0C' and `1C' turn interpretation of color spe‐
953 cials off and on, respectively. See also the -nocolor option.
954
955 c [center()] Moves the page so that the point currently beneath
956 the mouse cursor is moved to the middle of the window, and warps
957 the mouse cursor to the same place.
958
959 D [toggle-grid-mode()] This key toggles the use of a grid on the
960 displayed page. If no number is given, the grid mode is
961 switched on or off. By prepending a number from 1 to 3, 3 dif‐
962 ferent grid levels can be set. The units of the grid are inches
963 or centimeters, depending on whether the paper format is letter
964 (in) or a4 (cm).
965
966 d [down()] Moves page down two thirds of a window-full. With a
967 float argument to ``down'', moves down the corresponding frac‐
968 tion of a window-full.
969
970 Ctrl-f [find()] Pop up a window to search for a string in the DVI file.
971 See the section STRING SEARCH, below, for more details.
972
973 f [forward-page()] Moves to the next page (or to the nth next page
974 if a number is given). Synonyms are `n', Return, and Line Feed.
975
976 G [set-greyscaling()] This key toggles the use of greyscale anti-
977 aliasing for displaying shrunken bitmaps. In addition, the key
978 sequences `0G' and `1G' clear and set this flag, respectively.
979 See also the -nogrey option.
980
981 If given a numeric argument that is not 0 or 1, greyscale anti-
982 aliasing is turned on, and the gamma resource is set to the val‐
983 ue divided by 100. E.g. `150G' turns on greyscale and sets gamma
984 to 1.5.
985
986 Ctrl-g [find-next()] Find the next match string in the DVI file; this
987 can be used instead of pressing the `Find' button in the search
988 window.
989
990 g [goto-page()] Moves to the page with the given number. If no
991 page number is given, xdvi jumps to the last page.
992 If the option/resource useTeXpages is active, the numbers corre‐
993 spond to the actual page numbers in the TeX file; otherwise, ab‐
994 solute page numbers (starting from 1) are used. In the latter
995 case, the page numbers can be changed with the `P' keystroke,
996 below. Note that with the useTeXpages option it is possible
997 that the same page number occurs multiple times; in such a case,
998 xdvi will use the first page number that matches.
999
1000 h Pops up a help window with a short explanation of the most im‐
1001 portant key bindings and concepts.
1002
1003 k [set-keep-flag()] Normally when xdvi switches pages, it moves to
1004 the home position as well. The `k' keystroke toggles a `keep-
1005 position' flag which, when set, will keep the same position when
1006 moving between pages. Also `0k' and `1k' clear and set this
1007 flag, respectively. See also the -keep option.
1008
1009 Ctrl-l [fullscreen(toggle)] Toggles fullscreen mode (see the descrip‐
1010 tion of the -fullscreen option for more information on this).
1011 This is even more flaky than using the command-line option:
1012 There is no universal standard how a window could change its own
1013 geometry or window decorations at run-time, so this will not
1014 work with most window managers or desktops. Generally, it's bet‐
1015 ter to use the window manager controls to change the size or
1016 decorations of the xdvi window.
1017
1018 l [left()] Moves page left two thirds of a window-full.
1019
1020 M [set-margins()] Sets the margins so that the point currently un‐
1021 der the mouse cursor defines the upper left-hand corner of the
1022 text in the page. Note that the command does not move the im‐
1023 age, but only determines the margins for the page switching com‐
1024 mands. For details on how the margins are used, see the -margins
1025 option.
1026
1027 m [toggle-mark()] Toggles the mark for the current page in the
1028 page list. When a page is marked, it is displayed with a small
1029 star `*' next to the page number. The marked pages can then be
1030 printed or saved to a file. A page or several pages can also be
1031 marked by clicking or dragging Mouse-2 in the page list.
1032
1033 Ctrl-n [toggle-mark()forward-page()] Toggles the mark for the current
1034 page in the page list, and moves to the next page. This lets you
1035 quickly mark a series of subsequent pages.
1036
1037 n [forward-page()] Moves to the next page (or to the nth next page
1038 if a number is given). Synonyms are `f', Return, and Line Feed.
1039
1040 Ctrl-o [select-dvi-file()] Read a new dvi file. A file-selection widget
1041 is popped up for you to choose the DVI file from. If a prefix
1042 argument n is given, the n th file from the file history is
1043 opened instead.
1044
1045 P [declare-page-number()] ``This is page number n.'' This can be
1046 used to make the `g' keystroke refer to a different page number
1047 than the physical page. (If you want to use `logical' or TeX
1048 page numbers instead of physical pages, consider using the op‐
1049 tion -useTeXpages instead.) The argument n should be given as
1050 prefix to this key.
1051
1052 Ctrl-p [print()] Opens a popup window for printing the DVI file, or
1053 parts of it. See the section PRINT DIALOG for an explanation of
1054 the options available, and the resources to customize the de‐
1055 fault behaviour.
1056
1057 p [back-page()] Moves to the previous page (or back n pages).
1058 Synonyms are `b', Ctrl-h and Backspace.
1059
1060 q [quit()] Quits the program.
1061
1062 Ctrl-r [forward-page(0)] Redisplays the current page.
1063
1064 R [reread-dvi-file()] Forces the dvi file to be reread. This al‐
1065 lows you to preview many versions of the same file while running
1066 xdvi only once.
1067
1068 r [right()] Moves page right two thirds of a window-full.
1069
1070 Ctrl-s [save()] Opens a popup window for saving the DVI file, or parts
1071 of it. See the section SAVE DIALOG below for more information on
1072 this.
1073
1074 S [set-density()] Sets the density factor to be used when shrink‐
1075 ing bitmaps. This should be a number between 0 and 100; higher
1076 numbers produce lighter characters. If greyscaling mode is in
1077 effect, this changes the value of gamma instead. The new value
1078 of gamma is the given number divided by 100; negative values are
1079 allowed.
1080
1081 s [set-shrink-factor()] Changes the shrink factor to the given
1082 number. If no number is given, the smallest factor that makes
1083 the entire page fit in the window will be used. (Margins are
1084 ignored in this computation.)
1085
1086 T [use-tex-pages()] Use logical TeX pages (the values of the
1087 \count0 register) instead of physical pages for the pagelist la‐
1088 bels and when jumping to a page in a document via goto-page().
1089 See also the -useTeXpages option.
1090
1091 t [switch-magnifier-units()] Switches the units used for the mag‐
1092 nifier tick marks, and for reporting the distance between the
1093 mouse pointer and the ruler centre in ruler mode (see the sec‐
1094 tion MODES). The default value is specified by the X resource
1095 tickUnits (`mm' by default). The units toggle through the fol‐
1096 lowing values; except for `px', they all correspond to TeX's
1097 units: mm (millimeters) pt (TeX points), in (inches), sp (scaled
1098 points, the unit used internally by TeX) bp (big points or
1099 `PostScript points'), cc (cicero points), dd (didot points), pc
1100 (pica), and px (screen pixels).
1101
1102 Ctrl-u [back-page()toggle-mark()] Moves to the previous page, and tog‐
1103 gles the mark for that page. This is the dual action to Ctrl-n.
1104
1105 u [up()] Moves page up two thirds of a window-full. With a float
1106 argument to ``up'', moves up the corresponding fraction of a
1107 window-full.
1108
1109 Ctrl-v [show-source-specials()] Show bounding boxes for every source
1110 special on the current page, and print the strings contained in
1111 these specials to stderr. With prefix 1, show every bounding box
1112 on the page. This is for debugging purposes mainly.
1113
1114 V [set-gs-alpha()] This key toggles the anti-aliasing of Post‐
1115 Script<tm> specials when Ghostscript is used as renderer. In
1116 addition the key sequences `0V' and `1V' clear and set this
1117 flag, respectively. See also the -gsalpha option.
1118
1119 v [set-ps()] This key toggles the rendering of PostScript<tm> spe‐
1120 cials between 3 states:
1121
1122 - specials (like EPS graphics) are displayed;
1123
1124 - specials are displayed along with their bounding box (if
1125 available);
1126
1127 - only the bounding box is displayed.
1128
1129 The states can also be selected directly by using `1v', `2v' and
1130 `0v' respectively. See also the -postscript option.
1131
1132 Ctrl-x [source-what-special()] Display information about the source
1133 special next to the mouse cursor in the statusline. This is the
1134 same special that would be found by source-special(), but with‐
1135 out invoking the editor. For debugging purposes.
1136
1137 x [set-expert-mode()] Toggles expert mode, in which the sta‐
1138 tusline, the scrollbars, the menu buttons, the toolbar (Motif
1139 only) and the page list are not shown. Typing `1x' toggles the
1140 display of the statusline at the bottom of the window. Typing
1141 `2x' toggles the scrollbars (if available). For Xaw, `3x' tog‐
1142 gles the menu buttons and the page list, for Motif, it toggles
1143 the page list. In Motif, the additional bindings `4x' toggle the
1144 toolbar, and `5x' the menu bar.
1145 Without a prefix argument, all of the mentioned GUI elements are
1146 either switched on (if they had been invisible before) or off.
1147 Toggling the scrollbars may behave erratically with the Xaw wid‐
1148 gets; e.g. the scrollbars may reappear after resizing the win‐
1149 dow, and at certain window sizes one of the scrollbars may fail
1150 to disappear.
1151 See also the option -expertmode (the numbers above correspond to
1152 the bits in the argument to -expertmode).
1153
1155 The mouse actions can be customized by setting the X resource mouse‐
1156 Translations. Since there are three different mouse modes (see the
1157 section MODES below), there is a special action mouse-modes which lists
1158 the actions for each of the three modes: mouse-modes("ACTIONS-FOR-
1159 MODE1", "ACTIONS-FOR-MODE2", "ACTIONS-FOR-MODE3"). If only one argu‐
1160 ment is specified, this action is used for all modes. The default
1161 bindings are as follows:
1162
1163 xdvi.mouseTranslations: \
1164 Shift<Btn1Down>:mouse-modes("drag(+)")\n\
1165 Shift<Btn2Down>:mouse-modes("drag(|)")\n\
1166 Shift<Btn3Down>:mouse-modes("drag(-)")\n\
1167 Ctrl<Btn1Down>:mouse-modes("source-special()")\n\
1168 <Btn1Down>: mouse-modes("do-href()magnifier(*2)", "text-selection()", "ruler()")\n\
1169 <Btn2Down>: mouse-modes("do-href-newwindow()magnifier(*2)", "text-selection()", "ruler()")\n\
1170 <Btn3Down>: mouse-modes("magnifier(*3)")\n\
1171 <Btn4Down>: mouse-modes("wheel(-0.2)")\n\
1172 <Btn5Down>: mouse-modes("wheel(0.2)")\n\
1173 <Btn6Down>: mouse-modes("hwheel(-0.2)")\n\
1174 <Btn7Down>: mouse-modes("hwheel(0.2)")\n\
1175
1176 All of these actions are described in more detail below. Note the use
1177 of quote symbols around the action strings, which are necessary to
1178 group them into one argument. Buttons 4, 5, 6, and 7 refer to wheel
1179 movements (wheel up/down/left/right) on wheel mice. Not all mice sup‐
1180 port horizontal scrolling.
1181
1182 The X Toolkit routines that implement translations do not support event
1183 types of Btn6Down or Btn7Down. Because of this, xdvi implements its
1184 own parser for translations given in mouseTranslations. This parser is
1185 more limited than the parser built in to the X Toolkit. The string
1186 given in mouseTranslations should not begin with ``#replace'', ``#aug‐
1187 ment'', or ``#override''. Modifiers of the form @keysym are not sup‐
1188 ported, and the event type must be of the form BtnDown or BtnnDown,
1189 where n is a positive integer without leading zeroes. Also, some limi‐
1190 tations apply to the action field.
1191
1192 do-href()
1193
1194 do-href-newwindow()
1195 Usually, if a binding specifies more then one action, all ac‐
1196 tions are executed in a sequence. The hyperlink bindings do-
1197 href() and do-href-newwindow() are special in that they are used
1198 as an alternative to other actions that might follow them if the
1199 mouse is currently located on a hyperlink. In this case, none
1200 of the other actions will be executed; otherwise, only the other
1201 actions are executed.
1202 The action do-href() jumps to the link target in the current xd‐
1203 vi window (eventually switching to another page), and do-href-
1204 newwindow() opens a new instance of xdvi for the link target.
1205 In both cases, the location of the target is indicated by a
1206 small arrow drawn in the same color as a visited link in the
1207 left corner of the window.
1208
1209 magnifier(n x m)
1210
1211 magnifier(*n)
1212 This action will pop up a ``magnifying glass'' which shows the
1213 unshrunk image of the region around the mouse pointer. The mag‐
1214 nifier disappears when the mouse button is released. Moving the
1215 mouse cursor while holding the button down will move the magni‐
1216 fier.
1217 Different mouse buttons produce different sized windows, as in‐
1218 dicated by the argument of the magnifier() action. Its argument
1219 is either a string of the form widthxheight, as in the -mgsn
1220 command-line option, or one of the strings *1 through *5, refer‐
1221 ring to the value specified by the corresponding -mgsn option.
1222
1223 drag(+)
1224
1225 drag(|)
1226
1227 drag(-)
1228 Drags the page with the mouse. This action should have one pa‐
1229 rameter, the character ``|'', ``-'', or ``+'', indicating verti‐
1230 cal dragging only, horizontal dragging only, or dragging in all
1231 directions.
1232
1233 source-special()
1234 This action starts a ``reverse search'', opening the editor at
1235 the location in the TeX file corresponding to the pointer loca‐
1236 tion in the DVI file. See the section on SOURCE SPECIALS, be‐
1237 low, for more information on this.
1238
1239 wheel()
1240 This action can be used to scroll the image with a wheel mouse,
1241 where it is usually bound to mouse button 4 (wheel up) or 5
1242 (wheel down). The action takes one parameter, giving the dis‐
1243 tance to scroll the image. If the parameter contains a decimal
1244 point, the distance is given in wheel units; otherwise, pixels.
1245 A negative value scrolls up, a positive value scrolls down.
1246
1247 hwheel()
1248 This action can be used to scroll the image horizontally with a
1249 wheel mouse, where it is usually bound to mouse button 6 (wheel
1250 left) or 7 (wheel right). The action takes one parameter, giv‐
1251 ing the distance to scroll the image. If the parameter contains
1252 a decimal point, the distance is given in wheel units; other‐
1253 wise, pixels. A negative value scrolls left, a positive value
1254 scrolls right. Not all mice support horizontal scrolling; this
1255 is mostly for touchpads, trackpads, etc.
1256
1257 text-selection()
1258 This action allows you to mark a rectangular region of text in
1259 the DVI file. The text is put into the X selection buffer and
1260 can be pasted into other applications (e.g. text editors). This
1261 works similar to the Plain text option in the Save dialog; see
1262 the discussion there for more information on encoding issues.
1263
1264 ruler()
1265 This action creates a cross-shaped ruler. Moving the mouse and
1266 holding the button down drags the ruler and lets you measure
1267 distances on the page. See the section Ruler Mode for more in‐
1268 formation on this.
1269
1271 The following actions are not bound to a key by default, but are avail‐
1272 able for customization.
1273
1274 quit-confirm()
1275 Pops up a confirmation window to quit xdvi. To bind it to the
1276 `q' key instead of the default `quit()' action, put the follow‐
1277 ing into your ~/.Xdefaults file:
1278
1279 xdvi.mainTranslations: #override\
1280 <Key>q: quit-confirm()\n
1281
1282 down-or-next()
1283 Similar to unpause-or-next(): Moves down two-thirds of a window-
1284 full, or to the next page if already at the bottom of the page.
1285
1286 shrink-to-dpi()
1287 This action takes one (required) argument. It sets the shrink
1288 factor to an integer so as to approximate the use of fonts with
1289 the corresponding number of dots per inch. If xdvi is using
1290 fonts scaled for p dots per inch, and the argument to shrink-to-
1291 dpi is n, then the corresponding shrink factor is the ratio p/n,
1292 rounded to the nearest integer.
1293
1294 user-exec()
1295 This action takes one (required) argument. Runs an external pro‐
1296 gram specified by the argument, which is tokenized on white‐
1297 space. The XDVI_FILE environment variable is set to the absolute
1298 pathname of the DVI file, so that the program can find the DVI.
1299 As an example, to establish the key `m' as a keybinding that re‐
1300 generates the DVI file with `make', put the following into your
1301 ~/.Xdefaults file:
1302
1303 xdvi.mainTranslations: #override\
1304 <Key>m: user-exec(xdvi-remake)\n
1305
1306 where `xdvi-remake' names a program in your PATH analogous to
1307 `cd $(dirname $XDVI_FILE) && make $(basename $XDVI_FILE)'. (See
1308 also the section SIGNALS for a way to get xdvi to reload the DVI
1309 file once it has been regenerated.)
1310
1312 Key and mouse button assignments can be changed by setting the main‐
1313 Translations resource to a string of translations as defined in the
1314 documentation for the X toolkit. The actions should take the form of
1315 action names listed in the KEYSTROKES and MOUSE ACTIONS sections.
1316
1317 An exception to this are the Motif keys osfPageUp (PgUp), osfPageDown
1318 (PgDown), osfBeginLine (Home) and osfEndLine (End) which are currently
1319 not customizable in the Motif version.
1320
1321 Key actions will usually be without arguments; if they are passed an
1322 argument, it represents the optional number or `prefix argument' typed
1323 prior to the action.
1324
1325 Some key actions may take special arguments, as follows: The argument
1326 of goto-page may be the letter `e', indicating the action of going to
1327 the end of the document. The argument of set-shrink-factor may be the
1328 letter `a', indicating that the shrink factor should be set to the
1329 smallest value such that the page will fit in the window, or one of the
1330 signs `+' or `-', indicating that the shrink factor should be increased
1331 or decreased, respectively. Finally, actions that would perform a tog‐
1332 gle, such as set-keep-flag, may receive an argument `t', indicating
1333 that the action should toggle regardless of the current prefix argu‐
1334 ment.
1335
1336 Mouse actions should refer only to ButtonPress events (e.g.
1337 <Btn1Down>:magnifier(*1)). The corresponding motion and release events
1338 will be handled internally. A key action may be bound to a mouse
1339 event, but not vice versa.
1340
1341 Usually the string of translations should begin with ``#override'', in‐
1342 dicating that the default key and mouse button assignments should not
1343 be discarded.
1344
1345 When keys or mouse buttons involving modifiers (such as Ctrl or Shift)
1346 are customized together with their non-modified equivalents, the modi‐
1347 fied keys should come first, for example:
1348
1349 xdvi.mainTranslations: #override \
1350 Shift<Key>s: select-dvi-file()\n\
1351 Ctrl<Key>s: save()\n\
1352 <Key>s: find()\n
1353
1354
1355 Because xdvi needs to capture pointer motion events, and because the X
1356 Toolkit translations mechanism cannot accommodate both motion events
1357 and double-click events at the same time, it is not possible to specify
1358 double-click actions in xdvi customizations. For information on this
1359 and other aspects of translations, see the X Toolkit Intrinsics docu‐
1360 mentation.
1361
1362 There is no command-line option to set the mainTranslations resource,
1363 since changing this resource on the command line would be cumbersome.
1364 To set the resource for testing purposes, use the -xrm command-line op‐
1365 tion provided by the X toolkit. For example, xdvi -xrm 'XDvi.main‐
1366 Translations: #override "z":quit()' ... or xdvi -xrm 'XDvi.mainTrans‐
1367 lations: #override <Key>z:quit()' ... will cause the key `z' to quit
1368 xdvi.
1369
1370 Some resources are provided to allow customization of the geometry of
1371 the Xaw command buttons. Again, they are not changeable via command-
1372 line options, other than via the -xrm option. All of these resources
1373 take integer values.
1374
1375 buttonSideSpacing
1376 The number of pixels to be placed on either side of the buttons.
1377 The default value is 6.
1378
1379 buttonTopSpacing
1380 The number of pixels between the top button and the top of the
1381 window. The default value is 50.
1382
1383 buttonBetweenSpacing
1384 The number of pixels between the buttons. The default value is
1385 20.
1386
1387 buttonBetweenExtra
1388 The number of pixels of additional space to be inserted if the
1389 buttonTranslations resource string contains an extra newline
1390 character. The default value is 50.
1391
1392 buttonBorderWidth
1393 The border width of the button windows. The default value is 1.
1394
1396 The scrollable page list on the right of the main window allows you to
1397 jump directly to a page in the DVI file.
1398
1399 Mouse-1
1400 Jumps to the page the mouse is located on.
1401
1402 Mouse-2
1403 [toggle-mark()] Toggle the mark of the current page. The marks
1404 are used by the `Print' and `Save to file' dialogs to select on‐
1405 ly marked pages from the DVI file.
1406
1407 When the mouse pointer is inside the page list, the mouse wheel switch‐
1408 es to the next or previous page.
1409
1411 The scrollbars (if present) behave in the standard way: pushing Button
1412 2 in a scrollbar moves the top or left edge of the scrollbar to that
1413 point and optionally drags it; pushing Button 1 moves the image up or
1414 right by an amount equal to the distance from the button press to the
1415 upper left-hand corner of the window; pushing Button 3 moves the image
1416 down or left by the same amount.
1417
1418 The scrollbars can be removed via the -expertmode flag/keystroke (which
1419 see).
1420
1422 By default, the mouse buttons 1 to 5 will pop up a ``magnifying glass''
1423 that shows an unshrunken image of the page (i.e. an image at the reso‐
1424 lution determined by the option/X resource pixels or mfmode) at varying
1425 sizes. When the magnifier is moved, small ruler-like tick marks are
1426 displayed at the edges of the magnifier (unless the X resource de‐
1427 layRulers is set to false, in which case the tick marks will always be
1428 displayed). The unit of the marks is determined by the X resource
1429 tickUnits (mm by default). This unit can be changed at runtime via the
1430 action switch-magnifier-units(), by default bound to the keystroke `t'
1431 (see the description of that key, and of switch-magnifier-units() for
1432 more details on the units available).
1433 The length of the tick marks can be changed via the X resource tick‐
1434 Length (4 by default). A zero or negative value suppresses the tick
1435 marks.
1436
1438 Xdvi keeps a history of viewed pages, and you can move through the his‐
1439 tory and delete items using the keys [ (pagehistory-back()), ] (page‐
1440 history-forward()), Ctr-[ (pagehistory-delete-backward()) and Ctr-]
1441 (pagehistory-delete-forward()).
1442
1443 When one of the history commands is used, the page history is displayed
1444 in the status line at the bottom of the window, with the current list
1445 item marked by square brackets `[', `]' and a left and right context of
1446 at most 10 items. File boundaries are marked by `#'.
1447
1448 The size of the history can be customized with the X resource pageHis‐
1449 torySize (the default size is 1000 items). If the size is set to 0, the
1450 history commands are disabled.
1451
1453 The actions do-href() and do-href-newwindow() (by default bound to
1454 Mouse-1 and Mouse-2 if the pointer is currently located on a hyperlink)
1455 can be used to open the link target in the same window (do-href()) or
1456 in a new window (do-href-newwindow()).
1457
1458 If the link target is not a file on the local disk, xdvi tries to
1459 launch a web browser (as specified by the -browser command line option,
1460 the BROWSER environment variable or the wwwBrowser X resource, in this
1461 order) to retrieve the document. See the description of the BROWSER en‐
1462 vironment variable, below, for an example setting.
1463
1464 If the file is a local file, xdvi tries to determine if it is a DVI
1465 file. If it is, xdvi will try to display the file; otherwise it will
1466 try to determine the MIME type of the file, and from that an applica‐
1467 tion suitable for opening the file. This is done by parsing the files
1468 specified by the environment variable EXTENSIONMAPS for a mapping of
1469 filename extensions to MIME types, and the files determined by the en‐
1470 vironment variable MAILCAPS for a mapping of MIME types to application
1471 programs. See the descriptions of these variables in the section ENVI‐
1472 RONMENT, below, for a more detailed description and the default values
1473 of these variables. If no suitable files are found, a set of built-in
1474 default MIME types and applications is used.
1475
1476 Xdvi currently uses no heuristics apart from the filename suffix to de‐
1477 termine the mime type of a file. If a filename has no suffix, the value
1478 of the resource noMimeSuffix is used (by default application/x-un‐
1479 known). If the suffix doesn't match any of the suffixes in mime.types,
1480 the value of the resource unknownMimeSuffix is used (by default appli‐
1481 cation/x-unknown). If the mailcap entries do not list a viewer for a
1482 given mime type, xdvi will show a warning popup. If you want to avoid
1483 this warning, and for example want to always use the netscape browser
1484 for unknown MIME types, you could add the following line to your
1485 ~/.mailcap file:
1486
1487 application/xdvi-unknown; \
1488 netscape -raise -remote 'openURL(%s,new-window)'
1489
1490
1492 The keystroke Ctrl-f or the menu entry File > Find ... (or the `Binoc‐
1493 ulars' symbol in the toolbar, for Motif) opens a dialog window to
1494 search for a text string or a regular expression in the DVI file. The
1495 keystroke Ctrl-g jumps to the next match (like pressing the `Find' but‐
1496 ton in the search window).
1497
1498 By default, the matches are highlighted in inverted color. If the dis‐
1499 play isn't running in TrueColor, or if the X resource matchHighlightIn‐
1500 verted is set to false or the command-line option -nomatchinverted is
1501 used, xdvi will instead draw a rectangle in highlight color (see the
1502 -hl option) around the match.
1503
1504 If a match crosses a page boundary, only the part on the first page is
1505 highlighted. Xdvi will scan up to 2 adjacent pages to match strings
1506 crossing page boundaries; but note that header or footer lines, or in‐
1507 tervening float pages will be treated as parts of the scanned text.
1508 Such text will usually cause multi-page matching to fail.
1509
1510 This emphasizes the fact that searching in the formatted text (the DVI
1511 output) works differently from searching in the source text: Searching
1512 in the DVI file makes it easier to skip formatting instructions, and
1513 makes it possible to search for e.g. hyphenation and equation numbers;
1514 but sometimes the formatting results can also get in the way, e.g. in
1515 the case of footnotes. In these cases it's better to search in the TeX
1516 source instead. The use of source specials will make switching between
1517 the xdvi display and the editor with the TeX source easier; see the
1518 section SOURCE SPECIALS below for more information on this.
1519
1520 The text extracted from the DVI file is in encoded in UTF-8 (you can
1521 view that text by saving the file in UTF-8 format via the File > Save
1522 as ... menu item). If xdvi has been compiled with locale, nl_langin‐
1523 fo() and iconv support, the search term is converted from the character
1524 set specified by the current locale into UTF-8. (See the output of lo‐
1525 cale -a for a list of locale settings available on your system). If
1526 nl_langinfo() is not available, but iconv is, you can specify the input
1527 encoding for iconv via the X resource textEncoding (see the output of
1528 iconv -l for a list of valid encodings). If iconv support is not avail‐
1529 able, only the encodings ISO-8859-1 and UTF-8 are supported (these
1530 names are case-insensitive).
1531
1532 Ideographic characters from CJKV fonts are treated specially: All white
1533 space (spaces and newlines) before and after such characters is ignored
1534 in the search string and in the DVI file.
1535
1536 To match a newline character, use \n in the search string; to match the
1537 string \n, use \\n.
1538
1539 If the checkbox Regular Expression is activated, the string is treated
1540 as a regular expression in extended POSIX syntax, with the following
1541 properties:
1542
1543 - a? matches a zero or one times.
1544
1545 - a* matches a zero or more times.
1546
1547 - a+ matches a one or more times. Note that * and + are greedy, i.e.
1548 they match the longest possible substring.
1549
1550 - The pattern . matches any character except for newline. To also
1551 match a newline, use `(.|\n)'.
1552
1553 - a{n} matches a exactly n times.
1554
1555 - a{n,m} matches a at least n and no more than m times.
1556
1557 - a|b matches a or b. Brackets can be used for grouping, e.g.:
1558 (a|b)|c.
1559
1560 - The string matched by the nth group can be referenced by \n, e.g.
1561 \1 refers to the first match.
1562
1563 - The characters ^ and $ match the beginning and the end of a line,
1564 respectively.
1565
1566 - [abc] matches any of the letters a, b, c, and [a-z] matches all
1567 characters from a to z.
1568
1569 - Each item in a regular expression can also be one of the following
1570 POSIX character classes:
1571 [[:alnum:]] [[:alpha:]] [[:blank:]] [[:cntrl:]] [[:digit:]]
1572 [[:graph:]] [[:lower:]] [[:print:]] [[:space:]] [[:upper:]]
1573
1574
1575 These can be negated by inserting a ^ symbol after the first brack‐
1576 et: [^[:alpha:]]
1577
1578 For more details on POSIX regular expressions, see e.g. the IEEE
1579 Std 1003.1 standard definition available online from:
1580
1581 http://www.opengroup.org/onlinepubs/007904975/basedefs/xbd_chap09.html
1582
1583 - As a non-standard extension, the following Perl-like abbreviations
1584 can be used instead of the POSIX classes:
1585
1586 Symbol Meaning POSIX Class
1587
1588 \w an alphanumeric character [[:alnum:]]
1589 \W a non-alphanumeric character [^[:alnum:]]
1590 \d a digit character [[:digit:]]
1591 \D a non-digit character [^[:digit:]]
1592 \s a whitespace character [[:space:]]
1593 \S a non-whitespace character [^[:space:]]
1594
1595
1596 - The following characters are special symbols; they need to be es‐
1597 caped with \ in order to match them literally: ( ) [ ] . * ? + ^ $
1598 \.
1599
1600 - Matches of length zero are silently skipped.
1601
1602 The dialog also provides checkboxes to:
1603
1604 - search backwards;
1605
1606 - match in a case-sensitive manner (the default is to ignore case,
1607 i.e. a search string Test will match both the strings test and TEST
1608 in the DVI file);
1609
1610 - ignore line breaks and hyphens: This removes all hyphens at the
1611 ends of lines and the following newline characters, and replaces
1612 all remaining newline characters by white spaces. So hyphenated
1613 words will appear as one word to the search, and a search for two
1614 words with a space in between will also match the words if they are
1615 separated by a linebreak.
1616 Note that the hyphen removal may cause unwanted side effects for
1617 compound words containing hyphens that are wrapped after the hy‐
1618 phen, and that replacing the newlines affects the interpretation of
1619 regular expressions as follows: The . pattern will also match new‐
1620 lines, and ^ and $ won't match begin and end of lines any more.
1621 (Since currently there is no option for turning off the greediness
1622 of * and +, turning on this option will usually result in matches
1623 that are longer than desired.)
1624
1625 The current checkbox settings are saved in the ~/.xdvirc file.
1626
1628 The print dialog window allows you to print all pages, marked pages
1629 (click or drag Mouse-2 in the page list to mark them), or a range of
1630 pages. Note that the page numbers always refer to physical pages, so if
1631 you're using the option `use TeX pages', you may want to disable it to
1632 make it easier to determine the correct page numbers (or avoid this
1633 problem altogether by marking the pages to be printed).
1634
1635 The value of the Printer text filed is passed to dvips via the -o!
1636 mechanism, as a single argument after the `!'. Any arguments listed in
1637 the Dvips options field are segmented at whitespace and passed as sepa‐
1638 rate arguments to dvips. If you e.g. want to print the file 2-up, you
1639 should enter the following string into the Printer field:
1640
1641 psnup -2 -q | lpr -Plp
1642
1643
1644 There are several resources for customizing the behaviour and the de‐
1645 fault entries of the print dialog:
1646
1647 dvipsPrinterString
1648
1649 dvipsOptionsString
1650 These can be used to provide default entries for the Printer and
1651 the Dvips options text fields, respectively. If no paper size is
1652 specified in the DVI file (via e.g. \usepackage[dvips]{geometry}
1653 - this is the preferred method), the input field is initialized
1654 with the current value of the command line option/X resource pa‐
1655 per. E.g. the option -paper a4r is translated into the dvips
1656 options -t a4 -t landscape. Note that no check is performed
1657 whether dvips actually understands these options (it will ignore
1658 them if it can't); currently not all options used by xdvi are
1659 also covered by dvips.
1660
1661 dvipsHangTime
1662
1663 dvipsFailHangTime
1664 These specify the time (in milliseconds) that the printing
1665 progress window will stay open after the dvips process has ter‐
1666 minated. The value of dvipsHangTime is used if the process ter‐
1667 minates successfully; dvipsFailHangTime is used if it terminates
1668 with an error. The default values are 1.5 and 5 seconds, respec‐
1669 tively. If both values are negative, the window will stay open
1670 until it is closed by the user.
1671
1673 This dialog allows you to save all or selected/marked pages in the cur‐
1674 rent DVI file. You can save in one of the following formats:
1675
1676 - PostScript (uses dvips to convert the DVI file to a PostScript
1677 file, just like when printing to a PostScript file).
1678
1679 - PDF (first uses dvips to convert the DVI file to a PostScript file,
1680 then uses ps2pdf to convert the PostScript file to PDF).
1681
1682 - Plain text in ISO-8859-1 or UTF-8 encoding. The latter will pre‐
1683 serve more of the special LaTeX characters e.g. from mathematical
1684 mode. Note however that e.g. only few of LaTeX's mathematical sym‐
1685 bols can be rendered correctly as text; so this functionality works
1686 best for plain text documents. If a character cannot be displayed
1687 in the selected charset, it is replaced by `\' followed by the
1688 hexadecimal character code. If a character is not recognized at
1689 all, it is replaced by `?'.
1690
1691 The programs for PostScript and PDF conversion can be customized via
1692 the command line options or X resources -dvipspath/.dvipsPath and
1693 -ps2pdfpath/.ps2pdfPath, respectively; see the explanation of these op‐
1694 tions above for more details.
1695
1697 The keystroke Ctrl-m [switch-mode()] switches between three different
1698 mouse bindings, which can also be activated via the Modes menu (in Mo‐
1699 tif, this is a submenu of the Options menu called Mouse Mode). The de‐
1700 fault mode at startup can be customized via the X resource mouseMode or
1701 the command-line option -mousemode. The default startup mode is Magni‐
1702 fier Mode.
1703
1704 Note: The modes are implemented by changing the magnifier() action.
1705 Switching the mode will not work if Mouse-1 has been customized to an
1706 action sequence that does not contain the magnifier() action.
1707
1708 Magnifier Mode
1709 In this mode, the mouse buttons 1 to 5 pop up a ``magnifying
1710 glass'' that shows an unshrunken image of the page (i.e. an im‐
1711 age at the resolution determined by the option/X resource pixels
1712 or mfmode) at varying sizes. When the magnifier is moved, small
1713 ruler-like tick marks are displayed at the edges of the magnifi‐
1714 er (unless the X resource delayRulers is set to false, in which
1715 case the tick marks are always displayed). The unit of the
1716 marks is determined by the X resource tickUnits (mm by default).
1717 This unit can be changed at runtime via the action switch-magni‐
1718 fier-units(), by default bound to the keystroke `t' (see the de‐
1719 scription of that key, and of switch-magnifier-units() for more
1720 details on the units available).
1721 The length of the tick marks can be changed via the X resource
1722 tickLength (4 by default). A zero or negative value suppresses
1723 the tick marks.
1724
1725 Text Selection Mode
1726 This mode allows you to select a rectangular region of text in
1727 the DVI file by holding down Mouse-1 and moving the mouse. The
1728 text is put into the X primary selection so that it can be past‐
1729 ed into other X applications with Mouse-2 as usual.
1730 If xdvi has been compiled with locale, nl_langinfo() and iconv
1731 support, the selected text is converted into the character set
1732 of the current locale (see the output of locale -a for a list of
1733 locale settings available on your system). If nl_langinfo() is
1734 not available, but iconv is, you can specify the input encoding
1735 for iconv via the X resource textEncoding (see the output of
1736 iconv -l for a list of valid encodings). If iconv support is not
1737 available, only the encodings ISO-8859-1 and UTF-8 are supported
1738 (these names are case-insensitive).
1739 Note that UTF-8 is the only encoding that can render all charac‐
1740 ters (e.g. mathematical symbols) of a DVI file. If ISO-8859-1 is
1741 active, characters that cannot be displayed are replaced by `\'
1742 followed by the hexadecimal character code. For other encod‐
1743 ings, such characters may trigger iconv error messages. If a
1744 character is not recognized at all, it is replaced by `?'.
1745 To extract larger portions of text, you can alternatively save
1746 selected pages or the entire file in text format via the File >
1747 Save as ... menu.
1748
1749 Ruler Mode
1750 This mode provides a simple way of measuring distances on the
1751 page.
1752 When this mode is activated, the mouse cursor changes into a
1753 thin cross, and a larger, cross-shaped ruler is drawn in the
1754 highlight color at the mouse location. The ruler doesn't have
1755 units attached to it; instead, the current distance between the
1756 ruler and the mouse cursor is continuously printed to the sta‐
1757 tusline.
1758 When activating Ruler Mode, the ruler is at first attached to
1759 the mouse and can be moved around. It can then be positioned at
1760 a fixed place by clicking Mouse-1. After that, the mouse cursor
1761 can be moved to measure the horizontal (dx), vertical (dy) and
1762 direct (shortest) (dr) distance between the ruler center point
1763 and the mouse.
1764 Clicking Mouse-1 again will move the ruler to the current mouse
1765 position, and holding down Mouse-1 will drag the ruler around.
1766 In Ruler Mode, the following special keybindings extend or re‐
1767 place the default bindings:
1768
1769 o [ruler-snap-origin()] Snap the ruler back to the origin
1770 coordinate (0,0).
1771
1772 t [overrides switch-magnifier-units()] Toggle between vari‐
1773 ous ruler units, which can be specified by the X resource
1774 tickUnits (`mm' by default).
1775
1776 P [overrides declare-page-number()] Print the distances
1777 shown in the statusline to standard output.
1778
1780 The Motif toolbar can also be customized. The XPM file used for the
1781 toolbar icons can be specified via the resource toolbarPixmapFile,
1782 which should contain a filename that can be found in one of XFILE‐
1783 SEARCHPATH or XDVIINPUTS (see the section FILE SEARCHING below for more
1784 information on these variables). Xdvi will try to split this pixmap
1785 horizontally into n pieces, where each piece is as wide as the pixmap
1786 is high and is treated as an image for toolbar button n. This means
1787 that each icon should be a square, and that the entire pixmap should
1788 have width n x h if h is the height of the pixmap.
1789
1790 The resource toolbarTranslations can be used to map icons/buttons to
1791 specific actions. The resource should contain a string separated by
1792 newline characters, similar to the resources mainTranslations and menu‐
1793 Translations. Every line must contain either a spacer definition, or
1794 an icon definition:
1795
1796 A spacer definition is a string SPACER(n), where n is the number of
1797 pixels inserted as separator to the following button.
1798
1799 An icon definition is a colon-separated list containing the following
1800 elements:
1801
1802 - the index of an icon in the pixmap file (starting from zero);
1803
1804 - a long tooltip string, displayed in the status area;
1805
1806 - a short tooltip string, displayed as popup;
1807
1808 - a sequence of actions to be performed when the corresponding tool‐
1809 bar button is pushed.
1810
1811 To illustrate this, the default value of toolbarTranslations looks as
1812 follows:
1813
1814 xdvi.toolbarTranslations: \
1815 SPACER(5)\n\
1816 0:Open a new document (Key\\: Ctrl-f):\
1817 Open file:select-dvi-file()\n\
1818 SPACER(10)\n\
1819 1:Reread this document (Key\\: R):\
1820 Reread file:reread-dvi-file()\n\
1821 SPACER(10)\n\
1822 2:Go to the first page of this document (Key\\: 1g):\
1823 Go to first page:goto-page(1)\n\
1824 3:Go to the previous page of this document (Key\\: p):\
1825 Go to previous page:back-page(1)\n\
1826 4:Go to the next page of this document (Key\\: n):\
1827 Go to next page:forward-page(1)\n\
1828 5:Go to the last page of this document (Key\\: g):\
1829 Go to last page:goto-page()\n\
1830 SPACER(10)\n\
1831 6:Enlarge the display (Key\\: Ctrl-+):Zoom in:\
1832 set-shrink-factor(+)\n\
1833 7:Shrink the display (Key\\: Ctrl--):Zoom out:\
1834 set-shrink-factor(-)\n\
1835 SPACER(10)\n\
1836 8:Jump back to the previous hyperlink (Key\\: B):\
1837 Back hyperlink:htex-back()\n\
1838 SPACER(10)\n\
1839 10:Print this document:Print:print()\n\
1840 SPACER(10)\n\
1841 11:Toggle marks for odd pages (Key\\: 1m):\
1842 Toggle odd:toggle-mark(1)\n\
1843 12:Toggle marks for even pages (Key\\: 2m):\
1844 Toggle even:toggle-mark(2)\n\
1845 13:Toggle mark for current page (Key\\: 2m):\
1846 Toggle current:toggle-mark()\n\
1847 14:Unmark all pages (Key\\: 0m):\
1848 Unmark all:toggle-mark(0)\n\
1849 SPACER(10)\n\
1850 18:Display fonts darker (Key\\: Alt-Ctrl-+):\
1851 Fonts darker:change-density(5)\n\
1852 19:Display fonts lighter (Key\\: Alt-Ctrl--):\
1853 Fonts lighter:change-density(-5)\n
1854
1855
1856 When the mouse remains over a toolbar button for a certain period, a
1857 `tooltip' window is shown, describing what the button does using the
1858 short tooltip string from the above resource. At the same time, the
1859 long tooltip string is displayed in the statusline. The appearance and
1860 behaviour of these tooltips can be customized via the following re‐
1861 sources:
1862
1863 tipShell.background
1864 Background color of the tooltip window.
1865
1866 tipShell.fontSet
1867 Font used for the tooltip.
1868
1869 tipShell.waitPeriod
1870 The time (in milliseconds) the mouse pointer needs to be over
1871 the button before the tooltip is shown. Set it to a negative
1872 value to suppress the tooltips altogether.
1873
1874
1876 The greyscale anti-aliasing feature in xdvi will not work at its best
1877 if the display does not have enough colors available. This can happen
1878 if other applications are using most of the colormap (even if they are
1879 iconified). If this occurs, then xdvi will print an error message and
1880 turn on the -copy option. This will result in overstrike characters
1881 appearing wrong; it may also result in poor display quality if the num‐
1882 ber of available colors is very small.
1883
1884 Typically this problem occurs on displays that allocate eight bits of
1885 video memory per pixel. To see how many bits per pixel your display
1886 uses, type xwininfo in an xterm window, and then click the mouse on the
1887 root window when asked. The ``Depth:'' entry will tell you how many
1888 bits are allocated per pixel.
1889
1890 Displays using at least 15 bits per pixel are typically TrueColor visu‐
1891 als, which do not have this problem, since their colormap is permanent‐
1892 ly allocated and available to all applications. (The visual class is
1893 also displayed by xwininfo.) For more information on visual classes
1894 see the documentation for the X Window System.
1895
1896 To alleviate this problem, therefore, one may (a) run with more bits
1897 per pixel (this may require adding more video memory or replacing the
1898 video card), (b) shut down other applications that may be using much of
1899 the colormap and then restart xdvi, or (c) run xdvi with the -install
1900 option.
1901
1902 One application which is often the cause of this problem is Netscape.
1903 In this case there are two more alternatives to remedying the situa‐
1904 tion. One can run ``netscape -install'' to cause Netscape to install a
1905 private colormap. This can cause colors to change in bizarre ways when
1906 the mouse is moved to a different window. Or, one can run ``netscape
1907 -ncols 220'' to limit Netscape to a smaller number of colors. A small‐
1908 er number will ensure that other applications have more colors avail‐
1909 able, but will degrade the color quality in the Netscape window.
1910
1911
1913 Xdvi can display Encapsulated PostScript (EPS) files included in the
1914 dvi file. Such files are first searched for in the directory where the
1915 dvi file is, and then using normal Kpathsea rules. There is an excep‐
1916 tion to this, however: if the file name begins with a backtick (`),
1917 then the remaining characters in the file name give a shell command
1918 (often zcat) which is executed; its standard output is then sent to be
1919 interpreted as PostScript. Since the execution of arbitrary shell com‐
1920 mands with the user's permissions is a huge security risk, evaluation
1921 of these backtick commands is disabled by default. It needs to be acti‐
1922 vated via the -allowshell command-line option. NOTE: You should never
1923 use this option when viewing documents that you didn't compile your‐
1924 self. The backtick specials are not needed for uncompressing gzipped
1925 PostScript files, since xdvi can do that on the fly if the filename
1926 ends with .eps.gz or .eps.Z (and if the first bytes of the file indi‐
1927 cate that the file is indeed compressed). This is both safer and more
1928 flexible than the backtick approach, since the default file searching
1929 rules will apply to such filenames too.
1930
1932 Using FreeType (version 2), xdvi can render PostScript<tm> Type 1 fonts
1933 directly, without the route via TeX pixel (pk) fonts. The advantage of
1934 this is that only one size of each font needs to be stored on disk.
1935 Unless the -notype1fonts option is used, xdvi will try to render every
1936 font using FreeType. Only as a fallback will it invoke an external pro‐
1937 gram (like mktexpk, which in turn may invoke utilities like ps2pk or
1938 gsftopk) to generate a pixel font from the Type 1 source. The direct
1939 rendering of the Computer Modern fonts should work out-of-the box,
1940 whereas other Type 1 fonts such as the 35 `standard' PostScript<tm>
1941 fonts resident in printers may need to be made accessible for use with
1942 xdvi, unless your system administrator or TeX distribution has already
1943 done so (which is the case e.g. for current TeX Live systems). For the
1944 35 PostScript<tm> resident fonts, xdvik will search using the Fontmap
1945 provided with Ghostscript, if necessary. Also, the xdvik distribution
1946 comes with a utility called t1mapper to make these fonts available for
1947 xdvi; see the manual page for t1mapper(1) for usage details. This pro‐
1948 gram is likely to be dropped in the future, however, since it is proba‐
1949 bly not needed anymore.
1950
1952 Any of the specials used by xdvi may be preceded by the characters
1953 ``xdvi:''. Doing so does not change the behavior of the special under
1954 xdvi, but it tells other dvi drivers (such as e.g. dvips) to ignore the
1955 special.
1956
1958 Some TeX implementations or macro packages provide the facility to au‐
1959 tomatically include so-called `source specials' into a DVI file. These
1960 contain the line number, eventually a column number, and the filename
1961 of the .tex source. This makes it possible to jump from a .dvi file to
1962 the corresponding place in the .tex source and vice versa (also called
1963 `inverse search' - jumping from the DVI file to the TeX file is also
1964 known as `reverse search', and jumping from the TeX file to the DVI
1965 file as `forward search').
1966
1967 To be usable with xdvi, source specials in the dvi file must have one
1968 of the following formats:
1969
1970 src:line[ ]filename
1971 src:line:col[ ]filename
1972 src:line
1973 src:line:col
1974 src::col
1975
1976 If filename or line are omitted, the most recent values are used. The
1977 first source special on each page must be in one of the first two
1978 forms, since defaults are not inherited across pages.
1979
1980 You will need a TeX implementation that provides an appropriate switch
1981 (e.g. -src) or a macro package (such as srcltx.sty or srctex.sty,
1982 available from CTAN:macros/latex/contrib/supported/srcltx/) to insert
1983 such source specials into the DVI file.
1984
1985 For reverse search, the combination Ctrl-Mouse 1 will make xdvi open an
1986 editor (the value of the -editor command line option) with the file and
1987 the line number of the .tex source. See the description of the -editor
1988 option for more information and example settings.
1989
1990 For forward search, xdvi has a -sourceposition option that makes xdvi
1991 jump to the page in the DVI file corresponding to the given line (or
1992 the closest line having a source special) of the specified file and
1993 highlight the found region. See the description of the -sourceposition
1994 option for more details.
1995
1996 More information on setting up various editors for use with source spe‐
1997 cials can be found at:
1998
1999 http://xdvi.sourceforge.net/inverse-search.html
2000
2001
2003 xdvi accepts specials to set the paper size for the document. These
2004 specials should be of the form
2005
2006 papersize=[*]width,height
2007
2008
2009 where width and height give the width and height of the paper, respec‐
2010 tively. Each of these should appear in the form of a decimal number
2011 followed by any of the two-letter abbreviations for units accepted by
2012 TeX (pt, pc, in, bp, cm, mm, dd, cc, or sp). If an asterisk (*) ap‐
2013 pears just before the width, then the measurements refer to the docu‐
2014 ment dimensions (e.g. pt as opposed to truept). This allows a macro
2015 package to vary the page size according to elements of the document;
2016 e.g.
2017
2018 \special{xdvi: papersize=*\number\wd\mybox sp,
2019 \number\ht\mybox sp}
2020
2021
2022 Except for the asterisk, this format is compatible with dvips.
2023
2024 The last papersize special on a page determines the size of that page.
2025 If there is no such special on a given page, the most recent papersize
2026 is used, or, if there are no papersize specials on any preceding page,
2027 then the value of the paper resource (or -paper option on the command
2028 line) is used. Thus the paper size may vary for different pages of the
2029 dvi file.
2030
2031 If the paper resource (or -paper command-line option) begins with a
2032 plus sign (`+'), then all papersize specials in the dvi file are ig‐
2033 nored.
2034
2036 The color specials supported by xdvi are the same as those supported by
2037 dvips, except that the literal PostScript color specification (as in
2038 the AggiePattern example in the dvips documentation) is not supported.
2039 There are also some restrictions due to the way xdvi's drawing rou‐
2040 tines are implemented; e.g. the \colorbox and \fcolorbox macros don't
2041 work with xdvi. See the section LIMITATIONS below for more information
2042 on these restrictions. Xdvi supports the same list of named colors as
2043 dvips does, namely:
2044
2045 Apricot, Aquamarine, Bittersweet, Black, Blue, BlueGreen, BlueViolet,
2046 BrickRed, Brown, BurntOrange, CadetBlue, CarnationPink, Cerulean, Corn‐
2047 flowerBlue, Cyan, Dandelion, DarkOrchid, Emerald, ForestGreen, Fuchsia,
2048 Goldenrod, Gray, Green, GreenYellow, JungleGreen, Lavender, LimeGreen,
2049 Magenta, Mahogany, Maroon, Melon, MidnightBlue, Mulberry, NavyBlue,
2050 OliveGreen, Orange, OrangeRed, Orchid, Peach, Periwinkle, PineGreen,
2051 Plum, ProcessBlue, Purple, RawSienna, Red, RedOrange, RedViolet, Rho‐
2052 damine, RoyalBlue, RoyalPurple, RubineRed, Salmon, SeaGreen, Sepia,
2053 SkyBlue, SpringGreen, Tan, TealBlue, Thistle, Turquoise, Violet, Viole‐
2054 tRed, White, WildStrawberry, Yellow, YellowGreen, YellowOrange.
2055
2056 Note that these names are case sensitive.
2057
2058 The documentation of the LaTeX color package provides more details on
2059 how to use such specials with LaTeX; see the dvips documentation for a
2060 detailed description of the syntax and semantics of the color specials.
2061
2063 When xdvi receives a SIGUSR1 signal, it rereads the dvi file.
2064
2066 Xdvik uses the same environment variables and algorithms for searching
2067 for font files as TeX and friends. See the documentation for the
2068 Kpathsea library, kpathsea.dvi, for a detailed description of these.
2069
2070 In addition, xdvik accepts the following variables:
2071
2072 DISPLAY
2073 Specifies which graphics display terminal to use.
2074
2075 KPATHSEA_DEBUG
2076 Trace Kpathsea lookups; set it to -1 (= all bits on) for com‐
2077 plete tracing.
2078
2079 EXTENSIONMAPS
2080 A list of files to be searched for mime types entries (as for
2081 Acrobat Reader). Earlier entries in one of these files override
2082 later ones. If this variable is not set, the following default
2083 path is used:
2084
2085 $HOME/.mime.types:/etc/mime.types:\
2086 /usr/etc/mime.types:/usr/local/etc/mime.types
2087
2088
2089
2090 MAILCAPS
2091 A list of files to be searched for mailcap entries, as defined
2092 by RFC 1343. See this RFC or the mailcap(4) manual page for a
2093 detailed description of the mailcap file format. Currently, on‐
2094 ly the following mailcap features are supported:
2095
2096 test=command
2097 The entry is only used if command can be executed via the
2098 system() call and if the system() call returns with value
2099 0 (success). The command string may contain the format
2100 string %s, which will be replaced by the file name.
2101
2102 needsterminal
2103 If this flag is used, the command will be executed in a
2104 new xterm window by prepending ``xterm -e '' to the com‐
2105 mand string.
2106
2107 All other fields in the mailcap entry are ignored by xdvi. Ear‐
2108 lier entries in one of these files override later ones. If the
2109 variable is not defined, the following default path is used:
2110
2111 $HOME/.mailcap:/etc/mailcap:/usr/etc/mailcap:\
2112 /usr/local/etc/mailcap
2113
2114 For security reasons, some special characters (i.e. ( ) ` \ ;)
2115 are escaped in the argument before passing it to system().
2116
2117 BROWSER
2118 Determines the web browser used to open external links (i.e. all
2119 URLs that don't start with the `file:' scheme and are not rela‐
2120 tive links in the local DVI file), and to open links for which
2121 no viewer has been specified in the mailcap files. The value of
2122 this variable is a colon-separated list of commands. Xdvi will
2123 try each of them in sequence until one succeeds (i.e. doesn't
2124 immediately return with status 0). This allows you to specify
2125 your favourite browser at the beginning, and fallback browsers
2126 at the end. Every occurrence of %s in the string is replaced by
2127 the target URL; every occurrence of %% is replaced by a single
2128 %. If no %s is present, the URL string is added as an extra ar‐
2129 gument.
2130 An example setting is:
2131
2132 netscape -raise -remote 'openURL(%s,new-window)':xterm -e lynx
2133 %s:xterm -e wget %s:lynx %s:wget %s
2134
2135 See
2136
2137 http://www.catb.org/~esr/BROWSER/
2138
2139 for more details on the BROWSER environment variable.
2140
2141 GS_LIB A colon-separated list of directories to search for Fontmap
2142 files, etc., as used for Ghostscript. It has the same meaning
2143 as it does when running Ghostscript. In xdvik, it is used when
2144 searching for font files when the map file does not give a file
2145 name for the font (this should be quite rare). The command gs
2146 -h will list the default value that Ghostscript uses. See also
2147 the XDVI_GS_LIB environment variable (below).
2148
2149 XDVI_GS_LIB
2150 This has the same effect as GS_LIB but affects only xdvi. Use
2151 this when you want to use a different value for GS_LIB when run‐
2152 ning xdvi, but use either the compiled-in default value or some
2153 other value when running Ghostscript. If both GS_LIB and XD‐
2154 VI_GS_LIB are set, then xdvi uses XDVI_GS_LIB. To use the de‐
2155 fault value compiled in to xdvi while still retaining the abili‐
2156 ty to set GS_LIB for use with Ghostscript, you can set XD‐
2157 VI_GS_LIB to the empty string.
2158
2159 TMPDIR The directory to use for storing temporary files created when
2160 uncompressing PostScript files.
2161
2162 XEDITOR
2163 Determines the editor command used for source special `reverse
2164 search', if neither the -editor command-line option nor the .ed‐
2165 itor resource are specified. See the description of the -ed‐
2166 itor command line option for details on the format.
2167
2168 VISUAL Determines an editor to be opened in an xterm window if neither
2169 of -editor, .editor, or XEDITOR is specified.
2170
2171 EDITOR Determines an editor to be opened in an xterm window if neither
2172 of -editor, .editor, XEDITOR or VISUAL is specified.
2173
2174 WWWBROWSER
2175 Obsolete; use BROWSER instead.
2176
2178 xdvi accepts many but not all types of PostScript specials accepted by
2179 dvips. For example, it accepts most specials generated by epsf and ps‐
2180 fig. It does not, however, support bop-hook or eop-hook, nor does it
2181 allow PostScript commands to affect the rendering of things that are
2182 not PostScript (for example, the ``NEAT'' and rotated ``A'' examples in
2183 the dvips manual). These restrictions are due to the design of xdvi;
2184 in all likelihood they will always remain.
2185
2186 LaTeX2e rotation specials are currently not supported.
2187
2188 MetaPost files containing included text are not supported.
2189
2190 Xdvi's color handling doesn't support the \colorbox and \fcolorbox
2191 macros; this is not likely to change in the near future. This also
2192 means that e.g. colored tables (as created by the colortbl package)
2193 may render incorrectly: Text in colors different from the default fore‐
2194 ground color may not be displayed. When the page is redrawn (e.g. after
2195 using the magnifier), the background color of the cells may overdraw
2196 the text.
2197
2199 $HOME/.xdvirc
2200 A file that holds all settings that the user changed via the
2201 keys, the `Options' and the Xaw `Modes' menu and the dialogs, as
2202 X resources. These resources override the settings in
2203 $HOME/.Xdefaults. This file is ignored if the -q option is used
2204 or the noInitFile X resource is set.
2205
2206 config.xdvi
2207 An optional configuration file for the Type 1 font setup, which
2208 specifies dvips-style map files specific to xdvik. If used, it
2209 should be present in the directory determined by the TEXCONFIG
2210 environment variable. Its format is similar to configuration
2211 files for dvips, except that it is only scanned for the names of
2212 map files (p and p+ directives).
2213
2215 X(1), dvips(1), mktexpk(1), ps2pk(1), gsftopk(1), t1mapper(1), mail‐
2216 cap(4), the Kpathsea documentation, https://ctan.org/pkg/xdvi/, and the
2217 Xdvik home page at http://xdvi.sourceforge.net/.
2218
2220 Eric Cooper, CMU, did a version for direct output to a QVSS. Modified
2221 for X by Bob Scheifler, MIT Laboratory for Computer Science. Modified
2222 for X11 by Mark Eichin, MIT SIPB. Additional enhancements by many oth‐
2223 ers.
2224
2225 The current maintainer of the original xdvi is Paul Vojta, U.C. Berke‐
2226 ley.
2227
2228 Code for the xdvik variant has been contributed by many people, whose
2229 names are scattered across the source files.
2230
2231 For the most up-to-date information, please visit:
2232
2233 http://xdvi.sourceforge.net
2234
2235 Please report all bugs to the SourceForge bug tracker:
2236
2237 http://sourceforge.net/tracker/?func=add&group_id=23164&atid=377580
2238
2239Xdvik 22.87.06 2022-02-17 XDVI(1)