Subject: TeXhax Digest V89 #44 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, November 11, 1989 Volume 89 : Issue 44 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: Needed: E-mail addresses forr Mike Urban and Arthur L.Samuel Re: Problem with script which generates CM fonts automatically Wanted: programmer's guide to Web-to-C TeX error$$$ Problem with Metafont "saving" points in MF Metafont definitions for an Epson at 240DPI Changebars/Revisions bars Re: Query regarding nested ifs Re: TeXhax digest V89 #27 (nested ifs, \crcr) \crcr, nested ifs Lost \special in LaTeX Re: TeXhax digest V89 #32: \renewcommand {\endth} \newcommand and \endxxx TeXhax-digest V89 #32 (DVILASER/PS, PostScript in DVI, \PrintChart) Bibliography page sizes.... -------------------------------------------------------------------------- Date: Wed, 3 May 89 10:49:36 -0500 From: gonzalez@emx.utexas.edu (Daniel C. Gonzalez) Subject: Needed: E-mail addresses for Mike Urban and Arthur L.Samuel Keywords: addresses I work for the Computation Center at the University of Texas at Austin. We would like to reproduce and distribute two documents to our TeX users, but we need to obtain permission to do so from the authors of the documents. The documents are "A Guide to TeX for the Troff User" by Mike Urban and "First Grade TeX, A Beginner's TeX Manual" by Arthur L. Samuel. (I think the Urban doc is distributed as part of the TeX sources.) Does anyone have e-mail addresses for either of these two gentlemen? Please e-mail replies to me. Thanks. :-) Danny Gonzalez Computation Center, UT Austin gonzalez@emx.utexas.edu ---------------------------------------------------------------------------- Date: Tue, 2 May 89 11:53:43 CDT From: William LeFebvre Subject: Re: Problem with script which generates CM fonts automatically Keywords: CM fonts, cmbase.tex > Since reading cmbase.tex is so quick compared to actually generating > fonts, there is no reason to explicitly include or preload cmbase when > generating fonts; it will be read in if it is needed. It may be quick in comparison, but on my machine (Sun 3/260) it takes, on the average, an extra 1.2 seconds of user cpu time to load it in. That doesn't seem like much, but when you consider that rebuilding all the cmfonts requires running metafont for 75 fonts times 7 magnifications (at least) times two different devices (printer and screen), that's 1260 extra seconds, or about 21 minutes, of cpu time. That doesn't even count the extra disk activity or other system time. So there is a great incentive for using this approach. BUT, I agree that one should not sacrifice accuracy. This would be a very simple problem to fix in the scripts while still retaining the use of a preloaded cm metafont for all the appropriate fonts. William LeFebvre Sun-Spots moderator Department of Computer Science Rice University %%% Moderators' note: Agreed. There is no reason to deny oneself the %%% speed and convenience of a predigested cmbase for all the fonts that %%% properly require it. Perhaps the best approach would be to modify %%% any scripts for the production of LaTeX fonts so that line and circle %%% fonts are treated specially. ------------------------------------------------------------------------------ Date: Mon, 1 May 89 18:11:53 BST From: David Osborne Subject: Wanted: programmer's guide to Web-to-C Keywords: WEB, C is there a document describing how to create a new changefile, or amend an existing one, to use with Web-to-C on a Unix system ? the only way i know of is to compare a pair of existing changefiles for use with Pascal and Web-to-C against the WEB of something like DVItype, but that seems rather tedious. dave. David Osborne | JANET: d.osborne@uk.ac.nott.clan Cripps Computing Centre | BITNET: d.osborne%uk.ac.nott.clan@ukacrl.bitnet University of Nottingham |Internet: d.osborne%uk.ac.nott.clan@nsfnet-relay.ac.uk Nottingham NG7 2RD, UK | (Phone: +44 602 484848 x2064) %%% Moderators' note: Tedious it is, but that is all there is right now. %%% The creation of a change file for Web-to-C is not really all that %%% different from the creation of a pascal change file. You just %%% have to watch out for a different set of traps. This is perhaps %%% an opportune time to announce that the Web-to-C change file for %%% GFtoDVI is under development, and should soon be completed. %%% The process is exactly what David Osborne describes---tedious. ------------------------------------------------------------------------------- Date: Mon, 1 May 89 16:40:25 PST From: Peter Scott Subject: TeX error$$$ Keywords: TeX, bugs Anyone know how much the reward for finding a genuine TeX bug is up to these days? I haven't seen it lately, it must be up in serious money by now! Peter Scott (pjs@grouch.jpl.nasa.gov) ------------------------------------------------------------------------------ Date: Wed, 3 May 1989 16:31 EDT From: Brian Holmes Subject: Problem with Metafont Keywords: METAFONT I'm trying to generate 240DPI fonts using Metafont which came on the VM/CMS tape. I issue the command: MF &PLAIN Which brings me to the '*' prompt. Then I issue the command: \mode=epson; \input cmr10 When it finishes processing, I have a file named MFPUT 2602GF A, but I wanted a 240DPI GF file. What am I doing wrong? Brian %%% Moderators' note: This is the commonest of all METAFONT mysteries. %%% Unless you have taken steps to load a mode_def file along with %%% plain, a mode such as "epson" is unknown to your instance of METAFONT. %%% Unknown modes revert to proof mode by default. ------------------------------------------------------------------------- Date: Tue, 02 May 89 15:51:53 CDT From: Don Hosek Subject: "saving" points in MF Keywords: METAFONT I figured out how to solve my problem with points the other night while I was asleep (!)... The reason I couldn't use save x,y was that I needed to keep the x and y points that were passed to the radical; BUT if I did something like: def beginradical(text t) = begingroup; save a,b; forsuffixes $ = t: a$:=x$; b$:=y$; endfor save x,y; forsuffixes $ = t: x$:=a$; y$:=b$; a$:=whatever; b$:=whatever; endfor enddef; def endradical = endgroup enddef; and then defined each radical to do something like: def futatsu(suffix @,$) = beginradical(@,$); % This used to be |beginradical(101,102,103,104)| x101=x@+thick; y101=y102=y$-thick; x102=x$-thick; x103=x@; y103=y104=y@+thin; x104=x$; horiz(101,102); horiz(103,104); endradical; enddef; The big difference in this approach is that rather than getting rid of the points I want to destroy, I keep the points I want to save. There's something wrong with TeX and MF... I wrote my best TeX macro while drunk and solved my hardest MF problem while asleep :-) dh Don Hosek Internet: U33297@UICVM.UIC.EDU 3916 Elmwood Bitnet: U33297@UICVM.BITNET Stickney, IL 60402 DHOSEK@YMIR.BITNET Work: 312-996-2981 UUNet: dhosek@jarthur.claremont.edu JANET: U33297%UICVM.UIC.EDU@UK.AC.EARN-RELAY --------------------------------------------------------------------------- Date: Mon, 1 May 1989 18:41 EDT From: Brian Holmes Subject: Metafont definitions for an Epson at 240DPI Keywords: METAFONT, Epson Could someone tell me where I can get the metafont definitions for an Epson printer at 240 DPI? I can FTP. ----------------------------------------------------------------------------- Date: Mon, 1 May 89 12:26:12 -0400 From: Joe Boykin Subject: Changebars/Revisions bars Keywords: LaTeX, changebars I'm looking for a way to generate change bars in LaTeX (sometimes called revision bars) automatically. I have a changebar.sty file written by Michael Fine which supposedly does this, but uses the \special command for the DEC LN03 printer; this doesn't work since I'm using an Apple Laser Writer for output. Joe Boykin Encore Computer Corp. ---------------------------------------------------------------------------- Date: Mittwoch, 3. Mai 1989, 18.00 Uhr und 14 Sekunden MSZ From: XITIJSCH%DDATHD21.BITNET@UWAVM.ACS.WASHINGTON.EDU Subject: Re: Query regarding nested ifs Keywords: nested ifs Hello, Bitnet is back on the list again... Stephan asks in TeXhax #27 (a while ago but no one has answered) a query about nested ifs. Please note that the macro \IfSomething must be \let to \iftrue or to \iffalse -- \def is not allowed because the lexical scanner of TeX doesn't recognize that they are identical. \def only defines them as equivalent---this is handled not until the semantic analysis (in the `stomach'). The following input clarifies this problem: \let\IfSomething\iftrue \iffalse \IfSomething Hallo \else Huhu \fi \else Hugo \fi This produces the output `Hugo'. If you change the line \let\IfSomething\iftrue to \def\IfSomething{\iftrue} TeX complains about an illegal \else. Joachim Joachim Schrod c/o TH Darmstadt Institut f\"ur Theoretische Informatik Alexanderstr. 10 Bitnet: XITIJSCH@DDATHD21 D-6100 Darmstadt (Please try again if I don't answer --- West Germany our Bitnet connection is very instable...) ----------------------------------------------------------------------------- Date: Tue, 2 MAY 89 18:16:02 BST From: CHAA006%vaxb.rhbnc.ac.uk@NSFnet-Relay.AC.UK Subject: Re: TeXhax digest V89 #27 (nested ifs, \crcr) Keywords: nested ifs, \crcr Stephan v. Bechtolsheim asked a couple of very interesting questions in TeXhax V89 #27 (well, he asked more, but I could only try to help with two ...) Nested IFs: I had a long discussion with Graham Toal about this subject earlier this year, and came to the conclusion that it was NOT possible to declare a macro \if which TeX could recognise as a real \if. In particular, I wanted to define a macro \if with a fixed delimiter structure: \def \if #1\then #2\else #3\fi but after considerable introspection decided it could never work in a nested context. When you look into \newif, \iftrue, \iffalse and their definitions, it seems clear to me that Knuth recognised the problem, and implemented it in the only way possible: by \let ting the user-defined \if = \iftrue | \iffalse, as appropriate. Because \if has been \let, rather than \def ined, it is recognised as a `real' \if, and skipping/nesting is no longer a problem. Does that make sense, Stephan ? As to \crcr: \crcr is defined to act like a \cr if TeX is expecting a \cr at that point. So, if the user of \eqalign has neglected to insert a final \cr, \crcr will insert one. If, however, the user has already inserted the final \cr, \crcr will have the null effect. Since \everycr is only called into play for \cr s and {\it non-redundant} \crcr s, the definition of \eqalign using \crcr ensures that \everycr is not elaborated twice, once for the user-supplied \cr and once for the macro-defined \crcr. If \cr were used in the definition, and the user were to supply his/her own \cr, \everycr would be elaborated once too many times. Philip Taylor Royal Holloway and Bedford New College. ----------------------------------------------------------------------------- Date: 30 Apr 89 11:08:00 EST From: Mike Schmidt Subject: \crcr, nested ifs Keywords: \crcr, nested ifs Stephan Bechtolsheim writes: >Assume the following nested ifs: > \if 1|... > then text 1 > \if 2| ... > then text 2 > \else > else text 2 > \fi 2| > \fi 1| >Now assume that instead of \if 2| there is a macro >\IfSomething which when expanded delivers a \if. >Everything is fine as long as \if 1| is true because >then \IfSomething is expanded. But if \if 1| is false >then \fi 2| will terminate the \if 1| and it's all wrong. > >Is there anyway to define a macro \IfSomething in such a way >that TeX will recognize it as a potential conditiona'' when >conditional text is being skipped?! How do you solve this problem? The only reasonable way to solve this problem is to use macro names starting with \if for your constructs. If you need to keep their names apart from the normal TeX names, you could use \if@ or something like that. My macro code generally uses \if@something macros for this purpose. >Why do macros like \eqalign and \eqaligno use > \crcr >to terminate the preamble? I mean what is the difference >compared to using \cr to terminate a preamble? These macros use \crcr just on the off chance that you may have ended your \eqalign with a \cr. \crcr is only different from \cr in that it does nothing if immediately preceeded by a \cr, so it can safely be used when you don't know whether the user has put in a \cr already (as is often the case in table or array structures). Mike Schmidt Subject: Re: TeXhax digest V89 #32: \renewcommand {\endth} Keywords: LaTeX, \renewcommand Ian Moor asked about the error message "\endth already defined" when attempting a \renewcommand {\endth}{{\bf endth}}. I am no LaTeX expert -- in fact, I never use LaTeX --- but it seems from testing that LaTeX looks explicitly for command of the form \end and rejects them as "already defined", even if they are not. Presumably this is because LL defines \end on the fly, perhaps as a side effect of defining ? Anyhow, it looks as if you cannot define your own \end s. Philip Taylor Royal Holloway and Bedford New College. P.S. Try using \message {\meaning \endth}, and \tracingall \newcommand {\endth}{{\bf endth}} ----------------------------------------------------------------------------- Date: Mon, 1 May 89 21:17 EDT From: "Jerry Leichter (LEICHTER-JERRY@CS.YALE.EDU)" Subject: \newcommand and \endxxx Keywords: LaTeX, \newcommand , \endxxx In a recent TeXhax, Ian Moor reports that LaTeX's \newcommand will not allow him to define a command named \endth, even though \@undefined reports that it is undefined. \newcommand contains a special-case check that prevents macros whose first three characters are "end" from being defined. Presumably this is there as a safety feature: The definition of \end{xxx} is essentially: If \endxxx is defined, expand it; else do nothing. (Of course, \end also does other processing to close up the current environment.) That's what allows you to turn any command into an environment - \begin{tt} works even though there is no \endtt macro. Now, if you were to define an \endtt macro, you might be very surprised to see it expanded at the end of your \begin{tt} environment, when you intended nothing of the sort. There is no way around this in LaTeX, but you can use \def directly. Of course, this disables ALL of LaTeX's checking, so you need to be careful about what you define. LaTeX contains a lot of undocumented macros, and not all of them contain @-signs. (Most do, but there are quite a number of things that were clearly intended to be style file parameters, but never made it into the LaTeXbook. The only way to learn about them is to read the LaTeX source.) Jerry --------------------------------------------------------------------------- Date: Wed, 3 MAY 89 18:21:24 BST From: CHAA006%vaxb.rhbnc.ac.uk@NSFnet-Relay.AC.UK Reply-To: Philip Taylor (RHBNC) Subject: TeXhax-digest V89 #32 (DVILASER/PS, PostScript in DVI, \PrintChart) Keywords: DVILASER/PS, PostScript in DVI, \PrintChart Gustav Jeppesen & Per Nikolaj D. Bukh asked about including SAS generated PostScript in DVI, using ArborText's DVILASER/PS. Although I have not use SAS, I have used ArborText's \PrintChart macro (admittedly somewhat modified) to include PostScript files at the DVI/PS stage. Here is my modified version, which has been cobbled about a bit to support LaTeX rather than Plain TeX. I can supply the original on request, but finding it will take a little longer. I think the only change would be to replace the \fbox {} with a \vbox {}; the former, I believe, draws a frame around the included figure. Philip Taylor Royal Holloway and Bedford New College [Start of included file: PrintChart.TeX] % % A very arcane TeX/PostScript macro % ================================== % \def \PrintChart file: #1 width: #2 height: #3 x-offset: #4pt y-offset: #5pt scale-factor: #6 options: #7{% \vskip 10pt \nobreak \setbox0=\hbox {% \dimen0 = #2% \hbox to #6\dimen0{% \dimen0=#3% \vbox to #6\dimen0{% \vss \special {ps::[asis,begin] 0 SPB /ChartCheckPoint save def /showpage {} def Xpos Ypos translate #6 dup scale #4 72 mul 72.27 div neg #5 72 mul 72.27 div neg translate }% \special {ps::#7} \special {ps:plotfile #1 asis}% \special{ps::[asis,end] ChartCheckPoint restore 0 SPE }% }% \hss }% }% \fbox{\unhcopy0} \vskip 10pt } ---------------------------------------------------------------------- Date: Thu, 4 May 89 12:38 GMT From: SCCS6038%IRUCCVAX.UCC.IE@Forsythe.Stanford.EDU Subject: Bibliography page sizes.... Keywords: LaTeX, BibTeX Hi all, I am wondering if anyone in TeX lans can solve my problem. I have been using LaTeX for some time and possess a SMALL knowledge of how the entire operation is put together. This is my problem. I am attempting to format a document for printing on A4 size paper. I need the left margin (by the way am printing simgle sided) 40mm and the right margin a size of 20mm. Also in I need the page number one ince from the bottom of the page. So far so good. All this I have been able to achieve !!!! (I am using report style --- a hacked version). My problem is as follows..... To crossreference any references I use the THEBIBLIOGRAPHY environment (I no NOT use BIBTeX, and have no real desire to do so). However upon printing my resulting document I find that the right margin on the pages allocated to the references has a margin well in excess of 20mm. Its size is irrelevant --- I need it to be 20mm. While my settings appear to work on the text of the chapters, the setting does not appear to influence the right margins of the `thebibliography' environment. To achieve my measurements I am setting values to \topmargin \textheignt \textwidth \oddsidemargin \hsize Any assistance in making the `thebibliography' environment conform to my measurements would be most grateful....... If any responses could be sent to the address below, I would most thankful... Thanks in advance..... Aidan Delaney sccs6038%iruccvax.bitnet@cunyvm.cuny.edu ------------------------------------------------------------------------------- %%% 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. %%% %%% 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@SEED.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.95 (2.98 coming) metafont 1.7 %%% plain.tex 2.94 plain.mf 1.7 %%% LaTeX 2.09 ( 8/10/88) cmbase.mf see cm85.bug %%% SliTeX 2.09 gftodvi 1.7 %%% tangle 2.9 gftopk 1.4 %%% weave 2.9 gftype 2.2 %%% dvitype 2.9 pktype 2.2 %%% pltotf 2.3 pktogf 1.0 %%% tftopl 2.5 mft 0.3 %%% BibTeX 0.99c %%% AmSTeX 1.1d %%%\bye %%% End of TeXhax Digest ************************** -------