[comp.text.tex] TeXhax Digest V90 #20

TeXhax@cs.washington.edu (TeXhax Digest) (02/26/90)

TeXhax Digest    Sunday,  February 25, 1990  Volume 90 : Issue 20

Moderators: Tiina Modisett and Pierre MacKay

%%% The TeXhax digest is brought to you as a service of the TeX Users Group %%%
%%%       in cooperation with the UnixTeX distribution service at the       %%%
%%%                      University of Washington                           %%%

Today's Topics:         

                           BiBTeX and ieee.bst
                     Interletter spacing in CM Fonts
                      Online Displays in METAFONT
                        Device driver trip test
                            DVIJEP and HP II
                                dvi2lj2
                 Re: \vadjust and \aftergroup questions
                 (WANTED) Frame around figures in LaTeX
               Re: what journals accept TeX/LaTeX source?
                      Re: TeXhax Digest V90 #14
                       Bug in merge.sty, fixed

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

Date: Wed, 7 Feb 90 10:05:59 EST
From: smith%zeus@harvard.harvard.edu (Steven Smith)
Subject: BiBTeX and ieee.bst
Keywords: BiBTeX, ieee.bst

Does anyone have a version of ieee.bst that is compatible with BiBTeX
v0.99c?  Our older version (Howard Trickey's original of 9/30/85)
generates errors when we use BiBTeX (v0.99c).  Strangely, BiBTeX (v0.98i)
works just fine with the old (and only?) version of ieee.bst.

 Steven Smith
smith@sandalphon.harvard.edu

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

Date: Mon, 5 Feb 90 17:37:09 EST
From: smith%zeus@harvard.harvard.edu (Steven Smith)
Subject: Interletter spacing in CM Fonts
Keywords: fonts, CM

We recently purged the AM series fonts from our lab and encorporated
the CM fonts.  The improvement is noticeable, however several people
have noticed what seems to be an inordinate amount of space between
certain letter pairs.  We wonder if it is our DVI-to-PostScript
converter and our xdvi previewer, whose appearances agree, that
produce these effects (we use Tomas Rokicki's dvips program [v. 4.21]
and Eric Cooper's et al. xdvi program), or the fonts themselves, which
were produced with the command

cmmf "\mode=CanonCX; mag:=1; input cmXXX"

The letter pairs in question are the `U' and the `n' (as in
`University') in cmbx10 scaled\magstephalf and the `A' and the `v' (as
in `Available') in cmr10.  These words look ``off'' to us with the CM
fonts; in both cases the capitals appear to have too much space
following them, thus separating them from the word.  We tested them
against the AM series and found that these words looked more
``correct'' in the old fonts.  Strangely, `University' looks fine
using the unscaled cmbx10.

Are we just being picky or have other people noticed similar
occurrences?

Steven Smith
smith@sandalphon.harvard.edu

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

Date: Mon, 5 Feb 90 17:36:49 EST
From: smith%zeus@harvard.harvard.edu (Steven Smith)
Subject: Online Displays in METAFONT
Keywords: METAFONT, UNIX TEX

We recently installed the UNIX TeX distribution from labrea.stanford.edu
on the SUN4's in our lab.  Everything works great, but I have been
unable to coerce METAFONT to produce online DISPLAYS on X11 windows and
SUN windows.  I edited the site.h file and the makefile to include the
link libraries as follows:


site.h file:
/*
 * Metafont Window Support: More than one may be defined, as long
 * as you don't try to have X10 and X11 support in the same binary
 * (because there are conflicting routine names in the libraries).
 * If you define one or more of these windowing systems, BE SURE
 * you give an appropriate value to WLIBS in the top-level makefile.
 */
#define	SUNWIN			/* SunWindows support */
#undef	X10WIN			/* X Version 10 support */
#define	X11WIN			/* X Version 11 support */
#undef	HP2627WIN		/* HP 2627 support */
#undef	TEKTRONIXWIN		/* Tektronix 4014 support */


makefile:
# Libraries needed for X11 support
X11LIBS=-lX11

# Libraries needed for SunView support
SUNLIBS=-lsuntool -lsunwindow -lpixrect

# Modify the following line to select only the libraries you need
WLIBS=${X11LIBS} ${SUNLIBS}


Then I tried, to no avail, opening some windows using METAFONT's
openwindow command as per Chapter 23 of the METAFONTbook (i.e.,
"openwindow 0 from (0,0) to (200,200) at (50,50)" on a SPARC station).
The "drawdot (35,70); showit;" example showed nothing.  Hoping that
an automated window program would yield results, I ran the 6test.mf
program of Appendix E, again without success.

I'm not sure if my failure lies in a) my METAFONT commands, b) my
window environment, or c) my executable virmf.  I would appreciate
input from anyone who has interfaced METAFONT with X11 or SUNtools and
could give me a lead to the solution of this problem.


Steven Smith
smith@sandalphon.harvard.edu

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

Date: Mon, 5 Feb 90 16:42:49 EST
From: Karl Berry <karl@claude.umb.edu>
Subject: Device driver trip test
Keywords: dviware

One thing that can be done with virtual fonts is to create a DVI file
more or less by hand.  Therefore, a trip test for drivers could be
created.  Admittedly, it would only work for drivers that supported virtual
fonts, but it would be better than nothing.

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

Date: Mon, 05 Feb 90 16:04:12 EST
From: Jim Walker <N410109%UNIVSCVM@UWAVM.ACS.WASHINGTON.EDU>
Subject: DVIJEP and HP II
To: TeXHaX Digest <TEXHAX@cs.washington.EDU>

Is anyone successfully using Beebe's DVIJEP driver for an HP IID or
HPIIP laser printer?  I've heard it's supposed to work, but the version
I have doesn't.  The DVIJEP code in the archive at SCIENCE.UTAH.EDU
seems to be out of date; at least it disagrees with the revision
history file.  My mail to Beebe about this has gone unanswered.  In
fact, when I tried to use the address for him given in TUGboat,
Beebe@PLOT79.UTAH.EDU, the mail got bounced back from Utah saying
that PLOT79 was an unknown node.

     James W. Walker,  Department of Mathematics,
     University of South Carolina, Columbia SC 29208
     BITnet: N410109@univscvm

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

Date: Wed, 7 Feb 90 13:15:11 EST
From: dennis pixton <dennis@phyllis.math.binghamton.edu>
Subject: dvi2lj2
Keywords: dviware

	Our department recently acquired a Hewlett-Packard LaserJet II, and
I would like to use it for some of our TeX output.  So I need an appropriate
dvi driver.  Could anyone tell me where to look?

Dennis Pixton
Department of Mathematical Sciences     (607) 777-4239
SUNY-Binghamton                         dennis@math.binghamton.edu
Binghamton, NY  13901                   dpixton@bingvaxa.bitnet

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

Date: Mon, 05 Feb 90 19:18:18 CET
From: Rainer Schoepf <BK4%DHDURZ1@UWAVM.ACS.WASHINGTON.EDU>
Subject: Re: \vadjust and \aftergroup questions
Keywords: LaTeX, macro,\vadjust, \aftergroup

On Sun, 21 Jan 90 15:29:33 EST Jim Walker wrote:
>While trying to write a marginal note macro that could migrate out to
>outer vertical mode from anywhere, I ran into a couple of problems with
>\vadjust and \aftergroup.
>
>First question:  When something gets \vadjust-ed out of an \hbox,
>why does it end up in inner vertical mode when there is no \vbox in sight?
>For instance, the following example produces an infinite loop that keeps
>switching back and forth between inner vertical and inner horizontal.
>
>%%%%%%%%%%%%%%%%%%%%
>\def\showmode{%
>        \message{[}                     \ifinner \message{inner}\fi
>        \ifvmode \message{vertical}\fi  \ifhmode \message{horizontal}\fi
>        \ifmmode \message{math}\fi      \message{mode ]}%
>}
>
>\def\propagate{%
>        \def\nexti{\showmode\aftergroup\propagate}% inner vertical
>        \def\nextii{\showmode\vadjust{\propagate}}% inner horizontal
>        \ifinner
>                \ifvmode  \let\next=\nexti
>                \else     \let\next=\nextii
>                \fi
>        \else
>                \let\next=\showmode
>        \fi
>        \next
>}%
>
>\hbox{\propagate}
>%%%%%%%%%%%%%%%%%%%%

I'm not sure about this as I don't have my TeXbook at hand: doesn't
it say that the argument of \vadjust is processed in inner vertical
mode, and migrates to the enclosing vertical list afterwards?

>Second question:  Why does the following example produce a "missing \cr"
>error message?
>
>%%%%%%%%%%%%%%%%%%%%
>\def\propagate{%
>        \def\nexti{\showmode\aftergroup\propagate}%
>        \ifinner
>                \let\next=\nexti
>        \else
>                \let\next=\showmode
>        \fi
>        \next
>}
>
>\halign{#\cr\propagate\cr}

When \TeX processes the second \cr it closes the implicit group
around the alignment entry.  Then your \propagate token is re-inserted,
and the \def primitive at the begin of its expansion starts a new row.
But now there is no \cr left to end it.

Rainer Schoepf
Institut fuer Theoretische Physik
der Universitaet Heidelberg                 These are the days
Philosophenweg 16                           of miracle and wonder...
D-6900 Heidelberg
Federal Republic of Germany
Email: <BK4@DHDURZ1.BITNET>

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

Date: Mon, 5 Feb 90 15:48:40 BST
From: jjp@cs.aber.ac.uk
Subject: (WANTED) Frame around figures in LaTeX
Keywords: LaTeX, frame

This one has beaten our local gurus (or they don't want to try).
Please help.

I'm using LaTeX (I'm a fairly fluent user, but no great shakes).
I want, automatically, without individual measuring, etc, 
a frame (four thin lines in a rectangle) around all my LaTeX figures,
WHICH INCLUDES THE CAPTION (so I can't do it in the picture environment
  - or whatever - that comprises the actual illustration).

LaTeX won't let me put a \figure inside a \fbox (a \parbox), and I've
tried other silly ideas.

How can I do it ?

I'd really appreciate a solution.
Thanks for your time

jan

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

Date: Mon, 5 Feb 90 09:37 GMT
From: Dave Love <FX%nnga.daresbury.ac.uk@NSFnet-Relay.AC.UK>
Subject: Re: what journals accept TeX/LaTeX source?
Keywords: TeX, LaTeX, journals

In the physics world, the Physical Review series and the Journal of
Physics series accept TeX -- the former LaTeX, the latter a rather nasty
set of macros for plain.  Springer Verlag (Zeitschrift F\"ur Physik)
also either do or will shortly and there is a rumour that Nuclear
Physics do, although they haven't advertised the fact.

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

Date: Sun, 4 Feb 90 22:51:50 EST
From: Denys Duchier <duchier-denys@YALE.ARPA>
Subject: Re: TeXhax Digest V90 #14
Keywords: TeX, external tensor product

Allan Adler <ara@lom1.math.yale.edu> writes:
> I want to use something like \otimes but which is inside a square instead
> inside of a circle. This is common notation for external tensor product.

\newdimen\tmpdimen

%% put arg in a box, keeping same baseline
\def\justboxit#1{{\setbox0\hbox{#1}\tmpdimen\dp0
  \advance\tmpdimen 0.4pt \lower\tmpdimen %% 0.4pt is the default rule thickness
  \vbox{\hrule\hbox{\vrule\unhbox0\vrule}\hrule}}}

%% add some extra space around arg, keeping same baseline
\def\justaddborder#1#2{{\setbox0\hbox{#1}\tmpdimen\dp0
  \advance\tmpdimen #2\lower\tmpdimen
  \vbox{\kern#2\hbox{\kern#2\unhbox0\kern#2}\kern#2}}}

%% put arg in a box with some extra space around it, keeping
%% same baseline
\newdimen\boxitmargin \boxitmargin = 1pt
\def\boxit#1{\justboxit{\justaddborder{#1}{\boxitmargin}}}

%% define binary op
\def\timesquare{\mathbin{\boxit{$\times$}}}

 --Denys

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

Date: Mon, 5 Feb 90 00:02 MET
From: "Johannes L. Braams" <JL_Braams%pttrnl.nl@UWAVM.ACS.WASHINGTON.EDU>
Subject: Bug in merge.sty, fixed
Keywords: TeX, bug, merge.sty

    Hi all,

        Some time ago someone posted merge.sty to this list. It is quite
        a handy tool to send the same letters to multiple adressees.
        BUT, it has a bug. Or you might say it wasn't programmed right.
        If you use it to send letters to more than 91 addressees, you
        will notice TeX saying he runs out of input stack [size 200].
        This happens because of the way it was coded. The macro \merge
        calls \readfile, which calls \endmerge (except the first time).
        \endmerge calls \readfile again which calls \endmerge which calls
        \readfile etc. All is `well' if the loop isn't too deep but it can
        be done in a much cleaner way if the \loop...\repeat construct
        is used. This is what I have done in the new version of the file
        I include below. The way this one works is that \readfile just
        does what it's named after, it reads something from the file.
        \endmerge calls \encontents and then goes into a loop processing
        letters and calling \readfile. After each call to \readfile the
        status of the file is checked to see if something has really been
        read from the file. If this is so, the loop is continued, otherwise
        TeX can take a break because he's finished your multiple copy-letter.

        I hope this is of use to someone.
        Archive-maintainers: If you have a copy of merge.sty I would
        advise you to replace it with this one if no-one else made
        any other changes to it.

    Regards,

        Johannes Braams

PTT Research Neher Laboratorium,        P.O. box 421,
2260 AK Leidschendam,                   The Netherlands.
Phone    : +31 70 3325051               E-mail : JL_Braams@pttrnl.nl

E-mail was :
    EARN/BITnet : BRAAMS@HLSDNL5   UUCP        : hp4nl!dnlunx!johannes
    SURFnet     : DNLTS::BRAAMS    INTERnet    : BRAAMS%HLSDNL5@CUNYVM.cuny.edu
 PSS (DATAnet1) : +204 1170358::BRAAMS


\def\fileversion{V2.0}
\def\filedate{ 4 feb 1990}
\typeout{Style option `Merge' \fileversion\space<\filedate>}
% Modified by Johannes Braams (JL_Braams@pttrnl.nl)
% originally from Graeme McKinstry
% Fixed bug wich cause TeX to overflow input stack
%\typeout{Merge substyle-release 6 October 1986 by Graeme McKinstry}

\newbox\store
\long\def\contents{\global\setbox\store=\vbox\bgroup} % store the contents
\long\def\endcontents{\egroup}                        % of the letter

\def\sendaddress{test}
\def\openingtext{test}
%JB removed \iffirsttime, it is no longer needed
%
\newread\addrfile                               % allocate an input stream

\def\@openfile{\openin\addrfile=\mergef@le     % open the address file
\ifeof\addrfile                             % i. e., didn't open successfully
        \loop
                \immediate\write16{Could not open file \mergefi@le}
                \closein\addrfile                % close the input stream
                \read16 to \mergef@le            % get another filename
                \openin\addrfile=\mergef@le      % open up input stream
                \ifeof\addrfile
        \repeat       % repeat until successfully opened
\fi}

\def\merge#1{\def\mergef@le{#1 }\@openfile\readfile \contents}

%
% The next four lines are unashamedly stolen from letter.sty and are
% used to split the address line read from the merge address file into
% two parts, the name (before the first \\) and the address (the rest)
% \@@processto is used after reading to \sendaddress to split it into
% \@toname and \@toaddress which are then used when \begin{letter} is
% invoked (see below)
%
\long\def\@@processto#1{\@@xproc #1\\@@@\ifx\@toaddress\@empty
 \else \@@yproc #1@@@\fi}
\long\def\@@xproc #1\\#2@@@{\def\@toname{#1}\def\@toaddress{#2}}
\long\def\@@yproc #1\\#2@@@{\def\@toaddress{#2}}

\def\readfile{\global\read\addrfile to\sendaddress % get the address
              \expandafter\@@processto\sendaddress
              \ifeof\addrfile

              \else
                   \global\read\addrfile to \openingtext % get the
                                                         % opening line
              \fi}% JB removed the call to \endmerge here

\newbox\l@tterbox
\def\endmerge{%JB removed something here as well
     \endcontents         % end contents if it is the first time
     \loop%JB We do it with a genuine TeX-loop which uses tail-recursion,
          %   see the TeX-book pp. 217-219
          \begin{letter}{\@toname\\\@toaddress}
          \opening{\openingtext\vskip2\parskip}
          \setbox\l@tterbox=\copy\store % copy the contents
                                            % of the letter
          \unvbox\l@tterbox
          \end{letter}
          \readfile%JB try to read more and see if we succeed
          \testready\ifnotready%JB In that case continue the loop.
     \repeat}
%
%JB Now we need an extra macro to test if the file contains
%JB more info
\newif\ifnotready\notreadytrue
\def\testready{%
    \ifeof\addrfile
        \message{End of file}\global\notreadyfalse
    \fi}

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

%%% The TeXhax digest is brought to you as a service of the TeX Users Group
%%%       in cooperation with the UnixTeX distribution service at the 
%%%                      University of Washington
%%%
%%% Concerning subscriptions, address changes, unsubscribing:
%%%  BITNET: send a one-line mail message to LISTSERV@xxx
%%%          where xxx is the nearest geographical site in the
%%%          tree shown below
%%%         SUBSCRIBE TEX-L <your name>    % to subscribe
%%%      or UNSUBSCRIBE TEX-L
%%% Here is the BITNET re-distribution tree as shown in a recent
%%% REVIEW (The geography is guessed at from the subscription list)
%%%
%%%                        CLVM    TAMVM1      FINHUTC
%%%                           |    |     (Finland, UK, Scand, CERN)
%%%                           |    |           |
%%%  TeXhax ----> UWAVM ----- MARIST ----- EB0UB011 ----- BNANDP11
%%%                           |     (France,Italy,Spain)  (Belgium)
%%%                           |                |
%%%                        UBVM      HEARN --- DEARN
%%%                              (Netherlands) (Germany)
%%%
%%% Internet: send a similar one line mail message to
%%%           TeXhax-request@cs.washington.edu
%%%     Please be sure you send a valid internet address!!
%%%        in the form name@domain or name%routing@domain
%%%     and use the style of the Bitnet one-line message, so that
%%%     we can find your subscription request easily.
%%%
%%% JANET users may choose to use
%%%           texhax-request@uk.ac.nsf
%%%
%%% All submissions to: TeXhax@cs.washington.edu
%%%
%%% Back issues available for FTPing as:
%%%          machine:              directory:  filename:
%%%   JUNE.CS.WASHINGTON.EDU         TeXhax/TeXhaxyy.nn
%%%              yy = last two digits of current year
%%%                       nn = issue number
%%%
%%% For further information about TeX Users Group services and publications
%%%  contact Karen at KLB@MATH.AMS.COM or write to TUG at
%%%   TeX Users Group
%%%   P.O. Box 9506
%%%   Providence, R.I. 02940-9506
%%%   Telephone      (401) 751-7760
%%%
%%% Current versions of the software now in general distribution:
%%%    TeX       2.992                 metafont  1.8
%%%    plain.tex 3.0                   plain.mf  1.8
%%%    LaTeX     2.09 (7/12/89)        cmbase.mf see cm85.bug
%%%    SliTeX    2.09 (4/12/89)        gftodvi   3.0
%%%    tangle    4.0                   gftopk    2.0 
%%%    weave     4.0                   gftype    3.0
%%%    dvitype   3.0                   pktype    2.2 
%%%    pltotf    3.0                   pktogf    1.0
%%%    tftopl    3.0                   mft       1.1
%%%    BibTeX    0.99c                 
%%%    AmSTeX    1.1d
%%%\bye
%%%

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