diff options
Diffstat (limited to 'info/digests/tex-implementors/025')
-rw-r--r-- | info/digests/tex-implementors/025 | 730 |
1 files changed, 730 insertions, 0 deletions
diff --git a/info/digests/tex-implementors/025 b/info/digests/tex-implementors/025 new file mode 100644 index 0000000000..843358cfb4 --- /dev/null +++ b/info/digests/tex-implementors/025 @@ -0,0 +1,730 @@ +Date: 1 Apr 90 Message No: 025 + +To: TeX implementors and distributors + +From: Barbara Beeton + +Subject: TeX memory capacity; new errata; MF 2.0 changes; WEAVE 3.1 + + +Now that implementation of TeX 3.0 is underway, I'd like to plan to +publish a new edition of the memory capacity charts that appeared in +TUGboat 7#1 (pp 67-70). I would like to include all implementations +of TeX 3.0 that have passed the TRIP test. The next issue is probably +too early to have complete information, so I will ask now for you to +send me the block of code from your change file (or the equivalent) +giving the memory values so that it can be included in the fall issue. +Please make sure you include the following: machine and operating +system for which this implementation is intended, version distributed, +and form of files distributed (e.g., web, exec, exec only). The +editorial deadline for the fall issue is September 11. + +One area of memory that is coming under increasing strain is the hash +size. Syntheses of LaTeX and AMS-TeX must resort to modular design to +avoid overflowing the allowable number of control sequence names. +TEX.WEB for 3.0 still only provides 2100 entries of hash_size (although +the comment that this is generous has been removed). I don't know of +any actual implementation that provides fewer than 2500 entries, and +most implementations, i suspect, provide even more. (At the AMS, we +use hash_size=5000 and hash_prime=4253.) I would like to encourage +all implementors to provide a large enough hash_size (and other memory +values) to accommodate reasonably straightforward use of LaTeX on +book-size documents. I will ask Frank Mittelbach and Rainer Schoepf +for their recommendations. + +Some macro packages like PicTeX simply need all the memory they can get. +Most C versions have been extended to provide main memory beyond 64K, +and some implementations for other systems as well. If you have such +a version, or know about one, please send me whatever information you +have. (This information will also be included in the memory chart +mentioned earlier.) In particular, i have received an inquiry asking +whether there are any huge implementations for the PC. + +TeX 3.0 contains new features for multilingual hyphenation, but it is +likely that the memory allocations for patterns (trie_size, trie_op_size, +others?) will have to be increased. (I have also received an inquiry +on this topic.) Since i have no experience with multilingual TeX, I +would appreciate receiving relevant information from anyone who does. + +Peter Breitenlohner (see question in message #24) has informed me that +he received a reply from Don Knuth confirming that his numbers are right. +The correction has been made in the most recent trip.log, and probably +trap.log as well, though Peter had not seen that yet. + +Enclosed is the full listing of the latest ERRATA.TEX from labrea. +Don decided to start a new file after publication of the last errata +list with TUGboat 10 #3; that instalment corresponds to ERRATA.FIV. +Note that, unlike previous errata listings, this one contains the +instruction (represented by the caret, ^ ) to place a term in the index. +This probably won't do anything more than put spurious entries into the +index file that's generated when you run the errata through TeX, but it +was a surprise to me, so I thought it worth mentioning. I did make one +change, namely to put a % in front of the ^L page markers that appear +above every volume break. + +The second enclosure consists of the latest additions to MF84.BUG. +Please note that number 553 reported in message 23 has been superseded. +The change first reported is actually in the new MF.WEB file, so it is +not lost, just apparently considered by Don to be a "cosmetic change". + +Two more enclosures contain changes to bring WEAVE.WEB to version 3.1, +and the changes to WEBMAC.TEX to support the new WEAVE. + +The differences between version 2.0 of MF.WEB and the last one reported +to you, version 1.7, will be sent separately in 4 parts. (I am keeping +the files to under 30Kb as requested by Wayne Sullivan.) + + +######################################################################## + +% Bugs (sigh) in Computers \& Typesetting --- the most recent errata + +\input manmac +\font\sltt=cmsltt10 +\font\niness=cmss9 +\font\ninessi=cmssi9 +\proofmodefalse +\raggedbottom +\output{\hsize=29pc \onepageout{\unvbox255\kern-\dimen@ \vfil}} + +\def\today{\number\day\ + \ifcase\month\or + Jan\or Feb\or Mar\or Apr\or May\or Jun\or + Jul\or Aug\or Sep\or Oct\or Nov\or Dec\fi + \ \number\year} + +\def\cutpar{{\parfillskip=0pt\par}} + +\def\rhead{Bugs in {\tensl Computers \& Typesetting as of \today}} +\def\bugonpage#1(#2) \par{\bigbreak\tenpoint + \hrule width\hsize + \line{\lower3.5pt\vbox to13pt{}Page #1\hfil(#2)}\hrule width\hsize + \nobreak\medskip} +\def\buginvol#1(#2) \par{\bigbreak\penalty-1000\tenpoint + \hrule width\hsize + \line{\lower3.5pt\vbox to13pt{}Volume #1\hfil(#2)}\hrule width\hsize + \nobreak\medskip} +\def\slMF{{\manual 89:;}\-{\manual <=>:}} % slant the logo +\def\0{\raise.7ex\hbox{$\scriptstyle\#$}} +\newcount\nn +\newdimen\nsize \newdimen\msize \newdimen\ninept \ninept=9pt +\newbox\eqbox \setbox\eqbox=\hbox{\kern2pt\eightrm=\kern2pt} + +\tenpoint +\noindent This is a list of all corrections made to {\sl Computers \& +Typesetting}, Volumes A,~C, and E\null, since 30 September 1989 (when +the revisions for \TeX\ Version 3.0 and \MF\ Version 2.0 were made). +Corrections made to the softcover version of {\sl The \TeX book\/} are +the same as corrections to Volume~A\null. Corrections to the softcover +version of {\sl The \slMF\kern1ptbook\/} are the same as corrections +to Volume~C\null. Some of the corrections below have already been made in +reprintings of the books. Hundreds of changes, too many to list here, +have been made to Volumes B~and~D because of the upgrades to \TeX\ and +\MF\null. Readers who need up-to-date information on the \TeX\ and +\MF\ programs should refer to the |WEB| source files until new +printings of Volumes B~and~D are issued. \looseness=-1 + +% +% volume A + +\bugonpage A99, line 4 from the bottom (2/22/90) + +\ninepoint\indent +to be chosen because there was no feasible +way to keep total demerits small. + +\bugonpage A156, line 2 (11/18/89) + +\ninepoint +Commands like |\mathchardef\alpha="010B| are used in +Appendix~B to define\cutpar + +\bugonpage A171, lines 24--26 (3/13/90) + +\ninepoint\noindent +formula produces a result exactly equivalent to +`|\left(|\<subformula>|\right)|', when the \<subformula> doesn't end +with Punct, except that the {delimiters} are forced to +be of the |\big| size regardless of the height and depth of the subformula. + +\bugonpage A193, lines 16--18 (12/2/89) + +\ninepoint\noindent +line if you insert +`^|\noalign||{|^|\break||}|' +after the |\cr| for that line. You can prohibit {\sl all\/} breaks +in an |\eqalignno| if you set ^|\interdisplaylinepenalty||=10000|; or you +can enclose the whole works in a ^|\vbox|: + +\bugonpage A233, bottom 9 lines, and top three on next page (12/2/89) + +\danger The |\+| macro in Appendix~B works +by putting the \<text> for each column that's followed by~|&| +into an hbox as follows: +\begindisplay +|\hbox to |\<column width>|{|\<text>|\hss}| +\enddisplay +The ^|\hss| means that the text is normally flush left, and that it can +extend to the right of its box. Since |\hfill| is ``more infinite'' than +|\hss| in its ability to stretch, it has the effect of right-justifying or +centering as stated above. Note that |\hfill| doesn't shrink, but |\hss| +does; if the text doesn't fit in its column, it will stick out at the right. +You could cancel the shrinkability of |\hss| by adding ^|\hfilneg|; then +an oversize text would produce an overfull box. +You could also center some text by putting `|\hss|' before it and just +`|&|' after it; in that case the text would be allowed to extend to the +left and right of its column. + The last column of a |\+|~line (i.e., the column entry that is +followed by |\cr|) is treated differently: The +\<text> is simply put into an hbox with its natural~width.\looseness=-1 + +\bugonpage A254, line 5 from the bottom (10/5/89) + +\ninepoint\noindent +|\vsize| hasn't changed, and if all insertions have been +held in place, the same page break\cutpar + +\bugonpage A286, lines 30--32 (3/13/90) + +\ninepoint\noindent +reading and expanding this \cstok{par} +token, \TeX\ will see the \<vertical command> token again. \ (The current +meaning of the control sequence ^|\par| will be used; \cstok{par} might no +longer stand for \TeX's |\par| primitive.) + +\bugonpage A290, lines 12--13 (3/24/90) + +\ninepoint\noindent +simply a single Ord atom without subscripts or superscripts, +or an Acc whose nucleus is an Ord, the +enclosing braces are effectively removed. + +\bugonpage A340, nonblank line 11 (3/13/90) + +\tenpoint\noindent +|\topglue 1in % This makes an inch of blank space (1in=2.54cm).| + +\bugonpage A342, line 6 ( 3/13/90) + +\tenpoint\noindent +|\topglue| but not |\hglue|. It does not +illustrate |\raggedright| setting of para-\cutpar + +\bugonpage A346, lines 20--21 (12/3/89) + +\ninepoint\noindent +streams used by ^|\read| and ^|\write|, to math +^{families} used by ^|\fam|, to sets of hyphenation rules used by +^|\language|, and to insertions (which require +^|\box|, ^|\count|, ^|\dimen|, and ^|\skip| registers all having the +same number). + +\bugonpage A346, line 20 from the bottom (12/3/89) + +\ninepoint\noindent +manent value. These macros use registers +|\count10| through |\count20| to hold the\cutpar + +\bugonpage A346, lines 8--13 from the bottom (12/3/89) + +\ninepoint\noindent +number was allocated. The inside story of how allocation is actually performed +should be irrelevant when the allocation macros are used at a higher level; +you mustn't assume that |plain.tex| really does allocation in any +particular way. +\beginlines +|\count10=22 % this counter allocates \count registers 23, 24, 25, ...| +\endgroup + +\bugonpage A347, lines 2--5 (12/3/89) + +\ninepoint{\parindent=0pt +|\count19=0 % this counter allocates language codes 1, 2, 3, ...|\parbreak +|\count20=255 % this counter allocates insertions 254, 253, 252, ...|\parbreak +|\countdef\insc@unt=20 % nickname for the insertion counter|\parbreak +|\countdef\allocationnumber=21 % the most recent allocation|\parbreak +|\countdef|^|\m@ne||=22 \m@ne=-1 % a handy constant|\par} + +\bugonpage A347, new line after former line 17 (12/3/89) + +\ninepoint\noindent +|\outer\def|^|\newlanguage||{\alloc@9\language\chardef\@cclvi}| + +\bugonpage A352, new line before line 6 from the bottom (3/13/90) + +\ninepoint\noindent +|\def\topglue{\nointerlineskip \vglue-\topskip \vglue} % for top of page| + +\bugonpage A355, line 8 from the bottom (12/3/89) + +\ninepoint\noindent +| \noindent{\bf#1.\enspace}{\sl#2\par}%| + +\bugonpage A363, lines 8--9 from the bottom (12/8/89) + +{\ninepoint\parindent=0pt +| \if@mid \dimen@=\ht0 \advance\dimen@ by\dp\z@ |% + |\advance\dimen@ by12\p@|\parbreak% +| \advance\dimen@ by\pagetotal \advance\dimen@ by-\pageshrink| +\par} + +\bugonpage A375, line 27 (10/30/89) + +\ninepoint\noindent +depending on whether or not |\t|~contains +an asterisk. \ (Do you see why?) \ And here's\cutpar + +\bugonpage A393, lines 3--5 from the bottom (12/3/89) + +\ninepoint +|\hskip-.17em plus-3em minus.11em|\par +|\vadjust{}\penalty10000|\par +|\leaders\copy\dbox\hskip3.3\wd\dbox plus1fil minus.3\wd\dbox| + +\bugonpage A444, line 4 (3/13/90) + +\ninepoint\noindent +Shift box~$x$ down by ${1\over2}\bigl(h(x)-d(x)\bigr) +-a$, where $a=\sigma_{22}$, so that the operator character\cutpar + +\bugonpage A450, line 8 (12/3/89) + +\def\\#1{$_{\kern\scriptspace#1}$} +\ninepoint\indent +{\qquad\tt\\0h\\0e\\0n\\5a\\0t\\0 \\1n\\0a\\0 \\0n\\2a\\0t\\0 + \\1t\\0i\\0o\\0 \\2i\\0o\\0 \\0o\\2n\\0} + +\bugonpage A450, line 14 (12/3/89) + +\ninepoint +{\tt.\\0h\\0y$_3$p\\0h\\0e\\2n\\5a\\4t\\2i\\0o\\2n\\0.} + +\bugonpage A450, lines 19 and 20 (12/3/89) + +\ninepoint\vskip-10pt +\begindisplay +\tt\\0o\\2n\\0 +\\0o\\0n\\1c\\0 +\\1c\\0a\\0 +\\1n\\0a\\0 +\\0n\\2a\\0t\\0 +\\1t\\0i\\0o\\0 +\\2i\\0o\\0 +\\0o\\2n\\0 +\enddisplay +and this yields `{\tt\\0c\\0o\\2n\\1c\\0a\\0t\\0e\\1n\\2a\\1t\\2i\\0o\\2n\\0}', +i.e., `|con-cate-na-tion|'. + +\bugonpage A455, last lines before the quotes (11/30/89) + +\ninepoint\noindent +sit yourself (even in restricted horizontal mode) by saying +^|\setlanguage|\<number>;\break + this changes the current language but it +does not change |\language|. Each what-\break +sit records the current +|\lefthyphenmin| and |\righthyphenmin|. + +\bugonpage A467, right column (12/3/89) + +\eightpoint\indent\hbox to0pt{\hss\lower1pt\hbox{*}}% +|\hfilneg|, 72, 100, 233, 283, 285, 290, 397. + +\bugonpage A468, right column (12/2/89) + +\eightpoint +|\interdisplaylinepenalty|, {\it193}, 349, 362. + +\bugonpage A469, left column (12/3/89) + +\eightpoint\indent\hbox to0pt{\hss\lower1pt\hbox{*}}% +|\language| (hyphenation method), 273, 346, $\underline{455}$. + +\bugonpage A469, right column (10/30/89) + +\eightpoint\indent\hbox to0pt{\hss\lower1pt\hbox{*}}% +|\lefthyphenmin|, 273, {\it364}, $\underline{454}$, 455. + +\bugonpage A472, left column (12/3/89) + +\eightpoint +|\newlanguage|, 346, $\underline{347}$. + +\bugonpage A476, left column (10/30/89) + +\eightpoint\indent\hbox to0pt{\hss\lower1pt\hbox{*}}% +|\righthyphenmin|, 273, {\it364}, $\underline{454}$, 455. + +\bugonpage A479, new entry (3/13/90) + +\eightpoint +|\topglue|, {\it340}, $\underline{352}$. + +\bugonpage A480, right column (3/13/90) + +\eightpoint +|\vglue|, $\underline{352}$, {\it408}. + +\bugonpage A483, the Providence lines (10/8/89) + +\noindent[Change the first one to +\begintt +Providence RI 02940\kern.05em-9506, USA. +\endtt +Then the second one will be +\begindisplay +Providence RI 02940\kern.05em-9506, USA. +\enddisplay +The second line will also appear on page C361.] + +% +% volume B +\hsize=35pc +\def\\#1{\hbox{\it#1\/\kern.05em}} % italic type for identifiers +\def\to{\mathrel{.\,.}} % double dot, used only in math mode + + +% +% volume C +\hsize=29pc +\def\\#1{\hbox{\it#1\/\kern.05em}} % italic type for identifiers + +\bugonpage C220, top line (3/13/90) + +\ninepoint\noindent +modes you get into by hitting +`|S|', `|R|', or `|Q|', respectively, in response to error messages\cutpar + +\bugonpage C252, line 16 (3/13/90) + +\ninepoint\indent +| for i:=1 upto n_windows: display blankpicture inwindow i; endfor| + +\bugonpage C264, lines 4--6 from the bottom (3/24/90) + +\ninepoint\noindent +|vardef |^|counterclockwise|| primary c =|\par\noindent +| if turningcheck>0:|\par\noindent +| interim |^|autorounding||:=0;|\par\noindent +| if |^|turningnumber|| c <= 0: reverse fi fi c enddef;| + +\bugonpage C306, line 6 (3/13/90) + +\ninepoint\noindent +| ligtable "'": "'" =: oct"042", % close quotes| + +\bugonpage C309, second line from bottom (11/18/89) + +\ninepoint\noindent +| define_whole_vertical_blacker_pixels(vair,slab,| $\cdots$ |);| + +\bugonpage C315, line 9 from the bottom (1/2/90) + +\ninepoint\noindent +units of printer's points): + +\bugonpage C337, line 4 from the bottom (1/7/90) + +\ninepoint\noindent +|\def\startfont{\font\testfont=\fontname \spaceskip=0pt| + +% +% Volume D +\hsize=35pc +\def\\#1{\hbox{\it#1\/\kern.05em}} % italic type for identifiers +\def\to{\mathrel{.\,.}} % double dot, used only in math mode + +% +% volume E +\hsize=29pc +\def\dashto{\mathrel{\hbox{-\kern-.05em}\mkern3.9mu\hbox{-\kern-.05em}}} + +\bugonpage E325, line 13 (3/13/90) + +\ninepoint\noindent +{\bf if} \\{serifs}: $x_{3r}=\max(x_{1r},{\rm hround}(x_1+.5\\{dot\_diam} + -.2\\{jut})-.5\\{tiny})$\par\noindent +{\bf else}: $x_3=x_1-.5$ {\bf fi}; + +\bugonpage E483, line 4 (3/13/90) + +\ninepoint +\rightline{\% Character codes \oct{000}--\oct{100} and \oct{133}--\oct{177} + are generated.} + +\bugonpage E544, line 5 (3/13/90) + +\ninepoint\noindent +\hskip 3em\vdots\hskip2em\raise2pt\hbox{(the rest of the + program for `$\gamma$' in |greekl| comes here)} + +\bugonpage E557, line 9 (3/13/90) + +\ninepoint +\rightline{\sl`Nevermore---Ah nevermore.'\thinspace''} + +\bugonpage E558, line 21 (3/13/90) + +\eightpoint\noindent +|Clasp a rare and radiant maiden whom the angels name Lenore."| + +\bugonpage E570, lines 27--28 look better with proper skewchars (3/13/90) + +\begingroup +\tenpoint\bf +\textfont0=\tenbf \scriptfont0=\sevenbf +\font\boldi=cmmib10 \font\boldsy=cmbsy10 +\skewchar\boldi='177 \skewchar\boldsy='60 +\textfont1=\boldi +\textfont2=\boldsy +\noindent Here's some bold 10-point math: +${\hat A}^\Gamma_0 ++{\check B}^\Delta_1 +-{\tilde C}^\Theta_2 +\times{\acute D}^\Lambda_3 +/{\grave E}^\Xi_4 +\oplus{\dot F}^\Pi_5 +\ominus{\ddot G}^\Sigma_6 +\otimes{\breve H}^\Phi_7 +\oslash{\bar I}^\Psi_8 +\odot{\vec J}^{\,\Omega}_9$. +\endgroup + +% +\bye + + +######################################################################## + +Additions to MF84.BUG as of 25 Mar 90 + +553. Global variable used prematurely in do_add_to (Alan Jeffrey, 9 Feb 90) +@x module 403 +@!cur_path_type:double_path_code..also_code; {likewise} +@y +@!cur_path_type:double_path_code..contour_code; {likewise} +@z +@x module 1059 +begin get_x_next; var_flag:=thing_to_add; scan_primary; +if cur_type<>token_list then + @<Abandon edges command because there's no variable@> +else begin lhs:=cur_exp; cur_path_type:=cur_mod;@/ + cur_type:=vacuous; get_x_next; scan_expression; + if cur_path_type=also_code then @<Augment some edges by others@> +@y +@!add_to_type:double_path_code..also_code; {modifier of \&{addto}} +begin get_x_next; var_flag:=thing_to_add; scan_primary; +if cur_type<>token_list then + @<Abandon edges command because there's no variable@> +else begin lhs:=cur_exp; add_to_type:=cur_mod;@/ + cur_type:=vacuous; get_x_next; scan_expression; + if add_to_type=also_code then @<Augment some edges by others@> +@z +@x module 1064 +else begin lhs:=null; +@y +else begin lhs:=null; cur_path_type:=add_to_type; +@z + +554. Balance the parens showing on the terminal (for Lispers). +@x module 631 +@!in_open : 0..max_in_open; {the number of lines in the buffer, less one} +@y +@!in_open : 0..max_in_open; {the number of lines in the buffer, less one} +@!open_parens : 0..max_in_open; {the number of open text files} +@z +@x module 657 +in_open:=0; max_buf_stack:=0; +@y +in_open:=0; open_parens:=0; max_buf_stack:=0; +@z +@x module 681 + begin print_char(")"); force_eof:=false; + update_terminal; {show user that file has been read} +@y + begin print_char(")"); decr(open_parens); + update_terminal; {show user that file has been read} + force_eof:=false; +@z +@x module 793 +print_char("("); print(name); update_terminal; +@y +print_char("("); incr(open_parens); print(name); update_terminal; +@z +@x module 1209 +if job_name=0 then open_log_file; +@y +if job_name=0 then open_log_file; +while open_parens>0 do + begin print(" )"); decr(open_parens); + end; +@z + +-----------Here I draw the line with respect to further changes + +555. (I sincerely hope that there won't be any more) + + +######################################################################## + +Differences between WEAVE.WEB versions 3.0 and 3.1 + +;COMPARISON OF TX:<TEX.TEX>WEAVE-40.WEB.1 AND TX:<TEX.NEW>WEAVE-41.WEB.1 +;OPTIONS ARE /E /3 + +**** FILE TX:<TEX.TEX>WEAVE-40.WEB.1, 1-22 (1401) +% Version 3, for Sewell's book, fixed a long-line bug in input_ln (March, 1989). +% Version 3.1 fixed a bug for programs with only one module (April, 1989). +% Version 4 was major change to allow 8-bit input (September, 1989). + +% Here is TeX material that gets inserted after \input webmac +**** FILE TX:<TEX.NEW>WEAVE-41.WEB.1, 1-22 (1401) +% Version 3, for Sewell's book, fixed long-line bug in input_ln (March, 1989). +% Version 3.1 fixed a bug for programs with only one module (April, 1989). +% Version 4 was major change to allow 8-bit input (September, 1989). +% Version 4.1, for Breitenlohner, avoids English-only output (March, 1990). + +% Here is TeX material that gets inserted after \input webmac +*************** + +**** FILE TX:<TEX.TEX>WEAVE-40.WEB.1, 1-45 (2420) + \centerline{(Version 4)} + \vfill} +**** FILE TX:<TEX.NEW>WEAVE-41.WEB.1, 1-46 (2495) + \centerline{(Version 4.1)} + \vfill} +*************** + +**** FILE TX:<TEX.TEX>WEAVE-40.WEB.1, 1-72 (3524) +@d banner=='This is WEAVE, Version 4' + +@ The program begins with a fairly normal header, made up of pieces that +**** FILE TX:<TEX.NEW>WEAVE-41.WEB.1, 1-73 (3601) +@d banner=='This is WEAVE, Version 4.1' + +@ The program begins with a fairly normal header, made up of pieces that +*************** + +**** FILE TX:<TEX.TEX>WEAVE-40.WEB.1, 1-4450 (175079) +`\.{\\A\ section 101.}'; `\.{\\U\ sections 370 and 1009.}'; +`\.{\\A\ sections 8, 27\\*, and 64.}'. + +@p procedure footnote(@!flag:sixteen_bits); {outputs module cross-references} +**** FILE TX:<TEX.NEW>WEAVE-41.WEB.1, 1-4451 (175158) +`\.{\\A101.}'; `\.{\\Us370\ET1009.}'; `\.{\\As8, 27\\*, 51\ETs64.}'. + +@p procedure footnote(@!flag:sixteen_bits); {outputs module cross-references} +*************** + +**** FILE TX:<TEX.TEX>WEAVE-40.WEB.1, 1-4461 (175460) +out4(" ")("s")("e")("c"); out4("t")("i")("o")("n"); +@<Output all the module numbers on the reference list |cur_xref|@>; +**** FILE TX:<TEX.NEW>WEAVE-41.WEB.1, 1-4461 (175508) +@<Output all the module numbers on the reference list |cur_xref|@>; +*************** + +**** FILE TX:<TEX.TEX>WEAVE-40.WEB.1, 1-4472 (175912) +out("~"); +loop@+ begin out_mod(num(cur_xref)-flag); +**** FILE TX:<TEX.NEW>WEAVE-41.WEB.1, 1-4471 (175907) +@.\\As@> +@.\\Us@> +loop@+ begin out_mod(num(cur_xref)-flag); +*************** + +**** FILE TX:<TEX.TEX>WEAVE-40.WEB.1, 1-4476 (176085) + if (num(xlink(cur_xref))>flag)or(cur_xref<>xlink(q)) then out(","); + {not the last of two} + out(" "); + if num(xlink(cur_xref))<=flag then out4("a")("n")("d")("~"); {the last} + end; +**** FILE TX:<TEX.NEW>WEAVE-41.WEB.1, 1-4476 (176089) + if num(xlink(cur_xref))>flag then out2(",")(" ") {not the last} + else begin out3("\")("E")("T"); {the last} +@.\\ET@> + if cur_xref<>xlink(q) then out("s"); {the last of more than two} +@.\\ETs@> + end; + end; +*************** + + +######################################################################## + +Differences between old WEBMAC.TEX and new + +;COMPARISON OF TX:<TEX82>WEBMAC.CM.1 AND TX:<BNB.WORK>WEBMAC.TEX.1 +;OPTIONS ARE /E /3 + +**** FILE TX:<TEX82>WEBMAC.CM.1, 1-2 (63) +\xdef\fmtversion{\fmtversion+WEBMAC1.4} +\parskip 0pt % no stretch between paragraphs +**** FILE TX:<BNB.WORK>WEBMAC.TEX.1, 1-2 (63) +\xdef\fmtversion{\fmtversion+WEBMAC4.0} % identifies current set of macros +\parskip 0pt % no stretch between paragraphs +*************** + +**** FILE TX:<TEX82>WEBMAC.CM.1, 1-58 (2559) +\def\note#1#2.{\Y\noindent{\hangindent2em\baselineskip10pt\eightrm#1 #2.\par}} +\def\lapstar{\rlap{*}} +**** FILE TX:<BNB.WORK>WEBMAC.TEX.1, 1-58 (2594) +\def\note#1#2.{\Y\noindent{\hangindent2em\baselineskip10pt\eightrm#1~#2.\par}} +\def\lapstar{\rlap{*}} +*************** + +**** FILE TX:<TEX82>WEBMAC.CM.1, 1-62 (2808) +\def\A{\note{See also}} % cross-reference for multiply defined section names +\def\B{\ma@\{}}egin olled comment +**** FILE TX:<BNB.WORK>WEBMAC.TEX.1, 1-62 (2843) +\def\A{\note{See also section}} % crossref for doubly defined section name +\def\As{\note{See also sections}} % crossref for multiply defined section name +\def\B{\mathopen{\.{@\{}}} % begin controlled comment +*************** + +**** FILE TX:<TEX82>WEBMAC.CM.1, 1-68 (3169) +\def\F{\defin{format}} % format definition +**** FILE TX:<BNB.WORK>WEBMAC.TEX.1, 1-69 (3282) +\def\ET{ and~} % conjunction between two section numbers +\def\ETs{, and~} % conjunction between the last two of several section numbers +\def\F{\defin{format}} % format definition +*************** + +**** FILE TX:<TEX82>WEBMAC.CM.1, 1-96 (4553) +\def\U{\note{This code is used in}} % cross-reference for uses of sections +\let\V=\lor % logical or +**** FILE TX:<BNB.WORK>WEBMAC.TEX.1, 1-99 (4804) +\def\U{\note{This code is used in section}} % crossref for use of a section +\def\Us{\note{This code is used in sections}} % crossref for uses of a section +\let\V=\lor % logical or +*************** + +**** FILE TX:<TEX82>WEBMAC.CM.1, 1-186 (9074) + \def\U{\note{Used in}} % cross-reference for uses of sections + \def\:{\par\hangindent 2em}\let\*=*\let\.=\ttentry} +**** FILE TX:<BNB.WORK>WEBMAC.TEX.1, 1-190 (9406) + \def\U{\note{Used in section}} % crossref for use of a section + \def\Us{{Used in sections}} % cro for uses on + \def\:{\par\hangindent 2em}\let\*=*\let\.=\ttentry} +*************** + + +######################################################################## + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% 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": ^ * + ~ +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +[ end of message 025 ] |