TeXhax Digest Sunday, February 21, 1988 Volume 88 : Issue 18 [SCORE.STANFORD.EDU]TEXHAX18.88 Editor: Malcolm Brown Today's Topics: Immoderate notes: brief pause in texhax; issue 17 sliced up LaTeX Notes (Re: TeXhax Digest V88 #15) clatex vs. latex a plea for sanity Something similar to the dangerous bend Problems with VMS version of MetaFont 2 C compilations of TeX various UNIX TeX distribution two line footers? transferring dvi files across systems \unhbox and discretionary breaks Does anyone have a good LN03 mode definition? new .bst files in LaTeX style collection TeXhax Digest V88 #16 Re: \dotfill in \halign \dotfill again Bibtex change files for UNIX (VAX,SUN) Setting undertildes more on extensions Public Domain Previewer wanted/and a puzzle LaTeX Notes (Re: TeXhax Digest V88 #17) ---------------------------------------------------------------------- Date: 21 Feb 88 From: Malcolm Subject: Immoderate notes: brief pause in texhax; issue 17 sliced up %%% Please note I'll be away from Feb 25 to Mar 4 inclusive. I recommend %%% that you hold your submissions until I get back; they'll just get %%% stale and moldy on Score. Needless to say, there won't be any TeXhax %%% during that time. %%% %%% Issue 17 was sliced in half by some unkind IBM systems using SMTP. Glenn %%% Vanderburg informs me that the reason was a line that was longer than %%% 80 columns got wrapped, which resulted in the next line beginning with %%% a period. SMTP though that this meant it was about to get a command. So %%% it went through the remainder of the digest, looking for a command, which %%% of course it didn't find -- only more TeXhax. %%% %%% Please do NOT write to texhax-request for a reissue; sorry, I just won't %%% have time. TEX-L has a complete copy and will be happy to provide you %%% with a new copy. Malcolm ------------------------------ Date: Mon, 15 Feb 88 15:51:56 pst From: lamport@src.dec.com (Leslie Lamport) Subject: LaTeX Notes (Re: TeXhax Digest V88 #15) Dimitri Vulis writes: I tried to use a crazy Hungarian name in tabbing environment in LaTeX: \> \> blah blah blah M\'at\'e blah For some reason LaTeX moved the 'at' and 'e blah' to the beginning of the line! The subject line of his message was: Accents in tabbing environment in LaTeX On page 211 of the LaTeX manual is an index entry that reads accents, 40 ... in tabbing environment, 181 This would seem to suggest that page 181 just might contain the solution to his problem. Leslie Lamport ------------------------------ Subject: clatex vs. latex Date: Mon, 15 Feb 88 17:09:36 PST From: Richard Roy I preliminary comparison of clatex, a C-version of latex generated using TeX-to-C on tex.web.2.9 and all the latest macros as of 22 Jan 88, and the corresponding pascal compiled web-code, on a SUN3-110 with 16Mbytes shows clatex to be approx. 30%-50% faster (depending on you you score it). clatex - 53.7u 1.6s 1:15 73% 80+240k 5+13io 62pf+0w latex - 60.9u 2.6s 1:25 74% 96+376k 15+18io 105pf+0w RR ------------------------------ Subject: a plea for sanity Date: Tue, 16 Feb 88 01:36:38 -0500 From: Ken Yap Whatever happened to the effort to standardize on one dvi2ps filter last year? I see a half a dozen drivers out there all derived from the original dvi2ps, all with some subset of desirable features. Is there any hope of standardization? Would it be possible for each author to compare his/her driver against the others and send the improvements to one person who would put it all in one super driver? And then defer in favour of that super driver when it appears? Here's hoping. Here is a list of what I consider desirable features in roughly descending order (mine). Please throw in more comment on this mailing list. Tpic support Landscape support Horizontal and vertical offsets PostScript file inclusion Access to PostScript fonts Inline PostScript* Compact PostScript output Fast PostScript output Support for any resolution Customizable font paths Font substitution Forward/reverse printing Logging Debug output *There are many bells and whistles that could be added here but I think a driver that generates markers at various points in the output will make it possible for post-filters to inject almost any PostScript code. This can take care of many disparate features, like a draft header, two-up, manualfeed, etc. (Such post-filters are useful for other PostScript output, like that generated by enscript, a ASCII to PostScript filter). Ken ken@cs.rochester.edu ------------------------------ Date: Mon, 15 Feb 88 10:49:57 -0100 From: mcvax!ruuinf!piet@uunet.UU.NET (Piet van Oostrum) Subject: Something similar to the dangerous bend I believe the 'dangerous bend' sign was designed to stick below the baseline. You have to check the Metafont Book (somebody borrowed mine). So you have to lower the box. See also some previous tex-haxes (and TUGBOAT). ------------------------------ Date: Tue, 16 Feb 88 08:11:54 PST From: KARNEY%PPC.MFENET@NMFECC.ARPA Subject: Problems with VMS version of MetaFont You can get rid of the warning message about the non-initialization of ready_already by including @x @!ready_already:integer; {a sacrifice of purity for economy} @y @!ready_already:[static]integer:=0; {a sacrifice of purity for economy} @z in your change file. A previous version of the Pascal compiler had a bug which also necessitates making a couple of variables static. The required change is @x @!smooth_bot,@!smooth_top:0..move_size; {boundaries of smoothing} @y @!smooth_bot,@!smooth_top:[static] 0..move_size; {boundaries of smoothing} @z The current version of the compiler (version 3.6) doesn't need this change. Charles Karney Plasma Physics Laboratory Phone: +1 609 243 2607 Princeton University MFEnet: Karney@PPC.MFEnet PO Box 451 ARPAnet: Karney%PPC.MFEnet@NMFECC.ARPA Princeton, NJ 08543-0451 Bitnet: Karney%PPC.MFEnet@ANLVMS.Bitnet CC: PADWA@HUSC3.BITNET TeXhax@Score.Stanford.EDU KARNEY ------------------------------ Date: Tue, 16 Feb 88 08:40:54 PST From: mackay@june.cs.washington.edu (Pierre MacKay) Subject: 2 C compilations of TeX In a recent communication to TeXhax, Common TeX was declared a clear winner against TeX-to-C on the grounds of a marginally faster processing of a test file (we may disregard the third-place pascal compilation.) It seemed that there could be a question of whether the playing field was absolutely level but, assuming that it was, there are still reasons to view the verdict rather carefully. Common TeX is a carefully hand-coded rewrite of the pascal part of Donald Knuth's WEB code, and in the course of that rewrite has drifted a fair distance from the WEB. TeX-to-C is directly interpreted by way of the pascal brick (does anyone know who first used that description of tangle output?) and retains a recognizeable kinship with the original source. In addition, TeX-to-C retains the string pool, and TeX-to-C is showing that it can pass trip on an ever wider variety of systems. None of these details is trivial. 1. Association with the WEB. During the past week, I spent a maximum of 6 hours, most of it on the text-editor, in the creation of a Cxet.ch change file for the compilation of TeX-XeT through TeX-to-C. Throughout this effort I had *Computers and Typesetting* Volume B, open as a reference. and could work through the modules sequentially. (I was, in essence, merging the system-independent part of Don Knuth's WAITS change file with the Ctex.ch file). I do not wish to think about how long it would take to recode without the benefit of Tim Morgan's interpreter. TeX-XeT is not alone among extended versions of TeX. JTeX (Japanese) is put together through the mechanism of the change file, Michael Ferguson's multi-lingual TeX is probably done the same way, as is the Finnish accent-stripping TeX and at least one commercial multilingual TeX. Users of the change-file mechanism can contemplate the rush of small improvements from Version 2.1 through 2.9 with no particular uneasiness, the more so since recompilation under TeX-to-C is substantially faster than monolithic pascal compilations. 2. The string pool. The is the most underrated part of the whole WEB system. Don Knuth introduces the string pool mechanism [4.38] as merely a way to avoid the deficiencies in string handling in pascal, but it could be argued any large software system ought to adopt it. The advantages of having all possible messages located in a file separate from the the rest of the code can easily be seen. In a monolingual environment, it allows for detailed editing of the messages without recompilation, and in a multi-lingual environment, it is an absolute virtue. Editing a string pool isn't the easiest thing in the world (you have to watch out for terminal spaces in the character count), but it is a lot easier than editing an entire source file. 3. The trip test. I do not know what the present status of Common TeX is with regard to the trip test. In the last version I saw, the rewording of a considerable number of messages made it very difficult to sift out significant from insignificant differences, and gave evidence that some operations were done in a different order in Common TeX from the order given in the WEB source. The copy of version 2.1 I got never completed the test. TeX-to-C completes the test with ease. In every compilation in which I have got a working initex at all, the associated triptex passes the trip test. 4. Speed. I suspect that Common TeX will always have a fine edge here, and one of the reasons is the use of the string pool. TeX-to-C is still being adjusted and refined, and will probably close up the small gap somewhat, but it is likely that hand-coded efficiencies will always be a bit better than machine coded efficiencies. To get that edge, you have to give up the close filiation from the WEB sources, and from the WEB listing, and the string pool mechanism. In most environments, I would argue that those features are more valuable than raw speed. Pierre A. MacKay TUG Site Coordinator for Unix-flavored TeX ------------------------------ Date: Tue, 16 Feb 88 17:43:57 GMT From: Dr R M Damerell (RHBNC) Subject: various 1. Pretty-printing TANGLE's output. (A.Woo, Texhax 88/11). I think the official line is that you are not allowed to want to do this, you should Weave it instead. I am currently working on a sort of PP; it will run on VMS (I hope) in about 3 months. One simple thing you could do right now is alter TANGLE to break lines after every semicolon. I know that isnt anywhere near "pretty", but might do what you need. 2. Dotfill. (P. Flynn, TEXHAX 88/12). Please may I suggest the WEBMAC.TEX macros? I think the one you seem to need is \Z , nearly at the end of the file. 3. Bug sanctuary. A mistake I find myself making with distressing frequency is that of inadvertently using a global variable locally in a procedure. Please does anybody know of a cross-referencer that can be made to flag all uses of global variables inside a PASCAL procedure? The VMS cross-ref flags all uses of all variables; thats not really useful as the signal- to-noise ratio is so poor. 4. Another sanctuary. This is prompted by J.Leichter (Texhax 88/05) who found un-initialised variables in PXtoPK. Every VMS Change file I have seen for TEX-related software initialises the XORD array incorrectly. This has 256 elements and only the first 128 get values. 5. Converting DVI files (CCZDAO, Texhax 88.14) Converting binary files to another machine's system is a dreadfully difficult job, not worth trying unless you are compelled. It will almost certainly be far easier to re-run the TeX source. If you cant, there are 3 utilities that might help you find what is wrong 1. DVITYPE 2. $DIRECTORY/FULL 3. $DUMP Reading DUMP files is somewhat of a black art. By default each line of output contains 4 or 8 blocks of hex digits. These must be read right to left, but within each block the digits must be read left to right. I think this is because VMS packs bytes into a word in Small-End order(least significant first) and DVI files use Big-End order. Also: variable-length records are preceded by a byte count & depending on the qualifiers, DUMP ***sometimes*** shows them. I suggest that you examine the last block of the file to see if it is correctly padded. (? cant remember, but I think it should be filled with HEX DF ) Good luck, you'll need it, Mark ------------------------------ Date: Tue, 16 Feb 88 09:57:31 PST From: Phil Farrell Subject: UNIX TeX distribution Here is a simple question from a new reader ... Whom do I contact to order a tape with the complete UNIX TeX distribution (for a Vax running 4.3BSD UNIX)? ------------------------------ From: Tim Finin Date: Tue, 16 Feb 88 16:07:57 EST Subject: two line footers? I have a problem that someone suggested I send to this mailing list. I'm writing a document using LaTeX and need to have non-standard headers and footers. In particular, every page needs a constant, centered string as the header and a two line footer. The footer should be composed of a centered page number on the first line and a centered constant string on the second. I've had no luck in mixing in TeX commands to do this in the context of LaTex. Any suggestions? Tim ------------------------------ Date: Tue 16 Feb 88 14:49:41-PST From: Barbara Beeton Subject: transferring dvi files across systems at the american math society, we've had some experience transferring dvi files (and other binaries -- .tfm, etc.) from "other" systems (tops-20, ibm pc) to the vax/vms. we have found it necessary to pad the files to a multiple of 512 bytes; the padding character is octal 337. -- barbara beeton ------------------------------ Date: Tue, 16 Feb 1988 17:57 EST From: Jim Walker Subject: \unhbox and discretionary breaks As far as I can tell by experimentation, in text produced by \unhbox, explicit hyphens are never recognized as locations of discretionary breakpoints. Why is this? Is it considered a bug? -- Jim Walker, University of South Carolina ------------------------------ Date: Tue, 16 Feb 88 21:33:15 PST From: robinson%SOE.Berkeley.EDU@jade.berkeley.edu (Michael Robinson) Subject: Does anyone have a good LN03 mode definition? I need to make a set of fonts for our LN03, and I would like to use a tried and true mode definition. Can anyone help me out? -Michael Michael Robinson USENET: ucbvax!dewey.soe.berkeley.edu!robinson ARPA: robinson@dewey.soe.berkeley.edu ------------------------------ Subject: new .bst files in LaTeX style collection Date: Wed, 17 Feb 88 10:41:32 -0500 From: Ken Yap WARNING WARNING WARNING To: latex-style subscribers The files acm.bst, ieeetr.bst, siam.bst and apalike.bst are updated versions that require BibTeX 0.99b to work. Ken PS: I'm expecting more new style files soon so I'll post a full update shortly. Remember you can always fetch 00index and 00directory to see the current state of things. ------------------------------ Date: Wed, 17 Feb 88 07:53:31 PST From: mackay@june.cs.washington.edu (Pierre MacKay) Subject: TeXhax Digest V88 #16 bibtex.BSD4_n.ch is available on june.cs.washington.edu, in ~ftp/pub You may have to adjust the alpha character in the version number, depending on which new bibtex you got. (The newest is 99c) Pierre A. MacKay TUG Site Coordinator for Unix-flavored TeX ------------------------------ From: Julian Bradfield Date: Wed, 17 Feb 88 16:01:01 GMT Subject: Re: \dotfill in \halign [ Reprise: the problem was to produce a table of the form Title 1 ......................................................... Author 1 second title .................................................... second Author third ........................................................... and last ] The idea for the following solution is due to Duncan Baillie (dmb@lfcs.ed.ac.uk) : \halign to \hsize {#\dotfill\tabskip=0pt plus1fill&#\tabskip=0pt&#\hfil\cr \cr\noalign{\vskip-\baselineskip} Title 1\span& Author 1\cr second title\span& second Author\cr third\span& and last\cr} \bye ------------------------------ Mail-From: BEETON created at 17-Feb-88 09:02:57 Date: Wed 17 Feb 88 09:02:57-PST From: Barbara Beeton Subject: \dotfill again i recommend a look at the texbook, appendix d, pp. 392-394. this technique handles multi-line entries automatically. much more powerful than \halign, and it gives you better control over baselines. -- barbara beeton ------------------------------ Subject: Bibtex change files for UNIX (VAX,SUN) Date: Wed, 17 Feb 88 09:22:37 PST From: Richard Roy I got one just a few days ago from june.cs.washington.edu (P. Mackay) and it worked on bibtex.web 0.99c which I got from score the same day. It compiled and ran on my SUN-3 110 OS3.4 no problem. Note that the style files on rochester are inconsistent. Some are for the NEW bibtex, others for the OLD bibtex 0.98i and earlier. THEY ARE NOT COMPATIBLE!!! I have mentioned this to O. Patashnik and K. Yap and the current thought is to put a note to this effect in the 00index and 00readme files in public/latex-style on cayuga.cs.rochester.edu. RR ------------------------------ Date: Wed, 17 Feb 88 14:18:28 EST From: "Doug Arnold" Subject: Setting undertildes Mike Meyer (mikem@andrew.cmu.edu) asks about setting undertildes. I make frequent use of undertildes (or undertwiddles, or, as one journal editor termed them "inferior waves") as well double undertildes. Many of my papers start with a bunch of macros setting them up. I've done them in plain TeX (using macros like "\def\ut#1{\rlap{${}_{_{\sim}}$}{#1}}"), but I much prefer the results using AMSTeX's \underset. Here is an example: \input amstex \def\ut#1{\underset\sim\to{\botsmash{#1}}} \def\utt{\underset\sim\to} % \operatorname doesn't like \botsmash \def\dut#1{\underset\approx\to{\botsmash{#1}}} \def\grad{\operatorname{g\utt{ra}d}} \def\curl{\operatorname{\utt{curl}}} \def\div{\operatorname{div}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \document $$ \div \ut\psi = \psi_{1,1} + \psi_{2,2}, \qquad \curl r = \dut\chi \grad r, \qquad \dut\chi = \pmatrix 0 & -1 \\ 1 & \phantom{-} 0 \endpmatrix $$ \bye -- Doug Arnold dna@emmy.umd.edu dna%emmy.umd.edu@eneevax.umd.edu na.arnold@score.stanford.edu ------------------------------ Date: Wed, 17 Feb 88 14:01:10 EST From: "Karl Berry." Subject: more on extensions Changing TeX will allow, say, `latex paper', without any paper. As things stand now, nothing should prevent you from being Consistently throughout TeX (and Metafont) the extension is `.tex' is never insisted on; if you supply an extension, that one will be used. So, if you want to a different extension on your LaTeX files, fine. Just type in the extension you want. Four extra characters. Taking the default extension from a parameter, as William LeFebvre suggests, is probably the best idea of all. Maybe in TeX92. Karl. karl@umb.edu able to type `latex paper.ltx', or whatever you like. ------------------------------ Date: Wed, 17 Feb 88 18:21:47 EST From: Ajit Ranade Subject: Public Domain Previewer wanted/and a puzzle Where can I find a public domain previewer for PC-TeX on my IBM PS/2? I am using ver 1.5 with pixel files 1200 thru 2488 (ie dpi 240 to 570(?)). I am at a Bitnet site, so no easy FTP possible. %%%%%%%%%% And now the puzzle (whose answer I don't know)- Without using Metafont, how does one generate the symbol which looks like \succsim (of AMSTeX) except that the \sim part of the symbol should be inclined diagonally upwards i.e. \succ shouldn't sit \atop on \sim. Same applies to \ge where the horizontal part under > (greater than) shouldn't be \atop 'ed but sloping upwards i.e. parallel to the lower segment of >. ------------------------------ Date: Wed, 17 Feb 88 17:44:08 pst From: lamport@src.dec.com (Leslie Lamport) Subject: LaTeX Notes (Re: TeXhax Digest V88 #17) This is in response to Julian Bradfield's "(Flame)", which I won't quote in full. On the matter of nonindented first paragraphs, he writes I should be obliged if he would explain it, instead of preaching from on high I'm sorry if I've given the impression of "preaching from on high"; the only knowledge I will claim to have is of my own ignorance on the subject--which seems to be a greater claim than can; be made by many TeXHaXers. I have refrained from trying to explain document-style decisions because I don't feel qualified to do so. However, this question has arisen so often, that I will give what I think are the reasons for the convention. I do this reluctantly, knowing that a competent designer might find my comments naive and all wrong. Anyway, one first must understand the purpose of paragraph indentation, which is to inform the reader of the beginning of a new paragraph. Since the reader is already informed of this by the section heading, indenting the opening paragraph is redundant. Why is it bad? My belief is that the function of the heading is to introduce the following text. To emphasize this function, the design should visualy tie the heading to the following text and separate it from the preceding text. That's why one usually finds more space above the heading than after it. (A typical mistake made by computer hackers is to make the two spaces the same.) If the section heading is flush left, as in the LaTeX styles, it is more strongly tied visually to the following paragraph if there is no paragraph indentation. Dr Lamport is that he seems always to assume that those who disagree with him are wrong, ignorant and stupid I can't recall anyone disagreeing with me in TeXHaX. Many people don't like the way LaTeX does some things, which I don't regard as disagreeing with me. There are lots of things LaTeX does that I don't like. Anyone seeking perfection had better not try writing TeX macros. I find questions of right and wrong to be irrelevant in this context, I try to ignore stupidity (I've found little of it in TeXHaX), and I try to correct ignorance when I can. I would ask Dr Lamport to be less abrasive in his public utterances There are many things I would rather be doing than answering queries about LaTeX. I wrote LaTeX in my spare time because I wanted a set of TeX macros for my own use and decided to put in a little (hah!) extra effort so others could use them. I haven't yet taken Knuth's step of refusing to discuss LaTeX at all, though that is very tempting. Instead, I try to respond to all queries, and even to answer some flames. However, I do try to respond as quickly as I can. I appologize if my responses are abrasive, but I hope that an abrasive response is preferable to none. extreme ugliness is a sufficient condition for unreadability I have yet to see any evidence that a document is harder to read because it is ugly rather than because it violates principles of good design. I have, however, seen a number of cases in which documents were made harder to read by being made more beautiful. (See my AMS article reprinted in TUGboat for one example.) Leslie Lamport ------------------------------ %%% %%% subscriptions, address changes to: texhax-request@score.stanford.edu %%% please send a valid arpanet address!! %%% %%% BITNET distribution: subscribe by sending the following %%% line to LISTSERV@TAMVM1.BITNET: %%% SUBSCRIBE TEX-L %%% %%% submissions to: texhax@score.stanford.edu %%% %%%\bye %%% ------------------------------ End of TeXhax Digest ************************** -------