diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /dviware/umddvi/doc |
Initial commit
Diffstat (limited to 'dviware/umddvi/doc')
-rw-r--r-- | dviware/umddvi/doc/box.tex | 30 | ||||
-rw-r--r-- | dviware/umddvi/doc/doc.tex | 82 | ||||
-rw-r--r-- | dviware/umddvi/doc/dow.tex | 32 | ||||
-rw-r--r-- | dviware/umddvi/doc/dvitodev.tex | 9 | ||||
-rw-r--r-- | dviware/umddvi/doc/dvitodvi.tex | 5 | ||||
-rw-r--r-- | dviware/umddvi/doc/figures.tex | 19 | ||||
-rw-r--r-- | dviware/umddvi/doc/install.tex | 99 | ||||
-rw-r--r-- | dviware/umddvi/doc/intro.tex | 20 | ||||
-rw-r--r-- | dviware/umddvi/doc/makefile | 36 | ||||
-rw-r--r-- | dviware/umddvi/doc/section.tex | 105 | ||||
-rw-r--r-- | dviware/umddvi/doc/texx.tex | 226 | ||||
-rw-r--r-- | dviware/umddvi/doc/verb.tex | 36 |
12 files changed, 699 insertions, 0 deletions
diff --git a/dviware/umddvi/doc/box.tex b/dviware/umddvi/doc/box.tex new file mode 100644 index 0000000000..f33c727dfb --- /dev/null +++ b/dviware/umddvi/doc/box.tex @@ -0,0 +1,30 @@ +% Fancy frames +% +% Usage: +% \fancyframebox {rule thickness} {separation from inner guy} {inner guy} +% +% \makeemptybox {width} {height} {depth} + +\newbox\FancyboxA +\newdimen\FancyboxD + +\def\makeemptybox#1#2#3{\setbox\FancyboxA=\hbox{}\wd\FancyboxA=#1\relax + \ht\FancyboxA=#2\relax \dp\FancyboxA=#3\relax \box\FancyboxA } + +\def\fancyframebox#1#2#3{% + \leavevmode + \setbox\FancyboxA=\hbox{#3}% + \dimen\FancyboxD=#1\relax + \advance\dimen\FancyboxD by #2\relax + \advance\dimen\FancyboxD by \dp\FancyboxA + \hbox{% + \lower\dimen\FancyboxD\hbox{% + \vbox{% + \hrule height #1\relax + \hbox{% + \vrule width #1\relax + \kern #2\relax + \vbox{\vskip #2\relax\box\FancyboxA\vskip #2\relax}% + \kern #2\relax + \vrule width #1\relax}% + \hrule height #1\relax}}}} diff --git a/dviware/umddvi/doc/doc.tex b/dviware/umddvi/doc/doc.tex new file mode 100644 index 0000000000..eb6fb4ce2f --- /dev/null +++ b/dviware/umddvi/doc/doc.tex @@ -0,0 +1,82 @@ +% doc.tex - documentation on the C-TeX distribution code + +% 11pt +\magnification=\magstephalf + +% Some of the information herein is duplicated in other files + +% This file itself is woefully incomplete. + +\font\titlebf=cmssbx10 scaled \magstep2 +\font\titlerm=cmr10 scaled \magstep2 +\font\smalltitlerm=cmr10 scaled \magstep1 +\font\csc=cmcsc10 +\chardef\pipe=`| \chardef\hat="5E \chardef\bs='134 \chardef\tilde="7E + +\headline={\tenrm\hfil\ifnum\pageno>0 C-\TeX\hfil\llap{\folio}\fi} +\footline={} + +\input section % sections +\input box % fancy boxes +\input dow % day of week +\input verb % verbatim text + +\def\today{\ifcase\month\or January\or February\or March\or April\or +May\or June\or July\or August\or September\or October\or November\or +December\ \number\day, \number\year} + +\def\ctex{C-\TeX} + +\parskip=.5\baselineskip plus1pt +\DoContents +\pageno=0 +\null\vskip 3cm +\centerline{\titlerm \ctex} +\vskip 1.5cm +\centerline{\smalltitlerm Chris Torek} +\vskip 1cm +\centerline{Department of Computer Science} +\centerline{University of Maryland} +\centerline{College Park, Maryland 20742} +\vskip 1cm + +\line{Revision 0 as of \DayOfWeek, \today} + +{\narrower\narrower\vskip.5\baselineskip +abstract here + +} + +\vfill\eject +\pageno=1 + +\section 1 {Introduction} +\input intro + +\section 1 {User Guide} +%\input uguide + +\esection 2 {DVI-to-Device Conversion Programs (`Drivers')} +\input dvitodev + +\section 2 {DVI-to-DVI Conversion Programs} +\input dvitodvi + +\section 1 {Administration} +\esection 2 {Installation} +\input install + +\section 2 {Updates} +\input updates + +\section 1 {Writing \ctex\ Software} +\esection 2 {The \ctex\ Library} +\input library + +\section 2 {An Overview of the Imagen Driver} +\input exdriver + +% \section 1 {anything else I may think of} + +\PrintTOC +\bye diff --git a/dviware/umddvi/doc/dow.tex b/dviware/umddvi/doc/dow.tex new file mode 100644 index 0000000000..8668247679 --- /dev/null +++ b/dviware/umddvi/doc/dow.tex @@ -0,0 +1,32 @@ +% From: minow@decvax.UUCP (Martin Minow) +% +% \DayOfWeek expands to the day of the week ("Sunday", etc.) +% +\newcount\dow +\def\DayOfWeek{\ifcase\dow Sunday\or Monday\or Tuesday\or Wednesday\or + Thursday\or Friday\or Saturday\fi} + +% +% Calculate day of the week (0=Sunday, 1=Monday, etc.), result +% into \dow. +% +{ \countdef\leap=1 % Leap year fingaler + \countdef\x=2 % Temp register + \countdef\y=3 % Another temp register +% leap = year + (month - 14)/12; + \leap=\month \advance\leap by -14 \divide\leap by 12 \advance\leap by \year +% dow = (13 * (month + 10 - (month + 10)/13*12) - 1)/5 + \dow=\month \advance\dow by 10 \y=\dow \divide\y by 13 \multiply\y by 12 + \advance\dow by -\y \multiply\dow by 13 \advance\dow by -1 \divide\dow by 5 +% dow += day + 77 + 5 * (leap % 100)/4 + \advance\dow by \day \advance\dow by 77 + \x=\leap \y=\x \divide\y by 100 \multiply\y by 100 \advance\x by -\y + \multiply \x by 5 \divide\x by 4 \advance\dow by \x +% dow += leap / 400 + \x=\leap \divide\x by 400 \advance\dow by \x +% dow -= leap / 100 * 2; +% dow = (dow % 7) + \x=\leap \divide\x by 100 \multiply\x by 2 \advance\dow by -\x + \x=\dow \divide\x by 7 \multiply\x by 7 \advance\dow by -\x + \global\dow=\dow +} diff --git a/dviware/umddvi/doc/dvitodev.tex b/dviware/umddvi/doc/dvitodev.tex new file mode 100644 index 0000000000..5618f7f2c5 --- /dev/null +++ b/dviware/umddvi/doc/dvitodev.tex @@ -0,0 +1,9 @@ +the task + +fonts, fontdesc + +maxdrift + +imagen specific stuff + +versatec specific stuff diff --git a/dviware/umddvi/doc/dvitodvi.tex b/dviware/umddvi/doc/dvitodvi.tex new file mode 100644 index 0000000000..24046503e6 --- /dev/null +++ b/dviware/umddvi/doc/dvitodvi.tex @@ -0,0 +1,5 @@ +why? + +dviselect + +dvipick? dviconcat? diff --git a/dviware/umddvi/doc/figures.tex b/dviware/umddvi/doc/figures.tex new file mode 100644 index 0000000000..103258d86a --- /dev/null +++ b/dviware/umddvi/doc/figures.tex @@ -0,0 +1,19 @@ +\newcount\fignum +\fignum=1 + +\def\beginfigure{% +% \goodbreak % dunno if I really want this yet + \midinsert + \hrule + \vskip\baselineskip +} + +\def\endfigure#1{% + \vskip\baselineskip % 1 blank line + \centerline{Figure \the\fignum: #1} % caption + \medskip + \hrule + \vskip 1.5\baselineskip % extra space after the line + \advance\fignum by1 + \endinsert +} diff --git a/dviware/umddvi/doc/install.tex b/dviware/umddvi/doc/install.tex new file mode 100644 index 0000000000..2eab2c9488 --- /dev/null +++ b/dviware/umddvi/doc/install.tex @@ -0,0 +1,99 @@ +\def\bsd{{\csc BSD}} + +Before \ctex\ can be installed, it must be configured and compiled. As +much of the configuration task as possible is deferred until after +installation, but there is a bootstrap problem here: The runtime +system must be configured to know where the runtime configuration is +to be found. In addition, some of the library routines are necessarily +system dependent. Clearly, the need for device drivers depends upon +your devices. All of these should be properly configured in advance, +though changing the configuration later is easy. + +All of the compile time configuration is intended to be performed by +the makefiles. If you run a Unix machine, or even if this is the first +and last time you will ever set up Unix software, you should be +intimiately familiar with `make'. Once you have read the supplementary +documentation on make, you are ready to peek at the Makefile in the +{\tt lib} directory. This is the most system-dependent one, so we +shall tackle it first. + +Scary, is it not? Well, whether or no, some explanation is in order. +This Makefile has the same four standard targets as every other +Makefile in the \ctex\ system: `all', `install', `clean', and +`depend'. `All' puts the subsystem into shape for installation. +`Install' copies the subsystem to its ultimate resting place. `Clean' +removes anything that is not needed to remake the subsystem. And +`depend'? This is the strangest one of all, and no doubt the scariest; +alas, it is also one you may need to adjust. It uses a feature of the +4.3\bsd\ compiler, the {\tt -M} flag, to get a list of +dependencies, and inserts this list into the Makefile. Between the +line marked `{\tt DO NOT DELETE THIS LINE}' and the end of the Makefile +you will find a full (and I do mean {\it full}) list of dependencies. +This list includes some of the standard system {\tt include} files, +such as {\tt /usr/include/machine/machparam.h}. It may well be that +your system does not {\it have} some of these files. This is not a +problem; {\tt seek.c} should still compile and run. What {\it is} a +problem is that `make' will believe it needs this file, even though (on +your machine) it does not. + +If you are lucky enough to be using a 4.3\bsd\ compiler or one with the +{\tt -M} flag, you can simply run `{\tt make depend}'. If you are on a +4.2\bsd\ system, the dependency lists are probably already correct and +can be left alone. If neither of these happy circumstances hold, a +sure-fire fix is simply to remove the {\tt /usr/include} dependencies +from the Makefile. Another option is to try, in place of the {\tt cc +-M} command, the `{\tt getdep}' shell script provided in the `{\tt +misc}' directory. + +The {\tt lib} directory Makefile exemplifies several more standard +entries. {\tt DESTDIR} controls the top level directory for +installation. Normally this is the null string: that is, files are +installed in normal binary or manual directories. Setting it to (e.g.) +`{\tt /nbsd}' would install everything in {\tt /nbsd/usr/}\dots. Two +entries {\it not} in this Makefile are {\tt BINDIR} and {\tt MANDIR}, +which set the directories for executable programs (binaries) and for +manuals. These default to {\tt /usr/local/bin} and {\tt /usr/man}. +System V sites (if any run \TeX) may need to tailor the manual +installation commands to conform to System V standards. + +This pretty well covers the standard Makefile entries. The {\tt lib} +Makefile, however, is full of non-standard entries as well. Because it +attempts to hide system dependencies from the rest of the \ctex\ code, +it is itself necessarily system dependent. There are two assembly +language files for 4.1BSD, and one `miscellaneous' file for 4.2BSD +Vaxen and Pyramids. The former are listed in the {\tt ASSRC} and {\tt +ASOBJ} macros, and the latter are listed in the {\tt MISCC} and {\tt +MISCO} macros. These must be adjusted to match your system. If you +are running some other system, you may need to write your own {\it bcopy} and +{\it bzero} routines, starting with the C versions in the {\tt misc} directory. +On System V machines, {\it memcpy} and {\it memset} may be used instead. + +BEGIN TRASH + + +When you have the makefiles correct, run `make conf' to configure +for the Imagen and/or Versatec. Then type `make' to compile +everything. If all is successful, type `make install' to install +everything. + +Versatec stuff: +-------- ----- + +The Versatec driver has page accounting built in. If compiled with +ACCOUNT_FILE defined, it will write (to ACCOUNT_FILE) a line of +the form + + tex <username> <number of pages used> + +The account file can be defined in either dev/Makefile or h/verser.h. + +There is also a definition for the device name `/dev/vp0' in +h/verser.h, although a redefinition in dev/Makefile will override +it; alternatively, if your spooling program opens the Versatec +itself, use the `-v' argument to verser2. `-v 1' implies that +the Versatec is already open as standard output, for example. + +The Imagen driver ought to work for all of the Imagen printers, +though all I've tested is the 8/300. The `iptex' shell script will +have to be adjusted for the 10/240, which needs nonzero default +margins. diff --git a/dviware/umddvi/doc/intro.tex b/dviware/umddvi/doc/intro.tex new file mode 100644 index 0000000000..cecb151e5b --- /dev/null +++ b/dviware/umddvi/doc/intro.tex @@ -0,0 +1,20 @@ +% intro.tex - introduction + +\line{\qquad \dots or, Just what {\it is} \ctex\ anyway?} + +It is perhaps necessary first to define what \ctex\ is {\it not}. +\ctex\ is not a complete rewrite of \TeX\ in C. It is a tribute to the +skill of its author Donald E.~Knuth that, despite the fact that \TeX\ +was written in a subset of {\csc pascal} that does not include even, +e.g., memory allocation, this has not yet proven necessary. + +Nor is \ctex\ a monolithic system. Rather, it is a collection of small +programs---tools---that work together to provide a large number of +operations from a small set of operators. The author believes that +this has been a problem with older \TeX ware: each program has built +into many of the same functions, but using different code that produces +different results or requires differing and sometimes incompatible +controls. This is an unnecessary complication that can be resolved by +moving those functions, either into separate programs, or into library +code that is then shared directly. This is the approach that has been +taken in \ctex. diff --git a/dviware/umddvi/doc/makefile b/dviware/umddvi/doc/makefile new file mode 100644 index 0000000000..1f00582937 --- /dev/null +++ b/dviware/umddvi/doc/makefile @@ -0,0 +1,36 @@ +# Makefile for documentation + +doc.dvi: doc.tex + tex doc.tex + +clean: + rm -f *.dvi *.log texput.* + +install: + +depend: + for i in doc; do \ + egrep "\\input" $$i.tex | egrep -v "[ ]*%" | \ + sed -e "s/\\\\input/$$i.tex:/" -e "s/%.*//" -e "s/$$/.dvi/"; \ + done | awk '{ if ($$1 != prev) { if (rec != "") print rec; \ + rec = $$0; prev = $$1; } \ + else { if (length(rec $$2) > 78) { print rec; rec = $$0; } \ + else rec = rec " " $$2 } } \ + END { print rec }' >makedep + echo '/^# DO NOT DELETE THIS LINE/+2,$$d' >eddep + echo '$$r makedep' >>eddep + echo 'w' >>eddep + cp Makefile Makefile.bak + ed - Makefile <eddep + rm eddep makedep + echo '# DEPENDENCIES MUST END AT END OF FILE' >>Makefile + echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >>Makefile + echo '# see make depend above' >>Makefile + +# DO NOT DELETE THIS LINE -- make depend uses it + +doc.tex: intro.dvi dvitodev.dvi dvitodvi.dvi install.dvi updates.dvi +doc.tex: library.dvi exdriver.dvi +# DEPENDENCIES MUST END AT END OF FILE +# IF YOU PUT STUFF HERE IT WILL GO AWAY +# see make depend above diff --git a/dviware/umddvi/doc/section.tex b/dviware/umddvi/doc/section.tex new file mode 100644 index 0000000000..f56c1ef8a1 --- /dev/null +++ b/dviware/umddvi/doc/section.tex @@ -0,0 +1,105 @@ +% for automagic equation numbering + +\newcount\LastEqNum +\LastEqNum=0 +\def\BuildEqBox#1{\hbox{{\rm\the\count1--\the#1}}} +\def\nexteqnum{{\count9=\LastEqNum\advance\count9 by1 + \BuildEqBox{\count9}}} +\def\lasteqnum{\BuildEqBox{\LastEqNum}} +\def\neweqnum{\global\advance\LastEqNum by1 \lasteqnum} +\def\namelasteq#1{\xdef#1{\BuildEqBox{\LastEqNum}}} + +% for automagic section numbering + +\newcount\sectiondepth +\newbox\sectnum +\newif\iftoc +\let\Z=\relax +\def\SP{ } + +\def\sectA{\LastEqNum=0\goodbreak} +\let\sectB=\goodbreak +\let\sectC=\goodbreak +\let\sectD=\goodbreak +\let\sectE=\goodbreak +\let\sectF=\goodbreak +\let\sectG=\goodbreak +\let\sectH=\goodbreak +\let\sectI=\goodbreak + +% Start a new section. First argument is depth (1 to 9 please!), second +% is caption. \esection is a section that has nothing above it and +% shouldn't get a \goodbreak\bigskip. + +\outer\def\section{\bigskip\SECTION} +\outer\def\esection{\nobreak\smallskip\SECTION} +\def\SECTBAD{\errmessage{Section depths should be between 1 and 9}} +\def\SECTION#1#2{% + \sectiondepth=#1 + \ifcase\sectiondepth\SectBad\or\sectA\or\sectB\or\sectC\or + \sectD\or\sectE\or\sectF\or\sectG\or\sectH\or\sectI\else + \SECTBAD\fi + \advance\count\sectiondepth by1 + \loop\advance\sectiondepth by1 % zero all lower levels + \ifnum\sectiondepth<10\count\sectiondepth=0\repeat + \sectiondepth=1 + \setbox\sectnum=\hbox{\number\count1}% + \global\def\Sectnum{\number\count1}% + \loop\ifnum\sectiondepth<#1 % Glue together each level + \advance\sectiondepth by1 + \ifnum0=\count\sectiondepth % force to 1 + \set\count\sectiondepth=1 + \fi + \setbox\sectnum=\hbox + {\unhbox\sectnum.\number\count\sectiondepth}% + \global\edef\Sectnum{\Sectnum.\number\count\sectiondepth}% + \repeat + \message{\Sectnum. #2}% + \setbox0=\hbox{\bf\copy\sectnum.\hskip1em#2}% + \def\text{\Sectnum.\SP!#2}% + \tocentry{#1}{\text}{\box0\hfil} + \ignorespaces +} + +% unnumbered section +\def\unsection#1{% + \message{#1}% + \setbox0=\hbox{\bf#1}% + \def\text{\SP!#1}% + \tocentry{0}{\text}{\box0\hfil}% + \ignorespaces +} + +% print arg 3 as a line, put arg 2 into the table of contents with +% a "level" of arg 1 +% takes care of putting box0 out as a line, and putting it into the +% table of contents if required +\def\tocentry#1#2#3{% + \line{#3}% stuff to appear in the text + \nobreak\smallskip\nobreak % now in vert mode + \iftoc{\let\the=0 % make it unexpandable + \xdef\ixout{\write\inx{\Z#1\SP!#2!\SP\the\pageno.}}\ixout + }\fi +} + +\ifx\titlefont\undefinecontrolsequence + \font\titlefont=cmssbx10 scaled\magstep2 +\fi +\newcount\Siz +\newwrite\inx +\def\DoContents{\toctrue\immediate\openout\inx=\jobname.toc} +\def\PrintTOC{\vfill\supereject\immediate\closeout\inx + \def\LeadFill{\leaders\hbox to .75em{\hss.\hss}\hfill} + \def\Z##1!##2!##3!##4.{ + \Siz=##1\count1=\Siz + \advance\Siz by 1 \multiply\Siz by \count1 + \divide\Siz by 2 \advance\Siz by -1 + \dimen0=1em\multiply\dimen0 by \Siz + \Siz=##1\advance\Siz by 1 + \dimen1=1em\multiply\dimen1 by \Siz + \line{\hskip\dimen0\hbox to\dimen1{##2\hfil}{##3}\LeadFill\hbox{##4}} + } + \centerline{\titlefont Table of Contents}\vskip .75in + \global\count0=-1 + \input\jobname.toc +} diff --git a/dviware/umddvi/doc/texx.tex b/dviware/umddvi/doc/texx.tex new file mode 100644 index 0000000000..8f739a9f63 --- /dev/null +++ b/dviware/umddvi/doc/texx.tex @@ -0,0 +1,226 @@ +\subsection{The Previewers} +texx\ is a {\em previewer} for \dvi\ files which uses the X-11 window system. +\texsun\ is a previewer for \dvi\ files which uses the SunView window system. +Both previewers allow you to +view documents on your workstation before printing them. + +Everything in the following +description applies to both \texx\ and \texsun\ unless +otherwise stated. + +\subsubsection{Painting} +When you start xdvi, a window will be created on your display +\footnote{ + The interaction for this varies with the window manager you're using + and between \texx\ and \texsun. +} +and your document will be {\em painted} in that window. +The size of the window corresponds to the size of the tallest and widest +page of your document. +If your display is wide enough, the window will have two {\em leaves}, +otherwise it will have a single {\em leaf}. +Each leaf will be painted with a page from your document. + +texx\ takes some pains to provide the most viewable document possible. +Normally, a \TeX\ document has an inch of margin added at the left and +top margin. +If reduction of this white space allows your document to be viewed +at a large size, that margin is reduced. +If you are using \texx\ or \texsun\ to preview documents you are working +on, you may find it advantageous to specify a smaller document size +to \TeX\ or \LaTeX, allowing you to preview your document at a readable size. + +\subsubsection{Shrinks} +Because most workstations do not have a screen resolution approaching that +of a laser printer, +sacrifices must be made to provide suitable fonts. + +One solution would be to generate the \TeX\ fonts at your display resolution. +This requires at least two sets of fonts, one for your printer and one +for each differing screen resolution. +Another approach is to use the high-resolution fonts for the printer +and {\em shrink} them. +This is the method used by \texx\ and \texsun, +because it reduces the number of fonts +and works with a great number of display resolutions. + +Fonts are shrunk using a {\em shrink factor}, +which is an integer in the range of 1 to 9. +As an example, with a shrink factor of 4, a 4 by 4 set of pixels +is reduced to a single pixel on your display. +The pixel is turned on if $1/\mbox{\em blackness}$ pixels in the +original sample were turned on. +Normally, {\em blackness} is $3$, which was chosen by trial \& error, +but it can be set using the {\tt -bl} option or by setting the +{\tt Blackness} option in your defaults file. + +A shrink factor of 1 is a direct view of the fonts at a normal resolution. + +There are usually two goals to previewing documents. +One is to view the {\em overall structure} of the document, e.g. +to check if tables, equations and figures appear at the right spot. +Another is to check {\em detail structure}, e.g. to check +if the spacing around an equation looks right. +The interface for \texx\ provides a {\em normal shrink} and a +{\em large shrink} view of your document. +At the normal shrink size, an entire page is visible, providing an +overall view. +At the large shrink size, details are more visible. + +\subsubsection{Differences Between \texx\ and \texsun} +When documents are being painted, the cursor icon for \texx\ changes to a +clock, indicating that you need to wait for the painting to finish. +For \texsun, the cursor changes to an hourglass. +When \texx\ is waiting for input, the cursor changes to a spraycan. +When \texsun\ is waiting for input, the cursor changes to a bulls-eye. + +Unless the \texx\ window is {\em obscured} by another window, +the image is painted directly to the display. +If the \texx\ window is {\em obscured} by another window, +the image is painted to a {\em pixmap}, which is displayed when the +page is painted. +{\em You should only obscure the \texx\ window when the cursor is +a spraycan, not when it is a clock.} +If the window is covered or obscured while it is being painted, the +final image will not be correct. +However, if you obscure the window (e.g. overlay it with a +window for editing your document) while the spray scan is present, +the window will be correctly painted when you turn pages. +\texx\ does not take advantage of resized windows. + +\texsun allows somewhat more flexibility. +Pages are painted directly to memory, and displayed when they are painted. +You can obscure the \texsun\ window at any time. +You can also enlargen the window. +While this will not change the amount of visible text for the +normal shrink size, the entire window is used to display the +large shrink size. + +\subsubsection{Moving Around} +In both \texx\ and \texsun, +you move forward in your document by hitting +the {\tt RETURN} or {\tt NEWLINE} key. +If there is a single leaf, it will be erased and painted with the next page. +If there are two leaves, the right hand page will be put on the left leaf +and the left leaf will be painted with the next page. +To move backward in your document, hit the {\tt DELETE} or {\tt BACKSPACE} key. +If you type a number before hitting a key, you move forward or backward +that number of pages. + +To move to a given page, type the number of the page and the ``{\tt g}''. +To quit \texx, type ``{\tt q}''. +To view a part of your document at the large shrink size, +point the cursor at the part you are interested in and hit any mouse button. +The spray can will change to a clock while the page is painted +at the larger size. +Since the entire page will not fit on the display at the larger size, +it is printed to memory, and the part you pointed to is displayed. +If your window has a single leaf, that leaf is overwritten with the +enlarged image. +In \texx, +if your window has two leaves, the enlarged image is painted on the +leaf not pointed to. +This allows you to see the overall structure and the detail at the same +time. +In \texsun, the entire window is always used. + +When you release the mouse button, the page which was previously displayed +on the over written leaf is restored. +If you point to another spot {\em on the same page}, the page will not +need to be recomputed. +texx\ remembers the enlarged page as long as the normal sized page +is visible, i.e. if you turn forward several pages, and then back up, +you will need to recompute the enlarged page if you want to see the +detail view. + +\subsubsection{Options} +\texx\ allows you to control the layout of the window, using either +the \texx\ command line your {\tt .XDefaults} file. +Similarly, \texsun\ allows you to control the layout of the window +using either the command line or your Sun {\tt .defaults} file. +Table \ref{table:xdvi-options} lists the available options. +Options in {\bf bold-face} apply to both \texx\ and \texsun. +Options in {\sl slant-face} apply only to \texx, +and optioned in {\it italics} apply only to \texsun. +Normally, you invoke \texx\ by simply saying {\tt xdvi yourfile}. +You invoke \texsun\ by simply saying {\tt \texsun\ yourfile}. +If ``{\tt yourfile}'' can not be found, then the suffix ``{\tt .dvi}'' +is appended. +% +\begin{table}[hbt] +\centering + \begin{tabular}{|l|c|c|p{2in}|} + \hline + XDefault & Command Line & Argument Type & Meaning \\ + \hline \hline + + {\bf ReverseVideo} & -rv + & {\em none } & Display document in reverse video \\ + + {\sl BorderWidth} & -bw + & {\em integer } & Change the width of the display border. \\ + + {\sl ForeGround} & -fg + & {\em color} & Change the foreground display color\\ + + {\sl BackGround} & -bg + & {\em color} & Change the background display color\\ + + {\sl HighLight} & -hl + & {\em color} & Change the highlight color \\ + + {\sl Border} & -bd + & {\em color} & Change the border color \\ + + {\sl Mouse} & -ms + & {\em color} & Change the mouse color \\ + + {\bf NormalShrink} & -ns + & {\em integer} & Change the shrink size for the overview display \\ + + {\bf LargeShrink} & -ls + & {\em integer} & Change the shrink size for the detail display \\ + + {\bf Blackness} & -bl + & {\em integer} & Change the blackness threshold for shrunken fonts \\ + + {\bf Leaves} & -l + & {\em integer} & Change the number of leaves uses (1 or 2) \\ + + {\bf TopMargin} & -tm + & {\em float} & Set the top margin in inches \\ + + {\bf SideMargin} & -sm + & {\em float} & Set the left side margin in inches \\ + + {\bf Dpi} & -dpi + & {\em integer} & Set the desired font resolution in dots per inch \\ + \hline + \end{tabular} +\caption{Options For \texx\ and \texsun} +\label{table:xdvi-options} +\end{table} + +\subsubsection{Remembering where you were} +Currently, this section only applies to \texsun. + +Since the normal use of \texsun\ involves the repeated viewing of a document +to fix formatting problems, +it would be nice to be able to return to the page you were viewing when +you left \texsun. + +If you define the environment variable ``{\tt TEXSUN\_STATE}'' as the name +of a file, a {\em viewing state} will be written to that file when you +exit \texsun. +The next time you start \texsun, this state will be added to your list of +command-line arguments before any other argument. +This allows you to override the saved state. +If the first argument is {\tt -new}, the saved state is ignored. + +If you choose an absolute path name for {\tt TEXSUN\_STATE}, +then you can invoke \texsun\ from a menu, but all your previewer +sessions will use the same state file. +Choosing a relative path name (e.g. ``{\tt ./.texsun-state}'') allows +you to have a state file for each different directory, but it's +difficult to convince the SunView environment to start a +tool in a given directory. diff --git a/dviware/umddvi/doc/verb.tex b/dviware/umddvi/doc/verb.tex new file mode 100644 index 0000000000..67ad6bac6f --- /dev/null +++ b/dviware/umddvi/doc/verb.tex @@ -0,0 +1,36 @@ +% From: Tim Morgan <morgan@uci-icsa> +% Produce verbatim listings of various sorts + +\def\uncatcodespecials{\def\do##1{\catcode`##1=12 } \dospecials} + +\def\setupverbatim{% + \par \tt \spaceskip=0pt % Make sure we get fixed tt spacing + \obeylines\uncatcodespecials\obeyspaces\verbatimdefs +} + +% This macro turns on verbatim mode until ?endverbatim is seen. +\def\verbatim{\begingroup \setupverbatim + \parskip=0pt plus .05\baselineskip \parindent=0pt + \catcode`\ =13 \catcode`\^^M=13 \catcode`\?=0 + \verbatimgobble} +{\catcode`\^^M=13{\catcode`\ =13\gdef\verbatimdefs{\def^^M{\ \par}\let =\ }} + \gdef\verbatimgobble#1^^M{}} + +% This defines ?endverbatim to end the group which begins with \verbatim +\let\endverbatim=\endgroup + +% Input a file in verbatim mode. Sometimes useful for including +% real-life examples into a paper. +\def\verbfile#1{\begingroup\setupverbatim + \parskip=0pt plus .05\baselineskip \parindent=0pt + \input#1 \endgroup +} + +% This is the same as the above, but it adds line numbers to each +% line of the file printed. +\newcount\lineno +\def\listing#1{\lineno=0\begingroup\setupverbatim + \parskip=0pt plus .05\baselineskip \parindent=20pt + \everypar{\advance\lineno by 1 \llap{\the\lineno\ \ }}\input#1 + \endgroup +} |