Subject: TeXhax Digest V89 #77 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 Friday, August 25, 1989 Volume 89 : Issue 77 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: %% A special note from the moderators concerning the huge mailing list... Announcement: August 1989 Version of the DECUS TeX Collection Re: TeX vs troff Files from TUGboats Chess macros, \cdef ------------------------------------------------------------------------- %% A special note from the moderators concerning the huge mailing list... %% %% Regarding the consolidation of the mailing list, pleas to individuals have %% produced few results, so we are resorting to a public appeal in the %% TeXhax Digest. What follows is a portion of our mailing list. PLEASE %% review it, and IF IT IS AT ALL POSSIBLE, access the Digest from one %% of the following redistribution sites. After ensuring that your new %% routing works, please unsubscribe your direct address from the list. %% %% Ideally, we would like the list to consist only of redistribution sites, %% in the interest of saving net space. If you don`t see a listing for %% your organization and would like to set one up, we would appreciate %% it greatly. texhax@itd.nrl.navy.mil, HE_TEX%FALCON@AAMRL.AF.MIL, incoming-info-texhax@dockmaster.ncsc.mil, tex@ATT.ARPA, ARI_TEX@ARI-HQ1.ARPA, TeXhax-local@ames-io.arpa, TEXHAX@BNL.ARPA, texhax@BRL.ARPA, texhax-nprdc@nprdc.arpa, texhax%OAK.SAInet.MFEnet@NMFECC.ARPA, texhax@RAND-UNIX.ARPA, gate-texhax@rochester.arpa, texhax-nic@SRI-NIC.ARPA, TeXHaX@UTAH-SCIENCE.ARPA, texhax-yale@yale.arpa, texhax@twg.arpa, texhax%icot.jp@RELAY.CS.NET, texhax%cs.uiowa.edu@RELAY.CS.NET, texhax-list%usl.usl.edu@RELAY.CS.NET, texhax-list%atc.bendix.com@RELAY.CS.NET, TEXHAX.UMASS@RELAY.CS.NET, texhax%cs.umass.edu@RELAY.CS.NET, texhax%okstate.csnet@RELAY.CS.NET, texhax%okstate@RELAY.CS.NET, texhax%sperry-csd.csnet@RELAY.CS.NET, TeXhax%eg.ti.com@RELAY.CS.NET, texhax-incoming%tilde%ti-csl.csnet@RELAY.CS.NET, texhax%cs.hope.edu@RELAY.CS.NET, texhax%src.org@RELAY.CS.NET, BB_TEXHAX%smrvx2.sdr.slb.com@RELAY.CS.NET, tex%cs.brown.edu@RELAY.CS.NET, TeXhax%munnari.oz.au@UUNET.UU.NET, "imsl!brophy!tex-group"@UUNET.UU.NET, "mcvax!diku!texhax"@UUNET.UU.NET, texhax%crin.crin.fr@UUNET.UU.NET, "mcvax!iesd.dk!texhax"@UUNET.UU.NET, TeXHAX%LiUIDA.UUCP@UUNET.UU.NET, texhax%hum.gu.se@UUNET.UU.NET, mcvax!gmv.es!tex@uunet.uu.net, texhax%ppc.mfenet@nmfecc.llnl.gov, texhax-post@LBL.GOV, texhax@ICDC.LLNL.GOV, texhax@mahendo.JPL.NASA.GOV, texhax@hc.dspo.GOV, texnews@msr.epm.ornl.gov, tex-hackers@ncifcrf.gov, tex-hax@rti.rti.org, texhax@mbunix.mitre.org, unix-tex-mail@csd360b.erim.org, --------------------------------------------------------------------------- Date: Thu, 17 Aug 89 07:55 EST From: Ted Nieland <@AAMRL.AF.MIL:TNIELAND@FALCON> Subject: Announcement: August 1989 Version of the DECUS TeX Collection Keywords: DECUS, TeX The attached is a copy of the DECUS Library Abstract for the new release of the DECUS TeX Collection (DECUS TeX Collection, August 1989). The DECUS TeX Collection can be obtained from the DECUS Library (reference number VS0058) or from your DECUS LUG (Local User Group). The library has received the new collection and DECUS LUGs can request the collection from their Region Tape Copy Coordinator's. To contact the DECUS Library: The DECUS Program Library 219 Boston Post Road BP02 Marlboro, MA 01752-1850 Phone: 508 480-3418 Ted Nieland (513) 427-6355 Control Data Corporation DECUS TeX Collection Editor TNIELAND@AAMRL.AF.MIL DECUS TeX Collection Abstract The DECUS TeX Collection is based on the TeX Files stored at SCORE.- STANFORD.EDU and are available via ANONYMOUS FTP, plus additional material collected from sources across the world. Recipients of the DECUS VAX/VMS TeX distribution need not have the compilers, since executable versions of most programs are included on the tape. The DECUS TeX tape includes all source programs as well as object code. The distribution contains five directory trees: [.000_INSTRUCT] Contains the instructions for installing the TeX collection [.TeX] Contains all the material needed to get TeX up and running on your system. The ma- terial includes TeX, LaTeX, METAFONT, AMS- TeX, TeXsis, BibTeX, PICTeX, DVI Drivers, RNOTOTeX, a spelling checker that understands TeX/LaTeX, and DVITOVDU. [.TeX_FONTS] All the fonts for TeX. Designed for a LN03. [.TeX_SOURCE1] Contains the source code for everything in saveset [.TeX_SOURCE2] 2, plus additional material such as: UNIX Mate- rial, TeX and Screen Previewers for PCs, TeX and Previewer for MACINTOSH, GloTeX, previewers for VAXStations (Both VWS and DECWindows), LSE Templates for TeX/LaTeX and BibTeX, Trip and Trap Tests for TeX and METAFONT, and ad- ditional DVI Driver material including Postscript LaTeX material for VMS. Recommendations: Get The TeXBook by Donald Knuth and LaTeX: A Document Preparation System by Leslie Lamport as the minimal documentation for the system. Knuth's five volume set Computers and Typesetting is highly recommended. The five volume set includes The TeXBook and The METAFONTBook. The Joy of TeX is the documentation for AM S-TeX. The PICTeX Manual will be needed if you wish to use PICTeX. Other Included Items The TeX Collection includes the other TeX related individual submissions from the DECUS Library. These submissions are: V00135 DVI to VDU: A TeX Page Previewer Program V00171 LaTeX Templates & Help files for LSE V00179 DEPROC: LaTeX for the DECUS Proceedings V00294 WEB Pack V00301 DVIOUT - DVI Output Driver V00399 DVI2PS Supported devices The following output devices are suppoorted by this version of TeX: - DEC LN03 (requires a RAM Cartridge) [DVItoLN03 or LNTeX] - DEC LN03 Plus (uses bitmaps) [DVIL3P] - DEC LA75 [DVIl75] - Postscript (LPS40, Apple LaserWriter, LN03S) [DVIALW,DVI2PS,PSPRINT] - HP Laserjet [DVIJET] - HP Laserjet Plus [DVIJEP] - Cannon Engine Laserprinter [DVICAN] - EPSON Printer [DVIEPS] - Printronix Printer [DVIPRX] - Okidata Pacemark 2410 (72 or 144 DPI) [DVIOKI] - VT terminals, Regis Terminals, Tektronix Terminals [DVItoVDU] - VAXStations running VWS [DVIDIS] - DEC Windows [XDVI] - Version 3.10 BBN BitGraph terminal [DVIBIT] - Golden Dawn Golden Laser 100 printer [DVIGD] - Imagen imPRESS-language laser printer family [DVIIMP] - Apple Imagewriter 72 or 144 dpi printers [DVIM72 or DVIMAC] - MPI Sprinter 72 dpi printer [DVIMPI] - Toshiba P-1351 180 dpi printer [DVITOS] - Generic Output [DVI2TTY] Update Information The August 1989 DECUS TeX collection has updated the following items: TeX (now 2.991), LaTeX & SLiTeX (now 2.09 <24 May 1989>), TeXsis, the LaTeX style collection, DVItoLN03, TeX for MS-DOS, and TeX for UNIX (includes TeXx 2.8.6 and the new SPIDERWEB). The following items are new with this collection: DVI2TTY, OZTeX (TeX for the Macintosh), XDVI (DECWindows Previewer for VMS), DVIOUT, WEB Pack, and DVI2PS for VMS. Collection Information This TeX Collection has been done for the DECUS Library and the DE- CUS Language and Tools SIG (L&T) Public Domain working group. The material is by various authors. Suggestions for additions to the collection are accepted. Please send all suggestions to the Collection Editor. ----------------------------------------------------------------------------- Date: Thu, 17 Aug 89 10:18:25 PDT From: wagman%praxis.hepnet@Csa4.LBL.Gov (Gary S. Wagman 415-486-6610) Subject: Re: TeX vs troff Keywords: TeX, troff Dear Steve Lesh: You asked TeXhax for a comparison of TeX and TROFF. I am the programmer for the Particle Data Group at Lawrence Berkeley Lab and wrote the FORTRAN code that extracts data from an ORACLE database and created the 340-page Full Listings of the Review of Particle Properties. For reasons of hardware availability at the time, we produced the 1988 edition using TROFF, and for new hardware reasons we have almost completed converting the project to TeX for the 1990 edition. Even with the drawbacks that I will mention, I strongly favor TeX over TROFF. I do not know SCCS so I cannot address that issue. 1) You ask "why TeX if DWB is a UNIX standard?" Because TeX *is* also a standard in a different computing community. As you can see from TeXhax, there is a wide variety of people around the world using TeX. TeX may not come on a UNIX distribution tape like TROFF, but there is a worldwide network concerned about its accuracy, propagation, and extension. Furthermore, TeX is available on non-UNIX machines like VAX/VMS, IBM/VM, Macintosh, and PC's which allows us to send TeX files to our collaborators by electronic mail which they can print at their own institutions. (However, beware of problems of character translation between dissimilar machines though that is not a TeX problem.) TROFF may be standard on most UNIX ports *BUT ITS FONTS ARE NOT!* We have proof-read on Apple Laser writer, Imagen, and Versatec printers, and ultimately had to proof again from the APS phototypesetter because the available fonts differed on each device and "overfull boxes" (to use TeX terminology) would appear at progressively later stages in production. We also want to make some font design changes which METAFONT and TeX permit and which many modern devices accept. TROFF fonts are device dependent and often difficult or impossible to redesign and implement because control of them is retained by the printer's manufacturer. There are many device drivers and screen previewers available for TeX. That also makes TeX a "standard". I cannot answer for TROFF. 2) TeX's math mode and table making facilities are integral parts of TeX, unlike EQN and TBL which are preprocessors. TeX, therefore, has the capability of making beautiful math tables because it has all information at hand. TBL, I found, could not perform as well in all circumstances because the math processing is independent. Then the typesetting itself (TROFF) is another step that cannot communicate its font information back to the preprocessors. I cannot answer about PIC. 3) I have found that TeX can do everything that I made TROFF do, but TeX is more elegant -- that is, well thought out or designed. Furthermore, TeX allows more control and, thus, has more flexibility. The cost for flexibility, however, is loss of ease of use. For our scientific work and our in-house documentation TROFF and TeX serve equally well. The problem common to both is a documentation changebar that crosses page breaks. To say that you are *just* interested in doing so-and-so is short-sighted. Once you have experience with a typesetting system, you will find other applications that can benefit. 4) I have wasted a great deal of time trying to understand my TROFF/EQN/TBL "mistakes" when I had actually encountered bugs and undocumented limitations in them. I hear that the author of TROFF died in a car accident and it seems that interest in maintaining it went with him. TeX, on the other hand, is so bug-free that its author offers a bounty for their discovery -- and I doubt that he has to pay very often. EQN and TBL are so awfully buggy that I did my own math and table setting in the Review. However, my co-worker did use them extensively for the Review's summary and miscellaneous tables and for its formulaic sections. She thinks that TBL tables are easier to create than TeX tables. I agree with her but I prefer to understand TeX's bug-free tables than to get bitten by TBL's bugs. 5) Books introducing TeX? Good Luck! The advantage of TROFF/EQN/TBL over TeX is that its documentation is about 70 pages of medium-difficulty (for a novice). The TeXbook, however, contains about 450 pages of mostly unapproachable gibberish with about half of that marked as extremely unapproachable (double dangerous bends). Novices have my sympathy! Donald Knuth is brilliant, but his TeXbook is far from what I expect of a programmer reference manual (I only have ten fingers to stick in the book while looking for index references) and it *certainly* is not a usable user guide. Stephan Bechtolsheim's "Another Look at TeX" has helped me at the intermediate level. You might try Arthur Samuel's "First Grade TeX", but I do not recall if it helped me or not. 6) What are the most bug-free implementations for UNIX V and MSDOS? I cannot answer, but do you mean of TeX or TROFF? See above for my remarks on bugs. Gary S. Wagman Lawrence Berkeley Lab One Cyclotron Road Berkeley, CA 94720 (415)486-6610 DECNET: CSA::WAGMAN or LBL::WAGMAN BITNET: WAGMAN@LBL INTERNET: WAGMAN@LBL.GOV ------------------------------------------------------------------------------- Date: Wed, 16 Aug 89 18:36:52 CET From: Garry%DGIHRZ01.BITNET@CUNYVM.CUNY.EDU (Garry Glendown, FH Fulda, FB AI, FRG) Subject: Files from TUGboats Keywords: file-server, mail-server, TUGboat Is there a file- or mail-server, that will send the files from the TUGboats as mail? I think I've read something before stating there was one that sends stuff via FTP, *BUT I CAN'T DO FTP*! Please help me... Thanks in advance, Garry Glendown Garry @ DGIHRZ01 . BITNET ------------------------------------------------------------------------------- Date: Thu 17 Aug 89 20:50:51-EST From: Michael Downes Subject: Chess macros, \cdef Keywords: chess macros, \cdef Anybody else been working on chess macros? And interested in trading notes? I've been working on some for use in typesetting chess literature; in the process I've turned up an item or two that I think may be of interest to TeXhax readers. For background, here's the introductory comments at the top of my macro file, in their current state: % The macros in this file are intended for use in typesetting chess literature % using algebraic notation. Input of the form % % \moves 1. e4 e5 2. Nc3 Nf3 3. ... % % and so on will produce a typeset listing of the moves, and furthermore % will check for typos by maintaining an internal representation of % the current state of the board and making sure that the given moves are % legal. The current state of the board can be printed by means of a % \showboard command, provided that the macros \whitepawn, \whiteknight, % \blackpawn, ... are defined to typeset the appropriate characters. % Herein they are defined to use the font chesset, described by its creator, % Zalman Rubinstein, in TUGboat vol 10 no 2 July 1989 (pp 170--172). The details of how best to indicate the end of a section of moves, and how best to mix moves into annotative text, I'm not sure of yet; basically the \moves macro initiates a process of looking for the various components of the move notation (using spaces as macro argument delimiters) and then splitting the arguments so obtained into smaller pieces and using the pieces as data for computing the current state of the chessboard. The board is represented internally by 64 \csnames, \11, \12, \13, etc., where the lettered files are converted to their numeric equivalents to make the computations easier: 81 82 83 84 85 86 87 88 71 72 73 74 75 76 77 78 61 62 63 64 65 66 67 68 51 52 53 54 55 56 57 58 41 42 43 44 45 46 47 48 31 32 33 34 35 36 37 38 21 22 23 24 25 26 27 28 11 12 13 14 15 16 17 18 The need to define a lot of \csnames led me to look for a less cumbersome alternative to the usual \expandafter\def\csname ... \endcsname. The definition \def\cdef#1#{\expandafter\def\csname#1\endcsname} allows me to use statements of the form \cdef 11{\whiterook} \cdef 12{\whiteknight} and, using suitably assigned counters \file and \rank, part of the procedure of moving a piece off a square would be \cdef\the\file\the\rank{\emptysquare} The effect of the combination #{ at the end of the parameter text of a definition is described in the TeXbook, Chapter 20, p. 204. This definition of \cdef suggests also \def\cedef#1#{\expandafter\edef\csname#1\endcsname} and even \cgdef and \cxdef, although if you don't need these latter very often, it may be easier to just use \global\cdef and \global\cedef instead. And then there is \def\clet#1={\expandafter\let\csname#1\endcsname} about which it should be noted that if an = is needed as part of the csname it would have to be enclosed in braces in order not to be mistaken for the delimiter token. And for \clet the = sign is not optional, unlike an ordinary \let. An alternative definition of \clet would be \def\clet#1{\expandafter\let\csname#1\endcsname}, but this would require the syntax \clet{abc}=\xxx or \clet{abc}\xxx instead of \clet abc=\xxx which I prefer. ==================== I suppose something similar could be done for the construction \expandafter\ifx\csname xxx\endcsname using the idea of Knuth reported by Stephan Bechtolsheim in TeXhax 1989 no. 38 (which I've begun to use fairly often). \def\xcsname#1={TT\fi\expandafter\ifx\csname #1\endcsname} with usage like this: \if\xcsname xxx=\test ... \else ... \fi You could substitute your delimiter of choice for the =, or use no delimiter and put the argument in braces: \if\xcsname{xxx}\test ... \else ... \fi I think this saves only one token at best (in the delimited case), but it does seem more readable. @@@ @@@ @@@ @@@ Michael Downes @@@ @@@ @@@ @@@@ @@@ American Mathematical Society @@@ @@@ @@@ @@@@ Providence, RI @@@ @@@ @@@ @@@ @@@@ mjd@math.ams.com (internet) @@@ @@@ @@@ @@@ "The change I just made didn't have the effect that I thought it would have" ----------------------------------------------------------------------- %%% Further information about the TeXhax Digest, the TeX %%% Users Group, and the latest software versions is available %%% in every tenth issue of the TeXhax Digest. %%% %%% Concerning subscriptions, address changes, unsubscribing: %%% %%% BITNET: send a one-line mail message to LISTSERV@xxx %%% SUBSCRIBE TEX-L % to subscribe %%% or UNSUBSCRIBE TEX-L %%% %%% Internet: send a similar one line mail message to %%% TeXhax-request@cs.washington.edu %%% 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 %%% %%%\bye %%% End of TeXhax Digest ************************** -------