[tex-k] another bug in METAFONT syntax & errors in Appendix I of The METAFONTbook
胡亚捷 (Hu Yajie)
2500418497 at qq.com
Sat Jul 11 18:24:55 CEST 2020
Page C187, line -11
Page C214, line -6
Change
| substring <pair primary> of <string primary>
to
| substring <pair expression> of <string primary>
since section 893 of volume D labels `substring' as a primary_binary, which
scan_primary (section 823 -> 839) handles by doing a scan_expression before
the `of' and another scan_primary. Indeed, my computer (MiKTeX) is able to
*show substring 2*(1,2) of "abcd";
>> "cd"
*show substring fullcircle intersectiontimes unitsquare of "abcd";
>> "a"
*show substring (1,2) rotated directiontime (1,1) of fullcircle of "abcd";
>> "b"
(Kinda surprised nobody noticed this before 2014.)
Appendix I
When the same syntax appears twice across the MFbook, the parts of speech and
primitives are generally indexed in both places. Here are a few exceptions
as well as some other kinds of errors.
`&'
Add `129' and `187'.
`(' and `)'
Add `115', `129', `148', `170', and `187' (since 71--73 are indexed)?
`[', `]', and `brackets'
Add `57' and `73'. (These primitives take on many meanings but there is
only place for the underline.)
`,'
Add `211--213' and `218' (since pages 72 and 73 are indexed).
`... (bounded join)'
Perhaps change `127' to `127--129', to align with `--' and `---'.
`<addto command>'
Add `118'.
`chardy'
Add `106' and `220', since these pages mention both `chardx' and `chardy'.
`<declaration>'
Underline `56', not `171'. (On page 171 it is discussed, not defined.)
`<display command>'
Add `191'.
`<expression>'
Add `71', to align with `<primary>', `<secondary>' and `<tertiary>'.
`inwindow'
Add `220'.
`<keep or drop>'
Change `120' to `220'. (Page 120 belongs to `keeping' and `dropping'.)
`showstopping'
Add `219' (since `tracingonline' and `tracingcapsules' are indexed)?
`<vardef heading>'
Align with `<leveldef heading>' (or vice versa).
`<with clause>'
Change `120' to `220' (although page 120 has an example of `withweight').
In general
When a primitive has a corresponding part of speech entry of the same name
(e.g. `cull' and `<cull command>', `display' and `<display command>'),
Knuth sometimes indexes the primitive and sometimes not.
----
My earlier reports:
https://github.com/dine2014/texbook-mfbook-bugs/blob/master/bugs.md
More information about the tex-k
mailing list.