[comp.text] TeXhax Digest V88 #79

TeXhax@Score.Stanford.EDU (TeXhax Digest) (09/19/88)

TeXhax Digest   Monday, September 19, 1988   Volume 88 : Issue 79

Moderator: Malcolm Brown

Today's Topics:

                     Immoderate notes/we're back!
                      refer to BiBTeX conversion
               Re: The best way to do pictures in TeX.
        Re: Danish letters in LaTeX headings (TeXhax V88 #77)
                  METAFONT change #536 and fillin=0
                             TeX mystery
            Font Quest (repeat submission, mailer is iffy)
                  Chemical Formulae macros (repeat)
            Some \catcode changing macros should be \outer
                          Olde English fonts
                        PC-Hercules Previewer.
             The LN03A fonts strike again...(not enough)
                        LaTeX Style Questions
                              DosTeX bug
                         Re: date in letters
                a verbatim mode for computer programs
                            GFTOPK for VMS

----------------------------------------------------------------------

From: Malcolm
Date: 19 Sept 88
Subject: Immoderate notes/we're back!

%%% If you're reading this, no doubt you've deduced that TeXhax is
%%% back on the air.  I regret the long delay, but I was attending
%%% the Seybold conference most of last week, causing me to neglect
%%% TeXhax to some extent.  But I've caught up on all the subscription
%%% requests and the like, so let's hope we're up and running (famous
%%% last words...)
%%%   I originally mailed digest 79 before the pause, and was dismayed
%%% to return only to find that the mailing had bombed.  Accordingly, I'm
%%% sending this out once more, since the majority of the TeXhax
%%% readership apparently did NOT receive it.  My apologies to those
%%% for whom this is a duplication!
%%%                                       Malcolm

------------------------------

From: Peter King <pjbk%cs.heriot-watt.ac.uk@NSS.Cs.Ucl.AC.UK>
Date: Fri, 26 Aug 88 14:46:57 BST
Subject: refer to BiBTeX conversion

I have written a shell script (using both sed and awk) which
will convert refer (or bib) databases to BiBTeX format.  The program
r2bib on the UNIX tape does a similar job, but I belive my script
is more useful because it
		a) does a better job of generating keys
		b) converts accents and (some) troff special characters
		c) is readily customisable (if you know awk)
		d) does a slightly better job of classification
                   of type of reference.

It's probably too long (c. 850 lines) to include in the mailshot,
but here it is for archiving.  I have sent Pierre MacKay a copy.
The manual page was adapted from the r2bib manual page.

Peter King
Peter King, Computer Science Department	JANET:	pjbk@uk.ac.hw.cs
  Heriot-Watt University		ARPA:	pjbk@cs.hw.ac.uk
  79 Grassmarket, Edinburgh EH1 2HJ	or	pjbk%cs.hw.ac.uk@ucl-cs
Phone: (+44) 31 225 6465 Ext. 555	UUCP:	..!ukc!cs.hw.ac.uk!pjbk

%%% Peter's file is indeed too large.  It can be FTP'ed from the machine
%%% "score.stanford.edu" by GETting the file 
%%%  <tex.texhax>king.txh
%%% A copy has been forwarded to TEX-L for the folks on BITNET.  Malcolm

------------------------------

Date: Thu, 25 Aug 88 16:01:51 +0200
From: mcvax!iesd!fj@uunet.UU.NET (Frank Jensen)
Subject: Re: The best way to do pictures in TeX.

In TeXhax Digest V88 #73, William LeFebvre wrote the following about
doing pictures in TeX:

>	The solution?  Use MetaFont, of course.

I agree, I do the same!  He continues:

> Only three problems need to be solved:
>
>	1) make metafont tile an image, producing many characters for
>	   one image
>	2) positioning text correctly in the image (I have some ideas
>	   for this, too)
>	3) deal with widely differing printer resolutions gracefully.

I will now describe how I deal with these "problems":

1) The reason William LeFebvre gave for tiling an image was the upper
   limit on character sizes imposed by MF.  I don't see this as a
   problem because I am normally working with pictures that should fit
   on an A4 page (approximately the same size as the US 11x8 inches
   format), and this is easily managed by MF.  (If you have to make
   *very* *huge* posters, you can tile the image maually, as you will
   probably not do it very often.)

2) I am using LaTeX (more or less); this implies that I can use the
   picture environment in my documents.  Here is an outline of the
   procedure that I follow when making pictures:

	a) Define the picture (in file figures.mf, say) in the MF language:

		input definitions;   % Macro, pen, etc. definitions.
		...
		charbegin (77, 100pt#, 50pt#, 50pt#); "Figure x, Paper y";
		   ...   % Definition of the figure.
		endchar;

	b) Run MF to generate the figures:

		mf "\mode=localfont; input figures"

	   Notice the use of `localfont' here: don't use proof mode!
	   (If you're using special fonts for previewing, use the
	    appropriate mode to generate those fonts.)

	c) In your document file (Paper.tex, e.g.) do the following:

		...   % The usual \documentstyle, etc. stuff.
		\font\figures = figures
		...
		\begin{figure}[htp]
		   \unitlength 10pt
		   \begin{center}
		      \begin{picture}(10,10)
			 \put(0,5){\figures\char77}
		      \end{picture}
		   \end{center}
		   \caption{...}
		\end{figure}
		...

	   Notice that the positioning is easy once you know where the
	   reference point of your figure (MF character) is!

3) See above how the mode choice automatically deals with the resolution.

I have (together with other people in our department) used this method
for preparing many of the figures in a book about graph theory to be
published later this year, so the above is a well-tested method!

There might, however, be problems when you want to *print* your
document.  Some printer drivers assume that font members are small
characters and tries to store them in special memory; this will in
certain cases cause problems, but I think this is a deficiency on the
printer drivers side, not a fault in the above described method!


Any comments?  Any other suggestions?


Frank Jensen,  fj@iesd.dk, {...}!mcvax!dkuug!iesd.dk!fj
Department of Mathematics and Computer Science
Aalborg University
DENMARK

------------------------------

Date:  Sat, 27 Aug 88 18:45:55 +0200
From: mcvax!diku.dk!seindal@uunet.UU.NET (Rene' Seindal)
Subject: Re: Danish letters in LaTeX headings (TeXhax V88 #77)

> When LaTeX makes headings, it converts the titles of the \section s
> into caps as default.
>   This works well until Danish characters are used. To solve the
> problem, we tried the following TeX-commands:

> \uccode`\~~Z=`\~~] % \ae
> \uccode`\~~]=`\~~] % \AE
> \uccode`\~~\=`\~~_ % \o
> \uccode`\~~_=`\~~_ % \O

> but it did not give any result! - And there were no error
> messages. Surprisingly, the last Scandinavian character \AA  \aa did
> not give any problems!

At DIKU we use another convention.  We use @ as a secondary escape character
and type @a, @e and @o for \aa, \ae and \o resp.  The definitions follow
below.  They work well with \uppercase and \lowercase, and more important,
they are safe in moving arguments.

If you don't like the input style, it should not be that hard to transform it
into something else.  Maybe even redefine \aa, \o etc...

The file functions as a LaTeX documentstyle option (called DK here).  Beware
that it changes the category code of @, so it must be the last option listed.
Otherwise LaTeX bombs out when processing the following options.

----------------------------------------------------------------------
%% DK.sty
\def\makeatactive{\catcode`@=\active}
\let\makeatother=\makeatactive

\let\AT=@  % category 11 (letter) (for use in tabular)
\let\@dkA=\AA
\let\@dkE=\AE \catcode'035=11\uccode'035='035\lccode'035='032
\let\@dkO=\O \catcode'037=11\uccode'037='037\lccode'037='034
\let\@dka=\aa
\let\@dke=\ae \catcode'032=11\uccode'032='032\lccode'032='035
\let\@dko=\o \catcode'034=11\uccode'034='034\lccode'034='037
\def\@dkAT#1{@}

\def\@dkcall#1{\csname @dk#1\endcsname}

\newtoks\@aterrhelp
\@aterrhelp{This @ was not followed by an A, E, O, a, e, o or @ as it
should be.}
\def\@ATerr{\errhelp=\@aterrhelp\errmessage{Illegal character after @}}

\def\@AT{\futurelet\next\d@AT}
\def\pAT{\protect\@AT}
\def\d@AT{%
  \if A\next \let\next=\@dkcall \else
  \if E\next \let\next=\@dkcall \else
  \if O\next \let\next=\@dkcall \else
  \if a\next \let\next=\@dkcall \else
  \if e\next \let\next=\@dkcall \else
  \if o\next \let\next=\@dkcall \else
  \ifx \next\pAT \let\next=\@dkAT  \else
  \ifx \next\@AT \let\next=\@dkAT  \else
  \let\next=\@ATerr 
  \fi\fi\fi\fi\fi\fi\fi\fi
  \next}

\typeout{Skifter til dansk inddata format.}

% taken from lplain.tex

% Here is a list of the characters that have been specially catcoded:
\def\dospecials{\do\ \do\\\do\{\do\}\do\$\do\&%
  \do\#\do\^\do\^^K\do\_\do\^^A\do\%\do\~\do\@}
% (not counting ascii null, tab, linefeed, formfeed, return, delete)
% Each symbol in the list is preceded by \do, which can be defined
% if you want to do something to every item in the list.

% taken from latex.tex

\def\@sanitize{\@makeother\ \@makeother\\\@makeother\$\@makeother\&%
\@makeother\#\@makeother\^\@makeother\^^K\@makeother\_\@makeother\^^A%
\@makeother\%\@makeother\~\@makeother\@}

\makeatactive
\let @=\pAT
----------------------------------------------------------------------

Rene' Seindal, DIKU, U. of Copenhagen, Denmark. (seindal@diku.dk)

------------------------------

Date: Sun, 28 Aug 88 03:50:54 BST
From: CET1%phoenix.cambridge.ac.uk@NSS.Cs.Ucl.AC.UK
Subject: METAFONT change #536 and fillin=0

In TeXhax 1987.84 I said, talking about MF change #536:
> ... for a mode with fillin=0, ... change #536 ... has no effect.

In case anyone else is under this misapprehension: it's completely
wrong! My reading of the code must have been pretty sloppy to come to
this conclusion. In fact, the order of magnitude of the effects are just
as large in the case of fillin=0.

I realised this as a result of the awnser to exercise 16.2 in the MFbook
changing from 66615.5/65536 = 1.016472- to 69507.5/65536 = 1.060600+
(as is described in the errata list published in TUGboat). The latter
is a much better approximation to the "true" value of 0.75*sqrt(2) =
1.060660+, so it's nice to see that change #536 really does fix a bug!
(Well, it would, wouldn't it?)

Chris Thompson
JANET: cet1@uk.ac.cam.phx
ARPA:  cet1%phx.cam.ac.uk@nss.cs.ucl.ac.uk

------------------------------

Date: Sun, 28 Aug 88 14:44 EDT
From: Robert Messer <RAM%ALBION.BITNET@Forsythe.Stanford.EDU>
Subject: TeX mystery

In the table generated by

\halign{&#\cr
\noalign{\hrule}
a&b\cr
c&\span\cr}

why does the \span cause the \hrule to extend over only the first column?

The output resembles     -      rather than     --
                         ab                     ab
                         c                      c

Robert Messer
Department of Mathematics
Albion College
Albion, MI 49224
RAM@ALBION.BITNET

------------------------------

Date:     Sun, 28 Aug 88 16:12 CDT
From: <JEPTEX%TAMVENUS.BITNET@Forsythe.Stanford.EDU> (J E PITTMAN)
Subject:  Font Quest (repeat submission, mailer is iffy)

Does anyone have the fonts cmsl7, cmsy12, cmex12, msxm12, and/or msym12?

I would greatly appreciate it if you could send the parameter file(s) to
JEPTEX@TAMVENUS (bitnet).  :-?

------------------------------

Date:     Sun, 28 Aug 88 16:13 CDT
From: <JEPTEX%TAMVENUS.BITNET@Forsythe.Stanford.EDU> (J E PITTMAN)
Subject:  Chemical Formulae macros (repeat)

A few weeks ago, I sent in a request for help in typesetting chemical formulae,
terms, and expressions.  Enclosed are the macros that I have constructed from
the replies I received (thanks everybody).  Basically, a chemical formula is
composed of groups (), isotopes, ions, and multiples of single items.  The
macros are \moiety{item}{charge}{multiplier}, \group{subformula}, and
\isotope{mass number}{atomic number}symbol.  There is also a \bracketgroup
macro which works like \group, except that it uses brackets.  Organic chemists
often label atoms, thus the \label{number}{symbol} macro is included.

Since the macro specification for a single substance can be very `messy', I
have also written the macros \formuladef{name}{mess} and \formala{name}, which
provide a convienent method for creating and using a chemical formula data
base.  Because of TeX's hyphenation rules, I have also written the macros
\termdef{name}{mess} and \term{name}, which work like \formuladef and \formula
and provide a convienent method of inserting discretionary hyphens.

TeX does not have the graphics abilities that are necessary to make benzene
rings and similiar structural diagrams practical, however, structural diagrams
composed of vertical and horizontal lines are quite practical.  The macros for
such diagrams are \bond1, \bond2, and \bond3 for 1, 2, or 3 horizontal lines
and \bondabove and \bondbelow, both of which have the parameter set:  {number
of bond lines} {text that the bond is to be placed above or below} {left text}
{center text} {right text}.  The left, center, and right text is placed above
(or below) the bond lines.

The enclosed example should make this a bit clearer.

Sincerely,

John Pittman
JEPTEX@TAMVENUS (bitnet)

% ---------------------- macros ---------------------
%
\def\moiety#1#2#3{\relax
   \begingroup
      #1%
      \nobreak
      \setbox0=\hbox{X#1}%
      \setbox1=\hbox{$\bigl($}%
      \ifdim\ht0>\ht1
         \hskip -0.3ex
      \fi
      \vtop \bgroup
         \vbox \bgroup
            \setbox1=\hbox{$\scriptscriptstyle\vphantom{(}#2$}%
            \copy1
            \vskip -2\dp1
            \vskip \ht0
            \egroup
         \nointerlineskip
         \vbox \bgroup
            \setbox1=\hbox{$\scriptscriptstyle\vphantom{(}#3$}%
            \vskip \dp0
            \vskip -2\dp1
            \box1
            \egroup
         \egroup
      \-%
      \endgroup
   }%
%
\def\isotope#1#2{\relax
   \leavevmode
   \begingroup
      \setbox0=\vbox \bgroup
         \hbox{$\scriptscriptstyle\vphantom{(}#1$}%
         \hbox{$\scriptscriptstyle\vphantom{(}#2$}%
         \egroup
      \setbox1=\hbox{X}%
      \vtop \bgroup
         \vbox \bgroup
            \setbox2=\hbox to \wd0 \bgroup
               \hfil
               $%
                  \scriptscriptstyle
                  \vphantom{(}%
                  #1%
                  $%
               \egroup
            \copy2
            \vskip -2\dp2
            \vskip \ht1
            \egroup
         \nointerlineskip
         \vbox \bgroup
            \setbox2=\hbox to \wd0 \bgroup
               \hfil
               $%
                  \scriptscriptstyle
                  \vphantom{(}%
                  #2%
                  $%
               \egroup
            \vskip \dp1
            \vskip -2\dp2
            \box2
            \egroup
         \egroup
      \endgroup
   \nobreak
   }%
%
\def\group#1{\relax
   \begingroup
      \setbox0=\hbox{#1}%
      $%
         \left(%
         \vrule width -0.4ex height 1.05\ht0 depth 1.05\dp0
         \right.%
         $%
      #1%
      \nobreak
      $%
         \left.%
         \vrule width -0.4ex height 1.05\ht0 depth 1.05\dp0
         \right)%
         $%
      \-%
      \endgroup
   }%
%
\def\bracketgroup#1{\relax
   \begingroup
      \setbox0=\hbox{#1}%
      $%
         \left[%
         \vrule width -0.4ex height 1.05\ht0 depth 1.05\dp0
         \right.%
         $%
      #1%
      \nobreak
      $%
         \left.%
         \vrule width -0.4ex height 1.05\ht0 depth 1.05\dp0
         \right]
         $%
      \-%
      \endgroup
   }%
%
\def\label#1#2{\relax
   \leavevmode
   \begingroup
      \setbox0=\vbox{\hbox{#1}\hbox{#2}}%
      \vbox \bgroup
         \hbox to \wd0{\hfil$\scriptscriptstyle\vphantom{(}#1$\hfil}%
         \nointerlineskip
         \hbox to \wd0{\hfil\vphantom{(}#2\hfil}%
         \egroup
      \endgroup
   }%
%
\def\circa{$\sim$}%
%
\def\bondbelow#1#2#3#4#5{\relax
   \vtop \bgroup
      \setbox0=\hbox{#2}%
      \copy0
      \nointerlineskip
      \kern 0.1em
      \hbox to \wd0 \bgroup
         \hfil
         \ifcase#1
         \or
            \vrule height 1em depth 0pt width 0.05em
         \or
            \vrule height 1em depth 0pt width 0.05em
            \hskip 0.1em
            \vrule height 1em depth 0pt width 0.05em
         \or
            \vrule height 1em depth 0pt width 0.05em
            \hskip 0.1em
            \vrule height 1em depth 0pt width 0.05em
            \hskip 0.1em
            \vrule height 1em depth 0pt width 0.05em
         \fi
         \hfil
         \egroup
      \nointerlineskip
      \hbox to \wd0 \bgroup
         \hss
         \hbox to 0pt \bgroup
            \hss
            #3%
            \egroup
         \hbox{#4}%
         \hbox to 0pt \bgroup
            #5%
            \hss
            \egroup
         \hss
         \egroup
      \egroup
   }%
%
\def\bondabove#1#2#3#4#5{\relax
   \vbox \bgroup
      \setbox0=\hbox{#2}%
      \hbox to \wd0 \bgroup
         \hss
         \hbox to 0pt \bgroup
            \hss
            #3%
            \egroup
         \hbox{#4}%
         \hbox to 0pt \bgroup
            #5%
            \hss
            \egroup
         \hss
         \egroup
      \nointerlineskip
      \hbox to \wd0 \bgroup
         \hfil
         \ifcase#1
         \or
            \vrule height 1em depth 0pt width 0.05em
         \or
            \vrule height 1em depth 0pt width 0.05em
            \hskip 0.1em
            \vrule height 1em depth 0pt width 0.05em
         \or
            \vrule height 1em depth 0pt width 0.05em
            \hskip 0.1em
            \vrule height 1em depth 0pt width 0.05em
            \hskip 0.1em
            \vrule height 1em depth 0pt width 0.05em
         \fi
         \hfil
         \egroup
      \nointerlineskip
      \kern 0.1em
      \copy0
      \egroup
   }%
%
\def\bond#1{\relax
   \hbox \bgroup
      \kern 0.1em
      \setbox0=\hbox{X}%
      \vbox to \ht0 \bgroup
         \vss
         \ifcase#1
         \or
            \hrule width 1em depth 0pt height 0.05em
         \or
            \hrule width 1em depth 0pt height 0.05em
            \vskip 0.1em
            \hrule width 1em depth 0pt height 0.05em
         \or
            \hrule width 1em depth 0pt height 0.05em
            \vskip 0.1em
            \hrule width 1em depth 0pt height 0.05em
            \vskip 0.1em
            \hrule width 1em depth 0pt height 0.05em
         \fi
         \vss
         \egroup
      \kern 0.1em
      \egroup
   }%
%
\def\formula#1{\csname FORMULA#1\endcsname}%
%
\def\formuladef#1#2{\expandafter\def\csname FORMULA#1\endcsname{#2}}%
%
\def\term#1{\csname TERM#1\endcsname}%
%
\def\termdef#1#2{\expandafter\def\csname TERM#1\endcsname{#2}}%
%
% --------------------------- example --------------------------
%
\input macros

\isotope{3}{1}{H}\moiety{O}{2+}{3}
\isotope{17}{8}{\label{1}{C}}\moiety{\group{OH}}{}{4}
\moiety{\group{A\moiety{\group{B}}{+}{2}}}{2+}{2}

\formuladef{alcohol}{\moiety{C}{}{2}\moiety{H}{}{5}OH}

\hyphenpenalty=-1000
\hsize=2in
\rightskip=0pt plus 0.9in
\formula{alcohol}
\formula{alcohol}
\formula{alcohol}
\formula{alcohol}
\formula{alcohol}

\hsize 6.5in
\vfil\eject

\formuladef {mess}
   {\label{5}{C}H\bond3\label{4}{C}\bond1%
      \bondabove1%
         {\bondbelow1{\label{3}{C}}%
            {}{C}{\moiety{H}{}{2}\bond1\moiety{CH}{}{3}}}%
         {C\moiety{H}{}{2}\bond2}{C}{H}%
      \bond1\label{2}{C}H\bond2\label{1}{C}\moiety{H}{}{2}%
      }

\centerline{\formula{mess}}
\vskip 0.5in
\centerline{The Wonder of \TeX!}
\end

------------------------------

Date: Sun, 28 Aug 88 23:30:36 ECT
From: HANCHE%NORUNIT.BITNET@CUNYVM.CUNY.EDU
Subject: Some \catcode changing macros should be \outer

What prompts me to make this statement is Michael Barr's article on
the \chemical macro in TeXhax #76.  In this article, after stating that

    For reasons I guess I would understand if I understood TeX better, if I
    try to define \chemical#1{{\catcode`1=\active ...  #1}}, it simply
    ignores the change of category codes

he goes on to define a macro like this:

    \def\chemical{\catcode`0=\active ... \catcode`9=\active}

In order to understand what is going on, it is important to be aware
of two facts:

  - TeX tokenizes the input upon scanning the characters of the input file.
    In particular, category codes are attached to individual characters
    based on the table of catcodes at the time of reading.  The resulting
    stream of tokens is the real food of TeX, not the original characters.

This explains why the first version of \chemical does not work, for the
argument of the macro is scanned and inserted into the macro replacement
text before any commands inside the macro are executed.

  - TeX never scans the input file farther than it has to.

Thus, with the second definition, when you say {\chemical H2O}, the
\chemical macro is expanded and the catcodes are changed before "H2O" is
scanned.  That is why this definition works.

Once this much is understood, it should be clear that there are
situations where even the second definition of \chemical will not work,
because the text "H2O" is scanned while ordinary catcodes are in effect.
Here are two examples:

    \def\water{\chemical{H2O}}
    \declare{Theorem 32 (The freezing point of {\chemical H2O})}


By changing the definition of \chemical to read

    \outer\def\chemical{...}

we do not make those two examples work, but will rather take the easy
way out and make them illegal.  The following code will be legal, and
it should even work:

    {\chemical \gdef\water{H2O}}
    \declare{Theorem 32 (The freezing point of \water)}

Wow.  This turned out to be a whole little tutorial.  Hope it will save
some unsuspecting souls...

- Harald Hanche-Olsen   Division of Mathematical Sciences
                        The Norwegian Institute of Technology

------------------------------

Date: Sun, 28 Aug 88 10:24:24 PST
From: Peter Scott <PJS@grouch.JPL.NASA.GOV>
Subject: Olde English fonts

Anyone got Metafont source for Gothic/Old English fonts?

------------------------------

Date:         Mon, 29 Aug 88 10:58:02 IST
From: "Jacques J. Goldberg" <PHR00JG%TECHNION.BITNET@Forsythe.Stanford.EDU>
Subject:      PC-Hercules Previewer.

1. If what you look for is a WORKING Previewer, stop wasting your time, install
Steve Ward's Public Domain, widely available, superior, DVIEW (written for
CGA,EGA, works on VGA) along with the Public Domain etc... SIMCGA40 that makes
your Hercules for as a CGA. I use it daily. To the best of my knowledge
there isn't any approaching driver on the market, expensive included.

2. If what you want is to learn writing a Previewer, may I recommend that you
consider the PowerC compiler along with its on-line debugger, each priced 20$ ?
The debugger is incredible, required the matching compiler. You won't regret
your 40 bucks (I mean, forty).
                                             Jacques

------------------------------

Date:         Mon, 29 Aug 88 11:21:32 IST
From: "Jacques J. Goldberg" <PHR00JG%TECHNION.BITNET@Forsythe.Stanford.EDU>
Subject:      The LN03A fonts strike again...(not enough)

Users, specially of DVI2LN3 which now reads PK files and conserves disk space,
should once for all note down that the old LN03 and the LN03A have different
writing engines.
The current parameters in TuGBoat are for the LN03. Such fonts applied to
an LN03A (Ln03 Plus) are very faint.
This was discussed last week at the Montreal TuG meeting. Doug Henderson will
send me the LN03A parameters momentarily. There is an idle IBM3081 here which
is good at running big Metafont jobs. I'll make 74 CM, 7 LASY, 2 LINE, 2 CIRCL
at magsteps 0, 1/2, 1,2,3,4,5 this week as soon as I have the parameters, and
ship them on tape in VMS dump format upon request, to (hopefully) stop the
return of this eternal item of discussion.

                                                              Jacques

------------------------------

From: Z3000PA%AWITUW01.BITNET@Forsythe.Stanford.EDU
Subject: LaTeX Style Questions
Date: 22 AUG 88 14:54:45

What I Want To Do:

          I want to design a Document Style Option File REFMAN.STY
          that changes LaTeX's article or report page layout to something
          similar to the PostScript Reference Manual's style:
          - There shall be a big left margin and no right margin.
          - Section headers shall stick out into the margin (use the
            full page width).
          - Marginal notes should be used for many purposes.
          - Tables and figures should be allowed to use the full page
            width (if necessary).

My Questions:

          The basic horizontal page layout is
            <full page width> = <left margin> + <normal text width>

      1.  How do the values above correspond with the LaTeX dimensions
          \textwidth, \c@lumnwidth, \oddsidemargin, \leftmargin, etc.
          and with the Plain TeX dimensions \hsize, \hoffset,
          \leftskip, etc.? And how are these dimensions related to
          each other within LaTeX?

      2.  Which of these dimensions are used by the paragraph maker
          and can be changed between paragraphs within a page?

      3.  Which of them are used by the page output routine (including
          running heads and foots) and therefore must not be changed
          within pages?

      4.  How can I redefine \marginpar that it always uses the left
          hand margin and never the right hand one?

      5.  How can I redefine the \section etc. commands that they use
          the <full page width>? How can I switch back and forth between
          <normal text width> and <full page width> (e.g. for large
          tables)?

      6.  How can I define a \newenvironment{bigdescription} that
          acts as a zero level description environment with the item
          lables appearing in the <left margin>?

Any help is appreciated.

    --->  z3000pa@awituw01.bitnet

          Hubert Partl
          EDV-Zentrum Technical University
          Wiedner Hauptstrasse 8-10
          A-1040 WIEN (Austria)

------------------------------

Date: Mon, 29 Aug 88 10:07:31 CDT
From: beihl%cadillac.cad.mcc.com@mcc.com (Gary Beihl)
Subject: DosTeX bug

The following may be useful to DosTeX users:
There appears to be a bug in the version of DVIEPS
distributed with recent copies of DosTeX v2.7b. It
causes the PC to hang when closing the log file.  As
a workaround until this gets fixed, be sure to use the
-l option (which disables logging).

Gary Beihl (beihl@mcc.com)

------------------------------

From: Stephen Slade <slade-stephen@YALE.ARPA>
Date: Mon, 29 Aug 88 14:44:20 EDT
Subject: Re: date in letters

    When I use the LaTeX letter environment I automatically have a date
    supplied.  But the date given is always today, not the day that I
    wrote and sent the letter, so if I print out a copy of the letter
    later I get the wrong date.  I cannot locate anyplace in the manual
    that says how to over ride this (under date or letter or today or
    whatever), or even how to prevent the date from showing (so that I can
    insert my own).  So: how do I prevent dates or over ride the default?
    \date{mydate} doesn't work.  Tom Schneider toms@ncifcrf.gov


Letter uses \today to insert the date.  You may simply redefine \today
to be the date chosen.  I find the following command useful and
include it in my local letter style file.

\newcommand{\setdate}[1]{\renewcommand{\today}{#1}}

At the head of the file, I insert a \setdate{} command, e.g., 

\documentstyle{letter}
\setdate{August 29, 1988}
\begin{document}
\begin{letter}{...} ...


--Stephen Slade
  Yale AI Project

------------------------------

From: INHB%MCGILLC.BITNET@Forsythe.Stanford.EDU
Date: MON AUG 29, 1988 17.14.58
Subject: a verbatim mode for computer programs

There has been at least one recent inquiry on a simple way of inputting
formatted computer programs.  Here is simple verbatim routine that
appears to work well.  There is a minor problem with ?` and !` ligature
that is solved by the method described on page 381 of the TeXbook, if
you care.  The only notable thing is the use of the escape char (ascii
27) to end the mode.  It is shown in the listing below (which includes
an extract of a C program) as ESC (and must be changed to the actual
escape character), because it very likely won't get through E-Mail.
Note you cannot use \[, the usual synonym for escape, since \ has no
special meaning inside this routine.

{\catcode`\ =13 \global\let =\ \catcode`\~~M=13
\gdef~~M{\leavevmode\par}}
\def\program{\tt
\catcode`\~~M=13
\catcode`\ =13
\catcode`\\=12
\catcode`\{=12
\catcode`\}=12
\catcode`\_=12
\catcode`\~=12
\catcode`\&=12
\catcode`\c=12
\catcode`\#=12
\catcode`\%=12
\catcode`\$=12
\catcode`ESC=2
}
{\program
#include <stdio.h>

#define CIC86   1                    /* JC for Lattice 2.0 */
struct dta              /* DOS Disk Transfer Address table */
        {
        char fname[NAMESIZ];    /* filename and extension */
        };
           /* Added for testing: 4 backslashes  \\\\ */
main(argc, argv)
int argc;
char *argv[];
{
char *s;
/* process input options */

while(--argc > 0 && (*++argv)[0] == '-') {
                        }
                }
        }ESC

We should be back to normal $A~{B_{12}}$.

------------------------------

Date: 29 Aug 88 18:07:00 EST
From: "Michael J. Porter" <mike@vax.oit.udel.edu>
Subject: GFTOPK for VMS

Does anyone have a VMS specific change file for GFtoPK?  If you
could either mail it to me or let me know where I could FTP
it from, I would appreciate it.  Thanks in advance,

					Mike Porter

mike@vax.oit.udel.edu

------------------------------

%%%
%%% Concerning subscriptions, address changes, unsubscribing:
%%%     BITNET: send a one-line mail message to LISTSERV@TAMVM1.BITNET:
%%%         SUBSCRIBE TEX-L <your name>    % to subscribe
%%%
%%%     All others: send mail to
%%%           texhax-request@score.stanford.edu
%%%     please send a valid arpanet address!!
%%%
%%%
%%% All submissions to: texhax@score.stanford.edu
%%%
%%% Back issues available for FTPing as:
%%%          machine:      directory:  filename:
%%%   [SCORE.STANFORD.EDU]<TEX.TEXHAX>TEXHAXnn.yy
%%%      nn = issue number
%%%      yy = last two digits of current year
%%%\bye
%%%

------------------------------

End of TeXhax Digest
**************************
-------