TeXhax Digest Sunday, June 3, 1990 Volume 90 : Issue 48 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: Problem with BibTeX for VMS Re: Problem with BibTeX under VMS Macintosh LaTeX - using PostScript fonts TeX macro TeX and Metafont Re: TeXhax Digest V90 #43 TeX files corruption over networks. Printing a portion of a .dvi or .ps file through a laser printer. Re: Printing a portion of a .dvi or .ps file through a laser printer. ------------------------------------------------------------------------- Date: Wed, 9 May 90 14:11 MET From: "Johannes L. Braams" Subject: Problem with BibTeX for VMS Keywords: BibTeX, VMS Hi all, We are experiencing a problem with the VMS implementation of BibTeX by Northlake software. My diagnosis sofar is that the way filenames are handled in this implementation causes a problem when the logical name TeX_Inputs is defined as a search list with e.g. $ define tex_inputs [mydir],texinputs,texsamples In this case bibtex searches only the first member of the search list ([mydir]) for its style file. Ofcourse it can not find the file there. BibTeX then complains that it cann't find the file instead of looking in TeXinputs (which is a search list as well...) If anybody knows a fix for this, please contact me. I have located where filenames are handled in BibTeX.ch and I suspect the routine add_defaults, which joggles with FAB-fields like FAB$L_DNA, where it puts defaults to be used by RMS when an incomplete filespec is given. It might be that this causes the problem, the original Bibtex just puts TeXinputs infront of the filename Thanx in advance, Johannes Braams ------------------------------------------------------------------------------- Date: Fri, 11 May 90 15:15 PDT From: DHOSEK@HMCVAX.CLAREMONT.EDU Subject: Re: Problem with BibTeX under VMS Keywords: BibTeX, VMS [Johannes described a problem with the NLS BibTeX] The public domain BibTeX change file for VMS (available from ymir.claremont.edu in [anonymous.tex.sources.bibtex0_99] handles search paths correctly. You may want to use that version instead (it is also defined through the VMS CLI). -dh ------------------------------------------------------------------------------- Date: Tue, 08 May 90 09:27:21 +0100 From: J.Pearce@Cs.Ucl.AC.UK Subject: Macintosh LaTeX - using PostScript fonts Keywords: Macintosh, Latex, PostScript Could anyone please tell me if it is possible to use PostScript fonts in LaTeX on the Macintosh (TeXtures/OzTex) ? John R. Pearce. jpearce@uk.ac.ucl.cs Computer Science Department University College London. ---------------------------------------------------------------------------- Date: Mon, 07 May 90 18:02:33 EDT From: INHB000 Subject: TeX macro Keywords: macro, TeX Here is a solution to the question of John de Pillis, who writes: > I would like to design a macro > which would be called as follows: > > \DoWork{abc} > > The result within the macro is: > 1. Counter \abc is created > 2. A new macro, \xabc , is created. > > After calling macro \DoWork{abc}, I would like > to call the induced macro \xabc > > Can you tell me how dto do this? I am having > trouble with the all the backslashes among other things. In answer to your TeXhax question, here is a solution and example: \catcode`\@=11 \def\inewcount{\alloc@0\count\countdef\insc@unt} \catcode`\@=12 \def\DoWork#1{\expandafter\inewcount\csname#1\endcsname \expandafter\def \csname x#1\endcsname##1{\number\csname #1\endcsname##1}} \DoWork{abc} \abc=17 \xabc4 \bye What's going on here? Forget the first three lines for the moment. The line: \expandafter\inewcount\csname#1\endcsname means first create a new name called \#1 and then apply the procedure \inewcount to it. Since \inewcount is the same (almost) as \newcount, this defines that new counter. (Actually, the backslash is NOT part of the new name as you easily discover if you do something like \catcode`/<=0, in which case cmb10.159.snf # ... ******************************* but the MF program produces "*.3382gf" files. My "mf" script file is ******************************** case "$0" in */mf|mf ) virmf $*; exit;; */logomf|logomf ) virmf '&logoplain' $*; exit;; */cmmf|cmmf ) virmf '&cmplain' $*; exit;; *) echo "don't know how to be $0" 1>&2; exit 1;; esac ******************************** as described in the TeX documentation. If anyone has successfully generated the required fonts I would greatly appreciate any help in this matter. Eric J. Grajales Senior Engine Martin Marietta ------------------------------------------------------------------------------- Date: Tue, 8 May 90 14:51 MET From: "Johannes L. Braams" Subject: Re: TeXhax Digest V90 #43 Keywords: LaTeX, oldstyle Alex Ho asks about oldstyle digits in LaTeX, here's a solution: \def\old{\protect\pold} \ifcase\@ptsize \def\pold{\fam\@ne\tenmi} \or \def\pold{\fam\@ne\elvmi} \or \def\pold{\fam\@ne\twlmi} \fi Put the above lines in a style-file and load it after one of xxx10.sty, xxx11.sty or xxx12.sty has been loaded. You will than be able to say something like $\old 1234$ and get oldstyle digits. In his answer to the question by Dale Gerdeman, Michael Barr says he will work out someday what needs to be done to be able to define a new font in such a way, that commands like \large have their usual effect. In the file sfb.sty I submitted a couple of weeks ago this has been implemented. Regards, Johannes Braams ----------------------------------------------------------------------------- Date: Tue, 08 May 90 08:45:24 IST From: "Jacques J. Goldberg" Subject: TeX files corruption over networks. Keywords: TeX, corruption, files, network I failed to note the name of the author of a remark, that TeX files using 8 moments codes might get corrupted over networks due to incomplete and/or incompatible character conversion tables. This indeed already is a problem with 7 moments codes and is going to become worse. For readers who do not understand the problem, and will thus sooner or later waste much time finding out why a transmission failed, I append below the EBCDIC/ASCII and ASCII/EBCDIC translation tables which happen to be plugged at this time in VM-KERMIT at my site, one of many tools widely used for file transfers. Of course such tables exist everywhere where an XYZ mainframe is interfaced to anything else (XYZ is the encrypted name of a large equipment manufacturer whose OWN small and large machines use incompatible codes). Fortunately, as always, there is a very simple solution. The TeX book says, on page 43, that you may write \char98 u\char98\char98 le instead of the word bubble . This trick is useful if the b key is broken on your keyboard of course, but it would just the same avoid corruption if that symbol had any special meaning for networking purposes. Ridiculous, you say ? Nope, just try to pass a text file over mailers with a line containing only a . ( period) in column one (and it's often enough that the line begins with a . whatever comes behind). The leading period simply identifies a command line in BSMTP network control. Writing a pair of utility programs (in C please, so that they can be ported) that would FILTER outbound and inbound TEX files, so that such characters that might be error prone, be transmitted as \char??? sequences, is a trivial job. HOWEVER setting up the list of characters to be filtered/restored is not. This Forum might be the place to set this list NOW, before it is too late, so that EVERYBODY uses the same one version of matching programs, one to filter before mailing, the other to restore after receiving. As a first step towards iteration I would suggest to send as \char sequences any ASCII code below 32 and above 127 plus the . (period) {} ( curly ) [] ( square ) ^ ( caret ) and ~ ( tilde ) characters which I know not to be universally mapped or to create network problems. Here are the two demo tables: the input character with value n is translated into the value sitting in location n in the table. tdump atoe 00010203 372D2E2F 1605250B 0C0D0E0F 10111213 3C3D3226 18193F27 1C1D1E1F 405A7F7B 5B6C507D 4D5D5C4E 6B604B61 F0F1F2F3 F4F5F6F7 F8F97A5E 4C7E6E6F 7CC1C2C3 C4C5C6C7 C8C9D1D2 D3D4D5D6 D7D8D9E2 E3E4E5E6 E7E8E9AD E0BD5F6D 79818283 84858687 88899192 93949596 979899A2 A3A4A5A6 A7A8A9C0 4FD0A107 00010203 372D2E2F 1605250B 0C0D0E0F 10111213 3C3D3226 18193F27 1C1D1E1F 405A7F7B 5B6C507D 4D5D5C4E 6B604B61 F0F1F2F3 F4F5F6F7 F8F97A5E 4C7E6E6F 7CC1C2C3 C4C5C6C7 C8C9D1D2 D3D4D5D6 D7D8D9E2 E3E4E5E6 E7E8E9AD E0BD5F6D 79818283 84858687 88899192 93949596 979899A2 A3A4A5A6 A7A8A9C0 4FD0A107 tdump etoa 00010203 0009007F 0000000B 0C0D0E0F 10111213 00000800 18190000 1C1D1E1F 00000000 000A171B 00000000 00050607 00001600 00000004 00000000 1415001A 20000000 00000000 00005C2E 3C282B7C 26000000 00000000 00002124 2A293B5E 2D2F0000 00000000 00007C2C 255F3E3F 00000000 00000000 00603A23 40273D22 00616263 64656667 6869007B 00000000 006A6B6C 6D6E6F70 7172007D 00000000 007E7374 75767778 797A0000 005B0000 00000000 00000000 00000000 005D0000 7B414243 44454647 48490000 00000000 7D4A4B4C 4D4E4F50 51520000 00000000 5C005354 55565758 595A0000 00000000 30313233 34353637 38397C00 00000000 OPAL, an international collaboration of about 300 physicists in 24 laboratories working at the new LEP 27 km particle smasher which the press wrote about last Fall, successfully uses TeX for document circulation. Adjusting the networking loose ends took a few months. The problem is not technical, it's managerial. From this experience I do believe that ALL we need is to agree on one common list of characters that everybody will mail as \char sequences, the rest is completely trivial. Jacques Goldberg PS: I tried, but I cannot resist adding this. The XYZ manufacturer quoted above sells a device to hook up ASCII terminals to their mainframes, a 7171 they name it. Would you believe that its default translation table converts a BACKSLASH ( yes, the \ ) into something which TeX does not understand? Fortunately "XYZperts" know a feature to correct that even without altering this table ( SET INPUT 4A E0 in this case). ---------------------------------------------------------------------------- Date: Tue, 8 May 90 09:08 EST From: MICHELLE@atc.bendix.com Subject: Printing a portion of a .dvi or .ps file through a laser printer. Keywords: .dvi, .ps, printing, laserjet >>How can I print only a portion of .dvi or .ps file through a >> laser printer on a main frame? >> Sang-il (lee@hydro.stanford.edu) There are two techniques of which I am currently aware. (I'll forward your message to others for completeness.) There exists a program called "DVISELECT" which runs on Unix which permits you to specify the pages to be printed. The output of this program is then run through the appropriate laser-printer specific program to produce laser-able code. (Unfortunately, I don't know where to get it or even if your machine could support it.) More primitive is the technique I use. We have Talaris laser printers with QUIC and EXCL code supported. So, after I DVI-TO-QUIC or DVI-TO-EXCL I merely edit the resulting file to extract the pages I want. It's not elegant, but it works. Sorry I couldn't be of more help; hopefully, some one else will be able to pick up the ball where I left off. Michelle McElvany Allied-Signal Aerospace Company Columbia, MD michelle@atc.bendix.com ------------------------------------------------------------------------------ Date: Tue, 8 May 1990 12:24:40.01 CST From: (George D. Greenwade) Subject: Re: Printing a portion of a .dvi or .ps file through a laser printer. Keywords: .dvi, .ps, printing, laserjet We have a strictly VMS shop, so my answer is representative only for only our one shop under that specific platform. We have an interpreter called LN03DVI which is my personal favorite for LN03 printing. It allows for the use of various modifiers. To get what you want, there are a few possibilities under LN03DVI. -n First, you can specify LN03DVI-n# filename, where the -n is the number (#) of pages to print from the beginning of the document. Thus to print the first 3 pages of JUNK.DVI (which we will assume to be a 900 page document!), use LN03DVI-n3 JUNK which creates JUNK.LN3 for you to submit as a print job. -s Alternately, you can specify LN03DVI-s# filename, where -s identifies the page number (the \thepage numbers associated with the DVI file) to begin printing on. Thus, to print the last 20 pages of JUNK.DVI, use LN03DVI-s981 JUNK which creates another JUNK.LN3 for your submission. Mixing -s and -n Finally, you can specify page to begin (-s) and number of pages to print (-n) in a mixed combination to get a specific range of pages. Thus, LN03DVI-s20-n5 would begin on DVI page 20 and print the following five pages to a .LN# file for printing. OTHER VMS INTERPRETERS WE USE AND THEIR QUIRKS Other interpreters we use include DVIALW (which creates a filename.DVI-ALW; basically a PostScript output designed for the Apple LaserWriter), DVIJEP (which creates a filename.DVI-JEP; Hewlett-Packard LaserJet Plus), DVIJET (which creates a filename.DVI-JET; Hewlett-Packard 2686A Laser Jet), DVIL3P (which creates a filename.DVI-L3P; Digital LN03-Plus Laser), DVIL75 (which creates a filename.DVI-L75; Digital LA75 Dot Matrix printers), and DVIPRX (which creates a filename.DVI-PRX; Printronix 300/600 Dot Matrix). The syntax for each of these is DVIALW-o# filename to print a specific single page (#; -o9 would print page 9, for example), or DVIL75-o#:# filename to print a range of pages (#:#; -o1:5 would print pages 1 to 5, for example). There are a host of output devices available, each with its own quirks, syntax, limitations, and features. For example, this has not even attempted to identify how to landscape print, change magnification, select fonts, etc. Each of these are powerful tools. Without trying to sound mean, hard, or flaming, I would strongly advise you to contact your systems people and see what (if anything) they can additionally tell you. My experience is that they love to show off their magnificent capabilities to users who have specific questions such as this. More important, due to the wide diversity of what is available, only they know what is possible there (although you are certainly free to tell them more in an effort to expand your local capabilities, if necessary). Greetings from Huntsville, %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% George D. Greenwade, Director Bitnet: BED_GDG@SHSU Center for Business and Economic Research THEnet: SHSU::BED_GDG Sam Houston State University Voice: (409) 294-1518 Huntsville, TX 77341-2056 Internet: bed_gdg%shsu.decnet@utadnx.cc.utexas.edu %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ----------------------------------------------------------------------- %%% 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 ************************** -------