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
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
|
*******************************************************************************
* *
* 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 3, Number 1 *
* EEEEEEE A A Distribution: 1410 or so... *
, Number 1 *
* EEEEEEE A A7, 1989
\footnote............................................................1
Letters to the Editor................................................2
News
Headlines..........................................................3
First report from the DVI standards committee......................4
Call for driver information........................................5
First announcement and call for papers: TeX89......................6
Preliminary table of contents, TUGboat 10#1, April 1989............7
Layout puzzles.......................................................8
Eliminating italic corrections.......................................9
Cumulative index: V1N1-V3N1.........................................10
__1
\footnote{Green with envy}
Last night I came across a copy of the Proceedings of the Second
European Conference on TeX and Scientific Documentation
(Springer-Verlag), and was quite impressed with the amount and
quality of work being done in Europe with TeX. Out of curiosity, I
flipped to the front of the volume to see who the editor was. Before
I managed to find this out, I was struck instead by a comment
casually mentioning how widespread use of TeX was in Europe.
This comment probably would have passed by my attention had I not
read in Bart Childs' column in TUGboat 9(3), "Cathy Booth pointed out
that the attendance at the Exeter meeting was nearly the same as
ours. We have several times as many TUG members in the U.S. and
Canada as there are in Europe." And then a couple pages later,
Barbara Beeton writes, "TeX is accepted in Europe and other areas of
the world even more readily (if possible) than in North America."
I suspect that Barbara's "if possible" is a bit spurious and that, in
fact, TeX is far more accepted in Europe than it is in North America,
despite a rather blatant US English slant to its typography.
This issue contains some additional evidence of the truth of that
last statement: notices for TWO (count 'em TWO) European TeX
conferences, and a letter mentioning the existence of a German-only
LaTeX book. The impression that I get from my European colleagues is
that TeX is far more into the "mainstream" in Europe than it is in the
U.S. Clearly, *something* is going right with TeX in Europe.
But what?
What is the factor that has led to the wider acceptance of TeX in
Europe? Are there large numbers of European publishers supporting
TeX? Is it TeX's support of accents? Or hyphenation? I'm not even
close to being able to answer any of these questions, but I'd be glad
to hear from my subscribers to find out what you think is responsible
for this state of affairs.
G'day
-dh
__2
**********************************************************************
* Letters to the Editor *
**********************************************************************
Date: Fri, 30 Dec 88 23:42:43 est
From: rjchen@phoenix.Princeton.EDU
As part of the trailer, you have
>TeXMaG is an independantly published electronic magazine 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> . . .
I believe the fourth word should be spelled ``independently''.
``inde pendant ly'', hm, I wonder what that could mean. Pendant.
This word has potential...
BTW, the sentence starting with ``It is publised sporadically'' I found
most amusing. You might want to change [its] into [it's], though.
That's all. Keep up the good work.
======================================================================
Date: Sat, 22 Oct 88 20:45:01 GMT
From: ANDERSON%AGI.SDSCNET@SDSC.BITNET
Please sign me up for your TeXmag e-mail distribution schedule. I have
really enjoyed reading the past issues. Also I would like to offer a
"find" I made on a recent trip to Germany: Our German TeX/LaTeX
colleagues are making greater strides in *instruction* for LaTeX
use... Addison-Wesley (Bonn) has published a book (offered exclusively
in German!, i.e., *not* scheduled for English translation!) by Helmut
Kopka, "LaTeX-eine Einf\"uhrung", 1988 which I found to unlock many
mysteries of *options* for commands that, after 3 years of LaTeX use,
I was still unaware of there existence. One gold star for the German
TeX community!
-Harry Anderson, blender of LaTeX and Synthetic Peptide Chemistry
======================================================================
Date: Sun, 12 Feb 89 12:58:55 -0500
From: Ken Yap <ken@cs.rochester.edu>
Hi Don,
In a moment of idleness, I picked up back issues of TeXMaG from
Clarkson and decided I'd write the editor a letter.
I've seen queries on mailing lists and newsgroups about "How to get
TeX running on my Kludge 499?" and often the implied but unworded
query is: how come there is no central authority that knows all the
facts?
I think it would pay to step back and reflect on the complexity of the
TeX world. Here are some large areas of expertise, each of which could
easily take up all of one person's time.
+ TeX/LaTeX macro hacking: As with any complex language, the effort of
learning how to write TeX is comparable to learning a conventional
computer language like Modula-2. And as with other language, it does
no good just to spend nights in bed with the TeXbook, one has to get
one's hands dirty. (This will be a lucrative area when publishing
really discovers computerized typesetting. I can see job ads now:
"Must be fluent in C, Pascal, TeX and PostScript.") Mutatis mutandis
for METAFONT, but to lesser extent.
+ TeX software installation: The effort of maintaining TeX software on
a system is comparable to that of maintaining a compiler and
associated files. Just think of all those macros and style files you
had to install, those times when users came running in with "what does
it mean TeX capacity exceeded." Proof of this is that we have
enterprises selling turnkey pre-configured TeX systems. Obviously some
sites do not have the personnel to worry about such things.
It is also worth remembering that TeX is a very portable piece of
software running on many diverse machines and no-one can know about
the intricacies of every implementation.
+ TeX enhancements and software distribution: There are the people who
work on the leading edge, the people who worry about standardizing
\specials, merging in new contributions, etc. Site maintainers are
such people, but there are other industrious souls too. Enhancements
have to be subjected to trial use and comment.
+ TeX information dissemination: There are the people who document,
collate and publish what has been done. There is the official
TUGBOAT, the TeXHax mailing list, various local lists like UKTeX and
not forgetting TeXMaG. Often, such work involves tangling with ugly
aspects of networking.
>From this list we can see that there is no way one person or even
one site can have all the answers. TeX is a huge co-operative effort.
You can help by being aware of what's out there, by volunteering help,
by contributing a macro or two or anything at all that will reduce
reinvention of the wheel.
I hope this limited overview may help you present arguments when
requesting resources to support text processing activities. For many
sites, text processing is a major activity and deserves concommitant
allocation of personnel and materiel. I confidently predict that
text processing will be a major growth area for computer usage.
After all, computers are about information handling and not just
programs or programs to make programs.
Ken
__3
**********************************************************************
* Headlines... *
**********************************************************************
-> TeXMaG is now officially a bi-monthly. It will be published
somewhere in the middle of every even-numbered month.
-> For those of you who might have experienced difficulty retrieving
files from sun.soe.clarkson.edu (home of the LaTeX style
repository), the problem has been fixed: there had been a disk
failure causing the files from pub to be inaccessible for a few
days.
-> TeX is officially at version 2.96 and MF at version 1.7. There
have also been some updates to a few of the CM MF files. Your
site's TeX maintainer should get new copies of the appropriate
files if this has not already been done.
-> LaTeX is also at a new version, the latest being dated 8 Feb 1989.
__4
**********************************************************************
* First report from the DVI driver standards committee *
**********************************************************************
The TUG DVI driver standards committee has been working on the
development of standards for device drivers since the fall of 1988.
This article is a first report on our status to the membership of TUG.
At the time of this writing, we are in the midst of discussion of
\special standards for device drivers. By the TUG meeting this August,
we should have a preliminary report on this topic available for
distribution to all interested parties. We welcome all input from
members of the TeX community; if you have any suggestions, comments,
etc. regarding the issue of \special handling, we would appreciate it
if you could send these to Robert McGaffey (Internet:
McGaffey%Orn.Mfenet@Nmfecc.Arpa) for distribution to the members of
the committee.
The members of the committee are: Robert McGaffey, chair, Oak Ridge
National Laboratory; David P. Babcock, Hewlett-Packard; Elizabeth
Barnhart, TV Guide; Stephan v. Bechtolsheim, Integrated Computer
Software Inc.; Nelson Beebe, University of Utah; Jackie Damrau,
University of New Mexico; Donald Goldhammer, University of Chicago;
Don Hosek, University of Illinois at Chicago; David Ness, TV Guide;
Thomas J. Reid, Texas A&M University; David Rodgers, Arbortext, Inc.;
Brian Skidmore, Addison-Wesley Publishing Co.; Glenn Vanderburg,
Texas A&M University; and Ralph Youngen, American Mathematical
Society.
__5
**********************************************************************
* Call for driver information *
**********************************************************************
by Don Hosek <U33297@UICVM.UIC.EDU> or <U33297@UICVM.BITNET>
Looks like it's about that time again...
If you're using TeX, you most likely are using it with a device driver
of some sort (unless you're very strange). If you can identify the
source of any of your device drivers/previewers please send me a note
listing
1) The computer it runs on
2) the printer/display it drives
3) where it came from.
4) frequently I'm asked to comment on the utility of various drivers,
so if you could supply me with some of your *opinions* on the driver
I'd appreciate it.
If you distribute drivers, I would appreciate the following
information:
1) a list of drivers that you distribute with the information listed
above. I will send you a follow-up note asking for more detail,
plus a listing of what I currently have.
2) all the ways to contact you that are acceptable (viz e-mail, postal
mail, phone, telex, etc.)
3) information on obtaining the programs (from FTP, file servers, on
tape or disk etc.) and costs.
4) support for anything you sell/give away
5) other sources for obtaining your drivers (commercial vendors,
etc.)
6) anything else that may be of interest.
If you have access to TUGboat, I would appreciate it if you could look
at the device driver listings in the most recent issue of TUGboat you
can get and let me know about any errors/omissions.
__6
**********************************************************************
* First announcement and Call for Papers *
* TeX89 *
* 4th Annual Meeting of European TeX Users *
* September 11-13, 1989, Karlsruhe, FRG *
**********************************************************************
TeX89, the 4th European TeX Conference, will take place at Karlsruhe
University, FRG, from Monday, September 11, to Wednesday, September
13, 1989. The conference will be organized by Anne
Br\"uggemann-Klein, Department of Computer Science, University of
Freiburg, and Rainer Rupprecht, Computing Center, University of
Karlsruhe.
Following the tradition of last years' conferences, contributions are
welcome from all areas of TeX, Metafont, and related subjects. Likely
themes might include:
o document structures (LaTeX, SGML, ODA,...)
o non-technical TeX (humanities, music, exotic languages,...)
o other technical areas (chemistry, physics, biology,...)
o difficult jobs with TeX, LaTeX,...
o graphics and TeX
o TeX training
o TeX as part of a larger system (user interfaces, tools,
environments,...)
o TeX as a production tool
o fonts to use with TeX (Metafont and other systems)
o TeX and PostScript
o Macro packages
o public domain TeX vs. commercial TeX
Besides traditional paper sessions, discussion groups on special
subjects and exhibitions will be organized. In a special session at
the end of the conference, highlights of the discussion groups will
be presented to the general audience. Conference proceedings will be
published after the conference.
Various workshops and participatory seminars will be offered before
and after the conference. Proposals for topics and voluntary tutors
are welcome.
The conference fee will be approximately DM 280. The fee includes
registration materials, lunches, social events, and a copy of the
conference proceedings.
A second circular containing the preliminary program will be out by
March 31, 1989.
==============================Cut Here================================
Name__________________________________________________________________
Affiliation___________________________________________________________
Address_______________________________________________________________
_______________________________________________________________
_______________________________________________________________
Telephone_____________________________________________________________
E-mail________________________________________________________________
Please check where appropriate:
___ Please add my name to the TeX89 mailing list.
___ I am seriously considering attending the conference.
___ I would like to present a paper. The title will be:
__________________________________________________________________
__________________________________________________________________
My talk will take ____ minutes. The abstract (1 page) is included.
___ I would like to contribute to or participate in discussion groups
on:
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
___ I would like to offer a workshop before or after the conference
on:
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
___ I would like to participate in a workshop before or after the
conference on:
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
Send to: Rainer Rupprecht
Rechenzentrum
Universit\"at Karlsruhe
Postfach 6980
7500 Karlsruhe 1, FRG
E-mail: Rz32@Dkauni48.Bitnet
===============================Cut Here===============================
__7
**********************************************************************
* Preliminary table of contents, TUGboat 10#1, April 1989 *
**********************************************************************
General Delivery
Bart Childs From the President
Donald E. Knuth Scholarship
Barbara Beeton Editorial Comments
Barbara Beeton A TeX encounter in Japan
Software
Adrian Clark An enhanced TeX-editor interface for VMS
Michael Harrison News from the VorTeX project
Klaus Thull The virtual memory management of PubliC TeX
Richard Kinch TurboMetafont: A new port in C for Unix
and MS-DOS
Stephan v. Bechtolsheim The TeX PostScript software package
Fonts
Georgia K.M. Tobin A handy little font
Donald Knuth Typesetting Concrete Mathematics
Doug Henderson Outline fonts with Metafont
Zalman Rubenstein Chess Printing via Metafont and TeX
Dominik Wujastyk Font update
Graphics
Bart Childs, Alan Stolleis and Don Berryman
A portable graphics inclusion
David F. Rogers Computer graphics and TeXDash a challenge
Output Devices
Don Hosek TeX output devices (with charts)
Don Hosek Report from the DVI dviver standards committee
Marius Broeren and Jan van Knippenberg
High quality printing of TeX in the VAX/VMS
environment
Site Reports
Peter Abbott UKTeX and the Aston archive
Amiga
Kim Kubik AmigaTeX... or How envy was resisted and
knowledge found on the road to Ooc
Data General
Bart Childs Data General site report
UNIX
Pierre MacKay UnixTeX site report
VAX/VMS
David Kellerman VAX/VMS site report
Typesetting on PCs
Alan Hoenig The land of the free and the near free
Michael Modest Using TeX and LaTeX with WordPerfect 5.0
Macros
David F. Rogers and Joost Zalmstra
A page make-up macro
Brother Eric Vogel Printing Vietnamese characters by
adding diacritical marks
Sriram Sankar APE -- A set of TeX macros to format Ada
programs
James Nearing Extended equation numbering in Plain TeX
LaTeX
Michael DeCorte Contents of LaTeX style collection
as of 24 September 1988
Frank Mittelbach ``A new implementation of the tabular- and
array-environments of LaTeX''
(TUGboat 9#3) -- addenda
Rainer Schoepf Drawing histogram bars inside the LaTeX
picture-environment
Dezso Nagy Vertical centering for transparencies
C. G. van der Laan Typesetting in Bridge
News & Announcements
Calendar
GUTenberg Congres, Paris, 16-17 May 1989
TeX89: Karlsruhe University, 11-13 September 1989
David Osborne A UK TeX Users' Group --
Report of a preliminary meeting
__8
**********************************************************************
* Layout Puzzles *
**********************************************************************
by Hubert Partl <Z3000PA@AWITUW01.BITNET>
This is a new regular column of questions and answers concerning
the document layout to be procduced by LaTeX style files.
Layout Puzzle No.1:
-------------------
To start with, here is a question with an immediate solution:
Question: I want to separate paragraphs by vertical \parskip
with no horizontal \parindent, as it is usual in
informal scientific reports previously typed on a
simple typewriter - in contrast to the professional
printers' style of indenting paragraphs.
Solution: It is trivial to set \parskip and \parindent to any value.
However, non-zero \parskip has some side-effects on the
vertical spacing of the list environments. Here is a
solution that takes care of the environments, too:
------------------- cut here ---------------------------------------->
% This is PARSKIP.STY by H.Partl, TU Wien, as of 19 Jan 1989.
% Document Style Option to be used with any style and with any size.
% It produces the following Paragraph Layout:
% Zero Parindent and non-zero Parskip. The stretchable glue in \parskip
% helps LaTeX in finding the best place for page breaks.
\parskip=0.5\baselineskip \advance\parskip by 0pt plus 2pt
\parindent=\z@
% To accompany this, the vertical spacing in the list environments is changed
% to use the same as \parskip in all relevant places (for normalsize only):
% \parsep = \parskip
% \itemsep = \z@ % add nothing to \parskip between items
% \topsep = \z@ % add nothing to \parskip before first item
\def\@listI{\leftmargin\leftmargini
\topsep\z@ \parsep\parskip \itemsep\z@}
\let\@listi\@listI
\@listi
\def\@listii{\leftmargin\leftmarginii
\labelwidth\leftmarginii\advance\labelwidth-\labelsep
\topsep\z@ \parsep\parskip \itemsep\z@}
\def\@listiii{\leftmargin\leftmarginiii
\labelwidth\leftmarginiii\advance\labelwidth-\labelsep
\topsep\z@ \parsep\parskip \itemsep\z@}
% Note that listiv, listv and listvi don't change vertical parameters.
\endinput
<------------------- cut here ----------------------------------------
Caution: In this solution, there is no distinction between lists
inside of paragraphs and lists that are separate paragraphs.
Who has an idea, how one might achieve such a distinction?
Also, there are other environments that explicitely reset
\parskip and parindent. They should be changed acordingly.
Which are they? Answers are welcome...
Layout Puzzle No.2:
-------------------
Now, here is the new question to be answered in the next issue:
I want to use running footings (with page number and some
text, in analogy to the myheadings pagestyle), and I want
a horizontal rule above that foot line.
Readers are encouraged to try to provide solutions to this question.
---> Please, send your e-mail to U33297@Uicvm.Uic.Edu <---
The "best" solutions will be published in next issue's Layout Puzzles
column. Readers are also encouraged to raise questions for the next
issues of this column - this shall not be a one-man-show by myself!
Hubert Partl, TU Wien (Austria)
z3000pa@awituw01.bitnet
__9
**********************************************************************
* Eliminating Italic Corrections *
**********************************************************************
by Dan Bernstein <bernsten@phoenix.princeton.edu>
It is amazing that for all these years TeX users, from the novice to
the practiced TeXnician, have put up with figuring out when to type \/
to insert an italic correction. Of all the typing conventions I have
taught myself to use to deal with TeX, this is the only one I can't
stand. The macros below (hopefully) deal with all italic corrections
by themselves, with the user never needing to think about them again.
Recall that an italic correction is always added when switching from
italic to roman type, except when the italic type is followed
immediately by a roman period or comma.
To use the macros, simply type \ital{text} where you would normally
type {\it text}, and similarly for \roman. \slant is like \ital.
These are not \long macros and are meant for text within a paragraph,
so stick to {\it...} for many-paragraph italicization.
First come the basic definitions.
\newif\ifcorr\newif\ifnonzero
\newskip\lasts\newdimen\lastk\newcount\lastp
{\lasts 0pt plus 0pt minus 0pt\xdef\zerolasts{\the\lasts}}
Now come the macros for dealing with italics. Notice the use of
\futurelet to see what token comes after the \ital{...}. These macros
aren't perfect; the worst problem is that they can't really look ahead
to see if a period or a comma will be added next to the text, and they
only see if the next token after the } is a period or a comma. If you
have some other macro or character that should also force the italic
correction to disappear, add \do{\themacroname} to \nocorr.
\def\ital#1{{\it #1}\begingroup\futurelet\temp\corr}
\def\slant#1{{\sl #1}\begingroup\futurelet\temp\corr}
\def\nocorr{\do{.}\do{,}}
\def\corr{\def\do##1{\ifx\temp##1\corrfalse\fi}\corrtrue\nocorr
\ifcorr\/\fi\endgroup}
The problem of roman type within italic type is quite different. The
italic correction will always be added at the beginning (if you're
typing \ital{... something\roman{,} ...} then you have a very weird
idea of the logical structure of your document). However, \roman will
almost always be preceded by a space, and maybe even some kerns,
penalties, and other glue; so we must ``unspace'' past these items,
add the italic correction, and put the spaces back. The \roman macro
reflects this; \unspace removes as many glue/kern/penalty items as
possible from the current horizontal list and sets \temp to a control
sequence that dumps all the glue/kern/penalty items right back on.
\def\roman#1{\begingroup\unspace\/\temp\endgroup{\rm #1}}
\def\unspace{%
\def\temp{}\loop\nonzerofalse
\lasts\lastskip\unskip
\lastk\lastkern\unkern
\lastp\lastpenalty\unpenalty
\edef\thelasts{\the\lasts}%
\ifx\thelasts\zerolasts
\else\edef\temp{\hskip\thelasts\temp}\nonzerotrue\fi
\ifdim\lastk=0pt\else\edef\temp{\kern\the\lastk\temp}\nonzerotrue\fi
\ifnum\lastp=0\else\edef\temp{\penalty\the\lastp\temp}\nonzerotrue\fi
\ifnonzero\repeat}
\roman (because of \unspace) has many more caveats than \ital and
\slant. As described in the TeXbook, \lastskip and its friends take
the last such item off the current list, returning zero if the last item
is not such an item. This makes it easy for \unspace to keep going back,
removing skips, kerns, and penalties until they are all zero, but it
leads to two problems. The first is that a zero item that you really
put in explicitly (probably for some obscure line-breaking reasons)
will not be passed through to \temp and thus will not be put back. The
second is that if you have a sequence of a few such zero items, \unspace
will stop there and won't get all the way back to where it should.
Furthermore, a whatsit or similar weird item will also stop \unspace.
The solution to the first two problems is to replace \hskip0pt with
\hskip1sp, \kern0pt with \kern1sp, and \penalty0 with \penalty1. Any
DVI program that shows a difference of 1sp doesn't round correctly.
Does this really eliminate italic corrections? In almost all cases.
If you're typing normal text, interspersed with \ital and \roman and
no weird stuff, all corrections will be inserted when they should.
However, you must be careful not to \write just before a \roman, or
the correction may not show up, and similarly watch out for the
cases mentioned above.
Future improvements: It would be nice to somehow let \ital figure out
exactly when the next character will be a period or comma, but I can't
find \lookintocrystalball in the TeXbook. Similarly, it seems to be
impossible to determine when a zero skip/kern/penalty is really so.
It would also be a cute trick to unspace past a \write command.
On a higher level, these macros could be worked into LaTeX's emphasis
environment. Of course, remember that if you define sequences like
\beginit...\endit (no braces), you will lose spaces at the end. Finally,
it is always cleaner to define a \begin...\end sequence than a \it{...}
sequence, because the argument does not have to be read and expanded
twice.
Please send any comments, improvements, error corrections, etc. to me.
---Dan Bernstein, bernsten@phoenix.princeton.edu
__10
**********************************************************************
* Cumulative index: V1N1-V3N1 *
**********************************************************************
Addison-Wesley V2N2.8 graphics insertion V2N4.9
V2N3.2 headlines V1N2.4
V3N1.2 V1N5.5
advertising V2N2.1 V1N6.6
V2N3.1 italic corrections V3N1.9
V2N4.1 letters V2N4.8
alltt.sty V2N4.6 outlines V1N7.3
AmS-TeX V2N2.4 program listings V1N4.2
IMA document style V2N4.3 resumes V1N3.2
SIAM document style V2N4.3 V1N6.2
amstexsiam.sty V2N4.3 side by side pars V1N4.5
_Another Look at TeX_ V2N6.5 V1N5.2
\anti V2N1.9 table of contents V1N2.3
anti.tex V2N1.9 V2N2.1
Applied Mathematics V2N3.1
Letters V2N2.4 timelines V1N7.5
article ideas V1N2.2 weird paragraphs V2N2.1
V1N5.3 V2N3.1
V2N2.9 V2N6.8
V2N3.5 meat, canned V2N3.5
V2N6.5 MF
V3N1.1 version 1.4 announced V2N4.2
V3N1.2 version 1.5 announced V2N5.3
Biblical typesetting V2N3.1 version 1.7 announced V2N6.1
V2N4.1 V3N1.3
bibplain.tex V2N1.8 MFware V1N6.5
BibTeX V2N1.8 microTeX ($\mu$-TeX) V2N3.2
Bitstream fonts V2N3.9 V2N6.5
blanks.tex V1N7.2 multihead.tex V1N5.5
blanks-sample.tex V1N7.2 network services
\bra V1N8.6 DECnet/Span V2N1.2
\bracket V1N8.6 V2N2.2
chemsample.tex V2N3.6 V2N3.5
\citer V2N1.8 LaTeX-Style V1N1.4
CMS V2N6.2
program piece V2N3.8 V3N1.3
V2N4.5 listserv@tamvm1 V2N1.3
\contentsline V2N3.1 V2N2.3
CTeX V2N6.5 netlib@anl-mcs.arpa V2N4.3
CWEB V2N6.5 TeX-L V2N1.3
\dlap V1N3.4 TeXhax V2N1.3
V1N6.6 V2N6.4
V1N7.5 \noalign V1N8.3
documentation V2N4.1 non-english TeX V2N4.4
V3N1.2 V2N5.1
dow.tex V1N5.5 V2N5.6
\dowcomp V1N5.5 V2N5.7
drop.doc V2N2.1 V2N5.1
drop.sty V2N2.1 Arabic V2N2.7
dropped initial V2N2.1 V2N6.5
DVI drivers Chinese V2N2.7
announcements German V2N5.6
DVIview V1N7.4 V2N5.7
driver lists V2N2.3 Greek V2N2.7
V3N1.5 Hebrew V2N2.7
DVIlaser/HP V2N4.8 V2N3.3
V2N4.9 V2N6.5
graphics merging V2N4.9 Icelandic V2N5.8
standards V1N5.4 Irish V2N5.9
V2N3.1 Japanese V2N2.7
V3N1.4 V2N3.7
DVIlaser/HP V2N4.8 Marathi V2N2.7
V2N4.9 Russian V2N2.7
\epigram V2N6.5 Tamil V2N2.7
eqnarray V1N8.3 Turkish V2N2.7
European TeX conference V2N1.4 outline.sty V1N7.3
V3N1.6 outlines V1N7.3
\EV V1N8.6 parskip.sty V3N1.8
\fakebold V1N1.3 PC-OUTLINE V1N7.3
fill in the blanks V1N7.2 PCTeX V2N6.5
\flathex V2N3.6 PCTeX BBS V1N8.1
fnote.tex V1N1.3 V2N1.7
\fnote V1N1.3 physics typesetting V1N8.6
fonts V2N1.9
Arabic V2N2.7 PiCTeX V2N3.1
Bitstream fonts (PC) V2N3.9 plain TeX
Chinese V2N2.7 and BibTeX V2N1.8
closest size in CMS V2N3.8 and LaTeX V2N6.5
V2N4.5 intricacies of pars V2N2.1
Computer Modern V2N3.1
in PostScript V2N6.5 version 2.92 announced V2N4.2
re-parameterization V2N4.1 PTI Font Interface pkg. V2N3.9
conversions on PC V2N3.9 readers' survey V1N1.2
custom V2N2.7 V2N1.6
Cyrillic V2N2.7 results V1N2.2
Devanagari V2N2.7 V2N2.9
Elvish V2N2.7 resumemac.tex V1N3.2
faking them V1N1.3 V1N6.2
V1N8.4 resumes V1N3.2
V2N2.7 V1N6.2
files V2N2.6 reviews
fonts available V2N2.7 HP2TeX V2N3.9
for typesetters V2N3.1 PTI font interface pkg V2N3.9
V2N3.9 TeXtures V2N2.8
Greek V2N2.7 Rexx V2N3.8
Hebrew V2N2.7 V2N4.5
V2N3.3 \roman V3N1.9
HP font conversion V2N3.9 SemiTeX V2N3.3
HP soft fonts V2N3.9 V2N6.5
Icelandic V2N5.8 Singapore V2N2.1
Indic V2N2.7 V2N3.1
IPA V2N6.5 V2N4.1
Japanese V2N2.7 sizechek.exec V2N3.8
V2N3.7 V2N4.5
low resolution V2N3.1 \slant V3N1.9
V2N3.9 \slasha V1N8.6
Marathi V2N2.7 \slashb V1N8.6
OCR-A V2N2.7 \special standards V1N5.4
Old English V2N2.7 spelling (incorrect) V3N1.2
Phonetics V2N2.7 split.tex V1N4.5
Tamil V2N2.7 \split V1N4.5
Turkish V2N2.7 V1N5.2
fortran.tex V1N2.4 \sprite V1N8.4
Franklin Institute V2N3.4 sprite.sty V1N8.4
Franklin Medal V2N3.4 V2N2.7
grovelling V1N5.3 spriteuse.tex V1N8.4
V2N4.3 sqmac.sty V2N4.7
headlinerule.tex V1N2.4 sqsample.tex V2N4.7
headlines subeqn.sty V1N4.5
plain TeX V1N2.4 subequations V1N4.5
V1N5.5 TeX
V1N6.6 and databases V2N6.5
LaTeX V3N1.6 future of V2N3.1
Hebrew TeX V2N3.3 implementations
hep.tex V1N8.6 IBM PC V2N3.2
\hex V2N3.6 V2N3.9
hexes.sty V2N3.6 V2N6.5
HP soft fonts V2N3.9 Japanese V2N2.7
HP2TeX V2N3.9 V2N3.7
hyphenation V2N5.2 Macintosh V1N5.2
V2N5.1 V2N2.8
imappt.sty V2N4.3 V2N3.2
index V2N2.1 V2N6.5
V3N1.1 multi-lingual V2N6.5
interactive TeXing V2N3.1 in Europe V3N1.1
_Interface_ V2N3.1 V3N1.2
\ital in production V2N6.5
italic corrections V3N1.9 version 2.92 announced V2N4.2
\ket V1N8.6 version 2.93 announced V2N5.3
Knuth, Donald V2N3.4 version 2.95 announced V2N6.1
laps.tex V1N3.4 version 2.96 announced V3N1.3
Laserplot V2N4.9 vs. WYSIWYG V2N3.1
LaTeX V2N4.5
2-d chemicals V2N3.6 TeX Users Group
adapting to other conference V1N4.2
languages V2N5.7 V2N2.5
alltt environment V2N4.6 V2N5.4
and plain TeX V2N6.5 V2N6.5
annotated listings V2N4.6 courses V1N4.2
commutative diagrams V2N4.7 V1N6.3
dropped initial V2N2.1 V2N1.5
eqnarray environment V1N8.3 Textures V1N5.2
footings in V3N1.8 V2N2.8
introduction V1N3.3 V2N3.2
manual V2N6.3 V2N6.5
V3N1.2 TeXt1 V2N6.5
modifying styles V2N6.6 TeXware V1N6.5
V3N1.8 V2N2.6
paragraphs in V3N1.8 timeline.sty V1N7.5
picture mode V2N3.1 V1N8.2
V2N3.6 timelines V1N7.5
style collection V1N1.4 V1N8.2
V2N6.2 tl-sample.tex V1N7.5
useful internal macros V1N7.5 toc.tex V1N2.3
V1N8.2 tocline.tex V2N3.1
V3N1.6 trade typesetting V2N6.5
version 8-Feb-89 TUGboat V1N4.3
announced V3N1.3 V1N6.4
_LaTeX-eine V1N8.5
Einf\"uhrung_ V3N2.1 V2N5.5
local TeX support V2N4.1 V3N1.7
V3N1.2 TurboTeX V2N6.5
V2N6.5 typesetting services V2N6.5
longtocline.tex V2N2.1 \ulap V1N3.4
macros V1N6.6
LaTeX \undertilde V1N8.6
2d chemicals V2N3.6 undertilde.tex V1N8.6
commutative diagrams V2N4.7 \unot V1N7.6
sprite characters V1N8.4 WEB
subequations V1N4.5 formatting
timelines V1N7.5 ss for identifiers V1N7.6
V1N8.2 standard programs V1N6.5
plain TeX webmacss.tex V1N7.6
anti-particles V2N1.9 weirdtitle.tex V2N2.1
bibliographies V2N1.8 \xlap V1N3.4
day of week V1N5.5 \xsplit V1N4.5
epigrams V2N6.7 V1N5.2
fill in the blanks V1N7.2 \ylap V1N3.4
footnotes V1N1.3 \zlap V1N3.4
__11
TeXMaG is an independently published electronic magazine available
free of charge to all interested parties reachable by electronic
mail. It is published sporadicly, and the editor likes to think that
it's monthly so the readers humor him. Subscription requests should
be sent to Don Hosek <U33297@UICVM.UIC.EDU> or <U33297@UICVM.BITNET>
or send the following message to LISTSERV@BYUADMIN, LISTSERV@PUCC,
LISTSERV@TCSVM, LISTSERV@DEARN, LISTSERV@HEARN, or LISTSERV@IRLEARN:
SUBS TEXMAG-L Your_Full_Name.
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 or from the directory pub/texmag
on SUN.SOE.CLARKSON.EDU BITNET users may obtain back issues from
LISTSERV@TCSVM (in an interactive message or as the first line of a
mail file, send the command GET TEXMAG VvNn where v is the volume
number and n is the issue number). Janet users may obtain back issues
from Peter Abbott (e-mail address above) and DECNET/SPAN users may
obtain them from the Decnet repository (see below). They may also be
obtained from Don Hosek <U33297@UICVM.UIC.EDU>. Article submissions,
contributions for the Toolbox, and letters to the editor are always
welcome and should be sent to <U33297@UICVM.UIC.EDU>.
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@Cs.Washington.Edu>. Internet subscribers may subscribe by
sending a request to <TeXHAX-REQUEST@Cs.Washingon.EDU>. JANET
subscribers should send subscription requests to
<texhax-request@uk.ac.ucl.cs.nss>. 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. Australian users should send subscription
requests to <munnari!elz@uunet.uu.net> Japanese users should send
subscription requests to <takagi%icot.jp@relay.cs.net>. Back issues
are available by anonymous FTP from Sun.Soe.Clarkson.Edu in the
directory pub/texhax and from Listserv@Tamvm1 (in an interactive
message or as the first line of a mail file send the command GET
TEXHAXnn yy where nn is the issue number and yy are the last two digits
of the year. Issues 100 and above are named TEXHAnnn yy)
UKTeX. A U.K. version of TeXhax. To subscribe, send a note to Peter
Abbott at <info-tex-request@uk.ac.aston.mail>.
TeXline. A TeX newsletter edited by Malcolm Clark. To subscribe, send
a note to <texline@uk.ac.ic.cc.vaxa>.
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
Inquiries may be also be sent via e-mail to <Tug@Math.Ams.Com>.
Submissions for TUGboat may be sent via electronic mail to
<Tugboat@Math.Ams.Com>.
LaTeX-style collection. A collection of LaTeX files is available for
FTP and mail access at sun.soe.clarkson.edu. To obtain files via
FTP, login to sun.soe.clarkson.edu as anonymous, password guest and go
to the directory pub/latex-style (where the files are). Mail access is
accomplished by sending a mail message to
<archive-server@sun.soe.clarkson.edu> with the first line containing
"path" followed by a network address FROM clarkson TO you, then file
requests with one or more files per line prefixed by "send latex-style".
For example,
path fschwartz%hmcvax.bitnet@mitvma.mit.edu
send latex-style Readme Index
send latex-style resume.sty
Note that this syntax is different than that used by the server at
the University of Rochester.
Submissions should be sent to <mrd@sun.soe.clarkson.edu> or
<archive-management@sun.soe.clarkson.edu>
LISTSERV@DHDURZ1 has file archives of interest to TeX users. Included
are the Beebe drivers and contents of the LaTeX style collection, as
well as some TeX macros. Many files are available only in German.
LISTSERV@TAMVM1 also has file archives that may be of interest to TeX
users on BITNET, including the files from the Score.Stanford.EDU FTP
directories and back issues of TeXHAX. For a list of files available,
send the following command to LISTSERV@TAMVM1: GET TeX FILELIST.
DECNET. There is a TeX file collection on DECnet accessible from
DECnet and SPAN. Available files include the Beebe DVI drivers, the
LaTeX style collection, and back issues of TeXhax, TeXMag, and UKTeX.
For more information, contact Marisa Luvisetto (DECNET:
<39947::luvisetto>, Bitnet: <LUVISETTO@IBOINFN.BITNET>) or Massimo
Calvani <CALVANI@VAXFPD.INFNET> U.S. Users should contact Ed Bell
<7388::Bell>
JANET. Peter Abbott keeps an archive of TeX-related files available
for FTP access. For more information send mail to
<Abbottp@Uk.Ac.Aston.Mail>.
Special thanks to those who contributed to this issue, the University
of Illinois at Chicago, Rhett Bull, Wilma Fisher, Debbie Muldawer,
Dan Bass, Angela Dickey, and Greyhound bus lines.
Character code reference:
Upper case letters: ABCDEFGHIJKLMNOPQRSTUVWXYZ
Lower case letters: abcdefghijklmnopqrstuvwxyz
Digits: 0123456789
Square, curly, angle braces, parentheses: [] {} <> ()
Backslash, slash, vertical bar: \ / |
Punctuation: . ? ! , : ;
Underscore, hyphen, equals sign: _ - =
Quotes--right left double: ' ` "
"at", "number" "dollar", "percent", "and": @ # $ % &
"hat", "star", "plus", "tilde": ^ * + ~
|