@Appendix @Title { Bypass Symbols } @Tag { bypass } @Begin @PP The `bypass' symbols described in this appendix are intended to be bypass.symbols @Index { bypass symbols } used only in Lout which is generated by computer programs. Their purpose is to bypass the Lout cross reference database, and so reduce the number of passes needed to finalise a document. These symbols should not be used by people, because that would only lead back to the consistency problems that prompted the introduction of cross references in the first place. @PP To produce a bypass table of contents, set the @Code "@MakeContents" setup file option to @Code "Bypass" and use @Code "@BypassContentsEntry" symbols at the outermost level just before the introduction or first chapter: @ID @Tab @Fmta { @Col @Code A ! @Col ! @Col B } vmargin { 0.5vx } { @Rowa A { "@BypassContentsEntry" } @Rowa A { " indent { 0f }" } B { the indent, e.g. {@Code "0f"}, {@Code "2f"}, {@Code "4f"} ... } @Rowa A { " number {}" } B { the section (etc.) number e.g. {@Code "5.2"} } @Rowa A { " title {}" } B { the section (etc.) title e.g. @Code "Azaleas" } @Rowa A { " pagenum {}" } B { the page number e.g. @Code "@PageOf azaleas" } } For major entries such as chapters, use @Code "@BypassMajorContentsEntry" with the same options. This increases the vertical spacing and uses bold font. When @Code "@MakeContents" is {@Code "Bypass"}, no contents entries will be produced automatically. @PP To bypass Lout's automatic numbering of large-scale structure symbols, use the @Code "@BypassNumber" option: @ID @Code { "@Section" " @Title { Azaleas }" " @Tag { azaleas }" " @BypassNumber { 5.2 }" "..." } Give the full `path number' (5.2, B.3 or whatever) of the symbol. There is a @Code "@BypassNumber" option for every symbol that has a @Code "@Title" option and is usually assigned a number automatically by Lout, plus @Code "@Figure" and {@Code "@Table"}. No changes to the setup file are required in order to use {@Code "@BypassNumber"}, and it is permitted for some large-scale structure symbols to have this option and others not. @PP To produce a bypass reference list, set the @Code "@MakeReferences" setup file option to @Code "Bypass" and place reference entries at the end of the document, after the last chapter or other large-scale structure symbol but before any bypass index entries (see below), like this: @ID @Code { "@BypassReference" " label { [Kin94a] }" " value { @RefPrint kingston1995lout.expert }" } The two options are objects which become the label and value of the reference entry. The @Code "value" option can be any object, including an explicit reference; but @Code "@RefPrint" does not introduce any cross-referencing delay if the @Code "@Reference" symbols lie in a separate database file. No sorting or removal of duplicate entries will be done by Lout. When @Code "@MakeReferences" is {@Code "Bypass"}, @Code "@Cite" and related symbols are ignored. @PP There is also @Code "@BypassChapReference" with the same options for producing bypass chapter reference lists; these symbols should be placed at the outer level immediately after the preface, introduction, chapter or appendix that they refer to. @PP To produce bypass indexes, set the @Code "@MakeIndex" setup file option to {@Code Bypass} and use the @Code "@BypassRawIndex" symbol repeatedly at the very end of the document, enclosed in @Code "@BypassBeginIndex" and @Code "@BypassEndIndex" symbols: @ID @Code { "@BypassBeginIndex" "@BypassRawIndex indent { 0f } { Azaleas, @PageOf azaleas }" "..." "@BypassEndIndex" } The @Code "indent" option gives the indent ({@Code "0f"}, @Code {"1f"}, @Code {2f}, etc.), and the right parameter is as for @Code "@RawIndex". No @Code "@PageMark" operations, sorting, merging, or attachment of page numbers will be done by Lout. When @Code "@MakeIndex" is {@Code Bypass}, @Code "@Index" and related symbols are ignored. At present, bypass index symbols work only in books, not with ordinary documents or technical reports. There are corresponding symbols for creating bypass indexes A and B. @End @Appendix