diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /biblio/tib/tibdoc.tex |
Initial commit
Diffstat (limited to 'biblio/tib/tibdoc.tex')
-rw-r--r-- | biblio/tib/tibdoc.tex | 1670 |
1 files changed, 1670 insertions, 0 deletions
diff --git a/biblio/tib/tibdoc.tex b/biblio/tib/tibdoc.tex new file mode 100644 index 0000000000..ad3d659e17 --- /dev/null +++ b/biblio/tib/tibdoc.tex @@ -0,0 +1,1670 @@ +% Documentation for Tib reference formatting programs --- version 2.2 +% Plain TeX file August, 1986 +% Last revision November, 1989 +% Copyright (C) 1986, 1989 James C. Alexander +% +\def\TDOCDIR{AAAAA}%directory for Tib documentation +\def\TMACDIR{BBBBB}%directory for Tib macros +\def\TCOMMON{CCCCC}%name of Tib file of common words +\def\DIRSEP{/}%directory separator in path names +\def\OPTCH{-}%option character on program call + +\def\leftheadline{\rightheadline}% one-sided printing +%\def\leftheadline{\bf folio\ \ --- \it\firstmark\hss\bfTib}%two-sided printing + +\baselineskip 1.2\normalbaselineskip +\nopagenumbers\voffset=2\baselineskip +\headline{\ifnum\pageno=1\hfill + \else{\ifodd\pageno\rightheadline\else\leftheadline\fi}\fi} +\def\rightheadline{\bfTib\hss\it\firstmark\ ---\ \ \bf\folio} +\outer\def\beginsection#1#2\par{\vskip0pt plus#1\vsize\penalty-250 + \vskip0pt plus-#1\vsize\bigskip\vskip\parskip\message{#2} + \leftline{\kern-4pt\llap{$\bullet$\ }\bf#2\hfill}\mark{#2} + \nobreak\smallskip\noindent} +\outer\def\beginsubsection#1#2\par{\vskip0pt plus#1\vsize\penalty-250 + \vskip0pt plus-#1\vsize\medskip\vskip\parskip + \leftline{\bf\ \ #2}\nobreak\smallskip\noindent} +\def\Tib{{\rm T\kern-.1667em\sevenrm I\rm b}} +\def\bfTib{{\bf T\kern-.2em\sevenbf I\bf b}} +\def\itTib{{\it T\kern-.2em\seveni I\it b}} +\def\LaTeX{{\rm L\kern-.36em\raise.3ex\hbox{\sevenrm A}\kern-.15em + T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}} +\def\itLaTeX{{\it L\kern-.3em\raise.3ex\hbox{\seveni A}\kern-.15em + T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}} +\def\AmSTeX{$\cal A\kern-.1667em\lower.5ex\hbox{$\cal M$}\kern-.125em + S$-\TeX} +\def\\{\begingroup\catcode`\\=12\tt\char"5C\endgroup} +\def\{{\begingroup\catcode`\{=12\tt\char"7B\endgroup} +\def\}{\begingroup\catcode`\}=12\tt\char"7D\endgroup} +\def\<#1>{\leavevmode\hbox{$\langle${\it#1\/}$\rangle$}} +\def\[#1]{\leavevmode\hbox{\tt[#1]}} +\def\({\/\rm(}\def\){\/\rm)} +\newdimen\tableindent\newdimen\leftbox +\def\tableset{\tableindent=\leftbox\advance\tableindent by 20pt + \leftskip\tableindent\rightskip10pt\parindent=0pt} +\def\tableentry#1{% + \setbox0\hbox{{\tt\tablemark#1}\hss}\wd0=\leftbox + \item{\box0}} +\def\listitem{\tt\obeylines\obeyspaces\parindent20pt} + +\immediate\write16{ **** Documentation for Tib ****} +\indent\par +\vglue-.5in +\centerline{\bfTib\footnote{$^*$}{Version 2.2. \copyright 1986, 1989 +James C. Alexander. \Tib{} may be distributed whole, but not sold.}} +\bigskip +\centerline{A \TeX{} bibliographic preprocessor} +\bigskip +{\baselineskip10pt +\centerline{J. C. Alexander ({\tt jca@lakisis.umd.edu})} +\smallskip +\centerline{Department of Mathematics} +\centerline{University of Maryland} +\centerline{College Park, MD 20742}} + +\bigskip\hfill\hbox{\vbox{\baselineskip10pt +\hbox{\it Small have continual plodders ever won,} +\hbox{\it Save base authority from others{\rm'} books.} +\smallskip +\hbox{\ \ W. Shakespeare, \it Love{\rm'}s Labour{\rm'}s Lost}}} + +\beginsection{.3} 0. General + +\Tib{} is a package of four programs for making citations and reference +lists in \TeX{} documents. The main program, \Tib, operates on a \TeX{} +file with incomplete or keyed citations, looks up the reference in a +database, makes the complete citation and on command, makes a list of +the references. The citations in the source document +are enclosed in (non-\TeX) escape characters +which \Tib{} recognizes. The output of \Tib{} is another \TeX{} file with +complete citations and reference list formatted with a number of \TeX{} control +sequences and with definitions for these control sequences, ready +to be processed by plain \TeX, \LaTeX, or another \TeX. With appropriate +options in \Tib{} and definitions of the control sequences, set by +flags in the call to \Tib{} or as environment variables, +the citations and references can be formatted in any +of a large variety of styles, and in particular, in the styles of various +journals. It is intended that \Tib{} be easy to use as is and yet also allow +custom citation and reference formats to be created and implemented +without undue effort. + +\Tib is a preprocessor in the style of {\it refer\/}, a similar +preprocessor for the {\it nroff{\rm/}troff\/} textsetters. Indeed +\Tib{} originally was to be a minor modification of the {\it +nroff{\rm/}troff\/} preprocessor {\it bib\/} written by T. A. Budd +(which was inspired by {\it refer\/}), but with \TeX{} output; however +it has grown and changed considerably. The philosophy, though, is that +of {\it refer\/} and {\it bib\/} (especially of {\it bib\/} in regard +to modularity of the formatting files), and some of the code and +subroutines from {\it bib\/} remain. The source code of \Tib{} is in +the language C. + +The sections of this document are: +\medskip +\halign{\indent\indent\hfil#&\quad{\it#}\hfill\cr +1.&Demonstration\cr +2.&Program calls\cr +3.&Available styles\cr +4.&The input document\cr +5.&Styles and files\cr +6.&The reference file\cr +7.&{\tt\\input} files\cr +8.&Error and warning messages\cr +&Disclaimer\cr +A1.&Appendix: the example document\cr +A2.&Appendix: local changes\/ {\rm(if any)}\cr +} +\medskip\noindent +Section~1 is for first-time users. Indeed, probably the best course is +to use the demonstration files as models and use the remainder of this +documentation as reference when needed. + +The escape characters of \Tib{} do not interfere with \TeX{} processing. +If \TeX{} is applied to the original pre-\Tib{} document, the escape +characters and incomplete citations will appear as written. +Thus it is suggested that a \TeX{} document be debugged before applying +\Tib. When the \TeX{} bugs are eliminated, \Tib{} can be used +for the final one or two runs. + +\beginsection{.3} 1. Demonstration + +{\leftskip3pc\parindent0pt\it +\item{\rm1.} Copy the file\/ {\rm\TDOCDIR\DIRSEP test.tex} +{\rm(}see appendix\/{\rm)} into a directory. +This is a sample\/ \TeX{} document ready for \itTib. + +\item{\rm2.} Copy the file\/ {\rm\TDOCDIR\DIRSEP test.ref} into the same +directory. This is a sample bibliographic database. + +\item{\rm3.} Apply the program \itTib dex to\/ {\rm test.ref\/} +\smallskip\par\hskip40pt{\tt tibdex test} \hskip1em (the {\tt .ref} is appended +automatically)\smallskip +\par This creates an inverted index\/ {\rm INDEX\/} in the directory. + +\item{\rm4.} Apply \itTib{} to\/ {\rm test.tex\/}. +\smallskip\par\hskip40pt{\tt tib test.tex} +\par or +\par\hskip40pt{\tt tib test}\smallskip +\par {\rm(}the extension\/ {\rm .tex\/} need not be part of the call\/{\rm)}. +The output is the file\/ {\rm test-t.tex}, which is ready for\/ \TeX. + +\item{\rm4.L.} For \itLaTeX, follow the instructions in\/ {\rm test.tex\/} before +performing step 4. + +\item{\rm5.} Process\/ {\rm test-t.tex\/} with \TeX{} or \itLaTeX{} as usual. +\bigskip}\noindent +This call sets default options. A large variety of formatting options +is available. Some of them are: other fonts (old English, boldface ...), +alphabetizing and other sorts of sorts, replacing successive +listings of identical +author(s) by underlines, other citation styles (3 letter codes from authors' +names, authors' names and date, superscripts), reversing and/or abbreviating +authors' names, caps-small caps for names, hyphenating strings of references +in citations, footnotes instead of endnotes, other listing formats. Any +combination of these (and others) can be packaged in a format file and called +with the \OPTCH s~\<style> option. For demonstrations of some of these, +repeat steps 4-5 with the following calls on {\it test.tex} (see also +section~3): +\smallskip{\tt +\par\indent\indent tib \OPTCH s demo1 test +\par\indent\indent tib \OPTCH s demo2 test {\rm(for plain \TeX)} +\par\indent\indent tib \OPTCH s demo2l test {\rm(for \LaTeX)} +\par\indent\indent tib \OPTCH s demo3 test {\rm(for plain \TeX)} +\par\indent\indent tib \OPTCH s demo3l test {\rm(for \LaTeX)} +\par\indent\indent tib \OPTCH s demo4 test +\par\indent\indent tib \OPTCH s demo5 test +\par\indent\indent tib \OPTCH s demo6p test {\rm(for plain \TeX)} +\par\indent\indent tib \OPTCH s demo6l test {\rm(for \LaTeX)}}. +\smallskip + +\noindent The last two call for footnotes; note the instructions in +{\it test.tex}. Note that occasionally, reformatting or additional editing is +called for. \Tib{} is not meant to cover {\it all\/} formatting possibilities. + +\beginsection{.1} 2. Program calls + +There are four programs in the \Tib{} package: +\medskip\halign{\indent\indent#\hfil&\qquad{\it#}\hfil\cr +\Tib&bibliographic preprocessor for \TeX{} documents,\cr +\Tib dex&makes inverted index from database\/{\rm(}s\/{\rm)},\cr +\Tib list&lists all members of the database\/{\rm(}s\/{\rm)},\cr +\Tib look&interactively locates listings in the database\/{\rm(}s\/{\rm)}.\cr} +\medskip +We consider the specifications for each. In the calls below angle brackets +(\<name>) enclose names to be supplied by the user. Square +brackets (\[\OPTCH {\it flag}]) enclose optional items. The brackets +are not part of the call. The space indicated between a flag and a +\<name> can be omitted. The flags need not be used in the order indicated +below; files are processed in the order they appear, left to right. +Note there is a distinction between {\it index\/} +files and {\it reference\/} files. The latter is the database created by +the user; the former is created by \Tib dex. + +\centerline{\vrule height0pt depth.5pt width8pc} +\par\vskip0pt plus.3\vsize\penalty-250\vskip0pt plus-.3\vsize +{\noindent\raggedright\tt +\leftline{tib \[\OPTCH d \<directory>] \[\OPTCH i \<include file>] + [\OPTCH j] \[\OPTCH n \<initial flag>] + \[\OPTCH p \<private index file\/{\rm(}s\/{\rm)}>]} + \rightline{\[\OPTCH s \<style file>] + \[\OPTCH x] \[\OPTCH z] \[\OPTCH $|$] \[\<input + file\/{\rm(}s\/{\rm)}>]}} +\smallskip +\noindent\Tib{} is a program to construct a bibliography for a \TeX{} file +and to include calls to macros files so that \TeX{} formats the citations +and bibliography in any of a number of styles. +The {\it input file} is a \TeX{} file augmented with incomplete or keyed +citations surrounded by \Tib{} escape characters, as described in section~4. +Multiple input files are separated by spaces on the call and amalgamated +into one output file. If \<input file> is omitted, one prompt is given. +If the input file is named {\it file\/} or {\it file.tex}, +the output file is named {\it file-t.tex}, unless the input file is +{\it stdin}, in which case the output file is {\it stdout}. +The following are the options: +\par{\leftbox5pc\def\tablemark{\OPTCH }\tableset + +\tableentry{d \<directory>}Private directory of \Tib{} files. Obviates +\OPTCH i~option. See Table~6. + +\tableentry{i \<file>}Include file of macros and \Tib{} commands. +See sections 3 and~5. +This option is used if there are private macro/command file(s). + +\tableentry{j}Process {\tt\\input} files. + +\tableentry{n \<initial flag>}Number (nonnegative) used as initial +numerical citation flag (default 1). Ignored for nonnumerical flags. + +\tableentry{p \<files>}Private index files, separated by commas. +The default is the file {\it INDEX\/} in the working directory. + +\tableentry{s \<file>}Style file, which contains formatting instructions and +also may call other files. Style files are described in detail in section~6. +The available style files are described in section~3. + +\tableentry{x}Output to {\it stdout}. + +\tableentry{z}Silent run. Informational (but not warning or error) +messages are suppressed. + +\tableentry{$|$}Pipe. Input is {\it stdin\/}; output is {\it stdout}. Silent. +\par}\centerline{\vrule height0pt depth.5pt width8pc} + +\par%\vskip0pt plus.3\vsize\penalty-250\vskip0pt plus-.3\vsize +{\noindent\tt +\leftline{tibdex \[\OPTCH c \<common-word files>] \[\OPTCH k \<key number>] + \[\OPTCH l \<length of keys>] \[\OPTCH n \<initial flag>]} + \rightline{\[\OPTCH p \<private output file>] \[\OPTCH z] + \[\OPTCH \%\<string>] \<reference file\/{\rm(}s\/{\rm)}>}} +\smallskip +\noindent\Tib dex makes an inverted index from reference file(s). The +reference files are described in section~6. Names of multiple reference files +are separated by spaces. The output is an inverted index for use by +\Tib{} and \Tib look. The output index must not be moved or +the links to the reference files will be broken. +The following are the options: +\par{\leftbox5pc\def\tablemark{\OPTCH }\tableset + +\tableentry{c \<file>}Common-word list, one word per line. Common words +are not used as keys (default \TCOMMON). + +\tableentry{k \<number>}Maximum number of keys kept per record (default 100). + +\tableentry{l \<number>}Maximum length of keys (default 6). + +\tableentry{n \<initial flag>}Number (nonnegative) used as initial +numerical citation flag (default 1). Ignored for nonnumerical flags. + +\tableentry{p \<file>}Private output file (default {\it INDEX\/} in the +current directory). + +\tableentry{z}Silent run. Informational (but not warning and error) +messages are suppressed. + +\tableentry{\%\<string>}Ignore lines in the reference file that begin +with \%x where x is in {\it string\/} (see Table~10) (default CNOPVcnopv\\\%). +\par}\centerline{\vrule height0pt depth.5pt width8pc} + +\par\vskip0pt plus.3\vsize\penalty-250\vskip0pt plus-.3\vsize +{\noindent\raggedright\tt + tiblist \[\OPTCH d \<directory>] \[\OPTCH i \<include file>] + \[\OPTCH s \<style file>] \[\OPTCH x] \[\OPTCH z] \[\OPTCH $|$] + \[\<reference file\/{\rm(}s\/{\rm)}>]} +\smallskip +\noindent\Tib list makes a formatted plain \TeX{} file of all entries in the +input reference file(s). Names of multiple files are separated by spaces. +If \<input file> is omitted, one prompt is given. Unlike \Tib, \Tib list +does not use inverted indices, but directly processes the reference files. +The following are the options: +\par{\leftbox5pc\def\tablemark{\OPTCH }\tableset + +\tableentry{d \<directory>}Private directory of \Tib{} files. Obviates +\OPTCH i~option. See Table~6. + +\tableentry{i \<file>}Include file of macros and \Tib{} commands. +See sections 3 and~5. +This option is used if there are private macro/command file(s). + +\tableentry{s \<file>}Style file, which contains formatting instructions and +also may call other files. Style files are described in detail in section~5. +The available style files are described in section~3. + +\tableentry{x}Output to {\it stdout}. + +\tableentry{z}Silent run. Informational (but not warning and error) +messages are suppressed. + +\tableentry{$|$}Pipe. Input is {\it stdin\/}; output is {\it stdout}. Silent. +\par} + +\noindent Note: the \OPTCH p~option does not cause an error, but is ignored. +\par\centerline{\vrule height0pt depth.5pt width8pc} + +\par\vskip0pt plus.3\vsize\penalty-250\vskip0pt plus-.3\vsize +{\noindent\raggedright\hangindent1pc\hangafter0\tt + tiblook \[\OPTCH c \<common-words file>] + \[\OPTCH l \<length of keys>] \[\OPTCH p \<private indices>] + \[\<keywords>]} +\smallskip +\noindent\Tib look locates entries in reference files from keywords. +If keywords are not entered on the command line, \Tib look gives +instructions and operates interactively. \Tib look, like \Tib, works +through inverted indices to get to the reference files. + +The following are the options: +\par{\leftbox5pc\def\tablemark{\OPTCH }\tableset + +\tableentry{c \<file>}Common-word list, one word per line. Common words +are not used as keys (default \TCOMMON). + +\tableentry{l \<number>}Maximum length of keys (default 6). + +\tableentry{p \<files>}Private index files, separated by commas. +The default is the file {\it INDEX\/} in the working directory. + +\tableentry{\<keywords>}Keywords for noninteractive search. +\par}\centerline{\vrule height0pt depth.5pt width8pc} +\par\vskip0pt plus.1\vsize\penalty-250\vskip0pt plus-.1\vsize + +\bigskip +\par\noindent The following can optionally +be set as variables in the environment: +\medskip\par{\leftbox5pc\def\tablemark{}\tableset +\tableentry{\rm TMACLIB}Directory for macro files (no directory-separator +character on the end). +\tableentry{\rm TMPDIR}Scratch directory for temporary work files (no +directory-separator character on the end). +\tableentry{\rm COMFILE}File of common words. +\tableentry{\rm SYSINDEX}System index file. +\tableentry{\rm DEFSTYLE}Default style file. +\par}\centerline{\vrule height0pt depth.5pt width8pc} + +\bigskip +\par\noindent The options permit a variety of possibilities in file +organization. At one extreme there can be a number of specialized +reference files and \Tib dex can be run +on particular ones to create an index for each particular document. At the +other extreme, there can be one master reference file and one master +index in a dedicated directory. This index can be accessed by \Tib{} +with the \OPTCH p~option. In this case the \Tib{} programs could be {\it aliased\/} +(or called from macros) so this index is automatically accessible. The same +is true of private command files which are accessed with the \OPTCH i~option or made +available with the \OPTCH d~option. + +\beginsection{.1} 3. Available styles + +The selection of style file for the \OPTCH s~option for the call to +\Tib{} is the basic choice and is often the only choice necessary. +It controls the format style of the citations and reference list. A +number of styles are supplied; they are listed for reference (Tables 1 \&~2). +A {\it name\/} listed is called by the option {\tt \OPTCH s~\<name>} +(although {\it name\/} is only part of the actual name of the file). The +effect of the choice on \Tib{} is described in section~5. There are +a number of general styles and variations which are listed in Table~1. +Also a number of journal styles are available. Journal styles +currently available are listed in Table~2. One of the purposes +of \Tib{} is generating citations and reference lists in journal styles +so that papers can be sent to journals as \TeX{} files. As journals develop +format specifications for \TeX{} files, more journal styles will be +developed and refined to those specifications. Conversely, a journal +which accepts papers in \TeX{} form and which has +a copy of \Tib{}, or at least appropriate {\it .ttx\/} files +(see section~5), could process a paper set in \TeX{} with \Tib{} +control sequences and format it to its own journal style. See also the +file {\tt\TDOCDIR\DIRSEP Styles}. + +\midinsert +\centerline{\bf Table~1. General format styles}\smallskip +{\tt\catcode`\u=12\parindent17pt +\par num \hskip2pc{\rm(default unless reset at installation or in environment)} +\par numo, numos, numb, numbs, numu, numub, numubs, numus, numul, +numubl, numubsl +\par alpha, alphab +\par nmdt, nmdtb +\par footp, footl +\par intext, slyd} +\medskip +\centerline{Meanings:} +{\leftbox5pc\def\tablemark{}\tableset +\par\tableentry{num}standard numerical citations +\par\tableentry{alpha}3 letter alphabetic citations +\par\tableentry{nmdt}citations made from names and date +\par\tableentry{foot}footnotes +\par\tableentry{o}old English +\par\tableentry{b}some boldface +\par\tableentry{s}sorted (alphabetized) +\par\tableentry{u}superscripts (up) +\par\tableentry{p}plain \TeX +\par\tableentry{l}\LaTeX +\par\tableentry{intext}references in text +\par\tableentry{slyd}for making slides +\par\centerline{\vrule height0pt depth.5pt width8pc}} +\centerline{\bf Table~2. Journal format styles}\smallskip +{\leftbox5pc\def\tablemark{}\tableset +\par\tableentry{acm}Association of Computing Machinery (all journals) +[{\tt acml} for \LaTeX] +\par\tableentry{}American Mathematical Society (all journals) +\par\tableentry{amsa}\hskip1pc alphabetical citations +\par\tableentry{amsd}\hskip1pc name-date citations +\par\tableentry{amsn}\hskip1pc numerical citations +\par\tableentry{aps}American Physical Society +\par\tableentry{cmp}{\it Communications in Mathematical Physics} +\par\tableentry{epes}{\it Electrical Power and Energy Systems} +\par\tableentry{ijrr}{\it International Journal of Robotics Research} +\par\tableentry{ieee}Institute of Electrical and Electronic Engineers +(all journals) +\par\tableentry{jgr}{\it Journal of Geophysical Research} +\par\tableentry{lala}{\it Linear Algebra and its Applications} +\par\tableentry{}Society for Industrial and Applied Mathematics (all journals) +\par\tableentry{siamd}\hskip1pc name-date citations [{\tt siamdl} for \LaTeX] +\par\tableentry{siamn}\hskip1pc numerical citations [{\tt siamnl} for \LaTeX] +\par\tableentry{spln}Springer {\it Lecture Notes\/} and other publications +\par\centerline{\vrule height0pt depth.5pt width8pc}}\endinsert + +\Tib{} is not universally successful with all styles. There are +several features which don't work well in slyd; these are detailed in +the master file {\tt\TMACDIR\DIRSEP slyd.tib}. Moreover, so that the +alternate citation style (see section~4) works with footnotes, \Tib{} +uses its own citation numbers in footnotes in plain \TeX. If numbered +footnotes are used for purposes other than citations, conflicts will +arise. \Tib{} works acceptably with \LaTeX, since it uses the footnote +numbers generated by \LaTeX. Certainly the same process can be made to +work in plain \TeX{} ({\it The \TeX book}, exercise 15.12). In +addition, when using ``{\it loc.\ cit.}," \Tib{} refers only to the +author(s). However, see the appropriate {\tt .ttx} files for +modifications to include the title also in the citation. Also some +styles call for amalgamating multiple references into one footnote or +include comments and references in one footnote. This is presently +beyond \Tib's capability. For example, \Tib{} has considerable trouble +with the American Physical Society's style, which uses footnotes with +all the above features, and in addition collects them at the end as +endnotes. + +\beginsection{.2} 4. The input document + +\Tib{} operates on a \TeX{} file with incomplete citations. It recognizes +its own set of escape sequences, which are summarized in Table~3. For an +example document, see the appendix. For each +such citation it locates the reference in a reference file, constructs the +citation in one of several styles and on demand, creates a reference list. +In this section we discuss the way \Tib{} reads the file. + +An {\it ordinary incomplete\/} citation is surrounded by the characters +{\tt [.} {\tt .]}. For example: +\medskip\centerline{\tt + \dots in Arnol'd's book,[.arnold singularities.]\ especially\dots} +\medskip +\noindent Words in the incomplete citation (separated by spaces) +are matched against the inverted index created by \Tib dex +and hence against the source reference files. The words are any words +in the reference listing, except those in the excluded fields (see section +6 for a discussion of the reference files; see the \OPTCH \%~option for \Tib dex +for excluded fields). \Tib{} first searches the default index ({\it INDEX\/}) +or the indices designated with the \OPTCH p~option, in order from left to right +and then the system index, if there is one. If an entry is found that +matches all words, that reference is used. If no reference entry is found +or if multiple entries are found, a warning message is sent to the console. +The case of the letters in the citation is immaterial. The words in the +citation are truncated (by default to 6 letters; see the \OPTCH l~option for +\Tib dex). Thus {\tt [.arnold singularities.]} and {\tt [.ARNOLD singul.]} +effect the same result. Embedded newlines, tabs and extra spaces are ignored. +The format of the citation is controlled by \Tib{} format files (section~5). + +Note that punctuation is placed to the left of the citation. In some +citation styles (e.g.\ brackets), punctuation comes after the citation, +and in others (e.g.\ superscripts), it comes before. \Tib{} +looks at the character immediately preceding the {\tt [.}\ and generates +control sequences which are interpreted by \TeX{} via macro files appropriate +to the citation style. Punctuation to the right of citations is passed +through unparsed to \TeX. +Such a citation placed in a line after a \TeX{} comment character `\%' +(or other character of category~14) +will cause the cited reference to appear in the listing, but not in the text. + +Multiple citations in one citation mark are indicated by commas: +\medskip\centerline{\tt + \dots equations.[.arnold singularities, arnold equations.]} +\medskip + +\noindent {\it Additional information\/} can be placed at the end of a +citation by enclosing it in angle brackets {\tt< >}, e.g.\ +\medskip\centerline{\tt + \dots in.[.arnold singularities <, chap.\catcode`\~=12{~}2>.]} +\medskip +\noindent In citation styles which use brackets, such insertions are enclosed +{\it verbatim\/} in the brackets. In other styles, such as footnotes, the +information is appended to the reference listing. + +An {\it alternate citation} style can be used by surrounding the incomplete +citation with {\tt<. .>}. This is mostly for citations in running text. +Thus: +\medskip\centerline{\tt + \dots discussed in reference <.arnold singularities.>.} +\medskip +\noindent Insertions are not permitted in this alternative style. Neither is +punctuation handled specially; thus punctuation should be put in its +usual place. + +A reference list is constructed and inserted in the document where the +sequence {\tt .[]} is encountered at the beginning of a line. The remainder +of that line is processed and inserted before the listing. The style and +format of the listing is controlled by \Tib{} format files. + +If for some reason, one of \Tib's sequences is part of the text +of the document, break up the sequence so \Tib{} will not recognize it +(e.g.{} {\tt [\{\}.} or {\tt\$x< .5\$}). +Note that the \Tib{} escape sequences are transparent to +\TeX{} so they do not interfere with \TeX{} processing. Thus a \TeX{} +document can be debugged without running \Tib{}. The citations +will appear as typed in the document. After all \TeX{} bugs are eliminated, +then \Tib{} can be used for the final one or two runs. + +\midinsert +\centerline{\bf Table~3. \bfTib's escape sequences}\smallskip +{\leftbox10pc\def\tablemark{}\tableset + +\tableentry{[.{\it key words}.]}Citation, + +\tableentry{<.{\it key words\/}.>}Alternate citation, + +\tableentry{[.\ $\dots$<{\it insertion\/}>.]}Insertion in citation, + +\tableentry{.[]}Make reference list after this line (must be at beginning +of line). +\par}\endinsert + +\beginsection{.2} 5. Styles and files + +\Tib{} controls the format of the citations and reference lists by means +of files of \Tib{} and \TeX{} commands. For the most part the details of such +controls can be ignored, with three possible exceptions. + +One: it is possible +to ``define" code words for use in the reference files. For example, a file of +1845 standard (= {\it Mathematical Reviews}) journal abbreviations is supplied +and \Tib{} will automatically abbreviate journal names. The process is +discussed below in the subsection on definitions. Additionally, private +abbreviations can be defined and the standard abbreviations can be overridden. +The method for doing such is discussed in this section. + +Two: \Tib{} can automatically format +99\kern.25em\raise.5ex\hbox{\the\scriptfont0 {44}} +\kern-.35em/\kern-.15em\lower.25ex\hbox{\the\scriptfont0 {100}}\%\ \thinspace +of citation work. However it is only a computer +program, and on occasion will require human assistance. There will be +references which \Tib{} just cannot format correctly. Or an overfull +{\tt\\hbox} may crop up. The output of \Tib{} is a \TeX{} document +which may be edited before applying \TeX. However \Tib{} puts out +a small jungle of control sequences and it is necessary to have some idea how +to hack through them. + +Three: concerning those control strings, \Tib{} +reserves fifty or so control strings for its use. The definitions of these +strings can be modified for particular effects; however unintentional +modification can result in chaos. Thus it is at least necessary to +know what the reserved strings are. + +\beginsubsection{.2} Reserved control strings + +We take care of the last point first. Table~4 is a complete list +of global control strings which \Tib{} may insert into a document. +Also \Tib{} uses the plain \TeX{} strings {\tt\\bgroup} +and {\tt\\egroup} as implicit left and right braces. For +completeness, it explicitly defines them with their plain \TeX{} meanings. +In addition \Tib{} sets a number of other control strings. However +these are local and thus will not conflict with their possible other use +in other parts of the document. For the meaning of these strings, +see the file {\tt\TMACDIR\DIRSEP Macros.ttx}, where +these control strings are given their default definitions. + +\midinsert +\centerline{\bf Table~4. Reserved global control strings} +\smallskip +\centerline{(See file {\tt\TMACDIR\DIRSEP Macros.ttx} for definitions)} +\smallskip +{\tt\settabs4\columns + +\+\\TMACLIB &\\aand &\\Aand &\\aandd\cr +\+\\Aandd &\\ACitefont &\\acomma &\\Acomma\cr +\+\\Authfont &\\Citebrackets &\\Citebreak &\\Citecomma\cr +\+\\Citefont &\\Citehyphen &\\Citenamedate &\\Citeparen\cr +\+\\Citesuper &\\eand &\\Eand &\\eandd\cr +\+\\Eandd &\\ecomma &\\Ecomma &\\Flagfont\cr +\+\\Flagstyle &\\Initgap &\\Initper &\\LAcitemark\cr +\+\\Lbang &\\Lcitemark &\\Lcolon &\\Lcomma\cr +\+\\LIcitemark &\\Lperiod &\\Lpunct &\\Lqquote\cr +\+\\Lquest &\\Lquote &\\Lrquote &\\Lscolon\cr +\+\\Lspace &\\Nameand &\\Nameandd &\\Namecomma\cr +\+\\RAcitemark &\\Rbang &\\Rcitemark &\\Rcolon\cr +\+\\Rcomma &\\Reffont &\\Refformat &\\Refstd\cr +\+\\Refstda &\\Resetstrings &\\Revcomma &\\RIcitemark\cr +\+\\Rperiod &\\Rpunct &\\Rqquote &\\Rquest\cr +\+\\Rquote &\\Rrquote &\\Rscolon &\\Rspace\cr +\+\\Smallcapsaand &\\Smallcapseand&\\Smallcapsfont&\\Titlefont\cr +\+\\Tomefont &\\Underlinemark&\\Volfont &\\zstr\cr +\+\\Zstr &\\ztest &\\Ztest\cr +\settabs3\columns +\+\\journalarticleformat &\\conferencereportformat &\\bookformat\cr +\+\\technicalreportformat &\\bookarticleformat &\\otherformat\cr +}\endinsert + +\Tib{} is intended to be compatible with virtually all possible \TeX s, +in particular plain \TeX, \LaTeX, and \AmSTeX. +With only a few exceptions, all macros in \Tib{} are written +in terms of primitive \TeX{} (starred commands in D. Knuth's +{\it The \TeX book}). The exceptions are: +\par{\leftskip2pc\parindent0pt +\item{(1)} fonts {\tt\\rm} and {\tt\\sl} are assumed loaded; also +{\tt\\sevenrm} if {\tt AX} or {\tt EX} is used, +\item{(2)} footnote +macros for plain \TeX{} and \LaTeX{} are used in the appropriate macro files, +\item{(3)} the files of journal names are for Latin fonts and +include plain \TeX{} diacritical marks +(D. Knuth's {\it The \TeX book}, p.~52 or L. Lamport's \itLaTeX, p.~40); +in particular, if a Cyrillic font is to be +used, different journal word-definition files must be used.\par} +\noindent On the other hand, \Tib{} requires +that the category codes of plain \TeX{} be in force +(see {\it The \TeX book}, p.~37). For example `\{' and `\}' +are assumed to be grouping characters, `\%' is assumed to terminate a +line, etc.\ \Tib{} occasionally puts out something in +{\tt\$math mode\$}, but creates neither displayed nor tabular material. + +\beginsubsection{.2} \bfTib{} files + +\midinsert +\centerline{\bf Table~5. A typical {\tt .tib}\ file} +{\tt\obeylines\obeyspaces% +\# +\# standard format +\# +\# include word-definition file (journals and publishers) +I TMACLIB amsabb.ttz +H hyphenate strings of citations + +\%The lines below are copied verbatim into the output document as TeX commands. +\%First the file \\TMACLIB Macros.tib is \\input with Macros and default settings. +\%The control string \\TMACLIB is just a path. +\% +\\input\\TMACLIB\ stdbra.ttx \%TeX macros for formatting reference list +\\Refstda\\Citebrackets \%set general formats for reference list and citations +}\endinsert + +\noindent The \OPTCH s and \OPTCH i~options of the call to \Tib{} both cause \Tib{} to +process files. The files are processed in their orders in the call to \Tib. +These files (Table~5) contain \Tib{} format commands (Table~7) which +control how \Tib{} processes the input file and/or \TeX{} control +strings which are printed {\it verbatim\/} in the output document. In turn +these files can contain a command to process further files. In general +the \OPTCH s~option causes \Tib{} to process a master style file which in turn +effects processing of subsidiary files. For the most part the user need +only be concerned with the master file. The \OPTCH d and \OPTCH i~options are available +if some private commands (such as definitions for code words) or styles +are to be incorporated. +Although any \Tib{} command file can contain either \Tib{} commands or \TeX{} +control strings or both, there is a general extension-naming convention: +\medskip +{\leftbox3.5pc\def\tablemark{}\tableset\everypar={\hangindent1em\hangafter1} +\smallskip\tableentry{.tib}Master command files, which are usually called by +the \OPTCH s~option. These files contain enough commands to completely set a style. +It is possible for one of these files to call another. +\smallskip\tableentry{.ttz}Subsidiary files consisting of \Tib{} commands +and possibly \TeX{} commands, which are called by {\tt .tib} files. +\smallskip\tableentry{.ttx}Files consisting of \TeX{} macros which are +often {\tt\\input} by commands from the master {\tt .tib} file. +\par}\medskip + +\noindent Thus there are files +\medskip +\par{\leftbox5pc\def\tablemark{}\tableset +\par\tableentry{\tt num.tib} setting standard numerical flags enclosed in +brackets, +\par\tableentry{\tt amsabb.ttz} containing definitions +(abbreviations) of code words for journals, and +\par\tableentry{\tt ieee.ttx} containing the \TeX{} +macros for formatting citations and references in the style of IEEE +journals. +\medskip} + +\midinsert\centerline{\bf Table~6. Order of file search}\medskip +\par\vskip0pt plus4\baselineskip\penalty-250\vskip0pt plus-4\baselineskip +\par\indent\indent\indent first: look in the current directory for \<filename>, +\par\indent\indent\indent second: append {\tt .tib} to \<filename> +and look in the current directory, +\par\indent\indent\indent third: if the \OPTCH d~option is used, look in that +directory for \<filename>, +\par\indent\indent\indent fourth: append {\tt .tib} to \<filename> and look +in the \OPTCH d~directory, +\par\indent\indent\indent fifth: look in the system directory for \<filename>, +\par\indent\indent\indent sixth: append {\tt .tib} to \<filename> and look +in the system directory, +\par\indent\indent\indent seventh: quit with an error message. +\par\endinsert +\bigskip +\midinsert +\centerline{\bf Table~7. \bfTib{} commands}\smallskip +\par{\leftbox10pc\def\tablemark{}\tableset +\everypar={\hangindent1em\hangafter1} + +\tableentry{\#}Comment, line ignored + +\tableentry{A}Format authors' names depending on following characters +as follows: + +{\leftbox11pc\tableset +\tableentry{AA}Abbreviate authors' first names + +\tableentry{AR\<num>}Reverse first and last names of first {\it num} +authors. If {\it num} is omitted, all authors's names are reversed. + +\tableentry{AX}Print authors' names in caps-small caps. If {\tt AA} and +{\tt AX} are called for, the abbreviated first names are not put in +caps-small caps (relevant only for first names not beginning with a capital +letter). Defining {\tt\\Authfont} as a caps-small caps font [such as +{\it amcsc\/} (={\tt\\sc} in \LaTeX)] if one is available, +is an alternative to using {\tt AX}. +\par} + +\tableentry{E}Equivalent to the {\tt A} command, except for editors. + +\tableentry{C\<template>}Citation template. See discussion in text. + +\tableentry{D \<word> \<definition>}Definition of word. See discussion in text. + +\tableentry{f}Footnotes. Print out reference immediately, instead of +saving for list (in which case the escape sequence {\tt .[]} is not used). + +\tableentry{F}Use special citations flags from reference file if they exist, +instead of constructed flags. + +\tableentry{I \<filename>}Include {\it filename\/} for processing; +{\it filename\/} may contain further \Tib{} commands. + +\tableentry{H}Hyphenate three or more citations in one citation mark that +refer to successive entries in the reference list. For example, the citation +2,3,4,5 is replaced by 2--5. The {\tt H}~option implies the {\tt O}~option. + +\tableentry{L}Use ``{\it loc.\ cit.}" and ``{\it ibid.}" +for duplicate references. + +\tableentry{N\<string>}Turn off options indicated by {\it string}, which must +be composed of the letters A (for AA), F, H, O, R, S, X (for AX). + +\tableentry{O}Citations in one citation mark are sorted according to the order +given by the reference list. + +\tableentry{P}Print only first page numbers of articles. + +\tableentry{S\<template>}Sort reference list according to {\it template}. See +discussion in text. + +\tableentry{T\<string>}Generate trailing character strings for reference fields +coded in {\it string}. See discussion in text. + +\tableentry{U}Replace two or more successive reference listings of identical +authors by underlines. +\par}\endinsert + +\Tib{} searches for \<filename> called with the \OPTCH s or \OPTCH i~option in the call, or +the I~command in a file (see next subsection) in the order listed in Table~6. +Thus system {\tt .tib} files or private {\tt .tib} +files can be called with short names. All other files require full names. +Private files can be kept in the working directory or a directory designated +with the \OPTCH d~option. If the \OPTCH d~option is to be used regularly, the calls to +\Tib{} and \Tib list could be {\it aliased\/} or put in macros. +The code {\tt TMACLIB} (followed by one or more spaces) +is defined as the system directory \TMACDIR{} +for use in command files, and the \TeX{} control string {\tt\\TMACLIB} +is defined as the system directory name, for use in {\tt\\input} commands. + +A \Tib{} output file starts with the \TeX{} commands +\smallskip\hskip20pt +{\tt\\def\\TMACLIB\{\TMACDIR\DIRSEP\}\\input\\TMACLIB\ Macros.ttx}. +\smallskip\noindent The file {\tt TMACLIB\DIRSEP Macros.ttx\/} contains +default definitions for the reserved control strings. Then any \TeX{} +commands from the files called with the \OPTCH s or \OPTCH i~options (and commands +from files called by these files) are listed. Then comes the processed +document. There are also {\tt\\message} commands to list the files +called (in order with nesting) on the terminal and in the {\tt .log} file +during the subsequent \TeX{} run. +Note that any default \TeX{} definition can be overridden by a redefinition +either in a file called with \OPTCH i or in the document proper. Similarly +\Tib{} commands can be added in files called with \OPTCH i. If there is a +standard private such file (e.g.\ containing definitions), it could be kept in +a special directory and the call to \Tib{} could +be {\it aliased\/} or put in a macro so that this file is always included. + +\beginsubsection{.05} \bfTib{} commands + +\Tib{} commands begin in the first column of a file and are one-letter commands +possibly followed by character sequences. Table~7 lists the commands. +The first line in the file that does not match one of the items in Table~7 +causes that line and all subsequent lines to be copied {\it verbatim\/} to the +output file. + +\beginsubsection{.1} Citations + +\midinsert +\centerline{\bf Table~8. Citation styles} +\medskip\par{\leftbox2.5pc\def\tablemark{}\tableset +\everypar={\hangindent1em\hangafter1} + +\tableentry{0}No citation -- used for inserting reference in the body of the +text. +\smallskip +\tableentry{1}Numerical citation, starting at 1 (default style). +\smallskip +\tableentry{2}Alphabetic citation constructed from last names of author(s): +if one author then first 3 letters of name; if two authors then +first 2 letter of name of first and first letter of name of second; +if 3 or more authors then first letter of name of first three. +If the last name of an author does not begin with a capital letter, +the citation is extended until the first capital letter is encountered. +Can be followed by further code which denotes additional fields from the +reference file. For example the template {\tt 2D-2} means follow the +alphabetic citation with the last two characters in the date field. +The two fields are separated by the \TeX{} control string {\tt\\Citebreak}. +If {\tt\\Citebreak} is defined to be empty, the template {\tt 2D-2} will +effect citations of the form ``AuD77." If there are no authors, citations +are made from editors' names. If there are also no editors, the issuer +is used. +\smallskip +\tableentry{3}Last names of authors or first author {\it et al.}\ if more +than three authors. Can be followed by further code which denotes additional +fields from the reference file, as above. If {\tt\\Citebreak} is defined to +be \{, \}, the template {\tt 3D-4} will effect citations of the form +``Hale, 1983." If there are no authors, editors or the issuer is used as +above. +\medskip +\tableentry{4--9}Available for future use or for local styles. +\par}\endinsert + +\noindent The citation command {\tt C} determines the style of the citation. +The template is one number 0 through 3, which codes the citation, +possibly followed by further instructions. The template +codes are listed in Table~8. The numerical citation style is the default. +%Each field in the template can be followed by either `u' or `l' and the +%field will be printed in upper or lower case respectively. +If necessary, +the character `@' can be used to separate objects in the citation template. +If two citations are identical (e.g.\ two works by one author +in one year), \Tib{} appends letters `a', `b', etc. +at the end of the citation to resolve ambiguities. + +\beginsubsection{.1} Sorting + +This command causes the reference list to be sorted according to the +order encoded in \<template>. The template consists of letters +denoting fields of the reference file, possibly followed by numbers. +For example, the template AD will effect a sort on authors' last +names, with a secondary sort on the date. The template A1D will effect +a sort on the first authors' last names, with a secondary sort on the date. +A minus sign after a field code will cause the sort to be in the reverse +order, e.g.\ anti-alphabetically. Two references which test equally in the +sort will be listed in order of citation. + +\beginsubsection{.05} Trailing characters + +If the \Tib{} {\tt T} command is set, for each {\it field\/} indicated in +{\it template}, \Tib{} prints out a control string {\tt\\{\it field\/}trail} +which is defined as the last character in {\tt\\{\it field\/}str}. This +sometimes is used for determining the punctuation after the {\it data\/} in +the listing. + +\beginsubsection{.2} Definitions + +\Tib{} is able to store a list of code words and their expansions. +Such word-definition pairs are inserted with the {\tt D} command, followed +by a space, followed by the code {\it word}, followed by another space, +followed by the {\it definition} (expansion), e.g. +\smallskip\par\hskip20pt {\tt D PROC Proceedings}\smallskip +\par\noindent or +\smallskip\par\hskip20pt {\tt D COMMA1 Comm.\ ACM}\smallskip +\par\noindent +Code words are restricted to alphanumeric, ampersand and underscore characters. +Whenever \Tib{} encounters a $|${\it word\/}$|$ (enclosed between two vertical +bars) in a reference file, it searches its list and replaces {\it word} with +{\it definition}. Moreover {\it definition} can itself contain +$|${\it another\_word\/}$|$. \Tib{} will iterate the process until all +{\it words} are expanded. Also, more than one field can be part of the +definition. For example (with reference to Table~10) the word-definition pair +\smallskip{\par\hskip20pt\tt +D AcPress Academic Press\\ +\par\hskip20pt\%C $|$NYC$|$ +}\smallskip +\noindent causes {\tt$|$AcPress$|$} to expand to the publisher +``Academic Press" and the city ``$|$NYC$|$", which of course further +expands to ``New York, NY." Both fields are automatically available. +Similarly {\tt$|$LNMath$|$} expands to the series ``Lecture Notes in +Mathematics," the publisher ``Springer-Verlag" and the cities +``New York--Heidelberg--Berlin." + +Files of word-definition pairs can be collected and +processed by \Tib{} before processing the document. +Thus expansions which are different in different styles can +be changed by using different definition files. For example, one style +may require ``Proceedings" where another may require ``Proc." Furthermore +files of standard abbreviations can be made automatically available. +In particular, {\it Mathematical Reviews\/} has supplied its databases of full +journal names and abbreviations. These are available as +{\it amsfll.ttz\/} and {\it amsabb.ttz\/} respectively, and are +automatically processed by the supplied format styles.\footnote{$^*$}{\Tib{} +thanks {\it Mathematical Reviews\/} for its +generosity in providing these files as a service to the +scientific community. The data in these files are copyright \copyright\ by +{\it Mathematical Reviews\/} and are not to be used +in any proprietary manner.} +The styles of most journals call for abbreviated journal names in reference +lists, although a few (such as the +{\it Journal of Optimization Theory and Applications\/}) require full names. +The 6-letter codes may be obtained by perusing the files. Any definition can +be overridden by a later word-definition pair. Moreover, since \Tib{} +iterates the process of expanding words, private (perhaps shorter) codes +can be created which expand to the ones in the files. These could be kept +in another file which is accessed with the \OPTCH i or \OPTCH d~option. For example: +\smallskip\par\hskip20pt {\tt D CACM $|$COMMA1$|$}\smallskip +\noindent There are other word-definition files +{\it pub.ttz\/} (publishers) and {\it misabb.ttz\/} and {\it misfll.ttz\/} +(miscellaneous) which are automatically included with the journal files. +For run-time efficiency, extensive word-definition files should be amalgamated +as much as possible and sorted alphabetically on the {\it word\/}s. + +\beginsubsection{.2} Reference lists + +For each reference to be listed, \Tib{} generates a local sequence of +control strings for \TeX. The interpretation of these control strings +is governed by the macros in the selected {\it .ttx\/} file. The relation +of control strings with reference file fields is discussed in section~6. +In this section we discuss the control strings \Tib{} generates. In Table~9 +is listed a typical reference listing in a \Tib{} output file. + +\midinsert +\centerline{\bf Table~9. A typical \bfTib{} reference listing}\smallskip +{\obeylines\obeyspaces\tt +\{\\Resetstrings\% +\\def\\Loccittest\{\}\\def\\Abbtest\{\}\\def\\Capssmallcapstest\{\}\% +\noindent \\def\\Edabbtest\{\}\\def\\Edcapsmallcapstest\{\}\\def\\Underlinetest\{\}\% +\\def\\NoArev\{0\}\\def\\NoErev\{0\}\\def\\Acnt\{1\}\\def\\Ecnt\{0\}\\def\\acnt\{0\}\\def\\ecnt\{0\}\% +\\def\\Ftest\{\ \}\\def\\Fstr\{10\}\% +\\def\\Atest\{\ \}\\def\\Astr\{Donald E. Knuth\}\% +\\def\\Ttest\{\ \}\\def\\Tstr\{The \\TeX book\}\% +\\def\\Itest\{\ \}\\def\\Istr\{Addison Wesley\}\% +\\def\\Ctest\{\ \}\\def\\Cstr\{Reading, MA\}\% +\\def\\Dtest\{\ \}\\def\\Dstr\{1984\}\% +\\Refformat\% +\} +}\endinsert + +The control strings {\tt\\Loccittest}, etc.\ are printed out by \Tib{} +depending on the setting of various \Tib{} controls. They are defined +as \{\} or \{\ \} depending on whether the control is off or on, respectively. +The control strings {\tt\\NoArev}, {\tt\\Acnt}, etc.\ are respectively set equal +to the numbers of authors' names to be reversed, the number of authors, etc. +These are for use in formatting, if needed. For certain fields, \Tib{} +also prints out formatting aides. For example, for listings with page +numbers, \Tib{} prints out a control string {\tt\\Pcnt}, which is +defined as \{\} or \{\ \} if there is one or more than one page, respectively, +so that for example, a choice can be made between ``p." and ``pp." in the +listing. For each field {\it field\/} +of the reference file which contains {\it data}, \Tib{} prints out +\smallskip\par\hskip20pt +{\tt\\def\\{\it field\/}test\{\ \}\\def\\{\it field\/}str\{{\it data\/}\}\%}. +\smallskip\noindent A new field can be inserted in the \Tib{} output file +before running \TeX{} by inserting such a line. In particular, anything put +in the O field is appended to the end of the reference listing. +Also if need be, the {\it data\/} can be changed. Depending on \Tib{} +commands set, some fields, particularly author and editor fields, +may contain inserted \TeX{} control strings. The control string +{\tt\\Resetstrings} resets all the {\tt\\{\it field\/}test}s and +{\tt\\{\it field\/}str}s to \{\} (except for the Z and z fields, +see Table~10). The control string {\tt\\Refformat} effects the printing +of the listing. Thus any changes between these two control strings affect +the final printed document. +%\vfill\eject + +\beginsection{.3} 6. The reference file + +\midinsert +\centerline{\bf Table~10. Field tags}\smallskip +\par{\leftbox2pc\def\tablemark{\%}\tableset + +\par\tableentry{A}Author(s) (may have multiple authors, separate +field entry for each author in order) +\par\tableentry{B}Book title +\par\tableentry{C}City of publication +\par\tableentry{D}Date +\par\tableentry{E}Editor(s) (may have multiple editors, separate +field entry for each editor in order) +\par\tableentry{F}Special citation flag, use is governed by \Tib{} +{\tt F}~command +\par\tableentry{G}Government (NTIS) ordering number +\par\tableentry{I}Issuer (publisher) +\par\tableentry{J}Journal name or for unpublished conference report, +the conference name +\par\tableentry{K}Keys for searching, not printed out +\par\tableentry{M}{\it Mathematical Reviews} number +\par\tableentry{N}Number of issue (journal or series) +\par\tableentry{O}Other information, appended to listing +\par\tableentry{P}Page numbers +\par\tableentry{R}Technical report identifier +\par\tableentry{S}Series title +\par\tableentry{T}Title of article or book +\par\tableentry{V}Volume number (journal or series) +\par\tableentry{Z}Reserved by \Tib{} for special insertions +\par\tableentry{a}Translator(s), also editor(s) of translated compilations +\par\tableentry{b}Translated book title +\par\tableentry{c}City of publication of translated item +\par\tableentry{d}Date of translated item +\par\tableentry{e}Author(s) +of reviewed material; reviewers' names go in {\tt A} fields in order +\par\tableentry{i}Issuer of translated item +\par\tableentry{j}Translated journal name +\par\tableentry{k}Reserved for future use for secondary references +\par\tableentry{l}Language of translation +\par\tableentry{n}Number of translated item +\par\tableentry{o}Other information, inserted after book title +\par\tableentry{p}Pages of translated article +\par\tableentry{r}Identifier of translated technical report +\par\tableentry{s}Series of translated item +\par\tableentry{t}Title of translated article or book +\par\tableentry{v}Volume of translated item +\par\tableentry{z}Reserved by \Tib{} for special insertions +\par\tableentry{\\}Beginning of line of \TeX{} instruction(s) +\par\tableentry{\%}Comment (passed as \TeX{} comment) +\par}\endinsert + +\noindent A reference {\it file\/} is a database file containing any +number of reference {\it items}, separated by one or more blank lines. +Reference items consist of reference {\it fields\/} which in turn +consist of data organized into field {\it tags\/} and field {\it data}. +The meaning of field tags is an extension of that of {\it bib\/} and is +suggested by that of {\it refer}. However there are enough differences +that {\it bib\/} or {\it refer\/} reference files are not directly +usable with \Tib. A field tag is a percent sign `\%' in column~1 +followed in column~2 by a single character. The currently recognized +tags are listed in Table~10. Field data begins in column~4; the data +can consist of any printable characters. Field data can be as long as +necessary and can extend into the next line. Lines that do not begin +with a percent sign are treated as continuation lines. Every line +(including continuation lines) must begin in column~1. The {\tt A}, +{\tt E}, {\tt a}, {\tt e} and {\tt\\} fields can be repeated as often +as necessary; other fields can occur at most once (more precisely the +last occurance of a field is the one used). Fields can occur in any +order except that authors, editors, etc.\ are listed in order of +appearance. Lines beginning `{\tt\%\\}' are inserted {\it verbatim\/} +into the output; they are assumed to be \TeX{} instructions. Lines in +a reference item beginning `{\tt\%\%}' are comments. + +\midinsert +\centerline{\bf Table~11. The control string {\tt\\Refformat}}\smallskip +{\tt\obeylines\obeyspaces% +\\def\\Refformat\{\%Determines the kind of reference by the presence or +\% absence of certain fields in the database listing, and calls the +\% appropriate macro. +\noindent \\if\\Jtest\\present +\noindent \{\\if\\Vtest\\present\\journalarticleformat +\noindent \\else\\conferencereportformat\\fi\} +\noindent \\else\\if\\Btest\\present\\bookarticleformat +\noindent \\else\\if\\Rtest\\present\\technicalreportformat +\noindent \\else\\if\\Itest\\present\\bookformat +\noindent \\else\\otherformat\\fi\\fi\\fi\\fi\}} +\endinsert + +As discussed in section~5, \Tib{} turns the field data in a reference +item into a sequence of \TeX{} control strings. In each {\it .ttx} file, +there are six basic format macros. Which one is used depends on the presence +or absence of certain fields in the sequence (unless the process is +overridden). The control string {\tt\\Refformat} (Table~11), +which \Tib{} sets up to be processed by \TeX{} +after the sequence of field strings (Table~9), +is contained in the file {\it Macros.ttx}, and causes \TeX{} to choose +one of the six. The control string {\tt\\Resetstrings} defines {\tt\\present} +to be a space, so that if {\\\it field\/}test is {\{\ \}}, then +{\tt\\if{\\\it field\/}test\\present} tests true. + +\midinsert +\centerline{\bf Table~12. A macro to print a reference item}\smallskip +{\tt\obeylines\obeyspaces% +\\def\\conferencereportformat\{\\Reffont\\let\\uchyph=1\\parindent=1.25pc\\def\\Comma\{\}\% +\noindent \\sfcode`\\.=1000\\sfcode`\\?=1000\\sfcode`\\!=1000\\sfcode`\\:=1000\% +\noindent \\sfcode`\\;=1000\\sfcode`\\,=1000\%\\frenchspacing +\noindent \\par\\vfil\\penalty-200\\vfilneg\%\\filbreak +\noindent \\if\\Ftest\\present\\Flagstyle\\Fstr\\fi\% +\noindent \\if\\Atest\\present\\bgroup\\Authfont\\Astr\\egroup\\def\\Comma\{\\unskip, \}\\fi\% +\noindent \\if\\Ttest\\present\\Comma\\bgroup\\Titlefont\\Tstr\\egroup\\def\\Comma\{, \}\\fi\% +\noindent \\if\\Jtest\\present\\Comma\\bgroup\\Tomefont\\Jstr\\egroup\\def\\Comma\{, \}\\fi\% +\noindent \\if\\Ctest\\present\\Comma\\bgroup\\Cstr\\egroup\\def\\Comma\{, \}\\fi\% +\noindent \\if\\Dtest\\present\\kern.16667em(\\bgroup\\Dstr\\egroup)\\def\\Comma\{, \}\\fi\% +\noindent \\if\\Otest\\present\\Comma\\bgroup\\Ostr\\egroup\\fi.\% +\noindent \\vskip3ptplus1ptminus1pt\}\%\\smallskip} +\endinsert + +The six macros {\tt\\journalarticalformat}, etc.\ +that actually effect the printing of the reference listings are rather +straightforward (see Table~12). They check for the presence of +relevant fields and print them out in the desired form. Thus they consist +mostly of a series of {\tt\\if\dots\\fi} conditional commands enclosing +printing commands. + +If {\tt\\Reffont}'s selection for a particular reference item is +unsatisfactory, it can be redefined locally on a one-time basis in the +\Tib{} output document before running \TeX, or permanently by including +control strings in the reference file (see the example below). +Indeed of course, {\tt\\Refformat} or any +of the six formatting macros can be redefined in the document or in an +included file (called with the \OPTCH i~option or the \Tib{} I~command (Table~7)). + +\beginsubsection{.15} The K (keyword) field + +The K field is searched to identify references but is not printed out. +Thus it can be used to facilitate identification. An example: +\medskip\vbox{\catcode`\~=12{\listitem% +\%A Dennie Van~Tassel +\%T Program Style, Design, Efficiency +\%I $|$PrHall$|$ +\%D 1978 +\%K testing debugging tassel +}}\medskip +\noindent Note also the use of the defined word in the \%I field. +The city of publication is included as part of the definition. + +\beginsubsection{.2} Formatting techniques + +Most reference items are uncomplicated and present no formatting problems. +In this subsection we discuss some techniques for the other cases. + +\TeX{} control strings in the reference file can be used to automatically +effect the format of the reference listing. Consider the example: +\medskip{\listitem% +\%A R. Colt Hoare +\%T A Tour through the Island of Elba +\%C London +\%D 1814 +\%O out of print +\%\\def\\Refformat\{\\bookformat\} +}\medskip +\noindent This example of a book has no listed publisher (I field). The +I field is used by {\tt\\Refformat} in its decision +(Table~11) and the decision would be incorrect for this example. Thus +{\tt\\Refformat} is redefined in the reference item. The redefinition +is local to the one reference and does not affect other references. + +Most data in the reference file is passed through to \TeX{} unaltered. +Thus \TeX{} control strings are permitted in the field data: +\medskip +{\listitem% +\%T The development of the January 1983\\/\$1\^\\circ\\times1\^\\circ\$ +mean free-air anomaly data tape} +\medskip +The italic correction spaces things correctly if the title is printed in +italic or slant. In the six formatting macros, the control string +printing the data is preceded by {\tt\\bgroup} and followed by +{\tt\\egroup}. This permits certain techniques. For example, either +\medskip +{\tt\raggedright +\%T A refined gravity model from LAGEOS\\/ \\egroup(GEM-L2)\\bgroup} +\smallskip\noindent or \smallskip +{\tt\%T A refined gravity model from LAGEOS\\/ \{\\Reffont(GEM-L2)\}} +\medskip\noindent +causes ``(GEM-L2)" to be printed out in ordinary type (usually Roman), +even if the font for titles is something else. + +It is necessary to be more careful with author, editor, reviewer, +translator and possibly institution fields. \Tib{} operates on +these fields in response to commands to abbreviate names, reverse +names, and put fields in caps-small caps. We discuss how \Tib{} +operates on these fields. The `a' and `e' fields +are governed by the commands for editors. If a reference item +has no authors, the editors are used in place of the authors, both +in the listing and for sorting. If there are also no editors, the +publishing institution is used. The last name is the last word +in a field. If the name is compound, it can be connected with +an active character or a space control character. Thus +\smallskip +{\tt\%A Dennie Van\catcode`\~=12{~}Tassel} +\par\noindent or +\par{\tt\%A Dennie Van\\\ Tassel} +\smallskip\noindent is correct. The first style prohibits a line +break; the second permits a break. + +For purposes of sorting, the first capital letter of the +last name is used. The abbreviation routine has a certain amount +of sophistication. It will abbreviate ``Heinz-Otto" to ``H-O." +It will abbreviate ``d'Arcy" to ``d'A." However if both abbreviation +and caps-small caps are called for, it will not set the `d' in ``d'A." +in small caps. That will have to be done by hand or with \TeX. +Making special letters with control characters in these fields +(D. Knuth's {\it The \TeX book}, p.~52 or L. Lamport's \itLaTeX, p.~40) +must conform to the following rules: they may not be nested and +they must be enclosed in braces. When sorting or making caps-small caps, +\Tib{} handles material in braces in special ways. The following are +correct: +\medskip\vbox{{\listitem% +\%A Ol\{\\'u\}wol\{\\'e\} \{\\'O\}d\{\\'u\}nd\{\\'u\}n +\%A S\{\\o\}ren \{\\AA\}ngstr\{\\"o\}m +\%A Heinz-Otto O'Grady +\%A Serge\{\\v\\i\} \{\\t I\}ur'ev}} +\medskip +There is one more rule. Caps-small caps turns lowercase letters into +uppercase; accordingly lowercase strings must have uppercase analogues +if \Tib's caps-small caps are to be used. If necessary these +can be set up by {\tt\\def} (which are local to the references). +Thus: \medskip\vbox{{\listitem% +\%\\def\\SS\{\\ss\} +\%A K. L. Weierstra\{\\ss\}}} +\medskip +\noindent The last example above is better: +\medskip{\listitem% +\%\\def\\I\{I\} +\%A Serge\{\\v\\i\} \{\\t I\}ur'ev} + +In fact, such control strings can be created and used to fool \Tib, +at least partially, if need be. For example: +\medskip{\listitem% +\%\\def\\PRESIDENT\{The President's Commission on Aging\} +\%A \{\\PRESIDENT\} +}\medskip +\noindent This will ensure that the reference is alphabetized by ``PRESIDENT," +rather than by ``The." However, \Tib's caps-small caps will not work; +the entry will have to be set by hand. + +\beginsubsection{.3} Reference items + +In this section we consider the forms in the reference database +of various types of reference materials. The criteria used are +those of {\tt\\Refformat} (Table~11). Tags are indicated in +parenthesis. + +\beginsubsection{.2} Journal article + +A journal article must have a journal name (\%J) and a volume +number (\%V). It usually also has one or more authors (\%A), +a title (\%T), page numbers (\%P), and a date of publication (\%D), +and sometimes an issue number (\%N). It may have +a publisher (\%I) or be a translation. In the last case, certain lower case +fields are used. Two examples: +\medskip\vbox{\catcode`\~=12{\listitem% +\%A Tammo tom~Dieck +\%T Bordism of \$G\$-manifolds and integrality theorems +\%J $|$TOPOL$|$ +\%P 345-358 +\%V 9 +\%D 1970 +\%K dieck +}}\bigskip +\vbox{\listitem% +\%A V. I. Arnol'd +\%T Singularities of smooth mappings +\%J $|$USPMN1$|$ +\%V 23 +\%P 3-44 +\%D 1968 +\%K arnold +\%j $|$RUSMS$|$ +\%v 23 +\%d 1968 +\%p 1-43 +}\medskip +\noindent Note the use of journal codes to effect automatic +standard abbreviation. + +\beginsubsection{.2} Conference presentation + +A conference presentation can be either an unpublished report +or an article in a proceedings which has no editor and is identified +by the conference. In this case the name of the conference is put +in the journal field (\%J). There is no volume (\%V) field. There +are likely also one or more authors (\%A), +a title (\%T), a date (\%D) and a city (\%C), and in a proceedings, pages (\%P). +\medskip\vbox{\listitem% +\%A F. J. Lerch +\%A S. M. Klosko +\%T Gravity model improvement using laser data +\%J First Crustal Dynamics Working Group Meeting +\%C Goddard Space Flight Center +\%D $|$SEP$|$, 1981 +} + +\beginsubsection{.2} Technical report + +A technical report has a report number or identifier (\%R). It +probably also has one or more authors (\%A), a title (\%T), a date +(\%D), and an issuing institution (\%I) (which may alternatively be +part of the report identifier), and possibly a city (\%C), a government +issue number (\%G) and perhaps pages (\%P). +\medskip\vbox{\listitem% +\%A F. J. Lerch +\%A S. M. Klosko +\%A G. B. Patel +\%T A refined gravity model from LAGEOS\\/ \\egroup(GEM-L2)\\bgroup +\%I $|$NASA$|$ +\%R Tech.\ Memo.\ TM 84986 +\%D $|$FEB$|$, 1983 +} + +\beginsubsection{.2} Book + +A book has a publisher (\%I) but no journal name (\%J) or report number +(\%R). Usually it also has one or more authors (\%A), a title (\%T), +a date (\%D) and a +city of publication (\%C). It may also belong to a series, in which case +it has a series name (\%S), and probably a series volume (\%V) or number (\%N). +It may also have a government number (\%G). Note the use of the F field. +In these examples, the city of publication (\%C) +included as part of the definition of the abbreviated \%I field. +In the first example there is no author (\%A) or editor (\%E); the issuer (\%I) +is used in place of the author for citation making and sorting. + +\medskip\vbox{\listitem% +\%T Software Engineering Automated Tools Index +\%I $|$SRA$|$ +\%F SRA +\%D 1982 +}\bigskip +\vbox{\listitem% +\%A R. E. Griswold +\%A J. F. Poage +\%A I. P. Polonsky +\%T The SNOBOL4 Programming Language +\%o (second edition) +\%I $|$PrHall$|$ +\%D 1971 +} + +\beginsubsection{.2} Article in book + +An article in a book has two titles, the title of the article (\%T) and +the title of the book (\%B). It probably has one or more authors (\%A), and +the book probably has one or more editors (\%E). It also probably has page +numbers (\%P). As well, the fields for a book are present. +\medskip\vbox{\listitem% +\%A C. A. R. Hoare +\%T Procedures and parameters:\ An axiomatic approach +\%B Symposium on Semantics of Algorithmic Languages +\%E E. Engeler +\%P 102-116 +\%S $|$LNMath$|$ +\%V 188 +\%D 1971 +} + +\beginsubsection{.2} Compilation + +A compilation is the work of several authors gathered together by one or more +editors (\%E). Thus there are no authors (\%A). Other than that, +it is treated as a book. +\medskip\vbox{\listitem% +\%E Heinz-Otto Peitgen +\%E Hans-Otto Walther +\%T Functional Differential Equations and Approximation of Fixed Points +\%D 1979 +\%S $|$LNMath$|$ +\%V 730 +} + +\beginsubsection{.2} Dissertation or thesis + +Many manuals of style say to treat a PhD dissertation as a book, with the +institution granting the degree as the issuer. However most journals +format dissertation and thesis listings as technical reports. +\medskip\vbox{\listitem% +\%A Martin Brooks +\%T Automatic Generation of Test Data for Recursive Programs Having +Simple Errors +\%R PhD Thesis +\%I Stanford $|$UNIV$|$ +\%D 1980 +} + +\beginsubsection{.05} Preprint + +A preprint is also best handled as a technical report with ``preprint" +or ``to be published" or even ``unpublished" in the R field. +Sometimes a preprint has a report +number which can be used and ``to be published" can be put in the O field. + +\beginsubsection{.2} Other + +Most sources fit in one of the above categories. A little experimentation +may be necessary for less-standard sources, such as newspapers, archival +sources, or correspondence. If the reference item does not meet any of +the criteria of {\tt\\Refformat}, it is formated by {\tt\\otherformat} +(see Table~11). + +\beginsection{.1} 7. {\tt\char"5Cinput} files + +With the {\tt OPTCH j} option ({\tt OPTCH i} was already assigned), +\Tib{} will recognize {\tt\\input} statements,\footnote{$^*$}{In +\LaTeX, there is a similar command, {\tt\\include}. However, +{\tt\\include} is more complicated than {\tt\\input}. For examples, +{\tt\\include} interacts with the {\tt\\includeonly} command and it +involves dealing with auxiliary files. It was decided that trying to +get \Tib{} to process {\tt\\include}d files could lead to mishandled +files, and that it is safest not to include this capability.} and +process the corresponding files. The processed contents of these +files are incorporated in the master {\tt -t} file. Messages are +printed out during the \Tib{} run and also messages ``{\tt \<file> +input by Tib}'' are printed out during the subsequent \TeX{} run. +\Tib{} will process a file {\it only\/} if a complete (relative or +absolute) path is given (it will attempt to append the {\tt.tex} +suffix to the name). In particular, it does not look through the {\tt +TEXINPUTS} environment. It assumes anything without a complete path +name is not a text file and should not be processed. If \Tib{} cannot +find a file, it prints out a message and leaves the {\tt\\input} +statement unaltered. If {\tt\\input} is part of a definition of a +macro in the text, \Tib{} will be confused, but not fatally; it will +leave the definition unchanged and the message it prints can be +ignored. However files which are input by means of the macro will not +be processed by \Tib. Indeed, to be safe, it is probably best to +prevent \Tib{} from processing macro files, even if they are in the +working directory; this can be accomplished by defining something else +as {\tt\\input} (e.g., {\tt\\INPUT}) and using that for non-text +files. + +\Tib{} incorporates any final blank lines and the usual final +`newline' in the {\tt\\input} file. This generally effects a new +paragraph after the material from the {\tt\\input} file. The new +paragraph can be avoided by eliminating any final blank lines and +either: (1) eliminating the final `newline' in the {\tt\\input} file +(not recommended), or (2) continuing the text (possibly a comment +character preceeded by at least one space) on the same line after the +``{\tt\\input \<file>}'' statement in the master file. + +\beginsection{.1} 8. Error and warning messages + +{{\parindent0pt\filbreak +\medskip{\tt Can't open index {\tt <}{\it indexname\/}{\tt>}} +{\par\leftskip1pc Index \<indexname> does not exist or not readable.\par} + +\filbreak\medskip{\tt command line:\ invalid switch +{\tt <}{\it switch\/}{\tt>}} +{\par\leftskip1pc \<switch> not a valid option on the call.\par} + +\filbreak\medskip{\tt Can't open {\tt <}{\it filename\/}{\tt>} or +{\tt <}{\it filename\/}{\tt>}.tex} +{\par\leftskip1pc Neither document file \<filename> nor \<filename>.tex is +available for reading.\par} + +\filbreak\medskip{\tt Cannot locate reference file {\tt <}{\it filename\/}{\tt>}} +{\par\leftskip1pc File of references \<filename> not available.\par} + +\filbreak\medskip{\tt {\tt <}{\it index\/}{\tt>} not up to date} +{\par\leftskip1pc One of the reference files antecedent to \<index> has been +changed since \<index> was made.\par} + +\filbreak\medskip{\tt word {\tt <}{\it word}{\tt>} not defined in +definition list} +{\par\leftskip1pc Misspelled word in reference file?\par} + +\filbreak\medskip{\tt bad brackets in string {\tt <}{\it string}{\tt>} in +references} +{\par\leftskip1pc Unmatched, or badly placed, pair of brackets \{\} in a +reference item has caused \Tib{} to get lost.\par} + +\filbreak\medskip{\tt word expected in definition} +{\par\leftskip1pc A undefined word exists in word-definition file.\par} + +\filbreak\medskip{\tt too many definitions} +{\par\leftskip1pc Word-definition file larger than limit set in source code. +Reset and recompile.\par} + +\filbreak\medskip{\tt out of storage} +{\par\leftskip1pc \Tib{} too big for system (either while making +word-definition list or while processing citations). Possibly have to use +smaller word-definition file.\par} + +\filbreak\medskip{\tt unexpected end of citation template} +{\par\leftskip1pc Citation template not complete.\par} + +\filbreak\medskip{\tt can't open temporary reference file} +{\par\leftskip1pc Work file cannot be opened---system or environment +problem.\par} + +\filbreak\medskip{\tt can't open temporary output file} +{\par\leftskip1pc Work file cannot be opened---system or environment +problem.\par} + +\filbreak\medskip{\tt can't open temporary output file for reading} +{\par\leftskip1pc Work file cannot be reopened---system or environment problem.\par} + +\filbreak\medskip{\tt ill formed reference} +{\par\leftskip1pc Bad reference item has caused \Tib{} to get lost.\par} + +\filbreak\medskip{\tt end of file reading citation} +{\par\leftskip1pc Probably {\tt.]} was omitted in document.\par} + +\filbreak\medskip{\tt citation too long} +{\par\leftskip1pc Too many keys, or keys too long (truncate to 6 letters).\par} + +\filbreak\medskip{\tt inconsistent citation found in pass two} +{\par\leftskip1pc \Tib{} found a reference earlier, now it can't---something +funny's going on.\par} + +\filbreak\medskip{\tt citation not found in pass two} +{\par\leftskip1pc \Tib{} found a reference earlier, now it can't---something +funny's going on.\par} + +\filbreak\medskip{\tt tibdex:\ can't open temporary output file} +{\par\leftskip1pc Work file cannot be opened---system or environment +problem.\par} + +\filbreak\medskip{\tt tibdex:\ error in open of {\tt <}{\it filename\/}{\tt>}} +{\par\leftskip1pc \<filename> doesn't exist or can't be read.\par} + +\filbreak\medskip{\tt tibdex:\ error in opening file for compression} +{\par\leftskip1pc Work file cannot be opened---system problem.\par} + +\filbreak\medskip{\tt ill formed reference file} +{\par\leftskip1pc Bad reference item has caused \Tib{} to get lost.\par} + +\filbreak\medskip{\tt too many references} +{\par\leftskip1pc Number of reference larger than limit set in source +code.\par} + +\filbreak\medskip{\tt locate:\ cannot open {\tt <}{\it filename\/}{\tt>}} +{\par\leftskip1pc \<filename> not available for reading in subroutine +{\it locate}.\par} + +\filbreak\medskip{\tt locate:\ no keys for citation} +{\par\leftskip1pc Empty citation discovered in subroutine {\it locate}.\par} + +\filbreak\medskip{\tt locate:\ insufficient space for references} +{\par\leftskip1pc \Tib{} too big for system---discovered in subroutine +{\it locate}.\par} + +\filbreak\medskip{\tt locate:\ first key ({\tt <}{\it keyname}{\tt>}) matched +too many refs} +{\par\leftskip1pc Put another key first in citation.\par} + +\filbreak\medskip{\tt tibdex:\ too many common words} +{\par\leftskip1pc Too many words in list of words not to be used as keys.\par} + +\filbreak\medskip{\tt no reference matching {\tt <}{\it citation}{\tt>}} +{\par\leftskip1pc Probably mistyped keyword.\par} + +\filbreak\medskip{\tt multiple references match {\tt <}{\it citation}{\tt>}} +{\par\leftskip1pc Need more keys in citation.\par} + +\filbreak\medskip{\tt end of file after \\input/\\include} +{\par\leftskip1pc Missing file name.\par} + +\filbreak\medskip{\tt \\input/\\include files nested too deeply} +{\par\leftskip1pc Nesting limited to a depth of 32 files.\par} + +\filbreak\medskip{\tt unable to locate file, assuming it has no +references} +{\par\leftskip1pc Cannot locate \\input/\\include file, and leaves +command unaltered.\par} + +\filbreak\medskip{\tt truncated following reference \dots} +{\par\leftskip1pc Reference too large and must be truncated.\par} + +\filbreak\medskip{\tt Warning:\ reference list not made -- .[] not encountered} +{\par\leftskip1pc A reference list is made where the symbols {\tt.[]} begin a +line.\par} +} +\filbreak\bigskip} +Finally there is the possibility the \Tib{} output file will cause a +\TeX{} error. It may be that a reference item does not have the +right format (e.g.\ unmatched braces). In many cases a quick fix may be +possible in the \Tib{} output file. If something goes completely +haywire, a reserved control string may have been inadverdently redefined. +There is also the possibility +that \TeX{} will run out of room (see {\it The \TeX book}, p.~300), +most likely because there are too many macros that +are too big. The macros that \Tib{} creates are not particularly +space efficient. None the less, they seem to have no trouble +coexisting with the macros of \LaTeX{} or \AmSTeX. However, these +macros together with a collection of private macros may be too much. +In this regard, see {\it The \TeX book}, appendix~D.4. It is also +true that there is much room for compactification in the macros +\Tib{} creates. In particular, for any particular input document, many of +the macros are probably not used and can be physically eliminated +from the appropriate {\it .ttx\/} files. + +It is hoped, however, that all your \TeX nical referencing is +trouble-free and that you never have read this section. +\filbreak +\bigskip +\centerline{\bf Disclaimer} +\medskip +{\narrower\narrower In no event will the author be liable for any +damages, including any lost profits, or other incidental or +consequential damages arising out the use of or inability to use this +program, even if the author has been advised of the possibility of such +damages, or for any claim by any other party.\par} +\filbreak + +\beginsection{.3}A1. Appendix: the example document + +\bigskip +{\tt\obeylines\obeyspaces\indent% +\% EXAMPLE PAGE FOR TIB -- FOR USE WITH test.refs +\% +\% For plain TeX:\ adjust \\vglue just below if necessary. +\% For footnotes (demo.6.p) comment out (\%) the line "\\vsize ..." +\% just below and the line near the end beginning ".[]". +\% +\% For LaTeX, comment out (\%) the line "\\vsize ..." just below +\% and activate the three indicated lines.\ \ Also activate the +\% line "\\end\{document\}" near the end.\ \ For footnotes (demo.6.l) +\% comment out the second of the three lines and the line near +\% the end beginning ".[]". +\% +\% next line for plain TeX +\\vsize10.3truein\\nopagenumbers\\vglue-.5truein\% adjust \\vglue if necessary +\% +\% next 3 lines for LaTeX +\%\\documentstyle\{article\}\\textwidth6.5truein\\nofiles\\oddsidemargin=0truein +\%\\pagestyle\{empty\}\\textheight10.3truein\\topmargin=-.7truein +\%\\begin\{document\} +\\centerline\{\\bf Example Test Page\}\\smallskip +This example shows a citation for a book,[.griswold poage polonsky.] +a journal article,[.dieck.]\ a conference paper,[.lerch crustal.] +a technical report,[.lerch patel.]\ an article in a book,[.hoare engeler.] +and something that fits in no category.[.reagan.]\ \ Multiple citations +[.brooks, hoare engeler.]\ look like this---or this,\% +[.brooks.].[.hoare engeler.]\ \ A run of citations [.derham, sra, knuth, tassel.] +can sometimes be hyphenated.\ \ The alternate citation style, for referring to +reference <.knuth.> in running text, is different.\ \ Extra text can be +inserted in citations.[.griswold poage polonsky <, chap.\catcode`\~12{~}2>.]\ \ Translations +can be referenced.[.arnold equations, arnold singularities,gantmacher.] +If necessary, letters are appended to citations to remove ambiguities. +If desired, citations can be sorted by any of several templates.[.lerch +crustal,lerch putney,hoare elba,hoare engeler.]\ \ If there are no authors, +editors are used instead;[.peitgen walther.]\ if there are also no editors, the +publishing institution is used.[.sra.]\ \ Sorting and citation creation is +based on the first capital letter in the last name.[.tassel,dieck,derham.] +Special strings can be part of references [.tex,momentum harmonic,derham,rapp.] +and special citation strings can be used.[.sra.]\ \ Also note +the performance of the abbreviation routine.[.thompson,peitgen.] +.[]\\smallskip\\centerline\{\\bf References\}\\smallskip \%comment out for footnotes +\%\\end\{document\} \%LaTeX +\\bye \%plain TeX +\par} + +%Insert local changes below after removing `%' from next line. +%beginsection{.3}A2. Appendix: local changes + +%Leave blank line before insertions. +\bye%After insertions |