.! .! This is a RUNOFF source file that produces part of a VMS-style HELP .! library for the August DECUS TeX Collection. To build the library, .! execute MAKE_TEX_HLB.COM. .! .! Stuff I mean to fill in is marked with ??? .! Stuff that needs work in the Collection is marked with ".!" in column 1, .! except for this comment. .! .NO PAGING .NO FLAGS ALL .LEFT MARGIN 1 .RIGHT MARGIN 70 .INDENT -1 1 BIBTEX .INDENT 5 Invokes the BibTeX utility to compile a bibliography file for LaTeX. Full details can be found in "LaTeX: A Document Preparation System" by Leslie Lamport. .SKIP Format: .SKIP .INDENT +3 BIBTEX bibliography_file_spec .SKIP Documentation for BibTeX can be found in TEX_DISK:[TEX.BIBTEX]. The vast majority of this help entry was taken from the original BibTeX documentation. This documentation has since become Appendix B of "LaTeX: A Document Preparation System". .INDENT -1 2 Parameters .INDENT -1 bibliography_file_spec .SKIP Specifies the name of the bibliography database file to be compiled by BibTeX. If the file specification does not include a file type, BibTeX assumes a default type of BIB. .INDENT -1 2 Bibliography_file .BREAK A bibliography database file may contains two types of entry - an abbreviation definition or a reference entry for citation. .INDENT -1 3 @STRING_command .INDENT 5 The @STRING command is used to define abbreviations for use by BibTeX within the bibliography database file. The command .SKIP .INDENT +3 @string{jgg1 = "Journal of Gnats and Gnus, Series~1"} .SKIP defines 'jgg1' to be the abbreviation for the string "Journal of Gnats and Gnus, Series~1". Parentheses can be used in place of the outermost braces in the @string command, and braces can be used instead of the quotation marks. The text must have matching braces. .SKIP The case of letters is ignored in an abbreviation as well as in the command name @string, so the command above could have been written: .SKIP .INDENT +3 @STRING{JgG1 = "Journal of Gnats and Gnus, Series~1"} .SKIP A @string command can appear anywhere before or between entries in a bibliography database file. However, it must come before any use of the abbreviation, so a sensible place for @string commands is at the beginning of the file. A @string command in the bibliography database file takes precedence over a definition made by the bibliography style, so it can be used to change the definition of an abbreviation such as 'Feb'. .INDENT -1 3 Entry_format .INDENT 5 A bibliography database file contains a series of reference entries like the following: .SKIP .LITERAL @BOOK{kn:gnus, AUTHOR = "Donald E. Knudson", TITLE = "1966 World Gnus Almanac", PUBLISHER = {Permafrost Press}, ADDRESS = {Novisibirsk} } .END LITERAL .SKIP The @BOOK states that this is an entry of type book. various entry types are described below. The 'kn:gnus' is the citation key, as it appears in the argument of a \cite command referring to the entry. .SKIP This entry has four fields, named AUTHOR, TITLE, PUBLISHER and ADDRESS. The meanings of these and other fields are described below. A field consists of the name, an '=' character with optional space around it, followed by its text. The text of a field is a string of characters, with no unmatched braces, surrounded by either a pair of braces or a pair of '"' characters . Entry fields are separated from one another, and from the citation key, by commas. A comma may have optional space around it. .SKIP The outermost braces that surround the entire entry may be replaced by parentheses. As in TeX input files, an end-of-line character counts as a space and one space is equivalent to many spaces. Unlike TeX, BibTeX ignores the case of letters in the entry type, citation key and field names. The above entry could have been typed as follows: .SKIP .LITERAL @BOOK(kn:gnus, author = {Donald E. Knudson}, TITLE = "1966 World Gnus Almanac", PUBLISHER = {Permafrost Press}, ADDRESS = {Novisibirsk} ) .END LITERAL .SKIP However, the case of letters does matter to LaTeX, so the citation key should appear exactly the same in all \cite commands in the LaTeX input file. .SKIP The quotes or braces can be omitted around text consisting entirely of numerals. the following two fields are equivalent: .SKIP .LITERAL Volume = "27" Volume = 27 .END LITERAL .INDENT -1 3 Entry_types .BREAK When entering a reference in the bibliography database, the first thing to decide is what type of entry it is. No fixed classification scheme can be complete, but BibTeX provides enough entry types to handle almost any reference reasonably well. .SKIP References to different types of publications contain different information; a reference to a journal might include the volume and number of the journal, which is usually not meaningful for a book. Therefore, database entries of different types have different fields. for each entry type, the fields are divided into three classes: .SKIP .LITERAL o Required omitting the field will produce an error message and may result in a badly formatted bibliography entry. If the required information is not meaningful, you are using the wrong entry type. o Optional the field's information will be used if present, but can be omitted without causing any formatting problems. A reference should contain any available information that might help the reader, so you should include the optional field if it is applicable. o Ignored the field is ignored. BibTeX ignores any field that is not required or optional, so you can include any fields you want in a bibliography entry. It's often a good idea to put all relevant information about a reference in its bibliography entry - even information that may never appear in the bibliography. For example, if you want to keep an abstract of a paper in a computer file, put it in an 'abstract' field in the paper's bibliography entry. The bibliography database file is likely to be as good a place as any for the abstract, and it is possible to design a bibliography style for printing selected abstracts. .END LITERAL .INDENT -1 4 article_entry .INDENT 5 An article from a journal or magazine. .SKIP .LITERAL Format: @ARTICLE{citation_key, required_fields [, optional_fields] } .END LITERAL .SKIP Required fields: author, title, journal, year .BREAK Optional fields: volume, number, pages, month, note, key .INDENT -1 4 book_entry .INDENT 5 A book with an explicit publisher. .SKIP .LITERAL Format: @BOOK{citation_key, required_fields [, optional_fields] } .END LITERAL .SKIP Required fields: author or editor, title, publisher, year .BREAK Optional fields: volume, series, address, edition, month, note, key .INDENT -1 4 booklet_entry .INDENT 5 A work that is printed and bound, but without a named publisher or sponsoring institution. .SKIP .LITERAL Format: @BOOKLET{citation_key, required_fields [, optional_fields] } .END LITERAL .SKIP Required fields: title .BREAK Optional fields: author, howpublished, address, month, year, note, key .INDENT -1 4 conference_entry .INDENT 5 An article in the proceedings of a conference. This entry is identical to the 'inproceedings' entry and is included for compatibility with another text formatting system. .SKIP .LITERAL Format: @CONFERENCE{citation_key, required_fields [, optional_fields] } .END LITERAL .SKIP Required fields: author, title, booktitle, year .BREAK Optional fields: editor, pages, organization, publisher, address, month, note, key .INDENT -1 4 inbook_entry .INDENT 5 A part of a book, which may be a chapter and/or a range of pages. .SKIP .LITERAL Format: @INBOOK{citation_key, required_fields [, optional_fields] } .END LITERAL .SKIP Required fields: author or editor, title, chapter and/or pages, publisher, year .BREAK Optional fields: volume, series, address, edition, month, note, key .INDENT -1 4 incollection_entry .INDENT 5 A part of a book with its own title. .SKIP .LITERAL Format: @INCOLLECTION{citation_key, required_fields [, optional_fields] } .END LITERAL .SKIP Required fields: author, title, booktitle, year .BREAK Optional fields: editor, pages, organization, publisher, address, month, note, key .INDENT -1 4 inproceedings_entry .INDENT 5 An article in the proceedings of a conference. .SKIP .LITERAL Format: @INPROCEEDINGS{citation_key, required_fields [, optional_fields] } .END LITERAL .SKIP Required fields: author, title, booktitle, year .BREAK Optional fields: editor, pages, organization, publisher, address, month, note, key .INDENT -1 4 manual_entry .INDENT 5 Technical documentation. .SKIP .LITERAL Format: @MANUAL{citation_key, required_fields [, optional_fields] } .END LITERAL .SKIP Required fields: title .BREAK Optional fields: author, organization, address, edition, month, year, note, key .INDENT -1 4 mastersthesis_entry .INDENT 5 A Master's thesis. .SKIP .LITERAL Format: @MASTERSTHESIS{citation_key, required_fields [, optional_fields] } .END LITERAL .SKIP Required fields: author, title, school, year .BREAK Optional fields: address, month, note, key .INDENT -1 4 misc_entry .INDENT 5 Use this type when nothing else seems appropriate. .SKIP .LITERAL Format: @MISC{citation_key, required_fields [, optional_fields] } .END LITERAL .SKIP Required fields: none .BREAK Optional fields: author, title, howpublished, month, year, note, key .INDENT -1 4 phdthesis_entry .INDENT 5 A PhD thesis. .SKIP .LITERAL Format: @PHDTHESIS{citation_key, required_fields [, optional_fields] } .END LITERAL .SKIP Required fields: author, title, school, year .BREAK Optional fields: address, month, note, key .INDENT -1 4 proceedings_entry .INDENT 5 The proceedings of a conference. .SKIP .LITERAL Format: @PROCEEDINGS{citation_key, required_fields [, optional_fields] } .END LITERAL .SKIP Required fields: title, year .BREAK Optional fields: editor, publisher, organization, address, month, note, key .INDENT -1 4 techreport_entry .INDENT 5 A report published by a school or other institution, usually numbered within a series. .SKIP .LITERAL Format: @TECHREPORT{citation_key, required_fields [, optional_fields] } .END LITERAL .SKIP Required fields: author, title, institution, year .BREAK Optional fields: type, number, address, month, note, key .INDENT -1 4 unpublished_entry .INDENT 5 A document with an author and title, but not formally published. .SKIP .LITERAL Format: @UNPUBLISHED{citation_key, required_fields [, optional_fields] } .END LITERAL .SKIP Required fields: author, title, note .BREAK Optional fields: month, year, key .INDENT -1 3 Field_text .SKIP The text of the field is enclosed in braces or double quote characters. A part of the text is said to be enclosed in braces if it lies inside a matching pair of braces other than the ones enclosing the entire entry or the entire field text. .INDENT -1 4 Names .INDENT 5 The text of an author or editor field represents a list of names. The bibliography style determines the format in which the name is printed: whether the first name or last name appears first, if the full first name or just the first initial is used, etc. The bibliography file entry simply tells BibTeX what the name is. .SKIP You should type an author's complete name and let the bibliography style decide what to abbreviate. (But an author's complete name may be "Donald~E. Knuth" or even "J.~P.~Morgan"; you should type it the way the author would like it to appear, if that's known.) .SKIP Most names can be entered in the obvious way, either with or without a comma, as in the following examples. .SKIP .LITERAL "John Paul Jones" "Jones, John Paul" "Ludwig von Beethoven" "von Beethoven, Ludwig" .END LITERAL .SKIP Some people have multiple last names - for example, Per Brinch Hansen's last name is Brinch~Hansen. His name should be typed with a comma: .SKIP .LITERAL "Brinch Hansen, Per" .END LITERAL .SKIP To understand why, you must understand how BibTeX handles names (for what follows, a "name" corresponds to a person). .SKIP Each name consists of four parts: First, von, Last, and~Jr; each part consists of a (possibly empty) list of name-tokens. For example the First part of Per Brinch~Hansen's name has the single token "Per"; the Last part has two, "Brinch" and "Hansen"; and the von and Jr parts are empty. If you had typed .SKIP .LITERAL "Per Brinch Hansen" .END LITERAL .SKIP instead, BibTeX would erroneously think "Brinch" were a First-part token, just as "Paul" is a First-part token in "John~Paul Jones". .SKIP Here's another example: .SKIP .LITERAL "Charles Louis Xavier Joseph de la Vallee Poussin" .END LITERAL .SKIP This name has four tokens in the First part, two in the von, and two in the Last. Here BibTeX knows where one part ends and the other begins because the tokens in the von part begin with lower-case letters. .SKIP If you want BibTeX to consider something a single token, enclose it in braces. You should do this, for example, if a comma is part of a name: .SKIP .LITERAL "{Barnes and Noble, Inc.}" "{Barnes and} {Noble, Inc.}" "{Barnes} {and} {Noble,} {Inc.}" .END LITERAL .SKIP The braces surrounding the comma keep "Inc." from being interpreted as a First token; this name has only a Last part, with either one, two, or four tokens (there must be a space separating the tokens in the second and third forms). Probably the second form is slightly more meaningful, but don't lose sleep over this since only rarely will an institution be an author or editor. .SKIP So the two names .SKIP .LITERAL "von Beethoven, Ludwig" "{von Beethoven}, Ludwig" .END LITERAL .SKIP are considered by BibTeX to be different names. In the first, "Beethoven" is the Last part and "von" is the von part; in the second, which in this case happens to be incorrect, the Last part has a single token and there's no von part. The bibliography style will probably print both the same, but it may alphabetize and label them differently. .SKIP "Juniors" pose a special problem. Most people having "Jr." in their name precede it with a comma. Such a name should be entered as follows: .SKIP .LITERAL "Ford, Jr., Henry" .END LITERAL .SKIP However, a few people do not use a comma. They are handled by considering the "Jr." to be part of the last Last token: .SKIP .LITERAL "{Steele Jr.}, Guy L." "Guy L. {Steele Jr.}" .END LITERAL .SKIP This name has no Jr part. .SKIP To summarize, you may type a name in one of three forms: .SKIP .LITERAL "First von Last" "von Last, First" "von Last, Jr, First" .END LITERAL .SKIP You may almost always use the first form; you shouldn't if either there's a Jr part or the Last part has multiple tokens but there's no von part. .SKIP If there are multiple authors or editors, their names must be separated by the word "and", surrounded by spaces, not enclosed in braces: .SKIP .LITERAL AUTHOR = "Ralph Alpher and Bethe, Hans and George Gamow" .END LITERAL .SKIP Since BibTeX interprets commas as separating parts of a name and "and" as separating names themselves, this example has three coauthors: Ralph Alpher, Hans Bethe, and George Gamow. If the word "and" appears as part of a name, it must be enclosed in braces, as in the example of "Barnes and Noble,~Inc." given above. If you have too many names to list in a field, you can end the list with "and others"; the standard styles appropriately append an "et al." .SKIP BibTeX's rules are actually a bit more complicated than indicated here, but this description will suffice for most names. .INDENT -1 4 Titles .INDENT 5 The bibliography style determines whether or not a title is capitalized; the titles of books usually are, the title of articles usually are not. You type a title the way it should appear if it is capitalized (you should capitalize everything but articles and unstressed conjunctions and prepositions, and even these should be capitalized as the first word or the first after a colon): .SKIP .LITERAL TITLE = "The Agony and the Ecstasy" .END LITERAL .SKIP BibTeX will change uppercase letters to lowercase if appropriate. Uppercase letters that should not be changed are enclosed in braces. The following two titles are equivalent; the "A" of "Africa" will not be made lowercase. .SKIP .LITERAL "The Gnats and Gnus of {Africa}" "The Gnats and Gnus of {A}frica" .END LITERAL .INDENT -1 4 Abbreviations .INDENT 5 Instead of an ordinary text string, the text of a field can be replaced by an abbreviation for it. An abbreviation is a string of characters that starts with a letter and does not contain a space or any of the following ten characters: .SKIP .LITERAL " # % ' ( ) , = { } .END LITERAL .SKIP The abbreviation is typed in place of the text field, with no braces or quotation marks. If 'jgg1' is an abbreviation for .SKIP .LITERAL Journal of Gnats and Gnus, Series~1 .END LITERAL .SKIP then the following are equivalent: .SKIP .LITERAL JOURNAL = jgg1 JOURNAL = "Journal of Gnats and Gnus, Series~1" .END LITERAL .SKIP Some abbreviations are predefined by the bibliography style. These always include the usual 3 letter abbreviations for the month: jan, feb, mar etc. .SKIP Bibliography styles usually contain abbreviations for the names of commonly referenced journals. Consult the Local Guide for a list of the predefined abbreviations for the bibliography styles available. .SKIP You can define your own abbreviations by using BibTeX's @STRING command. .INDENT -1 3 Field_types .INDENT 5 Below is a list of all fields recognized by the standard bibliography styles. An entry can also contain other fields, which are ignored by those styles. .INDENT -1 4 address_field .INDENT 5 Publisher's address. For major publishing houses, just the city is given. For small publishers, you can help the reader by giving the complete address. .SKIP .LITERAL Format: ADDRESS = field_text .END LITERAL .INDENT -1 4 annote_field .INDENT 5 An annotation, used only for annotated bibliography styles (which are not among the standard ones). .SKIP .LITERAL Format: ANNOTE = field_text .END LITERAL .INDENT -1 4 author_field .INDENT 5 The name(s) of the author(s). .SKIP .LITERAL Format: AUTHOR = field_text .END LITERAL .INDENT -1 4 booktitle_field .INDENT 5 Title of a book, part of which is being cited. .SKIP .LITERAL Format: BOOKTITLE = field_text .END LITERAL .INDENT -1 4 chapter_field .INDENT 5 A chapter number. .SKIP .LITERAL Format: CHAPTER = field_text .END LITERAL .INDENT -1 4 edition_field .INDENT 5 The edition of a book - for example, "second". .SKIP .LITERAL Format: EDITION = field_text .END LITERAL .INDENT -1 4 editor_field .INDENT 5 Name(s) of editor(s). If there is also an "author" field, then the "editor" field gives the editor of the book or collection in which the reference appears. .SKIP .LITERAL Format: EDITOR = field_text .END LITERAL .INDENT -1 4 howpublished_field .INDENT 5 How something strange has been published. .SKIP .LITERAL Format: HOWPUBLISHED = field_text .END LITERAL .INDENT -1 4 institution_field .INDENT 5 The institution that published the work. .SKIP .LITERAL Format: INSTITUTION = field_text .END LITERAL .INDENT -1 4 journal_field .INDENT 5 A journal name. Abbreviations are provided for many journals; see the Local Guide. .SKIP .LITERAL Format: JOURNAL = field_text .END LITERAL .INDENT -1 4 key_field .INDENT 5 Used for alphabetizing and creating a label when the "author" and "editor" fields are missing. This field should not be confused with the citation key that appears in the \cite command and at the beginning of the entry. .SKIP .LITERAL Format: KEY = field_text .END LITERAL .INDENT -1 4 month_field .INDENT 5 The month in which the work was published or, for an unpublished work, in which it was written. .SKIP .LITERAL Format: MONTH = field_text .END LITERAL .INDENT -1 4 note_field .INDENT 5 Any additional information that can help the reader. .SKIP .LITERAL Format: NOTE = field_text .END LITERAL .INDENT -1 4 number_field .INDENT 5 The number of a journal, magazine, or technical report. An issue of a journal or magazine is usually identified by its volume and number; the organization that issues a technical report usually gives it a number. .SKIP .LITERAL Format: NUMBER = field_text .END LITERAL .INDENT -1 4 organization_field .INDENT 5 The organization sponsoring a conference. .SKIP .LITERAL Format: ORGANIZATION = field_text .END LITERAL .INDENT -1 4 pages_field .INDENT 5 A page number or range of numbers such as "42--111"; you may also have several of these, separating them with commas: "7,41,73--97". The standard styles convert a single dash to a double. .SKIP .LITERAL Format: PAGES = field_text .END LITERAL .INDENT -1 4 publisher_field .INDENT 5 The publisher's name. .SKIP .LITERAL Format: PUBLISHER = field_text .END LITERAL .INDENT -1 4 school_field .INDENT 5 The name of the school where a thesis was written. .SKIP .LITERAL Format: SCHOOL = field_text .END LITERAL .INDENT -1 4 series_field .INDENT 5 The name of a series or set of books. When citing an entire book, the the "title" field gives its title and an optional "series" field gives the name of a series in which the book is published. .SKIP .LITERAL Format: SERIES = field_text .END LITERAL .INDENT -1 4 title_field .INDENT 5 The work's title. .SKIP .LITERAL Format: TITLE = field_text .END LITERAL .INDENT -1 4 type_field .INDENT 5 The type of a technical report - for example, "Research Note". .SKIP .LITERAL Format: TYPE = field_text .END LITERAL .INDENT -1 4 volume_field .INDENT 5 The volume of a journal or multivolume book work. .SKIP .LITERAL Format: VOLUME = field_text .END LITERAL .INDENT -1 4 year_field .INDENT 5 The year of publication or, for an unpublished work, the year it was written. This field's text should contain only numerals. .SKIP .LITERAL Format: YEAR = field_text .END LITERAL .INDENT -1 1 CP .INDENT 5 CP is a form of the Unix CP command. .SKIP Source code for CP can be found in TEX_DISK:[TEX.DVI]. .INDENT -1 1 CRUDETYPE .INDENT 5 .SKIP CRUDEtype was originally based on D.E.Knuth's program DVItype, but so many changes were needed for various reasons that there is hardly any of the original code left. The purpose of this program is to provide a framework for users to write TeX device drivers for a variety of `crude' devices. Roughly speaking, `crude' means any printer that cannot print the fonts that METAFONT generates. This would include daisy-wheels and most impact dot-matrix printers. .SKIP Source code and documentation for CRUDEtype can be found in TEX_DISK:[TEX.SCREENVIEW]. .INDENT -1 1 Directories .INDENT 5 There is one help topic for each subdirectory under TEX_DISK:[TEX], the root directory for the DECUS TeX Collection. .INDENT -1 2 AMSTEX .INDENT 5 TEX_DISK:[TEX.AMSTEX] contains sources for AMSTEX, the American Mathematical Society's macro package for TeX. The book "The Joy of TeX" describes AMSTEX. .INDENT -1 2 BIBTEX .INDENT 5 TEX_DISK:[TEX.BIBTEX] contains sources and documentation for BibTeX version 998c for VAX/VMS. .INDENT -1 2 CM .INDENT 5 TEX_DISK:[TEX.CM] contains METAFONT sources used to generate Computer Modern fonts for use with TeX. .INDENT -1 2 DOC .INDENT 5 TEX_DISK:[TEX.DOC] contains documentation for various items .INDENT -1 3 DVI .INDENT 5 General documentation for the DVI programs is in TEX_DISK:[TEX.DVI.DOC] and TEX_DISK:[TEX.DOC.DVI]. The same files can be found in both subdirectories. .INDENT -1 3 HELP .INDENT 5 VMS-style HELP files. .INDENT -1 3 TEX .INDENT 5 Manuals for TeX, METAFONT and WEB, and the TRIP and TRAP test packages. Errata lists for the Computers & Typesetting books. Bug lists for TeX and METAFONT. An example WEB program in PRIMES.*. VMS command procedures to create Tex font distribution tapes in GF*.CMD. TeX macros for "Concrete Mathematics" in GKPMAC.TEX. Documents about TeX on VAX/VMS, TOPS20 and MVS. .INDENT -1 3 TEXSIS .INDENT 5 Documentation for TeXsis, a TeX macro package for Physics papers. .SKIP See TEXSIS. .INDENT -1 2 DOS .INDENT 5 TEX_DISK:[TEX.DOS] contains archives of TeX, previewers, and fonts for DOS can be found in the directory TEX_DISK:[TEX.DOS] along with PKXARC.COM, the de-ARCing program for the ARC files. .INDENT -1 2 DVI .INDENT 5 TEX_DISK:[TEX.DVI] contains Nelson Beebe's DVI Driver collection. General documentation for the DVI programs is in TEX_DISK:[TEX.DVI.DOC] and TEX_DISK:[TEX.DOC.DVI]. The same files can be found in both subdirectories. .INDENT -1 2 DVI2LN3 .INDENT 5 TEX_DISK:[TEX.DVI2LN3] contains DVI2LN3, a program to convert DVI files to the format needed by the DEC LN03 printer. .INDENT -1 2 DVI2TTY .INDENT 5 TEX_DISK:[TEX.DVI2TTY] contains a DVI to Ascii converter. .INDENT -1 2 DVIDIS .INDENT 5 TEX_DISK:[TEX.DVIDIS] contains a previewer for VAXStations. .INDENT -1 2 DVIDVI .INDENT 5 TEX_DISK:[TEX.DVIDVI] contains a program that allows you to modify a DVI file. .INDENT -1 2 DVIOUT .INDENT 5 TEX_DISK:[TEX.DVIOUT] contains a program for converting DVI for various devices. .INDENT -1 2 DVIPSC .INDENT 5 TEX_DISK:[TEX.DVIPSC] contains a port of DVI2PS (DVI to Postscript) for VMS. .INDENT -1 2 DVITOLN03 .INDENT 5 TEX_DISK:[TEX.DVITOLN03] contains a program to convert DVI files to the format needed by DEC LN03 printers. Reads PK or PXL fonts. Uses 256 Character sets. .INDENT -1 2 DVITOVDU .INDENT 5 TEX_DISK:[TEX.DVITOVDU] contains DVItoVDU, an interactive previewer that allows you to look at TeX-generated DVI files on a variety of commonly available Video Display Units. The "DVItoVDU User Guide" in TEX_DISK:[TEX.DVITOVDU]USERGUIDE.TEX describes the program. .INDENT -1 2 EXAMPLES .INDENT 5 TEX_DISK:[TEX.EXAMPLES] contains some TeX and LaTeX examples. .INDENT -1 2 EXE .INDENT 5 TEX_DISK:[TEX.EXE] contains executable images and command procedures. .INDENT -1 2 FONTS .INDENT 5 TEX_DISK:[TEX.FONTS] contains fonts. .INDENT -1 2 FORMATS .INDENT 5 TEX_DISK:[TEX.FORMATS] contains TeX Format files, METAFONT base files and string pool files. A TeX format is a set of definitions that extend and modify TeX. Plain TeX is the standard format represented by the PLAIN.FMT format file. PLAIN.BAS is a similar file for METAFONT. .INDENT -1 2 HALFTONE .INDENT 5 TEX_DISK:[TEX.HALFTONE] contains subroutines for injecting halftone images into TeX documents. .INDENT -1 2 IDXTEX .INDENT 5 TEX_DISK:[TEX.IDXTEX] contains sources for IdxTeX, a program to process LaTeX .IDX files. .INDENT -1 2 IDX_GLO .INDENT 5 TEX_DISK:[TEX.IDX_GLO] contains an index builder and a glossary builder for LaTeX. See also IDXTEX and MAKEINDEX. .INDENT -1 2 INPUTS .INDENT 5 TEX_DISK:[TEX.INPUTS] contains TeX input files and LaTeX style files. .INDENT -1 2 LATEX .INDENT 5 TEX_DISK:[TEX.LATEX] contains LaTeX macro package sources. .INDENT -1 2 LSEDIT .INDENT 5 TEX_DISK:[TEX.LSEDIT] contains a template for LaTeX for the VMS Language Sensitive Editor. .INDENT -1 2 MAC .INDENT 5 TEX_DISK:[TEX.MAC] contains OZTeX (TeX for the Macintosh) and a previewer. .INDENT -1 2 MAKE .INDENT 5 TEX_DISK:[TEX.MAKE] contains a VMS Make needed to rebuild Beebe DVI Collection. .INDENT -1 2 MAKEINDEX .INDENT 5 TEX_DISK:[TEX.MAKEINDEX] contains an index builder for LaTeX. See also IDXTEX and MAKEINDEX. .INDENT -1 2 MF .INDENT 5 TEX_DISK:[TEX.MF] contains METAFONT sources and tools .INDENT -1 2 PICMODE .INDENT 5 TEX_DISK:[TEX.PICMODE] contains a picture making system. .INDENT -1 2 PICTEX .INDENT 5 TEX_DISK:[TEX.PICTEX] contains PiCTeX sources. .INDENT -1 2 PSLATEX .INDENT 5 TEX_DISK:[TEX.PSLATEX] contains a LaTeX implementation especially for Postscript output. .INDENT -1 2 PSPRINT .INDENT 5 TEX_DISK:[TEX.PSPRINT] contains a program that creates postscript outputs of regular text files. .INDENT -1 2 RNOTOTEX .INDENT 5 TEX_DISK:[TEX.RNOTOTEX] contains a RUNOFF to LaTeX converter. .INDENT -1 2 SCREENVIEW .INDENT 5 TEX_DISK:[TEX.SCREENVIEW] contains programs to view DVI files on your screen. .INDENT -1 2 SOURCES .INDENT 5 TEX_DISK:[TEX.SOURCES] contains sources for TeX, Web, Tangle, etc. .INDENT -1 2 SPELL .INDENT 5 TEX_DISK:[TEX.SPELL] contains sources and dictionary files for SPELL. .INDENT -1 2 TEST .INDENT 5 TEX_DISK:[TEX.TEST] contains TRIP and TRAP. TRIP is an exhaustive test file for TeX. TRAP is an exhaustive test file for METAFONT. Documentation for TRIP and TRAP can be found in TEX_DISK:[TEX.DOC.TEX]. .INDENT -1 2 TEXSIS .INDENT 5 TEX_DISK:[TEX.TEXSIS] contains ??? .INDENT -1 2 TEXTYL .INDENT 5 TEX_DISK:[TEX.TEXTYL] contains another Graphics in TeX utility. See also PicTeX. .INDENT -1 2 TEX_EDITOR .INDENT 5 TEX_DISK:[TEX.TEX_EDITOR] contains a version of TeX that allows you to jump into an editor on an error. Change files for Adrian Clark's Editor interface to TeX. .INDENT -1 2 TEX_PS_STUFF .INDENT 5 TEX_DISK:[TEX.TEX_PS_STUFF] contains material to set up PSLATEX for VMS and. for a PRINT/DVI command .INDENT -1 2 TGRIND .INDENT 5 TEX_DISK:[TEX.TGRIND] contains TGRIND, a program that converts source files to TeX input. .INDENT -1 2 TR2TEX .INDENT 5 TEX_DISK:[TEX.TR2TEX] contains a Troff to TeX converter. .INDENT -1 2 TUGBOAT .INDENT 5 TEX_DISK:[TEX.TUGBOAT] contains various files from TUGBOAT, the TeX User group newsletter. .INDENT -1 2 UNIX .INDENT 5 TEX_DISK:[TEX.UNIX] contains UNIX materials in compressed tar files. .INDENT -1 2 UNIX_TOOLS .INDENT 5 TEX_DISK:[TEX.UNIX_TOOLS] contains tools for reading ARC, TAR and compressed files. .INDENT -1 2 WEB_PACK .INDENT 5 TEX_DISK:[TEX.WEB_PACK] contains Web utilities, including MWEB. .INDENT -1 2 XDVI .INDENT 5 TEX_DISK:[TEX.XDVI] contains XDVI, a previewer for DECwindows. .INDENT -1 1 DVI2LN3 .INDENT 5 DVI2LN3 converts DVI files to the format needed by the DEC LN03 printer. Source and documentation for DVI2LN3 can be found in TEX_DISK:[TEX.DVI2LN3]. .INDENT -1 1 DVI2LNG .INDENT 5 Some special version of DVItype. .INDENT -1 1 DVI2TTY .INDENT 5 Dvi2tty does a fair job of producing a rough draft copies of TeX documents. Crudetype does a somewhat better job, particularly with regards to font changes and spacing. Both are useful for creating ASCII text files for things like on-line documentation files for dumb terminals and lineprinters. Source and documentation for DVI2TTY can be found in TEX_DISK:[TEX.DVI2TTY]. .INDENT -1 1 DVIALW .INDENT 5 DVIALW is a program that converts DVI files to the format needed by the Apple LaserWriter laser printer (Postscript). .INDENT -1 1 DVIBIT .INDENT 5 DVIBIT is a program that converts DVI files to the format needed by the version 3.10 BBN BitGraph terminal. .INDENT -1 1 DVICAN .INDENT 5 DVICAN is a program that converts DVI files to the format needed by the Canon LBP-8 A2 laser printer. .INDENT -1 1 DVIE72 .INDENT 5 DVIE72 is a program that converts DVI files to the format needed by Epson 60/72-dpi 9-pin printers. .SKIP Source code for DVIE72 can be found in TEX_DISK:[TEX.DVI]. .INDENT -1 1 DVIEPS .INDENT 5 DVIEPS is a program that converts DVI files to the format needed by Epson 240/216-dpi 9-pin printers. .SKIP Source code for DVIEPS can be found in TEX_DISK:[TEX.DVI]. .INDENT -1 1 DVIGD .INDENT 5 DGIGD is a program that converts DVI files to the format needed by the Golden Dawn Golden Laser 100 printer. .INDENT -1 1 DVIIMP .INDENT 5 DVIIMP is a program that converts DVI files to the format needed by the Imagen imPRESS-language laser printer family. .INDENT -1 1 DVIJEP .INDENT 5 DVIJEP is a program that converts DVI files to the format needed by the Hewlett-Packard LaserJet Plus laser printer. .INDENT -1 1 DVIJET .INDENT 5 DVIJET is a program that converts DVI files to the format needed by the Hewlett-Packard LaserJet laser printer. .INDENT -1 1 DVIL3P .INDENT 5 DVIL3P is a program that converts DVI files to the format needed by the DEC LN03 Plus laser printer. .INDENT -1 1 DVIL75 .INDENT 5 DVIL75 is a program that converts DVI files to the format needed by the DEC LA75 144 dpi printer. .INDENT -1 1 DVIM72 .INDENT 5 DVIM72 is a program that converts DVI files to the format needed by the Apple Imagewriter 72 dpi printer. .INDENT -1 1 DVIMAC .INDENT 5 DVIMAC is a program that converts DVI files to the format needed by the Apple Imagewriter 144 dpi printer. .INDENT -1 1 DVIMPI .INDENT 5 DVIMPI is a program that converts DVI files to the format needed by the MPI Sprinter 72 dpi printer. .INDENT -1 1 DVIO72 .INDENT 5 DVIO72 is a program that converts DVI files to the format needed by the OKIDATA Pacemark 2410 72 dpi printer. .INDENT -1 1 DVIOKI .INDENT 5 DVIOKI is a program that converts DVI files to the format needed by the OKIDATA Pacemark 2410 144 dpi printer. .INDENT -1 1 DVIPRX .INDENT 5 DVIPRX is a program that converts DVI files to the format needed by the Printronix 60h x 72v dpi printer. .INDENT -1 1 DVITOS .INDENT 5 DVITOS is a program that converts DVI files to the format needed by the Toshiba P-1351 180 dpi printer. .INDENT -1 1 DVITYPE .INDENT 5 DVItype is a program that converts DVI files into human-readable ASCII files. .INDENT -1 1 ECHOALL .INDENT 5 ECHOALL is a form of the Unix "echo" command. Source code for ECHOALL can be found in TEX_DISK:[TEX.DVI]. .INDENT -1 1 TeX_File_types .LITERAL .AUX cross-reference written by LaTeX, read by BibTeX .BAS base file written by INIMF, read by METAFONT. See INIMF .DVI written by TeX, read by DVI programs .DVI-xx written by DVI program DVIxx, sent to print device .FMT format file written by INITEX, read by TeX. See INITEX .GF font file written by METAFONT, read by GFtoPK or DVI programs .IDX index file written by LaTeX, read by IdxTeX. See Indexers .LIS log file written by TeX or METAFONT .LTX written by text editors, read by LaTeX .MF written by text editors, read by METAFONT .PK font file written by GFtoPK or PXtoPK, read by DVI programs .PL property list file written by text editors, read by PLtoTF .PXL font file written by GFtoPXL, read by DVI programs .TEX written by text editors, read by TeX or LaTeX .TFM TeX font metric file written by METAFONT or PLtoTF, read by TeX .TOC table-of-contents file written by LaTeX, read by LaTeX .VF virtual font file written by VPtoVF, read by DVI programs .VPL virtual property list file written by text editors or VFtoVP, read by VPtoVF .END LITERAL .INDENT -1 1 FFE .INDENT 5 ??? unknown program that says "special font editor 1.31" when run. .INDENT -1 1 GFTODVI .INDENT 5 GFtoDVI converts GF files produced by METAFONT into DVI files for printing. Source code and documentation for GFtoDVI can be found in TEX_DISK:[TEX.MF]. Additional documentation for GFtoDVI can be found in Donald Knuth's "The TeXbook". .INDENT -1 1 GFTOPK .INDENT 5 GFtoPK converts GF files produced by METAFONT into PK files for use by DVI programs like DVIALW. Source code and documentation for GFTOPK can be found in TEX_DISK:[TEX.MF]. .INDENT -1 1 GFTOPXL .INDENT 5 GFtoPXL converts GF files produced by METAFONT into PXL files for use by DVI programs like DVIALW. Source code and documentation for GFTOPXL can be found in TEX_DISK:[TEX.MF]. .INDENT -1 1 GFTYPE .INDENT 5 GFtype reads GF files produced by METAFONT and produces a "dump" of the contents in human-readable form. Source code and documentation for GFtype can be found in TEX_DISK:[TEX.MF]. .INDENT -1 1 HELP .INDENT 5 The TEX help library documents the TeX typesetting system and its supporting programs. .INDENT -1 1 Indexers .INDENT 5 IDXTEX, TEXIDX, MAKEINDEX all do the same thing: make indexes using the .AUX files produced by LaTeX. See the help entries for the programs. .INDENT -1 1 INIMF .INDENT 5 INIMF is a special version of METAFONT used to create "base" files. Base files solve the problem of how to load METAFONT with lots of macros without scanning a large macro definition file each time METAFONT is started. When INIMF starts, it knows only METAFONT primitives. Macros can then be defined by reading a macro definition file. After macros have been defined, a "dump" command is used to write a base file. .SKIP The standard macro definition file is PLAIN.MF, documented in Donald Knuth's "The METAFONTbook". The standard base file is PLAIN.BAS. By modifying PLAIN.MF and running INIMF, you can produce your own base files to make customized versions of METAFONT. PLAIN.MF can be found in TEX_DISK:[TEX.MF]. PLAIN.BAS can be found in TEX_DISK:[TEX.FORMATS]. .SKIP When you run METAFONT, it welcomes you with a line that includes the version number of METAFONT and the name of the "pre-loaded" base file. Under VAX/VMS, the welcome line is misleading: it says "(INIMF)". Actually, VMS METAFONT does load PLAIN.BAS, as is correctly reported in the .LIS file. .INDENT -1 1 INITEX .INDENT 5 INITEX is a special version of TeX used to create "format" files. Format files solve the problem of how to load TeX with lots of macros without scanning a large macro definition file each time TeX is started. When INITEX starts, it knows only TeX primitives. Macros can then be defined by reading a macro definition file. After macros have been defined, a "\dump" command is used to write a format file. .SKIP The standard macro definition file is PLAIN.TEX, documented in Donald Knuth's "The TeXbook". The standard format file is PLAIN.FMT. By modifying PLAIN.TEX and running INITEX, you can produce your own format files to make customized versions of TeX. PLAIN TEX can be found in TEX_DISK:[TEX.INPUTS]. PLAIN.FMT can be found in TEX_DISK:[TEX.FORMATS]. .SKIP When you run TeX, it welcomes you with a line that includes the version number of TeX and the name of the "pre-loaded" format file. Under VAX/VMS, the welcome line is misleading: it says "no format pre-loaded". Actually, VMS TeX does load PLAIN.FMT, as is correctly reported in the .LIS file. .INDENT -1 1 KEYTST .INDENT 5 KEYTST is a program used to test DVI programs. Source code and documentation for KEYTST can be found in TEX_DISK:[TEX.DVI]. .! .! LaTeX has it's own (large) help file in TEX_DISK:[TEX.DOC.HELP] .INDENT -1 1 LN03DVI .INDENT 5 ??? .INDENT -1 1 LPTOPS .INDENT 5 LPtoPS converts normal text files into PostScript for printing on the Apple LaserWriter, or any other PostScript-compatible printing device. It supports selection of a variety of fonts at arbitrary point sizes, margin specification, portrait and landscape page orientation, automatic page numbering, page outlining, and multi-column printing. It can also handle overstruck text used by many document formatters for underlining. .SKIP Format: .SKIP .INDENT +3 LPTOPS [switches] outfile .INDENT +3 LPTOPS [switches] filelist >outfile .SKIP Defaults are: .SKIP .INDENT +3 -B1.0in -C1 -FCourier -L1.0in -M1 -P10bp -R1.0in -S0 -T1.0in .SKIP Source code for LPtoPS can be found in TEX_DISK:[TEX.DVI]. .INDENT -1 2 Dimensions .INDENT 5 In the switch descriptions, physical dimensions described as # may be specified as a single number with an optional fractional part, and a required two-letter unit designator. Letter case is ignored. Possible forms are: .SKIP .LITERAL #.##bp big point (1in = 72bp) [Courier: 120.000/Pbp cpi] #.##cc cicero (1cc = 12dd) [Courier: 9.381/Pcc cpi] #.##cm centimeter [Courier: 4.233/Pcm cpi] #.##dd didot point (1157dd = 1238pt) [Courier: 112.569/Pdd cpi] #.##in inch [Courier: 1.667/Pin cpi] #.##mm millimeter (10mm = 1cm) [Courier: 42.333/Pmm cpi] #.##pc pica (1pc = 12pt) [Courier: 10.038/Ppc cpi] #.##pt point (72.27pt = 1in) [Courier: 120.450/Ppt cpi] #.##sp scaled point (65536sp = 1pt) [Courier: 7.893/(Psp/1000000) cpi] .END LITERAL .INDENT 5 The bracketed values give the number of characters per inch (cpi) for a point size of P units with the fixed-width Courier font. For example, with point size 8bp, there are 120/8 = 15 characters per inch. With point size 1000000sp, there are 7.893 characters/inch. .INDENT -1 2 Switches .INDENT 5 Unix-style switches can be supplied. Upper and lower case are treated the same .INDENT -1 3 -A .INDENT 5 Turn Scribe-like bold and italic requests (@b[...] and @i[...]) into bold or italic text. .INDENT -1 3 -B# .INDENT 5 Bottom margin of #. .INDENT -1 3 -Cn .INDENT 5 Print n copies of each page. .INDENT -1 3 -Ffontname .INDENT 5 PostScript fontname. Possible values with acceptable short abbreviations (formed from the upper-case letters in the font names) are as follows. The first 13 are available on all PostScript printers; the remainder are available only on enhanced printers, such as the Apple LaserWriter Plus. .SKIP .LITERAL ==================== ===== ====== ========== full name short ditroff TranScript ==================== ===== ====== ========== Courier C C C Courier-Bold CB CB CB Courier-BoldOblique CBO CD CD Courier-Oblique CO CO CO Helvetica H he he Helvetica-Bold HB He He Helvetica-BoldOblique HBO HE HE Helvetica-Oblique HO hE hE Symbol S S S Times-Bold TB R ti Times-BoldItalic TBI BI TI Times-Italic TI I tI Times-Roman T R ti AvantGarde-Book AGB ag ag AvantGarde-BookOblique AGBO aG aG AvantGarde-Demi AGD Ag Ag AvantGarde-DemiOblique AGDO AG AG Bookman-Demi BD Bo Bo Bookman-DemiItalic BDI BO BO Bookman-Light BL bo bo Bookman-LightItalic BLI bO bO Helvetica-Narrow HN hn hn Helvetica-Narrow-Bold HNB Hn Hn Helvetica-Narrow-BoldOblique HNBO HN HN Helvetica-Narrow-Oblique HNO hN hN NewCenturySchlbk-Bold NCSB Nc Nc NewCenturySchlbk-BoldItalic NCSBI NC NC NewCenturySchlbk-Italic NCSI nC nC NewCenturySchlbk-Roman NCSR nc nc Palatino-Bold PB Pa Pa Palatino-BoldItalic PBI PA PA Palatino-Italic PI pA pA Palatino-Roman PR pa pa ZapfChancery-MediumItalic ZCMI ZC ZC ZapfDingbats ZD ZD ZD ==================== ===== ====== ========== .END LITERAL .SKIP The ditroff and TranScript abbreviations are the same, except for the Courier and Times fonts. They are based on two-letter mnemonics, where upper-case in the first letter means bold, and upper-case in the second letter means italic. .SKIP Only the Courier fonts are fixed-width like typewriter and line printer fonts are. The others are proportional spaced for improved readability, and consequently, tabular material will not line up properly with them. The Courier fonts have a width equal to 0.6 of their point size, so to fill a line W inches wide with up to N characters, one must have point size <= (W/(0.6 * N * 72)) = (W*120)/N pt. Equivalently, with a point size P pt, the output spacing is 120/P char/inch. .INDENT -1 3 -H .INDENT 5 Horizontal page orientation (landscape mode) instead of vertical page (portrait mode). .INDENT -1 3 -I# .INDENT 5 Top margin of # for initial page (for letterheads); if not specified, it will default to the value given for the top margin by default or by the -T# command. .INDENT -1 3 -L# .INDENT 5 Left margin of #. .INDENT -1 3 -Mn .INDENT 5 Multiple column output (n columns). In multiple column mode, formfeeds cause column breaks instead of page breaks. .INDENT -1 3 -N[tb][lcr]n .INDENT 5 Number output pages. The number is placed by default in the center of the top margin, but the margin can be selected explicitly by t (top) or b (bottom), and the position of the page number can be further specified by l (left), c (center), or r (right). If n is given, start numbering with that value, and otherwise with 1. If an initial top margin value is given with the -I# option, numbering will be omitted on the first page if it is at the top. Pages are unnumbered if this option is not specified. .INDENT -1 3 -O[#] .INDENT 5 Outline pages (and columns) with a # units wide. A narrow line of -1.4pt width is assumed if # is omitted; this particular width is what TeX uses in typesetting. .INDENT -1 3 -P# .INDENT 5 Font point size (default 10bp). The baseline skip (spacing between successive character baselines) is conventionally chosen to be 6/5 of this value, so that with 10bp type, we have 12bp between lines, or 6 lines/inch, the same as standard printer output. .INDENT -1 3 -R# .INDENT 5 Right margin of #. .INDENT -1 3 -S[n] .INDENT 5 special handling (i.e. manual paper feed) for the first n pages of the output. If N multiple copies are in effect, then N*n sheets must be fed manually. If n is omitted, then all pages are to be fed manually. For example, -S1 is convenient to get the first page of a letter on letterhead paper fed manually, with remaining pages from the paper cassette. .INDENT 01 3 -T# .INDENT 5 Top margin of #. .INDENT -1 3 -U .INDENT 5 Output pages in unsorted (first to last) order instead of in sorted (page reversed) order; some PostScript printers have page handlers that stack the paper in this order. The default is sorted because this is appropriate for the most common PostScript printer, the Apple LaserWriter. .INDENT -1 1 MACJET .INDENT 5 MACJET prints a MacPaint raster image (576 dots wide by 720 dots high) on the Hewlett-Packard Laser Jet printer. .SKIP Format: .SKIP .INDENT +3 MACJET macpaintfile laserjetfile .SKIP Both files contain 8-bit bytes. .SKIP Source code for MACJET can be found in TEX_DISK:[TEX.DVI]. .INDENT -1 1 MACPRX .INDENT 5 MACPRX prints a MacPaint raster image (576 dots wide by 720 dots high) on a Printronix dot matrix printer. .SKIP Format: .SKIP .INDENT +3 MACPRX macpaintfile printronixfile .SKIP The MacPaint file has 8-bit bytes, and the Printronix file has 7-bit bytes. .SKIP Source code for MACPRX can be found in TEX_DISK:[TEX.DVI]. .INDENT -1 1 MAKE .INDENT 5 MAKE is a public-domain version of the UNIX "make" program. It is included in the TeX distribution because it is needed to build the DVI programs. .SKIP Source code and documentation for MAKE can be found in TEX_DISK:[TEX.MAKE]. .INDENT -1 1 MAKEINDEX .INDENT 5 MAKEINDEX is a general purpose index processor. It takes one or more raw index files (normally generated by a for- matter), sorts the entries, and produces the actual index file. It is not dependent on any particular format of raw index file, although the .idx file generated by is default. Up to three levels (0, 1, and 2) of subitem nesting within the same entry is supported. The input format may be rede- fined in a style file so that raw index or glossary output from other formatters may be processed. The style file also defines the style of output index file. Unless specified otherwise, the file name base of the first input file (idx0) is used to determine other related input/output files. For each input file name specified, the name itself is first used. If not found and the name has no extension part, it is concatenated with the .idx extension. If this again fails, the program aborts. .SKIP Source code and documentation for MAKEINDEX can be found in TEX_DISK:[TEX.MAKEINDEX...]. .INDENT -1 1 MF .INDENT 5 MF invokes METAFONT. METAFONT is described in Donald Knuth's "The METAFONTbook". Source code and documentation for MF can be found in TEX_DISK:[TEX.MF]. .INDENT -1 1 NEWFFC .INDENT 5 ??? NEWFFC is some kind of font file converter program. .INDENT -1 1 PLTOTF .INDENT 5 The PLtoTF utility program converts property-list (.PL) files into equivalent TeX font metric (.TFM) files. It also makes a thorough check of the given .PL file, so that the .TFM file should be acceptable to TeX. .SKIP Source code and documentation for PLtoTF can be found in TEX_DISK:[TEX.SOURCES]. .INDENT -1 1 POOLTYPE .INDENT 5 The POOLtype utility program converts string pool files output by TANGLE into a slightly more symbolic format that may be useful when TANGLEd programs are being debugged. .SKIP It's a pretty trivial routine, but people may want to try transporting this program before they get up enough courage to tackle TeX itself. The first 128 strings are treated as TeX treats them, using routines copied from TeX82. .SKIP Source code and documentation for POOLtype can be found in TEX_DISK:[TEX.SOURCES]. .INDENT -1 1 PXTOPK .INDENT 5 The standard format for the distribution of font raster information for TeX has been PXL files. These files are loosely packed, based on a 32-bit word, and use no forms of compression. TeX requires dozens of fonts in many different sizes, with typical installations having hundreds of pixel files using many megabytes of disk storage. Distribution of the unwieldy pixel files is also a difficult problem for microcomputer systems, on which TeX is only just becoming available. Many boxes of diskettes would be required just to store a basic set of fonts in three sizes for a three-hundred dot per inch device. A better format is called for. .SKIP This program compresses a pixel file into a packed, or .PK, file. This new format is primarily intended for distribution. Drivers can be adapted to read these files, and since pixel files can be converted back and forth with this program and its companion PKTOPX, no information will be lost by leaving the files in one format or another. .SKIP Source code and documentation for PXtoPK can be found in TEX_DISK:[TEX.MF]. .INDENT -1 1 TANGLE .INDENT 5 TANGLE is part of Donald Knuth's WEB system for literate programming. TANGLE converts a .WEB file into the corresponding .PAS file so it can be compiled. .SKIP A description of the WEB system can be found in TEX_DISK:[TEX.DOC.TEX]WEB.TEX and TEX_DISK:[TEX.DOC.TEX]WEBMAN.TEX. Source code for TANGLE can be found in TEX_DISK:[TEX.SOURCES]. .INDENT -1 1 TEXIDX .INDENT 5 TeXIDX is a program for converting the index file output of TeX and LaTeX to a form suitable for later input and generation of an index, with entries sorted by primary text entries, and within these, sorted by secondary text entries, and with duplicate page numbers eliminated. Elision of page ranges is not yet supported. .SKIP IDXTEX and MAKEINDEX are other index formatters similar to TEXIDX. .SKIP Source code for TEXIDX can be found in TEX_DISK:[TEX.DVI]. A description of TEXIDX can be found in TEX_DISK:[TEX.DVI]TEXIDX.HLP. .INDENT -1 2 Long_description .INDENT 5 .LITERAL TeXIDX - TeX/LaTeX Index Filter [07-Jan-88] TeXIDX (TeXINDEX on Unix systems) is a filter for converting the index file output of TeX and LaTeX to a form suitable for later input and generation of an index, with entries sorted by primary text entries, and within these, sorted by secondary text entries, and with duplicate page numbers eliminated. Elision of page ranges is not yet supported. TeXIDX expects one or more files of index entries output by TeX or LaTeX in the forms \entry{sort key}{page number}{primary entry} \entry{sort key}{page number}{primary entry}{secondary entry} Several examples are given below. TeXIDX is run by @TeXIDX file1 file2 ... filen and produces output files with the same name, but the letter `s' appended. Thus `foo.idx' is transformed to `foo.idxs'. The output of TeXIDX will contain lines like: \initial {c} % before the first topic whose % initial is c \entry {topic}{pagelist} % for a topic that is used % without subtopics \primary {topic} % for the beginning of a topic % that is used with subtopics \secondary {subtopic}{pagelist} % for each subtopic. All sorting is by the sort key field ONLY, with letter case IGNORED. This means that if two primary/secondary fields have the same leading text, a sort key must be given which includes both the primary and secondary fields to preserve the correct order, and this key must be distinguishable from another which just happens to have a primary string equal to the concatenated primary and secondary strings of the first. For example, \entry{text editing}{18}{text editing} \entry{text}{20}{text} \entry{textediting}{32}{text}{editing} \entry{textbuffering}{57}{text}{buffering} will produce correct index entries text, 20 buffering, 57 editing, 32 text editing, 37 whereas simple juxtaposition of the primary and secondary fields in the sort keys \entry{text editing}{18}{text editing} \entry{text}{20}{text} \entry{text editing}{32}{text}{editing} \entry{text buffering}{57}{text}{buffering} will produce INCORRECT ordering: text, 20 buffering, 57 text editing, 18 editing, 32 Any ASCII character which collates below space (dec. 32) will do as a separator between the primary and secondary fields in the sort key, but the only one that TeX will accept as input without modification of character \catcode's is (dec. 9). Therefore, make sure that characters are not used in the primary or secondary text values themselves. In order for TeXIDX to be used, you must first provide TeX/LaTeX with definitions of macros that create the output index file; neither the TeX manmac macros (p. 423ff of the TeXbook) or the LaTeX \index{} macros (p. 78, p. 189 of the LaTeX User's Guide and Reference Manual) are suitable. Once TeXIDX has been run, you must have definitions of \initial, \entry, \primary, and \secondary so that the index file can be processed. Since these definitions only have to be done once, they have been put in a LaTeX style file which can be automatically included in the documentstyle option list: \documentstyle[gnuindex]{...} This will cause the file texinputs:gnuindex.sty to be read by LaTeX at startup. This file defines \initial, \entry, \primary, and \secondary, so that LaTeX can format your index, and provides you with two macros to use to generate index entries. \INDEX{sortkey}{primary} \SUBINDEX{sortkey}{primary}{secondary} For \SUBINDEX{}, the {secondary} field is automatically appended to the sort key, but separated from it by an ASCII character; in most cases, this makes it possible to use the just primary field as the sort key too, as long as the primary and secondary fields do not have special characters, font changes, or TeX control sequences embedded in them. To save some typing, and reduce the chances of error, you will probably want to produce your own macros which reference these. Here are two useful ones: \newcommand{\X}[1]{{#1}\INDEX{#1}{#1}} \newcommand{\XX}[2]{{#1}\SUBINDEX{#1}{#1}{#2}} You can then type \X{gnats and gnus} to get the phrase `gnats and gnus' into the document text, as well as into the index both as a sort key, and as a primary field. Typing This chapter will discuss the cooking of \XX{gnats and gnus}{cooking directions} ... will put the same phrase `gnats and gnus' into the document text, but the index will get the sort key `gnats and gnuscooking directions', a primary field `gnats and gnus', and a secondary field `cooking directions'. You would use \XX{} instead of \X{} when you wanted to make the index entry more precise, but only have the primary string in the running text. For those occasions when you need special fonts, or TeX control sequences, in your index, you can still use \INDEX{} and \SUBINDEX{} directly: \INDEX{LaTeX's gnus}{\string\LaTeX{}'s gnus} \INDEX{gnats}{\string\sc GNATS} Note the use of `\string' in front of each control sequence--it prevents the expansion of the following control sequence. That way, your index file will contain the words `\LaTeX' and `\sc', instead of the messy expansions of these. In summary, then, here is what your `foo.ltx' file might look like: \documentstyle[gnuindex]{...} \makeindex \begin{document} ... \begin{theindex} \input{foo.idxs} % Change this to whatever your file is called \end{theindex} \end{document} To process it, you need to run LaTeX twice and TeXIDX once: @LaTeX foo.ltx @TeXIDX foo.idx @LaTeX foo.ltx TeXIDX was written by Richard Stallman as part of the GNU Project at the Free Software Foundation in Cambridge, MA, and is in the public domain (though subject to a liberal copyright contained in the source file). It uses no proprietary software and should be implementable with most C compilers on micros, minis, and mainframes. In particular, all sorting is done with its own code, rather than relying on system or library sorting routines. The sorting is done in-core when possible, and otherwise, automatically spills to scratch files which are individually sorted, then merged. Nelson H.F. Beebe Center for Scientific Computing South Physics Building University of Utah Salt Lake City, UT 84112 Tel: (801) 581-5254 Net mail: BEEBE@SCIENCE.UTAH.EDU {preferred} BEEBE@CS.UTAH.EDU BEEBE@CTRSCI.UTAH.EDU BEEBEN@RUAC.UTAH.EDU .END LITERAL .INDENT -1 1 TEXSIS .INDENT 5 TeXsis is a TeX macro package which is designed primarily for typesetting physics papers and preprints, conference proceedings, and related documents. It has been developed from the TechRpt format described by W. Groppe and from TeXsis 1.01, the TeX thesis format by E. Myers. The general scope of TeXsis is similar to the SLAC format PHYZZX, but it offers some significant advantages, especially a more powerful and flexible way of referring to references, equations, and other numbered objects. It is functionally a superset of Plain TeX, so that everything described in the TeXbook will work in TeXsis, although a few of the Plain TeX macros have actually been modified. .SKIP Documentation for TeXsis can be found in TEX_DISK:[TEX.DOC.TEXSIS]. .INDENT -1 1 TFTOPL .INDENT 5 The TFtoPL utility program converts TeX font metric (.TFM) files into equivalent property-list (.PL'') files. It also makes a thorough check of the given .TFM file, using essentially the same algorithm as TeX. Thus if TeX complains that a .TFM file is bad, this program will pinpoint the source or sources of badness. A .PL file output by this program can be edited with a normal text editor, and the result can be converted back to .TFM format using the companion program PLTOTF. .SKIP Source code and documentation for PLtoTF can be found in TEX_DISK:[TEX.SOURCES]. .INDENT -1 1 TGRIND .INDENT 5 TGRIND is a program used with LaTeX to typeset source code. Documentation can be found in TEX_DISK:[TEX.TGRIND]. .! TEX_DISK:[TEX.TGRIND] doesn't contain the current sources for TGRIND, .! but there's an email address to get it via anonymous FTP. .INDENT -1 1 TOPP .INDENT 5 ??? .INDENT -1 1 TOSPRX .INDENT 5 Toshiba P1351 to Printronix 300/600 plot file translator .SKIP Source code for PLtoTF can be found in TEX_DISK:[TEX.DVI]. .INDENT -1 1 TR2TEX .INDENT 5 Tr2tex converts a document typeset in troff to a LaTeX format. It is intended to do the first pass of the conversion. The user should then finish up the rest of the conversion and customize the converted manuscript to his/her liking. It can also serve as a tutor for those who want to convert from troff to LaTeX. .SKIP Format: .SKIP .INDENT +3 TR2TEX [-m] [-o file] filename Source code and documentation for TR2TEX can be found in TEX_DISK:[TEX.TR2TEX]. .INDENT -1 1 WEAVE .INDENT 5 WEAVE is part of Donald Knuth's WEB system for literate programming. WEAVE converts a .WEB file into the corresponding .TEX file so it can be processed by TeX and then printed. .SKIP A description of the WEB system can be found in TEX_DISK:[TEX.DOC.TEX]WEB.TEX and TEX_DISK:[TEX.DOC.TEX]WEBMAN.TEX. Source code for WEAVE can be found in TEX_DISK:[TEX.SOURCES]. .INDENT -1 1 Web .INDENT 5 WEB is Donald Knuth's system for literate programming. TANGLE and WEAVE are parts of the WEB system. The initial WEB system supported the PASCAL programming language. .SKIP Variations on WEB include CWEB, FWEB and SPIDERWEB. CWEB and SPIDERWEB support languages other than PASCAL and are available via anonymous FTP from princeton.edu. FWEB is for FORTRAN/Ratfor/C on VAX/VMS and SunOS, and is available from ccc.nmfecc.gov in subdirectory tex$root:[distr.fweb]. .SKIP A description of the WEB system can be found in TEX_DISK:[TEX.DOC.TEX]WEB.TEX and TEX_DISK:[TEX.DOC.TEX]WEBMAN.TEX. .INDENT -1 1 WSLTEX .INDENT 5 WSLTEX copies an 8-bit file to a 7-bit file, turning characters with bit 8 set into 4-character octal escape sequences \nnn. This is useful in analyzing WordStar microcomputer word processor files. Many sequences which can be recognized as doing something useful are turned into LaTeX command sequences. Comments below describe the sequences which are recognized and translated. .SKIP Format: .SKIP .INDENT +3 WSLTEX WordStar_inputfile >LaTeX_outputfile .SKIP Source code for WSLTEX can be found in TEX_DISK:[TEX.DVI]. .INDENT -1 1 XDVI .INDENT 5 XDVI is a DECwindows previewer of DVI files. .SKIP Format: .SKIP XDVI dvifile .SKIP Do not give file specifications with colons in them. XDVI interprets arguments with a colon to be a display specification. .SKIP To get you started, a few commands from the previewer window are listed below: .SKIP .LITERAL 0s : Magnify. 4s : Normal size. 8s : reduce. 219s : Really reduce. l : left (Only if magnified) r : right (Only if magnified) u : up (Only if magnified) d : down (Only if magnified) q : quit b : back one page n : next page 1 and : Go two pages forward -2 and : Go two pages backward space : forward one page ^L : redraw. .END LITERAL