Subject: TeXhax Digest V90 #20 From: TeXhax Digest Errors-To: TeXhax-request@cs.washington.edu Maint-Path: TeXhax-request@cs.washington.edu To: TeXhax-Distribution-List:; Reply-To: TeXhax@cs.washington.edu 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 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 Subject: DVIJEP and HP II To: TeXHaX Digest 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 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 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: ------------------------------------------------------------------------------- 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 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 Subject: Re: TeXhax Digest V90 #14 Keywords: TeX, external tensor product Allan Adler 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" 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 % 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 ************************** -------