summaryrefslogtreecommitdiff
path: root/info/digests/tex-mag/v1.n8
blob: 397f47d4201f6ab25b6a111e524011d3f0661881 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
*******************************************************************************
*                                                                             *
*   TTTTTTT       X     X M     M        GGGGGG  A Mostly Unofficial          *
*      T           X   X  MM   MM       G        Publication for Users        *
*      T   EEEEEEE  XXX   M M M M   A   G    GG  Of the TeX Computer          *
*      T   E       X   X  M  M  M  A A  G     G  Typesetting System.          *
*      T   EEEE   X     X M  M  M AAAAA  GGGGGG                               *
*          E                     A     A         Volume 1, Number 8           *
*          EEEEEEE              A       A        Distribution: 537 or so...   *
*                                                                             *
*******************************************************************************

November 14, 1987

Contents:
\footnote............................................................1
Letters to the Editor................................................2
Left justified text within LaTeX's eqnarray environment..............3
sprite.sty: A LaTeX macro............................................4
Contents of Tugboat 8#3..............................................5
The Toolbox..........................................................6

__1
\footnote{Heaven, I'm in Heaven...}

It's finally happened: this is the first issue of TeXMaG that I
haven't written a single article for (unless you count this bit at the
beginning). Other major accomplishments in this issue include a very
amazing macro from Martin Costabel which allows simple raster-image
characters to be drawn in LaTeX. Next time you need a schwa or fancy H
or whatever, you can get something presentable without using Metafont.
Also in this issue are the contents of the latest TUGboat, which for
the first time are making it out before the actual TUGboat does (for
those of you interested in joining/getting information about The TeX
Users Group, an address is in the back of this issue).

   In other news, I'm told that some of the TeXMaG back issues are
available on the PCTeX Bulletin Board. Dominik (whose last name I
do not have) <DOW@HARVUNXW.BITNET> writes "What I did was this: I
logged on to the BBS, which is a Fido system. Its phone number is
(415) 388-1708, and the communications protocols are 300/1200 baud
No parity, 8 bit data, 1 stop bit. Once into the board (after giving
your name etc.) go to the Files section, area 4, which is called
\fido\texhax. There you will find a couple of issues of TeXMaG
(numbers 1 and 7 when I last looked)." If anybody knows how these got
there or could get the others up on the bulletin board, I'd like to
hear from you.

   G'day
   -Don Hosek <DHOSEK@HMCVAX>

Word of the Month: Antediluvian











__2
*Letters to the Editor*

Date: Tue, 20 Oct 87
From: SCHOEPF@DMZRZU71.BITNET
Subject: Re: timelines in \TeX

Hello Don,
You have this problem with the comment after the "\end{timeline}" in
LaTeX. Someone here recently had the same problem when he used
\newenvironment, so I looked into the LaTeX code to see how Leslie
Lamport does it. Here's what I found:

> %  If \end{foo} needs to ignore blanks after it, then \endfoo should
> %  globally set the @ignore switch true with \global\@ignoretrue.

     Rainer Schoepf
     Inst. f. Physik
     Univ. Mainz
     Staudinger Weg 7
     D-6500 Mainz
     West Germany
     <SCHOEPF@DMZRZU71.BITNET>





__3
*Left justified text within LaTeX's eqnarray environment*
By Chris Carruthers <CXC2F@UOTTAWA.BITNET>

Time and time again LaTeX users find that the the eqnarray environment
is very useful but that a feature which is lacking is the ability to
intersperse aligned equations with left-justified text. It turns out
that there is a very easy way to do this: use the TeX \noalign
primitive (as documented in the TeXbook). The following LaTeX sample
gives an example of how this might be done.

%%%----Pretend this is in typewriter type and that wasn't-------------
\documentstyle{article}
\begin{document}
\begin{eqnarray}
test &1 &2 \\
\noalign{\hbox{test}}
test & 3 & 4
\end{eqnarray}
\end{document}
%%%----OK, stop pretending now----------------------------------------

Which produces results something like the following (given the
limitations of ASCII text):


          test  1  2       (1)
test
          test  3  4       (2)



__4
*sprite.sty: A LaTeX Macro*
By: Martin Costabel <XBR1DA29@DDATHD21.BITNET>

sprite.sty is a LaTeX macro that allows you to define in a quick and
dirty way your own symbols. You just have to define the character as
a dot pattern on your screen and enclose it by \sprite and \endsprite
commands. Of course, I know, TeX is awfully professional and this
primitive technique will not provide results as good as a MetaFont-
designed character or even one drawn using device-dependent \special
commands, but if you just need one special character or some cute
little symbol and you don't have the time/brains/MacIntosh/
superuser-privilege/money-for-AmS-fonts/or-whatever-is-necessary for
a professional solution, this might produce acceptable results.

The following SPRITE.STY and SPRITEUSE.TEX files should explain
themselves. Two words of caution are in order, however:

Warning #1: Do not use many of these home-made characters on one page.
Otherwise you will see the "TeX capacity exceeded" error message. In
SPRITEUSE.TEX, my Atari ST on which I am doing most of my TeX work,
finished the first page all right, but on the second one it stopped
after the 'F'. Our VAX finished both pages.

Warning #2: If you tend to believe that your favorite Laser printer
can print every .dvi file, you may be in for a surprise. Some
DVI-drivers are not very good in printing \vrule s (out of which these
characters are composed). Even if it looks good on a screen previewer
or on a dot matrix printer, your Laser printer may produce weird
error messages or garbage without any error message. Our Canon LBP8
interpreted the \ScriptH as a command to print one horizontal bar and
to screw up the rest of the page. The cheaper Kyocera printer did OK
as long as there was only one of these symbols in one line. Otherwise
it spread them over several lines. I wonder whether such an illegal
behavior has been observed in other cases (LaTeX picture environment
etc.) [[Editor's note: Our Apple Laserwriter driven by Nelson Beebe's
DVIALW printed the file with no problems as did our QMS-800 driven by
the Texas A&M DVILG8 (adapted from Tomas Rokicki's DVIGEN); DVItoVDU,
on the other hand, seemed to add extra pixels to certain "sprites".]]

SPRITE.STY is written using some of LaTeX's bookkeeping commands (like
\newcommand) that could easily be replaced by plain TeX equivalents.
It also uses two of LaTeX's internal LISP commands. If one steals
these from LATEX.TEX, the translation to plain TeX would be very easy.
Another comment: One cannot use the orthodox LaTeX
\begin{sprite}..\end{sprite} style, because this hides all definitions
made in between from outside use.

%%%--Cut Here------------------------------------------------------
%%%%%%%%%%%%% SPRITE.STY %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% LaTeX style option SPRITE.STY ( Martin Costabel 27-Oct-1987 )
%% Use: \documentstyle[...,sprite,...]{...}
%\makeatletter          %use this if you \input{sprite.sty}
%% New command:
%%
%% \sprite{cmd}(lins,cols)[wdth,hght] pixels \endsprite
%%
%% Here:
%% cmd is a command sequence which is afterwards the name of the new object.
%%     It is defined as \usebox{cmd@box}, so there is also a new box cmd@box.
%% wdth and hght are the width and height of the new object.
%% pixels is a sequence of lins lines, each of which starts with a `:'(colon),
%%     ends with a `|'(vertical bar), and contains cols pixels which are
%%     either a `.'(period, meaning a white pixel) or a `B'(capital B, meaning
%%     a black pixel). Blank spaces are ignored.
%%
\newlength{\@pxlwd} \newlength{\@rulewd} \newlength{\@pxlht}
\catcode`.=\active \catcode`B=\active \catcode`:=\active \catcode`|=\active
\def\sprite#1(#2,#3)[#4,#5]{
   \edef\@sprbox{\expandafter\@cdr\string#1\@nil @box}
   \expandafter\newsavebox\csname\@sprbox\endcsname
   \edef#1{\expandafter\usebox\csname\@sprbox\endcsname}
   \expandafter\setbox\csname\@sprbox\endcsname =\hbox\bgroup
   \vbox\bgroup
      \catcode`.=\active\catcode`B=\active\catcode`:=\active\catcode`|=\active
      \@pxlwd=#4 \divide\@pxlwd by #3 \@rulewd=\@pxlwd
      \@pxlht=#5 \divide\@pxlht by #2
      \def .{\hskip \@pxlwd \ignorespaces}
      \def B{\@ifnextchar B{\advance\@rulewd by \@pxlwd}{\vrule
         height \@pxlht width \@rulewd depth 0 pt \@rulewd=\@pxlwd}}
      \def :{\hbox\bgroup\vrule height \@pxlht width 0pt depth 0pt\ignorespaces}
      \def |{\vrule height \@pxlht width 0pt depth 0pt\egroup
         \prevdepth= -1000 pt}
   }
\def\endsprite{\egroup\egroup}
\catcode`.=12 \catcode`B=11 \catcode`:=12 \catcode`|=12\relax
%\makeatother           %use this if you \input{sprite.sty}
%%%%%%%%%%% End of SPRITE.STY %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%---Cut here--------------------------------------------------------
%%%%%%%%%%% SPRITEUSE.TEX %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Example for the use of SPRITE.STY ( Martin Costabel 27-Oct-1987 )
\documentstyle[12pt,sprite]{article}
\begin{document}
\newsavebox{\CalH} \sbox{\CalH}{${\cal H}$} % Get the size of \cal H.
\newcommand{\ScriptH}%                        Some fine-tuning of the
{\raisebox{-0.5 pt}{\SH}\kern 1 pt}%          positioning might be necessary
\sprite{\SH}(33,65)[\wd\CalH, \ht\CalH]     % The size will be the same
                                            % as for \cal H.
                                            % Resolution ca. 250x500 dpi
:..........BBBBBBBB.............BBB..................BBBBBB....... |
:........BBBB....BBB..........BBBBB..............BBBBBB...BBBB.... |
:........BB.......BBB.......BBB.BBB............BBBBBB.......BBBB.. |
:........BB.......BBB.....BBB..BBBB..........BBBBBB..........BBB.. |
:........BB.......BBB....BB...BBBB.........BBBBBB............BBBB. |
:........BB.......BBB...BB....BBBB.........BBBBB.............BBBB. |
:..................BBBBBB.....BBB.........BBBBB..............BBBB. |
:............................BBBB........BBBBBB..............BBBB. |
:...........................BBBB.........BBBBB...............BBBB. |
:...........................BBBB.........BBBBB...............BBB.. |
:..........................BBBB.........BBBBB...............BBBB.. |
:..........................BBBB.........BBBB...............BBBB... |
:.........................BBBB.........BBBBB..............BBBB.... |
:.........................BBBB.........BBBB..............BBBB..... |
:........................BBBBB.........BBBB............BBBBB...... |
:........................BBBB.........BBBB..........BBBBBB........ |
:.......................BBBBB.........BBBB.....BBBBBBBB........... |
:..........BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB................ |
:.......BBBB...........BBBBB.........BBBB......................... |
:.....BBBB.............BBBBB........BBBBB......................... |
:....BBB...............BBBB.........BBBB.......................... |
:...BB................BBBB.........BBBBB.......................... |
:..BBB...............BBBBB.........BBBB........................... |
:.BBB................BBBB..........BBBB........................... |
:.BBB...............BBBB..........BBBB............................ |
:BBB...............BBBBB..........BBBB..................B......... |
:BBB..............BBBBB...........BBBB.................BB......... |
:BBB.............BBBBB............BBBB................BBB......... |
:BBB............BBBBB..............BBBB..............BBB.......... |
:BBB...........BBBBB................BBBB...........BBBB........... |
:.BBBB........BBBB...................BBBB........BBBB............. |
:...BBB.....BBBB.......................BBBB....BBBBB.............. |
:.....BBBBBBB.............................BBBBBBB................. |
\endsprite

\def\schwa{\FormOfSchwa\kern 1 pt} % Only necessary if \kern... is wanted
\sprite{\FormOfSchwa}(16,24)[0.4 em, 1 ex] % Resolution ca. 200x340 dpi.
:.......BBBBBBBBBB....... |
:....BBBB........BBBB.... |
:..BBB.............BBBB.. |
:.BB.................BBB. |
:.B...................BBB |
:.....................BBB |
:.....................BBB |
:.....................BBB |
:BBBBBBBBBBBBBBBBBBBBBBBB |
:BBB..................BBB |
:BBB..................BBB |
:BBB.................BBB. |
:.BBB...............BBB.. |
:..BBBB...........BBBB... |
:....BBBBB.....BBBBB..... |
:.......BBBBBBBB......... |
\endsprite
% Now we can use it

\section{Here is a script \protect\ScriptH :} % It is fragile!
You can use it also in Formulas:
$$ H \neq \ScriptH \neq {\cal H}$$
And we defined also some kind of Sch\schwa wa.

\newpage
\section{\TeX\ capacity exceeded?}
If you have too many of these on one page, your \TeX\ might give up:
A \ScriptH \\
B \schwa   \\
C \ScriptH \
D \schwa   \\
E \ScriptH \\
F \schwa   \\
G \ScriptH \ etc.
\end{document}
%%%%%%%%%%%%%End of SPRITEUSE.TEX %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%---And Cut here----------------------------------------------------





__5
*Contents of TUGboat 8#3*
By Barbara Beeton <BNB@SEED.AMS.COM>

This issue is at the printer now. It should be in the mail by the end
of the month.

Contents, TUGboat 8#3, November 1987

General Delivery
    Bart Childs              From the President
    Rilla Thedford           The Volunteer Tree
    Charles-Michel Marle     Book publishing using TeX
    Laurie Mann              TeX training, etc. -- A TUG meeting trip
                              report
    Barbara Beeton           From the Editor

Software
    Bart Childs              Proposed minimum standards for TeX
                              distributions
    Thomas J. Reid           TANGLE modification causes problems in
                              Metafont and PK files
    Hyphenation exception log

Fonts
    Doug Henderson           Update: Metafont mode_def settings for
                              TeX output devices
    Adrian F. Clark          Halftone output from TeX
    Aarno Hohti              Generating an APL font
     and Okko Kanerva

Output Devices
    Don Hosek                TeX output devices (with charts)
    Thomas J. Reid           DVI driver considerations for
                              high-volume printing systems
    Glenn L. Vanderburg      \special issues
     and Thomas J. Reid

Site Reports
    Graham Toal              TeX information for users in the U.K.
    Malcolm Brown            TeXhax Notes
    Joachim Lammarsch        6th Meeting of the ``TeX-Interessenten''
                              in Germany
   *Atari ST:
    Klaus Guntermann         Atari ST site report
   *Data General:
    Bart Childs              Data General site report

Typesetting on PCs
    Mitch Pfeffer            Running TeX on a 386-based computer:
     and Alan Hoenig          Twice as fast as an AT

Macros
    Christina Thiele         What constitutes a well-documented macro?
    Donald E. Knuth          Macros for Jill
    Thomas J. Reid           Floating figures at the right, and some
                              random text for testing

LaTeX
    Ken Yap                  Contents of LaTeX style collection as of
                              15th September 1987
    Jackie Damrau            The LaTeX user's column

Queries
    Peter Flynn              Request for contributions to a new publication
    Jeffery Boes             Reply: Printing out selected pages
    Stephen C. Lipp          Title formatting macro wanted

News & Announcements
    Calendar
    Exeter University: TeX88, 18-20 July 1988
    Call for papers: TUG Annual Meeting, Montreal, 22-24 August 1988




__6
*The Toolbox*

From Rainer Schoepf <SCHOEPF@DMZRZU71>, we have some assorted macros
for high energy physics texts. Rainer writes: In high energy physics
there is a special notation consisting of a symbol (e.g. p)
overprinted by a slash, pronounced: p-slash. \not p does this, of
course, but it doesn't look as it should. After some experiments with
slashes from different fonts we arrived at the following two
solutions. The second of these does also vertical positioning.
Therefore the first one looks better if there are several slashed
symbols with different height and/or depth in a line.

%%%--Cut Here---------------------------------------------------------
\def\slasha#1{\setbox0=\hbox{$#1$}#1\hskip-\wd0\hbox to\wd0{\hss\sl/\/\hss}}
\def\slashb#1{\setbox0=\hbox{$#1$}#1\hskip-\wd0\dimen0=5pt\advance
       \dimen0 by-\ht0\advance\dimen0 by\dp0\lower0.5\dimen0\hbox
         to\wd0{\hss\sl/\/\hss}}
% Four macros for Dirac's bracket notation of expectation values
\def\bra#1{\left< #1\right|}
\def\ket#1{\left| #1\right>}
\def\bracket#1#2{\left<#1\mid #2\right>}
\def\EV#1#2#3{\bra{#1}#2\ket{#3}}
% And finally a macro for printing so-called `normal ordered' products
% They are denoted by a colon on either side
\normalord#1{\mathopen{:}#1\mathclose{:}}
%---------------Cut here---------------------------------------------
My own contribution this month is a macro for what I believe is a
European convention for indicating vectors requested by a visiting
professor at Harvey Mudd College. The \undertilde macro puts a tilde
under the character in its argument. This command should work with any
math character, although the best results will be arrived at with
letters and numbers. To use \undertilde with a non math-italic letter,
you will need to include the typeface command in the argument to
\undertilde, e.g., \undertilde{\rm B}.
%---------------Cut here---------------------------------------------
\def\undertilde#1{\mathord{\vtop{\ialign{##\crcr
   $\hfil\displaystyle{#1}\hfil$\crcr\noalign{\kern1.5pt\nointerlineskip}
   $\hfil\tilde{}\hfil$\crcr\noalign{\kern1.5pt}}}}}
% That's it!-----Cut again--------------------------------------------



__7
TeXMaG is an electronic magazine published by the Harvey Mudd College
Mathematics Department available free of charge to all interested
parties reachable by electronic mail. It is published sporadicly, and
the editor likes to think that its monthly so the readers humor him.
Subscription requests should be sent to Don Hosek
<DHOSEK@HMCVAX.BITNET> or send the following message to
LISTSERV@BYUADMIN: SUBS TEXMAG-L Your_Full_Name.  European subscribers
may send the SUBS command to LISTSERV@DEARN, subscribers on CDNnet
should send subscription requests to <list-request@ubc.csnet> (being
sure to mention that they wish to subscribe to TeXMaG), and JANET
subscribers should send requests to be added to the list to Peter
Abbott, <ABBOTTP@UK.AC.ASTON.MAIL>. Back issues are available for
anonymous FTP in the file BBD:TEXMAG.TXT on SCIENCE.UTAH.EDU. They
may also be obtained from Don Hosek <DHOSEK@HMCVAX.BITNET>. Article
submissions, contributions for the Toolbox, and letters to the editor
are always welcome and should be sent to <DHOSEK@HMCVAX.BITNET>.

Other publications of interest to TeX users are:

TeXHAX. Arpanet mailing list for persons with questions, suggestions,
etc.. about TeX, LaTeX, MetaFont and related programs. Submissions for
this list should be sent to <TeXHAX@SU-SCORE.ARPA>. BITNET users may
subscribe by sending the following command (as an interactive message
or as the first line of a mail message) to LISTSERV@TAMVM1:
SUBS TEX-L your_full_name. The list is peer-linked to other listserves
in the United States and Europe. Internet subscribers may subscribe by
sending a request to <TeXHAX-REQUEST@SU-SCORE.ARPA>. The TeX-L mailing
list is a ``hybrid;'' i.e., it is both an ARPAnet redistribution, and
a BITNET discussion list. Submissions for TeX-L (only --- they will
_not_ be forwarded to TeXHAX) may be sent to TeX-L@TAMVM1.
LISTSERV@TAMVM1 also has file archives that may be of interest to TeX
users on BITNET, including the files from the SU-SCORE FTP directories
and back issues of TeXHAX. For a list of files available, send the
following command to LISTSERV@TAMVM1: GET TeX FILELIST.

Unix-TeX. Arpanet mailing list specifically for users of TeX under the
Unix operating system. Submissions for this list should be sent to
<Unix-TeX@WASHINGTON.ARPA>. Requests to be added or deleted from the
mailing list should be sent to <Unix-TeX-Request@WASHINGTON.ARPA>.

TUGBoat.  A publication by the TeX Users Group. An excellant reference
for TeX users. For more information about joining TUG and  subscribing
to TUGBoat send (real) mail to:
     TeX Users Group
     c/o American Mathematical Society
     P. O. Box 9506
     Providence, RI 02940-9506, USA