././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.958714 pybtex-0.24.0/0000755000175000001440000000000000000000000012657 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912656.1528254 pybtex-0.24.0/CHANGES0000644000175000001440000004217700000000000013665 0ustar00agusers00000000000000Version 0.24.0 -------------- (released on January 17, 2021) **This is the last version that supports Python 2. The next version will require Python 3.6 or above.** - Added support for ``sup`` and ``sub`` tags to LaTeX and Markdown backends. - Added support for ``@online`` entries and the ``urldate`` field. - Restored compatibility with Python 2. - Fixed tests on Windows. - Fixed bugs in the example plugin. - Fixed bad ``get_default_encoding()`` call. Thanks to Matthias Troffaes for his contributions! Version 0.23.0 -------------- (released on October 12, 2020) - Reimplemented :py:class:`~pybtex.utils.OrderedCaseInsensitiveDict` using :py:class:`python:collections.OrderedDict` (so it has a __delitem__). - ``unsrt.py`` now supports type when formatting phdthesis. - Added :py:meth:`~pybtex.database.BibliographyData.from_string` to :py:class:`pybtex.database.BibliographyData`. - Added :py:meth:`~pybtex.database.Entry.from_string` and :py:meth:`~pybtex.database.Entry.to_string` to :py:class:`pybtex.database.Entry`. - Added indentation to ``__repr__`` in :py:class:`pybtex.database.BibliographyData` and :py:class:`pybtex.database.Entry`. - Preserve order in :py:meth:`pybtex.utils.OrderedCaseInsensitiveDict.__repr__`. - Fixed entries with duplicate keys being removed during sorting. - Fixed handling of duplicate person fields - Use :py:mod:`~xml.etree.ElementTree` instead of the deprecated ``cElementTree``. - Import base classes from :py:mod:`python:collections.abc` instead of :py:mod:`python:collections`. - Use ``__iter__`` instead of deprecated ``Element.getchildren()``. Thanks to David Chiang, Jerry James, Jannik Schürg, Nathaniel Starkman, and Matthias Troffaes for their fixes and improvements! Version 0.22.2 -------------- (released on January 17, 2019) - Fixed compatibility with Python 2 and older versions of Python 3. Version 0.22.1 -------------- (released on January 16, 2019) - Fixed non-working ``--backend`` option with ``pybtex -l python``. Version 0.22.0 -------------- (released on November 18, 2018) - Fixed handling of duplicate fields in ``.bib`` biles. Thanks, Jannik Schürg! - BibTeX parser is now up to 10% faster on some files. Thanks, Fabrice Benhamouda! - Fixed parsing of names with ``\~`` characters. - Fixed formatting proceedings without an ``editor`` field in ``unsrt.py``. - In case of too many braces in a BibTeX string, ``PybtexSyntaxError`` is now raised instead of ``RecursionError``. - Dropped ``2to3``, made the code compatible with both Python 2 and 3 with Six_. - Moved tests outside of the ``pybtex`` package. - Fixed searching in docs with recent versions of Sphinx_. - API: renamed ``bibtex.BibTeXEntryIterator`` to ``bibtex.LowLevelParser`` for clarity. - API: removed confusing usage of ``Person.text`` in ``tempate.names``. - API: ``Entry.fields`` does not automagically look for cross-referenced entries anymore. .. _Six: https://pypi.org/project/six/ .. _Sphinx: http://sphinx-doc.org/ Version 0.21 ------------ (released on January 20, 2017) - BibTeX writer now uses latexcodec_ to encode characters that are not directly supported by the output encoding. Thanks, Hong Xu! - HTML backend: {braced stings} are now wrapped with ```` to enable custom CSS styling. - ``unsrt.py``: DOI, PubMed and Arxiv links now use HTTPS instead of HTTP. - ``unsrt.py``: URLs with percent characters are now formatted correctly. - ``unsrt.py``: short page / volume / chapter numbers are now joined with a non-breaking space, like in BibTeX. - ``unsrt.py``: ``inbook`` now uses the ``editor`` field if the ``author`` field is missing, like in BibTeX. - ``unsrt.py``: the words "volume" and "pages" in the beginning of the sentence are now capitalized, like in BibTeX. - ``unsrt.py``: removed unnecessary period between the book title and the comma in ``inbook``. Version 0.20.1 -------------- (released on March 17, 2016) - LaTeX backend: fix encoding tilde (``"~"``) characters with newer versions of latexcodec_. - Fix splitting names with escaped space (``"\ "``) characters. Version 0.20 ------------ (released on March 10, 2016) - YAML reader and writer now preserve the order of bibliography entries. - Improved URL formatting in pythonic styles. - Built-in pythonic styles now support the ``ISBN`` field. - Pythonic styles now treat LaTeX braces correctly: - case conversion does not affect {braced substrings}, - braces are stripped from non-LaTeX output: ``"{P}ython"`` becomes ``"Python"``. - Pythonic styles now use latexcodec_ to decode LaTeX markup. For example, ``"Schr\"odinger"`` is now correctly rendered as ``"Schrödinger"`` in HTML or plain text. Thanks to Hong Xu for his contributions! .. _latexcodec: https://github.com/mcmtroffaes/latexcodec/ Version 0.19 ------------ (released on October 26, 2015) - Added Markdown output format (contributed by Jorrit Wronski). - Incorrectly formatted author and editor names now result in warnings instead of errors, unless ``--strict`` mode is enabled. - Fixed HTML escaping. - Fixed parsing nested ``.aux`` files. - Fixed splitting names separated by non-lowercase ``" and "``. - Fixed line numbers in error messages when parsing strings with DOS/Windows line breaks. - Fixed compatibility with BibTeX when parsing certain weird "von" names. - Removed excessive trailing newline from ``.bib`` output. - Text wrapping now works exactly as in BibTeX. - Added new API for :doc:`reading and writing bibliography data `. - Pythonic styles: reworked and extended the :ref:`rich text API `. - Pythonic styles: added ``strong``, ``i``, ``b``, ``tt`` tags, renamed the old ``emph`` tag to ``em``. - Pythonic styles: the ``author_year_title`` style now returns ``""`` instead of ``None`` (fixes unorderable types error in Python 3). - Ported the documentation_ to Sphinx_. Thanks to Jorrit Wronski and Matthias Troffaes for their fixes and improvements! .. _documentation: https://docs.pybtex.org/ .. _Sphinx: http://sphinx-doc.org/ Version 0.18 ------------ (released on July 6, 2014) - Pybtex is now fully case-insensitive (like BibTeX). As a consequence, IEEEtran styles now work correctly. - Added ``--preserve-case`` option to ``pybtex-convert`` (default behavior is to converted all identifiers to lower case). - An error is reported if two citations have the same key but different case, like in BibTeX. (Example: ddt1999 and DDT1999). - Fixed parsing unused bibliography entries with strings containing ``@`` characters. - ``entry.max$`` constant is now set to 250, ``global.max$`` is set to 20000, like in BibTeX. - Added ``--strict`` option to ``pybtex-convert`` and ``pybtex-format`` (turns warning into errors). - Strict mode is now enabled by default when using pybtex as a library (exceptions are raised on all errors instead of just printing warnings to stderr). Non-strict error handling is still enabled when using pybtex from the command line, for compatibility with BibTeX. Use ``--strict`` option if you don't like this. - Added missing ``pybtex-format`` manpage. Version 0.17 ------------ (released on March 10, 2014) - Added ``pybtex-format`` utility for formatting bibliography files as HTML, LaTeX, and other supported human-readable formats. - Added ``--strict`` command line option to ``pybtex`` (all warnings become errors). - Added ``alpha`` label style, and ``alpha`` and ``unsrtalpha`` formatting styles. - Added support for ``url``, ``eprint``, ``doi``, and ``pubmed`` fields in ``unsrt`` style. - Names with hyphens are now abbreviated correctly ("Jean-Baptiste" becomes "J.-B."). - ``width$`` now uses cmr10 font metrics, like in BibTeX. Non-latin characters are also supported. - Pythonic style engine now supports ``@preamble`` commands. - Warning on missing fields are now more human-readable. - When writing BibTeX files, put entry key on the same line with entry type. Fixes warnings in Jabref. - When using multiple ``.bib`` files, macros defined in earlier files are available in subsequent ones (like in BibTeX). - Fixed parsing ``.bst`` files with lines consisting of a single ``%`` character. - Fixed sorting entries without author in ``author_year_title`` sorting style. - Fixed broken ``CaseInsensitiveDict.get()``. - ``CaseInsensitiveDict`` is now pickleable. - Added support for registering plugins at runtime with ``pybtex.plugin.register_plugin()`` - useful for using pybtex as a library. Many thanks to Matthias C. M. Troffaes for his numerous fixes and improvements! Version 0.16 ------------ (released on March 17, 2012) - BibTeX ``.bib`` and ``.bst`` parsers were completely rewritten. They are now much faster and more BibTeX-compatible. - Syntax errors and undefined strings in ``.bib`` files now result in warnings instead of errors, like in BibTeX. - Unused entries in ``.bib`` files are now skipped, like in BibTeX. - The case of entry keys is now preserved (in previous versions they were converted to lowercase). - Pythonic style engine now supports sorting. - Pythonic style engine: fixed nested optional() blocks. - Fixed parsing of some names with a Last part but no von part. - Fixed processing of brace-level-one "special characters" in ``purify$`` BibTeX built-in function. - Added proper error messages on encoding errors in .bib files. - The default encoding is now UTF-8 on all platforms. - ``pybtex-convert`` now preserves the order of entries in BibTeX and BibTeXML files. The following changes were contributed by Matthias C. M. Troffaes: - Fixed first_of behavior when non-empty child is followed by a child that has a missing field. - Fixed crossref lookups when key is not lower case. - Completed unsrt and plain python styles: they now contain all entry types. - Added doctree backend for rendering into a tree of docutils nodes. - Added support for non-string backends. Version 0.15 ------------ (released on February 1, 2011) - Changed license from GPL-3 to MIT. - Added support for :doc:`setuptools plugins `. - BibTeX parser: fixed whitespace normalization in concatenated strings. - BibTeX parser: when parsing multiple BibTeX files, macros defined in earlier files are now available to all subsequent files, like in BibTeX. - BibTeX ``.bst`` interpreter now prints warnings on missing entries, like BibTeX, instead of raising a ``KeyError``. - ``call.type$`` BibTeX built-in function now uses ``default.entry`` for unknown entry types, like in BibTeX. - ``substring$`` now accepts ``start=0`` and returns an empty string. - ``change.case$``: fixed incorrect formatting of strings starting with special characters with ``"t"`` format. - Fixed abbreviation of names starting with special characters or non-alphabetic characters. - Fixed incorrect entry order and duplicated entries with ``\nocite{*}``. - Added more detailed error messages for already defined variables in ``.bst`` files. Version 0.14.1 -------------- (released on September 30, 2010) - Added missing ``custom_fixers`` directory to the tarball --- needed only for converting the sources to Python 3. Version 0.14 ------------ (released on September 20, 2010) - BibTeX writer: fixed quoting ``"`` (double quote) characters. - BibTeX parser now produces human-readable error messages on unread macros. - Added error messages on missing data in ``.aux`` files. - Improved performance on very long name lists. - Added support for Python 3. Version 0.13.2 -------------- (released on February 26, 2010) - BibTeX parser: fixed a bug with parsing strings containing braces, like ``"Error in {DNA}"``. Version 0.13.1 -------------- (released on February 18, 2010) - Fixed ``ImportError: No module named kpathsea`` errors. One of the source files was missing from ``pybtex-0.13.tar.bz2`` for some strange reason. Sorry about that. ;) Version 0.13 ------------ (released on February 14, 2010) - Implemented ``--min-crossrefs`` option. - All command line options of the original BibTeX are not supported. - Pybtex now respects ``BSTINPUTS``, ``BIBINPUTS`` and ``TEXMFOUTPUT`` environment variables. - BibTeX bibliography parser now strips excessive whitespace from fields, like BibTeX does. Version 0.12 ------------ (released on November 21, 2009) - Pybtex now works correctly with ``\input{filename}`` in LaTeX files. - Added a proper ``change.case$`` BibTeX function instead of a stub. - Added ``-e``/``--encoding`` command line option. - Fixed non-working ``--bibtex-encoding`` option. - Added proper error messages on missing plugins, file IO errors, some BibTeX interpreter errors, etc. - Fallback to backslash-encoding when printing messages to the console - to make them printable regardless of the locale. Version 0.11 ------------ (released on September 7, 2009) - Made ``text.lentgh$`` and ``text.prefix$`` BibTeX built-in functions treat braces and TeX special characters properly (like the original BibTeX functions do). - Changed ``purify$`` to replace ties and hyphens by spaces. - Fixed a bug in ``substring$`` with negative start values. - Fixed .bst file grammar to allow underscores in identifiers. - BibTeX name parser: ties are now treated as whitespace when splitting name parts. - Implemented BibTeX-like text wrapping. The resulting .bbl output should now be byte-for-byte identical to that of BibTeX in most cases. Version 0.10 ------------ (released on August 24, 2009) - Added support for multiple bibliography databases. - Pythonic bibliography formatter: added helper functions to simplify writing BibTeX-like name formatting styles in Python. Added a tool for automatic conversion of BibTeX ``{ll}{, ff}``-like patterns into Python. - BibTeX parser: added missing characters to the caracter set of the valid identifiers. - BibTeX parser: a comma is now allowed between the last field and the closing brace. - BibTeX name parser: when splitting name parts into words, whitespace at brace level > 0 is now ignored. - BibTeX name parser: fixed parsing of single-word lowercase names and complex von names, like in "Andrea de Leeuw van Weenen". - Fixed broken ``--label-style`` and ``--name-style`` options. - Added (autogenerated) manpages. - Added this changelog. Version 0.9 ----------- (released on August 17, 2009) - Implemented ``\citation{*}``. - Implemented crossrefs. - BibTeX ``.bib`` parser now supports newlines inside strings. - Fixed: ``.bib`` filename from ``.aux`` file was ignored. - Fixed incorrect argument passing to codecs.open(). - Fixed incorrect whitespace handling in the name parsing code. Version 20090402 ---------------- (released on February 04, 2009) - Fixed yet more encoding-related bugs. - Cleaned up some old nasty code, updated the documentation, added more tests. Version 20080918 ---------------- (released on September 18, 2008) - Added HTML backend. The pythonic bibliography formatter can now produce LaTeX, HTML, and plaintext. - BibTeXML writer now indents the resulting XML. - Removed the dependency on external elementtree. - Improved the interface of the ``pybtex-convert`` script. It is just ``convert foo.bib foo.yaml`` now. - Fixed several bugs in the BibTeX interpreter. - Fixed several encoding-related bugs. Version 20070513 ---------------- (released on May 13, 2007) - Added an interpreter for the BibTeX stack language. Pybtex now supports BibTeX style files. - Added a YAML bibliography format (both input and output). - Improved processing of names with {braces}. - Added support for ``@preamble`` to both BibTeX parser and writer. - Introduced an experimental pythonic template language to make bibliography formatting easier with a more functional-oriented approach. - Added support for incollection entries to the experimentl pythonic bibliography style. - cElementTree is now used for BibTeXML parsing, if present. - Added some documentation files (finally). Version 20060416 ---------------- (released on April 16, 2006) - Added BibTeX and BibTeXML formatters for bibliography databases. Added a database conversion tool. - Improved name splitting in the BibTeX parser. - Locale encoding is now used by default. - Added ``richtext.Check`` class to simplify formatting of optional bibliography fields. - Added support for booklet and inbook entry types to the experimentl pythonic bibliography style. Version 20060402 ---------------- (released on April 2, 2006) - Added initial Unicode support and input/output encodings. - Introduced output backends to make bibliography styles markup-independent. Added LaTeX and Plaintext backends. - Improved BibTeXML parser, add support for pre-parsed names (````, ```` and so on). - Added default macros for month names to the BibTeX parser. - Added an experimental ``richtext.Phrase`` (former ``Pack`` class (former ``Packer`` class)) class to make creating sentences and delimited lists easier. - Added experimental support for pluggable name and label styles to the pythonic bibliogrphy formatter. - Made Pybtex work on Windows by renaming aux.py to auxfile.py. Duh. Version 0.1 ----------- (released on March 4, 2006) Initial release. This version already has a basic BibTeX .bib parser, BibTeXML parser and a proof-of-concept pythonic bibliography formatter. ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5226126 pybtex-0.24.0/COPYING0000644000175000001440000000205100000000000013710 0ustar00agusers00000000000000Copyright (c) 2006-2016 Andrey Golovizin Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5216126 pybtex-0.24.0/MANIFEST.in0000644000175000001440000000146400000000000014422 0ustar00agusers00000000000000include MANIFEST.in include examples/xampl.bib examples/xampl.bibtexml examples/xampl.yaml examples/xampl.tex include examples/tugboat/tugboat.aux examples/tugboat/tugboat.bib examples/tugboat/README include examples/make.sh include COPYING CHANGES include tox.ini test_requirements.txt include docs/generate_manpages.py docs/Makefile docs/make.bat recursive-include tests/data *.bst *.bib *.bbl *.aux include docs/source/conf.py docs/site/conf.py recursive-include docs/source *.rst recursive-include docs/site *.rst include docs/theme/theme.conf docs/theme/layout.html docs/theme/*.json docs/theme/*.js recursive-include docs/theme/css-src *.css recursive-include docs/theme/static *.css recursive-include docs/pybtex_doctools *.py recursive-include docs/man1 *.1 recursive-include examples/sample_plugins *.py README ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.959714 pybtex-0.24.0/PKG-INFO0000644000175000001440000000432600000000000013761 0ustar00agusers00000000000000Metadata-Version: 2.1 Name: pybtex Version: 0.24.0 Summary: A BibTeX-compatible bibliography processor in Python Home-page: https://pybtex.org/ Author: Andrey Golovizin Author-email: ag@sologoc.com License: MIT Project-URL: Documentation, https://docs.pybtex.org/ Project-URL: Code, https://bitbucket.org/pybtex-devs/pybtex Project-URL: Issue tracker, https://bitbucket.org/pybtex-devs/pybtex/issues Description: BibTeX-compatible bibliography processor in Python ================================================== Synopsis -------- :: latex foo.tex pybtex foo.aux latex foo.tex latex foo.tex Description ----------- Pybtex reads citation information from a file and produces a formatted bibliography. BibTeX style files are supported. Alternatively it is possible to write styles in Python. Pybtex currently understands the following bibliography formats: - BibTeX - BibTeXML - YAML-based format The resulting bibliography may be output in one of the following formats (not supported by legacy BibTeX styles): - LaTeX - HTML - markdown - plain text See also -------- - `Home page `_ - `Pybtex at Bitbucket `_ - `Pybtex at PyPI `_ Platform: platform-independent Classifier: Development Status :: 4 - Beta Classifier: Environment :: Console Classifier: Intended Audience :: End Users/Desktop Classifier: License :: OSI Approved :: MIT License Classifier: Operating System :: OS Independent Classifier: Programming Language :: Python Classifier: Programming Language :: Python :: 2 Classifier: Programming Language :: Python :: 3 Classifier: Topic :: Text Processing :: Markup :: LaTeX Classifier: Topic :: Text Processing :: Markup :: XML Classifier: Topic :: Utilities Requires-Python: >=2.7,!=3.0.*,!=3.1.*,!=3.2.* Provides-Extra: test ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.570612 pybtex-0.24.0/README0000644000175000001440000000152200000000000013537 0ustar00agusers00000000000000BibTeX-compatible bibliography processor in Python ================================================== Synopsis -------- :: latex foo.tex pybtex foo.aux latex foo.tex latex foo.tex Description ----------- Pybtex reads citation information from a file and produces a formatted bibliography. BibTeX style files are supported. Alternatively it is possible to write styles in Python. Pybtex currently understands the following bibliography formats: - BibTeX - BibTeXML - YAML-based format The resulting bibliography may be output in one of the following formats (not supported by legacy BibTeX styles): - LaTeX - HTML - markdown - plain text See also -------- - `Home page `_ - `Pybtex at Bitbucket `_ - `Pybtex at PyPI `_ ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912831.9487143 pybtex-0.24.0/docs/0000755000175000001440000000000000000000000013607 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.569612 pybtex-0.24.0/docs/Makefile0000644000175000001440000001662100000000000015255 0ustar00agusers00000000000000# makefile for sphinx documentation # # you can set these variables from the command line. sphinxopts = sphinxbuild = sphinx-build paper = builddir = build # user-friendly check for sphinx-build ifeq ($(shell which $(sphinxbuild) >/dev/null 2>&1; echo $$?), 1) $(error the '$(sphinxbuild)' command was not found. make sure you have sphinx installed, then set the sphinxbuild environment variable to point to the full path of the '$(sphinxbuild)' executable. alternatively you can add the directory with the executable to your path. if you don't have sphinx installed, grab it from http://sphinx-doc.org/) endif # internal variables. paperopt_a4 = -d latex_paper_size=a4 paperopt_letter = -d latex_paper_size=letter allsphinxopts = -d $(builddir)/doctrees $(paperopt_$(paper)) $(sphinxopts) source sitesphinxopts = -d $(builddir)/site-doctrees $(paperopt_$(paper)) $(sphinxopts) site # the i18n builder cannot share the environment and doctrees with the others i18nsphinxopts = $(paperopt_$(paper)) $(sphinxopts) source .PHONY: help clean html site dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext upload-docs upload-site upload help: @echo "please use \`make ' where is one of" @echo " html to make standalone html files" @echo " dirhtml to make html files named index.html in directories" @echo " singlehtml to make a single large html file" @echo " pickle to make pickle files" @echo " json to make json files" @echo " htmlhelp to make html files and a html help project" @echo " qthelp to make html files and a qthelp project" @echo " devhelp to make html files and a devhelp project" @echo " epub to make an epub" @echo " latex to make latex files, you can set paper=a4 or paper=letter" @echo " latexpdf to make latex files and run them through pdflatex" @echo " latexpdfja to make latex files and run them through platex/dvipdfmx" @echo " text to make text files" @echo " man to make manual pages" @echo " texinfo to make texinfo files" @echo " info to make texinfo files and run them through makeinfo" @echo " gettext to make po message catalogs" @echo " changes to make an overview of all changed/added/deprecated items" @echo " xml to make docutils-native xml files" @echo " pseudoxml to make pseudoxml-xml files for display purposes" @echo " linkcheck to check all external links for integrity" @echo " doctest to run all doctests embedded in the documentation (if enabled)" clean: rm -rf $(builddir)/* html: $(sphinxbuild) -b html $(allsphinxopts) $(builddir)/html @echo @echo "build finished. the html pages are in $(builddir)/html." site: $(sphinxbuild) -b html $(sitesphinxopts) $(builddir)/site @echo @echo "build finished. the site pages are in $(builddir)/site." dirhtml: $(sphinxbuild) -b dirhtml $(allsphinxopts) $(builddir)/dirhtml @echo @echo "build finished. the html pages are in $(builddir)/dirhtml." singlehtml: $(sphinxbuild) -b singlehtml $(allsphinxopts) $(builddir)/singlehtml @echo @echo "build finished. the html page is in $(builddir)/singlehtml." pickle: $(sphinxbuild) -b pickle $(allsphinxopts) $(builddir)/pickle @echo @echo "build finished; now you can process the pickle files." json: $(sphinxbuild) -b json $(allsphinxopts) $(builddir)/json @echo @echo "build finished; now you can process the json files." htmlhelp: $(sphinxbuild) -b htmlhelp $(allsphinxopts) $(builddir)/htmlhelp @echo @echo "build finished; now you can run html help workshop with the" \ ".hhp project file in $(builddir)/htmlhelp." qthelp: $(sphinxbuild) -b qthelp $(allsphinxopts) $(builddir)/qthelp @echo @echo "build finished; now you can run "qcollectiongenerator" with the" \ ".qhcp project file in $(builddir)/qthelp, like this:" @echo "# qcollectiongenerator $(builddir)/qthelp/pybtex.qhcp" @echo "to view the help file:" @echo "# assistant -collectionfile $(builddir)/qthelp/pybtex.qhc" devhelp: $(sphinxbuild) -b devhelp $(allsphinxopts) $(builddir)/devhelp @echo @echo "build finished." @echo "to view the help file:" @echo "# mkdir -p $$home/.local/share/devhelp/pybtex" @echo "# ln -s $(builddir)/devhelp $$home/.local/share/devhelp/pybtex" @echo "# devhelp" epub: $(sphinxbuild) -b epub $(allsphinxopts) $(builddir)/epub @echo @echo "build finished. the epub file is in $(builddir)/epub." latex: $(sphinxbuild) -b latex $(allsphinxopts) $(builddir)/latex @echo @echo "build finished; the latex files are in $(builddir)/latex." @echo "run \`make' in that directory to run these through (pdf)latex" \ "(use \`make latexpdf' here to do that automatically)." latexpdf: $(sphinxbuild) -b latex $(allsphinxopts) $(builddir)/latex @echo "running latex files through pdflatex..." $(make) -c $(builddir)/latex all-pdf @echo "pdflatex finished; the pdf files are in $(builddir)/latex." latexpdfja: $(sphinxbuild) -b latex $(allsphinxopts) $(builddir)/latex @echo "running latex files through platex and dvipdfmx..." $(make) -c $(builddir)/latex all-pdf-ja @echo "pdflatex finished; the pdf files are in $(builddir)/latex." text: $(sphinxbuild) -b text $(allsphinxopts) $(builddir)/text @echo @echo "build finished. the text files are in $(builddir)/text." man: $(sphinxbuild) -b man $(allsphinxopts) $(builddir)/man @echo @echo "build finished. the manual pages are in $(builddir)/man." texinfo: $(sphinxbuild) -b texinfo $(allsphinxopts) $(builddir)/texinfo @echo @echo "build finished. the texinfo files are in $(builddir)/texinfo." @echo "run \`make' in that directory to run these through makeinfo" \ "(use \`make info' here to do that automatically)." info: $(sphinxbuild) -b texinfo $(allsphinxopts) $(builddir)/texinfo @echo "running texinfo files through makeinfo..." make -c $(builddir)/texinfo info @echo "makeinfo finished; the info files are in $(builddir)/texinfo." gettext: $(sphinxbuild) -b gettext $(i18nsphinxopts) $(builddir)/locale @echo @echo "build finished. the message catalogs are in $(builddir)/locale." changes: $(sphinxbuild) -b changes $(allsphinxopts) $(builddir)/changes @echo @echo "the overview file is in $(builddir)/changes." linkcheck: linkcheck-site linkcheck-docs linkcheck-docs: $(sphinxbuild) -b linkcheck $(allsphinxopts) $(builddir)/linkcheck @echo @echo "link check complete; look for any errors in the above output " \ "or in $(builddir)/linkcheck/output.txt." linkcheck-site: $(sphinxbuild) -b linkcheck $(sitesphinxopts) $(builddir)/linkcheck @echo @echo "link check complete; look for any errors in the above output " \ "or in $(builddir)/linkcheck/output.txt." doctest: $(sphinxbuild) -b doctest $(allsphinxopts) $(builddir)/doctest @echo "testing of doctests in the sources finished, look at the " \ "results in $(builddir)/doctest/output.txt." xml: $(sphinxbuild) -b xml $(allsphinxopts) $(builddir)/xml @echo @echo "build finished. the xml files are in $(builddir)/xml." pseudoxml: $(sphinxbuild) -b pseudoxml $(allsphinxopts) $(builddir)/pseudoxml @echo @echo "build finished. the pseudo-xml files are in $(builddir)/pseudoxml." # https://pybtex.org/ stuff RSYNC = rsync -rv --delete RSYNC_SERVER = www-pybtex@pybtex.org upload-docs: html $(RSYNC) $(builddir)/html/ $(RSYNC_SERVER):docs/html/ upload-site: site $(RSYNC) $(builddir)/site/ $(RSYNC_SERVER):www/html/ upload: upload-site upload-docs ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.569612 pybtex-0.24.0/docs/generate_manpages.py0000755000175000001440000000025000000000000017626 0ustar00agusers00000000000000#!/usr/bin/env python from os import path from pybtex_doctools.man import generate_manpages if __name__ == '__main__': generate_manpages(path.dirname(__file__)) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5496123 pybtex-0.24.0/docs/make.bat0000644000175000001440000001506600000000000015224 0ustar00agusers00000000000000@ECHO OFF REM Command file for Sphinx documentation if "%SPHINXBUILD%" == "" ( set SPHINXBUILD=sphinx-build ) set BUILDDIR=build set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% source set I18NSPHINXOPTS=%SPHINXOPTS% source if NOT "%PAPER%" == "" ( set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS% set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS% ) if "%1" == "" goto help if "%1" == "help" ( :help echo.Please use `make ^` where ^ is one of echo. html to make standalone HTML files echo. dirhtml to make HTML files named index.html in directories echo. singlehtml to make a single large HTML file echo. pickle to make pickle files echo. json to make JSON files echo. htmlhelp to make HTML files and a HTML help project echo. qthelp to make HTML files and a qthelp project echo. devhelp to make HTML files and a Devhelp project echo. epub to make an epub echo. latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter echo. text to make text files echo. man to make manual pages echo. texinfo to make Texinfo files echo. gettext to make PO message catalogs echo. changes to make an overview over all changed/added/deprecated items echo. xml to make Docutils-native XML files echo. pseudoxml to make pseudoxml-XML files for display purposes echo. linkcheck to check all external links for integrity echo. doctest to run all doctests embedded in the documentation if enabled goto end ) if "%1" == "clean" ( for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i del /q /s %BUILDDIR%\* goto end ) %SPHINXBUILD% 2> nul if errorlevel 9009 ( echo. echo.The 'sphinx-build' command was not found. Make sure you have Sphinx echo.installed, then set the SPHINXBUILD environment variable to point echo.to the full path of the 'sphinx-build' executable. Alternatively you echo.may add the Sphinx directory to PATH. echo. echo.If you don't have Sphinx installed, grab it from echo.http://sphinx-doc.org/ exit /b 1 ) if "%1" == "html" ( %SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html if errorlevel 1 exit /b 1 echo. echo.Build finished. The HTML pages are in %BUILDDIR%/html. goto end ) if "%1" == "dirhtml" ( %SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml if errorlevel 1 exit /b 1 echo. echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml. goto end ) if "%1" == "singlehtml" ( %SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml if errorlevel 1 exit /b 1 echo. echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml. goto end ) if "%1" == "pickle" ( %SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle if errorlevel 1 exit /b 1 echo. echo.Build finished; now you can process the pickle files. goto end ) if "%1" == "json" ( %SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json if errorlevel 1 exit /b 1 echo. echo.Build finished; now you can process the JSON files. goto end ) if "%1" == "htmlhelp" ( %SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp if errorlevel 1 exit /b 1 echo. echo.Build finished; now you can run HTML Help Workshop with the ^ .hhp project file in %BUILDDIR%/htmlhelp. goto end ) if "%1" == "qthelp" ( %SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp if errorlevel 1 exit /b 1 echo. echo.Build finished; now you can run "qcollectiongenerator" with the ^ .qhcp project file in %BUILDDIR%/qthelp, like this: echo.^> qcollectiongenerator %BUILDDIR%\qthelp\Pybtex.qhcp echo.To view the help file: echo.^> assistant -collectionFile %BUILDDIR%\qthelp\Pybtex.ghc goto end ) if "%1" == "devhelp" ( %SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp if errorlevel 1 exit /b 1 echo. echo.Build finished. goto end ) if "%1" == "epub" ( %SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub if errorlevel 1 exit /b 1 echo. echo.Build finished. The epub file is in %BUILDDIR%/epub. goto end ) if "%1" == "latex" ( %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex if errorlevel 1 exit /b 1 echo. echo.Build finished; the LaTeX files are in %BUILDDIR%/latex. goto end ) if "%1" == "latexpdf" ( %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex cd %BUILDDIR%/latex make all-pdf cd %BUILDDIR%/.. echo. echo.Build finished; the PDF files are in %BUILDDIR%/latex. goto end ) if "%1" == "latexpdfja" ( %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex cd %BUILDDIR%/latex make all-pdf-ja cd %BUILDDIR%/.. echo. echo.Build finished; the PDF files are in %BUILDDIR%/latex. goto end ) if "%1" == "text" ( %SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text if errorlevel 1 exit /b 1 echo. echo.Build finished. The text files are in %BUILDDIR%/text. goto end ) if "%1" == "man" ( %SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man if errorlevel 1 exit /b 1 echo. echo.Build finished. The manual pages are in %BUILDDIR%/man. goto end ) if "%1" == "texinfo" ( %SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo if errorlevel 1 exit /b 1 echo. echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo. goto end ) if "%1" == "gettext" ( %SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale if errorlevel 1 exit /b 1 echo. echo.Build finished. The message catalogs are in %BUILDDIR%/locale. goto end ) if "%1" == "changes" ( %SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes if errorlevel 1 exit /b 1 echo. echo.The overview file is in %BUILDDIR%/changes. goto end ) if "%1" == "linkcheck" ( %SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck if errorlevel 1 exit /b 1 echo. echo.Link check complete; look for any errors in the above output ^ or in %BUILDDIR%/linkcheck/output.txt. goto end ) if "%1" == "doctest" ( %SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest if errorlevel 1 exit /b 1 echo. echo.Testing of doctests in the sources finished, look at the ^ results in %BUILDDIR%/doctest/output.txt. goto end ) if "%1" == "xml" ( %SPHINXBUILD% -b xml %ALLSPHINXOPTS% %BUILDDIR%/xml if errorlevel 1 exit /b 1 echo. echo.Build finished. The XML files are in %BUILDDIR%/xml. goto end ) if "%1" == "pseudoxml" ( %SPHINXBUILD% -b pseudoxml %ALLSPHINXOPTS% %BUILDDIR%/pseudoxml if errorlevel 1 exit /b 1 echo. echo.Build finished. The pseudo-XML files are in %BUILDDIR%/pseudoxml. goto end ) :end ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912831.9487143 pybtex-0.24.0/docs/man1/0000755000175000001440000000000000000000000014443 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912827.4577682 pybtex-0.24.0/docs/man1/pybtex-convert.10000644000175000001440000000240600000000000017520 0ustar00agusers00000000000000.\"Man page for Pybtex (pybtex-convert) .\" .\" Generation time: 2021-01-17 19:47:07 +0000 .\" Large parts of this file are autogenerated from the output of .\" "pybtex-convert --help" .\" .TH pybtex-convert 1 "2021-01-17" "0.24.0" "Pybtex" .SH "NAME" pybtex-convert - convert between bibliography database formats .SH "SYNOPSIS" .B "pybtex\-convert" [ .I "options" ] .I "in_filename" .I "out_filename" .SH "DESCRIPTION" pybtex\-convert converts bibliography database files between supported formats (currently BibTeX, BibTeXML and YAML). .SH "GENERAL OPTONS" .TP .B "\-\-version" show program's version number and exit .TP .B "\-h, \-\-help" show this help message and exit .TP .B "\-\-strict" turn warnings into errors .TP .B "\-f FORMAT, \-\-from=FORMAT" input format (bibtex, bibtexml, yaml) .TP .B "\-t FORMAT, \-\-to=FORMAT" output format (bibtex, bibtexml, yaml) .TP .B "\-\-keyless\-bibtex\-entries" allow BibTeX entries without keys and generate unnamed\- keys for them .TP .B "\-\-preserve\-case" do not convert identifiers to lower case .SH "ENCODING OPTIONS" .TP .B "\-e ENCODING, \-\-encoding=ENCODING" default encoding .TP .B "\-\-input\-encoding=ENCODING" .TP .B "\-\-output\-encoding=ENCODING" .SH "SEE ALSO" .UR https://pybtex.org/ .BR https://pybtex.org/ ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912827.4587681 pybtex-0.24.0/docs/man1/pybtex-format.10000644000175000001440000000322100000000000017324 0ustar00agusers00000000000000.\"Man page for Pybtex (pybtex-format) .\" .\" Generation time: 2021-01-17 19:47:07 +0000 .\" Large parts of this file are autogenerated from the output of .\" "pybtex-format --help" .\" .TH pybtex-format 1 "2021-01-17" "0.24.0" "Pybtex" .SH "NAME" pybtex-format - format bibliography database as human-readable text .SH "SYNOPSIS" .B "pybtex\-format" [ .I "options" ] .I "in_filename" .I "out_filename" .SH "DESCRIPTION" pybtex\-format formats bibliography database as human\-readable text. .SH "GENERAL OPTONS" .TP .B "\-\-version" show program's version number and exit .TP .B "\-h, \-\-help" show this help message and exit .TP .B "\-\-strict" turn warnings into errors .TP .B "\-f FORMAT, \-\-bibliography\-format=FORMAT" bibliograpy format (bibtex, bibtexml, yaml) .TP .B "\-b BACKEND, \-\-output\-backend=BACKEND" output backend (html, latex, markdown, plaintext) .TP .B "\-\-min\-crossrefs=NUMBER" include item after NUMBER crossrefs; default 2 .TP .B "\-\-keyless\-bibtex\-entries" allow BibTeX entries without keys and generate unnamed\- keys for them .TP .B "\-s STYLE, \-\-style=STYLE" bibliography formatting style .SH "PYTHONIC STYLE OPTIONS" .TP .B "\-\-label\-style=STYLE" label formatting style (alpha, number) .TP .B "\-\-name\-style=STYLE" name formatting style (lastfirst, plain) .TP .B "\-\-sorting\-style=STYLE" sorting style (author_year_title, none) .TP .B "\-\-abbreviate\-names" use abbreviated name formatting style .SH "ENCODING OPTIONS" .TP .B "\-e ENCODING, \-\-encoding=ENCODING" default encoding .TP .B "\-\-input\-encoding=ENCODING" .TP .B "\-\-output\-encoding=ENCODING" .SH "SEE ALSO" .UR https://pybtex.org/ .BR https://pybtex.org/ ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912827.4577682 pybtex-0.24.0/docs/man1/pybtex.10000644000175000001440000000371000000000000016041 0ustar00agusers00000000000000.\"Man page for Pybtex (pybtex) .\" .\" Generation time: 2021-01-17 19:47:07 +0000 .\" Large parts of this file are autogenerated from the output of .\" "pybtex --help" .\" .TH pybtex 1 "2021-01-17" "0.24.0" "Pybtex" .SH "NAME" pybtex - BibTeX-compatible bibliography processor in Python .SH "SYNOPSIS" .B "pybtex" [ .I "options" ] .I "auxfile.aux" .SH "DESCRIPTION" Pybtex reads citation information from a LaTeX .aux file and produces a formatted bibliography. Pybtex understands BibTeX .bib and .bst style files and can be used as a drop\-in replacement for BibTeX. Besides BibTeX .bib files, BibTeXML and YAML bibliography files are supported. It is also possible to define bibliography formatting styles in Python. .SH "GENERAL OPTONS" .TP .B "\-\-version" show program's version number and exit .TP .B "\-h, \-\-help" show this help message and exit .TP .B "\-\-strict" turn warnings into errors .TP .B "\-\-terse" ignored for compatibility with BibTeX .TP .B "\-\-min\-crossrefs=NUMBER" include item after NUMBER crossrefs; default 2 .TP .B "\-f FORMAT, \-\-bibliography\-format=FORMAT" bibliograpy format (bibtex, bibtexml, yaml) .TP .B "\-b BACKEND, \-\-output\-backend=BACKEND" output backend (html, latex, markdown, plaintext) .TP .B "\-s STYLE, \-\-style=STYLE" bibliography formatting style .TP .B "\-l LANGUAGE, \-\-style\-language=LANGUAGE" style definition language to use (bibtex or python) .SH "PYTHONIC STYLE OPTIONS" .TP .B "\-\-label\-style=STYLE" label formatting style (alpha, number) .TP .B "\-\-name\-style=STYLE" name formatting style (lastfirst, plain) .TP .B "\-\-sorting\-style=STYLE" sorting style (author_year_title, none) .TP .B "\-\-abbreviate\-names" use abbreviated name formatting style .SH "ENCODING OPTIONS" .TP .B "\-e ENCODING, \-\-encoding=ENCODING" default encoding .TP .B "\-\-bibtex\-encoding=ENCODING" .TP .B "\-\-bst\-encoding=ENCODING" .TP .B "\-\-output\-encoding=ENCODING" .SH "SEE ALSO" .UR https://pybtex.org/ .BR https://pybtex.org/ ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912831.9497142 pybtex-0.24.0/docs/pybtex_doctools/0000755000175000001440000000000000000000000017030 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.576612 pybtex-0.24.0/docs/pybtex_doctools/__init__.py0000644000175000001440000000263500000000000021147 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from pkg_resources import get_distribution, EntryPoint def add_entry_point(group, name, module, attr): pybtex_dist = get_distribution('pybtex') entry_point = EntryPoint(name, module, (attr,), dist=pybtex_dist) entry_point_map = pybtex_dist.get_entry_map() entry_point_map.setdefault(group, {})[name] = entry_point ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.577612 pybtex-0.24.0/docs/pybtex_doctools/man.py0000644000175000001440000001104700000000000020160 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # Based on autodoc_man.py from bzr-1.16.1. """Generate man pages for pybtex and pybtex-convert. """ from __future__ import print_function, with_statement import os import sys from datetime import datetime from pybtex import __version__ def man_escape(string): """Escapes strings for man page compatibility""" result = string.replace("\\","\\\\") result = result.replace("`","\\`") result = result.replace("-","\\-") return result def format_synopsis(main_obj): yield '.SH "SYNOPSIS"' yield '.B "%s"' % main_obj.prog for part in format_args(main_obj): yield part def format_args(main_obj): for arg in main_obj.args.split(): if arg.startswith('[') and arg.endswith(']'): yield '[' yield '.I "%s"' % arg[1:-1] yield ']' else: yield '.I "%s"' % arg def format_description(main_obj): yield '.SH "DESCRIPTION"' yield main_obj.long_description def format_help(main_obj): opt_parser = main_obj.opt_parser for part in format_option_group(opt_parser, 'general optons', opt_parser.option_list): yield part for option_group in opt_parser.option_groups: for part in format_option_group(opt_parser, option_group.title, option_group.option_list): yield part def format_option_group(opt_parser, name, options): yield '.SH "%s"' % name.upper() for option in options: for part in format_option(opt_parser, option): yield part def format_option(opt_parser, option): yield '.TP' yield '.B "%s"' % opt_parser.formatter.format_option_strings(option) if option.help: yield opt_parser.formatter.expand_default(option) man_head = r""" .\"Man page for Pybtex (%(cmd)s) .\" .\" Generation time: %(timestamp)s .\" Large parts of this file are autogenerated from the output of .\" "%(cmd)s --help" .\" .TH %(cmd)s 1 "%(datestamp)s" "%(version)s" "Pybtex" .SH "NAME" %(cmd)s - %(description)s """.strip() def format_head(main_obj): now = datetime.utcnow() yield man_head % { 'cmd': main_obj.prog, 'version': __version__, 'description': main_obj.description, 'datestamp': now.strftime('%Y-%m-%d'), 'timestamp': now.strftime('%Y-%m-%d %H:%M:%S +0000'), } def format_see_also(main_obj): yield '.SH "SEE ALSO"' yield '.UR https://pybtex.org/' yield '.BR https://pybtex.org/' def write_manpage(outfile, main_obj): """Assembles a man page""" write(outfile, format_head(main_obj), escape=False) write(outfile, format_synopsis(main_obj)) write(outfile, format_description(main_obj)) write(outfile, format_help(main_obj)) write(outfile, format_see_also(main_obj)) def write(outfile, lines, escape=True): for line in lines: outfile.write(man_escape(line) if escape else line) outfile.write('\n') def generate_manpage(man_dir, main_obj): man_filename = os.path.join(man_dir, '%s.1' % main_obj.prog) print('Writing', man_filename, file=sys.stderr) with open(man_filename, 'w') as man_file: write_manpage(man_file, main_obj) def generate_manpages(doc_dir): man_dir = os.path.join(doc_dir, 'man1') from pybtex.__main__ import main as pybtex from pybtex.database.convert.__main__ import main as pybtex_convert from pybtex.database.format.__main__ import main as pybtex_format generate_manpage(man_dir, pybtex) generate_manpage(man_dir, pybtex_convert) generate_manpage(man_dir, pybtex_format) ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.576612 pybtex-0.24.0/docs/pybtex_doctools/pygments.py0000644000175000001440000001637500000000000021264 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import absolute_import import re from string import ascii_letters, digits from pybtex.database.input.bibtex import NAME_CHARS from pygments.lexer import ( ExtendedRegexLexer, RegexLexer, default, include, words ) from pygments.style import Style from pygments.token import ( Comment, Error, Generic, Keyword, Literal, Name, Number, Operator, Punctuation, String, Text ) from . import add_entry_point class PybtexStyle(Style): """ Port of the default trac highlighter design. """ default_style = '' styles = { Comment: 'italic #999999', # Comment.Preproc: 'bold noitalic #999999', # Comment.Special: 'bold #999999', Operator: 'bold', String: '#609000', Number: '#609000', String.Escape: '#a10', Keyword: 'bold', # Keyword.Type: '#445588', Name.Builtin: 'bold', Name.Function: 'bold #840', Name.Class: 'bold #b30', Name.Exception: 'bold #b30', Name.Decorator: '#A20', Name.Namespace: '#A20', Name.Label: '#840', # Name.Variable: '#088', # Name.Constant: '#088', Name.Tag: '#666', # Name.Entity: '#800080', # used by YAML lexer Literal.Scalar.Plain: '', Punctuation.Indicator: '#888', # Generic.Heading: '#999999', # Generic.Subheading: '#aaaaaa', # Generic.Deleted: 'bg:#ffdddd #000000', # Generic.Inserted: 'bg:#ddffdd #000000', Generic.Error: '#aa0000', Generic.Emph: 'italic', Generic.Strong: 'bold', Generic.Prompt: '#666', Generic.Output: '#666', Generic.Traceback: '#aa0000', Error: 'bg:#e3d2d2 #a61717' } class BibTeXLexer(ExtendedRegexLexer): name = 'BibTeX' aliases = ['bibtex', 'bibtex-pybtex'] filenames = ['*.bib'] flags = re.IGNORECASE IDENTIFIER = r'[{0}][{1}]*'.format(re.escape(NAME_CHARS), re.escape(NAME_CHARS + digits)) def open_brace_callback(self, match, ctx): opening_brace = match.group() ctx.opening_brace = opening_brace yield match.start(), Text.Punctuation, opening_brace ctx.pos = match.end() def close_brace_callback(self, match, ctx): closing_brace = match.group() if ( ctx.opening_brace == '{' and closing_brace != '}' or ctx.opening_brace == '(' and closing_brace != ')' ): yield match.start(), Error, closing_brace else: yield match.start(), Text.Punctuation, closing_brace del ctx.opening_brace ctx.pos = match.end() tokens = { 'root': [ include('whitespace'), ('@comment', Comment), ('@preamble', Name.Class, ('closing-brace', 'value', 'opening-brace')), ('@string', Name.Class, ('closing-brace', 'field', 'opening-brace')), ('@' + IDENTIFIER, Name.Class, ('closing-brace', 'command-body', 'opening-brace')), ('.+', Comment), ], 'opening-brace': [ include('whitespace'), (r'[\{\(]', open_brace_callback, '#pop'), ], 'closing-brace': [ include('whitespace'), (r'[\}\)]', close_brace_callback, '#pop'), ], 'command-body': [ include('whitespace'), (r'[^\s\,\}]+', Name.Label, ('#pop', 'fields')), ], 'fields': [ include('whitespace'), (',', Text.Punctuation, 'field'), default('#pop'), ], 'field': [ include('whitespace'), (IDENTIFIER, Text.Punctuation, ('value', '=')), default('#pop'), ], '=': [ include('whitespace'), ('=', Text.Punctuation, '#pop'), ], 'value': [ include('whitespace'), (IDENTIFIER, Name.Variable), ('"', String, 'quoted-string'), (r'\{', String, 'braced-string'), (r'[\d]+', Number), ('#', Text.Punctuation), default('#pop'), ], 'quoted-string': [ (r'\{', String, 'braced-string'), ('"', String, '#pop'), ('[^\{\"]+', String), ], 'braced-string': [ (r'\{', String, '#push'), (r'\}', String, '#pop'), ('[^\{\}]+', String), ], 'whitespace': [ (r'\s+', Text), ], } class BSTLexer(RegexLexer): name = 'BST' aliases = ['bst', 'bst-pybtex'] filenames = ['*.bst'] flags = re.IGNORECASE | re.MULTILINE tokens = { 'root': [ include('whitespace'), (words(['read', 'sort']), Name.Class), (words(['execute', 'integers', 'iterate', 'reverse', 'strings']), Name.Class, ('group')), (words(['function', 'macro']), Name.Class, ('group', 'group')), (words(['entry']), Name.Class, ('group', 'group', 'group')), ], 'group': [ include('whitespace'), ('{', Text.Punctuation, ('#pop', 'group-end', 'body')), ], 'group-end': [ include('whitespace'), ('}', Text.Punctuation, '#pop'), ], 'body': [ include('whitespace'), (r'[^#\"\{\}\s]+\$', Name.Builtin), (r'[^#\"\{\}\s]+', Name.Variable), (r'"[^\"]*"', String), (r'#-?\d+', Number), ('{', Text.Punctuation, ('group-end', 'body')), default('#pop'), ], 'whitespace': [ ('\s+', Text), ('%.*?$', Comment.SingleLine), ], } def setup(app): add_entry_point('pygments.styles', 'pybtex', 'pybtex_doctools.pygments', 'PybtexStyle') add_entry_point('pygments.lexers', 'bibtex-pybtex', 'pybtex_doctools.pygments', 'BibTeXLexer') add_entry_point('pygments.lexers', 'bst-pybtex', 'pybtex_doctools.pygments', 'BSTLexer') ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912831.9497142 pybtex-0.24.0/docs/site/0000755000175000001440000000000000000000000014553 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.565612 pybtex-0.24.0/docs/site/conf.py0000644000175000001440000002120000000000000016045 0ustar00agusers00000000000000# -*- coding: utf-8 -*- # # Pybtex documentation build configuration file, created by # sphinx-quickstart on Thu Jul 10 21:45:13 2014. # # This file is execfile()d with the current directory set to its # containing dir. # # Note that not all possible configuration values are present in this # autogenerated file. # # All configuration values have a default; values that are commented out # serve to show the default. import os import sys from datetime import datetime from pybtex import __version__ # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. sys.path.insert(0, os.path.abspath(os.path.dirname(os.path.dirname(__file__)))) # -- General configuration ------------------------------------------------ # If your documentation needs a minimal Sphinx version, state it here. #needs_sphinx = '1.0' # Add any Sphinx extension module names here, as strings. They can be # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. extensions = [ 'sphinx.ext.ifconfig', 'sphinx.ext.intersphinx', 'pybtex_doctools.pygments', ] intersphinx_mapping = { 'docs': ('https://docs.pybtex.org/', None), } # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates'] # The suffix of source filenames. source_suffix = '.rst' # The encoding of source files. #source_encoding = 'utf-8-sig' # The master toctree document. master_doc = 'index' # General information about the project. project = u'Pybtex' copyright = u'{}, Andrey Golovizin'.format(datetime.now().year) # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. # # The short X.Y version. version = __version__ # The full version, including alpha/beta/rc tags. release = version # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. language = 'en' # There are two options for replacing |today|: either, you set today to some # non-false value, then it is used: #today = '' # Else, today_fmt is used as the format for a strftime call. #today_fmt = '%B %d, %Y' # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. exclude_patterns = [] # The reST default role (used for this markup: `text`) to use for all # documents. #default_role = None # If true, '()' will be appended to :func: etc. cross-reference text. #add_function_parentheses = True # If true, the current module name will be prepended to all description # unit titles (such as .. function::). #add_module_names = True # If true, sectionauthor and moduleauthor directives will be shown in the # output. They are ignored by default. #show_authors = False # The name of the Pygments (syntax highlighting) style to use. # pygments_style = 'sphinx' # A list of ignored prefixes for module index sorting. #modindex_common_prefix = [] # If true, keep warnings as "system message" paragraphs in the built documents. #keep_warnings = False # -- Options for HTML output ---------------------------------------------- # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. html_theme = 'theme' html_theme_path = ['..'] html_context = { 'site': True, } html_style = 'site.css' html_add_permalinks = '' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the # documentation. #html_theme_options = {} # Add any paths that contain custom themes here, relative to this directory. #html_theme_path = [] # The name for this set of Sphinx documents. If None, it defaults to # " v documentation". html_title = '' # A shorter title for the navigation bar. Default is the same as html_title. #html_short_title = None # The name of an image file (relative to this directory) to place at the top # of the sidebar. #html_logo = None # The name of an image file (within the static path) to use as favicon of the # docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 # pixels large. #html_favicon = None # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". #html_static_path = ['_static'] # Add any extra paths that contain custom files (such as robots.txt or # .htaccess) here, relative to this directory. These files are copied # directly to the root of the documentation. #html_extra_path = [] # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, # using the given strftime format. #html_last_updated_fmt = '%b %d, %Y' # If true, SmartyPants will be used to convert quotes and dashes to # typographically correct entities. #html_use_smartypants = True # Custom sidebar templates, maps document names to template names. #html_sidebars = {} # Additional templates that should be rendered to pages, maps page names to # template names. #html_additional_pages = {} # If false, no module index is generated. #html_domain_indices = True # If false, no index is generated. #html_use_index = True # If true, the index is split into individual pages for each letter. #html_split_index = False # If true, links to the reST sources are added to the pages. #html_show_sourcelink = True # If true, "Created using Sphinx" is shown in the HTML footer. Default is True. #html_show_sphinx = True # If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. #html_show_copyright = True # If true, an OpenSearch description file will be output, and all pages will # contain a tag referring to it. The value of this option must be the # base URL from which the finished HTML is served. #html_use_opensearch = '' # This is the file name suffix for HTML files (e.g. ".xhtml"). #html_file_suffix = None # Output file base name for HTML help builder. htmlhelp_basename = 'Pybtexdoc' # -- Options for LaTeX output --------------------------------------------- latex_elements = { # The paper size ('letterpaper' or 'a4paper'). #'papersize': 'letterpaper', # The font size ('10pt', '11pt' or '12pt'). #'pointsize': '10pt', # Additional stuff for the LaTeX preamble. #'preamble': '', } # Grouping the document tree into LaTeX files. List of tuples # (source start file, target name, title, # author, documentclass [howto, manual, or own class]). latex_documents = [ ('index', 'Pybtex.tex', u'Pybtex Documentation', u'Andrey Golovizin', 'manual'), ] # The name of an image file (relative to this directory) to place at the top of # the title page. #latex_logo = None # For "manual" documents, if this is true, then toplevel headings are parts, # not chapters. #latex_use_parts = False # If true, show page references after internal links. #latex_show_pagerefs = False # If true, show URL addresses after external links. #latex_show_urls = False # Documents to append as an appendix to all manuals. #latex_appendices = [] # If false, no module index is generated. #latex_domain_indices = True # -- Options for manual page output --------------------------------------- # One entry per manual page. List of tuples # (source start file, name, description, authors, manual section). man_pages = [ ('index', 'pybtex', u'Pybtex Documentation', [u'Andrey Golovizin'], 1) ] # If true, show URL addresses after external links. #man_show_urls = False # -- Options for Texinfo output ------------------------------------------- # Grouping the document tree into Texinfo files. List of tuples # (source start file, target name, title, author, # dir menu entry, description, category) texinfo_documents = [ ('index', 'Pybtex', u'Pybtex Documentation', u'Andrey Golovizin', 'Pybtex', 'One line description of project.', 'Miscellaneous'), ] # Documents to append as an appendix to all manuals. #texinfo_appendices = [] # If false, no module index is generated. #texinfo_domain_indices = True # How to display URL addresses: 'footnote', 'no', or 'inline'. #texinfo_show_urls = 'footnote' # If true, do not generate a @detailmenu in the "Top" node's menu. stexinfo_no_detailmenu = False rst_epilog = """ .. |download_url| replace:: pybtex-{release}.tar.gz .. _download_url: https://files.pythonhosted.org/packages/source/p/pybtex/pybtex-{release}.tar.gz .. |br| raw:: html
""".format(release=release) autodoc_member_order = 'bysource' autoclass_content = 'both' ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.568612 pybtex-0.24.0/docs/site/index.rst0000644000175000001440000000337500000000000016424 0ustar00agusers00000000000000======= Pybtex! ======= .. container:: download-links - `Bitbucket page`_ - |download_url|_ (:doc:`what's new `) - :doc:`docs ` .. meta:: :description: Pybtex is a BibTeX-compatible bibliography processor written in Python. :keywords: Python, BibTeX Pybtex is a BibTeX-compatible bibliography processor written in Python.\ |br| You can simply type ``pybtex`` instead of ``bibtex``. .. rst-class:: doc-links For more details, see the :doc:`docs:index`. How Pybtex is different from BibTeX =================================== Pybtex aims to be 100% compatible with BibTeX. It accepts the same command line options, fully supports BibTeX's ``.bst`` styles and produces byte-identical output (if not, please `file a bug report`_). Additionally, * Pybtex is Unicode-aware. * Pybtex supports :doc:`bibliography formats ` other than BibTeX. * It is possible to write formatting styles in Python.\ |br| As a bonus, Pythonic styles can produce HTML, Markdown and other markup besides the usual LaTeX. Pybtex also includes a :doc:`Python API ` for managing bibliographies from Python. Download and install ==================== Release tarballs are available from our `PyPI page `_. Pybtex can be also installed with pip: .. sourcecode:: bash pip install pybtex Development sources are available from our `Git repository at Bitbucket `_: .. sourcecode:: bash git clone https://bitbucket.org/pybtex-devs/pybtex If something goes wrong, just `file a bug report`_. Have fun! .. _file a bug report: https://bitbucket.org/pybtex-devs/pybtex/issues?status=new&status=open .. _Bitbucket page: https://bitbucket.org/pybtex-devs/pybtex ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912831.9497142 pybtex-0.24.0/docs/source/0000755000175000001440000000000000000000000015107 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.950714 pybtex-0.24.0/docs/source/api/0000755000175000001440000000000000000000000015660 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5786119 pybtex-0.24.0/docs/source/api/formatting.rst0000644000175000001440000002143400000000000020570 0ustar00agusers00000000000000========================= Formatting bibliographies ========================= .. contents:: :local: The main purpose of Pybtex is turning machine-readable bibliography data into human-readable bibliographies formatted in a specific style. Pybtex reads bibliography data that looks like this: .. sourcecode:: bibtex @book{graham1989concrete, title = "Concrete mathematics: a foundation for computer science", author = "Graham, Ronald Lewis and Knuth, Donald Ervin and Patashnik, Oren", year = "1989", publisher = "Addison-Wesley" } and formats it like this: R. L. Graham, D. E. Knuth, and O. Patashnik. *Concrete mathematics: a foundation for computer science*. Addison-Wesley, 1989. Pybtex contains two different formatting engines: - The :ref:`BibTeX engine ` uses BibTeX ``.bst`` styles. - The :ref:`Python engine ` uses styles written in Python. .. _bibtex-engine: BibTeX engine ============= The BibTeX engine is fully compatible with BibTeX style files and is used by default. How it works ------------ When you type :command:`pybtex mydocument`, the following things happen: 1. Pybtex reads the file :file:`mydocument.aux` in the current directory. This file is normally created by LaTeX and contains all sorts of auxiliary information collected during processing of the LaTeX document. Pybtex is interested in these three pieces of information: Bibliography style: First, Pybtex searches the :file:`.aux` file for a ``\bibstyle`` command that specifies which formatting style will be used. For example, ``\bibstyle{unsrt}`` instructs Pybtex to use formatting style defined in the file :file:`unsrt.bst`. Bibliography data: Next, Pybtex expects to find at least one ``\bibdata`` command in the :file:`.aux` file that tells where to look for the bibliography data. For example, ``\bibdata{mydocument}`` means "use the bibliography data from :file:`mydocument.bib`". Citations: Finally, Pybtex needs to know which entries to put into the resulting bibliography. Pybtex gets the list of citation keys from ``\citation`` commands in the :file:`.aux` file. For example, ``\citation{graham1989concrete}`` means "include the entry with the key ``graham1989concrete`` into the resulting bibliograhy". A wildcard citation ``\citation{*}`` tells Pybtex to format the bibliography for all entries from all data files specified by all ``\bibdata`` commands. 2. Pybtex executes the style program in the :file:`.bst` file specified by the ``\bibstyle`` command in the :file:`.aux` file. As a result, a :file:`.bbl` file containing the resulting formatted bibliography is created. A :file:`.bst` style file is a program in a domain-specific stack-based language. A typical piece of the :file:`.bst` code looks like this: .. code-block:: bst-pybtex FUNCTION {format.bvolume} { volume empty$ { "" } { "volume" volume tie.or.space.connect series empty$ 'skip$ { " of " * series emphasize * } if$ "volume and number" number either.or.check } if$ } The code in a :file:`.bst` file contains the complete step-by-step instructions on how to create the formatted bibliography from the given bibliography data and citation keys. For example, a ``READ`` command tells Pybtex to read the bibliography data from all files specified by ``\bibdata`` commands in the ``.aux`` file, an ``ITERATE`` command tells Pybtex to execute a piece of code for each citation key specified by ``\citation`` commands, and so on. The built-in ``write$`` function tells Pybtex to write the given string into the resulting :file:`.bbl` file. Pybtex implements all these commands and built-in functions and simply executes the :file:`.bst` program step by step. A complete reference of the :file:`.bst` language can be found in the `BibTeX hacking guide`_ by Oren Patashnik. It is available by running :command:`texdoc btxhak` in most TeX distributions. .. _`BibTeX hacking guide`: http://mirrors.ctan.org/biblio/bibtex/base/btxhak.pdf .. _python-engine: Python engine ============= The Python engine is enabled by running :command:`pybtex` with the :option:`-l python` option. Differences from the BibTeX engine ---------------------------------- * Formatting styles are written in Python instead of the :file:`.bst` language. * Formatting styles are not tied to LaTeX and do not use hardcoded LaTeX markup. Instead of that they produce format-agnostic :py:class:`pybtex.richtext.Text` objects that can be converted to any markup format (LaTeX, Markdown, HTML, etc.). * Name formatting, label formatting, and sorting styles are defined separately from the main style. How it works ------------ When you type :command:`pybtex -l python mydocument`, this things happen: 1. Pybtex reads the file :file:`mydocument.aux` in the current directory and extracts the name of the the bibliography style, the list of bibliography data files and the list of citation keys. This step is exactly the same as with the BibTeX engine. 2. Pybtex reads the biliography data from all data files specified in the :file:`.aux` file into a single :py:class:`.BibliographyData` object. 3. Then the formatting style is loaded. The formatting style is a Python class with a :py:meth:`~.format_bibliography()` method. Pybtex passes the bibliography data (a :py:class:`.BibliographyData` object) and the list of citation keys to :py:meth:`~.format_bibliography()`. 4. The formatting style formats each of the requested bibliography entries in a style-specific way. When it comes to formatting names, a name formatting style is loaded and used. A name formatting style is also a Python class with a specific interface. Similarly, a label formatting style is used to format entry labels, and a sorting style is used to sort the resulting style. Each formatting style has a default name style, a default label style and a default sorting style. The defaults can be overridden with options passed to the main style class. Each formatted entry is put into a :py:class:`.FormattedEntry` object which is just a container for the formatted label, the formatted entry text (a :py:class:`pybtex.richtext.Text` object) and the entry key. The reason that the label, the key and the main text are stored separately is to give the output backend more flexibility when converting the :py:class:`.FormattedEntry` object to the actual markup. For example, the HTML backend may want to format the bibliography as a definition list, the LaTeX backend would use ``\bibitem[label]{key} text`` constructs, etc. Formatted entries are put into a :py:class:`.FormattedBibliography` object---it simply contains a list of :py:class:`.FormattedEntry` objects and some additional metadata. 5. The resulting :py:class:`.FormattedBibliography` is passed to the output backend. The default backend is LaTeX. It can be changed with the ``pybtex --output-backend`` option. The output backend converts the formatted bibliography to the specific markup format and writes it to the output file. Python API ========== The base interface ------------------ Both the Python engine and the BibTeX engine use the same interface defined in :py:class:`pybtex.Engine`. :py:class:`pybtex.Engine` has a handful of methods but most of them are just convenience wrappers for :py:meth:`.Engine.format_from_files` that does the actual job. .. autoclass:: pybtex.Engine :members: .. _bibtex-engine-api: The BibTeXEngine class ---------------------- The BibTeX engine lives in the ``pybtex.bibtex`` module. The public interface consists of the :py:class:`.BibTeXEngine` class and a couple of convenience functions. .. autoclass:: pybtex.bibtex.BibTeXEngine :members: .. autofunction:: pybtex.bibtex.make_bibliography .. autofunction:: pybtex.bibtex.format_from_string .. autofunction:: pybtex.bibtex.format_from_strings .. autofunction:: pybtex.bibtex.format_from_file .. autofunction:: pybtex.bibtex.format_from_files The PybtexEngine class ---------------------- The Python engine resides in the ``pybtex`` module and uses an interface similar to the :ref:`BibTeX engine `. There is the :py:class:`.PybtexEngine` class and some convenience functions. .. autoclass:: pybtex.PybtexEngine :members: .. autofunction:: pybtex.make_bibliography .. autofunction:: pybtex.format_from_string .. autofunction:: pybtex.format_from_strings .. autofunction:: pybtex.format_from_file .. autofunction:: pybtex.format_from_files ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.579612 pybtex-0.24.0/docs/source/api/index.rst0000644000175000001440000000016400000000000017522 0ustar00agusers00000000000000========== Python API ========== .. toctree:: :maxdepth: 2 parsing formatting styles plugins ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.579612 pybtex-0.24.0/docs/source/api/parsing.rst0000644000175000001440000000613500000000000020062 0ustar00agusers00000000000000===================================== Reading and writing bibliography data ===================================== .. testsetup:: * from __future__ import unicode_literals, print_function import six from pybtex.database import BibliographyData, Entry, Person, parse_string .. contents:: :local: Reading bibliography data ========================= One of the most common things to do with Pybtex API is parsing BibTeX files. There are several high level functions in the :py:mod:`pybtex.database` module for reading bibliography databases. .. autofunction:: pybtex.database.parse_string .. autofunction:: pybtex.database.parse_bytes .. autofunction:: pybtex.database.parse_file Each of these functions does basically the same thing. It reads the bibliography data from a string or a file and returns a :py:class:`.BibliographyData` object containing all the bibliography data. Here is a quick example: .. doctest:: >>> from pybtex.database import parse_file >>> bib_data = parse_file('../examples/tugboat/tugboat.bib') >>> print(bib_data.entries['Knuth:TB8-1-14'].fields['title']) Mixing right-to-left texts with left-to-right texts >>> for author in bib_data.entries['Knuth:TB8-1-14'].persons['author']: ... print(unicode(author)) Knuth, Donald MacKay, Pierre Writing bibliography data ========================= The :py:class:`.BibliographyData` class has several methods that are symmetrical to the functions described above: - :py:meth:`.BibliographyData.to_string` formats the bibliograhy data into a string, - :py:meth:`.BibliographyData.to_bytes` formats the bibliograhy data into a byte string, - :py:meth:`.BibliographyData.to_file` writes the bibliograhy data to a file. .. doctest:: >>> from pybtex.database import BibliographyData, Entry >>> bib_data = BibliographyData({ ... 'article-minimal': Entry('article', [ ... ('author', 'L[eslie] B. Lamport'), ... ('title', 'The Gnats and Gnus Document Preparation System'), ... ('journal', "G-Animal's Journal"), ... ('year', '1986'), ... ]), ... }) >>> print(bib_data.to_string('bibtex')) @article{article-minimal, author = "L[eslie] B. Lamport", title = "The Gnats and Gnus Document Preparation System", journal = "G-Animal's Journal", year = "1986" } Bibliography data classes ========================= Pybtex uses several classes to represent bibligraphy databases: - :py:class:`.BibliographyData` is a collection of individual bibliography entries and some additional metadata. - :py:class:`.Entry` is a single bibliography entry (a book, an article, etc.). An entry has a key (like ``"knuth74"``), a type (``"book"``, ``"article"``, etc.), and a number of key-value fields (``"author"``, ``"title"``, etc.). - :py:class:`.Person` is a person related to a bibliography entry (usually as an author or an editor). .. autoclass:: pybtex.database.BibliographyData :members: .. autoclass:: pybtex.database.Entry :members: .. autoclass:: pybtex.database.Person :members: ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5786119 pybtex-0.24.0/docs/source/api/plugins.rst0000644000175000001440000000504400000000000020076 0ustar00agusers00000000000000============================= Extending Pybtex with plugins ============================= .. contents:: :local: Pybtex uses plugins for bibliography data formats, output markup formats and bibliography formatting styles. This allows to add new formats or styles to Pybtex withoud modifying Pybtex itself. The plugins are based on `Setuptools' entry points `_. Entry points ============ Here is the list of entry points supported by Pybtex. pybtex.database.input --------------------- This entry point is used for bibliography parsers. Must point to a subclass of :py:class:`pybtex.database.input.BaseParser`. There is also an additional entry point called ``pybtex.database.output.suffixes``. It is used for registering bibliography formats for specific file suffixes (like BibTeX for :file:`.bib` files). For example, a JSON input plugin could use these entry points: .. sourcecode:: ini [pybtex.database.input] json = pybtexjson:JSONParser [pybtex.database.input.suffixes] .json = pybtexjson:JSONParser pybtex.database.output ---------------------- This entry poing is used for bibliography writers. Must point to a subclass of :py:class:`pybtex.database.output.BaseWriter`. There is also an additional entry point called ``pybtex.database.output.suffixes``. It is used for registering default plugins for specific file suffixes in the same way as ``pybtex.database.input.suffixes`` described above. pybtex.backends --------------- This entry point is for adding new output markup formats for Pythonic bibliography styles. The built-in plugins are ``latex``, ``html``, ``markdown``, and ``plaintext``. Must point to a :py:class:`pybtex.backends.BaseBackend` subclass. pybtex.style.formatting ----------------------- This is the entry point for Pythonic bibliography styles. Must point to a :py:class:`pybtex.style.formatting.BaseStyle` subclass. pybtex.style.labels ------------------- Label styles for Pythonic bibliography styles. pybtex.style.names ------------------ Name styles for Pythonic bibliography styles. pybtex.style.sorting -------------------- Sorting styles for Pythonic bibliography styles. Registering plugins =================== See `Setuptools' documentation`_. .. _Setuptools' documentation: https://setuptools.readthedocs.io/en/latest/userguide/quickstart.html#entry-points-and-automatic-script-creation Example plugins =============== An example project directory with two simple plugins and a ``setup.py`` file can be found in the :source:`examples/sample_plugins` subdirectory. ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.579612 pybtex-0.24.0/docs/source/api/styles.rst0000644000175000001440000001412100000000000017734 0ustar00agusers00000000000000================ Designing styles ================ .. testsetup:: * from __future__ import unicode_literals, print_function import six from pybtex.richtext import Text, String, Tag, HRef, Protected, Symbol, nbsp, textutils .. currentmodule:: pybtex.richtext .. contents:: :local: .. _rich-text: Rich text ========= Pybtex has a set of classes for working with formatted text and producing formatted output. A piece of formatted text in Pybtex is represented by a :py:class:`Text` object. A :py:class:`Text` is basically a container that holds a list of * plain text parts, represented by :py:class:`String` objects, * formatted parts, represented by :py:class:`Tag` and :py:class:`HRef` objects. The basic workflow is: 1. Construct a :py:class:`Text` object. 2. Render it as LaTeX, HTML or other markup. .. doctest:: >>> from pybtex.richtext import Text, Tag >>> text = Text('How to be ', Tag('em', 'a cat'), '.') >>> print(text.render_as('html')) How to be a cat. >>> print(text.render_as('latex')) How to be \emph{a cat}. Rich text classes ----------------- There are several rich text classes in Pybtex: - :py:class:`Text` - :py:class:`String` - :py:class:`Tag` - :py:class:`HRef` - :py:class:`Protected` :py:class:`Text` is the top level container that may contain :py:class:`String`, :py:class:`Tag`, and :py:class:`HRef` objects. When a :py:class:`Text` object is rendered into markup, it renders all of its child objects, then concatenates the result. :py:class:`String` is just a wrapper for a single Python string. :py:class:`Tag` and :py:class:`HRef` are also containers that may contain other :py:class:`String`, :py:class:`Tag`, and :py:class:`HRef` objects. This makes nested formatting possible. For example, this stupidly formatted text: |CTAN hyperlink|_ is *comprehensive*. .. |CTAN hyperlink| replace:: *Comprehensive* TeX Archive Network .. _CTAN hyperlink: https://ctan.org/ is represented by this object tree: .. doctest:: >>> text = Text( ... HRef('https://ctan.org/', Tag('em', 'Comprehensive'), ' TeX Archive Network'), ... ' is ', ... Tag('em', 'comprehensive'), ... '.', ... ) >>> print(text.render_as('html')) Comprehensive TeX Archive Network is comprehensive. :py:class:`Protected` represents a "protected" piece of text, something like {braced text} in BibTeX. It is not affected by case-changing operations, like :py:meth:`Text.upper()` or :py:meth:`Text.lower()`, and is not splittable by :py:meth:`Text.split()`. All rich text classes share the same API which is more or less similar to plain `Python strings`_. .. _Python strings: https://docs.python.org/3/library/stdtypes.html#string-methods Like Python strings, rich text objects are supposed to be immutable. Methods like :py:meth:`Text.append` or :py:meth:`Text.upper` return a new :py:class:`Text` object instead of modifying the data in place. Attempting to modify the contents of an existing :py:class:`Text` object is not supported and may lead to weird results. Here we document the methods of the :py:class:`Text` class. The other classes have the same methods. .. autoclass:: pybtex.richtext.Text :members: :inherited-members: .. automethod:: Text.__init__ .. automethod:: Text.__eq__ .. automethod:: Text.__len__ .. automethod:: Text.__contains__ .. automethod:: Text.__getitem__ .. automethod:: Text.__add__ .. autoclass:: pybtex.richtext.String .. autoclass:: pybtex.richtext.Tag .. autoclass:: pybtex.richtext.HRef .. autoclass:: pybtex.richtext.Protected .. autoclass:: pybtex.richtext.Symbol Style API ========= A formatting style in Pybtex is a class inherited from :py:class:`pybtex.style.formatting.BaseStyle`. .. autoclass:: pybtex.style.formatting.BaseStyle :members: .. currentmodule:: pybtex.richtext Pybtex loads the style class as a :doc:`plugin `, instantiates it with proper parameters and calls the :py:meth:`~.BaseStyle.format_bibliography` method that does the actual formatting job. The default implementation of :py:meth:`~.BaseStyle.format_bibliography` calls a ``format_()`` method for each bibliography entry, where ```` is the entry type, in lowercase. For example, to format an entry of type ``book``, the ``format_book()`` method is called. The method must return a :py:class:`.Text` object. Style classes are supposed to implement ``format_()`` methods for all entry types they support. If a formatting method is not found for some entry, Pybtex complains about unsupported entry type. An example minimalistic style: .. sourcecode:: python from pybtex.style.formatting import BaseStyle from pybtex.richtext import Text, Tag class MyStyle(BaseStyle): def format_article(self, entry): return Text('Article ', Tag('em', entry.fields['title'])) Template language ================= Manually creating :py:class:`.Text` objects may be tedious. Pybtex has a small template language to simplify common formatting tasks, like joining words with spaces, adding commas and periods, or handling missing fields. The template language is is not very documented for now, so you should look at the code in the :source:`pybtex.style.template ` module and the :source:`existing styles `. An example formatting style using template language: .. sourcecode:: python from pybtex.style.formatting import BaseStyle, toplevel from pybtex.style.template import field, join, optional class MyStyle(BaseStyle): def format_article(self, entry): if entry.fields['volume']: volume_and_pages = join [field('volume'), optional [':', pages]] else: volume_and_pages = words ['pages', optional [pages]] template = toplevel [ self.format_names('author'), sentence [field('title')], sentence [ tag('emph') [field('journal')], volume_and_pages, date], ] return template.format_data(entry) ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.577612 pybtex-0.24.0/docs/source/cmdline.rst0000644000175000001440000001134300000000000017256 0ustar00agusers00000000000000====================== Command line interface ====================== .. contents:: :local: Making bibliographies with :command:`pybtex` ============================================ The :command:`pybtex` executable is used in the same was as the original :command:`bibtex` command and accepts the same command line options. The only difference is that you type :command:`pybtex` instead of :command:`bibtex`. For example, to compile the bibliography for a LaTeX file named :file:`book.tex`, you need to type: .. code-block:: shell $ latex book $ pybtex book $ latex book $ latex book # to get cross-references right See the `BibTeX tutorial`_ by Andrew Roberts for a basic explanation of how to use BibTeX. .. _BibTeX tutorial: https://www.andy-roberts.net/writing/latex/bibliographies Bibliography formats other then BibTeX -------------------------------------- .. todo:: link to BibTeX format description Pybtex is fully compatible with BibTeX' :file:`.bib` files. Besides that, Pybtex supports other bibliography formats. The list of supported formats can bee seen in the output of :command:`pybtex --help`. By default, the BibTeX format is used. If a LaTeX file :file:`book.tex` contains: .. code-block:: latex \bibliogrpahy{mybook} Then this command: .. code-block:: shell $ pybtex book will expect to find the bibliography data in a BibTeX-formatted file :file:`mybook.bib`. Pybtex can be instructed to use a different format with the :option:`--format` option. For example this command: .. code-block:: shell $ pybtex --format yaml book will tell Pybtex to look for a YAML-formatted file :file:`mybook.yaml` instead of :file:`mybook.bib`). Support for additional bibliography formats can be added by :doc:`plugins `. Pythonic bibliography styles ---------------------------- BibTeX has a built-in stack oriented programming language for defining bibliography formatting styles. This language is used in :file:`.bst` style files. Pybtex is fully compatible with BIbTeX' :file:`.bst` style files. Additionally, Pybtex allows :doc:`to write bibliography styles in Python `. Some base BibTeX styles, including ``plain``, ``alpha``, ``unsrt``, have been already ported to Python. They can be found in :source:`pybtex/style/formatting` subdirectory. Additional styles can be added as :doc:`plugins `. By default, Pybtex uses BibTeX' :file:`.bst` styles. You can switch the style language from BibTeX to Python with the :option:`--style-language` option: .. code-block:: shell $ pybtex --style-language python book One of the advantage of using Pythonic styles is that they can produce HTML, Markdown or plain text output besides the usual LaTeX markup. To change the output backend from LaTeX to something else, use the :option:`--output-backend` option: .. code-block:: shell $ pybtex --style-language python --output-backend html book $ pybtex --style-language python --output-backend plaintext book (In this case Pybtex will write the bibliography to :file:`book.html` or :file:`book.txt` instead of :file:`book.bbl`). Support for other markup formats can be added by :doc:`plugins `. Additionally, Pythonic styles are configurable with command line options to some extent. For example, the :option:`--name-style` option tells Pybtex to use a different name formatting style, :option:`--abbreviate-names` forces Pybtex to use the abbreviated name format, etc. See :command:`pybtex --help` for more options. Converting bibliography databases with :command:`bibtex-convert` ================================================================ Pybtex comes with an additional utility called :command:`pybtex-convert`. It converts bibliography databases between supported formats: .. code-block:: shell $ pybtex-convert book.bib book.yaml Be aware that the conversion is not always lossless. For example: - BibTeX' string macros are substituted by their values during conversion. - BibTeXML does not support LaTeX preambles. - In the standard BibTeX format, names are stored as single strings. BibTexML and Pybtex' YAML format store first name, last name, and other name parts seprately. Pretty-printing bibliography databases with :command:`bibtex-format` ==================================================================== Sometimes you would want to convert a bibliography database to a human-readable format. Pybtex has another utility called :command:`pybtex-format` for that: .. code-block:: shell $ pybtex-format book.bib book.txt $ pybtex-format book.bib book.html By default, the ``unsrt`` style is used for formatting. This can be changed with the :option:`--style` option: .. code-block:: shell $ pybtex-format --style alpha book.bib book.txt ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911647.7339668 pybtex-0.24.0/docs/source/conf.py0000644000175000001440000002107200000000000016410 0ustar00agusers00000000000000# -*- coding: utf-8 -*- # # Pybtex documentation build configuration file, created by # sphinx-quickstart on Thu Jul 10 21:45:13 2014. # # This file is execfile()d with the current directory set to its # containing dir. # # Note that not all possible configuration values are present in this # autogenerated file. # # All configuration values have a default; values that are commented out # serve to show the default. import os import sys from datetime import datetime from pybtex import __version__ # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. sys.path.insert(0, os.path.abspath(os.path.dirname(os.path.dirname(__file__)))) # -- General configuration ------------------------------------------------ # If your documentation needs a minimal Sphinx version, state it here. #needs_sphinx = '1.0' # Add any Sphinx extension module names here, as strings. They can be # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. extensions = [ 'sphinx.ext.autodoc', 'sphinx.ext.doctest', 'sphinx.ext.todo', 'sphinx.ext.ifconfig', 'sphinx.ext.intersphinx', 'sphinx.ext.extlinks', 'pybtex_doctools.pygments', ] intersphinx_mapping = { 'python': ('https://docs.python.org/3/', None), } extlinks = { 'source': ('https://bitbucket.org/pybtex-devs/pybtex/src/HEAD/%s', ''), } # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates'] # The suffix of source filenames. source_suffix = '.rst' # The encoding of source files. #source_encoding = 'utf-8-sig' # The master toctree document. master_doc = 'index' # General information about the project. project = u"Pybtex User’s Guide" copyright = u'2021, Andrey Golovizin' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. # # The short X.Y version. version = __version__ # The full version, including alpha/beta/rc tags. release = version # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. language = 'en' # There are two options for replacing |today|: either, you set today to some # non-false value, then it is used: #today = '' # Else, today_fmt is used as the format for a strftime call. #today_fmt = '%B %d, %Y' # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. exclude_patterns = [] # The reST default role (used for this markup: `text`) to use for all # documents. #default_role = None # If true, '()' will be appended to :func: etc. cross-reference text. #add_function_parentheses = True # If true, the current module name will be prepended to all description # unit titles (such as .. function::). #add_module_names = True # If true, sectionauthor and moduleauthor directives will be shown in the # output. They are ignored by default. #show_authors = False # The name of the Pygments (syntax highlighting) style to use. # pygments_style = 'sphinx' # A list of ignored prefixes for module index sorting. #modindex_common_prefix = [] # If true, keep warnings as "system message" paragraphs in the built documents. #keep_warnings = False # -- Options for HTML output ---------------------------------------------- # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. html_theme = 'theme' html_theme_path = ['..'] # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the # documentation. #html_theme_options = {} # Add any paths that contain custom themes here, relative to this directory. #html_theme_path = [] # The name for this set of Sphinx documents. If None, it defaults to # " v documentation". html_title = u"Pybtex User’s Guide" # A shorter title for the navigation bar. Default is the same as html_title. html_short_title = 'Docs' # The name of an image file (relative to this directory) to place at the top # of the sidebar. #html_logo = None # The name of an image file (within the static path) to use as favicon of the # docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 # pixels large. #html_favicon = None # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". #html_static_path = ['_static'] # Add any extra paths that contain custom files (such as robots.txt or # .htaccess) here, relative to this directory. These files are copied # directly to the root of the documentation. #html_extra_path = [] # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, # using the given strftime format. #html_last_updated_fmt = '%b %d, %Y' # If true, SmartyPants will be used to convert quotes and dashes to # typographically correct entities. #html_use_smartypants = True # Custom sidebar templates, maps document names to template names. #html_sidebars = {} # Additional templates that should be rendered to pages, maps page names to # template names. #html_additional_pages = {} # If false, no module index is generated. #html_domain_indices = True # If false, no index is generated. #html_use_index = True # If true, the index is split into individual pages for each letter. #html_split_index = False # If true, links to the reST sources are added to the pages. #html_show_sourcelink = True # If true, "Created using Sphinx" is shown in the HTML footer. Default is True. #html_show_sphinx = True # If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. #html_show_copyright = True # If true, an OpenSearch description file will be output, and all pages will # contain a tag referring to it. The value of this option must be the # base URL from which the finished HTML is served. #html_use_opensearch = '' # This is the file name suffix for HTML files (e.g. ".xhtml"). #html_file_suffix = None html_context = { 'site_url': 'https://pybtex.org/', } # Output file base name for HTML help builder. htmlhelp_basename = 'Pybtexdoc' # -- Options for LaTeX output --------------------------------------------- latex_elements = { # The paper size ('letterpaper' or 'a4paper'). #'papersize': 'letterpaper', # The font size ('10pt', '11pt' or '12pt'). #'pointsize': '10pt', # Additional stuff for the LaTeX preamble. #'preamble': '', } # Grouping the document tree into LaTeX files. List of tuples # (source start file, target name, title, # author, documentclass [howto, manual, or own class]). latex_documents = [ ('index', 'Pybtex.tex', u'Pybtex Documentation', u'Andrey Golovizin', 'manual'), ] # The name of an image file (relative to this directory) to place at the top of # the title page. #latex_logo = None # For "manual" documents, if this is true, then toplevel headings are parts, # not chapters. #latex_use_parts = False # If true, show page references after internal links. #latex_show_pagerefs = False # If true, show URL addresses after external links. #latex_show_urls = False # Documents to append as an appendix to all manuals. #latex_appendices = [] # If false, no module index is generated. #latex_domain_indices = True # -- Options for manual page output --------------------------------------- # One entry per manual page. List of tuples # (source start file, name, description, authors, manual section). man_pages = [ ('index', 'pybtex', u'Pybtex Documentation', [u'Andrey Golovizin'], 1) ] # If true, show URL addresses after external links. #man_show_urls = False # -- Options for Texinfo output ------------------------------------------- # Grouping the document tree into Texinfo files. List of tuples # (source start file, target name, title, author, # dir menu entry, description, category) texinfo_documents = [ ('index', 'Pybtex', u'Pybtex Documentation', u'Andrey Golovizin', 'Pybtex', 'One line description of project.', 'Miscellaneous'), ] # Documents to append as an appendix to all manuals. #texinfo_appendices = [] # If false, no module index is generated. #texinfo_domain_indices = True # How to display URL addresses: 'footnote', 'no', or 'inline'. #texinfo_show_urls = 'footnote' # If true, do not generate a @detailmenu in the "Top" node's menu. stexinfo_no_detailmenu = False autodoc_member_order = 'bysource' ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.574612 pybtex-0.24.0/docs/source/formats.rst0000644000175000001440000000600600000000000017316 0ustar00agusers00000000000000================= Supported formats ================= .. contents:: :local: Bibliography formats ==================== BibTeX ------ BibTeX is the default bibliography format used by Pybtex: .. sourcecode:: bibtex-pybtex @BOOK{strunk-and-white, author = "Strunk, Jr., William and E. B. White", title = "The Elements of Style", publisher = "Macmillan", edition = "Third", year = 1979 } Some links: - `A basic description of the BibTeX format. `_ - `An in-depth description of the quirky BibTeX syntax. `_ BibTeXML -------- `BibTeXML`_ is an attempt to translate the BibTeX format into XML. The above BibTeX snippet translates into this XML: .. sourcecode:: xml William Strunk Jr. E. B.
White The Elements of Style Macmillan Third 1979 YAML ---- We added our own experimental YAML-based bibliography format to Pybtex. It is mostly a straightforward translation of `BibTeXML`_ into YAML: .. sourcecode:: yaml strunk-and-white: type: book author: - first: William last: Strunk lineage: Jr. - first: E. middle: B. last: White title: The Elements of Style publisher: Macmillan edition: Third year: 1979 .. _BibTeXML: http://bibtexml.sourceforge.net Bibliography style formats ========================== Pybtex currently supports bibliography styles in two formats: - BibTeX' ``.bst`` files - Pybtex' :doc:`Pythonic styles ` Output formats ============== BibTeX's :file:`.bst` styles usually contain hardcoded LaTeX markup and are LaTeX-only. Pythonic styles in Pybtex are markup-independent and can output multiple formats, including: - LaTeX - Markdown - HTML - plain text There is also `pybtex-docutils`_ by Matthias Troffaes that integrates Pybtex with Docutils_, and `sphinxcontrib-bibtex`_ by the same author, integrating Pybtex with Sphinx_. .. _pybtex-docutils: https://github.com/mcmtroffaes/pybtex-docutils .. _sphinxcontrib-bibtex: https://github.com/mcmtroffaes/sphinxcontrib-bibtex .. _Docutils: http://docutils.sourceforge.net/ .. _Sphinx: http://sphinx-doc.org/ ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.576612 pybtex-0.24.0/docs/source/history.rst0000644000175000001440000000011400000000000017336 0ustar00agusers00000000000000=============== Version history =============== .. include:: ../../CHANGES ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5716121 pybtex-0.24.0/docs/source/index.rst0000644000175000001440000000025600000000000016753 0ustar00agusers00000000000000=================== Pybtex User's Guide =================== .. toctree:: :maxdepth: 2 cmdline formats api/index .. toctree:: :maxdepth: 1 history ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.950714 pybtex-0.24.0/docs/theme/0000755000175000001440000000000000000000000014711 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.950714 pybtex-0.24.0/docs/theme/css-src/0000755000175000001440000000000000000000000016266 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5816119 pybtex-0.24.0/docs/theme/css-src/master.css0000644000175000001440000000563300000000000020302 0ustar00agusers00000000000000@tailwind base; @tailwind components; @tailwind utilities; .light { color: #B58000; } .dark { color: #804000; } .document { @apply font-serif; } .document, .prev-next { @apply mx-auto; width: 100%; } @media (min-width: 576px) { .document, .prev-next { max-width: 576px; } } @media (min-width: 768px) { .document, .prev-next { max-width: 768px; } } @media (max-width: 576px) { html { font-size: 12pt; } } .document { @apply mt-2; } a { @apply no-underline light dark; } a:hover { @apply underline light; } p { @apply mt-2 mb-2; hyphens: auto; } blockquote { @apply mt-4 mb-4 ml-8; } ul { @apply mt-2 mb-2 ml-8 list-disc; } ol { @apply mt-2 mb-2 ml-8 list-decimal; } li { @apply mt-1; } img { @apply border-none; } h1, h2, h3, h1 a, h2 a, h3 a { @apply font-sans light; } .search a { @apply font-sans; } h1 { @apply mt-16 mb-2 text-4xl; } h2 { @apply mt-12 mb-2 text-2xl; } h3 { @apply mt-8 mb-2 text-lg; } a.headerlink { @apply invisible no-underline; } h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, h4:hover > a.headerlink, h5:hover > a.headerlink, h6:hover > a.headerlink, dt:hover > a.headerlink, caption:hover > a.headerlink, p.caption:hover > a.headerlink, div.code-block-caption:hover > a.headerlink { @apply visible dark; } .contents, .toctree-wrapper { @apply mt-8 mb-8 ml-8 font-sans dark; } .contents ul, .toctree-wrapper ul { @apply light; } .contents .topic-title { @apply hidden; } dl, dt { @apply mt-4; } dd { @apply ml-8; } code, pre, tt { @apply font-mono text-base; hyphens: none; } code { @apply whitespace-pre break-words; } code.descname { @apply font-bold light; } .function dt, .class dt { @apply font-mono; } .function dt em, .class dt em { @apply not-italic; } .versionmodified { @apply italic; } .sourcecode pre, .highlight pre { @apply mt-4 mb-4 ml-4 text-sm; } .field-list ul { margin: m-0; } .field-list li { @apply m-0; } .field-list th { @apply font-normal; } .field-list td strong { @apply font-normal font-mono; } .first { @apply mt-0 !important; } .left { @apply float-left; } .right { @apply float-right; } .middle { @apply inline-block text-center; } .relbar { @apply mt-4 ml-4 mr-4 text-sm; } form input { @apply border border-solid border-gray-500 pl-1 pr-1 text-sm rounded-sm; } .prev-next { @apply mt-12 text-center; clear: both; word-wrap: normal; } .footer { @apply mt-20 mb-4 text-xs text-center opacity-50; clear: both; } .admonition { border: 0.4ex solid; margin-top: 1ex !important; margin-bottom: 1ex !important; background: red; } .admonition p { margin: 1ex 1em; padding: 0; } .warning { border-color: #D04040; } .highlighted { background-color: #fbe54e; } ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.570612 pybtex-0.24.0/docs/theme/layout.html0000644000175000001440000000415400000000000017120 0ustar00agusers00000000000000{% extends "basic/layout.html" %} {%- macro pybtex_toc() %} Table of contents {%- endmacro %} {%- macro pybtex_relbar() %}
Pybtex / {%- if pagename != master_doc %} {{ shorttitle|e }} / {%- for parent in parents %} {{ parent.title }} / {%- endfor %} {{ title }} {%- else %} {{ shorttitle|e }} {%- endif %}
 
{%- endmacro %} {%- macro pybtex_prev_next() %}
{%- if prev and prev != master_doc %} {%- endif %}
{%- if pagename != master_doc and next %} {{- pybtex_toc() }} {%- else %}   {%- endif %}
{%- if next %} {{ next.title }} → {%- elif prev %} {{- pybtex_toc() }} {%- endif %}
{%- endmacro %} {%- block htmltitle %} {{ title|striptags|e }}{{ titlesuffix }} {% if not site %}({{ release }}){% endif %} {%- endblock %} {%- block css %} {# is is the right place for meta tags? #} {{ super() }} {%- endblock %} {%- block scripts %} {%- if not site %}{{ super() }}{% endif %} {%- endblock %} {%- block relbar1 %} {%- if not site %}{{ pybtex_relbar() }}{% endif %} {%- endblock %} {%- block relbar2 %} {%- if not site %}{{ pybtex_prev_next() }}{% endif %} {%- endblock %} {%- block footer %} {%- if not site %}{{ super() }}{% endif %} {%- endblock %} ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.575612 pybtex-0.24.0/docs/theme/package-lock.json0000644000175000001440000032066700000000000020143 0ustar00agusers00000000000000{ "name": "pybtex-css", "version": "1.0.0", "lockfileVersion": 1, "requires": true, "dependencies": { "@babel/code-frame": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", "dev": true, "requires": { "@babel/highlight": "^7.10.4" } }, "@babel/helper-validator-identifier": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz", "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==", "dev": true }, "@babel/highlight": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.10.4", "chalk": "^2.0.0", "js-tokens": "^4.0.0" } }, "@nodelib/fs.scandir": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz", "integrity": "sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw==", "dev": true, "requires": { "@nodelib/fs.stat": "2.0.3", "run-parallel": "^1.1.9" } }, "@nodelib/fs.stat": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz", "integrity": "sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==", "dev": true }, "@nodelib/fs.walk": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz", "integrity": "sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ==", "dev": true, "requires": { "@nodelib/fs.scandir": "2.1.3", "fastq": "^1.6.0" } }, "@types/parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", "dev": true }, "@types/q": { "version": "1.5.4", "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.4.tgz", "integrity": "sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug==", "dev": true }, "acorn": { "version": "7.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true }, "acorn-node": { "version": "1.8.2", "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", "dev": true, "requires": { "acorn": "^7.0.0", "acorn-walk": "^7.0.0", "xtend": "^4.0.2" } }, "acorn-walk": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", "dev": true }, "alphanum-sort": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz", "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=", "dev": true }, "ansi-styles": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "requires": { "color-convert": "^1.9.0" } }, "anymatch": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", "dev": true, "requires": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" } }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "requires": { "sprintf-js": "~1.0.2" } }, "array-union": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", "dev": true }, "at-least-node": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", "dev": true }, "autoprefixer": { "version": "9.8.6", "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.6.tgz", "integrity": "sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg==", "dev": true, "requires": { "browserslist": "^4.12.0", "caniuse-lite": "^1.0.30001109", "colorette": "^1.2.1", "normalize-range": "^0.1.2", "num2fraction": "^1.2.2", "postcss": "^7.0.32", "postcss-value-parser": "^4.1.0" }, "dependencies": { "browserslist": { "version": "4.14.5", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.14.5.tgz", "integrity": "sha512-Z+vsCZIvCBvqLoYkBFTwEYH3v5MCQbsAjp50ERycpOjnPmolg1Gjy4+KaWWpm8QOJt9GHkhdqAl14NpCX73CWA==", "dev": true, "requires": { "caniuse-lite": "^1.0.30001135", "electron-to-chromium": "^1.3.571", "escalade": "^3.1.0", "node-releases": "^1.1.61" } }, "caniuse-lite": { "version": "1.0.30001148", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001148.tgz", "integrity": "sha512-E66qcd0KMKZHNJQt9hiLZGE3J4zuTqE1OnU53miEVtylFbwOEmeA5OsRu90noZful+XGSQOni1aT2tiqu/9yYw==", "dev": true }, "electron-to-chromium": { "version": "1.3.578", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.578.tgz", "integrity": "sha512-z4gU6dA1CbBJsAErW5swTGAaU2TBzc2mPAonJb00zqW1rOraDo2zfBMDRvaz9cVic+0JEZiYbHWPw/fTaZlG2Q==", "dev": true }, "node-releases": { "version": "1.1.61", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.61.tgz", "integrity": "sha512-DD5vebQLg8jLCOzwupn954fbIiZht05DAZs0k2u8NStSe6h9XdsuIQL8hSRKYiU8WUQRznmSDrKGbv3ObOmC7g==", "dev": true }, "postcss": { "version": "7.0.35", "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", "dev": true, "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", "supports-color": "^6.1.0" } }, "postcss-value-parser": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==", "dev": true } } }, "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", "dev": true }, "binary-extensions": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", "dev": true }, "boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", "dev": true }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, "braces": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "dev": true, "requires": { "fill-range": "^7.0.1" } }, "browserslist": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.7.0.tgz", "integrity": "sha512-9rGNDtnj+HaahxiVV38Gn8n8Lr8REKsel68v1sPFfIGEK6uSXTY3h9acgiT1dZVtOOUtifo/Dn8daDQ5dUgVsA==", "dev": true, "requires": { "caniuse-lite": "^1.0.30000989", "electron-to-chromium": "^1.3.247", "node-releases": "^1.1.29" } }, "bytes": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", "dev": true }, "caller-callsite": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", "dev": true, "requires": { "callsites": "^2.0.0" } }, "caller-path": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", "dev": true, "requires": { "caller-callsite": "^2.0.0" } }, "callsites": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", "dev": true }, "camelcase-css": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", "dev": true }, "caniuse-api": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", "dev": true, "requires": { "browserslist": "^4.0.0", "caniuse-lite": "^1.0.0", "lodash.memoize": "^4.1.2", "lodash.uniq": "^4.5.0" } }, "caniuse-lite": { "version": "1.0.30000989", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000989.tgz", "integrity": "sha512-vrMcvSuMz16YY6GSVZ0dWDTJP8jqk3iFQ/Aq5iqblPwxSVVZI+zxDyTX0VPqtQsDnfdrBDcsmhgTEOh5R8Lbpw==", "dev": true }, "chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "requires": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" }, "dependencies": { "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "requires": { "has-flag": "^3.0.0" } } } }, "chokidar": { "version": "3.4.2", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.2.tgz", "integrity": "sha512-IZHaDeBeI+sZJRX7lGcXsdzgvZqKv6sECqsbErJA4mHWfpRrD8B97kSFN4cQz6nGBGiuFia1MKR4d6c1o8Cv7A==", "dev": true, "requires": { "anymatch": "~3.1.1", "braces": "~3.0.2", "fsevents": "~2.1.2", "glob-parent": "~5.1.0", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", "readdirp": "~3.4.0" } }, "coa": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", "dev": true, "requires": { "@types/q": "^1.5.1", "chalk": "^2.4.1", "q": "^1.1.2" } }, "color": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/color/-/color-3.1.2.tgz", "integrity": "sha512-vXTJhHebByxZn3lDvDJYw4lR5+uB3vuoHsuYA5AKuxRVn5wzzIfQKGLBmgdVRHKTJYeK5rvJcHnrd0Li49CFpg==", "dev": true, "requires": { "color-convert": "^1.9.1", "color-string": "^1.5.2" } }, "color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, "requires": { "color-name": "1.1.3" } }, "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, "color-string": { "version": "1.5.3", "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.5.3.tgz", "integrity": "sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw==", "dev": true, "requires": { "color-name": "^1.0.0", "simple-swizzle": "^0.2.2" } }, "colorette": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz", "integrity": "sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==", "dev": true }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, "cosmiconfig": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", "dev": true, "requires": { "import-fresh": "^2.0.0", "is-directory": "^0.3.1", "js-yaml": "^3.13.1", "parse-json": "^4.0.0" } }, "css-color-names": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz", "integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=", "dev": true }, "css-declaration-sorter": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz", "integrity": "sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA==", "dev": true, "requires": { "postcss": "^7.0.1", "timsort": "^0.3.0" } }, "css-select": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", "dev": true, "requires": { "boolbase": "^1.0.0", "css-what": "^3.2.1", "domutils": "^1.7.0", "nth-check": "^1.0.2" } }, "css-select-base-adapter": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz", "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==", "dev": true }, "css-tree": { "version": "1.0.0-alpha.37", "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==", "dev": true, "requires": { "mdn-data": "2.0.4", "source-map": "^0.6.1" } }, "css-unit-converter": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/css-unit-converter/-/css-unit-converter-1.1.1.tgz", "integrity": "sha1-2bkoGtz9jO2TW9urqDeGiX9k6ZY=", "dev": true }, "css-what": { "version": "3.4.2", "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==", "dev": true }, "cssesc": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", "dev": true }, "cssnano": { "version": "4.1.10", "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-4.1.10.tgz", "integrity": "sha512-5wny+F6H4/8RgNlaqab4ktc3e0/blKutmq8yNlBFXA//nSFFAqAngjNVRzUvCgYROULmZZUoosL/KSoZo5aUaQ==", "dev": true, "requires": { "cosmiconfig": "^5.0.0", "cssnano-preset-default": "^4.0.7", "is-resolvable": "^1.0.0", "postcss": "^7.0.0" } }, "cssnano-preset-default": { "version": "4.0.7", "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-4.0.7.tgz", "integrity": "sha512-x0YHHx2h6p0fCl1zY9L9roD7rnlltugGu7zXSKQx6k2rYw0Hi3IqxcoAGF7u9Q5w1nt7vK0ulxV8Lo+EvllGsA==", "dev": true, "requires": { "css-declaration-sorter": "^4.0.1", "cssnano-util-raw-cache": "^4.0.1", "postcss": "^7.0.0", "postcss-calc": "^7.0.1", "postcss-colormin": "^4.0.3", "postcss-convert-values": "^4.0.1", "postcss-discard-comments": "^4.0.2", "postcss-discard-duplicates": "^4.0.2", "postcss-discard-empty": "^4.0.1", "postcss-discard-overridden": "^4.0.1", "postcss-merge-longhand": "^4.0.11", "postcss-merge-rules": "^4.0.3", "postcss-minify-font-values": "^4.0.2", "postcss-minify-gradients": "^4.0.2", "postcss-minify-params": "^4.0.2", "postcss-minify-selectors": "^4.0.2", "postcss-normalize-charset": "^4.0.1", "postcss-normalize-display-values": "^4.0.2", "postcss-normalize-positions": "^4.0.2", "postcss-normalize-repeat-style": "^4.0.2", "postcss-normalize-string": "^4.0.2", "postcss-normalize-timing-functions": "^4.0.2", "postcss-normalize-unicode": "^4.0.1", "postcss-normalize-url": "^4.0.1", "postcss-normalize-whitespace": "^4.0.2", "postcss-ordered-values": "^4.1.2", "postcss-reduce-initial": "^4.0.3", "postcss-reduce-transforms": "^4.0.2", "postcss-svgo": "^4.0.2", "postcss-unique-selectors": "^4.0.1" } }, "cssnano-util-get-arguments": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz", "integrity": "sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8=", "dev": true }, "cssnano-util-get-match": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz", "integrity": "sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0=", "dev": true }, "cssnano-util-raw-cache": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz", "integrity": "sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA==", "dev": true, "requires": { "postcss": "^7.0.0" } }, "cssnano-util-same-parent": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz", "integrity": "sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q==", "dev": true }, "csso": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/csso/-/csso-4.0.3.tgz", "integrity": "sha512-NL3spysxUkcrOgnpsT4Xdl2aiEiBG6bXswAABQVHcMrfjjBisFOKwLDOmf4wf32aPdcJws1zds2B0Rg+jqMyHQ==", "dev": true, "requires": { "css-tree": "1.0.0-alpha.39" }, "dependencies": { "css-tree": { "version": "1.0.0-alpha.39", "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.39.tgz", "integrity": "sha512-7UvkEYgBAHRG9Nt980lYxjsTrCyHFN53ky3wVsDkiMdVqylqRt+Zc+jm5qw7/qyOvN2dHSYtX0e4MbCCExSvnA==", "dev": true, "requires": { "mdn-data": "2.0.6", "source-map": "^0.6.1" } }, "mdn-data": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.6.tgz", "integrity": "sha512-rQvjv71olwNHgiTbfPZFkJtjNMciWgswYeciZhtvWLO8bmX3TnhyA62I6sTWOyZssWHJJjY6/KiWwqQsWWsqOA==", "dev": true } } }, "define-properties": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", "dev": true, "requires": { "object-keys": "^1.0.12" } }, "defined": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=", "dev": true }, "dependency-graph": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.9.0.tgz", "integrity": "sha512-9YLIBURXj4DJMFALxXw9K3Y3rwb5Fk0X5/8ipCzaN84+gKxoHK43tVKRNakCQbiEx07E8Uwhuq21BpUagFhZ8w==", "dev": true }, "detective": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.0.tgz", "integrity": "sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg==", "dev": true, "requires": { "acorn-node": "^1.6.1", "defined": "^1.0.0", "minimist": "^1.1.1" } }, "dir-glob": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", "dev": true, "requires": { "path-type": "^4.0.0" } }, "dom-serializer": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", "dev": true, "requires": { "domelementtype": "^2.0.1", "entities": "^2.0.0" }, "dependencies": { "domelementtype": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.0.2.tgz", "integrity": "sha512-wFwTwCVebUrMgGeAwRL/NhZtHAUyT9n9yg4IMDwf10+6iCMxSkVq9MGCVEH+QZWo1nNidy8kNvwmv4zWHDTqvA==", "dev": true } } }, "domelementtype": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", "dev": true }, "domutils": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", "dev": true, "requires": { "dom-serializer": "0", "domelementtype": "1" } }, "dot-prop": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", "dev": true, "requires": { "is-obj": "^1.0.0" }, "dependencies": { "is-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", "dev": true } } }, "electron-to-chromium": { "version": "1.3.248", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.248.tgz", "integrity": "sha512-+hQe6xqpODLw9Nr80KoT0/S+YarjNbI9wgZchkOopJLBLPgAsniK184P0IGVs/0NsoZf4lBnQhOsjen9a47Hrg==", "dev": true }, "entities": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==", "dev": true }, "error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, "requires": { "is-arrayish": "^0.2.1" } }, "es-abstract": { "version": "1.17.7", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", "dev": true, "requires": { "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", "has": "^1.0.3", "has-symbols": "^1.0.1", "is-callable": "^1.2.2", "is-regex": "^1.1.1", "object-inspect": "^1.8.0", "object-keys": "^1.1.1", "object.assign": "^4.1.1", "string.prototype.trimend": "^1.0.1", "string.prototype.trimstart": "^1.0.1" } }, "es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, "requires": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", "is-symbol": "^1.0.2" } }, "escalade": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.0.tgz", "integrity": "sha512-mAk+hPSO8fLDkhV7V0dXazH5pDc6MrjBTPyD3VeKzxnVFjH1MIxbCdqGZB9O8+EwWakZs3ZCbDS4IpRt79V1ig==", "dev": true }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, "esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true }, "fast-glob": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.4.tgz", "integrity": "sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ==", "dev": true, "requires": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", "glob-parent": "^5.1.0", "merge2": "^1.3.0", "micromatch": "^4.0.2", "picomatch": "^2.2.1" } }, "fastq": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.8.0.tgz", "integrity": "sha512-SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q==", "dev": true, "requires": { "reusify": "^1.0.4" } }, "fill-range": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dev": true, "requires": { "to-regex-range": "^5.0.1" } }, "fs-extra": { "version": "9.0.1", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.1.tgz", "integrity": "sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ==", "dev": true, "requires": { "at-least-node": "^1.0.0", "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", "universalify": "^1.0.0" }, "dependencies": { "jsonfile": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.0.1.tgz", "integrity": "sha512-jR2b5v7d2vIOust+w3wtFKZIfpC2pnRmFAhAC/BuweZFQR8qZzxH1OyrQ10HmdVYiXWkYUqPVsz91cG7EL2FBg==", "dev": true, "requires": { "graceful-fs": "^4.1.6", "universalify": "^1.0.0" } }, "universalify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/universalify/-/universalify-1.0.0.tgz", "integrity": "sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==", "dev": true } } }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true }, "fsevents": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", "dev": true, "optional": true }, "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", "dev": true }, "get-caller-file": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true }, "get-stdin": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", "dev": true }, "glob": { "version": "7.1.4", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", "dev": true, "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", "minimatch": "^3.0.4", "once": "^1.3.0", "path-is-absolute": "^1.0.0" } }, "glob-parent": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", "dev": true, "requires": { "is-glob": "^4.0.1" } }, "globby": { "version": "11.0.1", "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz", "integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==", "dev": true, "requires": { "array-union": "^2.1.0", "dir-glob": "^3.0.1", "fast-glob": "^3.1.1", "ignore": "^5.1.4", "merge2": "^1.3.0", "slash": "^3.0.0" } }, "graceful-fs": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.2.tgz", "integrity": "sha512-IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q==", "dev": true }, "has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, "requires": { "function-bind": "^1.1.1" } }, "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true }, "has-symbols": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", "dev": true }, "hex-color-regex": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/hex-color-regex/-/hex-color-regex-1.1.0.tgz", "integrity": "sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==", "dev": true }, "hsl-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/hsl-regex/-/hsl-regex-1.0.0.tgz", "integrity": "sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4=", "dev": true }, "hsla-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/hsla-regex/-/hsla-regex-1.0.0.tgz", "integrity": "sha1-wc56MWjIxmFAM6S194d/OyJfnDg=", "dev": true }, "html-comment-regex": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/html-comment-regex/-/html-comment-regex-1.1.2.tgz", "integrity": "sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ==", "dev": true }, "html-tags": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.1.0.tgz", "integrity": "sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg==", "dev": true }, "ignore": { "version": "5.1.8", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", "dev": true }, "import-cwd": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-3.0.0.tgz", "integrity": "sha512-4pnzH16plW+hgvRECbDWpQl3cqtvSofHWh44met7ESfZ8UZOWWddm8hEyDTqREJ9RbYHY8gi8DqmaelApoOGMg==", "dev": true, "requires": { "import-from": "^3.0.0" } }, "import-fresh": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", "dev": true, "requires": { "caller-path": "^2.0.0", "resolve-from": "^3.0.0" } }, "import-from": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/import-from/-/import-from-3.0.0.tgz", "integrity": "sha512-CiuXOFFSzkU5x/CR0+z7T91Iht4CXgfCxVOFRhh2Zyhg5wOpWvvDLQUsWl+gcN+QscYBjez8hDCt85O7RLDttQ==", "dev": true, "requires": { "resolve-from": "^5.0.0" }, "dependencies": { "resolve-from": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true } } }, "indexes-of": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", "dev": true }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, "requires": { "once": "^1.3.0", "wrappy": "1" } }, "inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "dev": true }, "is-absolute-url": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz", "integrity": "sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=", "dev": true }, "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", "dev": true }, "is-binary-path": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "dev": true, "requires": { "binary-extensions": "^2.0.0" } }, "is-callable": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.2.tgz", "integrity": "sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==", "dev": true }, "is-color-stop": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-color-stop/-/is-color-stop-1.1.0.tgz", "integrity": "sha1-z/9HGu5N1cnhWFmPvhKWe1za00U=", "dev": true, "requires": { "css-color-names": "^0.0.4", "hex-color-regex": "^1.1.0", "hsl-regex": "^1.0.0", "hsla-regex": "^1.0.0", "rgb-regex": "^1.0.1", "rgba-regex": "^1.0.0" } }, "is-date-object": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", "dev": true }, "is-directory": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", "dev": true }, "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "dev": true }, "is-glob": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", "dev": true, "requires": { "is-extglob": "^2.1.1" } }, "is-negative-zero": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.0.tgz", "integrity": "sha1-lVOxIbD6wohp2p7UWeIMdUN4hGE=", "dev": true }, "is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true }, "is-regex": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz", "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==", "dev": true, "requires": { "has-symbols": "^1.0.1" } }, "is-resolvable": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", "dev": true }, "is-svg": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-3.0.0.tgz", "integrity": "sha512-gi4iHK53LR2ujhLVVj+37Ykh9GLqYHX6JOVXbLAucaG/Cqw9xwdFOjDM2qeifLs1sF1npXXFvDu0r5HNgCMrzQ==", "dev": true, "requires": { "html-comment-regex": "^1.1.0" } }, "is-symbol": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", "dev": true, "requires": { "has-symbols": "^1.0.1" } }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", "dev": true }, "js-yaml": { "version": "3.13.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", "dev": true, "requires": { "argparse": "^1.0.7", "esprima": "^4.0.0" } }, "json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", "dev": true }, "json-parse-even-better-errors": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", "dev": true }, "jsonfile": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", "dev": true, "requires": { "graceful-fs": "^4.1.6" } }, "lines-and-columns": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", "dev": true }, "lodash": { "version": "4.17.20", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==", "dev": true }, "lodash.difference": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", "dev": true }, "lodash.forown": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.forown/-/lodash.forown-4.4.0.tgz", "integrity": "sha1-hRFc8E9z75ZuztUlEdOJPMRmg68=", "dev": true }, "lodash.get": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", "dev": true }, "lodash.groupby": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/lodash.groupby/-/lodash.groupby-4.6.0.tgz", "integrity": "sha1-Cwih3PaDl8OXhVwyOXg4Mt90A9E=", "dev": true }, "lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=", "dev": true }, "lodash.sortby": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", "dev": true }, "lodash.toarray": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.toarray/-/lodash.toarray-4.4.0.tgz", "integrity": "sha1-JMS/zWsvuji/0FlNsRedjptlZWE=", "dev": true }, "lodash.uniq": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", "dev": true }, "log-symbols": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", "dev": true, "requires": { "chalk": "^4.0.0" }, "dependencies": { "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { "color-convert": "^2.0.1" } }, "chalk": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", "dev": true, "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" } }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "requires": { "color-name": "~1.1.4" } }, "color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "requires": { "has-flag": "^4.0.0" } } } }, "mdn-data": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==", "dev": true }, "merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", "dev": true }, "micromatch": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", "dev": true, "requires": { "braces": "^3.0.1", "picomatch": "^2.0.5" } }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, "requires": { "brace-expansion": "^1.1.7" } }, "minimist": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true }, "mkdirp": { "version": "0.5.5", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "dev": true, "requires": { "minimist": "^1.2.5" } }, "node-emoji": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.10.0.tgz", "integrity": "sha512-Yt3384If5H6BYGVHiHwTL+99OzJKHhgp82S8/dktEK73T26BazdgZ4JZh92xSVtGNJvz9UbXdNAc5hcrXV42vw==", "dev": true, "requires": { "lodash.toarray": "^4.4.0" } }, "node-releases": { "version": "1.1.29", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.29.tgz", "integrity": "sha512-R5bDhzh6I+tpi/9i2hrrvGJ3yKPYzlVOORDkXhnZuwi5D3q1I5w4vYy24PJXTcLk9Q0kws9TO77T75bcK8/ysQ==", "dev": true, "requires": { "semver": "^5.3.0" } }, "normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true }, "normalize-range": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", "dev": true }, "normalize-url": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz", "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==", "dev": true }, "normalize.css": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/normalize.css/-/normalize.css-8.0.1.tgz", "integrity": "sha512-qizSNPO93t1YUuUhP22btGOo3chcvDFqFaj2TRybP0DMxkHOCTYwp3n34fel4a31ORXy4m1Xq0Gyqpb5m33qIg==", "dev": true }, "nth-check": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", "dev": true, "requires": { "boolbase": "~1.0.0" } }, "num2fraction": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", "dev": true }, "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", "dev": true }, "object-hash": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.0.3.tgz", "integrity": "sha512-JPKn0GMu+Fa3zt3Bmr66JhokJU5BaNBIh4ZeTlaCBzrBsOeXzwcKKAK1tbLiPKgvwmPXsDvvLHoWh5Bm7ofIYg==", "dev": true }, "object-inspect": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz", "integrity": "sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==", "dev": true }, "object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true }, "object.assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.1.tgz", "integrity": "sha512-VT/cxmx5yaoHSOTSyrCygIDFco+RsibY2NM0a4RdEeY/4KgqezwFtK1yr3U67xYhqJSlASm2pKhLVzPj2lr4bA==", "dev": true, "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.18.0-next.0", "has-symbols": "^1.0.1", "object-keys": "^1.1.1" }, "dependencies": { "es-abstract": { "version": "1.18.0-next.1", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", "dev": true, "requires": { "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", "has": "^1.0.3", "has-symbols": "^1.0.1", "is-callable": "^1.2.2", "is-negative-zero": "^2.0.0", "is-regex": "^1.1.1", "object-inspect": "^1.8.0", "object-keys": "^1.1.1", "object.assign": "^4.1.1", "string.prototype.trimend": "^1.0.1", "string.prototype.trimstart": "^1.0.1" } } } }, "object.getownpropertydescriptors": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz", "integrity": "sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==", "dev": true, "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.0-next.1" } }, "object.values": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.1.tgz", "integrity": "sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA==", "dev": true, "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.0-next.1", "function-bind": "^1.1.1", "has": "^1.0.3" } }, "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, "requires": { "wrappy": "1" } }, "parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, "requires": { "callsites": "^3.0.0" }, "dependencies": { "callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true } } }, "parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "dev": true, "requires": { "error-ex": "^1.3.1", "json-parse-better-errors": "^1.0.1" } }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "dev": true }, "path-parse": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", "dev": true }, "path-type": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true }, "picomatch": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", "dev": true }, "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, "postcss": { "version": "7.0.17", "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.17.tgz", "integrity": "sha512-546ZowA+KZ3OasvQZHsbuEpysvwTZNGJv9EfyCQdsIDltPSWHAeTQ5fQy/Npi2ZDtLI3zs7Ps/p6wThErhm9fQ==", "dev": true, "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", "supports-color": "^6.1.0" } }, "postcss-calc": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-7.0.1.tgz", "integrity": "sha512-oXqx0m6tb4N3JGdmeMSc/i91KppbYsFZKdH0xMOqK8V1rJlzrKlTdokz8ozUXLVejydRN6u2IddxpcijRj2FqQ==", "dev": true, "requires": { "css-unit-converter": "^1.1.1", "postcss": "^7.0.5", "postcss-selector-parser": "^5.0.0-rc.4", "postcss-value-parser": "^3.3.1" }, "dependencies": { "cssesc": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", "dev": true }, "postcss-selector-parser": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", "dev": true, "requires": { "cssesc": "^2.0.0", "indexes-of": "^1.0.1", "uniq": "^1.0.1" } } } }, "postcss-cli": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/postcss-cli/-/postcss-cli-8.1.0.tgz", "integrity": "sha512-FYuV5zyYX53X5RywInxjWLqHZ4oCBC3nDwrHYU3Z75mFqUo5IHfbeY593heWSagG90nPnXq3tXCck8+2CUl8EA==", "dev": true, "requires": { "chalk": "^4.0.0", "chokidar": "^3.3.0", "dependency-graph": "^0.9.0", "fs-extra": "^9.0.0", "get-stdin": "^8.0.0", "globby": "^11.0.0", "postcss-load-config": "^3.0.0", "postcss-reporter": "^7.0.0", "pretty-hrtime": "^1.0.3", "read-cache": "^1.0.0", "yargs": "^16.0.0" }, "dependencies": { "ansi-regex": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { "color-convert": "^2.0.1" } }, "chalk": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", "dev": true, "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" } }, "cliui": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.1.tgz", "integrity": "sha512-rcvHOWyGyid6I1WjT/3NatKj2kDt9OdSHSXpyLXaMWFbKpGACNW8pRhhdPUq9MWUOdwn8Rz9AVETjF4105rZZQ==", "dev": true, "requires": { "string-width": "^4.2.0", "strip-ansi": "^6.0.0", "wrap-ansi": "^7.0.0" } }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "requires": { "color-name": "~1.1.4" } }, "color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, "emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, "string-width": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", "dev": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", "strip-ansi": "^6.0.0" } }, "strip-ansi": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { "ansi-regex": "^5.0.0" } }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "requires": { "has-flag": "^4.0.0" } }, "wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, "requires": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0" } }, "y18n": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.2.tgz", "integrity": "sha512-CkwaeZw6dQgqgPGeTWKMXCRmMcBgETFlTml1+ZOO+q7kGst8NREJ+eWwFNPVUQ4QGdAaklbqCZHH6Zuep1RjiA==", "dev": true }, "yargs": { "version": "16.0.3", "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.0.3.tgz", "integrity": "sha512-6+nLw8xa9uK1BOEOykaiYAJVh6/CjxWXK/q9b5FpRgNslt8s22F2xMBqVIKgCRjNgGvGPBy8Vog7WN7yh4amtA==", "dev": true, "requires": { "cliui": "^7.0.0", "escalade": "^3.0.2", "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", "string-width": "^4.2.0", "y18n": "^5.0.1", "yargs-parser": "^20.0.0" } }, "yargs-parser": { "version": "20.2.1", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.1.tgz", "integrity": "sha512-yYsjuSkjbLMBp16eaOt7/siKTjNVjMm3SoJnIg3sEh/JsvqVVDyjRKmaJV4cl+lNIgq6QEco2i3gDebJl7/vLA==", "dev": true } } }, "postcss-colormin": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-4.0.3.tgz", "integrity": "sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==", "dev": true, "requires": { "browserslist": "^4.0.0", "color": "^3.0.0", "has": "^1.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" } }, "postcss-convert-values": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz", "integrity": "sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ==", "dev": true, "requires": { "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" } }, "postcss-discard-comments": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz", "integrity": "sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg==", "dev": true, "requires": { "postcss": "^7.0.0" } }, "postcss-discard-duplicates": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz", "integrity": "sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ==", "dev": true, "requires": { "postcss": "^7.0.0" } }, "postcss-discard-empty": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz", "integrity": "sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w==", "dev": true, "requires": { "postcss": "^7.0.0" } }, "postcss-discard-overridden": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz", "integrity": "sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg==", "dev": true, "requires": { "postcss": "^7.0.0" } }, "postcss-functions": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/postcss-functions/-/postcss-functions-3.0.0.tgz", "integrity": "sha1-DpTQFERwCkgd4g3k1V+yZAVkJQ4=", "dev": true, "requires": { "glob": "^7.1.2", "object-assign": "^4.1.1", "postcss": "^6.0.9", "postcss-value-parser": "^3.3.0" }, "dependencies": { "postcss": { "version": "6.0.23", "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", "dev": true, "requires": { "chalk": "^2.4.1", "source-map": "^0.6.1", "supports-color": "^5.4.0" } }, "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "requires": { "has-flag": "^3.0.0" } } } }, "postcss-js": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-2.0.3.tgz", "integrity": "sha512-zS59pAk3deu6dVHyrGqmC3oDXBdNdajk4k1RyxeVXCrcEDBUBHoIhE4QTsmhxgzXxsaqFDAkUZfmMa5f/N/79w==", "dev": true, "requires": { "camelcase-css": "^2.0.1", "postcss": "^7.0.18" }, "dependencies": { "postcss": { "version": "7.0.35", "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", "dev": true, "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", "supports-color": "^6.1.0" } } } }, "postcss-load-config": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.0.0.tgz", "integrity": "sha512-lErrN8imuEF1cSiHBV8MiR7HeuzlDpCGNtaMyYHlOBuJHHOGw6S4xOMZp8BbXPr7AGQp14L6PZDlIOpfFJ6f7w==", "dev": true, "requires": { "cosmiconfig": "^7.0.0", "import-cwd": "^3.0.0" }, "dependencies": { "cosmiconfig": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz", "integrity": "sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==", "dev": true, "requires": { "@types/parse-json": "^4.0.0", "import-fresh": "^3.2.1", "parse-json": "^5.0.0", "path-type": "^4.0.0", "yaml": "^1.10.0" } }, "import-fresh": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", "dev": true, "requires": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" } }, "parse-json": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.1.0.tgz", "integrity": "sha512-+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", "json-parse-even-better-errors": "^2.3.0", "lines-and-columns": "^1.1.6" } }, "resolve-from": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true } } }, "postcss-merge-longhand": { "version": "4.0.11", "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz", "integrity": "sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==", "dev": true, "requires": { "css-color-names": "0.0.4", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0", "stylehacks": "^4.0.0" } }, "postcss-merge-rules": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz", "integrity": "sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==", "dev": true, "requires": { "browserslist": "^4.0.0", "caniuse-api": "^3.0.0", "cssnano-util-same-parent": "^4.0.0", "postcss": "^7.0.0", "postcss-selector-parser": "^3.0.0", "vendors": "^1.0.0" }, "dependencies": { "postcss-selector-parser": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.1.tgz", "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", "dev": true, "requires": { "dot-prop": "^4.1.1", "indexes-of": "^1.0.1", "uniq": "^1.0.1" } } } }, "postcss-minify-font-values": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz", "integrity": "sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg==", "dev": true, "requires": { "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" } }, "postcss-minify-gradients": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz", "integrity": "sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q==", "dev": true, "requires": { "cssnano-util-get-arguments": "^4.0.0", "is-color-stop": "^1.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" } }, "postcss-minify-params": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz", "integrity": "sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg==", "dev": true, "requires": { "alphanum-sort": "^1.0.0", "browserslist": "^4.0.0", "cssnano-util-get-arguments": "^4.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0", "uniqs": "^2.0.0" } }, "postcss-minify-selectors": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz", "integrity": "sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==", "dev": true, "requires": { "alphanum-sort": "^1.0.0", "has": "^1.0.0", "postcss": "^7.0.0", "postcss-selector-parser": "^3.0.0" }, "dependencies": { "postcss-selector-parser": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.1.tgz", "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", "dev": true, "requires": { "dot-prop": "^4.1.1", "indexes-of": "^1.0.1", "uniq": "^1.0.1" } } } }, "postcss-nested": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-4.2.3.tgz", "integrity": "sha512-rOv0W1HquRCamWy2kFl3QazJMMe1ku6rCFoAAH+9AcxdbpDeBr6k968MLWuLjvjMcGEip01ak09hKOEgpK9hvw==", "dev": true, "requires": { "postcss": "^7.0.32", "postcss-selector-parser": "^6.0.2" }, "dependencies": { "postcss": { "version": "7.0.35", "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", "dev": true, "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", "supports-color": "^6.1.0" } } } }, "postcss-normalize-charset": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz", "integrity": "sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g==", "dev": true, "requires": { "postcss": "^7.0.0" } }, "postcss-normalize-display-values": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz", "integrity": "sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ==", "dev": true, "requires": { "cssnano-util-get-match": "^4.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" } }, "postcss-normalize-positions": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz", "integrity": "sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA==", "dev": true, "requires": { "cssnano-util-get-arguments": "^4.0.0", "has": "^1.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" } }, "postcss-normalize-repeat-style": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz", "integrity": "sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q==", "dev": true, "requires": { "cssnano-util-get-arguments": "^4.0.0", "cssnano-util-get-match": "^4.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" } }, "postcss-normalize-string": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz", "integrity": "sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA==", "dev": true, "requires": { "has": "^1.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" } }, "postcss-normalize-timing-functions": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz", "integrity": "sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A==", "dev": true, "requires": { "cssnano-util-get-match": "^4.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" } }, "postcss-normalize-unicode": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz", "integrity": "sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg==", "dev": true, "requires": { "browserslist": "^4.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" } }, "postcss-normalize-url": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz", "integrity": "sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA==", "dev": true, "requires": { "is-absolute-url": "^2.0.0", "normalize-url": "^3.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" } }, "postcss-normalize-whitespace": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz", "integrity": "sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==", "dev": true, "requires": { "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" } }, "postcss-ordered-values": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz", "integrity": "sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==", "dev": true, "requires": { "cssnano-util-get-arguments": "^4.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" } }, "postcss-reduce-initial": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz", "integrity": "sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==", "dev": true, "requires": { "browserslist": "^4.0.0", "caniuse-api": "^3.0.0", "has": "^1.0.0", "postcss": "^7.0.0" } }, "postcss-reduce-transforms": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz", "integrity": "sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==", "dev": true, "requires": { "cssnano-util-get-match": "^4.0.0", "has": "^1.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0" } }, "postcss-reporter": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/postcss-reporter/-/postcss-reporter-7.0.1.tgz", "integrity": "sha512-R9AK80KIqqMb+lwGRBcRkXS7r96VCTxrZvvrfibyA/dWjqctwx7leHMCC05A9HbW8PnChwOWwrmISwp5HQu5wg==", "dev": true, "requires": { "colorette": "^1.2.1", "lodash.difference": "^4.5.0", "lodash.forown": "^4.4.0", "lodash.get": "^4.4.2", "lodash.groupby": "^4.6.0", "lodash.sortby": "^4.7.0", "log-symbols": "^4.0.0" } }, "postcss-selector-parser": { "version": "6.0.4", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz", "integrity": "sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==", "dev": true, "requires": { "cssesc": "^3.0.0", "indexes-of": "^1.0.1", "uniq": "^1.0.1", "util-deprecate": "^1.0.2" } }, "postcss-svgo": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-4.0.2.tgz", "integrity": "sha512-C6wyjo3VwFm0QgBy+Fu7gCYOkCmgmClghO+pjcxvrcBKtiKt0uCF+hvbMO1fyv5BMImRK90SMb+dwUnfbGd+jw==", "dev": true, "requires": { "is-svg": "^3.0.0", "postcss": "^7.0.0", "postcss-value-parser": "^3.0.0", "svgo": "^1.0.0" } }, "postcss-unique-selectors": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz", "integrity": "sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg==", "dev": true, "requires": { "alphanum-sort": "^1.0.0", "postcss": "^7.0.0", "uniqs": "^2.0.0" } }, "postcss-value-parser": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "dev": true }, "pretty-hrtime": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", "dev": true }, "q": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", "dev": true }, "read-cache": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", "integrity": "sha1-5mTvMRYRZsl1HNvo28+GtftY93Q=", "dev": true, "requires": { "pify": "^2.3.0" } }, "readdirp": { "version": "3.4.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", "dev": true, "requires": { "picomatch": "^2.2.1" } }, "reduce-css-calc": { "version": "2.1.7", "resolved": "https://registry.npmjs.org/reduce-css-calc/-/reduce-css-calc-2.1.7.tgz", "integrity": "sha512-fDnlZ+AybAS3C7Q9xDq5y8A2z+lT63zLbynew/lur/IR24OQF5x98tfNwf79mzEdfywZ0a2wpM860FhFfMxZlA==", "dev": true, "requires": { "css-unit-converter": "^1.1.1", "postcss-value-parser": "^3.3.0" } }, "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", "dev": true }, "resolve": { "version": "1.17.0", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", "dev": true, "requires": { "path-parse": "^1.0.6" } }, "resolve-from": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", "dev": true }, "reusify": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", "dev": true }, "rgb-regex": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/rgb-regex/-/rgb-regex-1.0.1.tgz", "integrity": "sha1-wODWiC3w4jviVKR16O3UGRX+rrE=", "dev": true }, "rgba-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/rgba-regex/-/rgba-regex-1.0.0.tgz", "integrity": "sha1-QzdOLiyglosO8VI0YLfXMP8i7rM=", "dev": true }, "run-parallel": { "version": "1.1.9", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==", "dev": true }, "sax": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", "dev": true }, "semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true }, "simple-swizzle": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=", "dev": true, "requires": { "is-arrayish": "^0.3.1" }, "dependencies": { "is-arrayish": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", "dev": true } } }, "slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true }, "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", "dev": true }, "stable": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", "dev": true }, "string.prototype.trimend": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", "dev": true, "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.5" } }, "string.prototype.trimstart": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", "dev": true, "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.5" } }, "stylehacks": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.3.tgz", "integrity": "sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==", "dev": true, "requires": { "browserslist": "^4.0.0", "postcss": "^7.0.0", "postcss-selector-parser": "^3.0.0" }, "dependencies": { "postcss-selector-parser": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.1.tgz", "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", "dev": true, "requires": { "dot-prop": "^4.1.1", "indexes-of": "^1.0.1", "uniq": "^1.0.1" } } } }, "supports-color": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", "dev": true, "requires": { "has-flag": "^3.0.0" } }, "svgo": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz", "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==", "dev": true, "requires": { "chalk": "^2.4.1", "coa": "^2.0.2", "css-select": "^2.0.0", "css-select-base-adapter": "^0.1.1", "css-tree": "1.0.0-alpha.37", "csso": "^4.0.2", "js-yaml": "^3.13.1", "mkdirp": "~0.5.1", "object.values": "^1.1.0", "sax": "~1.2.4", "stable": "^0.1.8", "unquote": "~1.1.1", "util.promisify": "~1.0.0" } }, "tailwindcss": { "version": "1.8.13", "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-1.8.13.tgz", "integrity": "sha512-z3R/6qPqfjauSR4qHhlA8I0OnfSyuotvigXISq666k+V52VSs5HV//KZ0Xe3qrZ4h5Um4OG5g+lcgjXSfURjDw==", "dev": true, "requires": { "@fullhuman/postcss-purgecss": "^2.1.2", "autoprefixer": "^9.4.5", "browserslist": "^4.12.0", "bytes": "^3.0.0", "chalk": "^3.0.0 || ^4.0.0", "color": "^3.1.2", "detective": "^5.2.0", "fs-extra": "^8.0.0", "html-tags": "^3.1.0", "lodash": "^4.17.20", "node-emoji": "^1.8.1", "normalize.css": "^8.0.1", "object-hash": "^2.0.3", "postcss": "^7.0.11", "postcss-functions": "^3.0.0", "postcss-js": "^2.0.0", "postcss-nested": "^4.1.1", "postcss-selector-parser": "^6.0.0", "postcss-value-parser": "^4.1.0", "pretty-hrtime": "^1.0.3", "reduce-css-calc": "^2.1.6", "resolve": "^1.14.2" }, "dependencies": { "@fullhuman/postcss-purgecss": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/@fullhuman/postcss-purgecss/-/postcss-purgecss-2.3.0.tgz", "integrity": "sha512-qnKm5dIOyPGJ70kPZ5jiz0I9foVOic0j+cOzNDoo8KoCf6HjicIZ99UfO2OmE7vCYSKAAepEwJtNzpiiZAh9xw==", "dev": true, "requires": { "postcss": "7.0.32", "purgecss": "^2.3.0" }, "dependencies": { "chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "requires": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" }, "dependencies": { "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "requires": { "has-flag": "^3.0.0" } } } }, "postcss": { "version": "7.0.32", "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.32.tgz", "integrity": "sha512-03eXong5NLnNCD05xscnGKGDZ98CyzoqPSMjOe6SuoQY7Z2hIj0Ld1g/O/UQRuOle2aRtiIRDg9tDcTGAkLfKw==", "dev": true, "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", "supports-color": "^6.1.0" } } } }, "browserslist": { "version": "4.14.5", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.14.5.tgz", "integrity": "sha512-Z+vsCZIvCBvqLoYkBFTwEYH3v5MCQbsAjp50ERycpOjnPmolg1Gjy4+KaWWpm8QOJt9GHkhdqAl14NpCX73CWA==", "dev": true, "requires": { "caniuse-lite": "^1.0.30001135", "electron-to-chromium": "^1.3.571", "escalade": "^3.1.0", "node-releases": "^1.1.61" } }, "caniuse-lite": { "version": "1.0.30001148", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001148.tgz", "integrity": "sha512-E66qcd0KMKZHNJQt9hiLZGE3J4zuTqE1OnU53miEVtylFbwOEmeA5OsRu90noZful+XGSQOni1aT2tiqu/9yYw==", "dev": true }, "chalk": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", "dev": true, "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" }, "dependencies": { "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { "color-convert": "^2.0.1" } }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "requires": { "has-flag": "^4.0.0" } } } }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "requires": { "color-name": "~1.1.4" } }, "color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, "commander": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", "dev": true }, "electron-to-chromium": { "version": "1.3.578", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.578.tgz", "integrity": "sha512-z4gU6dA1CbBJsAErW5swTGAaU2TBzc2mPAonJb00zqW1rOraDo2zfBMDRvaz9cVic+0JEZiYbHWPw/fTaZlG2Q==", "dev": true }, "fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", "dev": true, "requires": { "graceful-fs": "^4.2.0", "jsonfile": "^4.0.0", "universalify": "^0.1.0" } }, "node-releases": { "version": "1.1.61", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.61.tgz", "integrity": "sha512-DD5vebQLg8jLCOzwupn954fbIiZht05DAZs0k2u8NStSe6h9XdsuIQL8hSRKYiU8WUQRznmSDrKGbv3ObOmC7g==", "dev": true }, "postcss-value-parser": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==", "dev": true }, "purgecss": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/purgecss/-/purgecss-2.3.0.tgz", "integrity": "sha512-BE5CROfVGsx2XIhxGuZAT7rTH9lLeQx/6M0P7DTXQH4IUc3BBzs9JUzt4yzGf3JrH9enkeq6YJBe9CTtkm1WmQ==", "dev": true, "requires": { "commander": "^5.0.0", "glob": "^7.0.0", "postcss": "7.0.32", "postcss-selector-parser": "^6.0.2" }, "dependencies": { "chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "requires": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" }, "dependencies": { "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "requires": { "has-flag": "^3.0.0" } } } }, "postcss": { "version": "7.0.32", "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.32.tgz", "integrity": "sha512-03eXong5NLnNCD05xscnGKGDZ98CyzoqPSMjOe6SuoQY7Z2hIj0Ld1g/O/UQRuOle2aRtiIRDg9tDcTGAkLfKw==", "dev": true, "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", "supports-color": "^6.1.0" } } } } } }, "timsort": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=", "dev": true }, "to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, "requires": { "is-number": "^7.0.0" } }, "uniq": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", "dev": true }, "uniqs": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz", "integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=", "dev": true }, "universalify": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", "dev": true }, "unquote": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=", "dev": true }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", "dev": true }, "util.promisify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz", "integrity": "sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==", "dev": true, "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.2", "has-symbols": "^1.0.1", "object.getownpropertydescriptors": "^2.1.0" } }, "vendors": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.3.tgz", "integrity": "sha512-fOi47nsJP5Wqefa43kyWSg80qF+Q3XA6MUkgi7Hp1HQaKDQW4cQrK2D0P7mmbFtsV1N89am55Yru/nyEwRubcw==", "dev": true }, "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", "dev": true }, "xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", "dev": true }, "yaml": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz", "integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==", "dev": true } } } ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.576612 pybtex-0.24.0/docs/theme/package.json0000644000175000001440000000053700000000000017204 0ustar00agusers00000000000000{ "name": "pybtex-css", "version": "1.0.0", "description": "Pybtex CSS", "devDependencies": { "cssnano": "^4.1.10", "postcss-cli": "^8.1.0", "tailwindcss": "^1.8.13" }, "scripts": { "build": "env NODE_ENV=production postcss -o static/master.css css-src/master.css" }, "author": "Andrey Golovizin", "license": "MIT" } ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.574612 pybtex-0.24.0/docs/theme/postcss.config.js0000644000175000001440000000023100000000000020205 0ustar00agusers00000000000000module.exports = { plugins: [ require('tailwindcss'), require('autoprefixer'), require('cssnano')({ preset: 'default', }), ] } ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.950714 pybtex-0.24.0/docs/theme/static/0000755000175000001440000000000000000000000016200 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.579612 pybtex-0.24.0/docs/theme/static/master.css0000644000175000001440000001664700000000000020223 0ustar00agusers00000000000000/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}details{display:block}summary{display:list-item}template{display:none}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}button{background-color:transparent;background-image:none}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}fieldset,ol,ul{margin:0;padding:0}ol,ul{list-style:none}html{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Noto Sans,Roboto,Verdana,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}*,:after,:before{box-sizing:border-box;border:0 solid #e2e8f0}hr{border-top-width:1px}img{border-style:solid}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#a0aec0}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#a0aec0}input::placeholder,textarea::placeholder{color:#a0aec0}[role=button],button{cursor:pointer}table{border-collapse:collapse}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}button,input,optgroup,select,textarea{padding:0;line-height:inherit;color:inherit}code,kbd,pre,samp{font-family:Menlo,Monaco,Noto Sans Mono,Source Code Pro,Consolas,Courier New,Liberation Mono,monospace}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}.table{display:table}.contents{display:contents}.fixed{position:fixed}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}@-webkit-keyframes spin{to{transform:rotate(1turn)}}@keyframes spin{to{transform:rotate(1turn)}}@-webkit-keyframes ping{75%,to{transform:scale(2);opacity:0}}@keyframes ping{75%,to{transform:scale(2);opacity:0}}@-webkit-keyframes pulse{50%{opacity:.5}}@keyframes pulse{50%{opacity:.5}}@-webkit-keyframes bounce{0%,to{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(.8,0,1,1);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,.2,1);animation-timing-function:cubic-bezier(0,0,.2,1)}}@keyframes bounce{0%,to{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(.8,0,1,1);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,.2,1);animation-timing-function:cubic-bezier(0,0,.2,1)}}.light{color:#b58000}.dark{color:#804000}.document{font-family:Noto Serif,Georgia,Cambria,Times New Roman,Times,serif}.document,.prev-next{margin-left:auto;margin-right:auto;width:100%}@media (min-width:576px){.document,.prev-next{max-width:576px}}@media (min-width:768px){.document,.prev-next{max-width:768px}}@media (max-width:576px){html{font-size:12pt}}.document{margin-top:.5rem}a{text-decoration:none;color:#b58000;color:#804000}a:hover{text-decoration:underline;color:#b58000}p{margin-top:.5rem;margin-bottom:.5rem;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto}blockquote{margin-top:1rem;margin-bottom:1rem;margin-left:2rem}ul{list-style-type:disc}ol,ul{margin-top:.5rem;margin-bottom:.5rem;margin-left:2rem}ol{list-style-type:decimal}li{margin-top:.25rem}img{border-style:none}h1,h1 a,h2,h2 a,h3,h3 a{color:#b58000}.search a,h1,h1 a,h2,h2 a,h3,h3 a{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Noto Sans,Roboto,Verdana,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}h1{margin-top:4rem;font-size:2.25rem}h1,h2{margin-bottom:.5rem}h2{margin-top:3rem;font-size:1.5rem}h3{margin-top:2rem;margin-bottom:.5rem;font-size:1.125rem}a.headerlink{visibility:hidden;text-decoration:none}caption:hover>a.headerlink,div.code-block-caption:hover>a.headerlink,dt:hover>a.headerlink,h1:hover>a.headerlink,h2:hover>a.headerlink,h3:hover>a.headerlink,h4:hover>a.headerlink,h5:hover>a.headerlink,h6:hover>a.headerlink,p.caption:hover>a.headerlink{visibility:visible;color:#804000}.contents,.toctree-wrapper{margin-top:2rem;margin-bottom:2rem;margin-left:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Noto Sans,Roboto,Verdana,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;color:#804000}.contents ul,.toctree-wrapper ul{color:#b58000}.contents .topic-title{display:none}dl,dt{margin-top:1rem}dd{margin-left:2rem}code,pre,tt{font-family:Menlo,Monaco,Noto Sans Mono,Source Code Pro,Consolas,Courier New,Liberation Mono,monospace;font-size:1rem;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code{white-space:pre;overflow-wrap:break-word}code.descname{font-weight:700;color:#b58000}.class dt,.function dt{font-family:Menlo,Monaco,Noto Sans Mono,Source Code Pro,Consolas,Courier New,Liberation Mono,monospace}.class dt em,.function dt em{font-style:normal}.versionmodified{font-style:italic}.highlight pre,.sourcecode pre{margin-top:1rem;margin-bottom:1rem;margin-left:1rem;font-size:.875rem}.field-list ul{margin:m-0}.field-list li{margin:0}.field-list th{font-weight:400}.field-list td strong{font-weight:400;font-family:Menlo,Monaco,Noto Sans Mono,Source Code Pro,Consolas,Courier New,Liberation Mono,monospace}.first{margin-top:0!important}.left{float:left}.right{float:right}.middle{display:inline-block;text-align:center}.relbar{margin-top:1rem;margin-left:1rem;margin-right:1rem;font-size:.875rem}form input{--border-opacity:1;border:1px solid #a0aec0;border-color:rgba(160,174,192,var(--border-opacity));padding-left:.25rem;padding-right:.25rem;font-size:.875rem;border-radius:.125rem}.prev-next{margin-top:3rem;word-wrap:normal}.footer,.prev-next{text-align:center;clear:both}.footer{margin-top:5rem;margin-bottom:1rem;font-size:.75rem;opacity:.5}.admonition{border:.4ex solid;margin-top:1ex!important;margin-bottom:1ex!important;background:red}.admonition p{margin:1ex 1em;padding:0}.warning{border-color:#d04040}.highlighted{background-color:#fbe54e}././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.579612 pybtex-0.24.0/docs/theme/static/print.css0000644000175000001440000000013100000000000020041 0ustar00agusers00000000000000@import url(master.css); a { text-decoration: none; } div#buttons { display: none; } ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.579612 pybtex-0.24.0/docs/theme/static/site.css0000644000175000001440000000164200000000000017661 0ustar00agusers00000000000000@import url(master.css); h1 { font-size: 400%; font-weight: 700; margin-top: 0.1em; margin-bottom: 0.1em; border-bottom-style: solid; border-bottom-color: #884000; border-bottom-width: 0.1em; } p { text-align: left; } body { margin-bottom: 3em; } @media only screen and (min-width: 600px) { h1 { font-size: 800%; } .download-links { margin-bottom: 3ex; width: 100%; text-align: right; } .download-links ul { font-size: 0; } .download-links ul li { font-size: 1rem; font-family: sans-serif; list-style: none; display: inline; } .download-links ul li p { display: inline; } .download-links ul li:not(:last-child) { margin-right: 0.3em; } .download-links ul li:not(:first-child):before { margin-right: 0.3em; content: "|"; } } ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.574612 pybtex-0.24.0/docs/theme/tailwind.config.js0000644000175000001440000000132600000000000020330 0ustar00agusers00000000000000module.exports = { theme: { fontFamily: { sans: ['-apple-system', 'BlinkMacSystemFont', 'Segoe UI', 'Helvetica Neue', 'Noto Sans', 'Roboto', 'Verdana', 'sans-serif', 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'], serif: ['Noto Serif', 'Georgia', 'Cambria', 'Times New Roman', 'Times', 'serif'], mono: ['Menlo', 'Monaco', 'Noto Sans Mono', 'Source Code Pro', 'Consolas', 'Courier New', 'Liberation Mono', 'monospace'] }, listStyleType: { none: 'none', disc: 'disc', decimal: 'decimal', circle: 'circle' }, }, purge: ['../build/**/*.html'], future: { purgeLayersByDefault: true, removeDeprecatedGapUtilities: true, }, } ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.576612 pybtex-0.24.0/docs/theme/theme.conf0000644000175000001440000000014400000000000016661 0ustar00agusers00000000000000[theme] inherit = basic stylesheet = master.css pygments_style = pybtex [options] nosidebar = true ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.951714 pybtex-0.24.0/examples/0000755000175000001440000000000000000000000014475 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.570612 pybtex-0.24.0/examples/make.sh0000755000175000001440000000023200000000000015746 0ustar00agusers00000000000000#!/bin/sh export PYTHONPATH=.. latex xampl ../scripts/pybtex xampl latex xampl latex xampl echo echo "Examine xampl.dvi to see what you have just got." ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.951714 pybtex-0.24.0/examples/sample_plugins/0000755000175000001440000000000000000000000017517 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5636122 pybtex-0.24.0/examples/sample_plugins/README0000644000175000001440000000063300000000000020401 0ustar00agusers00000000000000A sample project with two Pybtex plugins: a bibliography parser and a bibliography writer that parse/write bibliography data as plain Python code. Usage: $ python setup.py develop $ pybtex --help (python plugins is now listed as a possible choice for the --bibliography-format option. $ pybtex-convert --help (see the help for -f and -t options) $ pybtex-convert foo.bib foo.py $ pybtex-convert foo.py foo.bib ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5236125 pybtex-0.24.0/examples/sample_plugins/setup.py0000644000175000001440000000070000000000000021226 0ustar00agusers00000000000000from setuptools import setup setup(name='Sample Pybtex plugins', author='Andrey Golovizin', py_modules=['toyplugins'], entry_points = { 'pybtex.database.output': 'python = toyplugins:PythonWriter', 'pybtex.database.output.suffixes': '.py = toyplugins:PythonWriter', 'pybtex.database.input': 'python = toyplugins:PythonParser', 'pybtex.database.input.suffixes': '.py = toyplugins:PythonParser', }, ) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5636122 pybtex-0.24.0/examples/sample_plugins/toyplugins.py0000644000175000001440000000365300000000000022315 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """Sample Pybtex plugins.""" from pybtex.database import BibliographyData, Entry, Person from pybtex.database.input import BaseParser from pybtex.database.output import BaseWriter from pybtex.utils import OrderedCaseInsensitiveDict class PythonWriter(BaseWriter): """Bibliography output plugin which formats the data as Python code.""" def write_stream(self, bib_data, stream): print(repr(bib_data), file=stream) class PythonParser(BaseParser): """Bibliography parser plugin which loads the data from Python code.""" def parse_stream(self, stream): context = { 'BibliographyData': BibliographyData, 'OrderedCaseInsensitiveDict': OrderedCaseInsensitiveDict, 'Entry': Entry, 'Person': Person, } code = stream.read() self.data = eval(code, context) ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.951714 pybtex-0.24.0/examples/tugboat/0000755000175000001440000000000000000000000016142 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.569612 pybtex-0.24.0/examples/tugboat/README0000644000175000001440000000020600000000000017020 0ustar00agusers00000000000000One of the largest .bib files from the TeXLive distribution. No .tex file provided, just run pybtex tugboat and examine tugboat.bbl. ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.565612 pybtex-0.24.0/examples/tugboat/tugboat.aux0000644000175000001440000026636400000000000020347 0ustar00agusers00000000000000\relax \citation{*} \bibstyle{unsrt} \bibdata{tugboat} \bibcite{Welland:TB1-1-2}{1} \bibcite{Palais:TB1-1-3}{2} \bibcite{Swanson:TB1-1-7}{3} \bibcite{Spivak:TB1-1-10}{4} \bibcite{Morris:TB1-1-12}{5} \bibcite{Zabala:TB1-1-16}{6} \bibcite{Fuchs:TB1-1-17}{7} \bibcite{Hodge:TB1-1-19}{8} \bibcite{Beeton:TB1-1-20}{9} \bibcite{Winograd:TB1-1-Appendix-A}{10} \bibcite{Emch:TB1-1-22}{11} \bibcite{Anonymous:TB2-1-2}{12} \bibcite{Welland:TB2-1-3}{13} \bibcite{Palais:TB2-1-3}{14} \bibcite{Morris:TB2-1-5}{15} \bibcite{Whidden:TB2-1-6}{16} \bibcite{Morris:TB2-1-6}{17} \bibcite{Morris:TB2-1-7}{18} \bibcite{Whidden:TB2-1-9}{19} \bibcite{Kim:TB2-1-10}{20} \bibcite{Fuchs:TB2-1-11}{21} \bibcite{Zabala:TB2-1-11}{22} \bibcite{Fuchs:TB2-1-12}{23} \bibcite{Sherrod:TB2-1-17}{24} \bibcite{Lawson:TB2-1-20}{25} \bibcite{Lawson:TB2-1-32}{26} \bibcite{Doherty:TB2-1-48}{27} \bibcite{Berns:TB2-1-48}{28} \bibcite{Doherty:TB2-1-48-2}{29} \bibcite{Incerpi:TB2-1-49}{30} \bibcite{Hodge:TB2-1-51}{31} \bibcite{Stromquist:TB2-1-51}{32} \bibcite{Totland:TB2-1-51}{33} \bibcite{Beeton:TB2-1-53}{34} \bibcite{Beeton:TB2-1-53-2}{35} \bibcite{Diaz:TB2-1-55}{36} \bibcite{Keller:TB2-1-56}{37} \bibcite{Price:TB2-1-87}{38} \bibcite{Price:TB2-1-98}{39} \bibcite{Price:TB2-1-111}{40} \bibcite{Milligan:TB2-1-119}{41} \bibcite{Price:TB2-1-122}{42} \bibcite{Price:TB2-1-125}{43} \bibcite{Eck:TB2-1-127}{44} \bibcite{Hirst:TB2-1-127}{45} \bibcite{Anonymous:TB2-1-128}{46} \bibcite{Anonymous:TB2-2-2}{47} \bibcite{Anonymous:TB2-2-3}{48} \bibcite{Welland:TB2-2-3}{49} \bibcite{Spivak:TB2-2-3}{50} \bibcite{Morris:TB2-2-4}{51} \bibcite{Whidden:TB2-2-5}{52} \bibcite{Morris:TB2-2-5}{53} \bibcite{Doherty:TB2-2-6}{54} \bibcite{Anonymous:TB2-2-8}{55} \bibcite{Pierce:TB2-2-8}{56} \bibcite{Milligan:TB2-2-9}{57} \bibcite{Milligan:TB2-2-10}{58} \bibcite{Fuchs:TB2-2-12}{59} \bibcite{Zabala:TB2-2-16}{60} \bibcite{Liang:TB2-2-19}{61} \bibcite{Harris:TB2-2-21}{62} \bibcite{Fuchs:TB2-2-25}{63} \bibcite{Anonymous:TB2-2-25}{64} \bibcite{Trabb-Pardo:TB2-2-26}{65} \bibcite{Hodge:TB2-2-28}{66} \bibcite{Sherrod:TB2-2-28}{67} \bibcite{Beeton:TB2-2-29}{68} \bibcite{Milligan:TB2-2-29}{69} \bibcite{Schwab:TB2-2-29}{70} \bibcite{Kelly:TB2-2-30}{71} \bibcite{Nichols:TB2-2-33}{72} \bibcite{Smith:TB2-2-34}{73} \bibcite{Doherty:TB2-2-34}{74} \bibcite{Hickey:TB2-2-35}{75} \bibcite{LeVeque:TB2-2-39}{76} \bibcite{Whitney:TB2-2-40}{77} \bibcite{Doherty:TB2-2-40}{78} \bibcite{Beeton:TB2-2-42}{79} \bibcite{Price:TB2-2-43}{80} \bibcite{Anonymous:TB2-2-43}{81} \bibcite{Milligan:TB2-2-43}{82} \bibcite{Milligan:TB2-2-44}{83} \bibcite{McKay:TB2-2-46}{84} \bibcite{Spivak:TB2-2-50}{85} \bibcite{Diaz:TB2-2-Appendix-A}{86} \bibcite{Price:TB2-2-54}{87} \bibcite{Anonymous:TB2-2-54}{88} \bibcite{Stovall:TB2-2-57}{89} \bibcite{Spivak:TB2-2-57}{90} \bibcite{Price:TB2-2-57}{91} \bibcite{Price:TB2-2-58}{92} \bibcite{Anonymous:TB2-3-2}{93} \bibcite{Anonymous:TB2-3-3}{94} \bibcite{Spivak:TB2-3-3}{95} \bibcite{Whidden:TB2-3-4}{96} \bibcite{Knuth:TB2-3-5}{97} \bibcite{Pierce:TB2-3-7}{98} \bibcite{Samuel:TB2-3-7}{99} \bibcite{Fuchs:TB2-3-8}{100} \bibcite{Sauter:TB2-3-13}{101} \bibcite{Thedford:TB2-3-14}{102} \bibcite{Mooney:TB2-3-14}{103} \bibcite{Murphy:TB2-3-15}{104} \bibcite{Fuchs:TB2-3-21}{105} \bibcite{Frisch:TB2-3-22}{106} \bibcite{Beeton:TB2-3-23}{107} \bibcite{Carnes:TB2-3-25}{108} \bibcite{Plass:TB2-3-26}{109} \bibcite{Rosenschein:TB2-3-27}{110} \bibcite{Rodgers:TB2-3-28}{111} \bibcite{Morris:TB2-3-29}{112} \bibcite{Jackson:TB2-3-29}{113} \bibcite{Incerpi:TB2-3-32}{114} \bibcite{Nichols:TB2-3-32}{115} \bibcite{Blair:TB2-3-32}{116} \bibcite{Sauter:TB2-3-34}{117} \bibcite{Whitney:TB2-3-35}{118} \bibcite{Beeton:TB2-3-35}{119} \bibcite{Price:TB2-3-36}{120} \bibcite{Anonymous:TB2-3-36}{121} \bibcite{Murphy:TB2-3-37}{122} \bibcite{Plass:TB2-3-39}{123} \bibcite{Nichols:TB2-3-57}{124} \bibcite{Price:TB2-3-58}{125} \bibcite{Anonymous:TB2-3-61}{126} \bibcite{Cole:TB2-3-66}{127} \bibcite{Sannella:TB2-3-66}{128} \bibcite{Anonymous:TB2-3-xx}{129} \bibcite{Anonymous:TB2-3-xx-2}{130} \bibcite{Anonymous:TB3-1-2}{131} \bibcite{Anonymous:TB3-1-3}{132} \bibcite{Beeton:TB3-1-3}{133} \bibcite{Morris:TB3-1-4}{134} \bibcite{Anonymous:TB3-1-xx}{135} \bibcite{McGaffey:TB3-1-7}{136} \bibcite{Price:TB3-1-10}{137} \bibcite{Knuth:TB3-1-10}{138} \bibcite{Frisch:TB3-1-28}{139} \bibcite{Carnes:TB3-1-28}{140} \bibcite{Canzii:TB3-1-29}{141} \bibcite{Aiello:TB3-1-30}{142} \bibcite{Nichols:TB3-1-32}{143} \bibcite{Carnes:TB3-1-32}{144} \bibcite{Beeton:TB3-1-33}{145} \bibcite{Price:TB3-1-33}{146} \bibcite{Anonymous:TB3-1-33}{147} \bibcite{Beeman:TB3-1-35}{148} \bibcite{Beeman:TB3-1-39}{149} \bibcite{Anonymous:TB3-1-43}{150} \bibcite{Whidden:TB3-1-xx}{151} \bibcite{Anonymous:TB3-1-xx-2}{152} \bibcite{Anonymous:TB3-1-xx-3}{153} \bibcite{Anonymous:TB3-2-2}{154} \bibcite{Anonymous:TB3-2-3}{155} \bibcite{Anonymous:TB3-2-4}{156} \bibcite{Plass:TB3-2-4}{157} \bibcite{Anonymous:TB3-2-xx}{158} \bibcite{MacKay:TB3-2-7}{159} \bibcite{Whitney:TB3-2-9}{160} \bibcite{Anonymous:TB3-2-113}{161} \bibcite{Fuchs:TB3-2-14}{162} \bibcite{Thedford:TB3-2-20}{163} \bibcite{Fuchs:TB3-2-20}{164} \bibcite{Plass:TB3-2-21}{165} \bibcite{Grosso:TB3-2-22}{166} \bibcite{Nichols:TB3-2-23}{167} \bibcite{Carnes:TB3-2-24}{168} \bibcite{Mong:TB3-2-25}{169} \bibcite{Beeton:TB3-2-25}{170} \bibcite{Jackson:TB3-2-26}{171} \bibcite{Price:TB3-2-27}{172} \bibcite{Anonymous:TB3-2-27}{173} \bibcite{Beeton:TB3-2-28}{174} \bibcite{Lamport:TB3-2-34}{175} \bibcite{Beeton:TB3-2-36}{176} \bibcite{Blanford:TB3-2-38}{177} \bibcite{Anonymous:TB3-2-38}{178} \bibcite{Whidden:TB3-2-xx}{179} \bibcite{Anonymous:TB3-2-xx-2}{180} \bibcite{Anonymous:TB4-1-2}{181} \bibcite{Anonymous:TB4-1-3}{182} \bibcite{Anonymous:TB4-1-4}{183} \bibcite{Spivak:TB4-1-4}{184} \bibcite{Whidden:TB4-1-xx}{185} \bibcite{Fuchs:TB4-1-6}{186} \bibcite{Anonymous:TB4-1-10}{187} \bibcite{Anonymous:TB4-1-10-2}{188} \bibcite{Beebe:TB4-1-11}{189} \bibcite{Ion:TB4-1-12}{190} \bibcite{Anonymous:TB4-1-13}{191} \bibcite{Fuchs:TB4-1-14}{192} \bibcite{Bunner:TB4-1-16}{193} \bibcite{Furuta:TB4-1-17}{194} \bibcite{Curtis:TB4-1-18}{195} \bibcite{MacKay:TB4-1-21}{196} \bibcite{Nichols:TB4-1-22}{197} \bibcite{Krapp:TB4-1-23}{198} \bibcite{Naugle:TB4-1-23}{199} \bibcite{Carnes:TB4-1-24}{200} \bibcite{Guthery:TB4-1-25}{201} \bibcite{Tobin:TB4-1-26}{202} \bibcite{Anonymous:TB4-1-33}{203} \bibcite{Anonymous:TB4-1-33-2}{204} \bibcite{Beeton:TB4-1-35}{205} \bibcite{Beeton:TB4-1-36}{206} \bibcite{Mohr:TB4-1-37}{207} \bibcite{McClure:TB4-1-38}{208} \bibcite{Anonymous:TB4-1-39}{209} \bibcite{Code:TB4-1-40}{210} \bibcite{Anonymous:TB4-1-40}{211} \bibcite{Siegman:TB4-1-41}{212} \bibcite{Anonymous:TB4-1-43}{213} \bibcite{Anonymous:TB4-1-44}{214} \bibcite{Anonymous:TB4-1-45}{215} \bibcite{Anonymous:TB4-1-47}{216} \bibcite{Anonymous:TB4-2-50}{217} \bibcite{Anonymous:TB4-2-551}{218} \bibcite{MacKay:TB4-2-52}{219} \bibcite{Anonymous:TB4-2-55}{220} \bibcite{Anonymous:TB4-2-57}{221} \bibcite{Plass:TB4-2-59}{222} \bibcite{Anonymous:TB4-2-60}{223} \bibcite{Whidden:TB4-2-62}{224} \bibcite{Price:TB4-2-63}{225} \bibcite{Knuth:TB4-2-64}{226} \bibcite{Fuchs:TB4-2-65}{227} \bibcite{Fuchs:TB4-2-66}{228} \bibcite{Anonymous:TB4-2-71}{229} \bibcite{Fuchs:TB4-2-72}{230} \bibcite{Mallett:TB4-2-73}{231} \bibcite{Plass:TB4-2-74}{232} \bibcite{Furuta:TB4-2-74}{233} \bibcite{Nichols:TB4-2-75}{234} \bibcite{Mooney:TB4-2-76}{235} \bibcite{MacKay:TB4-2-76}{236} \bibcite{Carnes:TB4-2-77}{237} \bibcite{Price:TB4-2-78}{238} \bibcite{Anonymous:TB4-2-79}{239} \bibcite{Sterken:TB4-2-80}{240} \bibcite{Spivak:TB4-2-103}{241} \bibcite{Anonymous:TB4-2-127}{242} \bibcite{Anonymous:TB4-2-127-2}{243} \bibcite{Anonymous:TB4-2-128}{244} \bibcite{Anonymous:TB4-2-129}{245} \bibcite{Anonymous:TB4-2-131}{246} \bibcite{Anonymous:TB5-1-2}{247} \bibcite{Anonymous:TB5-1-3}{248} \bibcite{MacKay:TB5-1-4}{249} \bibcite{Knuth:TB5-1-4}{250} \bibcite{Whidden:TB5-1-12}{251} \bibcite{Anonymous:TB5-1-13}{252} \bibcite{Canzii:TB5-1-14}{253} \bibcite{Anonymous:TB5-1-15}{254} \bibcite{Anonymous:TB5-1-16}{255} \bibcite{Anonymous:TB5-1-17}{256} \bibcite{Haus:TB5-1-17}{257} \bibcite{Noot:TB5-1-18}{258} \bibcite{Fuchs:TB5-1-22}{259} \bibcite{Lofstedt:TB5-1-23}{260} \bibcite{Guenther:TB5-1-24}{261} \bibcite{Childs:TB5-1-26}{262} \bibcite{Childs:TB5-1-26-2}{263} \bibcite{Furuta:TB5-1-27}{264} \bibcite{Rodgers:TB5-1-28}{265} \bibcite{Nichols:TB5-1-29}{266} \bibcite{Kellerman:TB5-1-30}{267} \bibcite{Anonymous:TB5-1-31}{268} \bibcite{Anonymous:TB5-1-34}{269} \bibcite{Tobin:TB5-1-36}{270} \bibcite{Carnes:TB5-1-47}{271} \bibcite{Beeton:TB5-1-48}{272} \bibcite{Daniels:TB5-1-49}{273} \bibcite{Knuth:TB5-1-67}{274} \bibcite{Anonymous:TB5-1-67}{275} \bibcite{Anonymous:TB5-1-68}{276} \bibcite{Anonymous:TB5-1-69}{277} \bibcite{Anonymous:TB5-1-71}{278} \bibcite{Anonymous:TB5-2-74}{279} \bibcite{Anonymous:TB5-2-75}{280} \bibcite{MacKay:TB5-2-76}{281} \bibcite{Welland:TB5-2-77}{282} \bibcite{Keller:TB5-2-77}{283} \bibcite{Beeton:TB5-2-78}{284} \bibcite{Southall:TB5-2-79}{285} \bibcite{Jurgensen:TB5-2-91}{286} \bibcite{Desarmenien:TB5-2-91}{287} \bibcite{Schulze:TB5-2-103}{288} \bibcite{Knuth:TB5-2-105}{289} \bibcite{Hobby:TB5-2-119}{290} \bibcite{Anonymous:TB5-2-137}{291} \bibcite{Anonymous:TB5-2-138}{292} \bibcite{Rokicki:TB5-2-138}{293} \bibcite{Rokicki:TB5-2-139}{294} \bibcite{Fuchs:TB5-2-141}{295} \bibcite{Anonymous:TB5-2-141}{296} \bibcite{Crawford:TB5-2-141}{297} \bibcite{Furuta:TB5-2-142}{298} \bibcite{Smith:TB5-2-142}{299} \bibcite{Felippa:TB5-2-143}{300} \bibcite{Carnes:TB5-2-145}{301} \bibcite{Clark:TB5-2-146}{302} \bibcite{Anonymous:TB5-2-146}{303} \bibcite{Anonymous:TB5-2-147}{304} \bibcite{Whidden:TB5-2-148}{305} \bibcite{Dupree:TB5-2-149}{306} \bibcite{Anonymous:TB5-2-153}{307} \bibcite{Anonymous:TB5-2-156}{308} \bibcite{Anonymous:TB5-2-158}{309} \bibcite{Anonymous:TB5-2-159}{310} \bibcite{Anonymous:TB5-2-160}{311} \bibcite{Anonymous:TB5-2-160-2}{312} \bibcite{Anonymous:TB5-2-161}{313} \bibcite{Anonymous:TB5-2-165}{314} \bibcite{Anonymous:TB5-2-167}{315} \bibcite{Anonymous:TB6-1-2}{316} \bibcite{Anonymous:TB6-1-3}{317} \bibcite{MacKay:TB6-1-4}{318} \bibcite{Beck:TB6-1-4}{319} \bibcite{Anonymous:TB6-1-5}{320} \bibcite{Southall:TB6-1-6}{321} \bibcite{Eppstein:TB6-1-7}{322} \bibcite{Anonymous:TB6-1-8}{323} \bibcite{Tobin:TB6-1-12}{324} \bibcite{Anonymous:TB6-1-13}{325} \bibcite{Furuta:TB6-1-15}{326} \bibcite{Anonymous:TB6-1-15}{327} \bibcite{Luvisetto:TB6-1-15}{328} \bibcite{Anonymous:TB6-1-16}{329} \bibcite{Crawford:TB6-1-17}{330} \bibcite{Furuta:TB6-1-18}{331} \bibcite{Smith:TB6-1-20}{332} \bibcite{Cumiskey:TB6-1-21}{333} \bibcite{Carnes:TB6-1-26}{334} \bibcite{Company:TB6-1-27}{335} \bibcite{Carnes:TB6-1-28}{336} \bibcite{Platt:TB6-1-29}{337} \bibcite{Eppstein:TB6-1-31}{338} \bibcite{Knuth:TB6-1-36}{339} \bibcite{Anonymous:TB6-1-38}{340} \bibcite{Anonymous:TB6-1-39}{341} \bibcite{Anonymous:TB6-1-39-2}{342} \bibcite{Anonymous:TB6-1-39-3}{343} \bibcite{Anonymous:TB6-1-40}{344} \bibcite{Anonymous:TB6-1-41}{345} \bibcite{Anonymous:TB6-1-42}{346} \bibcite{Anonymous:TB6-1-43}{347} \bibcite{Anonymous:TB6-1-44}{348} \bibcite{Anonymous:TB6-1-445}{349} \bibcite{Anonymous:TB6-1-446}{350} \bibcite{Anonymous:TB6-1-cover-3}{351} \bibcite{Anonymous:TB6-1-47}{352} \bibcite{Anonymous:TB6-1-49}{353} \bibcite{Anonymous:TB6-1-51}{354} \bibcite{Anonymous:TB6-2-54}{355} \bibcite{Anonymous:TB6-2-55}{356} \bibcite{Anonymous:TB6-2-56}{357} \bibcite{Jurgensen:TB6-2-56}{358} \bibcite{Ferguson:TB6-2-57}{359} \bibcite{Beeton:TB6-2-59}{360} \bibcite{Anonymous:TB6-2-64}{361} \bibcite{Anonymous:TB6-2-66}{362} \bibcite{Spragens:TB6-2-66}{363} \bibcite{Naugle:TB6-2-69}{364} \bibcite{Anonymous:TB6-2-73}{365} \bibcite{Spragens:TB6-2-73}{366} \bibcite{Riesel:TB6-2-76}{367} \bibcite{Marriott:TB6-2-80}{368} \bibcite{Furuta:TB6-2-81}{369} \bibcite{Smith:TB6-2-81}{370} \bibcite{Carnes:TB6-2-82}{371} \bibcite{Hendrickson:TB6-2-83}{372} \bibcite{Hendrickson:TB6-2-86}{373} \bibcite{Mohr:TB6-2-87}{374} \bibcite{Bonnetain:TB6-2-96}{375} \bibcite{Greene:TB6-2-96}{376} \bibcite{Anonymous:TB6-2-97}{377} \bibcite{Anonymous:TB6-2-98}{378} \bibcite{Anonymous:TB6-2-98-2}{379} \bibcite{Whidden:TB6-2-99}{380} \bibcite{Anonymous:TB6-2-100}{381} \bibcite{Anonymous:TB6-2-101}{382} \bibcite{Anonymous:TB6-2-102}{383} \bibcite{Anonymous:TB6-2-103}{384} \bibcite{Anonymous:TB6-2-104}{385} \bibcite{Anonymous:TB6-2-cover-3}{386} \bibcite{Anonymous:TB6-2-105}{387} \bibcite{Anonymous:TB6-2-107}{388} \bibcite{Anonymous:TB6-3-110}{389} \bibcite{Anonymous:TB6-3-111}{390} \bibcite{MacKay:TB6-3-112}{391} \bibcite{Childs:TB6-3-113}{392} \bibcite{Anonymous:TB6-3-114}{393} \bibcite{Rokicki:TB6-3-115}{394} \bibcite{Anonymous:TB6-3-121}{395} \bibcite{Tobin:TB6-3-122}{396} \bibcite{Beeton:TB6-3-124}{397} \bibcite{Anonymous:TB6-3-129}{398} \bibcite{Anonymous:TB6-3-131}{399} \bibcite{Anonymous:TB6-3-131-2}{400} \bibcite{Anonymous:TB6-3-132}{401} \bibcite{Childs:TB6-3-132}{402} \bibcite{Platt:TB6-3-133}{403} \bibcite{Guenther:TB6-3-134}{404} \bibcite{Hayashi:TB6-3-135}{405} \bibcite{Furuta:TB6-3-137}{406} \bibcite{Smith:TB6-3-139}{407} \bibcite{Anonymous:TB6-3-139}{408} \bibcite{Pfeffer:TB6-3-140}{409} \bibcite{Beeton:TB6-3-146}{410} \bibcite{Beeton:TB6-3-150}{411} \bibcite{Lamport:TB6-3-150}{412} \bibcite{Leban:TB6-3-151}{413} \bibcite{Cameron:TB6-3-155}{414} \bibcite{Wonneberger:TB6-3-156}{415} \bibcite{Anonymous:TB6-3-158}{416} \bibcite{Hendricks:TB6-3-158}{417} \bibcite{Hornbach:TB6-3-158}{418} \bibcite{Anonymous:TB6-3-159}{419} \bibcite{Anonymous:TB6-3-159-2}{420} \bibcite{Anonymous:TB6-3-160}{421} \bibcite{Anonymous:TB6-3-cover-3}{422} \bibcite{Whidden:TB6-3-161}{423} \bibcite{Anonymous:TB6-3-162}{424} \bibcite{Anonymous:TB6-3-163}{425} \bibcite{Anonymous:TB6-3-164}{426} \bibcite{Anonymous:TB6-3-166}{427} \bibcite{Anonymous:TB6-3-167}{428} \bibcite{Anonymous:TB6-3-169}{429} \bibcite{Anonymous:TB6-3-173}{430} \bibcite{Anonymous:TB7-1-4}{431} \bibcite{Anonymous:TB7-1-6}{432} \bibcite{Childs:TB7-1-7}{433} \bibcite{Anonymous:TB7-1-7}{434} \bibcite{Anonymous:TB7-1-7-2}{435} \bibcite{Anonymous:TB7-1-8}{436} \bibcite{Anonymous:TB7-1-8-2}{437} \bibcite{Anonymous:TB7-1-8-3}{438} \bibcite{Anonymous:TB7-1-9}{439} \bibcite{Anonymous:TB7-1-10}{440} \bibcite{Lamport:TB7-1-11}{441} \bibcite{Howell:TB7-1-11}{442} \bibcite{Fuchs:TB7-1-12}{443} \bibcite{Fox:TB7-1-12}{444} \bibcite{Childs:TB7-1-12}{445} \bibcite{Smith:TB7-1-13}{446} \bibcite{MacKay:TB7-1-13}{447} \bibcite{Smith:TB7-1-15}{448} \bibcite{Lamport:TB7-1-15}{449} \bibcite{Ferguson:TB7-1-16}{450} \bibcite{Auerbach:TB7-1-17}{451} \bibcite{Anonymous:TB7-1-17}{452} \bibcite{Beeton:TB7-1-18}{453} \bibcite{Appelt:TB7-1-20}{454} \bibcite{Damerell:TB7-1-22}{455} \bibcite{Trevorrow:TB7-1-25}{456} \bibcite{Varian:TB7-1-37}{457} \bibcite{Maus:TB7-1-41}{458} \bibcite{Fina:TB7-1-48}{459} \bibcite{Hoenig:TB7-1-51}{460} \bibcite{Senn:TB7-1-55}{461} \bibcite{Beeton:TB7-1-57}{462} \bibcite{Beeton:TB7-1-67}{463} \bibcite{Carnes:TB7-1-71}{464} \bibcite{Anonymous:TB7-1-73}{465} \bibcite{Anonymous:TB7-1-88}{466} \bibcite{Anonymous:TB7-2-91}{467} \bibcite{Beeton:TB7-2-93}{468} \bibcite{Beeton:TB7-2-93-2}{469} \bibcite{Gordon:TB7-2-93}{470} \bibcite{Knuth:TB7-2-95}{471} \bibcite{Jackson:TB7-2-98}{472} \bibcite{Hornbach:TB7-2-99}{473} \bibcite{Tobin:TB7-2-100}{474} \bibcite{Knuth:TB7-2-101}{475} \bibcite{Hoenig:TB7-2-102}{476} \bibcite{Anonymous:TB7-2-102}{477} \bibcite{Rokicki:TB7-2-103}{478} \bibcite{Fox:TB7-2-103}{479} \bibcite{Crawford:TB7-2-103}{480} \bibcite{Pfeffer:TB7-2-104}{481} \bibcite{Ferguson:TB7-2-106}{482} \bibcite{Becker:TB7-2-109}{483} \bibcite{Kennedy:TB7-2-109}{484} \bibcite{Fernandez:TB7-2-110}{485} \bibcite{Alexander:TB7-2-110}{486} \bibcite{Kleine:TB7-2-111}{487} \bibcite{Ludden:TB7-2-111}{488} \bibcite{Spivak:TB7-2-111}{489} \bibcite{Anonymous:TB7-2-112}{490} \bibcite{Anonymous:TB7-2-113}{491} \bibcite{Anonymous:TB7-2-115}{492} \bibcite{Anonymous:TB7-2-117}{493} \bibcite{Anonymous:TB7-2-119}{494} \bibcite{Anonymous:TB7-2-120}{495} \bibcite{Anonymous:TB7-2-121}{496} \bibcite{Anonymous:TB7-2-122}{497} \bibcite{Anonymous:TB7-2-123}{498} \bibcite{Anonymous:TB7-2-124}{499} \bibcite{Anonymous:TB7-2-cover-3}{500} \bibcite{Anonymous:TB7-3-127}{501} \bibcite{Childs:TB7-3-129}{502} \bibcite{Anonymous:TB7-3-130}{503} \bibcite{MacKay:TB7-3-131}{504} \bibcite{Beck:TB7-3-132}{505} \bibcite{Wonneberger:TB7-3-132}{506} \bibcite{Mann:TB7-3-133}{507} \bibcite{Guntermann:TB7-3-134}{508} \bibcite{Guntermann:TB7-3-134-2}{509} \bibcite{Alexander:TB7-3-138}{510} \bibcite{Rokicki:TB7-3-140}{511} \bibcite{Anonymous:TB7-3-145}{512} \bibcite{Bigelow:TB7-3-146}{513} \bibcite{Sauter:TB7-3-151}{514} \bibcite{Jansen:TB7-3-152}{515} \bibcite{Damerell:TB7-3-159}{516} \bibcite{Brown:TB7-3-164}{517} \bibcite{Guntermann:TB7-3-164}{518} \bibcite{Fox:TB7-3-164}{519} \bibcite{Platt:TB7-3-165}{520} \bibcite{Spragens:TB7-3-167}{521} \bibcite{Hoenig:TB7-3-167}{522} \bibcite{Thull:TB7-3-169}{523} \bibcite{Ehrbar:TB7-3-171}{524} \bibcite{Damrau:TB7-3-176}{525} \bibcite{Lamport:TB7-3-176}{526} \bibcite{Wonneberger:TB7-3-177}{527} \bibcite{Hofmann:TB7-3-186}{528} \bibcite{Aurbach:TB7-3-187}{529} \bibcite{Lee:TB7-3-187}{530} \bibcite{Fox:TB7-3-187}{531} \bibcite{Sewell:TB7-3-188}{532} \bibcite{Anonymous:TB7-3-190}{533} \bibcite{Anonymous:TB7-3-191}{534} \bibcite{Anonymous:TB7-3-191-2}{535} \bibcite{Ohno:TB7-3-191}{536} \bibcite{Beeton:TB7-3-192}{537} \bibcite{Anonymous:TB7-3-193}{538} \bibcite{Anonymous:TB7-3-196}{539} \bibcite{Lachmann:TB7-3-194}{540} \bibcite{Anonymous:TB7-3-199}{541} \bibcite{Anonymous:TB7-3-201}{542} \bibcite{Anonymous:TB7-3-198}{543} \bibcite{Anonymous:TB7-3-cover-3}{544} \bibcite{Anonymous:TB8-1-3}{545} \bibcite{Childs:TB8-1-5}{546} \bibcite{Anonymous:TB8-1-5}{547} \bibcite{Anonymous:TB8-1-6}{548} \bibcite{Knuth:TB8-1-6}{549} \bibcite{Wolf:TB8-1-7}{550} \bibcite{Krick:TB8-1-7}{551} \bibcite{Siegman:TB8-1-8}{552} \bibcite{Lamport:TB8-1-12}{553} \bibcite{Levy:TB8-1-12}{554} \bibcite{Knuth:TB8-1-14}{555} \bibcite{Tobin:TB8-1-26}{556} \bibcite{Billawala:TB8-1-29}{557} \bibcite{Beeton:TB8-1-33}{558} \bibcite{Anonymous:TB8-1-34}{559} \bibcite{Anonymous:TB8-1-34-2}{560} \bibcite{Beebe:TB8-1-41}{561} \bibcite{Trevorrow:TB8-1-42}{562} \bibcite{Anonymous:TB8-1-45}{563} \bibcite{Brown:TB8-1-46}{564} \bibcite{Fuss:TB8-1-46}{565} \bibcite{Childs:TB8-1-47}{566} \bibcite{Lillqvist:TB8-1-47}{567} \bibcite{Crawford:TB8-1-48}{568} \bibcite{Fox:TB8-1-49}{569} \bibcite{Garavelli:TB8-1-53}{570} \bibcite{Bell:TB8-1-54}{571} \bibcite{Yap:TB8-1-58}{572} \bibcite{McKinstry:TB8-1-60}{573} \bibcite{Zocchi:TB8-1-62}{574} \bibcite{Wonneberger:TB8-1-63}{575} \bibcite{Hoenig:TB8-1-73}{576} \bibcite{Knuth:TB8-1-73}{577} \bibcite{Dyck:TB8-1-74}{578} \bibcite{Hawkins:TB8-1-74}{579} \bibcite{Celoni:TB8-1-74}{580} \bibcite{Michailovsky:TB8-1-74}{581} \bibcite{Cutter:TB8-1-74}{582} \bibcite{Nash:TB8-1-75}{583} \bibcite{Horstman:TB8-1-75}{584} \bibcite{Ryan:TB8-1-75}{585} \bibcite{Thulin:TB8-1-76}{586} \bibcite{McWorter:TB8-1-76}{587} \bibcite{Anonymous:TB8-1-77}{588} \bibcite{Anonymous:TB8-1-77-2}{589} \bibcite{Anonymous:TB8-1-78}{590} \bibcite{Anonymous:TB8-1-79}{591} \bibcite{Anonymous:TB8-1-81}{592} \bibcite{Anonymous:TB8-1-83}{593} \bibcite{Anonymous:TB8-1-85}{594} \bibcite{Anonymous:TB8-1-cover-3}{595} \bibcite{Anonymous:TB8-1-cover-3-2}{596} \bibcite{Anonymous:TB8-2-99}{597} \bibcite{Childs:TB8-2-101}{598} \bibcite{Koren:TB8-2-101}{599} \bibcite{Alexander:TB8-2-102}{600} \bibcite{Rezende:TB8-2-102}{601} \bibcite{Ferguson:TB8-2-102}{602} \bibcite{Saito:TB8-2-103}{603} \bibcite{Sewell:TB8-2-117}{604} \bibcite{Sewell:TB8-2-118}{605} \bibcite{Sewell:TB8-2-123}{606} \bibcite{Gourlay:TB8-2-128}{607} \bibcite{Sauter:TB8-2-129}{608} \bibcite{Crawford:TB8-2-131}{609} \bibcite{Beeton:TB8-2-132}{610} \bibcite{Knuth:TB8-2-135}{611} \bibcite{McGaffey:TB8-2-161}{612} \bibcite{Hosek:TB8-2-163}{613} \bibcite{Dunn:TB8-2-171}{614} \bibcite{Anonymous:TB8-2-237}{615} \bibcite{Vanderburg:TB8-2-174}{616} \bibcite{Mann:TB8-2-174}{617} \bibcite{Childs:TB8-2-176}{618} \bibcite{Guenther:TB8-2-178}{619} \bibcite{Pierson:TB8-2-178}{620} \bibcite{MacKay:TB8-2-179}{621} \bibcite{Clark:TB8-2-177}{622} \bibcite{Kohlmayr:TB8-2-181}{623} \bibcite{Smith:TB8-2-181}{624} \bibcite{Hoenig:TB8-2-182}{625} \bibcite{Appelt:TB8-2-182}{626} \bibcite{Kabelschacht:TB8-2-184}{627} \bibcite{Barnhart:TB8-2-185}{628} \bibcite{LeHardy:TB8-2-190}{629} \bibcite{Bruggemann-Klein:TB8-2-193}{630} \bibcite{Yap:TB8-2-198}{631} \bibcite{Aurbach:TB8-2-201}{632} \bibcite{Knuth:TB8-2-210}{633} \bibcite{Hoenig:TB8-2-211}{634} \bibcite{Fox:TB8-2-216}{635} \bibcite{Alexander:TB8-2-216}{636} \bibcite{Knuth:TB8-2-217}{637} \bibcite{Black:TB8-2-217}{638} \bibcite{Anonymous:TB8-2-218}{639} \bibcite{Anonymous:TB8-2-219}{640} \bibcite{Boston:TB8-2-220}{641} \bibcite{Munster:TB8-2-221}{642} \bibcite{Price:TB8-2-221}{643} \bibcite{Whidden:TB8-2-225}{644} \bibcite{Anonymous:TB8-2-228}{645} \bibcite{Anonymous:TB8-2-231}{646} \bibcite{Anonymous:TB8-2-252}{647} \bibcite{Anonymous:TB8-3-255}{648} \bibcite{Childs:TB8-3-257}{649} \bibcite{Thedford:TB8-3-258}{650} \bibcite{Marle:TB8-3-259}{651} \bibcite{Mann:TB8-3-260}{652} \bibcite{Beeton:TB8-3-262}{653} \bibcite{Childs:TB8-3-262}{654} \bibcite{Reid:TB8-3-264}{655} \bibcite{Anonymous:TB8-3-266}{656} \bibcite{Henderson:TB8-3-268}{657} \bibcite{Clark:TB8-3-270}{658} \bibcite{Hohti:TB8-3-275}{659} \bibcite{Hosek:TB8-3-279}{660} \bibcite{Reid:TB8-3-287}{661} \bibcite{Vanderburg:TB8-3-291}{662} \bibcite{Toal:TB8-3-301}{663} \bibcite{Brown:TB8-3-301}{664} \bibcite{Lammarsch:TB8-3-304}{665} \bibcite{Guntermann:TB8-3-304}{666} \bibcite{Childs:TB8-3-304}{667} \bibcite{Pfeffer:TB8-3-305}{668} \bibcite{Thiele:TB8-3-307}{669} \bibcite{Knuth:TB8-3-309}{670} \bibcite{Reid:TB8-3-315}{671} \bibcite{Yap:TB8-3-320}{672} \bibcite{Damrau:TB8-3-323}{673} \bibcite{Flynn:TB8-3-306}{674} \bibcite{Boes:TB8-3-326}{675} \bibcite{Lipp:TB8-3-326}{676} \bibcite{Anonymous:TB8-3-328}{677} \bibcite{Anonymous:TB8-3-329}{678} \bibcite{Anonymous:TB8-3-cover-3}{679} \bibcite{Anonymous:TB8-3-331}{680} \bibcite{Anonymous:TB8-3-333}{681} \bibcite{Anonymous:TB8-3-352}{682} \bibcite{Anonymous:TB9-1-3}{683} \bibcite{Childs:TB9-1-5}{684} \bibcite{Wittbecker:TB9-1-5}{685} \bibcite{Anonymous:TB9-1-6}{686} \bibcite{Beeton:TB9-1-6}{687} \bibcite{Lamport:TB9-1-8}{688} \bibcite{Breitenlohner:TB9-1-11}{689} \bibcite{MacKay:TB9-1-12}{690} \bibcite{Tobin:TB9-1-15}{691} \bibcite{Messer:TB9-1-19}{692} \bibcite{Levy:TB9-1-20}{693} \bibcite{Hosek:TB9-1-25}{694} \bibcite{Brown:TB9-1-34}{695} \bibcite{Hosek:TB9-1-37}{696} \bibcite{Dunne:TB9-1-37}{697} \bibcite{Anonymous:TB9-1-39}{698} \bibcite{Rokicki:TB9-1-40}{699} \bibcite{Childs:TB9-1-41}{700} \bibcite{Anonymous:TB9-1-42}{701} \bibcite{Guenther:TB9-1-42}{702} \bibcite{MacKay:TB9-1-42}{703} \bibcite{Morgan:TB9-1-44}{704} \bibcite{Kellerman:TB9-1-45}{705} \bibcite{Hoenig:TB9-1-46}{706} \bibcite{Hoenig:TB9-1-47}{707} \bibcite{Kinch:TB9-1-48}{708} \bibcite{Crisanti:TB9-1-52}{709} \bibcite{Bechtolsheim:TB9-1-57}{710} \bibcite{Walker:TB9-1-61}{711} \bibcite{Hendrickson:TB9-1-64}{712} \bibcite{Gariepy:TB9-1-65}{713} \bibcite{Partl:TB9-1-70}{714} \bibcite{Yap:TB9-1-73}{715} \bibcite{Damrau:TB9-1-76}{716} \bibcite{McPherson:TB9-1-78}{717} \bibcite{Bartlett:TB9-1-83}{718} \bibcite{Anonymous:TB9-1-86}{719} \bibcite{Anonymous:TB9-1-87}{720} \bibcite{Anonymous:TB9-1-87-2}{721} \bibcite{Anonymous:TB9-1-88}{722} \bibcite{Anonymous:TB9-1-91}{723} \bibcite{Anonymous:TB9-1-95}{724} \bibcite{Anonymous:TB9-1-112}{725} \bibcite{Anonymous:TB9-2-115}{726} \bibcite{Childs:TB9-2-117}{727} \bibcite{Goucher:TB9-2-117}{728} \bibcite{Anonymous:TB9-2-117}{729} \bibcite{Barnhart:TB9-2-118}{730} \bibcite{Beeton:TB9-2-121}{731} \bibcite{Beeton:TB9-2-121-2}{732} \bibcite{Childs:TB9-2-122}{733} \bibcite{Lichtenwalder:TB9-2-123}{734} \bibcite{Kennedy:TB9-2-124}{735} \bibcite{Vanderburg:TB9-2-125}{736} \bibcite{Tobin:TB9-2-126}{737} \bibcite{Childs:TB9-2-129}{738} \bibcite{Wujastyk:TB9-2-131}{739} \bibcite{Knuth:TB9-2-152}{740} \bibcite{Hosek:TB9-2-169}{741} \bibcite{Dunne:TB9-2-178}{742} \bibcite{Wolfe:TB9-2-178}{743} \bibcite{Anonymous:TB9-2-151}{744} \bibcite{Childs:TB9-2-181}{745} \bibcite{Childs:TB9-2-181-2}{746} \bibcite{Smith:TB9-2-181}{747} \bibcite{Beeton:TB9-2-182}{748} \bibcite{Breitenlohner:TB9-2-183}{749} \bibcite{Wichura:TB9-2-186}{750} \bibcite{Haagen:TB9-2-189}{751} \bibcite{Wichura:TB9-2-193}{752} \bibcite{Damrau:TB9-2-198}{753} \bibcite{Yap:TB9-2-200}{754} \bibcite{Bechtolsheim:TB9-2-203}{755} \bibcite{McPherson:TB9-2-204}{756} \bibcite{Anonymous:TB9-2-205}{757} \bibcite{Gaulle:TB9-2-206}{758} \bibcite{Anonymous:TB9-2-207}{759} \bibcite{Anonymous:TB9-2-208}{760} \bibcite{Anonymous:TB9-2-211}{761} \bibcite{Anonymous:TB9-2-226}{762} \bibcite{Anonymous:TB9-2-M}{763} \bibcite{Anonymous:TB9-3-229}{764} \bibcite{Childs:TB9-3-231}{765} \bibcite{Anonymous:TB9-3-232}{766} \bibcite{Anonymous:TB9-3-232-2}{767} \bibcite{Beeton:TB9-3-233}{768} \bibcite{McKinstry:TB9-3-236}{769} \bibcite{Heidrich:TB9-3-238}{770} \bibcite{Anonymous:TB9-3-239}{771} \bibcite{Schrod:TB9-3-241}{772} \bibcite{Henderson:TB9-3-244}{773} \bibcite{Wujastyk:TB9-3-246}{774} \bibcite{Hosek:TB9-3-251}{775} \bibcite{Abbott:TB9-3-261}{776} \bibcite{Abbott:TB9-3-263}{777} \bibcite{Guntermann:TB9-3-264}{778} \bibcite{Childs:TB9-3-265}{779} \bibcite{Guenther:TB9-3-265}{780} \bibcite{Platt:TB9-3-266}{781} \bibcite{MacKay:TB9-3-267}{782} \bibcite{Pfeffer:TB9-3-269}{783} \bibcite{Laan:TB9-3-271}{784} \bibcite{Wittbecker:TB9-3-272}{785} \bibcite{Bechtolsheim:TB9-3-276}{786} \bibcite{Kneser:TB9-3-279}{787} \bibcite{Appelt:TB9-3-284}{788} \bibcite{Pittman:TB9-3-287}{789} \bibcite{Pittman:TB9-3-289}{790} \bibcite{Rogers:TB9-3-292}{791} \bibcite{DeCorte:TB9-3-294}{792} \bibcite{Damrau:TB9-3-297}{793} \bibcite{Mittelbach:TB9-3-298}{794} \bibcite{Anonymous:TB9-3-315}{795} \bibcite{Laan:TB9-3-316}{796} \bibcite{Anonymous:TB9-3-cover-3}{797} \bibcite{Anonymous:TB9-3-316}{798} \bibcite{MacKay:TB9-3-317}{799} \bibcite{Beeton:TB9-3-317}{800} \bibcite{Anonymous:TB9-3-318}{801} \bibcite{Anonymous:TB9-3-324}{802} \bibcite{Anonymous:TB9-3-318-2}{803} \bibcite{Anonymous:TB9-3-322}{804} \bibcite{Anonymous:TB9-3-325}{805} \bibcite{Anonymous:TB9-3-342}{806} \bibcite{Anonymous:TB9-3-M}{807} \bibcite{Anonymous:TB10-1-3}{808} \bibcite{Anonymous:TB10-1-5}{809} \bibcite{Childs:TB10-1-5}{810} \bibcite{Anonymous:TB10-1-5-2}{811} \bibcite{Beeton:TB10-1-6}{812} \bibcite{Knuth:TB10-1-8}{813} \bibcite{Beeton:TB10-1-8}{814} \bibcite{Harrison:TB10-1-11}{815} \bibcite{Clark:TB10-1-14}{816} \bibcite{Thull:TB10-1-15}{817} \bibcite{Kinch:TB10-1-23}{818} \bibcite{Bechtolsheim:TB10-1-25}{819} \bibcite{Tobin:TB10-1-28}{820} \bibcite{Knuth:TB10-1-31}{821} \bibcite{Henderson:TB10-1-36}{822} \bibcite{Wujastyk:TB10-1-39}{823} \bibcite{Rogers:TB10-1-39}{824} \bibcite{Childs:TB10-1-44}{825} \bibcite{Hosek:TB10-1-46}{826} \bibcite{Hosek:TB10-1-56}{827} \bibcite{Broeren:TB10-1-56}{828} \bibcite{Puente:TB10-1-58}{829} \bibcite{Abbott:TB10-1-59}{830} \bibcite{Childs:TB10-1-60}{831} \bibcite{MacKay:TB10-1-60}{832} \bibcite{Kellerman:TB10-1-62}{833} \bibcite{Hoenig:TB10-1-62}{834} \bibcite{Kubik:TB10-1-65}{835} \bibcite{Modest:TB10-1-67}{836} \bibcite{Zalmstra:TB10-1-73}{837} \bibcite{Nearing:TB10-1-82}{838} \bibcite{Sankar:TB10-1-89}{839} \bibcite{DeCorte:TB10-1-97}{840} \bibcite{Mittelbach:TB10-1-103}{841} \bibcite{Schopf:TB10-1-105}{842} \bibcite{Nagy:TB10-1-108}{843} \bibcite{Laan:TB10-1-113}{844} \bibcite{Anonymous:TB10-1-116}{845} \bibcite{Anonymous:TB10-1-117}{846} \bibcite{Anonymous:TB10-1-118}{847} \bibcite{Anonymous:TB10-1-118-2}{848} \bibcite{Osborne:TB10-1-119}{849} \bibcite{Beeton:TB10-1-120}{850} \bibcite{Anonymous:TB10-1-121}{851} \bibcite{Anonymous:TB10-1-122}{852} \bibcite{Anonymous:TB10-1-125}{853} \bibcite{Anonymous:TB10-1-142}{854} \bibcite{Anonymous:TB10-2-145}{855} \bibcite{Childs:TB10-2-147}{856} \bibcite{Beeton:TB10-2-147}{857} \bibcite{Clark:TB10-2-150}{858} \bibcite{Clark:TB10-2-153}{859} \bibcite{Childs:TB10-2-156}{860} \bibcite{Spivak:TB10-2-164}{861} \bibcite{Tobin:TB10-2-166}{862} \bibcite{Rubinstein:TB10-2-170}{863} \bibcite{Hosek:TB10-2-173}{864} \bibcite{Andrews:TB10-2-177}{865} \bibcite{Wilcox:TB10-2-179}{866} \bibcite{Hosek:TB10-2-188}{867} \bibcite{Reid:TB10-2-188}{868} \bibcite{Hosek:TB10-2-192}{869} \bibcite{Clark:TB10-2-193}{870} \bibcite{Abbott:TB10-2-194}{871} \bibcite{Nieland:TB10-2-195}{872} \bibcite{DeCorte:TB10-2-196}{873} \bibcite{Childs:TB10-2-201}{874} \bibcite{Crawford:TB10-2-201}{875} \bibcite{Radel:TB10-2-202}{876} \bibcite{Trevorrow:TB10-2-202}{877} \bibcite{Bechtolsheim:TB10-2-203}{878} \bibcite{Salomon:TB10-2-207}{879} \bibcite{Vogel:TB10-2-217}{880} \bibcite{Mittelbach:TB10-2-222}{881} \bibcite{Nagy:TB10-2-239}{882} \bibcite{Partl:TB10-2-241}{883} \bibcite{Mittelbach:TB10-2-245}{884} \bibcite{Kelly:TB10-2-274}{885} \bibcite{Anonymous:TB10-2-285}{886} \bibcite{Anonymous:TB10-2-287}{887} \bibcite{Anonymous:TB10-2-287-2}{888} \bibcite{Lammarsch:TB10-2-287}{889} \bibcite{Osborne:TB10-2-288}{890} \bibcite{Beeton:TB10-2-289}{891} \bibcite{Anonymous:TB10-2-290}{892} \bibcite{Anonymous:TB10-2-M}{893} \bibcite{Anonymous:TB10-3-309}{894} \bibcite{Childs:TB10-3-311}{895} \bibcite{Beebe:TB10-3-312}{896} \bibcite{Beeton:TB10-3-314}{897} \bibcite{Eijkhout:TB10-3-316}{898} \bibcite{Childs:TB10-3-319}{899} \bibcite{Technites:TB10-3-324}{900} \bibcite{Knuth:TB10-3-325}{901} \bibcite{Thull:TB10-3-328}{902} \bibcite{Bechtolsheim:TB10-3-329}{903} \bibcite{Vulis:TB10-3-332}{904} \bibcite{Beeton:TB10-3-336}{905} \bibcite{Anonymous:TB10-3-342}{906} \bibcite{Haralambous:TB10-3-342}{907} \bibcite{Parker:TB10-3-346}{908} \bibcite{Larsson:TB10-3-351}{909} \bibcite{Andulem:TB10-3-352}{910} \bibcite{Haralambous:TB10-3-354}{911} \bibcite{Anonymous:TB10-3-359}{912} \bibcite{Hailperin:TB10-3-360}{913} \bibcite{Kean:TB10-3-360}{914} \bibcite{DeCorte:TB10-3-362}{915} \bibcite{Anonymous:TB10-3-365}{916} \bibcite{Lammarsch:TB10-3-366}{917} \bibcite{Gaulle:TB10-3-367}{918} \bibcite{Glendown:TB10-3-367}{919} \bibcite{Lindner:TB10-3-368}{920} \bibcite{Kellerman:TB10-3-372}{921} \bibcite{Hoenig:TB10-3-373}{922} \bibcite{Glendown:TB10-3-376}{923} \bibcite{Whitney:TB10-3-378}{924} \bibcite{Glendown:TB10-3-385}{925} \bibcite{Rubinstein:TB10-3-387}{926} \bibcite{Durst:TB10-3-390}{927} \bibcite{Salomon:TB10-3-394}{928} \bibcite{Bush:TB10-3-400}{929} \bibcite{Mittelbach:TB10-3-400}{930} \bibcite{Braams:TB10-3-401}{931} \bibcite{Mittelbach:TB10-3-407}{932} \bibcite{Mittelbach:TB10-3-416}{933} \bibcite{Dietsche:TB10-3-427}{934} \bibcite{Anonymous:TB10-3-429}{935} \bibcite{Anonymous:TB10-3-432}{936} \bibcite{Beeton:TB10-3-437}{937} \bibcite{Anonymous:TB10-3-438}{938} \bibcite{Ness:TB10-3-440}{939} \bibcite{Anonymous:TB10-3-444}{940} \bibcite{Anonymous:TB10-3-461}{941} \bibcite{Anonymous:TB10-3-M}{942} \bibcite{Thiele:TB10-4-465}{943} \bibcite{Henderson:TB10-4-467}{944} \bibcite{Billawala:TB10-4-481}{945} \bibcite{Hoenig:TB10-4-491}{946} \bibcite{Hosek:TB10-4-499}{947} \bibcite{Batzinger:TB10-4-503}{948} \bibcite{Hobby:TB10-4-505}{949} \bibcite{Youngen:TB10-4-513}{950} \bibcite{Conrad:TB10-4-521}{951} \bibcite{Knuth:TB10-4-529}{952} \bibcite{Doob:TB10-4-533}{953} \bibcite{Hamilton:TB10-4-541}{954} \bibcite{Hoover:TB10-4-549}{955} \bibcite{Kubek:TB10-4-561}{956} \bibcite{Rattey-Hicks:TB10-4-567}{957} \bibcite{Diaz:TB10-4-579}{958} \bibcite{Haskell:TB10-4-595}{959} \bibcite{Wittbecker:TB10-4-603}{960} \bibcite{Renfrow:TB10-4-607}{961} \bibcite{Olejniczak-Burkert:TB10-4-627}{962} \bibcite{Latterner:TB10-4-639}{963} \bibcite{Pind:TB10-4-655}{964} \bibcite{Clark:TB10-4-667}{965} \bibcite{Abbott:TB10-4-675}{966} \bibcite{Mittelbach:TB10-4-681}{967} \bibcite{Greene:TB10-4-691}{968} \bibcite{Cheswick:TB10-4-707}{969} \bibcite{Sydoriak:TB10-4-715}{970} \bibcite{Benson:TB10-4-727}{971} \bibcite{McClure:TB10-4-743}{972} \bibcite{Riley:TB10-4-751}{973} \bibcite{Anonymous:TB10-4-760}{974} \bibcite{Anonymous:TB10-4-761}{975} \bibcite{Anonymous:TB10-4-765}{976} \bibcite{Anonymous:TB11-1-3}{977} \bibcite{Beebe:TB11-1-5}{978} \bibcite{Childs:TB11-1-6}{979} \bibcite{Anonymous:TB11-1-7}{980} \bibcite{Ferguson:TB11-1-8}{981} \bibcite{Breitenlohner:TB11-1-9}{982} \bibcite{Anonymous:TB11-1-56}{983} \bibcite{Anonymous:TB11-1-12}{984} \bibcite{Knuth:TB11-1-13}{985} \bibcite{Kuiken:TB11-1-24}{986} \bibcite{Haralambous:TB11-1-26}{987} \bibcite{Pickrell:TB11-1-26}{988} \bibcite{Beeton:TB11-1-32}{989} \bibcite{Beeton:TB11-1-36}{990} \bibcite{DeCorte:TB11-1-38}{991} \bibcite{Guenther:TB11-1-45}{992} \bibcite{Brouard:TB11-1-46}{993} \bibcite{Eijkhout:TB11-1-51}{994} \bibcite{Guenther:TB11-1-54}{995} \bibcite{Wichura:TB11-1-57}{996} \bibcite{Breitenlohner:TB11-1-62}{997} \bibcite{Durst:TB11-1-62}{998} \bibcite{Salomon:TB11-1-69}{999} \bibcite{Damrau:TB11-1-85}{1000} \bibcite{Laan:TB11-1-86}{1001} \bibcite{Schrod:TB11-1-87}{1002} \bibcite{Mittelbach:TB11-1-91}{1003} \bibcite{Poppelier:TB11-1-98}{1004} \bibcite{Kelly:TB11-1-103}{1005} \bibcite{Dietsche:TB11-1-120}{1006} \bibcite{Partl:TB11-1-122}{1007} \bibcite{Anonymous:TB11-1-123}{1008} \bibcite{Anonymous:TB11-1-125}{1009} \bibcite{Anonymous:TB11-1-126}{1010} \bibcite{Beeton:TB11-1-127}{1011} \bibcite{Anonymous:TB11-1-128}{1012} \bibcite{Anonymous:TB11-1-131}{1013} \bibcite{Anonymous:TB11-1-148}{1014} \bibcite{Anonymous:TB11-2-151}{1015} \bibcite{Beeton:TB11-2-153}{1016} \bibcite{Barnhart:TB11-2-154}{1017} \bibcite{Knuth:TB11-2-165}{1018} \bibcite{Beebe:TB11-2-171}{1019} \bibcite{Bien:TB11-2-175}{1020} \bibcite{Hoenig:TB11-2-183}{1021} \bibcite{Berendt:TB11-2-190}{1022} \bibcite{Schwer:TB11-2-194}{1023} \bibcite{Pickrell:TB11-2-200}{1024} \bibcite{Childs:TB11-2-206}{1025} \bibcite{Lammarsch:TB11-2-207}{1026} \bibcite{Beeton:TB11-2-207}{1027} \bibcite{Beeton:TB11-2-208}{1028} \bibcite{Eijkhout:TB11-2-210}{1029} \bibcite{Nieland:TB11-2-211}{1030} \bibcite{Hoenig:TB11-2-212}{1031} \bibcite{Salomon:TB11-2-212}{1032} \bibcite{Jeffrey:TB11-2-237}{1033} \bibcite{Taylor:TB11-2-245}{1034} \bibcite{Ha:TB11-2-250}{1035} \bibcite{Laan:TB11-2-265}{1036} \bibcite{Damrau:TB11-2-276}{1037} \bibcite{Yap:TB11-2-279}{1038} \bibcite{Denk:TB11-2-280}{1039} \bibcite{Schopf:TB11-2-284}{1040} \bibcite{Mittelbach:TB11-2-297}{1041} \bibcite{Dietsche:TB11-2-305}{1042} \bibcite{Anonymous:TB11-2-308}{1043} \bibcite{Beeton:TB11-2-309}{1044} \bibcite{Anonymous:TB11-2-310}{1045} \bibcite{Anonymous:TB11-2-313}{1046} \bibcite{Anonymous:TB11-2-314}{1047} \bibcite{Anonymous:TB11-2-317}{1048} \bibcite{Anonymous:TB11-2-M}{1049} \bibcite{Anonymous:TB11-2-M-2}{1050} \bibcite{Beebe:TB11-3-335}{1051} \bibcite{Mittelbach:TB11-3-337}{1052} \bibcite{Hamano:TB11-3-346}{1053} \bibcite{Miyabe:TB11-3-353}{1054} \bibcite{Hendrickson:TB11-3-359}{1055} \bibcite{Fulling:TB11-3-371}{1056} \bibcite{Beck:TB11-3-373}{1057} \bibcite{Greene:TB11-3-381}{1058} \bibcite{Gibson:TB11-3-393}{1059} \bibcite{Adams:TB11-3-403}{1060} \bibcite{Bechtolsheim:TB11-3-409}{1061} \bibcite{LaFrenz:TB11-3-413}{1062} \bibcite{Ness:TB11-3-417}{1063} \bibcite{Williams:TB11-3-421}{1064} \bibcite{Martin:TB11-3-425}{1065} \bibcite{Vulis:TB11-3-429}{1066} \bibcite{Hoenig:TB11-3-435}{1067} \bibcite{Dietsche:TB11-3-439}{1068} \bibcite{Beebe:TB11-3-442}{1069} \bibcite{Mittelbach:TB11-3-444}{1070} \bibcite{Lammarsch:TB11-3-444}{1071} \bibcite{Gaulle:TB11-3-445}{1072} \bibcite{Laan:TB11-3-446}{1073} \bibcite{Graham:TB11-3-447}{1074} \bibcite{Clark:TB11-3-448}{1075} \bibcite{Clark:TB11-3-450}{1076} \bibcite{Platt:TB11-3-451}{1077} \bibcite{Kellerman:TB11-3-451}{1078} \bibcite{Childs:TB11-3-452}{1079} \bibcite{Crawford:TB11-3-453}{1080} \bibcite{MacKay:TB11-3-453}{1081} \bibcite{Lammarsch:TB11-3-454}{1082} \bibcite{Beeton:TB11-3-455}{1083} \bibcite{Anonymous:TB11-3-458}{1084} \bibcite{Anonymous:TB11-3-462}{1085} \bibcite{Anonymous:TB11-3-463}{1086} \bibcite{Anonymous:TB11-3-466}{1087} \bibcite{Anonymous:TB11-3-479}{1088} \bibcite{Anonymous:TB11-4-483}{1089} \bibcite{Beebe:TB11-4-485}{1090} \bibcite{Anonymous:TB11-4-488}{1091} \bibcite{Knuth:TB11-4-489}{1092} \bibcite{Beebe:TB11-4-490}{1093} \bibcite{Beeton:TB11-4-494}{1094} \bibcite{Knuth:TB11-4-497}{1095} \bibcite{Knuth:TB11-4-499}{1096} \bibcite{Fox:TB11-4-511}{1097} \bibcite{Stokes:TB11-4-513}{1098} \bibcite{Ferguson:TB11-4-514}{1099} \bibcite{Anonymous:TB11-4-516}{1100} \bibcite{Berry:TB11-4-517}{1101} \bibcite{Haralambous:TB11-4-520}{1102} \bibcite{Yanai:TB11-4-525}{1103} \bibcite{Tofsted:TB11-4-542}{1104} \bibcite{Hosek:TB11-4-545}{1105} \bibcite{Hosek:TB11-4-570}{1106} \bibcite{Beeton:TB11-4-570}{1107} \bibcite{Berry:TB11-4-571}{1108} \bibcite{Eijkhout:TB11-4-572}{1109} \bibcite{Beeton:TB11-4-573}{1110} \bibcite{Nieland:TB11-4-576}{1111} \bibcite{Hosek:TB11-4-578}{1112} \bibcite{Lammarsch:TB11-4-578}{1113} \bibcite{Neuwirth:TB11-4-578}{1114} \bibcite{Durst:TB11-4-580}{1115} \bibcite{Salomon:TB11-4-588}{1116} \bibcite{Eijkhout:TB11-4-605}{1117} \bibcite{Downes:TB11-4-605}{1118} \bibcite{Maus:TB11-4-612}{1119} \bibcite{Eijkhout:TB11-4-613}{1120} \bibcite{Eijkhout:TB11-4-616}{1121} \bibcite{Whitney:TB11-4-620}{1122} \bibcite{Lavagnino:TB11-4-623}{1123} \bibcite{Damrau:TB11-4-644}{1124} \bibcite{Geyer-Schulz:TB11-4-644}{1125} \bibcite{Love:TB11-4-652}{1126} \bibcite{Mittelbach:TB11-4-657}{1127} \bibcite{Dietsche:TB11-4-663}{1128} \bibcite{Akwai:TB11-4-665}{1129} \bibcite{Anonymous:TB11-4-666}{1130} \bibcite{Anonymous:TB11-4-cover-3}{1131} \bibcite{Anonymous:TB11-4-667}{1132} \bibcite{Anonymous:TB11-4-667-2}{1133} \bibcite{Anonymous:TB11-4-668}{1134} \bibcite{Anonymous:TB11-4-669}{1135} \bibcite{Anonymous:TB11-4-676}{1136} \bibcite{Beeton:TB11-4-679}{1137} \bibcite{Anonymous:TB11-4-679}{1138} \bibcite{Anonymous:TB11-4-681}{1139} \bibcite{Anonymous:TB11-4-693}{1140} \bibcite{Beeton:TB12-1-3}{1141} \bibcite{Neuwirth:TB12-1-5}{1142} \bibcite{Detig:TB12-1-8}{1143} \bibcite{Carr:TB12-1-13}{1144} \bibcite{Braams:TB12-1-21}{1145} \bibcite{Clark:TB12-1-25}{1146} \bibcite{Kneser:TB12-1-28}{1147} \bibcite{Eijkhout:TB12-1-31}{1148} \bibcite{Taylor:TB12-1-35}{1149} \bibcite{Wittbecker:TB12-1-45}{1150} \bibcite{Sowa:TB12-1-58}{1151} \bibcite{Murphy:TB12-1-64}{1152} \bibcite{Maclenan:TB12-1-66}{1153} \bibcite{Nicole:TB12-1-70}{1154} \bibcite{Mittelbach:TB12-1-74}{1155} \bibcite{Kelly:TB12-1-80}{1156} \bibcite{Clark:TB12-1-84}{1157} \bibcite{Laan:TB12-1-90}{1158} \bibcite{Poppelier:TB12-1-105}{1159} \bibcite{Hendrickson:TB12-1-110}{1160} \bibcite{Wonneberger:TB12-1-111}{1161} \bibcite{Hoenig:TB12-1-125}{1162} \bibcite{Haralambous:TB12-1-129}{1163} \bibcite{Searcoid:TB12-1-139}{1164} \bibcite{Guenther:TB12-1-149}{1165} \bibcite{Clark:TB12-1-157}{1166} \bibcite{Barden:TB12-1-166}{1167} \bibcite{Neuwirth:TB12-1-171}{1168} \bibcite{Anonymous:TB12-1-175}{1169} \bibcite{Anonymous:TB12-1-176}{1170} \bibcite{Vesely:TB12-1-176}{1171} \bibcite{Sullivan:TB12-1-177}{1172} \bibcite{Raman:TB12-1-178}{1173} \bibcite{Anonymous:TB12-1-179}{1174} \bibcite{Anonymous:TB12-1-182}{1175} \bibcite{Anonymous:TB12-1-200}{1176} \bibcite{Anonymous:TB12-2-203}{1177} \bibcite{Beebe:TB12-2-205}{1178} \bibcite{Beeton:TB12-2-208}{1179} \bibcite{Obermiller:TB12-2-211}{1180} \bibcite{Malyshev:TB12-2-212}{1181} \bibcite{Krstev:TB12-2-215}{1182} \bibcite{Haralambous:TB12-2-224}{1183} \bibcite{Jalbert:TB12-2-227}{1184} \bibcite{Jeffrey:TB12-2-227}{1185} \bibcite{Fossmeier:TB12-2-229}{1186} \bibcite{Schrod:TB12-2-232}{1187} \bibcite{Berry:TB12-2-233}{1188} \bibcite{Poppelier:TB12-2-235}{1189} \bibcite{Hoenig:TB12-2-237}{1190} \bibcite{Salomon:TB12-2-238}{1191} \bibcite{Durst:TB12-2-248}{1192} \bibcite{Eijkhout:TB12-2-253}{1193} \bibcite{Beeton:TB12-2-257}{1194} \bibcite{Mittelbach:TB12-2-259}{1195} \bibcite{Eijkhout:TB12-2-260}{1196} \bibcite{Smet:TB12-2-261}{1197} \bibcite{Hefferon:TB12-2-270}{1198} \bibcite{Eijkhout:TB12-2-272}{1199} \bibcite{Maus:TB12-2-277}{1200} \bibcite{Russell:TB12-2-278}{1201} \bibcite{Vulis:TB12-2-279}{1202} \bibcite{Damrau:TB12-2-284}{1203} \bibcite{Poppelier:TB12-2-285}{1204} \bibcite{Swonk:TB12-2-286}{1205} \bibcite{Thimbleby:TB12-2-290}{1206} \bibcite{Braams:TB12-2-291}{1207} \bibcite{Lankford:TB12-2-302}{1208} \bibcite{Vesely:TB12-2-302}{1209} \bibcite{Abrahams:TB12-2-302}{1210} \bibcite{Eijkhout:TB12-2-303}{1211} \bibcite{Cuoco:TB12-2-303}{1212} \bibcite{Anonymous:TB12-2-305}{1213} \bibcite{Anonymous:TB12-2-307}{1214} \bibcite{Anonymous:TB12-2-309}{1215} \bibcite{Anonymous:TB12-2-311}{1216} \bibcite{Anonymous:TB12-2-311-2}{1217} \bibcite{Knuth:TB12-2-313}{1218} \bibcite{Beeton:TB12-2-313}{1219} \bibcite{Anonymous:TB12-2-315}{1220} \bibcite{Anonymous:TB12-2-315-2}{1221} \bibcite{Anonymous:TB12-2-319}{1222} \bibcite{Anonymous:TB12-2-321}{1223} \bibcite{Anonymous:TB12-2-331}{1224} \bibcite{Anonymous:TB12-2-348}{1225} \bibcite{Anonymous:TB12-2-3}{1226} \bibcite{Anonymous:TB12-2-118}{1227} \bibcite{Anonymous:TB12-2-119}{1228} \bibcite{Anonymous:TB12-2-119-2}{1229} \bibcite{Anonymous:TB12-2-120}{1230} \bibcite{Anonymous:TB12-2-120-2}{1231} \bibcite{Anonymous:TB12-2-120-3}{1232} \bibcite{Anonymous:TB12-2-121}{1233} \bibcite{Anonymous:TB12-2-122}{1234} \bibcite{Anonymous:TB12-2-122-2}{1235} \bibcite{Anonymous:TB12-2-123}{1236} \bibcite{Anonymous:TB12-2-123-2}{1237} \bibcite{Anonymous:TB12-2-124}{1238} \bibcite{Anonymous:TB12-2-125}{1239} \bibcite{Anonymous:TB12-2-125-2}{1240} \bibcite{Barnhart:TB12-2-126}{1241} \bibcite{Anonymous:TB12-2-127}{1242} \bibcite{Anonymous:TB12-2-128}{1243} \bibcite{Anonymous:TB12-2-128-2}{1244} \bibcite{Anonymous:TB12-2-128-3}{1245} \bibcite{Anonymous:TB12-2-128-4}{1246} \bibcite{Anonymous:TB12-2-128-5}{1247} \bibcite{Anonymous:TB12-2-128-6}{1248} \bibcite{Anonymous:TB12-2-129}{1249} \bibcite{Anonymous:TB12-2-129-2}{1250} \bibcite{Anonymous:TB12-2-130}{1251} \bibcite{Anonymous:TB12-2-130-2}{1252} \bibcite{Anonymous:TB12-2-130-3}{1253} \bibcite{Anonymous:TB12-2-130-4}{1254} \bibcite{Nieland:TB12-2-131}{1255} \bibcite{Hosek:TB12-2-133}{1256} \bibcite{Anonymous:TB12-2-159}{1257} \bibcite{Anonymous:TB12-2-160}{1258} \bibcite{Anonymous:TB12-2-160-2}{1259} \bibcite{Anonymous:TB12-2-160-3}{1260} \bibcite{Anonymous:TB12-2-161}{1261} \bibcite{Anonymous:TB12-2-161-2}{1262} \bibcite{Anonymous:TB12-2-161-3}{1263} \bibcite{Anonymous:TB12-2-161-4}{1264} \bibcite{Anonymous:TB12-2-162}{1265} \bibcite{Anonymous:TB12-2-162-2}{1266} \bibcite{Anonymous:TB12-2-162-3}{1267} \bibcite{Anonymous:TB12-2-163}{1268} \bibcite{Anonymous:TB12-2-163-2}{1269} \bibcite{Anonymous:TB12-2-163-3}{1270} \bibcite{Damerell:TB12-2-164}{1271} \bibcite{Anonymous:TB12-2-170}{1272} \bibcite{Anonymous:TB12-2-171}{1273} \bibcite{Anonymous:TB12-2-171-2}{1274} \bibcite{Anonymous:TB12-2-172}{1275} \bibcite{Anonymous:TB12-2-172-2}{1276} \bibcite{Anonymous:TB12-2-172-3}{1277} \bibcite{Anonymous:TB12-2-172-4}{1278} \bibcite{Anonymous:TB12-2-173}{1279} \bibcite{Anonymous:TB12-2-173-2}{1280} \bibcite{Anonymous:TB12-2-173-3}{1281} \bibcite{Anonymous:TB12-2-173-4}{1282} \bibcite{Anonymous:TB12-2-174}{1283} \bibcite{Anonymous:TB12-2-174-2}{1284} \bibcite{Anonymous:TB12-2-174-3}{1285} \bibcite{Anonymous:TB12-2-175}{1286} \bibcite{Anonymous:TB12-2-175-2}{1287} \bibcite{Anonymous:TB12-2-176}{1288} \bibcite{Anonymous:TB12-2-183}{1289} \bibcite{Beebe:TB12-3-351}{1290} \bibcite{Poppelier:TB12-3-353}{1291} \bibcite{Petrycki:TB12-3-359}{1292} \bibcite{Bartlett:TB12-3-367}{1293} \bibcite{Ratner:TB12-3-372}{1294} \bibcite{Horn:TB12-3-377}{1295} \bibcite{Weiss:TB12-3-382}{1296} \bibcite{Rhoads:TB12-3-387}{1297} \bibcite{Brosnan:TB12-3-393}{1298} \bibcite{Hoover:TB12-3-397}{1299} \bibcite{Lavagnino:TB12-3-401}{1300} \bibcite{Gaffey:TB12-3-406}{1301} \bibcite{Dobrowolski:TB12-3-409}{1302} \bibcite{Sperberg-McQueen:TB12-3-415}{1303} \bibcite{Kakiuchi:TB12-3-422}{1304} \bibcite{Williams:TB12-3-430}{1305} \bibcite{Semenzato:TB12-3-434}{1306} \bibcite{Vulis:TB12-3-442}{1307} \bibcite{Anonymous:TB12-3-448}{1308} \bibcite{Anonymous:TB12-3-449}{1309} \bibcite{Anonymous:TB12-3-451}{1310} \bibcite{Anonymous:TB12-3-453}{1311} \bibcite{Anonymous:TB12-3-468}{1312} \bibcite{Horstmann:TB12-3-471}{1313} \bibcite{Arnon:TB12-3-479}{1314} \bibcite{Laan:TB12-3-485}{1315} \bibcite{Downes:TB12-3-502}{1316} \bibcite{Damrau:TB12-3-510}{1317} \bibcite{Roth:TB12-3-517}{1318} \bibcite{Flynn:TB12-3-523}{1319} \bibcite{Clark:TB12-3-528}{1320} \bibcite{Sowa:TB12-3-534}{1321} \bibcite{Haralambous:TB12-3-539}{1322} \bibcite{Hosek:TB12-3-549}{1323} \bibcite{Hoenig:TB12-3-554}{1324} \bibcite{Anonymous:TB12-3-558}{1325} \bibcite{Anonymous:TB12-3-562}{1326} \bibcite{Anonymous:TB12-3-563}{1327} \bibcite{Anonymous:TB12-3-564}{1328} \bibcite{Anonymous:TB12-3-570}{1329} \bibcite{Anonymous:TB12-3-588}{1330} \bibcite{Anonymous:TB13-1-3}{1331} \bibcite{Clark:TB13-1-5}{1332} \bibcite{Beebe:TB13-1-6}{1333} \bibcite{Beeton:TB13-1-10}{1334} \bibcite{Anonymous:TB13-1-11}{1335} \bibcite{Asher:TB13-1-13}{1336} \bibcite{Beccari:TB13-1-23}{1337} \bibcite{Rahtz:TB13-1-34}{1338} \bibcite{Thain:TB13-1-36}{1339} \bibcite{Mylonas:TB13-1-39}{1340} \bibcite{Mittelbach:TB13-1-51}{1341} \bibcite{Committee:TB13-1-54}{1342} \bibcite{Eijkhout:TB13-1-57}{1343} \bibcite{Poppelier:TB13-1-58}{1344} \bibcite{Hoenig:TB13-1-60}{1345} \bibcite{Siebenmann:TB13-1-62}{1346} \bibcite{Eijkhout:TB13-1-74}{1347} \bibcite{Eijkhout:TB13-1-75}{1348} \bibcite{Fine:TB13-1-75}{1349} \bibcite{Eijkhout:TB13-1-84}{1350} \bibcite{Tutelaers:TB13-1-85}{1351} \bibcite{Laan:TB13-1-91}{1352} \bibcite{Damrau:TB13-1-94}{1353} \bibcite{Thimbleby:TB13-1-95}{1354} \bibcite{Mittelbach:TB13-1-96}{1355} \bibcite{Anonymous:TB13-1-101}{1356} \bibcite{Anonymous:TB13-1-106}{1357} \bibcite{Anonymous:TB13-1-107}{1358} \bibcite{Beeton:TB13-1-108}{1359} \bibcite{Anonymous:TB13-1-109}{1360} \bibcite{Anonymous:TB13-1-110}{1361} \bibcite{Anonymous:TB13-1-112}{1362} \bibcite{Anonymous:TB13-1-126}{1363} \bibcite{Anonymous:TB13-1-127}{1364} \bibcite{Anonymous:TB13-2-131}{1365} \bibcite{Clark:TB13-2-133}{1366} \bibcite{Beeton:TB13-2-134}{1367} \bibcite{Anonymous:TB13-2-137}{1368} \bibcite{Taylor:TB13-2-138}{1369} \bibcite{Damerell:TB13-2-139}{1370} \bibcite{Salomon:TB13-2-146}{1371} \bibcite{Levin:TB13-2-150}{1372} \bibcite{Rahtz:TB13-2-156}{1373} \bibcite{Luvisetto:TB13-2-181}{1374} \bibcite{Poppelier:TB13-2-182}{1375} \bibcite{Taylor:TB13-2-185}{1376} \bibcite{Jones:TB13-2-188}{1377} \bibcite{Eijkhout:TB13-2-189}{1378} \bibcite{Mittelbach:TB13-2-190}{1379} \bibcite{Eijkhout:TB13-2-191}{1380} \bibcite{Huszar:TB13-2-192}{1381} \bibcite{Goossens:TB13-2-201}{1382} \bibcite{Luvisetto:TB13-2-208}{1383} \bibcite{Cameron:TB13-2-215}{1384} \bibcite{Partl:TB13-2-217}{1385} \bibcite{Wonneberger:TB13-2-221}{1386} \bibcite{Barr:TB13-2-223}{1387} \bibcite{Wonneberger:TB13-2-226}{1388} \bibcite{Anonymous:TB13-2-227}{1389} \bibcite{Anonymous:TB13-2-228}{1390} \bibcite{Beeton:TB13-2-229}{1391} \bibcite{Anonymous:TB13-2-230}{1392} \bibcite{Anonymous:TB13-2-231}{1393} \bibcite{Anonymous:TB13-2-232}{1394} \bibcite{Anonymous:TB13-2-235}{1395} \bibcite{Anonymous:TB13-2-247}{1396} \bibcite{Clark:TB13-3-251}{1397} \bibcite{Clark:TB13-3-253}{1398} \bibcite{Childs:TB13-3-261}{1399} \bibcite{Hampson:TB13-3-269}{1400} \bibcite{Baldwin:TB13-3-272}{1401} \bibcite{Bennett:TB13-3-281}{1402} \bibcite{Gaffey:TB13-3-291}{1403} \bibcite{Starks:TB13-3-295}{1404} \bibcite{Thorup:TB13-3-304}{1405} \bibcite{Laan:TB13-3-309}{1406} \bibcite{Damrau:TB13-3-315}{1407} \bibcite{Harris:TB13-3-322}{1408} \bibcite{Salomon:TB13-3-327}{1409} \bibcite{Weiss:TB13-3-330}{1410} \bibcite{Knuutila:TB13-3-335}{1411} \bibcite{Eijkhout:TB13-3-341}{1412} \bibcite{Hafner:TB13-3-347}{1413} \bibcite{Abbott:TB13-3-357}{1414} \bibcite{Burbank:TB13-3-362}{1415} \bibcite{Raman:TB13-3-372}{1416} \bibcite{Arnon:TB13-3-380}{1417} \bibcite{Rowley:TB13-3-390}{1418} \bibcite{Anonymous:TB13-3-391}{1419} \bibcite{Anonymous:TB13-3-393}{1420} \bibcite{Anonymous:TB13-3-395}{1421} \bibcite{Anonymous:TB13-3-396}{1422} \bibcite{Anonymous:TB13-3-398}{1423} \bibcite{Anonymous:TB13-3-399}{1424} \bibcite{Anonymous:TB13-3-400}{1425} \bibcite{Anonymous:TB13-3-402}{1426} \bibcite{Anonymous:TB13-3-411}{1427} \bibcite{Anonymous:TB13-4-415}{1428} \bibcite{Clark:TB13-4-417}{1429} \bibcite{Beeton:TB13-4-418}{1430} \bibcite{Anonymous:TB13-4-419}{1431} \bibcite{Palais:TB13-4-425}{1432} \bibcite{Taylor:TB13-4-433}{1433} \bibcite{Kelly:TB13-4-443}{1434} \bibcite{Chapman:TB13-4-447}{1435} \bibcite{Anonymous:TB13-4-452}{1436} \bibcite{Childs:TB13-4-457}{1437} \bibcite{Haralambous:TB13-4-457}{1438} \bibcite{Zubrinic:TB13-4-470}{1439} \bibcite{Sauter:TB13-4-472}{1440} \bibcite{Haralambous:TB13-4-476}{1441} \bibcite{Rahtz:TB13-4-477}{1442} \bibcite{Seyfarth:TB13-4-478}{1443} \bibcite{Eijkhout:TB13-4-486}{1444} \bibcite{Greenwade:TB13-4-487}{1445} \bibcite{Cameron:TB13-4-489}{1446} \bibcite{Neuwirth:TB13-4-490}{1447} \bibcite{Mittelbach:TB13-4-493}{1448} \bibcite{Eijkhout:TB13-4-494}{1449} \bibcite{Fine:TB13-4-495}{1450} \bibcite{Eijkhout:TB13-4-496}{1451} \bibcite{Anagnostopoulos:TB13-4-497}{1452} \bibcite{Fine:TB13-4-505}{1453} \bibcite{Mittelbach:TB13-4-510}{1454} \bibcite{Piff:TB13-4-516}{1455} \bibcite{Piff:TB13-4-518}{1456} \bibcite{Rahtz:TB13-4-524}{1457} \bibcite{Anonymous:TB13-4-528}{1458} \bibcite{Anonymous:TB13-4-530}{1459} \bibcite{Anonymous:TB13-4-532}{1460} \bibcite{Beeton:TB13-4-533}{1461} \bibcite{Anonymous:TB13-4-534}{1462} \bibcite{Anonymous:TB13-4-534-2}{1463} \bibcite{Anonymous:TB13-4-537}{1464} \bibcite{Anonymous:TB13-4-536}{1465} \bibcite{Anonymous:TB13-4-544}{1466} \bibcite{Anonymous:TB14-1-3}{1467} \bibcite{Thiele:TB14-1-5}{1468} \bibcite{Beeton:TB14-1-7}{1469} \bibcite{Wong:TB14-1-8}{1470} \bibcite{Vesilo:TB14-1-12}{1471} \bibcite{Taylor:TB14-1-17}{1472} \bibcite{Radel:TB14-1-20}{1473} \bibcite{Eijkhout:TB14-1-23}{1474} \bibcite{Comenetz:TB14-1-25}{1475} \bibcite{Fine:TB14-1-35}{1476} \bibcite{Saludes:TB14-1-40}{1477} \bibcite{Laan:TB14-1-54}{1478} \bibcite{Braams:TB14-1-60}{1479} \bibcite{RafalZbikowski:TB14-1-62}{1480} \bibcite{Heck:TB14-1-70}{1481} \bibcite{Anonymous:TB14-1-71}{1482} \bibcite{Anonymous:TB14-1-77}{1483} \bibcite{Anonymous:TB14-1-79}{1484} \bibcite{Beeton:TB14-1-81}{1485} \bibcite{Anonymous:TB14-1-81}{1486} \bibcite{Anonymous:TB14-1-83}{1487} \bibcite{Anonymous:TB14-1-85}{1488} \bibcite{Anonymous:TB14-1-82}{1489} \bibcite{Anonymous:TB14-1-87}{1490} \bibcite{Anonymous:TB14-2-95}{1491} \bibcite{Thiele:TB14-2-97}{1492} \bibcite{Beeton:TB14-2-99}{1493} \bibcite{Poppelier:TB14-2-102}{1494} \bibcite{Anonymous:TB14-2-103}{1495} \bibcite{Knappen:TB14-2-104}{1496} \bibcite{Rahtz:TB14-2-107}{1497} \bibcite{Cohen:TB14-2-118}{1498} \bibcite{Jurriens:TB14-2-123}{1499} \bibcite{Poppelier:TB14-2-127}{1500} \bibcite{Collins:TB14-2-128}{1501} \bibcite{Rahtz:TB14-2-132}{1502} \bibcite{Taylor:TB14-2-138}{1503} \bibcite{Durst:TB14-2-141}{1504} \bibcite{Taylor:TB14-2-141}{1505} \bibcite{Anonymous:TB14-2-146}{1506} \bibcite{Anonymous:TB14-2-147}{1507} \bibcite{Beeton:TB14-2-149}{1508} \bibcite{Anonymous:TB14-2-149}{1509} \bibcite{Anonymous:TB14-2-150}{1510} \bibcite{Anonymous:TB14-2-148}{1511} \bibcite{Anonymous:TB14-2-152}{1512} \bibcite{Thiele:TB14-3-162}{1513} \bibcite{Lammarsch:TB14-3-167}{1514} \bibcite{Rycko:TB14-3-171}{1515} \bibcite{Taylor:TB14-3-177}{1516} \bibcite{Hunter:TB14-3-183}{1517} \bibcite{Bennett:TB14-3-187}{1518} \bibcite{Taupin:TB14-3-196}{1519} \bibcite{Taupin:TB14-3-203}{1520} \bibcite{Siebenmann:TB14-3-212}{1521} \bibcite{Beebe:TB14-3-222}{1522} \bibcite{Bryan:TB14-3-223}{1523} \bibcite{Flynn:TB14-3-227}{1524} \bibcite{Wang:TB14-3-231}{1525} \bibcite{Lavaud:TB14-3-238}{1526} \bibcite{Kawaguti:TB14-3-245}{1527} \bibcite{Feruglio:TB14-3-252}{1528} \bibcite{Haralambous:TB14-3-260}{1529} \bibcite{Plaice:TB14-3-271}{1530} \bibcite{Doob:TB14-3-275}{1531} \bibcite{Horn:TB14-3-282}{1532} \bibcite{Jeffrey:TB14-3-285}{1533} \bibcite{Jeffrey:TB14-3-293}{1534} \bibcite{Bzyl:TB14-3-296}{1535} \bibcite{Fine:TB14-3-300}{1536} \bibcite{Laan:TB14-3-310}{1537} \bibcite{Laan:TB14-3-319}{1538} \bibcite{Dyson:TB14-3-329}{1539} \bibcite{Gorbunova:TB14-3-333}{1540} \bibcite{Reese:TB14-3-335}{1541} \bibcite{Greenwade:TB14-3-342}{1542} \bibcite{Anonymous:TB14-3-352}{1543} \bibcite{Anonymous:TB14-3-356}{1544} \bibcite{Anonymous:TB14-3-358}{1545} \bibcite{Anonymous:TB14-3-360}{1546} \bibcite{Anonymous:TB14-3-361}{1547} \bibcite{Anonymous:TB14-3-362}{1548} \bibcite{Anonymous:TB14-3-359}{1549} \bibcite{Anonymous:TB14-3-363}{1550} \bibcite{Anonymous:TB14-4-369}{1551} \bibcite{Thiele:TB14-4-371}{1552} \bibcite{Beeton:TB14-4-372}{1553} \bibcite{Anonymous:TB14-4-373}{1554} \bibcite{Clark:TB14-4-374}{1555} \bibcite{Taylor:TB14-4-381}{1556} \bibcite{Becker:TB14-4-382}{1557} \bibcite{Knuth:TB14-4-387}{1558} \bibcite{Liebl:TB14-4-390}{1559} \bibcite{Beebe:TB14-4-395}{1560} \bibcite{Carmody:TB14-4-420}{1561} \bibcite{Beccari:TB14-4-421}{1562} \bibcite{Aslaksen:TB14-4-423}{1563} \bibcite{Eijkhout:TB14-4-424}{1564} \bibcite{Rhead:TB14-4-425}{1565} \bibcite{Bland:TB14-4-433}{1566} \bibcite{Anonymous:TB14-4-438}{1567} \bibcite{Beeton:TB14-4-439}{1568} \bibcite{Anonymous:TB14-4-440}{1569} \bibcite{Anonymous:TB14-4-441}{1570} \bibcite{Anonymous:TB14-4-443}{1571} \bibcite{Anonymous:TB14-4-442}{1572} \bibcite{Anonymous:TB14-4-445}{1573} \bibcite{Anonymous:TB15-1-3}{1574} \bibcite{Thiele:TB15-1-5}{1575} \bibcite{Beeton:TB15-1-6}{1576} \bibcite{Arseneau:TB15-1-7}{1577} \bibcite{Beccari:TB15-1-9}{1578} \bibcite{Beccari:TB15-1-17}{1579} \bibcite{Feruglio:TB15-1-17}{1580} \bibcite{Poppelier:TB15-1-18}{1581} \bibcite{Pappas:TB15-1-19}{1582} \bibcite{Beccari:TB15-1-21}{1583} \bibcite{Sawdey:TB15-1-22}{1584} \bibcite{Poppelier:TB15-1-24}{1585} \bibcite{Detig:TB15-1-25}{1586} \bibcite{Salomon:TB15-1-28}{1587} \bibcite{Salomon:TB15-1-40}{1588} \bibcite{Eijkhout:TB15-1-55}{1589} \bibcite{Meer:TB15-1-57}{1590} \bibcite{Salomon:TB15-1-59}{1591} \bibcite{Fine:TB15-1-62}{1592} \bibcite{Rowley:TB15-1-63}{1593} \bibcite{Rhead:TB15-1-64}{1594} \bibcite{Anonymous:TB15-1-66}{1595} \bibcite{Anonymous:TB15-1-68}{1596} \bibcite{Anonymous:TB15-1-69}{1597} \bibcite{Beeton:TB15-1-74}{1598} \bibcite{Anonymous:TB15-1-75}{1599} \bibcite{Anonymous:TB15-1-70}{1600} \bibcite{Anonymous:TB15-1-75-2}{1601} \bibcite{Anonymous:TB15-1-77}{1602} \bibcite{Anonymous:TB15-1-79}{1603} \bibcite{Anonymous:TB15-1-81}{1604} \bibcite{Anonymous:TB15-2-87}{1605} \bibcite{Thiele:TB15-2-89}{1606} \bibcite{Beeton:TB15-2-89}{1607} \bibcite{Goossens:TB15-2-92}{1608} \bibcite{Taylor:TB15-2-96}{1609} \bibcite{Hoenig:TB15-2-97}{1610} \bibcite{Ramasubramanian:TB15-2-98}{1611} \bibcite{Jones:TB15-2-103}{1612} \bibcite{Eijkhout:TB15-2-106}{1613} \bibcite{Andre:TB15-2-107}{1614} \bibcite{Hoenig:TB15-2-107}{1615} \bibcite{Downes:TB15-2-110}{1616} \bibcite{Gaulle:TB15-2-131}{1617} \bibcite{Beccari:TB15-2-131}{1618} \bibcite{Anagnostopolous:TB15-2-132}{1619} \bibcite{Anonymous:TB15-2-133}{1620} \bibcite{Anonymous:TB15-2-136}{1621} \bibcite{Anonymous:TB15-2-138}{1622} \bibcite{Anonymous:TB15-2-143}{1623} \bibcite{Anonymous:TB15-2-160}{1624} \bibcite{Beeton:TB15-2-148}{1625} \bibcite{Anonymous:TB15-2-149}{1626} \bibcite{Beeton:TB15-2-150}{1627} \bibcite{Anonymous:TB15-2-145}{1628} \bibcite{Anonymous:TB15-2-151}{1629} \bibcite{Anonymous:TB15-2-155}{1630} \bibcite{Anonymous:TB15-2-152}{1631} \bibcite{Anonymous:TB15-2-154}{1632} \bibcite{Anonymous:TB15-3-166}{1633} \bibcite{Anonymous:TB15-3-167}{1634} \bibcite{Bigelow:TB15-3-169}{1635} \bibcite{Mittelbach:TB15-3-170}{1636} \bibcite{Haralambous:TB15-3-174}{1637} \bibcite{Cohen:TB15-3-192}{1638} \bibcite{Haralambous:TB15-3-199}{1639} \bibcite{Malyshev:TB15-3-200}{1640} \bibcite{Hafner:TB15-3-201}{1641} \bibcite{Rokicki:TB15-3-205}{1642} \bibcite{Duggan:TB15-3-213}{1643} \bibcite{Rahtz:TB15-3-218}{1644} \bibcite{Sowa:TB15-3-223}{1645} \bibcite{Sofka:TB15-3-228}{1646} \bibcite{Zandt:TB15-3-239}{1647} \bibcite{Stenerson:TB15-3-247}{1648} \bibcite{Braams:TB15-3-255}{1649} \bibcite{Jeffrey:TB15-3-263}{1650} \bibcite{Patashnik:TB15-3-269}{1651} \bibcite{MacKay:TB15-3-274}{1652} \bibcite{Barnett:TB15-3-285}{1653} \bibcite{Kawaguti:TB15-3-293}{1654} \bibcite{Haralambous:TB15-3-301}{1655} \bibcite{Doumont:TB15-3-302}{1656} \bibcite{Schrod:TB15-3-309}{1657} \bibcite{Rowley:TB15-3-318}{1658} \bibcite{Hosek:TB15-3-319}{1659} \bibcite{Plaice:TB15-3-320}{1660} \bibcite{Ogawa:TB15-3-325}{1661} \bibcite{Baxter:TB15-3-331}{1662} \bibcite{Walsh:TB15-3-339}{1663} \bibcite{Haralambous:TB15-3-344}{1664} \bibcite{Taylor:TB15-3-353}{1665} \bibcite{Laugier:TB15-3-359}{1666} \bibcite{Downes:TB15-3-360}{1667} \bibcite{Hoenig:TB15-3-369}{1668} \bibcite{Fine:TB15-3-381}{1669} \bibcite{Grobelnik:TB15-3-386}{1670} \bibcite{Baragar:TB15-3-388}{1671} \bibcite{Anonymous:TB15-3-397}{1672} \bibcite{Anonymous:TB15-3-405}{1673} \bibcite{Anonymous:TB15-3-408}{1674} \bibcite{Anonymous:TB15-3-409}{1675} \bibcite{Anonymous:TB15-3-411}{1676} \bibcite{Anonymous:TB15-3-415}{1677} \bibcite{Anonymous:TB15-3-412}{1678} \bibcite{Anonymous:TB15-3-417}{1679} \bibcite{Anonymous:TB15-4-423}{1680} \bibcite{Thiele:TB15-4-425}{1681} \bibcite{Beeton:TB15-4-426}{1682} \bibcite{Goossens:TB15-4-427}{1683} \bibcite{Bolland:TB15-4-429}{1684} \bibcite{Taylor:TB15-4-434}{1685} \bibcite{Laugier:TB15-4-438}{1686} \bibcite{MacKay:TB15-4-444}{1687} \bibcite{Haralambous:TB15-4-447}{1688} \bibcite{Olsak:TB15-4-459}{1689} \bibcite{Taylor:TB15-4-464}{1690} \bibcite{Feruglio:TB15-4-466}{1691} \bibcite{Eijkhout:TB15-4-485}{1692} \bibcite{Richer:TB15-4-486}{1693} \bibcite{Fossmeier:TB15-4-492}{1694} \bibcite{Braams:TB15-4-496}{1695} \bibcite{Anonymous:TB15-4-498}{1696} \bibcite{Anonymous:TB15-4-500}{1697} \bibcite{Anonymous:TB15-4-505}{1698} \bibcite{Beeton:TB15-4-505}{1699} \bibcite{Anonymous:TB15-4-506}{1700} \bibcite{Anonymous:TB15-4-507}{1701} \bibcite{Anonymous:TB15-4-508}{1702} \bibcite{Anonymous:TB16-1-3}{1703} \bibcite{Bzyl:TB16-1-4}{1704} \bibcite{Thiele:TB16-1-5}{1705} \bibcite{Beeton:TB16-1-8}{1706} \bibcite{Jaegermann:TB16-1-9}{1707} \bibcite{Beeton:TB16-1-12}{1708} \bibcite{Beccari:TB16-1-18}{1709} \bibcite{Beccari:TB16-1-30}{1710} \bibcite{Thiele:TB16-1-42}{1711} \bibcite{Hoenig:TB16-1-45}{1712} \bibcite{Haralambous:TB16-1-46}{1713} \bibcite{Olsak:TB16-1-54}{1714} \bibcite{Malyshev:TB16-1-60}{1715} \bibcite{Malyshev:TB16-1-69}{1716} \bibcite{Jeffrey:TB16-1-78}{1717} \bibcite{Fujita:TB16-1-80}{1718} \bibcite{Anonymous:TB16-1-89}{1719} \bibcite{Burbank:TB16-1-90}{1720} \bibcite{Anonymous:TB16-1-91}{1721} \bibcite{Anonymous:TB16-1-92}{1722} \bibcite{Anonymous:TB16-1-93}{1723} \bibcite{Anonymous:TB16-1-94}{1724} \bibcite{Anonymous:TB16-2-99}{1725} \bibcite{Goossens:TB16-2-101}{1726} \bibcite{Clark:TB16-2-101}{1727} \bibcite{Goossens:TB16-2-103}{1728} \bibcite{Flynn:TB16-2-146}{1729} \bibcite{Granger:TB16-2-151}{1730} \bibcite{Doyle:TB16-2-154}{1731} \bibcite{Schwarzkopf:TB16-2-159}{1732} \bibcite{Haralambous:TB16-2-162}{1733} \bibcite{Goossens:TB16-2-174}{1734} \bibcite{Anonymous:TB16-2-215}{1735} \bibcite{Burbank:TB16-2-100}{1736} \bibcite{Anonymous:TB16-2-217}{1737} \bibcite{Anonymous:TB16-2-218}{1738} \bibcite{Anonymous:TB16-2-218-2}{1739} \bibcite{Fairbairns:TB16-3-222}{1740} \bibcite{Goossens:TB16-3-223}{1741} \bibcite{Zlatuska:TB16-3-227}{1742} \bibcite{Kinch:TB16-3-233}{1743} \bibcite{Hoenig:TB16-3-244}{1744} \bibcite{Goossens:TB16-3-253}{1745} \bibcite{Gibbons:TB16-3-259}{1746} \bibcite{Lesenko:TB16-3-265}{1747} \bibcite{Swift:TB16-3-269}{1748} \bibcite{Kletzing:TB16-3-276}{1749} \bibcite{Sojka:TB16-3-280}{1750} \bibcite{Sojka:TB16-3-290}{1751} \bibcite{Bzyl:TB16-3-297}{1752} \bibcite{Childs:TB16-3-300}{1753} \bibcite{Raman:TB16-3-310}{1754} \bibcite{Rahtz:TB16-3-315}{1755} \bibcite{Fairbairns:TB16-3-325}{1756} \bibcite{Feruglio:TB16-3-329}{1757} \bibcite{Anonymous:TB16-3-339}{1758} \bibcite{Anonymous:TB16-3-340}{1759} \bibcite{Anonymous:TB16-3-341}{1760} \bibcite{Anonymous:TB16-3-344}{1761} \bibcite{Anonymous:TB16-3-345}{1762} \bibcite{Anonymous:TB16-4-351}{1763} \bibcite{Goossens:TB16-4-353}{1764} \bibcite{Beeton:TB16-4-355}{1765} \bibcite{Flynn:TB16-4-357}{1766} \bibcite{Machi:TB16-4-358}{1767} \bibcite{Lapko:TB16-4-364}{1768} \bibcite{Slepukhin:TB16-4-373}{1769} \bibcite{Knappen:TB16-4-381}{1770} \bibcite{Jackowski:TB16-4-388}{1771} \bibcite{Rokicki:TB16-4-395}{1772} \bibcite{Structure:TB16-4-401}{1773} \bibcite{Rahtz:TB16-4-413}{1774} \bibcite{Fine:TB16-4-416}{1775} \bibcite{Haralambous:TB16-4-418}{1776} \bibcite{Anonymous:TB16-4-428}{1777} \bibcite{Anonymous:TB16-4-429}{1778} \bibcite{Anonymous:TB16-4-427}{1779} \bibcite{Goossens:TB16-4-432}{1780} \bibcite{Goossens:TB16-4-379}{1781} \bibcite{Burbank:TB16-4-440}{1782} \bibcite{Anonymous:TB16-4-440}{1783} \bibcite{Anonymous:TB16-4-441}{1784} \bibcite{Anonymous:TB16-4-441-2}{1785} \bibcite{Anonymous:TB16-4-442}{1786} \bibcite{Anonymous:TB16-4-443}{1787} \bibcite{Anonymous:TB16-4-443-2}{1788} \bibcite{Anonymous:TB17-1-3}{1789} \bibcite{Anonymous:TB17-1-4}{1790} \bibcite{Goossens:TB17-1-5}{1791} \bibcite{Beeton:TB17-1-6}{1792} \bibcite{Anonymous:TB17-1-7}{1793} \bibcite{Bennett:TB17-1-22}{1794} \bibcite{Machi:TB17-1-28}{1795} \bibcite{Knuth:TB17-1-29}{1796} \bibcite{Zubrinic:TB17-1-29}{1797} \bibcite{Vesely:TB17-1-34}{1798} \bibcite{Price:TB17-1-35}{1799} \bibcite{Porrat:TB17-1-37}{1800} \bibcite{Burbank:TB17-1-37}{1801} \bibcite{Reckdahl:TB17-1-43}{1802} \bibcite{Hosek:TB17-1-53}{1803} \bibcite{Hagen:TB17-1-54}{1804} \bibcite{Carlisle:TB17-1-67}{1805} \bibcite{Anonymous:TB17-1-73}{1806} \bibcite{Anonymous:TB17-1-74}{1807} \bibcite{Anonymous:TB17-1-76}{1808} \bibcite{Burbank:TB17-1-78}{1809} \bibcite{Anonymous:TB17-1-78}{1810} \bibcite{Anonymous:TB17-1-79}{1811} \bibcite{Anonymous:TB17-1-84}{1812} \bibcite{Anonymous:TB17-1-84-2}{1813} \bibcite{Anonymous:TB17-1-85}{1814} \bibcite{Anonymous:TB17-1-86}{1815} \bibcite{Anonymous:TB17-1-87}{1816} \bibcite{Anonymous:TB17-1-87-2}{1817} \bibcite{Goossens:TB17-2-91}{1818} \bibcite{Piska:TB17-2-92}{1819} \bibcite{Knappen:TB17-2-99}{1820} \bibcite{Rei:TB17-2-102}{1821} \bibcite{Berdnikov:TB17-2-115}{1822} \bibcite{Berdnikov:TB17-2-120}{1823} \bibcite{Haralambous:TB17-2-126}{1824} \bibcite{Kinch:TB17-2-147}{1825} \bibcite{Znamenskaya:TB17-2-161}{1826} \bibcite{Ovchenkov:TB17-2-166}{1827} \bibcite{Vinogradov:TB17-2-172}{1828} \bibcite{Lapko:TB17-2-174}{1829} \bibcite{Plaice:TB17-2-181}{1830} \bibcite{Langmyhr:TB17-2-184}{1831} \bibcite{Feruglio:TB17-2-191}{1832} \bibcite{Znamenskii:TB17-2-200}{1833} \bibcite{Vsesvetsky:TB17-2-204}{1834} \bibcite{Siebenmann:TB17-2-206}{1835} \bibcite{Laan:TB17-2-215}{1836} \bibcite{Laan:TB17-2-222}{1837} \bibcite{Berdnikov:TB17-2-229}{1838} \bibcite{Burbank:TB17-2-90}{1839} \bibcite{Anonymous:TB17-2-233}{1840} \bibcite{Anonymous:TB17-2-234}{1841} \bibcite{Anonymous:TB17-2-235}{1842} \bibcite{Anonymous:TB17-3-239}{1843} \bibcite{Goossens:TB17-3-241}{1844} \bibcite{Beeton:TB17-3-243}{1845} \bibcite{Sojka:TB17-3-244}{1846} \bibcite{Lesenko:TB17-3-252}{1847} \bibcite{Fine:TB17-3-255}{1848} \bibcite{Makhovaya:TB17-3-259}{1849} \bibcite{Rahtz:TB17-3-264}{1850} \bibcite{Laan:TB17-3-269}{1851} \bibcite{Thompson:TB17-3-280}{1852} \bibcite{Bzyl:TB17-3-281}{1853} \bibcite{Fairbairns:TB17-3-282}{1854} \bibcite{Reckdahl:TB17-3-288}{1855} \bibcite{Saludes:TB17-3-310}{1856} \bibcite{Schmitt:TB17-3-319}{1857} \bibcite{Carlisle:TB17-3-321}{1858} \bibcite{Anonymous:TB17-3-326}{1859} \bibcite{Burbank:TB17-3-327}{1860} \bibcite{Anonymous:TB17-3-327}{1861} \bibcite{Anonymous:TB17-3-328}{1862} \bibcite{Anonymous:TB17-3-240}{1863} \bibcite{Anonymous:TB17-3-329}{1864} \bibcite{Anonymous:TB17-3-330}{1865} \bibcite{Anonymous:TB17-3-331}{1866} \bibcite{Anonymous:TB17-3-331-2}{1867} \bibcite{Anonymous:TB17-4-335}{1868} \bibcite{Anonymous:TB17-4-336}{1869} \bibcite{Goossens:TB17-4-337}{1870} \bibcite{Beeton:TB17-4-340}{1871} \bibcite{Anonymous:TB17-4-342}{1872} \bibcite{Anonymous:TB17-4-355}{1873} \bibcite{Taylor:TB17-4-367}{1874} \bibcite{Strelkov:TB17-4-382}{1875} \bibcite{Grinchuk:TB17-4-385}{1876} \bibcite{Thiele:TB17-4-388}{1877} \bibcite{Fine:TB17-4-393}{1878} \bibcite{Gratzer:TB17-4-396}{1879} \bibcite{Kuypers:TB17-4-396}{1880} \bibcite{Anonymous:TB17-4-397}{1881} \bibcite{Anonymous:TB17-4-403}{1882} \bibcite{Burbank:TB17-4-405}{1883} \bibcite{Anonymous:TB17-4-405}{1884} \bibcite{Burbank:TB17-4-405-2}{1885} \bibcite{Anonymous:TB17-4-409}{1886} \bibcite{Anonymous:TB17-4-410}{1887} \bibcite{Anonymous:TB17-4-411}{1888} \bibcite{Anonymous:TB17-4-411-2}{1889} \bibcite{Anonymous:TB18-1-3}{1890} \bibcite{Anonymous:TB18-1-4}{1891} \bibcite{Goossens:TB18-1-5}{1892} \bibcite{Beeton:TB18-1-5}{1893} \bibcite{Anonymous:TB18-1-6}{1894} \bibcite{Taylor:TB18-1-6}{1895} \bibcite{Vieth:TB18-1-12}{1896} \bibcite{Haralambous:TB18-1-17}{1897} \bibcite{Weenen:TB18-1-30}{1898} \bibcite{Sofka:TB18-1-37}{1899} \bibcite{Beccari:TB18-1-39}{1900} \bibcite{Carlisle:TB18-1-48}{1901} \bibcite{Anonymous:TB18-1-56}{1902} \bibcite{Burbank:TB18-1-57}{1903} \bibcite{Anonymous:TB18-1-57}{1904} \bibcite{Anonymous:TB18-1-58}{1905} \bibcite{Anonymous:TB18-1-59}{1906} \bibcite{Anonymous:TB18-1-61}{1907} \bibcite{Anonymous:TB18-1-62}{1908} \bibcite{Anonymous:TB18-1-63}{1909} \bibcite{Anonymous:TB18-1-57-2}{1910} \bibcite{Anonymous:TB18-2-67}{1911} \bibcite{Kopriva:TB18-2-68}{1912} \bibcite{Goossens:TB18-2-69}{1913} \bibcite{Beeton:TB18-2-72}{1914} \bibcite{Flynn:TB18-2-74}{1915} \bibcite{Gibbons:TB18-2-75}{1916} \bibcite{Thiele:TB18-2-78}{1917} \bibcite{Grant:TB18-2-79}{1918} \bibcite{Chow:TB18-2-79}{1919} \bibcite{Anonymous:TB18-2-80}{1920} \bibcite{Rahtz:TB18-2-81}{1921} \bibcite{Hoenig:TB18-2-113}{1922} \bibcite{Anonymous:TB18-2-121}{1923} \bibcite{Anonymous:TB18-2-122}{1924} \bibcite{L3PT:TB18-2-127}{1925} \bibcite{Anonymous:TB18-2-130}{1926} \bibcite{Anonymous:TB18-2-138}{1927} \bibcite{Anonymous:TB18-2-139}{1928} \bibcite{Burbank:TB18-2-130}{1929} \bibcite{Anonymous:TB18-2-130-2}{1930} \bibcite{Anonymous:TB18-2-141}{1931} \bibcite{Anonymous:TB18-2-142}{1932} \bibcite{Anonymous:TB18-2-143}{1933} \bibcite{Anonymous:TB18-2-138-2}{1934} \bibcite{Anonymous:TB18-3-146}{1935} \bibcite{Jett:TB18-3-147}{1936} \bibcite{Anonymous:TB18-3-149}{1937} \bibcite{Rose:TB18-3-151}{1938} \bibcite{Moore:TB18-3-159}{1939} \bibcite{Lesenko:TB18-3-166}{1940} \bibcite{Hamlin:TB18-3-170}{1941} \bibcite{Lovell:TB18-3-175}{1942} \bibcite{Downes:TB18-3-182}{1943} \bibcite{Mittelbach:TB18-3-195}{1944} \bibcite{Mittelbach:TB18-3-199}{1945} \bibcite{Lemberg:TB18-3-206}{1946} \bibcite{Lemberg:TB18-3-214}{1947} \bibcite{Anonymous:TB18-3-225}{1948} \bibcite{Burbank:TB18-3-148}{1949} \bibcite{Anonymous:TB18-3-226}{1950} \bibcite{Anonymous:TB18-3-229}{1951} \bibcite{Anonymous:TB18-3-230}{1952} \bibcite{Anonymous:TB18-3-231}{1953} \bibcite{Anonymous:TB18-3-232}{1954} \bibcite{Anonymous:TB18-3-cover3}{1955} \bibcite{Anonymous:TB18-4-235}{1956} \bibcite{Taupin:TB18-4-236}{1957} \bibcite{Jett:TB18-4-237}{1958} \bibcite{Beeton:TB18-4-238}{1959} \bibcite{Taylor:TB18-4-239}{1960} \bibcite{Flynn:TB18-4-242}{1961} \bibcite{Rogers:TB18-4-246}{1962} \bibcite{Gibbons:TB18-4-246}{1963} \bibcite{Thanh:TB18-4-249}{1964} \bibcite{Finston:TB18-4-255}{1965} \bibcite{Roegel:TB18-4-274}{1966} \bibcite{Horn:TB18-4-284}{1967} \bibcite{Willadt:TB18-4-286}{1968} \bibcite{Anonymous:TB18-4-290}{1969} \bibcite{Anonymous:TB18-4-295}{1970} \bibcite{Aphalo:TB18-4-297}{1971} \bibcite{Carlisle:TB18-4-303}{1972} \bibcite{Mittelbach:TB18-4-309}{1973} \bibcite{Anonymous:TB18-4-312}{1974} \bibcite{Anonymous:TB18-4-313}{1975} \bibcite{Anonymous:TB18-4-314}{1976} \bibcite{Anonymous:TB18-4-315}{1977} \bibcite{Burbank:TB18-4-316}{1978} \bibcite{Anonymous:TB18-4-316}{1979} \bibcite{Anonymous:TB18-4-317}{1980} \bibcite{Anonymous:TB18-4-318}{1981} \bibcite{Anonymous:TB18-4-319}{1982} \bibcite{Anonymous:TB18-4-320}{1983} \bibcite{Anonymous:TB18-4-cover3}{1984} \bibcite{Anonymous:TB19-1-3}{1985} \bibcite{Jett:TB19-1-4}{1986} \bibcite{Beeton:TB19-1-5}{1987} \bibcite{Radhakrishnan:TB19-1-6}{1988} \bibcite{Rahtz:TB19-1-9}{1989} \bibcite{Scherer:TB19-1-11}{1990} \bibcite{Beebe:TB19-1-12}{1991} \bibcite{Rahtz:TB19-1-19}{1992} \bibcite{Moore:TB19-1-61}{1993} \bibcite{Horn:TB19-1-62}{1994} \bibcite{Gibbons:TB19-1-63}{1995} \bibcite{Taylor:TB19-1-65}{1996} \bibcite{Anonymous:TB19-1-75}{1997} \bibcite{Anonymous:TB19-1-81}{1998} \bibcite{Schroder:TB19-1-83}{1999} \bibcite{Burbank:TB19-1-82}{2000} \bibcite{Anonymous:TB19-1-82}{2001} \bibcite{Anonymous:TB19-1-84}{2002} \bibcite{Anonymous:TB19-1-86}{2003} \bibcite{Anonymous:TB19-1-87}{2004} \bibcite{Anonymous:TB19-1-88}{2005} \bibcite{Anonymous:TB19-1-82-2}{2006} \bibcite{Anonymous:TB19-2-91}{2007} \bibcite{Jett:TB19-2-93}{2008} \bibcite{Beeton:TB19-2-94}{2009} \bibcite{Anonymous:TB19-2-95}{2010} \bibcite{Anonymous:TB19-2-97}{2011} \bibcite{Flynn:TB19-2-98}{2012} \bibcite{Girou:TB19-2-101}{2013} \bibcite{Doob:TB19-2-113}{2014} \bibcite{Pandey:TB19-2-115}{2015} \bibcite{Bouche:TB19-2-120}{2016} \bibcite{Gibbons:TB19-2-135}{2017} \bibcite{LPT:TB19-2-137}{2018} \bibcite{LPT:TB19-2-139}{2019} \bibcite{Anonymous:TB19-2-140}{2020} \bibcite{Hogue:TB19-2-142}{2021} \bibcite{Anonymous:TB19-2-144}{2022} \bibcite{Barnett:TB19-2-147}{2023} \bibcite{Sutor:TB19-2-157}{2024} \bibcite{Hendrickson:TB19-2-162}{2025} \bibcite{Hoenig:TB19-2-168}{2026} \bibcite{Hoenig:TB19-2-176}{2027} \bibcite{Arthur:TB19-2-188}{2028} \bibcite{Moore:TB19-2-195}{2029} \bibcite{Patashnik:TB19-2-204}{2030} \bibcite{Signell:TB19-2-208}{2031} \bibcite{Sofka:TB19-2-214}{2032} \bibcite{Anonymous:TB19-2-223}{2033} \bibcite{Anonymous:TB19-2-227}{2034} \bibcite{Anonymous:TB19-2-92}{2035} \bibcite{Hennings:TB19-2-231}{2036} \bibcite{Anonymous:TB19-2-229}{2037} \bibcite{Burbank:TB19-2-228}{2038} \bibcite{Anonymous:TB19-2-228}{2039} \bibcite{Anonymous:TB19-2-230}{2040} \bibcite{Anonymous:TB19-2-231}{2041} \bibcite{Anonymous:TB19-2-232}{2042} \bibcite{Anonymous:TB19-2-Cover-3}{2043} \bibcite{Beeton:TB19-3-234}{2044} \bibcite{Beeton:TB19-3-235}{2045} \bibcite{Anonymous:TB19-3-237}{2046} \bibcite{Nickalls:TB19-3-239}{2047} \bibcite{Nowacki:TB19-3-242}{2048} \bibcite{Kinch:TB19-3-244}{2049} \bibcite{Piska:TB19-3-250}{2050} \bibcite{Hoekwater:TB19-3-256}{2051} \bibcite{Jackowski:TB19-3-267}{2052} \bibcite{Jackowski:TB19-3-272}{2053} \bibcite{Bolek:TB19-3-276}{2054} \bibcite{Thanh:TB19-3-284}{2055} \bibcite{Taupin:TB19-3-289}{2056} \bibcite{Bzyl:TB19-3-293}{2057} \bibcite{Wolinski:TB19-3-298}{2058} \bibcite{Hagen:TB19-3-304}{2059} \bibcite{Hagen:TB19-3-311}{2060} \bibcite{Hagen:TB19-3-317}{2061} \bibcite{Skoupy:TB19-3-318}{2062} \bibcite{NTGTFWG:TB19-3-323}{2063} \bibcite{NTGTFWG:TB19-3-330}{2064} \bibcite{Anonymous:TB19-3-338}{2065} \bibcite{Anonymous:TB19-3-340}{2066} \bibcite{Burbank:TB19-3-339}{2067} \bibcite{Anonymous:TB19-3-341}{2068} \bibcite{Anonymous:TB19-3-342}{2069} \bibcite{Anonymous:TB19-3-343}{2070} \bibcite{Anonymous:TB19-3-339}{2071} \bibcite{Anonymous:TB19-3-344}{2072} \bibcite{Anonymous:TB19-3-Cover-3}{2073} \bibcite{Anonymous:TB19-4-347}{2074} \bibcite{Carlisle:TB19-4-348}{2075} \bibcite{Jett:TB19-4-349}{2076} \bibcite{Beeton:TB19-4-351}{2077} \bibcite{Flynn:TB19-4-353}{2078} \bibcite{Misakova:TB19-4-355}{2079} \bibcite{Beeton:TB19-4-366}{2080} \bibcite{Olsak:TB19-4-366}{2081} \bibcite{Finston:TB19-4-372}{2082} \bibcite{Berdnikov:TB19-4-403}{2083} \bibcite{Pandey:TB19-4-417}{2084} \bibcite{Beccari:TB19-4-419}{2085} \bibcite{Gibbons:TB19-4-426}{2086} \bibcite{Thiele:TB19-4-428}{2087} \bibcite{Anonymous:TB19-4-431}{2088} \bibcite{Anonymous:TB19-4-433}{2089} \bibcite{Anonymous:TB19-4-434}{2090} \bibcite{Burbank:TB19-4-432}{2091} \bibcite{Anonymous:TB19-4-432}{2092} \bibcite{Anonymous:TB19-4-437}{2093} \bibcite{Anonymous:TB19-4-438}{2094} \bibcite{Anonymous:TB19-4-439}{2095} \bibcite{Anonymous:TB19-4-440}{2096} \bibcite{Anonymous:TB19-4-Cover-3}{2097} \bibcite{Anonymous:TB20-1-3}{2098} \bibcite{Rose:TB20-1-5}{2099} \bibcite{Beeton:TB20-1-6}{2100} \bibcite{Andre:TB20-1-8}{2101} \bibcite{Toledo:TB20-1-15}{2102} \bibcite{Rahtz:TB20-1-20}{2103} \bibcite{Beeton:TB20-1-45}{2104} \bibcite{Beeton:TB20-1-50}{2105} \bibcite{LPT:TB20-1-52}{2106} \bibcite{Thiele:TB20-1-53}{2107} \bibcite{Anonymous:TB20-1-59}{2108} \bibcite{Anonymous:TB20-1-65}{2109} \bibcite{Anonymous:TB20-1-67}{2110} \bibcite{Anonymous:TB20-1-4}{2111} \bibcite{Burbank:TB20-1-70}{2112} \bibcite{Anonymous:TB20-1-70}{2113} \bibcite{Anonymous:TB20-1-70-2}{2114} \bibcite{Thiele:TB20-1-71}{2115} \bibcite{Anonymous:TB20-1-71}{2116} \bibcite{Anonymous:TB20-1-76}{2117} \bibcite{Anonymous:TB20-1-77}{2118} \bibcite{Anonymous:TB20-1-78}{2119} \bibcite{Anonymous:TB20-1-79}{2120} \bibcite{Anonymous:TB20-1-80}{2121} \bibcite{Anonymous:TB20-1-Cover-3}{2122} \bibcite{Anonymous:TB20-2-83}{2123} \bibcite{Jett:TB20-2-85}{2124} \bibcite{Beeton:TB20-2-86}{2125} \bibcite{Childs:TB20-2-87}{2126} \bibcite{Langmyhr:TB20-2-89}{2127} \bibcite{Burbank:TB20-2-89}{2128} \bibcite{Gaulle:TB20-2-91}{2129} \bibcite{Anonymous:TB20-2-92}{2130} \bibcite{Beeton:TB20-2-92}{2131} \bibcite{Fine:TB20-2-93}{2132} \bibcite{Olsak:TB20-2-93}{2133} \bibcite{Flynn:TB20-2-94}{2134} \bibcite{Gelderman:TB20-2-96}{2135} \bibcite{Jackowski:TB20-2-104}{2136} \bibcite{Pandey:TB20-2-119}{2137} \bibcite{Hoppner:TB20-2-127}{2138} \bibcite{Dobbelsteen:TB20-2-128}{2139} \bibcite{Tolksdorf:TB20-2-134}{2140} \bibcite{Gibbons:TB20-2-141}{2141} \bibcite{Anonymous:TB20-2-143}{2142} \bibcite{Anonymous:TB20-2-146}{2143} \bibcite{Burbank:TB20-2-147}{2144} \bibcite{Anonymous:TB20-2-147}{2145} \bibcite{Preston:TB20-2-140}{2146} \bibcite{Anonymous:TB20-2-148}{2147} \bibcite{Anonymous:TB20-2-150}{2148} \bibcite{Anonymous:TB20-2-149}{2149} \bibcite{Anonymous:TB20-2-151}{2150} \bibcite{Anonymous:TB20-2-152}{2151} \bibcite{Anonymous:TB20-2-Cover-3}{2152} \bibcite{Thiele:TB20-3-155}{2153} \bibcite{Anonymous:TB20-3-160}{2154} \bibcite{Fulling:TB20-3-162}{2155} \bibcite{Ion:TB20-3-167}{2156} \bibcite{Lovell:TB20-3-176}{2157} \bibcite{Topping:TB20-3-184}{2158} \bibcite{Rowley:TB20-3-189}{2159} \bibcite{Story:TB20-3-196}{2160} \bibcite{Doumont:TB20-3-202}{2161} \bibcite{Flynn:TB20-3-208}{2162} \bibcite{Carlisle:TB20-3-214}{2163} \bibcite{Bazargan:TB20-3-217}{2164} \bibcite{Bartlett:TB20-3-221}{2165} \bibcite{Payne:TB20-3-222}{2166} \bibcite{Kruse:TB20-3-227}{2167} \bibcite{Ogawa:TB20-3-231}{2168} \bibcite{Mailhot:TB20-3-232}{2169} \bibcite{Wang:TB20-3-237}{2170} \bibcite{Sojka:TB20-3-241}{2171} \bibcite{Fine:TB20-3-248}{2172} \bibcite{Doumont:TB20-3-255}{2173} \bibcite{McKay:TB20-3-262}{2174} \bibcite{Lesenko:TB20-3-272}{2175} \bibcite{Hoenig:TB20-3-282}{2176} \bibcite{Popineau:TB20-3-290}{2177} \bibcite{Arthur:TB20-3-298}{2178} \bibcite{Murphy:TB20-3-307}{2179} \bibcite{Thiele:TB20-3-313}{2180} \bibcite{Thiele:TB20-3-316}{2181} \bibcite{Grimm:TB20-3-317}{2182} \bibcite{Gurari:TB20-3-320}{2183} \bibcite{Story:TB20-3-321}{2184} \bibcite{Doob:TB20-3-322}{2185} \bibcite{Hoover:TB20-3-323}{2186} \bibcite{Fulling:TB20-3-324}{2187} \bibcite{Bazargan:TB20-3-325}{2188} \bibcite{Ogawa:TB20-3-326}{2189} \bibcite{Anonymous:TB20-3-329}{2190} \bibcite{Anonymous:TB20-3-154}{2191} \bibcite{Anonymous:TB20-3-331}{2192} \bibcite{Preston:TB20-3-330}{2193} \bibcite{Anonymous:TB20-3-327}{2194} \bibcite{Anonymous:TB20-3-332}{2195} \bibcite{Anonymous:TB20-3-333}{2196} \bibcite{Anonymous:TB20-3-334}{2197} \bibcite{Anonymous:TB20-3-335}{2198} \bibcite{Anonymous:TB20-3-336}{2199} \bibcite{Anonymous:TB20-3-cover-3}{2200} \bibcite{Anonymous:TB20-4-339}{2201} \bibcite{Jett:TB20-4-341}{2202} \bibcite{Beeton:TB20-4-342}{2203} \bibcite{Flynn:TB20-4-344}{2204} \bibcite{Koutny:TB20-4-347}{2205} \bibcite{Zyka:TB20-4-348}{2206} \bibcite{Travis:TB20-4-350}{2207} \bibcite{Strokov:TB20-4-356}{2208} \bibcite{Casselman:TB20-4-359}{2209} \bibcite{Flynn:TB20-4-364}{2210} \bibcite{Fine:TB20-4-366}{2211} \bibcite{Thiele:TB20-4-366}{2212} \bibcite{Hefferon:TB20-4-367}{2213} \bibcite{Gibbons:TB20-4-367}{2214} \bibcite{Thiele:TB20-4-370}{2215} \bibcite{LPT:TB20-4-375}{2216} \bibcite{Shawyer:TB20-4-376}{2217} \bibcite{Taylor:TB20-4-378}{2218} \bibcite{Moore:TB20-4-389}{2219} \bibcite{Anonymous:TB20-4-394}{2220} \bibcite{Anonymous:TB20-4-395}{2221} \bibcite{Anonymous:TB20-4-399}{2222} \bibcite{Anonymous:TB20-4-401}{2223} \bibcite{Burbank:TB20-4-400}{2224} \bibcite{Anonymous:TB20-4-400}{2225} \bibcite{Preston:TB20-4-340}{2226} \bibcite{Anonymous:TB20-4-402}{2227} \bibcite{Anonymous:TB20-4-403}{2228} \bibcite{Anonymous:TB20-4-403-2}{2229} \bibcite{Anonymous:TB20-4-404}{2230} \bibcite{Anonymous:TB20-4-Cover-3}{2231} \bibcite{Anonymous:TB21-1-3}{2232} \bibcite{Jett:TB21-1-5}{2233} \bibcite{Beeton:TB21-1-6}{2234} \bibcite{Fujita:TB21-1-7}{2235} \bibcite{Hefferon:TB21-1-15}{2236} \bibcite{Team:TB21-1-16}{2237} \bibcite{Anonymous:TB21-1-17}{2238} \bibcite{Anonymous:TB21-1-xx}{2239} \bibcite{Eijkhout:TB21-1-91}{2240} \bibcite{Anonymous:TB21-1-92}{2241} \bibcite{Anonymous:TB21-1-4}{2242} \bibcite{Burbank:TB21-1-93}{2243} \bibcite{Anonymous:TB21-1-93}{2244} \bibcite{Anonymous:TB21-1-94}{2245} \bibcite{Anonymous:TB21-1-95}{2246} \bibcite{Farley:TB21-1-15}{2247} \bibcite{Anonymous:TB21-1-96}{2248} \bibcite{Anonymous:TB21-1-Cover-3}{2249} \bibcite{Anonymous:TB21-2-99}{2250} \bibcite{Jett:TB21-2-101}{2251} \bibcite{Beeton:TB21-2-102}{2252} \bibcite{Levien:TB21-2-103}{2253} \bibcite{Gratzer:TB21-2-111}{2254} \bibcite{Lemberg:TB21-2-113}{2255} \bibcite{Toledo:TB21-2-121}{2256} \bibcite{Berdnikov:TB21-2-129}{2257} \bibcite{Hobby:TB21-2-131}{2258} \bibcite{Beeton:TB21-2-132}{2259} \bibcite{Gibbons:TB21-2-133}{2260} \bibcite{Thiele:TB21-2-136}{2261} \bibcite{LPT:TB21-2-143}{2262} \bibcite{Anonymous:TB21-2-144}{2263} \bibcite{Anonymous:TB21-2-148}{2264} \bibcite{Burbank:TB21-2-146}{2265} \bibcite{Anonymous:TB21-2-146}{2266} \bibcite{Preston:TB21-2-100}{2267} \bibcite{DeLand:TB21-2-145}{2268} \bibcite{Anonymous:TB21-2-147}{2269} \bibcite{Anonymous:TB21-2-149}{2270} \bibcite{Anonymous:TB21-2-150}{2271} \bibcite{Anonymous:TB21-2-151}{2272} \bibcite{Anonymous:TB21-2-152}{2273} \bibcite{Anonymous:TB21-2-cover-3}{2274} \bibcite{Anonymous:TB21-2-}{2275} \bibcite{Fairbairns:TB21-3-155}{2276} \bibcite{Anonymous:TB21-3-157}{2277} \bibcite{Bayart:TB21-3-159}{2278} \bibcite{Beeton:TB21-3-176}{2279} \bibcite{Berdnikov:TB21-3-186}{2280} \bibcite{Bzyl:TB21-3-187}{2281} \bibcite{Carlisle:TB21-3-193}{2282} \bibcite{DeLand:TB21-3-200}{2283} \bibcite{Downes:TB21-3-201}{2284} \bibcite{Fine:TB21-3-210}{2285} \bibcite{Goossens:TB21-3-222}{2286} \bibcite{Gostanza:TB21-3-235}{2287} \bibcite{Kakugawa:TB21-3-243}{2288} \bibcite{Kolodin:TB21-3-250}{2289} \bibcite{Kostin:TB21-3-251}{2290} \bibcite{Lavaud:TB21-3-265}{2291} \bibcite{Lipkin:TB21-3-266}{2292} \bibcite{Mittelbach:TB21-3-278}{2293} \bibcite{Murphy:TB21-3-291}{2294} \bibcite{Syropoulos:TB21-3-292}{2295} \bibcite{Nikulina:TB21-3-298}{2296} \bibcite{Plaice:TB21-3-303}{2297} \bibcite{Taylor:TB21-3-304}{2298} \bibcite{Anonymous:TB21-3-306}{2299} \bibcite{Anonymous:TB21-3-154}{2300} \bibcite{Anonymous:TB21-3-305}{2301} \bibcite{Anonymous:TB21-3-308}{2302} \bibcite{Anonymous:TB21-3-307}{2303} \bibcite{Anonymous:TB21-3-310}{2304} \bibcite{Anonymous:TB21-3-311}{2305} \bibcite{Anonymous:TB21-3-312}{2306} \bibcite{Anonymous:TB21-3-cover-3}{2307} \bibcite{Beeton:TB21-4-315}{2308} \bibcite{Anonymous:TB21-4-435}{2309} \bibcite{Anonymous:TB21-4-436}{2310} \bibcite{Anonymous:TB21-4-437}{2311} \bibcite{Anonymous:TB21-4-438}{2312} \bibcite{Anonymous:TB21-4-439}{2313} \bibcite{Anonymous:TB21-4-440}{2314} \bibcite{Anonymous:TB21-4-cover-3}{2315} \bibcite{Anonymous:TB22-1-3}{2316} \bibcite{Jett:TB22-1-5}{2317} \bibcite{Beeton:TB22-1-6}{2318} \bibcite{Hefferon:TB22-1-8}{2319} \bibcite{Anonymous:TB22-1-15}{2320} \bibcite{Anonymous:TB22-1-20}{2321} \bibcite{Flynn:TB22-1-23}{2322} \bibcite{Mittelbach:TB22-1-24}{2323} \bibcite{Zapf:TB22-1-26}{2324} \bibcite{Beeton:TB22-1-31}{2325} \bibcite{Jackson:TB22-1-32}{2326} \bibcite{Lewenberg:TB22-1-42}{2327} \bibcite{Hobby:TB22-1-46}{2328} \bibcite{Hagen:TB22-1-58}{2329} \bibcite{Adams:TB22-1-67}{2330} \bibcite{Gratzer:TB22-1-74}{2331} \bibcite{Roegel:TB22-1-78}{2332} \bibcite{Eijkhout:TB22-1-83}{2333} \bibcite{Mauw:TB22-1-87}{2334} \bibcite{Mittelbach:TB22-1-93}{2335} \bibcite{Anonymous:TB22-1-100}{2336} \bibcite{Anonymous:TB22-1-103}{2337} \bibcite{Anonymous:TB22-1-105}{2338} \bibcite{DeMeritt:TB22-1-106}{2339} \bibcite{DeLand:TB22-1-107}{2340} \bibcite{Ogawa:TB22-1-xx}{2341} \bibcite{Anonymous:TB22-1-110}{2342} \bibcite{Anonymous:TB22-1-111}{2343} \bibcite{Anonymous:TB22-1-112}{2344} \bibcite{Anonymous:TB22-1-cover-3}{2345} \bibcite{Anonymous:TB22-3-115}{2346} \bibcite{Anonymous:TB22-3-117}{2347} \bibcite{Hagen:TB22-3-118}{2348} \bibcite{Jett:TB22-3-119}{2349} \bibcite{Richter:TB22-3-120}{2350} \bibcite{Ogawa:TB22-3-131}{2351} \bibcite{Schwartz:TB22-3-134}{2352} \bibcite{Hagen:TB22-3-136}{2353} \bibcite{Flynn:TB22-3-137}{2354} \bibcite{Tulett:TB22-3-140}{2355} \bibcite{Thanh:TB22-3-146}{2356} \bibcite{Moore:TB22-3-149}{2357} \bibcite{Hagen:TB22-3-160}{2358} \bibcite{Story:TB22-3-161}{2359} \bibcite{Moore:TB22-3-168}{2360} \bibcite{Schroder:TB22-3-180}{2361} \bibcite{Beebe:TB22-3-181}{2362} \bibcite{Moore:TB22-3-188}{2363} \bibcite{Oliver:TB22-3-197}{2364} \bibcite{Hammond:TB22-3-204}{2365} \bibcite{Caviness:TB22-3-208}{2366} \bibcite{Hoenig:TB22-3-209}{2367} \bibcite{Hoenig:TB22-3-216}{2368} \bibcite{Beebe:TB22-3-220}{2369} \bibcite{Downes:TB22-3-228}{2370} \bibcite{Doob:TB22-3-238}{2371} \bibcite{Koch:TB22-3-240}{2372} \bibcite{Adams:TB22-3-247}{2373} \bibcite{Anonymous:TB22-3-251}{2374} \bibcite{Anonymous:TB22-3-253}{2375} \bibcite{Anonymous:TB22-3-254}{2376} \bibcite{Anonymous:TB22-3-255}{2377} \bibcite{Anonymous:TB22-3-256}{2378} \bibcite{Anonymous:TB22-3-cover-3}{2379} \bibcite{Anonymous:TB22-4-259}{2380} \bibcite{Ogawa:TB22-4-261}{2381} \bibcite{Beeton:TB22-4-263}{2382} \bibcite{Story:TB22-4-265}{2383} \bibcite{Goossens:TB22-4-269}{2384} \bibcite{Forkosh:TB22-4-280}{2385} \bibcite{Berry:TB22-4-281}{2386} \bibcite{Fujita:TB22-4-285}{2387} \bibcite{Niepraschk:TB22-4-290}{2388} \bibcite{Fine:TB22-4-292}{2389} \bibcite{Roegel:TB22-4-298}{2390} \bibcite{Voss:TB22-4-314}{2391} \bibcite{Voss:TB22-4-319}{2392} \bibcite{Perlis:TB22-4-330}{2393} \bibcite{Obrecht:TB22-4-334}{2394} \bibcite{Moye:TB22-4-338}{2395} \bibcite{Wilson:TB22-4-339}{2396} \bibcite{Adams:TB22-4-341}{2397} \bibcite{Tulett:TB22-4-349}{2398} \bibcite{Perlis:TB22-4-350}{2399} \bibcite{Burt:TB22-4-353}{2400} \bibcite{Verna:TB22-4-361}{2401} \bibcite{Anonymous:TB22-4-365}{2402} \bibcite{Anonymous:TB22-4-368}{2403} \bibcite{Anonymous:TB22-4-369}{2404} \bibcite{Anonymous:TB22-4-371}{2405} \bibcite{Anonymous:TB22-4-372}{2406} \bibcite{Preston:TB22-4-260}{2407} \bibcite{Anonymous:TB22-4-373}{2408} \bibcite{Anonymous:TB22-4-374}{2409} \bibcite{Anonymous:TB22-4-375}{2410} \bibcite{Anonymous:TB22-4-376}{2411} \bibcite{Anonymous:TB22-4-cover-3}{2412} \bibcite{Christiansen:TB23-1-2}{2413} \bibcite{Anonymous:TB23-1-3}{2414} \bibcite{Anonymous:TB23-1-8}{2415} \bibcite{Anonymous:TB23-1-10}{2416} \bibcite{Kumar:TB23-1-13}{2417} \bibcite{Babu:TB23-1-17}{2418} \bibcite{Bujdoso:TB23-1-21}{2419} \bibcite{Bzyl:TB23-1-27}{2420} \bibcite{Esfahbod:TB23-1-41}{2421} \bibcite{Feng:TB23-1-46}{2422} \bibcite{Hagen:TB23-1-49}{2423} \bibcite{Haralambous:TB23-1-50}{2424} \bibcite{Kastrup:TB23-1-57}{2425} \bibcite{Moore:TB23-1-65}{2426} \bibcite{Piska:TB23-1-70}{2427} \bibcite{Popineau:TB23-1-74}{2428} \bibcite{Pournader:TB23-1-80}{2429} \bibcite{Rahtz:TB23-1-86}{2430} \bibcite{Rajkumar:TB23-1-90}{2431} \bibcite{Roegel:TB23-1-93}{2432} \bibcite{Shukla:TB23-1-101}{2433} \bibcite{Skoupy:TB23-1-106}{2434} \bibcite{Skoupy:TB23-1-107}{2435} \bibcite{Watt:TB23-1-108}{2436} \bibcite{Anonymous:TB23-1-109}{2437} \bibcite{Anonymous:TB23-1-110}{2438} \bibcite{Anonymous:TB23-1-111}{2439} \bibcite{Anonymous:TB23-1-112}{2440} \bibcite{Anonymous:TB23-1-cover-3}{2441} \bibcite{Beeton:TB23-2-114}{2442} \bibcite{Flynn:TB23-2-115}{2443} \bibcite{Anonymous:TB23-2-238}{2444} \bibcite{Anonymous:TB23-2-c3}{2445} \bibcite{Anonymous:TB23-2-239}{2446} \bibcite{Anonymous:TB23-2-240}{2447} \bibcite{Anonymous:TB23-3-243}{2448} \bibcite{Berry:TB23-3-245}{2449} \bibcite{Beeton:TB23-3-245}{2450} \bibcite{Anonymous:TB23-3-247}{2451} \bibcite{Anonymous:TB23-3-249}{2452} \bibcite{Beccari:TB23-3-261}{2453} \bibcite{Revets:TB23-3-269}{2454} \bibcite{Beccari:TB23-3-276}{2455} \bibcite{Pal:TB23-3-282}{2456} \bibcite{Kuhn:TB23-3-288}{2457} \bibcite{Menshikov:TB23-3-291}{2458} \bibcite{Barton:TB23-3-294}{2459} \bibcite{Tsolomitis:TB23-3-296}{2460} \bibcite{Schmidt:TB23-3-301}{2461} \bibcite{Saha:TB23-3-304}{2462} \bibcite{Obrecht:TB23-3-309}{2463} \bibcite{Casares:TB23-3-313}{2464} \bibcite{LaPlante:TB23-3-319}{2465} \bibcite{Feuerstack:TB23-3-329}{2466} \bibcite{Voss:TB23-3-335}{2467} \bibcite{Gray:TB23-3-341}{2468} \bibcite{Harders:TB23-3-344}{2469} \bibcite{Anonymous:TB23-3-354}{2470} \bibcite{Anonymous:TB23-3-355}{2471} \bibcite{Anonymous:TB23-3-358}{2472} \bibcite{Anonymous:TB23-3-cover-3}{2473} \bibcite{Burbank:TB23-3-360}{2474} \bibcite{Anonymous:TB23-3-360}{2475} \bibcite{Preston:TB23-3-244}{2476} \bibcite{Ogawa:TB23-3-360}{2477} \bibcite{Laakso:TB23-3-365}{2478} \bibcite{Anonymous:TB23-3-357}{2479} \bibcite{Anonymous:TB23-3-375}{2480} \bibcite{Anonymous:TB23-3-367}{2481} \bibcite{Anonymous:TB23-3-376}{2482} \bibcite{Anonymous:TB23-3-359}{2483} \bibcite{Adams:TB24-1-2}{2484} \bibcite{Berry:TB24-1-3}{2485} \bibcite{Anonymous:TB24-1-5}{2486} \bibcite{Rosell-Gonzalez:TB24-1-10}{2487} \bibcite{Moon:TB24-1-18}{2488} \bibcite{Anonymous:TB24-1-23}{2489} \bibcite{Patashnik:TB24-1-25}{2490} \bibcite{Anonymous:TB24-1-31}{2491} \bibcite{Koch:TB24-1-32}{2492} \bibcite{Costanzo:TB24-1-39}{2493} \bibcite{Saastamoinen:TB24-1-50}{2494} \bibcite{Padovani:TB24-1-53}{2495} \bibcite{Anonymous:TB24-1-62}{2496} \bibcite{Jackowski:TB24-1-64}{2497} \bibcite{Volovich:TB24-1-75}{2498} \bibcite{Thanh:TB24-1-79}{2499} \bibcite{Yiu:TB24-1-85}{2500} \bibcite{Anonymous:TB24-1-94}{2501} \bibcite{Bilotta:TB24-1-95}{2502} \bibcite{Hoenig:TB24-1-97}{2503} \bibcite{Plaice:TB24-1-105}{2504} \bibcite{Anonymous:TB24-1-115}{2505} \bibcite{Moon:TB24-1-116}{2506} \bibcite{Bilotta:TB24-1-120}{2507} \bibcite{Anonymous:TB24-1-122}{2508} \bibcite{Gray:TB24-1-124}{2509} \bibcite{Gaudeul:TB24-1-132}{2510} \bibcite{Odyniec:TB24-1-146}{2511} \bibcite{Anonymous:TB24-1-151}{2512} \bibcite{Anonymous:TB24-1-152}{2513} \bibcite{conference:TB24-1-c3}{2514} \bibcite{conference:TB24-1-154}{2515} \bibcite{Anonymous:TB24-1-155}{2516} \bibcite{Anonymous:TB24-1-155-2}{2517} \bibcite{Anonymous:TB24-1-156}{2518} \bibcite{Berry:TB24-2-159}{2519} \bibcite{Beeton:TB24-2-160}{2520} \bibcite{Plaice:TB24-2-162}{2521} \bibcite{Waud:TB24-2-163}{2522} \bibcite{Lawrence:TB24-2-165}{2523} \bibcite{Garcia:TB24-2-169}{2524} \bibcite{Adams:TB24-2-183}{2525} \bibcite{Hall:TB24-2-200}{2526} \bibcite{Fairbairns:TB24-2-205}{2527} \bibcite{Hellstrom:TB24-2-208}{2528} \bibcite{Walden:TB24-2-211}{2529} \bibcite{Syropoulos:TB24-2-216}{2530} \bibcite{Team:TB24-2-221}{2531} \bibcite{Luck:TB24-2-224}{2532} \bibcite{Scannell:TB24-2-236}{2533} \bibcite{Caird:TB24-2-240}{2534} \bibcite{Talole:TB24-2-245}{2535} \bibcite{Hufflen:TB24-2-249}{2536} \bibcite{Wilson:TB24-2-262}{2537} \bibcite{LaPlante:TB24-2-265}{2538} \bibcite{Beccari:TB24-2-275}{2539} \bibcite{Waud:TB24-2-278}{2540} \bibcite{Anonymous:TB24-2-282}{2541} \bibcite{Anonymous:TB24-2-283}{2542} \bibcite{Anonymous:TB24-2-286}{2543} \bibcite{Katre:TB24-2-288}{2544} \bibcite{Beebe:TB24-2-291}{2545} \bibcite{Anonymous:TB24-2-294}{2546} \bibcite{Anonymous:TB24-2-295}{2547} \bibcite{Anonymous:TB24-2-cover-3}{2548} \bibcite{Burbank:TB24-2-296}{2549} \bibcite{Anonymous:TB24-2-296}{2550} \bibcite{Laakso:TB24-2-296}{2551} \bibcite{Anonymous:TB24-2-298}{2552} \bibcite{Anonymous:TB24-2-293}{2553} \bibcite{Anonymous:TB24-2-299}{2554} \bibcite{Haralambous:TB24-3-302}{2555} \bibcite{program:TB24-3-306}{2556} \bibcite{Paput:TB24-3-311}{2557} \bibcite{Andre:TB24-3-314}{2558} \bibcite{Syropoulos:TB24-3-319}{2559} \bibcite{Lazrek:TB24-3-323}{2560} \bibcite{Atanasiu:TB24-3-328}{2561} \bibcite{Mourad:TB24-3-334}{2562} \bibcite{Souchier:TB24-3-339}{2563} \bibcite{Maniette:TB24-3-351}{2564} \bibcite{Turcan:TB24-3-357}{2565} \bibcite{Haralambous:TB24-3-369}{2566} \bibcite{Grimm:TB24-3-377}{2567} \bibcite{Pepping:TB24-3-389}{2568} \bibcite{Kanellos:TB24-3-402}{2569} \bibcite{Mourad:TB24-3-411}{2570} \bibcite{Chaix:TB24-3-415}{2571} \bibcite{Laurens:TB24-3-420}{2572} \bibcite{Vecsei:TB24-3-427}{2573} \bibcite{Turner:TB24-3-430}{2574} \bibcite{Sutto:TB24-3-435}{2575} \bibcite{Szabo:TB24-3-441}{2576} \bibcite{Horak:TB24-3-449}{2577} \bibcite{Boulanger:TB24-3-453}{2578} \bibcite{Kastrup:TB24-3-462}{2579} \bibcite{Widmann:TB24-3-468}{2580} \bibcite{Dagnat:TB24-3-472}{2581} \bibcite{Hufflen:TB24-3-489}{2582} \bibcite{Olsak:TB24-3-499}{2583} \bibcite{Milo:TB24-3-502}{2584} \bibcite{Plaice:TB24-3-512}{2585} \bibcite{Sastry:TB24-3-519}{2586} \bibcite{Bujdoso:TB24-3-527}{2587} \bibcite{Williams:TB24-3-531}{2588} \bibcite{Peterlin:TB24-3-545}{2589} \bibcite{Mehta:TB24-3-550}{2590} \bibcite{Toledo:TB24-3-557}{2591} \bibcite{Vakulenko:TB24-3-569}{2592} \bibcite{Jackowski:TB24-3-575}{2593} \bibcite{Wong:TB24-3-582}{2594} \bibcite{Devroye:TB24-3-588}{2595} \bibcite{Tombeur:TB24-3-597}{2596} \bibcite{Tombeur:TB24-3-605}{2597} \bibcite{Anonymous:TB24-3-619}{2598} \bibcite{Anonymous:TB24-3-621}{2599} \bibcite{Anonymous:TB24-3-622}{2600} \bibcite{Anonymous:TB24-3-621-2}{2601} \bibcite{Anonymous:TB24-3-623}{2602} \bibcite{Anonymous:TB24-3-623-2}{2603} \bibcite{Anonymous:TB24-3-624}{2604} \bibcite{Anonymous:TB24-3-c3}{2605} \bibcite{Carnes:TB25-1-2}{2606} \bibcite{program:TB25-1-4}{2607} \bibcite{Berry:TB25-1-6}{2608} \bibcite{Beebe:TB25-1-7}{2609} \bibcite{Flynn:TB25-1-31}{2610} \bibcite{Thanh:TB25-1-35}{2611} \bibcite{Gurari:TB25-1-39}{2612} \bibcite{Hagen:TB25-1-48}{2613} \bibcite{Grathwohl:TB25-1-52}{2614} \bibcite{Peter:TB25-1-58}{2615} \bibcite{Moses:TB25-1-63}{2616} \bibcite{Richter:TB25-1-71}{2617} \bibcite{Beebe:TB25-1-89}{2618} \bibcite{Hoekwater:TB25-1-105}{2619} \bibcite{Bilotta:TB25-1-105}{2620} \bibcite{Hagen:TB25-1-108}{2621} \bibcite{Anonymous:TB25-1-112}{2622} \bibcite{Anonymous:TB25-1-114}{2623} \bibcite{Anonymous:TB25-1-cover-3}{2624} \bibcite{Anonymous:TB25-1-120}{2625} \bibcite{Anonymous:TB25-1-115}{2626} \bibcite{Anonymous:TB25-1-116}{2627} \bibcite{Anonymous:TB25-1-116-2}{2628} \bibcite{Anonymous:TB25-1-114-2}{2629} \bibcite{Anonymous:TB25-1-117}{2630} \bibcite{Anonymous:TB25-1-118}{2631} \bibcite{Anonymous:TB25-1-118-2}{2632} \bibcite{Anonymous:TB25-1-119}{2633} \bibcite{Anonymous:TB25-1-119-2}{2634} \bibcite{Anonymous:TB25-1-120-2}{2635} \bibcite{Berry:TB25-2-123}{2636} \bibcite{Beeton:TB25-2-124}{2637} \bibcite{Hefferon:TB25-2-126}{2638} \bibcite{Peter:TB25-2-128}{2639} \bibcite{Schmitz:TB25-2-131}{2640} \bibcite{Flynn:TB25-2-134}{2641} \bibcite{Beccari:TB25-2-136}{2642} \bibcite{Lazrek:TB25-2-141}{2643} \bibcite{Pakin:TB25-2-150}{2644} \bibcite{Kroonenberg:TB25-2-159}{2645} \bibcite{Castier:TB25-2-166}{2646} \bibcite{Hwang:TB25-2-172}{2647} \bibcite{Hagon:TB25-2-177}{2648} \bibcite{Dominici:TB25-2-188}{2649} \bibcite{Law:TB25-2-193}{2650} \bibcite{Adriaens:TB25-2-194}{2651} \bibcite{Walden:TB25-2-199}{2652} \bibcite{Wilson:TB25-2-201}{2653} \bibcite{LaPlante:TB25-2-203}{2654} \bibcite{Anonymous:TB25-2-209}{2655} \bibcite{Anonymous:TB25-2-210}{2656} \bibcite{Anonymous:TB25-2-213}{2657} \bibcite{Anonymous:TB25-2-215}{2658} \bibcite{Anonymous:TB25-2-216}{2659} \bibcite{Anonymous:TB25-2-221}{2660} \bibcite{Bari:TB25-2-223}{2661} \bibcite{Anonymous:TB25-2-223}{2662} \bibcite{Berry:TB25-2-224}{2663} \bibcite{Laakso:TB25-2-226}{2664} \bibcite{Beeton:TB25-2-228}{2665} \bibcite{Anonymous:TB25-2-232}{2666} \bibcite{Anonymous:TB25-2-232-2}{2667} \bibcite{Berry:TB26-1-3}{2668} \bibcite{Beeton:TB26-1-3}{2669} \bibcite{Beeton:TB26-1-5}{2670} \bibcite{Quaresma:TB26-1-7}{2671} \bibcite{Roegel:TB26-1-10}{2672} \bibcite{Miller:TB26-1-17}{2673} \bibcite{Anonymous:TB26-1-29}{2674} \bibcite{Flom:TB26-1-31}{2675} \bibcite{Beebe:TB26-1-33}{2676} \bibcite{Flom:TB26-1-52}{2677} \bibcite{Schwartz:TB26-1-56}{2678} \bibcite{Hoppner:TB26-1-59}{2679} \bibcite{Hogg:TB26-1-63}{2680} \bibcite{Flynn:TB26-1-66}{2681} \bibcite{Mertz:TB26-1-68}{2682} \bibcite{Bazargan:TB26-1-74}{2683} \bibcite{Ignat:TB26-1-81}{2684} \bibcite{Miller:TB26-1-85}{2685} \bibcite{Anonymous:TB26-1-97}{2686} \bibcite{Anonymous:TB26-1-99}{2687} \bibcite{Anonymous:TB26-1-104}{2688} \bibcite{Anonymous:TB26-1-104-2}{2689} \bibcite{Anonymous:TB26-1-101}{2690} \bibcite{Anonymous:TB26-1-101-2}{2691} \bibcite{Anonymous:TB26-1-101-3}{2692} \bibcite{Anonymous:TB26-1-102}{2693} \bibcite{Anonymous:TB26-1-102-2}{2694} \bibcite{Anonymous:TB26-1-102-3}{2695} \bibcite{Anonymous:TB26-1-102-4}{2696} \bibcite{Anonymous:TB26-1-103}{2697} \bibcite{Anonymous:TB26-1-103-2}{2698} \bibcite{Anonymous:TB26-1-103-3}{2699} \bibcite{Anonymous:TB26-2-106}{2700} \bibcite{Laakso:TB26-2-108}{2701} \bibcite{Anonymous:TB26-2-110}{2702} \bibcite{Wong:TB26-2-111}{2703} \bibcite{Kew:TB26-2-115}{2704} \bibcite{Laguna:TB26-2-125}{2705} \bibcite{Yiu:TB26-2-129}{2706} \bibcite{Bagchee:TB26-2-135}{2707} \bibcite{Taylor:TB26-2-142}{2708} \bibcite{Hagen:TB26-2-152}{2709} \bibcite{Piska:TB26-2-158}{2710} \bibcite{Venkatesan:TB26-2-165}{2711} \bibcite{Anonymous:TB26-2-169}{2712} \bibcite{Anonymous:TB26-2-170}{2713} \bibcite{Anonymous:TB26-2-174}{2714} \bibcite{Anonymous:TB26-2-175}{2715} \bibcite{Anonymous:TB26-2-176}{2716} \bibcite{Anonymous:TB26-2-172}{2717} \bibcite{Anonymous:TB26-2-173}{2718} \bibcite{Anonymous:TB26-2-173-2}{2719} \bibcite{Anonymous:TB26-2-c3}{2720} ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5476122 pybtex-0.24.0/examples/tugboat/tugboat.bib0000644000175000001440000561346600000000000020312 0ustar00agusers00000000000000%%% -*-BibTeX-*- %%% ==================================================================== %%% BibTeX-file{ %%% author = "Nelson H. F. Beebe", %%% version = "1.35", %%% date = "13 July 2007", %%% time = "10:24:20 MDT", %%% filename = "tugboat.bib", %%% address = "University of Utah %%% Department of Mathematics, 110 LCB %%% 155 S 1400 E RM 233 %%% Salt Lake City, UT 84112-0090 %%% USA", %%% telephone = "+1 801 581 5254", %%% FAX = "+1 801 581 4148", %%% URL = "http://www.math.utah.edu/~beebe", %%% checksum = "35346 43987 149913 1513270", %%% email = "beebe at math.utah.edu, beebe at acm.org, %%% beebe at computer.org (Internet)", %%% codetable = "ISO/ASCII", %%% keywords = "bibliography; BibTeX; TeX Users Group; %%% TUGboat", %%% supported = "yes", %%% docstring = "This bibliography covers the contents of %%% TUGboat (ISSN 0896-3207, LCCN Z253.4.T47T83), %%% the Communications of the TeX Users Group. %%% %%% At version 1.35, the year coverage looked %%% like this: %%% %%% 1980 ( 11) 1989 ( 169) 1998 ( 113) %%% 1981 ( 119) 1990 ( 164) 1999 ( 134) %%% 1982 ( 50) 1991 ( 190) 2000 ( 84) %%% 1983 ( 66) 1992 ( 136) 2001 ( 97) %%% 1984 ( 69) 1993 ( 107) 2002 ( 71) %%% 1985 ( 115) 1994 ( 129) 2003 ( 122) %%% 1986 ( 114) 1995 ( 86) 2004 ( 30) %%% 1987 ( 138) 1996 ( 101) 2005 ( 85) %%% 1988 ( 125) 1997 ( 95) %%% %%% Article: 2720 %%% %%% Total entries: 2720 %%% %%% The master files for this bibliography are %%% maintained at %%% %%% ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.* %%% http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat %%% %%% A brief journal table-of-contents is available at: %%% %%% ftp://ftp.math.utah.edu/pub/tex/bib/toc/tugboat.html %%% http://www.math.utah.edu/pub/tex/bib/toc/tugboat.html %%% %%% The cross-referenced master index for the %%% journal is available at: %%% %%% ftp://ftp.math.utah.edu/pub/tex/bib/idx/tugboat/* %%% http://www.math.utah.edu/pub/tex/bib/idx/tugboat/index.html %%% %%% The TeX Users Group Web site is %%% %%% http://www.tug.org/ %%% %%% and the Comprehensive TeX Archive Network %%% (CTAN) master sites are at %%% %%% ftp://ftp.dante.de/tex-archive %%% ftp://ftp.tex.ac.uk/tex-archive %%% ftp://ctan.tug.org/tex-archive %%% %%% The command %%% %%% finger ctan at tug.org %%% %%% will display the current list of CTAN %%% master sites, and their many mirrors around %%% the world. %%% %%% The checksum field above contains a CRC-16 %%% checksum as the first value, followed by the %%% equivalent of the standard UNIX wc (word %%% count) utility output of lines, words, and %%% characters. This is produced by Robert %%% Solovay's checksum utility.", %%% } %%% ==================================================================== @String{ack-bnb = "Barbara N. Beeton, American Mathematical Society, P.O. Box 6248, Providence, RI 02940, USA, Tel: +1 401 455 4014, e-mail: \path|bnb@math.ams.org|"} @String{ack-nhfb = "Nelson H. F. Beebe, Center for Scientific Computing, University of Utah, Department of Mathematics, 110 LCB, 155 S 1400 E RM 233, Salt Lake City, UT 84112-0090, USA, Tel: +1 801 581 5254, FAX: +1 801 581 4148, e-mail: \path|beebe@math.utah.edu|, \path|beebe@acm.org|, \path|beebe@ieee.org| (Internet), URL: \path|http://www.math.utah.edu/~beebe/|"} %%% ==================================================================== %%% BibTeX database file for TUGboat created automatically with %%% %%% nawk -f tugboat.awk %%% %%% by beebe at airy.math.utah.edu on Fri Jul 13 10:24:20 MDT 2007 %%% %%% Input files: %%% tb0180.cnt %%% tb0281.cnt %%% tb0382.cnt %%% tb0483.cnt %%% tb0584.cnt %%% tb0685.cnt %%% tb0786.cnt %%% tb0887.cnt %%% tb0988.cnt %%% tb1089.cnt %%% tb1190.cnt %%% tb1291.cnt %%% tb1392.cnt %%% tb1493.cnt %%% tb1594.cnt %%% tb1695.cnt %%% tb1796.cnt %%% tb1897.cnt %%% tb1998.cnt %%% tb2099.cnt %%% tb2100.cnt %%% tb2201.cnt %%% tb2302.cnt %%% tb2403.cnt %%% tb2504.cnt %%% tb2605.cnt %%% %%% ==================================================================== @Preamble{"\input tugboat.def"} @Preamble{"\input path.sty"} @String{j-TUGboat = "TUGboat"} @Article{Welland:TB1-1-2, author = "Robert Welland", title = "{Editor's Comments}", journal = j-TUGboat, volume = "1", number = "1", pages = "2--3", month = oct, year = "1980", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Palais:TB1-1-3, author = "Richard Palais", title = "{Message from the Chairman}", journal = j-TUGboat, volume = "1", number = "1", pages = "3--7", month = oct, year = "1980", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Swanson:TB1-1-7, author = "Ellen Swanson", title = "{Publishing \& \TeX}", journal = j-TUGboat, volume = "1", number = "1", pages = "7--9", month = oct, year = "1980", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Spivak:TB1-1-10, author = "Michael Spivak", title = "{{\AmSTeX\Dash``A very friendly product}''}", journal = j-TUGboat, volume = "1", number = "1", pages = "10--11", month = oct, year = "1980", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Morris:TB1-1-12, author = "Robert Morris", title = "{Minutes of the first TUG meeting, February 1980}", journal = j-TUGboat, volume = "1", number = "1", pages = "12--16", month = oct, year = "1980", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Zabala:TB1-1-16, author = "Ignacio Zabala and Luis Trabb-Pardo", title = "{The status of the Pascal implementation of \TeX}", journal = j-TUGboat, volume = "1", number = "1", pages = "16--17", month = oct, year = "1980", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fuchs:TB1-1-17, author = "David Fuchs", title = "{The format of {\TeX}'s {DVI} files}", journal = j-TUGboat, volume = "1", number = "1", pages = "17--19", month = oct, year = "1980", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hodge:TB1-1-19, author = "Thea Hodge", title = "{University of Minnesota CDC Cyber site report}", journal = j-TUGboat, volume = "1", number = "1", pages = "19--20", month = oct, year = "1980", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB1-1-20, author = "Barbara Beeton", title = "{Troubles with trace and Other oddities}", journal = j-TUGboat, volume = "1", number = "1", pages = "20--20", month = oct, year = "1980", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Winograd:TB1-1-Appendix-A, author = "Terry Winograd and Bill Paxton", title = "{An indexing facility for \TeX}", journal = j-TUGboat, volume = "1", number = "1", pages = "Appendix A", month = oct, year = "1980", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Emch:TB1-1-22, author = "G{\'e}rard Emch and Arnold Pizer", title = "Letters", journal = j-TUGboat, volume = "1", number = "1", pages = "22--23", month = oct, year = "1980", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB2-1-2, author = "Anonymous", title = "Addresses of authors", journal = j-TUGboat, volume = "2", number = "1", pages = "2--2", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Welland:TB2-1-3, author = "Robert Welland", title = "{Site Coordinators}", journal = j-TUGboat, volume = "2", number = "1", pages = "3--3", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Palais:TB2-1-3, author = "Richard Palais", title = "Chairman's report", journal = j-TUGboat, volume = "2", number = "1", pages = "3--5", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Morris:TB2-1-5, author = "Robert Morris", title = "{Report on the January 1981 TUG Steering Committee meeting}", journal = j-TUGboat, volume = "2", number = "1", pages = "5--6", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Whidden:TB2-1-6, author = "Samuel B. Whidden", title = "{1980 TUG Treasurer's report}", journal = j-TUGboat, volume = "2", number = "1", pages = "6--6", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Morris:TB2-1-6, author = "Robert Morris", title = "{Informal TUG session}", journal = j-TUGboat, volume = "2", number = "1", pages = "6--7", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Morris:TB2-1-7, author = "Robert Morris", title = "{A position on {\TeX} maintenance}", journal = j-TUGboat, volume = "2", number = "1", pages = "7--8", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Whidden:TB2-1-9, author = "Samuel B. Whidden", title = "{{\TeX} support}", journal = j-TUGboat, volume = "2", number = "1", pages = "9--10", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kim:TB2-1-10, author = "Scott Kim", title = "{Update on Pascal \MF}", journal = j-TUGboat, volume = "2", number = "1", pages = "10--10", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fuchs:TB2-1-11, author = "David Fuchs", title = "{Erratum: {The format of {\TeX}'s DVI files}}", journal = j-TUGboat, volume = "2", number = "1", pages = "11--11", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Zabala:TB2-1-11, author = "Ignacio Zabala", title = "{\TeX-Pascal and Pascal compilers (a status report)}", journal = j-TUGboat, volume = "2", number = "1", pages = "11--12", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fuchs:TB2-1-12, author = "David Fuchs", title = "{{{\TeX} Font Metric files}}", journal = j-TUGboat, volume = "2", number = "1", pages = "12--16", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sherrod:TB2-1-17, author = "Phil Sherrod and Alan Wright", title = "{{\TeX} support programs}", journal = j-TUGboat, volume = "2", number = "1", pages = "17--19", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lawson:TB2-1-20, author = "C. L. Lawson and I. Zabala and M. D{\'{\i}}az", title = "{{Brief functional characterization of the procedures in the {\TeX}/Pascal compilation unit, {\tt SYSDEP}}}", journal = j-TUGboat, volume = "2", number = "1", pages = "20--31", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lawson:TB2-1-32, author = "C. L. Lawson and I. Zabala and M. D{\'{\i}}az", title = "{{Detailed specifications of procedures in the {\TeX}/Pascal compilation unit, {\tt SYSDEP}}}", journal = j-TUGboat, volume = "2", number = "1", pages = "32--47", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Doherty:TB2-1-48, author = "Barry Doherty", title = "{Output devices: {A new column}}", journal = j-TUGboat, volume = "2", number = "1", pages = "48--48", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berns:TB2-1-48, author = "Eagle Berns", title = "{{Status of {\TeX} on the Stanford 370/3033 systems}}", journal = j-TUGboat, volume = "2", number = "1", pages = "48--48", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Doherty:TB2-1-48-2, author = "Barry Doherty and Barbara Beeton", title = "{AMS site report}", journal = j-TUGboat, volume = "2", number = "1", pages = "48--49", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Incerpi:TB2-1-49, author = "Janet Incerpi", title = "{{The status of {\VAX}/{\TeX} at Brown}}", journal = j-TUGboat, volume = "2", number = "1", pages = "49--50", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hodge:TB2-1-51, author = "T. D. Hodge", title = "{{Report from the North Star, or, {\TeX} at the University of Minnesota}}", journal = j-TUGboat, volume = "2", number = "1", pages = "51--51", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Stromquist:TB2-1-51, author = "Ralph Stromquist", title = "{{{\TeX} is available for Univac 1100 systems}}", journal = j-TUGboat, volume = "2", number = "1", pages = "51--51", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Totland:TB2-1-51, author = "Helge Totland", title = "{{Report on the use of {\TeX} at Computas A/S, Norway; Nord 100 computer: 16 bit ``big mini''}}", journal = j-TUGboat, volume = "2", number = "1", pages = "51--52", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB2-1-53, author = "Barbara Beeton", title = "{Disappearing digits; {Undisciplined uppercase}}", journal = j-TUGboat, volume = "2", number = "1", pages = "53--53", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB2-1-53-2, author = "Barbara Beeton", title = "{How to prepare a file for publication in {\TUB}}", journal = j-TUGboat, volume = "2", number = "1", pages = "53--54", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Diaz:TB2-1-55, author = "Max D{\'{\i}}az", title = "{{\TeX} macro package}", journal = j-TUGboat, volume = "2", number = "1", pages = "55--55", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Keller:TB2-1-56, author = "Arthur M. Keller", title = "{Anatomy of a {\TeX} macro package}", journal = j-TUGboat, volume = "2", number = "1", pages = "56--86", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Price:TB2-1-87, author = "Lynne A. Price and Patrick Milligan", title = "{{{\tt NOFILL} program with Pascal source}}", journal = j-TUGboat, volume = "2", number = "1", pages = "87--97", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Price:TB2-1-98, author = "Lynne A. Price", title = "List macros", journal = j-TUGboat, volume = "2", number = "1", pages = "98--110", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Price:TB2-1-111, author = "Lynne A. Price", title = "Table of contents macros", journal = j-TUGboat, volume = "2", number = "1", pages = "111--118", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Milligan:TB2-1-119, author = "Patrick Milligan and Lynne A. Price", title = "Utility macros", journal = j-TUGboat, volume = "2", number = "1", pages = "119--121", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Price:TB2-1-122, author = "Lynne A. Price", title = "Hebrew letter (with source)", journal = j-TUGboat, volume = "2", number = "1", pages = "122--124", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Price:TB2-1-125, author = "Lynne A. Price", title = "Two slides", journal = j-TUGboat, volume = "2", number = "1", pages = "125--126", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eck:TB2-1-127, author = "David Eck", title = "{Report from an early {\AmSTeX} user}", journal = j-TUGboat, volume = "2", number = "1", pages = "127--127", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hirst:TB2-1-127, author = "Graeme Hirst", title = "Letters", journal = j-TUGboat, volume = "2", number = "1", pages = "127--127", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB2-1-128, author = "Anonymous", title = "{Appendix A.\ \ {Output samples from a paper by David Eck}}", journal = j-TUGboat, volume = "2", number = "1", pages = "128--135", month = feb, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB2-2-2, author = "Anonymous", title = "Addresses of officers, authors and others", journal = j-TUGboat, volume = "2", number = "2", pages = "2--2", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB2-2-3, author = "Anonymous", title = "Official announcements", journal = j-TUGboat, volume = "2", number = "2", pages = "3--3", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Welland:TB2-2-3, author = "Robert Welland", title = "Editor's remarks", journal = j-TUGboat, volume = "2", number = "2", pages = "3--3", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Spivak:TB2-2-3, author = "Michael Spivak", title = "Chairman's report", journal = j-TUGboat, volume = "2", number = "2", pages = "3--4", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Morris:TB2-2-4, author = "Robert Morris", title = "{Report on the {May} 1981 {TUG Steering Committee meeting}}", journal = j-TUGboat, volume = "2", number = "2", pages = "4--5", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Whidden:TB2-2-5, author = "Samuel B. Whidden", title = "{TUG Treasurer's report}", journal = j-TUGboat, volume = "2", number = "2", pages = "5--5", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Morris:TB2-2-5, author = "Robert Morris", title = "{Proposal for institutional support of TUG}", journal = j-TUGboat, volume = "2", number = "2", pages = "5--6", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Doherty:TB2-2-6, author = "Barry Doherty", title = "{{Report: {\TeX} Implementors' Workshop, Stanford, 14--15 May 1981}}", journal = j-TUGboat, volume = "2", number = "2", pages = "6--7", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB2-2-8, author = "Anonymous", title = "Workshop attendees", journal = j-TUGboat, volume = "2", number = "2", pages = "8--8", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pierce:TB2-2-8, author = "Tom Pierce", title = "{Preliminary announcement: TUG meeting, Cincinnati, January 1982}", journal = j-TUGboat, volume = "2", number = "2", pages = "8--8", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Milligan:TB2-2-9, author = "Patrick Milligan", title = "{Ask not what TUG can do for you, ask what you can do for TUG!}", journal = j-TUGboat, volume = "2", number = "2", pages = "9--10", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Milligan:TB2-2-10, author = "Patrick Milligan", title = "A proposal for a machine independent tape interchange standard", journal = j-TUGboat, volume = "2", number = "2", pages = "10--12", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fuchs:TB2-2-12, author = "David Fuchs", title = "{{The format of {\TeX}'s DVI files, Version I}}", journal = j-TUGboat, volume = "2", number = "2", pages = "12--16", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Zabala:TB2-2-16, author = "Ignacio Zabala", title = "{Some feedback from PTEX installations}", journal = j-TUGboat, volume = "2", number = "2", pages = "16--19", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Liang:TB2-2-19, author = "Frank M. Liang", title = "{{\TeX} and hyphenation}", journal = j-TUGboat, volume = "2", number = "2", pages = "19--20", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Harris:TB2-2-21, author = "Kent S. Harris and Robert M. McClure", title = "{{\TeX} on small machines}", journal = j-TUGboat, volume = "2", number = "2", pages = "21--24", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fuchs:TB2-2-25, author = "David Fuchs", title = "{Output device news flash (APS-5 and Linotron 202)}", journal = j-TUGboat, volume = "2", number = "2", pages = "25--25", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB2-2-25, author = "Anonymous", title = "Summary of computing equipment and output devices", journal = j-TUGboat, volume = "2", number = "2", pages = "25--25", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Trabb-Pardo:TB2-2-26, author = "Luis Trabb-Pardo", title = "{Imagen (Canon LBP-10)}", journal = j-TUGboat, volume = "2", number = "2", pages = "26--27", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hodge:TB2-2-28, author = "Thea Hodge and Michael Frisch", title = "{{{\TeX} under the North Star}}", journal = j-TUGboat, volume = "2", number = "2", pages = "28--28", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sherrod:TB2-2-28, author = "Phil Sherrod", title = "{DECSystem-10/20 Implementation Workshop announcement}", journal = j-TUGboat, volume = "2", number = "2", pages = "28--29", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB2-2-29, author = "Barbara Beeton", title = "{AMS site report}", journal = j-TUGboat, volume = "2", number = "2", pages = "29--29", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Milligan:TB2-2-29, author = "Patrick Milligan", title = "{{{\TeX} at the 1981 Spring DECUS U.S.\ Symposium}}", journal = j-TUGboat, volume = "2", number = "2", pages = "29--29", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Schwab:TB2-2-29, author = "Rachel Schwab", title = "{{{\TeX} at NIH}}", journal = j-TUGboat, volume = "2", number = "2", pages = "29--30", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kelly:TB2-2-30, author = "Bill Kelly", title = "{An implementation report for the Univac 1100}", journal = j-TUGboat, volume = "2", number = "2", pages = "30--33", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nichols:TB2-2-33, author = "Monte Nichols", title = "{{Availability of Oregon Software implementation of {\TeX} for the {\VAX}/VMS}}", journal = j-TUGboat, volume = "2", number = "2", pages = "33--34", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Smith:TB2-2-34, author = "Barry Smith", title = "{{{\TeX} for {\VAX}/VMS}}", journal = j-TUGboat, volume = "2", number = "2", pages = "34--34", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Doherty:TB2-2-34, author = "Barry C. W. Doherty", title = "{TUG Font Committee}", journal = j-TUGboat, volume = "2", number = "2", pages = "34--35", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hickey:TB2-2-35, author = "Thomas B. Hickey", title = "{{The status of {\MF} at OCLC}}", journal = j-TUGboat, volume = "2", number = "2", pages = "35--38", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{LeVeque:TB2-2-39, author = "William J. LeVeque", title = "{Font development at the {\AMS}}", journal = j-TUGboat, volume = "2", number = "2", pages = "39--40", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Whitney:TB2-2-40, author = "Ronald Whitney", title = "{\tt TPHON}", journal = j-TUGboat, volume = "2", number = "2", pages = "40--40", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Doherty:TB2-2-40, author = "Barry Doherty and Ronald Whitney", title = "Proofmode and magnification", journal = j-TUGboat, volume = "2", number = "2", pages = "40--42", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB2-2-42, author = "Barbara Beeton", title = "{Uppercase update; {Fickle fonts}}", journal = j-TUGboat, volume = "2", number = "2", pages = "42--43", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Price:TB2-2-43, author = "Lynne Price", title = "{Greetings from the Editor}", journal = j-TUGboat, volume = "2", number = "2", pages = "43--43", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB2-2-43, author = "Anonymous", title = "Macros on microfiche", journal = j-TUGboat, volume = "2", number = "2", pages = "43--43", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Milligan:TB2-2-43, author = "Patrick Milligan", title = "{Erratum: {\tt NOFILL} program}", journal = j-TUGboat, volume = "2", number = "2", pages = "43--44", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Milligan:TB2-2-44, author = "Patrick Milligan", title = "{{\TeX} macros for automatic font code allocation}", journal = j-TUGboat, volume = "2", number = "2", pages = "44--45", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{McKay:TB2-2-46, author = "Brendan McKay", title = "A macro menagerie", journal = j-TUGboat, volume = "2", number = "2", pages = "46--49", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Spivak:TB2-2-50, author = "Michael Spivak", title = "Macro madness", journal = j-TUGboat, volume = "2", number = "2", pages = "50--54", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Diaz:TB2-2-Appendix-A, author = "Max D{\'{\i}}az", title = "{F\'acil {\TeX}}", journal = j-TUGboat, volume = "2", number = "2", pages = "Appendix A", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Price:TB2-2-54, author = "Lynne Price", title = "{Greetings from the Editor}", journal = j-TUGboat, volume = "2", number = "2", pages = "54--54", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB2-2-54, author = "Anonymous", title = "{Problems from the {\TeX}arcana course}", journal = j-TUGboat, volume = "2", number = "2", pages = "54--56", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Stovall:TB2-2-57, author = "Johnny Stovall", title = "Balancing columns of text and translation", journal = j-TUGboat, volume = "2", number = "2", pages = "57--57", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Spivak:TB2-2-57, author = "Michael Spivak", title = "Input-dependent macro redefinition", journal = j-TUGboat, volume = "2", number = "2", pages = "57--57", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Price:TB2-2-57, author = "Lynne Price", title = "Letters", journal = j-TUGboat, volume = "2", number = "2", pages = "57--58", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Price:TB2-2-58, author = "Lynne Price", title = "Dreamboat", journal = j-TUGboat, volume = "2", number = "2", pages = "58--58", month = jul, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB2-3-2, author = "Anonymous", title = "Addresses of officers, authors and others", journal = j-TUGboat, volume = "2", number = "3", pages = "2--2", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB2-3-3, author = "Anonymous", title = "Official announcements", journal = j-TUGboat, volume = "2", number = "3", pages = "3--3", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Spivak:TB2-3-3, author = "Michael Spivak", title = "{Message from the Chairman}", journal = j-TUGboat, volume = "2", number = "3", pages = "3--4", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Whidden:TB2-3-4, author = "Samuel B. Whidden", title = "{TUG Treasurer's report}", journal = j-TUGboat, volume = "2", number = "3", pages = "4--4", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB2-3-5, author = "Donald Knuth", title = "The current state of things", journal = j-TUGboat, volume = "2", number = "3", pages = "5--6", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pierce:TB2-3-7, author = "Tom Pierce", title = "{{{\TUG} Winter 1982 meeting, January 11--12, 1982, Cincinnati, Ohio}}", journal = j-TUGboat, volume = "2", number = "3", pages = "7--7", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Samuel:TB2-3-7, author = "Arthur Samuel", title = "{Pascal-coded {\TeX} errata}", journal = j-TUGboat, volume = "2", number = "3", pages = "7--8", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fuchs:TB2-3-8, author = "David Fuchs", title = "{The format of PXL files}", journal = j-TUGboat, volume = "2", number = "3", pages = "8--12", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sauter:TB2-3-13, author = "John Sauter", title = "{Sample of output from an IDS-640}", journal = j-TUGboat, volume = "2", number = "3", pages = "13--13", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thedford:TB2-3-14, author = "Rilla Thedford", title = "Output device index", journal = j-TUGboat, volume = "2", number = "3", pages = "14--14", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mooney:TB2-3-14, author = "Jim Mooney", title = "{{A Varian output driver in {\VAX}/VMS Fortran}}", journal = j-TUGboat, volume = "2", number = "3", pages = "14--15", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Murphy:TB2-3-15, author = "Timothy Murphy", title = "{Diabolic {\TeX}}", journal = j-TUGboat, volume = "2", number = "3", pages = "15--21", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fuchs:TB2-3-21, author = "David Fuchs", title = "{News from the home front (Stanford)}", journal = j-TUGboat, volume = "2", number = "3", pages = "21--22", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Frisch:TB2-3-22, author = "Michael Frisch", title = "{{{\TeX} under the North Star}}", journal = j-TUGboat, volume = "2", number = "3", pages = "22--23", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB2-3-23, author = "Barbara Beeton", title = "{A {\TUB} tour: {Excerpts from the {\TeX}nician's log}}", journal = j-TUGboat, volume = "2", number = "3", pages = "23--25", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carnes:TB2-3-25, author = "Lance Carnes", title = "{{{\TeX} for the HP3000}}", journal = j-TUGboat, volume = "2", number = "3", pages = "25--26", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Plass:TB2-3-26, author = "Susan Plass", title = "{{{\TeX} for the IBM 370}}", journal = j-TUGboat, volume = "2", number = "3", pages = "26--27", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rosenschein:TB2-3-27, author = "Jeffrey S. Rosenschein", title = "{{{\TeX} in Israel}}", journal = j-TUGboat, volume = "2", number = "3", pages = "27--28", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rodgers:TB2-3-28, author = "David Rodgers", title = "{{{\TeX} at the University of Michigan, summary of progress}}", journal = j-TUGboat, volume = "2", number = "3", pages = "28--29", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Morris:TB2-3-29, author = "Robert Morris", title = "{{{\VAX} on UNIX}}", journal = j-TUGboat, volume = "2", number = "3", pages = "29--29", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jackson:TB2-3-29, author = "Calvin Jackson", title = "{{{\TeX} at CalTech}}", journal = j-TUGboat, volume = "2", number = "3", pages = "29--32", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Incerpi:TB2-3-32, author = "Janet Incerpi", title = "{{The status of {\VAX}/{\TeX} at Brown}}", journal = j-TUGboat, volume = "2", number = "3", pages = "32--32", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nichols:TB2-3-32, author = "Monte C. Nichols", title = "{{{\VAX}/VMS site report}}", journal = j-TUGboat, volume = "2", number = "3", pages = "32--32", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Blair:TB2-3-32, author = "John Blair", title = "{{Enhancements of {\VAX}/VMS {\TeX} at Calma}}", journal = j-TUGboat, volume = "2", number = "3", pages = "32--34", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sauter:TB2-3-34, author = "John Sauter", title = "{``Poor man's'' {\TeX}}", journal = j-TUGboat, volume = "2", number = "3", pages = "34--35", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Whitney:TB2-3-35, author = "Ronald Whitney", title = "Font update", journal = j-TUGboat, volume = "2", number = "3", pages = "35--35", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB2-3-35, author = "Barbara Beeton", title = "{Don't just {\tt\char`\\let} {\TeX} hang, {\tt\char`\\raise} or {\tt\char`\\lower} it}", journal = j-TUGboat, volume = "2", number = "3", pages = "35--35", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Price:TB2-3-36, author = "Lynne Price", title = "Editor's introduction", journal = j-TUGboat, volume = "2", number = "3", pages = "36--36", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB2-3-36, author = "Anonymous", title = "{{\TUB} macro index}", journal = j-TUGboat, volume = "2", number = "3", pages = "36--37", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Murphy:TB2-3-37, author = "Timothy Murphy", title = "{{Bubbles: A {\TeX}tension in search of a {\TeX}pert}}", journal = j-TUGboat, volume = "2", number = "3", pages = "37--38", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Plass:TB2-3-39, author = "Michael F. Plass", title = "{Charting your grammar with {\TeX}}", journal = j-TUGboat, volume = "2", number = "3", pages = "39--56", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nichols:TB2-3-57, author = "Monte Nichols and Barbara Beeton", title = "{Chemical notation using {\TeX}}", journal = j-TUGboat, volume = "2", number = "3", pages = "57--58", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Price:TB2-3-58, author = "Lynne Price", title = "Problems", journal = j-TUGboat, volume = "2", number = "3", pages = "58--61", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB2-3-61, author = "Anonymous", title = "{Problems from the {\TeX}arcana class: {Answers}, and another problem}", journal = j-TUGboat, volume = "2", number = "3", pages = "61--65", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Cole:TB2-3-66, author = "J. M. Cole", title = "Letters et alia", journal = j-TUGboat, volume = "2", number = "3", pages = "66--66", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sannella:TB2-3-66, author = "Michael Sannella", title = "{Formatting a book with {\TeX}: {Experiences} and observations}", journal = j-TUGboat, volume = "2", number = "3", pages = "66--74", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB2-3-xx, author = "Anonymous", title = "{Instructions for submitting {\TUB} articles on magnetic tape}", journal = j-TUGboat, volume = "2", number = "3", pages = "??--??", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB2-3-xx-2, author = "Anonymous", title = "Membership application and order form", journal = j-TUGboat, volume = "2", number = "3", pages = "??--??", month = nov, year = "1981", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB3-1-2, author = "Anonymous", title = "Addresses of officers, authors and others", journal = j-TUGboat, volume = "3", number = "1", pages = "2--2", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB3-1-3, author = "Anonymous", title = "Official announcements", journal = j-TUGboat, volume = "3", number = "1", pages = "3--3", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB3-1-3, author = "Barbara Beeton", title = "Statement of editorial policy", journal = j-TUGboat, volume = "3", number = "1", pages = "3--4", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Morris:TB3-1-4, author = "Robert Morris", title = "{{Report on the January 1981 TUG {\SC} meeting}}", journal = j-TUGboat, volume = "3", number = "1", pages = "4--5", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB3-1-xx, author = "Anonymous", title = "{TUG Winter meeting, January 11--12, 1982, Cincinnati, Ohio}", journal = j-TUGboat, volume = "3", number = "1", pages = "??--??", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{McGaffey:TB3-1-7, author = "Robert McGaffey and Keith Penny", title = "{Open letter to TUG}", journal = j-TUGboat, volume = "3", number = "1", pages = "7--9", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Price:TB3-1-10, author = "Lynne A. Price", title = "{Report on the ANSI X3J6 meeting}", journal = j-TUGboat, volume = "3", number = "1", pages = "10--10", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB3-1-10, author = "Donald Knuth", title = "{{Fixed-point glue setting\Dash an example of {\tt WEB}}}", journal = j-TUGboat, volume = "3", number = "1", pages = "10--27", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Frisch:TB3-1-28, author = "Michael J. Frisch", title = "{{CDC {\TeX}}}", journal = j-TUGboat, volume = "3", number = "1", pages = "28--28", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carnes:TB3-1-28, author = "Lance Carnes", title = "{HP3000 site report}", journal = j-TUGboat, volume = "3", number = "1", pages = "28--29", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Canzii:TB3-1-29, author = "G. Canzii and D. Lucarella and A. Pilenga", title = "{{{\TeX} at the University of Milan}}", journal = j-TUGboat, volume = "3", number = "1", pages = "29--29", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Aiello:TB3-1-30, author = "L. Aiello and S. Pavan", title = "{{{\TeX} news from Pisa}}", journal = j-TUGboat, volume = "3", number = "1", pages = "30--31", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nichols:TB3-1-32, author = "Monte C. Nichols", title = "{{{\VAX}/VMS site report}}", journal = j-TUGboat, volume = "3", number = "1", pages = "32--32", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carnes:TB3-1-32, author = "Lance Carnes", title = "Editor's introduction", journal = j-TUGboat, volume = "3", number = "1", pages = "32--32", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB3-1-33, author = "Barbara Beeton", title = "Another hangup", journal = j-TUGboat, volume = "3", number = "1", pages = "33--33", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Price:TB3-1-33, author = "Lynne Price", title = "Editor's introduction", journal = j-TUGboat, volume = "3", number = "1", pages = "33--33", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB3-1-33, author = "Anonymous", title = "{{\TUB} macro index}", journal = j-TUGboat, volume = "3", number = "1", pages = "33--35", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeman:TB3-1-35, author = "Roger L. Beeman", title = "Display of a font in table form", journal = j-TUGboat, volume = "3", number = "1", pages = "35--38", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeman:TB3-1-39, author = "Roger L. Beeman", title = "Seating charts", journal = j-TUGboat, volume = "3", number = "1", pages = "39--42", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB3-1-43, author = "Anonymous", title = "{{Problems from the {\TeX}arcana class: Answer to the challenge problem}}", journal = j-TUGboat, volume = "3", number = "1", pages = "43--44", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Whidden:TB3-1-xx, author = "Samuel B. Whidden", title = "{TUG financial reports}", journal = j-TUGboat, volume = "3", number = "1", pages = "??--??", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB3-1-xx-2, author = "Anonymous", title = "{Instructions for submitting {\TUB} articles on magnetic tape}", journal = j-TUGboat, volume = "3", number = "1", pages = "??--??", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB3-1-xx-3, author = "Anonymous", title = "Membership application and order form", journal = j-TUGboat, volume = "3", number = "1", pages = "??--??", month = mar, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB3-2-2, author = "Anonymous", title = "Addresses of officers, authors and others", journal = j-TUGboat, volume = "3", number = "2", pages = "2--2", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB3-2-3, author = "Anonymous", title = "Official announcements", journal = j-TUGboat, volume = "3", number = "2", pages = "3--3", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB3-2-4, author = "Anonymous", title = "{{The {\TeX} logo: An important note}}", journal = j-TUGboat, volume = "3", number = "2", pages = "4--4", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Plass:TB3-2-4, author = "Susan Plass", title = "{Report on business meetings, TUG Summer meeting, Stanford University, July 25--27, 1982}", journal = j-TUGboat, volume = "3", number = "2", pages = "4--5", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB3-2-xx, author = "Anonymous", title = "{{TUG Summer meeting and {\TeX}82 short course, Stanford University, July 25--30, 1982}}", journal = j-TUGboat, volume = "3", number = "2", pages = "??--??", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB3-2-7, author = "Pierre A. MacKay", title = "{An informal interchange format for {\TeX} files}", journal = j-TUGboat, volume = "3", number = "2", pages = "7--8", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Whitney:TB3-2-9, author = "Ron Whitney", title = "{{Introduction to {\TeX} and TUG for new users}}", journal = j-TUGboat, volume = "3", number = "2", pages = "9--12", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB3-2-113, author = "Anonymous", title = "{{\TeX}82 memory structure}", journal = j-TUGboat, volume = "3", number = "2", pages = "113", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fuchs:TB3-2-14, author = "David Fuchs", title = "{{The format of {\TeX}'s DVI files}}", journal = j-TUGboat, volume = "3", number = "2", pages = "14--19", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thedford:TB3-2-20, author = "Rilla J. Thedford", title = "Output devices", journal = j-TUGboat, volume = "3", number = "2", pages = "20--20", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fuchs:TB3-2-20, author = "David Fuchs", title = "{News from Stanford}", journal = j-TUGboat, volume = "3", number = "2", pages = "20--21", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Plass:TB3-2-21, author = "Susan Plass", title = "{Fixes to known bugs in {\TeX}370}", journal = j-TUGboat, volume = "3", number = "2", pages = "21--22", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Grosso:TB3-2-22, author = "Paul Grosso", title = "{{{\TeX} installation at the University of Michigan}}", journal = j-TUGboat, volume = "3", number = "2", pages = "22--23", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nichols:TB3-2-23, author = "Monte C. Nichols and David Kellerman", title = "{{{\VAX}/VMS site report}}", journal = j-TUGboat, volume = "3", number = "2", pages = "23--23", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carnes:TB3-2-24, author = "Lance Carnes", title = "Editor's introduction", journal = j-TUGboat, volume = "3", number = "2", pages = "24--24", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mong:TB3-2-25, author = "Sao Khai Mong", title = "{{A Fortran version of {\MF}}}", journal = j-TUGboat, volume = "3", number = "2", pages = "25--25", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB3-2-25, author = "Barbara Beeton", title = "Charting the generation gulf", journal = j-TUGboat, volume = "3", number = "2", pages = "25--26", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jackson:TB3-2-26, author = "Calvin Jackson", title = "Font codes in popular use", journal = j-TUGboat, volume = "3", number = "2", pages = "26--26", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Price:TB3-2-27, author = "Lynne Price", title = "Editor's introduction", journal = j-TUGboat, volume = "3", number = "2", pages = "27--27", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB3-2-27, author = "Anonymous", title = "{{\TUB} macro index}", journal = j-TUGboat, volume = "3", number = "2", pages = "27--28", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB3-2-28, author = "Barbara Beeton", title = "Multi-column output format", journal = j-TUGboat, volume = "3", number = "2", pages = "28--33", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lamport:TB3-2-34, author = "Leslie Lamport", title = "{Some {\TeX} programming hacks}", journal = j-TUGboat, volume = "3", number = "2", pages = "34--36", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB3-2-36, author = "Barbara Beeton", title = "{Unblocking an {\AmSTeX} tape}", journal = j-TUGboat, volume = "3", number = "2", pages = "36--37", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Blanford:TB3-2-38, author = "Mark Blanford", title = "Paragraphs in tables", journal = j-TUGboat, volume = "3", number = "2", pages = "38--38", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB3-2-38, author = "Anonymous", title = "Hanging punctuation", journal = j-TUGboat, volume = "3", number = "2", pages = "38--38", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Whidden:TB3-2-xx, author = "Samuel B. Whidden", title = "{TUG financial reports}", journal = j-TUGboat, volume = "3", number = "2", pages = "??--??", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB3-2-xx-2, author = "Anonymous", title = "Membership application and order form", journal = j-TUGboat, volume = "3", number = "2", pages = "??--??", month = oct, year = "1982", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-1-2, author = "Anonymous", title = "Addresses of officers, authors and others", journal = j-TUGboat, volume = "4", number = "1", pages = "2--2", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-1-3, author = "Anonymous", title = "Official announcements", journal = j-TUGboat, volume = "4", number = "1", pages = "3--3", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-1-4, author = "Anonymous", title = "{Library subscriptions\Dash What are they?}", journal = j-TUGboat, volume = "4", number = "1", pages = "4--4", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Spivak:TB4-1-4, author = "Michael Spivak", title = "{{Users' Course in {\AmSTeX}}}", journal = j-TUGboat, volume = "4", number = "1", pages = "4--4", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Whidden:TB4-1-xx, author = "Samuel B. Whidden", title = "{TUG financial reports}", journal = j-TUGboat, volume = "4", number = "1", pages = "??--??", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fuchs:TB4-1-6, author = "David Fuchs", title = "{{\TeX}hax summary}", journal = j-TUGboat, volume = "4", number = "1", pages = "6--9", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-1-10, author = "Anonymous", title = "{Chart: Output devices and computers}", journal = j-TUGboat, volume = "4", number = "1", pages = "10--10", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-1-10-2, author = "Anonymous", title = "Index to sample output from various devices", journal = j-TUGboat, volume = "4", number = "1", pages = "10--10", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB4-1-11, author = "Nelson H. F. Beebe", title = "Low-cost downloadable font devices", journal = j-TUGboat, volume = "4", number = "1", pages = "11--12", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ion:TB4-1-12, author = "Patrick Ion and Bill Hall and Rilla J. Thedford", title = "{{{\TeX} on the OSP130}}", journal = j-TUGboat, volume = "4", number = "1", pages = "12--12", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-1-13, author = "Anonymous", title = "{Sample output from Florida Data OSP 130}", journal = j-TUGboat, volume = "4", number = "1", pages = "13--13", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fuchs:TB4-1-14, author = "David Fuchs", title = "News from all over", journal = j-TUGboat, volume = "4", number = "1", pages = "14--15", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bunner:TB4-1-16, author = "Irene J. Bunner and John D. Johnson", title = "{{{\TeX} on the HP-1000}}", journal = j-TUGboat, volume = "4", number = "1", pages = "16--16", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Furuta:TB4-1-17, author = "Richard Furuta and Pierre MacKay", title = "{Unix {\TeX} site report}", journal = j-TUGboat, volume = "4", number = "1", pages = "17--18", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Curtis:TB4-1-18, author = "Pavel Curtis and Howard Trickey", title = "{{Porting {\TeX} to {\VAX}/UNIX}}", journal = j-TUGboat, volume = "4", number = "1", pages = "18--20", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB4-1-21, author = "Pierre MacKay and Richard Furuta", title = "{{{\TeX} at the University of Washington: Tops-20, Unix, Versatec, and the Monolithic}}", journal = j-TUGboat, volume = "4", number = "1", pages = "21--22", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nichols:TB4-1-22, author = "Monte C. Nichols", title = "{{{\VAX}/VMS site report}}", journal = j-TUGboat, volume = "4", number = "1", pages = "22--22", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Krapp:TB4-1-23, author = "David Krapp", title = "{{{\TeX} at Calma R\thinspace\&\thinspace D}}", journal = j-TUGboat, volume = "4", number = "1", pages = "23--23", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Naugle:TB4-1-23, author = "Norman Naugle and Bart Childs", title = "{{{\TeX} at Texas A\thinspace\&\thinspace M University}}", journal = j-TUGboat, volume = "4", number = "1", pages = "23--23", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carnes:TB4-1-24, author = "Lance Carnes", title = "Editor's introduction", journal = j-TUGboat, volume = "4", number = "1", pages = "24--24", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Guthery:TB4-1-25, author = "Scott Guthery", title = "Pictures are just big letters", journal = j-TUGboat, volume = "4", number = "1", pages = "25--25", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Tobin:TB4-1-26, author = "Georgia K. M. Tobin", title = "Computer calligraphy", journal = j-TUGboat, volume = "4", number = "1", pages = "26--32", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-1-33, author = "Anonymous", title = "{Announcement: {\sl Fifth ATypI Working Seminar}, {The computer and the hand in type design: The aesthetics and technology of digital letterforms}}", journal = j-TUGboat, volume = "4", number = "1", pages = "33--33", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-1-33-2, author = "Anonymous", title = "{{\TUB\ macro index}}", journal = j-TUGboat, volume = "4", number = "1", pages = "33--35", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB4-1-35, author = "Barbara Beeton", title = "{How to build a {\tt\bs strut}}", journal = j-TUGboat, volume = "4", number = "1", pages = "35--36", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB4-1-36, author = "Barbara Beeton", title = "Determining hashtable size and other quantities", journal = j-TUGboat, volume = "4", number = "1", pages = "36--37", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mohr:TB4-1-37, author = "August Mohr", title = "Some layout macros", journal = j-TUGboat, volume = "4", number = "1", pages = "37--38", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{McClure:TB4-1-38, author = "Robert M. McClure", title = "Testing the widths of a font", journal = j-TUGboat, volume = "4", number = "1", pages = "38--38", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-1-39, author = "Anonymous", title = "Hanging punctuation", journal = j-TUGboat, volume = "4", number = "1", pages = "39--39", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Code:TB4-1-40, author = "Maria Code", title = "{How to obtain {\TeX}82 on tape}", journal = j-TUGboat, volume = "4", number = "1", pages = "40--40", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-1-40, author = "Anonymous", title = "{Announcement: {\sl Manipulation de Documents\Dash Journ\'ees Francophones}}", journal = j-TUGboat, volume = "4", number = "1", pages = "40--40", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Siegman:TB4-1-41, author = "A. E. Siegman", title = "{{\TeX} as a programming language?}", journal = j-TUGboat, volume = "4", number = "1", pages = "41--42", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-1-43, author = "Anonymous", title = "{{Textset, Inc.\Dash A service for {\TeX} users}}", journal = j-TUGboat, volume = "4", number = "1", pages = "43--43", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-1-44, author = "Anonymous", title = "{Quality Micro Systems\Dash Lasergrafix 1200}", journal = j-TUGboat, volume = "4", number = "1", pages = "44--44", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-1-45, author = "Anonymous", title = "{{\TeX82 order form}}", journal = j-TUGboat, volume = "4", number = "1", pages = "45--46", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-1-47, author = "Anonymous", title = "Membership application and order form", journal = j-TUGboat, volume = "4", number = "1", pages = "47--48", month = apr, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-2-50, author = "Anonymous", title = "Addresses of officers, authors and others", journal = j-TUGboat, volume = "4", number = "2", pages = "50--50", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-2-551, author = "Anonymous", title = "Official announcements", journal = j-TUGboat, volume = "4", number = "2", pages = "551", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB4-2-52, author = "Pierre MacKay", title = "{Message from the President}", journal = j-TUGboat, volume = "4", number = "2", pages = "52--53", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-2-55, author = "Anonymous", title = "{Summary of the technical program, July 1983 TUG meeting}", journal = j-TUGboat, volume = "4", number = "2", pages = "55--57", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-2-57, author = "Anonymous", title = "{Participants, TUG meeting and {\AmSTeX}82 short course}", journal = j-TUGboat, volume = "4", number = "2", pages = "57--69", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Plass:TB4-2-59, author = "Susan Plass", title = "{Final report of the Bylaws Committee}", journal = j-TUGboat, volume = "4", number = "2", pages = "59--59", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-2-60, author = "Anonymous", title = "{{\TUG}\Dash {TUG Operating Procedures}}", journal = j-TUGboat, volume = "4", number = "2", pages = "60--61", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Whidden:TB4-2-62, author = "Samuel B. Whidden", title = "{TUG Treasurer's report}", journal = j-TUGboat, volume = "4", number = "2", pages = "62--63", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Price:TB4-2-63, author = "Lynne Price", title = "{Report on ANSI X3J6}", journal = j-TUGboat, volume = "4", number = "2", pages = "63--64", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB4-2-64, author = "Donald Knuth", title = "A note on hyphenation", journal = j-TUGboat, volume = "4", number = "2", pages = "64--65", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fuchs:TB4-2-65, author = "David Fuchs", title = "{{{\TeX} vs.\ INI\TeX}}", journal = j-TUGboat, volume = "4", number = "2", pages = "65--66", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fuchs:TB4-2-66, author = "David Fuchs", title = "{{\TeX}hax summary}", journal = j-TUGboat, volume = "4", number = "2", pages = "66--70", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-2-71, author = "Anonymous", title = "{Chart: Output devices and computers}", journal = j-TUGboat, volume = "4", number = "2", pages = "71--71", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fuchs:TB4-2-72, author = "David Fuchs", title = "{{News from the {\TeX} Project}}", journal = j-TUGboat, volume = "4", number = "2", pages = "72--73", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mallett:TB4-2-73, author = "Rick Mallett", title = "{{{\TeX}82 on CP-6}}", journal = j-TUGboat, volume = "4", number = "2", pages = "73--74", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Plass:TB4-2-74, author = "Susan Plass", title = "{IBM site report}", journal = j-TUGboat, volume = "4", number = "2", pages = "74--74", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Furuta:TB4-2-74, author = "Richard Furuta", title = "{Unix {\TeX} site report}", journal = j-TUGboat, volume = "4", number = "2", pages = "74--75", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nichols:TB4-2-75, author = "Monte C. Nichols", title = "{{{\VAX}/VMS site report}}", journal = j-TUGboat, volume = "4", number = "2", pages = "75--76", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mooney:TB4-2-76, author = "Jim Mooney", title = "{{Revised Varian output driver in {\VAX}/VMS Fortran}}", journal = j-TUGboat, volume = "4", number = "2", pages = "76--76", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB4-2-76, author = "Pierre MacKay", title = "{{{\TeX} for Arabic script}}", journal = j-TUGboat, volume = "4", number = "2", pages = "76--96", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carnes:TB4-2-77, author = "Lance Carnes", title = "{Table of ``small'' {\TeX} implementations}", journal = j-TUGboat, volume = "4", number = "2", pages = "77--7", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Price:TB4-2-78, author = "Lynne Price", title = "{{Problems from the TUG meeting:} {Framed slides}; {Multiple marks}}", journal = j-TUGboat, volume = "4", number = "2", pages = "78--79", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-2-79, author = "Anonymous", title = "{{\TUB} macro index}", journal = j-TUGboat, volume = "4", number = "2", pages = "79--80", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sterken:TB4-2-80, author = "Jim Sterken", title = "First line of paragraph", journal = j-TUGboat, volume = "4", number = "2", pages = "80--81", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Spivak:TB4-2-103, author = "Michael Spivak", title = "{Summary of {\AmSTeX}}", journal = j-TUGboat, volume = "4", number = "2", pages = "103--126", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-2-127, author = "Anonymous", title = "{Textset, Inc.}", journal = j-TUGboat, volume = "4", number = "2", pages = "127--127", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-2-127-2, author = "Anonymous", title = "{{\TeX} lectures on tape}", journal = j-TUGboat, volume = "4", number = "2", pages = "127--127", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-2-128, author = "Anonymous", title = "{Imagen Corporation\Dash Intelligent page printer systems}", journal = j-TUGboat, volume = "4", number = "2", pages = "128--128", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-2-129, author = "Anonymous", title = "{{{\TeX}82 Order Form}}", journal = j-TUGboat, volume = "4", number = "2", pages = "129--130", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB4-2-131, author = "Anonymous", title = "Membership application and order form", journal = j-TUGboat, volume = "4", number = "2", pages = "131--132", month = sep, year = "1983", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-1-2, author = "Anonymous", title = "Addresses of officers, authors and others", journal = j-TUGboat, volume = "5", number = "1", pages = "2--2", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-1-3, author = "Anonymous", title = "Official announcements", journal = j-TUGboat, volume = "5", number = "1", pages = "3--3", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB5-1-4, author = "Pierre MacKay", title = "{Message from the {President}}", journal = j-TUGboat, volume = "5", number = "1", pages = "4--4", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB5-1-4, author = "Donald E. Knuth", title = "{{\TeX} incunabula}", journal = j-TUGboat, volume = "5", number = "1", pages = "4--11", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Whidden:TB5-1-12, author = "Samuel B. Whidden", title = "{{TUG} 1983 financial report with comparisons}", journal = j-TUGboat, volume = "5", number = "1", pages = "12--13", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-1-13, author = "Anonymous", title = "{Preliminary program\Dash {August} 1984 {Stanford} meeting}", journal = j-TUGboat, volume = "5", number = "1", pages = "13--14", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Canzii:TB5-1-14, author = "G. Canzii and F. Genolini and D. Lucarella", title = "{Hyphenation of {Italian} words}", journal = j-TUGboat, volume = "5", number = "1", pages = "14--15", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-1-15, author = "Anonymous", title = "Hyphenation exception log", journal = j-TUGboat, volume = "5", number = "1", pages = "15--15", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-1-16, author = "Anonymous", title = "{Chart: {Output} devices and computers}", journal = j-TUGboat, volume = "5", number = "1", pages = "16--16", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-1-17, author = "Anonymous", title = "Index to sample output from various devices", journal = j-TUGboat, volume = "5", number = "1", pages = "17--17", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haus:TB5-1-17, author = "Goffredo Haus", title = "{How to tame your phototypesetter by {\TeX}}", journal = j-TUGboat, volume = "5", number = "1", pages = "17--17", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Noot:TB5-1-18, author = "Han Noot", title = "{{DVI}-code to the {Harris} 7500}", journal = j-TUGboat, volume = "5", number = "1", pages = "18--21", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fuchs:TB5-1-22, author = "David Fuchs", title = "{News from the {\TeX} {Project}}", journal = j-TUGboat, volume = "5", number = "1", pages = "22--23", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lofstedt:TB5-1-23, author = "Benedict L{\o}fstedt", title = "{{CDC} {\TeX} at {RECAU}}", journal = j-TUGboat, volume = "5", number = "1", pages = "23--23", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Guenther:TB5-1-24, author = "Dean Guenther and Alan Hagen-Wittbecker and Janene Winter", title = "{{\TeX} at {Washington State} {University}}", journal = j-TUGboat, volume = "5", number = "1", pages = "24--5", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB5-1-26, author = "Bart Childs", title = "{Data {General} site report}", journal = j-TUGboat, volume = "5", number = "1", pages = "26--26", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB5-1-26-2, author = "Bart Childs", title = "Prime site report", journal = j-TUGboat, volume = "5", number = "1", pages = "26--26", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Furuta:TB5-1-27, author = "Richard Furuta", title = "{Unix {\TeX} site report}", journal = j-TUGboat, volume = "5", number = "1", pages = "27--28", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rodgers:TB5-1-28, author = "D. L. Rodgers and J. J. Sterken and P. Grosso", title = "{{\TeX} 1.0 on {Sun} workstations}", journal = j-TUGboat, volume = "5", number = "1", pages = "28--29", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nichols:TB5-1-29, author = "Monte C. Nichols", title = "{{\VAX}/{VMS} site report}", journal = j-TUGboat, volume = "5", number = "1", pages = "29--30", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kellerman:TB5-1-30, author = "David Kellerman and Barry Smith", title = "{Notice to {\VAX}/{VMS} users}", journal = j-TUGboat, volume = "5", number = "1", pages = "30--30", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-1-31, author = "Anonymous", title = "{Metafont {Generic Font} file format}", journal = j-TUGboat, volume = "5", number = "1", pages = "31--33", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-1-34, author = "Anonymous", title = "{Gray fonts for {Metafont} proofs}", journal = j-TUGboat, volume = "5", number = "1", pages = "34--35", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Tobin:TB5-1-36, author = "Georgia K. M. Tobin", title = "{The {OCLC Roman} family of fonts}", journal = j-TUGboat, volume = "5", number = "1", pages = "36--46", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carnes:TB5-1-47, author = "Lance Carnes", title = "{Table of ``small'' {\TeX} implementations}", journal = j-TUGboat, volume = "5", number = "1", pages = "47--47", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB5-1-48, author = "Barbara Beeton", title = "{{\tt\bs relax} and watch the numbers}", journal = j-TUGboat, volume = "5", number = "1", pages = "48--48", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Daniels:TB5-1-49, author = "Susan Daniels", title = "{The {HP} {\TeX} macros}", journal = j-TUGboat, volume = "5", number = "1", pages = "49--66", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB5-1-67, author = "Don Knuth", title = "Comments on quality in publishing", journal = j-TUGboat, volume = "5", number = "1", pages = "67--67", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-1-67, author = "Anonymous", title = "Classified", journal = j-TUGboat, volume = "5", number = "1", pages = "67--67", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-1-68, author = "Anonymous", title = "{Textset, {Inc.}}", journal = j-TUGboat, volume = "5", number = "1", pages = "68--68", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-1-69, author = "Anonymous", title = "{{\TeX}82 Order Form}", journal = j-TUGboat, volume = "5", number = "1", pages = "69--70", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-1-71, author = "Anonymous", title = "Membership application and order form", journal = j-TUGboat, volume = "5", number = "1", pages = "71--72", month = may, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-2-74, author = "Anonymous", title = "Addresses of officers, authors and others", journal = j-TUGboat, volume = "5", number = "2", pages = "74--74", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-2-75, author = "Anonymous", title = "Official announcements", journal = j-TUGboat, volume = "5", number = "2", pages = "75--75", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB5-2-76, author = "Pierre MacKay", title = "{Message from the {President}}", journal = j-TUGboat, volume = "5", number = "2", pages = "76--76", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Welland:TB5-2-77, author = "Robert Welland", title = "{Report of the {Publications Committee}}", journal = j-TUGboat, volume = "5", number = "2", pages = "77--77", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Keller:TB5-2-77, author = "Arthur Keller", title = "{Report of the {Special Projects} {Committee}}", journal = j-TUGboat, volume = "5", number = "2", pages = "77--78", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB5-2-78, author = "Barbara Beeton", title = "{Submitting items to {\TUB}}", journal = j-TUGboat, volume = "5", number = "2", pages = "78--78", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Southall:TB5-2-79, author = "Richard Southall", title = "First principles of typographic design for document production", journal = j-TUGboat, volume = "5", number = "2", pages = "79--90", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jurgensen:TB5-2-91, author = "Helmut J{\"u}rgensen", title = "Editor's introduction", journal = j-TUGboat, volume = "5", number = "2", pages = "91--91", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Desarmenien:TB5-2-91, author = "Jacques D{\'e}sarm{\'e}nien", title = "{How to run {\TeX} in a {French} environment: {Hyphenation}, fonts, typography}", journal = j-TUGboat, volume = "5", number = "2", pages = "91--102", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Schulze:TB5-2-103, author = "Bernd Schulze", title = "{German hyphenation and {\it Umlaut\/}s in {\TeX}}", journal = j-TUGboat, volume = "5", number = "2", pages = "103--104", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB5-2-105, author = "Donald E. Knuth", title = "{A course on {\MF} programming}", journal = j-TUGboat, volume = "5", number = "2", pages = "105--118", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hobby:TB5-2-119, author = "John D. Hobby and Gu Guoan", title = "{A {Chinese} meta-font}", journal = j-TUGboat, volume = "5", number = "2", pages = "119--136", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-2-137, author = "Anonymous", title = "{Chart: {Output} devices and computers}", journal = j-TUGboat, volume = "5", number = "2", pages = "137--137", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-2-138, author = "Anonymous", title = "Index to sample output from various devices", journal = j-TUGboat, volume = "5", number = "2", pages = "138--138", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rokicki:TB5-2-138, author = "Tom Rokicki", title = "{{\tt Dvi\_QMS}: an example of a driver}", journal = j-TUGboat, volume = "5", number = "2", pages = "138--139", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rokicki:TB5-2-139, author = "Tom Rokicki", title = "{\tt\char`\\special}", journal = j-TUGboat, volume = "5", number = "2", pages = "139--140", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fuchs:TB5-2-141, author = "David Fuchs", title = "{News from the {\TeX} {Project}}", journal = j-TUGboat, volume = "5", number = "2", pages = "141--141", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-2-141, author = "Anonymous", title = "{{\TeX} users' activity in {Germany}}", journal = j-TUGboat, volume = "5", number = "2", pages = "141--141", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Crawford:TB5-2-141, author = "John Crawford", title = "Prime site report", journal = j-TUGboat, volume = "5", number = "2", pages = "141--141", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Furuta:TB5-2-142, author = "Richard Furuta", title = "{Unix {\TeX} site report}", journal = j-TUGboat, volume = "5", number = "2", pages = "142--142", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Smith:TB5-2-142, author = "Barry Smith", title = "{{\VAX}/{VMS} site report}", journal = j-TUGboat, volume = "5", number = "2", pages = "142--142", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Felippa:TB5-2-143, author = "Carlos A. Felippa", title = "{Feedback from {\TeX} users at {Lockheed}}", journal = j-TUGboat, volume = "5", number = "2", pages = "143--144", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carnes:TB5-2-145, author = "Lance Carnes", title = "{Table of ``small'' {\TeX} implementations}", journal = j-TUGboat, volume = "5", number = "2", pages = "145--145", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB5-2-146, author = "Malcolm Clark", title = "{Mathematical communication with a deaf and blind student using {\TeX}}", journal = j-TUGboat, volume = "5", number = "2", pages = "146--146", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-2-146, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "5", number = "2", pages = "146--146", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-2-147, author = "Anonymous", title = "{Call for papers: {\TeX} for scientific documentation, {Varenna}, {Italy}, {May} 16--17, 1985}", journal = j-TUGboat, volume = "5", number = "2", pages = "147--147", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Whidden:TB5-2-148, author = "Samuel B. Whidden", title = "{{\TUG} 1984 financial report with comparisons}", journal = j-TUGboat, volume = "5", number = "2", pages = "148--149", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Dupree:TB5-2-149, author = "Chuck Dupree", title = "{Report of the {August} 1984 {\SC} meeting}", journal = j-TUGboat, volume = "5", number = "2", pages = "149--152", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-2-153, author = "Anonymous", title = "{Profile of {\TeX} installations available to {TUG} members}", journal = j-TUGboat, volume = "5", number = "2", pages = "153--155", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-2-156, author = "Anonymous", title = "{Talaris talks {\TeX}}", journal = j-TUGboat, volume = "5", number = "2", pages = "156--157", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-2-158, author = "Anonymous", title = "{Quality {Micro Systems}, {Inc.}}", journal = j-TUGboat, volume = "5", number = "2", pages = "158--158", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-2-159, author = "Anonymous", title = "{Textset, {Inc.}}", journal = j-TUGboat, volume = "5", number = "2", pages = "159--159", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-2-160, author = "Anonymous", title = "{The {Metafoundry}}", journal = j-TUGboat, volume = "5", number = "2", pages = "160--160", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-2-160-2, author = "Anonymous", title = "{Instructors wanted for {TUG} courses}", journal = j-TUGboat, volume = "5", number = "2", pages = "160--160", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-2-161, author = "Anonymous", title = "Membership application and order form", journal = j-TUGboat, volume = "5", number = "2", pages = "161--164", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-2-165, author = "Anonymous", title = "{Order form for {\AMS} publications}", journal = j-TUGboat, volume = "5", number = "2", pages = "165--166", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB5-2-167, author = "Anonymous", title = "{{\TeX}82 order form}", journal = j-TUGboat, volume = "5", number = "2", pages = "167--168", month = nov, year = "1984", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-2, author = "Anonymous", title = "{Addresses of Officers, Authors and Others}", journal = j-TUGboat, volume = "6", number = "1", pages = "2--2", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-3, author = "Anonymous", title = "{Official Announcements}", journal = j-TUGboat, volume = "6", number = "1", pages = "3--3", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB6-1-4, author = "Pierre MacKay", title = "{Message from the President}", journal = j-TUGboat, volume = "6", number = "1", pages = "4--4", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beck:TB6-1-4, author = "Lawrence A. Beck", title = "{ANSI X3V1.8 Liaison Report to the {\TUG}}", journal = j-TUGboat, volume = "6", number = "1", pages = "4--5", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-5, author = "Anonymous", title = "{Acknowledgement of Contributions}", journal = j-TUGboat, volume = "6", number = "1", pages = "5--5", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Southall:TB6-1-6, author = "Richard Southall", title = "{First principles of typographic design for document production: Corrigenda}", journal = j-TUGboat, volume = "6", number = "1", pages = "6--6", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eppstein:TB6-1-7, author = "Maureen Eppstein", title = "Editor's introduction", journal = j-TUGboat, volume = "6", number = "1", pages = "7--7", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-8, author = "Anonymous", title = "Generic font file format", journal = j-TUGboat, volume = "6", number = "1", pages = "8--12", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Tobin:TB6-1-12, author = "G. K. M. Tobin", title = "A bit of doggerel", journal = j-TUGboat, volume = "6", number = "1", pages = "12--12", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-13, author = "Anonymous", title = "{Chart: Output devices and computers}", journal = j-TUGboat, volume = "6", number = "1", pages = "13--15", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Furuta:TB6-1-15, author = "Richard Furuta", title = "{Device drivers included on the UNIX {\TeX} distribution tape}", journal = j-TUGboat, volume = "6", number = "1", pages = "15--15", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-15, author = "Anonymous", title = "Index to sample output from various devices", journal = j-TUGboat, volume = "6", number = "1", pages = "15--15", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Luvisetto:TB6-1-15, author = "M. L. Luvisetto and E. Ugolini", title = "{A {\TeX}82 spooler for VT and dot matrix printers}", journal = j-TUGboat, volume = "6", number = "1", pages = "15--16", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-16, author = "Anonymous", title = "{How to get the latest news via {\TeX}hax}", journal = j-TUGboat, volume = "6", number = "1", pages = "16--17", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Crawford:TB6-1-17, author = "John Crawford", title = "Prime site report", journal = j-TUGboat, volume = "6", number = "1", pages = "17--17", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Furuta:TB6-1-18, author = "Richard Furuta", title = "{Unix {\TeX} site report}", journal = j-TUGboat, volume = "6", number = "1", pages = "18--20", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Smith:TB6-1-20, author = "Barry Smith", title = "{{\VAX/VMS site report}}", journal = j-TUGboat, volume = "6", number = "1", pages = "20--20", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Cumiskey:TB6-1-21, author = "James A. Cumiskey", title = "{{\TeX} for tourists}", journal = j-TUGboat, volume = "6", number = "1", pages = "21--25", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carnes:TB6-1-26, author = "Lance Carnes", title = "{Table of ``small'' {\TeX} implementations}", journal = j-TUGboat, volume = "6", number = "1", pages = "26--26", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Company:TB6-1-27, author = "Addison-Wesley Publishing Company", title = "{{\TeX} now on microcomputers}", journal = j-TUGboat, volume = "6", number = "1", pages = "27--28", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carnes:TB6-1-28, author = "Lance Carnes", title = "{PC\thinspace\TeX}", journal = j-TUGboat, volume = "6", number = "1", pages = "28--29", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Platt:TB6-1-29, author = "Craig Platt", title = "Macros for two-column format", journal = j-TUGboat, volume = "6", number = "1", pages = "29--30", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eppstein:TB6-1-31, author = "David Eppstein", title = "{Trees in {\TeX}}", journal = j-TUGboat, volume = "6", number = "1", pages = "31--35", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB6-1-36, author = "Donald E. Knuth", title = "Recipes and fractions", journal = j-TUGboat, volume = "6", number = "1", pages = "36--38", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-38, author = "Anonymous", title = "{{\TeX}, the program}", journal = j-TUGboat, volume = "6", number = "1", pages = "38--38", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-39, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "6", number = "1", pages = "39--39", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-39-2, author = "Anonymous", title = "{Conference: {\TeX} for scientific documentation, Como, Italy, May 16--17, 1985}", journal = j-TUGboat, volume = "6", number = "1", pages = "39--39", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-39-3, author = "Anonymous", title = "{TUG Annual Meeting, Stanford University, August 14--16, 1985}", journal = j-TUGboat, volume = "6", number = "1", pages = "39--39", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-40, author = "Anonymous", title = "{{\TeX} and {\MF} reports available from Stanford Computer Science Department}", journal = j-TUGboat, volume = "6", number = "1", pages = "40--40", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-41, author = "Anonymous", title = "{Textset, Inc.\Dash {\TeX} and the IBM PC, \TeX-to-PostScript}", journal = j-TUGboat, volume = "6", number = "1", pages = "41--41", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-42, author = "Anonymous", title = "{Addison-Wesley\Dash Micro{\TeX}}", journal = j-TUGboat, volume = "6", number = "1", pages = "42--42", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-43, author = "Anonymous", title = "{TUG\Dash {\TeX} Lectures on Tape}", journal = j-TUGboat, volume = "6", number = "1", pages = "43--43", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-44, author = "Anonymous", title = "{Textset, Inc.\Dash Professional {\TeX}ware}", journal = j-TUGboat, volume = "6", number = "1", pages = "44--44", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-445, author = "Anonymous", title = "Talaris", journal = j-TUGboat, volume = "6", number = "1", pages = "445", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-446, author = "Anonymous", title = "{Personal {\TeX}, Inc.\Dash PC\thinspace{\TeX}}", journal = j-TUGboat, volume = "6", number = "1", pages = "446", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-cover-3, author = "Anonymous", title = "{Intergraph Corporation}", journal = j-TUGboat, volume = "6", number = "1", pages = "Cover 3", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-47, author = "Anonymous", title = "Membership application and order form", journal = j-TUGboat, volume = "6", number = "1", pages = "47--48", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-49, author = "Anonymous", title = "{Order form for {\AMS} publications}", journal = j-TUGboat, volume = "6", number = "1", pages = "49--50", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-1-51, author = "Anonymous", title = "{{\TeX}82 order form}", journal = j-TUGboat, volume = "6", number = "1", pages = "51--52", month = mar, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-2-54, author = "Anonymous", title = "{Addresses of Officers, Authors and Others}", journal = j-TUGboat, volume = "6", number = "2", pages = "54--54", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-2-55, author = "Anonymous", title = "{Official Announcements}", journal = j-TUGboat, volume = "6", number = "2", pages = "55--55", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-2-56, author = "Anonymous", title = "{TUG 1985 Annual Meeting, Stanford University, August 12--14, 1985}", journal = j-TUGboat, volume = "6", number = "2", pages = "56--56", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jurgensen:TB6-2-56, author = "Helmut J{\"u}rgensen", title = "Editor's message", journal = j-TUGboat, volume = "6", number = "2", pages = "56--56", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ferguson:TB6-2-57, author = "Michael J. Ferguson", title = "{A multilingual {\mtex}}", journal = j-TUGboat, volume = "6", number = "2", pages = "57--58", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB6-2-59, author = "Barbara Beeton", title = "Mathematical symbols and cyrillic fonts ready for distribution", journal = j-TUGboat, volume = "6", number = "2", pages = "59--63", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-2-64, author = "Anonymous", title = "{Chart: Output devices and computers}", journal = j-TUGboat, volume = "6", number = "2", pages = "64--66", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-2-66, author = "Anonymous", title = "Index to sample output from various devices", journal = j-TUGboat, volume = "6", number = "2", pages = "66--66", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Spragens:TB6-2-66, author = "Alan Spragens", title = "{Graphics commands for {\TeX}\Dash Discussion in {\TeX}hax conference}", journal = j-TUGboat, volume = "6", number = "2", pages = "66--68", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Naugle:TB6-2-69, author = "Norman W. Naugle and Tomas G. Rokicki", title = "{Miscellaneous activity at Texas A\&M}", journal = j-TUGboat, volume = "6", number = "2", pages = "69--72", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-2-73, author = "Anonymous", title = "{{\TeX}hax activity at Spring DECUS}", journal = j-TUGboat, volume = "6", number = "2", pages = "73--73", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Spragens:TB6-2-73, author = "Alan Spragens", title = "{CMS {\TeX} site report}", journal = j-TUGboat, volume = "6", number = "2", pages = "73--75", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Riesel:TB6-2-76, author = "Hans Riesel", title = "{Report on experience with {\TeX}80}", journal = j-TUGboat, volume = "6", number = "2", pages = "76--79", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Marriott:TB6-2-80, author = "Gregory Marriott", title = "{A {\TeX}82 implementation on the HP9000 series 500}", journal = j-TUGboat, volume = "6", number = "2", pages = "80--80", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Furuta:TB6-2-81, author = "Richard Furuta", title = "{Unix {\TeX} site report}", journal = j-TUGboat, volume = "6", number = "2", pages = "81--81", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Smith:TB6-2-81, author = "Barry Smith", title = "{{\VAX}/VMS site report}", journal = j-TUGboat, volume = "6", number = "2", pages = "81--81", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carnes:TB6-2-82, author = "Lance Carnes", title = "{Table of ``small'' {\TeX} implementations}", journal = j-TUGboat, volume = "6", number = "2", pages = "82--82", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hendrickson:TB6-2-83, author = "Amy Hendrickson", title = "Some diagonal line hacks", journal = j-TUGboat, volume = "6", number = "2", pages = "83--86", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hendrickson:TB6-2-86, author = "Amy Hendrickson", title = "A (possibly) totally useless macro", journal = j-TUGboat, volume = "6", number = "2", pages = "86--86", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mohr:TB6-2-87, author = "August Mohr", title = "{Multi-column layout in {\TeX}80}", journal = j-TUGboat, volume = "6", number = "2", pages = "87--95", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bonnetain:TB6-2-96, author = "Jean-Luc Bonnetain", title = "{Author vs.\ proofreader}", journal = j-TUGboat, volume = "6", number = "2", pages = "96--96", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Greene:TB6-2-96, author = "John Greene", title = "{Transatlantic {\TeX}}", journal = j-TUGboat, volume = "6", number = "2", pages = "96--96", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-2-97, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "6", number = "2", pages = "97--97", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-2-98, author = "Anonymous", title = "{International Conference on Text Processing and Document Manipulation, Nottingham, England, April 14--16, 1986}", journal = j-TUGboat, volume = "6", number = "2", pages = "98--98", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-2-98-2, author = "Anonymous", title = "{PROTEXT II, Dublin, Ireland, October 21--25, 1985}", journal = j-TUGboat, volume = "6", number = "2", pages = "98--98", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Whidden:TB6-2-99, author = "Samuel B. Whidden", title = "{TUG 1984 financial report with comparisons}", journal = j-TUGboat, volume = "6", number = "2", pages = "99--100", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-2-100, author = "Anonymous", title = "{The Metafoundry\Dash Introducing {\smc mf medley}}", journal = j-TUGboat, volume = "6", number = "2", pages = "100--100", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-2-101, author = "Anonymous", title = "{{\TeX} and {\MF} reports available from the Stanford Computer Science Department}", journal = j-TUGboat, volume = "6", number = "2", pages = "101--101", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-2-102, author = "Anonymous", title = "{Addison-Wesley\Dash Micro{\TeX}}", journal = j-TUGboat, volume = "6", number = "2", pages = "102--102", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-2-103, author = "Anonymous", title = "{Textset, Inc.}", journal = j-TUGboat, volume = "6", number = "2", pages = "103--103", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-2-104, author = "Anonymous", title = "{Personal {\TeX}, Inc.\Dash PC\thinspace{\TeX} is here}", journal = j-TUGboat, volume = "6", number = "2", pages = "104--104", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-2-cover-3, author = "Anonymous", title = "{{\TeX} lectures on tape}", journal = j-TUGboat, volume = "6", number = "2", pages = "Cover 3", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-2-105, author = "Anonymous", title = "Membership application and order form", journal = j-TUGboat, volume = "6", number = "2", pages = "105--106", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-2-107, author = "Anonymous", title = "{{\TeX}82 order form}", journal = j-TUGboat, volume = "6", number = "2", pages = "107--108", month = jul, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-110, author = "Anonymous", title = "Addresses of officers, authors and others", journal = j-TUGboat, volume = "6", number = "3", pages = "110--110", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-111, author = "Anonymous", title = "Official announcements", journal = j-TUGboat, volume = "6", number = "3", pages = "111--111", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB6-3-112, author = "Pierre MacKay", title = "{Message from the outgoing President}", journal = j-TUGboat, volume = "6", number = "3", pages = "112--113", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB6-3-113, author = "Bart Childs", title = "{From the President}", journal = j-TUGboat, volume = "6", number = "3", pages = "113--114", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-114, author = "Anonymous", title = "Statement of principles", journal = j-TUGboat, volume = "6", number = "3", pages = "114--114", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rokicki:TB6-3-115, author = "Tomas Rokicki", title = "{Packed ({\tt PK}) font file format}", journal = j-TUGboat, volume = "6", number = "3", pages = "115--120", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-121, author = "Anonymous", title = "Hyphenation exception log", journal = j-TUGboat, volume = "6", number = "3", pages = "121--121", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Tobin:TB6-3-122, author = "Georgia K. M. Tobin", title = "Editor's introduction", journal = j-TUGboat, volume = "6", number = "3", pages = "122--123", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB6-3-124, author = "Barbara Beeton", title = "Mathematical symbols and cyrillic fonts ready for distribution (revised)", journal = j-TUGboat, volume = "6", number = "3", pages = "124--128", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-129, author = "Anonymous", title = "{Charts: Output devices and computers}", journal = j-TUGboat, volume = "6", number = "3", pages = "129--131", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-131, author = "Anonymous", title = "Index to sample output from various devices", journal = j-TUGboat, volume = "6", number = "3", pages = "131--131", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-131-2, author = "Anonymous", title = "{The {\TeX} directories at the ``source''\Dash Stanford}", journal = j-TUGboat, volume = "6", number = "3", pages = "131--132", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-132, author = "Anonymous", title = "{{\TeX} in the UK and Ireland: \TeX line}", journal = j-TUGboat, volume = "6", number = "3", pages = "132--132", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB6-3-132, author = "Bart Childs", title = "{Data General distribution news}", journal = j-TUGboat, volume = "6", number = "3", pages = "132--133", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Platt:TB6-3-133, author = "Craig Platt", title = "{MVS {\TeX} site report}", journal = j-TUGboat, volume = "6", number = "3", pages = "133--134", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Guenther:TB6-3-134, author = "Dean Guenther", title = "{{\TeX} at Washington State University}", journal = j-TUGboat, volume = "6", number = "3", pages = "134--134", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hayashi:TB6-3-135, author = "Tsunetoshi Hayashi", title = "{Reports on {\TeX} implementation at HUCC}", journal = j-TUGboat, volume = "6", number = "3", pages = "135--136", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Furuta:TB6-3-137, author = "Richard Furuta", title = "{Unix {\TeX} site report}", journal = j-TUGboat, volume = "6", number = "3", pages = "137--138", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Smith:TB6-3-139, author = "Barry Smith", title = "{{\VAX/VMS site report}}", journal = j-TUGboat, volume = "6", number = "3", pages = "139--139", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-139, author = "Anonymous", title = "{Table of ``small'' {\TeX} implementations}", journal = j-TUGboat, volume = "6", number = "3", pages = "139--139", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pfeffer:TB6-3-140, author = "Mitch Pfeffer and Alan Hoenig", title = "{Assembling a moderately-priced, high-performance clone of the IBM PC for running \TeX}", journal = j-TUGboat, volume = "6", number = "3", pages = "140--145", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB6-3-146, author = "Barbara Beeton", title = "{Review: The Boston Computer Society's IBM PC \& compatibles technical word processor review}", journal = j-TUGboat, volume = "6", number = "3", pages = "146--149", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB6-3-150, author = "Barbara Beeton", title = "{The {\tt PLAIN} truth: {\tt\bs buildrel}}", journal = j-TUGboat, volume = "6", number = "3", pages = "150--150", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lamport:TB6-3-150, author = "Leslie Lamport", title = "{Announcement of {\LaTeX} Version 2.09}", journal = j-TUGboat, volume = "6", number = "3", pages = "150--151", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Leban:TB6-3-151, author = "Bruce Leban", title = "{A solution to the tower of Hanoi problem using {\TeX}}", journal = j-TUGboat, volume = "6", number = "3", pages = "151--154", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Cameron:TB6-3-155, author = "A. G. W. Cameron", title = "Wiggly lines", journal = j-TUGboat, volume = "6", number = "3", pages = "155--155", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wonneberger:TB6-3-156, author = "Reinhard Wonneberger", title = "{Stream lists and related list types for {\LaTeX}}", journal = j-TUGboat, volume = "6", number = "3", pages = "156--157", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-158, author = "Anonymous", title = "{{\LaTeX} command summary (Version 2.05) available from TUG}", journal = j-TUGboat, volume = "6", number = "3", pages = "158--158", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hendricks:TB6-3-158, author = "Rick Hendricks", title = "{Inquiry: Historical compilations}", journal = j-TUGboat, volume = "6", number = "3", pages = "158--158", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hornbach:TB6-3-158, author = "Kathy Hornbach", title = "{Inquiry: 35mm slides with Sli{\TeX}}", journal = j-TUGboat, volume = "6", number = "3", pages = "158--158", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-159, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "6", number = "3", pages = "159--159", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-159-2, author = "Anonymous", title = "Acknowledgement of contributions", journal = j-TUGboat, volume = "6", number = "3", pages = "159--159", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-160, author = "Anonymous", title = "{{\TeX} for Scientific Documentation, Strasbourg, France, June 19--21, 1986}", journal = j-TUGboat, volume = "6", number = "3", pages = "160--160", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-cover-3, author = "Anonymous", title = "{TUG Annual Meeting, Tufts University, July 28--31, 1986}", journal = j-TUGboat, volume = "6", number = "3", pages = "Cover 3", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Whidden:TB6-3-161, author = "Samuel B. Whidden", title = "{Proposed TUG 1986 budget}", journal = j-TUGboat, volume = "6", number = "3", pages = "161--161", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-162, author = "Anonymous", title = "{Addison-Wesley\Dash Micro{\TeX}}", journal = j-TUGboat, volume = "6", number = "3", pages = "162--162", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-163, author = "Anonymous", title = "{Textset, Inc.}", journal = j-TUGboat, volume = "6", number = "3", pages = "163--163", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-164, author = "Anonymous", title = "{TUG\Dash {\TeX} lectures on videotape}", journal = j-TUGboat, volume = "6", number = "3", pages = "164--165", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-166, author = "Anonymous", title = "{Personal {\TeX}, Inc.\Dash PC\thinspace{\TeX}}", journal = j-TUGboat, volume = "6", number = "3", pages = "166--166", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-167, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "6", number = "3", pages = "167--168", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-169, author = "Anonymous", title = "{TUG order form}", journal = j-TUGboat, volume = "6", number = "3", pages = "169--172", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB6-3-173, author = "Anonymous", title = "{{\TeX}82 order form}", journal = j-TUGboat, volume = "6", number = "3", pages = "173--174", month = nov, year = "1985", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-1-4, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "7", number = "1", pages = "4--5", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-1-6, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "7", number = "1", pages = "6--6", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB7-1-7, author = "Bart Childs", title = "{From the President}", journal = j-TUGboat, volume = "7", number = "1", pages = "7--7", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-1-7, author = "Anonymous", title = "Acknowledgment of contributions", journal = j-TUGboat, volume = "7", number = "1", pages = "7--7", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-1-7-2, author = "Anonymous", title = "{Donald E. Knuth Scholarship}", journal = j-TUGboat, volume = "7", number = "1", pages = "7--7", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-1-8, author = "Anonymous", title = "Special credits for this issue", journal = j-TUGboat, volume = "7", number = "1", pages = "8--8", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-1-8-2, author = "Anonymous", title = "{Conference: \TeX\ for Scientific Documentation}", journal = j-TUGboat, volume = "7", number = "1", pages = "8--8", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-1-8-3, author = "Anonymous", title = "{{\TeX\ Courses}}", journal = j-TUGboat, volume = "7", number = "1", pages = "8--9", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-1-9, author = "Anonymous", title = "{Software Column: Call for Papers}", journal = j-TUGboat, volume = "7", number = "1", pages = "9--10", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-1-10, author = "Anonymous", title = "{Addenda: The BCS Word Processor Review}", journal = j-TUGboat, volume = "7", number = "1", pages = "10--10", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lamport:TB7-1-11, author = "Leslie Lamport", title = "{{\LaTeX\ input to ACM journals}}", journal = j-TUGboat, volume = "7", number = "1", pages = "11--11", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Howell:TB7-1-11, author = "Gordon Howell", title = "{Translators to generate \TeX\ files}", journal = j-TUGboat, volume = "7", number = "1", pages = "11--11", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fuchs:TB7-1-12, author = "David Fuchs", title = "{News from the \TeX\ Project}", journal = j-TUGboat, volume = "7", number = "1", pages = "12--12", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fox:TB7-1-12, author = "Jim Fox", title = "{CDC Cyber Site Report}", journal = j-TUGboat, volume = "7", number = "1", pages = "12--12", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB7-1-12, author = "Bart Childs", title = "{Data General Site Report}", journal = j-TUGboat, volume = "7", number = "1", pages = "12--12", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Smith:TB7-1-13, author = "Barry Smith", title = "{Macintosh Site Report}", journal = j-TUGboat, volume = "7", number = "1", pages = "13--13", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB7-1-13, author = "Pierre MacKay", title = "{UNIX\ Site Report}", journal = j-TUGboat, volume = "7", number = "1", pages = "13--14", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Smith:TB7-1-15, author = "Barry Smith", title = "{VAX/VMS Site Report}", journal = j-TUGboat, volume = "7", number = "1", pages = "15--15", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lamport:TB7-1-15, author = "Leslie Lamport", title = "{{\LaTeX\ News}}", journal = j-TUGboat, volume = "7", number = "1", pages = "15--16", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ferguson:TB7-1-16, author = "Michael Ferguson", title = "{Multilingual \mtex\ update}", journal = j-TUGboat, volume = "7", number = "1", pages = "16--16", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Auerbach:TB7-1-17, author = "Alan Auerbach", title = "Automatic page sizing", journal = j-TUGboat, volume = "7", number = "1", pages = "17--17", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-1-17, author = "Anonymous", title = "{Where to find \TeX\ file descriptions}", journal = j-TUGboat, volume = "7", number = "1", pages = "17--17", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB7-1-18, author = "B. Beeton", title = "{The PLAIN truth: {\tt\bs displaylines}, {\tt\bs ialign}}", journal = j-TUGboat, volume = "7", number = "1", pages = "18--19", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Appelt:TB7-1-20, author = "W. Appelt and K. Horn", title = "{Multiple changefiles in {\tt WEB}}", journal = j-TUGboat, volume = "7", number = "1", pages = "20--21", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Damerell:TB7-1-22, author = "R. M. Damerell", title = "{Error detecting changes to TANGLE}", journal = j-TUGboat, volume = "7", number = "1", pages = "22--24", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Trevorrow:TB7-1-25, author = "A. Trevorrow", title = "{DVIto\kern-.15em VDU: A \TeX\ page previewer}", journal = j-TUGboat, volume = "7", number = "1", pages = "25--36", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Varian:TB7-1-37, author = "H. Varian and J. Sterken", title = "{MacDraw pictures in \TeX\ documents}", journal = j-TUGboat, volume = "7", number = "1", pages = "37--40", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Maus:TB7-1-41, author = "D. Maus and B. Baker", title = "{DVILASER/PS extensions to \LaTeX}", journal = j-TUGboat, volume = "7", number = "1", pages = "41--47", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fina:TB7-1-48, author = "P. Fina", title = "{Results of the 1985 TUG Questionnaire}", journal = j-TUGboat, volume = "7", number = "1", pages = "48--50", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB7-1-51, author = "A. Hoenig and M. Pfeffer", title = "{{\TeX\ text editors for the IBM PC}}", journal = j-TUGboat, volume = "7", number = "1", pages = "51--54", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Senn:TB7-1-55, author = "M. Senn", title = "{{\TeX\ output previewers}}", journal = j-TUGboat, volume = "7", number = "1", pages = "55--56", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB7-1-57, author = "B. Beeton", title = "{{\TeX\ output devices}}", journal = j-TUGboat, volume = "7", number = "1", pages = "57--66", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB7-1-67, author = "B. Beeton", title = "{Memory Sizes in Various Implementations of \TeX}", journal = j-TUGboat, volume = "7", number = "1", pages = "67--70", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carnes:TB7-1-71, author = "L. Carnes", title = "{``Small'' \TeX\ implementations}", journal = j-TUGboat, volume = "7", number = "1", pages = "71--72", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-1-73, author = "Anonymous", title = "{Institutional Members}", journal = j-TUGboat, volume = "7", number = "1", pages = "73--74", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-1-88, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "7", number = "1", pages = "88--88", month = mar, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-2-91, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "7", number = "2", pages = "91--92", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB7-2-93, author = "Barbara Beeton", title = "Comments on the format of this issue", journal = j-TUGboat, volume = "7", number = "2", pages = "93--93", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB7-2-93-2, author = "Barbara Beeton", title = "{{\sl Computers \& Typesetting\/} coming out party}", journal = j-TUGboat, volume = "7", number = "2", pages = "93--93", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gordon:TB7-2-93, author = "Peter Gordon", title = "{Introducing Donald Knuth and {\sl Computers \& Typesetting}}", journal = j-TUGboat, volume = "7", number = "2", pages = "93--95", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB7-2-95, author = "Donald Knuth", title = "{Remarks to celebrate the publication of {\sl Computers \& Typesetting}}", journal = j-TUGboat, volume = "7", number = "2", pages = "95--98", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jackson:TB7-2-98, author = "Cal Jackson", title = "{Comments on document design prompted by the new \TUB\ format}", journal = j-TUGboat, volume = "7", number = "2", pages = "98--99", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hornbach:TB7-2-99, author = "Kathy Hornbach", title = "{{\VAX\ Language Sensitive Editor Templates and Guide for use with \LaTeX}}", journal = j-TUGboat, volume = "7", number = "2", pages = "99--99", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Tobin:TB7-2-100, author = "Georgia K. M. Tobin", title = "Font Forum", journal = j-TUGboat, volume = "7", number = "2", pages = "100--101", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB7-2-101, author = "Donald E. Knuth", title = "{The \TeX\ logo in various fonts}", journal = j-TUGboat, volume = "7", number = "2", pages = "101--102", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB7-2-102, author = "Alan Hoenig", title = "{Meta-\MF: An exhibit at the Cooper Union, NYC}", journal = j-TUGboat, volume = "7", number = "2", pages = "102--102", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-2-102, author = "Anonymous", title = "Addenda to the output device charts", journal = j-TUGboat, volume = "7", number = "2", pages = "102--102", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rokicki:TB7-2-103, author = "Tomas Rokicki", title = "{{\TeX\ on the Amiga}}", journal = j-TUGboat, volume = "7", number = "2", pages = "103--103", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fox:TB7-2-103, author = "Jim Fox", title = "{CDC Cyber site report}", journal = j-TUGboat, volume = "7", number = "2", pages = "103--103", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Crawford:TB7-2-103, author = "John Crawford", title = "{Prime 50 Series site report}", journal = j-TUGboat, volume = "7", number = "2", pages = "103--103", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pfeffer:TB7-2-104, author = "Mitch Pfeffer and Alan Hoenig", title = "{The Sperry IT: An IBM AT compatible}", journal = j-TUGboat, volume = "7", number = "2", pages = "104--105", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ferguson:TB7-2-106, author = "Michael J. Ferguson", title = "{Table Making with INRS\TeX}", journal = j-TUGboat, volume = "7", number = "2", pages = "106--109", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Becker:TB7-2-109, author = "Helmut Becker", title = "{WEB system extensions}", journal = j-TUGboat, volume = "7", number = "2", pages = "109--109", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kennedy:TB7-2-109, author = "John Kennedy", title = "Drama scripts", journal = j-TUGboat, volume = "7", number = "2", pages = "109--109", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fernandez:TB7-2-110, author = "Sylvester Fernandez", title = "Marking changes in revised documents", journal = j-TUGboat, volume = "7", number = "2", pages = "110--110", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Alexander:TB7-2-110, author = "James Alexander", title = "{Side-by-side source/output samples; First-line special handling}", journal = j-TUGboat, volume = "7", number = "2", pages = "110--110", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kleine:TB7-2-111, author = "Karl Kleine", title = "{Customized editors for \TeX}", journal = j-TUGboat, volume = "7", number = "2", pages = "111--111", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ludden:TB7-2-111, author = "Jim Ludden", title = "{Post-\LaTeX\ Index Formatting}", journal = j-TUGboat, volume = "7", number = "2", pages = "111--111", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Spivak:TB7-2-111, author = "Mike Spivak", title = "Letters", journal = j-TUGboat, volume = "7", number = "2", pages = "111--111", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-2-112, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "7", number = "2", pages = "112--112", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-2-113, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "7", number = "2", pages = "113--114", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-2-115, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "7", number = "2", pages = "115--116", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-2-117, author = "Anonymous", title = "{{\TeX82 order form}}", journal = j-TUGboat, volume = "7", number = "2", pages = "117--118", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-2-119, author = "Anonymous", title = "{Addison-Wesley\Dash Computers \& Typesetting}", journal = j-TUGboat, volume = "7", number = "2", pages = "119--119", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-2-120, author = "Anonymous", title = "{Personal \TeX, Inc.\Dash\TeX\ for the PC}", journal = j-TUGboat, volume = "7", number = "2", pages = "120--120", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-2-121, author = "Anonymous", title = "{Talaris\Dash Talaris 810}", journal = j-TUGboat, volume = "7", number = "2", pages = "121--121", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-2-122, author = "Anonymous", title = "{Computer Composition Corporation\Dash Typesetting services}", journal = j-TUGboat, volume = "7", number = "2", pages = "122--122", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-2-123, author = "Anonymous", title = "{Textset, Inc.\Dash New directions}", journal = j-TUGboat, volume = "7", number = "2", pages = "123--123", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-2-124, author = "Anonymous", title = "{FTL systems Inc.\Dash \TeX\ for the Macintosh}", journal = j-TUGboat, volume = "7", number = "2", pages = "124--124", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-2-cover-3, author = "Anonymous", title = "{Addison-Wesley\Dash \TeX\ news}", journal = j-TUGboat, volume = "7", number = "2", pages = "Cover 3", month = jun, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-3-127, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "7", number = "3", pages = "127--128", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB7-3-129, author = "Bart Childs", title = "{Message from the President}", journal = j-TUGboat, volume = "7", number = "3", pages = "129--130", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-3-130, author = "Anonymous", title = "{Donald E. Knuth Scholarship}", journal = j-TUGboat, volume = "7", number = "3", pages = "130--130", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB7-3-131, author = "Pierre MacKay", title = "{1987 Annual Meeting, Call for papers: \TeX\ for the Humanities}", journal = j-TUGboat, volume = "7", number = "3", pages = "131--131", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beck:TB7-3-132, author = "Lawrence A. Beck", title = "{Report from ANSI X3V1}", journal = j-TUGboat, volume = "7", number = "3", pages = "132--132", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wonneberger:TB7-3-132, author = "Reinhard Wonneberger", title = "{Towards a \TeX\ philology group}", journal = j-TUGboat, volume = "7", number = "3", pages = "132--133", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mann:TB7-3-133, author = "Laurie Mann", title = "{An idea exchange on \TeX\ training}", journal = j-TUGboat, volume = "7", number = "3", pages = "133--133", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Guntermann:TB7-3-134, author = "Klaus Guntermann and Wolfgang R{\"u}lling", title = "Another approach to multiple changefiles", journal = j-TUGboat, volume = "7", number = "3", pages = "134--134", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Guntermann:TB7-3-134-2, author = "Klaus Guntermann and Joachim Schrod", title = "{{\WEB\ adapted to C}}", journal = j-TUGboat, volume = "7", number = "3", pages = "134--137", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Alexander:TB7-3-138, author = "James Alexander", title = "{{\Tib: a reference setting package for \TeX}}", journal = j-TUGboat, volume = "7", number = "3", pages = "138--140", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rokicki:TB7-3-140, author = "Tomas Rokicki", title = "Packed file format update", journal = j-TUGboat, volume = "7", number = "3", pages = "140--144", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-3-145, author = "Anonymous", title = "Hyphenation exception log", journal = j-TUGboat, volume = "7", number = "3", pages = "145--145", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bigelow:TB7-3-146, author = "Charles Bigelow", title = "Notes on typeface protection", journal = j-TUGboat, volume = "7", number = "3", pages = "146--151", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sauter:TB7-3-151, author = "John Sauter", title = "{Building Computer Modern Fonts}", journal = j-TUGboat, volume = "7", number = "3", pages = "151--152", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jansen:TB7-3-152, author = "Rick Jansen", title = "{{\TeX\ and Macintosh\dash new directions in Preview}}", journal = j-TUGboat, volume = "7", number = "3", pages = "152--158", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Damerell:TB7-3-159, author = "R. M. Damerell", title = "{{\tt Crudetype}: An adaptable device driver}", journal = j-TUGboat, volume = "7", number = "3", pages = "159--163", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Brown:TB7-3-164, author = "Malcolm Brown", title = "{{\TeX hax returns}}", journal = j-TUGboat, volume = "7", number = "3", pages = "164--164", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Guntermann:TB7-3-164, author = "Klaus Guntermann", title = "{Porting \TeX\ to the Atari ST}", journal = j-TUGboat, volume = "7", number = "3", pages = "164--164", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fox:TB7-3-164, author = "Jim Fox", title = "{CDC Cyber site report}", journal = j-TUGboat, volume = "7", number = "3", pages = "164--165", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Platt:TB7-3-165, author = "Craig Platt", title = "{MVS \TeX\ site report}", journal = j-TUGboat, volume = "7", number = "3", pages = "165--166", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Spragens:TB7-3-167, author = "Alan Spragens", title = "{CMS \TeX\ site report}", journal = j-TUGboat, volume = "7", number = "3", pages = "167--167", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB7-3-167, author = "Alan Hoenig and Mitch Pfeffer", title = "Real typesetting from your personal computer", journal = j-TUGboat, volume = "7", number = "3", pages = "167--168", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thull:TB7-3-169, author = "Klaus Thull", title = "{Harnessing \TeX\ to compute third root of unity primes}", journal = j-TUGboat, volume = "7", number = "3", pages = "169--170", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ehrbar:TB7-3-171, author = "Hans Ehrbar", title = "{Statistical graphics with \TeX}", journal = j-TUGboat, volume = "7", number = "3", pages = "171--175", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Damrau:TB7-3-176, author = "Jackie Damrau and Ken Yap", title = "Call for participation", journal = j-TUGboat, volume = "7", number = "3", pages = "176--176", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lamport:TB7-3-176, author = "Leslie Lamport", title = "{{\LaTeX\ bugs}}", journal = j-TUGboat, volume = "7", number = "3", pages = "176--176", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wonneberger:TB7-3-177, author = "Reinhard Wonneberger", title = "Chapter mottos and optional semi-parameters", journal = j-TUGboat, volume = "7", number = "3", pages = "177--185", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hofmann:TB7-3-186, author = "Thomas Hofmann", title = "{A \LaTeX\ addition for formatting indexes}", journal = j-TUGboat, volume = "7", number = "3", pages = "186--186", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Aurbach:TB7-3-187, author = "Richard L. Aurbach", title = "{Idx\TeX\ and Glo\TeX\dash indexes and glossaries}", journal = j-TUGboat, volume = "7", number = "3", pages = "187--187", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lee:TB7-3-187, author = "John Lee", title = "Form letters", journal = j-TUGboat, volume = "7", number = "3", pages = "187--187", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fox:TB7-3-187, author = "Jim Fox", title = "Change bars", journal = j-TUGboat, volume = "7", number = "3", pages = "187--188", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sewell:TB7-3-188, author = "Wayne Sewell", title = "{Bugs in \MF ware}", journal = j-TUGboat, volume = "7", number = "3", pages = "188--189", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-3-190, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "7", number = "3", pages = "190--190", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-3-191, author = "Anonymous", title = "{INRIA course: Structures for Documents, Aussois, France, January 19--23, 1987}", journal = j-TUGboat, volume = "7", number = "3", pages = "191--191", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-3-191-2, author = "Anonymous", title = "{{\MF, \TeX\ and the Humanities, Rennes, France}}", journal = j-TUGboat, volume = "7", number = "3", pages = "191--191", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ohno:TB7-3-191, author = "Yoshio Ohno", title = "{Japanese \TeX\ Users Group}", journal = j-TUGboat, volume = "7", number = "3", pages = "191--192", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB7-3-192, author = "Barbara Beeton", title = "{{\TeX\ in Europe, Summer 1986}}", journal = j-TUGboat, volume = "7", number = "3", pages = "192--193", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-3-193, author = "Anonymous", title = "{Contents: Proceedings of ``\TeX\ for Scientific Documentation'', Strasbourg, France, June 19--21, 1986}", journal = j-TUGboat, volume = "7", number = "3", pages = "193--194", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-3-196, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "7", number = "3", pages = "196--197", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lachmann:TB7-3-194, author = "Susanne Lachmann", title = "{The Tiger-\TeX\ Workstation}", journal = j-TUGboat, volume = "7", number = "3", pages = "194--195", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-3-199, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "7", number = "3", pages = "199--200", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-3-201, author = "Anonymous", title = "{{\TeX\ order form}}", journal = j-TUGboat, volume = "7", number = "3", pages = "201--202", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-3-198, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "7", number = "3", pages = "198--198", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB7-3-cover-3, author = "Anonymous", title = "{TUG\Dash Job opening, Technical assistant}", journal = j-TUGboat, volume = "7", number = "3", pages = "Cover 3", month = oct, year = "1986", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-1-3, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "8", number = "1", pages = "3--4", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB8-1-5, author = "Bart Childs", title = "President's message", journal = j-TUGboat, volume = "8", number = "1", pages = "5--5", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-1-5, author = "Anonymous", title = "Acknowledgement of contributions", journal = j-TUGboat, volume = "8", number = "1", pages = "5--5", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-1-6, author = "Anonymous", title = "{Donald E. Knuth Scholarship}", journal = j-TUGboat, volume = "8", number = "1", pages = "6--6", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB8-1-6, author = "Donald Knuth", title = "{It happened: announcement of \TeX\ 2.1}", journal = j-TUGboat, volume = "8", number = "1", pages = "6--6", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wolf:TB8-1-7, author = "Kurt Bernardo Wolf", title = "{News of \TeX\ users in Mexico}", journal = j-TUGboat, volume = "8", number = "1", pages = "7--7", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Krick:TB8-1-7, author = "Linda Krick", title = "{Attention, Australian TUG members}", journal = j-TUGboat, volume = "8", number = "1", pages = "7--7", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Siegman:TB8-1-8, author = "Tony Siegman", title = "{Book publishing using \TeX}", journal = j-TUGboat, volume = "8", number = "1", pages = "8--11", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lamport:TB8-1-12, author = "Leslie Lamport", title = "{{\TeX\ Output for the Future}}", journal = j-TUGboat, volume = "8", number = "1", pages = "12--12", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Levy:TB8-1-12, author = "Silvio Levy", title = "{{\tt WEB} adapted to C, another approach}", journal = j-TUGboat, volume = "8", number = "1", pages = "12--13", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB8-1-14, author = "Donald Knuth and Pierre MacKay", title = "Mixing right-to-left texts with left-to-right texts", journal = j-TUGboat, volume = "8", number = "1", pages = "14--25", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Tobin:TB8-1-26, author = "Georgia K. M. Tobin", title = "{Some empirical observations on \MF\ design}", journal = j-TUGboat, volume = "8", number = "1", pages = "26--28", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Billawala:TB8-1-29, author = "Neenie Billawala", title = "{Write-white printing engines and tuning fonts with \MF}", journal = j-TUGboat, volume = "8", number = "1", pages = "29--32", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB8-1-33, author = "Barbara Beeton", title = "{{\MF\ mode\_def\/ settings for various \TeX\ output devices}}", journal = j-TUGboat, volume = "8", number = "1", pages = "33--33", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-1-34, author = "Anonymous", title = "{A new \TeX-based book typesetting package for the Macintosh}", journal = j-TUGboat, volume = "8", number = "1", pages = "34--34", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-1-34-2, author = "Anonymous", title = "{Charts: \TeX\ output devices}", journal = j-TUGboat, volume = "8", number = "1", pages = "34--40", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB8-1-41, author = "Nelson H. F. Beebe", title = "{Public domain \TeX\ DVI driver family}", journal = j-TUGboat, volume = "8", number = "1", pages = "41--42", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Trevorrow:TB8-1-42, author = "Andrew Trevorrow", title = "{DVIto\kern-.1emVDU 1.7 and PSPRINT 1.1}", journal = j-TUGboat, volume = "8", number = "1", pages = "42--45", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-1-45, author = "Anonymous", title = "{Benson-Varian 9211 looking for a home}", journal = j-TUGboat, volume = "8", number = "1", pages = "45--45", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Brown:TB8-1-46, author = "Malcolm Brown", title = "{Notes from \TeX hax}", journal = j-TUGboat, volume = "8", number = "1", pages = "46--46", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fuss:TB8-1-46, author = "Edgar Fu{\ss}", title = "{{\TeX\&Co.\ on the ST, Part 2}}", journal = j-TUGboat, volume = "8", number = "1", pages = "46--47", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB8-1-47, author = "Bart Childs", title = "{Data General distribution news}", journal = j-TUGboat, volume = "8", number = "1", pages = "47--47", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lillqvist:TB8-1-47, author = "Tor Lillqvist", title = "{{\TeX82 and \MF84 for the HP1000 A-series}}", journal = j-TUGboat, volume = "8", number = "1", pages = "47--48", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Crawford:TB8-1-48, author = "John Crawford", title = "Prime 50 series site report", journal = j-TUGboat, volume = "8", number = "1", pages = "48", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fox:TB8-1-49, author = "Jim Fox", title = "Multiple, independent marks", journal = j-TUGboat, volume = "8", number = "1", pages = "49--53", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Garavelli:TB8-1-53, author = "John S. Garavelli", title = "Form letter macros", journal = j-TUGboat, volume = "8", number = "1", pages = "53--53", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bell:TB8-1-54, author = "Edwin V. {Bell, II}", title = "{AutoLetter: A \TeX\ form letter procedure}", journal = j-TUGboat, volume = "8", number = "1", pages = "54--57", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Yap:TB8-1-58, author = "Ken Yap", title = "{Contents of \LaTeX\ style collection as of 15th February 1987}", journal = j-TUGboat, volume = "8", number = "1", pages = "58--59", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{McKinstry:TB8-1-60, author = "Graeme McKinstry", title = "Form letters", journal = j-TUGboat, volume = "8", number = "1", pages = "60--61", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Zocchi:TB8-1-62, author = "Maurizio Zocchi", title = "{{\LaTeX's Index Processing}}", journal = j-TUGboat, volume = "8", number = "1", pages = "62--62", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wonneberger:TB8-1-63, author = "Reinhard Wonneberger", title = "{Typesetting `Normaltext'}", journal = j-TUGboat, volume = "8", number = "1", pages = "63--72", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB8-1-73, author = "Alan Hoenig", title = "{{\TeX\ does windows}}", journal = j-TUGboat, volume = "8", number = "1", pages = "73--73", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB8-1-73, author = "Donald Knuth", title = "{Problem for a Saturday afternoon}", journal = j-TUGboat, volume = "8", number = "1", pages = "73--73", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Dyck:TB8-1-74, author = "Jennifer Dyck", title = "{APA style in \LaTeX}", journal = j-TUGboat, volume = "8", number = "1", pages = "74--74", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hawkins:TB8-1-74, author = "Judy Hawkins", title = "Chemical formulae", journal = j-TUGboat, volume = "8", number = "1", pages = "74--74", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Celoni:TB8-1-74, author = "James R. {Celoni, S. J.}", title = "{Ancient non-Roman languages}", journal = j-TUGboat, volume = "8", number = "1", pages = "74--74", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Michailovsky:TB8-1-74, author = "Boyd Michailovsky", title = "{International Phonetic Alphabet}", journal = j-TUGboat, volume = "8", number = "1", pages = "74--74", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Cutter:TB8-1-74, author = "Lawrence D. Cutter", title = "Line numbering", journal = j-TUGboat, volume = "8", number = "1", pages = "74--74", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nash:TB8-1-75, author = "David Nash", title = "Dictionary formatting", journal = j-TUGboat, volume = "8", number = "1", pages = "75--75", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Horstman:TB8-1-75, author = "Helen S. Horstman", title = "Printing out selected pages", journal = j-TUGboat, volume = "8", number = "1", pages = "75--75", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ryan:TB8-1-75, author = "Raymond A. Ryan", title = "{Wanted: Help for beginners}", journal = j-TUGboat, volume = "8", number = "1", pages = "75--75", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thulin:TB8-1-76, author = "Anders Thulin", title = "More hyphenation exceptions", journal = j-TUGboat, volume = "8", number = "1", pages = "76--76", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{McWorter:TB8-1-76, author = "William A. McWorter", title = "New fonts for mathematics?", journal = j-TUGboat, volume = "8", number = "1", pages = "76--77", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-1-77, author = "Anonymous", title = "{Workshop on Font Design Systems (Sophia-Antipolis, France, 18--19 May 1987)}", journal = j-TUGboat, volume = "8", number = "1", pages = "77--77", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-1-77-2, author = "Anonymous", title = "{Special Spring Quarter course (Stanford, Donald Knuth): \TeX: The Program: A case study in software design}", journal = j-TUGboat, volume = "8", number = "1", pages = "77--77", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-1-78, author = "Anonymous", title = "{Call for Papers: Electronic Publishing, Document Manipulation and Typography (Nice, France, 20--22 April 1988)}", journal = j-TUGboat, volume = "8", number = "1", pages = "78--87", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-1-79, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "8", number = "1", pages = "79--80", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-1-81, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "8", number = "1", pages = "81--82", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-1-83, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "8", number = "1", pages = "83--84", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-1-85, author = "Anonymous", title = "{{\TeX\ order form}}", journal = j-TUGboat, volume = "8", number = "1", pages = "85--86", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-1-cover-3, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "8", number = "1", pages = "Cover 3", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-1-cover-3-2, author = "Anonymous", title = "{TUG\Dash Job opening, Technical assistant}", journal = j-TUGboat, volume = "8", number = "1", pages = "Cover 3", month = apr, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-2-99, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "8", number = "2", pages = "99--100", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB8-2-101, author = "Bart Childs", title = "{From the President}", journal = j-TUGboat, volume = "8", number = "2", pages = "101--101", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Koren:TB8-2-101, author = "Gideon Koren", title = "How to improve the chances for acceptance of your scientific paper", journal = j-TUGboat, volume = "8", number = "2", pages = "101--102", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Alexander:TB8-2-102, author = "James Alexander", title = "{{\Tib: a reference setting package, update}}", journal = j-TUGboat, volume = "8", number = "2", pages = "102--102", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rezende:TB8-2-102, author = "Pedro de Rezende", title = "{Portuguese hyphenation table for \TeX}", journal = j-TUGboat, volume = "8", number = "2", pages = "102--102", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ferguson:TB8-2-102, author = "Michael Ferguson", title = "{A (hopefully) final extension of multilingual \mtex}", journal = j-TUGboat, volume = "8", number = "2", pages = "102--103", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Saito:TB8-2-103, author = "Yasuki Saito", title = "{Report on \JTeX: A Japanese \TeX}", journal = j-TUGboat, volume = "8", number = "2", pages = "103--116", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sewell:TB8-2-117, author = "E. Wayne Sewell", title = "Multiple changefiles: the adventure continues", journal = j-TUGboat, volume = "8", number = "2", pages = "117--118", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sewell:TB8-2-118, author = "E. Wayne Sewell", title = "{How to {\tt MANGLE} your software: the \WEB\ system for Modula-2}", journal = j-TUGboat, volume = "8", number = "2", pages = "118--122", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sewell:TB8-2-123, author = "E. Wayne Sewell", title = "{The {\tt SCANTEX} processor}", journal = j-TUGboat, volume = "8", number = "2", pages = "123--128", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gourlay:TB8-2-128, author = "John S. Gourlay", title = "{Blacker Thoughts}", journal = j-TUGboat, volume = "8", number = "2", pages = "128--129", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sauter:TB8-2-129, author = "John Sauter", title = "{Updated Computer Modern fonts for the LN03}", journal = j-TUGboat, volume = "8", number = "2", pages = "129--130", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Crawford:TB8-2-131, author = "John Crawford", title = "{MFtool: A \MF\ script-driven processing facility}", journal = j-TUGboat, volume = "8", number = "2", pages = "131--131", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB8-2-132, author = "Barbara Beeton", title = "{Update: \MF\ {\bf mode\_def\/} settings for \TeX\ output devices}", journal = j-TUGboat, volume = "8", number = "2", pages = "132--134", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB8-2-135, author = "Donald E. Knuth", title = "Fonts for digital halftones", journal = j-TUGboat, volume = "8", number = "2", pages = "135--160", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{McGaffey:TB8-2-161, author = "Robert W. McGaffey", title = "{The ideal \TeX\ driver}", journal = j-TUGboat, volume = "8", number = "2", pages = "161--163", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB8-2-163, author = "Don Hosek", title = "{{\TeX\ output devices (with charts)}}", journal = j-TUGboat, volume = "8", number = "2", pages = "163--170", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Dunn:TB8-2-171, author = "Alec Dunn", title = "{Using PostScript with \TeX}", journal = j-TUGboat, volume = "8", number = "2", pages = "171--173", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-2-237, author = "Anonymous", title = "Index to sample output from various devices", journal = j-TUGboat, volume = "8", number = "2", pages = "237--237", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Vanderburg:TB8-2-174, author = "Glenn L. Vanderburg", title = "{TEX-L access for Bitnet users}", journal = j-TUGboat, volume = "8", number = "2", pages = "174--174", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mann:TB8-2-174, author = "Laurie Mann", title = "{{\TeX\ and training: A case study}}", journal = j-TUGboat, volume = "8", number = "2", pages = "174--176", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB8-2-176, author = "Bart Childs", title = "{Data General site report}", journal = j-TUGboat, volume = "8", number = "2", pages = "176--177", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Guenther:TB8-2-178, author = "Dean Guenther", title = "{IBM VM/CMS site report}", journal = j-TUGboat, volume = "8", number = "2", pages = "178--178", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pierson:TB8-2-178, author = "Gil Pierson", title = "{SAS merged with \TeX}", journal = j-TUGboat, volume = "8", number = "2", pages = "178--179", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB8-2-179, author = "Pierre MacKay", title = "{Unix \TeX\ site report}", journal = j-TUGboat, volume = "8", number = "2", pages = "179--181", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB8-2-177, author = "Adrian F. Clark", title = "{Enhancements to \TeX\ on the \VAX}", journal = j-TUGboat, volume = "8", number = "2", pages = "177--177", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kohlmayr:TB8-2-181, author = "Gerhard F. Kohlmayr", title = "{A bug in \TeXtures\ v0.95 prerelease}", journal = j-TUGboat, volume = "8", number = "2", pages = "181--181", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Smith:TB8-2-181, author = "Barry Smith", title = "{Work-around for an ImageWriter problem affecting \TeXtures\ output}", journal = j-TUGboat, volume = "8", number = "2", pages = "181--181", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB8-2-182, author = "Alan Hoenig and Mitch Pfeffer", title = "{Update: Real typesetting from your PC}", journal = j-TUGboat, volume = "8", number = "2", pages = "182--182", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Appelt:TB8-2-182, author = "Wolfgang Appelt", title = "Macros with keyword parameters", journal = j-TUGboat, volume = "8", number = "2", pages = "182--184", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kabelschacht:TB8-2-184, author = "Alois Kabelschacht", title = "{{\tt\bs expandafter} in conditionals; a generalization of PLAIN's {\tt\bs loop}}", journal = j-TUGboat, volume = "8", number = "2", pages = "184--185", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Barnhart:TB8-2-185, author = "Elizabeth Barnhart", title = "{{\TeX\ in the commercial environment\Dash multi-column output}}", journal = j-TUGboat, volume = "8", number = "2", pages = "185--189", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{LeHardy:TB8-2-190, author = "Charles LeHardy", title = "Diglot typesetting", journal = j-TUGboat, volume = "8", number = "2", pages = "190--192", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bruggemann-Klein:TB8-2-193, author = "Anne Br{\"u}ggemann-Klein", title = "{First line special handling with \TeX}", journal = j-TUGboat, volume = "8", number = "2", pages = "193--197", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Yap:TB8-2-198, author = "Ken Yap", title = "{Contents of \LaTeX\ style collection as of 15th May 1987}", journal = j-TUGboat, volume = "8", number = "2", pages = "198--200", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Aurbach:TB8-2-201, author = "Richard Aurbach", title = "{Automated index generation for \LaTeX}", journal = j-TUGboat, volume = "8", number = "2", pages = "201--209", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB8-2-210, author = "Donald Knuth", title = "{Saturday morning problem\Dash solution}", journal = j-TUGboat, volume = "8", number = "2", pages = "210--210", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB8-2-211, author = "Alan Hoenig", title = "{{\TeX\ does windows\Dash conclusion}}", journal = j-TUGboat, volume = "8", number = "2", pages = "211--215", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fox:TB8-2-216, author = "Jim Fox", title = "{Comment on ``\TeX\ does windows''}", journal = j-TUGboat, volume = "8", number = "2", pages = "216--216", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Alexander:TB8-2-216, author = "James Alexander", title = "Time line macro", journal = j-TUGboat, volume = "8", number = "2", pages = "216--216", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB8-2-217, author = "Donald Knuth", title = "{Reply: Printing out selected pages}", journal = j-TUGboat, volume = "8", number = "2", pages = "217--217", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Black:TB8-2-217, author = "Mike Black", title = "{Using the Windows environment}", journal = j-TUGboat, volume = "8", number = "2", pages = "217--217", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-2-218, author = "Anonymous", title = "{TUG Annual Meeting, University of Washington, August 24--26, 1987}", journal = j-TUGboat, volume = "8", number = "2", pages = "218--218", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-2-219, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "8", number = "2", pages = "219--220", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Boston:TB8-2-220, author = "Boston and Mass. and 22--24 October 1987", title = "{PROTEXT IV}", journal = j-TUGboat, volume = "8", number = "2", pages = "220--220", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Munster:TB8-2-221, author = "University of M{\"u}nster and 8--9 October 1987", title = "{6th German \TeX\ meeting}", journal = j-TUGboat, volume = "8", number = "2", pages = "221--221", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Price:TB8-2-221, author = "Lynne A. Price", title = "{SGML and \TeX}", journal = j-TUGboat, volume = "8", number = "2", pages = "221--225", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Whidden:TB8-2-225, author = "Samuel B. Whidden", title = "Treasurer's report", journal = j-TUGboat, volume = "8", number = "2", pages = "225--227", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-2-228, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "8", number = "2", pages = "228--230", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-2-231, author = "Anonymous", title = "{TUG membership application; \TeX\ order form}", journal = j-TUGboat, volume = "8", number = "2", pages = "231--232", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-2-252, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "8", number = "2", pages = "252--252", month = jul, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-3-255, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "8", number = "3", pages = "255--256", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB8-3-257, author = "Bart Childs", title = "{From the President}", journal = j-TUGboat, volume = "8", number = "3", pages = "257--257", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thedford:TB8-3-258, author = "Rilla Thedford", title = "{The Volunteer Tree}", journal = j-TUGboat, volume = "8", number = "3", pages = "258--258", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Marle:TB8-3-259, author = "Charles-Michel Marle", title = "{Book publishing using \TeX}", journal = j-TUGboat, volume = "8", number = "3", pages = "259--260", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mann:TB8-3-260, author = "Laurie Mann", title = "{{\TeX\ training, etc.\Dash A TUG meeting trip report}}", journal = j-TUGboat, volume = "8", number = "3", pages = "260--262", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB8-3-262, author = "Barbara Beeton", title = "{From the Editor}", journal = j-TUGboat, volume = "8", number = "3", pages = "262--262", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB8-3-262, author = "Bart Childs", title = "{Proposed minimum standards for \TeX\ distributions}", journal = j-TUGboat, volume = "8", number = "3", pages = "262--263", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Reid:TB8-3-264, author = "Thomas J. Reid", title = "{{\tt TANGLE} modification causes problems in \MF\ and PK files}", journal = j-TUGboat, volume = "8", number = "3", pages = "264--265", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-3-266, author = "Anonymous", title = "Hyphenation exception log", journal = j-TUGboat, volume = "8", number = "3", pages = "266--267", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Henderson:TB8-3-268, author = "Doug Henderson", title = "{Update: \MF\ {\bf mode\_def\/} settings for \TeX\ output devices}", journal = j-TUGboat, volume = "8", number = "3", pages = "268--270", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB8-3-270, author = "Adrian F. Clark", title = "{Halftone output from \TeX}", journal = j-TUGboat, volume = "8", number = "3", pages = "270--274", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hohti:TB8-3-275, author = "Aarno Hohti and Okko Kanerva", title = "{Generating an {\sl APL\/} font}", journal = j-TUGboat, volume = "8", number = "3", pages = "275--278", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB8-3-279, author = "Don Hosek", title = "{{\TeX\ output devices (with charts)}}", journal = j-TUGboat, volume = "8", number = "3", pages = "279--286", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Reid:TB8-3-287, author = "Thomas J. Reid", title = "{DVI driver considerations for high-volume printing systems}", journal = j-TUGboat, volume = "8", number = "3", pages = "287--291", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Vanderburg:TB8-3-291, author = "Glenn L. Vanderburg and Thomas J. Reid", title = "{{\tt\bs special} issues}", journal = j-TUGboat, volume = "8", number = "3", pages = "291--300", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Toal:TB8-3-301, author = "Graham Toal", title = "{{\TeX\ information for users in the U.K.}}", journal = j-TUGboat, volume = "8", number = "3", pages = "301--301", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Brown:TB8-3-301, author = "Malcolm Brown", title = "{{\TeX hax Notes}}", journal = j-TUGboat, volume = "8", number = "3", pages = "301--303", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lammarsch:TB8-3-304, author = "Joachim Lammarsch", title = "{6th Meeting of the ``\TeX-Interessenten'' in Germany}", journal = j-TUGboat, volume = "8", number = "3", pages = "304--304", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Guntermann:TB8-3-304, author = "Klaus Guntermann", title = "{Atari ST site report}", journal = j-TUGboat, volume = "8", number = "3", pages = "304--304", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB8-3-304, author = "Bart Childs", title = "{Data General site report}", journal = j-TUGboat, volume = "8", number = "3", pages = "304--304", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pfeffer:TB8-3-305, author = "Mitch Pfeffer and Alan Hoenig", title = "{Running \TeX\ on a 386-based computer: Twice as fast as an AT}", journal = j-TUGboat, volume = "8", number = "3", pages = "305--306", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB8-3-307, author = "Christina Thiele", title = "What constitutes a well-documented macro?", journal = j-TUGboat, volume = "8", number = "3", pages = "307--308", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB8-3-309, author = "Donald E. Knuth", title = "{Macros for Jill}", journal = j-TUGboat, volume = "8", number = "3", pages = "309--314", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Reid:TB8-3-315, author = "Thomas J. Reid", title = "{Floating figures at the right, and Some random text for testing}", journal = j-TUGboat, volume = "8", number = "3", pages = "315--320", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Yap:TB8-3-320, author = "Ken Yap", title = "{Contents of \LaTeX\ style collection as of 15th September 1987}", journal = j-TUGboat, volume = "8", number = "3", pages = "320--323", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Damrau:TB8-3-323, author = "Jackie Damrau", title = "{The \LaTeX\ user's column}", journal = j-TUGboat, volume = "8", number = "3", pages = "323--326", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB8-3-306, author = "Peter Flynn", title = "Request for contributions to a new publication", journal = j-TUGboat, volume = "8", number = "3", pages = "306--306", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Boes:TB8-3-326, author = "Jeffery Boes", title = "{Reply: Printing out selected pages}", journal = j-TUGboat, volume = "8", number = "3", pages = "326--326", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lipp:TB8-3-326, author = "Stephen C. Lipp", title = "Title formatting macro wanted", journal = j-TUGboat, volume = "8", number = "3", pages = "326--327", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-3-328, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "8", number = "3", pages = "328--328", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-3-329, author = "Anonymous", title = "{Exeter University: \TeX88, 18--20 July 1988}", journal = j-TUGboat, volume = "8", number = "3", pages = "329--330", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-3-cover-3, author = "Anonymous", title = "{Call for papers: TUG Annual Meeting, Montr\'eal, 22--24 August 1988}", journal = j-TUGboat, volume = "8", number = "3", pages = "Cover 3", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-3-331, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "8", number = "3", pages = "331--332", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-3-333, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "8", number = "3", pages = "333--334", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB8-3-352, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "8", number = "3", pages = "352--352", month = nov, year = "1987", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-1-3, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "9", number = "1", pages = "3--4", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB9-1-5, author = "Bart Childs", title = "{From the President}", journal = j-TUGboat, volume = "9", number = "1", pages = "5--5", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wittbecker:TB9-1-5, author = "Alan Wittbecker", title = "{{\TUB{} docks at fire station}}", journal = j-TUGboat, volume = "9", number = "1", pages = "5--5", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-1-6, author = "Anonymous", title = "{Donald E. Knuth Scholarship}", journal = j-TUGboat, volume = "9", number = "1", pages = "6--6", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB9-1-6, author = "Barbara Beeton", title = "{Notes from the Editor}", journal = j-TUGboat, volume = "9", number = "1", pages = "6--7", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lamport:TB9-1-8, author = "Leslie Lamport", title = "{Document Production: Visual or Logical?}", journal = j-TUGboat, volume = "9", number = "1", pages = "8--10", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Breitenlohner:TB9-1-11, author = "Peter Breitenlohner", title = "{Still another aspect of multiple change files: The PATCH processor}", journal = j-TUGboat, volume = "9", number = "1", pages = "11--12", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB9-1-12, author = "Pierre A. MacKay", title = "{Turkish hyphenations for \TeX}", journal = j-TUGboat, volume = "9", number = "1", pages = "12--14", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Tobin:TB9-1-15, author = "Georgia K. M. Tobin", title = "{The ABC's of special effects}", journal = j-TUGboat, volume = "9", number = "1", pages = "15--18", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Messer:TB9-1-19, author = "Robert Messer", title = "{Blackboard Bold}", journal = j-TUGboat, volume = "9", number = "1", pages = "19--20", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Levy:TB9-1-20, author = "Silvio Levy", title = "{Using Greek fonts with \TeX}", journal = j-TUGboat, volume = "9", number = "1", pages = "20--24", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB9-1-25, author = "Don Hosek", title = "{{\TeX{} output devices (with charts)}}", journal = j-TUGboat, volume = "9", number = "1", pages = "25--33", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Brown:TB9-1-34, author = "Marcus Brown", title = "{An ASCII previewer for \TeX}", journal = j-TUGboat, volume = "9", number = "1", pages = "34--36", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB9-1-37, author = "Don Hosek", title = "{A screen previewer for VM/CMS}", journal = j-TUGboat, volume = "9", number = "1", pages = "37--37", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Dunne:TB9-1-37, author = "Shane Dunne", title = "{Why \TeX{} should NOT output \PS{}\Dash yet}", journal = j-TUGboat, volume = "9", number = "1", pages = "37--39", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-1-39, author = "Anonymous", title = "Index to sample output from various devices", journal = j-TUGboat, volume = "9", number = "1", pages = "39--39", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rokicki:TB9-1-40, author = "Tom Rokicki", title = "{The Commodore Amiga: A magic \TeX{} machine}", journal = j-TUGboat, volume = "9", number = "1", pages = "40--41", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB9-1-41, author = "Bart Childs", title = "{Data General site report}", journal = j-TUGboat, volume = "9", number = "1", pages = "41--41", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-1-42, author = "Anonymous", title = "{Fujitsu ports \TeX{} 1.0 onto M-series}", journal = j-TUGboat, volume = "9", number = "1", pages = "42--42", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Guenther:TB9-1-42, author = "Dean Guenther", title = "{IBM VM/CMS site report}", journal = j-TUGboat, volume = "9", number = "1", pages = "42--42", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB9-1-42, author = "Pierre MacKay", title = "{Unix \TeX{} site report}", journal = j-TUGboat, volume = "9", number = "1", pages = "42--44", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Morgan:TB9-1-44, author = "Tim Morgan", title = "{{\TeX{} to C converter}}", journal = j-TUGboat, volume = "9", number = "1", pages = "44--45", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kellerman:TB9-1-45, author = "David Kellerman", title = "{{\VAX/VMS site report}}", journal = j-TUGboat, volume = "9", number = "1", pages = "45--45", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB9-1-46, author = "Alan Hoenig and Mitch Pfeffer", title = "{Writers' tools I: PC spelling and grammar checkers}", journal = j-TUGboat, volume = "9", number = "1", pages = "46--47", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB9-1-47, author = "Alan Hoenig and Mitch Pfeffer", title = "{Grapevine reports of inexpensive versions of \TeX}", journal = j-TUGboat, volume = "9", number = "1", pages = "47--48", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kinch:TB9-1-48, author = "Richard J. Kinch and Jennifer L. Vollbrecht", title = "{Turbo\TeX: A new port in C for Unix and MS-DOS}", journal = j-TUGboat, volume = "9", number = "1", pages = "48--52", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Crisanti:TB9-1-52, author = "Ester Crisanti and Alberto Formigoni and Paco La Bruna", title = "{easy\TeX}", journal = j-TUGboat, volume = "9", number = "1", pages = "52--56", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bechtolsheim:TB9-1-57, author = "Stephan v. Bechtolsheim", title = "{A tutorial on {\tt\bs expandafter}}", journal = j-TUGboat, volume = "9", number = "1", pages = "57--61", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Walker:TB9-1-61, author = "James W. Walker", title = "Macros for outlining", journal = j-TUGboat, volume = "9", number = "1", pages = "61--64", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hendrickson:TB9-1-64, author = "Amy Hendrickson", title = "{A macro writing tool: Generating new definitions}", journal = j-TUGboat, volume = "9", number = "1", pages = "64--64", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gariepy:TB9-1-65, author = "Alonzo Gariepy", title = "{French in \TeX}", journal = j-TUGboat, volume = "9", number = "1", pages = "65--69", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Partl:TB9-1-70, author = "Hubert Partl", title = "{German \TeX}", journal = j-TUGboat, volume = "9", number = "1", pages = "70--72", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Yap:TB9-1-73, author = "Ken Yap", title = "{Contents of \LaTeX{} style collection as of 4th February 1988}", journal = j-TUGboat, volume = "9", number = "1", pages = "73--75", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Damrau:TB9-1-76, author = "Jackie Damrau", title = "{The \LaTeX{} user's column}", journal = j-TUGboat, volume = "9", number = "1", pages = "76--77", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{McPherson:TB9-1-78, author = "Kent McPherson", title = "{Page layout in \LaTeX}", journal = j-TUGboat, volume = "9", number = "1", pages = "78--82", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bartlett:TB9-1-83, author = "Frederick H. Bartlett", title = "{Automatic page balancing macros wanted; Replies: Inverted pyramidal titles; Logarithmic time scales}", journal = j-TUGboat, volume = "9", number = "1", pages = "83--85", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-1-86, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "9", number = "1", pages = "86--86", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-1-87, author = "Anonymous", title = "{TUG 1988 Annual Meeting, Montr\'eal, August 22--24}", journal = j-TUGboat, volume = "9", number = "1", pages = "87--87", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-1-87-2, author = "Anonymous", title = "{Videotapes of Knuth's software course based on \TeX: The Program}", journal = j-TUGboat, volume = "9", number = "1", pages = "87--87", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-1-88, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "9", number = "1", pages = "88--90", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-1-91, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "9", number = "1", pages = "91--93", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-1-95, author = "Anonymous", title = "{{\TeX{} order form}}", journal = j-TUGboat, volume = "9", number = "1", pages = "95--96", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-1-112, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "9", number = "1", pages = "112--112", month = apr, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-2-115, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "9", number = "2", pages = "115--116", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB9-2-117, author = "Bart Childs", title = "{From the President}", journal = j-TUGboat, volume = "9", number = "2", pages = "117--117", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goucher:TB9-2-117, author = "Ray Goucher", title = "{Los Alamos sets new membership record}", journal = j-TUGboat, volume = "9", number = "2", pages = "117--117", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-2-117, author = "Anonymous", title = "{Donald Knuth awarded Franklin Medal}", journal = j-TUGboat, volume = "9", number = "2", pages = "117--117", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Barnhart:TB9-2-118, author = "Elizabeth Barnhart", title = "{{\TeX{} in the publishing environment: A survey of production/commercial users}}", journal = j-TUGboat, volume = "9", number = "2", pages = "118--120", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB9-2-121, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "9", number = "2", pages = "121--121", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB9-2-121-2, author = "Barbara Beeton", title = "{New version(s) of \TeX{} and \MF}", journal = j-TUGboat, volume = "9", number = "2", pages = "121--122", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB9-2-122, author = "Bart Childs", title = "{64-bit \TeX}", journal = j-TUGboat, volume = "9", number = "2", pages = "122--122", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lichtenwalder:TB9-2-123, author = "Klaus Lichtenwalder", title = "{Porting \TeX{} to C}", journal = j-TUGboat, volume = "9", number = "2", pages = "123--124", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kennedy:TB9-2-124, author = "David Kennedy", title = "{{\TeX{} adapted to CWEB}}", journal = j-TUGboat, volume = "9", number = "2", pages = "124--125", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Vanderburg:TB9-2-125, author = "Glenn Vanderburg", title = "Some useful variations of standard fonts", journal = j-TUGboat, volume = "9", number = "2", pages = "125--125", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Tobin:TB9-2-126, author = "Georgia K. M. Tobin", title = "Designing for low-res devices", journal = j-TUGboat, volume = "9", number = "2", pages = "126--128", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB9-2-129, author = "Bart Childs", title = "{{\TeX{} fonts and suggested magnifications}}", journal = j-TUGboat, volume = "9", number = "2", pages = "129--131", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wujastyk:TB9-2-131, author = "Dominik Wujastyk", title = "{The many faces of \TeX: A survey of digital {\manual META}fonts}", journal = j-TUGboat, volume = "9", number = "2", pages = "131--151", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB9-2-152, author = "Donald E. Knuth", title = "{A Punk Meta-Font}", journal = j-TUGboat, volume = "9", number = "2", pages = "152--168", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB9-2-169, author = "Don Hosek", title = "{{\TeX{} output devices (with charts)}}", journal = j-TUGboat, volume = "9", number = "2", pages = "169--177", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Dunne:TB9-2-178, author = "Shane Dunne", title = "{Why \TeX{} should NOT output \PS{}\Dash yet: Addendum}", journal = j-TUGboat, volume = "9", number = "2", pages = "178--178", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wolfe:TB9-2-178, author = "Warren Wolfe", title = "{ASCII Preview with vu\TeX}", journal = j-TUGboat, volume = "9", number = "2", pages = "178--180", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-2-151, author = "Anonymous", title = "Index to sample output from various devices", journal = j-TUGboat, volume = "9", number = "2", pages = "151--151", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB9-2-181, author = "Bart Childs", title = "{{\TeX{} on the Cray}}", journal = j-TUGboat, volume = "9", number = "2", pages = "181--181", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB9-2-181-2, author = "Bart Childs", title = "{Data General site report}", journal = j-TUGboat, volume = "9", number = "2", pages = "181--181", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Smith:TB9-2-181, author = "Barry Smith", title = "Macintosh site report", journal = j-TUGboat, volume = "9", number = "2", pages = "181--181", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB9-2-182, author = "Barbara Beeton", title = "{Controlling {\tt}; Ruling the depths}", journal = j-TUGboat, volume = "9", number = "2", pages = "182--183", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Breitenlohner:TB9-2-183, author = "Peter Breitenlohner", title = "{German \TeX, a next step}", journal = j-TUGboat, volume = "9", number = "2", pages = "183--185", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wichura:TB9-2-186, author = "Michael J. Wichura", title = "{Some problems with the INRS\TeX{} table making macros}", journal = j-TUGboat, volume = "9", number = "2", pages = "186--188", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haagen:TB9-2-189, author = "A. J. Van Haagen", title = "{Box plots and scatter plots with \TeX{} macros}", journal = j-TUGboat, volume = "9", number = "2", pages = "189--192", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wichura:TB9-2-193, author = "Michael J. Wichura", title = "{{\PiCTeX: Macros for drawing \PiC tures}}", journal = j-TUGboat, volume = "9", number = "2", pages = "193--197", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Damrau:TB9-2-198, author = "Jackie Damrau", title = "{The \LaTeX{} user's column}", journal = j-TUGboat, volume = "9", number = "2", pages = "198--199", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Yap:TB9-2-200, author = "Ken Yap", title = "{Contents of \LaTeX{} style collection as of 19th June 1988}", journal = j-TUGboat, volume = "9", number = "2", pages = "200--203", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bechtolsheim:TB9-2-203, author = "Stephan v. Bechtolsheim", title = "{A note on processing parts with \LaTeX}", journal = j-TUGboat, volume = "9", number = "2", pages = "203--204", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{McPherson:TB9-2-204, author = "Kent McPherson", title = "{Page layout in \LaTeX: Erratum}", journal = j-TUGboat, volume = "9", number = "2", pages = "204--204", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-2-205, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "9", number = "2", pages = "205--205", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gaulle:TB9-2-206, author = "Bernard Gaulle", title = "{GUTenberg meeting report}", journal = j-TUGboat, volume = "9", number = "2", pages = "206--207", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-2-207, author = "Anonymous", title = "{Knuth Scholarship winner}", journal = j-TUGboat, volume = "9", number = "2", pages = "207--207", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-2-208, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "9", number = "2", pages = "208--210", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-2-211, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "9", number = "2", pages = "211--212", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-2-226, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "9", number = "2", pages = "226--226", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-2-M, author = "Anonymous", title = "{TUG Membership List Supplement}", journal = j-TUGboat, volume = "9", number = "2", pages = "M-1--M-14", month = aug, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-3-229, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "9", number = "3", pages = "229--230", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB9-3-231, author = "Bart Childs", title = "{From the President}", journal = j-TUGboat, volume = "9", number = "3", pages = "231--232", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-3-232, author = "Anonymous", title = "{Extra! Extra! \TUB{} becomes a quarterly}", journal = j-TUGboat, volume = "9", number = "3", pages = "232--232", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-3-232-2, author = "Anonymous", title = "{Donald Knuth awarded Oxford degree}", journal = j-TUGboat, volume = "9", number = "3", pages = "232--233", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB9-3-233, author = "Barbara Beeton", title = "{{\TeX{} and TUG go international\Dash A trip report}}", journal = j-TUGboat, volume = "9", number = "3", pages = "233--235", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{McKinstry:TB9-3-236, author = "Graeme McKinstry", title = "Some typesetting conventions", journal = j-TUGboat, volume = "9", number = "3", pages = "236--238", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Heidrich:TB9-3-238, author = "Klaus Heidrich", title = "{Software-ergonomics on the Atari ST}", journal = j-TUGboat, volume = "9", number = "3", pages = "238--238", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-3-239, author = "Anonymous", title = "Hyphenation exception log", journal = j-TUGboat, volume = "9", number = "3", pages = "239--241", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Schrod:TB9-3-241, author = "Joachim Schrod", title = "{{\LaTeX{} fonts and suggested magnifications}}", journal = j-TUGboat, volume = "9", number = "3", pages = "241--243", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Henderson:TB9-3-244, author = "Doug Henderson", title = "{Mode\_def's please}", journal = j-TUGboat, volume = "9", number = "3", pages = "244--245", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wujastyk:TB9-3-246, author = "Dominik Wujastyk", title = "Further faces", journal = j-TUGboat, volume = "9", number = "3", pages = "246--251", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB9-3-251, author = "Don Hosek", title = "{{\TeX{} output devices (with charts)}}", journal = j-TUGboat, volume = "9", number = "3", pages = "251--260", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Abbott:TB9-3-261, author = "Peter Abbott and Andrew Trevorrow", title = "{{\DVItoVDU{} 3.0 and PSPRINT 3.0}}", journal = j-TUGboat, volume = "9", number = "3", pages = "261--262", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Abbott:TB9-3-263, author = "Peter Abbott", title = "{A UK-based \TeX{} mail archive server}", journal = j-TUGboat, volume = "9", number = "3", pages = "263--264", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Guntermann:TB9-3-264, author = "Klaus Guntermann", title = "{Atari ST site report}", journal = j-TUGboat, volume = "9", number = "3", pages = "264--265", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB9-3-265, author = "Bart Childs", title = "{Data General site report}", journal = j-TUGboat, volume = "9", number = "3", pages = "265--265", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Guenther:TB9-3-265, author = "Dean Guenther", title = "{IBM VM/CMS site report}", journal = j-TUGboat, volume = "9", number = "3", pages = "265--265", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Platt:TB9-3-266, author = "Craig Platt", title = "{MVS site report}", journal = j-TUGboat, volume = "9", number = "3", pages = "266--267", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB9-3-267, author = "Pierre MacKay", title = "{Unix \TeX{} site report}", journal = j-TUGboat, volume = "9", number = "3", pages = "267--269", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pfeffer:TB9-3-269, author = "Mitch Pfeffer and Alan Hoenig", title = "Recovering from a hard-disk failure", journal = j-TUGboat, volume = "9", number = "3", pages = "269--271", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laan:TB9-3-271, author = "C. G. van der Laan and J. R. Luyten", title = "{Evaluation of K-talk}", journal = j-TUGboat, volume = "9", number = "3", pages = "271--272", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wittbecker:TB9-3-272, author = "Alan Wittbecker", title = "Making paragraphs", journal = j-TUGboat, volume = "9", number = "3", pages = "272--276", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bechtolsheim:TB9-3-276, author = "Stephan v. Bechtolsheim", title = "{A tutorial on {\tt\bs futurelet}}", journal = j-TUGboat, volume = "9", number = "3", pages = "276--278", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kneser:TB9-3-279, author = "Thomas Kneser", title = "Compact matrix display", journal = j-TUGboat, volume = "9", number = "3", pages = "279--284", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Appelt:TB9-3-284, author = "Wolfgang Appelt", title = "Typesetting chess", journal = j-TUGboat, volume = "9", number = "3", pages = "284--287", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pittman:TB9-3-287, author = "J. E. Pittman", title = "{Equation numbering in plain \TeX}", journal = j-TUGboat, volume = "9", number = "3", pages = "287--288", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pittman:TB9-3-289, author = "J. E. Pittman", title = "{\tt Loopy.TeX}", journal = j-TUGboat, volume = "9", number = "3", pages = "289--291", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rogers:TB9-3-292, author = "David F. Rogers", title = "A page make-up challenge", journal = j-TUGboat, volume = "9", number = "3", pages = "292--293", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{DeCorte:TB9-3-294, author = "Michael DeCorte", title = "{Contents of \LaTeX{} style collection as of 24 September 1988}", journal = j-TUGboat, volume = "9", number = "3", pages = "294--297", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Damrau:TB9-3-297, author = "Jackie Damrau", title = "{The \LaTeX{} column}", journal = j-TUGboat, volume = "9", number = "3", pages = "297--297", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB9-3-298, author = "Frank Mittelbach", title = "A new implementation of the array-- and tabular--environments", journal = j-TUGboat, volume = "9", number = "3", pages = "298--314", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-3-315, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "9", number = "3", pages = "315--315", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laan:TB9-3-316, author = "C. G. van der Laan", title = "{Dutch \TeX{} Users Group}", journal = j-TUGboat, volume = "9", number = "3", pages = "316--316", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-3-cover-3, author = "Anonymous", title = "{Call for papers: {\bf TUG Tenth Annual Meeting}, Stanford University, 21--23 August 1989}", journal = j-TUGboat, volume = "9", number = "3", pages = "Cover 3", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-3-316, author = "Anonymous", title = "{Call for papers: RIDT'89\Dash International Workshop on Raster Imagining and Digital Typography, Lausanne, Switzerland, 12--13 October 1989}", journal = j-TUGboat, volume = "9", number = "3", pages = "316--317", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB9-3-317, author = "Pierre MacKay", title = "{{\TeX hax moves north}}", journal = j-TUGboat, volume = "9", number = "3", pages = "317--317", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB9-3-317, author = "Barbara Beeton", title = "Production notes", journal = j-TUGboat, volume = "9", number = "3", pages = "317--318", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-3-318, author = "Anonymous", title = "A thank you note", journal = j-TUGboat, volume = "9", number = "3", pages = "318--318", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-3-324, author = "Anonymous", title = "{TUG's Tenth}", journal = j-TUGboat, volume = "9", number = "3", pages = "324--324", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-3-318-2, author = "Anonymous", title = "{Accountant's review of TUG financial records, years ended December 31, 1987 and 1986}", journal = j-TUGboat, volume = "9", number = "3", pages = "318--321", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-3-322, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "9", number = "3", pages = "322--324", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-3-325, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "9", number = "3", pages = "325--325", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-3-342, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "9", number = "3", pages = "342--342", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB9-3-M, author = "Anonymous", title = "{TUG Membership List Supplement}", journal = j-TUGboat, volume = "9", number = "3", pages = "M-1--M-12", month = nov, year = "1988", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-1-3, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "10", number = "1", pages = "3--4", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-1-5, author = "Anonymous", title = "{Donald E. Knuth Scholarship}", journal = j-TUGboat, volume = "10", number = "1", pages = "5--5", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB10-1-5, author = "Bart Childs", title = "{From the President}", journal = j-TUGboat, volume = "10", number = "1", pages = "5--5", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-1-5-2, author = "Anonymous", title = "{Announcing a TUG dingbat competition}", journal = j-TUGboat, volume = "10", number = "1", pages = "5--6", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB10-1-6, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "10", number = "1", pages = "6--7", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB10-1-8, author = "Donald Knuth", title = "{{\TeX} would find it difficult {\dots}}", journal = j-TUGboat, volume = "10", number = "1", pages = "8--8", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB10-1-8, author = "Barbara Beeton", title = "{A {\TeX} encounter in Japan}", journal = j-TUGboat, volume = "10", number = "1", pages = "8--10", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Harrison:TB10-1-11, author = "Michael Harrison", title = "{News from the {\VorTeX} project}", journal = j-TUGboat, volume = "10", number = "1", pages = "11--14", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB10-1-14, author = "Adrian Clark", title = "{An enhanced {\TeX}-editor interface for VMS}", journal = j-TUGboat, volume = "10", number = "1", pages = "14--15", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thull:TB10-1-15, author = "Klaus Thull", title = "{The virtual memory management of PubliC {\TeX}}", journal = j-TUGboat, volume = "10", number = "1", pages = "15--22", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kinch:TB10-1-23, author = "Richard Kinch", title = "{Turbo{\MF}: A new port in C for {\UNIX} and MS-DOS}", journal = j-TUGboat, volume = "10", number = "1", pages = "23--24", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bechtolsheim:TB10-1-25, author = "Stephan v. Bechtolsheim", title = "{The {\TeX} {\PS} software package}", journal = j-TUGboat, volume = "10", number = "1", pages = "25--27", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Tobin:TB10-1-28, author = "Georgia K. M. Tobin", title = "A handy little font", journal = j-TUGboat, volume = "10", number = "1", pages = "28--30", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB10-1-31, author = "Donald Knuth", title = "{Typesetting {\sl Concrete Mathematics\/}}", journal = j-TUGboat, volume = "10", number = "1", pages = "31--36", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Henderson:TB10-1-36, author = "Doug Henderson", title = "{Outline fonts with {\MF}}", journal = j-TUGboat, volume = "10", number = "1", pages = "36--38", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wujastyk:TB10-1-39, author = "Dominik Wujastyk", title = "Font news", journal = j-TUGboat, volume = "10", number = "1", pages = "39--39", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rogers:TB10-1-39, author = "David F. Rogers", title = "{Computer graphics and {\TeX}\Dash a challenge}", journal = j-TUGboat, volume = "10", number = "1", pages = "39--44", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB10-1-44, author = "Bart Childs and Alan Stolleis and Don Berryman", title = "A portable graphics inclusion", journal = j-TUGboat, volume = "10", number = "1", pages = "44--46", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB10-1-46, author = "Don Hosek", title = "{{\TeX} output devices (with charts)}", journal = j-TUGboat, volume = "10", number = "1", pages = "46--55", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB10-1-56, author = "Don Hosek", title = "{Report from the {\tt DVI} driver standards committee}", journal = j-TUGboat, volume = "10", number = "1", pages = "56--56", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Broeren:TB10-1-56, author = "Marius Broeren and Jan van Knippenberg", title = "{High quality printing of {\TeX} DVI output files in the {\VAX/VMS} environment}", journal = j-TUGboat, volume = "10", number = "1", pages = "56--58", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Puente:TB10-1-58, author = "Arturo Puente", title = "{Output driver for Xerox 4045 on IBM 3090}", journal = j-TUGboat, volume = "10", number = "1", pages = "58--58", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Abbott:TB10-1-59, author = "Peter Abbott", title = "{{UK\TeX} and the Aston archive}", journal = j-TUGboat, volume = "10", number = "1", pages = "59--60", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB10-1-60, author = "Bart Childs", title = "{DG site report}", journal = j-TUGboat, volume = "10", number = "1", pages = "60--60", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB10-1-60, author = "Pierre MacKay", title = "{Unix{\TeX} site report}", journal = j-TUGboat, volume = "10", number = "1", pages = "60--61", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kellerman:TB10-1-62, author = "David Kellerman", title = "{{\VAX/VMS} site report}", journal = j-TUGboat, volume = "10", number = "1", pages = "62--62", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB10-1-62, author = "Alan Hoenig", title = "The land of the free and the near free", journal = j-TUGboat, volume = "10", number = "1", pages = "62--64", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kubik:TB10-1-65, author = "Kim Kubik", title = "{Amiga{\TeX}\dots or How envy was resisted and knowledge found on the road to \"O\"o\c c}", journal = j-TUGboat, volume = "10", number = "1", pages = "65--67", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Modest:TB10-1-67, author = "Michael Modest", title = "{Using {\TeX} and {\LaTeX} with WordPerfect 5.0}", journal = j-TUGboat, volume = "10", number = "1", pages = "67--72", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Zalmstra:TB10-1-73, author = "Joost Zalmstra and David F. Rogers", title = "A page make-up macro", journal = j-TUGboat, volume = "10", number = "1", pages = "73--81", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nearing:TB10-1-82, author = "James Nearing", title = "{Extended equation numbering in Plain {\TeX}}", journal = j-TUGboat, volume = "10", number = "1", pages = "82--88", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sankar:TB10-1-89, author = "Sriram Sankar", title = "{APE\Dash A set of {\TeX} macros to format Ada programs}", journal = j-TUGboat, volume = "10", number = "1", pages = "89--97", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{DeCorte:TB10-1-97, author = "Michael DeCorte", title = "{Contents of {\LaTeX} style collection as of 16 January 1989}", journal = j-TUGboat, volume = "10", number = "1", pages = "97--102", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB10-1-103, author = "Frank Mittelbach", title = "{``A new implementation of the array-- and tabular--environments of {\LaTeX}'' ({\TUB} 9\#3)\Dash addenda}", journal = j-TUGboat, volume = "10", number = "1", pages = "103--104", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Schopf:TB10-1-105, author = "Rainer Sch{\"o}pf", title = "{Drawing histogram bars inside the {\LaTeX} picture--environment}", journal = j-TUGboat, volume = "10", number = "1", pages = "105--107", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nagy:TB10-1-108, author = "Dezs\H o Nagy", title = "Vertical centering for transparencies", journal = j-TUGboat, volume = "10", number = "1", pages = "108--112", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laan:TB10-1-113, author = "C. G. van der Laan", title = "{Typesetting bridge via {\LaTeX}}", journal = j-TUGboat, volume = "10", number = "1", pages = "113--116", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-1-116, author = "Anonymous", title = "{WOODMAN '89: Workshop on Object Oriented Document Manipulation, Rennes, France, 29--31 May 1989}", journal = j-TUGboat, volume = "10", number = "1", pages = "116--116", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-1-117, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "10", number = "1", pages = "117--117", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-1-118, author = "Anonymous", title = "{GUTenberg Congr\`es:\ {\TeX} et les graphiques, Paris, 16--17 May 1989}", journal = j-TUGboat, volume = "10", number = "1", pages = "118--118", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-1-118-2, author = "Anonymous", title = "{{\TeX89: Karlsruhe University, 11--13 September 1989}}", journal = j-TUGboat, volume = "10", number = "1", pages = "118--118", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Osborne:TB10-1-119, author = "David Osborne", title = "{A UK {\TeX} users' group\Dash Report of a preliminary meeting}", journal = j-TUGboat, volume = "10", number = "1", pages = "119--120", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB10-1-120, author = "Barbara Beeton", title = "Production notes", journal = j-TUGboat, volume = "10", number = "1", pages = "120--121", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-1-121, author = "Anonymous", title = "Coming next issue", journal = j-TUGboat, volume = "10", number = "1", pages = "121--121", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-1-122, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "10", number = "1", pages = "122--124", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-1-125, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "10", number = "1", pages = "125--125", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-1-142, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "10", number = "1", pages = "142--142", month = apr, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-2-145, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "10", number = "2", pages = "145--146", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB10-2-147, author = "Bart Childs", title = "{From the President}", journal = j-TUGboat, volume = "10", number = "2", pages = "147--147", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB10-2-147, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "10", number = "2", pages = "147--150", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB10-2-150, author = "Malcolm Clark", title = "{R\'eflexions sur le Congr\`es GUTenberg}", journal = j-TUGboat, volume = "10", number = "2", pages = "150--153", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB10-2-153, author = "Malcolm Clark", title = "{International Standards and {\TeX}}", journal = j-TUGboat, volume = "10", number = "2", pages = "153--156", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB10-2-156, author = "Bart Childs", title = "{Teaching {\TeX}}", journal = j-TUGboat, volume = "10", number = "2", pages = "156--163", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Spivak:TB10-2-164, author = "Michael Spivak and Michael Ballantyne and Yoke Lee", title = "{HI-{\TeX} cutting \& pasting}", journal = j-TUGboat, volume = "10", number = "2", pages = "164--165", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Tobin:TB10-2-166, author = "Georgia K. M. Tobin", title = "Another dingbat idea", journal = j-TUGboat, volume = "10", number = "2", pages = "166--169", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rubinstein:TB10-2-170, author = "Zalman Rubinstein", title = "{Chess printing via {\MF} and {\TeX}}", journal = j-TUGboat, volume = "10", number = "2", pages = "170--172", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB10-2-173, author = "Don Hosek", title = "{Guidelines for creating portable {\MF} code}", journal = j-TUGboat, volume = "10", number = "2", pages = "173--176", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Andrews:TB10-2-177, author = "Phil Andrews", title = "{Integration of {\TeX} and graphics at the Pittsburgh Supercomputing Center}", journal = j-TUGboat, volume = "10", number = "2", pages = "177--178", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wilcox:TB10-2-179, author = "Patricia Wilcox", title = "{{\eightrm METAPLOT}: Machine-independent line graphics for {\TeX}}", journal = j-TUGboat, volume = "10", number = "2", pages = "179--187", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB10-2-188, author = "Don Hosek", title = "{{\TeX} output devices}", journal = j-TUGboat, volume = "10", number = "2", pages = "188--188", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Reid:TB10-2-188, author = "Tom Reid and Don Hosek", title = "{Report from the {\tt DVI} driver standards committee}", journal = j-TUGboat, volume = "10", number = "2", pages = "188--191", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB10-2-192, author = "Don Hosek", title = "{Announcing (belatedly) \TeXMaG}", journal = j-TUGboat, volume = "10", number = "2", pages = "192--192", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB10-2-193, author = "Malcolm Clark", title = "{{\TeX}line: A newsletter of the {\TeX} community}", journal = j-TUGboat, volume = "10", number = "2", pages = "193--194", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Abbott:TB10-2-194, author = "Peter Abbott", title = "{{UK\TeX} and the Aston archive}", journal = j-TUGboat, volume = "10", number = "2", pages = "194--195", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nieland:TB10-2-195, author = "M. Edward Nieland", title = "{The DECUS {\TeX} collection}", journal = j-TUGboat, volume = "10", number = "2", pages = "195--196", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{DeCorte:TB10-2-196, author = "Michael DeCorte", title = "{The Clarkson archive server\Dash Update as of 1 May 1989}", journal = j-TUGboat, volume = "10", number = "2", pages = "196--201", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB10-2-201, author = "Bart Childs", title = "{Data General site report}", journal = j-TUGboat, volume = "10", number = "2", pages = "201--201", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Crawford:TB10-2-201, author = "John Crawford", title = "Prime 50 series site report", journal = j-TUGboat, volume = "10", number = "2", pages = "201--201", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Radel:TB10-2-202, author = "Jon Radel", title = "{``Free'' {\TeX} software for IBM PCs}", journal = j-TUGboat, volume = "10", number = "2", pages = "202--202", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Trevorrow:TB10-2-202, author = "Andrew Trevorrow", title = "{Public domain {\TeX} for the Mac}", journal = j-TUGboat, volume = "10", number = "2", pages = "202--203", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bechtolsheim:TB10-2-203, author = "Stephan v. Bechtolsheim", title = "{{\tt\bs csname} and {\tt\bs string}}", journal = j-TUGboat, volume = "10", number = "2", pages = "203--206", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Salomon:TB10-2-207, author = "David Salomon", title = "{DDA methods in {\TeX}}", journal = j-TUGboat, volume = "10", number = "2", pages = "207--216", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Vogel:TB10-2-217, author = "Brother Eric Vogel", title = "{Printing Vietnamese characters by adding diacritical marks}", journal = j-TUGboat, volume = "10", number = "2", pages = "217--221", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB10-2-222, author = "Frank Mittelbach and Rainer Sch{\"o}pf", title = "{A new font selection scheme for {\TeX} macro packages\Dash the basic macros}", journal = j-TUGboat, volume = "10", number = "2", pages = "222--238", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nagy:TB10-2-239, author = "Dezs\H o Nagy", title = "{A bar chart in {\LaTeX}}", journal = j-TUGboat, volume = "10", number = "2", pages = "239--240", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Partl:TB10-2-241, author = "Hubert Partl", title = "{Producing on-line information files with {\LaTeX}}", journal = j-TUGboat, volume = "10", number = "2", pages = "241--244", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB10-2-245, author = "Frank Mittelbach", title = "{The {\tt doc}--option}", journal = j-TUGboat, volume = "10", number = "2", pages = "245--273", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kelly:TB10-2-274, author = "B. Hamilton Kelly", title = "{The {\tt autodoc}--option}", journal = j-TUGboat, volume = "10", number = "2", pages = "274--284", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-2-285, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "10", number = "2", pages = "285--286", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-2-287, author = "Anonymous", title = "{Nordic {\TeX} meeting, 12 June 1989, Royal Institute of Technology, Stockholm}", journal = j-TUGboat, volume = "10", number = "2", pages = "287--287", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-2-287-2, author = "Anonymous", title = "{{\LaTeX} course book in Dutch}", journal = j-TUGboat, volume = "10", number = "2", pages = "287--287", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lammarsch:TB10-2-287, author = "Joachim Lammarsch", title = "{DANTE\Dash Deutschsprachige Anwendervereinigung {\TeX}}", journal = j-TUGboat, volume = "10", number = "2", pages = "287--288", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Osborne:TB10-2-288, author = "David Osborne", title = "{Notes on first meeting of UK {\TeX} Users' Group, 15 March 1989}", journal = j-TUGboat, volume = "10", number = "2", pages = "288--289", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB10-2-289, author = "Barbara Beeton", title = "Production notes", journal = j-TUGboat, volume = "10", number = "2", pages = "289--289", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-2-290, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "10", number = "2", pages = "290--290", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-2-M, author = "Anonymous", title = "{TUG Membership List Supplement}", journal = j-TUGboat, volume = "10", number = "2", pages = "M-1--M-11", month = jul, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-3-309, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "10", number = "3", pages = "309--310", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB10-3-311, author = "Bart Childs", title = "{From the President}", journal = j-TUGboat, volume = "10", number = "3", pages = "311--312", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB10-3-312, author = "Nelson H. F. Beebe", title = "{Message from the new President}", journal = j-TUGboat, volume = "10", number = "3", pages = "312--314", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB10-3-314, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "10", number = "3", pages = "314--316", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB10-3-316, author = "Victor Eijkhout and Nico Poppelier", title = "{The first Dutch {\TeX} days}", journal = j-TUGboat, volume = "10", number = "3", pages = "316--318", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB10-3-319, author = "Bart Childs", title = "{Answers to the {\TeX}tests}", journal = j-TUGboat, volume = "10", number = "3", pages = "319--323", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Technites:TB10-3-324, author = "Technites", title = "Crossword", journal = j-TUGboat, volume = "10", number = "3", pages = "324--324", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB10-3-325, author = "Donald E. Knuth", title = "{The new versions of {\TeX} and {\MF}}", journal = j-TUGboat, volume = "10", number = "3", pages = "325--328", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thull:TB10-3-328, author = "Klaus Thull", title = "{PubliC {\MF} available}", journal = j-TUGboat, volume = "10", number = "3", pages = "328--328", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bechtolsheim:TB10-3-329, author = "Stephan von Bechtolsheim", title = "{A {\tt .dvi} file processing program}", journal = j-TUGboat, volume = "10", number = "3", pages = "329--332", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Vulis:TB10-3-332, author = "Dimitri Vulis", title = "{Notes on Russian {\TeX}}", journal = j-TUGboat, volume = "10", number = "3", pages = "332--336", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB10-3-336, author = "Barbara Beeton", title = "Hyphenation exception log", journal = j-TUGboat, volume = "10", number = "3", pages = "336--341", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-3-342, author = "Anonymous", title = "{Erratum: Typesetting Concrete Mathematics, {\TUB} Vol. 10, No. 1}", journal = j-TUGboat, volume = "10", number = "3", pages = "342--342", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB10-3-342, author = "Yannis Haralambous", title = "{{\TeX} and latin alphabet languages}", journal = j-TUGboat, volume = "10", number = "3", pages = "342--345", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Parker:TB10-3-346, author = "Mike Parker", title = "{Fonts and {\PS}}", journal = j-TUGboat, volume = "10", number = "3", pages = "346--350", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Larsson:TB10-3-351, author = "Jan Eric Larsson", title = "{A chess font for {\TeX}}", journal = j-TUGboat, volume = "10", number = "3", pages = "351--351", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Andulem:TB10-3-352, author = "Abass Andulem", title = "{The road to Ethiopic {\TeX}}", journal = j-TUGboat, volume = "10", number = "3", pages = "352--354", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB10-3-354, author = "Yannis Haralambous and Klaus Thull", title = "{Typesetting modern Greek with 128 character codes}", journal = j-TUGboat, volume = "10", number = "3", pages = "354--359", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-3-359, author = "Anonymous", title = "{Erratum: Chess printing via {\MF} and {\TeX}, {\TUB} Vol. 10, No. 2}", journal = j-TUGboat, volume = "10", number = "3", pages = "359--359", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hailperin:TB10-3-360, author = "Max Hailperin", title = "{Users' guide to {\tt LaTeX-help}}", journal = j-TUGboat, volume = "10", number = "3", pages = "360--360", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kean:TB10-3-360, author = "Yin Kean", title = "{{\TeX-Ed}}", journal = j-TUGboat, volume = "10", number = "3", pages = "360--361", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{DeCorte:TB10-3-362, author = "Michael DeCorte", title = "{The Clarkson archive server\Dash Update as of 22 September 1989}", journal = j-TUGboat, volume = "10", number = "3", pages = "362--365", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-3-365, author = "Anonymous", title = "{Coming in January from the {\AMS}}", journal = j-TUGboat, volume = "10", number = "3", pages = "365--366", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lammarsch:TB10-3-366, author = "Joachim Lammarsch", title = "{TEX EURO}", journal = j-TUGboat, volume = "10", number = "3", pages = "366--367", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gaulle:TB10-3-367, author = "Bernard Gaulle", title = "{GUTenberg will distribute {ML\TeX}}", journal = j-TUGboat, volume = "10", number = "3", pages = "367--367", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Glendown:TB10-3-367, author = "Garry Glendown", title = "{A {\TeX} mailbox in Germany}", journal = j-TUGboat, volume = "10", number = "3", pages = "367--368", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lindner:TB10-3-368, author = "Stephan Lindner and \rlap{Lutz Birkhahn}", title = "{Towards a complete and comfortable {\TeX} System}", journal = j-TUGboat, volume = "10", number = "3", pages = "368--372", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kellerman:TB10-3-372, author = "David Kellerman", title = "{VMS site coordinator's report}", journal = j-TUGboat, volume = "10", number = "3", pages = "372--372", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB10-3-373, author = "Alan Hoenig and Mitch Pfeffer", title = "{{\TeX}-{\PS} output on non-{\PS} devices}", journal = j-TUGboat, volume = "10", number = "3", pages = "373--375", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Glendown:TB10-3-376, author = "Garry Glendown", title = "{Controlling Amiga{\TeX} from CygnusEd}", journal = j-TUGboat, volume = "10", number = "3", pages = "376--377", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Whitney:TB10-3-378, author = "Ron Whitney and Barbara Beeton", title = "{{\TUB} authors' guide}", journal = j-TUGboat, volume = "10", number = "3", pages = "378--385", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Glendown:TB10-3-385, author = "Garry Glendown", title = "{Round boxes for {\plain} {\TeX}}", journal = j-TUGboat, volume = "10", number = "3", pages = "385--387", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rubinstein:TB10-3-387, author = "Zalman Rubinstein", title = "Printing annotated chess literature in natural notation", journal = j-TUGboat, volume = "10", number = "3", pages = "387--390", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Durst:TB10-3-390, author = "Lincoln Durst", title = "Bibliographic citations; or variations on the old shell game", journal = j-TUGboat, volume = "10", number = "3", pages = "390--394", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Salomon:TB10-3-394, author = "David Salomon", title = "Macros for indexing and table-of-contents preparation", journal = j-TUGboat, volume = "10", number = "3", pages = "394--400", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bush:TB10-3-400, author = "Terry Bush", title = "{Scribe-to-\TeX}", journal = j-TUGboat, volume = "10", number = "3", pages = "400--400", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB10-3-400, author = "Frank Mittelbach and Rainer Sch{\"o}pf", title = "{Towards {\LaTeX} 2.10}", journal = j-TUGboat, volume = "10", number = "3", pages = "400--401", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Braams:TB10-3-401, author = "Johannes Braams and Victor Eijkhout and Nico Poppelier", title = "{The development of national {\LaTeX} styles}", journal = j-TUGboat, volume = "10", number = "3", pages = "401--406", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB10-3-407, author = "Frank Mittelbach", title = "An environment for multicolumn output", journal = j-TUGboat, volume = "10", number = "3", pages = "407--415", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB10-3-416, author = "Frank Mittelbach", title = "{An extension of the {\LaTeX} theorem environment}", journal = j-TUGboat, volume = "10", number = "3", pages = "416--426", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Dietsche:TB10-3-427, author = "Luzia Dietsche", title = "{Deutsche Kurzfassungen der \TUB-Artikel}", journal = j-TUGboat, volume = "10", number = "3", pages = "427--428", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-3-429, author = "Anonymous", title = "{Calendar and Calls for Papers}", journal = j-TUGboat, volume = "10", number = "3", pages = "429--431", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-3-432, author = "Anonymous", title = "{Programs of the recent TUG and Euro{\TeX} Conferences}", journal = j-TUGboat, volume = "10", number = "3", pages = "432--436", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB10-3-437, author = "Barbara Beeton", title = "Production notes", journal = j-TUGboat, volume = "10", number = "3", pages = "437--437", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-3-438, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "10", number = "3", pages = "438--440", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ness:TB10-3-440, author = "David Ness", title = "Treasurer's report", journal = j-TUGboat, volume = "10", number = "3", pages = "440--443", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-3-444, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "10", number = "3", pages = "444--444", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-3-461, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "10", number = "3", pages = "461--461", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-3-M, author = "Anonymous", title = "{TUG Membership List Supplement}", journal = j-TUGboat, volume = "10", number = "3", pages = "M-1--M-12", month = nov, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB10-4-465, author = "Christina Thiele", title = "Editor's introduction", journal = j-TUGboat, volume = "10", number = "4", pages = "465--465", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Henderson:TB10-4-467, author = "Doug Henderson", title = "{Introduction to {\MF}}", journal = j-TUGboat, volume = "10", number = "4", pages = "467--479", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Billawala:TB10-4-481, author = "Neenie Billawala", title = "{Opening Pandora's box}", journal = j-TUGboat, volume = "10", number = "4", pages = "481--489", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB10-4-491, author = "Alan Hoenig", title = "{Fractal images with {\TeX}}", journal = j-TUGboat, volume = "10", number = "4", pages = "491--498", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB10-4-499, author = "Don Hosek", title = "{Design of Oriental characters with {\MF}}", journal = j-TUGboat, volume = "10", number = "4", pages = "499--502", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Batzinger:TB10-4-503, author = "Bob Batzinger", title = "{Thai languages and {\MF}}", journal = j-TUGboat, volume = "10", number = "4", pages = "503--503", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hobby:TB10-4-505, author = "John D. Hobby", title = "{A {\MF}-like system with {\PS} output}", journal = j-TUGboat, volume = "10", number = "4", pages = "505--512", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Youngen:TB10-4-513, author = "R. E. Youngen and W. B. Woolf and D. C. Latterner", title = "{Migration from Computer Modern fonts to Times fonts}", journal = j-TUGboat, volume = "10", number = "4", pages = "513--519", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Conrad:TB10-4-521, author = "Arvin C. Conrad", title = "{Fine typesetting with {\TeX} using native Autologic fonts}", journal = j-TUGboat, volume = "10", number = "4", pages = "521--528", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB10-4-529, author = "Donald E. Knuth", title = "{The errors of {\TeX}}", journal = j-TUGboat, volume = "10", number = "4", pages = "529--531", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Doob:TB10-4-533, author = "Michael Doob", title = "Of the computer scientist, by the computer scientist, for the computer scientist", journal = j-TUGboat, volume = "10", number = "4", pages = "533--539", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hamilton:TB10-4-541, author = "Hope Hamilton", title = "{Mastering {\TeX} with templates}", journal = j-TUGboat, volume = "10", number = "4", pages = "541--548", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoover:TB10-4-549, author = "Anita Z. Hoover", title = "{Using WordPerfect 5.0 to create {\TeX} and {\LaTeX} documents}", journal = j-TUGboat, volume = "10", number = "4", pages = "549--559", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kubek:TB10-4-561, author = "Robin L. Kubek", title = "{{\TeX} for the word processing operator}", journal = j-TUGboat, volume = "10", number = "4", pages = "561--566", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rattey-Hicks:TB10-4-567, author = "Jo Ann Rattey-Hicks", title = "{{\TeX} and its versatility in office production}", journal = j-TUGboat, volume = "10", number = "4", pages = "567--577", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Diaz:TB10-4-579, author = "Max D{\'{\i}}az", title = "{{\TeX} in M\'exico}", journal = j-TUGboat, volume = "10", number = "4", pages = "579--593", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haskell:TB10-4-595, author = "James Haskell and Wally Deschene and Alan Stolleis", title = "{{\TeX} for 30,000}", journal = j-TUGboat, volume = "10", number = "4", pages = "595--602", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wittbecker:TB10-4-603, author = "Alan E. Wittbecker", title = "{{\TeX} enslaved}", journal = j-TUGboat, volume = "10", number = "4", pages = "603--606", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Renfrow:TB10-4-607, author = "J. T. Renfrow", title = "{Methodologies for preparing and integrating {\PS} graphics}", journal = j-TUGboat, volume = "10", number = "4", pages = "607--626", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Olejniczak-Burkert:TB10-4-627, author = "Rolf Olejniczak-Burkert", title = "{{\it texpic\/}\Dash Design and implementation of a picture graphics language in {\TeX}\ \`a la {\it pic\/}}", journal = j-TUGboat, volume = "10", number = "4", pages = "627--637", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Latterner:TB10-4-639, author = "D. C. Latterner and W. B. Woolf", title = "{{\TeX} at {\it Mathematical Reviews\/}}", journal = j-TUGboat, volume = "10", number = "4", pages = "639--654", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pind:TB10-4-655, author = "J{\"o}rgen L. Pind", title = "{Lexicography with {\TeX}}", journal = j-TUGboat, volume = "10", number = "4", pages = "655--665", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB10-4-667, author = "Malcolm Clark", title = "{Olde worlde {\TeX}}", journal = j-TUGboat, volume = "10", number = "4", pages = "667--674", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Abbott:TB10-4-675, author = "Peter Abbott", title = "{The {UK\TeX} archive at the University of Aston}", journal = j-TUGboat, volume = "10", number = "4", pages = "675--680", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB10-4-681, author = "Frank Mittelbach and Rainer Sch{\"o}pf", title = "{With {\LaTeX} into the nineties}", journal = j-TUGboat, volume = "10", number = "4", pages = "681--690", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Greene:TB10-4-691, author = "Andrew Marc Greene", title = "{{\TeX}reation\Dash playing games with {\TeX}'s mind}", journal = j-TUGboat, volume = "10", number = "4", pages = "691--705", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Cheswick:TB10-4-707, author = "Bill Cheswick", title = "{A permuted index for {\TeX} and {\LaTeX}}", journal = j-TUGboat, volume = "10", number = "4", pages = "707--713", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sydoriak:TB10-4-715, author = "Steve Sydoriak", title = "{{\LaTeX} memos and letters}", journal = j-TUGboat, volume = "10", number = "4", pages = "715--726", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Benson:TB10-4-727, author = "Gary Benson and Debi Erpenbeck and Janet Holmes", title = "Inserts in a multiple-column format", journal = j-TUGboat, volume = "10", number = "4", pages = "727--742", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{McClure:TB10-4-743, author = "Mary McClure", title = "{{\TeX} Macros for COBOL syntax diagrams}", journal = j-TUGboat, volume = "10", number = "4", pages = "743--750", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Riley:TB10-4-751, author = "Don L. Riley and Brad L. Halverson", title = "{Creating an efficient and workable PC interface for {\TeX}}", journal = j-TUGboat, volume = "10", number = "4", pages = "751--759", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-4-760, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "10", number = "4", pages = "760--760", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-4-761, author = "Anonymous", title = "{List of participants at the Stanford meeting (August 20--23, 1989)}", journal = j-TUGboat, volume = "10", number = "4", pages = "761--765", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB10-4-765, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "10", number = "4", pages = "765--765", month = dec, year = "1989", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-1-3, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "11", number = "1", pages = "3--4", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB11-1-5, author = "Nelson H. F. Beebe", title = "{From the President}", journal = j-TUGboat, volume = "11", number = "1", pages = "5--6", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB11-1-6, author = "Bart Childs", title = "{From the past President and Annual Meeting host}", journal = j-TUGboat, volume = "11", number = "1", pages = "6--7", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-1-7, author = "Anonymous", title = "{Donald E. Knuth Scholarship}", journal = j-TUGboat, volume = "11", number = "1", pages = "7--8", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ferguson:TB11-1-8, author = "Michael Ferguson", title = "{Coordination of non-English use of {\TeX}}", journal = j-TUGboat, volume = "11", number = "1", pages = "8--9", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Breitenlohner:TB11-1-9, author = "Peter Breitenlohner", title = "{Using {\TeX} 3 in a multilingual environment\Dash Some ideas}", journal = j-TUGboat, volume = "11", number = "1", pages = "9--12", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-1-56, author = "Anonymous", title = "{Solution to crossword of {\TUB} vol. 10, no. 3}", journal = j-TUGboat, volume = "11", number = "1", pages = "56--56", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-1-12, author = "Anonymous", title = "{Erratum: The new versions of {\TeX} and {\MF}, {\TUB} vol. 10, no. 3}", journal = j-TUGboat, volume = "11", number = "1", pages = "12--12", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB11-1-13, author = "Donald Knuth", title = "{Virtual Fonts: More Fun for Grand Wizards}", journal = j-TUGboat, volume = "11", number = "1", pages = "13--23", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kuiken:TB11-1-24, author = "Gerard Kuiken", title = "{Additional Hyphenation Patterns}", journal = j-TUGboat, volume = "11", number = "1", pages = "24--25", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB11-1-26, author = "Yannis Haralambous", title = "{Typesetting modern Greek\Dash An update}", journal = j-TUGboat, volume = "11", number = "1", pages = "26--26", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pickrell:TB11-1-26, author = "Lee S. Pickrell", title = "{Combining graphics with {\TeX} on IBM PC-compatible systems and LaserJet printers}", journal = j-TUGboat, volume = "11", number = "1", pages = "26--31", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB11-1-32, author = "Barbara Beeton and Ron Whitney", title = "{Summary of resources available to {\TeX} users}", journal = j-TUGboat, volume = "11", number = "1", pages = "32--36", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB11-1-36, author = "Barbara Beeton", title = "{A proto-TUG bibliography}", journal = j-TUGboat, volume = "11", number = "1", pages = "36--37", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{DeCorte:TB11-1-38, author = "Michael DeCorte", title = "{The Clarkson archive server\Dash Update as of 26 January 1990}", journal = j-TUGboat, volume = "11", number = "1", pages = "38--45", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Guenther:TB11-1-45, author = "Dean Guenther", title = "{IBM VM/CMS site report}", journal = j-TUGboat, volume = "11", number = "1", pages = "45--45", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Brouard:TB11-1-46, author = "Nicolas Brouard", title = "{Une version compl\`ete de {\TeX} du domaine public pour compatibles PC : les ``deux disquettes GUT''}", journal = j-TUGboat, volume = "11", number = "1", pages = "46--51", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB11-1-51, author = "Victor Eijkhout", title = "{Unusual Paragraph Shapes}", journal = j-TUGboat, volume = "11", number = "1", pages = "51--53", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Guenther:TB11-1-54, author = "Dean Guenther", title = "{{\sl{\TeX}T1} goes public domain}", journal = j-TUGboat, volume = "11", number = "1", pages = "54--56", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wichura:TB11-1-57, author = "Michael J. Wichura", title = "Showing-off math macros", journal = j-TUGboat, volume = "11", number = "1", pages = "57--61", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Breitenlohner:TB11-1-62, author = "Peter Breitenlohner", title = "{How to avoid writing long records to {\TeX}'s {\tt\bs write} streams}", journal = j-TUGboat, volume = "11", number = "1", pages = "62--62", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Durst:TB11-1-62, author = "Lincoln Durst", title = "Forward references and the ultimate dirty trick", journal = j-TUGboat, volume = "11", number = "1", pages = "62--68", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Salomon:TB11-1-69, author = "David Salomon", title = "{Output routines: Examples and techniques. Part I: Introduction and examples}", journal = j-TUGboat, volume = "11", number = "1", pages = "69--85", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Damrau:TB11-1-85, author = "Jackie Damrau", title = "{The {\LaTeX} column}", journal = j-TUGboat, volume = "11", number = "1", pages = "85--86", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laan:TB11-1-86, author = "C. G. van der Laan", title = "{Announcing two reports: SGML-{\LaTeX} and Journal style guidelines}", journal = j-TUGboat, volume = "11", number = "1", pages = "86--86", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Schrod:TB11-1-87, author = "Joachim Schrod", title = "{International {\LaTeX} is ready to use}", journal = j-TUGboat, volume = "11", number = "1", pages = "87--90", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB11-1-91, author = "Frank Mittelbach and Rainer Sch{\"o}pf", title = "{The new font family selection\Dash User interface to standard {\LaTeX}}", journal = j-TUGboat, volume = "11", number = "1", pages = "91--97", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Poppelier:TB11-1-98, author = "Nico Poppelier and Johannes Braams", title = "{A style option to adapt the standard {\LaTeX} document styles to A4 paper}", journal = j-TUGboat, volume = "11", number = "1", pages = "98--103", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kelly:TB11-1-103, author = "B Hamilton Kelly", title = "Some macros to draw crosswords", journal = j-TUGboat, volume = "11", number = "1", pages = "103--119", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Dietsche:TB11-1-120, author = "Luzia Dietsche", title = "{Deutsche Kurzfassungen der {\TUB}-Artikel}", journal = j-TUGboat, volume = "11", number = "1", pages = "120--122", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Partl:TB11-1-122, author = "Hubert Partl", title = "{{\TeX}, TUG, and Eastern Europe}", journal = j-TUGboat, volume = "11", number = "1", pages = "122--123", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-1-123, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "11", number = "1", pages = "123--124", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-1-125, author = "Anonymous", title = "{GUTenberg'90, 15--17 May 1990, Toulouse, France}", journal = j-TUGboat, volume = "11", number = "1", pages = "125--126", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-1-126, author = "Anonymous", title = "{Call for papers: SGML \& {\TeX} conference, 31 August 1990, Groningen, The Netherlands}", journal = j-TUGboat, volume = "11", number = "1", pages = "126--126", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB11-1-127, author = "Barbara Beeton", title = "Production notes", journal = j-TUGboat, volume = "11", number = "1", pages = "127--127", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-1-128, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "11", number = "1", pages = "128--130", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-1-131, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "11", number = "1", pages = "131--131", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-1-148, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "11", number = "1", pages = "148--148", month = apr, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-2-151, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "11", number = "2", pages = "151--152", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB11-2-153, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "11", number = "2", pages = "153--153", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Barnhart:TB11-2-154, author = "Elizabeth Barnhart", title = "{{\TeX} in the production environment\Dash questionnaire responses}", journal = j-TUGboat, volume = "11", number = "2", pages = "154--164", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB11-2-165, author = "Donald Knuth", title = "{Exercises for {\sl\TeX\/{\rm:} The Program}}", journal = j-TUGboat, volume = "11", number = "2", pages = "165--170", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB11-2-171, author = "Nelson Beebe", title = "Character set encoding", journal = j-TUGboat, volume = "11", number = "2", pages = "171--175", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bien:TB11-2-175, author = "Janusz S. Bie{\'n}", title = "On standards for computer modern font extensions", journal = j-TUGboat, volume = "11", number = "2", pages = "175--183", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB11-2-183, author = "Alan Hoenig", title = "Circular reasoning: typesetting on a circle, and related issues", journal = j-TUGboat, volume = "11", number = "2", pages = "183--190", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berendt:TB11-2-190, author = "Gerhard Berendt", title = "{On the implementation of graphics into {\TeX}}", journal = j-TUGboat, volume = "11", number = "2", pages = "190--194", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Schwer:TB11-2-194, author = "Len Schwer", title = "{Including Macintosh graphics in {\LaTeX} documents}", journal = j-TUGboat, volume = "11", number = "2", pages = "194--200", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pickrell:TB11-2-200, author = "Lee S. Pickrell", title = "{Combining graphics with {\TeX} on PC systems with laser printers, part II}", journal = j-TUGboat, volume = "11", number = "2", pages = "200--206", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB11-2-206, author = "Bart Childs", title = "{Data General site report}", journal = j-TUGboat, volume = "11", number = "2", pages = "206--206", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lammarsch:TB11-2-207, author = "Joachim Lammarsch", title = "{IBM VM/CMS site report}", journal = j-TUGboat, volume = "11", number = "2", pages = "207--207", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB11-2-207, author = "Barbara Beeton", title = "{Resources available to {\TeX} users}", journal = j-TUGboat, volume = "11", number = "2", pages = "207--208", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB11-2-208, author = "Barbara Beeton", title = "{A proto-TUG bibliography: Installment two}", journal = j-TUGboat, volume = "11", number = "2", pages = "208--209", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB11-2-210, author = "Victor Eijkhout", title = "{New books on {\TeX}}", journal = j-TUGboat, volume = "11", number = "2", pages = "210--211", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nieland:TB11-2-211, author = "Ted Nieland", title = "{DECUS {\TeX} collection\Dash submissions wanted}", journal = j-TUGboat, volume = "11", number = "2", pages = "211--211", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB11-2-212, author = "Alan Hoenig", title = "{{\tt Just plain} Q\&A}", journal = j-TUGboat, volume = "11", number = "2", pages = "212--212", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Salomon:TB11-2-212, author = "David Salomon", title = "{Output routines: Examples and techniques. Part II: \otr{} techniques}", journal = j-TUGboat, volume = "11", number = "2", pages = "212--236", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jeffrey:TB11-2-237, author = "Alan Jeffrey", title = "{Lists in {\TeX}'s mouth}", journal = j-TUGboat, volume = "11", number = "2", pages = "237--245", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB11-2-245, author = "Philip Taylor", title = "A nestable verbatim mode", journal = j-TUGboat, volume = "11", number = "2", pages = "245--249", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ha:TB11-2-250, author = "Khanh Ha", title = "{Easy Table}", journal = j-TUGboat, volume = "11", number = "2", pages = "250--264", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laan:TB11-2-265, author = "Kees van der Laan", title = "{Typesetting bridge via {\TeX}}", journal = j-TUGboat, volume = "11", number = "2", pages = "265--276", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Damrau:TB11-2-276, author = "Jackie Damrau", title = "{The {\LaTeX} column}", journal = j-TUGboat, volume = "11", number = "2", pages = "276--278", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Yap:TB11-2-279, author = "Ken Yap", title = "{Making 35mm colour slides with {\SliTeX}}", journal = j-TUGboat, volume = "11", number = "2", pages = "279--280", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Denk:TB11-2-280, author = "Georg Denk", title = "{An easy way to make slides with {\LaTeX}}", journal = j-TUGboat, volume = "11", number = "2", pages = "280--283", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Schopf:TB11-2-284, author = "Rainer Sch{\"o}pf", title = "{A new implementation of the {\LaTeX} {\tt verbatim} and {\tt verbatim*} environments}", journal = j-TUGboat, volume = "11", number = "2", pages = "284--296", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB11-2-297, author = "Frank Mittelbach and Rainer Sch{\"o}pf", title = "{Reprint: The new font family selection\Dash User interface to standard {\LaTeX}}", journal = j-TUGboat, volume = "11", number = "2", pages = "297--305", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Dietsche:TB11-2-305, author = "Luzia Dietsche", title = "{Deutsche Kurzfassungen der {\TUB}-Artikel}", journal = j-TUGboat, volume = "11", number = "2", pages = "305--307", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-2-308, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "11", number = "2", pages = "308--309", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB11-2-309, author = "Barbara Beeton", title = "Production notes", journal = j-TUGboat, volume = "11", number = "2", pages = "309--310", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-2-310, author = "Anonymous", title = "{New publications and software available through TUG}", journal = j-TUGboat, volume = "11", number = "2", pages = "310--313", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-2-313, author = "Anonymous", title = "{Russians visit TUG headquarters}", journal = j-TUGboat, volume = "11", number = "2", pages = "313--313", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-2-314, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "11", number = "2", pages = "314--316", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-2-317, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "11", number = "2", pages = "317--317", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-2-M, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "11", number = "2", pages = "M-10--M-10", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-2-M-2, author = "Anonymous", title = "{TUG Membership List Supplement}", journal = j-TUGboat, volume = "11", number = "2", pages = "M-1--M-9", month = jun, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB11-3-335, author = "Nelson Beebe", title = "President's introduction", journal = j-TUGboat, volume = "11", number = "3", pages = "335--336", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB11-3-337, author = "Frank Mittelbach", title = "{E-{\TeX}: Guidelines for future {\TeX}}", journal = j-TUGboat, volume = "11", number = "3", pages = "337--345", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hamano:TB11-3-346, author = "Hisato Hamano", title = "{Vertical typesetting with {\TeX}}", journal = j-TUGboat, volume = "11", number = "3", pages = "346--352", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Miyabe:TB11-3-353, author = "Yoshiyuki Miyabe and H. Ohta and K. Tsuga", title = "{Structured document preparation system {\sl AutoLayouter}}", journal = j-TUGboat, volume = "11", number = "3", pages = "353--358", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hendrickson:TB11-3-359, author = "Amy Hendrickson", title = "{Getting {\TeX}nical: Insights into {\TeX} macro writing techniques}", journal = j-TUGboat, volume = "11", number = "3", pages = "359--370", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fulling:TB11-3-371, author = "Stephen Alex Fulling", title = "{Where's the Greek shift key?}", journal = j-TUGboat, volume = "11", number = "3", pages = "371--372", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beck:TB11-3-373, author = "Micah Beck and A. Siegel", title = "{TransFig: Portable graphics for {\TeX}}", journal = j-TUGboat, volume = "11", number = "3", pages = "373--380", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Greene:TB11-3-381, author = "Andrew Marc Greene", title = "{{\BaSiX: An interpreter written in {\TeX}}}", journal = j-TUGboat, volume = "11", number = "3", pages = "381--392", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gibson:TB11-3-393, author = "Helen Gibson", title = "{A noddy's guide to high quality {\TeX} production}", journal = j-TUGboat, volume = "11", number = "3", pages = "393--402", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Adams:TB11-3-403, author = "Robert A. Adams", title = "{Problems on the {\TeX}/{\PS}/graphics interface}", journal = j-TUGboat, volume = "11", number = "3", pages = "403--408", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bechtolsheim:TB11-3-409, author = "Stephan von Bechtolsheim", title = "{{\TeX} in practice: Comments on a 4-volume, 1400-page series on {\TeX}}", journal = j-TUGboat, volume = "11", number = "3", pages = "409--412", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{LaFrenz:TB11-3-413, author = "Mimi L. LaFrenz", title = "{Textbook publishing\Dash 1990 and beyond}", journal = j-TUGboat, volume = "11", number = "3", pages = "413--416", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ness:TB11-3-417, author = "David Ness", title = "{Diagnosing {\TeX} errors with a preprocessor}", journal = j-TUGboat, volume = "11", number = "3", pages = "417--420", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Williams:TB11-3-421, author = "Linda Williams and Linda Hall", title = "{Increased efficiency using advanced EDT editing features}", journal = j-TUGboat, volume = "11", number = "3", pages = "421--424", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Martin:TB11-3-425, author = "Charles R. Martin", title = "{{\TeX} for {\TeX}nical typists}", journal = j-TUGboat, volume = "11", number = "3", pages = "425--428", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Vulis:TB11-3-429, author = "Michael Vulis", title = "{V{\TeX} enhancements to the {\TeX} language}", journal = j-TUGboat, volume = "11", number = "3", pages = "429--434", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB11-3-435, author = "Alan Hoenig", title = "{A constructed D\"urer alphabet}", journal = j-TUGboat, volume = "11", number = "3", pages = "435--438", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Dietsche:TB11-3-439, author = "Luzia Dietsche", title = "{Deutsche Kurzfassungen der {\TUB}-Artikel}", journal = j-TUGboat, volume = "11", number = "3", pages = "439--442", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB11-3-442, author = "Nelson Beebe", title = "{{\TeX} 3.0 and {\MF} 2.0}", journal = j-TUGboat, volume = "11", number = "3", pages = "442--443", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB11-3-444, author = "Frank Mittelbach", title = "{{\LaTeX} 2.10}", journal = j-TUGboat, volume = "11", number = "3", pages = "444--444", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lammarsch:TB11-3-444, author = "Joachim Lammarsch", title = "{{\smc dante}, Deutschsprachige Anwendervereinigung {\TeX} e.V.}", journal = j-TUGboat, volume = "11", number = "3", pages = "444--444", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gaulle:TB11-3-445, author = "Bernard Gaulle", title = "{News from and about GUTenberg}", journal = j-TUGboat, volume = "11", number = "3", pages = "445--445", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laan:TB11-3-446, author = "Kees van der Laan", title = "{NTG's second year}", journal = j-TUGboat, volume = "11", number = "3", pages = "446--447", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Graham:TB11-3-447, author = "Roswitha Graham and Jan Michael Rynning", title = "{Report from the Nordic {\TeX} Users Group}", journal = j-TUGboat, volume = "11", number = "3", pages = "447--448", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB11-3-448, author = "Malcolm Clark", title = "{{\TeX} in the UK}", journal = j-TUGboat, volume = "11", number = "3", pages = "448--449", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB11-3-450, author = "Malcolm Clark", title = "{{\TeX} in Europe}", journal = j-TUGboat, volume = "11", number = "3", pages = "450--451", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Platt:TB11-3-451, author = "Craig Platt", title = "{MVS site report}", journal = j-TUGboat, volume = "11", number = "3", pages = "451--451", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kellerman:TB11-3-451, author = "David Kellerman", title = "{VMS site report}", journal = j-TUGboat, volume = "11", number = "3", pages = "451--452", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB11-3-452, author = "Bart Childs", title = "{Data General site report}", journal = j-TUGboat, volume = "11", number = "3", pages = "452--452", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Crawford:TB11-3-453, author = "John Crawford", title = "Prime 50 series site report", journal = j-TUGboat, volume = "11", number = "3", pages = "453--453", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB11-3-453, author = "Pierre A. MacKay", title = "{{\UNIX{\TeX} site report}}", journal = j-TUGboat, volume = "11", number = "3", pages = "453--454", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lammarsch:TB11-3-454, author = "Joachim Lammarsch", title = "{VM/CMS site report}", journal = j-TUGboat, volume = "11", number = "3", pages = "454--455", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB11-3-455, author = "Barbara Beeton", title = "Report from the question and answer session", journal = j-TUGboat, volume = "11", number = "3", pages = "455--458", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-3-458, author = "Anonymous", title = "{List of participants at the Texas A\&M meeting (June 17--20, 1990)}", journal = j-TUGboat, volume = "11", number = "3", pages = "458--461", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-3-462, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "11", number = "3", pages = "462--462", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-3-463, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "11", number = "3", pages = "463--465", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-3-466, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "11", number = "3", pages = "466--466", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-3-479, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "11", number = "3", pages = "479--479", month = sep, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-4-483, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "11", number = "4", pages = "483--484", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB11-4-485, author = "Nelson H. F. Beebe", title = "{From the President}", journal = j-TUGboat, volume = "11", number = "4", pages = "485--487", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-4-488, author = "Anonymous", title = "{The future of {\TeX}}", journal = j-TUGboat, volume = "11", number = "4", pages = "488--488", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB11-4-489, author = "Donald E. Knuth", title = "{The future of {\TeX} and {\MF}}", journal = j-TUGboat, volume = "11", number = "4", pages = "489--489", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB11-4-490, author = "Nelson H. F. Beebe", title = "{Comments on the future of {\TeX} and {\MF}}", journal = j-TUGboat, volume = "11", number = "4", pages = "490--494", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB11-4-494, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "11", number = "4", pages = "494--496", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB11-4-497, author = "Donald Knuth", title = "{Arthur Lee Samuel, 1901--1990}", journal = j-TUGboat, volume = "11", number = "4", pages = "497--498", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB11-4-499, author = "Donald Knuth", title = "{Answers to Exercises for {\sl\TeX\/{\rm:} The Program}}", journal = j-TUGboat, volume = "11", number = "4", pages = "499--511", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fox:TB11-4-511, author = "Jim Fox", title = "Webless literate programming", journal = j-TUGboat, volume = "11", number = "4", pages = "511--513", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Stokes:TB11-4-513, author = "Harold T. Stokes", title = "{A {\TeX} previewer for ``slow'' terminals}", journal = j-TUGboat, volume = "11", number = "4", pages = "513--514", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ferguson:TB11-4-514, author = "Michael Ferguson", title = "Report on multilingual activities", journal = j-TUGboat, volume = "11", number = "4", pages = "514--515", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-4-516, author = "Anonymous", title = "{Extended \TeX{} font encoding scheme\Dash Latin, Cork, September 12, 1990}", journal = j-TUGboat, volume = "11", number = "4", pages = "516--516", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berry:TB11-4-517, author = "Karl Berry", title = "Filenames for fonts", journal = j-TUGboat, volume = "11", number = "4", pages = "517--520", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB11-4-520, author = "Yannis Haralambous", title = "{Arabic, Persian and Ottoman {\TeX} for Mac and PC}", journal = j-TUGboat, volume = "11", number = "4", pages = "520--524", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Yanai:TB11-4-525, author = "Shimon Yanai and Daniel M. Berry", title = "{Environment for translating {\MF} to {\PS}}", journal = j-TUGboat, volume = "11", number = "4", pages = "525--541", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Tofsted:TB11-4-542, author = "David Tofsted", title = "An improved chess font", journal = j-TUGboat, volume = "11", number = "4", pages = "542--544", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB11-4-545, author = "Don Hosek", title = "{{\TeX} output devices (with charts)}", journal = j-TUGboat, volume = "11", number = "4", pages = "545--569", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB11-4-570, author = "Don Hosek", title = "{Report from the {\tt DVI} Driver Standards Committee}", journal = j-TUGboat, volume = "11", number = "4", pages = "570--570", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB11-4-570, author = "Barbara Beeton", title = "Updates from all over", journal = j-TUGboat, volume = "11", number = "4", pages = "570--571", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berry:TB11-4-571, author = "Karl Berry", title = "{\tt eplain}", journal = j-TUGboat, volume = "11", number = "4", pages = "571--572", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB11-4-572, author = "Victor Eijkhout", title = "{New Books on {\TeX}}", journal = j-TUGboat, volume = "11", number = "4", pages = "572--573", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB11-4-573, author = "Barbara Beeton", title = "{A proto-TUG bibliography: Installment three}", journal = j-TUGboat, volume = "11", number = "4", pages = "573--576", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nieland:TB11-4-576, author = "Ted Nieland", title = "{The 1990 DECUS {\TeX} collection}", journal = j-TUGboat, volume = "11", number = "4", pages = "576--577", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB11-4-578, author = "Don Hosek", title = "{The {\tt IVRITEX} Mailing List}", journal = j-TUGboat, volume = "11", number = "4", pages = "578--578", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lammarsch:TB11-4-578, author = "Joachim Lammarsch", title = "{IBM VM/CMS site report}", journal = j-TUGboat, volume = "11", number = "4", pages = "578--578", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Neuwirth:TB11-4-578, author = "Erich Neuwirth", title = "{{\TeX} implementations for IBM PCs: comparative timings}", journal = j-TUGboat, volume = "11", number = "4", pages = "578--580", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Durst:TB11-4-580, author = "Lincoln Durst", title = "Long-winded endnotes and exercises with hints or solutions", journal = j-TUGboat, volume = "11", number = "4", pages = "580--588", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Salomon:TB11-4-588, author = "David Salomon", title = "{Output routines: Examples and techniques. Part III: insertions}", journal = j-TUGboat, volume = "11", number = "4", pages = "588--605", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB11-4-605, author = "Victor Eijkhout", title = "A new editor", journal = j-TUGboat, volume = "11", number = "4", pages = "605--605", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Downes:TB11-4-605, author = "Michael Downes", title = "{Line breaking in {\tt\bs unhbox}ed text}", journal = j-TUGboat, volume = "11", number = "4", pages = "605--612", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Maus:TB11-4-612, author = "Sonja Maus", title = "{Looking ahead for a \}", journal = j-TUGboat, volume = "11", number = "4", pages = "612--613", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB11-4-613, author = "Victor Eijkhout", title = "An indentation scheme", journal = j-TUGboat, volume = "11", number = "4", pages = "613--616", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB11-4-616, author = "Victor Eijkhout", title = "{A {\tt\char`\\parskip} scheme}", journal = j-TUGboat, volume = "11", number = "4", pages = "616--619", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Whitney:TB11-4-620, author = "Ron Whitney", title = "{Sanitizing control sequences under {\tt\bs write}}", journal = j-TUGboat, volume = "11", number = "4", pages = "620--622", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lavagnino:TB11-4-623, author = "John Lavagnino and Dominik Wujastyk", title = "{An Overview of {\tt EDMAC:} A {\plain} {\TeX} format for critical editions}", journal = j-TUGboat, volume = "11", number = "4", pages = "623--643", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Damrau:TB11-4-644, author = "Jackie Damrau", title = "{The {\LaTeX} column}", journal = j-TUGboat, volume = "11", number = "4", pages = "644--644", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Geyer-Schulz:TB11-4-644, author = "Andreas Geyer-Schulz and Josef Matulka and Gustaf Neumann", title = "{A {\LaTeX} document style option for typesetting APL}", journal = j-TUGboat, volume = "11", number = "4", pages = "644--651", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Love:TB11-4-652, author = "David Love", title = "{Experiments in {\TeX}nicolour\Dash A {\SliTeX} sub-style for Colour Printers}", journal = j-TUGboat, volume = "11", number = "4", pages = "652--656", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB11-4-657, author = "Frank Mittelbach", title = "Footnotes in a multi-column layout", journal = j-TUGboat, volume = "11", number = "4", pages = "657--662", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Dietsche:TB11-4-663, author = "Luzia Dietsche", title = "{Deutsche Kurzfassungen der {\TUB}-Artikel}", journal = j-TUGboat, volume = "11", number = "4", pages = "663--665", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Akwai:TB11-4-665, author = "Peter C. Akwai", title = "{{\TeX} drug bug}", journal = j-TUGboat, volume = "11", number = "4", pages = "665--665", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-4-666, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "11", number = "4", pages = "666--666", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-4-cover-3, author = "Anonymous", title = "{Call for papers: {\bf TUG Twelfth Annual Meeting}, suburban Boston, 15--18 July 1991}", journal = j-TUGboat, volume = "11", number = "4", pages = "Cover 3", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-4-667, author = "Anonymous", title = "{Call for papers: Tenth meeting, DANTE, Vienna, 20--22 February 1991}", journal = j-TUGboat, volume = "11", number = "4", pages = "667--667", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-4-667-2, author = "Anonymous", title = "{{\TeX}91/Congres GUTenberg'91, Paris, 23--26 September 1991}", journal = j-TUGboat, volume = "11", number = "4", pages = "667--667", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-4-668, author = "Anonymous", title = "{Call for papers: RIDT 91 (raster imaging/digital typography), Boston, \rlap{15--16 October 1991}}", journal = j-TUGboat, volume = "11", number = "4", pages = "668--668", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-4-669, author = "Anonymous", title = "{TUG Bylaws}", journal = j-TUGboat, volume = "11", number = "4", pages = "669--676", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-4-676, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "11", number = "4", pages = "676--678", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB11-4-679, author = "Barbara Beeton", title = "Production notes", journal = j-TUGboat, volume = "11", number = "4", pages = "679--679", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-4-679, author = "Anonymous", title = "Coming next issue", journal = j-TUGboat, volume = "11", number = "4", pages = "679--679", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-4-681, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "11", number = "4", pages = "681--681", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB11-4-693, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "11", number = "4", pages = "693--693", month = nov, year = "1990", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB12-1-3, author = "Barbara Beeton", title = "Introduction", journal = j-TUGboat, volume = "12", number = "1", pages = "3--4", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Neuwirth:TB12-1-5, author = "Erich Neuwirth", title = "{Quick and dirty databases with nice output: AWK and {\TeX}}", journal = j-TUGboat, volume = "12", number = "1", pages = "5--7", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Detig:TB12-1-8, author = "Christine Detig", title = "{{\TeX} \& hypertext\Dash The future of electronic publishing?}", journal = j-TUGboat, volume = "12", number = "1", pages = "8--12", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carr:TB12-1-13, author = "Les Carr and Sebastian Rahtz and Wendy Hall", title = "{Experiments with {\TeX} and hyperactivity}", journal = j-TUGboat, volume = "12", number = "1", pages = "13--20", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Braams:TB12-1-21, author = "Johannes Braams and Victor Eijkhout and Nico Poppelier", title = "{The Dutch national {\LaTeX} effort}", journal = j-TUGboat, volume = "12", number = "1", pages = "21--24", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB12-1-25, author = "Adrian Clark", title = "{Documenting a {\TeX} archive}", journal = j-TUGboat, volume = "12", number = "1", pages = "25--27", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kneser:TB12-1-28, author = "Thomas Kneser", title = "{{\LaTeX}-paragraphs floating around figures}", journal = j-TUGboat, volume = "12", number = "1", pages = "28--30", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB12-1-31, author = "Victor Eijkhout", title = "The document style designer as a separate entity", journal = j-TUGboat, volume = "12", number = "1", pages = "31--34", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB12-1-35, author = "Philip Taylor", title = "{Improving the {\ae}sthetics of mixed-font documents}", journal = j-TUGboat, volume = "12", number = "1", pages = "35--44", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wittbecker:TB12-1-45, author = "Alan Wittbecker", title = "{{\archiTeX}, a preliminary international page pattern maker}", journal = j-TUGboat, volume = "12", number = "1", pages = "45--57", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sowa:TB12-1-58, author = "Friedhelm Sowa", title = "{Integration of graphics into {\TeX}}", journal = j-TUGboat, volume = "12", number = "1", pages = "58--63", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Murphy:TB12-1-64, author = "Timothy Murphy", title = "{PostScript, QuickDraw, {\TeX}}", journal = j-TUGboat, volume = "12", number = "1", pages = "64--65", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Maclenan:TB12-1-66, author = "M. P. Maclenan and G. M. Burns", title = "An approach to drawing circuit diagrams for text books", journal = j-TUGboat, volume = "12", number = "1", pages = "66--69", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nicole:TB12-1-70, author = "Olivier Nicole", title = "{A graphic driver to interface statistical software S and {\PiCTeX}}", journal = j-TUGboat, volume = "12", number = "1", pages = "70--73", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB12-1-74, author = "Frank Mittelbach and Rainer Sch{\"o}pf", title = "{Towards {\LaTeX} 3.0}", journal = j-TUGboat, volume = "12", number = "1", pages = "74--79", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kelly:TB12-1-80, author = "Brian Hamilton Kelly", title = "{Public-domain, documented implementations of {\TeX} and {\MF} for VAX/VMS}", journal = j-TUGboat, volume = "12", number = "1", pages = "80--83", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB12-1-84, author = "Malcolm Clark", title = "Post congress tristesse", journal = j-TUGboat, volume = "12", number = "1", pages = "84--89", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laan:TB12-1-90, author = "Kees van der Laan", title = "{SGML (, {\TeX} and \dots)}", journal = j-TUGboat, volume = "12", number = "1", pages = "90--104", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Poppelier:TB12-1-105, author = "N. A. F. M. Poppelier", title = "{SGML and {\TeX} in scientific publishing}", journal = j-TUGboat, volume = "12", number = "1", pages = "105--109", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hendrickson:TB12-1-110, author = "Amy Hendrickson", title = "{Getting {\TeX}nical: Insights into {\TeX} macro writing techniques}", journal = j-TUGboat, volume = "12", number = "1", pages = "110--110", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wonneberger:TB12-1-111, author = "Reinhard Wonneberger and Frank Mittelbach", title = "{{\BibTeX{} reconsidered}}", journal = j-TUGboat, volume = "12", number = "1", pages = "111--124", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB12-1-125, author = "Alan Hoenig", title = "{Labelling figures in {\TeX} documents}", journal = j-TUGboat, volume = "12", number = "1", pages = "125--128", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB12-1-129, author = "Yannis Haralambous", title = "{Typesetting old german: Fraktur, Schwabacher, Gotisch and initials}", journal = j-TUGboat, volume = "12", number = "1", pages = "129--138", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Searcoid:TB12-1-139, author = "M/iche/al /O Searc/oid", title = "{The Irish alphabet}", journal = j-TUGboat, volume = "12", number = "1", pages = "139--148", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Guenther:TB12-1-149, author = "Dean Guenther and Janene Winter", title = "An international phonetic alphabet", journal = j-TUGboat, volume = "12", number = "1", pages = "149--156", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB12-1-157, author = "Adrian F. Clark", title = "{Practical halftoning with {\TeX}}", journal = j-TUGboat, volume = "12", number = "1", pages = "157--165", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Barden:TB12-1-166, author = "Angela Barden", title = "{Some {\TeX} manuals}", journal = j-TUGboat, volume = "12", number = "1", pages = "166--170", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Neuwirth:TB12-1-171, author = "Konrad Neuwirth", title = "{{\TeX} in schools: Just say no}", journal = j-TUGboat, volume = "12", number = "1", pages = "171--174", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-1-175, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "12", number = "1", pages = "175--175", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-1-176, author = "Anonymous", title = "Nominations", journal = j-TUGboat, volume = "12", number = "1", pages = "176--176", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Vesely:TB12-1-176, author = "Ji\v{r}{\'\i} Vesel{\'y}", title = "{{\TeX} in Czechoslovakia}", journal = j-TUGboat, volume = "12", number = "1", pages = "176--177", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sullivan:TB12-1-177, author = "Wayne Sullivan", title = "{sb{\TeX} and sbMF}", journal = j-TUGboat, volume = "12", number = "1", pages = "177--177", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Raman:TB12-1-178, author = "T. V. Raman", title = "{{\TeX} TALK}", journal = j-TUGboat, volume = "12", number = "1", pages = "178--178", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-1-179, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "12", number = "1", pages = "179--181", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-1-182, author = "Anonymous", title = "{TUG membership applications}", journal = j-TUGboat, volume = "12", number = "1", pages = "182--183", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-1-200, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "12", number = "1", pages = "200--200", month = mar, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-203, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "12", number = "2", pages = "203--204", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB12-2-205, author = "Nelson H. F. Beebe", title = "President's introduction", journal = j-TUGboat, volume = "12", number = "2", pages = "205--208", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB12-2-208, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "12", number = "2", pages = "208--211", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Obermiller:TB12-2-211, author = "Walter Obermiller", title = "{{\TeX} in Germany}", journal = j-TUGboat, volume = "12", number = "2", pages = "211--212", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Malyshev:TB12-2-212, author = "Basil Malyshev and Alexander Samarin and Dimitri Vulis", title = "{Russian {\TeX}}", journal = j-TUGboat, volume = "12", number = "2", pages = "212--214", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Krstev:TB12-2-215, author = "Cvetana Krstev", title = "{Serbo-Croatian hyphenation: a {\TeX} point of view}", journal = j-TUGboat, volume = "12", number = "2", pages = "215--223", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB12-2-224, author = "Yannis Haralambous", title = "{On {\TeX} and Greek\dots}", journal = j-TUGboat, volume = "12", number = "2", pages = "224--226", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jalbert:TB12-2-227, author = "Fran\c{c}ois Jalbert", title = "{{\JemTeX} 2.00 available for Japanese}", journal = j-TUGboat, volume = "12", number = "2", pages = "227--227", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jeffrey:TB12-2-227, author = "Alan Jeffrey", title = "{Labelled diagrams in {\MF}}", journal = j-TUGboat, volume = "12", number = "2", pages = "227--229", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fossmeier:TB12-2-229, author = "Reinhard F{\"o}{\ss}meier", title = "{X bitmaps in {\TeX}}", journal = j-TUGboat, volume = "12", number = "2", pages = "229--232", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Schrod:TB12-2-232, author = "Joachim Schrod", title = "{Report on the {\tt DVI} Driver Standard}", journal = j-TUGboat, volume = "12", number = "2", pages = "232--233", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berry:TB12-2-233, author = "Karl Berry and Kathy Hargreaves", title = "{Review of {\it 3\thinspace:\thinspace16 Bible Texts Illuminated}}", journal = j-TUGboat, volume = "12", number = "2", pages = "233--235", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Poppelier:TB12-2-235, author = "Nico Poppelier", title = "{Review of {\it {\LaTeX} for engineers and scientists}}", journal = j-TUGboat, volume = "12", number = "2", pages = "235--236", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB12-2-237, author = "Alan Hoenig", title = "{{\tt Just plain} Q\&A}", journal = j-TUGboat, volume = "12", number = "2", pages = "237--238", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Salomon:TB12-2-238, author = "David Salomon", title = "{The {\tt\bs if}, {\tt\bs fx} and {\tt\bs ifcat} comparisons}", journal = j-TUGboat, volume = "12", number = "2", pages = "238--247", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Durst:TB12-2-248, author = "Lincoln Durst", title = "{Some tools for making indexes: Part I}", journal = j-TUGboat, volume = "12", number = "2", pages = "248--252", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB12-2-253, author = "Victor Eijkhout", title = "{The structure of the {\TeX} processor}", journal = j-TUGboat, volume = "12", number = "2", pages = "253--256", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB12-2-257, author = "Barbara Beeton", title = "Initiation rites", journal = j-TUGboat, volume = "12", number = "2", pages = "257--258", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB12-2-259, author = "Frank Mittelbach", title = "{Solution to the riddle from \tubissue 11(4)}", journal = j-TUGboat, volume = "12", number = "2", pages = "259--259", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB12-2-260, author = "Victor Eijkhout", title = "The bag of tricks", journal = j-TUGboat, volume = "12", number = "2", pages = "260--260", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Smet:TB12-2-261, author = "Don De Smet", title = "{{\TeX} macros for producing multiple-choice tests}", journal = j-TUGboat, volume = "12", number = "2", pages = "261--269", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hefferon:TB12-2-270, author = "Jim Hefferon", title = "{Getting {\tt\bs answer}s in {\TeX}}", journal = j-TUGboat, volume = "12", number = "2", pages = "270--272", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB12-2-272, author = "Victor Eijkhout", title = "{Oral {\TeX}}", journal = j-TUGboat, volume = "12", number = "2", pages = "272--276", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Maus:TB12-2-277, author = "Sonja Maus", title = "An expansion power lemma", journal = j-TUGboat, volume = "12", number = "2", pages = "277--277", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Russell:TB12-2-278, author = "George Russell", title = "{Generating {\tt\bs n} asterisks}", journal = j-TUGboat, volume = "12", number = "2", pages = "278--279", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Vulis:TB12-2-279, author = "Dimitri Vulis", title = "{{\TeX} and envelopes}", journal = j-TUGboat, volume = "12", number = "2", pages = "279--284", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Damrau:TB12-2-284, author = "Jackie Damrau", title = "{The {\LaTeX} column}", journal = j-TUGboat, volume = "12", number = "2", pages = "284--285", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Poppelier:TB12-2-285, author = "Nico Poppelier", title = "{A comment on The {\LaTeX} column}", journal = j-TUGboat, volume = "12", number = "2", pages = "285--286", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Swonk:TB12-2-286, author = "Glenn L. Swonk", title = "{{\LaTeX} tree drawer}", journal = j-TUGboat, volume = "12", number = "2", pages = "286--289", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thimbleby:TB12-2-290, author = "Harold Thimbleby", title = "{``See also'' indexing with Makeindex}", journal = j-TUGboat, volume = "12", number = "2", pages = "290--290", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Braams:TB12-2-291, author = "Johannes Braams", title = "{Babel, a multilingual style-option system for use with {\LaTeX}'s standard document styles}", journal = j-TUGboat, volume = "12", number = "2", pages = "291--301", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lankford:TB12-2-302, author = "Jeff Lankford", title = "{Public domain SGML tools wanted}", journal = j-TUGboat, volume = "12", number = "2", pages = "302--302", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Vesely:TB12-2-302, author = "Ji\v{r}\'{\i} Vesel{\'y}", title = "{Reporting {\TeX}'s hyphenations}", journal = j-TUGboat, volume = "12", number = "2", pages = "302--302", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Abrahams:TB12-2-302, author = "Paul Abrahams", title = "{Response to Victor Eijkhout}", journal = j-TUGboat, volume = "12", number = "2", pages = "302--303", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB12-2-303, author = "Victor Eijkhout", title = "{Response to Paul Abrahams}", journal = j-TUGboat, volume = "12", number = "2", pages = "303--303", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Cuoco:TB12-2-303, author = "Al Cuoco", title = "{{\TeX} in schools: Why not?}", journal = j-TUGboat, volume = "12", number = "2", pages = "303--304", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-305, author = "Anonymous", title = "{Cahiers GUTenberg \#7 and \#8}", journal = j-TUGboat, volume = "12", number = "2", pages = "305--306", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-307, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "12", number = "2", pages = "307--308", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-309, author = "Anonymous", title = "{{\TeX}91/Congres GUTenberg'91, Paris, 23--26 September 1991}", journal = j-TUGboat, volume = "12", number = "2", pages = "309--310", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-311, author = "Anonymous", title = "{Desktop Publishing in astronomy and space sciences, Strasbourg, 1--3 October 1991}", journal = j-TUGboat, volume = "12", number = "2", pages = "311--311", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-311-2, author = "Anonymous", title = "{Call for papers: EP92: International conference on electronic publishing, document manipulation, and typography, Lausanne, Switzerland, 7--10 April 1992}", journal = j-TUGboat, volume = "12", number = "2", pages = "311--312", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB12-2-313, author = "Donald Knuth", title = "{Fixed-point glue setting: Errata}", journal = j-TUGboat, volume = "12", number = "2", pages = "313--313", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB12-2-313, author = "Barbara Beeton", title = "Production notes", journal = j-TUGboat, volume = "12", number = "2", pages = "313--314", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-315, author = "Anonymous", title = "Coming next issue", journal = j-TUGboat, volume = "12", number = "2", pages = "315--315", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-315-2, author = "Anonymous", title = "{TUG financial statements}", journal = j-TUGboat, volume = "12", number = "2", pages = "315--318", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-319, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "12", number = "2", pages = "319--320", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-321, author = "Anonymous", title = "{TUG Bylaws}", journal = j-TUGboat, volume = "12", number = "2", pages = "321--328", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-331, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "12", number = "2", pages = "331--331", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-348, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "12", number = "2", pages = "348--348", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-3, author = "Anonymous", title = "{TUG Membership List}", journal = j-TUGboat, volume = "12", number = "2", pages = "3--117", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-118, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "12", number = "2", pages = "118", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-119, author = "Anonymous", title = "General comments", journal = j-TUGboat, volume = "12", number = "2", pages = "119--119", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-119-2, author = "Anonymous", title = "{\TUG}", journal = j-TUGboat, volume = "12", number = "2", pages = "119--120", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-120, author = "Anonymous", title = "{{\CSTUG{}}}", journal = j-TUGboat, volume = "12", number = "2", pages = "120--120", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-120-2, author = "Anonymous", title = "{CyrTUG}", journal = j-TUGboat, volume = "12", number = "2", pages = "120--120", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-120-3, author = "Anonymous", title = "{DANTE e.V.}", journal = j-TUGboat, volume = "12", number = "2", pages = "120--121", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-121, author = "Anonymous", title = "{GUTenberg}", journal = j-TUGboat, volume = "12", number = "2", pages = "121--122", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-122, author = "Anonymous", title = "{ITALIC}", journal = j-TUGboat, volume = "12", number = "2", pages = "122--122", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-122-2, author = "Anonymous", title = "{JTUG\Dash TUG Japan}", journal = j-TUGboat, volume = "12", number = "2", pages = "122--122", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-123, author = "Anonymous", title = "{Nordic {\TeX} Group}", journal = j-TUGboat, volume = "12", number = "2", pages = "123--123", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-123-2, author = "Anonymous", title = "{NTG}", journal = j-TUGboat, volume = "12", number = "2", pages = "123--124", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-124, author = "Anonymous", title = "{\uktug}", journal = j-TUGboat, volume = "12", number = "2", pages = "124--124", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-125, author = "Anonymous", title = "{YUNUS -- Turkish {\TeX} users}", journal = j-TUGboat, volume = "12", number = "2", pages = "125--125", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-125-2, author = "Anonymous", title = "Other international contacts", journal = j-TUGboat, volume = "12", number = "2", pages = "125--125", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Barnhart:TB12-2-126, author = "Elizabeth M. Barnhart", title = "{{\TeX} L.U.G.s}", journal = j-TUGboat, volume = "12", number = "2", pages = "126", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-127, author = "Anonymous", title = "Generic format", journal = j-TUGboat, volume = "12", number = "2", pages = "127--128", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-128, author = "Anonymous", title = "{Acorn Archimedes}", journal = j-TUGboat, volume = "12", number = "2", pages = "128--128", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-128-2, author = "Anonymous", title = "Amiga", journal = j-TUGboat, volume = "12", number = "2", pages = "128--128", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-128-3, author = "Anonymous", title = "{Atari ST}", journal = j-TUGboat, volume = "12", number = "2", pages = "128--128", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-128-4, author = "Anonymous", title = "{Data General}", journal = j-TUGboat, volume = "12", number = "2", pages = "128--128", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-128-5, author = "Anonymous", title = "{DEC-20\Dash TOPS-20}", journal = j-TUGboat, volume = "12", number = "2", pages = "128--128", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-128-6, author = "Anonymous", title = "{IBM mainframes\dash MVS}", journal = j-TUGboat, volume = "12", number = "2", pages = "128--129", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-129, author = "Anonymous", title = "{IBM mainframes\dash VM/CMS}", journal = j-TUGboat, volume = "12", number = "2", pages = "129--129", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-129-2, author = "Anonymous", title = "{IBM PC and compatibles\Dash MS-DOS}", journal = j-TUGboat, volume = "12", number = "2", pages = "129--129", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-130, author = "Anonymous", title = "Macintosh", journal = j-TUGboat, volume = "12", number = "2", pages = "130--130", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-130-2, author = "Anonymous", title = "Prime", journal = j-TUGboat, volume = "12", number = "2", pages = "130--130", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-130-3, author = "Anonymous", title = "Unix", journal = j-TUGboat, volume = "12", number = "2", pages = "130--130", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-130-4, author = "Anonymous", title = "{{\VAX/VMS}}", journal = j-TUGboat, volume = "12", number = "2", pages = "130--131", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nieland:TB12-2-131, author = "Ted Nieland", title = "{Announcing the DECUS {\TeX} Collection, February 1991}", journal = j-TUGboat, volume = "12", number = "2", pages = "131--132", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB12-2-133, author = "Don Hosek", title = "{{\TeX} Output Devices}", journal = j-TUGboat, volume = "12", number = "2", pages = "133--158", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-159, author = "Anonymous", title = "General observations", journal = j-TUGboat, volume = "12", number = "2", pages = "159--159", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-160, author = "Anonymous", title = "{Aston \ ({\tt uk.ac.tex})}", journal = j-TUGboat, volume = "12", number = "2", pages = "160--160", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-160-2, author = "Anonymous", title = "{Clarkson ({\LaTeX} styles)}", journal = j-TUGboat, volume = "12", number = "2", pages = "160--160", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-160-3, author = "Anonymous", title = "{{{\tt e-math.ams.com}}}", journal = j-TUGboat, volume = "12", number = "2", pages = "160--160", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-161, author = "Anonymous", title = "{Heidelberg \ ({\tt DHDURZ1.Bitnet})}", journal = j-TUGboat, volume = "12", number = "2", pages = "161--161", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-161-2, author = "Anonymous", title = "{{{\tt june.cs.washington.edu}}}", journal = j-TUGboat, volume = "12", number = "2", pages = "161--161", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-161-3, author = "Anonymous", title = "{{{\tt labrea.stanford.edu}}}", journal = j-TUGboat, volume = "12", number = "2", pages = "161--161", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-161-4, author = "Anonymous", title = "{Nijmegen \ ({\tt HEARN.Bitnet})}", journal = j-TUGboat, volume = "12", number = "2", pages = "161--161", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-162, author = "Anonymous", title = "{SHSU \ ({\tt niord.shsu.edu}\,, {\tt SHSU.bitnet})}", journal = j-TUGboat, volume = "12", number = "2", pages = "162--162", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-162-2, author = "Anonymous", title = "{SPAN/DECnet (Italy)}", journal = j-TUGboat, volume = "12", number = "2", pages = "162--162", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-162-3, author = "Anonymous", title = "{Stuttgart \ ({\tt rusmv1.rus.uni-stuttgart.de})}", journal = j-TUGboat, volume = "12", number = "2", pages = "162--163", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-163, author = "Anonymous", title = "{Utrecht \ ({\tt archive.cs.ruu.nl})}", journal = j-TUGboat, volume = "12", number = "2", pages = "163--163", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-163-2, author = "Anonymous", title = "{{{\tt ymir.claremont.edu}}}", journal = j-TUGboat, volume = "12", number = "2", pages = "163--163", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-163-3, author = "Anonymous", title = "{Other archives containing {\TeX} material}", journal = j-TUGboat, volume = "12", number = "2", pages = "163--164", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Damerell:TB12-2-164, author = "R. M. Damerell", title = "{Fetching files from the Aston archive}", journal = j-TUGboat, volume = "12", number = "2", pages = "164--169", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-170, author = "Anonymous", title = "General comments", journal = j-TUGboat, volume = "12", number = "2", pages = "170--171", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-171, author = "Anonymous", title = "{{{\tt comp.text.tex}}}", journal = j-TUGboat, volume = "12", number = "2", pages = "171--171", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-171-2, author = "Anonymous", title = "{{{\tt ELLHNIKA}} (Greek)}", journal = j-TUGboat, volume = "12", number = "2", pages = "171--171", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-172, author = "Anonymous", title = "{{{\tt GUT}} (GUTenberg)}", journal = j-TUGboat, volume = "12", number = "2", pages = "172--172", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-172-2, author = "Anonymous", title = "{{{\tt INFO-TeX}}}", journal = j-TUGboat, volume = "12", number = "2", pages = "172--172", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-172-3, author = "Anonymous", title = "{{{\tt IVRITEX}} (Semitic languages)}", journal = j-TUGboat, volume = "12", number = "2", pages = "172--172", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-172-4, author = "Anonymous", title = "{{{\tt LaTeX-help}}}", journal = j-TUGboat, volume = "12", number = "2", pages = "172--172", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-173, author = "Anonymous", title = "{{{\tt RUSTeX-L}} (Russian)}", journal = j-TUGboat, volume = "12", number = "2", pages = "173--173", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-173-2, author = "Anonymous", title = "{{{\tt TeX-D-L}} (German)}", journal = j-TUGboat, volume = "12", number = "2", pages = "173--173", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-173-3, author = "Anonymous", title = "{{{\tt TeX-EURO}}}", journal = j-TUGboat, volume = "12", number = "2", pages = "173--173", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-173-4, author = "Anonymous", title = "{{{\tt TeXhax}}}", journal = j-TUGboat, volume = "12", number = "2", pages = "173--174", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-174, author = "Anonymous", title = "{{\TeX}MaG}", journal = j-TUGboat, volume = "12", number = "2", pages = "174--174", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-174-2, author = "Anonymous", title = "{{{\tt TeX-Pubs}}}", journal = j-TUGboat, volume = "12", number = "2", pages = "174--174", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-174-3, author = "Anonymous", title = "{{{\tt UKTeX}}}", journal = j-TUGboat, volume = "12", number = "2", pages = "174--175", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-175, author = "Anonymous", title = "{{{\tt TeX-NL}} (Dutch)}", journal = j-TUGboat, volume = "12", number = "2", pages = "175--175", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-175-2, author = "Anonymous", title = "{{{\tt YUNUS}} (Turkish)}", journal = j-TUGboat, volume = "12", number = "2", pages = "175--175", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-176, author = "Anonymous", title = "{Publications about {\TeX} and typography}", journal = j-TUGboat, volume = "12", number = "2", pages = "176--183", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-2-183, author = "Anonymous", title = "{Publications prepared with {\TeX}}", journal = j-TUGboat, volume = "12", number = "2", pages = "183--194", month = jun, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB12-3-351, author = "Nelson H. F. Beebe", title = "President's introduction", journal = j-TUGboat, volume = "12", number = "3/4", pages = "351--352", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Poppelier:TB12-3-353, author = "Nico A. F. M. Poppelier", title = "Two sides of the fence", journal = j-TUGboat, volume = "12", number = "3/4", pages = "353--358", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Petrycki:TB12-3-359, author = "Laurie J. Petrycki", title = "{Comparing {\TeX} and traditional typesetting for the composition of a textbook}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "359--366", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bartlett:TB12-3-367, author = "Frederick H. Bartlett", title = "{Contra-{\LaTeX}, or what really works in the publishing world}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "367--371", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ratner:TB12-3-372, author = "Howard Ratner and Kenneth Dreyhaupt", title = "{{\TeX} in a book production department}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "372--376", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Horn:TB12-3-377, author = "Berthold K. P. Horn", title = "{{\tt dvi} and eps: The ideal author-to-publisher interface?}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "377--381", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Weiss:TB12-3-382, author = "Neil A. Weiss", title = "{Producing a book using {\TeX}: How the process works}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "382--386", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rhoads:TB12-3-387, author = "Samuel E. Rhoads", title = "{Authors new to {\TeX} publish a textbook with a publisher new to {\TeX}}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "387--392", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Brosnan:TB12-3-393, author = "Colleen Brosnan", title = "{The ``Five Cs'': A guide to successful publication using {\TeX}}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "393--396", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoover:TB12-3-397, author = "Anita Z. Hoover", title = "{{\LaTeX}/{\TeX} user: A typist, or typesetter?}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "397--400", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lavagnino:TB12-3-401, author = "John Lavagnino", title = "Simultaneous electronic and paper publication", journal = j-TUGboat, volume = "12", number = "3/4", pages = "401--405", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gaffey:TB12-3-406, author = "Robert W. \Mc Gaf\/fey", title = "{SGML versus/and {\TeX}}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "406--408", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Dobrowolski:TB12-3-409, author = "Andrew E. Dobrowolski", title = "{Typesetting SGML documents using {\TeX}}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "409--414", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sperberg-McQueen:TB12-3-415, author = "C. M. Sperberg-McQueen", title = "{Specifying document structure: Differences in {\LaTeX} and TEI markup}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "415--421", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kakiuchi:TB12-3-422, author = "Takashi Kakiuchi and Yuki Kusumi and Yoshiyuki Miyabe and Kazu Tsuga", title = "{A structured document preparation system\Dash {\sl Autolayouter version 2.0}\Dash an enhancement for handling multiple document types}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "422--429", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Williams:TB12-3-430, author = "Linda Williams", title = "Refining a process", journal = j-TUGboat, volume = "12", number = "3/4", pages = "430--433", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Semenzato:TB12-3-434, author = "Luigi Semenzato and Edward Wang", title = "A text processing language should be first a programming language", journal = j-TUGboat, volume = "12", number = "3/4", pages = "434--441", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Vulis:TB12-3-442, author = "Michael Vulis", title = "{Should {\TeX} be extended?}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "442--447", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-3-448, author = "Anonymous", title = "{TUG 1992 annual meeting, Portland, Oregon}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "448--448", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-3-449, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "12", number = "3/4", pages = "449--450", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-3-451, author = "Anonymous", title = "{TUG membership applications}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "451--452", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-3-453, author = "Anonymous", title = "{{\TeX} consultants}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "453--453", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-3-468, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "12", number = "3/4", pages = "468--468", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Horstmann:TB12-3-471, author = "Cay S. Horstmann", title = "{Automatic conversion from a scientific word processor to {\TeX}}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "471--478", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Arnon:TB12-3-479, author = "Dennis S. Arnon and Sandra A. Mamrak", title = "On the logical structure of mathematical notation", journal = j-TUGboat, volume = "12", number = "3/4", pages = "479--484", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laan:TB12-3-485, author = "Kees van der Laan", title = "{Math into BLUes}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "485--501", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Downes:TB12-3-502, author = "Michael J. Downes", title = "{Dialog with {\TeX}}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "502--509", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Damrau:TB12-3-510, author = "Jackie Damrau and Michael Wester", title = "Form letters with 3-across labels capability", journal = j-TUGboat, volume = "12", number = "3/4", pages = "510--516", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Roth:TB12-3-517, author = "Mark A. Roth", title = "{Typesetting forms with {\LaTeX}}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "517--522", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB12-3-523, author = "Peter Flynn", title = "{Developing a pop-up help facility for {\TeX} on PCs}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "523--527", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB12-3-528, author = "Malcolm Clark and Brian Hamilton Kelly and Niel Kempson", title = "{7 bits good, 8 bits bad {\sl or\/} ``The eight-bit blight''}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "528--533", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sowa:TB12-3-534, author = "Friedhelm Sowa", title = "{Bitmaps and halftones with {\ssf BM2FONT}}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "534--538", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB12-3-539, author = "Yannis Haralambous", title = "{{\TeX} and those other languages}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "539--548", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB12-3-549, author = "Don Hosek", title = "{Siamese {\TeX}: Joining dvi files at the hip and other novel applications of vf files}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "549--553", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB12-3-554, author = "Alan Hoenig", title = "{When {\TeX} and {\MF} talk: Typesetting on curved paths and other special effects}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "554--557", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-3-558, author = "Anonymous", title = "{Participants at TUG'91}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "558--561", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-3-562, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "12", number = "3/4", pages = "562--563", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-3-563, author = "Anonymous", title = "{The Donald E. Knuth Scholarship for 1992}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "563--564", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-3-564, author = "Anonymous", title = "{GUTenberg'92, Les Diablarets, Switzerland}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "564--565", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-3-570, author = "Anonymous", title = "{TUG 1992 annual meeting, Portland, Oregon}", journal = j-TUGboat, volume = "12", number = "3/4", pages = "570--570", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB12-3-588, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "12", number = "3/4", pages = "588--588", month = nov, year = "1991", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-1-3, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "13", number = "1", pages = "3--4", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB13-1-5, author = "Malcolm Clark", title = "Prez says", journal = j-TUGboat, volume = "13", number = "1", pages = "5--5", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB13-1-6, author = "Nelson H. F. Beebe", title = "President's introduction", journal = j-TUGboat, volume = "13", number = "1", pages = "6--10", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB13-1-10, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "13", number = "1", pages = "10--11", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-1-11, author = "Anonymous", title = "{Samuel B. Whidden, 1930--1991}", journal = j-TUGboat, volume = "13", number = "1", pages = "11--12", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Asher:TB13-1-13, author = "Graham Asher", title = "{Inside Type \& Set}", journal = j-TUGboat, volume = "13", number = "1", pages = "13--22", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beccari:TB13-1-23, author = "Claudio Beccari", title = "{Computer Aided Hyphenation for Italian and Modern Latin}", journal = j-TUGboat, volume = "13", number = "1", pages = "23--33", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rahtz:TB13-1-34, author = "Sebastian Rahtz", title = "Invisibility using virtual fonts", journal = j-TUGboat, volume = "13", number = "1", pages = "34--36", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thain:TB13-1-36, author = "Toby Thain", title = "{Packing {\MF}s into {\PS}}", journal = j-TUGboat, volume = "13", number = "1", pages = "36--38", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mylonas:TB13-1-39, author = "C. Mylonas and R. Whitney", title = "{Modern Greek with adjunct fonts}", journal = j-TUGboat, volume = "13", number = "1", pages = "39--50", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB13-1-51, author = "Frank Mittelbach", title = "{Comments on ``Filenames for Fonts'' ({\TUB} 11\#4)}", journal = j-TUGboat, volume = "13", number = "1", pages = "51--53", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Committee:TB13-1-54, author = "TUG {\sltt DVI} Driver Standards Committee", title = "{{\tt DVI} driver standard, level 0}", journal = j-TUGboat, volume = "13", number = "1", pages = "54--57", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB13-1-57, author = "Victor Eijkhout", title = "{New books on {\TeX}}", journal = j-TUGboat, volume = "13", number = "1", pages = "57--58", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Poppelier:TB13-1-58, author = "Nico Poppelier", title = "{New books on {\LaTeX}}", journal = j-TUGboat, volume = "13", number = "1", pages = "58--59", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB13-1-60, author = "Alan Hoenig", title = "{{\tt Just plain} Q\&A: Of partitioned matrices and doublespacing}", journal = j-TUGboat, volume = "13", number = "1", pages = "60--62", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Siebenmann:TB13-1-62, author = "L. Siebenmann", title = "{Elementary text processing and parsing in {\TeX} {\it--- the appreciation of tokens ---}}", journal = j-TUGboat, volume = "13", number = "1", pages = "62--73", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB13-1-74, author = "Victor Eijkhout", title = "The bag of tricks", journal = j-TUGboat, volume = "13", number = "1", pages = "74--74", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB13-1-75, author = "Victor Eijkhout", title = "{Erratum: Oral {\TeX}, \tubissue 12(2), pp.\ 272--276}", journal = j-TUGboat, volume = "13", number = "1", pages = "75--75", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fine:TB13-1-75, author = "Jonathan Fine", title = "{Some basic control macros for {\TeX}}", journal = j-TUGboat, volume = "13", number = "1", pages = "75--83", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB13-1-84, author = "Victor Eijkhout and Ron Sommeling", title = "Self-replicating macros", journal = j-TUGboat, volume = "13", number = "1", pages = "84--84", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Tutelaers:TB13-1-85, author = "Piet Tutelaers", title = "{A font and a style for typesetting chess using {\LaTeX} or {\TeX}}", journal = j-TUGboat, volume = "13", number = "1", pages = "85--90", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laan:TB13-1-91, author = "Kees van der Laan", title = "{Tower of Hanoi, revisited}", journal = j-TUGboat, volume = "13", number = "1", pages = "91--94", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Damrau:TB13-1-94, author = "Jackie Damrau", title = "{The {\LaTeX} column}", journal = j-TUGboat, volume = "13", number = "1", pages = "94--95", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thimbleby:TB13-1-95, author = "Harold Thimbleby", title = "{Erratum: ``See also'' indexing with Makeindex, \tubissue 12(2), p.\ 290}", journal = j-TUGboat, volume = "13", number = "1", pages = "95--95", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB13-1-96, author = "Frank Mittelbach and Chris Rowley", title = "{{\LaTeX} 2.09 $\hookrightarrow$ {\LaTeX}3}", journal = j-TUGboat, volume = "13", number = "1", pages = "96--101", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-1-101, author = "Anonymous", title = "{Cahiers GUTenberg \#9 and \#10--11}", journal = j-TUGboat, volume = "13", number = "1", pages = "101--105", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-1-106, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "13", number = "1", pages = "106--107", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-1-107, author = "Anonymous", title = "{Euro{\TeX}\,92, Prague, 14--18 September 1992}", journal = j-TUGboat, volume = "13", number = "1", pages = "107--108", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB13-1-108, author = "Barbara Beeton", title = "Production notes", journal = j-TUGboat, volume = "13", number = "1", pages = "108--109", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-1-109, author = "Anonymous", title = "Coming next issue", journal = j-TUGboat, volume = "13", number = "1", pages = "109--109", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-1-110, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "13", number = "1", pages = "110--111", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-1-112, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "13", number = "1", pages = "112--112", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-1-126, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "13", number = "1", pages = "126--126", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-1-127, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "13", number = "1", pages = "127--127", month = apr, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-2-131, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "13", number = "2", pages = "131--132", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB13-2-133, author = "Malcolm Clark", title = "{Changing {\TeX}?}", journal = j-TUGboat, volume = "13", number = "2", pages = "133--134", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB13-2-134, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "13", number = "2", pages = "134--137", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-2-137, author = "Anonymous", title = "{TUG seeks Executive Director}", journal = j-TUGboat, volume = "13", number = "2", pages = "137--137", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB13-2-138, author = "Philip Taylor", title = "{{\TeX}: The next generation}", journal = j-TUGboat, volume = "13", number = "2", pages = "138--138", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Damerell:TB13-2-139, author = "R. M. Damerell", title = "{Knuth's profiler adapted to the VMS operating system}", journal = j-TUGboat, volume = "13", number = "2", pages = "139--145", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Salomon:TB13-2-146, author = "David Salomon", title = "{Arrows for Technical Drawings}", journal = j-TUGboat, volume = "13", number = "2", pages = "146--149", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Levin:TB13-2-150, author = "Daniel Levin", title = "A solution to the color separation problem", journal = j-TUGboat, volume = "13", number = "2", pages = "150--155", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rahtz:TB13-2-156, author = "Sebastian Rahtz and Leonor Barroca", title = "{A style option for rotated objects in {\TeX}}", journal = j-TUGboat, volume = "13", number = "2", pages = "156--180", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Luvisetto:TB13-2-181, author = "Marisa Luvisetto and Massimo Calvani", title = "{Book review: An Italian guide to {\LaTeX} (by Claudio Beccari)}", journal = j-TUGboat, volume = "13", number = "2", pages = "181--182", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Poppelier:TB13-2-182, author = "Nico Poppelier", title = "{Book reviews: Jane Hahn, {\it {\LaTeX} for Everyone\/}; Eric van Herwijnen, {\it Practical SGML\/}}", journal = j-TUGboat, volume = "13", number = "2", pages = "182--185", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB13-2-185, author = "Philip Taylor", title = "{Book review: Victor Eijkhout, {\it {\TeX} by Topic\/}}", journal = j-TUGboat, volume = "13", number = "2", pages = "185--188", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jones:TB13-2-188, author = "David M. Jones", title = "{A {\TeX} macro index}", journal = j-TUGboat, volume = "13", number = "2", pages = "188--189", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB13-2-189, author = "Victor Eijkhout", title = "Names of control sequences", journal = j-TUGboat, volume = "13", number = "2", pages = "189--190", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB13-2-190, author = "Frank Mittelbach", title = "Where does this character come from?", journal = j-TUGboat, volume = "13", number = "2", pages = "190--190", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB13-2-191, author = "Victor Eijkhout", title = "The bag of tricks", journal = j-TUGboat, volume = "13", number = "2", pages = "191--191", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Huszar:TB13-2-192, author = "P{\'e}ter Husz{\'a}r", title = "Over the multi-column", journal = j-TUGboat, volume = "13", number = "2", pages = "192--200", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB13-2-201, author = "Michel Goossens and Eric van Herwijnen", title = "{The elementary Particle Entity Notation (PEN) scheme}", journal = j-TUGboat, volume = "13", number = "2", pages = "201--207", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Luvisetto:TB13-2-208, author = "Maria Luisa Luvisetto and Enzo Ugolini", title = "{From {\TeX} to {\LaTeX}}", journal = j-TUGboat, volume = "13", number = "2", pages = "208--214", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Cameron:TB13-2-215, author = "Peter J. Cameron", title = "{Geometric diagrams in {\LaTeX}}", journal = j-TUGboat, volume = "13", number = "2", pages = "215--216", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Partl:TB13-2-217, author = "Hubert Partl", title = "{How to change the layout with {\LaTeX} 2.09}", journal = j-TUGboat, volume = "13", number = "2", pages = "217--220", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wonneberger:TB13-2-221, author = "Reinhard Wonneberger and Frank Mittelbach", title = "{SGML\Dash Questions and answers}", journal = j-TUGboat, volume = "13", number = "2", pages = "221--223", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Barr:TB13-2-223, author = "Michael Barr", title = "{{\TeX} wish list}", journal = j-TUGboat, volume = "13", number = "2", pages = "223--226", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wonneberger:TB13-2-226, author = "Reinhard Wonneberger", title = "{Approaching SGML from {\TeX}}", journal = j-TUGboat, volume = "13", number = "2", pages = "226--227", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-2-227, author = "Anonymous", title = "{Cahiers GUTenberg \#12}", journal = j-TUGboat, volume = "13", number = "2", pages = "227--228", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-2-228, author = "Anonymous", title = "{Baskerville, Volume 2, Number 1, March 1992}", journal = j-TUGboat, volume = "13", number = "2", pages = "228--229", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB13-2-229, author = "Barbara Beeton", title = "Production notes", journal = j-TUGboat, volume = "13", number = "2", pages = "229--230", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-2-230, author = "Anonymous", title = "Coming next issue", journal = j-TUGboat, volume = "13", number = "2", pages = "230--230", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-2-231, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "13", number = "2", pages = "231--232", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-2-232, author = "Anonymous", title = "{Euro{\TeX}\,92, Prague, 14--18 September 1992}", journal = j-TUGboat, volume = "13", number = "2", pages = "232--233", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-2-235, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "13", number = "2", pages = "235--236", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-2-247, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "13", number = "2", pages = "247--247", month = jul, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB13-3-251, author = "Malcolm Clark", title = "President's introduction", journal = j-TUGboat, volume = "13", number = "3", pages = "251--252", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB13-3-253, author = "Malcolm Clark", title = "{Portable graphics in {\TeX}}", journal = j-TUGboat, volume = "13", number = "3", pages = "253--260", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB13-3-261, author = "Bart Childs", title = "Literate programming, a practitioner's view", journal = j-TUGboat, volume = "13", number = "3", pages = "261--268", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hampson:TB13-3-269, author = "Steve Hampson and Barry Smith", title = "{A high performance {\TeX} for the Motorola 68000 processor family}", journal = j-TUGboat, volume = "13", number = "3", pages = "269--271", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Baldwin:TB13-3-272, author = "Harry L. {Baldwin, Jr.}", title = "{Using a high-level language as an aid in writing {\TeX} documents}", journal = j-TUGboat, volume = "13", number = "3", pages = "272--280", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bennett:TB13-3-281, author = "Larry F. Bennett", title = "{T-EDIT, a collection of editing macros for {\TeX}}", journal = j-TUGboat, volume = "13", number = "3", pages = "281--290", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gaffey:TB13-3-291, author = "Robert \Mc Gaffey", title = "{Automatic tables using {\SMC SGML}, {\SMC C}, and {\TeX}}", journal = j-TUGboat, volume = "13", number = "3", pages = "291--294", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Starks:TB13-3-295, author = "Anthony J. Starks", title = "{Dotex\Dash integrating {\TeX} into the X-window system}", journal = j-TUGboat, volume = "13", number = "3", pages = "295--303", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thorup:TB13-3-304, author = "Kresten Krab Thorup", title = "{GNU emacs as a front end to {\LaTeX}}", journal = j-TUGboat, volume = "13", number = "3", pages = "304--308", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laan:TB13-3-309, author = "Walter van der Laan and Johannes Braams", title = "Writing reports with more than a hundred people", journal = j-TUGboat, volume = "13", number = "3", pages = "309--314", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Damrau:TB13-3-315, author = "Jackie Damrau", title = "{Discovering graphics in {\LaTeX} documents}", journal = j-TUGboat, volume = "13", number = "3", pages = "315--321", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Harris:TB13-3-322, author = "Robert L. Harris", title = "{Preparing halftones for use in {\TeX}}", journal = j-TUGboat, volume = "13", number = "3", pages = "322--326", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Salomon:TB13-3-327, author = "David Salomon", title = "{Creating shaded rectangles with {\PS}}", journal = j-TUGboat, volume = "13", number = "3", pages = "327--329", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Weiss:TB13-3-330, author = "Neil A. Weiss", title = "{Creation and incorporation of {\PS} graphics with {\TeX}-formatted labels into {\TeX} documents}", journal = j-TUGboat, volume = "13", number = "3", pages = "330--334", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuutila:TB13-3-335, author = "Timo Knuutila", title = "{How to combine multiple languages, {\PS}, and {\LaTeX}}", journal = j-TUGboat, volume = "13", number = "3", pages = "335--340", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB13-3-341, author = "Victor Eijkhout", title = "Just give me a lollipop (it makes my heart go giddy-up)", journal = j-TUGboat, volume = "13", number = "3", pages = "341--346", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hafner:TB13-3-347, author = "James L. Hafner", title = "{Foil{\TeX}, a {\LaTeX}-like system for typesetting foils}", journal = j-TUGboat, volume = "13", number = "3", pages = "347--356", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Abbott:TB13-3-357, author = "Peter Abbott", title = "Typesetting a magazine the easy way", journal = j-TUGboat, volume = "13", number = "3", pages = "357--361", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB13-3-362, author = "Mimi Burbank and Donna Burnette", title = "{Using {\TeX} for a publications database}", journal = j-TUGboat, volume = "13", number = "3", pages = "362--371", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Raman:TB13-3-372, author = "T. V. Raman", title = "{An audio view of ({\La}){\TeX} documents}", journal = j-TUGboat, volume = "13", number = "3", pages = "372--379", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Arnon:TB13-3-380, author = "Dennis S. Arnon and Isabelle Attali and Paul Franchi-Zannettacci", title = "{Model-based conversions of {\LaTeX} documents}", journal = j-TUGboat, volume = "13", number = "3", pages = "380--389", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rowley:TB13-3-390, author = "Chris Rowley", title = "{{\LaTeX}3 update}", journal = j-TUGboat, volume = "13", number = "3", pages = "390--391", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-3-391, author = "Anonymous", title = "Workshops", journal = j-TUGboat, volume = "13", number = "3", pages = "391--392", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-3-393, author = "Anonymous", title = "{Participants at the 1992 TUG Meeting}", journal = j-TUGboat, volume = "13", number = "3", pages = "393--394", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-3-395, author = "Anonymous", title = "{The Donald E. Knuth Scholarship for 1992 and 1993}", journal = j-TUGboat, volume = "13", number = "3", pages = "395--396", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-3-396, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "13", number = "3", pages = "396--397", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-3-398, author = "Anonymous", title = "{TUG 1993 annual meeting, Aston University, UK}", journal = j-TUGboat, volume = "13", number = "3", pages = "398--398", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-3-399, author = "Anonymous", title = "{TUG 1993 course schedule}", journal = j-TUGboat, volume = "13", number = "3", pages = "399--399", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-3-400, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "13", number = "3", pages = "400--401", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-3-402, author = "Anonymous", title = "Consultants", journal = j-TUGboat, volume = "13", number = "3", pages = "402--402", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-3-411, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "13", number = "3", pages = "411--411", month = oct, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-4-415, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "13", number = "4", pages = "415--416", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB13-4-417, author = "Malcolm Clark", title = "The back benches beckon", journal = j-TUGboat, volume = "13", number = "4", pages = "417--418", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB13-4-418, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "13", number = "4", pages = "418--419", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-4-419, author = "Anonymous", title = "{An interview with Donald Knuth, November 1991}", journal = j-TUGboat, volume = "13", number = "4", pages = "419--425", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Palais:TB13-4-425, author = "Richard Palais", title = "Moving a fixed point", journal = j-TUGboat, volume = "13", number = "4", pages = "425--432", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB13-4-433, author = "Philip Taylor", title = "{The future of {\TeX}}", journal = j-TUGboat, volume = "13", number = "4", pages = "433--442", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kelly:TB13-4-443, author = "Nickolas J. Kelly and Christian H. Bischof", title = "{XBib{\TeX} and friends}", journal = j-TUGboat, volume = "13", number = "4", pages = "443--446", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Chapman:TB13-4-447, author = "Nigel Chapman", title = "{Searching in a DVI file}", journal = j-TUGboat, volume = "13", number = "4", pages = "447--451", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-4-452, author = "Anonymous", title = "Hyphenation exception log", journal = j-TUGboat, volume = "13", number = "4", pages = "452--457", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB13-4-457, author = "Bart Childs", title = "{Errata: Literate Programming, A Practitioner's View, \tubissue 13(3), pp.\ 261--268}", journal = j-TUGboat, volume = "13", number = "4", pages = "457--457", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB13-4-457, author = "Yannis Haralambous", title = "{Hyphenation patterns for ancient Greek and Latin}", journal = j-TUGboat, volume = "13", number = "4", pages = "457--469", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Zubrinic:TB13-4-470, author = "Darko \v{Z}ubrini{\'c}", title = "{The exotic Croatian Glagolitic alphabet}", journal = j-TUGboat, volume = "13", number = "4", pages = "470--471", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sauter:TB13-4-472, author = "John Sauter", title = "{Postnet codes using {\MF}}", journal = j-TUGboat, volume = "13", number = "4", pages = "472--476", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB13-4-476, author = "Yannis Haralambous", title = "{A {\tt typewriter} font for the Macintosh 8-bit font table}", journal = j-TUGboat, volume = "13", number = "4", pages = "476--477", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rahtz:TB13-4-477, author = "Sebastian Rahtz and Leonor Barroca", title = "{Addendum: A style option for rotated objects in {\TeX} (\tubissue 13(2), pp. 156--180)}", journal = j-TUGboat, volume = "13", number = "4", pages = "477--477", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Seyfarth:TB13-4-478, author = "Ray Seyfarth", title = "{Diag: a drawing preprocessor for {\LaTeX}}", journal = j-TUGboat, volume = "13", number = "4", pages = "478--485", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB13-4-486, author = "Victor Eijkhout", title = "{Wynter Snow, {\it {\TeX} for the Beginner}}", journal = j-TUGboat, volume = "13", number = "4", pages = "486--487", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Greenwade:TB13-4-487, author = "George Greenwade", title = "{Arvind Borde, {\it {\TeX} by Example}}", journal = j-TUGboat, volume = "13", number = "4", pages = "487--489", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Cameron:TB13-4-489, author = "A. G. W. Cameron", title = "{Andr\'e Heck, ed., {\it Desktop Publishing in Astronomy \& Space Sciences}}", journal = j-TUGboat, volume = "13", number = "4", pages = "489--490", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Neuwirth:TB13-4-490, author = "Erich Neuwirth", title = "{{\TeX} implementations for IBM PCs: comparative timings}", journal = j-TUGboat, volume = "13", number = "4", pages = "490--492", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB13-4-493, author = "Frank Mittelbach", title = "{Where does this character come from? Solution to the puzzle, \tubissue 13(2), p.190}", journal = j-TUGboat, volume = "13", number = "4", pages = "493--493", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB13-4-494, author = "Victor Eijkhout", title = "The bag of tricks", journal = j-TUGboat, volume = "13", number = "4", pages = "494--495", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fine:TB13-4-495, author = "Jonathan Fine", title = "Too many errors", journal = j-TUGboat, volume = "13", number = "4", pages = "495--496", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB13-4-496, author = "Victor Eijkhout", title = "One error less", journal = j-TUGboat, volume = "13", number = "4", pages = "496--497", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anagnostopoulos:TB13-4-497, author = "Paul Anagnostopoulos", title = "{Zz{\TeX}: A macro package for books}", journal = j-TUGboat, volume = "13", number = "4", pages = "497--505", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fine:TB13-4-505, author = "Jonathan Fine", title = "{The {\tt\char`\\noname} macros\Dash A technical report}", journal = j-TUGboat, volume = "13", number = "4", pages = "505--509", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB13-4-510, author = "Frank Mittelbach and Chris Rowley and Michael Downes", title = "{Volunteer work for the {\LaTeX}3 project}", journal = j-TUGboat, volume = "13", number = "4", pages = "510--515", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Piff:TB13-4-516, author = "Mike Piff", title = "{Correction sheets in {\LaTeX}}", journal = j-TUGboat, volume = "13", number = "4", pages = "516--518", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Piff:TB13-4-518, author = "Mike Piff", title = "{Text merges in {\TeX} and {\LaTeX}}", journal = j-TUGboat, volume = "13", number = "4", pages = "518--523", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rahtz:TB13-4-524, author = "Sebastian Rahtz", title = "A style file for printing sheets of labels", journal = j-TUGboat, volume = "13", number = "4", pages = "524--528", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-4-528, author = "Anonymous", title = "{Cahiers GUTenberg \#13}", journal = j-TUGboat, volume = "13", number = "4", pages = "528--529", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-4-530, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "13", number = "4", pages = "530--532", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-4-532, author = "Anonymous", title = "{Call for Papers: Special Issue of {\it Electronic Publishing: Origination, Dissemination and Design\/} on Active Documents}", journal = j-TUGboat, volume = "13", number = "4", pages = "532--532", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB13-4-533, author = "Barbara Beeton", title = "Production notes", journal = j-TUGboat, volume = "13", number = "4", pages = "533--533", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-4-534, author = "Anonymous", title = "Coming next issue", journal = j-TUGboat, volume = "13", number = "4", pages = "534--534", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-4-534-2, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "13", number = "4", pages = "534--536", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-4-537, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "13", number = "4", pages = "537--538", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-4-536, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "13", number = "4", pages = "536--536", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB13-4-544, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "13", number = "4", pages = "544--544", month = dec, year = "1992", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-1-3, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "14", number = "1", pages = "3--4", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB14-1-5, author = "Christina Thiele", title = "Opening words", journal = j-TUGboat, volume = "14", number = "1", pages = "5--6", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB14-1-7, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "14", number = "1", pages = "7--7", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wong:TB14-1-8, author = "Wai Wong", title = "{Typesetting Chinese {\it pinyin} using virtual fonts}", journal = j-TUGboat, volume = "14", number = "1", pages = "8--11", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Vesilo:TB14-1-12, author = "R. A. Vesilo and A. Dunn", title = "{A multimedia document system based on {\TeX} and DVI documents}", journal = j-TUGboat, volume = "14", number = "1", pages = "12--16", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB14-1-17, author = "Philip Taylor", title = "{Arvind Borde, {\it Mathematical {\TeX} by Example}}", journal = j-TUGboat, volume = "14", number = "1", pages = "17--20", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Radel:TB14-1-20, author = "Jon Radel", title = "{Michael Vulis, {\it Modern {\TeX} and Its Applications}}", journal = j-TUGboat, volume = "14", number = "1", pages = "20--23", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB14-1-23, author = "Victor Eijkhout", title = "The bag of tricks", journal = j-TUGboat, volume = "14", number = "1", pages = "23--24", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Comenetz:TB14-1-25, author = "Daniel Comenetz", title = "Anchored figures at either margin", journal = j-TUGboat, volume = "14", number = "1", pages = "25--34", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fine:TB14-1-35, author = "Jonathan Fine", title = "{The {\tt\char`\\CASE} and {\tt\char`\\FIND} macros}", journal = j-TUGboat, volume = "14", number = "1", pages = "35--39", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Saludes:TB14-1-40, author = "Jordi Saludes", title = "{Doing astronomical computations with {\TeX}: Making agendas}", journal = j-TUGboat, volume = "14", number = "1", pages = "40--53", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laan:TB14-1-54, author = "Kees van der Laan", title = "{FIFO and LIFO sing the BLUes}", journal = j-TUGboat, volume = "14", number = "1", pages = "54--60", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Braams:TB14-1-60, author = "Johannes Braams", title = "{An update on the {\sf babel} system}", journal = j-TUGboat, volume = "14", number = "1", pages = "60--62", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{RafalZbikowski:TB14-1-62, author = "Rafa{\l}\.Zbikowski", title = "{Hacker's Guide to {\AmS}Fonts and NFSS in the Context of {\LaTeX}}", journal = j-TUGboat, volume = "14", number = "1", pages = "62--69", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Heck:TB14-1-70, author = "Andr{\'e} Heck", title = "{Response to A.G.W. Cameron}", journal = j-TUGboat, volume = "14", number = "1", pages = "70--70", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-1-71, author = "Anonymous", title = "{Die {\TeX}nische Kom\"odie 1992, Heft 1--4}", journal = j-TUGboat, volume = "14", number = "1", pages = "71--76", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-1-77, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "14", number = "1", pages = "77--79", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-1-79, author = "Anonymous", title = "{Courses to be held in conjunction with TUG\,93 (Aston University, Birmingham, U.K., 26--30 July 1993)}", journal = j-TUGboat, volume = "14", number = "1", pages = "79--79", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB14-1-81, author = "Barbara Beeton", title = "Production notes", journal = j-TUGboat, volume = "14", number = "1", pages = "81--81", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-1-81, author = "Anonymous", title = "Coming next issue", journal = j-TUGboat, volume = "14", number = "1", pages = "81--82", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-1-83, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "14", number = "1", pages = "83--84", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-1-85, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "14", number = "1", pages = "85--86", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-1-82, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "14", number = "1", pages = "82--82", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-1-87, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "14", number = "1", pages = "87--87", month = apr, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-2-95, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "14", number = "2", pages = "95--96", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB14-2-97, author = "Christina Thiele", title = "Opening words", journal = j-TUGboat, volume = "14", number = "2", pages = "97--98", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB14-2-99, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "14", number = "2", pages = "99--101", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Poppelier:TB14-2-102, author = "Nico Poppelier", title = "{The Donald E. Knuth Scholarship: 1993 Scholar and 1994 announcement}", journal = j-TUGboat, volume = "14", number = "2", pages = "102--103", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-2-103, author = "Anonymous", title = "{The A-in-{\LaTeX} Contest: Deadline extended}", journal = j-TUGboat, volume = "14", number = "2", pages = "103--103", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knappen:TB14-2-104, author = "J{\"o}rg Knappen", title = "{Fonts for Africa: the fc-fonts}", journal = j-TUGboat, volume = "14", number = "2", pages = "104--106", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rahtz:TB14-2-107, author = "Sebastian Rahtz", title = "{Implementing the extended {\TeX} layout using PS fonts}", journal = j-TUGboat, volume = "14", number = "2", pages = "107--117", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Cohen:TB14-2-118, author = "Michael Cohen", title = "Zebrackets: a pseudo-dynamic contextually adaptive font", journal = j-TUGboat, volume = "14", number = "2", pages = "118--122", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jurriens:TB14-2-123, author = "Theo Jurriens", title = "From observation to publication", journal = j-TUGboat, volume = "14", number = "2", pages = "123--126", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Poppelier:TB14-2-127, author = "Nico Poppelier", title = "{Review of recent {\LaTeX} books}", journal = j-TUGboat, volume = "14", number = "2", pages = "127--128", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Collins:TB14-2-128, author = "John Collins", title = "{ET\Dash a {\TeX}-compatible editor for MSDOS computers}", journal = j-TUGboat, volume = "14", number = "2", pages = "128--131", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rahtz:TB14-2-132, author = "Sebastian Rahtz", title = "{Essential NFSS2}", journal = j-TUGboat, volume = "14", number = "2", pages = "132--137", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB14-2-138, author = "Philip Taylor", title = "A pragmatic approach to paragraphs", journal = j-TUGboat, volume = "14", number = "2", pages = "138--140", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Durst:TB14-2-141, author = "Lincoln Durst", title = "Truth in indexing", journal = j-TUGboat, volume = "14", number = "2", pages = "141--141", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB14-2-141, author = "Philip Taylor", title = "{Letterspacing in {\TeX}}", journal = j-TUGboat, volume = "14", number = "2", pages = "141--145", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-2-146, author = "Anonymous", title = "{Cahiers GUTenberg \#15}", journal = j-TUGboat, volume = "14", number = "2", pages = "146--146", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-2-147, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "14", number = "2", pages = "147--148", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB14-2-149, author = "Barbara Beeton", title = "Production notes", journal = j-TUGboat, volume = "14", number = "2", pages = "149--149", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-2-149, author = "Anonymous", title = "Coming next issue", journal = j-TUGboat, volume = "14", number = "2", pages = "149--149", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-2-150, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "14", number = "2", pages = "150--151", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-2-148, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "14", number = "2", pages = "148--148", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-2-152, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "14", number = "2", pages = "152--152", month = jul, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB14-3-162, author = "Christina A. L.\ Thiele", title = "{The future of {\TeX} and TUG}", journal = j-TUGboat, volume = "14", number = "3", pages = "162--166", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lammarsch:TB14-3-167, author = "Joachim Lammarsch", title = "A new typesetting system: is it really necessary?", journal = j-TUGboat, volume = "14", number = "3", pages = "167--170", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rycko:TB14-3-171, author = "Marek Ry{\'c}ko and Bogus{\l}aw Jackowski", title = "{{\TeX} from {\tt\bs indent} to {\tt\bs par}}", journal = j-TUGboat, volume = "14", number = "3", pages = "171--176", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB14-3-177, author = "Philip Taylor", title = "{NTS: the future of {\TeX}?}", journal = j-TUGboat, volume = "14", number = "3", pages = "177--182", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hunter:TB14-3-183, author = "Roger Hunter", title = "{A future for {\TeX}}", journal = j-TUGboat, volume = "14", number = "3", pages = "183--186", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bennett:TB14-3-187, author = "Frank G. {Bennett, Jr.}", title = "{{\LexiTeX}: context-sensitive legal citations for {\LaTeX}}", journal = j-TUGboat, volume = "14", number = "3", pages = "187--195", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taupin:TB14-3-196, author = "Daniel Taupin", title = "{Using {\TeX} and {\slMF} to build complicated maps}", journal = j-TUGboat, volume = "14", number = "3", pages = "196--202", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taupin:TB14-3-203, author = "Daniel Taupin", title = "{Music{\TeX}: Using {\TeX} to write polyphonic or instrumental music}", journal = j-TUGboat, volume = "14", number = "3", pages = "203--211", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Siebenmann:TB14-3-212, author = "Laurent Siebenmann", title = "{A format compilation framework for European languages}", journal = j-TUGboat, volume = "14", number = "3", pages = "212--221", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB14-3-222, author = "Nelson Beebe", title = "Bibliography prettyprinting and syntax checking", journal = j-TUGboat, volume = "14", number = "3", pages = "222--222", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bryan:TB14-3-223, author = "Martin Bryan", title = "{A {\TeX} user's guide to ISO's Document Style Semantics and Specification Language (DSSSL)}", journal = j-TUGboat, volume = "14", number = "3", pages = "223--226", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB14-3-227, author = "Peter Flynn", title = "{{\TeX} and SGML: a recipe for disaster?}", journal = j-TUGboat, volume = "14", number = "3", pages = "227--230", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wang:TB14-3-231, author = "Xinxin Wang and Derick Wood", title = "An abstract model for tables", journal = j-TUGboat, volume = "14", number = "3", pages = "231--237", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lavaud:TB14-3-238, author = "Michel Lavaud", title = "{Developing a multi-windowing environment for research based on \TeX}", journal = j-TUGboat, volume = "14", number = "3", pages = "238--244", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kawaguti:TB14-3-245, author = "Minato Kawaguti", title = "{A versatile {\TeX} device driver}", journal = j-TUGboat, volume = "14", number = "3", pages = "245--251", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Feruglio:TB14-3-252, author = "Gabriel Valiente Feruglio and Robert Fuster", title = "{Typesetting Catalan texts with {\TeX}}", journal = j-TUGboat, volume = "14", number = "3", pages = "252--259", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB14-3-260, author = "Yannis Haralambous", title = "{The Khmer script tamed by the Lion (of {\TeX})}", journal = j-TUGboat, volume = "14", number = "3", pages = "260--270", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Plaice:TB14-3-271, author = "John Plaice", title = "Language-dependent ligatures", journal = j-TUGboat, volume = "14", number = "3", pages = "271--274", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Doob:TB14-3-275, author = "Michael Doob and Craig Platt", title = "Virtual fonts in a production environment", journal = j-TUGboat, volume = "14", number = "3", pages = "275--281", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Horn:TB14-3-282, author = "Berthold K. P. Horn", title = "Where are the math fonts?", journal = j-TUGboat, volume = "14", number = "3", pages = "282--284", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jeffrey:TB14-3-285, author = "Alan Jeffrey", title = "{A {\PS} font installation package written in {\TeX}}", journal = j-TUGboat, volume = "14", number = "3", pages = "285--292", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jeffrey:TB14-3-293, author = "Alan Jeffrey", title = "Math font encodings: a workshop summary", journal = j-TUGboat, volume = "14", number = "3", pages = "293--295", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bzyl:TB14-3-296, author = "W{\l}odek Bzyl and Tomasz Przechlewski", title = "{An application of literate programming: creating a format for the Bulletin of the Polish TUG}", journal = j-TUGboat, volume = "14", number = "3", pages = "296--299", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fine:TB14-3-300, author = "Jonathan Fine", title = "Galleys, space, and automata", journal = j-TUGboat, volume = "14", number = "3", pages = "300--309", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laan:TB14-3-310, author = "Kees van der Laan", title = "Syntactic sugar", journal = j-TUGboat, volume = "14", number = "3", pages = "310--318", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laan:TB14-3-319, author = "Kees van der Laan", title = "{Sorting within {\TeX}}", journal = j-TUGboat, volume = "14", number = "3", pages = "319--328", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Dyson:TB14-3-329, author = "Mary Dyson", title = "{Teaching digital typography\Dash the Didot Project}", journal = j-TUGboat, volume = "14", number = "3", pages = "329--332", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gorbunova:TB14-3-333, author = "Irina V. Gorbunova", title = "{Russian-speaking user: from Chi-Writer and Ventura Publisher to {\TeX}; learning difficulties}", journal = j-TUGboat, volume = "14", number = "3", pages = "333--334", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Reese:TB14-3-335, author = "R. Allan Reese", title = "{How to set up and maintain a {\TeX} system}", journal = j-TUGboat, volume = "14", number = "3", pages = "335--341", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Greenwade:TB14-3-342, author = "George D. Greenwade", title = "{The Comprehensive {\TeX} Archive Network (CTAN)}", journal = j-TUGboat, volume = "14", number = "3", pages = "342--351", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-3-352, author = "Anonymous", title = "{Participants at the 1993 TUG meeting}", journal = j-TUGboat, volume = "14", number = "3", pages = "352--355", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-3-356, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "14", number = "3", pages = "356--357", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-3-358, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "14", number = "3", pages = "358--359", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-3-360, author = "Anonymous", title = "{TUG 1994 annual meeting, Santa Barbara, USA}", journal = j-TUGboat, volume = "14", number = "3", pages = "360--360", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-3-361, author = "Anonymous", title = "{TUG individual membership application}", journal = j-TUGboat, volume = "14", number = "3", pages = "361--361", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-3-362, author = "Anonymous", title = "{TUG institutional membership application}", journal = j-TUGboat, volume = "14", number = "3", pages = "362--362", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-3-359, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "14", number = "3", pages = "359--359", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-3-363, author = "Anonymous", title = "Consultants", journal = j-TUGboat, volume = "14", number = "3", pages = "363--363", month = oct, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-4-369, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "14", number = "4", pages = "369--370", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB14-4-371, author = "Christina Thiele", title = "Opening words", journal = j-TUGboat, volume = "14", number = "4", pages = "371--371", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB14-4-372, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "14", number = "4", pages = "372--373", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-4-373, author = "Anonymous", title = "{{\TUB} wish list}", journal = j-TUGboat, volume = "14", number = "4", pages = "373--373", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB14-4-374, author = "Malcolm Clark", title = "{{\NexTeX}: A personal view}", journal = j-TUGboat, volume = "14", number = "4", pages = "374--380", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB14-4-381, author = "Philip Taylor", title = "{NTS update}", journal = j-TUGboat, volume = "14", number = "4", pages = "381--382", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Becker:TB14-4-382, author = "Thomas Becker", title = "{Two extensions to GNU Emacs that are useful when editing {\TeX} documents}", journal = j-TUGboat, volume = "14", number = "4", pages = "382--386", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB14-4-387, author = "Donald E. Knuth", title = "{Icons for {\TeX} and {\MF}}", journal = j-TUGboat, volume = "14", number = "4", pages = "387--389", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Liebl:TB14-4-390, author = "Armin Liebl", title = "{bibview: A graphical user interface to {\BibTeX}}", journal = j-TUGboat, volume = "14", number = "4", pages = "390--395", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB14-4-395, author = "Nelson Beebe", title = "Bibliography prettyprinting and syntax checking", journal = j-TUGboat, volume = "14", number = "4", pages = "395--419", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carmody:TB14-4-420, author = "Kevin Carmody", title = "{A tough table becomes easy with {\PiCTeX}}", journal = j-TUGboat, volume = "14", number = "4", pages = "420--420", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beccari:TB14-4-421, author = "Claudio Beccari", title = "{Book Review: P. W. Abrahams, K. Berry and K. Hargreaves, {\it {\TeX} per l'impaziente}}", journal = j-TUGboat, volume = "14", number = "4", pages = "421--422", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Aslaksen:TB14-4-423, author = "Helmer Aslaksen", title = "{Ten {\TeX} tricks for the mathematician}", journal = j-TUGboat, volume = "14", number = "4", pages = "423--424", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB14-4-424, author = "Victor Eijkhout", title = "The bag of tricks", journal = j-TUGboat, volume = "14", number = "4", pages = "424--424", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rhead:TB14-4-425, author = "David Rhead", title = "The ``operational requirement'' for support of bibliographies", journal = j-TUGboat, volume = "14", number = "4", pages = "425--433", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bland:TB14-4-433, author = "Richard Bland", title = "{Relative moves in {\LaTeX}\ pictures}", journal = j-TUGboat, volume = "14", number = "4", pages = "433--437", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-4-438, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "14", number = "4", pages = "438--439", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB14-4-439, author = "Barbara Beeton", title = "Production notes", journal = j-TUGboat, volume = "14", number = "4", pages = "439--439", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-4-440, author = "Anonymous", title = "Coming next issue", journal = j-TUGboat, volume = "14", number = "4", pages = "440--440", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-4-441, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "14", number = "4", pages = "441--442", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-4-443, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "14", number = "4", pages = "443--444", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-4-442, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "14", number = "4", pages = "442--442", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB14-4-445, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "14", number = "4", pages = "445--445", month = dec, year = "1993", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-1-3, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "15", number = "1", pages = "3--4", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB15-1-5, author = "Christina Thiele", title = "Opening words", journal = j-TUGboat, volume = "15", number = "1", pages = "5--6", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB15-1-6, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "15", number = "1", pages = "6--7", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Arseneau:TB15-1-7, author = "Donald Arseneau and Raymond Chen and Victor Eijkhout", title = "{The {\TeX} hierarchy}", journal = j-TUGboat, volume = "15", number = "1", pages = "7--9", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beccari:TB15-1-9, author = "Claudio Beccari", title = "Typesetting of ancient languages", journal = j-TUGboat, volume = "15", number = "1", pages = "9--16", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beccari:TB15-1-17, author = "Claudio Beccari", title = "{Comments on the paper ``{Typesetting Catalan} texts with {\TeX}'' ({\tubissue 14(3)}, pp. 252--259)}", journal = j-TUGboat, volume = "15", number = "1", pages = "17--17", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Feruglio:TB15-1-17, author = "Gabriel Valiente Feruglio and Robert Fuster", title = "{Comments on the comments: {Typesetting Catalan} texts with {\TeX}}", journal = j-TUGboat, volume = "15", number = "1", pages = "17--18", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Poppelier:TB15-1-18, author = "Nico Poppelier", title = "{{George Gr\"atzer}, {\it Math into {\TeX}}}", journal = j-TUGboat, volume = "15", number = "1", pages = "18--19", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pappas:TB15-1-19, author = "T. L. (Frank) Pappas", title = "{{Stephan von Bechtolsheim}, {\it {\TeX} in Practice}}", journal = j-TUGboat, volume = "15", number = "1", pages = "19--21", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beccari:TB15-1-21, author = "Claudio Beccari", title = "{{Gianni Gilardi}, {\it Il {\TeX}\dash {Introduzione} al linguaggio e complementi avanzati}}", journal = j-TUGboat, volume = "15", number = "1", pages = "21--22", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sawdey:TB15-1-22, author = "Merry Obrecht Sawdey", title = "{{Erik Spiekermann} \& {E. M. Ginger}, {\it Stop Stealing Sheep}}", journal = j-TUGboat, volume = "15", number = "1", pages = "22--24", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Poppelier:TB15-1-24, author = "Nico Poppelier", title = "{{Eric van Herwijnen}, {\it Practical SGML}}", journal = j-TUGboat, volume = "15", number = "1", pages = "24--25", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Detig:TB15-1-25, author = "Christine Detig and Joachim Schrod", title = "{{Donald E. Knuth}, {\it Literate Programming}}", journal = j-TUGboat, volume = "15", number = "1", pages = "25--27", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Salomon:TB15-1-28, author = "David Salomon", title = "{Output routines: {Examples} and techniques, {Part IV}: {Horizontal} techniques}", journal = j-TUGboat, volume = "15", number = "1", pages = "28--40", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Salomon:TB15-1-40, author = "David Salomon", title = "Verbatim copying and listing", journal = j-TUGboat, volume = "15", number = "1", pages = "40--54", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB15-1-55, author = "Victor Eijkhout", title = "The bag of tricks", journal = j-TUGboat, volume = "15", number = "1", pages = "55--57", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Meer:TB15-1-57, author = "Hans van der Meer", title = "{Random bit generator in {\TeX}}", journal = j-TUGboat, volume = "15", number = "1", pages = "57--58", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Salomon:TB15-1-59, author = "David Salomon and Matthew N. Hendryx", title = "Slanted lines with controlled thickness", journal = j-TUGboat, volume = "15", number = "1", pages = "59--62", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fine:TB15-1-62, author = "Jonathan Fine", title = "On indexing and errors", journal = j-TUGboat, volume = "15", number = "1", pages = "62--62", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rowley:TB15-1-63, author = "Chris Rowley", title = "{{\LaTeXe} update, dateline: 31 {January} 1994}", journal = j-TUGboat, volume = "15", number = "1", pages = "63", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rhead:TB15-1-64, author = "David Rhead", title = "{Addenda: {A} suggested ``operational requirement'' for {\LaTeX}3's treatment of bibliographic references (\tubissue 14(4), pp.\ 425-433)}", journal = j-TUGboat, volume = "15", number = "1", pages = "64--65", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-1-66, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "15", number = "1", pages = "66--67", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-1-68, author = "Anonymous", title = "{{TUG}\,'94\Dash {Announcement} and preliminary program ({Santa Barbara}, {California}, 31 {July}--4 {August} 1994)}", journal = j-TUGboat, volume = "15", number = "1", pages = "68--69", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-1-69, author = "Anonymous", title = "{Call for papers, {Euro\TeX}\,'94 ({Gdansk}, {Poland}, 26--30 {September} 1994)}", journal = j-TUGboat, volume = "15", number = "1", pages = "69--70", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB15-1-74, author = "Barbara Beeton", title = "Production notes", journal = j-TUGboat, volume = "15", number = "1", pages = "74--74", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-1-75, author = "Anonymous", title = "Coming next issue", journal = j-TUGboat, volume = "15", number = "1", pages = "75--75", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-1-70, author = "Anonymous", title = "{Meet the {Board}, {Part I}}", journal = j-TUGboat, volume = "15", number = "1", pages = "70--73", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-1-75-2, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "15", number = "1", pages = "75--76", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-1-77, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "15", number = "1", pages = "77--78", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-1-79, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "15", number = "1", pages = "79--79", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-1-81, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "15", number = "1", pages = "81--81", month = mar, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-2-87, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "15", number = "2", pages = "87--88", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB15-2-89, author = "Christina Thiele", title = "Opening words", journal = j-TUGboat, volume = "15", number = "2", pages = "89--89", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB15-2-89, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "15", number = "2", pages = "89--91", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB15-2-92, author = "Michel Goossens", title = "{{WEPT}: {A Week} on {Electronic Publishing} and {Typography}}", journal = j-TUGboat, volume = "15", number = "2", pages = "92--95", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB15-2-96, author = "Philip Taylor", title = "{Report of the 2nd meeting of the {NTS} group, {February} 1994}", journal = j-TUGboat, volume = "15", number = "2", pages = "96--97", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB15-2-97, author = "Alan Hoenig", title = "{$\{$Meta$\}${Font Forum} redux}", journal = j-TUGboat, volume = "15", number = "2", pages = "97--97", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ramasubramanian:TB15-2-98, author = "R. Ramasubramanian and R. W. D. Nickalls and M. A. Reed", title = "{{ASCII.sty}: {A} new style-option and encoded font with {IBM} graphics control characters for use with {\TeX} and {\LaTeX}}", journal = j-TUGboat, volume = "15", number = "2", pages = "98--103", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jones:TB15-2-103, author = "David M. Jones and David E. Wald", title = "{{Michel Goossens}, {Frank Mittelbach}, and {Alexander Samarin}, {\it The {\LaTeX} Companion}}", journal = j-TUGboat, volume = "15", number = "2", pages = "103--106", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB15-2-106, author = "Victor Eijkhout", title = "{{Norman Walsh}, {\it Making {\TeX} Work}}", journal = j-TUGboat, volume = "15", number = "2", pages = "106--107", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Andre:TB15-2-107, author = "Jacques Andr{\'e}", title = "{{Christian Rolland}, {\it {\LaTeX} guide pratique}}", journal = j-TUGboat, volume = "15", number = "2", pages = "107--107", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB15-2-107, author = "Alan Hoenig", title = "{Next{\TeX}: {\TeX} plus the {NextStep} Operating System}", journal = j-TUGboat, volume = "15", number = "2", pages = "107--109", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Downes:TB15-2-110, author = "Michael Downes", title = "{Interaction tools: {\tt dialog.sty} and {\tt menus.sty}}", journal = j-TUGboat, volume = "15", number = "2", pages = "110--130", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gaulle:TB15-2-131, author = "Bernard Gaulle", title = "{{\LaTeX} {V3}: philology \& typography, reports to read, reports to do}", journal = j-TUGboat, volume = "15", number = "2", pages = "131--131", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beccari:TB15-2-131, author = "Claudio Beccari", title = "{Tough table becomes easy with {\PiCTeX}, but it's even easier with {\LaTeX}}", journal = j-TUGboat, volume = "15", number = "2", pages = "131--132", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anagnostopolous:TB15-2-132, author = "Paul Anagnostopolous", title = "{On the review of {\it {\TeX} in Practice}}", journal = j-TUGboat, volume = "15", number = "2", pages = "132--132", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-2-133, author = "Anonymous", title = "{Baskerville, {Volume} 4, {Nos.} 1--2}", journal = j-TUGboat, volume = "15", number = "2", pages = "133--136", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-2-136, author = "Anonymous", title = "{Cahiers {GUTenberg} {Nos.} 16 and 17}", journal = j-TUGboat, volume = "15", number = "2", pages = "136--137", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-2-138, author = "Anonymous", title = "{Die {\TeX}nische {Kom\"odie} 1993, {Heft} 1--4}", journal = j-TUGboat, volume = "15", number = "2", pages = "138--142", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-2-143, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "15", number = "2", pages = "143--144", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-2-160, author = "Anonymous", title = "{{TUG}\,'95\Dash {St. Petersburg}, {Florida}}", journal = j-TUGboat, volume = "15", number = "2", pages = "160", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB15-2-148, author = "Barbara Beeton", title = "Production notes", journal = j-TUGboat, volume = "15", number = "2", pages = "148--149", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-2-149, author = "Anonymous", title = "Coming next issue", journal = j-TUGboat, volume = "15", number = "2", pages = "149--149", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB15-2-150, author = "Barbara Beeton", title = "{Change in {\TUB} policy}", journal = j-TUGboat, volume = "15", number = "2", pages = "150--150", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-2-145, author = "Anonymous", title = "{Meet the {Board}, {Part II}}", journal = j-TUGboat, volume = "15", number = "2", pages = "145--148", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-2-151, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "15", number = "2", pages = "151--152", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-2-155, author = "Anonymous", title = "{{TUG} membership application}", journal = j-TUGboat, volume = "15", number = "2", pages = "155--156", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-2-152, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "15", number = "2", pages = "152--153", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-2-154, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "15", number = "2", pages = "154--154", month = jun, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-3-166, author = "Anonymous", title = "Editorial and production notes", journal = j-TUGboat, volume = "15", number = "3", pages = "166--166", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-3-167, author = "Anonymous", title = "{Acknowledgements and {Conference Program}: {Innovation}}", journal = j-TUGboat, volume = "15", number = "3", pages = "167--168", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bigelow:TB15-3-169, author = "Charles Bigelow", title = "{Lucida and {\TeX}: lessons of logic and history}", journal = j-TUGboat, volume = "15", number = "3", pages = "169--169", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB15-3-170, author = "Frank Mittelbach and Michel Goossens", title = "{Real life book production\Dash lessons learned from {\it The {\LaTeX} Companion}}", journal = j-TUGboat, volume = "15", number = "3", pages = "170--173", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB15-3-174, author = "Yannis Haralambous", title = "{Typesetting the holy {Bible} in {Hebrew}, with {\TeX}}", journal = j-TUGboat, volume = "15", number = "3", pages = "174--191", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Cohen:TB15-3-192, author = "Michel Cohen", title = "Adaptive character generation and spatial expressiveness", journal = j-TUGboat, volume = "15", number = "3", pages = "192--198", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB15-3-199, author = "Yannis Haralambous", title = "Humanist", journal = j-TUGboat, volume = "15", number = "3", pages = "199--199", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Malyshev:TB15-3-200, author = "Basil Malyshev", title = "{Automatic conversion of {\MF} fonts to {Type}-1 {\PS}}", journal = j-TUGboat, volume = "15", number = "3", pages = "200--200", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hafner:TB15-3-201, author = "James Hafner", title = "{The (pre)history of color in {Rokicki}'s {\tt dvips}}", journal = j-TUGboat, volume = "15", number = "3", pages = "201--204", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rokicki:TB15-3-205, author = "Tom Rokicki", title = "Advanced `special' support in a dvi driver", journal = j-TUGboat, volume = "15", number = "3", pages = "205--212", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Duggan:TB15-3-213, author = "Angus Duggan", title = "{Colour separation and {\PS}}", journal = j-TUGboat, volume = "15", number = "3", pages = "213--217", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rahtz:TB15-3-218, author = "Sebastian Rahtz and Michel Goossens", title = "{Simple colour design with {\LaTeXe}}", journal = j-TUGboat, volume = "15", number = "3", pages = "218--222", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sowa:TB15-3-223, author = "Friedhelm Sowa", title = "Printing colour pictures", journal = j-TUGboat, volume = "15", number = "3", pages = "223--227", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sofka:TB15-3-228, author = "Michael Sofka", title = "{Color book production using {\TeX}}", journal = j-TUGboat, volume = "15", number = "3", pages = "228--238", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Zandt:TB15-3-239, author = "Timothy van Zandt and Denis Girou", title = "{Inside {PSTricks}}", journal = j-TUGboat, volume = "15", number = "3", pages = "239--246", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Stenerson:TB15-3-247, author = "Jon Stenerson", title = "{A {\LaTeX} style file generator}", journal = j-TUGboat, volume = "15", number = "3", pages = "247--254", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Braams:TB15-3-255, author = "Johannes Braams", title = "{Document classes and packages in {\LaTeXe}}", journal = j-TUGboat, volume = "15", number = "3", pages = "255--262", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jeffrey:TB15-3-263, author = "Alan Jeffrey", title = "{{\PS} font support in {\LaTeXe}}", journal = j-TUGboat, volume = "15", number = "3", pages = "263--268", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Patashnik:TB15-3-269, author = "Oren Patashnik", title = "{{\BibTeX} 1.0}", journal = j-TUGboat, volume = "15", number = "3", pages = "269--273", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB15-3-274, author = "Pierre MacKay", title = "A typesetter's toolkit", journal = j-TUGboat, volume = "15", number = "3", pages = "274--284", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Barnett:TB15-3-285, author = "Michael P. Barnett and Kevin R. Perry", title = "Symbolic computation for electronic publishing", journal = j-TUGboat, volume = "15", number = "3", pages = "285--292", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kawaguti:TB15-3-293, author = "Minato Kawaguti and Norio Kitajima", title = "{Concurrent use of interactive {\TeX} previewer with an {Emacs}-type editor}", journal = j-TUGboat, volume = "15", number = "3", pages = "293--300", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB15-3-301, author = "Yannis Haralambous", title = "{An Indic {\TeX} preprocessor\Dash {Sinhalese} {\TeX}}", journal = j-TUGboat, volume = "15", number = "3", pages = "301--301", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Doumont:TB15-3-302, author = "Jean-Luc Doumont", title = "{Pascal pretty-printing: an example of ``preprocessing within {\TeX}''}", journal = j-TUGboat, volume = "15", number = "3", pages = "302--307", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Schrod:TB15-3-309, author = "Joachim Schrod", title = "{Towards interactivity for {\TeX}}", journal = j-TUGboat, volume = "15", number = "3", pages = "309--317", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rowley:TB15-3-318, author = "Chris Rowley and Frank Mittelbach", title = "The floating world", journal = j-TUGboat, volume = "15", number = "3", pages = "318--318", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB15-3-319, author = "Don Hosek", title = "{Sophisticated page layout with {\TeX}}", journal = j-TUGboat, volume = "15", number = "3", pages = "319--319", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Plaice:TB15-3-320, author = "John Plaice", title = "{Progress in the {Omega} project}", journal = j-TUGboat, volume = "15", number = "3", pages = "320--324", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ogawa:TB15-3-325, author = "Arthur Ogawa", title = "{Object-oriented programming, descriptive markup, and {\TeX}}", journal = j-TUGboat, volume = "15", number = "3", pages = "325--330", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Baxter:TB15-3-331, author = "William Erik Baxter", title = "{An object-oriented programming system in {\TeX}}", journal = j-TUGboat, volume = "15", number = "3", pages = "331--338", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Walsh:TB15-3-339, author = "Norm Walsh", title = "{A {World Wide} {Web} interface to {\CTAN}}", journal = j-TUGboat, volume = "15", number = "3", pages = "339--343", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB15-3-344, author = "Yannis Haralambous and John Plaice", title = "{First applications of $\Omega$: {Adobe Poetica}, {Arabic}, {Greek}, {Khmer}}", journal = j-TUGboat, volume = "15", number = "3", pages = "344--352", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB15-3-353, author = "Philip Taylor", title = "{$\varepsilon$-{\TeX} \& {\NTS}: A progress report}", journal = j-TUGboat, volume = "15", number = "3", pages = "353--358", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laugier:TB15-3-359, author = "Maurice Laugier and Yannis Haralambous", title = "{{\TeX} innovations by the {Louis-Jean} {Printing House}}", journal = j-TUGboat, volume = "15", number = "3", pages = "359--359", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Downes:TB15-3-360, author = "Michael Downes", title = "Design by template in a production macro package", journal = j-TUGboat, volume = "15", number = "3", pages = "360--368", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB15-3-369, author = "Alan Hoenig", title = "{Less is {More}: {Restricting} {\TeX}'s scope enables complex page layouts}", journal = j-TUGboat, volume = "15", number = "3", pages = "369--380", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fine:TB15-3-381, author = "Jonathan Fine", title = "Documents, compuscripts, programs and macros", journal = j-TUGboat, volume = "15", number = "3", pages = "381--385", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Grobelnik:TB15-3-386, author = "Marko Grobelnik and Dunja Mladeni{\'c} and Darko Zupani\v{c} and Borut \v{Z}nidar", title = "{Integrated system for encyclopaedia typesetting based on {\TeX}}", journal = j-TUGboat, volume = "15", number = "3", pages = "386--387", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Baragar:TB15-3-388, author = "Henry Baragar and Gail E. Harris", title = "{An example of a special purpose input language to {\LaTeX}}", journal = j-TUGboat, volume = "15", number = "3", pages = "388--396", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-3-397, author = "Anonymous", title = "Color pages", journal = j-TUGboat, volume = "15", number = "3", pages = "397--404", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-3-405, author = "Anonymous", title = "{Participants at the {Annual Meeting}}", journal = j-TUGboat, volume = "15", number = "3", pages = "405--407", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-3-408, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "15", number = "3", pages = "408--409", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-3-409, author = "Anonymous", title = "{1995 {Knuth Scholarship}}", journal = j-TUGboat, volume = "15", number = "3", pages = "409--410", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-3-411, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "15", number = "3", pages = "411--412", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-3-415, author = "Anonymous", title = "{{TUG} membership application}", journal = j-TUGboat, volume = "15", number = "3", pages = "415--416", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-3-412, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "15", number = "3", pages = "412--413", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-3-417, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "15", number = "3", pages = "417--417", month = sep, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-4-423, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "15", number = "4", pages = "423--424", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB15-4-425, author = "Christina Thiele", title = "Opening words", journal = j-TUGboat, volume = "15", number = "4", pages = "425--425", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB15-4-426, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "15", number = "4", pages = "426--427", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB15-4-427, author = "Michel Goossens and Sebastian Rahz and Barbara Beeton", title = "{The {TUG94 Proceedings}\Dash {Apologia}}", journal = j-TUGboat, volume = "15", number = "4", pages = "427--428", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bolland:TB15-4-429, author = "Julita Bolland and Toni Walter and W{\l}odek Bzyl", title = "{Euro{\TeX}94}", journal = j-TUGboat, volume = "15", number = "4", pages = "429--433", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB15-4-434, author = "Philip Taylor", title = "{Minutes of the {NTS} meeting held at {Lindau} on {October} 11/12th 1994}", journal = j-TUGboat, volume = "15", number = "4", pages = "434--437", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laugier:TB15-4-438, author = "Maurice Laugier and Yannis Haralambous", title = "{{\TeX} innovations at the {Louis-Jean} printing house}", journal = j-TUGboat, volume = "15", number = "4", pages = "438--443", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{MacKay:TB15-4-444, author = "Pierre A. MacKay", title = "{Recycled {\MF}}", journal = j-TUGboat, volume = "15", number = "4", pages = "444--446", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB15-4-447, author = "Yannis Haralambous", title = "{{\it Indica}, an {Indic} preprocessor for {\TeX}: {A Sinhalese} {\TeX} system}", journal = j-TUGboat, volume = "15", number = "4", pages = "447--458", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Olsak:TB15-4-459, author = "Petr Ol{\v{s}}{\'a}k", title = "{The {EAN} barcodes by {\TeX}}", journal = j-TUGboat, volume = "15", number = "4", pages = "459--464", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB15-4-464, author = "Philip Taylor", title = "{An open letter to the {TUG Board}}", journal = j-TUGboat, volume = "15", number = "4", pages = "464--465", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Feruglio:TB15-4-466, author = "Gabriel Valiente Feruglio", title = "Typesetting commutative diagrams", journal = j-TUGboat, volume = "15", number = "4", pages = "466--484", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB15-4-485, author = "Victor Eijkhout", title = "The bag of tricks", journal = j-TUGboat, volume = "15", number = "4", pages = "485--405", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Richer:TB15-4-486, author = "Jacques Richer", title = "{A {\TeX} autostereogram generator}", journal = j-TUGboat, volume = "15", number = "4", pages = "486--492", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fossmeier:TB15-4-492, author = "Reinhard F{\"o}{\ss}meier", title = "{Stereographic pictures using {\TeX}}", journal = j-TUGboat, volume = "15", number = "4", pages = "492--495", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Braams:TB15-4-496, author = "Johannes Braams", title = "To reset or not to reset", journal = j-TUGboat, volume = "15", number = "4", pages = "496--497", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-4-498, author = "Anonymous", title = "{Cahiers {GUTenberg} {Nos.} 18 and 19}", journal = j-TUGboat, volume = "15", number = "4", pages = "498--499", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-4-500, author = "Anonymous", title = "{Abstracts of the {\it {Proceedings} of the {Eighth European} {\TeX} {Conference}}, {Gda\'nsk}, {September} 1994}", journal = j-TUGboat, volume = "15", number = "4", pages = "500--503", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-4-505, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "15", number = "4", pages = "505--504", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB15-4-505, author = "Barbara Beeton", title = "Production notes", journal = j-TUGboat, volume = "15", number = "4", pages = "505--505", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-4-506, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "15", number = "4", pages = "506--506", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-4-507, author = "Anonymous", title = "{{TUG} membership application}", journal = j-TUGboat, volume = "15", number = "4", pages = "507--507", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB15-4-508, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "15", number = "4", pages = "508--508", month = dec, year = "1994", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-1-3, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "16", number = "1", pages = "3--4", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bzyl:TB16-1-4, author = "W{\l}odek Bzyl", title = "{Euro{\TeX}94 Contest Answers}", journal = j-TUGboat, volume = "16", number = "1", pages = "4--4", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB16-1-5, author = "Christina Thiele and Michel Goossens", title = "Opening words", journal = j-TUGboat, volume = "16", number = "1", pages = "5--7", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB16-1-8, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "16", number = "1", pages = "8--8", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jaegermann:TB16-1-9, author = "Michael Jaegermann", title = "{Making {\tt MakeTeXPK} safer for {Unix} installations}", journal = j-TUGboat, volume = "16", number = "1", pages = "9--12", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB16-1-12, author = "Barbara Beeton", title = "Hyphenation exception log", journal = j-TUGboat, volume = "16", number = "1", pages = "12--17", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beccari:TB16-1-18, author = "Claudio Beccari", title = "{Configuring {\TeX} or {\LaTeX} for typesetting in several languages}", journal = j-TUGboat, volume = "16", number = "1", pages = "18--30", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beccari:TB16-1-30, author = "Claudio Beccari and Radu Oprea and Elena Tulei", title = "{How to make a foreign language pattern file: {Romanian}}", journal = j-TUGboat, volume = "16", number = "1", pages = "30--41", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB16-1-42, author = "Christina Thiele", title = "{{\TeX} and {Linguistics}}", journal = j-TUGboat, volume = "16", number = "1", pages = "42--44", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB16-1-45, author = "Alan Hoenig", title = "{Introducing {\MP}}", journal = j-TUGboat, volume = "16", number = "1", pages = "45--45", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB16-1-46, author = "Yannis Haralambous", title = "{Some {\MF} techniques}", journal = j-TUGboat, volume = "16", number = "1", pages = "46--53", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Olsak:TB16-1-54, author = "Petr Ol{\v{s}}{\'a}k", title = "{The program {\tt a2ac}\Dash {Font} handling on the {\PS} level}", journal = j-TUGboat, volume = "16", number = "1", pages = "54--59", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Malyshev:TB16-1-60, author = "Basil Malyshev", title = "{Problems of the conversion of {\MF} fonts to {\PS} {Type} 1}", journal = j-TUGboat, volume = "16", number = "1", pages = "60--68", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Malyshev:TB16-1-69, author = "Basil Malyshev and Michel Goossens", title = "{Partial font embedding utilities for {\PS} {Type}-1 fonts}", journal = j-TUGboat, volume = "16", number = "1", pages = "69--77", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jeffrey:TB16-1-78, author = "Alan Jeffrey", title = "{Tight setting with {\TeX}}", journal = j-TUGboat, volume = "16", number = "1", pages = "78--80", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fujita:TB16-1-80, author = "Shinsaku Fujita", title = "{{\XYMTeX} for drawing chemical structural formulas}", journal = j-TUGboat, volume = "16", number = "1", pages = "80--88", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-1-89, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "16", number = "1", pages = "89--90", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB16-1-90, author = "Mimi Burbank", title = "Production notes", journal = j-TUGboat, volume = "16", number = "1", pages = "90--91", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-1-91, author = "Anonymous", title = "Coming next issue", journal = j-TUGboat, volume = "16", number = "1", pages = "91--91", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-1-92, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "16", number = "1", pages = "92--92", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-1-93, author = "Anonymous", title = "{{TUG} membership application}", journal = j-TUGboat, volume = "16", number = "1", pages = "93--93", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-1-94, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "16", number = "1", pages = "94--94", month = mar, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-2-99, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "16", number = "2", pages = "99--100", month = jun, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB16-2-101, author = "Michel Goossens", title = "Opening words", journal = j-TUGboat, volume = "16", number = "2", pages = "101--101", month = jun, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Clark:TB16-2-101, author = "Malcolm Clark", title = "Introduction", journal = j-TUGboat, volume = "16", number = "2", pages = "101--102", month = jun, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB16-2-103, author = "Michel Goossens and Janne Saarela", title = "{A practical introduction to {\SGML}}", journal = j-TUGboat, volume = "16", number = "2", pages = "103--145", month = jun, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB16-2-146, author = "Peter Flynn", title = "{{\HTML} \& {\TeX}: {Making} them sweat}", journal = j-TUGboat, volume = "16", number = "2", pages = "146--150", month = jun, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Granger:TB16-2-151, author = "Geeti Granger", title = "{The inside story of life at {Wiley} with {\SGML}, {\LaTeX} and {Acrobat}}", journal = j-TUGboat, volume = "16", number = "2", pages = "151--154", month = jun, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Doyle:TB16-2-154, author = "Mark D. Doyle", title = "{The {Los Alamos} e-print archives: {Hyper\TeX} in action}", journal = j-TUGboat, volume = "16", number = "2", pages = "154--159", month = jun, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Schwarzkopf:TB16-2-159, author = "Otfried Schwarzkopf", title = "{The {Hyperlatex} story}", journal = j-TUGboat, volume = "16", number = "2", pages = "159--162", month = jun, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB16-2-162, author = "Yannis Haralambous and Sebastian Rahtz", title = "{{\LaTeX}, hypertext and {\PDF}, {\it or} the entry of {\TeX} into the world of hypertext}", journal = j-TUGboat, volume = "16", number = "2", pages = "162--173", month = jun, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB16-2-174, author = "Michel Goossens and Janne Saarela", title = "{{\TeX} to {\HTML} and back}", journal = j-TUGboat, volume = "16", number = "2", pages = "174--214", month = jun, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-2-215, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "16", number = "2", pages = "215--216", month = jun, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB16-2-100, author = "Mimi Burbank and Barbara Beeton", title = "Production notes", journal = j-TUGboat, volume = "16", number = "2", pages = "100--100", month = jun, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-2-217, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "16", number = "2", pages = "217--217", month = jun, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-2-218, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "16", number = "2", pages = "218--218", month = jun, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-2-218-2, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "16", number = "2", pages = "218--218", month = jun, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fairbairns:TB16-3-222, author = "Robin Fairbairns", title = "Production notes", journal = j-TUGboat, volume = "16", number = "3", pages = "222--222", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB16-3-223, author = "Michel Goossens", title = "President's words", journal = j-TUGboat, volume = "16", number = "3", pages = "223--226", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Zlatuska:TB16-3-227, author = "Ji\v{r}\'{\i} Zlatu{\v{s}}ka", title = "{When {\MF} does it alone}", journal = j-TUGboat, volume = "16", number = "3", pages = "227--232", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kinch:TB16-3-233, author = "Richard J. Kinch", title = "{{MetaFog}: converting {\MF} shapes to contours}", journal = j-TUGboat, volume = "16", number = "3", pages = "233--243", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB16-3-244, author = "Alan Hoenig", title = "{The {Poetica} family: fancy fonts with {\TeX} and {\LaTeX}}", journal = j-TUGboat, volume = "16", number = "3", pages = "244--252", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB16-3-253, author = "Michel Goossens and Sebastian Rahtz and Robin Fairbairns", title = "{Using {Adobe Type} 1 {Multiple Master} fonts with {\TeX}}", journal = j-TUGboat, volume = "16", number = "3", pages = "253--258", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gibbons:TB16-3-259, author = "Jeremy Gibbons", title = "{Dotted and dashed lines in {\MF}}", journal = j-TUGboat, volume = "16", number = "3", pages = "259--264", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lesenko:TB16-3-265, author = "Sergey Lesenko", title = "{Printing {\TeX} documents with partial {Type} 1 fonts}", journal = j-TUGboat, volume = "16", number = "3", pages = "265--268", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Swift:TB16-3-269, author = "Matthew Swift", title = "{Modularity in {\LaTeX}}", journal = j-TUGboat, volume = "16", number = "3", pages = "269--275", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kletzing:TB16-3-276, author = "Dennis Kletzing", title = "A multienumerate package", journal = j-TUGboat, volume = "16", number = "3", pages = "276--279", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sojka:TB16-3-280, author = "Petr Sojka and Pavel \v{S}eve\v{c}ek", title = "{Hyphenation in {\TeX} --- {Quo Vadis}?}", journal = j-TUGboat, volume = "16", number = "3", pages = "280--289", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sojka:TB16-3-290, author = "Petr Sojka", title = "{Notes on compound word hyphenation in {\TeX}}", journal = j-TUGboat, volume = "16", number = "3", pages = "290--296", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bzyl:TB16-3-297, author = "W{\l}odek Bzyl", title = "{Literate {Plain} source is available!}", journal = j-TUGboat, volume = "16", number = "3", pages = "297--299", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB16-3-300, author = "Bart Childs and Deborah Dunn and William Lively", title = "{Teaching {CS}/1 courses in a literate manner}", journal = j-TUGboat, volume = "16", number = "3", pages = "300--309", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Raman:TB16-3-310, author = "T. V. Raman", title = "{An audio view of {(\La)\TeX} documents --- part {II}}", journal = j-TUGboat, volume = "16", number = "3", pages = "310--314", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rahtz:TB16-3-315, author = "Sebastian Rahtz", title = "{Another look at {\LaTeX} to {\SGML} conversion}", journal = j-TUGboat, volume = "16", number = "3", pages = "315--324", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fairbairns:TB16-3-325, author = "Robin Fairbairns", title = "{Omega --- {Why} bother with {Unicode}?}", journal = j-TUGboat, volume = "16", number = "3", pages = "325--328", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Feruglio:TB16-3-329, author = "Gabriel Valiente Feruglio", title = "{Modern {Catalan} typographical conventions}", journal = j-TUGboat, volume = "16", number = "3", pages = "329--338", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-3-339, author = "Anonymous", title = "{{TUG}'96 Announcement}", journal = j-TUGboat, volume = "16", number = "3", pages = "339--339", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-3-340, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "16", number = "3", pages = "340--341", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-3-341, author = "Anonymous", title = "{{TUG}'95\Dash {List} of attendees}", journal = j-TUGboat, volume = "16", number = "3", pages = "341--343", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-3-344, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "16", number = "3", pages = "344--344", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-3-345, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "16", number = "3", pages = "345--345", month = sep, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-4-351, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "16", number = "4", pages = "351--352", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB16-4-353, author = "Michel Goossens", title = "Writing the future is reading the past", journal = j-TUGboat, volume = "16", number = "4", pages = "353--354", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB16-4-355, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "16", number = "4", pages = "355--357", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB16-4-357, author = "Peter Flynn", title = "{Upcoming {TTN} merger into {\TUB}}", journal = j-TUGboat, volume = "16", number = "4", pages = "357--357", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Machi:TB16-4-358, author = "Filip Machi and Jerrold E. Marsden and Wendy G. McKay", title = "{{Introduction} to {Fas\TeX}: {A} system of keyboard shortcuts for the fast keying of {\TeX}}", journal = j-TUGboat, volume = "16", number = "4", pages = "358--363", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lapko:TB16-4-364, author = "Olga Lapko and Irina Makhovaya", title = "{The style {\tt russianb} for {Babel}: {Problems} and solutions}", journal = j-TUGboat, volume = "16", number = "4", pages = "364--372", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Slepukhin:TB16-4-373, author = "Andrey Slepukhin", title = "{A package for {Church-Slavonic} typesetting}", journal = j-TUGboat, volume = "16", number = "4", pages = "373--380", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knappen:TB16-4-381, author = "J{\"o}rg Knappen", title = "{Release 1.2 of the {{\ssf dc}}-fonts: {Improvements} to the {European} letters and first release of text companion symbols}", journal = j-TUGboat, volume = "16", number = "4", pages = "381--387", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jackowski:TB16-4-388, author = "Bogus{\l}aw Jackowski", title = "{{A} {\MF}--{\acro{EPS}} interface}", journal = j-TUGboat, volume = "16", number = "4", pages = "388--395", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rokicki:TB16-4-395, author = "Tomas G. Rokicki", title = "A proposed standard for specials", journal = j-TUGboat, volume = "16", number = "4", pages = "395--401", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Structure:TB16-4-401, author = "{TUG} {Working} {Group} on a {\TeX} {Directory} {Structure}", title = "{{A} directory structure for {\TeX} files ({Version} 0.999)}", journal = j-TUGboat, volume = "16", number = "4", pages = "401--413", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rahtz:TB16-4-413, author = "Sebastian Rahtz", title = "{Whatever is wrong with my {\LaTeX} file?}", journal = j-TUGboat, volume = "16", number = "4", pages = "413--416", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fine:TB16-4-416, author = "Jonathan Fine", title = "{New perspectives on {\TeX} macros}", journal = j-TUGboat, volume = "16", number = "4", pages = "416--418", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB16-4-418, author = "Yannis Haralambous and John Plaice and Johannes Braams", title = "{Never again active characters! {$\Omega$}-{Babel}}", journal = j-TUGboat, volume = "16", number = "4", pages = "418--427", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-4-428, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "16", number = "4", pages = "428", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-4-429, author = "Anonymous", title = "{Call for papers: {TUG}\,'96}", journal = j-TUGboat, volume = "16", number = "4", pages = "429--431", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-4-427, author = "Anonymous", title = "{{TUG}\,'97\Dash {Soliciting} bids for host site}", journal = j-TUGboat, volume = "16", number = "4", pages = "427--427", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB16-4-432, author = "Michel Goossens", title = "{Euro{\TeX}\,'95, {Papendal}, {The Netherlands}, 4--8 {September} 1995}", journal = j-TUGboat, volume = "16", number = "4", pages = "432--439", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB16-4-379, author = "Michel Goossens", title = "{Production notes on the {Russian} papers}", journal = j-TUGboat, volume = "16", number = "4", pages = "379--379", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB16-4-440, author = "Mimi Burbank and Michel Goossens", title = "Production notes", journal = j-TUGboat, volume = "16", number = "4", pages = "440--440", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-4-440, author = "Anonymous", title = "Future issues", journal = j-TUGboat, volume = "16", number = "4", pages = "440--440", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-4-441, author = "Anonymous", title = "{1996 {\TeX} {Users Group} election}", journal = j-TUGboat, volume = "16", number = "4", pages = "441--441", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-4-441-2, author = "Anonymous", title = "{1996 {TUG} election\Dash nomination form}", journal = j-TUGboat, volume = "16", number = "4", pages = "441--441", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-4-442, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "16", number = "4", pages = "442--442", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-4-443, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "16", number = "4", pages = "443--443", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB16-4-443-2, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "16", number = "4", pages = "443--443", month = dec, year = "1995", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-1-3, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "17", number = "1", pages = "3--4", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-1-4, author = "Anonymous", title = "{Soliciting Bids for \acro{TUG}\,'97}", journal = j-TUGboat, volume = "17", number = "1", pages = "4--4", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB17-1-5, author = "Michel Goossens", title = "{From the President}", journal = j-TUGboat, volume = "17", number = "1", pages = "5--6", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB17-1-6, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "17", number = "1", pages = "6--7", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-1-7, author = "Anonymous", title = "{TUG\,'95: Questions and answers with Prof. Donald E. Knuth}", journal = j-TUGboat, volume = "17", number = "1", pages = "7--22", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bennett:TB17-1-22, author = "Frank G. {Bennett, Jr.}", title = "{{\smc Camel}: kicking over the bibliographic traces in {\BibTeX}}", journal = j-TUGboat, volume = "17", number = "1", pages = "22--28", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Machi:TB17-1-28, author = "Filip Machi and Jerrold E. Marsden and Wendy G. McKay", title = "{{Corrigendum: Introduction to {Fas\TeX}: a system of keyboard shortcuts for the fast keying of {\TeX} (\tubissue 16(4), pp. 358--363)}}", journal = j-TUGboat, volume = "17", number = "1", pages = "28--28", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knuth:TB17-1-29, author = "Donald E. Knuth", title = "{Important message regarding CM fonts}", journal = j-TUGboat, volume = "17", number = "1", pages = "29--29", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Zubrinic:TB17-1-29, author = "Darko \v{Z}ubrini{\'c}", title = "Croatian fonts", journal = j-TUGboat, volume = "17", number = "1", pages = "29--33", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Vesely:TB17-1-34, author = "J. Vesel{\'y}", title = "{Two new books on {\TeX} in the {Czech Republic}}", journal = j-TUGboat, volume = "17", number = "1", pages = "34--34", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Price:TB17-1-35, author = "Lynne A. Price", title = "{{Ronald C. Turner}, {Timothy A. Douglass}, and {Audrey J. Turner}, {{\it\acro{README.1ST}: \acro{SGML} for Writers and Editors}}}", journal = j-TUGboat, volume = "17", number = "1", pages = "35--37", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Porrat:TB17-1-37, author = "Rama Porrat", title = "{There's still something missing{\dots}}", journal = j-TUGboat, volume = "17", number = "1", pages = "37--37", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB17-1-37, author = "Mimi Burbank and Michel Goossens", title = "Electronic news from the family", journal = j-TUGboat, volume = "17", number = "1", pages = "37--42", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Reckdahl:TB17-1-43, author = "Keith Reckdahl", title = "{{Using \acro{EPS} graphics in {\LaTeXe} documents, Part 1: the {\ssf graphics} and {\ssf graphicx} packages}}", journal = j-TUGboat, volume = "17", number = "1", pages = "43--53", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hosek:TB17-1-53, author = "Don Hosek", title = "{That ol' devil {\tt\char`\\expandafter}}", journal = j-TUGboat, volume = "17", number = "1", pages = "53--54", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hagen:TB17-1-54, author = "J. Hagen and A. F. Otten", title = "{{\acro{PPCH\TeX}}: typesetting chemical formulas in {\TeX}}", journal = j-TUGboat, volume = "17", number = "1", pages = "54--66", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carlisle:TB17-1-67, author = "David Carlisle", title = "{{A {\LaTeX} tour, Part 1: The basic distribution}}", journal = j-TUGboat, volume = "17", number = "1", pages = "67--73", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-1-73, author = "Anonymous", title = "{Les Cahiers GUTenberg, No. 20}", journal = j-TUGboat, volume = "17", number = "1", pages = "73--74", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-1-74, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "17", number = "1", pages = "74--75", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-1-76, author = "Anonymous", title = "{TUG\,'96 Preliminary schedule}", journal = j-TUGboat, volume = "17", number = "1", pages = "76--77", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB17-1-78, author = "Mimi Burbank", title = "Production notes", journal = j-TUGboat, volume = "17", number = "1", pages = "78--78", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-1-78, author = "Anonymous", title = "Future issues", journal = j-TUGboat, volume = "17", number = "1", pages = "78--78", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-1-79, author = "Anonymous", title = "{TUG Bylaws}", journal = j-TUGboat, volume = "17", number = "1", pages = "79--83", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-1-84, author = "Anonymous", title = "{1996 \acro{TUG} election cancelled}", journal = j-TUGboat, volume = "17", number = "1", pages = "84--84", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-1-84-2, author = "Anonymous", title = "{TUG Board}", journal = j-TUGboat, volume = "17", number = "1", pages = "84--84", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-1-85, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "17", number = "1", pages = "85--85", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-1-86, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "17", number = "1", pages = "86--86", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-1-87, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "17", number = "1", pages = "87--87", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-1-87-2, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "17", number = "1", pages = "87--87", month = mar, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB17-2-91, author = "Michel Goossens", title = "{Opening Words by the President}", journal = j-TUGboat, volume = "17", number = "2", pages = "91--91", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Piska:TB17-2-92, author = "Karel P\'{\i}{\v{s}}ka", title = "Cyrillic alphabets", journal = j-TUGboat, volume = "17", number = "2", pages = "92--98", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Knappen:TB17-2-99, author = "J{{\"o}}rg Knappen", title = "{{The {\ssf dc} fonts 1.3: Move towards stability and completeness}}", journal = j-TUGboat, volume = "17", number = "2", pages = "99--101", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rei:TB17-2-102, author = "Fukui Rei", title = "{{\ssf TIPA}: {A system for processing phonetic symbols in {\LaTeX}}}", journal = j-TUGboat, volume = "17", number = "2", pages = "102--114", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berdnikov:TB17-2-115, author = "A. S. Berdnikov", title = "{Computer Modern Typefaces as Multiple Master Fonts}", journal = j-TUGboat, volume = "17", number = "2", pages = "115--119", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berdnikov:TB17-2-120, author = "A. S. Berdnikov", title = "{{\sl VFComb} 1.3\Dash the program which simplifies virtual font management}", journal = j-TUGboat, volume = "17", number = "2", pages = "120--125", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB17-2-126, author = "Yannis Haralambous", title = "{$\Omega$Times and $\Omega$Helvetica fonts under development: Step One}", journal = j-TUGboat, volume = "17", number = "2", pages = "126--146", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kinch:TB17-2-147, author = "Richard J. Kinch", title = "{{Extending {\TeX} for Unicode}}", journal = j-TUGboat, volume = "17", number = "2", pages = "147--160", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Znamenskaya:TB17-2-161, author = "L. N. Znamenskaya and S. V. Znamenskii", title = "{Russian encoding plurality problem and a new Cyrillic font set}", journal = j-TUGboat, volume = "17", number = "2", pages = "161--165", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ovchenkov:TB17-2-166, author = "Peter A. Ovchenkov", title = "{Cyrillic {\TeX} files: interplatform portability}", journal = j-TUGboat, volume = "17", number = "2", pages = "166--171", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Vinogradov:TB17-2-172, author = "Michael M. Vinogradov", title = "{{A user-friendly multi-function {\TeX} interface based on Multi-Edit}}", journal = j-TUGboat, volume = "17", number = "2", pages = "172--174", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lapko:TB17-2-174, author = "Olga G. Lapko", title = "{Full Cyrillic: How many languages?}", journal = j-TUGboat, volume = "17", number = "2", pages = "174--180", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Plaice:TB17-2-181, author = "John Plaice and Yannis Haralambous", title = "{The latest developments in {$\Omega$}}", journal = j-TUGboat, volume = "17", number = "2", pages = "181--183", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Langmyhr:TB17-2-184, author = "Dag Langmyhr", title = "{{Star\TeX\Dash a {\TeX} for beginners}}", journal = j-TUGboat, volume = "17", number = "2", pages = "184--190", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Feruglio:TB17-2-191, author = "Gabriel Valiente Feruglio", title = "{Do journals honor {\LaTeX} submissions?}", journal = j-TUGboat, volume = "17", number = "2", pages = "191--199", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Znamenskii:TB17-2-200, author = "Sergei V. Znamenskii and Denis E. Leinartas", title = "{{A new approach to the {\TeX}-related programs: A user-friendly interface}}", journal = j-TUGboat, volume = "17", number = "2", pages = "200--203", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Vsesvetsky:TB17-2-204, author = "Ivan G. Vsesvetsky", title = "{The strait gate to {\TeX}}", journal = j-TUGboat, volume = "17", number = "2", pages = "204--205", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Siebenmann:TB17-2-206, author = "Laurent Siebenmann", title = "{DVI-based electronic publication}", journal = j-TUGboat, volume = "17", number = "2", pages = "206--214", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laan:TB17-2-215, author = "Kees van der Laan", title = "{BLUe's format\Dash the off-off alternative}", journal = j-TUGboat, volume = "17", number = "2", pages = "215--221", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laan:TB17-2-222, author = "Kees van der Laan", title = "{Turtle graphics and {\TeX}\Dash a child can do it}", journal = j-TUGboat, volume = "17", number = "2", pages = "222--228", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berdnikov:TB17-2-229, author = "A. S. Berdnikov and O. A. Grineva and S. B. Turtia", title = "{Some useful macros which extend the {\LaTeX} {\tt picture} environment}", journal = j-TUGboat, volume = "17", number = "2", pages = "229--232", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB17-2-90, author = "Mimi Burbank", title = "Production notes", journal = j-TUGboat, volume = "17", number = "2", pages = "90--90", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-2-233, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "17", number = "2", pages = "233--233", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-2-234, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "17", number = "2", pages = "234--234", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-2-235, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "17", number = "2", pages = "235--235", month = jun, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-3-239, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "17", number = "3", pages = "239--239", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB17-3-241, author = "Michel Goossens", title = "{From the President}", journal = j-TUGboat, volume = "17", number = "3", pages = "241--243", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB17-3-243, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "17", number = "3", pages = "243--244", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sojka:TB17-3-244, author = "Petr Sojka and Han The Thanh and Ji\v{r}{\'{\i}}Zlatu{\v{s}}ka", title = "{{The joy of {\TeX}2\acro{PDF}\Dash Acrobatics with an alternative to \acro{DVI} format}}", journal = j-TUGboat, volume = "17", number = "3", pages = "244--251", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lesenko:TB17-3-252, author = "Sergey Lesenko", title = "{{The \acro{DVIPDF} Program}}", journal = j-TUGboat, volume = "17", number = "3", pages = "252--254", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fine:TB17-3-255, author = "Jonathan Fine", title = "{{Editing {\tt .dvi} files, or Visual {\TeX}}}", journal = j-TUGboat, volume = "17", number = "3", pages = "255--259", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Makhovaya:TB17-3-259, author = "Irina A. Makhovaya", title = "{{{\TeX} in Russia: ab ovo, or, About the {\TeX}nical evolution in Russia}}", journal = j-TUGboat, volume = "17", number = "3", pages = "259--264", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rahtz:TB17-3-264, author = "Sebastian Rahtz", title = "{{{\LaTeX}, {\it dvips}, \acro{EPS} and the Web \dots}}", journal = j-TUGboat, volume = "17", number = "3", pages = "264--268", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laan:TB17-3-269, author = "Kees van der Laan", title = "{{Graphics and {\TeX}\Dash A reappraisal of {\MF}/MetaPost/{\PS}}}", journal = j-TUGboat, volume = "17", number = "3", pages = "269--279", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thompson:TB17-3-280, author = "David Thompson", title = "{{Stanley Sawyer and Steven Krantz}, {\it A {\TeX} Primer for Scientists}}", journal = j-TUGboat, volume = "17", number = "3", pages = "280--280", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bzyl:TB17-3-281, author = "W{\l}odek Bzyl", title = "{{David Salomon}, {\it The Advanced {\TeX}book}}", journal = j-TUGboat, volume = "17", number = "3", pages = "281--282", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fairbairns:TB17-3-282, author = "Robin Fairbairns", title = "{The new ({\LaTeXe}) {\TUB} macros}", journal = j-TUGboat, volume = "17", number = "3", pages = "282--288", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Reckdahl:TB17-3-288, author = "Keith Reckdahl", title = "{{Using \acro{EPS} graphics in {\LaTeXe} documents, Part 2: Floating figures, boxed figures, captions, and math in figures}}", journal = j-TUGboat, volume = "17", number = "3", pages = "288--310", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Saludes:TB17-3-310, author = "Jordi Saludes", title = "Fast and secure multiple-option tests", journal = j-TUGboat, volume = "17", number = "3", pages = "310--319", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Schmitt:TB17-3-319, author = "Peter Schmitt", title = "{A puzzling {\TeX} macro}", journal = j-TUGboat, volume = "17", number = "3", pages = "319--320", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carlisle:TB17-3-321, author = "David Carlisle", title = "{{A {\LaTeX} tour, Part 2: The {\ssf tools} and {\ssf graphics} distributions}}", journal = j-TUGboat, volume = "17", number = "3", pages = "321--326", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-3-326, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "17", number = "3", pages = "326--327", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB17-3-327, author = "Mimi Burbank", title = "Production notes", journal = j-TUGboat, volume = "17", number = "3", pages = "327--327", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-3-327, author = "Anonymous", title = "Future issues", journal = j-TUGboat, volume = "17", number = "3", pages = "327--327", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-3-328, author = "Anonymous", title = "{{\acro{TUG}'97 Call for Papers}}", journal = j-TUGboat, volume = "17", number = "3", pages = "328--328", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-3-240, author = "Anonymous", title = "{{1997 \acro{TUG} Election}}", journal = j-TUGboat, volume = "17", number = "3", pages = "240--240", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-3-329, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "17", number = "3", pages = "329--329", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-3-330, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "17", number = "3", pages = "330--330", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-3-331, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "17", number = "3", pages = "331--331", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-3-331-2, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "17", number = "3", pages = "331--331", month = sep, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-4-335, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "17", number = "4", pages = "335--335", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-4-336, author = "Anonymous", title = "{{\acro{TUG}'97 Update}}", journal = j-TUGboat, volume = "17", number = "4", pages = "336--336", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB17-4-337, author = "Michel Goossens", title = "{{The state of \acro{TUG}}}", journal = j-TUGboat, volume = "17", number = "4", pages = "337--340", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB17-4-340, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "17", number = "4", pages = "340--342", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-4-342, author = "Anonymous", title = "{{Amsterdam, 13 March 1996\Dash Knuth meets \acro{NTG} members}}", journal = j-TUGboat, volume = "17", number = "4", pages = "342--355", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-4-355, author = "Anonymous", title = "{{{\CSTUG}, Charles University, Prague, March 1996\Dash Questions and answers with Prof. Donald E. Knuth}}", journal = j-TUGboat, volume = "17", number = "4", pages = "355--367", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB17-4-367, author = "Philip Taylor", title = "{Computer typesetting or electronic publishing? New trends in scientific publication}", journal = j-TUGboat, volume = "17", number = "4", pages = "367--381", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Strelkov:TB17-4-382, author = "S. A. Strelkov and G. R. Epshtein", title = "{{Making indices for \acro{VINITI}'s ``Mathematics'' abstract journal}}", journal = j-TUGboat, volume = "17", number = "4", pages = "382--385", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Grinchuk:TB17-4-385, author = "Mikhail Ivanovich Grinchuk", title = "{{{\TeX} and Russian traditions of typesetting}}", journal = j-TUGboat, volume = "17", number = "4", pages = "385--388", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB17-4-388, author = "Christina Thiele", title = "{{{\TeX} and the Humanities}}", journal = j-TUGboat, volume = "17", number = "4", pages = "388--393", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fine:TB17-4-393, author = "Jonathan Fine", title = "{{\it The Printing Revolution in Early Modern Europe}, by {Elizabeth L. Eisenstein}}", journal = j-TUGboat, volume = "17", number = "4", pages = "393--396", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gratzer:TB17-4-396, author = "George Gr{\"a}tzer", title = "{Suggestions wanted for new edition of {\it Math into \LaTeX}}", journal = j-TUGboat, volume = "17", number = "4", pages = "396--396", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kuypers:TB17-4-396, author = "Dirk Kuypers", title = "{{\acro{PPCHTEX} molecule templates}}", journal = j-TUGboat, volume = "17", number = "4", pages = "396--396", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-4-397, author = "Anonymous", title = "{Les Cahiers GUTenberg, Nos. 21--24}", journal = j-TUGboat, volume = "17", number = "4", pages = "397--403", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-4-403, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "17", number = "4", pages = "403--405", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB17-4-405, author = "Mimi Burbank", title = "Production notes", journal = j-TUGboat, volume = "17", number = "4", pages = "405--405", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-4-405, author = "Anonymous", title = "Future issues", journal = j-TUGboat, volume = "17", number = "4", pages = "405--405", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB17-4-405-2, author = "Mimi Burbank", title = "{Facts and Figures}", journal = j-TUGboat, volume = "17", number = "4", pages = "405--408", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-4-409, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "17", number = "4", pages = "409--409", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-4-410, author = "Anonymous", title = "{{TUG} membership application}", journal = j-TUGboat, volume = "17", number = "4", pages = "410--410", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-4-411, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "17", number = "4", pages = "411--411", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB17-4-411-2, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "17", number = "4", pages = "411--411", month = dec, year = "1996", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-1-3, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "18", number = "1", pages = "3--3", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-1-4, author = "Anonymous", title = "{Notice regarding 1997 {\TeX} {Users Group} election}", journal = j-TUGboat, volume = "18", number = "1", pages = "4--4", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB18-1-5, author = "Michel Goossens", title = "{From the {President}}", journal = j-TUGboat, volume = "18", number = "1", pages = "5--5", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB18-1-5, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "18", number = "1", pages = "5--6", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-1-6, author = "Anonymous", title = "{Erratum: {Amsterdam}, 13 {March} 1996\Dash {Knuth} meets \acro{NTG} members, \tubissue 17(4), pp. 342--355}", journal = j-TUGboat, volume = "18", number = "1", pages = "6--6", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB18-1-6, author = "Philip Taylor", title = "{{NTS} \& {$\varepsilon$}-{\TeX}: a status report}", journal = j-TUGboat, volume = "18", number = "1", pages = "6--12", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Vieth:TB18-1-12, author = "Ulrik Vieth", title = "{A {GNU Emacs} editing mode for {\MF} and {\MP} sources}", journal = j-TUGboat, volume = "18", number = "1", pages = "12--16", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB18-1-17, author = "Yannis Haralambous", title = "{The {Traditional Arabic} {Typecase}, {Unicode}, {\TeX} and {\MF}}", journal = j-TUGboat, volume = "18", number = "1", pages = "17--29", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Weenen:TB18-1-30, author = "Andrea de Leeuw van Weenen", title = "{A {Medieval Icelandic} manuscript: {The} making of a diplomatic edition}", journal = j-TUGboat, volume = "18", number = "1", pages = "30--36", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sofka:TB18-1-37, author = "Michael D. Sofka", title = "{{\it Writing with \TeX{}}, and {\it \TeX\ \& \LaTeX: Drawing \& Literate Programming}, by {Eitan M. Gurari}}", journal = j-TUGboat, volume = "18", number = "1", pages = "37--38", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beccari:TB18-1-39, author = "Claudio Beccari", title = "{Typesetting mathematics for science and technology according to {ISO\,31/XI}}", journal = j-TUGboat, volume = "18", number = "1", pages = "39--48", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carlisle:TB18-1-48, author = "David Carlisle", title = "{A {\LaTeX} {Tour}, part 3: {\ssf mfnfss}, {\ssf psnfss} and {\ssf babel}}", journal = j-TUGboat, volume = "18", number = "1", pages = "48--55", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-1-56, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "18", number = "1", pages = "56--67", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB18-1-57, author = "Mimi Burbank", title = "Production notes", journal = j-TUGboat, volume = "18", number = "1", pages = "57--57", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-1-57, author = "Anonymous", title = "Future issues", journal = j-TUGboat, volume = "18", number = "1", pages = "57--57", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-1-58, author = "Anonymous", title = "{{\acro{TUG}'97 {Update}}}", journal = j-TUGboat, volume = "18", number = "1", pages = "58--58", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-1-59, author = "Anonymous", title = "{New members of the {TUG Board}}", journal = j-TUGboat, volume = "18", number = "1", pages = "59--60", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-1-61, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "18", number = "1", pages = "61--61", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-1-62, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "18", number = "1", pages = "62--62", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-1-63, author = "Anonymous", title = "{{\TeX{} consulting and production services}}", journal = j-TUGboat, volume = "18", number = "1", pages = "63--63", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-1-57-2, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "18", number = "1", pages = "57--57", month = mar, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-2-67, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "18", number = "2", pages = "67--67", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kopriva:TB18-2-68, author = "Phil Kopriva", title = "Letter from a member", journal = j-TUGboat, volume = "18", number = "2", pages = "68--68", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB18-2-69, author = "Michel Goossens", title = "{From the {President}}", journal = j-TUGboat, volume = "18", number = "2", pages = "69--71", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB18-2-72, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "18", number = "2", pages = "72--73", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB18-2-74, author = "Peter Flynn", title = "{{\acro{TTN}} returns: {Final} \acro{TTN} editorial}", journal = j-TUGboat, volume = "18", number = "2", pages = "74--74", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gibbons:TB18-2-75, author = "Jeremy Gibbons", title = "{`Hey\Dash it works!'}", journal = j-TUGboat, volume = "18", number = "2", pages = "75--78", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB18-2-78, author = "Christina Thiele", title = "{{\TeX} and the {Humanities}}", journal = j-TUGboat, volume = "18", number = "2", pages = "78--78", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Grant:TB18-2-79, author = "Michael C. Grant", title = "{Volunteers needed: {PSfrag} hackers}", journal = j-TUGboat, volume = "18", number = "2", pages = "79--79", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Chow:TB18-2-79, author = "Sidney Chow", title = "{Features for a \acro{WYSIWYG} {\LaTeX} editor}", journal = j-TUGboat, volume = "18", number = "2", pages = "79--79", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-2-80, author = "Anonymous", title = "New publications", journal = j-TUGboat, volume = "18", number = "2", pages = "80--80", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rahtz:TB18-2-81, author = "Sebastian Rahtz and Michel Goossens", title = "{The {\bf{\TeXLive}} {Guide}, version 2}", journal = j-TUGboat, volume = "18", number = "2", pages = "81--112", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB18-2-113, author = "Alan Hoenig", title = "Virtual fonts, virtuous fonts", journal = j-TUGboat, volume = "18", number = "2", pages = "113--121", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-2-121, author = "Anonymous", title = "{Les {Cahiers GUTenberg}, contents of {Issue} 25}", journal = j-TUGboat, volume = "18", number = "2", pages = "121--122", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-2-122, author = "Anonymous", title = "{Die {\TeX}nische {Kom\"odie} {\bf7}, 1995, {Heft} 1--4; {\bf8}, 1996, {Heft} 1--4}", journal = j-TUGboat, volume = "18", number = "2", pages = "122--126", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{L3PT:TB18-2-127, author = "{{\LaTeX\,3} Project Team}", title = "{Modifying {\LaTeX}}", journal = j-TUGboat, volume = "18", number = "2", pages = "127--130", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-2-130, author = "Anonymous", title = "{News from the {\LaTeX\,3} {Project Team}}", journal = j-TUGboat, volume = "18", number = "2", pages = "130--137", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-2-138, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "18", number = "2", pages = "138--138", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-2-139, author = "Anonymous", title = "{{\acro{TUG}'97 preliminary program}}", journal = j-TUGboat, volume = "18", number = "2", pages = "139--140", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB18-2-130, author = "Mimi Burbank", title = "Production notes", journal = j-TUGboat, volume = "18", number = "2", pages = "130--130", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-2-130-2, author = "Anonymous", title = "Future issues", journal = j-TUGboat, volume = "18", number = "2", pages = "130--130", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-2-141, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "18", number = "2", pages = "141--141", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-2-142, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "18", number = "2", pages = "142--142", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-2-143, author = "Anonymous", title = "{{\TeX{} consulting and production services}}", journal = j-TUGboat, volume = "18", number = "2", pages = "143--143", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-2-138-2, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "18", number = "2", pages = "138--138", month = jun, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-3-146, author = "Anonymous", title = "{Call for {Papers}}", journal = j-TUGboat, volume = "18", number = "3", pages = "146--146", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jett:TB18-3-147, author = "Mimi Jett", title = "{Opening {Words} by the {President}}", journal = j-TUGboat, volume = "18", number = "3", pages = "147--148", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-3-149, author = "Anonymous", title = "{{\acro{TUG}'97} program}", journal = j-TUGboat, volume = "18", number = "3", pages = "149--149", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rose:TB18-3-151, author = "{Kristoffer H\o{}gsbro Rose}", title = "{{V}ery high level 2-dimensional graphics with {\TeX} and {\Xy-pic}}", journal = j-TUGboat, volume = "18", number = "3", pages = "151--158", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Moore:TB18-3-159, author = "Ross Moore", title = "{High quality labels on included graphics, using {\Xy-pic}}", journal = j-TUGboat, volume = "18", number = "3", pages = "159--165", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lesenko:TB18-3-166, author = "Sergey Lesenko", title = "{{\acro{DVIPDF}} and {Graphics}}", journal = j-TUGboat, volume = "18", number = "3", pages = "166--169", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hamlin:TB18-3-170, author = "Christopher B. Hamlin", title = "{From {\acro{SGML}} to {\acro{HTML}} with help from {\TeX}}", journal = j-TUGboat, volume = "18", number = "3", pages = "170--174", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lovell:TB18-3-175, author = "Douglas Lovell", title = "{Custom legal documents for the {IBM AutoLoan} {Exchange}}", journal = j-TUGboat, volume = "18", number = "3", pages = "175--181", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Downes:TB18-3-182, author = "Michael Downes", title = "Breaking equations", journal = j-TUGboat, volume = "18", number = "3", pages = "182--194", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB18-3-195, author = "Frank Mittelbach and Chris Rowley", title = "{The {\LaTeX3} {Project}}", journal = j-TUGboat, volume = "18", number = "3", pages = "195--198", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB18-3-199, author = "Frank Mittelbach and Chris Rowley", title = "{Language information in structured documents: {A} model for mark-up and rendering}", journal = j-TUGboat, volume = "18", number = "3", pages = "199--205", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lemberg:TB18-3-206, author = "Werner Lemberg", title = "{New font tools for {\TeX}}", journal = j-TUGboat, volume = "18", number = "3", pages = "206--213", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lemberg:TB18-3-214, author = "Werner Lemberg", title = "{The {\acro{CJK}} package: {Multilingual} support beyond {Babel}}", journal = j-TUGboat, volume = "18", number = "3", pages = "214--224", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-3-225, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "18", number = "3", pages = "225--225", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB18-3-148, author = "Mimi Burbank", title = "Production notes", journal = j-TUGboat, volume = "18", number = "3", pages = "148--148", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-3-226, author = "Anonymous", title = "{{\acro{TUG}'97} list of attendees}", journal = j-TUGboat, volume = "18", number = "3", pages = "226--228", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-3-229, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "18", number = "3", pages = "229--229", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-3-230, author = "Anonymous", title = "{{\acro{TUG}} membership form}", journal = j-TUGboat, volume = "18", number = "3", pages = "230--230", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-3-231, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "18", number = "3", pages = "231--231", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-3-232, author = "Anonymous", title = "{Y\&Y Inc.}", journal = j-TUGboat, volume = "18", number = "3", pages = "232--232", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-3-cover3, author = "Anonymous", title = "{Blue Sky Research}", journal = j-TUGboat, volume = "18", number = "3", pages = "Cover 3", month = sep, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-4-235, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "18", number = "4", pages = "235--236", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taupin:TB18-4-236, author = "Daniel Taupin", title = "{{MusiX\TeX}: {How} many fonts are acceptable{?}}", journal = j-TUGboat, volume = "18", number = "4", pages = "236--236", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jett:TB18-4-237, author = "Mimi Jett", title = "{From the {President}}", journal = j-TUGboat, volume = "18", number = "4", pages = "237--237", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB18-4-238, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "18", number = "4", pages = "238--238", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB18-4-239, author = "Phil Taylor", title = "{{\eTeX} {V2:} a peek into the future}", journal = j-TUGboat, volume = "18", number = "4", pages = "239--242", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB18-4-242, author = "Peter Flynn", title = "{Typographers Inn}", journal = j-TUGboat, volume = "18", number = "4", pages = "242--245", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rogers:TB18-4-246, author = "David F. Rogers", title = "{{\it The {\LaTeX} Graphics Companion}, by {Michel Goossens}, {Sebastian Rahtz} and {Frank Mittelbach}}", journal = j-TUGboat, volume = "18", number = "4", pages = "246--246", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gibbons:TB18-4-246, author = "Jeremy Gibbons", title = "{`Hey\Dash it works!'}", journal = j-TUGboat, volume = "18", number = "4", pages = "246--248", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thanh:TB18-4-249, author = "H{\'a}n Th\^e\llap{\raise 0.5ex\hbox{\'{\relax}}} Th{\'a}nh and Sebastian Rahtz", title = "{The pdf{\TeX} user manual}", journal = j-TUGboat, volume = "18", number = "4", pages = "249--254", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Finston:TB18-4-255, author = "Laurence Finston", title = "{{Spindex}\Dash {Indexing} with special characters}", journal = j-TUGboat, volume = "18", number = "4", pages = "255--273", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Roegel:TB18-4-274, author = "Denis Roegel", title = "{{Creating 3D} animations with {\MP}}", journal = j-TUGboat, volume = "18", number = "4", pages = "274--283", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Horn:TB18-4-284, author = "Berthold K. P. Horn", title = "{{`Hinting'} of scalable outline fonts}", journal = j-TUGboat, volume = "18", number = "4", pages = "284--286", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Willadt:TB18-4-286, author = "Peter Willadt", title = "Another approach to barcodes", journal = j-TUGboat, volume = "18", number = "4", pages = "286--290", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-4-290, author = "Anonymous", title = "{{Die} {\TeX}nische {Kom\"odie} {\bf6}, 1994}", journal = j-TUGboat, volume = "18", number = "4", pages = "290--295", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-4-295, author = "Anonymous", title = "{{Les Cahiers GUTenberg}, {Contents} of {Issues} 26 and 27}", journal = j-TUGboat, volume = "18", number = "4", pages = "295--297", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Aphalo:TB18-4-297, author = "Pedro J. Aphalo", title = "{{A} proposal for citation commands in {\LaTeX 3}}", journal = j-TUGboat, volume = "18", number = "4", pages = "297--302", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carlisle:TB18-4-303, author = "David Carlisle and Chris Rowley and Frank Mittelbach", title = "{{The} {\LaTeX3 Programming Language}\Dash a proposed system for {\TeX} macro programming}", journal = j-TUGboat, volume = "18", number = "4", pages = "303--308", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB18-4-309, author = "Frank Mittelbach", title = "{{A} regression test suite for {\LaTeXe}}", journal = j-TUGboat, volume = "18", number = "4", pages = "309--311", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-4-312, author = "Anonymous", title = "{{News} from the {\LaTeX3} {Project Team}}", journal = j-TUGboat, volume = "18", number = "4", pages = "312--312", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-4-313, author = "Anonymous", title = "{A Week on Electronic Documents and Typography}", journal = j-TUGboat, volume = "18", number = "4", pages = "313--313", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-4-314, author = "Anonymous", title = "{{TUG'98} {Call} for papers}", journal = j-TUGboat, volume = "18", number = "4", pages = "314--314", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-4-315, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "18", number = "4", pages = "315--316", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB18-4-316, author = "Mimi Burbank", title = "Production notes", journal = j-TUGboat, volume = "18", number = "4", pages = "316--316", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-4-316, author = "Anonymous", title = "Future issues", journal = j-TUGboat, volume = "18", number = "4", pages = "316--316", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-4-317, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "18", number = "4", pages = "317--317", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-4-318, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "18", number = "4", pages = "318--318", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-4-319, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "18", number = "4", pages = "319--319", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-4-320, author = "Anonymous", title = "{{Y\&Y} Inc.}", journal = j-TUGboat, volume = "18", number = "4", pages = "320--320", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB18-4-cover3, author = "Anonymous", title = "{Blue Sky Research}", journal = j-TUGboat, volume = "18", number = "4", pages = "Cover 3", month = dec, year = "1997", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-1-3, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "19", number = "1", pages = "3--3", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jett:TB19-1-4, author = "Mimi Jett", title = "{{From} the {President}}", journal = j-TUGboat, volume = "19", number = "1", pages = "4--4", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB19-1-5, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "19", number = "1", pages = "5--5", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Radhakrishnan:TB19-1-6, author = "C. V. Radhakrishnan", title = "{A case for {\TeX} in {India}\Dash {The Indian {\TeX} Users Group}}", journal = j-TUGboat, volume = "19", number = "1", pages = "6--9", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rahtz:TB19-1-9, author = "Sebastian Rahtz", title = "{The inaugural meeting of {TUG India}}", journal = j-TUGboat, volume = "19", number = "1", pages = "9--11", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Scherer:TB19-1-11, author = "Andreas Scherer", title = "{The future of {AmiWeb2c}}", journal = j-TUGboat, volume = "19", number = "1", pages = "11--12", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB19-1-12, author = "Nelson H. F. Beebe", title = "{{\acro{AUTHIDX}: {An} author/editor indexing package}}", journal = j-TUGboat, volume = "19", number = "1", pages = "12--18", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rahtz:TB19-1-19, author = "Sebastian Rahtz and Michel Goossens", title = "{The {\TeX{} Live} guide, 3rd edition}", journal = j-TUGboat, volume = "19", number = "1", pages = "19--60", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Moore:TB19-1-61, author = "Ross Moore", title = "{Erratum: {High} quality labels on included graphics, using {\Xy-pic}, {\tubissue 18(3)}, pp. 151--158}", journal = j-TUGboat, volume = "19", number = "1", pages = "61--61", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Horn:TB19-1-62, author = "Berthold K. P. Horn", title = "{The {European Modern} fonts}", journal = j-TUGboat, volume = "19", number = "1", pages = "62--63", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gibbons:TB19-1-63, author = "Jeremy Gibbons", title = "{`Hey\Dash it works!'}", journal = j-TUGboat, volume = "19", number = "1", pages = "63--65", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB19-1-65, author = "Philip Taylor", title = "{Book design for {\TeX} users, {Part} 1: {Theory}}", journal = j-TUGboat, volume = "19", number = "1", pages = "65--74", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-1-75, author = "Anonymous", title = "{{Die} {\TeX}nische {Kom\"odie} {\bf8} (1996, {Heft} 1--4)}", journal = j-TUGboat, volume = "19", number = "1", pages = "75--80", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-1-81, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "19", number = "1", pages = "81--82", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Schroder:TB19-1-83, author = "Martin Schr{\"o}der", title = "{{\TeX} {Merchandising}\Dash an announcement}", journal = j-TUGboat, volume = "19", number = "1", pages = "83--83", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB19-1-82, author = "Mimi Burbank", title = "Production notes", journal = j-TUGboat, volume = "19", number = "1", pages = "82--82", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-1-82, author = "Anonymous", title = "Future issues", journal = j-TUGboat, volume = "19", number = "1", pages = "82--82", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-1-84, author = "Anonymous", title = "{New members of the {TUG Board}}", journal = j-TUGboat, volume = "19", number = "1", pages = "84--85", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-1-86, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "19", number = "1", pages = "86--86", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-1-87, author = "Anonymous", title = "{{TUG} membership application}", journal = j-TUGboat, volume = "19", number = "1", pages = "87--87", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-1-88, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "19", number = "1", pages = "88--88", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-1-82-2, author = "Anonymous", title = "Index of advertisers", journal = j-TUGboat, volume = "19", number = "1", pages = "82--82", month = mar, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-2-91, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "19", number = "2", pages = "91--91", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jett:TB19-2-93, author = "Mimi Jett", title = "{{From} the {President}}", journal = j-TUGboat, volume = "19", number = "2", pages = "93--93", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB19-2-94, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "19", number = "2", pages = "94--94", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-2-95, author = "Anonymous", title = "{{April} {Fool's} {Hoax}}", journal = j-TUGboat, volume = "19", number = "2", pages = "95--96", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-2-97, author = "Anonymous", title = "{{\CTAN} \acro{CDROM} series, compliments of \acro{DANTE}}", journal = j-TUGboat, volume = "19", number = "2", pages = "97--98", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB19-2-98, author = "Peter Flynn", title = "Typographers' inn", journal = j-TUGboat, volume = "19", number = "2", pages = "98--100", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Girou:TB19-2-101, author = "Denis Girou", title = "{{\sf pst-fill}\Dash a {PSTricks} package for filling and tiling areas}", journal = j-TUGboat, volume = "19", number = "2", pages = "101--113", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Doob:TB19-2-113, author = "Michael Doob", title = "{{\it \TeX{} Unbound}, by Alan Hoenig}", journal = j-TUGboat, volume = "19", number = "2", pages = "113--114", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pandey:TB19-2-115, author = "Anshuman Pandey", title = "{An overview of {Indic} fonts for {\TeX}}", journal = j-TUGboat, volume = "19", number = "2", pages = "115--120", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bouche:TB19-2-120, author = "Thierry Bouche", title = "Diversity in math fonts", journal = j-TUGboat, volume = "19", number = "2", pages = "120--134", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gibbons:TB19-2-135, author = "Jeremy Gibbons", title = "{`Hey\Dash it works!'}", journal = j-TUGboat, volume = "19", number = "2", pages = "135--136", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{LPT:TB19-2-137, author = "{\LaTeX} project team", title = "{{D}efault docstrip headers}", journal = j-TUGboat, volume = "19", number = "2", pages = "137--138", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{LPT:TB19-2-139, author = "{\LaTeX} project team", title = "{{\LaTeX} {News}, {Issue} 9, {June} 1998}", journal = j-TUGboat, volume = "19", number = "2", pages = "139--139", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-2-140, author = "Anonymous", title = "{Conference Program}", journal = j-TUGboat, volume = "19", number = "2", pages = "140--141", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hogue:TB19-2-142, author = "Stephanie Hogue", title = "{Final report: {\TeX Northeast}}", journal = j-TUGboat, volume = "19", number = "2", pages = "142--143", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-2-144, author = "Anonymous", title = "{{\TeX Northeast}: {Workshops} and additional papers}", journal = j-TUGboat, volume = "19", number = "2", pages = "144--146", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Barnett:TB19-2-147, author = "Michael P. Barnett", title = "{{\sf mathscape}\Dash {Combining Mathematica} and {\TeX}}", journal = j-TUGboat, volume = "19", number = "2", pages = "147--156", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sutor:TB19-2-157, author = "Robert S. Sutor and Samuel S. Dooley", title = "{{\TeX} and {\LaTeX} on the {Web} via {IBM} {\sf techexplorer}}", journal = j-TUGboat, volume = "19", number = "2", pages = "157--161", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hendrickson:TB19-2-162, author = "Amy Hendrickson", title = "{Real {Life} {\LaTeX}: {Adventures} of a {\TeX} consultant}", journal = j-TUGboat, volume = "19", number = "2", pages = "162--167", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB19-2-168, author = "Alan J. Hoenig", title = "{Typesetting with {\TeX} and {\LaTeX}}", journal = j-TUGboat, volume = "19", number = "2", pages = "168--175", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB19-2-176, author = "Alan J. Hoenig", title = "{Alternatives to {Computer Modern} mathematics}", journal = j-TUGboat, volume = "19", number = "2", pages = "176--187", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Arthur:TB19-2-188, author = "Jeffrey \Mc Arthur", title = "{Developing database publishing systems using {\TeX}}", journal = j-TUGboat, volume = "19", number = "2", pages = "188--194", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Moore:TB19-2-195, author = "Ross Moore", title = "{Presenting mathematics and languages in {Web}-pages, using {\LaTeX2\acro{HTML}}}", journal = j-TUGboat, volume = "19", number = "2", pages = "195--203", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Patashnik:TB19-2-204, author = "Oren Patashnik", title = "{{\BibTeX} 101}", journal = j-TUGboat, volume = "19", number = "2", pages = "204--207", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Signell:TB19-2-208, author = "Peter Signell", title = "{One-document scientific publishing for print and {Web/CD}}", journal = j-TUGboat, volume = "19", number = "2", pages = "208--213", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sofka:TB19-2-214, author = "Michael D. Sofka", title = "{{\TeX} to \acro{HTML} translation via tagged \acro{DVI} files}", journal = j-TUGboat, volume = "19", number = "2", pages = "214--222", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-2-223, author = "Anonymous", title = "{{Les Cahiers} {GUTenberg}, {Contents} of issue 28--29}", journal = j-TUGboat, volume = "19", number = "2", pages = "223--226", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-2-227, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "19", number = "2", pages = "227--227", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-2-92, author = "Anonymous", title = "{{TUG\,98} -- {Torun, Poland, 17--21 August 1998}, {Preliminary} program}", journal = j-TUGboat, volume = "19", number = "2", pages = "92--92", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hennings:TB19-2-231, author = "Wilfred Hennings", title = "{Volunteers needed for {\sf LaTeX2rtf} coordination and development}", journal = j-TUGboat, volume = "19", number = "2", pages = "231--231", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-2-229, author = "Anonymous", title = "{{\acro{TUG}'99 {Announcement}}}", journal = j-TUGboat, volume = "19", number = "2", pages = "229--229", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB19-2-228, author = "Mimi Burbank", title = "Production notes", journal = j-TUGboat, volume = "19", number = "2", pages = "228--228", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-2-228, author = "Anonymous", title = "Future issues", journal = j-TUGboat, volume = "19", number = "2", pages = "228--228", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-2-230, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "19", number = "2", pages = "230--230", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-2-231, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "19", number = "2", pages = "231--231", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-2-232, author = "Anonymous", title = "{Y\&Y Inc.}", journal = j-TUGboat, volume = "19", number = "2", pages = "232--232", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-2-Cover-3, author = "Anonymous", title = "{Blue Sky Research}", journal = j-TUGboat, volume = "19", number = "2", pages = "Cover 3", month = jun, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB19-3-234, author = "Barbara Beeton", title = "{{\acro{TUG} Election Notice}}", journal = j-TUGboat, volume = "19", number = "3", pages = "234--234", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB19-3-235, author = "Barbara Beeton", title = "{Editorial Comments\Dash A TUG\,'98 trip report}", journal = j-TUGboat, volume = "19", number = "3", pages = "235--236", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-3-237, author = "Anonymous", title = "{{\acro{TUG}'98 Attendees}}", journal = j-TUGboat, volume = "19", number = "3", pages = "237--238", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nickalls:TB19-3-239, author = "R. W. D. Nickalls", title = "{\TeX\ in the Operating Theatre: An anaesthesia application}", journal = j-TUGboat, volume = "19", number = "3", pages = "239--241", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nowacki:TB19-3-242, author = "Janusz M. Nowacki and Bogus{\l}aw Jackowski", title = "{Antykwa Toru\'nska: An electronic replica of a Polish traditional type}", journal = j-TUGboat, volume = "19", number = "3", pages = "242--243", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kinch:TB19-3-244, author = "Richard J. Kinch", title = "{{Belleek: A call for \MF{} revival}}", journal = j-TUGboat, volume = "19", number = "3", pages = "244--249", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Piska:TB19-3-250, author = "Karel P{\'\i}{\v{s}}ka", title = "{Georgian scripts}", journal = j-TUGboat, volume = "19", number = "3", pages = "250--255", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoekwater:TB19-3-256, author = "Taco Hoekwater", title = "{{Generating Type 1 fonts from \MF{} sources}}", journal = j-TUGboat, volume = "19", number = "3", pages = "256--266", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jackowski:TB19-3-267, author = "Bogus{\l}aw Jackowski and Piotr Pianowski and Piotr Strzelczyk", title = "{{Threshing \acro{EPS} files}}", journal = j-TUGboat, volume = "19", number = "3", pages = "267--271", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jackowski:TB19-3-272, author = "Bogus{\l}aw Jackowski and Piotr Pianowski and Piotr Strzelczyk", title = "{More \TeX-PostScript links}", journal = j-TUGboat, volume = "19", number = "3", pages = "272--275", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bolek:TB19-3-276, author = "Piotr Bolek", title = "{{\MP{} and patterns}}", journal = j-TUGboat, volume = "19", number = "3", pages = "276--283", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thanh:TB19-3-284, author = "H{\`a}n Th\^e\llap{\raise0.5ex\hbox{\'{\relax}}} Th{\`a}nh", title = "{Improving \TeX's Typeset Layout}", journal = j-TUGboat, volume = "19", number = "3", pages = "284--288", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taupin:TB19-3-289, author = "Daniel Taupin", title = "{{\tt ltx2rtf}: {Exporting {\LaTeX} documents to Word addicts}}", journal = j-TUGboat, volume = "19", number = "3", pages = "289--292", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bzyl:TB19-3-293, author = "W{\l}odek Bzyl", title = "{{Adding native language support to the \acro{CWEB} package and the {\TeX} program}}", journal = j-TUGboat, volume = "19", number = "3", pages = "293--297", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wolinski:TB19-3-298, author = "Marcin Woli{\'n}ski", title = "{{{\sf Pretprin}\Dash a {\LaTeXe}} package for pretty-printing texts in formal languages}", journal = j-TUGboat, volume = "19", number = "3", pages = "298--303", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hagen:TB19-3-304, author = "Hans Hagen", title = "{{The Calculator Demo}, {Integrating \TeX, \MP, JavaScript and \acro{PDF}}}", journal = j-TUGboat, volume = "19", number = "3", pages = "304--310", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hagen:TB19-3-311, author = "Hans Hagen", title = "{Visual Debugging in \TeX, Part 1: The Story}", journal = j-TUGboat, volume = "19", number = "3", pages = "311--317", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hagen:TB19-3-317, author = "Hans Hagen", title = "{Visual Debugging in \TeX, Part 2: The Macros}", journal = j-TUGboat, volume = "19", number = "3", pages = "317--317", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Skoupy:TB19-3-318, author = "Karel Skoup\'{y}", title = "{\NTS: a New Typesetting System}", journal = j-TUGboat, volume = "19", number = "3", pages = "318--322", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{NTGTFWG:TB19-3-323, author = "{\NTG{} \TeX{} future working group}", title = "{\TeX\ in 2003, Part I: Introduction and views on current work}", journal = j-TUGboat, volume = "19", number = "3", pages = "323--329", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{NTGTFWG:TB19-3-330, author = "{\NTG{} \TeX{} future working group}", title = "{{\TeX\ in 2003, Part II: Proposal for a {\tt\char`\\special} standard}}", journal = j-TUGboat, volume = "19", number = "3", pages = "330--337", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-3-338, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "19", number = "3", pages = "338--338", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-3-340, author = "Anonymous", title = "{{\acro{TUG}'99 {Announcement}}}", journal = j-TUGboat, volume = "19", number = "3", pages = "340--340", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB19-3-339, author = "Mimi Burbank", title = "Production notes", journal = j-TUGboat, volume = "19", number = "3", pages = "339--339", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-3-341, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "19", number = "3", pages = "341--341", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-3-342, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "19", number = "3", pages = "342--342", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-3-343, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "19", number = "3", pages = "343--343", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-3-339, author = "Anonymous", title = "{Hug The Lion!}", journal = j-TUGboat, volume = "19", number = "3", pages = "339--339", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-3-344, author = "Anonymous", title = "{Y\&Y Inc.}", journal = j-TUGboat, volume = "19", number = "3", pages = "344--344", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-3-Cover-3, author = "Anonymous", title = "{Blue Sky Research}", journal = j-TUGboat, volume = "19", number = "3", pages = "Cover 3", month = sep, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-4-347, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "19", number = "4", pages = "347--348", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carlisle:TB19-4-348, author = "David Carlisle", title = "{A seasonal puzzle: XII}", journal = j-TUGboat, volume = "19", number = "4", pages = "348--348", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jett:TB19-4-349, author = "Mimi Jett", title = "{{From} the {President}}", journal = j-TUGboat, volume = "19", number = "4", pages = "349--350", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB19-4-351, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "19", number = "4", pages = "351--352", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB19-4-353, author = "Peter Flynn", title = "Typographers' inn", journal = j-TUGboat, volume = "19", number = "4", pages = "353--355", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Misakova:TB19-4-355, author = "Miroslava Mis{\'a}kov{\'a}", title = "{Typesetting with varying letter widths: {New hope for your narrow columns}}", journal = j-TUGboat, volume = "19", number = "4", pages = "355--365", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB19-4-366, author = "Barbara Beeton", title = "{{Editorial: Enc\TeX{}, by Petr Ol{\v{s}}\'ak}}", journal = j-TUGboat, volume = "19", number = "4", pages = "366--366", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Olsak:TB19-4-366, author = "Petr Ol{\v{s}}{\'a}k", title = "{{Enc\TeX{}\Dash A little extension of \TeX{}}}", journal = j-TUGboat, volume = "19", number = "4", pages = "366--371", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Finston:TB19-4-372, author = "Laurence Finston", title = "{{Conc{\TeX}: Generating a concordance from {\TeX} input files}}", journal = j-TUGboat, volume = "19", number = "4", pages = "372--403", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berdnikov:TB19-4-403, author = "A. Berdnikov and O. Lapko and M. Kolodin and A. Janishevsky and A. Burykin", title = "{{Cyrillic encodings for \LaTeXe{} multi-language documents}}", journal = j-TUGboat, volume = "19", number = "4", pages = "403--416", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pandey:TB19-4-417, author = "Anshuman Pandey", title = "{{Romanized Indic and \LaTeX{}}}", journal = j-TUGboat, volume = "19", number = "4", pages = "417--418", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beccari:TB19-4-419, author = "Claudio Beccari and Apostolos Syropoulos", title = "{{New Greek fonts and the {\tt greek} option of the {\sf babel} package}}", journal = j-TUGboat, volume = "19", number = "4", pages = "419--425", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gibbons:TB19-4-426, author = "Jeremy Gibbons", title = "{`Hey\Dash it works!'}", journal = j-TUGboat, volume = "19", number = "4", pages = "426--427", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB19-4-428, author = "Christina Thiele", title = "{{The Treasure Chest: A package tour from \acro{CTAN}\Dash {\tt soul.sty}}}", journal = j-TUGboat, volume = "19", number = "4", pages = "428--430", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-4-431, author = "Anonymous", title = "{Les Cahiers GUTenberg, Contents of issue 30}", journal = j-TUGboat, volume = "19", number = "4", pages = "431--431", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-4-433, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "19", number = "4", pages = "433--433", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-4-434, author = "Anonymous", title = "{{\acro{TUG}'99 {Announcement}}}", journal = j-TUGboat, volume = "19", number = "4", pages = "434--436", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB19-4-432, author = "Mimi Burbank", title = "Production notes", journal = j-TUGboat, volume = "19", number = "4", pages = "432--432", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-4-432, author = "Anonymous", title = "Future issues", journal = j-TUGboat, volume = "19", number = "4", pages = "432--432", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-4-437, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "19", number = "4", pages = "437--437", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-4-438, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "19", number = "4", pages = "438--438", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-4-439, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "19", number = "4", pages = "439--439", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-4-440, author = "Anonymous", title = "{Y\&Y Inc.}", journal = j-TUGboat, volume = "19", number = "4", pages = "440--440", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB19-4-Cover-3, author = "Anonymous", title = "{Blue Sky Research}", journal = j-TUGboat, volume = "19", number = "4", pages = "Cover 3", month = dec, year = "1998", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-1-3, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "20", number = "1", pages = "3--3", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rose:TB20-1-5, author = "Kristoffer Rose", title = "{From the Vice-President}", journal = j-TUGboat, volume = "20", number = "1", pages = "5--5", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB20-1-6, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "20", number = "1", pages = "6--7", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Andre:TB20-1-8, author = "Jacques Andr{\'e} and Denis Girou", title = "{{Father Truchet, the typographic point, the {\it Romain du roi}, and tilings}}", journal = j-TUGboat, volume = "20", number = "1", pages = "8--14", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Toledo:TB20-1-15, author = "Sivan Toledo", title = "{A simple technique for typesetting Hebrew with vowel points}", journal = j-TUGboat, volume = "20", number = "1", pages = "15--19", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rahtz:TB20-1-20, author = "Sebastian Rahtz", title = "{{The \TeX\ Live Guide, \nth{4} edition}}", journal = j-TUGboat, volume = "20", number = "1", pages = "20--44", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB20-1-45, author = "Barbara Beeton", title = "{{{\TeX} and the Year 2000}}", journal = j-TUGboat, volume = "20", number = "1", pages = "45--50", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB20-1-50, author = "Barbara Beeton", title = "{Hyphenation Exception Log\Dash Update}", journal = j-TUGboat, volume = "20", number = "1", pages = "50--51", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{LPT:TB20-1-52, author = "{\LaTeX} project team", title = "{{{\LaTeX} News, Issue 10, December 1998}}", journal = j-TUGboat, volume = "20", number = "1", pages = "52--52", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB20-1-53, author = "Christina Thiele", title = "{{The Treasure Chest: Package tours from \acro{CTAN}}}", journal = j-TUGboat, volume = "20", number = "1", pages = "53--58", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-1-59, author = "Anonymous", title = "{{Die {\TeX}nische Kom\"odie} {\bf9} {(1997, Heft 1--4)}}", journal = j-TUGboat, volume = "20", number = "1", pages = "59--64", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-1-65, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "20", number = "1", pages = "65--66", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-1-67, author = "Anonymous", title = "{{\acro{TUG}'99 Announcement}}", journal = j-TUGboat, volume = "20", number = "1", pages = "67--69", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-1-4, author = "Anonymous", title = "{{\acro{TUG}'99 Poetry Contest}}", journal = j-TUGboat, volume = "20", number = "1", pages = "4--4", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB20-1-70, author = "Mimi Burbank", title = "Production notes", journal = j-TUGboat, volume = "20", number = "1", pages = "70--70", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-1-70, author = "Anonymous", title = "{{\TUB{} web pages}}", journal = j-TUGboat, volume = "20", number = "1", pages = "70--70", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-1-70-2, author = "Anonymous", title = "Future issues", journal = j-TUGboat, volume = "20", number = "1", pages = "70--70", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB20-1-71, author = "Christina Thiele and Arthur Ogawa", title = "{Report: TUG 1999 Election}", journal = j-TUGboat, volume = "20", number = "1", pages = "71--71", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-1-71, author = "Anonymous", title = "{Members of the TUG Board with terms ending in 2003}", journal = j-TUGboat, volume = "20", number = "1", pages = "71--76", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-1-76, author = "Anonymous", title = "{Position of President}", journal = j-TUGboat, volume = "20", number = "1", pages = "76--76", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-1-77, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "20", number = "1", pages = "77--77", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-1-78, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "20", number = "1", pages = "78--78", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-1-79, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "20", number = "1", pages = "79--79", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-1-80, author = "Anonymous", title = "{Y\&Y Inc.}", journal = j-TUGboat, volume = "20", number = "1", pages = "80--80", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-1-Cover-3, author = "Anonymous", title = "{Blue Sky Research}", journal = j-TUGboat, volume = "20", number = "1", pages = "Cover 3", month = mar, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-2-83, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "20", number = "2", pages = "83--84", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jett:TB20-2-85, author = "Mimi Jett", title = "{From the President}", journal = j-TUGboat, volume = "20", number = "2", pages = "85--86", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB20-2-86, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "20", number = "2", pages = "86--87", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Childs:TB20-2-87, author = "Bart Childs", title = "{Norman W. Naugle\dash A Rememberance}", journal = j-TUGboat, volume = "20", number = "2", pages = "87--88", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Langmyhr:TB20-2-89, author = "Dag Langmyhr", title = "{Roswitha von den Schulenburg Graham}", journal = j-TUGboat, volume = "20", number = "2", pages = "89--89", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB20-2-89, author = "Mimi Burbank", title = "{You meet the nicest people \dots\ Father Everett Larguier}", journal = j-TUGboat, volume = "20", number = "2", pages = "89--90", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gaulle:TB20-2-91, author = "Bernard Gaulle", title = "{{The {\tt french} package on and off \CTAN}}", journal = j-TUGboat, volume = "20", number = "2", pages = "91--92", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-2-92, author = "Anonymous", title = "{{Response from the {\CTAN} team}}", journal = j-TUGboat, volume = "20", number = "2", pages = "92--92", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB20-2-92, author = "Barbara Beeton", title = "Editor's commentary", journal = j-TUGboat, volume = "20", number = "2", pages = "92--92", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fine:TB20-2-93, author = "Jonathan Fine", title = "{The good name of \TeX}", journal = j-TUGboat, volume = "20", number = "2", pages = "93--93", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Olsak:TB20-2-93, author = "Petr Ol{\v{s}}ak", title = "Reply", journal = j-TUGboat, volume = "20", number = "2", pages = "93--93", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB20-2-94, author = "Peter Flynn", title = "{Typographers' Inn}", journal = j-TUGboat, volume = "20", number = "2", pages = "94--95", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gelderman:TB20-2-96, author = "Maarten Gelderman", title = "A short introduction to font characteristics", journal = j-TUGboat, volume = "20", number = "2", pages = "96--104", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jackowski:TB20-2-104, author = "Bogus{\l}aw Jackowski", title = "{\MF: Practical and impractical applications}", journal = j-TUGboat, volume = "20", number = "2", pages = "104--119", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pandey:TB20-2-119, author = "Anshuman Pandey", title = "{Typesetting Bengali in \TeX}", journal = j-TUGboat, volume = "20", number = "2", pages = "119--126", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoppner:TB20-2-127, author = "Klaus H{\"o}ppner", title = "{{The {\sl CTAN May 1999} \acro{CD ROM} set by \acro{DANTE} e.V. and Lehmanns bookstore}}", journal = j-TUGboat, volume = "20", number = "2", pages = "127--127", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Dobbelsteen:TB20-2-128, author = "Gilbert van den Dobbelsteen", title = "{{Interacting pdf\TeX{}, \acro{PERL} and \CONTEXT}}", journal = j-TUGboat, volume = "20", number = "2", pages = "128--133", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Tolksdorf:TB20-2-134, author = "Robert Tolksdorf", title = "{{\NetBibTeX{}ing}}", journal = j-TUGboat, volume = "20", number = "2", pages = "134--140", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gibbons:TB20-2-141, author = "Jeremy Gibbons", title = "Hey --- it works!", journal = j-TUGboat, volume = "20", number = "2", pages = "141--142", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-2-143, author = "Anonymous", title = "{{{\sl Les Cahiers GUTenberg}, Contents of Issues 31 (December 1998) and 32 (May 1999)}}", journal = j-TUGboat, volume = "20", number = "2", pages = "143--145", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-2-146, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "20", number = "2", pages = "146--147", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB20-2-147, author = "Mimi Burbank", title = "Production notes", journal = j-TUGboat, volume = "20", number = "2", pages = "147--147", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-2-147, author = "Anonymous", title = "Future issues", journal = j-TUGboat, volume = "20", number = "2", pages = "147--147", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Preston:TB20-2-140, author = "Roy Preston", title = "Monk-ey business", journal = j-TUGboat, volume = "20", number = "2", pages = "140--140", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-2-148, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "20", number = "2", pages = "148--148", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-2-150, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "20", number = "2", pages = "150--150", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-2-149, author = "Anonymous", title = "{Cambridge University Press}", journal = j-TUGboat, volume = "20", number = "2", pages = "149--149", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-2-151, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "20", number = "2", pages = "151--151", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-2-152, author = "Anonymous", title = "{Y\&Y Inc.}", journal = j-TUGboat, volume = "20", number = "2", pages = "152--152", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-2-Cover-3, author = "Anonymous", title = "{Blue Sky Research}", journal = j-TUGboat, volume = "20", number = "2", pages = "Cover 3", month = jun, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB20-3-155, author = "Christina Thiele", title = "{Vancouver in August}", journal = j-TUGboat, volume = "20", number = "3", pages = "155--159", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-3-160, author = "Anonymous", title = "{TUG\,'99 Program}", journal = j-TUGboat, volume = "20", number = "3", pages = "160--161", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fulling:TB20-3-162, author = "Stephen A. Fulling", title = "{{\ninesmc Keynote:} {\TeX\ and the Web in the higher education of the future: Dreams and difficulties}}", journal = j-TUGboat, volume = "20", number = "3", pages = "162--166", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ion:TB20-3-167, author = "Patrick D. F. Ion", title = "{{Math\acro{ML}: A key to math on the Web}}", journal = j-TUGboat, volume = "20", number = "3", pages = "167--175", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lovell:TB20-3-176, author = "Douglas Lovell", title = "{{\TeXML: Typesetting {\XML} with \TeX}}", journal = j-TUGboat, volume = "20", number = "3", pages = "176--183", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Topping:TB20-3-184, author = "Paul Topping", title = "{{Using {\ssf MathType} to create {\TeX} and Math\acro{ML} equations}}", journal = j-TUGboat, volume = "20", number = "3", pages = "184--188", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rowley:TB20-3-189, author = "Chris Rowley", title = "{Models and languages for formatted documents}", journal = j-TUGboat, volume = "20", number = "3", pages = "189--195", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Story:TB20-3-196, author = "D. P. Story", title = "{{Acro\TeX: Acrobat and {\TeX} team up}}", journal = j-TUGboat, volume = "20", number = "3", pages = "196--201", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Doumont:TB20-3-202, author = "Jean-luc Doumont", title = "{{Doing it my way: A lone {\TeX}er in the real world}}", journal = j-TUGboat, volume = "20", number = "3", pages = "202--207", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB20-3-208, author = "Peter Flynn", title = "{{The {\ssf vulcan} package: A repair patch for \LaTeX}}", journal = j-TUGboat, volume = "20", number = "3", pages = "208--213", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carlisle:TB20-3-214, author = "David Carlisle and Frank Mittelbach and Chris Rowley", title = "{{New interfaces for {\LaTeX} class design, Parts I and II}}", journal = j-TUGboat, volume = "20", number = "3", pages = "214--216", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bazargan:TB20-3-217, author = "Kaveh Bazargan", title = "{Multi-use documents: The role of the publisher}", journal = j-TUGboat, volume = "20", number = "3", pages = "217--220", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bartlett:TB20-3-221, author = "Frederick H. Bartlett", title = "{{Very like a nail: Typesetting \acro{SGML} with \TeX}}", journal = j-TUGboat, volume = "20", number = "3", pages = "221--221", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Payne:TB20-3-222, author = "Harry Payne", title = "{Making a book from contributed papers: Print and Web versions}", journal = j-TUGboat, volume = "20", number = "3", pages = "222--226", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kruse:TB20-3-227, author = "Robert L. Kruse", title = "{Managing large projects with \PreTeX: A preprocessor for \TeX}", journal = j-TUGboat, volume = "20", number = "3", pages = "227--230", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ogawa:TB20-3-231, author = "Arthur Ogawa", title = "{{Database publishing with {\Java} and \TeX}}", journal = j-TUGboat, volume = "20", number = "3", pages = "231--231", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mailhot:TB20-3-232, author = "Paul A. Mailhot", title = "{{Implementing dynamic cross-referencing and \acro{PDF} with \PreTeX}}", journal = j-TUGboat, volume = "20", number = "3", pages = "232--236", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wang:TB20-3-237, author = "Hu Wang", title = "{A Web-based submission system for meeting abstracts}", journal = j-TUGboat, volume = "20", number = "3", pages = "237--240", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sojka:TB20-3-241, author = "Petr Sojka", title = "{Hyphenation on demand}", journal = j-TUGboat, volume = "20", number = "3", pages = "241--247", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fine:TB20-3-248, author = "Jonathan Fine", title = "{{Active {\TeX} and the \acro{DOT} input syntax}}", journal = j-TUGboat, volume = "20", number = "3", pages = "248--254", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Doumont:TB20-3-255, author = "Jean-luc Doumont", title = "{Drawing effective (and beautiful) graphs with \TeX}", journal = j-TUGboat, volume = "20", number = "3", pages = "255--261", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{McKay:TB20-3-262, author = "Wendy McKay and Ross Moore", title = "{{Convenient labelling of graphics, the {\WARMreader} way}}", journal = j-TUGboat, volume = "20", number = "3", pages = "262--271", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lesenko:TB20-3-272, author = "Sergey Lesenko and Laurent Siebenmann", title = "{{Viewing \acro{DVI} files with Acrobat Reader: \acro{DVIPDF} gives birth to Acro\acro{DVI}}}", journal = j-TUGboat, volume = "20", number = "3", pages = "272--281", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB20-3-282, author = "Alan Hoenig", title = "{{{\it MathKit\/}: Alternatives to Computer Modern Mathematics}}", journal = j-TUGboat, volume = "20", number = "3", pages = "282--289", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Popineau:TB20-3-290, author = "Fabrice Popineau", title = "{{fp\TeX{}: A te\TeX-based distribution for Windows}}", journal = j-TUGboat, volume = "20", number = "3", pages = "290--297", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Arthur:TB20-3-298, author = "Jeffrey \Mc Arthur", title = "{{Managing {\TeX} software development projects}}", journal = j-TUGboat, volume = "20", number = "3", pages = "298--306", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Murphy:TB20-3-307, author = "Timothy Murphy", title = "{{{\Java} and \TeX}}", journal = j-TUGboat, volume = "20", number = "3", pages = "307--312", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB20-3-313, author = "Christina Thiele", title = "{{Barbara N. Beeton: \acro{TUG} Board member for 20 years}}", journal = j-TUGboat, volume = "20", number = "3", pages = "313--315", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB20-3-316, author = "Christina Thiele", title = "{{Text of \,{\rm The Apocalypse\/} as graphics, by Prof. Alban Grimm}}", journal = j-TUGboat, volume = "20", number = "3", pages = "316--316", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Grimm:TB20-3-317, author = "Prof. Alban Grimm", title = "{{Text of \,{\rm The Apocalypse\/} as graphics}}", journal = j-TUGboat, volume = "20", number = "3", pages = "317--319", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gurari:TB20-3-320, author = "Eitan Gurari and Sebastian Rahtz", title = "{{{\LaTeX} to {\XML}/Math\acro{ML}}}", journal = j-TUGboat, volume = "20", number = "3", pages = "320--320", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Story:TB20-3-321, author = "D. P. Story", title = "{{How to create quality interactive \acro{PDF} documents for the \acro{WWW} using \LaTeX}}", journal = j-TUGboat, volume = "20", number = "3", pages = "321--321", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Doob:TB20-3-322, author = "Michael Doob", title = "{Writing class files: First steps}", journal = j-TUGboat, volume = "20", number = "3", pages = "322--322", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoover:TB20-3-323, author = "Anita Hoover", title = "{{Converting a {\LaTeX} 2.09 style to a {\LaTeXe} class}}", journal = j-TUGboat, volume = "20", number = "3", pages = "323--323", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fulling:TB20-3-324, author = "Stephen A. Fulling", title = "{{{\TeX} and math on the Web}}", journal = j-TUGboat, volume = "20", number = "3", pages = "324--324", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bazargan:TB20-3-325, author = "Kaveh Bazargan", title = "{{{\TeX} in publishing}}", journal = j-TUGboat, volume = "20", number = "3", pages = "325--325", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ogawa:TB20-3-326, author = "Arthur Ogawa", title = "{The Future of \LaTeX}", journal = j-TUGboat, volume = "20", number = "3", pages = "326--326", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-3-329, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "20", number = "3", pages = "329--330", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-3-154, author = "Anonymous", title = "{TUG2000\Dash The \nth{21} Annual Conference}", journal = j-TUGboat, volume = "20", number = "3", pages = "154--154", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-3-331, author = "Anonymous", title = "{{\acro{GUT}enberg\,2000\Dash{\LaTeX} and {\XML}: Cooperating with the Internet}}", journal = j-TUGboat, volume = "20", number = "3", pages = "331--331", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Preston:TB20-3-330, author = "Roy Preston", title = "{An Analogy with Web Sites}", journal = j-TUGboat, volume = "20", number = "3", pages = "330--330", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-3-327, author = "Anonymous", title = "{{\acro{TUG}\,'99 Attendees}}", journal = j-TUGboat, volume = "20", number = "3", pages = "327--328", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-3-332, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "20", number = "3", pages = "332--332", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-3-333, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "20", number = "3", pages = "333--333", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-3-334, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "20", number = "3", pages = "334--334", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-3-335, author = "Anonymous", title = "{Cambridge University Press}", journal = j-TUGboat, volume = "20", number = "3", pages = "335--335", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-3-336, author = "Anonymous", title = "{Y\&Y Inc.}", journal = j-TUGboat, volume = "20", number = "3", pages = "336--336", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-3-cover-3, author = "Anonymous", title = "{Blue Sky Research}", journal = j-TUGboat, volume = "20", number = "3", pages = "Cover 3", month = sep, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-4-339, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "20", number = "4", pages = "339--340", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jett:TB20-4-341, author = "Mimi Jett", title = "{From the President}", journal = j-TUGboat, volume = "20", number = "4", pages = "341--341", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB20-4-342, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "20", number = "4", pages = "342--343", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB20-4-344, author = "Peter Flynn", title = "{Typographers' Inn}", journal = j-TUGboat, volume = "20", number = "4", pages = "344--347", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Koutny:TB20-4-347, author = "Vladim{\'{\i}}r Koutn{\'y}", title = "{TrueType fonts in \TeX}", journal = j-TUGboat, volume = "20", number = "4", pages = "347--348", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Zyka:TB20-4-348, author = "V{\'{\i}}t Z{\'y}ka", title = "The semaphore alphabet", journal = j-TUGboat, volume = "20", number = "4", pages = "348--350", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Travis:TB20-4-350, author = "Brian E. Travis", title = "{{The Paper Path: \acro{XML} to paper using \TeX\acro{ML}}}", journal = j-TUGboat, volume = "20", number = "4", pages = "350--356", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Strokov:TB20-4-356, author = "Igor I. Strokov", title = "{{A \acro{WYSIWYG} {\TeX} implementation}}", journal = j-TUGboat, volume = "20", number = "4", pages = "356--359", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Casselman:TB20-4-359, author = "Bill Casselman", title = "{{{\it The {\LaTeX} Graphics Companion\/} and {\it {\TeX} Unbound}\Dash A review of two books}}", journal = j-TUGboat, volume = "20", number = "4", pages = "359--364", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB20-4-364, author = "Peter Flynn", title = "{{{\it Digital Typography}, by Donald Knuth}}", journal = j-TUGboat, volume = "20", number = "4", pages = "364--366", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fine:TB20-4-366, author = "Jonathan Fine", title = "{{The good name of {\TeX} (\tubissue 20(2), p. 93)}}", journal = j-TUGboat, volume = "20", number = "4", pages = "366--366", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB20-4-366, author = "Christina Thiele", title = "{{\acro{TUG}\,99 (\tubissue 20(3))}}", journal = j-TUGboat, volume = "20", number = "4", pages = "366--366", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hefferon:TB20-4-367, author = "{Jim Hef{}feron}", title = "{{A {\CTAN} search page}}", journal = j-TUGboat, volume = "20", number = "4", pages = "367--367", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gibbons:TB20-4-367, author = "Jeremy Gibbons", title = "Hey --- it works!", journal = j-TUGboat, volume = "20", number = "4", pages = "367--370", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB20-4-370, author = "Christina Thiele", title = "The treasure chest", journal = j-TUGboat, volume = "20", number = "4", pages = "370--374", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{LPT:TB20-4-375, author = "{\LaTeX} project team", title = "{{{\LaTeX} News, Issue 12, December 1999}}", journal = j-TUGboat, volume = "20", number = "4", pages = "375--375", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Shawyer:TB20-4-376, author = "Bruce Shawyer", title = "{Scaled pictures in \LaTeX}", journal = j-TUGboat, volume = "20", number = "4", pages = "376--377", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB20-4-378, author = "Philip Taylor", title = "{{Book design for {\TeX} users: Part 2: Practice}}", journal = j-TUGboat, volume = "20", number = "4", pages = "378--389", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Moore:TB20-4-389, author = "Ross Moore", title = "{Preparation of documents for multiple modes of delivery\Dash Notes from TUG'99}", journal = j-TUGboat, volume = "20", number = "4", pages = "389--394", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-4-394, author = "Anonymous", title = "{{{\sl Les Cahiers GUTenberg}, Contents of double issue 33/34 (November 1999)}}", journal = j-TUGboat, volume = "20", number = "4", pages = "394--395", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-4-395, author = "Anonymous", title = "{Euro\TeX\,'99 Proceedings\Dash Paperless \TeX}", journal = j-TUGboat, volume = "20", number = "4", pages = "395--398", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-4-399, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "20", number = "4", pages = "399--400", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-4-401, author = "Anonymous", title = "{{TUG\,2000\Dash The \nth{21} Annual Conference}}", journal = j-TUGboat, volume = "20", number = "4", pages = "401--401", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB20-4-400, author = "Mimi Burbank", title = "Production notes", journal = j-TUGboat, volume = "20", number = "4", pages = "400--400", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-4-400, author = "Anonymous", title = "Future issues", journal = j-TUGboat, volume = "20", number = "4", pages = "400--400", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Preston:TB20-4-340, author = "Roy Preston", title = "Download free fonts!", journal = j-TUGboat, volume = "20", number = "4", pages = "340--340", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-4-402, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "20", number = "4", pages = "402--402", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-4-403, author = "Anonymous", title = "Statement of ownership", journal = j-TUGboat, volume = "20", number = "4", pages = "403--403", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-4-403-2, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "20", number = "4", pages = "403--403", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-4-404, author = "Anonymous", title = "{Y\&Y Inc.}", journal = j-TUGboat, volume = "20", number = "4", pages = "404--404", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB20-4-Cover-3, author = "Anonymous", title = "{Blue Sky Research}", journal = j-TUGboat, volume = "20", number = "4", pages = "Cover 3", month = dec, year = "1999", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-1-3, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "21", number = "1", pages = "3--3", month = mar, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jett:TB21-1-5, author = "Mimi Jett", title = "{From the President}", journal = j-TUGboat, volume = "21", number = "1", pages = "5--5", month = mar, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB21-1-6, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "21", number = "1", pages = "6--6", month = mar, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fujita:TB21-1-7, author = "Shinsaku Fujita and Nobuya Tanaka", title = "{{\XyMTeX (Version 2.00) as implementation of the \XyM{} notation and the \XyM{} markup language}}", journal = j-TUGboat, volume = "21", number = "1", pages = "7--14", month = mar, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hefferon:TB21-1-15, author = "{Jim Hef{}feron}", title = "{{The {\TUG} {\CTAN} site makes a move}}", journal = j-TUGboat, volume = "21", number = "1", pages = "15--15", month = mar, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Team:TB21-1-16, author = "{The \TUB{} Team}", title = "{{\TeXLive{} 5 and the \TeX{} Catalogue}}", journal = j-TUGboat, volume = "21", number = "1", pages = "16--16", month = mar, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-1-17, author = "Anonymous", title = "{{Graham Williams' \TeX{} Catalogue}}", journal = j-TUGboat, volume = "21", number = "1", pages = "17--90", month = mar, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-1-xx, author = "Anonymous", title = "{Supplement: {\TeXLive} 5 CD}", journal = j-TUGboat, volume = "21", number = "1", pages = "??--??", month = mar, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB21-1-91, author = "Victor Eijkhout", title = "{The bag of tricks}", journal = j-TUGboat, volume = "21", number = "1", pages = "91--91", month = mar, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-1-92, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "21", number = "1", pages = "92--92", month = mar, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-1-4, author = "Anonymous", title = "{{TUG2000\Dash The \nth{21} Annual Conference}}", journal = j-TUGboat, volume = "21", number = "1", pages = "4--4", month = mar, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB21-1-93, author = "Mimi Burbank", title = "Production notes", journal = j-TUGboat, volume = "21", number = "1", pages = "93--93", month = mar, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-1-93, author = "Anonymous", title = "Future issues", journal = j-TUGboat, volume = "21", number = "1", pages = "93--93", month = mar, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-1-94, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "21", number = "1", pages = "94--94", month = mar, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-1-95, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "21", number = "1", pages = "95--95", month = mar, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Farley:TB21-1-15, author = "David Farley", title = "{Don Knuth finally sells out}", journal = j-TUGboat, volume = "21", number = "1", pages = "15--15", month = mar, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-1-96, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "21", number = "1", pages = "96--96", month = mar, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-1-Cover-3, author = "Anonymous", title = "{Blue Sky Research}", journal = j-TUGboat, volume = "21", number = "1", pages = "Cover 3", month = mar, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-2-99, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "21", number = "2", pages = "99--99", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jett:TB21-2-101, author = "Mimi Jett", title = "{From the President}", journal = j-TUGboat, volume = "21", number = "2", pages = "101--101", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB21-2-102, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "21", number = "2", pages = "102--103", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Levien:TB21-2-103, author = "Advogato (Raph Levien)", title = "{Interview: Donald E. Knuth}", journal = j-TUGboat, volume = "21", number = "2", pages = "103--110", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gratzer:TB21-2-111, author = "G. Gr{\"a}tzer", title = "Turbulent transition", journal = j-TUGboat, volume = "21", number = "2", pages = "111--113", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lemberg:TB21-2-113, author = "Werner Lemberg", title = "Thai fonts", journal = j-TUGboat, volume = "21", number = "2", pages = "113--120", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Toledo:TB21-2-121, author = "Sivan Toledo", title = "Exploiting rich fonts", journal = j-TUGboat, volume = "21", number = "2", pages = "121--129", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berdnikov:TB21-2-129, author = "Alexander Berdnikov and Hans Hagen and Taco Hoekwater and Bogus{\l}aw Jackowski", title = "{Even more MetaFun with \MP: A request for permission}", journal = j-TUGboat, volume = "21", number = "2", pages = "129--130", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hobby:TB21-2-131, author = "John D. Hobby", title = "{Extending \MP: Response to ``Even more MetaFun''}", journal = j-TUGboat, volume = "21", number = "2", pages = "131--132", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB21-2-132, author = "Barbara Beeton", title = "Hyphenation exception log", journal = j-TUGboat, volume = "21", number = "2", pages = "132--133", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gibbons:TB21-2-133, author = "Jeremy Gibbons", title = "{Hey --- it works!}", journal = j-TUGboat, volume = "21", number = "2", pages = "133--135", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thiele:TB21-2-136, author = "Christina Thiele", title = "{The treasure chest}", journal = j-TUGboat, volume = "21", number = "2", pages = "136--142", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{LPT:TB21-2-143, author = "{\LaTeX} project team", title = "{{{\LaTeX} News, Issue 13, June 2000}}", journal = j-TUGboat, volume = "21", number = "2", pages = "143--143", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-2-144, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "21", number = "2", pages = "144--145", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-2-148, author = "Anonymous", title = "{{TUG2000\Dash The \nth{21} Annual Conference}}", journal = j-TUGboat, volume = "21", number = "2", pages = "148--148", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB21-2-146, author = "Mimi Burbank", title = "{Production notes}", journal = j-TUGboat, volume = "21", number = "2", pages = "146--146", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-2-146, author = "Anonymous", title = "Future issues", journal = j-TUGboat, volume = "21", number = "2", pages = "146--146", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Preston:TB21-2-100, author = "Roy Preston", title = "Font identification", journal = j-TUGboat, volume = "21", number = "2", pages = "100--100", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{DeLand:TB21-2-145, author = "Donald DeLand", title = "{Report from the TUG Treasurer}", journal = j-TUGboat, volume = "21", number = "2", pages = "145--146", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-2-147, author = "Anonymous", title = "{{2001 {\TeX} Users Group election}}", journal = j-TUGboat, volume = "21", number = "2", pages = "147--147", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-2-149, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "21", number = "2", pages = "149--149", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-2-150, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "21", number = "2", pages = "150--150", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-2-151, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "21", number = "2", pages = "151--151", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-2-152, author = "Anonymous", title = "{{IBM {\sf techexplorer}}}", journal = j-TUGboat, volume = "21", number = "2", pages = "152--152", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-2-cover-3, author = "Anonymous", title = "{Blue Sky Research}", journal = j-TUGboat, volume = "21", number = "2", pages = "Cover 3", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-2-, author = "Anonymous", title = "{{\CTAN\ \acro{CD}s: A 3-disk collection}}", journal = j-TUGboat, volume = "21", number = "2", pages = "{}", month = jun, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fairbairns:TB21-3-155, author = "Robin Fairbairns", title = "{Editorial Comments\Dash TUG\,'2000}", journal = j-TUGboat, volume = "21", number = "3", pages = "155--156", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-3-157, author = "Anonymous", title = "{TUG\,'2000 Program}", journal = j-TUGboat, volume = "21", number = "3", pages = "157--158", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bayart:TB21-3-159, author = "Benjamin Bayart", title = "{The description language chosen for {\FDNTeX}}", journal = j-TUGboat, volume = "21", number = "3", pages = "159--175", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB21-3-176, author = "Barbara Beeton", title = "{Unicode and math, a combination whose time has come\Dash Finally!}", journal = j-TUGboat, volume = "21", number = "3", pages = "176--185", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berdnikov:TB21-3-186, author = "Alexander Berdnikov and Yury Yarmola and Olga Lapko and Andrew Janishewsky", title = "{{Some experience in converting LH Fonts from {\MF} to Type1 format {\Abstract}}}", journal = j-TUGboat, volume = "21", number = "3", pages = "186--186", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bzyl:TB21-3-187, author = "W{\l}odek Bzyl", title = "{Typesetting {\TeX} documents containing computer code}", journal = j-TUGboat, volume = "21", number = "3", pages = "187--192", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carlisle:TB21-3-193, author = "David Carlisle", title = "{{{\smc xmltex}: A non validating (and not 100\ in {\TeX}}}", journal = j-TUGboat, volume = "21", number = "3", pages = "193--199", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{DeLand:TB21-3-200, author = "Donald DeLand", title = "{{Developing interactive, Web-based courseware {\Abstract}}}", journal = j-TUGboat, volume = "21", number = "3", pages = "200--200", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Downes:TB21-3-201, author = "Michael Downes", title = "{The {\tt amsrefs} {\LaTeX} package and the {\tt amsxport} {\BibTeX} style}", journal = j-TUGboat, volume = "21", number = "3", pages = "201--209", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fine:TB21-3-210, author = "Jonathan Fine", title = "Line breaking and page breaking", journal = j-TUGboat, volume = "21", number = "3", pages = "210--221", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB21-3-222, author = "Michel Goossens and Sebastian Rahtz", title = "{{Passive\TeX}: from {\XML} to {\PDF}}", journal = j-TUGboat, volume = "21", number = "3", pages = "222--234", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gostanza:TB21-3-235, author = "Pedro Palao Gostanza", title = "{Fast scanners and self-parsing in {\TeX}}", journal = j-TUGboat, volume = "21", number = "3", pages = "235--242", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kakugawa:TB21-3-243, author = "Hirotsugu Kakugawa", title = "{{A device-independent \acro{DVI} interpreter library for various output devices}}", journal = j-TUGboat, volume = "21", number = "3", pages = "243--249", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kolodin:TB21-3-250, author = "M. Y. Kolodin and O. V. Eterevksy and O. G. Lapko and I. A. Makhovaya", title = "{``Russian style'' with {\LaTeX} and {\ssf babel}: what does it look like and how does it work {\Abstract}}", journal = j-TUGboat, volume = "21", number = "3", pages = "250--250", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kostin:TB21-3-251, author = "Alex Kostin and Michael Vulis", title = "{{Mixing {\TeX} \& PostScript: The {\GeX} model}}", journal = j-TUGboat, volume = "21", number = "3", pages = "251--264", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lavaud:TB21-3-265, author = "Michel Lavaud", title = "{{The {As\TeX} Assistant and Navigator {\Abstract}}}", journal = j-TUGboat, volume = "21", number = "3", pages = "265--265", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lipkin:TB21-3-266, author = "Bernice Sacks Lipkin", title = "{{\LaTeX} and the personal database}", journal = j-TUGboat, volume = "21", number = "3", pages = "266--277", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB21-3-278, author = "Frank Mittelbach", title = "{{Formatting documents with floats: A new algorithm for {\LaTeXe}}}", journal = j-TUGboat, volume = "21", number = "3", pages = "278--290", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Murphy:TB21-3-291, author = "Timothy Murphy", title = "{{The Penrose notation: a {\LaTeX} challenge {\Abstract}}}", journal = j-TUGboat, volume = "21", number = "3", pages = "291--291", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Syropoulos:TB21-3-292, author = "Apostolos Syropoulos and Richard W. D. Nickalls", title = "{{A Perl port of the {\mathsPIC} graphics package}}", journal = j-TUGboat, volume = "21", number = "3", pages = "292--297", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Nikulina:TB21-3-298, author = "Marina Yu. Nikulina and Alexander S. Berdnikov", title = "Chess macros for chess games and puzzles", journal = j-TUGboat, volume = "21", number = "3", pages = "298--302", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Plaice:TB21-3-303, author = "John Plaice", title = "{Omega version 2 {\Abstract}}", journal = j-TUGboat, volume = "21", number = "3", pages = "303--303", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB21-3-304, author = "Philip Taylor and Ji\v{r}{\'\i} Zlatu{\v{s}}ka", title = "{The {\NTS} project: from conception to birth {\Abstract}}", journal = j-TUGboat, volume = "21", number = "3", pages = "304--304", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-3-306, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "21", number = "3", pages = "306--307", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-3-154, author = "Anonymous", title = "{{\acro{TUG}'2001 {Announcement}}}", journal = j-TUGboat, volume = "21", number = "3", pages = "154--154", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-3-305, author = "Anonymous", title = "Miscellaneous photos", journal = j-TUGboat, volume = "21", number = "3", pages = "305--305", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-3-308, author = "Anonymous", title = "{{\acro{TUG}\,'2000 {Attendees}}}", journal = j-TUGboat, volume = "21", number = "3", pages = "308--309", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-3-307, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "21", number = "3", pages = "307--307", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-3-310, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "21", number = "3", pages = "310--310", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-3-311, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "21", number = "3", pages = "311--311", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-3-312, author = "Anonymous", title = "{IBM \ssf techexplorer}", journal = j-TUGboat, volume = "21", number = "3", pages = "312--312", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-3-cover-3, author = "Anonymous", title = "{Blue Sky Research}", journal = j-TUGboat, volume = "21", number = "3", pages = "Cover 3", month = sep, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB21-4-315, author = "Barbara Beeton", title = "{Editorial Comments}", journal = j-TUGboat, volume = "21", number = "4", pages = "315", month = dec, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-4-435, author = "Anonymous", title = "{{\acro{TUG}\,'2001 Announcement}}", journal = j-TUGboat, volume = "21", number = "4", pages = "435", month = dec, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-4-436, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "21", number = "4", pages = "436", month = dec, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-4-437, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "21", number = "4", pages = "437", month = dec, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-4-438, author = "Anonymous", title = "{{TUG} membership application}", journal = j-TUGboat, volume = "21", number = "4", pages = "438", month = dec, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-4-439, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "21", number = "4", pages = "439", month = dec, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-4-440, author = "Anonymous", title = "{IBM \ssf techexplorer}", journal = j-TUGboat, volume = "21", number = "4", pages = "440", month = dec, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB21-4-cover-3, author = "Anonymous", title = "{Blue Sky Research}", journal = j-TUGboat, volume = "21", number = "4", pages = "{Cover 3}", month = dec, year = "2000", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-1-3, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "22", number = "1/2", pages = "3--3", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jett:TB22-1-5, author = "Mimi Jett", title = "{From the President}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "5--5", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB22-1-6, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "22", number = "1/2", pages = "6--7", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hefferon:TB22-1-8, author = "Jim Hef{}feron", title = "{Why \TeX?}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "8--14", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-1-15, author = "Anonymous", title = "{{Question \& Answer session with Donald Knuth, \acro{U.K.\,TUG}, Oxford, Sunday, 12 September 1999}}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "15--19", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-1-20, author = "Anonymous", title = "{{How \AllTeX{} changed the face of mathematics: An {\ssf E}-interview with Leslie Lamport, the author of \LaTeX}}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "20--22", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB22-1-23, author = "Peter Flynn", title = "Typographers' inn", journal = j-TUGboat, volume = "22", number = "1/2", pages = "23--23", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB22-1-24, author = "Frank Mittelbach", title = "{Laudatio for Professor Hermann Zapf}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "24--26", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Zapf:TB22-1-26, author = "Hermann Zapf", title = "{My collaboration with Don Knuth and my font design work}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "26--30", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB22-1-31, author = "Barbara Beeton", title = "Hyphenation exception log", journal = j-TUGboat, volume = "22", number = "1/2", pages = "31--32", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jackson:TB22-1-32, author = "Laura Elizabeth Jackson and Herbert Vo{\ss}", title = "{{{\LyX} --- An Open Source document processor}}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "32--41", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lewenberg:TB22-1-42, author = "Adam H. Lewenberg", title = "{{\acro{DVII}: A {\TeX} dvi file information utility}}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "42--45", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hobby:TB22-1-46, author = "John D. Hobby", title = "{Drawing graphs with MetaPost}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "46--58", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hagen:TB22-1-58, author = "Hans Hagen", title = "{The status quo of the {\NTS} project}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "58--66", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Adams:TB22-1-67, author = "William Adams", title = "{The treasure chest}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "67--74", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gratzer:TB22-1-74, author = "George Gr{\"a}tzer", title = "{Publishing legacy documents on the Web}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "74--78", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Roegel:TB22-1-78, author = "Denis Roegel", title = "Anatomy of a macro", journal = j-TUGboat, volume = "22", number = "1/2", pages = "78--82", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Eijkhout:TB22-1-83, author = "Victor Eijkhout", title = "{The bag of tricks}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "83--86", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mauw:TB22-1-87, author = "Sjouke Mauw and Victor Bos", title = "{Drawing message sequence charts with {\LaTeX}}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "87--92", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mittelbach:TB22-1-93, author = "Frank Mittelbach", title = "{The {\sf trace} package}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "93--99", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-1-100, author = "Anonymous", title = "{{{\sl Les Cahiers GUTenberg}, Contents of issues 35/36 (May 2000) and 37/38 (December 2000)}}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "100--102", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-1-103, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "22", number = "1/2", pages = "103--104", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-1-105, author = "Anonymous", title = "{{\acro{TUG}\,2001 Announcement}}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "105--105", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{DeMeritt:TB22-1-106, author = "Susan DeMeritt", title = "{Minutes of \TeX\ Users Group Annual General Meeting, 15 August 2000, Oxford, England}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "106--106", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{DeLand:TB22-1-107, author = "Don DeLand", title = "Financial statement, 2000", journal = j-TUGboat, volume = "22", number = "1/2", pages = "107--107", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ogawa:TB22-1-xx, author = "Arthur Ogawa", title = "{{\acro{TUG} Election Notice}}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "??--??", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-1-110, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "110--110", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-1-111, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "111--111", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-1-112, author = "Anonymous", title = "{Just Published: \TeX\ Reference Manual by David Bausum}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "112--112", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-1-cover-3, author = "Anonymous", title = "{Blue Sky Research}", journal = j-TUGboat, volume = "22", number = "1/2", pages = "Cover 3", month = mar, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-3-115, author = "Anonymous", title = "{TUG\,2001 Program}", journal = j-TUGboat, volume = "22", number = "3", pages = "115--116", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-3-117, author = "Anonymous", title = "{Participants at the 22nd Annual TUG Meeting}", journal = j-TUGboat, volume = "22", number = "3", pages = "117--117", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hagen:TB22-3-118, author = "Hans Hagen", title = "{Where will the odyssey bring us?}", journal = j-TUGboat, volume = "22", number = "3", pages = "118--118", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jett:TB22-3-119, author = "Mimi Jett", title = "{Future of publishing, Part 2}", journal = j-TUGboat, volume = "22", number = "3", pages = "119--119", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Richter:TB22-3-120, author = "William Richter", title = "{Integrating \TeX\ into a document imaging system}", journal = j-TUGboat, volume = "22", number = "3", pages = "120--130", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ogawa:TB22-3-131, author = "Arthur Ogawa", title = "{{{REV\TeX} version 4.0, an authoring package by the American Physical Society}}", journal = j-TUGboat, volume = "22", number = "3", pages = "131--133", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Schwartz:TB22-3-134, author = "Anita Schwartz", title = "{The \TeX\ History Panel}", journal = j-TUGboat, volume = "22", number = "3", pages = "134--135", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hagen:TB22-3-136, author = "Hans Hagen", title = "{Using \TeX\ for high end typesetting}", journal = j-TUGboat, volume = "22", number = "3", pages = "136--136", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB22-3-137, author = "Peter Flynn", title = "{{{\TeX}---a mass market product? Or just an image in need of a makeover?}}", journal = j-TUGboat, volume = "22", number = "3", pages = "137--139", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Tulett:TB22-3-140, author = "David Tulett", title = "{{{\LaTeX} for Windows: a user's perspective}}", journal = j-TUGboat, volume = "22", number = "3", pages = "140--145", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thanh:TB22-3-146, author = "H{\'a}n Th{\^e}\llap{\raise 0.5ex\hbox{\'{\relax}}} Th{\'a}nh", title = "{{Margin kerning and font expansion with {pdf\TeX}}}", journal = j-TUGboat, volume = "22", number = "3", pages = "146--148", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Moore:TB22-3-149, author = "Ross Moore", title = "{PDF presentations using the Marslide package}", journal = j-TUGboat, volume = "22", number = "3", pages = "149--159", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hagen:TB22-3-160, author = "Hans Hagen", title = "{Using \TeX\ to enhance your presentations}", journal = j-TUGboat, volume = "22", number = "3", pages = "160--160", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Story:TB22-3-161, author = "Donald P. Story", title = "{{Techniques of introducing document-level JavaScript into a \acro{PDF} file from a {\LaTeX} source}}", journal = j-TUGboat, volume = "22", number = "3", pages = "161--167", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Moore:TB22-3-168, author = "Ross Moore", title = "{{Online self-marking quizzes, {pdf\TeX}, exerquiz}}", journal = j-TUGboat, volume = "22", number = "3", pages = "168--179", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Schroder:TB22-3-180, author = "Martin Schr{\"o}der", title = "{{Using {pdf\TeX} in a \acro{PDF}-based imposition tool}}", journal = j-TUGboat, volume = "22", number = "3", pages = "180--180", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB22-3-181, author = "Nelson Beebe", title = "{{pdf{\TeX} Panel}}", journal = j-TUGboat, volume = "22", number = "3", pages = "181--187", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Moore:TB22-3-188, author = "Ross Moore", title = "{{Adobe plugin for \acro{WARM}reader}}", journal = j-TUGboat, volume = "22", number = "3", pages = "188--196", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Oliver:TB22-3-197, author = "Stephen Oliver", title = "{{The \TeX{}spec tool for computer-aided software engineering}}", journal = j-TUGboat, volume = "22", number = "3", pages = "197--203", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hammond:TB22-3-204, author = "William Hammond", title = "{{\acro{GELLMU}: A bridge for authors from {\LaTeX} to \acro{XML}}}", journal = j-TUGboat, volume = "22", number = "3", pages = "204--207", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Caviness:TB22-3-208, author = "Bob Caviness", title = "{Creating Math Web Documents (Workshop)}", journal = j-TUGboat, volume = "22", number = "3", pages = "208--208", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB22-3-209, author = "Alan Hoenig", title = "{Typesetting Hebrew with \TeX}", journal = j-TUGboat, volume = "22", number = "3", pages = "209--215", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB22-3-216, author = "Alan Hoenig", title = "{Modernizing Computer Modern}", journal = j-TUGboat, volume = "22", number = "3", pages = "216--219", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB22-3-220, author = "Nelson Beebe", title = "{Fonts Panel}", journal = j-TUGboat, volume = "22", number = "3", pages = "220--227", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Downes:TB22-3-228, author = "Michael Downes", title = "{{Managing multiple \acro{TDS} trees}}", journal = j-TUGboat, volume = "22", number = "3", pages = "228--237", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Doob:TB22-3-238, author = "Michael Doob", title = "{{Installing a \acro{CTAN} mirror on your desktop}}", journal = j-TUGboat, volume = "22", number = "3", pages = "238--239", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Koch:TB22-3-240, author = "Richard Koch", title = "{Installing TeXshop}", journal = j-TUGboat, volume = "22", number = "3", pages = "240--246", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Adams:TB22-3-247, author = "William Adams", title = "{Font installation: Agfa/Eaglefeather to Linotype Zapfino}", journal = j-TUGboat, volume = "22", number = "3", pages = "247--250", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-3-251, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "22", number = "3", pages = "251--252", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-3-253, author = "Anonymous", title = "{{\acro{TUG}\,2003 Announcement}}", journal = j-TUGboat, volume = "22", number = "3", pages = "253--253", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-3-254, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "22", number = "3", pages = "254--254", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-3-255, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "22", number = "3", pages = "255--255", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-3-256, author = "Anonymous", title = "{Just Published: \TeX\ Reference Manual by David Bausum}", journal = j-TUGboat, volume = "22", number = "3", pages = "256--256", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-3-cover-3, author = "Anonymous", title = "{Blue Sky Research}", journal = j-TUGboat, volume = "22", number = "3", pages = "Cover 3", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-4-259, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "22", number = "4", pages = "259--260", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ogawa:TB22-4-261, author = "Arthur Ogawa", title = "{From the Board of Directors}", journal = j-TUGboat, volume = "22", number = "4", pages = "261--263", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB22-4-263, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "22", number = "4", pages = "263--265", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Story:TB22-4-265, author = "D. P. Story", title = "{{{\tt execJS}: A new technique for introducing discardable JavaScript into a \acro{PDF} file from a {\LaTeX} source}}", journal = j-TUGboat, volume = "22", number = "4", pages = "265--268", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Goossens:TB22-4-269, author = "Michel Goossens", title = "{{\LaTeX, \acro{SVG}, fonts}}", journal = j-TUGboat, volume = "22", number = "4", pages = "269--280", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Forkosh:TB22-4-280, author = "John Forkosh", title = "{{\sf mimeTex} announcement}", journal = j-TUGboat, volume = "22", number = "4", pages = "280--281", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berry:TB22-4-281, author = "Karl Berry", title = "Making outline fonts from bitmap images", journal = j-TUGboat, volume = "22", number = "4", pages = "281--285", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fujita:TB22-4-285, author = "Shinsaku Fujita and Nobuya Tanaka", title = "{Size reduction of chemical structural formulas in \XyMTeX (Version 3.00)}", journal = j-TUGboat, volume = "22", number = "4", pages = "285--289", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Niepraschk:TB22-4-290, author = "Rolf Niepraschk and Herbert Vo{\ss}", title = "{{The package {\tt ps4pdf}: from \PS\ to \acro{PDF}}}", journal = j-TUGboat, volume = "22", number = "4", pages = "290--292", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fine:TB22-4-292, author = "Jonathan Fine", title = "{{Instant Preview and the {\TeX} daemon}}", journal = j-TUGboat, volume = "22", number = "4", pages = "292--298", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Roegel:TB22-4-298, author = "Denis Roegel", title = "{Space geometry with {\MP}}", journal = j-TUGboat, volume = "22", number = "4", pages = "298--314", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Voss:TB22-4-314, author = "Jana Vo{\ss} and Herbert Vo{\ss}", title = "{The plot functions of {\tt pst-plot}}", journal = j-TUGboat, volume = "22", number = "4", pages = "314--319", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Voss:TB22-4-319, author = "Herbert Vo{\ss}", title = "{Three dimensional plots with {\tt pst-3dplot}}", journal = j-TUGboat, volume = "22", number = "4", pages = "319--329", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Perlis:TB22-4-330, author = "Alexander R. Perlis", title = "{Axis alignment in {\Xypic} diagrams}", journal = j-TUGboat, volume = "22", number = "4", pages = "330--334", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Obrecht:TB22-4-334, author = "Christian Obrecht", title = "{Eukleides: A geometry drawing language}", journal = j-TUGboat, volume = "22", number = "4", pages = "334--337", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Moye:TB22-4-338, author = "Stephen Moye", title = "{{{\it \TeX\ Reference Manual}, by David Bausum}}", journal = j-TUGboat, volume = "22", number = "4", pages = "338--339", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wilson:TB22-4-339, author = "Peter Wilson", title = "Glisterings", journal = j-TUGboat, volume = "22", number = "4", pages = "339--341", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Adams:TB22-4-341, author = "William Adams", title = "{The treasure chest}", journal = j-TUGboat, volume = "22", number = "4", pages = "341--348", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Tulett:TB22-4-349, author = "David M. Tulett", title = "{Highlighting in the {\LaTeX} picture environment}", journal = j-TUGboat, volume = "22", number = "4", pages = "349--349", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Perlis:TB22-4-350, author = "Alexander R. Perlis", title = "{A complement to {\tt\char`\\smash}, {\tt\char`\\llap}, and {\tt\char`\\rlap}}", journal = j-TUGboat, volume = "22", number = "4", pages = "350--352", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burt:TB22-4-353, author = "John Burt", title = "Typesetting critical editions of poetry", journal = j-TUGboat, volume = "22", number = "4", pages = "353--360", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Verna:TB22-4-361, author = "Didier Verna", title = "{CV formatting with \curve}", journal = j-TUGboat, volume = "22", number = "4", pages = "361--364", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-4-365, author = "Anonymous", title = "{{{\sl Les Cahiers GUTenberg}, Contents of double issue 39/40 (May 2001)}}", journal = j-TUGboat, volume = "22", number = "4", pages = "365--367", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-4-368, author = "Anonymous", title = "{{\acro{TUG}\,'2002 Announcement}}", journal = j-TUGboat, volume = "22", number = "4", pages = "368--368", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-4-369, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "22", number = "4", pages = "369--370", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-4-371, author = "Anonymous", title = "{{\acro{TUG}\,'2003 Announcement}}", journal = j-TUGboat, volume = "22", number = "4", pages = "371--371", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-4-372, author = "Anonymous", title = "{{Euro\TeX\,'2003\Dash The \nth{14} European {\TeX} Conference}}", journal = j-TUGboat, volume = "22", number = "4", pages = "372--372", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Preston:TB22-4-260, author = "Roy Preston", title = "Ya can't touch us!", journal = j-TUGboat, volume = "22", number = "4", pages = "260--260", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-4-373, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "22", number = "4", pages = "373--373", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-4-374, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "22", number = "4", pages = "374--374", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-4-375, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "22", number = "4", pages = "375--375", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-4-376, author = "Anonymous", title = "{Just Published: \TeX\ Reference Manual by David Bausum}", journal = j-TUGboat, volume = "22", number = "4", pages = "376--376", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB22-4-cover-3, author = "Anonymous", title = "{Blue Sky Research}", journal = j-TUGboat, volume = "22", number = "4", pages = "Cover 3", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Christiansen:TB23-1-2, author = "Kaja Christiansen", title = "{Editorial Comments}", journal = j-TUGboat, volume = "23", number = "1", pages = "2--2", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-1-3, author = "Anonymous", title = "{TUG\,2002, Thiruvananthapuram\Dash Report and travelogue}", journal = j-TUGboat, volume = "23", number = "1", pages = "3--7", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-1-8, author = "Anonymous", title = "{TUG\,2002 Program}", journal = j-TUGboat, volume = "23", number = "1", pages = "8--9", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-1-10, author = "Anonymous", title = "{{Participants at the \nth{23} Annual TUG Meeting}}", journal = j-TUGboat, volume = "23", number = "1", pages = "10--12", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kumar:TB23-1-13, author = "K. Anil Kumar", title = "{\TeX\ and databases\Dash\TeX DBI}", journal = j-TUGboat, volume = "23", number = "1", pages = "13--16", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Babu:TB23-1-17, author = "Satish Babu", title = "{New horizons of free software: An Indian perspective}", journal = j-TUGboat, volume = "23", number = "1", pages = "17--20", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bujdoso:TB23-1-21, author = "Gy{\"o}ngyi Bujdos{\'o} and Ferenc Wettl", title = "{On the localization of \TeX\ in Hungary}", journal = j-TUGboat, volume = "23", number = "1", pages = "21--26", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bzyl:TB23-1-27, author = "W{\l}odzimierz Bzyl", title = "{The Tao of fonts}", journal = j-TUGboat, volume = "23", number = "1", pages = "27--40", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Esfahbod:TB23-1-41, author = "Behdad Esfahbod and Roozbeh Pournader", title = "{Farsi\TeX\ and the Iranian \TeX community}", journal = j-TUGboat, volume = "23", number = "1", pages = "41--45", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Feng:TB23-1-46, author = "Hong Feng", title = "{{The marriage of \TeX{} and Lojban}}", journal = j-TUGboat, volume = "23", number = "1", pages = "46--48", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hagen:TB23-1-49, author = "Hans Hagen", title = "{{\ConTeXt, \acro{XML} and \TeX: State of the art?}}", journal = j-TUGboat, volume = "23", number = "1", pages = "49--49", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB23-1-50, author = "Yannis Haralambous and John Plaice", title = "{{Low-level Devan\=agar\=\i{} support for Omega\Dash Adapting {\tt devnag}}}", journal = j-TUGboat, volume = "23", number = "1", pages = "50--56", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kastrup:TB23-1-57, author = "David Kastrup", title = "{{Revisiting \acro{WYSIWYG} paradigms for authoring \LaTeX}}", journal = j-TUGboat, volume = "23", number = "1", pages = "57--64", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Moore:TB23-1-65, author = "Ross Moore", title = "{{serendi\acro{PDF} with searchable math-fields in \acro{PDF} documents}}", journal = j-TUGboat, volume = "23", number = "1", pages = "65--69", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Piska:TB23-1-70, author = "Karel P{\'\i}{\v{s}}ka", title = "{{A conversion of public Indic fonts from {\MF} into Type 1 format with \TeX{\smc trace}}}", journal = j-TUGboat, volume = "23", number = "1", pages = "70--73", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Popineau:TB23-1-74, author = "Fabrice Popineau", title = "{{\TeX{}Live under Windows: What's new with the \nth{7} edition?}}", journal = j-TUGboat, volume = "23", number = "1", pages = "74--79", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pournader:TB23-1-80, author = "Roozbeh Pournader", title = "{Catching up to Unicode}", journal = j-TUGboat, volume = "23", number = "1", pages = "80--85", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rahtz:TB23-1-86, author = "Sebastian Rahtz", title = "{{Passive\TeX{}: An update}}", journal = j-TUGboat, volume = "23", number = "1", pages = "86--89", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rajkumar:TB23-1-90, author = "S. Rajkumar", title = "{Indic typesetting\Dash Challenges and opportunities}", journal = j-TUGboat, volume = "23", number = "1", pages = "90--92", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Roegel:TB23-1-93, author = "Denis Roegel", title = "{{{\manual METAOBJ}\/: Very high-level objects in \MP}}", journal = j-TUGboat, volume = "23", number = "1", pages = "93--100", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Shukla:TB23-1-101, author = "Wagish Shukla and Amitabh Trehan", title = "{Typesetting in Hindi, Sanskrit and Persian: A beginner's perspective}", journal = j-TUGboat, volume = "23", number = "1", pages = "101--105", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Skoupy:TB23-1-106, author = "Karel Skoup{\'y}", title = "{New typesetting language and system architecture}", journal = j-TUGboat, volume = "23", number = "1", pages = "106--106", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Skoupy:TB23-1-107, author = "Karel Skoup{\'y}", title = "{\TeX\ file server}", journal = j-TUGboat, volume = "23", number = "1", pages = "107--107", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Watt:TB23-1-108, author = "Stephen M. Watt", title = "{{Conserving implicit mathematical semantics in conversion between {\TeX} and MathML}}", journal = j-TUGboat, volume = "23", number = "1", pages = "108--108", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-1-109, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "23", number = "1", pages = "109--110", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-1-110, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "23", number = "1", pages = "110--110", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-1-111, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "23", number = "1", pages = "111--111", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-1-112, author = "Anonymous", title = "{{Just Published: {\TeX} Reference Manual by David Bausum}}", journal = j-TUGboat, volume = "23", number = "1", pages = "112--112", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-1-cover-3, author = "Anonymous", title = "{Blue Sky Research}", journal = j-TUGboat, volume = "23", number = "1", pages = "Cover 3", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB23-2-114, author = "Barbara Beeton", title = "{Editorial Comments}", journal = j-TUGboat, volume = "23", number = "2", pages = "114", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB23-2-115, author = "Peter Flynn", title = "{Formatting information:\hfil {A beginner's introduction to typesetting with \LaTeX}}", journal = j-TUGboat, volume = "23", number = "2", pages = "115--237", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-2-238, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "23", number = "2", pages = "238--239", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-2-c3, author = "Anonymous", title = "{{\acro{TUG}\,2003 Announcement}}", journal = j-TUGboat, volume = "23", number = "2", pages = "{c\,3}-{c\,3}", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-2-239, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "23", number = "2", pages = "239--239", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-2-240, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "23", number = "2", pages = "240--240", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-3-243, author = "Anonymous", title = "Addresses", journal = j-TUGboat, volume = "23", number = "3/4", pages = "243--244", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berry:TB23-3-245, author = "Karl Berry", title = "{From the Board of Directors}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "245--245", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB23-3-245, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "23", number = "3/4", pages = "245--247", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-3-247, author = "Anonymous", title = "{Hyphenation exception log}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "247--248", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-3-249, author = "Anonymous", title = "{Donald Knuth: All questions answered (University of Oslo, 30 August 2002)}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "249--261", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beccari:TB23-3-261, author = "Claudio Beccari", title = "{{Floating point numbers and \MF, \MP, \TeX, and \PS{} Type 1 fonts}}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "261--269", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Revets:TB23-3-269, author = "Stefan A. Revets", title = "{The Octavo package}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "269--275", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beccari:TB23-3-276, author = "Claudio Beccari", title = "{{The {\sf teubner} \LaTeX\ package: Typesetting classical Greek philology}}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "276--282", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pal:TB23-3-282, author = "Palash B. Pal", title = "{Typesetting in Bengali script using \TeX}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "282--288", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kuhn:TB23-3-288, author = "Jonathan Kuhn", title = "{{interactiveworkbook: \LaTeX-based interactive \acro{PDF} on the Web}}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "288--290", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Menshikov:TB23-3-291, author = "D. Men'shikov and A. Kostin and M. Vulis", title = "{Multiple Master math extension fonts}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "291--294", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Barton:TB23-3-294, author = "Thomas H. Barton", title = "{TrueType fonts in \PS}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "294--296", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Tsolomitis:TB23-3-296, author = "Antonis Tsolomitis", title = "{{The {\bf Kerkis} font family}}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "296--301", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Schmidt:TB23-3-301, author = "Walter Schmidt", title = "{Euler-\kern-1pt VM: Generic math fonts for use with \LaTeX}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "301--303", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Saha:TB23-3-304, author = "Prasenjit Saha", title = "{Rambutan: Literate programming in Java}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "304--309", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Obrecht:TB23-3-309, author = "Christian Obrecht", title = "{Eukleides: A geometry drawing language}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "309--313", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Casares:TB23-3-313, author = "Ram{\'o}n Casares", title = "{\MTeX}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "313--318", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{LaPlante:TB23-3-319, author = "Mark LaPlante and William F. Adams", title = "{The treasure chest}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "319--329", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Feuerstack:TB23-3-329, author = "Thomas Feuerstack", title = "{Introduction to pdf\TeX}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "329--334", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Voss:TB23-3-335, author = "Herbert Vo{\ss}", title = "{{Constructing circuit diagrams with {\tt pst-circ}}}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "335--341", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gray:TB23-3-341, author = "Norman Gray", title = "{{Absolute positioning with {\sf textpos}}}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "341--344", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Harders:TB23-3-344, author = "Harald Harders", title = "{{Multilingual bibliographies: Using and extending the {\sf babelbib} package}}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "344--353", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-3-354, author = "Anonymous", title = "{{{\it Les Cahiers GUTenberg\/}: Contents of Thematic Issue 41 (November 2001)}}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "354--354", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-3-355, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "23", number = "3/4", pages = "355--357", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-3-358, author = "Anonymous", title = "{Practical \TeX{} 2004: training and techniques}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "358--358", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-3-cover-3, author = "Anonymous", title = "{{\acro{TUG}\,2004 announcement}}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "Cover 3", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB23-3-360, author = "Mimi Burbank", title = "{Production notes}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "360--360", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-3-360, author = "Anonymous", title = "Future issues", journal = j-TUGboat, volume = "23", number = "3/4", pages = "360--360", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Preston:TB23-3-244, author = "Roy Preston", title = "{Type Design as Art}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "244--244", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ogawa:TB23-3-360, author = "Arthur Ogawa", title = "{{Report of \acro{TUG} election}}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "360--365", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laakso:TB23-3-365, author = "Robin Laakso", title = "{Financial statements for 2001 and 2002}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "365--366", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-3-357, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "23", number = "3/4", pages = "357--357", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-3-375, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "375--375", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-3-367, author = "Anonymous", title = "{Bugs in {\sl Computers \& Typesetting}, 6 July 2003}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "367--374", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-3-376, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "376--376", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB23-3-359, author = "Anonymous", title = "{{\TeX{} Live, 2003 Edition}}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "359--359", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Adams:TB24-1-2, author = "William Adams", title = "{Editorial remarks}", journal = j-TUGboat, volume = "24", number = "1", pages = "2--2", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berry:TB24-1-3, author = "Karl Berry", title = "{{Welcome to \acro{TUG}\,2003}}", journal = j-TUGboat, volume = "24", number = "1", pages = "3--4", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-1-5, author = "Anonymous", title = "{Conference program and delegates}", journal = j-TUGboat, volume = "24", number = "1", pages = "5--9", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Rosell-Gonzalez:TB24-1-10, author = "Pablo Rosell-Gonz{\'a}lez", title = "{Return to the classics}", journal = j-TUGboat, volume = "24", number = "1", pages = "10--17", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Moon:TB24-1-18, author = "Alun Moon", title = "{Digital illumination}", journal = j-TUGboat, volume = "24", number = "1", pages = "18--22", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-1-23, author = "Anonymous", title = "{Abstracts (Daly \& Richter, Hagen, Janc, Moore)}", journal = j-TUGboat, volume = "24", number = "1", pages = "23--24", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Patashnik:TB24-1-25, author = "Oren Patashnik", title = "{{{\slBibTeX} yesterday, today, and tomorrow}}", journal = j-TUGboat, volume = "24", number = "1", pages = "25--30", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-1-31, author = "Anonymous", title = "{Abstracts (Daly, Hufflen)}", journal = j-TUGboat, volume = "24", number = "1", pages = "31--31", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Koch:TB24-1-32, author = "Richard Koch", title = "{TeXShop in 2003}", journal = j-TUGboat, volume = "24", number = "1", pages = "32--38", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Costanzo:TB24-1-39, author = "Francesco Costanzo and Gary Gray", title = "{{Creating labeled stand-alone figures in {\LaTeX} using {\warmreader} and Adobe Illustrator under Mac\,OS\,X}}", journal = j-TUGboat, volume = "24", number = "1", pages = "39--49", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Saastamoinen:TB24-1-50, author = "Kalle Saastamoinen and Jaakko Ketola and Tuukka Kurppa and Liisa Torikka", title = "{Enabling Web access to a database of calculus problems using \LaTeX, PHP and \LaTeX2HTML}", journal = j-TUGboat, volume = "24", number = "1", pages = "50--52", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Padovani:TB24-1-53, author = "Luca Padovani", title = "{{Math\acro{ML} formatting with {\TeX} rules and {\TeX} fonts}}", journal = j-TUGboat, volume = "24", number = "1", pages = "53--61", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-1-62, author = "Anonymous", title = "{Abstracts (Gurari, Quirk, Hagen, Hefferon, Lehmke)}", journal = j-TUGboat, volume = "24", number = "1", pages = "62--63", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jackowski:TB24-1-64, author = "Bogus{\l}aw Jackowski and Janusz M. Nowacki", title = "{Latin Modern: Enhancing Computer Modern with accents, accents, accents}", journal = j-TUGboat, volume = "24", number = "1", pages = "64--74", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Volovich:TB24-1-75, author = "Vladimir Volovich", title = "{{\acro{CM-S}uper: Automatic creation of efficient Type 1 fonts from {\MF} fonts}}", journal = j-TUGboat, volume = "24", number = "1", pages = "75--78", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thanh:TB24-1-79, author = "H{\'a}n Th{\^e}\llap{\raise 0.5ex\hbox{\'{\relax}}} Th{\'a}nh", title = "{Making Type 1 fonts for Vietnamese}", journal = j-TUGboat, volume = "24", number = "1", pages = "79--84", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Yiu:TB24-1-85, author = "Candy L. K. Yiu and Wai Wong", title = "{Chinese character synthesis using \MP}", journal = j-TUGboat, volume = "24", number = "1", pages = "85--93", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-1-94, author = "Anonymous", title = "{Abstracts (Adams)}", journal = j-TUGboat, volume = "24", number = "1", pages = "94--94", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bilotta:TB24-1-95, author = "Giuseppe Bilotta", title = "{\eOmega: A step towards the future with a look at the past}", journal = j-TUGboat, volume = "24", number = "1", pages = "95--96", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoenig:TB24-1-97, author = "Alan Hoenig", title = "{Makor: Typesetting Hebrew with Omega}", journal = j-TUGboat, volume = "24", number = "1", pages = "97--104", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Plaice:TB24-1-105, author = "John Plaice and Paul Swoboda and Yannis Haralambous and Chris Rowley", title = "{A multidimensional approach to typesetting}", journal = j-TUGboat, volume = "24", number = "1", pages = "105--114", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-1-115, author = "Anonymous", title = "{Abstracts (Cho)}", journal = j-TUGboat, volume = "24", number = "1", pages = "115--115", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Moon:TB24-1-116, author = "Alun Moon", title = "{{Literate programming meets \acro{UML}}}", journal = j-TUGboat, volume = "24", number = "1", pages = "116--119", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bilotta:TB24-1-120, author = "Giuseppe Bilotta", title = "{Math in \ConTeXt: Bridging the gap with (\kern-.1emAMS\kern.05em-)\LaTeX}", journal = j-TUGboat, volume = "24", number = "1", pages = "120--121", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-1-122, author = "Anonymous", title = "{Abstracts (Bazargan et al., Esser, Lehmke, Popineau, Wierda)}", journal = j-TUGboat, volume = "24", number = "1", pages = "122--123", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gray:TB24-1-124, author = "Gary Gray and Francesco Costanzo", title = "{{Experiences and lessons learned teaching {\LaTeX} to university students}}", journal = j-TUGboat, volume = "24", number = "1", pages = "124--131", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gaudeul:TB24-1-132, author = "Alexandre Gaudeul", title = "{{The {\AllTeX} project: A case study of open source software}}", journal = j-TUGboat, volume = "24", number = "1", pages = "132--145", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Odyniec:TB24-1-146, author = "Andrzej Odyniec", title = "{{A Polished {\TeX} story}}", journal = j-TUGboat, volume = "24", number = "1", pages = "146--150", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-1-151, author = "Anonymous", title = "{Abstracts (Bibby, Ranade)}", journal = j-TUGboat, volume = "24", number = "1", pages = "151--151", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-1-152, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "24", number = "1", pages = "152--153", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{conference:TB24-1-c3, author = "TUG 2004 conference", title = "{Xanthi, Greece, August 30--September 3, 2004}", journal = j-TUGboat, volume = "24", number = "1", pages = "{c\,3}-{c\,3}", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{conference:TB24-1-154, author = "TUG 2005 conference", title = "{Wuhan, China, August 23--25, 2005}", journal = j-TUGboat, volume = "24", number = "1", pages = "154--154", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-1-155, author = "Anonymous", title = "{Recognition of support from Apple}", journal = j-TUGboat, volume = "24", number = "1", pages = "155--155", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-1-155-2, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "24", number = "1", pages = "155--155", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-1-156, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "24", number = "1", pages = "156--156", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berry:TB24-2-159, author = "Karl Berry", title = "{From the President}", journal = j-TUGboat, volume = "24", number = "2", pages = "159--159", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB24-2-160, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "24", number = "2", pages = "160--161", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Plaice:TB24-2-162, author = "John Plaice", title = "{Daniel Taupin, 1936--2003}", journal = j-TUGboat, volume = "24", number = "2", pages = "162--162", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Waud:TB24-2-163, author = "Douglas Waud", title = "{What is \TeX?}", journal = j-TUGboat, volume = "24", number = "2", pages = "163--164", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lawrence:TB24-2-165, author = "Richard Lawrence", title = "{Maths = Typography?}", journal = j-TUGboat, volume = "24", number = "2", pages = "165--168", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Garcia:TB24-2-169, author = "Federico Garcia", title = "{{On musical typesetting: Sonata for {\TeX} and {\MF}, Op. 2}}", journal = j-TUGboat, volume = "24", number = "2", pages = "169--182", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Adams:TB24-2-183, author = "William Adams", title = "{There is no end: Omega and Zapfino}", journal = j-TUGboat, volume = "24", number = "2", pages = "183--199", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hall:TB24-2-200, author = "Timothy Hall", title = "{{The {\MF} approach: Implicit, relative, and analytical font design}}", journal = j-TUGboat, volume = "24", number = "2", pages = "200--205", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Fairbairns:TB24-2-205, author = "Robin Fairbairns and Jim Hef{}feron and Rainer Sch{\"o}pf and Joachim Schrod and Graham Williams and Reinhard Zierke", title = "{{\acro{CTAN} plans}}", journal = j-TUGboat, volume = "24", number = "2", pages = "205--208", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hellstrom:TB24-2-208, author = "Lars Hellstr{\"o}m", title = "{Some notes on templates}", journal = j-TUGboat, volume = "24", number = "2", pages = "208--210", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Walden:TB24-2-211, author = "David Walden", title = "{Writing a big book\Dash A first experience with \LaTeX}", journal = j-TUGboat, volume = "24", number = "2", pages = "211--215", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Syropoulos:TB24-2-216, author = "Apostolos Syropoulos", title = "{Designing packages for $\Lambda$: An overview}", journal = j-TUGboat, volume = "24", number = "2", pages = "216--220", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Team:TB24-2-221, author = "\LaTeX Project Team", title = "{{{\LaTeX} news, issues 14--16, 2001--2003}}", journal = j-TUGboat, volume = "24", number = "2", pages = "221--223", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Luck:TB24-2-224, author = "Uwe L{\"u}ck", title = "{{{\sf ednotes}\Dash critical edition typesetting with \LaTeX}}", journal = j-TUGboat, volume = "24", number = "2", pages = "224--236", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Scannell:TB24-2-236, author = "Kevin P. Scannell", title = "{Hyphenation patterns for minority languages}", journal = j-TUGboat, volume = "24", number = "2", pages = "236--239", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Caird:TB24-2-240, author = "Andrew Caird", title = "{\AllTeX, genealogy, and the LifeLines software}", journal = j-TUGboat, volume = "24", number = "2", pages = "240--244", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Talole:TB24-2-245, author = "S. E. Talole and S. B. Phadke", title = "{{Generating {\LaTeX} documents through Matlab}}", journal = j-TUGboat, volume = "24", number = "2", pages = "245--248", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hufflen:TB24-2-249, author = "Jean-Michel Hufflen", title = "{Ml\BibTeX's Version 1.3}", journal = j-TUGboat, volume = "24", number = "2", pages = "249--262", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wilson:TB24-2-262, author = "Peter Wilson", title = "{Glisterings}", journal = j-TUGboat, volume = "24", number = "2", pages = "262--265", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{LaPlante:TB24-2-265, author = "Mark LaPlante", title = "{The treasure chest}", journal = j-TUGboat, volume = "24", number = "2", pages = "265--275", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beccari:TB24-2-275, author = "Claudio Beccari", title = "{{The {\LaTeX} Companion, Second Edition}}", journal = j-TUGboat, volume = "24", number = "2", pages = "275--277", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Waud:TB24-2-278, author = "Douglas Waud and Mimi Burbank", title = "{{Guide to \LaTeX, \nth{4} Edition}}", journal = j-TUGboat, volume = "24", number = "2", pages = "278--281", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-2-282, author = "Anonymous", title = "{{{\it Les Cahiers GUTenberg\/}: Contents of Issue 42 (July 2003)}}", journal = j-TUGboat, volume = "24", number = "2", pages = "282--282", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-2-283, author = "Anonymous", title = "{{{\it MAPS\/}: Contents of issues 27--28 (2002)}}", journal = j-TUGboat, volume = "24", number = "2", pages = "283--285", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-2-286, author = "Anonymous", title = "{{{\it \TeX emplares\/}: Contents of issues 4--6 (2003--04)}}", journal = j-TUGboat, volume = "24", number = "2", pages = "286--287", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Katre:TB24-2-288, author = "S. A. Katre and Manjusha Joshi", title = "{{Report on the Pune workshop on {\LaTeX} and free mathematical software}}", journal = j-TUGboat, volume = "24", number = "2", pages = "288--290", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB24-2-291, author = "Nelson Beebe and Wendy McKay and Ross Moore", title = "{{\acro{TUG} at Bay}}", journal = j-TUGboat, volume = "24", number = "2", pages = "291--293", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-2-294, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "24", number = "2", pages = "294--295", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-2-295, author = "Anonymous", title = "{{\acro{TUG}\,2005 announcement}}", journal = j-TUGboat, volume = "24", number = "2", pages = "295--295", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-2-cover-3, author = "Anonymous", title = "{Euro\TeX\,2005 announcement}", journal = j-TUGboat, volume = "24", number = "2", pages = "Cover 3", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Burbank:TB24-2-296, author = "Mimi Burbank", title = "{Production notes}", journal = j-TUGboat, volume = "24", number = "2", pages = "296--296", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-2-296, author = "Anonymous", title = "Future issues", journal = j-TUGboat, volume = "24", number = "2", pages = "296--296", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laakso:TB24-2-296, author = "Robin Laakso", title = "{Financial statements for 2003}", journal = j-TUGboat, volume = "24", number = "2", pages = "296--297", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-2-298, author = "Anonymous", title = "{TUG 2005 election}", journal = j-TUGboat, volume = "24", number = "2", pages = "298--298", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-2-293, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "24", number = "2", pages = "293--293", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-2-299, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "24", number = "2", pages = "299--299", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB24-3-302, author = "Yannis Haralambous", title = "{{The {Euro\TeX} 2003 conference}}", journal = j-TUGboat, volume = "24", number = "3", pages = "302--305", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{program:TB24-3-306, author = "Conference program and delegates", title = "{}", journal = j-TUGboat, volume = "24", number = "3", pages = "306--310", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Paput:TB24-3-311, author = "Christian Paput", title = "{French typographic patrimony, conservation and teaching}", journal = j-TUGboat, volume = "24", number = "3", pages = "311--313", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Andre:TB24-3-314, author = "Jacques Andr{\'e}", title = "{The Cassetin project\Dash Towards an inventory of ancient types and the related standardised encoding}", journal = j-TUGboat, volume = "24", number = "3", pages = "314--318", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Syropoulos:TB24-3-319, author = "Apostolos Syropoulos", title = "{Replicating archaic documents: A typographic challenge}", journal = j-TUGboat, volume = "24", number = "3", pages = "319--322", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lazrek:TB24-3-323, author = "Azzeddine Lazrek", title = "{CurExt, typesetting variable-sized curved symbols}", journal = j-TUGboat, volume = "24", number = "3", pages = "323--327", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Atanasiu:TB24-3-328, author = "Vlad Atanasiu", title = "{Allographic biometrics and behavior synthesis}", journal = j-TUGboat, volume = "24", number = "3", pages = "328--333", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mourad:TB24-3-334, author = "Ghassan Mourad", title = "{La virgule viendrait-elle de l'\'ecriture arabe ?}", journal = j-TUGboat, volume = "24", number = "3", pages = "334--338", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Souchier:TB24-3-339, author = "Emmanu{\"e}l Souchier", title = "{Quelques remarques sur le sens et la servitude de la typographie}", journal = j-TUGboat, volume = "24", number = "3", pages = "339--350", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Maniette:TB24-3-351, author = "Yves Maniette", title = "{Syst\`eme automatis\'e de co-r\'edaction de livres}", journal = j-TUGboat, volume = "24", number = "3", pages = "351--356", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Turcan:TB24-3-357, author = "Isabelle Turcan and Viviane Berthelier", title = "{{\smash{\'E}thique et \'edition scientifique d'ouvrages anciens sur support \'electronique}}", journal = j-TUGboat, volume = "24", number = "3", pages = "357--368", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Haralambous:TB24-3-369, author = "Yannis Haralambous and John Plaice", title = "{{X\LaTeX, a \acro{DTD}/schema which is very close to \LaTeX}}", journal = j-TUGboat, volume = "24", number = "3", pages = "369--376", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Grimm:TB24-3-377, author = "Jos{\'e} Grimm", title = "{{Tralics, a {\LaTeX} to {\XML} translator}}", journal = j-TUGboat, volume = "24", number = "3", pages = "377--388", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pepping:TB24-3-389, author = "Simon Pepping", title = "{{{Docbook In \ConTeXt}, a {\ConTeXt} {\XML} mapping for DocBook documents}}", journal = j-TUGboat, volume = "24", number = "3", pages = "389--401", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kanellos:TB24-3-402, author = "Ioannis Kanellos", title = "{Intertextualit\'e et typographie num\'erique\Dash consid\'erations s\'emantiques sur le livre \'electronique}", journal = j-TUGboat, volume = "24", number = "3", pages = "402--410", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mourad:TB24-3-411, author = "Ghassan Mourad", title = "{Nouveaux signes de lecture et d'\'ecriture pour les documents \'electroniques}", journal = j-TUGboat, volume = "24", number = "3", pages = "411--414", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Chaix:TB24-3-415, author = "Marie-Louise Chaix and Fabrice Popineau", title = "{{The XE{\slc M}{\TeX} project}}", journal = j-TUGboat, volume = "24", number = "3", pages = "415--419", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laurens:TB24-3-420, author = "J{\'e}r\^ome Laurens", title = "{{i\TeX Mac, an integrated {\TeX} environment for \MacOSX}}", journal = j-TUGboat, volume = "24", number = "3", pages = "420--426", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Vecsei:TB24-3-427, author = "Bal{\'a}zs Vecsei", title = "{{Description of knowledge of mathematical programs with {\TeX} and \XML}}", journal = j-TUGboat, volume = "24", number = "3", pages = "427--429", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Turner:TB24-3-430, author = "David Turner and Werner Lemberg", title = "{Real-time grid fitting of typographic outlines}", journal = j-TUGboat, volume = "24", number = "3", pages = "430--434", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sutto:TB24-3-435, author = "Jean-Pierre Sutto and Pier Daniele Napolitani", title = "{{L'utilisation du Mauro\kern.1em-{\TeX} pour l'\'edition critique de Francesco Maurolico}}", journal = j-TUGboat, volume = "24", number = "3", pages = "435--440", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Szabo:TB24-3-441, author = "P{\'e}ter Szab{\'o}", title = "{Inserting external figures with GraphicP}", journal = j-TUGboat, volume = "24", number = "3", pages = "441--448", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Horak:TB24-3-449, author = "Karel Hor{\'a}k", title = "{{Geometric diversions with \TeX, {\MF} and {\MP}}}", journal = j-TUGboat, volume = "24", number = "3", pages = "449--452", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Boulanger:TB24-3-453, author = "Fr{\'e}d{\'e}ric Boulanger", title = "{Printing digital photographs with \LaTeX}", journal = j-TUGboat, volume = "24", number = "3", pages = "453--461", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kastrup:TB24-3-462, author = "David Kastrup", title = "{Output routine requirements for advanced typesetting tasks}", journal = j-TUGboat, volume = "24", number = "3", pages = "462--467", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Widmann:TB24-3-468, author = "Thomas Widmann", title = "{{Bibulus\Dash a Perl/{\XML} replacement for \slBibTeX}}", journal = j-TUGboat, volume = "24", number = "3", pages = "468--471", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Dagnat:TB24-3-472, author = "Fabien Dagnat and Ronan Keryell and Laura Barrero Sastre and Emmanuel Donin de Rosi{\`e}re and Nicolas Torneri", title = "{{\slBibTeX\raise .25ex \hbox{\slc ++}: Toward higher-order \slBibTeX ing}}", journal = j-TUGboat, volume = "24", number = "3", pages = "472--488", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hufflen:TB24-3-489, author = "Jean-Michel Hufflen", title = "{European bibliography styles and Ml\slBibTeX}", journal = j-TUGboat, volume = "24", number = "3", pages = "489--498", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Olsak:TB24-3-499, author = "Petr Ol{\v{s}}{\'a}k", title = "{{Second version of enc\TeX: \acro{UTF}-8 support}}", journal = j-TUGboat, volume = "24", number = "3", pages = "499--501", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Milo:TB24-3-502, author = "Thomas Milo", title = "{{\acro{ALI-BABA} and the 4.0 Unicode characters\Dash New input and output concepts under Unicode}}", journal = j-TUGboat, volume = "24", number = "3", pages = "502--511", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Plaice:TB24-3-512, author = "John Plaice and Yannis Haralambous", title = "{Generating multiple outputs from \OMEGA}", journal = j-TUGboat, volume = "24", number = "3", pages = "512--518", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Sastry:TB24-3-519, author = "B. V. Venkata Krishna Sastry", title = "{Enhanced font features for future multilingual digital typography with sound-script-language attribute integration}", journal = j-TUGboat, volume = "24", number = "3", pages = "519--526", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bujdoso:TB24-3-527, author = "Gy{\"o}ngyi Bujdos{\'o}", title = "{Contemporary Hungarian types and designers}", journal = j-TUGboat, volume = "24", number = "3", pages = "527--530", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Williams:TB24-3-531, author = "George Williams", title = "{Font creation with FontForge}", journal = j-TUGboat, volume = "24", number = "3", pages = "531--544", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Peterlin:TB24-3-545, author = "Primo\v{z} Peterlin", title = "{{The free \acro{UCS} outline fonts project\Dash{}An attempt to create a global font}}", journal = j-TUGboat, volume = "24", number = "3", pages = "545--549", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mehta:TB24-3-550, author = "Anish Mehta and G{\'a}bor Bella and Yannis Haralambous", title = "{{Adapting {\OMEGA} to OpenType fonts}}", journal = j-TUGboat, volume = "24", number = "3", pages = "550--556", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Toledo:TB24-3-557, author = "Sivan Toledo and Zvika Rosenberg", title = "{Experience with OpenType Font Production}", journal = j-TUGboat, volume = "24", number = "3", pages = "557--568", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Vakulenko:TB24-3-569, author = "Serge Vakulenko", title = "{{The {\manual METATYPE} project: Creating TrueType fonts based on \MF}}", journal = j-TUGboat, volume = "24", number = "3", pages = "569--574", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Jackowski:TB24-3-575, author = "Bogus{\l}aw Jackowski and Janusz Nowacki and Piotr Strzelczyk", title = "{{Programming {\PS} Type 1 fonts using Meta\kern-.1em Type1: Auditing, enhancing, creating}}", journal = j-TUGboat, volume = "24", number = "3", pages = "575--581", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wong:TB24-3-582, author = "Wai Wong and Candy L. K. Yiu and Kelvin C. F. Ng", title = "{Typesetting rare Chinese characters in \LaTeX}", journal = j-TUGboat, volume = "24", number = "3", pages = "582--587", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Devroye:TB24-3-588, author = "Luc Devroye", title = "{Formatting font formats}", journal = j-TUGboat, volume = "24", number = "3", pages = "588--596", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Tombeur:TB24-3-597, author = "Jef Tombeur", title = "{Polices d'apprentissage de l'\'ecriture}", journal = j-TUGboat, volume = "24", number = "3", pages = "597--604", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Tombeur:TB24-3-605, author = "Jef Tombeur", title = "{R\'eformes philanthropiques et r\'eformes orthotypographiques, alphabets artificiels et synth\'etiques}", journal = j-TUGboat, volume = "24", number = "3", pages = "605--618", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-3-619, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "24", number = "3", pages = "619--620", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-3-621, author = "Anonymous", title = "{{\acro{TUG}\,2005, 23--25 August 2005, Wuhan, China}}", journal = j-TUGboat, volume = "24", number = "3", pages = "621--621", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-3-622, author = "Anonymous", title = "{Practical \TeX\,2005, 14--17 June 2005, Chapel Hill, North Carolina}", journal = j-TUGboat, volume = "24", number = "3", pages = "622--622", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-3-621-2, author = "Anonymous", title = "{TUG 2005 election report}", journal = j-TUGboat, volume = "24", number = "3", pages = "621--621", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-3-623, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "24", number = "3", pages = "623--623", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-3-623-2, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "24", number = "3", pages = "623--623", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-3-624, author = "Anonymous", title = "{{{\sl Easy Table}, Khanh Ha}}", journal = j-TUGboat, volume = "24", number = "3", pages = "624--624", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB24-3-c3, author = "Anonymous", title = "{H.W. Caslon \& Co.\ Ltd}", journal = j-TUGboat, volume = "24", number = "3", pages = "{c\,3}-{c\,3}", year = "2003", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Carnes:TB25-1-2, author = "Lance Carnes", title = "{{Highlights of the Practical {\TeX} 2004 conference}}", journal = j-TUGboat, volume = "25", number = "1", pages = "2--3", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{program:TB25-1-4, author = "Conference program and delegates and sponsors", title = "{}", journal = j-TUGboat, volume = "25", number = "1", pages = "4--5", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berry:TB25-1-6, author = "Karl Berry", title = "{{Welcome to Practical {\TeX} 2004}}", journal = j-TUGboat, volume = "25", number = "1", pages = "6--6", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB25-1-7, author = "Nelson H. F. Beebe", title = "{{25 Years of {\TeX} and \MF: Looking back and looking forward\Dash \acro{TUG}\,2003 keynote address}}", journal = j-TUGboat, volume = "25", number = "1", pages = "7--30", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB25-1-31, author = "Peter Flynn", title = "{{{\TeX} and the interfaces\Dash Practical \TeX\,2004 keynote address}}", journal = j-TUGboat, volume = "25", number = "1", pages = "31--34", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Thanh:TB25-1-35, author = "H{\'a}n Th{\^e}\llap{\raise 0.5ex\hbox{\'{\relax}}} Th{\'a}nh", title = "{{Micro-typographic extensions of pdf{\TeX} in practice}}", journal = j-TUGboat, volume = "25", number = "1", pages = "35--38", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Gurari:TB25-1-39, author = "Eitan M. Gurari", title = "{{\TeX4ht: \acro{HTML} production}}", journal = j-TUGboat, volume = "25", number = "1", pages = "39--47", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hagen:TB25-1-48, author = "Hans Hagen", title = "{The state of \ConTeXt}", journal = j-TUGboat, volume = "25", number = "1", pages = "48--51", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Grathwohl:TB25-1-52, author = "Steve Grathwohl", title = "{A simple book design in \ConTeXt}", journal = j-TUGboat, volume = "25", number = "1", pages = "52--57", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Peter:TB25-1-58, author = "Steve Peter", title = "{{{\TeX} and linguistics}}", journal = j-TUGboat, volume = "25", number = "1", pages = "58--62", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Moses:TB25-1-63, author = "Brooks Moses", title = "{MetaPlot, MetaContour, and other collaborations with \MP}", journal = j-TUGboat, volume = "25", number = "1", pages = "63--70", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Richter:TB25-1-71, author = "William M. Richter", title = "{{{\TeX} and scripting languages}}", journal = j-TUGboat, volume = "25", number = "1", pages = "71--88", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB25-1-89, author = "Nelson H. F. Beebe", title = "{A bibliographer's toolbox}", journal = j-TUGboat, volume = "25", number = "1", pages = "89--104", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoekwater:TB25-1-105, author = "Taco Hoekwater", title = "{MetaPost developments}", journal = j-TUGboat, volume = "25", number = "1", pages = "105--105", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bilotta:TB25-1-105, author = "Giuseppe Bilotta", title = "{The $\aleph$ (Aleph) project}", journal = j-TUGboat, volume = "25", number = "1", pages = "105--107", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hagen:TB25-1-108, author = "Hans Hagen", title = "{{The {\TeX} Live 2004 collection}}", journal = j-TUGboat, volume = "25", number = "1", pages = "108--111", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-1-112, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "25", number = "1", pages = "112--113", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-1-114, author = "Anonymous", title = "{{\acro{TUG}\,2005, 23--25 August 2005, Wuhan, China}}", journal = j-TUGboat, volume = "25", number = "1", pages = "114--114", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-1-cover-3, author = "Anonymous", title = "{Practical \TeX\,2005, 14--17 June 2005, Chapel Hill, North Carolina}", journal = j-TUGboat, volume = "25", number = "1", pages = "Cover 3", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-1-120, author = "Anonymous", title = "{Recognition of support from Apple}", journal = j-TUGboat, volume = "25", number = "1", pages = "120--120", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-1-115, author = "Anonymous", title = "{TUG membership application}", journal = j-TUGboat, volume = "25", number = "1", pages = "115--115", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-1-116, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "25", number = "1", pages = "116--116", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-1-116-2, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "25", number = "1", pages = "116--116", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-1-114-2, author = "Anonymous", title = "{{{\sl The \LaTeX\ Companion}, \nth{2} edition, by Frank Mittelbach et al.}}", journal = j-TUGboat, volume = "25", number = "1", pages = "114--114", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-1-117, author = "Anonymous", title = "{{{\sl Easy Table}, Khanh Ha}}", journal = j-TUGboat, volume = "25", number = "1", pages = "117--117", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-1-118, author = "Anonymous", title = "{River Valley Technologies}", journal = j-TUGboat, volume = "25", number = "1", pages = "118--118", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-1-118-2, author = "Anonymous", title = "{MacKichan Software, Inc.}", journal = j-TUGboat, volume = "25", number = "1", pages = "118--118", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-1-119, author = "Anonymous", title = "{Carleton Production Centre}", journal = j-TUGboat, volume = "25", number = "1", pages = "119--119", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-1-119-2, author = "Anonymous", title = "{Cheryl Ponchin Training}", journal = j-TUGboat, volume = "25", number = "1", pages = "119--119", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-1-120-2, author = "Anonymous", title = "{Personal \TeX, Inc.}", journal = j-TUGboat, volume = "25", number = "1", pages = "120--120", year = "2004", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berry:TB25-2-123, author = "Karl Berry", title = "{From the President}", journal = j-TUGboat, volume = "25", number = "2", pages = "123--124", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB25-2-124, author = "Barbara Beeton", title = "Editorial comments", journal = j-TUGboat, volume = "25", number = "2", pages = "124--125", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hefferon:TB25-2-126, author = "Jim Hef{}feron", title = "{{\acro{CTAN} for starters}}", journal = j-TUGboat, volume = "25", number = "2", pages = "126--127", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Peter:TB25-2-128, author = "Steve Peter", title = "{{\cs{starttext}: Practical \ConTeXt}}", journal = j-TUGboat, volume = "25", number = "2", pages = "128--130", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Schmitz:TB25-2-131, author = "Thomas Schmitz", title = "{Virtual fonts\Dash a tutorial}", journal = j-TUGboat, volume = "25", number = "2", pages = "131--133", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB25-2-134, author = "Peter Flynn", title = "{Typographers' Inn}", journal = j-TUGboat, volume = "25", number = "2", pages = "134--136", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beccari:TB25-2-136, author = "Claudio Beccari and Cristiano Pulone", title = "{Philological facilities for the Coptic script}", journal = j-TUGboat, volume = "25", number = "2", pages = "136--140", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Lazrek:TB25-2-141, author = "Azzeddine Lazrek", title = "{{{\sf Ry\acro{DA}rab}\Dash Typesetting Arabic mathematical expressions}}", journal = j-TUGboat, volume = "25", number = "2", pages = "141--149", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Pakin:TB25-2-150, author = "Scott Pakin", title = "{{Perl\TeX: Defining {\LaTeX} macros using Perl}}", journal = j-TUGboat, volume = "25", number = "2", pages = "150--159", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kroonenberg:TB25-2-159, author = "Siep Kroonenberg", title = "{{\TeX} and prepress}", journal = j-TUGboat, volume = "25", number = "2", pages = "159--165", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Castier:TB25-2-166, author = "Marcelo Castier and Vladimir F. Cabral", title = "Automatic typesetting of formulas using computer algebra", journal = j-TUGboat, volume = "25", number = "2", pages = "166--172", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hwang:TB25-2-172, author = "Andrew D. Hwang", title = "{{{\tt ePiX}: A utility for creating mathematically accurate figures}}", journal = j-TUGboat, volume = "25", number = "2", pages = "172--176", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hagon:TB25-2-177, author = "J. P. Hagon", title = "{{{\LaTeX} in 3D: {\sf OpenDX} annotations}}", journal = j-TUGboat, volume = "25", number = "2", pages = "177--187", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Dominici:TB25-2-188, author = "Massimiliano Dominici", title = "{{{\sf dramatist}: Another package for typesetting drama with \LaTeX}}", journal = j-TUGboat, volume = "25", number = "2", pages = "188--192", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Law:TB25-2-193, author = "Simon Law", title = "{Variable width boxes in \LaTeX}", journal = j-TUGboat, volume = "25", number = "2", pages = "193--193", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Adriaens:TB25-2-194, author = "Hendri Adriaens and Uwe Kern", title = "{{\sf xkeyval}\Dash new developments and mechanisms in key processing}", journal = j-TUGboat, volume = "25", number = "2", pages = "194--199", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Walden:TB25-2-199, author = "David Walden", title = "{{A non-expert looks at a small {\TeX} macro}}", journal = j-TUGboat, volume = "25", number = "2", pages = "199--201", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wilson:TB25-2-201, author = "Peter Wilson", title = "{Glisterings: Package/package and class/package clashes}", journal = j-TUGboat, volume = "25", number = "2", pages = "201--202", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{LaPlante:TB25-2-203, author = "Mark LaPlante", title = "The treasure chest", journal = j-TUGboat, volume = "25", number = "2", pages = "203--208", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-2-209, author = "Anonymous", title = "{{{\it Zpravodaj\/}: Contents of issues 13(1), 14(1), 14(2) (2003--2004)}}", journal = j-TUGboat, volume = "25", number = "2", pages = "209--210", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-2-210, author = "Anonymous", title = "{{{\it Die \TeX nische Kom\"odie\/}: Contents of issues 1--4/2003}}", journal = j-TUGboat, volume = "25", number = "2", pages = "210--212", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-2-213, author = "Anonymous", title = "{{{\it Biuletyn GUST\/}: Contents of issues 20--21 (2004)}}", journal = j-TUGboat, volume = "25", number = "2", pages = "213--215", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-2-215, author = "Anonymous", title = "{{{\it Les Cahiers GUTenberg\/}: Contents of issue 43 (2003)}}", journal = j-TUGboat, volume = "25", number = "2", pages = "215--215", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-2-216, author = "Anonymous", title = "{{{\it MAPS\/}: Contents of issues 29--31 (2003--2004)}}", journal = j-TUGboat, volume = "25", number = "2", pages = "216--220", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-2-221, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "25", number = "2", pages = "221--222", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bari:TB25-2-223, author = "Onofrio de Bari and Maurizio Himmelmann", title = "{A brief report on the first GuIT meeting}", journal = j-TUGboat, volume = "25", number = "2", pages = "223--223", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-2-223, author = "Anonymous", title = "{{\acro{TUG}\,2005 announcement}}", journal = j-TUGboat, volume = "25", number = "2", pages = "223--223", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berry:TB25-2-224, author = "Karl Berry and Kaja Christiansen", title = "{{{\TeX} Development Fund 2003--05 report}}", journal = j-TUGboat, volume = "25", number = "2", pages = "224--225", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laakso:TB25-2-226, author = "Robin Laakso", title = "Financial statements for 2004", journal = j-TUGboat, volume = "25", number = "2", pages = "226--227", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB25-2-228, author = "Barbara Beeton", title = "{{\acro{TUG} 2005 election report}}", journal = j-TUGboat, volume = "25", number = "2", pages = "228--231", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-2-232, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "25", number = "2", pages = "232--232", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB25-2-232-2, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "25", number = "2", pages = "232--232", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Berry:TB26-1-3, author = "Karl Berry", title = "{From the President}", journal = j-TUGboat, volume = "26", number = "1", pages = "3--3", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB26-1-3, author = "Barbara Beeton", title = "{Editorial comments}", journal = j-TUGboat, volume = "26", number = "1", pages = "3--5", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beeton:TB26-1-5, author = "Barbara Beeton", title = "{Hyphenation exception log}", journal = j-TUGboat, volume = "26", number = "1", pages = "5--6", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Quaresma:TB26-1-7, author = "Pedro Quaresma", title = "{Stacks in \TeX}", journal = j-TUGboat, volume = "26", number = "1", pages = "7--9", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Roegel:TB26-1-10, author = "Denis Roegel", title = "{Kissing circles: A French romance in MetaPost}", journal = j-TUGboat, volume = "26", number = "1", pages = "10--17", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Miller:TB26-1-17, author = "Tristan Miller", title = "{{Using the \acro{RPM} package manager for {\AllTeX} packages}}", journal = j-TUGboat, volume = "26", number = "1", pages = "17--28", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-1-29, author = "Anonymous", title = "{Conference program, delegates, and sponsors}", journal = j-TUGboat, volume = "26", number = "1", pages = "29--30", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flom:TB26-1-31, author = "Peter Flom and Tristan Miller", title = "{Impressions from Prac\TeX'05}", journal = j-TUGboat, volume = "26", number = "1", pages = "31--32", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Beebe:TB26-1-33, author = "Nelson Beebe", title = "{{The design of {\TeX} and {\slMF}: A retrospective}}", journal = j-TUGboat, volume = "26", number = "1", pages = "33--41", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flom:TB26-1-52, author = "Peter Flom", title = "{{A {\LaTeX} fledgling struggles to take flight}}", journal = j-TUGboat, volume = "26", number = "1", pages = "52--55", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Schwartz:TB26-1-56, author = "Anita Schwartz", title = "{{The art of {\LaTeX} problem solving}}", journal = j-TUGboat, volume = "26", number = "1", pages = "56--58", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hoppner:TB26-1-59, author = "Klaus H{\"o}ppner", title = "{{Strategies for including graphics in {\LaTeX} documents}}", journal = j-TUGboat, volume = "26", number = "1", pages = "59--62", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hogg:TB26-1-63, author = "Joseph Hogg", title = "{Making a booklet}", journal = j-TUGboat, volume = "26", number = "1", pages = "63--65", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Flynn:TB26-1-66, author = "Peter Flynn", title = "{{{\LaTeX} on the Web}}", journal = j-TUGboat, volume = "26", number = "1", pages = "66--67", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Mertz:TB26-1-68, author = "Andrew Mertz and William Slough", title = "{Beamer by example}", journal = j-TUGboat, volume = "26", number = "1", pages = "68--73", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bazargan:TB26-1-74, author = "Kaveh Bazargan", title = "{Batch Commander: A graphical user interface for \TeX}", journal = j-TUGboat, volume = "26", number = "1", pages = "74--80", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Ignat:TB26-1-81, author = "David Ignat", title = "{{Word to \LaTeX{} for a large, multi-author scientific paper}}", journal = j-TUGboat, volume = "26", number = "1", pages = "81--84", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Miller:TB26-1-85, author = "Tristan Miller", title = "{{Biblet: A portable {\slBibTeX} bibliography style for generating highly customizable \acro{XHTML}}}", journal = j-TUGboat, volume = "26", number = "1", pages = "85--96", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-1-97, author = "Anonymous", title = "{Abstracts \ (Allen, Burt, Fehd, Gurari, Janc, Kew, Peter)}", journal = j-TUGboat, volume = "26", number = "1", pages = "97--98", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-1-99, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "26", number = "1", pages = "99--100", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-1-104, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "26", number = "1", pages = "104--104", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-1-104-2, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "26", number = "1", pages = "104--104", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-1-101, author = "Anonymous", title = "{Silmaril Consultants}", journal = j-TUGboat, volume = "26", number = "1", pages = "101--101", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-1-101-2, author = "Anonymous", title = "{Joe Hogg}", journal = j-TUGboat, volume = "26", number = "1", pages = "101--101", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-1-101-3, author = "Anonymous", title = "{Carleton Production Centre}", journal = j-TUGboat, volume = "26", number = "1", pages = "101--101", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-1-102, author = "Anonymous", title = "{Personal {\TeX}, Inc.}", journal = j-TUGboat, volume = "26", number = "1", pages = "102--102", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-1-102-2, author = "Anonymous", title = "{River Valley Technologies}", journal = j-TUGboat, volume = "26", number = "1", pages = "102--102", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-1-102-3, author = "Anonymous", title = "{Design Science, Inc.}", journal = j-TUGboat, volume = "26", number = "1", pages = "102--102", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-1-102-4, author = "Anonymous", title = "{{{\sl The \LaTeX\ Companion}, \nth{2} edition, by Frank Mittelbach et al.}}", journal = j-TUGboat, volume = "26", number = "1", pages = "102--102", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-1-103, author = "Anonymous", title = "{Steve Peter}", journal = j-TUGboat, volume = "26", number = "1", pages = "103--103", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-1-103-2, author = "Anonymous", title = "{Cheryl Ponchin Training}", journal = j-TUGboat, volume = "26", number = "1", pages = "103--103", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-1-103-3, author = "Anonymous", title = "{MacKichan Software, Inc.}", journal = j-TUGboat, volume = "26", number = "1", pages = "103--103", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-2-106, author = "Anonymous", title = "{Conference program, delegates, and sponsors}", journal = j-TUGboat, volume = "26", number = "2", pages = "106--107", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laakso:TB26-2-108, author = "Robin Laakso", title = "{{Highlights from \acro{TUG}\,2005}}", journal = j-TUGboat, volume = "26", number = "2", pages = "108--109", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-2-110, author = "Anonymous", title = "{Conference photos}", journal = j-TUGboat, volume = "26", number = "2", pages = "110--110", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Wong:TB26-2-111, author = "Wai Wong", title = "{Typesetting Chinese: A personal perspective}", journal = j-TUGboat, volume = "26", number = "2", pages = "111--114", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Kew:TB26-2-115, author = "Jonathan Kew", title = "{{\XeTeX, the Multilingual Lion: {\TeX} meets Unicode and smart font technologies}}", journal = j-TUGboat, volume = "26", number = "2", pages = "115--124", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Laguna:TB26-2-125, author = "Javier Rodr\'{\i}guez Laguna", title = "{{H\'ong-Z\kern.05em\`{\i}: A Chinese \MF}}", journal = j-TUGboat, volume = "26", number = "2", pages = "125--128", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Yiu:TB26-2-129, author = "Candy L. K. Yiu and Jim Binkley", title = "{Qin notation generator}", journal = j-TUGboat, volume = "26", number = "2", pages = "129--134", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Bagchee:TB26-2-135, author = "Nandan Bagchee and Eitan M. Gurari", title = "{SwiExr: Spatial math exercises and worksheets, in Braille and print}", journal = j-TUGboat, volume = "26", number = "2", pages = "135--141", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Taylor:TB26-2-142, author = "Philip Taylor", title = "{{Typesetting the Byzantine {\it Cappelli}}}", journal = j-TUGboat, volume = "26", number = "2", pages = "142--151", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Hagen:TB26-2-152, author = "Hans Hagen", title = "{{Lua\TeX{}: Howling to the moon}}", journal = j-TUGboat, volume = "26", number = "2", pages = "152--157", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Piska:TB26-2-158, author = "Karel P{\'\i}{\v{s}}ka", title = "{{Converting {\MF} sources to outline fonts using \MP}}", journal = j-TUGboat, volume = "26", number = "2", pages = "158--164", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Venkatesan:TB26-2-165, author = "S. K. Venkatesan", title = "{Moving from bytes to words to semantics}", journal = j-TUGboat, volume = "26", number = "2", pages = "165--168", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-2-169, author = "Anonymous", title = "{Abstracts \ (Cho, Hong, Rowley, Taylor)}", journal = j-TUGboat, volume = "26", number = "2", pages = "169--169", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-2-170, author = "Anonymous", title = "Calendar", journal = j-TUGboat, volume = "26", number = "2", pages = "170--171", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-2-174, author = "Anonymous", title = "{{{\TeX} Collection 2005 (\TeX\,Live, pro{\TeX}t, Mac\TeX, \acro{CTAN})}}", journal = j-TUGboat, volume = "26", number = "2", pages = "174--174", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-2-175, author = "Anonymous", title = "{{Euro{\TeX} 2006 announcement}}", journal = j-TUGboat, volume = "26", number = "2", pages = "175--175", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-2-176, author = "Anonymous", title = "{TUG 2006 announcement}", journal = j-TUGboat, volume = "26", number = "2", pages = "176--176", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-2-172, author = "Anonymous", title = "{TUG membership form}", journal = j-TUGboat, volume = "26", number = "2", pages = "172--172", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-2-173, author = "Anonymous", title = "Institutional members", journal = j-TUGboat, volume = "26", number = "2", pages = "173--173", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-2-173-2, author = "Anonymous", title = "{{\TeX} consulting and production services}", journal = j-TUGboat, volume = "26", number = "2", pages = "173--173", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Anonymous:TB26-2-c3, author = "Anonymous", title = "{Table of contents, ordered by difficulty}", journal = j-TUGboat, volume = "26", number = "2", pages = "{c3}-{c3}", year = "2005", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; http://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat", acknowledgement = ack-bnb # " and " # ack-nhfb, } ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.570612 pybtex-0.24.0/examples/xampl.bib0000644000175000001440000002362500000000000016304 0ustar00agusers00000000000000% Copyright (C) 1988, 2010 Oren Patashnik. % Unlimited copying and redistribution of this file are permitted if it % is unmodified. Modifications (and their redistribution) are also % permitted, as long as the resulting file is renamed. @preamble{ "\newcommand{\noopsort}[1]{} " # "\newcommand{\printfirst}[2]{#1} " # "\newcommand{\singleletter}[1]{#1} " # "\newcommand{\switchargs}[2]{#2#1} " } @ARTICLE{article-minimal, author = {L[eslie] A. Aamport}, title = {The Gnats and Gnus Document Preparation System}, journal = {\mbox{G-Animal's} Journal}, year = 1986, } @ARTICLE{article-full, author = {L[eslie] A. Aamport}, title = {The Gnats and Gnus Document Preparation System}, journal = {\mbox{G-Animal's} Journal}, year = 1986, volume = 41, number = 7, pages = "73+", month = jul, note = "This is a full ARTICLE entry", } The KEY field is here to override the KEY field in the journal being cross referenced (so is the NOTE field, in addition to its imparting information). @ARTICLE{article-crossref, crossref = {WHOLE-JOURNAL}, key = "", author = {L[eslie] A. Aamport}, title = {The Gnats and Gnus Document Preparation System}, pages = "73+", note = "This is a cross-referencing ARTICLE entry", } @ARTICLE{whole-journal, key = "GAJ", journal = {\mbox{G-Animal's} Journal}, year = 1986, volume = 41, number = 7, month = jul, note = {The entire issue is devoted to gnats and gnus (this entry is a cross-referenced ARTICLE (journal))}, } @INBOOK{inbook-minimal, author = "Donald E. Knuth", title = "Fundamental Algorithms", publisher = "Addison-Wesley", year = "{\noopsort{1973b}}1973", chapter = "1.2", } @INBOOK{inbook-full, author = "Donald E. Knuth", title = "Fundamental Algorithms", volume = 1, series = "The Art of Computer Programming", publisher = "Addison-Wesley", address = "Reading, Massachusetts", edition = "Second", month = "10~" # jan, year = "{\noopsort{1973b}}1973", type = "Section", chapter = "1.2", pages = "10--119", note = "This is a full INBOOK entry", } @INBOOK{inbook-crossref, crossref = "whole-set", title = "Fundamental Algorithms", volume = 1, series = "The Art of Computer Programming", edition = "Second", year = "{\noopsort{1973b}}1973", type = "Section", chapter = "1.2", note = "This is a cross-referencing INBOOK entry", } @BOOK{book-minimal, author = "Donald E. Knuth", title = "Seminumerical Algorithms", publisher = "Addison-Wesley", year = "{\noopsort{1973c}}1981", } @BOOK{book-full, author = "Donald E. Knuth", title = "Seminumerical Algorithms", volume = 2, series = "The Art of Computer Programming", publisher = "Addison-Wesley", address = "Reading, Massachusetts", edition = "Second", month = "10~" # jan, year = "{\noopsort{1973c}}1981", note = "This is a full BOOK entry", } @BOOK{book-crossref, crossref = "whole-set", title = "Seminumerical Algorithms", volume = 2, series = "The Art of Computer Programming", edition = "Second", year = "{\noopsort{1973c}}1981", note = "This is a cross-referencing BOOK entry", } @BOOK{whole-set, author = "Donald E. Knuth", publisher = "Addison-Wesley", title = "The Art of Computer Programming", series = "Four volumes", year = "{\noopsort{1973a}}{\switchargs{--90}{1968}}", note = "Seven volumes planned (this is a cross-referenced set of BOOKs)", } @BOOKLET{booklet-minimal, key = "Kn{\printfirst{v}{1987}}", title = "The Programming of Computer Art", } @BOOKLET{booklet-full, author = "Jill C. Knvth", title = "The Programming of Computer Art", howpublished = "Vernier Art Center", address = "Stanford, California", month = feb, year = 1988, note = "This is a full BOOKLET entry", } @INCOLLECTION{incollection-minimal, author = "Daniel D. Lincoll", title = "Semigroups of Recurrences", booktitle = "High Speed Computer and Algorithm Organization", publisher = "Academic Press", year = 1977, } @INCOLLECTION{incollection-full, author = "Daniel D. Lincoll", title = "Semigroups of Recurrences", editor = "David J. Lipcoll and D. H. Lawrie and A. H. Sameh", booktitle = "High Speed Computer and Algorithm Organization", number = 23, series = "Fast Computers", chapter = 3, type = "Part", pages = "179--183", publisher = "Academic Press", address = "New York", edition = "Third", month = sep, year = 1977, note = "This is a full INCOLLECTION entry", } @INCOLLECTION{incollection-crossref, crossref = "whole-collection", author = "Daniel D. Lincoll", title = "Semigroups of Recurrences", pages = "179--183", note = "This is a cross-referencing INCOLLECTION entry", } @BOOK{whole-collection, editor = "David J. Lipcoll and D. H. Lawrie and A. H. Sameh", title = "High Speed Computer and Algorithm Organization", booktitle = "High Speed Computer and Algorithm Organization", number = 23, series = "Fast Computers", publisher = "Academic Press", address = "New York", edition = "Third", month = sep, year = 1977, note = "This is a cross-referenced BOOK (collection) entry", } @MANUAL{manual-minimal, key = "Manmaker", title = "The Definitive Computer Manual", } @MANUAL{manual-full, author = "Larry Manmaker", title = "The Definitive Computer Manual", organization = "Chips-R-Us", address = "Silicon Valley", edition = "Silver", month = apr # "-" # may, year = 1986, note = "This is a full MANUAL entry", } @MASTERSTHESIS{mastersthesis-minimal, author = "{\'{E}}douard Masterly", title = "Mastering Thesis Writing", school = "Stanford University", year = 1988, } @MASTERSTHESIS{mastersthesis-full, author = "{\'{E}}douard Masterly", title = "Mastering Thesis Writing", school = "Stanford University", type = "Master's project", address = "English Department", month = jun # "-" # aug, year = 1988, note = "This is a full MASTERSTHESIS entry", } @MISC{misc-minimal, key = "Missilany", note = "This is a minimal MISC entry", } @MISC{misc-full, author = "Joe-Bob Missilany", title = "Handing out random pamphlets in airports", howpublished = "Handed out at O'Hare", month = oct, year = 1984, note = "This is a full MISC entry", } @STRING{STOC-key = "OX{\singleletter{stoc}}"} @STRING{ACM = "The OX Association for Computing Machinery"} @STRING{STOC = " Symposium on the Theory of Computing"} @INPROCEEDINGS{inproceedings-minimal, author = "Alfred V. Oaho and Jeffrey D. Ullman and Mihalis Yannakakis", title = "On Notions of Information Transfer in {VLSI} Circuits", booktitle = "Proc. Fifteenth Annual ACM" # STOC, year = 1983, } @INPROCEEDINGS{inproceedings-full, author = "Alfred V. Oaho and Jeffrey D. Ullman and Mihalis Yannakakis", title = "On Notions of Information Transfer in {VLSI} Circuits", editor = "Wizard V. Oz and Mihalis Yannakakis", booktitle = "Proc. Fifteenth Annual ACM" # STOC, number = 17, series = "All ACM Conferences", pages = "133--139", month = mar, year = 1983, address = "Boston", organization = ACM, publisher = "Academic Press", note = "This is a full INPROCEDINGS entry", } @INPROCEEDINGS{inproceedings-crossref, crossref = "whole-proceedings", author = "Alfred V. Oaho and Jeffrey D. Ullman and Mihalis Yannakakis", title = "On Notions of Information Transfer in {VLSI} Circuits", organization = "", pages = "133--139", note = "This is a cross-referencing INPROCEEDINGS entry", } @PROCEEDINGS{proceedings-minimal, key = STOC-key, title = "Proc. Fifteenth Annual" # STOC, year = 1983, } @PROCEEDINGS{proceedings-full, editor = "Wizard V. Oz and Mihalis Yannakakis", title = "Proc. Fifteenth Annual" # STOC, number = 17, series = "All ACM Conferences", month = mar, year = 1983, address = "Boston", organization = ACM, publisher = "Academic Press", note = "This is a full PROCEEDINGS entry", } @PROCEEDINGS{whole-proceedings, key = STOC-key, organization = ACM, title = "Proc. Fifteenth Annual" # STOC, address = "Boston", year = 1983, booktitle = "Proc. Fifteenth Annual ACM" # STOC, note = "This is a cross-referenced PROCEEDINGS", } @PHDTHESIS{phdthesis-minimal, author = "F. Phidias Phony-Baloney", title = "Fighting Fire with Fire: Festooning {F}rench Phrases", school = "Fanstord University", year = 1988, } @PHDTHESIS{phdthesis-full, author = "F. Phidias Phony-Baloney", title = "Fighting Fire with Fire: Festooning {F}rench Phrases", school = "Fanstord University", type = "{PhD} Dissertation", address = "Department of French", month = jun # "-" # aug, year = 1988, note = "This is a full PHDTHESIS entry", } @TECHREPORT{techreport-minimal, author = "Tom Terrific", title = "An {$O(n \log n / \! \log\log n)$} Sorting Algorithm", institution = "Fanstord University", year = 1988, } @TECHREPORT{techreport-full, author = "Tom T{\'{e}}rrific", title = "An {$O(n \log n / \! \log\log n)$} Sorting Algorithm", institution = "Fanstord University", type = "Wishful Research Result", number = "7", address = "Computer Science Department, Fanstord, California", month = oct, year = 1988, note = "This is a full TECHREPORT entry", } @UNPUBLISHED{unpublished-minimal, author = "Ulrich {\"{U}}nderwood and Ned {\~N}et and Paul {\={P}}ot", title = "Lower Bounds for Wishful Research Results", note = "Talk at Fanstord University (this is a minimal UNPUBLISHED entry)", } @UNPUBLISHED{unpublished-full, author = "Ulrich {\"{U}}nderwood and Ned {\~N}et and Paul {\={P}}ot", title = "Lower Bounds for Wishful Research Results", month = nov # ", " # dec, year = 1988, note = "Talk at Fanstord University (this is a full UNPUBLISHED entry)", } @MISC{random-note-crossref, key = {Volume-2}, note = "Volume~2 is listed under Knuth \cite{book-full}" } ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912827.4467683 pybtex-0.24.0/examples/xampl.bibtexml0000644000175000001440000006744200000000000017363 0ustar00agusers00000000000000 The Gnats and Gnus Document Preparation System \mbox{G-Animal's} Journal 1986 L[eslie] A. Aamport The Gnats and Gnus Document Preparation System \mbox{G-Animal's} Journal 1986 41 7 73+ July This is a full ARTICLE entry L[eslie] A. Aamport WHOLE-JOURNAL The Gnats and Gnus Document Preparation System 73+ This is a cross-referencing ARTICLE entry L[eslie] A. Aamport GAJ \mbox{G-Animal's} Journal 1986 41 7 July The entire issue is devoted to gnats and gnus (this entry is a cross-referenced ARTICLE (journal)) Fundamental Algorithms Addison-Wesley {\noopsort{1973b}}1973 1.2 Donald E. Knuth Fundamental Algorithms 1 The Art of Computer Programming Addison-Wesley Reading, Massachusetts Second 10~January {\noopsort{1973b}}1973 Section 1.2 10--119 This is a full INBOOK entry Donald E. Knuth whole-set Fundamental Algorithms 1 The Art of Computer Programming Second {\noopsort{1973b}}1973 Section 1.2 This is a cross-referencing INBOOK entry Seminumerical Algorithms Addison-Wesley {\noopsort{1973c}}1981 Donald E. Knuth Seminumerical Algorithms 2 The Art of Computer Programming Addison-Wesley Reading, Massachusetts Second 10~January {\noopsort{1973c}}1981 This is a full BOOK entry Donald E. Knuth whole-set Seminumerical Algorithms 2 The Art of Computer Programming Second {\noopsort{1973c}}1981 This is a cross-referencing BOOK entry Addison-Wesley The Art of Computer Programming Four volumes {\noopsort{1973a}}{\switchargs{--90}{1968}} Seven volumes planned (this is a cross-referenced set of BOOKs) Donald E. Knuth Kn{\printfirst{v}{1987}} The Programming of Computer Art The Programming of Computer Art Vernier Art Center Stanford, California February 1988 This is a full BOOKLET entry Jill C. Knvth Semigroups of Recurrences High Speed Computer and Algorithm Organization Academic Press 1977 Daniel D. Lincoll Semigroups of Recurrences High Speed Computer and Algorithm Organization 23 Fast Computers 3 Part 179--183 Academic Press New York Third September 1977 This is a full INCOLLECTION entry Daniel D. Lincoll David J. Lipcoll D. H. Lawrie A. H. Sameh whole-collection Semigroups of Recurrences 179--183 This is a cross-referencing INCOLLECTION entry Daniel D. Lincoll High Speed Computer and Algorithm Organization High Speed Computer and Algorithm Organization 23 Fast Computers Academic Press New York Third September 1977 This is a cross-referenced BOOK (collection) entry David J. Lipcoll D. H. Lawrie A. H. Sameh Manmaker The Definitive Computer Manual The Definitive Computer Manual Chips-R-Us Silicon Valley Silver April-May 1986 This is a full MANUAL entry Larry Manmaker Mastering Thesis Writing Stanford University 1988 {\'{E}}douard Masterly Mastering Thesis Writing Stanford University Master's project English Department June-August 1988 This is a full MASTERSTHESIS entry {\'{E}}douard Masterly Missilany This is a minimal MISC entry Handing out random pamphlets in airports Handed out at O'Hare October 1984 This is a full MISC entry Joe-Bob Missilany On Notions of Information Transfer in {VLSI} Circuits Proc. Fifteenth Annual ACM Symposium on the Theory of Computing 1983 Alfred V. Oaho Jeffrey D. Ullman Mihalis Yannakakis On Notions of Information Transfer in {VLSI} Circuits Proc. Fifteenth Annual ACM Symposium on the Theory of Computing 17 All ACM Conferences 133--139 March 1983 Boston The OX Association for Computing Machinery Academic Press This is a full INPROCEDINGS entry Alfred V. Oaho Jeffrey D. Ullman Mihalis Yannakakis Wizard V. Oz Mihalis Yannakakis whole-proceedings On Notions of Information Transfer in {VLSI} Circuits 133--139 This is a cross-referencing INPROCEEDINGS entry Alfred V. Oaho Jeffrey D. Ullman Mihalis Yannakakis OX{\singleletter{stoc}} Proc. Fifteenth Annual Symposium on the Theory of Computing 1983 Proc. Fifteenth Annual Symposium on the Theory of Computing 17 All ACM Conferences March 1983 Boston The OX Association for Computing Machinery Academic Press This is a full PROCEEDINGS entry Wizard V. Oz Mihalis Yannakakis OX{\singleletter{stoc}} The OX Association for Computing Machinery Proc. Fifteenth Annual Symposium on the Theory of Computing Boston 1983 Proc. Fifteenth Annual ACM Symposium on the Theory of Computing This is a cross-referenced PROCEEDINGS Fighting Fire with Fire: Festooning {F}rench Phrases Fanstord University 1988 F. Phidias Phony-Baloney Fighting Fire with Fire: Festooning {F}rench Phrases Fanstord University {PhD} Dissertation Department of French June-August 1988 This is a full PHDTHESIS entry F. Phidias Phony-Baloney An {$O(n \log n / \! \log\log n)$} Sorting Algorithm Fanstord University 1988 Tom Terrific An {$O(n \log n / \! \log\log n)$} Sorting Algorithm Fanstord University Wishful Research Result 7 Computer Science Department, Fanstord, California October 1988 This is a full TECHREPORT entry Tom T{\'{e}}rrific Lower Bounds for Wishful Research Results Talk at Fanstord University (this is a minimal UNPUBLISHED entry) Ulrich {\"{U}}nderwood Ned {\~N}et Paul {\={P}}ot Lower Bounds for Wishful Research Results November, December 1988 Talk at Fanstord University (this is a full UNPUBLISHED entry) Ulrich {\"{U}}nderwood Ned {\~N}et Paul {\={P}}ot Volume-2 Volume~2 is listed under Knuth \cite{book-full} ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.570612 pybtex-0.24.0/examples/xampl.tex0000644000175000001440000000016200000000000016337 0ustar00agusers00000000000000\documentclass{article} \begin{document} \nocite{*} \bibliographystyle{unsrt} \bibliography{xampl} \end{document} ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912827.395769 pybtex-0.24.0/examples/xampl.yaml0000644000175000001440000003107700000000000016512 0ustar00agusers00000000000000entries: article-minimal: type: ARTICLE title: The Gnats and Gnus Document Preparation System journal: \mbox{G-Animal's} Journal year: '1986' author: - first: L[eslie] middle: A. last: Aamport article-full: type: ARTICLE title: The Gnats and Gnus Document Preparation System journal: \mbox{G-Animal's} Journal year: '1986' volume: '41' number: '7' pages: 73+ month: July note: This is a full ARTICLE entry author: - first: L[eslie] middle: A. last: Aamport article-crossref: type: ARTICLE crossref: WHOLE-JOURNAL key: '' title: The Gnats and Gnus Document Preparation System pages: 73+ note: This is a cross-referencing ARTICLE entry author: - first: L[eslie] middle: A. last: Aamport whole-journal: type: ARTICLE key: GAJ journal: \mbox{G-Animal's} Journal year: '1986' volume: '41' number: '7' month: July note: The entire issue is devoted to gnats and gnus (this entry is a cross-referenced ARTICLE (journal)) inbook-minimal: type: INBOOK title: Fundamental Algorithms publisher: Addison-Wesley year: '{\noopsort{1973b}}1973' chapter: '1.2' author: - first: Donald middle: E. last: Knuth inbook-full: type: Section title: Fundamental Algorithms volume: '1' series: The Art of Computer Programming publisher: Addison-Wesley address: Reading, Massachusetts edition: Second month: 10~January year: '{\noopsort{1973b}}1973' chapter: '1.2' pages: 10--119 note: This is a full INBOOK entry author: - first: Donald middle: E. last: Knuth inbook-crossref: type: Section crossref: whole-set title: Fundamental Algorithms volume: '1' series: The Art of Computer Programming edition: Second year: '{\noopsort{1973b}}1973' chapter: '1.2' note: This is a cross-referencing INBOOK entry book-minimal: type: BOOK title: Seminumerical Algorithms publisher: Addison-Wesley year: '{\noopsort{1973c}}1981' author: - first: Donald middle: E. last: Knuth book-full: type: BOOK title: Seminumerical Algorithms volume: '2' series: The Art of Computer Programming publisher: Addison-Wesley address: Reading, Massachusetts edition: Second month: 10~January year: '{\noopsort{1973c}}1981' note: This is a full BOOK entry author: - first: Donald middle: E. last: Knuth book-crossref: type: BOOK crossref: whole-set title: Seminumerical Algorithms volume: '2' series: The Art of Computer Programming edition: Second year: '{\noopsort{1973c}}1981' note: This is a cross-referencing BOOK entry whole-set: type: BOOK publisher: Addison-Wesley title: The Art of Computer Programming series: Four volumes year: '{\noopsort{1973a}}{\switchargs{--90}{1968}}' note: Seven volumes planned (this is a cross-referenced set of BOOKs) author: - first: Donald middle: E. last: Knuth booklet-minimal: type: BOOKLET key: Kn{\printfirst{v}{1987}} title: The Programming of Computer Art booklet-full: type: BOOKLET title: The Programming of Computer Art howpublished: Vernier Art Center address: Stanford, California month: February year: '1988' note: This is a full BOOKLET entry author: - first: Jill middle: C. last: Knvth incollection-minimal: type: INCOLLECTION title: Semigroups of Recurrences booktitle: High Speed Computer and Algorithm Organization publisher: Academic Press year: '1977' author: - first: Daniel middle: D. last: Lincoll incollection-full: type: Part title: Semigroups of Recurrences booktitle: High Speed Computer and Algorithm Organization number: '23' series: Fast Computers chapter: '3' pages: 179--183 publisher: Academic Press address: New York edition: Third month: September year: '1977' note: This is a full INCOLLECTION entry author: - first: Daniel middle: D. last: Lincoll editor: - first: David middle: J. last: Lipcoll - first: D. middle: H. last: Lawrie - first: A. middle: H. last: Sameh incollection-crossref: type: INCOLLECTION crossref: whole-collection title: Semigroups of Recurrences pages: 179--183 note: This is a cross-referencing INCOLLECTION entry author: - first: Daniel middle: D. last: Lincoll whole-collection: type: BOOK title: High Speed Computer and Algorithm Organization booktitle: High Speed Computer and Algorithm Organization number: '23' series: Fast Computers publisher: Academic Press address: New York edition: Third month: September year: '1977' note: This is a cross-referenced BOOK (collection) entry editor: - first: David middle: J. last: Lipcoll - first: D. middle: H. last: Lawrie - first: A. middle: H. last: Sameh manual-minimal: type: MANUAL key: Manmaker title: The Definitive Computer Manual manual-full: type: MANUAL title: The Definitive Computer Manual organization: Chips-R-Us address: Silicon Valley edition: Silver month: April-May year: '1986' note: This is a full MANUAL entry author: - first: Larry last: Manmaker mastersthesis-minimal: type: MASTERSTHESIS title: Mastering Thesis Writing school: Stanford University year: '1988' author: - first: '{\''{E}}douard' last: Masterly mastersthesis-full: type: Master's project title: Mastering Thesis Writing school: Stanford University address: English Department month: June-August year: '1988' note: This is a full MASTERSTHESIS entry author: - first: '{\''{E}}douard' last: Masterly misc-minimal: type: MISC key: Missilany note: This is a minimal MISC entry misc-full: type: MISC title: Handing out random pamphlets in airports howpublished: Handed out at O'Hare month: October year: '1984' note: This is a full MISC entry author: - first: Joe-Bob last: Missilany inproceedings-minimal: type: INPROCEEDINGS title: On Notions of Information Transfer in {VLSI} Circuits booktitle: Proc. Fifteenth Annual ACM Symposium on the Theory of Computing year: '1983' author: - first: Alfred middle: V. last: Oaho - first: Jeffrey middle: D. last: Ullman - first: Mihalis last: Yannakakis inproceedings-full: type: INPROCEEDINGS title: On Notions of Information Transfer in {VLSI} Circuits booktitle: Proc. Fifteenth Annual ACM Symposium on the Theory of Computing number: '17' series: All ACM Conferences pages: 133--139 month: March year: '1983' address: Boston organization: The OX Association for Computing Machinery publisher: Academic Press note: This is a full INPROCEDINGS entry author: - first: Alfred middle: V. last: Oaho - first: Jeffrey middle: D. last: Ullman - first: Mihalis last: Yannakakis editor: - first: Wizard middle: V. last: Oz - first: Mihalis last: Yannakakis inproceedings-crossref: type: INPROCEEDINGS crossref: whole-proceedings title: On Notions of Information Transfer in {VLSI} Circuits organization: '' pages: 133--139 note: This is a cross-referencing INPROCEEDINGS entry author: - first: Alfred middle: V. last: Oaho - first: Jeffrey middle: D. last: Ullman - first: Mihalis last: Yannakakis proceedings-minimal: type: PROCEEDINGS key: OX{\singleletter{stoc}} title: Proc. Fifteenth Annual Symposium on the Theory of Computing year: '1983' proceedings-full: type: PROCEEDINGS title: Proc. Fifteenth Annual Symposium on the Theory of Computing number: '17' series: All ACM Conferences month: March year: '1983' address: Boston organization: The OX Association for Computing Machinery publisher: Academic Press note: This is a full PROCEEDINGS entry editor: - first: Wizard middle: V. last: Oz - first: Mihalis last: Yannakakis whole-proceedings: type: PROCEEDINGS key: OX{\singleletter{stoc}} organization: The OX Association for Computing Machinery title: Proc. Fifteenth Annual Symposium on the Theory of Computing address: Boston year: '1983' booktitle: Proc. Fifteenth Annual ACM Symposium on the Theory of Computing note: This is a cross-referenced PROCEEDINGS phdthesis-minimal: type: PHDTHESIS title: 'Fighting Fire with Fire: Festooning {F}rench Phrases' school: Fanstord University year: '1988' author: - first: F. middle: Phidias last: Phony-Baloney phdthesis-full: type: '{PhD} Dissertation' title: 'Fighting Fire with Fire: Festooning {F}rench Phrases' school: Fanstord University address: Department of French month: June-August year: '1988' note: This is a full PHDTHESIS entry author: - first: F. middle: Phidias last: Phony-Baloney techreport-minimal: type: TECHREPORT title: An {$O(n \log n / \! \log\log n)$} Sorting Algorithm institution: Fanstord University year: '1988' author: - first: Tom last: Terrific techreport-full: type: Wishful Research Result title: An {$O(n \log n / \! \log\log n)$} Sorting Algorithm institution: Fanstord University number: '7' address: Computer Science Department, Fanstord, California month: October year: '1988' note: This is a full TECHREPORT entry author: - first: Tom last: T{\'{e}}rrific unpublished-minimal: type: UNPUBLISHED title: Lower Bounds for Wishful Research Results note: Talk at Fanstord University (this is a minimal UNPUBLISHED entry) author: - first: Ulrich last: '{\"{U}}nderwood' - first: Ned last: '{\~N}et' - first: Paul last: '{\={P}}ot' unpublished-full: type: UNPUBLISHED title: Lower Bounds for Wishful Research Results month: November, December year: '1988' note: Talk at Fanstord University (this is a full UNPUBLISHED entry) author: - first: Ulrich last: '{\"{U}}nderwood' - first: Ned last: '{\~N}et' - first: Paul last: '{\={P}}ot' random-note-crossref: type: MISC key: Volume-2 note: Volume~2 is listed under Knuth \cite{book-full} preamble: \newcommand{\noopsort}[1]{} \newcommand{\printfirst}[2]{#1} \newcommand{\singleletter}[1]{#1} \newcommand{\switchargs}[2]{#2#1} ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912831.9527142 pybtex-0.24.0/pybtex/0000755000175000001440000000000000000000000014172 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912761.5625594 pybtex-0.24.0/pybtex/__init__.py0000644000175000001440000001713100000000000016306 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """bibliography processor """ from __future__ import absolute_import from __future__ import unicode_literals from os import path __version__ = '0.24.0' class Engine(object): def make_bibliography(self, aux_filename, style=None, output_encoding=None, bib_format=None, **kwargs): """ Read the given ``.aux`` file and produce a formatted bibliography using :py:meth:`~.Engine.format_from_files`. :param style: If not ``None``, use this style instead of specified in the ``.aux`` file. """ from pybtex import auxfile if bib_format is None: from pybtex.database.input.bibtex import Parser as bib_format aux_data = auxfile.parse_file(aux_filename, output_encoding) if style is None: style = aux_data.style base_filename = path.splitext(aux_filename)[0] bib_filenames = [filename + bib_format.default_suffix for filename in aux_data.data] return self.format_from_files( bib_filenames, style=aux_data.style, citations=aux_data.citations, output_encoding=output_encoding, output_filename=base_filename, add_output_suffix=True, **kwargs ) def format_from_string(self, bib_string, *args, **kwargs): """ Parse the bigliography data from the given string and produce a formated bibliography using :py:meth:`~.Engine.format_from_files`. This is a convenience method that calls :py:meth:`~.Engine.format_from_strings` with a single string. """ return self.format_from_strings([bib_string], *args, **kwargs) def format_from_strings(self, bib_strings, *args, **kwargs): """ Parse the bigliography data from the given strings and produce a formated bibliography. This is a convenience method that wraps each string into a StringIO, then calls :py:meth:`~.Engine.format_from_files`. """ from io import StringIO inputs = [StringIO(bib_string) for bib_string in bib_strings] return self.format_from_files(inputs, *args, **kwargs) def format_from_file(self, filename, *args, **kwargs): """ Read the bigliography data from the given file and produce a formated bibliography. This is a convenience method that calls :py:meth:`~.Engine.format_from_files` with a single file. All extra arguments are passed to :py:meth:`~.Engine.format_from_files`. """ return self.format_from_files([filename], *args, **kwargs) def format_from_files(*args, **kwargs): """ Read the bigliography data from the given files and produce a formated bibliography. This is an abstract method overridden by both :py:class:`pybtex.PybtexEngine` and :py:class:`pybtex.bibtex.BibTeXEngine`. """ raise NotImplementedError class PybtexEngine(Engine): """ The Python fomatting engine. See :py:class:`pybtex.Engine` for inherited methods. """ def format_from_files( self, bib_files_or_filenames, style, citations=['*'], bib_format=None, bib_encoding=None, output_backend=None, output_encoding=None, min_crossrefs=2, output_filename=None, add_output_suffix=False, **kwargs ): """ Read the bigliography data from the given files and produce a formated bibliography. :param bib_files_or_filenames: A list of file names or file objects. :param style: The name of the formatting style. :param citations: A list of citation keys. :param bib_format: The name of the bibliography format. The default format is ``bibtex``. :param bib_encoding: Encoding of bibliography files. :param output_backend: Which output backend to use. The default is ``latex``. :param output_encoding: Encoding that will be used by the output backend. :param bst_encoding: Encoding of the ``.bst`` file. :param min_crossrefs: Include cross-referenced entries after this many crossrefs. See BibTeX manual for details. :param output_filename: If ``None``, the result will be returned as a string. Else, the result will be written to the specified file. :param add_output_suffix: Append default suffix to the output file name (``.bbl`` for LaTeX, ``.html`` for HTML, etc.). """ from pybtex.plugin import find_plugin bib_parser = find_plugin('pybtex.database.input', bib_format) bib_data = bib_parser( encoding=bib_encoding, wanted_entries=citations, min_crossrefs=min_crossrefs, ).parse_files(bib_files_or_filenames) style_cls = find_plugin('pybtex.style.formatting', style) style = style_cls( label_style=kwargs.get('label_style'), name_style=kwargs.get('name_style'), sorting_style=kwargs.get('sorting_style'), abbreviate_names=kwargs.get('abbreviate_names'), min_crossrefs=min_crossrefs, ) formatted_bibliography = style.format_bibliography(bib_data, citations) output_backend = find_plugin('pybtex.backends', output_backend) if add_output_suffix: output_filename = output_filename + output_backend.default_suffix if not output_filename: import io output_filename = io.StringIO() return output_backend(output_encoding).write_to_file(formatted_bibliography, output_filename) def make_bibliography(*args, **kwargs): """A convenience function that calls :py:meth:`.PybtexEngine.make_bibliography`.""" return PybtexEngine().make_bibliography(*args, **kwargs) def format_from_file(*args, **kwargs): """A convenience function that calls :py:meth:`.PybtexEngine.format_from_file`.""" return PybtexEngine().format_from_file(*args, **kwargs) def format_from_files(*args, **kwargs): """A convenience function that calls :py:meth:`.PybtexEngine.format_from_files`.""" return PybtexEngine().format_from_files(*args, **kwargs) def format_from_string(*args, **kwargs): """A convenience function that calls :py:meth:`.PybtexEngine.format_from_string`.""" return PybtexEngine().format_from_string(*args, **kwargs) def format_from_strings(*args, **kwargs): """A convenience function that calls :py:meth:`.PybtexEngine.format_from_strings`.""" return PybtexEngine().format_from_strings(*args, **kwargs) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5516124 pybtex-0.24.0/pybtex/__main__.py0000644000175000001440000001071200000000000016265 0ustar00agusers00000000000000#!/usr/bin/env python # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals from os import path from pybtex.cmdline import CommandLine, make_option, standard_option class PybtexCommandLine(CommandLine): prog = 'pybtex' args = '[options] auxfile.aux' description = 'BibTeX-compatible bibliography processor in Python' long_description = """ Pybtex reads citation information from a LaTeX .aux file and produces a formatted bibliography. Pybtex understands BibTeX .bib and .bst style files and can be used as a drop-in replacement for BibTeX. Besides BibTeX .bib files, BibTeXML and YAML bibliography files are supported. It is also possible to define bibliography formatting styles in Python. """.strip() num_args = 1 options = ( (None, ( standard_option('strict'), make_option( '--terse', dest='verbose', action='store_false', help='ignored for compatibility with BibTeX', ), standard_option('min_crossrefs'), standard_option('bib_format'), standard_option('output_backend'), standard_option('style'), make_option( '-l', '--style-language', dest='style_language', help='style definition language to use (bibtex or python)', metavar='LANGUAGE', ), )), ('Pythonic style options', ( standard_option('label_style'), standard_option('name_style'), standard_option('sorting_style'), standard_option('abbreviate_names'), )), ('Encoding options', ( standard_option('encoding'), make_option('--bibtex-encoding', dest='bib_encoding', metavar='ENCODING'), make_option('--bst-encoding', dest='bst_encoding', metavar='ENCODING'), standard_option('output_encoding'), )), ) option_defaults = { 'style_language': 'bibtex', 'min_crossrefs': 2, } legacy_options = '-help', '-version', '-min-crossrefs', '-terse' def run(self, filename, style_language, encoding, **options): if style_language == 'bibtex': from pybtex import bibtex as engine elif style_language == 'python': import pybtex as engine else: self.opt_parser.error('unknown style language %s' % style_language) not_supported_by_bibtex = { 'output_backend': 'output backends', 'label_style': 'label styles', 'name_style': 'name styles', 'sorting_style': 'sorting styles', 'abbreviate_names': 'abbreviated names', } if style_language != 'python': for option, what_is_not_supported in not_supported_by_bibtex.items(): if options[option]: self.opt_parser.error( '%s are only supported by the Pythonic style engine (-l python)' % what_is_not_supported ) for encoding_option in 'bib_encoding', 'bst_encoding', 'output_encoding': if not options[encoding_option]: options[encoding_option] = encoding ext = path.splitext(filename)[1] if ext != '.aux': filename = path.extsep.join([filename, 'aux']) engine.make_bibliography(filename, **options) main = PybtexCommandLine() if __name__ == '__main__': main() ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5486124 pybtex-0.24.0/pybtex/__version__.py0000644000175000001440000000250200000000000017024 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals import warnings from pybtex import __version__ as version # noqa msg = 'pybtex.__version__.version is deprecated since 0.19: use pybtex.__version__ attribute' warnings.warn(msg, DeprecationWarning) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5566123 pybtex-0.24.0/pybtex/auxfile.py0000644000175000001440000001140300000000000016200 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """parse LaTeX aux file """ from __future__ import unicode_literals, with_statement import re import pybtex.io from pybtex.errors import report_error from pybtex.exceptions import PybtexError from pybtex import py3compat @py3compat.python_2_unicode_compatible class AuxDataError(PybtexError): def __init__(self, message, context=None): super(AuxDataError, self).__init__(message, context.filename) self.context = context def get_context(self): if self.context.line: marker = '^' * len(self.context.line) return self.context.line + '\n' + marker def __str__(self): base_message = py3compat.__str__(super(AuxDataError, self)) lineno = self.context.lineno location = 'in line {0}: '.format(lineno) if lineno else '' return location + base_message class AuxDataContext(object): lineno = None line = None filename = None def __init__(self, filename): self.filename = filename class AuxData(object): command_re = re.compile(r'\\(citation|bibdata|bibstyle|@input){(.*)}') context = None style = None data = None citations = None def __init__(self, encoding): self.encoding = encoding self.citations = [] self._canonical_keys = {} def handle_citation(self, keys): for key in keys.split(','): key_lower = key.lower() if key_lower in self._canonical_keys: existing_key = self._canonical_keys[key_lower] if key != existing_key: msg = 'case mismatch error between cite keys {0} and {1}' report_error(AuxDataError(msg.format(key, existing_key), self.context)) self.citations.append(key) self._canonical_keys[key_lower] = key def handle_bibstyle(self, style): if self.style is not None: report_error(AuxDataError(r'illegal, another \bibstyle command', self.context)) else: self.style = style def handle_bibdata(self, bibdata): if self.data is not None: report_error(AuxDataError(r'illegal, another \bibdata command', self.context)) else: self.data = bibdata.split(',') def handle_input(self, filename): self.parse_file(filename, toplevel=False) def handle_command(self, command, value): action = getattr(self, 'handle_%s' % command.lstrip('@')) action(value) def parse_line(self, line, lineno): self.context.lineno = lineno self.context.line = line.strip() match = self.command_re.match(line) if match: command, value = match.groups() self.handle_command(command, value) def parse_file(self, filename, toplevel=True): previous_context = self.context self.context = AuxDataContext(filename) with pybtex.io.open_unicode(filename, encoding=self.encoding) as aux_file: for lineno, line in enumerate(aux_file, 1): self.parse_line(line, lineno) if previous_context: self.context = previous_context else: self.context.line = None self.context.lineno = None # these errors are fatal - always raise an exception instead of using # erorrs.report_error() if toplevel and self.data is None: raise AuxDataError(r'found no \bibdata command', self.context) if toplevel and self.style is None: raise AuxDataError(r'found no \bibstyle command', self.context) def parse_file(filename, encoding=None): """Parse a file and return an AuxData object.""" data = AuxData(encoding) data.parse_file(filename) return data ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912831.9527142 pybtex-0.24.0/pybtex/backends/0000755000175000001440000000000000000000000015744 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5576122 pybtex-0.24.0/pybtex/backends/__init__.py0000644000175000001440000000775200000000000020070 0ustar00agusers00000000000000from __future__ import unicode_literals # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. import six import pybtex.io from pybtex.plugin import Plugin class BaseBackend(Plugin): """This is the base class for the backends. We encourage you to implement as many of the symbols and tags as possible when you create a new plugin. symbols[u'ndash'] : Used to separate pages symbols[u'newblock'] : Used to separate entries in the bibliography symbols[u'nbsp'] : A non-breakable space tags[u'em'] : emphasize text tags[u'strong'] : emphasize text even more tags[u'i'] : italicize text, not semantic tags[u'b'] : embolden text, not semantic tags[u'tt'] : typewrite text, not semantic """ RenderType = six.string_types #: the result of render and render_sequence default_suffix = None #: the default suffix for an output file def __init__(self, encoding=None): self.encoding = encoding or pybtex.io.get_default_encoding() def write_prologue(self): pass def write_epilogue(self): pass def format_str(self, str_): """Format the given string *str_*. The default implementation simply returns the string ad verbatim. Override this method for non-string backends. """ return str_ def format_tag(self, tag_name, text): """Format a tag with some text inside. *tag_name* is a str, and *text* is a rendered Text object. """ raise NotImplementedError def format_href(self, url, text): """Format a hyperlink with some text inside. *url* is a str, and *text* is a rendered Text object. """ raise NotImplementedError def format_protected(self, text): """Format a "protected" piece of text. In LaTeX backend, it is formatted as a {braced group}. Most other backends would just output the text as-is. """ return text def render_sequence(self, rendered_list): """Render a sequence of rendered Text objects. The default implementation simply concatenates the strings in rendered_list. Override this method for non-string backends. """ return "".join(rendered_list) def write_entry(self, label, key, text): raise NotImplementedError def write_to_file(self, formatted_entries, filename): with pybtex.io.open_unicode(filename, "w", self.encoding) as stream: self.write_to_stream(formatted_entries, stream) if hasattr(stream, 'getvalue'): return stream.getvalue() def write_to_stream(self, formatted_bibliography, stream): self.output = stream.write self.formatted_bibliography = formatted_bibliography self.write_prologue() for entry in formatted_bibliography: self.write_entry(entry.key, entry.label, entry.text.render(self)) self.write_epilogue() ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5566123 pybtex-0.24.0/pybtex/backends/html.py0000644000175000001440000000565300000000000017273 0ustar00agusers00000000000000# vim: fileencoding=utf-8 # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """ HTML output backend. >>> from pybtex.richtext import Tag, HRef >>> html = Backend() >>> print(Tag('em', '').render(html)) >>> print(Tag('em', 'Hard &', ' heavy').render(html)) Hard & heavy >>> print(HRef('/', '').render(html)) >>> print(HRef('/', 'Hard & heavy').render(html)) Hard & heavy """ from __future__ import unicode_literals from xml.sax.saxutils import escape import pybtex.io from pybtex.backends import BaseBackend PROLOGUE = u""" Bibliography
""" class Backend(BaseBackend): u""" >>> from pybtex.richtext import Text, Tag, Symbol >>> print(Tag('em', Text(u'Л.:', Symbol('nbsp'), u'<<Химия>>')).render(Backend())) Л.: <<Химия>> """ default_suffix = '.html' symbols = { 'ndash': u'–', 'newblock': u'\n', 'nbsp': u' ' } def format_str(self, text): return escape(text) def format_protected(self, text): return r'{}'.format(text) def format_tag(self, tag, text): return r'<{0}>{1}'.format(tag, text) if text else u'' def format_href(self, url, text): return r'{1}'.format(url, text) if text else u'' def write_prologue(self): encoding = self.encoding or pybtex.io.get_default_encoding() self.output(PROLOGUE % encoding) def write_epilogue(self): self.output(u'
\n') def write_entry(self, key, label, text): self.output(u'
%s
\n' % label) self.output(u'
%s
\n' % text) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5596123 pybtex-0.24.0/pybtex/backends/latex.py0000644000175000001440000000673600000000000017447 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """ LaTeX output backend. >>> from pybtex.richtext import Tag, HRef >>> latex = Backend() >>> print(Tag('em', '').render(latex)) >>> print(Tag('em', 'Non-', 'empty').render(latex)) \\emph{Non-empty} >>> print(HRef('/', '').render(latex)) >>> print(HRef('/', 'Non-', 'empty').render(latex)) \\href{/}{Non-empty} >>> print(HRef('http://example.org/', 'http://example.org/').render(latex)) \\url{http://example.org/} >>> print(Tag('sup', 'hello').render(latex)) \\textsuperscript{hello} """ from __future__ import unicode_literals import codecs import latexcodec # noqa from pybtex.backends import BaseBackend class Backend(BaseBackend): default_suffix = '.bbl' symbols = { 'ndash': u'--', 'newblock': u'\n\\newblock ', 'nbsp': u'~' } tags = { u'em': u'emph', u'strong': None, u'i': u'textit', u'b': u'textbf', u'tt': u'texttt', u'sup': u'textsuperscript', u'sub': u'textsubscript', } def __init__(self, encoding=None): super(Backend, self).__init__(encoding) self.latex_encoding = 'ulatex+' + self.encoding def format_str(self, str_): return codecs.encode(str_, self.latex_encoding) def format_tag(self, tag_name, text): tag = self.tags.get(tag_name) if tag is None: return u'{%s}' % text if text else u'' else: return r'\%s{%s}' % (tag, text) if text else u'' def format_href(self, url, text): if not text: return '' elif text == self.format_str(url): return u'\\url{%s}' % url else: return r'\href{%s}{%s}' % (url, text) if text else u'' def format_protected(self, text): """ >>> from pybtex.richtext import Protected >>> print(Protected('CTAN').render_as('latex')) {CTAN} """ return '{%s}' % text def write_prologue(self): if self.formatted_bibliography.preamble: self.output(self.formatted_bibliography.preamble + u'\n') longest_label = self.formatted_bibliography.get_longest_label() self.output(u'\\begin{thebibliography}{%s}' % longest_label) def write_epilogue(self): self.output(u'\n\n\\end{thebibliography}\n') def write_entry(self, key, label, text): self.output(u'\n\n\\bibitem[%s]{%s}\n' % (label, key)) self.output(text) ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.558612 pybtex-0.24.0/pybtex/backends/markdown.py0000644000175000001440000001025000000000000020136 0ustar00agusers00000000000000# -*- coding: utf8 -*- # # Copyright (c) 2006-2021 Andrey Golovizin # Copyright (c) 2014 Jorrit Wronski # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. r""" Markdown output backend. >>> from pybtex.richtext import Tag, HRef >>> markdown = Backend() >>> print(Tag('em', '').render(markdown)) >>> print(Tag('em', 'Non-', 'empty').render(markdown)) *Non\-empty* >>> print(Tag('sup', 'super', 'man').render(markdown)) superman >>> print(HRef('/', '').render(markdown)) >>> print(HRef('/', 'Non-', 'empty').render(markdown)) [Non\-empty](/) """ from __future__ import unicode_literals from xml.sax.saxutils import escape from pybtex.backends import BaseBackend SPECIAL_CHARS = [ u'\\', # backslash u'`', # backtick u'*', # asterisk u'_', # underscore u'{', # curly braces u'}', # curly braces u'[', # square brackets u']', # square brackets u'(', # parentheses u')', # parentheses u'#', # hash mark u'+', # plus sign u'-', # minus sign (hyphen) u'.', # dot u'!', # exclamation mark ] class Backend(BaseBackend): u""" A backend to support markdown output. It implements the same features as the HTML backend. In addition to that, you can use the keyword php_extra=True to enable the definition list extension of php-markdown. The default is not to use it, since we cannot be sure that this feature is implemented on all systems. More information: http://www.michelf.com/projects/php-markdown/extra/#def-list """ def __init__(self, encoding=None, php_extra=False): super(Backend, self).__init__(encoding=encoding) self.php_extra = php_extra default_suffix = '.md' symbols = { 'ndash': u'–',# or 'ndash': u'–', 'newblock': u'\n', 'nbsp': u' ' } tags = { 'em' : u'*', # emphasize text 'strong': u'**', # emphasize text even more 'i' : u'*', # italicize text: be careful, i is not semantic 'b' : u'**', # embolden text: be careful, b is not semantic 'tt' : u'`', # make text appear as code (typically typewriter text), a little hacky } def format_str(self, text): """Format the given string *str_*. Escapes special markdown control characters. """ text = escape(text) for special_char in SPECIAL_CHARS: text = text.replace(special_char, u'\\' + special_char) return text def format_tag(self, tag_name, text): tag = self.tags.get(tag_name) if tag is None: # fall back on html tags return r'<{0}>{1}'.format(tag_name, text) if text else u'' else: return r'{0}{1}{0}'.format(tag, text) if text else u'' def format_href(self, url, text): return r'[%s](%s)' % (text, url) if text else u'' def write_entry(self, key, label, text): # Support http://www.michelf.com/projects/php-markdown/extra/#def-list if self.php_extra: self.output(u'%s\n' % label) self.output(u': %s\n\n' % text) else: self.output(u'[%s] ' % label) self.output(u'%s \n' % text) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5596123 pybtex-0.24.0/pybtex/backends/plaintext.py0000644000175000001440000000307400000000000020332 0ustar00agusers00000000000000from __future__ import unicode_literals from pybtex.backends import BaseBackend # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. class Backend(BaseBackend): default_suffix = '.txt' symbols = { 'ndash': u'-', 'newblock': u' ', 'nbsp': u' ' } def format_tag(self, tag_name, text): return text def format_href(self, url, text): return text def write_entry(self, key, label, text): self.output(u"[%s] " % label) self.output(text) self.output(u'\n') ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912831.9537141 pybtex-0.24.0/pybtex/bibtex/0000755000175000001440000000000000000000000015447 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5616121 pybtex-0.24.0/pybtex/bibtex/__init__.py0000644000175000001440000001106000000000000017556 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """BibTeX unnamed stack language interpreter and related stuff """ from __future__ import unicode_literals from os import path from pybtex import Engine class BibTeXEngine(Engine): """ The Python fomatting engine. See :py:class:`pybtex.Engine` for inherited methods. """ def format_from_files( self, bib_files_or_filenames, style, citations=['*'], bib_format=None, bib_encoding=None, output_encoding=None, bst_encoding=None, min_crossrefs=2, output_filename=None, add_output_suffix=False, **kwargs ): """ Read the bigliography data from the given files and produce a formated bibliography. :param bib_files_or_filenames: A list of file names or file objects. :param style: The name of the formatting style. :param citations: A list of citation keys. :param bib_format: The name of the bibliography format. The default format is ``bibtex``. :param bib_encoding: Encoding of bibliography files. :param output_encoding: Encoding that will be used by the output backend. :param bst_encoding: Encoding of the ``.bst`` file. :param min_crossrefs: Include cross-referenced entries after this many crossrefs. See BibTeX manual for details. :param output_filename: If ``None``, the result will be returned as a string. Else, the result will be written to the specified file. :param add_output_suffix: Append a ``.bbl`` suffix to the output file name. """ from io import StringIO import pybtex.io from pybtex.bibtex import bst from pybtex.bibtex.interpreter import Interpreter if bib_format is None: from pybtex.database.input.bibtex import Parser as bib_format bst_filename = style + path.extsep + 'bst' bst_script = bst.parse_file(bst_filename, bst_encoding) interpreter = Interpreter(bib_format, bib_encoding) bbl_data = interpreter.run(bst_script, citations, bib_files_or_filenames, min_crossrefs=min_crossrefs) if add_output_suffix: output_filename = output_filename + '.bbl' if output_filename: output_file = pybtex.io.open_unicode(output_filename, 'w', encoding=output_encoding) else: output_file = StringIO() with output_file: output_file.write(bbl_data) if isinstance(output_file, StringIO): return output_file.getvalue() def make_bibliography(*args, **kwargs): """A convenience function that calls :py:meth:`.BibTeXEngine.make_bibliography`.""" return BibTeXEngine().make_bibliography(*args, **kwargs) def format_from_file(*args, **kwargs): """A convenience function that calls :py:meth:`.BibTeXEngine.format_from_file`.""" return BibTeXEngine().format_from_file(*args, **kwargs) def format_from_files(*args, **kwargs): """A convenience function that calls :py:meth:`.BibTeXEngine.format_from_files`.""" return BibTeXEngine().format_from_files(*args, **kwargs) def format_from_string(*args, **kwargs): """A convenience function that calls :py:meth:`.BibTeXEngine.format_from_string`.""" return BibTeXEngine().format_from_string(*args, **kwargs) def format_from_strings(*args, **kwargs): """A convenience function that calls :py:meth:`.BibTeXEngine.format_from_strings`.""" return BibTeXEngine().format_from_strings(*args, **kwargs) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5606122 pybtex-0.24.0/pybtex/bibtex/bst.py0000644000175000001440000001176500000000000016623 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals import re import pybtex.io from pybtex.bibtex.interpreter import ( FunctionLiteral, Identifier, Integer, QuotedVar, String ) from pybtex.scanner import ( Literal, Pattern, PybtexSyntaxError, Scanner, TokenRequired ) #ParserElement.enablePackrat() def process_int_literal(value): return Integer(int(value.strip('#'))) def process_string_literal(value): assert value.startswith('"') assert value.endswith('"') return String(value[1:-1]) def process_identifier(name): if name[0] == "'": return QuotedVar(name[1:]) else: return Identifier(name) def process_function(toks): return FunctionLiteral(toks[0]) quote_or_comment = re.compile(r'[%"]') def strip_comment(line): """Strip the commented part of the line." >>> print(strip_comment('a normal line')) a normal line >>> print(strip_comment('%')) >>> print(strip_comment('%comment')) >>> print(strip_comment('trailing%')) trailing >>> print(strip_comment('a normal line% and a comment')) a normal line >>> print(strip_comment('"100% compatibility" is a myth')) "100% compatibility" is a myth >>> print(strip_comment('"100% compatibility" is a myth% or not?')) "100% compatibility" is a myth """ pos = 0 end = len(line) - 1 in_string = False while pos <= end: match = quote_or_comment.search(line, pos) if not match: break if match.group() == '%' and not in_string: return line[:match.start()] elif match.group() == '"': in_string = not in_string pos = match.end() return line class BstParser(Scanner): LBRACE = Literal('{') RBRACE = Literal('}') STRING = Pattern('"[^\"]*"', 'string') INTEGER = Pattern(r'#-?\d+', 'integer') NAME = Pattern(r'[^#\"\{\}\s]+', 'name') COMMANDS = { 'ENTRY': 3, 'EXECUTE': 1, 'FUNCTION': 2, 'INTEGERS': 1, 'ITERATE': 1, 'MACRO': 2, 'READ': 0, 'REVERSE': 1, 'SORT': 0, 'STRINGS': 1, } LITERAL_TYPES = { STRING: process_string_literal, INTEGER: process_int_literal, NAME: process_identifier, } def parse(self): while True: try: yield list(self.parse_command()) except EOFError: break except PybtexSyntaxError: raise break def parse_group(self): while True: token = self.required([self.NAME, self.STRING, self.INTEGER, self.LBRACE, self.RBRACE]) if token.pattern is self.LBRACE: yield FunctionLiteral(list(self.parse_group())) elif token.pattern is self.RBRACE: break else: yield self.LITERAL_TYPES[token.pattern](token.value) def parse_command(self): command_name = self.required([self.NAME], 'BST command', allow_eof=True).value try: arity = self.COMMANDS[command_name.upper()] except KeyError: raise TokenRequired('BST command', self) yield command_name for i in range(arity): brace = self.optional([self.LBRACE]) if not brace: break yield list(self.parse_group()) def parse_file(filename, encoding=None): with pybtex.io.open_unicode(filename, encoding=encoding) as bst_file: return parse_stream(bst_file, filename) def parse_stream(stream, filename=''): bst = '\n'.join(strip_comment(line.rstrip()) for line in stream) return BstParser(bst, filename=filename).parse() def parse_string(bst_string): bst = '\n'.join(strip_comment(line) for line in bst_string.splitlines()) return BstParser(bst).parse() if __name__ == '__main__': import sys from pprint import pprint pprint(parse_file(sys.argv[1])) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5676122 pybtex-0.24.0/pybtex/bibtex/builtins.py0000644000175000001440000001501000000000000017647 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """Built-in functions for BibTeX interpreter. CAUTION: functions should PUSH results, not RETURN """ from __future__ import print_function, unicode_literals from functools import update_wrapper import six import pybtex.io from pybtex.bibtex import utils from pybtex.bibtex.exceptions import BibTeXError from pybtex.bibtex.names import format_name as format_bibtex_name from pybtex.errors import report_error from pybtex.utils import memoize def print_warning(msg): report_error(BibTeXError(msg)) class Builtin(object): def __init__(self, f): self.f = f def execute(self, interpreter): self.f(interpreter) def __repr__(self): return '' % self.f.__name__ builtins = {} def builtin(name): def _builtin(f): b = Builtin(f) update_wrapper(b, f) builtins[name] = b return b return _builtin @builtin('>') def operator_more(i): arg1 = i.pop() arg2 = i.pop() if arg2 > arg1: i.push(1) else: i.push(0) @builtin('<') def operator_less(i): arg1 = i.pop() arg2 = i.pop() if arg2 < arg1: i.push(1) else: i.push(0) @builtin('=') def operator_equals(i): arg1 = i.pop() arg2 = i.pop() if arg2 == arg1: i.push(1) else: i.push(0) @builtin('*') def operator_asterisk(i): arg1 = i.pop() arg2 = i.pop() i.push(arg2 + arg1) @builtin(':=') def operator_assign(i): var = i.pop() value = i.pop() var.set(value) @builtin('+') def operator_plus(i): arg1 = i.pop() arg2 = i.pop() i.push(arg2 + arg1) @builtin('-') def operator_minus(i): arg1 = i.pop() arg2 = i.pop() i.push(arg2 - arg1) @builtin('add.period$') def add_period(i): s = i.pop() if s and not s.rstrip('}')[-1] in '.?!': s += '.' i.push(s) @builtin('call.type$') def call_type(i): entry_type = i.current_entry.type try: func = i.vars[entry_type] except KeyError: print_warning(u'entry type for "{0}" isn\'t style-file defined'.format( i.current_entry_key, )) try: func = i.vars['default.type'] except KeyError: return func.execute(i) @builtin('change.case$') def change_case(i): mode = i.pop() string = i.pop() if not mode: raise BibTeXError('empty mode string passed to change.case$') mode_letter = mode[0].lower() if not mode_letter in ('l', 'u', 't'): raise BibTeXError('incorrect change.case$ mode: %s' % mode) i.push(utils.change_case(string, mode_letter)) @builtin('chr.to.int$') def chr_to_int(i): s = i.pop() try: value = ord(s) except TypeError: raise BibTeXError('%s passed to chr.to.int$', s) i.push(value) @builtin('cite$') def cite(i): i.push(i.current_entry_key) @builtin('duplicate$') def duplicate(i): tmp = i.pop() i.push(tmp) i.push(tmp) @builtin('empty$') def empty(i): #FIXME error checking s = i.pop() if s and not s.isspace(): i.push(0) else: i.push(1) @memoize def _split_names(names): return utils.split_name_list(names) @memoize def _format_name(names, n, format): name = _split_names(names)[n - 1] return format_bibtex_name(name, format) @builtin('format.name$') def format_name(i): format = i.pop() n = i.pop() names = i.pop() i.push(_format_name(names, n, format)) @builtin('if$') def if_(i): f1 = i.pop() f2 = i.pop() p = i.pop() if p > 0: f2.execute(i) else: f1.execute(i) @builtin('int.to.chr$') def int_to_chr(i): n = i.pop() try: char = six.unichr(n) except ValueError: raise BibTeXError('%i passed to int.to.chr$', n) i.push(char) @builtin('int.to.str$') def int_to_str(i): i.push(str(i.pop())) @builtin('missing$') def missing(i): f = i.pop() if i.is_missing_field(f): i.push(1) else: i.push(0) @builtin('newline$') def newline(i): i.newline() @builtin('num.names$') def num_names(i): names = i.pop() i.push(len(utils.split_name_list(names))) @builtin('pop$') def pop(i): i.pop() @builtin('preamble$') def preamble(i): i.push(i.bib_data.preamble) @builtin('purify$') def purify(i): s = i.pop() i.push(utils.bibtex_purify(s)) @builtin('quote$') def quote(i): i.push('"') @builtin('skip$') def skip(i): pass @builtin('substring$') def substring(i): length = i.pop() start = i.pop() string = i.pop() i.push(utils.bibtex_substring(string, start, length)) @builtin('stack$') def stack(i): while i.stack: print(i.pop(), file=pybtex.io.stdout) @builtin('swap$') def swap(i): tmp1 = i.pop() tmp2 = i.pop() i.push(tmp1) i.push(tmp2) @builtin('text.length$') def text_length(i): s = i.pop() i.push(utils.bibtex_len(s)) @builtin('text.prefix$') def text_prefix(i): l = i.pop() s = i.pop() i.push(utils.bibtex_prefix(s, l)) @builtin('top$') def top(i): print(i.pop(), file=pybtex.io.stdout) @builtin('type$') def type_(i): i.push(i.current_entry.type) @builtin('warning$') def warning(i): msg = i.pop() print_warning(msg) @builtin('while$') def while_(i): f = i.pop() p = i.pop() while True: p.execute(i) if i.pop() <= 0: break f.execute(i) @builtin('width$') def width(i): s = i.pop() i.push(utils.bibtex_width(s)) @builtin('write$') def write(i): s = i.pop() i.output(s) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5616121 pybtex-0.24.0/pybtex/bibtex/exceptions.py0000644000175000001440000000231600000000000020204 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals from pybtex.exceptions import PybtexError class BibTeXError(PybtexError): pass ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.569612 pybtex-0.24.0/pybtex/bibtex/interpreter.py0000644000175000001440000002403700000000000020372 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import print_function, unicode_literals from collections import defaultdict import six from pybtex.bibtex.builtins import builtins, print_warning from pybtex.bibtex.exceptions import BibTeXError from pybtex.bibtex.utils import wrap from pybtex.utils import CaseInsensitiveDict #from pybtex.database.input import bibtex class Variable(object): def _undefined(self): raise NotImplementedError default = property(_undefined) value_type = property(_undefined) def __init__(self, value=None): self.set(value) def set(self, value): if value is None: value = self.default self.validate(value) self._value = value def validate(self, value): if not (isinstance(value, self.value_type) or value is None): raise ValueError('Invalid value for BibTeX %s: %s' % (self.__class__.__name__, value)) def execute(self, interpreter): interpreter.push(self.value()) def value(self): return self._value def __repr__(self): return u'{0}({1})'.format(type(self).__name__, repr(self.value())) def __eq__(self, other): return type(self) == type(other) and self._value == other._value class EntryVariable(Variable): def __init__(self, interpreter, name): Variable.__init__(self) self.interpreter = interpreter self.name = name def set(self, value): if value is not None: self.validate(value) self.interpreter.current_entry_vars[self.name] = value def value(self): return self.interpreter.current_entry_vars.get(self.name, self.default) class Integer(Variable): value_type = int default = 0 class EntryInteger(Integer, EntryVariable): pass class String(Variable): value_type = six.string_types default = '' class EntryString(String, EntryVariable): pass class MissingField(str): def __new__(cls, name): self = str.__new__(cls) self.name = name return self def __nonzero__(self): return False class Field(object): def __init__(self, interpreter, name): self.interpreter = interpreter self.name = name def execute(self, interpreter): self.interpreter.push(self.value()) def value(self): try: bib_data = self.interpreter.bib_data return self.interpreter.current_entry._find_field(self.name, bib_data) except KeyError: return MissingField(self.name) class Crossref(Field): def __init__(self, interpreter): super(Crossref, self).__init__(interpreter, 'crossref') def value(self): try: value = self.interpreter.current_entry.fields[self.name] crossref_entry = self.interpreter.bib_data.entries[value] except KeyError: return MissingField(self.name) return crossref_entry.key class Identifier(Variable): value_type = six.string_types def execute(self, interpreter): try: f = interpreter.vars[self.value()] except KeyError: raise BibTeXError('can not execute undefined function %s' % self) f.execute(interpreter) class QuotedVar(Variable): value_type = six.string_types def execute(self, interpreter): try: var = interpreter.vars[self.value()] except KeyError: raise BibTeXError('can not push undefined variable %s' % self.value()) interpreter.push(var) class Function(object): def __init__(self, body=None): if body is None: body = [] self.body = body def __repr__(self): return u'{0}({1})'.format(type(self).__name__, repr(self.body)) def __eq__(self, other): return type(self) == type(other) and self.body == other.body def execute(self, interpreter): # print 'executing function', self.body for element in self.body: element.execute(interpreter) class FunctionLiteral(Function): def execute(self, interpreter): interpreter.push(Function(self.body)) class Interpreter(object): def __init__(self, bib_format, bib_encoding): self.bib_format = bib_format self.bib_encoding = bib_encoding self.stack = [] self.vars = CaseInsensitiveDict(builtins) self.add_variable('global.max$', Integer(20000)) # constants taken from self.add_variable('entry.max$', Integer(250)) # BibTeX 0.99d (TeX Live 2012) self.add_variable('sort.key$', EntryString(self, 'sort.key$')) self.macros = {} self.output_buffer = [] self.output_lines = [] self.entry_vars = defaultdict(dict) def push(self, value): # print 'push <%s>' % value self.stack.append(value) # print 'stack:', self.stack def pop(self): try: value = self.stack.pop() except IndexError: raise BibTeXError('pop from empty stack') # print 'pop <%s>' % value return value def get_token(self): return next(self.bst_script) def add_variable(self, name, value): if name in self.vars: raise BibTeXError('variable "{0}" already declared as {1}'.format(name, type(value).__name__)) self.vars[name] = value def output(self, string): self.output_buffer.append(string) def newline(self): output = wrap(u''.join(self.output_buffer)) self.output_lines.append(output) self.output_lines.append(u'\n') self.output_buffer = [] def run(self, bst_script, citations, bib_files, min_crossrefs): """Run bst script and return formatted bibliography.""" self.bst_script = iter(bst_script) self.citations = citations self.bib_files = bib_files self.min_crossrefs = min_crossrefs for command in self.bst_script: name = command[0] args = command[1:] method = 'command_' + name.lower() if hasattr(self, method): getattr(self, method)(*args) else: print('Unknown command', name) return u''.join(self.output_lines) def command_entry(self, fields, ints, strings): for id in fields: name = id.value() self.add_variable(name, Field(self, name)) self.add_variable('crossref', Crossref(self)) for id in ints: name = id.value() self.add_variable(name, EntryInteger(self, name)) for id in strings: name = id.value() self.add_variable(name, EntryString(self, name)) def command_execute(self, command_): # print 'EXECUTE' command_[0].execute(self) def command_function(self, name_, body): name = name_[0].value() self.add_variable(name, Function(body)) def command_integers(self, identifiers): # print 'INTEGERS' for identifier in identifiers: self.vars[identifier.value()] = Integer() def command_iterate(self, function_group): function = function_group[0].value() self._iterate(function, self.citations) def _iterate(self, function, citations): f = self.vars[function] for key in citations: self.current_entry_key = key self.current_entry = self.bib_data.entries[key] self.current_entry_vars = self.entry_vars[key] f.execute(self) self.currentEntry = None def command_macro(self, name_, value_): name = name_[0].value() value = value_[0].value() self.macros[name] = value def command_read(self): # print 'READ' p = self.bib_format( encoding=self.bib_encoding, macros=self.macros, person_fields=[], wanted_entries=self.citations, ) self.bib_data = p.parse_files(self.bib_files) self.citations = self.bib_data.add_extra_citations(self.citations, self.min_crossrefs) self.citations = list(self.remove_missing_citations(self.citations)) # for k, v in self.bib_data.items(): # print k # for field, value in v.fields.items(): # print '\t', field, value # pass def remove_missing_citations(self, citations): for citation in citations: if citation in self.bib_data.entries: yield citation else: print_warning('missing database entry for "{0}"'.format(citation)) def command_reverse(self, function_group): function = function_group[0].value() self._iterate(function, reversed(self.citations)) def command_sort(self): def key(citation): return self.entry_vars[citation]['sort.key$'] self.citations.sort(key=key) def command_strings(self, identifiers): #print 'STRINGS' for identifier in identifiers: self.vars[identifier.value()] = String() @staticmethod def is_missing_field(field): return isinstance(field, MissingField) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5606122 pybtex-0.24.0/pybtex/bibtex/names.py0000644000175000001440000002726500000000000017140 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """BibTeX-like name formatting. >>> name = 'Charles Louis Xavier Joseph de la Vallee Poussin' >>> print(format_name(name, '{vv~}{ll}{, jj}{, f.}')) de~la Vallee~Poussin, C.~L. X.~J. >>> name = 'abc' >>> print(format_name(name, '{vv~}{ll}{, jj}{, f.}')) abc >>> name = 'Jean-Pierre Hansen' >>> print(format_name(name, '{ff~}{vv~}{ll}{, jj}')) Jean-Pierre Hansen >>> print(format_name(name, '{f.~}{vv~}{ll}{, jj}')) J.-P. Hansen >>> name = 'F. Phidias Phony-Baloney' >>> print(format_name(name, '{v{}}{l}')) P.-B >>> print(format_name(name, '{v{}}{l.}')) P.-B. >>> print(format_name(name, '{v{}}{l{}}')) PB """ from __future__ import unicode_literals import re from pybtex.bibtex.utils import bibtex_abbreviate, bibtex_len from pybtex.database import Person from pybtex.scanner import ( Literal, Pattern, PrematureEOF, PybtexSyntaxError, Scanner ) class BibTeXNameFormatError(Exception): pass class Text(object): def __init__(self, text): self.text = text def __repr__(self): return u'{0}({1})'.format(type(self).__name__, repr(self.text)) def __eq__(self, other): return type(self) == type(other) and self.text == other.text def format(self, person): return self.text def to_python(self): return repr(self.text) class NamePart(object): def __init__(self, format_list): pre_text, format_chars, self.delimiter, post_text = format_list if not format_chars and pre_text and not post_text: post_text = pre_text pre_text = '' if post_text.endswith('~~'): self.tie = '~~' elif post_text.endswith('~'): self.tie = '~' else: self.tie = None self.pre_text = pre_text self.post_text = post_text.rstrip('~') if not format_chars: self.format_char = '' self.abbreviate = False else: l = len(format_chars) if l == 1: self.abbreviate = True elif l == 2 and format_chars[0] == format_chars[1]: self.abbreviate = False else: raise BibTeXNameFormatError('invalid format string') self.format_char = format_chars[0] def __repr__(self): format_chars = self.format_char * (1 if self.abbreviate else 2) format_list = [self.pre_text, format_chars, self.delimiter, self.post_text] return u'{0}({1})'.format(type(self).__name__, repr(format_list)) def __eq__(self, other): return ( type(self) == type(other) and self.pre_text == other.pre_text and self.format_char == other.format_char and self.abbreviate == other.abbreviate and self.delimiter == other.delimiter and self.post_text == other.post_text ) types = { 'f': 'bibtex_first', 'l': 'last', 'v': 'prelast', 'j': 'lineage' } def format(self, person): names = person.get_part(self.types[self.format_char]) if self.format_char else [] if self.format_char and not names: return '' if self.abbreviate: names = [bibtex_abbreviate(name, self.delimiter) for name in names] if self.delimiter is None: if self.abbreviate: names = join(names, '.~', '. ') else: names = join(names) else: names = self.delimiter.join(names) formatted_part = self.pre_text + names + self.post_text if self.tie == '~': discretionary = tie_or_space(formatted_part) elif self.tie == '~~': discretionary = '~' else: discretionary = '' return formatted_part + discretionary def to_python(self): from pybtex.style.names import name_part class NamePart(object): def __init__(self, part, abbr=False): self.part = part self.abbr = abbr def __repr__(self): abbr = 'abbr' if self.abbr else '' return 'person.%s(%s)' % (self.part, abbr) kwargs = {} if self.pre_text: kwargs['before'] = self.pre_text if self.tie: kwargs['tie'] = True return repr(name_part(**kwargs) [ NamePart(self.types[self.format_char], self.abbreviate) ]) class NameFormat(object): """ BibTeX name format string. >>> f = NameFormat('{ff~}{vv~}{ll}{, jj}') >>> f.parts == [ ... NamePart(['', 'ff', None, '']), ... NamePart(['', 'vv', None, '']), ... NamePart(['', 'll', None, '']), ... NamePart([', ', 'jj', None, '']) ... ] True >>> f = NameFormat('{{ }ff~{ }}{vv~{- Test text here -}~}{ll}{, jj}') >>> f.parts == [ ... NamePart(['{ }', 'ff', None, '~{ }']), ... NamePart(['', 'vv', None, '~{- Test text here -}']), ... NamePart(['', 'll', None, '']), ... NamePart([u', ', 'jj', None, '']) ... ] True >>> f = NameFormat('abc def {f~} xyz {f}?') >>> f.parts == [ ... Text('abc def '), ... NamePart(['', 'f', None, '']), ... Text(' xyz '), ... NamePart(['', 'f', None, '']), ... Text('?'), ... ] True >>> f = NameFormat('{{abc}{def}ff~{xyz}{#@$}}') >>> f.parts == [NamePart(['{abc}{def}', 'ff', None, '~{xyz}{#@$}'])] True >>> f = NameFormat('{{abc}{def}ff{xyz}{#@${}{sdf}}}') >>> f.parts == [NamePart(['{abc}{def}', 'ff', 'xyz', '{#@${}{sdf}}'])] True >>> f = NameFormat('{f.~}') >>> f.parts == [NamePart(['', 'f', None, '.'])] True >>> f = NameFormat('{f~.}') >>> f.parts == [NamePart(['', 'f', None, '~.'])] True >>> f = NameFormat('{f{.}~}') >>> f.parts == [NamePart(['', 'f', '.', ''])] True """ def __init__(self, format): self.format_string = format self.parts = list(NameFormatParser(format).parse()) def format(self, name): person = Person(name) return ''.join(part.format(person) for part in self.parts) def to_python(self): """Convert BibTeX name format to Python (inexactly).""" parts = ',\n'.join(' ' * 8 + part.to_python() for part in self.parts) comment = ' ' * 4 + ( '"""Format names similarly to %s in BibTeX."""' % self.format_string ) body = ' ' * 4 + 'return join [\n%s,\n]' % parts return '\n'.join([ 'def format_names(person, abbr=False):', comment, body, ]) enough_chars = 3 def tie_or_space(word, tie='~', space = ' '): if bibtex_len(word) < enough_chars: return tie else: return space def join(words, tie='~', space=' '): """Join some words, inserting ties (~) when nessessary. Ties are inserted: - after the first word, if it is short - before the last word Otherwise space is inserted. Should produce the same oubput as BibTeX. >>> print(join(['a', 'long', 'long', 'road'])) a~long long~road >>> print(join(['very', 'long', 'phrase'])) very long~phrase """ if len(words) <= 2: return tie.join(words) else: return (words[0] + tie_or_space(words[0], tie, space) + space.join(words[1:-1]) + tie + words[-1]) def format_name(name, format): return NameFormat(format).format(name) class UnbalancedBraceError(PybtexSyntaxError): def __init__(self, parser): message = u'name format string "{0}" has unbalanced braces'.format(parser.text) super(UnbalancedBraceError, self).__init__(message, parser) class NameFormatParser(Scanner): LBRACE = Literal(u'{') RBRACE = Literal(u'}') TEXT = Pattern(r'[^{}]+', 'text') NON_LETTERS = Pattern(r'[^{}\w]|\d+', 'non-letter characters', flags=re.IGNORECASE | re.UNICODE) FORMAT_CHARS = Pattern(r'[^\W\d_]+', 'format chars', flags=re.IGNORECASE | re.UNICODE) lineno = None def parse(self): while True: try: result = self.parse_toplevel() yield result except EOFError: break def parse_toplevel(self): token = self.required([self.TEXT, self.LBRACE, self.RBRACE], allow_eof=True) if token.pattern is self.TEXT: return Text(token.value) elif token.pattern is self.LBRACE: return NamePart(self.parse_name_part()) elif token.pattern is self.RBRACE: raise UnbalancedBraceError(self) def parse_braced_string(self): while True: try: token = self.required([self.TEXT, self.RBRACE, self.LBRACE]) except PrematureEOF: raise UnbalancedBraceError(self) if token.pattern is self.TEXT: yield token.value elif token.pattern is self.RBRACE: break elif token.pattern is self.LBRACE: yield u'{{{0}}}'.format(''.join(self.parse_braced_string())) else: raise ValueError(token) def parse_name_part(self): verbatim_prefix = [] format_chars = None verbatim_postfix = [] verbatim = verbatim_prefix delimiter = None def check_format_chars(value): value = value.lower() if ( format_chars is not None or len(value) not in [1, 2] or value[0] != value[-1] or value[0] not in 'flvj' ): raise PybtexSyntaxError(u'name format string "{0}" has illegal brace-level-1 letters: {1}'.format(self.text, token.value), self) while True: try: token = self.required([self.LBRACE, self.NON_LETTERS, self.FORMAT_CHARS, self.RBRACE]) except PrematureEOF: raise UnbalancedBraceError(self) if token.pattern is self.LBRACE: verbatim.append(u'{{{0}}}'.format(''.join(self.parse_braced_string()))) elif token.pattern is self.FORMAT_CHARS: check_format_chars(token.value) format_chars = token.value verbatim = verbatim_postfix if self.optional([self.LBRACE]): delimiter = ''.join(self.parse_braced_string()) elif token.pattern is self.NON_LETTERS: verbatim.append(token.value) elif token.pattern is self.RBRACE: return ''.join(verbatim_prefix), format_chars, delimiter, ''.join(verbatim_postfix) else: raise ValueError(token) def eat_whitespace(self): pass ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.568612 pybtex-0.24.0/pybtex/bibtex/runner.py0000644000175000001440000000732600000000000017342 0ustar00agusers00000000000000#!/usr/bin/env python # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import print_function, unicode_literals, with_statement import re import sys from os import path from shutil import rmtree from subprocess import PIPE, Popen from tempfile import mkdtemp from pybtex.database import BibliographyData, Entry, Person from pybtex.database.output import bibtex from pybtex.errors import report_error from pybtex.exceptions import PybtexError writer = bibtex.Writer(encoding='ascii') def write_aux(filename, citations): with open(filename, 'w') as aux_file: for citation in citations: aux_file.write('\\citation{%s}\n' % citation) aux_file.write('\\bibdata{test}\n') aux_file.write('\\bibstyle{test}\n') def write_bib(filename, database): writer.write_file(database, filename) def write_bst(filename, style): with open(filename, 'w') as bst_file: bst_file.write(style) bst_file.write('\n') def run_bibtex(style, database, citations=None): if citations is None: citations = list(database.entries.keys()) tmpdir = mkdtemp(prefix='pybtex_test_') try: write_bib(path.join(tmpdir, 'test.bib'), database) write_aux(path.join(tmpdir, 'test.aux'), citations) write_bst(path.join(tmpdir, 'test.bst'), style) bibtex = Popen(('bibtex', 'test'), cwd=tmpdir, stdout=PIPE, stderr=PIPE) stdout, stderr = bibtex.communicate() if bibtex.returncode: report_error(PybtexError(stdout)) with open(path.join(tmpdir, 'test.bbl')) as bbl_file: result = bbl_file.read() return result finally: pass rmtree(tmpdir) def execute(code, database=None): if database is None: database = BibliographyData(entries={'test_entry': Entry('article')}) bst = """ ENTRY {name format} {} {} FUNCTION {article} { %s write$ newline$ } READ ITERATE {call.type$} """.strip() % code result = ' '.join(run_bibtex(bst, database).splitlines()) return result def format_name(name, format): return execute('"%s" #1 "%s" format.name$' % (name, format)) def parse_name(name): space = re.compile(r'[\s~]+') formatted_name = format_name(name, '{ff}|{vv}|{ll}|{jj}') parts = [space.sub(' ', part.strip()) for part in formatted_name.split('|')] first, von, last, junior = parts return Person(first=first, prelast=von, last=last, lineage=junior) def main(): args = sys.argv[1:2] if len(args) != 1: print("usage: run_bibtex 'some bibtex code'") sys.exit(1) code = args[0] print(execute(code)) if __name__ == '__main__': main() ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5596123 pybtex-0.24.0/pybtex/bibtex/utils.py0000644000175000001440000004423600000000000017172 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import absolute_import, unicode_literals import re import six from pybtex.bibtex.exceptions import BibTeXError from pybtex.py3compat import fix_unicode_literals_in_doctest from pybtex.utils import pairwise from pybtex import py3compat whitespace_re = re.compile(r'(\s)') purify_special_char_re = re.compile(r'^\\[A-Za-z]+') def wrap(string, width=79, subsequent_indent=' '): r""" Wrap long string into multiple lines by inserting line breaks. The string is broken at whitespace characters so that each line is as long as possible, but no longer than ``width`` characters. If there are no possible break points in the first ``width`` characters, a longer line will be produced, with the line break inserted at the first possible whitespace characters after ``width``. After each line break, the subsequent line is indented with ``subsequent_indent`` (two spaces by default). The lines are not allowed to be shorter than ``len(subsequent_indent) + 1`` (3 characters by default), so that each line contains at least one non-whitespace character after the indent. >>> print(wrap('', width=3)) >>> print(wrap('0123456789 12345', width=10)) 0123456789 12345 >>> print(wrap('01234 6789 12345', width=10)) 01234 6789 12345 >>> print(wrap('01234 6789 12345', width=11)) 01234 6789 12345 >>> print(wrap('01234 6789 12345', width=9)) 01234 6789 12345 >>> print(wrap(' a b c', width=3)) a b c >>> print(wrap('aa bb c', width=3)) aa bb c """ min_width = len(subsequent_indent) def find_break(string): for prev_match, match in pairwise(whitespace_re.finditer(string)): if (match is None or match.start() > width) and prev_match.start() > min_width: return prev_match.start() def iter_lines(string): while len(string) > width: break_pos = find_break(string) if not break_pos: yield string return yield string[:break_pos] string = subsequent_indent + string[break_pos + 1:] if string: yield string return '\n'.join(line.rstrip() for line in iter_lines(string)) @py3compat.python_2_unicode_compatible class BibTeXString(object): def __init__(self, chars, level=0, max_level=100): if level > max_level: raise BibTeXError('too many nested braces') self.level = level self.is_closed = False self.contents = list(self.find_closing_brace(iter(chars))) def __iter__(self): return self.traverse() def find_closing_brace(self, chars): for char in chars: if char == '{': yield BibTeXString(chars, self.level + 1) elif char == '}' and self.level > 0: self.is_closed = True return else: yield char def is_special_char(self): return self.level == 1 and self.contents and self.contents[0] == '\\' def traverse(self, open=None, f=lambda char, string: char, close=None): if open is not None and self.level > 0: yield open(self) for child in self.contents: if hasattr(child, 'traverse'): if child.is_special_char(): if open is not None: yield open(child) yield f(child.inner_string(), child) if close is not None: yield close(child) else: for result in child.traverse(open, f, close): yield result else: yield f(child, self) if close is not None and self.level > 0 and self.is_closed: yield close(self) def __str__(self): return ''.join(self.traverse(open=lambda string: '{', close=lambda string: '}')) def inner_string(self): return ''.join(six.text_type(child) for child in self.contents) def change_case(string, mode): r""" >>> print(change_case('aBcD', 'l')) abcd >>> print(change_case('aBcD', 'u')) ABCD >>> print(change_case('ABcD', 't')) Abcd >>> print(change_case(r'The {\TeX book \noop}', 'u')) THE {\TeX BOOK \noop} >>> print(change_case(r'And Now: BOOO!!!', 't')) And now: Booo!!! >>> print(change_case(r'And {Now: BOOO!!!}', 't')) And {Now: BOOO!!!} >>> print(change_case(r'And {Now: {BOOO}!!!}', 'l')) and {Now: {BOOO}!!!} >>> print(change_case(r'And {\Now: BOOO!!!}', 't')) And {\Now: booo!!!} >>> print(change_case(r'And {\Now: {BOOO}!!!}', 'l')) and {\Now: {booo}!!!} >>> print(change_case(r'{\TeX\ and databases\Dash\TeX DBI}', 't')) {\TeX\ and databases\Dash\TeX DBI} """ def title(char, state): if state == 'start': return char else: return char.lower() lower = lambda char, state: char.lower() upper = lambda char, state: char.upper() convert = {'l': lower, 'u': upper, 't': title}[mode] def convert_special_char(special_char, state): # FIXME BibTeX treats some accented and foreign characterss specially def convert_words(words): for word in words: if word.startswith('\\'): yield word else: yield convert(word, state) return ' '.join(convert_words(special_char.split(' '))) def change_case_iter(string, mode): state = 'start' for char, brace_level in scan_bibtex_string(string): if brace_level == 0: yield convert(char, state) if char == ':': state = 'after colon' elif char.isspace() and state == 'after colon': state = 'start' else: state = 'normal' else: if brace_level == 1 and char.startswith('\\'): yield convert_special_char(char, state) else: yield char return ''.join(change_case_iter(string, mode)) def bibtex_substring(string, start, length): r""" Return a substring of the given length, starting from the given position. start and length are 1-based. If start is < 0, it is counted from the end of the string. If start is 0, an empty string is returned. >>> print(bibtex_substring('abcdef', 1, 3)) abc >>> print(bibtex_substring('abcdef', 2, 3)) bcd >>> print(bibtex_substring('abcdef', 2, 1000)) bcdef >>> print(bibtex_substring('abcdef', 0, 1000)) >>> print(bibtex_substring('abcdef', -1, 1)) f >>> print(bibtex_substring('abcdef', -1, 2)) ef >>> print(bibtex_substring('abcdef', -2, 3)) cde >>> print(bibtex_substring('abcdef', -2, 1000)) abcde """ if start > 0: start0 = start - 1 end0 = start0 + length elif start < 0: end0 = len(string) + start + 1 start0 = end0 - length else: # start == 0: return u'' return string[start0:end0] def bibtex_len(string): r"""Return the number of characters in the string. Braces are ignored. "Special characters" are ignored. A "special character" is a substring at brace level 1, if the first character after the opening brace is a backslash, like in "de la Vall{\'e}e Poussin". >>> print(bibtex_len(r"de la Vall{\'e}e Poussin")) 20 >>> print(bibtex_len(r"de la Vall{e}e Poussin")) 20 >>> print(bibtex_len(r"de la Vallee Poussin")) 20 >>> print(bibtex_len(r'\ABC 123')) 8 >>> print(bibtex_len(r'{\abc}')) 1 >>> print(bibtex_len(r'{\abc')) 1 >>> print(bibtex_len(r'}\abc')) 4 >>> print(bibtex_len(r'\abc}')) 4 >>> print(bibtex_len(r'\abc{')) 4 >>> print(bibtex_len(r'level 0 {1 {2}}')) 11 >>> print(bibtex_len(r'level 0 {\1 {2}}')) 9 >>> print(bibtex_len(r'level 0 {1 {\2}}')) 12 """ length = 0 for char, brace_level in scan_bibtex_string(string): if char not in '{}': length += 1 return length def bibtex_width(string): r""" Determine the width of the given string, in relative units. >>> bibtex_width('') 0 >>> bibtex_width('abc') 1500 >>> bibtex_width('ab{c}') 2500 >>> bibtex_width(r"ab{\'c}") 1500 >>> bibtex_width(r"ab{\'c{}}") 1500 >>> bibtex_width(r"ab{\'c{}") 1500 >>> bibtex_width(r"ab{\'c{d}}") 2056 """ from pybtex.charwidths import charwidths width = 0 for token, brace_level in scan_bibtex_string(string): if brace_level == 1 and token.startswith('\\'): for char in token[2:]: if char not in '{}': width += charwidths.get(char, 0) width -= 1000 # two braces else: width += charwidths.get(token, 0) return width def bibtex_prefix(string, num_chars): r"""Return the firxt num_char characters of the string. Braces and "special characters" are ignored, as in bibtex_len. If the resulting prefix ends at brace level > 0, missing closing braces are appended. >>> print(bibtex_prefix('abc', 1)) a >>> print(bibtex_prefix('abc', 5)) abc >>> print(bibtex_prefix('ab{c}d', 3)) ab{c} >>> print(bibtex_prefix('ab{cd}', 3)) ab{c} >>> print(bibtex_prefix('ab{cd', 3)) ab{c} >>> print(bibtex_prefix(r'ab{\cd}', 3)) ab{\cd} >>> print(bibtex_prefix(r'ab{\cd', 3)) ab{\cd} """ def prefix(): length = 0 for char, brace_level in scan_bibtex_string(string): yield char if char not in '{}': length += 1 if length >= num_chars: break for i in range(brace_level): yield '}' return ''.join(prefix()) def bibtex_purify(string): r"""Strip special characters from the string. >>> print(bibtex_purify('Abc 1234')) Abc 1234 >>> print(bibtex_purify('Abc 1234')) Abc 1234 >>> print(bibtex_purify('Abc-Def')) Abc Def >>> print(bibtex_purify('Abc-~-Def')) Abc Def >>> print(bibtex_purify('{XXX YYY}')) XXX YYY >>> print(bibtex_purify('{XXX {YYY}}')) XXX YYY >>> print(bibtex_purify(r'XXX {\YYY} XXX')) XXX XXX >>> print(bibtex_purify(r'{XXX {\YYY} XXX}')) XXX YYY XXX >>> print(bibtex_purify(r'\\abc def')) abc def >>> print(bibtex_purify('a@#$@#$b@#$@#$c')) abc >>> print(bibtex_purify(r'{\noopsort{1973b}}1973')) 1973b1973 >>> print(bibtex_purify(r'{sort{1973b}}1973')) sort1973b1973 >>> print(bibtex_purify(r'{sort{\abc1973b}}1973')) sortabc1973b1973 >>> print(bibtex_purify(r'{\noopsort{1973a}}{\switchargs{--90}{1968}}')) 1973a901968 """ # FIXME BibTeX treats some accented and foreign characterss specially def purify_iter(string): for token, brace_level in scan_bibtex_string(string): if brace_level == 1 and token.startswith('\\'): for char in purify_special_char_re.sub('', token): if char.isalnum(): yield char else: if token.isalnum(): yield token elif token.isspace() or token in '-~': yield ' ' return ''.join(purify_iter(string)) def scan_bibtex_string(string): """ Yield (char, brace_level) tuples. "Special characters", as in bibtex_len, are treated as a single character """ return BibTeXString(string).traverse( open=lambda string: ('{', string.level), f=lambda char, string: (char, string.level), close=lambda string: ('}', string.level - 1), ) @fix_unicode_literals_in_doctest def split_name_list(string): r""" Split a list of names, separated by ' and '. >>> split_name_list('Johnson and Peterson') [u'Johnson', u'Peterson'] >>> split_name_list('Johnson AND Peterson') [u'Johnson', u'Peterson'] >>> split_name_list('Johnson AnD Peterson') [u'Johnson', u'Peterson'] >>> split_name_list('Armand and Peterson') [u'Armand', u'Peterson'] >>> split_name_list('Armand and anderssen') [u'Armand', u'anderssen'] >>> split_name_list('{Armand and Anderssen}') [u'{Armand and Anderssen}'] >>> split_name_list('What a Strange{ }and Bizzare Name! and Peterson') [u'What a Strange{ }and Bizzare Name!', u'Peterson'] >>> split_name_list('What a Strange and{ }Bizzare Name! and Peterson') [u'What a Strange and{ }Bizzare Name!', u'Peterson'] """ return split_tex_string(string, ' [Aa][Nn][Dd] ') @fix_unicode_literals_in_doctest def _find_closing_brace(string): r""" >>> _find_closing_brace('') (u'', u'') >>> _find_closing_brace('no braces') (u'no braces', u'') >>> _find_closing_brace('brace at the end}') (u'brace at the end}', u'') >>> _find_closing_brace('two closing braces}}') (u'two closing braces}', u'}') >>> _find_closing_brace('two closing} braces} and some text') (u'two closing}', u' braces} and some text') >>> _find_closing_brace('more {nested{}}{braces}} and the rest}') (u'more {nested{}}{braces}}', u' and the rest}') """ up_to_brace = [] brace_level = 1 while brace_level >= 1: next_brace = BRACE_RE.search(string) if not next_brace: break up_to_brace.append(string[:next_brace.end()]) string = string[next_brace.end():] if next_brace.group() == '{': brace_level += 1 elif next_brace.group() == '}': brace_level -= 1 else: raise ValueError(next_brace.group()) if not up_to_brace: up_to_brace, string = [string], '' return ''.join(up_to_brace), string # "\ " is a "control space" in TeX, i. e. "a space that is not to be ignored" # -- The TeXbook, Chapter 3: Controlling TeX, p 8 # ~ is a space character, according to BibTeX # \~ is not a space character BIBTEX_SPACE_RE = re.compile(r'(?:\\ |\s|(? 0 is ignored. >>> split_tex_string('') [] >>> split_tex_string(' ') [] >>> split_tex_string('.a.b.c.', r'\.') [u'', u'a', u'b', u'c', u''] >>> split_tex_string('.a.b.c.{d.}.', r'\.') [u'', u'a', u'b', u'c', u'{d.}', u''] >>> split_tex_string('Matsui Fuuka') [u'Matsui', u'Fuuka'] >>> split_tex_string('{Matsui Fuuka}') [u'{Matsui Fuuka}'] >>> split_tex_string(r'Matsui\ Fuuka') [u'Matsui', u'Fuuka'] >>> split_tex_string(r'{Matsui\ Fuuka}') [u'{Matsui\\ Fuuka}'] >>> split_tex_string('a') [u'a'] >>> split_tex_string('on a') [u'on', u'a'] >>> split_tex_string(r'Qui\~{n}onero-Candela, J.') [u'Qui\\~{n}onero-Candela,', u'J.'] """ if sep is None: sep = BIBTEX_SPACE_RE filter_empty = True sep = re.compile(sep) result = [] word_parts = [] while True: head, brace, string = string.partition('{') if head: head_parts = sep.split(head) for word in head_parts[:-1]: result.append(''.join(word_parts + [word])) word_parts = [] word_parts.append(head_parts[-1]) if brace: word_parts.append(brace) up_to_closing_brace, string = _find_closing_brace(string) word_parts.append(up_to_closing_brace) else: break if word_parts: result.append(''.join(word_parts)) if strip: result = [part.strip() for part in result] if filter_empty: result = [part for part in result if part] return result def bibtex_first_letter(string): r""" Return the first letter or special character of the string. >>> print(bibtex_first_letter('Andrew Blake')) A >>> print(bibtex_first_letter('{Andrew} Blake')) A >>> print(bibtex_first_letter('1Andrew')) A >>> print(bibtex_first_letter(r'{\TeX} markup')) {\TeX} >>> print(bibtex_first_letter('')) >>> print(bibtex_first_letter('123 123 123 {}')) >>> print(bibtex_first_letter(r'\LaTeX Project Team')) L """ for char in BibTeXString(string): if char.startswith('\\') and char != '\\': return u'{{{0}}}'.format(char) elif char.isalpha(): return char return '' def bibtex_abbreviate(string, delimiter=None, separator='-'): r""" Abbreviate string. >>> print(bibtex_abbreviate('Andrew Blake')) A >>> print(bibtex_abbreviate('Jean-Pierre')) J.-P >>> print(bibtex_abbreviate('Jean--Pierre')) J.-P """ def _bibtex_abbreviate(): for token in split_tex_string(string, sep=separator): letter = bibtex_first_letter(token) if letter: yield letter if delimiter is None: delimiter = '.-' return delimiter.join(_bibtex_abbreviate()) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912831.9537141 pybtex-0.24.0/pybtex/charwidths/0000755000175000001440000000000000000000000016332 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5576122 pybtex-0.24.0/pybtex/charwidths/__init__.py0000644000175000001440000011154600000000000020453 0ustar00agusers00000000000000# vim:fileencoding=utf8 # GENERATED FILE - DO NOT EDIT. # Generated by ./make_charwidths.py /usr/share/texlive/texmf-dist/fonts/opentype/public/cm-unicode/cmunrm.otf # Date: 2013-08-01 # Font family: CMU Serif # Font style: Roman # Font version: Version 0.7.0 from __future__ import unicode_literals charwidths = {u' ': 278, u'!': 278, u'"': 500, u'#': 833, u'$': 500, u'%': 833, u'&': 778, u"'": 278, u'(': 389, u')': 389, u'*': 500, u'+': 778, u',': 278, u'-': 333, u'.': 278, u'/': 500, u'0': 500, u'1': 500, u'2': 500, u'3': 500, u'4': 500, u'5': 500, u'6': 500, u'7': 500, u'8': 500, u'9': 500, u':': 278, u';': 278, u'<': 278, u'=': 778, u'>': 472, u'?': 472, u'@': 778, u'A': 750, u'B': 708, u'C': 722, u'D': 764, u'E': 681, u'F': 653, u'G': 785, u'H': 750, u'I': 361, u'J': 514, u'K': 778, u'L': 625, u'M': 917, u'N': 750, u'O': 778, u'P': 681, u'Q': 778, u'R': 736, u'S': 556, u'T': 722, u'U': 750, u'V': 750, u'W': 1028, u'X': 750, u'Y': 750, u'Z': 611, u'[': 278, u'\\': 500, u']': 278, u'^': 500, u'_': 278, u'`': 278, u'a': 500, u'b': 556, u'c': 444, u'd': 556, u'e': 444, u'f': 306, u'g': 500, u'h': 556, u'i': 278, u'j': 306, u'k': 528, u'l': 278, u'm': 833, u'n': 556, u'o': 500, u'p': 556, u'q': 528, u'r': 392, u's': 394, u't': 389, u'u': 556, u'v': 528, u'w': 722, u'x': 528, u'y': 528, u'z': 444, u'{': 500, u'|': 1000, u'}': 500, u'~': 500, u'\xa0': 333, u'\xa1': 278, u'\xa2': 500, u'\xa3': 639, u'\xa4': 736, u'\xa5': 750, u'\xa6': 167, u'\xa7': 444, u'\xa8': 500, u'\xa9': 1111, u'\xaa': 444, u'\xab': 555, u'\xac': 667, u'\xad': 167, u'\xae': 1111, u'\xaf': 500, u'\xb0': 333, u'\xb1': 778, u'\xb2': 444, u'\xb3': 444, u'\xb4': 500, u'\xb5': 555, u'\xb6': 611, u'\xb7': 278, u'\xb8': 444, u'\xb9': 444, u'\xba': 444, u'\xbb': 555, u'\xbc': 444, u'\xbd': 444, u'\xbe': 444, u'\xbf': 472, u'\xc0': 750, u'\xc1': 750, u'\xc2': 750, u'\xc3': 750, u'\xc4': 750, u'\xc5': 750, u'\xc6': 903, u'\xc7': 722, u'\xc8': 680, u'\xc9': 680, u'\xca': 680, u'\xcb': 680, u'\xcc': 361, u'\xcd': 361, u'\xce': 361, u'\xcf': 361, u'\xd0': 764, u'\xd1': 750, u'\xd2': 777, u'\xd3': 777, u'\xd4': 777, u'\xd5': 777, u'\xd6': 777, u'\xd7': 778, u'\xd8': 778, u'\xd9': 750, u'\xda': 750, u'\xdb': 750, u'\xdc': 750, u'\xdd': 750, u'\xde': 625, u'\xdf': 500, u'\xe0': 500, u'\xe1': 500, u'\xe2': 500, u'\xe3': 500, u'\xe4': 500, u'\xe5': 500, u'\xe6': 722, u'\xe7': 444, u'\xe8': 444, u'\xe9': 444, u'\xea': 444, u'\xeb': 444, u'\xec': 277, u'\xed': 277, u'\xee': 277, u'\xef': 333, u'\xf0': 500, u'\xf1': 555, u'\xf2': 500, u'\xf3': 500, u'\xf4': 500, u'\xf5': 500, u'\xf6': 500, u'\xf7': 778, u'\xf8': 500, u'\xf9': 555, u'\xfa': 555, u'\xfb': 555, u'\xfc': 555, u'\xfd': 527, u'\xfe': 555, u'\xff': 527, u'\u0100': 750, u'\u0101': 500, u'\u0102': 750, u'\u0103': 500, u'\u0104': 750, u'\u0105': 500, u'\u0106': 722, u'\u0107': 444, u'\u0108': 722, u'\u0109': 444, u'\u010a': 722, u'\u010b': 444, u'\u010c': 722, u'\u010d': 444, u'\u010e': 763, u'\u010f': 675, u'\u0110': 764, u'\u0111': 555, u'\u0112': 680, u'\u0113': 444, u'\u0114': 680, u'\u0115': 444, u'\u0116': 680, u'\u0117': 444, u'\u0118': 680, u'\u0119': 444, u'\u011a': 680, u'\u011b': 444, u'\u011c': 784, u'\u011d': 500, u'\u011e': 785, u'\u011f': 500, u'\u0120': 784, u'\u0121': 500, u'\u0122': 784, u'\u0123': 500, u'\u0124': 750, u'\u0125': 555, u'\u0126': 750, u'\u0127': 583, u'\u0128': 361, u'\u0129': 277, u'\u012a': 361, u'\u012b': 277, u'\u012c': 361, u'\u012d': 277, u'\u012e': 361, u'\u012f': 277, u'\u0130': 361, u'\u0131': 277, u'\u0132': 861, u'\u0133': 583, u'\u0134': 513, u'\u0135': 305, u'\u0136': 777, u'\u0137': 527, u'\u0138': 531, u'\u0139': 625, u'\u013a': 277, u'\u013b': 625, u'\u013c': 277, u'\u013d': 625, u'\u013e': 403, u'\u013f': 625, u'\u0140': 387, u'\u0141': 625, u'\u0142': 336, u'\u0143': 750, u'\u0144': 555, u'\u0145': 750, u'\u0146': 555, u'\u0147': 750, u'\u0148': 555, u'\u0149': 601, u'\u014a': 791, u'\u014b': 555, u'\u014c': 777, u'\u014d': 500, u'\u014e': 777, u'\u014f': 500, u'\u0150': 777, u'\u0151': 500, u'\u0152': 1014, u'\u0153': 778, u'\u0154': 736, u'\u0155': 391, u'\u0156': 736, u'\u0157': 391, u'\u0158': 736, u'\u0159': 391, u'\u015a': 555, u'\u015b': 394, u'\u015c': 555, u'\u015d': 394, u'\u015e': 555, u'\u015f': 394, u'\u0160': 555, u'\u0161': 394, u'\u0162': 722, u'\u0163': 389, u'\u0164': 722, u'\u0165': 389, u'\u0166': 722, u'\u0167': 388, u'\u0168': 750, u'\u0169': 555, u'\u016a': 750, u'\u016b': 555, u'\u016c': 750, u'\u016d': 555, u'\u016e': 750, u'\u016f': 555, u'\u0170': 750, u'\u0171': 555, u'\u0172': 750, u'\u0173': 555, u'\u0174': 1027, u'\u0175': 722, u'\u0176': 750, u'\u0177': 527, u'\u0178': 750, u'\u0179': 611, u'\u017a': 444, u'\u017b': 611, u'\u017c': 444, u'\u017d': 611, u'\u017e': 444, u'\u017f': 305, u'\u0180': 556, u'\u0181': 818, u'\u0182': 683, u'\u0183': 514, u'\u0184': 682, u'\u0185': 556, u'\u0186': 722, u'\u0187': 756, u'\u0188': 500, u'\u0189': 763, u'\u018a': 874, u'\u018b': 668, u'\u018c': 555, u'\u018d': 495, u'\u018e': 680, u'\u018f': 676, u'\u0190': 611, u'\u0191': 652, u'\u0192': 500, u'\u0193': 784, u'\u0194': 751, u'\u0195': 767, u'\u0196': 417, u'\u0197': 361, u'\u0198': 765, u'\u0199': 528, u'\u019a': 389, u'\u019b': 528, u'\u019c': 1056, u'\u019d': 750, u'\u019e': 528, u'\u019f': 777, u'\u01a0': 778, u'\u01a1': 500, u'\u01a2': 852, u'\u01a3': 611, u'\u01a4': 791, u'\u01a5': 528, u'\u01a6': 722, u'\u01a7': 555, u'\u01a8': 394, u'\u01a9': 722, u'\u01aa': 332, u'\u01ab': 417, u'\u01ac': 722, u'\u01ad': 417, u'\u01ae': 722, u'\u01af': 750, u'\u01b0': 555, u'\u01b1': 722, u'\u01b2': 724, u'\u01b3': 749, u'\u01b4': 640, u'\u01b5': 611, u'\u01b6': 443, u'\u01b7': 555, u'\u01b8': 550, u'\u01b9': 444, u'\u01ba': 444, u'\u01bb': 499, u'\u01bc': 519, u'\u01bd': 399, u'\u01be': 460, u'\u01bf': 500, u'\u01c0': 278, u'\u01c1': 444, u'\u01c2': 556, u'\u01c3': 278, u'\u01c4': 1375, u'\u01c5': 1208, u'\u01c6': 999, u'\u01c7': 1139, u'\u01c8': 930, u'\u01c9': 583, u'\u01ca': 1264, u'\u01cb': 1055, u'\u01cc': 860, u'\u01cd': 750, u'\u01ce': 500, u'\u01cf': 361, u'\u01d0': 277, u'\u01d1': 777, u'\u01d2': 500, u'\u01d3': 750, u'\u01d4': 555, u'\u01d5': 750, u'\u01d6': 555, u'\u01d7': 750, u'\u01d8': 555, u'\u01d9': 750, u'\u01da': 555, u'\u01db': 750, u'\u01dc': 555, u'\u01dd': 444, u'\u01de': 750, u'\u01df': 500, u'\u01e0': 750, u'\u01e1': 500, u'\u01e2': 903, u'\u01e3': 722, u'\u01e4': 784, u'\u01e5': 500, u'\u01e6': 784, u'\u01e7': 500, u'\u01e8': 777, u'\u01e9': 527, u'\u01ea': 777, u'\u01eb': 500, u'\u01ec': 777, u'\u01ed': 500, u'\u01ee': 555, u'\u01ef': 444, u'\u01f0': 305, u'\u01f1': 1375, u'\u01f2': 1208, u'\u01f3': 999, u'\u01f4': 784, u'\u01f5': 500, u'\u01f6': 983, u'\u01f7': 642, u'\u01f8': 750, u'\u01f9': 555, u'\u01fa': 750, u'\u01fb': 500, u'\u01fc': 903, u'\u01fd': 722, u'\u01fe': 778, u'\u01ff': 500, u'\u0200': 750, u'\u0201': 500, u'\u0202': 750, u'\u0203': 500, u'\u0204': 680, u'\u0205': 444, u'\u0206': 680, u'\u0207': 444, u'\u0208': 361, u'\u0209': 277, u'\u020a': 361, u'\u020b': 277, u'\u020c': 777, u'\u020d': 500, u'\u020e': 777, u'\u020f': 500, u'\u0210': 736, u'\u0211': 391, u'\u0212': 736, u'\u0213': 391, u'\u0214': 750, u'\u0215': 555, u'\u0216': 750, u'\u0217': 555, u'\u0218': 555, u'\u0219': 394, u'\u021a': 722, u'\u021b': 388, u'\u021c': 579, u'\u021d': 480, u'\u021e': 750, u'\u021f': 555, u'\u0220': 852, u'\u0221': 611, u'\u0222': 552, u'\u0223': 500, u'\u0224': 611, u'\u0225': 500, u'\u0226': 750, u'\u0227': 500, u'\u0228': 680, u'\u0229': 444, u'\u022a': 777, u'\u022b': 500, u'\u022c': 777, u'\u022d': 500, u'\u022e': 777, u'\u022f': 500, u'\u0230': 777, u'\u0231': 500, u'\u0232': 750, u'\u0233': 527, u'\u0234': 383, u'\u0235': 611, u'\u0236': 389, u'\u0237': 305, u'\u0238': 833, u'\u0239': 833, u'\u023a': 750, u'\u023b': 722, u'\u023c': 444, u'\u023d': 625, u'\u023e': 722, u'\u023f': 394, u'\u0240': 444, u'\u0241': 444, u'\u0242': 444, u'\u0243': 708, u'\u0244': 750, u'\u0245': 750, u'\u0246': 680, u'\u0247': 444, u'\u0248': 513, u'\u0249': 312, u'\u024a': 715, u'\u024b': 593, u'\u024c': 736, u'\u024d': 391, u'\u024e': 750, u'\u024f': 527, u'\u0250': 500, u'\u0251': 556, u'\u0252': 556, u'\u0253': 528, u'\u0254': 444, u'\u0255': 444, u'\u0256': 556, u'\u0257': 556, u'\u0258': 444, u'\u0259': 444, u'\u025a': 639, u'\u025b': 444, u'\u025c': 472, u'\u025d': 639, u'\u025e': 500, u'\u025f': 306, u'\u0260': 556, u'\u0261': 528, u'\u0262': 565, u'\u0263': 528, u'\u0264': 528, u'\u0265': 556, u'\u0266': 556, u'\u0267': 528, u'\u0268': 311, u'\u0269': 333, u'\u026a': 274, u'\u026b': 422, u'\u026c': 389, u'\u026d': 278, u'\u026e': 561, u'\u026f': 833, u'\u0270': 833, u'\u0271': 806, u'\u0272': 556, u'\u0273': 556, u'\u0274': 547, u'\u0275': 500, u'\u0276': 727, u'\u0277': 611, u'\u0278': 611, u'\u0279': 392, u'\u027a': 392, u'\u027b': 392, u'\u027c': 392, u'\u027d': 392, u'\u027e': 392, u'\u027f': 333, u'\u0280': 536, u'\u0281': 536, u'\u0282': 394, u'\u0283': 333, u'\u0284': 333, u'\u0285': 367, u'\u0286': 333, u'\u0287': 389, u'\u0288': 361, u'\u0289': 556, u'\u028a': 556, u'\u028b': 511, u'\u028c': 528, u'\u028d': 722, u'\u028e': 528, u'\u028f': 547, u'\u0290': 444, u'\u0291': 500, u'\u0292': 444, u'\u0293': 444, u'\u0294': 500, u'\u0295': 500, u'\u0296': 500, u'\u0297': 500, u'\u0298': 777, u'\u0299': 513, u'\u029a': 500, u'\u029b': 584, u'\u029c': 547, u'\u029d': 350, u'\u029e': 528, u'\u029f': 455, u'\u02a0': 556, u'\u02a1': 500, u'\u02a2': 500, u'\u02a3': 865, u'\u02a4': 722, u'\u02a5': 921, u'\u02a6': 667, u'\u02a7': 556, u'\u02a8': 704, u'\u02a9': 759, u'\u02aa': 555, u'\u02ab': 605, u'\u02ac': 361, u'\u02ad': 500, u'\u02ae': 556, u'\u02af': 556, u'\u02b0': 333, u'\u02b1': 333, u'\u02b2': 183, u'\u02b3': 235, u'\u02b4': 235, u'\u02b5': 235, u'\u02b6': 321, u'\u02b7': 433, u'\u02b8': 316, u'\u02b9': 167, u'\u02ba': 500, u'\u02bb': 278, u'\u02bc': 278, u'\u02bd': 278, u'\u02be': 333, u'\u02bf': 333, u'\u02c0': 444, u'\u02c1': 444, u'\u02c2': 333, u'\u02c3': 333, u'\u02c6': 500, u'\u02c7': 500, u'\u02c8': 222, u'\u02c9': 500, u'\u02ca': 500, u'\u02cb': 500, u'\u02cc': 222, u'\u02cd': 333, u'\u02ce': 500, u'\u02cf': 500, u'\u02d0': 278, u'\u02d1': 278, u'\u02d2': 333, u'\u02d3': 333, u'\u02d4': 444, u'\u02d5': 444, u'\u02d6': 444, u'\u02d7': 444, u'\u02d8': 500, u'\u02d9': 278, u'\u02da': 750, u'\u02db': 278, u'\u02dc': 500, u'\u02dd': 500, u'\u02de': 333, u'\u02df': 500, u'\u02e0': 316, u'\u02e1': 166, u'\u02e2': 236, u'\u02e3': 316, u'\u02e4': 300, u'\u02e5': 333, u'\u02e6': 333, u'\u02e7': 333, u'\u02e8': 333, u'\u02e9': 333, u'\u02f9': 289, u'\u02fa': 289, u'\u0300': 0, u'\u0301': 0, u'\u0302': 0, u'\u0303': 500, u'\u0304': 500, u'\u0305': 778, u'\u0306': 0, u'\u0307': 0, u'\u0308': 0, u'\u0309': 0, u'\u030a': 0, u'\u030b': 0, u'\u030c': 0, u'\u030d': 0, u'\u030e': 0, u'\u030f': 0, u'\u0311': 0, u'\u0313': 0, u'\u0314': 0, u'\u0315': 0, u'\u0316': 0, u'\u0317': 0, u'\u0318': 444, u'\u0319': 444, u'\u031a': 0, u'\u031c': 0, u'\u031d': 0, u'\u031e': 0, u'\u031f': 0, u'\u0320': 0, u'\u0321': 0, u'\u0322': 0, u'\u0323': 0, u'\u0324': 0, u'\u0325': 0, u'\u0326': 0, u'\u0327': 0, u'\u0328': 0, u'\u0329': 0, u'\u032a': 0, u'\u032b': 0, u'\u032c': 0, u'\u032d': 0, u'\u032e': 0, u'\u032f': 0, u'\u0330': 0, u'\u0331': 0, u'\u0332': 0, u'\u0334': 0, u'\u0335': 0, u'\u0337': 0, u'\u0338': 0, u'\u0339': 0, u'\u033a': 0, u'\u033b': 0, u'\u033c': 0, u'\u033d': 0, u'\u0346': 0, u'\u0347': 0, u'\u0348': 0, u'\u0349': 0, u'\u034d': 0, u'\u035c': 0, u'\u035d': 0, u'\u0360': 0, u'\u0361': 0, u'\u0362': 0, u'\u0374': 194, u'\u0375': 194, u'\u037a': 111, u'\u037e': 278, u'\u0384': 167, u'\u0385': 278, u'\u0386': 750, u'\u0387': 278, u'\u0388': 847, u'\u0389': 917, u'\u038a': 528, u'\u038c': 861, u'\u038e': 945, u'\u038f': 805, u'\u0390': 250, u'\u0391': 750, u'\u0392': 708, u'\u0393': 625, u'\u0394': 833, u'\u0395': 680, u'\u0396': 611, u'\u0397': 750, u'\u0398': 778, u'\u0399': 361, u'\u039a': 778, u'\u039b': 694, u'\u039c': 916, u'\u039d': 750, u'\u039e': 667, u'\u039f': 777, u'\u03a0': 750, u'\u03a1': 680, u'\u03a3': 722, u'\u03a4': 722, u'\u03a5': 778, u'\u03a6': 722, u'\u03a7': 750, u'\u03a8': 778, u'\u03a9': 722, u'\u03aa': 361, u'\u03ab': 778, u'\u03ac': 500, u'\u03ad': 430, u'\u03ae': 500, u'\u03af': 250, u'\u03b0': 500, u'\u03b1': 500, u'\u03b2': 500, u'\u03b3': 555, u'\u03b4': 472, u'\u03b5': 430, u'\u03b6': 472, u'\u03b7': 500, u'\u03b8': 569, u'\u03b9': 250, u'\u03ba': 528, u'\u03bb': 500, u'\u03bc': 519, u'\u03bd': 472, u'\u03be': 472, u'\u03bf': 528, u'\u03c0': 514, u'\u03c1': 472, u'\u03c2': 444, u'\u03c3': 569, u'\u03c4': 458, u'\u03c5': 500, u'\u03c6': 583, u'\u03c7': 555, u'\u03c8': 583, u'\u03c9': 667, u'\u03ca': 250, u'\u03cb': 500, u'\u03cc': 528, u'\u03cd': 500, u'\u03ce': 667, u'\u03d1': 569, u'\u03d5': 578, u'\u03d8': 500, u'\u03d9': 500, u'\u03da': 778, u'\u03db': 500, u'\u03dc': 652, u'\u03dd': 500, u'\u03df': 389, u'\u03e0': 766, u'\u03e1': 722, u'\u03f1': 472, u'\u03f5': 430, u'\u0400': 680, u'\u0401': 680, u'\u0402': 861, u'\u0403': 625, u'\u0404': 722, u'\u0405': 555, u'\u0406': 361, u'\u0407': 361, u'\u0408': 513, u'\u0409': 1083, u'\u040a': 1083, u'\u040b': 764, u'\u040c': 778, u'\u040d': 778, u'\u040e': 750, u'\u040f': 778, u'\u0410': 750, u'\u0411': 708, u'\u0412': 708, u'\u0413': 625, u'\u0414': 778, u'\u0415': 680, u'\u0416': 1194, u'\u0417': 611, u'\u0418': 778, u'\u0419': 778, u'\u041a': 778, u'\u041b': 778, u'\u041c': 916, u'\u041d': 778, u'\u041e': 777, u'\u041f': 778, u'\u0420': 680, u'\u0421': 722, u'\u0422': 722, u'\u0423': 750, u'\u0424': 833, u'\u0425': 750, u'\u0426': 778, u'\u0427': 778, u'\u0428': 1125, u'\u0429': 1125, u'\u042a': 889, u'\u042b': 972, u'\u042c': 708, u'\u042d': 722, u'\u042e': 1125, u'\u042f': 778, u'\u0430': 500, u'\u0431': 500, u'\u0432': 500, u'\u0433': 444, u'\u0434': 555, u'\u0435': 444, u'\u0436': 833, u'\u0437': 444, u'\u0438': 555, u'\u0439': 555, u'\u043a': 555, u'\u043b': 555, u'\u043c': 667, u'\u043d': 555, u'\u043e': 500, u'\u043f': 555, u'\u0440': 555, u'\u0441': 444, u'\u0442': 500, u'\u0443': 528, u'\u0444': 778, u'\u0445': 528, u'\u0446': 555, u'\u0447': 555, u'\u0448': 805, u'\u0449': 805, u'\u044a': 611, u'\u044b': 722, u'\u044c': 500, u'\u044d': 444, u'\u044e': 750, u'\u044f': 542, u'\u0450': 444, u'\u0451': 444, u'\u0452': 528, u'\u0453': 430, u'\u0454': 439, u'\u0455': 394, u'\u0456': 278, u'\u0457': 278, u'\u0458': 305, u'\u0459': 764, u'\u045a': 764, u'\u045b': 555, u'\u045c': 555, u'\u045d': 555, u'\u045e': 528, u'\u045f': 555, u'\u0460': 1000, u'\u0461': 778, u'\u0462': 819, u'\u0463': 500, u'\u0464': 1069, u'\u0465': 700, u'\u0466': 928, u'\u0467': 694, u'\u0468': 1261, u'\u0469': 958, u'\u046a': 1028, u'\u046b': 833, u'\u046c': 1361, u'\u046d': 1125, u'\u046e': 555, u'\u046f': 417, u'\u0470': 778, u'\u0471': 639, u'\u0472': 778, u'\u0473': 444, u'\u0474': 819, u'\u0475': 587, u'\u0476': 819, u'\u0477': 587, u'\u047a': 944, u'\u047b': 611, u'\u047c': 1000, u'\u047d': 778, u'\u047e': 1000, u'\u047f': 778, u'\u0480': 722, u'\u0481': 439, u'\u0482': 444, u'\u0483': 0, u'\u0484': 0, u'\u0485': 0, u'\u0486': 0, u'\u0488': 0, u'\u0489': 0, u'\u048a': 778, u'\u048b': 555, u'\u048c': 819, u'\u048d': 500, u'\u048e': 680, u'\u048f': 555, u'\u0490': 639, u'\u0491': 444, u'\u0492': 625, u'\u0493': 444, u'\u0494': 708, u'\u0495': 555, u'\u0496': 1194, u'\u0497': 833, u'\u0498': 611, u'\u0499': 444, u'\u049a': 778, u'\u049b': 555, u'\u049c': 861, u'\u049d': 639, u'\u049e': 778, u'\u049f': 555, u'\u04a0': 958, u'\u04a1': 667, u'\u04a2': 778, u'\u04a3': 555, u'\u04a4': 958, u'\u04a5': 667, u'\u04a6': 1083, u'\u04a7': 778, u'\u04a8': 778, u'\u04a9': 500, u'\u04aa': 722, u'\u04ab': 444, u'\u04ac': 722, u'\u04ad': 500, u'\u04ae': 750, u'\u04af': 528, u'\u04b0': 750, u'\u04b1': 528, u'\u04b2': 750, u'\u04b3': 528, u'\u04b4': 986, u'\u04b5': 683, u'\u04b6': 778, u'\u04b7': 555, u'\u04b8': 778, u'\u04b9': 555, u'\u04ba': 778, u'\u04bb': 555, u'\u04bc': 812, u'\u04bd': 576, u'\u04be': 812, u'\u04bf': 576, u'\u04c0': 361, u'\u04c1': 1194, u'\u04c2': 833, u'\u04c3': 778, u'\u04c4': 555, u'\u04c5': 778, u'\u04c6': 555, u'\u04c7': 778, u'\u04c8': 555, u'\u04c9': 778, u'\u04ca': 555, u'\u04cb': 778, u'\u04cc': 555, u'\u04cd': 916, u'\u04ce': 667, u'\u04d0': 750, u'\u04d1': 500, u'\u04d2': 750, u'\u04d3': 500, u'\u04d4': 903, u'\u04d5': 722, u'\u04d6': 680, u'\u04d7': 444, u'\u04d8': 676, u'\u04d9': 458, u'\u04da': 722, u'\u04db': 458, u'\u04dc': 1194, u'\u04dd': 833, u'\u04de': 611, u'\u04df': 444, u'\u04e0': 555, u'\u04e1': 444, u'\u04e2': 778, u'\u04e3': 555, u'\u04e4': 778, u'\u04e5': 555, u'\u04e6': 777, u'\u04e7': 500, u'\u04e8': 778, u'\u04e9': 500, u'\u04ea': 778, u'\u04eb': 500, u'\u04ec': 722, u'\u04ed': 444, u'\u04ee': 750, u'\u04ef': 528, u'\u04f0': 750, u'\u04f1': 528, u'\u04f2': 750, u'\u04f3': 528, u'\u04f4': 778, u'\u04f5': 555, u'\u04f6': 625, u'\u04f7': 444, u'\u04f8': 972, u'\u04f9': 722, u'\u04fc': 750, u'\u04fd': 528, u'\u04fe': 750, u'\u04ff': 528, u'\u0512': 778, u'\u0513': 555, u'\u051a': 777, u'\u051b': 528, u'\u051c': 1027, u'\u051d': 722, u'\u0e3f': 708, u'\u1d00': 547, u'\u1d07': 494, u'\u1d0a': 377, u'\u1d0b': 566, u'\u1d0d': 663, u'\u1d18': 494, u'\u1d19': 536, u'\u1d1c': 547, u'\u1d43': 300, u'\u1d44': 300, u'\u1d45': 333, u'\u1d46': 433, u'\u1d47': 333, u'\u1d48': 333, u'\u1d49': 266, u'\u1d4a': 266, u'\u1d4b': 266, u'\u1d4d': 300, u'\u1d4f': 316, u'\u1d50': 499, u'\u1d51': 333, u'\u1d52': 300, u'\u1d53': 266, u'\u1d56': 333, u'\u1d57': 233, u'\u1d58': 333, u'\u1d5a': 499, u'\u1d5b': 316, u'\u1d5d': 300, u'\u1d5e': 333, u'\u1d60': 349, u'\u1d61': 333, u'\u1d78': 333, u'\u1d90': 556, u'\u1d91': 653, u'\u1d92': 500, u'\u1d93': 528, u'\u1d97': 444, u'\u1dc4': 0, u'\u1dc5': 0, u'\u1dc8': 0, u'\u1dc9': 0, u'\u1e00': 750, u'\u1e01': 500, u'\u1e02': 708, u'\u1e03': 555, u'\u1e04': 708, u'\u1e05': 555, u'\u1e06': 708, u'\u1e07': 555, u'\u1e08': 722, u'\u1e09': 444, u'\u1e0a': 763, u'\u1e0b': 555, u'\u1e0c': 763, u'\u1e0d': 555, u'\u1e0e': 763, u'\u1e0f': 555, u'\u1e10': 763, u'\u1e11': 555, u'\u1e12': 763, u'\u1e13': 555, u'\u1e18': 680, u'\u1e19': 444, u'\u1e1a': 680, u'\u1e1b': 444, u'\u1e1c': 680, u'\u1e1d': 444, u'\u1e1e': 652, u'\u1e1f': 305, u'\u1e20': 784, u'\u1e21': 500, u'\u1e22': 750, u'\u1e23': 555, u'\u1e24': 750, u'\u1e25': 555, u'\u1e26': 750, u'\u1e27': 555, u'\u1e2a': 750, u'\u1e2b': 555, u'\u1e2c': 361, u'\u1e2d': 277, u'\u1e30': 777, u'\u1e31': 527, u'\u1e32': 777, u'\u1e33': 527, u'\u1e34': 777, u'\u1e35': 527, u'\u1e36': 625, u'\u1e37': 277, u'\u1e38': 625, u'\u1e39': 277, u'\u1e3a': 625, u'\u1e3b': 277, u'\u1e3c': 625, u'\u1e3d': 277, u'\u1e3e': 916, u'\u1e3f': 833, u'\u1e40': 916, u'\u1e41': 833, u'\u1e42': 916, u'\u1e43': 833, u'\u1e44': 750, u'\u1e45': 555, u'\u1e46': 750, u'\u1e47': 555, u'\u1e48': 750, u'\u1e49': 555, u'\u1e4a': 750, u'\u1e4b': 555, u'\u1e54': 680, u'\u1e55': 555, u'\u1e56': 680, u'\u1e57': 555, u'\u1e58': 736, u'\u1e59': 391, u'\u1e5a': 736, u'\u1e5b': 391, u'\u1e5c': 736, u'\u1e5d': 391, u'\u1e5e': 736, u'\u1e5f': 391, u'\u1e60': 555, u'\u1e61': 394, u'\u1e62': 555, u'\u1e63': 394, u'\u1e68': 555, u'\u1e69': 394, u'\u1e6a': 722, u'\u1e6b': 388, u'\u1e6c': 722, u'\u1e6d': 388, u'\u1e6e': 722, u'\u1e6f': 388, u'\u1e70': 722, u'\u1e71': 388, u'\u1e72': 750, u'\u1e73': 555, u'\u1e74': 750, u'\u1e75': 555, u'\u1e76': 750, u'\u1e77': 555, u'\u1e7c': 750, u'\u1e7d': 527, u'\u1e7e': 750, u'\u1e7f': 527, u'\u1e80': 1027, u'\u1e81': 722, u'\u1e82': 1027, u'\u1e83': 722, u'\u1e84': 1027, u'\u1e85': 722, u'\u1e86': 1027, u'\u1e87': 722, u'\u1e88': 1027, u'\u1e89': 722, u'\u1e8a': 750, u'\u1e8b': 527, u'\u1e8c': 750, u'\u1e8d': 527, u'\u1e8e': 750, u'\u1e8f': 527, u'\u1e90': 611, u'\u1e91': 444, u'\u1e92': 611, u'\u1e93': 444, u'\u1e94': 611, u'\u1e95': 444, u'\u1e96': 555, u'\u1e97': 388, u'\u1e98': 722, u'\u1e99': 527, u'\u1e9b': 305, u'\u1ea0': 750, u'\u1ea1': 500, u'\u1ea2': 750, u'\u1ea3': 500, u'\u1ea4': 750, u'\u1ea5': 500, u'\u1ea6': 750, u'\u1ea7': 500, u'\u1ea8': 750, u'\u1ea9': 500, u'\u1eaa': 750, u'\u1eab': 500, u'\u1eac': 750, u'\u1ead': 500, u'\u1eae': 750, u'\u1eaf': 500, u'\u1eb0': 750, u'\u1eb1': 500, u'\u1eb2': 750, u'\u1eb3': 500, u'\u1eb4': 750, u'\u1eb5': 500, u'\u1eb6': 750, u'\u1eb7': 500, u'\u1eb8': 680, u'\u1eb9': 444, u'\u1eba': 680, u'\u1ebb': 444, u'\u1ebc': 680, u'\u1ebd': 444, u'\u1ebe': 680, u'\u1ebf': 444, u'\u1ec0': 680, u'\u1ec1': 444, u'\u1ec2': 680, u'\u1ec3': 444, u'\u1ec4': 680, u'\u1ec5': 444, u'\u1ec6': 680, u'\u1ec7': 444, u'\u1ec8': 361, u'\u1ec9': 277, u'\u1eca': 361, u'\u1ecb': 277, u'\u1ecc': 777, u'\u1ecd': 500, u'\u1ece': 777, u'\u1ecf': 500, u'\u1ed0': 778, u'\u1ed1': 500, u'\u1ed2': 778, u'\u1ed3': 500, u'\u1ed4': 778, u'\u1ed5': 500, u'\u1ed6': 778, u'\u1ed7': 500, u'\u1ed8': 777, u'\u1ed9': 500, u'\u1eda': 778, u'\u1edb': 500, u'\u1edc': 778, u'\u1edd': 500, u'\u1ede': 778, u'\u1edf': 500, u'\u1ee0': 778, u'\u1ee1': 500, u'\u1ee2': 778, u'\u1ee3': 500, u'\u1ee4': 750, u'\u1ee5': 555, u'\u1ee6': 750, u'\u1ee7': 555, u'\u1ee8': 750, u'\u1ee9': 555, u'\u1eea': 750, u'\u1eeb': 555, u'\u1eec': 750, u'\u1eed': 555, u'\u1eee': 750, u'\u1eef': 555, u'\u1ef0': 750, u'\u1ef1': 555, u'\u1ef2': 750, u'\u1ef3': 527, u'\u1ef4': 750, u'\u1ef5': 527, u'\u1ef6': 750, u'\u1ef7': 527, u'\u1ef8': 750, u'\u1ef9': 527, u'\u1f00': 500, u'\u1f01': 500, u'\u1f02': 500, u'\u1f03': 500, u'\u1f04': 500, u'\u1f05': 500, u'\u1f06': 500, u'\u1f07': 500, u'\u1f08': 833, u'\u1f09': 805, u'\u1f0a': 945, u'\u1f0b': 945, u'\u1f0c': 945, u'\u1f0d': 945, u'\u1f0e': 972, u'\u1f0f': 972, u'\u1f10': 430, u'\u1f11': 430, u'\u1f12': 430, u'\u1f13': 430, u'\u1f14': 430, u'\u1f15': 430, u'\u1f18': 902, u'\u1f19': 902, u'\u1f1a': 958, u'\u1f1b': 958, u'\u1f1c': 958, u'\u1f1d': 958, u'\u1f20': 500, u'\u1f21': 500, u'\u1f22': 500, u'\u1f23': 500, u'\u1f24': 500, u'\u1f25': 500, u'\u1f26': 500, u'\u1f27': 500, u'\u1f28': 972, u'\u1f29': 972, u'\u1f2a': 1028, u'\u1f2b': 1028, u'\u1f2c': 1028, u'\u1f2d': 1028, u'\u1f2e': 1083, u'\u1f2f': 1083, u'\u1f30': 250, u'\u1f31': 250, u'\u1f32': 250, u'\u1f33': 250, u'\u1f34': 250, u'\u1f35': 250, u'\u1f36': 250, u'\u1f37': 250, u'\u1f38': 583, u'\u1f39': 583, u'\u1f3a': 639, u'\u1f3b': 639, u'\u1f3c': 639, u'\u1f3d': 639, u'\u1f3e': 694, u'\u1f3f': 694, u'\u1f40': 528, u'\u1f41': 528, u'\u1f42': 528, u'\u1f43': 528, u'\u1f44': 528, u'\u1f45': 528, u'\u1f48': 944, u'\u1f49': 944, u'\u1f4a': 1028, u'\u1f4b': 1028, u'\u1f4c': 1028, u'\u1f4d': 1028, u'\u1f50': 500, u'\u1f51': 500, u'\u1f52': 500, u'\u1f53': 500, u'\u1f54': 500, u'\u1f55': 500, u'\u1f56': 500, u'\u1f57': 500, u'\u1f59': 1000, u'\u1f5b': 1056, u'\u1f5d': 1056, u'\u1f5f': 1111, u'\u1f60': 667, u'\u1f61': 667, u'\u1f62': 667, u'\u1f63': 667, u'\u1f64': 667, u'\u1f65': 667, u'\u1f66': 667, u'\u1f67': 667, u'\u1f68': 916, u'\u1f69': 916, u'\u1f6a': 1000, u'\u1f6b': 1000, u'\u1f6c': 1000, u'\u1f6d': 1000, u'\u1f6e': 1055, u'\u1f6f': 1055, u'\u1f70': 500, u'\u1f71': 500, u'\u1f72': 430, u'\u1f73': 430, u'\u1f74': 500, u'\u1f75': 500, u'\u1f76': 250, u'\u1f77': 250, u'\u1f78': 528, u'\u1f79': 528, u'\u1f7a': 500, u'\u1f7b': 500, u'\u1f7c': 667, u'\u1f7d': 667, u'\u1f80': 500, u'\u1f81': 500, u'\u1f82': 500, u'\u1f83': 500, u'\u1f84': 500, u'\u1f85': 500, u'\u1f86': 500, u'\u1f87': 500, u'\u1f88': 833, u'\u1f89': 805, u'\u1f8a': 945, u'\u1f8b': 945, u'\u1f8c': 945, u'\u1f8d': 945, u'\u1f8e': 972, u'\u1f8f': 972, u'\u1f90': 500, u'\u1f91': 500, u'\u1f92': 500, u'\u1f93': 500, u'\u1f94': 500, u'\u1f95': 500, u'\u1f96': 500, u'\u1f97': 500, u'\u1f98': 972, u'\u1f99': 972, u'\u1f9a': 1028, u'\u1f9b': 1028, u'\u1f9c': 1028, u'\u1f9d': 1028, u'\u1f9e': 1083, u'\u1f9f': 1083, u'\u1fa0': 667, u'\u1fa1': 667, u'\u1fa2': 667, u'\u1fa3': 667, u'\u1fa4': 667, u'\u1fa5': 667, u'\u1fa6': 667, u'\u1fa7': 667, u'\u1fa8': 916, u'\u1fa9': 916, u'\u1faa': 1000, u'\u1fab': 1000, u'\u1fac': 1000, u'\u1fad': 1000, u'\u1fae': 1055, u'\u1faf': 1055, u'\u1fb0': 500, u'\u1fb1': 500, u'\u1fb2': 500, u'\u1fb3': 500, u'\u1fb4': 500, u'\u1fb6': 500, u'\u1fb7': 500, u'\u1fb8': 750, u'\u1fb9': 750, u'\u1fba': 806, u'\u1fbb': 750, u'\u1fbc': 957, u'\u1fbd': 222, u'\u1fbe': 222, u'\u1fbf': 222, u'\u1fc0': 333, u'\u1fc1': 444, u'\u1fc2': 500, u'\u1fc3': 500, u'\u1fc4': 500, u'\u1fc6': 500, u'\u1fc7': 500, u'\u1fc8': 847, u'\u1fc9': 847, u'\u1fca': 917, u'\u1fcb': 917, u'\u1fcc': 946, u'\u1fcd': 278, u'\u1fce': 278, u'\u1fcf': 333, u'\u1fd0': 250, u'\u1fd1': 250, u'\u1fd2': 250, u'\u1fd3': 250, u'\u1fd6': 250, u'\u1fd7': 250, u'\u1fd8': 361, u'\u1fd9': 361, u'\u1fda': 528, u'\u1fdb': 528, u'\u1fdd': 278, u'\u1fde': 278, u'\u1fdf': 333, u'\u1fe0': 500, u'\u1fe1': 500, u'\u1fe2': 500, u'\u1fe3': 500, u'\u1fe4': 472, u'\u1fe5': 472, u'\u1fe6': 500, u'\u1fe7': 500, u'\u1fe8': 778, u'\u1fe9': 778, u'\u1fea': 945, u'\u1feb': 945, u'\u1fec': 902, u'\u1fed': 278, u'\u1fee': 278, u'\u1fef': 167, u'\u1ff2': 667, u'\u1ff3': 667, u'\u1ff4': 667, u'\u1ff6': 667, u'\u1ff7': 667, u'\u1ff8': 889, u'\u1ff9': 861, u'\u1ffa': 861, u'\u1ffb': 805, u'\u1ffc': 940, u'\u1ffd': 167, u'\u1ffe': 222, u'\u2000': 500, u'\u2001': 1000, u'\u2002': 500, u'\u2003': 1000, u'\u2004': 333, u'\u2005': 250, u'\u2006': 167, u'\u2007': 500, u'\u2008': 278, u'\u2009': 200, u'\u200a': 28, u'\u200b': 0, u'\u200c': 0, u'\u200d': 0, u'\u2010': 333, u'\u2011': 333, u'\u2012': 500, u'\u2013': 500, u'\u2014': 1000, u'\u2016': 500, u'\u2018': 278, u'\u2019': 278, u'\u201a': 278, u'\u201b': 278, u'\u201c': 333, u'\u201d': 333, u'\u201e': 333, u'\u201f': 333, u'\u2020': 444, u'\u2021': 444, u'\u2022': 500, u'\u2026': 834, u'\u2029': 472, u'\u2030': 1166, u'\u2031': 1513, u'\u2039': 444, u'\u203a': 444, u'\u203b': 629, u'\u203d': 472, u'\u203f': 333, u'\u2040': 500, u'\u2044': 500, u'\u2045': 361, u'\u2046': 361, u'\u2052': 500, u'\u2054': 333, u'\u207f': 333, u'\u2080': 389, u'\u20a1': 722, u'\u20a4': 639, u'\u20a6': 778, u'\u20a9': 1028, u'\u20ab': 555, u'\u20ac': 722, u'\u20b2': 785, u'\u2103': 944, u'\u2116': 916, u'\u2117': 1111, u'\u211e': 736, u'\u2120': 667, u'\u2122': 667, u'\u2126': 722, u'\u2127': 722, u'\u212e': 676, u'\u2190': 1000, u'\u2191': 500, u'\u2192': 1000, u'\u2193': 500, u'\u2197': 778, u'\u2198': 778, u'\u2206': 833, u'\u2212': 778, u'\u2217': 500, u'\u221a': 472, u'\u22c6': 500, u'\u2322': 778, u'\u2329': 389, u'\u232a': 389, u'\u2422': 555, u'\u2423': 500, u'\u2502': 278, u'\u2551': 500, u'\u25cb': 1111, u'\u25e6': 500, u'\u262d': 700, u'\u2640': 500, u'\u266a': 611, u'\u26ad': 500, u'\u26ae': 500, u'\u26b2': 500, u'\u271d': 500, u'\u2c71': 587, u'\u2e18': 472, u'\u301a': 403, u'\u301b': 403, u'\ua46a': 750, u'\ua46b': 542, u'\ua640': 611, u'\ua641': 444, u'\ua648': 722, u'\ua649': 555, u'\ua656': 1028, u'\ua657': 764, u'\ua71b': 444, u'\ua71c': 444, u'\ua727': 528, u'\ua72d': 500, u'\ua730': 474, u'\ua735': 722, u'\ueff5': 500, u'\uf100': 555, u'\uf101': 555, u'\uf102': 389, u'\uf103': 1111, u'\uf104': 667, u'\uf105': 278, u'\uf106': 500, u'\uf107': 500, u'\uf108': 1000, u'\uf109': 611, u'\uf10a': 167, u'\uf10b': 611, u'\uf10c': 611, u'\uf10d': 500, u'\uf10e': 500, u'\uf10f': 694, u'\uf111': 1111, u'\uf112': 500, u'\uf113': 805, u'\uf114': 167, u'\uf115': 555, u'\uf116': 555, u'\uf117': 278, u'\uf118': 555, u'\uf119': 444, u'\uf11a': 778, u'\uf11b': 555, u'\uf11c': 778, u'\uf11d': 916, u'\uf11e': 680, u'\uf121': 555, u'\uf122': 667, u'\uf123': 555, u'\uf126': 625, u'\uf127': 722, u'\uf128': 430, u'\uf129': 444, u'\uf12a': 916, u'\uf12b': 680, u'\uf12c': 667, u'\uf12d': 555, u'\uf12e': 778, u'\uf12f': 555, u'\uf130': 750, u'\uf131': 750, u'\uf132': 722, u'\uf133': 750, u'\uf134': 639, u'\uf135': 500, u'\uf136': 417, u'\uf137': 139, u'\uf138': 194, u'\uf139': 389, u'\uf13a': 389, u'\uf13b': 500, u'\uf13c': 500, u'\uf13d': 667, u'\uf13e': 833, u'\uf13f': 722, u'\uf140': 519, u'\uf141': 500, u'\uf142': 500, u'\uf143': 444, u'\uf144': 444, u'\uf145': 333, u'\uf146': 222, u'\uf147': 528, u'\uf148': 528, u'\uf149': 458, u'\uf14a': 528, u'\uf14b': 333, u'\uf14c': 333, u'\uf14d': 333, u'\uf14e': 333, u'\uf14f': 333, u'\uf150': 333, u'\uf151': 333, u'\uf152': 333, u'\uf153': 333, u'\uf154': 222, u'\uf155': 222, u'\uf156': 222, u'\uf157': 222, u'\uf158': 222, u'\uf159': 222, u'\uf15a': 222, u'\uf15b': 222, u'\uf15c': 222, u'\uf15f': 500, u'\uf160': 500, u'\uf161': 500, u'\uf162': 500, u'\uf163': 500, u'\uf164': 500, u'\uf165': 333, u'\uf166': 528, u'\uf167': 533, u'\uf168': 722, u'\uf169': 611, u'\uf16a': 519, u'\uf16b': 278, u'\uf16c': 306, u'\uf16d': 333, u'\uf16e': 222, u'\uf16f': 222, u'\uf170': 278, u'\uf171': 300, u'\uf172': 444, u'\uf173': 500, u'\uf174': 500, u'\uf175': 556, u'\uf177': 528, u'\uf178': 444, u'\uf179': 500, u'\uf17a': 444, u'\uf17b': 736, u'\uf17c': 667, u'\uf17d': 556, u'\uf17e': 556, u'\uf17f': 556, u'\uf180': 556, u'\uf182': 350, u'\uf183': 333, u'\uf184': 833, u'\uf185': 667, u'\uf187': 850, u'\uf188': 611, u'\uf189': 583, u'\uf18a': 556, u'\uf18b': 389, u'\uf18c': 500, u'\uf18d': 500, u'\uf18e': 500, u'\uf18f': 500, u'\uf190': 444, u'\uf191': 556, u'\uf192': 392, u'\uf193': 556, u'\uf194': 556, u'\uf195': 556, u'\uf196': 556, u'\uf197': 500, u'\uf198': 500, u'\uf199': 444, u'\uf19a': 547, u'\uf19b': 727, u'\uf19c': 597, u'\uf19e': 566, u'\uf19f': 455, u'\uf1a0': 558, u'\uf1a1': 547, u'\uf1a3': 500, u'\uf1a4': 500, u'\uf1a6': 500, u'\uf1a7': 222, u'\uf1a8': 222, u'\uf1a9': 500, u'\uf1aa': 500, u'\uf1ab': 278, u'\uf1ac': 278, u'\uf1ad': 500, u'\uf1ae': 500, u'\uf1af': 500, u'\uf1b0': 556, u'\uf1b1': 555, u'\uf1b2': 500, u'\uf1b3': 500, u'\uf1b4': 1111, u'\uf1b5': 1111, u'\uf1b6': 1046, u'\uf1b7': 802, u'\uf1b8': 1024, u'\uf1b9': 1313, u'\uf1ba': 1535, u'\uf1bb': 613, u'\uf1bc': 613, u'\uf1bd': 591, u'\uf1be': 591, u'\uf1bf': 624, u'\uf1c0': 558, u'\uf1c1': 558, u'\uf1c2': 641, u'\uf1c3': 513, u'\uf1c4': 513, u'\uf1c5': 613, u'\uf1c6': 613, u'\uf1c7': 647, u'\uf1c8': 635, u'\uf1c9': 602, u'\uf1ca': 602, u'\uf1cb': 458, u'\uf1cc': 458, u'\uf1cd': 591, u'\uf1ce': 591, u'\uf1cf': 613, u'\uf1d0': 613, u'\uf1d1': 502, u'\uf1d2': 502, u'\uf1d3': 702, u'\uf1d4': 902, u'\uf1d5': 613, u'\uf1d6': 580, u'\uf1d7': 580, u'\uf1d8': 513, u'\uf1d9': 635, u'\uf1da': 558, u'\uf1db': 969, u'\uf1dc': 502, u'\uf1dd': 635, u'\uf1de': 635, u'\uf1df': 635, u'\uf1e0': 635, u'\uf1e1': 746, u'\uf1e2': 635, u'\uf1e3': 635, u'\uf1e4': 635, u'\uf1e5': 558, u'\uf1e6': 591, u'\uf1e7': 591, u'\uf1e8': 613, u'\uf1e9': 680, u'\uf1ea': 613, u'\uf1eb': 635, u'\uf1ec': 635, u'\uf1ed': 913, u'\uf1ee': 913, u'\uf1ef': 724, u'\uf1f0': 791, u'\uf1f1': 580, u'\uf1f2': 591, u'\uf1f3': 913, u'\uf1f4': 635, u'\uf1f5': 558, u'\uf1f6': 558, u'\uf1f7': 702, u'\uf1f8': 513, u'\uf1f9': 591, u'\uf1fa': 458, u'\uf1fb': 302, u'\uf1fc': 302, u'\uf1fd': 424, u'\uf1fe': 880, u'\uf1ff': 880, u'\uf200': 624, u'\uf201': 635, u'\uf202': 635, u'\uf203': 613, u'\uf204': 635, u'\uf205': 813, u'\uf206': 669, u'\uf207': 869, u'\uf208': 758, u'\uf209': 1024, u'\uf20a': 835, u'\uf20b': 1102, u'\uf20c': 458, u'\uf20d': 635, u'\uf20e': 635, u'\uf20f': 669, u'\uf210': 669, u'\uf212': 769, u'\uf213': 813, u'\uf214': 813, u'\uf215': 591, u'\uf216': 635, u'\uf217': 669, u'\uf218': 558, u'\uf219': 524, u'\uf21a': 513, u'\uf21b': 580, u'\uf21c': 969, u'\uf21d': 502, u'\uf21e': 635, u'\uf21f': 702, u'\uf220': 635, u'\uf221': 780, u'\uf222': 635, u'\uf223': 780, u'\uf224': 880, u'\uf225': 635, u'\uf226': 591, u'\uf227': 591, u'\uf228': 613, u'\uf229': 613, u'\uf22a': 613, u'\uf22b': 802, u'\uf22c': 635, u'\uf22d': 635, u'\uf22e': 635, u'\uf22f': 692, u'\uf230': 692, u'\uf231': 969, u'\uf232': 635, u'\uf233': 635, u'\uf234': 635, u'\uf235': 635, u'\uf236': 635, u'\uf237': 746, u'\uf238': 613, u'\uf239': 613, u'\uf23a': 735, u'\uf23b': 558, u'\uf23c': 556, u'\uf23d': 591, u'\uf23e': 969, u'\uf23f': 502, u'\uf240': 458, u'\uf241': 635, u'\uf242': 635, u'\uf243': 635, u'\uf244': 635, u'\uf245': 635, u'\uf246': 591, u'\uf247': 613, u'\uf248': 613, u'\uf249': 613, u'\uf24a': 635, u'\uf24b': 791, u'\uf24c': 778, u'\uf24d': 500, u'\uf24e': 500, u'\uf25c': 764, u'\uf25d': 555, u'\uf25e': 750, u'\uf25f': 750, u'\uf260': 750, u'\uf261': 750, u'\uf262': 750, u'\uf263': 680, u'\uf264': 680, u'\uf265': 680, u'\uf266': 361, u'\uf267': 361, u'\uf268': 500, u'\uf269': 500, u'\uf26a': 500, u'\uf26b': 500, u'\uf26c': 500, u'\uf26d': 444, u'\uf26e': 444, u'\uf26f': 444, u'\uf270': 277, u'\uf271': 277, u'\uf272': 777, u'\uf273': 777, u'\uf274': 777, u'\uf275': 777, u'\uf276': 750, u'\uf277': 750, u'\uf278': 750, u'\uf279': 750, u'\uf27a': 500, u'\uf27b': 500, u'\uf27c': 500, u'\uf27d': 500, u'\uf27e': 555, u'\uf27f': 555, u'\uf280': 527, u'\uf281': 527, u'\uf282': 278, u'\uf283': 500, u'\uf284': 1179, u'\uf285': 1179, u'\uf286': 1235, u'\uf287': 1235, u'\uf288': 1235, u'\uf289': 1235, u'\uf28a': 1290, u'\uf28b': 1290, u'\uf28c': 1168, u'\uf28d': 1168, u'\uf28e': 1224, u'\uf28f': 1224, u'\uf290': 1224, u'\uf291': 1224, u'\uf292': 1279, u'\uf293': 1279, u'\uf294': 1162, u'\uf295': 1162, u'\uf296': 1218, u'\uf297': 1218, u'\uf298': 1218, u'\uf299': 1218, u'\uf29a': 1273, u'\uf29b': 1273, u'\uf29c': 278, u'\uf29d': 500, u'\uf29e': 500, u'\uf29f': 500, u'\uf2a0': 500, u'\uf2a1': 680, u'\uf2a4': 778, u'\uf2a6': 361, u'\uf2a7': 778, u'\uf2a8': 1122, u'\uf2a9': 500, u'\uf2ac': 555, u'\uf2ae': 555, u'\uf2af': 778, u'\uf460': 750, u'\uf461': 680, u'\uf462': 778, u'\uf463': 777, u'\uf464': 750, u'\uf465': 972, u'\uf466': 722, u'\uf467': 1125, u'\uf468': 778, u'\uf46a': 500, u'\uf46b': 444, u'\uf46c': 555, u'\uf46d': 500, u'\uf46e': 528, u'\uf46f': 722, u'\uf470': 444, u'\uf471': 750, u'\uf472': 542, u'\uf500': 611, u'\uf501': 500, u'\uf502': 611, u'\uf503': 472, u'\uf504': 500, u'\uf505': 500, u'\uf506': 611, u'\uf507': 500, u'\uf508': 250, u'\uf509': 611, u'\uf50a': 555, u'\uf50b': 667, u'\uf50c': 528, u'\uf50d': 528, u'\uf50e': 555, u'\uf50f': 569, u'\uf510': 500, u'\uf512': 472, u'\uf513': 500, u'\uf514': 500, u'\uf515': 500, u'\uf516': 555, u'\uf517': 583, u'\uf518': 555, u'\uf519': 250, u'\uf51a': 500, u'\uf51b': 774, u'\uf51c': 781, u'\uf51d': 720, u'\uf51e': 111, u'\uf51f': 555, u'\uf6c9': 500, u'\uf6ce': 500, u'\uf6cf': 500, u'\uf6d0': 500, u'\uf6d3': 500, u'\uf6d4': 500, u'\uf6d5': 500, u'\uf6d6': 500, u'\uf6de': 750, u'\uf6f9': 513, u'\uf6fa': 824, u'\uf6fd': 458, u'\uf6ff': 502, u'\uf724': 611, u'\uf730': 500, u'\uf731': 500, u'\uf732': 500, u'\uf733': 500, u'\uf734': 500, u'\uf735': 500, u'\uf736': 500, u'\uf737': 500, u'\uf738': 500, u'\uf739': 500, u'\uf761': 613, u'\uf762': 580, u'\uf763': 591, u'\uf764': 624, u'\uf765': 558, u'\uf766': 535, u'\uf767': 641, u'\uf768': 613, u'\uf769': 302, u'\uf76a': 424, u'\uf76b': 635, u'\uf76c': 513, u'\uf76d': 746, u'\uf76e': 613, u'\uf76f': 635, u'\uf770': 558, u'\uf771': 635, u'\uf772': 602, u'\uf773': 458, u'\uf774': 591, u'\uf775': 613, u'\uf776': 613, u'\uf777': 835, u'\uf778': 613, u'\uf779': 613, u'\uf77a': 502, u'\uf7a2': 500, u'\uf7e0': 613, u'\uf7e1': 613, u'\uf7e2': 613, u'\uf7e3': 613, u'\uf7e4': 613, u'\uf7e5': 613, u'\uf7e6': 735, u'\uf7e7': 591, u'\uf7e8': 558, u'\uf7e9': 558, u'\uf7ea': 558, u'\uf7eb': 558, u'\uf7ec': 302, u'\uf7ed': 302, u'\uf7ee': 302, u'\uf7ef': 302, u'\uf7f0': 624, u'\uf7f1': 613, u'\uf7f2': 635, u'\uf7f3': 635, u'\uf7f4': 635, u'\uf7f5': 635, u'\uf7f6': 635, u'\uf7f8': 635, u'\uf7f9': 613, u'\uf7fa': 613, u'\uf7fb': 613, u'\uf7fc': 613, u'\uf7fd': 613, u'\uf7fe': 513, u'\uf7ff': 613, u'\ufb00': 583, u'\ufb01': 555, u'\ufb02': 555, u'\ufb03': 833, u'\ufb04': 833, u'\ufe66': 333, u'\U00010144': 833, u'\U00010145': 833, u'\U00010146': 833, u'\U00010147': 833, u'\U0001d703': 442} ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.558612 pybtex-0.24.0/pybtex/charwidths/make_charwidths.py0000755000175000001440000001064400000000000022051 0ustar00agusers00000000000000#!/usr/bin/env python # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """ Make a table of character widths to use with bibtex width$ function. """ from __future__ import print_function, unicode_literals import six def make_table(font_filename, output): import sys from datetime import datetime from freetype import Face from pprint import pformat font_face = Face(font_filename) date = datetime.now().strftime('%Y-%m-%d') cmd = ' '.join(sys.argv) charwidths = extract_widths(font_face) print('# vim:fileencoding=utf8', file=output) print(file=output) print('# GENERATED FILE - DO NOT EDIT.', file=output) print('# Generated by {0}'.format(cmd), file=output) print('# Date: {0}'.format(date), file=output) print('# Font family: {0}'.format(font_face.family_name), file=output) print('# Font style: {0}'.format(font_face.style_name), file=output) print('# Font version: {0}'.format(get_font_version(font_face)), file=output) print(file=output) print('charwidths = {0}'.format(pformat(charwidths)), file=output) def get_font_version(font_face): from freetype import TT_NAME_ID_VERSION_STRING for i in range(font_face.sfnt_name_count): name = font_face.get_sfnt_name(i) if name.name_id == TT_NAME_ID_VERSION_STRING: return name.string return 'unknown' def extract_widths(font_face): widths = dict(iter_charwidths(font_face)) widths.update(bibtex_widths) return widths def iter_charwidths(font_face): from freetype import FT_LOAD_NO_SCALE font_face.set_char_size(10*64) charcode, gindex = font_face.get_first_char() while gindex: font_face.load_glyph(gindex, FT_LOAD_NO_SCALE) yield six.unichr(charcode), font_face.glyph.metrics.horiAdvance charcode, gindex = font_face.get_next_char(charcode, gindex) bibtex_widths = { ' ': 278, '!': 278, '"': 500, '#': 833, '$': 500, '%': 833, '&': 778, "'": 278, '(': 389, ')': 389, '*': 500, '+': 778, ',': 278, '-': 333, '.': 278, '/': 500, '0': 500, '1': 500, '2': 500, '3': 500, '4': 500, '5': 500, '6': 500, '7': 500, '8': 500, '9': 500, ':': 278, ';': 278, '<': 278, '=': 778, '>': 472, '?': 472, '@': 778, 'A': 750, 'B': 708, 'C': 722, 'D': 764, 'E': 681, 'F': 653, 'G': 785, 'H': 750, 'I': 361, 'J': 514, 'K': 778, 'L': 625, 'M': 917, 'N': 750, 'O': 778, 'P': 681, 'Q': 778, 'R': 736, 'S': 556, 'T': 722, 'U': 750, 'V': 750, 'W': 1028, 'X': 750, 'Y': 750, 'Z': 611, '[': 278, '\\': 500, ']': 278, '^': 500, '_': 278, '`': 278, 'a': 500, 'b': 556, 'c': 444, 'd': 556, 'e': 444, 'f': 306, 'g': 500, 'h': 556, 'i': 278, 'j': 306, 'k': 528, 'l': 278, 'm': 833, 'n': 556, 'o': 500, 'p': 556, 'q': 528, 'r': 392, 's': 394, 't': 389, 'u': 556, 'v': 528, 'w': 722, 'x': 528, 'y': 528, 'z': 444, '{': 500, '|': 1000, '}': 500, '~': 500, } if __name__ == '__main__': import sys if len(sys.argv) != 2: print('Usage: {0} `kpsewhich cmunrm.otf`'.format(sys.argv[0]), file=sys.stderr) sys.exit(1) make_table(sys.argv[1], sys.stdout) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5616121 pybtex-0.24.0/pybtex/cmdline.py0000644000175000001440000001635400000000000016170 0ustar00agusers00000000000000#!/usr/bin/env python # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals import optparse import sys import six from pybtex import __version__, errors from pybtex.plugin import enumerate_plugin_names, find_plugin from pybtex.textutils import add_period def check_plugin(option, option_string, value): return find_plugin(option.plugin_group, value) class PybtexOption(optparse.Option): ATTRS = optparse.Option.ATTRS + ['plugin_group'] TYPES = optparse.Option.TYPES + ('load_plugin',) TYPE_CHECKER = dict(optparse.Option.TYPE_CHECKER, load_plugin=check_plugin) STANDARD_OPTIONS = {} make_option = PybtexOption def make_standard_option(*args, **kwargs): option = make_option(*args, **kwargs) PybtexOption.STANDARD_OPTIONS[option.dest] = option return option def standard_option(name): return PybtexOption.STANDARD_OPTIONS[name] make_standard_option( '--strict', dest='strict', help='turn warnings into errors', action='callback', callback=lambda option, opt, value, parser: errors.set_strict_mode(True) ) make_standard_option( '-f', '--bibliography-format', dest='bib_format', help='bibliograpy format (%plugin_choices)', type='load_plugin', plugin_group='pybtex.database.input', metavar='FORMAT', ) make_standard_option( '-b', '--output-backend', dest='output_backend', help='output backend (%plugin_choices)', type='load_plugin', plugin_group='pybtex.backends', metavar='BACKEND', ) make_standard_option( '--min-crossrefs', type='int', dest='min_crossrefs', help='include item after NUMBER crossrefs; default 2', metavar='NUMBER', ) make_standard_option( '--keyless-bibtex-entries', action='store_true', dest='keyless_entries', help='allow BibTeX entries without keys and generate unnamed- keys for them' ) make_standard_option( '-s', '--style', type='string', dest='style', help='bibliography formatting style', ) make_standard_option( '--label-style', dest='label_style', help='label formatting style (%plugin_choices)', type='load_plugin', plugin_group='pybtex.style.labels', metavar='STYLE', ) make_standard_option( '--name-style', dest='name_style', help='name formatting style (%plugin_choices)', type='load_plugin', plugin_group='pybtex.style.names', metavar='STYLE', ) make_standard_option( '--sorting-style', dest='sorting_style', help='sorting style (%plugin_choices)', type='load_plugin', plugin_group='pybtex.style.sorting', metavar='STYLE', ) make_standard_option( '--abbreviate-names', action='store_true', dest='abbreviate_names', help='use abbreviated name formatting style', ) make_standard_option( '-e', '--encoding', action='store', type='string', dest='encoding', help='default encoding', metavar='ENCODING', ) make_standard_option( '--input-encoding', action='store', type='string', dest='input_encoding', metavar='ENCODING', ) make_standard_option( '--output-encoding', action='store', type='string', dest='output_encoding', metavar='ENCODING', ) BaseHelpFormatter = optparse.IndentedHelpFormatter class PybtexHelpFormatter(BaseHelpFormatter): def get_plugin_choices(self, plugin_group): return ', '.join(sorted(enumerate_plugin_names(plugin_group))) def expand_default(self, option): result = BaseHelpFormatter.expand_default(self, option) if option.plugin_group: plugin_choices = self.get_plugin_choices(option.plugin_group) result = result.replace('%plugin_choices', plugin_choices) return result class CommandLine(object): options = () option_defaults = None legacy_options = () prog = None args = None description = '' num_args = 0 def __init__(self): self.opt_parser = self.make_option_parser() def __call__(self): from pybtex.exceptions import PybtexError try: self.main() except PybtexError as error: errors.print_error(error) sys.exit(1) def make_option_parser(self): opt_parser = optparse.OptionParser( prog=self.prog, option_class=PybtexOption, formatter=PybtexHelpFormatter(), usage='%prog ' + self.args, description=add_period(self.description.capitalize()), version='%%prog-%s' % __version__ ) for option_group, option_list in self.options: if option_group is None: container = opt_parser else: container = optparse.OptionGroup(opt_parser, option_group) opt_parser.add_option_group(container) for option in option_list: container.add_option(option) if self.option_defaults: opt_parser.set_defaults(**self.option_defaults) return opt_parser def run(self, options, args): raise NotImplementedError def recognize_legacy_optons(self, args): """Grok some legacy long options starting with a single `-'.""" return [self._replace_legacy_option(arg) for arg in args] def _replace_legacy_option(self, arg): # sys.argv contains byte strings in Python 2 and unicode strings in Python 3 try: # all legacy options are ASCII-only unicode_arg = arg if isinstance(arg, six.text_type) else arg.decode('ASCII') except UnicodeDecodeError: return arg if unicode_arg.split('=', 1)[0] in self.legacy_options: return type(arg)('-') + arg else: return arg def _extract_kwargs(self, options): return dict( (option.dest, getattr(options, option.dest)) for option_group, option_list in self.options for option in option_list ) def main(self): errors.set_strict_mode(False) argv = self.recognize_legacy_optons(sys.argv[1:]) options, args = self.opt_parser.parse_args(argv) if len(args) != self.num_args: self.opt_parser.print_help() sys.exit(1) kwargs = self._extract_kwargs(options) self.run(*args, **kwargs) sys.exit(errors.error_code) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912831.9537141 pybtex-0.24.0/pybtex/database/0000755000175000001440000000000000000000000015736 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5516124 pybtex-0.24.0/pybtex/database/__init__.py0000644000175000001440000007557300000000000020070 0ustar00agusers00000000000000# vim: fileencoding=utf-8 # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals from __future__ import print_function import re try: from collections.abc import Mapping except ImportError: from collections import Mapping import six import textwrap from pybtex.exceptions import PybtexError from pybtex.utils import ( deprecated, OrderedCaseInsensitiveDict, CaseInsensitiveDefaultDict, CaseInsensitiveSet ) from pybtex.richtext import Text from pybtex.bibtex.utils import split_tex_string, scan_bibtex_string from pybtex.errors import report_error from pybtex.py3compat import fix_unicode_literals_in_doctest, python_2_unicode_compatible from pybtex.plugin import find_plugin # for python2 compatibility def indent(text, prefix): if hasattr(textwrap, "indent"): return textwrap.indent(text, prefix) else: return ''.join(prefix + line for line in text.splitlines(True)) class BibliographyDataError(PybtexError): pass class InvalidNameString(PybtexError): def __init__(self, name_string): message = 'Too many commas in {}'.format(repr(name_string)) super(InvalidNameString, self).__init__(message) class BibliographyData(object): def __init__(self, entries=None, preamble=None, wanted_entries=None, min_crossrefs=2): """ A :py:class:`.BibliographyData` object contains a dictionary of bibliography entries referenced by their keys. Each entry represented by an :py:class:`.Entry` object. Additionally, :py:class:`.BibliographyData` may contain a LaTeX preamble defined by ``@PREAMBLE`` commands in the BibTeX file. """ self.entries = OrderedCaseInsensitiveDict() '''A dictionary of bibliography entries referenced by their keys. The dictionary is case insensitive: >>> bib_data = parse_string(""" ... @ARTICLE{gnats, ... author = {L[eslie] A. Aamport}, ... title = {The Gnats and Gnus Document Preparation System}, ... } ... """, 'bibtex') >>> bib_data.entries['gnats'] == bib_data.entries['GNATS'] True ''' self.crossref_count = CaseInsensitiveDefaultDict(int) self.min_crossrefs = min_crossrefs self._preamble = [] if wanted_entries is not None: self.wanted_entries = CaseInsensitiveSet(wanted_entries) self.citations = CaseInsensitiveSet(wanted_entries) else: self.wanted_entries = None self.citations = CaseInsensitiveSet() if entries: if isinstance(entries, Mapping): entries = entries.items() for (key, entry) in entries: self.add_entry(key, entry) if preamble: self._preamble.extend(preamble) def __eq__(self, other): if not isinstance(other, BibliographyData): return super(BibliographyData, self) == other return ( self.entries == other.entries and self._preamble == other._preamble ) def __repr__(self): repr_entry = repr(self.entries) keys = self.entries.keys() for key in keys: ind = repr_entry.index(key) - 2 # find first instance repr_entry = repr_entry[:ind] + "\n" + repr_entry[ind:] repr_entry = indent(repr_entry, prefix=" ") repr_entry = repr_entry[4:] # drop 1st indent return ( "BibliographyData(\n" " entries={0},\n\n" " preamble={1})".format(repr_entry, repr(self._preamble)) ) def add_to_preamble(self, *values): self._preamble.extend(values) @property def preamble(self): r''' LaTeX preamble. >>> bib_data = parse_string(r""" ... @PREAMBLE{"\newcommand{\noopsort}[1]{}"} ... """, 'bibtex') >>> print(bib_data.preamble) \newcommand{\noopsort}[1]{} .. versionadded:: 0.19 Earlier versions used :py:meth:`.get_preamble()`, which is now deprecated. ''' return ''.join(self._preamble) @deprecated('0.19', 'use BibliographyData.preamble instead') def get_preamble(self): """ .. deprecated:: 0.19 Use :py:attr:`.preamble` instead. """ return self.preamble def want_entry(self, key): return ( self.wanted_entries is None or key in self.wanted_entries or '*' in self.wanted_entries ) def get_canonical_key(self, key): if key in self.citations: return self.citations.get_canonical_key(key) else: return key def add_entry(self, key, entry): if not self.want_entry(key): return if key in self.entries: report_error(BibliographyDataError('repeated bibliograhpy entry: %s' % key)) return entry.key = self.get_canonical_key(key) self.entries[entry.key] = entry try: crossref = entry.fields['crossref'] except KeyError: pass else: if self.wanted_entries is not None: self.wanted_entries.add(crossref) def add_entries(self, entries): for key, entry in entries: self.add_entry(key, entry) @fix_unicode_literals_in_doctest def _get_crossreferenced_citations(self, citations, min_crossrefs): r""" Get cititations not cited explicitly but referenced by other citations. >>> from pybtex.database import Entry >>> data = BibliographyData({ ... 'main_article': Entry('article', {'crossref': 'xrefd_arcicle'}), ... 'xrefd_arcicle': Entry('article'), ... }) >>> list(data._get_crossreferenced_citations([], min_crossrefs=1)) [] >>> list(data._get_crossreferenced_citations(['main_article'], min_crossrefs=1)) [u'xrefd_arcicle'] >>> list(data._get_crossreferenced_citations(['Main_article'], min_crossrefs=1)) [u'xrefd_arcicle'] >>> list(data._get_crossreferenced_citations(['main_article'], min_crossrefs=2)) [] >>> list(data._get_crossreferenced_citations(['xrefd_arcicle'], min_crossrefs=1)) [] >>> data2 = BibliographyData(data.entries, wanted_entries=data.entries.keys()) >>> list(data2._get_crossreferenced_citations([], min_crossrefs=1)) [] >>> list(data2._get_crossreferenced_citations(['main_article'], min_crossrefs=1)) [u'xrefd_arcicle'] >>> list(data2._get_crossreferenced_citations(['Main_article'], min_crossrefs=1)) [u'xrefd_arcicle'] >>> list(data2._get_crossreferenced_citations(['main_article'], min_crossrefs=2)) [] >>> list(data2._get_crossreferenced_citations(['xrefd_arcicle'], min_crossrefs=1)) [] >>> list(data2._get_crossreferenced_citations(['xrefd_arcicle'], min_crossrefs=1)) [] """ crossref_count = CaseInsensitiveDefaultDict(int) citation_set = CaseInsensitiveSet(citations) for citation in citations: try: entry = self.entries[citation] crossref = entry.fields['crossref'] except KeyError: continue try: crossref_entry = self.entries[crossref] except KeyError: report_error(BibliographyDataError( 'bad cross-reference: entry "{key}" refers to ' 'entry "{crossref}" which does not exist.'.format( key=citation, crossref=crossref, ) )) continue canonical_crossref = crossref_entry.key crossref_count[canonical_crossref] += 1 if crossref_count[canonical_crossref] >= min_crossrefs and canonical_crossref not in citation_set: citation_set.add(canonical_crossref) yield canonical_crossref @fix_unicode_literals_in_doctest def _expand_wildcard_citations(self, citations): r""" Expand wildcard citations (\citation{*} in .aux file). >>> from pybtex.database import Entry >>> data = BibliographyData(( ... ('uno', Entry('article')), ... ('dos', Entry('article')), ... ('tres', Entry('article')), ... ('cuatro', Entry('article')), ... )) >>> list(data._expand_wildcard_citations([])) [] >>> list(data._expand_wildcard_citations(['*'])) [u'uno', u'dos', u'tres', u'cuatro'] >>> list(data._expand_wildcard_citations(['uno', '*'])) [u'uno', u'dos', u'tres', u'cuatro'] >>> list(data._expand_wildcard_citations(['dos', '*'])) [u'dos', u'uno', u'tres', u'cuatro'] >>> list(data._expand_wildcard_citations(['*', 'uno'])) [u'uno', u'dos', u'tres', u'cuatro'] >>> list(data._expand_wildcard_citations(['*', 'DOS'])) [u'uno', u'dos', u'tres', u'cuatro'] """ citation_set = CaseInsensitiveSet() for citation in citations: if citation == '*': for key in self.entries: if key not in citation_set: citation_set.add(key) yield key else: if citation not in citation_set: citation_set.add(citation) yield citation def add_extra_citations(self, citations, min_crossrefs): expanded_citations = list(self._expand_wildcard_citations(citations)) crossrefs = list(self._get_crossreferenced_citations(expanded_citations, min_crossrefs)) return expanded_citations + crossrefs def to_string(self, bib_format, **kwargs): """ Return the data as a unicode string in the given format. :param bib_format: Data format ("bibtex", "yaml", etc.). .. versionadded:: 0.19 """ writer = find_plugin('pybtex.database.output', bib_format)(**kwargs) return writer.to_string(self) @classmethod def from_string(cls, value, bib_format, **kwargs): """ Return the data from a unicode string in the given format. :param bib_format: Data format ("bibtex", "yaml", etc.). .. versionadded:: 0.22.2 """ return parse_string(value, bib_format, **kwargs) def to_bytes(self, bib_format, **kwargs): """ Return the data as a byte string in the given format. :param bib_format: Data format ("bibtex", "yaml", etc.). .. versionadded:: 0.19 """ writer = find_plugin('pybtex.database.output', bib_format)(**kwargs) return writer.to_bytes(self) def to_file(self, file, bib_format=None, **kwargs): """ Save the data to a file. :param file: A file name or a file-like object. :param bib_format: Data format ("bibtex", "yaml", etc.). If not specified, Pybtex will try to guess by the file name. .. versionadded:: 0.19 """ if isinstance(file, six.string_types): filename = file else: filename = getattr(file, 'name', None) writer = find_plugin('pybtex.database.output', bib_format, filename=filename)(**kwargs) return writer.write_file(self, file) @fix_unicode_literals_in_doctest def lower(self): u''' Return another :py:class:`.BibliographyData` with all identifiers converted to lowercase. >>> data = parse_string(""" ... @BOOK{Obrazy, ... title = "Obrazy z Rus", ... author = "Karel Havlíček Borovský", ... } ... @BOOK{Elegie, ... title = "Tirolské elegie", ... author = "Karel Havlíček Borovský", ... } ... """, 'bibtex') >>> data_lower = data.lower() >>> list(data_lower.entries.keys()) [u'obrazy', u'elegie'] >>> for entry in data_lower.entries.values(): ... entry.key ... list(entry.persons.keys()) ... list(entry.fields.keys()) u'obrazy' [u'author'] [u'title'] u'elegie' [u'author'] [u'title'] ''' entries_lower = ((key.lower(), entry.lower()) for key, entry in self.entries.items()) return type(self)( entries=entries_lower, preamble=self._preamble, wanted_entries=self.wanted_entries, min_crossrefs=self.min_crossrefs, ) class RichFieldProxyDict(Mapping): def __init__(self, fields): self._fields = fields def __contains__(self): return self._fields.__contains__() def __iter__(self): return self._fields.__iter__() def __len__(self): return self._fields.__len__() def __getitem__(self, key): return Text.from_latex(self._fields[key]) class Entry(object): """A bibliography entry.""" type = None """Entry type (``'book'``, ``'article'``, etc.).""" key = None """Entry key (for example, ``'fukushima1980neocognitron'``).""" fields = None """A dictionary of entry fields. The dictionary is ordered and case-insensitive.""" persons = None """ A dictionary of entry persons, by their roles. The most often used roles are ``'author'`` and ``'editor'``. """ """A reference to the containing :py:class:`.BibliographyData` object. Used to resolve crossrefs.""" def __init__(self, type_, fields=None, persons=None): if fields is None: fields = {} if persons is None: persons = {} self.type = type_.lower() self.original_type = type_ self.fields = OrderedCaseInsensitiveDict(fields) self.persons = OrderedCaseInsensitiveDict(persons) def __eq__(self, other): if not isinstance(other, Entry): return super(Entry, self) == other return ( self.type == other.type and self.fields == other.fields and self.persons == other.persons ) def __repr__(self): # represent the fields as a list of tuples for simplicity repr_fields = repr(list(self.fields.items())) keys = self.fields.keys() for key in keys: ind = repr_fields.index(key) - 2 # find first instance repr_fields = repr_fields[:ind] + "\n" + repr_fields[ind:] repr_fields = indent(repr_fields, prefix=" ") repr_fields = repr_fields[4:] # drop 1st indent return ( "Entry({0},\n" " fields={1},\n" " persons={2})".format(repr(self.type), repr_fields, repr(self.persons)) ) def add_person(self, person, role): self.persons.setdefault(role, []).append(person) def lower(self): return type(self)( self.type, fields=self.fields.lower(), persons=self.persons.lower(), ) def _find_person_field(self, role): persons = self.persons[role] return ' and '.join(six.text_type(person) for person in persons) def _find_crossref_field(self, name, bib_data): if bib_data is None or 'crossref' not in self.fields: raise KeyError(name) referenced_entry = bib_data.entries[self.fields['crossref']] return referenced_entry._find_field(name, bib_data) def _find_field(self, name, bib_data=None): """ Find the field with the given ``name`` according to this rules: - If the given field ``name`` in in ``self.fields``, just return self.fields[name]. - Otherwise, if ``name`` is ``"authors"`` or ``"editors"`` (or any other person role), return the list of names as a string, separated by ``" and "``. - Otherwise, if this entry has a ``crossreff`` field, look up for the cross-referenced entry and try to find its field with the given ``name``. """ try: return self.fields[name] except KeyError: try: return self._find_person_field(name) except KeyError: return self._find_crossref_field(name, bib_data) def to_string(self, bib_format, **kwargs): """ Return the data as a unicode string in the given format. :param bib_format: Data format ("bibtex", "yaml", etc.). """ writer = find_plugin('pybtex.database.output', bib_format)(**kwargs) return writer.to_string(BibliographyData(entries={self.key: self})) @classmethod def from_string(cls, value, bib_format, entry_number=0, **kwargs): """ Return the data from a unicode string in the given format. :param bib_format: Data format ("bibtex", "yaml", etc.). :param entry_number: entry number if the string has more than one. .. versionadded:: 0.22.2 """ # get bibliography bibdata = BibliographyData.from_string(value, bib_format, **kwargs) # grab specific instance key = tuple(bibdata.entries.keys())[entry_number] return bibdata.entries[key] @python_2_unicode_compatible @fix_unicode_literals_in_doctest class Person(object): """A person or some other person-like entity. >>> knuth = Person('Donald E. Knuth') >>> knuth.first_names [u'Donald'] >>> knuth.middle_names [u'E.'] >>> knuth.last_names [u'Knuth'] """ first_names = None """ A list of first names. .. versionadded:: 0.19 Earlier versions used :py:meth:`.first`, which is now deprecated. """ middle_names = None """ A list of middle names. .. versionadded:: 0.19 Earlier versions used :py:meth:`.middle`, which is now deprecated. """ prelast_names = None """ A list of pre-last (aka von) name parts. .. versionadded:: 0.19 Earlier versions used :py:meth:`.middle`, which is now deprecated. """ last_names = None """ A list of last names. .. versionadded:: 0.19 Earlier versions used :py:meth:`.last`, which is now deprecated. """ lineage_names = None """ A list of linage (aka Jr) name parts. .. versionadded:: 0.19 Earlier versions used :py:meth:`.lineage`, which is now deprecated. """ valid_roles = ['author', 'editor'] style1_re = re.compile(r'^(.+),\s*(.+)$') style2_re = re.compile(r'^(.+),\s*(.+),\s*(.+)$') def __init__(self, string="", first="", middle="", prelast="", last="", lineage=""): """ :param string: The full name string. It will be parsed and split into separate first, last, middle, pre-last and lineage name parst. Supported name formats are: - von Last, First - von Last, Jr, First - First von Last (see BibTeX manual for explanation) """ self.first_names = [] self.middle_names = [] self.prelast_names = [] self.last_names = [] self.lineage_names = [] string = string.strip() if string: self._parse_string(string) self.first_names.extend(split_tex_string(first)) self.middle_names.extend(split_tex_string(middle)) self.prelast_names.extend(split_tex_string(prelast)) self.last_names.extend(split_tex_string(last)) self.lineage_names.extend(split_tex_string(lineage)) @property @fix_unicode_literals_in_doctest def bibtex_first_names(self): """A list of first and middle names together. (BibTeX treats all middle names as first.) .. versionadded:: 0.19 Earlier versions used :py:meth:`Person.bibtex_first`, which is now deprecated. >>> knuth = Person('Donald E. Knuth') >>> knuth.bibtex_first_names [u'Donald', u'E.'] """ return self.first_names + self.middle_names @fix_unicode_literals_in_doctest def _parse_string(self, name): """Extract various parts of the name from a string. >>> p = Person('Avinash K. Dixit') >>> print(p.first_names) [u'Avinash'] >>> print(p.middle_names) [u'K.'] >>> print(p.prelast_names) [] >>> print(p.last_names) [u'Dixit'] >>> print(p.lineage_names) [] >>> print(six.text_type(p)) Dixit, Avinash K. >>> p == Person(six.text_type(p)) True >>> p = Person('Dixit, Jr, Avinash K. ') >>> print(p.first_names) [u'Avinash'] >>> print(p.middle_names) [u'K.'] >>> print(p.prelast_names) [] >>> print(p.last_names) [u'Dixit'] >>> print(p.lineage_names) [u'Jr'] >>> print(six.text_type(p)) Dixit, Jr, Avinash K. >>> p == Person(six.text_type(p)) True >>> p = Person('abc') >>> print(p.first_names, p.middle_names, p.prelast_names, p.last_names, p.lineage_names) [] [] [] [u'abc'] [] >>> p = Person('Viktorov, Michail~Markovitch') >>> print(p.first_names, p.middle_names, p.prelast_names, p.last_names, p.lineage_names) [u'Michail'] [u'Markovitch'] [] [u'Viktorov'] [] """ def process_first_middle(parts): try: self.first_names.append(parts[0]) self.middle_names.extend(parts[1:]) except IndexError: pass def process_von_last(parts): # von cannot be the last name in the list von_last = parts[:-1] definitely_not_von = parts[-1:] if von_last: von, last = rsplit_at(von_last, is_von_name) self.prelast_names.extend(von) self.last_names.extend(last) self.last_names.extend(definitely_not_von) def find_pos(lst, pred): for i, item in enumerate(lst): if pred(item): return i return i + 1 def split_at(lst, pred): """Split the given list into two parts. The second part starts with the first item for which the given predicate is True. """ pos = find_pos(lst, pred) return lst[:pos], lst[pos:] def rsplit_at(lst, pred): rpos = find_pos(reversed(lst), pred) pos = len(lst) - rpos return lst[:pos], lst[pos:] def is_von_name(string): if string[0].isupper(): return False if string[0].islower(): return True else: for char, brace_level in scan_bibtex_string(string): if brace_level == 0 and char.isalpha(): return char.islower() elif brace_level == 1 and char.startswith('\\'): return special_char_islower(char) return False def special_char_islower(special_char): control_sequence = True for char in special_char[1:]: # skip the backslash if control_sequence: if not char.isalpha(): control_sequence = False else: if char.isalpha(): return char.islower() return False parts = split_tex_string(name, ',') if len(parts) > 3: report_error(InvalidNameString(name)) last_parts = parts[2:] parts = parts[:2] + [' '.join(last_parts)] if len(parts) == 3: # von Last, Jr, First process_von_last(split_tex_string(parts[0])) self.lineage_names.extend(split_tex_string(parts[1])) process_first_middle(split_tex_string(parts[2])) elif len(parts) == 2: # von Last, First process_von_last(split_tex_string(parts[0])) process_first_middle(split_tex_string(parts[1])) elif len(parts) == 1: # First von Last parts = split_tex_string(name) first_middle, von_last = split_at(parts, is_von_name) if not von_last and first_middle: last = first_middle.pop() von_last.append(last) process_first_middle(first_middle) process_von_last(von_last) else: # should hot really happen raise ValueError(name) def __eq__(self, other): if not isinstance(other, Person): return super(Person, self) == other return ( self.first_names == other.first_names and self.middle_names == other.middle_names and self.prelast_names == other.prelast_names and self.last_names == other.last_names and self.lineage_names == other.lineage_names ) def __str__(self): # von Last, Jr, First von_last = ' '.join(self.prelast_names + self.last_names) jr = ' '.join(self.lineage_names) first = ' '.join(self.first_names + self.middle_names) return ', '.join(part for part in (von_last, jr, first) if part) def __repr__(self): return 'Person({0})'.format(repr(six.text_type(self))) def get_part_as_text(self, type): names = getattr(self, type + '_names') return ' '.join(names) @fix_unicode_literals_in_doctest def get_part(self, type, abbr=False): """Get a list of name parts by `type`. >>> knuth = Person('Donald E. Knuth') >>> knuth.get_part('first') [u'Donald'] >>> knuth.get_part('last') [u'Knuth'] """ names = getattr(self, type + '_names') if abbr: import warnings warnings.warn('Person.get_part(abbr=True) is deprecated since 0.19: use pybtex.textutils.abbreviate()', stacklevel=2) from pybtex.textutils import abbreviate names = [abbreviate(name) for name in names] return names @property def rich_first_names(self): """ A list of first names converted to :ref:`rich text `. .. versionadded:: 0.20 """ return [Text.from_latex(name) for name in self.first_names] @property def rich_middle_names(self): """ A list of middle names converted to :ref:`rich text `. .. versionadded:: 0.20 """ return [Text.from_latex(name) for name in self.middle_names] @property def rich_prelast_names(self): """ A list of pre-last (aka von) name parts converted to :ref:`rich text `. .. versionadded:: 0.20 """ return [Text.from_latex(name) for name in self.prelast_names] @property def rich_last_names(self): """ A list of last names converted to :ref:`rich text `. .. versionadded:: 0.20 """ return [Text.from_latex(name) for name in self.last_names] @property def rich_lineage_names(self): """ A list of lineage (aka Jr) name parts converted to :ref:`rich text `. .. versionadded:: 0.20 """ return [Text.from_latex(name) for name in self.lineage_names] @deprecated('0.19', 'use Person.first_names instead') def first(self, abbr=False): """ .. deprecated:: 0.19 Use :py:attr:`.first_names` instead. """ return self.get_part('first', abbr) @deprecated('0.19', 'use Person.middle_names instead') def middle(self, abbr=False): """ .. deprecated:: 0.19 Use :py:attr:`.middle_names` instead. """ return self.get_part('middle', abbr) @deprecated('0.19', 'use Person.prelast_names instead') def prelast(self, abbr=False): """ .. deprecated:: 0.19 Use :py:attr:`.prelast_names` instead. """ return self.get_part('prelast', abbr) @deprecated('0.19', 'use Person.last_names instead') def last(self, abbr=False): """ .. deprecated:: 0.19 Use :py:attr:`.last_names` instead. """ return self.get_part('last', abbr) @deprecated('0.19', 'use Person.lineage_names instead') def lineage(self, abbr=False): """ .. deprecated:: 0.19 Use :py:attr:`.lineage_names` instead. """ return self.get_part('lineage', abbr) @deprecated('0.19', 'use Person.bibtex_first_names instead') def bibtex_first(self): """ .. deprecated:: 0.19 Use :py:attr:`.bibtex_first_names` instead. """ return self.bibtex_first_names def parse_file(file, bib_format=None, **kwargs): """ Read bibliography data from file and return a :py:class:`.BibliographyData` object. :param file: A file name or a file-like object. :param bib_format: Data format ("bibtex", "yaml", etc.). If not specified, Pybtex will try to guess by the file name. .. versionadded:: 0.19 """ if isinstance(file, six.string_types): filename = file else: filename = getattr(file, 'name', None) parser = find_plugin('pybtex.database.input', bib_format, filename=filename)(**kwargs) return parser.parse_file(file) def parse_string(value, bib_format, **kwargs): """ Parse a Unicode string containing bibliography data and return a :py:class:`.BibliographyData` object. :param value: Unicode string. :param bib_format: Data format ("bibtex", "yaml", etc.). .. versionadded:: 0.19 """ parser = find_plugin('pybtex.database.input', bib_format)(**kwargs) return parser.parse_string(value) def parse_bytes(value, bib_format, **kwargs): """ Parse a byte string containing bibliography data and return a :py:class:`.BibliographyData` object. :param value: Byte string. :param bib_format: Data format (for example, "bibtexml"). .. versionadded:: 0.19 """ parser = find_plugin('pybtex.database.input', bib_format)(**kwargs) return parser.parse_bytes(value) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912831.9537141 pybtex-0.24.0/pybtex/database/convert/0000755000175000001440000000000000000000000017416 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5536122 pybtex-0.24.0/pybtex/database/convert/__init__.py0000644000175000001440000000367400000000000021541 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """convert bibliography database from one format to another """ from __future__ import unicode_literals from pybtex.exceptions import PybtexError from pybtex import database class ConvertError(PybtexError): pass def convert( from_filename, to_filename, from_format=None, to_format=None, input_encoding=None, output_encoding=None, parser_options=None, preserve_case=True, **kwargs ): if parser_options is None: parser_options = {} if from_filename == to_filename: raise ConvertError('input and output file can not be the same') bib_data = database.parse_file( from_filename, bib_format=from_format, encoding=input_encoding, **parser_options ) if not preserve_case: bib_data = bib_data.lower() bib_data.to_file(to_filename, bib_format=to_format, encoding=output_encoding) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5546122 pybtex-0.24.0/pybtex/database/convert/__main__.py0000644000175000001440000000625500000000000021520 0ustar00agusers00000000000000#!/usr/bin/env python # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals from pybtex.cmdline import CommandLine, make_option, standard_option class PybtexConvertCommandLine(CommandLine): prog = 'pybtex-convert' args = '[options] in_filename out_filename' description = 'convert between bibliography database formats' long_description = """ pybtex-convert converts bibliography database files between supported formats (currently BibTeX, BibTeXML and YAML). """.strip() num_args = 2 options = ( (None, ( standard_option('strict'), make_option( '-f', '--from', dest='from_format', help='input format (%plugin_choices)', metavar='FORMAT', type='load_plugin', plugin_group='pybtex.database.input', ), make_option( '-t', '--to', dest='to_format', help='output format (%plugin_choices)', metavar='FORMAT', type='load_plugin', plugin_group='pybtex.database.output', ), standard_option('keyless_entries'), make_option( '--preserve-case', dest='preserve_case', action='store_true', help='do not convert identifiers to lower case', ), )), ('Encoding options', ( standard_option('encoding'), standard_option('input_encoding'), standard_option('output_encoding'), )), ) option_defaults = { 'keyless_entries': False, 'preserve_case': False, } def run( self, from_filename, to_filename, encoding, input_encoding, output_encoding, keyless_entries, **options ): from pybtex.database.convert import convert convert( from_filename, to_filename, input_encoding=input_encoding or encoding, output_encoding=output_encoding or encoding, parser_options={'keyless_entries': keyless_entries}, **options ) main = PybtexConvertCommandLine() if __name__ == '__main__': main() ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912831.9537141 pybtex-0.24.0/pybtex/database/format/0000755000175000001440000000000000000000000017226 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5546122 pybtex-0.24.0/pybtex/database/format/__init__.py0000644000175000001440000000433600000000000021345 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """ Format bibliography database as human-readable text. """ from __future__ import unicode_literals from pybtex.plugin import find_plugin from pybtex import database def format_database( from_filename, to_filename, bib_format=None, output_backend=None, input_encoding=None, output_encoding=None, parser_options=None, min_crossrefs=2, style=None, **kwargs ): if parser_options is None: parser_options = {} output_backend = find_plugin('pybtex.backends', output_backend, filename=to_filename) bib_data = database.parse_file( from_filename, encoding=input_encoding, bib_format=bib_format, **parser_options ) style_cls = find_plugin('pybtex.style.formatting', style) style = style_cls( label_style=kwargs.get('label_style'), name_style=kwargs.get('name_style'), sorting_style=kwargs.get('sorting_style'), abbreviate_names=kwargs.get('abbreviate_names'), min_crossrefs=min_crossrefs, ) formatted_bibliography = style.format_bibliography(bib_data) output_backend(output_encoding).write_to_file(formatted_bibliography, to_filename) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5556123 pybtex-0.24.0/pybtex/database/format/__main__.py0000644000175000001440000000552400000000000021326 0ustar00agusers00000000000000#!/usr/bin/env python # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals from pybtex.cmdline import CommandLine, standard_option class PybtexFormatCommandLine(CommandLine): prog = 'pybtex-format' args = '[options] in_filename out_filename' description = 'format bibliography database as human-readable text' long_description = """ pybtex-format formats bibliography database as human-readable text. """.strip() num_args = 2 options = ( (None, ( standard_option('strict'), standard_option('bib_format'), standard_option('output_backend'), standard_option('min_crossrefs'), standard_option('keyless_entries'), standard_option('style'), )), ('Pythonic style options', ( standard_option('label_style'), standard_option('name_style'), standard_option('sorting_style'), standard_option('abbreviate_names'), )), ('Encoding options', ( standard_option('encoding'), standard_option('input_encoding'), standard_option('output_encoding'), )), ) option_defaults = { 'keyless_entries': False, } def run( self, from_filename, to_filename, encoding, input_encoding, output_encoding, keyless_entries, **options ): from pybtex.database.format import format_database format_database( from_filename, to_filename, input_encoding=input_encoding or encoding, output_encoding=output_encoding or encoding, parser_options={'keyless_entries': keyless_entries}, **options ) main = PybtexFormatCommandLine() if __name__ == '__main__': main() ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.954714 pybtex-0.24.0/pybtex/database/input/0000755000175000001440000000000000000000000017075 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5536122 pybtex-0.24.0/pybtex/database/input/__init__.py0000644000175000001440000000635500000000000021217 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import with_statement from __future__ import unicode_literals from __future__ import absolute_import import io import pybtex.io from pybtex.plugin import Plugin from pybtex.database import BibliographyData from pybtex.exceptions import PybtexError import six class BaseParser(Plugin): default_suffix = None filename = '' unicode_io = False def __init__(self, encoding=None, wanted_entries=None, min_crossrefs=2, **kwargs): self.encoding = encoding or pybtex.io.get_default_encoding() self.data = BibliographyData( wanted_entries=wanted_entries, min_crossrefs=min_crossrefs, ) def parse_file(self, filename, file_suffix=None): if file_suffix is not None: filename = filename + file_suffix self.filename = filename open_file = pybtex.io.open_unicode if self.unicode_io else pybtex.io.open_raw with open_file(filename, encoding=self.encoding) as f: try: self.parse_stream(f) except UnicodeDecodeError as e: raise PybtexError(six.text_type(e), filename=self.filename) return self.data def parse_files(self, base_filenames, file_suffix=None): for filename in base_filenames: self.parse_file(filename, file_suffix) return self.data def parse_string(self, value): if isinstance(value, bytes): msg = 'unicode string expected. Use {0}.parse_bytes() to parse bytes'.format(type(self).__name__) raise ValueError(msg) if self.unicode_io: return self.parse_stream(io.StringIO(value)) else: return self.parse_bytes(value.encode(self.encoding)) def parse_bytes(self, value): if isinstance(value, six.text_type): msg = 'bytes expected. Use {0}.parse_bytes() to parse unicode strings'.format(type(self).__name__) raise ValueError(msg) if self.unicode_io: return self.parse_string(value.decode(self.encoding)) else: return self.parse_stream(io.BytesIO(value)) def parse_stream(self, stream): raise NotImplementedError ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5536122 pybtex-0.24.0/pybtex/database/input/bibtex.py0000644000175000001440000003306100000000000020727 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """BibTeX parser >>> parser = Parser() >>> bib_data = parser.parse_string(u''' ... @String{SCI = "Science"} ... ... @String{JFernandez = "Fernandez, Julio M."} ... @String{HGaub = "Gaub, Hermann E."} ... @String{MGautel = "Gautel, Mathias"} ... @String{FOesterhelt = "Oesterhelt, Filipp"} ... @String{MRief = "Rief, Matthias"} ... ... @Article{rief97b, ... author = MRief #" and "# MGautel #" and "# FOesterhelt ... #" and "# JFernandez #" and "# HGaub, ... title = "Reversible Unfolding of Individual Titin ... Immunoglobulin Domains by {AFM}", ... journal = SCI, ... volume = 276, ... number = 5315, ... pages = "1109--1112", ... year = 1997, ... doi = "10.1126/science.276.5315.1109", ... URL = "http://www.sciencemag.org/cgi/content/abstract/276/5315/1109", ... eprint = "http://www.sciencemag.org/cgi/reprint/276/5315/1109.pdf", ... } ... ''') # entry keys are case-insensitive >>> bib_data.entries['rief97b'] == bib_data.entries['RIEF97B'] True >>> rief97b = bib_data.entries['rief97b'] >>> authors = rief97b.persons['author'] >>> for author in authors: ... print(six.text_type(author)) Rief, Matthias Gautel, Mathias Oesterhelt, Filipp Fernandez, Julio M. Gaub, Hermann E. # field names are case-insensitive >>> print(rief97b.fields['URL']) http://www.sciencemag.org/cgi/content/abstract/276/5315/1109 >>> print(rief97b.fields['url']) http://www.sciencemag.org/cgi/content/abstract/276/5315/1109 """ from __future__ import unicode_literals import re from string import ascii_letters, digits import six from pybtex import textutils from pybtex.bibtex.utils import split_name_list from pybtex.database import Entry, Person, BibliographyDataError from pybtex.database.input import BaseParser from pybtex.scanner import ( Literal, Pattern, PrematureEOF, PybtexSyntaxError, Scanner ) from pybtex.utils import CaseInsensitiveDict, CaseInsensitiveSet month_names = { 'jan': 'January', 'feb': 'February', 'mar': 'March', 'apr': 'April', 'may': 'May', 'jun': 'June', 'jul': 'July', 'aug': 'August', 'sep': 'September', 'oct': 'October', 'nov': 'November', 'dec': 'December' } NAME_CHARS = ascii_letters + u'@!$&*+-./:;<>?[\\]^_`|~\x7f' class SkipEntry(Exception): pass class UndefinedMacro(PybtexSyntaxError): error_type = 'undefined string' class DuplicateField(BibliographyDataError): def __init__(self, entry_key, field_name): message = 'entry with key {} has a duplicate {} field'.format( entry_key, field_name ) super(DuplicateField, self).__init__(message) class LowLevelParser(Scanner): NAME = Pattern(r'[{0}][{1}]*'.format(re.escape(NAME_CHARS), re.escape(NAME_CHARS + digits)), 'a valid name') KEY_PAREN = Pattern(r'[^\s\,]+', 'entry key') KEY_BRACE = Pattern(r'[^\s\,}]+', 'entry key') NUMBER = Pattern(r'[{0}]+'.format(digits), 'a number') LBRACE = Literal(u'{') RBRACE = Literal(u'}') LPAREN = Literal(u'(') RPAREN = Literal(u')') QUOTE = Literal(u'"') COMMA = Literal(u',') EQUALS = Literal(u'=') HASH = Literal(u'#') AT = Literal(u'@') command_start = None current_command = None current_entry_key = None current_fields = None current_field_name = None current_field_value = None def __init__( self, text, keyless_entries=False, macros=month_names, handle_error=None, want_entry=None, filename=None ): super(LowLevelParser, self).__init__(text, filename) self.keyless_entries = keyless_entries self.macros = macros if handle_error: self.handle_error = handle_error if want_entry: self.want_entry = want_entry def __iter__(self): return self.parse_bibliography() def get_error_context_info(self): return self.command_start, self.lineno, self.pos def get_error_context(self, context_info): error_start, lineno, error_pos = context_info before_error = self.text[error_start:error_pos] if not before_error.endswith('\n'): eol = self.NEWLINE.search(self.text, error_pos) error_end = eol.end() if eol else self.end_pos else: error_end = error_pos context = self.text[error_start:error_end].rstrip('\r\n') colno = len(before_error.splitlines()[-1]) return context, lineno, colno def handle_error(self, error): raise error def want_entry(self, key): return True def want_current_entry(self): return self.current_entry_key is None or self.want_entry(self.current_entry_key) def parse_bibliography(self): while True: if not self.skip_to([self.AT]): return self.command_start = self.pos - 1 try: yield tuple(self.parse_command()) except PybtexSyntaxError as error: self.handle_error(error) except SkipEntry: pass def parse_command(self): self.current_entry_key = None self.current_fields = [] self.current_field_name = None self.current_value = [] name = self.required([self.NAME]) command = name.value body_start = self.required([self.LPAREN, self.LBRACE]) body_end = self.RBRACE if body_start.pattern == self.LBRACE else self.RPAREN command_lower = command.lower() if command_lower == 'string': parse_body = self.parse_string_body make_result = lambda: (command, (self.current_field_name, self.current_value)) elif command_lower == 'preamble': parse_body = self.parse_preamble_body make_result = lambda: (command, (self.current_value,)) elif command_lower == 'comment': raise SkipEntry else: parse_body = self.parse_entry_body make_result = lambda: (command, (self.current_entry_key, self.current_fields)) try: parse_body(body_end) self.required([body_end]) except PybtexSyntaxError as error: self.handle_error(error) return make_result() def parse_preamble_body(self, body_end): self.parse_value() def parse_string_body(self, body_end): self.current_field_name = self.required([self.NAME]).value self.required([self.EQUALS]) self.parse_value() self.macros[self.current_field_name] = ''.join(self.current_value) def parse_entry_body(self, body_end): if not self.keyless_entries: key_pattern = self.KEY_PAREN if body_end == self.RPAREN else self.KEY_BRACE self.current_entry_key = self.required([key_pattern]).value self.parse_entry_fields() if not self.want_current_entry(): raise SkipEntry def parse_entry_fields(self): while True: self.current_field_name = None self.current_value = [] self.parse_field() if self.current_field_name and self.current_value: self.current_fields.append((self.current_field_name, self.current_value)) comma = self.optional([self.COMMA]) if not comma: return def parse_field(self): name = self.optional([self.NAME]) if not name: return self.current_field_name = name.value self.required([self.EQUALS]) self.parse_value() def parse_value(self): start = True concatenation = False value_parts = [] while True: if not start: concatenation = self.optional([self.HASH]) if not (start or concatenation): break value_parts.append(self.parse_value_part()) start = False self.current_value = value_parts def parse_value_part(self): token = self.required( [self.QUOTE, self.LBRACE, self.NUMBER, self.NAME], description='field value', ) if token.pattern is self.QUOTE: value_part = self.flatten_string(self.parse_string(string_end=self.QUOTE)) elif token.pattern is self.LBRACE: value_part = self.flatten_string(self.parse_string(string_end=self.RBRACE)) elif token.pattern is self.NUMBER: value_part = token.value else: value_part = self.substitute_macro(token.value) return value_part def flatten_string(self, parts): return ''.join(part.value for part in parts)[:-1] def substitute_macro(self, name): try: return self.macros[name] except KeyError: if self.want_current_entry(): self.handle_error(UndefinedMacro(name, self)) return '' def parse_string(self, string_end, level=0, max_level=100): if level > max_level: raise PybtexSyntaxError('too many nested braces', self) special_chars = [self.RBRACE, self.LBRACE] if string_end is self.QUOTE: special_chars = [self.QUOTE] + special_chars while True: part = self.skip_to(special_chars) if not part: raise PrematureEOF(self) if part.pattern is string_end: yield part break elif part.pattern is self.LBRACE: yield part for subpart in self.parse_string(self.RBRACE, level + 1): yield subpart elif part.pattern is self.RBRACE and level == 0: raise PybtexSyntaxError('unbalanced braces', self) class BibTeXEntryIterator(LowLevelParser): def __init__(self, *args, **kwargs): import warnings message = 'BibTeXEntryIterator is deprecated since 0.22: renamed to LowLevelParser' warnings.warn(message, DeprecationWarning, stacklevel=2) super(BibTeXEntryIterator, self).__init__(*args, **kwargs) class Parser(BaseParser): default_suffix = '.bib' unicode_io = True macros = None def __init__( self, encoding=None, macros=month_names, person_fields=Person.valid_roles, keyless_entries=False, **kwargs ): BaseParser.__init__(self, encoding, **kwargs) self.macros = CaseInsensitiveDict(macros) self.person_fields = CaseInsensitiveSet(person_fields) self.keyless_entries = keyless_entries def process_entry(self, entry_type, key, fields): entry = Entry(entry_type) if key is None: key = 'unnamed-%i' % self.unnamed_entry_counter self.unnamed_entry_counter += 1 seen_fields = set() for field_name, field_value_list in fields: if field_name.lower() in seen_fields: self.handle_error(DuplicateField(key, field_name)) continue field_value = textutils.normalize_whitespace(self.flatten_value_list(field_value_list)) if field_name in self.person_fields: for name in split_name_list(field_value): entry.add_person(Person(name), field_name) else: entry.fields[field_name] = field_value seen_fields.add(field_name.lower()) self.data.add_entry(key, entry) def process_preamble(self, value_list): value = textutils.normalize_whitespace(self.flatten_value_list(value_list)) self.data.add_to_preamble(value) def flatten_value_list(self, value_list): return ''.join(value_list) def handle_error(self, error): from pybtex.errors import report_error report_error(error) def parse_string(self, text): self.unnamed_entry_counter = 1 self.command_start = 0 entry_iterator = LowLevelParser( text, keyless_entries=self.keyless_entries, handle_error=self.handle_error, want_entry=self.data.want_entry, filename=self.filename, macros=self.macros, ) for entry in entry_iterator: entry_type = entry[0] entry_type_lower = entry_type.lower() if entry_type_lower == 'string': pass elif entry_type_lower == 'preamble': self.process_preamble(*entry[1]) else: self.process_entry(entry_type, *entry[1]) return self.data def parse_stream(self, stream): text = stream.read() return self.parse_string(text) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5526123 pybtex-0.24.0/pybtex/database/input/bibtexml.py0000644000175000001440000000572700000000000021270 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals from xml.etree import ElementTree as ET from pybtex.database import Entry, Person from pybtex.database.input import BaseParser bibtexns = '{http://bibtexml.sf.net/}' def remove_ns(s): if s.startswith(bibtexns): return s[len(bibtexns):] class Parser(BaseParser): default_suffix = '.xml' def parse_bytes(self, value): tree = ET.fromstring(value) return self.parse_tree(tree) def parse_string(self, value): return self.parse_bytes(value.encode(self.encoding)) def parse_stream(self, stream): tree = ET.parse(stream) return self.parse_tree(tree) def parse_tree(self, tree): entries = tree.findall(bibtexns + 'entry') self.data.add_entries(self.process_entry(entry) for entry in entries) return self.data def process_entry(self, entry): def process_person(person_entry, role): persons = person_entry.findall(bibtexns + 'person') if persons: for person in persons: process_person(person, role) else: text = person_entry.text.strip() if text: e.add_person(Person(text), role) else: names = {} for name in person_entry: names[remove_ns(name.tag)] = name.text e.add_person(Person(**names), role) id_ = entry.get('id') item = list(entry)[0] type = remove_ns(item.tag) e = Entry(type) for field in item: field_name = remove_ns(field.tag) if field_name in Person.valid_roles: process_person(field, field_name) else: field_text = field.text if field.text is not None else '' e.fields[field_name] = field_text return id_, e ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5526123 pybtex-0.24.0/pybtex/database/input/bibyaml.py0000644000175000001440000000700100000000000021064 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import absolute_import, unicode_literals from collections import OrderedDict import six import yaml from pybtex.database import Entry, Person from pybtex.database.input import BaseParser class OrderedDictSafeLoader(yaml.SafeLoader): """ SafeLoader that loads mappings as OrderedDicts. """ def construct_yaml_map(self, node): data = OrderedDict() yield data value = self.construct_mapping(node) data.update(value) def construct_mapping(self, node, deep=False): if isinstance(node, yaml.MappingNode): self.flatten_mapping(node) else: raise yaml.constructor.ConstructorError(None, None, 'expected a mapping node, but found %s' % node.id, node.start_mark) mapping = OrderedDict() for key_node, value_node in node.value: key = self.construct_object(key_node, deep=deep) try: hash(key) except TypeError as exc: raise yaml.constructor.ConstructorError('while constructing a mapping', node.start_mark, 'found unacceptable key (%s)' % exc, key_node.start_mark) value = self.construct_object(value_node, deep=deep) mapping[key] = value return mapping OrderedDictSafeLoader.add_constructor( u'tag:yaml.org,2002:map', OrderedDictSafeLoader.construct_yaml_map ) OrderedDictSafeLoader.add_constructor( u'tag:yaml.org,2002:omap', OrderedDictSafeLoader.construct_yaml_map ) class Parser(BaseParser): default_suffix = '.yaml' unicode_io = False def parse_stream(self, stream): t = yaml.load(stream, Loader=OrderedDictSafeLoader) entries = ( (key, self.process_entry(entry)) for (key, entry) in t['entries'].items() ) try: self.data.add_to_preamble(t['preamble']) except KeyError: pass self.data.add_entries(entries) return self.data def process_entry(self, entry): bib_entry = Entry(entry['type']) for (key, value) in entry.items(): key_lower = key.lower() if key_lower in Person.valid_roles: for names in value: bib_entry.add_person(Person(**names), key) elif key_lower == 'type': pass else: bib_entry.fields[key] = six.text_type(value) return bib_entry ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.954714 pybtex-0.24.0/pybtex/database/output/0000755000175000001440000000000000000000000017276 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5636122 pybtex-0.24.0/pybtex/database/output/__init__.py0000644000175000001440000000452400000000000021414 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import with_statement from __future__ import unicode_literals import io import pybtex.io from pybtex.plugin import Plugin class BaseWriter(Plugin): unicode_io = False def __init__(self, encoding=None): self.encoding = encoding or pybtex.io.get_default_encoding() def write_file(self, bib_data, filename): open_file = pybtex.io.open_unicode if self.unicode_io else pybtex.io.open_raw mode = 'w' if self.unicode_io else 'wb' with open_file(filename, mode, encoding=self.encoding) as stream: self.write_stream(bib_data, stream) if hasattr(stream, 'getvalue'): return stream.getvalue() def write_stream(self, bib_data, stream): raise NotImplementedError def _to_string_or_bytes(self, bib_data): stream = io.StringIO() if self.unicode_io else io.BytesIO() self.write_stream(bib_data, stream) return stream.getvalue() def to_string(self, bib_data): result = self._to_string_or_bytes(bib_data) return result if self.unicode_io else result.decode(self.encoding) def to_bytes(self, bib_data): result = self._to_string_or_bytes(bib_data) return result.encode(self.encoding) if self.unicode_io else result ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.568612 pybtex-0.24.0/pybtex/database/output/bibtex.py0000644000175000001440000001324500000000000021132 0ustar00agusers00000000000000# vim: fileencoding=utf-8 # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals import codecs from pybtex.bibtex.exceptions import BibTeXError from pybtex.bibtex.utils import scan_bibtex_string from pybtex.database.output import BaseWriter class Writer(BaseWriter): """Outputs BibTeX markup""" unicode_io = True def quote(self, s): r""" >>> w = Writer() >>> print(w.quote('The World')) "The World" >>> print(w.quote(r'The \emph{World}')) "The \emph{World}" >>> print(w.quote(r'The "World"')) {The "World"} >>> try: ... print(w.quote(r'The {World')) ... except BibTeXError as error: ... print(error) String has unmatched braces: The {World """ self.check_braces(s) if '"' not in s: return '"%s"' % s else: return '{%s}' % s def check_braces(self, s): """ Raise an exception if the given string has unmatched braces. >>> w = Writer() >>> w.check_braces('Cat eats carrots.') >>> w.check_braces('Cat eats {carrots}.') >>> w.check_braces('Cat eats {carrots{}}.') >>> w.check_braces('') >>> w.check_braces('end}') >>> try: ... w.check_braces('{') ... except BibTeXError as error: ... print(error) String has unmatched braces: { >>> w.check_braces('{test}}') >>> try: ... w.check_braces('{{test}') ... except BibTeXError as error: ... print(error) String has unmatched braces: {{test} """ tokens = list(scan_bibtex_string(s)) if tokens: end_brace_level = tokens[-1][1] if end_brace_level != 0: raise BibTeXError('String has unmatched braces: %s' % s) def _encode(self, text): r"""Encode text as LaTeX. >>> w = Writer(encoding='ASCII') >>> print(w._encode(u'1970–1971.')) 1970--1971. >>> w = Writer(encoding='UTF-8') >>> print(w._encode(u'1970–1971.')) 1970–1971. >>> w = Writer(encoding='UTF-8') >>> print(w._encode(u'100% noir')) 100\% noir """ import latexcodec # NOQA return codecs.encode(text, 'ulatex+{}'.format(self.encoding)) def _encode_with_comments(self, text): r"""Encode text as LaTeX, preserve comments. >>> w = Writer(encoding='ASCII') >>> print(w._encode_with_comments(u'1970–1971. %% † RIP †')) 1970--1971. %% \dag\ RIP \dag >>> w = Writer(encoding='UTF-8') >>> print(w._encode_with_comments(u'1970–1971. %% † RIP †')) 1970–1971. %% † RIP † """ return u'%'.join(self._encode(part) for part in text.split(u'%')) def _write_field(self, stream, type, value): stream.write(u',\n %s = %s' % (type, self.quote(self._encode(value)))) def _format_name(self, stream, person): def join(l): return ' '.join([name for name in l if name]) first = person.get_part_as_text('first') middle = person.get_part_as_text('middle') prelast = person.get_part_as_text('prelast') last = person.get_part_as_text('last') lineage = person.get_part_as_text('lineage') s = '' if last: s += join([prelast, last]) if lineage: s += ', %s' % lineage if first or middle: s += ', ' s += join([first, middle]) return s def _write_persons(self, stream, persons, role): # persons = getattr(entry, role + 's') if persons: names = u' and '.join(self._format_name(stream, person) for person in persons) self._write_field(stream, role, names) def _write_preamble(self, stream, preamble): if preamble: stream.write(u'@preamble{%s}\n\n' % self.quote(self._encode_with_comments(preamble))) def write_stream(self, bib_data, stream): self._write_preamble(stream, bib_data.preamble) first = True for key, entry in bib_data.entries.items(): if not first: stream.write(u'\n') first = False stream.write(u'@%s' % entry.original_type) stream.write(u'{%s' % key) # for role in ('author', 'editor'): for role, persons in entry.persons.items(): self._write_persons(stream, persons, role) for type, value in entry.fields.items(): self._write_field(stream, type, value) stream.write(u'\n}\n') ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5676122 pybtex-0.24.0/pybtex/database/output/bibtexml.py0000644000175000001440000001116700000000000021464 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals import io from xml.sax.saxutils import XMLGenerator from xml.sax.xmlreader import AttributesImpl import six from pybtex.database.output import BaseWriter doctype = b""" """ class _PrettyXMLWriter(object): def __init__(self, output, encoding='UTF-8', namespace=('bibtex', 'http://bibtexml.sf.net/'), header=True): self.prefix, self.uri = namespace self.generator = XMLGenerator(output, encoding=encoding) if header: self.generator.startDocument() self.generator.startPrefixMapping(self.prefix, self.uri) self.stack = [] def write(self, data): self.generator.characters(data) def newline(self): self.write('\n') def indent_line(self): self.write(' ' * (len(self.stack) * 4)) def start(self, tag, attrs=None, newline=True): if attrs is None: attrs = {} else: attrs = {(None, key): value for key, value in attrs.items()} self.indent_line() self.stack.append(tag) self.generator.startElementNS((self.uri, tag), tag, AttributesImpl(attrs)) if newline: self.newline() def end(self, indent=True): tag = self.stack.pop() if indent: self.indent_line() self.generator.endElementNS((self.uri, tag), tag) self.newline() def element(self, tag, data): self.start(tag, newline=False) self.write(data) self.end(indent=False) def close(self): self.generator.endDocument() class Writer(BaseWriter): """Outputs BibTeXML markup""" def write_stream(self, bib_data, stream): xml_writer = _PrettyXMLWriter(stream, self.encoding) self._write(bib_data, xml_writer) def to_string(self, bib_data): """ Return a unicode XML string without encoding declaration. >>> from pybtex.database import BibliographyData >>> data = BibliographyData() >>> unicode_xml = Writer().to_string(data) >>> isinstance(unicode_xml, six.text_type) True >>> print(unicode_xml) """ output = io.BytesIO() writer = _PrettyXMLWriter(output, encoding='UTF-8', header=None) self._write(bib_data, writer) return output.getvalue().decode('UTF-8').strip() def _write(self, bib_data, writer): def write_persons(persons, role): if persons: writer.start(role) for person in persons: writer.start('person') for type in ('first', 'middle', 'prelast', 'last', 'lineage'): name = person.get_part_as_text(type) if name: writer.element(type, name) writer.end() writer.end() writer.start('file') writer.newline() for key, entry in bib_data.entries.items(): writer.start('entry', dict(id=key)) writer.start(entry.original_type) for field_name, field_value in entry.fields.items(): writer.element(field_name, field_value) for role, persons in entry.persons.items(): write_persons(persons, role) writer.end() writer.end() writer.newline() writer.end() writer.close() ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5616121 pybtex-0.24.0/pybtex/database/output/bibyaml.py0000644000175000001440000000633700000000000021300 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals from collections import OrderedDict import yaml from pybtex.database.output import BaseWriter class OrderedDictSafeDumper(yaml.SafeDumper): """ SafeDumper that dumps OrderedDicts preserving the order. """ def represent_odict(self, data): return self.represent_mapping(u'tag:yaml.org,2002:map', data.items()) OrderedDictSafeDumper.add_representer( OrderedDict, OrderedDictSafeDumper.represent_odict ) class Writer(BaseWriter): """Outputs YAML markup""" def _to_dict(self, bib_data): def process_person_roles(entry): for role, persons in entry.persons.items(): yield role, list(process_persons(persons)) def process_person(person): for type in ('first', 'middle', 'prelast', 'last', 'lineage'): name = person.get_part_as_text(type) if name: yield type, name def process_persons(persons): for person in persons: yield OrderedDict(process_person(person)) def process_entries(bib_data): for key, entry in bib_data.items(): fields = OrderedDict([('type', entry.original_type)]) fields.update(entry.fields) fields.update(process_person_roles(entry)) yield key, fields data = {'entries': OrderedDict(process_entries(bib_data.entries))} if bib_data.preamble: data['preamble'] = bib_data.preamble return data def _dump(self, bib_data, encoding=None, stream=None): return yaml.dump( bib_data, stream, encoding=encoding, allow_unicode=True, default_flow_style=False, indent=4, Dumper=OrderedDictSafeDumper, ) def write_stream(self, bib_data, stream): return self._dump(self._to_dict(bib_data), encoding='UTF-8', stream=stream) def to_string(self, bib_data): return self._dump(self._to_dict(bib_data), encoding=None) def to_bytes(self, bib_data): return self._dump(self._to_dict(bib_data), encoding='UTF-8') ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5556123 pybtex-0.24.0/pybtex/errors.py0000644000175000001440000000452100000000000016062 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import absolute_import, print_function, unicode_literals from contextlib import contextmanager import pybtex.io import six strict = True error_code = 0 captured_errors = None def set_strict_mode(enable=True): global strict strict = enable @contextmanager def capture(): """Capture exceptions for debug purposes.""" global captured_errors captured_errors = [] try: yield captured_errors finally: captured_errors = None def format_error(exception, prefix='ERROR: '): lines = [] context = exception.get_context() if context: lines += (context.splitlines()) lines.append(u'{0}{1}'.format(prefix, six.text_type(exception))) filename = exception.get_filename() if filename: lines = ( u'{0}: {1}'.format(filename, line) for line in lines ) return '\n'.join(lines) def print_error(exception, prefix='ERROR: '): print(format_error(exception, prefix), file=pybtex.io.stderr) def report_error(exception): global error_code if captured_errors is not None: captured_errors.append(exception) return if strict: raise exception else: print_error(exception, 'WARNING: ') error_code = 2 ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5516124 pybtex-0.24.0/pybtex/exceptions.py0000644000175000001440000000356700000000000016740 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import absolute_import, unicode_literals import sys import six class PybtexError(Exception): def __init__(self, message, filename=None): super(PybtexError, self).__init__(message) self.filename = filename def get_context(self): """Return extra error context info.""" return None def get_filename(self): """Return filename, if relevant.""" if self.filename is None or isinstance(self.filename, six.text_type): return self.filename else: from .io import _decode_filename return _decode_filename(self.filename, errors='replace') def __eq__(self, other): return six.text_type(self) == six.text_type(other) def __hash__(self): return hash(six.text_type(self)) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5536122 pybtex-0.24.0/pybtex/io.py0000644000175000001440000000663700000000000015167 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """Unicode-aware IO routines.""" from __future__ import absolute_import, unicode_literals import io import posixpath import sys from os import environ from pybtex.exceptions import PybtexError from pybtex.kpathsea import kpsewhich def get_default_encoding(): return 'UTF-8' def get_stream_encoding(stream): stream_encoding = getattr(stream, 'encoding', None) return stream_encoding or get_default_encoding() def _decode_filename(filename, errors='strict'): """Decode byte-encoded filename.""" encoding = sys.getfilesystemencoding() or get_default_encoding() return filename.decode(encoding, errors=errors) def _open_existing(opener, filename, mode, locate, **kwargs): if not posixpath.isfile(filename): found = locate(filename) if found: filename = found return opener(filename, mode, **kwargs) def _open_or_create(opener, filename, mode, environ, **kwargs): try: return opener(filename, mode, **kwargs) except EnvironmentError as error: if 'TEXMFOUTPUT' in environ: new_filename = posixpath.join(environ['TEXMFOUTPUT'], filename) try: return opener(new_filename, mode, **kwargs) except EnvironmentError: pass raise error def _open(opener, filename_or_file, mode, **kwargs): if hasattr(filename_or_file, 'read') and hasattr(filename_or_file, 'close'): return filename_or_file else: filename = filename_or_file write_mode = 'w' in mode try: if write_mode: return _open_or_create(opener, filename, mode, environ, **kwargs) else: return _open_existing(opener, filename, mode, locate=kpsewhich, **kwargs) except EnvironmentError as error: raise PybtexError("unable to open %s. %s" % (filename, error.strerror)) def open_raw(filename, mode='rb', encoding=None): return _open(io.open, filename, mode) def open_unicode(filename, mode='r', encoding=None): if encoding is None: encoding = get_default_encoding() return _open(io.open, filename, mode, encoding=encoding) def reader(stream, encoding=None, errors='strict'): if encoding is None: encoding = get_stream_encoding(stream) return io.TextIOWrapper(stream, encoding=encoding, errors=errors) stdout = sys.stdout stderr = sys.stderr ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5616121 pybtex-0.24.0/pybtex/kpathsea.py0000644000175000001440000000251500000000000016347 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals from subprocess import PIPE, Popen def kpsewhich(filename): p = Popen(['kpsewhich', filename], stdout=PIPE, stderr=PIPE) path = p.communicate()[0].rstrip() if p.returncode == 0: return path ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.954714 pybtex-0.24.0/pybtex/markup/0000755000175000001440000000000000000000000015471 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5526123 pybtex-0.24.0/pybtex/markup/__init__.py0000644000175000001440000000470600000000000017611 0ustar00agusers00000000000000from __future__ import unicode_literals # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from pybtex.scanner import Scanner, Literal, PybtexSyntaxError from pybtex.richtext import String, Text, Protected class LaTeXParser(Scanner): LBRACE = Literal(u'{') RBRACE = Literal(u'}') def parse(self, level=0): """ >>> LaTeXParser('abc').parse() Text('abc') >>> LaTeXParser('abc{def}').parse() Text('abc', Protected('def')) >>> LaTeXParser('abc{def {xyz}} !').parse() Text('abc', Protected('def ', Protected('xyz')), ' !') """ return Text(*self.iter_string_parts(level=level)) def iter_string_parts(self, level=0): while True: token = self.skip_to([self.LBRACE, self.RBRACE]) if not token: remainder = self.get_remainder() if remainder: yield String(remainder) if level != 0: raise PybtexSyntaxError('unbalanced braces', self) break elif token.pattern is self.LBRACE: yield String(token.value[:-1]) yield Protected(*self.iter_string_parts(level=level + 1)) else: # brace.pattern is self.RBRACE yield String(token.value[:-1]) if level == 0: raise PybtexSyntaxError('unbalanced braces', self) break ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.954714 pybtex-0.24.0/pybtex/plugin/0000755000175000001440000000000000000000000015470 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5596123 pybtex-0.24.0/pybtex/plugin/__init__.py0000644000175000001440000001441400000000000017605 0ustar00agusers00000000000000from __future__ import unicode_literals # Copyright (c) 2006-2021 Andrey Golovizin # Copyright (c) 2014 Matthias C. M. Troffaes # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. import os.path # splitext import pkg_resources from pybtex.exceptions import PybtexError class Plugin(object): pass #: default pybtex plugins _DEFAULT_PLUGINS = { "pybtex.database.input": "bibtex", "pybtex.database.output": "bibtex", "pybtex.backends": "latex", "pybtex.style.labels": "number", "pybtex.style.names": "plain", "pybtex.style.sorting": "none", "pybtex.style.formatting": "unsrt", } class PluginGroupNotFound(PybtexError): def __init__(self, group_name): message = u'plugin group {group_name} not found'.format( group_name=group_name, ) super(PluginGroupNotFound, self).__init__(message) class PluginNotFound(PybtexError): def __init__(self, plugin_group, name): if not name.startswith('.'): message = u'plugin {plugin_group}.{name} not found'.format( plugin_group=plugin_group, name=name, ) else: assert plugin_group.endswith('.suffixes') message = ( u'plugin {plugin_group} for suffix {suffix} not found'.format( plugin_group=plugin_group, suffix=name, ) ) super(PluginNotFound, self).__init__(message) def _load_entry_point(group, name, use_aliases=False): groups = [group, group + '.aliases'] if use_aliases else [group] for search_group in groups: for entry_point in pkg_resources.iter_entry_points(search_group, name): return entry_point.load() raise PluginNotFound(group, name) def find_plugin(plugin_group, name=None, filename=None): """Find a :class:`Plugin` class within *plugin_group* which matches *name*, or *filename* if *name* is not specified, or the default plugin if neither *name* nor *filename* is specified. If *name* is specified, return the :class:`Plugin` class registered under *name*. If *filename* is specified, look at its suffix (i.e. extension) and return the :class:`Plugin` class registered for this suffix. If *name* is not a string, but a plugin class, just return it back. (Used to make functions like :function:`make_bibliography` accept already loaded plugins as well as plugin names. """ if isinstance(name, type) and issubclass(name, Plugin): return name if plugin_group not in _DEFAULT_PLUGINS: raise PluginGroupNotFound(plugin_group) if name: return _load_entry_point(plugin_group, name, use_aliases=True) elif filename: suffix = os.path.splitext(filename)[1] return _load_entry_point(plugin_group + '.suffixes', suffix) else: return _load_entry_point(plugin_group, _DEFAULT_PLUGINS[plugin_group]) def enumerate_plugin_names(plugin_group): """Enumerate all plugin names for the given *plugin_group*.""" return (entry_point.name for entry_point in pkg_resources.iter_entry_points(plugin_group)) class _FakeEntryPoint(pkg_resources.EntryPoint): def __init__(self, name, klass): self.name = name self.klass = klass def __str__(self): return "%s = :%s" % (self.name, self.klass.__name__) def __repr__(self): return ( "_FakeEntryPoint(name=%r, klass=%s)" % (self.name, self.klass.__name__)) def load(self, require=True, env=None, installer=None): return self.klass def require(self, env=None, installer=None): pass def register_plugin(plugin_group, name, klass, force=False): """Register a plugin on the fly. This works by adding *klass* as a pybtex entry point, under entry point group *plugin_group* and entry point name *name*. To register a suffix, append ".suffixes" to the plugin group, and *name* is then simply the suffix, which should start with a period. To register an alias plugin name, append ".aliases" to the plugin group. Aliases work just as real names, but are not returned by :function:`enumerate_plugin_names` and not advertised in the command line help. If *force* is ``False``, then existing entry points are not overwritten. If an entry point with the given group and name already exists, then returns ``False``, otherwise returns ``True``. If *force* is ``True``, then existing entry points are overwritten, and the function always returns ``True``. """ if plugin_group.endswith(".suffixes"): base_group, _ = plugin_group.rsplit(".", 1) if not name.startswith('.'): raise ValueError("a suffix must start with a period") elif plugin_group.endswith(".aliases"): base_group, _ = plugin_group.rsplit(".", 1) else: base_group = plugin_group if base_group not in _DEFAULT_PLUGINS: raise PluginGroupNotFound(base_group) dist = pkg_resources.get_distribution('pybtex') ep_map = pkg_resources.get_entry_map(dist) if plugin_group not in ep_map: ep_map[plugin_group] = {} if name in ep_map[plugin_group] and not force: return False else: ep_map[plugin_group][name] = _FakeEntryPoint(name, klass) return True ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5596123 pybtex-0.24.0/pybtex/py3compat.py0000644000175000001440000000315100000000000016463 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. import sys PY3 = sys.version_info[0] >= 3 if PY3: def fix_unicode_literals_in_doctest(obj): obj.__doc__ = obj.__doc__.replace("u'", "'") return obj def python_2_unicode_compatible(obj): return obj def __str__(obj): return obj.__str__() else: def fix_unicode_literals_in_doctest(obj): return obj def python_2_unicode_compatible(obj): obj.__unicode__ = obj.__str__ del obj.__str__ return obj def __str__(obj): return obj.__unicode__() ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5556123 pybtex-0.24.0/pybtex/richtext.py0000644000175000001440000007155400000000000016412 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. r"""(simple but) rich text formatting tools Usage: >>> t = Text('this ', 'is a ', Tag('em', 'very'), Text(' rich', ' text')) >>> print(t.render_as('latex')) this is a \emph{very} rich text >>> print(six.text_type(t)) this is a very rich text >>> t = t.capitalize().add_period() >>> print(t.render_as('latex')) This is a \emph{very} rich text. >>> print(six.text_type(t)) This is a very rich text. >>> print(Symbol('ndash').render_as('latex')) -- >>> t = Text('Some ', Tag('em', Text('nested ', Tag('tt', 'Text', Text(' objects')))), '.') >>> print(t.render_as('latex')) Some \emph{nested \texttt{Text objects}}. >>> print(six.text_type(t)) Some nested Text objects. >>> t = t.upper() >>> print(t.render_as('latex')) SOME \emph{NESTED \texttt{TEXT OBJECTS}}. >>> print(six.text_type(t)) SOME NESTED TEXT OBJECTS. >>> t = Text(', ').join(['one', 'two', Tag('em', 'three')]) >>> print(t.render_as('latex')) one, two, \emph{three} >>> print(six.text_type(t)) one, two, three >>> t = Text(Symbol('nbsp')).join(['one', 'two', Tag('em', 'three')]) >>> print(t.render_as('latex')) one~two~\emph{three} >>> print(six.text_type(t)) onetwothree """ from __future__ import absolute_import, unicode_literals import itertools import warnings from abc import ABCMeta, abstractmethod import six from pybtex import textutils from pybtex.utils import collect_iterable, deprecated from pybtex import py3compat # workaround for doctests in Python 2/3 def str_repr(string): """ >>> print(str_repr('test')) 'test' >>> print(str_repr(u'test')) 'test' """ result = repr(string) if result.startswith('u'): return result[1:] else: return result def ensure_text(value): if isinstance(value, six.string_types): return String(value) elif isinstance(value, BaseText): return value else: bad_type = type(value).__name__ raise ValueError('parts must be strings or BaseText instances, not ' + bad_type) @py3compat.python_2_unicode_compatible class BaseText(object): __metaclass__ = ABCMeta @abstractmethod def __str__(self): raise NotImplementedError @abstractmethod def __eq__(self, other): raise NotImplementedError def __ne__(self, other): return not self == other @abstractmethod def __len__(self): raise NotImplementedError @abstractmethod def __contains__(self, item): raise NotImplementedError @abstractmethod def __getitem__(self, key): raise NotImplementedError def __add__(self, other): """ Concatenate this Text with another Text or string. >>> Text('Longcat is ') + Tag('em', 'long') Text('Longcat is ', Tag('em', 'long')) """ return Text(self, other) def append(self, text): """ Append text to the end of this text. Normally, this is the same as concatenating texts with +, but for tags and similar objects the appended text is placed _inside_ the tag. >>> text = Tag('em', 'Look here') >>> print((text + '!').render_as('html')) Look here! >>> print(text.append('!').render_as('html')) Look here! """ return self + text def join(self, parts): """Join a list using this text (like string.join) >>> letters = ['a', 'b', 'c'] >>> print(six.text_type(String('-').join(letters))) a-b-c >>> print(six.text_type(String('-').join(iter(letters)))) a-b-c """ if not parts: return Text() joined = [] for part in parts: if joined: joined.append(self) joined.append(part) return Text(*joined) @abstractmethod def split(self, sep=None, keep_empty_parts=None): raise NotImplementedError @abstractmethod def startswith(self, prefix): """ Return True if string starts with the prefix, otherwise return False. prefix can also be a tuple of suffixes to look for. """ raise NotImplementedError @abstractmethod def endswith(self, suffix): """ Return True if the string ends with the specified suffix, otherwise return False. suffix can also be a tuple of suffixes to look for. """ raise NotImplementedError @abstractmethod def isalpha(self): raise NotImplementedError def add_period(self, period='.'): """ Add a period to the end of text, if the last character is not ".", "!" or "?". >>> text = Text("That's all, folks") >>> print(six.text_type(text.add_period())) That's all, folks. >>> text = Text("That's all, folks!") >>> print(six.text_type(text.add_period())) That's all, folks! """ if self and not textutils.is_terminated(self): return self.append(period) else: return self def abbreviate(self): def abbreviate_word(word): if word.isalpha(): return word[0].add_period() else: return word parts = self.split(textutils.delimiter_re) return String('').join(abbreviate_word(part) for part in parts) def capfirst(self): """ Capitalize the first letter of the text. >>> Text(Tag('em', 'long Cat')).capfirst() Text(Tag('em', 'Long Cat')) """ return self[:1].upper() + self[1:] def capitalize(self): """ Capitalize the first letter of the text and lowercase the rest. >>> Text(Tag('em', 'LONG CAT')).capitalize() Text(Tag('em', 'Long cat')) """ return self[:1].upper() + self[1:].lower() @abstractmethod def lower(self): raise NotImplementedError @abstractmethod def upper(self): raise NotImplementedError @abstractmethod def render(self, backend): raise NotImplementedError def render_as(self, backend_name): r""" Render this :py:class:`Text` into markup. This is a wrapper method that loads a formatting backend plugin and calls :py:meth:`Text.render`. >>> text = Text('Longcat is ', Tag('em', 'looooooong'), '!') >>> print(text.render_as('html')) Longcat is looooooong! >>> print(text.render_as('latex')) Longcat is \emph{looooooong}! >>> print(text.render_as('text')) Longcat is looooooong! :param backend_name: The name of the output backend (like ``"latex"`` or ``"html"``). """ from pybtex.plugin import find_plugin backend_cls = find_plugin('pybtex.backends', backend_name) return self.render(backend_cls()) def _unpack(self): """ For Text object, iterate over all text parts. Else, yield the object itself. Used for unpacking Text objects passed as children to another Text object. """ yield self def _typeinfo(self): """ Return the type of this object and its parameters (not including the actual text content). Used for: - merging similar tags together (AB -> AB), - creating similar text objects with different text content. """ return None, () @py3compat.python_2_unicode_compatible class BaseMultipartText(BaseText): info = () def __init__(self, *parts): """Create a text object consisting of one or more parts. Empty parts are ignored: >>> Text() == Text('') == Text('', '', '') True >>> Text('Word', '') == Text('Word') True Text() objects are unpacked and their children are included directly: >>> Text(Text('Multi', ' '), Tag('em', 'part'), Text(' ', Text('text!'))) Text('Multi ', Tag('em', 'part'), ' text!') >>> Tag('strong', Text('Multi', ' '), Tag('em', 'part'), Text(' ', 'text!')) Tag('strong', 'Multi ', Tag('em', 'part'), ' text!') Similar objects are merged together: >>> Text('Multi', Tag('em', 'part'), Text(Tag('em', ' ', 'text!'))) Text('Multi', Tag('em', 'part text!')) >>> Text('Please ', HRef('/', 'click'), HRef('/', ' here'), '.') Text('Please ', HRef('/', 'click here'), '.') """ parts = (ensure_text(part) for part in parts) nonempty_parts = (part for part in parts if part) unpacked_parts = itertools.chain(*[part._unpack() for part in nonempty_parts]) merged_parts = self._merge_similar(unpacked_parts) self.parts = list(merged_parts) self.length = sum(len(part) for part in self.parts) def __str__(self): return ''.join(six.text_type(part) for part in self.parts) def __eq__(self, other): """ Rich text objects support equality comparison: >>> Text('Cat') == Text('cat') False >>> Text('Cat') == Text('Cat') True """ return ( isinstance(other, BaseText) and self._typeinfo() == other._typeinfo() and self.parts == other.parts ) def __len__(self): """ ``len(text)`` returns the number of characters in the text, ignoring the markup: >>> len(Text('Long cat')) 8 >>> len(Text(Tag('em', 'Long'), ' cat')) 8 >>> len(Text(HRef('http://example.com/', 'Long'), ' cat')) 8 """ return self.length def __contains__(self, item): """ ``value in text`` returns ``True`` if any part of the ``text`` contains the substring ``value``: >>> 'Long cat' in Text('Long cat!') True Substrings splitted across multiple text parts are not matched: >>> 'Long cat' in Text(Tag('em', 'Long'), 'cat!') False """ if not isinstance(item, six.string_types): raise TypeError(item) return not item or any(part.__contains__(item) for part in self.parts) def __getitem__(self, key): """ Slicing and extracting characters works like with regular strings, formatting is preserved. >>> Text('Longcat is ', Tag('em', 'looooooong!'))[:15] Text('Longcat is ', Tag('em', 'looo')) >>> Text('Longcat is ', Tag('em', 'looooooong!'))[-1] Text(Tag('em', '!')) """ if isinstance(key, six.integer_types): start = key end = None elif isinstance(key, slice): start, end, step = key.indices(len(self)) if step != 1: raise NotImplementedError else: raise TypeError(key, type(key)) if start < 0: start = len(self) + start if end is None: end = start + 1 if end < 0: end = len(self) + end return self._slice_end(len(self) - start)._slice_beginning(end - start) def _slice_beginning(self, slice_length): """ Return a text consistng of the first slice_length characters of this text (with formatting preserved). """ parts = [] length = 0 for part in self.parts: if length + len(part) > slice_length: parts.append(part[:slice_length - length]) break else: parts.append(part) length += len(part) return self._create_similar(parts) def _slice_end(self, slice_length): """ Return a text consistng of the last slice_length characters of this text (with formatting preserved). """ parts = [] length = 0 for part in reversed(self.parts): if length + len(part) > slice_length: parts.append(part[len(part) - (slice_length - length):]) break else: parts.append(part) length += len(part) return self._create_similar(reversed(parts)) def append(self, text): """ Append text to the end of this text. For Tags, HRefs, etc. the appended text is placed *inside* the tag. >>> text = Tag('strong', 'Chuck Norris') >>> print((text + ' wins!').render_as('html')) Chuck Norris wins! >>> print(text.append(' wins!').render_as('html')) Chuck Norris wins! """ return self._create_similar(self.parts + [text]) @collect_iterable def split(self, sep=None, keep_empty_parts=None): """ >>> Text('a + b').split() [Text('a'), Text('+'), Text('b')] >>> Text('a, b').split(', ') [Text('a'), Text('b')] """ if keep_empty_parts is None: keep_empty_parts = sep is not None tail = [''] if keep_empty_parts else [] for part in self.parts: split_part = part.split(sep, keep_empty_parts=True) if not split_part: continue for item in split_part[:-1]: if tail: yield self._create_similar(tail + [item]) tail = [] else: if item or keep_empty_parts: yield self._create_similar([item]) tail.append(split_part[-1]) if tail: tail_text = self._create_similar(tail) if tail_text or keep_empty_parts: yield tail_text def startswith(self, prefix): """ Return True if the text starts with the given prefix. >>> Text('Longcat!').startswith('Longcat') True Prefixes split across multiple parts are not matched: >>> Text(Tag('em', 'Long'), 'cat!').startswith('Longcat') False """ if not self.parts: return False else: return self.parts[0].startswith(prefix) def endswith(self, suffix): """ Return True if the text ends with the given suffix. >>> Text('Longcat!').endswith('cat!') True Suffixes split across multiple parts are not matched: >>> Text('Long', Tag('em', 'cat'), '!').endswith('cat!') False """ if not self.parts: return False else: return self.parts[-1].endswith(suffix) def isalpha(self): """ Return True if all characters in the string are alphabetic and there is at least one character, False otherwise. """ return bool(self) and all(part.isalpha() for part in self.parts) def lower(self): """ Convert rich text to lowercase. >>> Text(Tag('em', 'Long cat')).lower() Text(Tag('em', 'long cat')) """ return self._create_similar(part.lower() for part in self.parts) def upper(self): """ Convert rich text to uppsercase. >>> Text(Tag('em', 'Long cat')).upper() Text(Tag('em', 'LONG CAT')) """ return self._create_similar(part.upper() for part in self.parts) def render(self, backend): """ Render this :py:class:`Text` into markup. :param backend: The formatting backend (an instance of :py:class:`pybtex.backends.BaseBackend`). """ rendered_list = [part.render(backend) for part in self.parts] assert all(isinstance(item, backend.RenderType) for item in rendered_list) return backend.render_sequence(rendered_list) def _typeinfo(self): """Return the type and the parameters used to create this text object. >>> text = Tag('strong', 'Heavy rain!') >>> text._typeinfo() == (Tag, ('strong',)) True """ return type(self), self.info def _create_similar(self, parts): """ Create a new text object of the same type with the same parameters, with different text content. >>> text = Tag('strong', 'Bananas!') >>> text._create_similar(['Apples!']) Tag('strong', 'Apples!') """ cls, cls_args = self._typeinfo() args = list(cls_args) + list(parts) return cls(*args) def _merge_similar(self, parts): """Merge adjacent text objects with the same type and parameters together. >>> text = Text() >>> parts = [Tag('em', 'Breaking'), Tag('em', ' '), Tag('em', 'news!')] >>> list(text._merge_similar(parts)) [Tag('em', 'Breaking news!')] """ groups = itertools.groupby(parts, lambda value: value._typeinfo()) for typeinfo, group in groups: cls, info = typeinfo group = list(group) if cls and len(group) > 1: group_parts = itertools.chain(*(text.parts for text in group)) args = list(info) + list(group_parts) yield cls(*args) else: for text in group: yield text @deprecated('0.19', 'use __unicode__() instead') def plaintext(self): return six.text_type(self) @deprecated('0.19') def enumerate(self): for n, child in enumerate(self.parts): try: for p in child.enumerate(): yield p except AttributeError: yield self, n @deprecated('0.19') def reversed(self): for n, child in reversed(list(enumerate(self.parts))): try: for p in child.reversed(): yield p except AttributeError: yield self, n @deprecated('0.19', 'use slicing instead') def get_beginning(self): try: l, i = next(self.enumerate()) except StopIteration: pass else: return l.parts[i] @deprecated('0.19', 'use slicing instead') def get_end(self): try: l, i = next(self.reversed()) except StopIteration: pass else: return l.parts[i] @deprecated('0.19', 'use slicing instead') def apply_to_start(self, f): return self.map(f, lambda index, length: index == 0) @deprecated('0.19', 'use slicing instead') def apply_to_end(self, f): return self.map(f, lambda index, length: index == length - 1) @deprecated('0.19') def map(self, f, condition=None): if condition is None: condition = lambda index, length: True def iter_map_with_condition(): length = len(self) for index, child in enumerate(self.parts): if hasattr(child, 'map'): yield child.map(f, condition) if condition(index, length) else child else: yield f(child) if condition(index, length) else child return self._create_similar(iter_map_with_condition()) @py3compat.python_2_unicode_compatible class String(BaseText): """ A :py:class:`String` is a wrapper for a plain Python string. >>> from pybtex.richtext import String >>> print(String('Crime & Punishment').render_as('text')) Crime & Punishment >>> print(String('Crime & Punishment').render_as('html')) Crime & Punishment :py:class:`String` supports the same methods as :py:class:`Text`. """ def __init__(self, *parts): """ All arguments must be plain unicode strings. Arguments are concatenated together. >>> print(six.text_type(String('November', ', ', 'December', '.'))) November, December. """ self.value = ''.join(parts) def __repr__(self): return str_repr(self.value) def __str__(self): return six.text_type(self.value) def __eq__(self, other): """ Compare two :py:class:`.String` objects. """ return type(other) == type(self) and self.value == other.value def __len__(self): return self.value.__len__() def __contains__(self, item): return self.value.__contains__(item) def __getitem__(self, index): return String(self.value.__getitem__(index)) def __add__(self, other): return BaseText.__add__(self, other) def split(self, sep=None, keep_empty_parts=None): if keep_empty_parts is None: keep_empty_parts = sep is not None if sep is None: from .textutils import whitespace_re parts = whitespace_re.split(self.value) elif isinstance(sep, six.string_types): parts = self.value.split(sep) else: try: split_method = sep.split except AttributeError: raise TypeError('sep must be None, string or compiled regular expression') else: parts = split_method(self.value) return [String(part) for part in parts if part or keep_empty_parts] def startswith(self, prefix): """ Return True if string starts with the prefix, otherwise return False. prefix can also be a tuple of suffixes to look for. """ return self.value.startswith(prefix) def endswith(self, suffix): """ Return True if the string ends with the specified suffix, otherwise return False. suffix can also be a tuple of suffixes to look for. return self.value.endswith(text) """ return self.value.endswith(suffix) def isalpha(self): return self.value.isalpha() def lower(self): return String(self.value.lower()) def upper(self): return String(self.value.upper()) @property def parts(self): return [six.text_type(self)] def _typeinfo(self): return String, () def render(self, backend): return backend.format_str(self.value) class Text(BaseMultipartText): """ The :py:class:`Text` class is the top level container that may contain :py:class:`String`, :py:class:`Tag` or :py:class:`HRef` objects. """ def __repr__(self): return 'Text({})'.format(', '.join(repr(part) for part in self.parts)) def _unpack(self): for part in self.parts: yield part @classmethod def from_latex(cls, latex): import codecs import latexcodec # noqa from pybtex.markup import LaTeXParser return LaTeXParser(codecs.decode(latex, 'ulatex')).parse() class Tag(BaseMultipartText): r""" A :py:class:`Tag` represents something like an HTML tag or a LaTeX formatting command: >>> from pybtex.richtext import Tag >>> tag = Tag('em', 'The TeXbook') >>> print(tag.render_as('html')) The TeXbook >>> print(tag.render_as('latex')) \emph{The TeXbook} :py:class:`Tag` supports the same methods as :py:class:`Text`. """ def __check_name(self, name): depr_map = {} depr_map[u'emph'] = u'em' if name in depr_map: msg = u"The tag '%s' is deprecated" % name msg += u", use '%s' instead." % depr_map[name] warnings.warn(msg, DeprecationWarning, stacklevel=3) return depr_map[name] return name def __init__(self, name, *args): if not isinstance(name, (six.string_types, Text)): raise ValueError( "name must be str or Text (got %s)" % name.__class__.__name__) self.name = self.__check_name(six.text_type(name)) self.info = self.name, super(Tag, self).__init__(*args) def __repr__(self): if self.parts: reprparts = ', '.join(repr(part) for part in self.parts) return 'Tag({}, {})'.format(str_repr(self.name), reprparts) else: return 'Tag({})'.format(str_repr(self.name)) def render(self, backend): text = super(Tag, self).render(backend) return backend.format_tag(self.name, text) class HRef(BaseMultipartText): """ A :py:class:`HRef` represends a hyperlink: >>> from pybtex.richtext import Tag >>> href = HRef('http://ctan.org/', 'CTAN') >>> print(href.render_as('html')) CTAN >>> print(href.render_as('latex')) \\href{http://ctan.org/}{CTAN} >>> href = HRef(String('http://ctan.org/'), String('http://ctan.org/')) >>> print(href.render_as('latex')) \\url{http://ctan.org/} :py:class:`HRef` supports the same methods as :py:class:`Text`. """ def __init__(self, url, *args): if not isinstance(url, (six.string_types, BaseText)): raise ValueError( "url must be str or Text (got %s)" % url.__class__.__name__) self.url = six.text_type(url) self.info = self.url, super(HRef, self).__init__(*args) def __repr__(self): reprparts = ', '.join(repr(part) for part in self.parts) return 'HRef({}, {})'.format(str_repr(self.url), reprparts) def render(self, backend): text = super(HRef, self).render(backend) return backend.format_href(self.url, text) class Protected(BaseMultipartText): r""" A :py:class:`Protected` represents a "protected" piece of text. - :py:meth:`Protected.lower`, :py:meth:`Protected.upper`, :py:meth:`Protected.capitalize`, and :py:meth:`Protected.capitalize()` are no-ops and just return the :py:class:`Protected` object itself. - :py:meth:`Protected.split` never splits the text. It always returns a one-element list containing the :py:class:`Protected` object itself. - In LaTeX output, :py:class:`Protected` is {surrounded by braces}. HTML and plain text backends just output the text as-is. >>> from pybtex.richtext import Protected >>> text = Protected('The CTAN archive') >>> text.lower() Protected('The CTAN archive') >>> text.split() [Protected('The CTAN archive')] >>> print(text.render_as('latex')) {The CTAN archive} >>> print(text.render_as('html')) The CTAN archive .. versionadded:: 0.20 """ def __init__(self, *args): super(Protected, self).__init__(*args) def __repr__(self): reprparts = ', '.join(repr(part) for part in self.parts) return 'Protected({})'.format(reprparts) def capfirst(self): return self def capitalize(self): return self def lower(self): return self def upper(self): return self def split(self, sep=None, keep_empty_parts=None): return [self] def render(self, backend): text = super(Protected, self).render(backend) return backend.format_protected(text) @py3compat.python_2_unicode_compatible class Symbol(BaseText): """A special symbol. This class is rarely used and may be removed in future versions. Examples of special symbols are non-breaking spaces and dashes. :py:class:`Symbol` supports the same methods as :py:class:`Text`. """ def __init__(self, name): self.name = name self.info = self.name, def __len__(self): return 1 def __repr__(self): return "Symbol(%s)" % str_repr(self.name) def __str__(self): # XXX return u'<%s>' % self.name def __eq__(self, other): return self.name == other.name def __contains__(self, item): return False def __getitem__(self, index): # mimic the behavior of a 1-element string try: result = 'a'[index] except IndexError: raise IndexError('richtext.Symbol index out of range') else: return self if result else String() def split(self, sep=None, keep_empty_parts=None): return [self] def startswith(self, text): return False def endswith(self, text): return False def isalpha(self): return False def render(self, backend): return backend.symbols[self.name] def upper(self): return self def lower(self): return self nbsp = Symbol('nbsp') ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5546122 pybtex-0.24.0/pybtex/scanner.py0000644000175000001440000001411100000000000016173 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """Base parser class """ from __future__ import unicode_literals import re from pybtex.exceptions import PybtexError from pybtex import py3compat class Token(object): def __init__(self, value, pattern): self.value = value self.pattern = pattern def __repr__(self): return repr(self.value) class Pattern(object): def __init__(self, regexp, description, flags=0): self.description = description compiled_regexp = re.compile(regexp, flags=flags) self.search = compiled_regexp.search self.match = compiled_regexp.match self.findall = compiled_regexp.findall class Literal(Pattern): def __init__(self, literal): pattern = re.compile(re.escape(literal)) description = u"'{0}'".format(literal) super(Literal, self).__init__(pattern, description) class Scanner(object): text = None lineno = 1 pos = 0 WHITESPACE = Pattern(r'\s+', 'whitespace') NEWLINE = Pattern(r'\n|(\r\n)|\r', 'newline') def __init__(self, text, filename=None): self.text = text self.end_pos = len(text) self.filename = filename def skip_to(self, patterns): end = None winning_pattern = None for pattern in patterns: match = pattern.search(self.text, self.pos) if match and (not end or match.end() < end): end = match.end() winning_pattern = pattern if winning_pattern: value = self.text[self.pos: end] self.pos = end # print '>>', value self.update_lineno(value) return Token(value, winning_pattern) def update_lineno(self, value): num_newlines = value.count("\n") + value.count("\r") - value.count("\r\n") self.lineno += num_newlines def eat_whitespace(self): whitespace = self.WHITESPACE.match(self.text, self.pos) if whitespace: self.pos = whitespace.end() self.update_lineno(whitespace.group()) def eof(self): return self.pos == self.end_pos def get_token(self, patterns, allow_eof=False): self.eat_whitespace() if self.eof(): if allow_eof: raise EOFError else: raise PrematureEOF(self) for pattern in patterns: match = pattern.match(self.text, self.pos) if match: value = match.group() self.pos = match.end() # print '->', value return Token(value, pattern) def optional(self, patterns, allow_eof=False): return self.get_token(patterns, allow_eof=allow_eof) def required(self, patterns, description=None, allow_eof=False): token = self.get_token(patterns, allow_eof=allow_eof) if token is None: if not description: description = ' or '.join(pattern.description for pattern in patterns) raise TokenRequired(description, self) else: return token def get_error_context_info(self): return self.lineno, self.pos def get_error_context(self, context_info): error_lineno, error_pos = context_info if error_lineno is not None: error_lineno0 = error_lineno - 1 lines = self.text.splitlines(True) before_error = ''.join(lines[:error_lineno0]) colno = error_pos - len(before_error) context = lines[error_lineno0].rstrip('\r\n') else: colno = None context = None return context, error_lineno, colno def get_remainder(self): return self.text[self.pos:] @py3compat.python_2_unicode_compatible class PybtexSyntaxError(PybtexError): error_type = 'syntax error' def __init__(self, message, parser): super(PybtexSyntaxError, self).__init__(message, filename=parser.filename) self.lineno = parser.lineno self.parser = parser self.error_context_info = parser.get_error_context_info() def __str__(self): base_message = super(PybtexSyntaxError, self).__str__() pos = u' in line {0}'.format(self.lineno) if self.lineno is not None else '' return u'{error_type}{pos}: {message}'.format( error_type=self.error_type, pos=pos, message=base_message, ) class PrematureEOF(PybtexSyntaxError): def __init__(self, parser): message = 'premature end of file' super(PrematureEOF, self).__init__(message, parser) class TokenRequired(PybtexSyntaxError): def __init__(self, description, parser): message = u'{0} expected'.format(description) super(TokenRequired, self).__init__(message, parser) def get_context(self): context, lineno, colno = self.parser.get_error_context(self.error_context_info) if context is None: return '' if colno == 0: marker = '^^' else: marker = ' ' * (colno - 1) + '^^^' return '\n'.join((context, marker)) ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.954714 pybtex-0.24.0/pybtex/style/0000755000175000001440000000000000000000000015332 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.558612 pybtex-0.24.0/pybtex/style/__init__.py0000644000175000001440000000351400000000000017446 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals class FormattedEntry(object): """Formatted bibliography entry. Consists of - key (which is used for sorting); - label (which appears in the resulting bibliography) - text (usually RichText) """ def __init__(self, key, text, label=None): self.key = key self.text = text self.label = label class FormattedBibliography(object): def __init__(self, entries, style, preamble=''): self.entries = list(entries) self.style = style self.preamble = preamble def __iter__(self): return iter(self.entries) def get_longest_label(self): label_style = self.style.label_style return label_style.get_longest_label(self.entries) ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.955714 pybtex-0.24.0/pybtex/style/formatting/0000755000175000001440000000000000000000000017504 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5596123 pybtex-0.24.0/pybtex/style/formatting/__init__.py0000644000175000001440000000756400000000000021631 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals from pybtex.style import FormattedEntry, FormattedBibliography from pybtex.style.template import node, join from pybtex.richtext import Symbol from pybtex.plugin import Plugin, find_plugin @node def toplevel(children, data): return join(sep=Symbol('newblock')) [children].format_data(data) class BaseStyle(Plugin): """ The base class for pythonic formatting styles. """ default_name_style = None default_label_style = None default_sorting_style = None def __init__(self, label_style=None, name_style=None, sorting_style=None, abbreviate_names=False, min_crossrefs=2, **kwargs): self.name_style = find_plugin('pybtex.style.names', name_style or self.default_name_style)() self.label_style = find_plugin('pybtex.style.labels', label_style or self.default_label_style)() self.sorting_style = find_plugin('pybtex.style.sorting', sorting_style or self.default_sorting_style)() self.format_name = self.name_style.format self.format_labels = self.label_style.format_labels self.sort = self.sorting_style.sort self.abbreviate_names = abbreviate_names self.min_crossrefs = min_crossrefs def format_entries(self, entries, bib_data=None): sorted_entries = self.sort(entries) labels = self.format_labels(sorted_entries) for label, entry in zip(labels, sorted_entries): yield self.format_entry(label, entry, bib_data=bib_data) def format_entry(self, label, entry, bib_data=None): context = { 'entry': entry, 'style': self, 'bib_data': bib_data, } try: get_template = getattr(self, 'get_{}_template'.format(entry.type)) except AttributeError: format_method = getattr(self, "format_" + entry.type) text = format_method(context) else: text = get_template(entry).format_data(context) return FormattedEntry(entry.key, text, label) def format_bibliography(self, bib_data, citations=None): """ Format bibliography entries with the given keys and return a ``FormattedBibliography`` object. :param bib_data: A :py:class:`pybtex.database.BibliographyData` object. :param citations: A list of citation keys. """ if citations is None: citations = list(bib_data.entries.keys()) citations = bib_data.add_extra_citations(citations, self.min_crossrefs) entries = [bib_data.entries[key] for key in citations] formatted_entries = self.format_entries(entries) formatted_bibliography = FormattedBibliography(formatted_entries, style=self, preamble=bib_data.preamble) return formatted_bibliography ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5566123 pybtex-0.24.0/pybtex/style/formatting/alpha.py0000644000175000001440000000244400000000000021147 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals from pybtex.style.formatting.unsrt import Style as UnsrtStyle class Style(UnsrtStyle): default_sorting_style = 'author_year_title' default_label_style = 'alpha' ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5606122 pybtex-0.24.0/pybtex/style/formatting/plain.py0000644000175000001440000000240200000000000021157 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals from pybtex.style.formatting.unsrt import Style as UnsrtStyle class Style(UnsrtStyle): default_sorting_style = 'author_year_title' ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5576122 pybtex-0.24.0/pybtex/style/formatting/unsrt.py0000644000175000001440000003627300000000000021244 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals import re from pybtex.richtext import Symbol, Text from pybtex.style.formatting import BaseStyle, toplevel from pybtex.style.template import ( field, first_of, href, join, names, optional, optional_field, sentence, tag, together, words ) def dashify(text): dash_re = re.compile(r'-+') return Text(Symbol('ndash')).join(text.split(dash_re)) pages = field('pages', apply_func=dashify) date = words [optional_field('month'), field('year')] class Style(BaseStyle): def format_names(self, role, as_sentence=True): formatted_names = names(role, sep=', ', sep2 = ' and ', last_sep=', and ') if as_sentence: return sentence [formatted_names] else: return formatted_names def get_article_template(self, e): volume_and_pages = first_of [ # volume and pages, with optional issue number optional [ join [ field('volume'), optional['(', field('number'),')'], ':', pages ], ], # pages only words ['pages', pages], ] template = toplevel [ self.format_names('author'), self.format_title(e, 'title'), sentence [ tag('em') [field('journal')], optional[ volume_and_pages ], date], sentence [ optional_field('note') ], self.format_web_refs(e), ] return template def format_author_or_editor(self, e): return first_of [ optional[ self.format_names('author') ], self.format_editor(e), ] def format_editor(self, e, as_sentence=True): editors = self.format_names('editor', as_sentence=False) if 'editor' not in e.persons: # when parsing the template, a FieldIsMissing exception # will be thrown anyway; no need to do anything now, # just return the template that will throw the exception return editors if len(e.persons['editor']) > 1: word = 'editors' else: word = 'editor' result = join(sep=', ') [editors, word] if as_sentence: return sentence [result] else: return result def format_volume_and_series(self, e, as_sentence=True): volume_and_series = optional [ words [ together ['Volume' if as_sentence else 'volume', field('volume')], optional [ words ['of', field('series')] ] ] ] number_and_series = optional [ words [ join(sep=Symbol('nbsp')) ['Number' if as_sentence else 'number', field('number')], optional [ words ['in', field('series')] ] ] ] series = optional_field('series') result = first_of [ volume_and_series, number_and_series, series, ] if as_sentence: return sentence(capfirst=True) [result] else: return result def format_chapter_and_pages(self, e): return join(sep=', ') [ optional [together ['chapter', field('chapter')]], optional [together ['pages', pages]], ] def format_edition(self, e): return optional [ words [ field('edition', apply_func=lambda x: x.lower()), 'edition', ] ] def format_title(self, e, which_field, as_sentence=True): formatted_title = field( which_field, apply_func=lambda text: text.capitalize() ) if as_sentence: return sentence [ formatted_title ] else: return formatted_title def format_btitle(self, e, which_field, as_sentence=True): formatted_title = tag('em') [ field(which_field) ] if as_sentence: return sentence[ formatted_title ] else: return formatted_title def format_address_organization_publisher_date( self, e, include_organization=True): """Format address, organization, publisher, and date. Everything is optional, except the date. """ # small difference from unsrt.bst here: unsrt.bst # starts a new sentence only if the address is missing; # for simplicity here we always start a new sentence if include_organization: organization = optional_field('organization') else: organization = None return first_of[ # this will be rendered if there is an address optional [ join(sep=' ') [ sentence[ field('address'), date, ], sentence[ organization, optional_field('publisher'), ], ], ], # if there is no address then we have this sentence[ organization, optional_field('publisher'), date, ], ] def get_book_template(self, e): template = toplevel [ self.format_author_or_editor(e), self.format_btitle(e, 'title'), self.format_volume_and_series(e), sentence [ field('publisher'), optional_field('address'), self.format_edition(e), date ], optional[ sentence [ self.format_isbn(e) ] ], sentence [ optional_field('note') ], self.format_web_refs(e), ] return template def get_booklet_template(self, e): template = toplevel [ self.format_names('author'), self.format_title(e, 'title'), sentence [ optional_field('howpublished'), optional_field('address'), date, optional_field('note'), ], self.format_web_refs(e), ] return template def get_inbook_template(self, e): template = toplevel [ self.format_author_or_editor(e), sentence [ self.format_btitle(e, 'title', as_sentence=False), self.format_chapter_and_pages(e), ], self.format_volume_and_series(e), sentence [ field('publisher'), optional_field('address'), optional [ words [field('edition'), 'edition'] ], date, optional_field('note'), ], self.format_web_refs(e), ] return template def get_incollection_template(self, e): template = toplevel [ sentence [self.format_names('author')], self.format_title(e, 'title'), words [ 'In', sentence [ optional[ self.format_editor(e, as_sentence=False) ], self.format_btitle(e, 'booktitle', as_sentence=False), self.format_volume_and_series(e, as_sentence=False), self.format_chapter_and_pages(e), ], ], sentence [ optional_field('publisher'), optional_field('address'), self.format_edition(e), date, ], self.format_web_refs(e), ] return template def get_inproceedings_template(self, e): template = toplevel [ sentence [self.format_names('author')], self.format_title(e, 'title'), words [ 'In', sentence [ optional[ self.format_editor(e, as_sentence=False) ], self.format_btitle(e, 'booktitle', as_sentence=False), self.format_volume_and_series(e, as_sentence=False), optional[ pages ], ], self.format_address_organization_publisher_date(e), ], sentence [ optional_field('note') ], self.format_web_refs(e), ] return template def get_manual_template(self, e): # TODO this only corresponds to the bst style if author is non-empty # for empty author we should put the organization first template = toplevel [ optional [ sentence [ self.format_names('author') ] ], self.format_btitle(e, 'title'), sentence [ optional_field('organization'), optional_field('address'), self.format_edition(e), optional[ date ], ], sentence [ optional_field('note') ], self.format_web_refs(e), ] return template def get_mastersthesis_template(self, e): template = toplevel [ sentence [self.format_names('author')], self.format_title(e, 'title'), sentence[ "Master's thesis", field('school'), optional_field('address'), date, ], sentence [ optional_field('note') ], self.format_web_refs(e), ] return template def get_misc_template(self, e): template = toplevel [ optional[ sentence [self.format_names('author')] ], optional[ self.format_title(e, 'title') ], sentence[ optional[ field('howpublished') ], optional[ date ], ], sentence [ optional_field('note') ], self.format_web_refs(e), ] return template def get_online_template(self, e): return self.get_misc_template(e) def get_phdthesis_template(self, e): template = toplevel [ sentence [self.format_names('author')], self.format_btitle(e, 'title'), sentence[ first_of [ optional_field('type'), 'PhD thesis', ], field('school'), optional_field('address'), date, ], sentence [ optional_field('note') ], self.format_web_refs(e), ] return template def get_proceedings_template(self, e): if 'editor' in e.persons: main_part = [ self.format_editor(e), sentence [ self.format_btitle(e, 'title', as_sentence=False), self.format_volume_and_series(e, as_sentence=False), self.format_address_organization_publisher_date(e), ], ] else: main_part = [ optional [ sentence [ field('organization') ] ], sentence [ self.format_btitle(e, 'title', as_sentence=False), self.format_volume_and_series(e, as_sentence=False), self.format_address_organization_publisher_date( e, include_organization=False), ], ] template = toplevel [ main_part + [ sentence [ optional_field('note') ], self.format_web_refs(e), ] ] return template def get_techreport_template(self, e): template = toplevel [ sentence [self.format_names('author')], self.format_title(e, 'title'), sentence [ words[ first_of [ optional_field('type'), 'Technical Report', ], optional_field('number'), ], field('institution'), optional_field('address'), date, ], sentence [ optional_field('note') ], self.format_web_refs(e), ] return template def get_unpublished_template(self, e): template = toplevel [ sentence [self.format_names('author')], self.format_title(e, 'title'), sentence [ field('note'), optional[ date ] ], self.format_web_refs(e), ] return template def format_web_refs(self, e): # based on urlbst output.web.refs return sentence [ optional [ self.format_url(e), optional [ ' (visited on ', field('urldate'), ')' ] ], optional [ self.format_eprint(e) ], optional [ self.format_pubmed(e) ], optional [ self.format_doi(e) ], ] def format_url(self, e): # based on urlbst format.url return words [ 'URL:', href [ field('url', raw=True), field('url', raw=True) ] ] def format_pubmed(self, e): # based on urlbst format.pubmed return href [ join [ 'https://www.ncbi.nlm.nih.gov/pubmed/', field('pubmed', raw=True) ], join [ 'PMID:', field('pubmed', raw=True) ] ] def format_doi(self, e): # based on urlbst format.doi return href [ join [ 'https://doi.org/', field('doi', raw=True) ], join [ 'doi:', field('doi', raw=True) ] ] def format_eprint(self, e): # based on urlbst format.eprint return href [ join [ 'https://arxiv.org/abs/', field('eprint', raw=True) ], join [ 'arXiv:', field('eprint', raw=True) ] ] def format_isbn(self, e): return join(sep=' ') [ 'ISBN', field('isbn') ] ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5576122 pybtex-0.24.0/pybtex/style/formatting/unsrtalpha.py0000644000175000001440000000236400000000000022244 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals from pybtex.style.formatting.unsrt import Style as UnsrtStyle class Style(UnsrtStyle): default_label_style = 'alpha' ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.955714 pybtex-0.24.0/pybtex/style/labels/0000755000175000001440000000000000000000000016574 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5526123 pybtex-0.24.0/pybtex/style/labels/__init__.py0000644000175000001440000000270500000000000020711 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals from pybtex.plugin import Plugin from pybtex.textutils import width class BaseLabelStyle(Plugin): def get_longest_label(self, formatted_entries): labels = (entry.label for entry in formatted_entries) return max(labels, key=width) def format_labels(self, sorted_entries): raise NotImplementedError ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5536122 pybtex-0.24.0/pybtex/style/labels/alpha.py0000644000175000001440000001471300000000000020241 0ustar00agusers00000000000000# -*- coding: utf-8 -*- # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import absolute_import, unicode_literals import re import sys import unicodedata import six from pybtex.style.labels import BaseLabelStyle from pybtex.textutils import abbreviate if sys.version_info < (2, 7): from counter import Counter else: from collections import Counter _nonalnum_pattern = re.compile('[^A-Za-z0-9]+', re.UNICODE) def _strip_accents(s): return u''.join( (c for c in unicodedata.normalize('NFD', s) if not unicodedata.combining(c))) def _strip_nonalnum(parts): """Strip all non-alphanumerical characters from a list of strings. >>> print(_strip_nonalnum([u"ÅA. B. Testing 12+}[.@~_", u" 3%"])) AABTesting123 """ s = u''.join(parts) return _nonalnum_pattern.sub(u'', _strip_accents(s)) def _abbr(parts): return (abbreviate(part) for part in parts) class LabelStyle(BaseLabelStyle): def format_labels(self, sorted_entries): labels = [self.format_label(entry) for entry in sorted_entries] count = Counter(labels) counted = Counter() for label in labels: if count[label] == 1: yield label else: yield label + chr(ord('a') + counted[label]) counted.update([label]) # note: this currently closely follows the alpha.bst code # we should eventually refactor it def format_label(self, entry): # see alpha.bst calc.label if entry.type == "book" or entry.type == "inbook": label = self.author_editor_key_label(entry) elif entry.type == "proceedings": label = self.editor_key_organization_label(entry) elif entry.type == "manual": label = self.author_key_organization_label(entry) else: label = self.author_key_label(entry) if "year" in entry.fields: return label + entry.fields["year"][-2:] else: return label # bst additionally sets sort.label def author_key_label(self, entry): # see alpha.bst author.key.label if not "author" in entry.persons: if not "key" in entry.fields: return entry.key[:3] # entry.key is bst cite$ else: # for entry.key, bst actually uses text.prefix$ return entry.fields["key"][:3] else: return self.format_lab_names(entry.persons["author"]) def author_editor_key_label(self, entry): # see alpha.bst author.editor.key.label if not "author" in entry.persons: if not "editor" in entry.persons: if not "key" in entry.fields: return entry.key[:3] # entry.key is bst cite$ else: # for entry.key, bst actually uses text.prefix$ return entry.fields["key"][:3] else: return self.format_lab_names(entry.persons["editor"]) else: return self.format_lab_names(entry.persons["author"]) def author_key_organization_label(self, entry): if not "author" in entry.persons: if not "key" in entry.fields: if not "organization" in entry.fields: return entry.key[:3] # entry.key is bst cite$ else: result = entry.fields["organization"] if result.startswith("The "): result = result[4:] return result else: return entry.fields["key"][:3] else: return self.format_lab_names(entry.persons["author"]) def editor_key_organization_label(self, entry): if not "editor" in entry.persons: if not "key" in entry.fields: if not "organization" in entry.fields: return entry.key[:3] # entry.key is bst cite$ else: result = entry.fields["organization"] if result.startswith("The "): result = result[4:] return result else: return entry.fields["key"][:3] else: return self.format_lab_names(entry.persons["editor"]) def format_lab_names(self, persons): # see alpha.bst format.lab.names # s = persons numnames = len(persons) if numnames > 1: if numnames > 4: namesleft = 3 else: namesleft = numnames result = "" nameptr = 1 while namesleft: person = persons[nameptr - 1] if nameptr == numnames: if six.text_type(person) == "others": result += "+" else: result += _strip_nonalnum(_abbr( person.prelast_names + person.last_names)) else: result += _strip_nonalnum(_abbr( person.prelast_names + person.last_names)) nameptr += 1 namesleft -= 1 if numnames > 4: result += "+" else: person = persons[0] result = _strip_nonalnum(_abbr( person.prelast_names + person.last_names)) if len(result) < 2: result = _strip_nonalnum(person.last_names)[:3] return result ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5526123 pybtex-0.24.0/pybtex/style/labels/number.py0000644000175000001440000000257500000000000020447 0ustar00agusers00000000000000from __future__ import absolute_import, unicode_literals import six from pybtex.style.labels import BaseLabelStyle # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. class LabelStyle(BaseLabelStyle): def format_labels(self, sorted_entries): for number, entry in enumerate(sorted_entries): yield six.text_type(number + 1) ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.955714 pybtex-0.24.0/pybtex/style/names/0000755000175000001440000000000000000000000016435 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5616121 pybtex-0.24.0/pybtex/style/names/__init__.py0000644000175000001440000000343600000000000020554 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """name formatting styles """ from __future__ import unicode_literals from pybtex.plugin import Plugin from pybtex.textutils import tie_or_space from pybtex.richtext import Text, nbsp from pybtex.style.template import together, node class BaseNameStyle(Plugin): def format(self, person, abbr=False): raise NotImplementedError @node def name_part(children, data, before='', tie=False, abbr=False): if abbr: children = [child.abbreviate() for child in children] parts = together(last_tie=True) [children].format_data(data) if not parts: return Text() if tie: return Text(before, parts, tie_or_space(parts, nbsp, ' ')) else: return Text(before, parts) ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.562612 pybtex-0.24.0/pybtex/style/names/lastfirst.py0000644000175000001440000000532300000000000021025 0ustar00agusers00000000000000# -*- coding: utf-8 -*- # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals from pybtex.style.names import BaseNameStyle, name_part from pybtex.style.template import join class NameStyle(BaseNameStyle): def format(self, person, abbr=False): r""" Format names similarly to {vv~}{ll}{, jj}{, f.} in BibTeX. >>> from pybtex.database import Person >>> name = Person(string=r"Charles Louis Xavier Joseph de la Vall{\'e}e Poussin") >>> lastfirst = NameStyle().format >>> print(lastfirst(name).format().render_as('latex')) de~la Vall{é}e~Poussin, Charles Louis Xavier~Joseph >>> print(lastfirst(name).format().render_as('html')) de la Vallée Poussin, Charles Louis Xavier Joseph >>> print(lastfirst(name, abbr=True).format().render_as('latex')) de~la Vall{é}e~Poussin, C.~L. X.~J. >>> print(lastfirst(name, abbr=True).format().render_as('html')) de la Vallée Poussin, C. L. X. J. >>> name = Person(first='First', last='Last', middle='Middle') >>> print(lastfirst(name).format().render_as('latex')) Last, First~Middle >>> print(lastfirst(name, abbr=True).format().render_as('latex')) Last, F.~M. """ return join [ name_part(tie=True) [person.rich_prelast_names], name_part [person.rich_last_names], name_part(before=', ') [person.rich_lineage_names], name_part(before=', ', abbr=abbr) [person.rich_first_names + person.rich_middle_names], ] ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.562612 pybtex-0.24.0/pybtex/style/names/plain.py0000644000175000001440000000544600000000000020123 0ustar00agusers00000000000000# -*- coding: utf-8 -*- # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals from pybtex.style.names import BaseNameStyle, name_part from pybtex.style.template import join class NameStyle(BaseNameStyle): def format(self, person, abbr=False): r""" Format names similarly to {ff~}{vv~}{ll}{, jj} in BibTeX. >>> from pybtex.database import Person >>> name = Person(string=r"Charles Louis Xavier Joseph de la Vall{\'e}e Poussin") >>> plain = NameStyle().format >>> print(plain(name).format().render_as('latex')) Charles Louis Xavier~Joseph de~la Vall{é}e~Poussin >>> print(plain(name).format().render_as('html')) Charles Louis Xavier Joseph de la Vallée Poussin >>> print(plain(name, abbr=True).format().render_as('latex')) C.~L. X.~J. de~la Vall{é}e~Poussin >>> print(plain(name, abbr=True).format().render_as('html')) C. L. X. J. de la Vallée Poussin >>> name = Person(first='First', last='Last', middle='Middle') >>> print(plain(name).format().render_as('latex')) First~Middle Last >>> print(plain(name, abbr=True).format().render_as('latex')) F.~M. Last >>> print(plain(Person('de Last, Jr., First Middle')).format().render_as('latex')) First~Middle de~Last, Jr. """ return join[ name_part(tie=True, abbr=abbr)[person.rich_first_names + person.rich_middle_names], name_part(tie=True)[person.rich_prelast_names], name_part[person.rich_last_names], name_part(before=', ')[person.rich_lineage_names] ] ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.955714 pybtex-0.24.0/pybtex/style/sorting/0000755000175000001440000000000000000000000017017 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5566123 pybtex-0.24.0/pybtex/style/sorting/__init__.py0000644000175000001440000000252200000000000021131 0ustar00agusers00000000000000from __future__ import unicode_literals # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from pybtex.plugin import Plugin class BaseSortingStyle(Plugin): def sorting_key(self, entry): raise NotImplementedError def sort(self, entries): return sorted(entries, key=self.sorting_key) ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.558612 pybtex-0.24.0/pybtex/style/sorting/author_year_title.py0000644000175000001440000000431600000000000023120 0ustar00agusers00000000000000from __future__ import unicode_literals from pybtex.style.sorting import BaseSortingStyle # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. class SortingStyle(BaseSortingStyle): def sorting_key(self, entry): if entry.type in ('book', 'inbook'): author_key = self.author_editor_key(entry) elif 'author' in entry.persons: author_key = self.persons_key(entry.persons['author']) else: author_key = '' return (author_key, entry.fields.get('year', ''), entry.fields.get('title', '')) def persons_key(self, persons): return ' '.join(self.person_key(person) for person in persons) def person_key(self, person): return ' '.join(( ' '.join(person.prelast_names + person.last_names), ' '.join(person.first_names + person.middle_names), ' '.join(person.lineage_names), )).lower() def author_editor_key(self, entry): if entry.persons.get('author'): return self.persons_key(entry.persons['author']) elif entry.persons.get('editor'): return self.persons_key(entry.persons['editor']) else: return '' ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.558612 pybtex-0.24.0/pybtex/style/sorting/none.py0000644000175000001440000000241000000000000020325 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals from pybtex.style.sorting import BaseSortingStyle class SortingStyle(BaseSortingStyle): def sort(self, entries): return entries ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5546122 pybtex-0.24.0/pybtex/style/template.py0000644000175000001440000002464200000000000017527 0ustar00agusers00000000000000# vim:fileencoding=utf8 # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """ A template engine for bibliography entries and more. Inspired by Brevé -- http://breve.twisty-industries.com/ >>> from pybtex.database import Entry, Person >>> author = Person(first='First', last='Last', middle='Middle') >>> fields = { ... 'title': 'The Book', ... 'year': '2000', ... } >>> e = Entry('book', fields=fields) >>> book_format = sentence(capfirst=True, sep=', ') [ ... field('title'), field('year'), optional [field('sdf')] ... ] >>> print(six.text_type(book_format.format_data({'entry': e}))) The Book, 2000. >>> print(six.text_type(words ['one', 'two', words ['three', 'four']].format_data(e))) one two three four """ from __future__ import unicode_literals import six from pybtex import richtext from pybtex.exceptions import PybtexError from pybtex.py3compat import fix_unicode_literals_in_doctest __test__ = {} # for doctest class Node(object): def __init__(self, name, f): self.name = name self.f = f self.args = [] self.kwargs = {} self.children = [] def _clone(self): result = Node(self.name, self.f) result.args = list(self.args) result.kwargs = dict(self.kwargs) result.children = list(self.children) return result def __call__(self, *args, **kwargs): result = self._clone() result.args.extend(args) result.kwargs.update(kwargs) return result def __getitem__(self, children): result = self._clone() if isinstance(children, (list, tuple)): result.children.extend(children) else: result.children.append(children) return result @fix_unicode_literals_in_doctest def __repr__(self): """ >>> join(', ') join(u', ') >>> join join >>> join ['a'] join [u'a'] >>> join ['a', 'b', 'c'] join [u'a', u'b', u'c'] >>> join(' ') [u'a', u'b', u'c'] join(u' ') [u'a', u'b', u'c'] >>> join(sep=' ') [u'a', u'b', u'c'] join(sep=u' ') [u'a', u'b', u'c'] >>> join(sep=u' ') [tag('em') [u'a', u'b', u'c']] join(sep=u' ') [tag(u'em') [u'a', u'b', u'c']] """ params = [] args_repr = ', '.join(repr(arg) for arg in self.args) if args_repr: params.append(args_repr) kwargs_repr = ', '.join( '%s=%s' % (key, repr(value)) for (key, value) in self.kwargs.items() ) if kwargs_repr: params.append(kwargs_repr) if params: params_repr = '(%s)' % ', '.join(params) else: params_repr = '' if self.children: children_repr = ' [%s]' % ', '.join( repr(child) for child in self.children ) else: children_repr = '' return ''.join([self.name, params_repr, children_repr]) def format_data(self, data): """Format the given data into a piece of richtext.Text""" return self.f(self.children, data, *self.args, **self.kwargs) def format(self): """A convenience function to be used instead of format_data when no data is needed. """ return self.format_data(None) def _format_data(node, data): try: f = node.format_data except AttributeError: return node else: return f(data) def _format_list(list_, data): return (_format_data(part, data) for part in list_) def node(f): if f.__doc__: __test__[f.__name__] = f return Node(f.__name__, f) @node def join(children, data, sep='', sep2=None, last_sep=None): """Join text fragments together. >>> print(six.text_type(join.format())) >>> print(six.text_type(join ['a', 'b', 'c', 'd', 'e'].format())) abcde >>> print(six.text_type(join(sep=', ', sep2=' and ', last_sep=', and ') ['Tom', 'Jerry'].format())) Tom and Jerry >>> print(six.text_type(join(sep=', ', sep2=' and ', last_sep=', and ') ['Billy', 'Willy', 'Dilly'].format())) Billy, Willy, and Dilly """ if sep2 is None: sep2 = sep if last_sep is None: last_sep = sep parts = [part for part in _format_list(children, data) if part] if len(parts) <= 1: return richtext.Text(*parts) elif len(parts) == 2: return richtext.Text(sep2).join(parts) else: return richtext.Text(last_sep).join([richtext.Text(sep).join(parts[:-1]), parts[-1]]) @node def words(children, data, sep=' '): """Join text fragments with spaces or something else.""" return join(sep) [children].format_data(data) @node def together(children, data, last_tie=False): """ Try to keep words together, like BibTeX does. >>> print(six.text_type(together ['very', 'long', 'road'].format())) very long road >>> print(six.text_type(together(last_tie=True) ['very', 'long', 'road'].format())) very longroad >>> print(six.text_type(together ['a', 'very', 'long', 'road'].format())) avery long road >>> print(six.text_type(together ['chapter', '8'].format())) chapter8 >>> print(six.text_type(together ['chapter', '666'].format())) chapter 666 """ from pybtex.textutils import tie_or_space tie = richtext.nbsp space = richtext.String(' ') parts = [part for part in _format_list(children, data) if part] if not parts: return richtext.Text() if len(parts) <= 2: tie2 = tie if last_tie else tie_or_space(parts[0], tie, space, other_word=parts[-1]) return tie2.join(parts) else: last_tie = tie if last_tie else tie_or_space(parts[-1], tie, space) return richtext.Text( parts[0], tie_or_space(parts[0], tie, space), space.join(parts[1:-1]), last_tie, parts[-1] ) @node def sentence(children, data, capfirst=False, capitalize=False, add_period=True, sep=', '): """Join text fragments, capitalyze the first letter, add a period to the end. >>> print(six.text_type(sentence.format())) >>> print(six.text_type(sentence(capitalize=True, sep=' ') ['mary', 'had', 'a', 'little', 'lamb'].format())) Mary had a little lamb. >>> print(six.text_type(sentence(capitalize=False, add_period=False) ['uno', 'dos', 'tres'].format())) uno, dos, tres """ text = join(sep) [children].format_data(data) if capfirst: text = text.capfirst() if capitalize: text = text.capitalize() if add_period: text = text.add_period() return text class FieldIsMissing(PybtexError): def __init__(self, field_name, entry): self.field_name = field_name super(FieldIsMissing, self).__init__( u'missing {0} in {1}'.format(field_name, getattr(entry, 'key', '')) ) @node def field(children, context, name, apply_func=None, raw=False): """Return the contents of the bibliography entry field.""" assert not children entry = context['entry'] try: field = entry._find_field(name, bib_data=context.get('bib_data')) if not raw: field = richtext.Text.from_latex(field) except KeyError: raise FieldIsMissing(name, entry) else: if apply_func: field = apply_func(field) return field @node def names(children, context, role, **kwargs): """Return formatted names.""" assert not children try: persons = context['entry'].persons[role] except KeyError: raise FieldIsMissing(role, context['entry']) style = context['style'] formatted_names = [style.format_name(person, style.abbreviate_names) for person in persons] return join(**kwargs) [formatted_names].format_data(context) @node def optional(children, data): """If children contain a missing bibliography field, return None. Else return formatted children. >>> from pybtex.database import Entry >>> template = optional [field('volume'), optional['(', field('number'), ')']] >>> template.format_data({'entry': Entry('article')}) Text() """ try: return richtext.Text(*_format_list(children, data)) except FieldIsMissing: return richtext.Text() @node def optional_field(children, data, *args, **kwargs): assert not children return optional [field(*args, **kwargs)].format_data(data) @node def tag(children, data, name): """Wrap text into a tag. >>> print(tag('em') ['important'].format().render_as('html')) important >>> print(sentence ['ready', 'set', tag('em') ['go']].format().render_as('html')) ready, set, go. >>> print(sentence(capitalize=True) ['ready', 'set', tag('em') ['go']].format().render_as('html')) Ready, set, go. """ parts = _format_list(children, data) return richtext.Tag(name, *parts) @node def href(children, data): """Wrap text into a href. >>> print(href ['www.test.org', 'important'].format().render_as('html')) important >>> print(sentence ['ready', 'set', href ['www.test.org', 'go']].format().render_as('html')) ready, set, go. """ parts = _format_list(children, data) return richtext.HRef(*parts) @node def first_of(children, data): """Return first nonempty child.""" for child in _format_list(children, data): if child: return child return richtext.Text() ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5506122 pybtex-0.24.0/pybtex/textutils.py0000644000175000001440000001044100000000000016611 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals import re from pybtex.py3compat import fix_unicode_literals_in_doctest from pybtex.utils import deprecated terminators = '.', '?', '!' delimiter_re = re.compile(r'([\s\-])') whitespace_re = re.compile(r'\s+') @deprecated('0.19', 'use str.capitalize() instead') def capfirst(s): return s[0].upper() + s[1:] if s else s def is_terminated(text): """ Return True if text ends with a terminating character. >>> is_terminated('') False >>> is_terminated('.') True >>> is_terminated('Done') False >>> is_terminated('Done. ') False >>> is_terminated('Done.') True >>> is_terminated('Done...') True >>> is_terminated('Done!') True >>> is_terminated('Done?') True >>> is_terminated('Done?!') True """ return text.endswith(terminators) def add_period(text): """Add a period to the end of text, if needed. >>> print(add_period('')) >>> print(add_period('.')) . >>> print(add_period('Done')) Done. >>> print(add_period('Done. ')) Done. . >>> print(add_period('Done.')) Done. >>> print(add_period('Done...')) Done... >>> print(add_period('Done!')) Done! >>> print(add_period('Done?')) Done? >>> print(add_period('Done?!')) Done?! """ if text and not is_terminated(text): return text + '.' return text @fix_unicode_literals_in_doctest def abbreviate(text, split=delimiter_re.split): """Abbreviate the given text. >> abbreviate('Name') u'N' >> abbreviate('Some words') u'S. w.' >>> abbreviate('First-Second') u'F.-S.' """ def abbreviate(part): if part.isalpha(): return part[0] + '.' else: return part return ''.join(abbreviate(part) for part in split(text)) def normalize_whitespace(string): r""" Replace every sequence of whitespace characters with a single space. >>> print(normalize_whitespace('abc')) abc >>> print(normalize_whitespace('Abc def.')) Abc def. >>> print(normalize_whitespace(' Abc def.')) Abc def. >>> print(normalize_whitespace('Abc\ndef.')) Abc def. >>> print(normalize_whitespace('Abc\r\ndef.')) Abc def. >>> print(normalize_whitespace('Abc \r\n\tdef.')) Abc def. >>> print(normalize_whitespace(' \nAbc\r\ndef.')) Abc def. """ return whitespace_re.sub(' ', string.strip()) def width(string): r""" Get the width of the typeset string, in relative units. Similar to BibTeX's width$, but does not care about any "special characters". >>> width('') 0 >>> width('abc') 1500 >>> width('ab{c}') 2500 >>> width(r"ab{\'c}") 3278 >>> width(r"ab{\'c{}}") 4278 >>> width(r"ab{\'c{}") 3778 >>> width(r"ab{\'c{d}}") 4834 """ from pybtex.charwidths import charwidths return sum(charwidths.get(char, 0) for char in string) def tie_or_space(word, tie='~', space=' ', enough_chars=3, other_word=None): n_chars = len(word) if other_word is not None: n_chars = min(n_chars, len(other_word)) if n_chars < enough_chars: return tie else: return space ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5506122 pybtex-0.24.0/pybtex/utils.py0000644000175000001440000002251000000000000015704 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """Miscellaneous small utils.""" from __future__ import print_function, unicode_literals import itertools from collections import OrderedDict, deque from functools import wraps from types import GeneratorType try: from collections.abc import MutableMapping, MutableSet, Sequence except ImportError: from collections import MutableMapping, MutableSet, Sequence from six.moves import zip_longest from .py3compat import fix_unicode_literals_in_doctest def deprecated(since, reason=None): def decorator(f): @wraps(f) def new_f(*args, **kwargs): import warnings message = u'{0}() is deprecated since {1}'.format(f.__name__, since) if reason: message += ': {0}'.format(reason) warnings.warn(message, DeprecationWarning, stacklevel=2) return f(*args, **kwargs) return new_f return decorator def memoize(f, capacity=1024): memory = {} history = deque() @wraps(f) def new_f(*args): if args not in memory: if len(history) >= capacity: del memory[history.popleft()] memory[args] = f(*args) history.append(args) return memory[args] return new_f def collect_iterable(f): @wraps(f) def new_f(*args, **kwargs): return list(f(*args, **kwargs)) return new_f def pairwise(iterable): a, b = itertools.tee(iterable) next(b, None) return zip_longest(a, b) @fix_unicode_literals_in_doctest class CaseInsensitiveDict(MutableMapping): """A dict with case-insensitive lookup. >>> d = CaseInsensitiveDict(TesT='passed') >>> d CaseInsensitiveDict({'TesT': u'passed'}) >>> d.lower() CaseInsensitiveDict({'test': u'passed'}) >>> print(d['TesT']) passed >>> print(d['test']) passed >>> print(d['Test']) passed >>> print(d.get('test')) passed >>> print(d.get('Test')) passed >>> d['Test'] = 'passed again' >>> print(d['test']) passed again >>> 'test' in d True >>> 'Test' in d True >>> list(d.keys()) [u'Test'] >>> for key in d: ... print(key) Test >>> for key, value in d.items(): ... print(key, value) Test passed again >>> bool(d) True >>> len(d) 1 >>> del d['test'] >>> len(d) 0 >>> bool(d) False >>> 'test' in d False >>> 'Test' in d False >>> print(d.get('test')) None >>> print(d.get('Test')) None >>> print(d.get('Test', 'failed')) failed >>> CaseInsensitiveDict( ... (key, value) for key, value in [('a', 'b')] ... ) CaseInsensitiveDict({u'a': u'b'}) """ def __init__(self, *args, **kwargs): initial = dict(*args, **kwargs) self._dict = dict((key.lower(), value) for key, value in initial.items()) self._keys = dict((key.lower(), key) for key in initial) def __len__(self): return len(self._dict) def __iter__(self): return iter(self._keys.values()) def __setitem__(self, key, value): """To implement lowercase keys.""" key_lower = key.lower() self._dict[key_lower] = value self._keys[key_lower] = key def __getitem__(self, key): return self._dict[key.lower()] def __delitem__(self, key): key_lower = key.lower() del self._dict[key_lower] del self._keys[key_lower] def __contains__(self, key): return key.lower() in self._dict def __repr__(self): """A caselessDict version of __repr__ """ dct = dict((key, self[key]) for key in self) return '{0}({1})'.format( type(self).__name__, repr(dct), ) def items_lower(self): return ((key.lower(), value) for key, value in self.items()) def lower(self): return type(self)(self.items_lower()) class CaseInsensitiveDefaultDict(CaseInsensitiveDict): """CaseInseisitiveDict with default factory, like collections.defaultdict >>> d = CaseInsensitiveDefaultDict(int) >>> d['a'] 0 >>> d['a'] += 1 >>> d['a'] 1 >>> d['A'] 1 >>> d['a'] = 3 >>> d['a'] 3 >>> d['B'] += 10 >>> d['b'] 10 """ def __init__(self, default_factory): super(CaseInsensitiveDefaultDict, self).__init__() self.default_factory = default_factory def __getitem__(self, key): try: return super(CaseInsensitiveDefaultDict, self).__getitem__(key) except KeyError: return self.default_factory() @fix_unicode_literals_in_doctest class OrderedCaseInsensitiveDict(CaseInsensitiveDict): """ An (incomplete) ordered case-insensitive dict. >>> d = OrderedCaseInsensitiveDict([ ... ('Uno', 1), ... ('Dos', 2), ... ('Tres', 3), ... ]) >>> d OrderedCaseInsensitiveDict([(u'Uno', 1), (u'Dos', 2), (u'Tres', 3)]) >>> d.lower() OrderedCaseInsensitiveDict([(u'uno', 1), (u'dos', 2), (u'tres', 3)]) >>> list(d.keys()) [u'Uno', u'Dos', u'Tres'] >>> list(d.items()) [(u'Uno', 1), (u'Dos', 2), (u'Tres', 3)] >>> list(d.values()) [1, 2, 3] >>> d['Cuatro'] = 4 >>> list(d.keys()) [u'Uno', u'Dos', u'Tres', u'Cuatro'] >>> list(d.items()) [(u'Uno', 1), (u'Dos', 2), (u'Tres', 3), (u'Cuatro', 4)] >>> list(d.values()) [1, 2, 3, 4] >>> list(d) [u'Uno', u'Dos', u'Tres', u'Cuatro'] >>> 'Uno' in d True >>> 'uno' in d True >>> d['Uno'] 1 >>> d['uno'] 1 >>> d['UNO'] 1 >>> 'Cuatro' in d True >>> 'CUATRO' in d True >>> d['Cuatro'] 4 >>> d['cuatro'] 4 >>> d['UNO'] = 'one' >>> d['uno'] u'one' >>> d['Uno'] u'one' >>> list(d.keys()) [u'UNO', u'Dos', u'Tres', u'Cuatro'] >>> d['cuatro'] = 'four' >>> d['Cuatro'] u'four' >>> d['cuatro'] u'four' >>> list(d.keys()) [u'UNO', u'Dos', u'Tres', u'cuatro'] >>> list(d.values()) [u'one', 2, 3, u'four'] >>> del d['dos'] >>> list(d.keys()) [u'UNO', u'Tres', u'cuatro'] >>> list(d.values()) [u'one', 3, u'four'] """ def __init__(self, *args, **kwargs): initial = OrderedDict(*args, **kwargs) self._dict = dict((key.lower(), value) for key, value in initial.items()) self._keys = OrderedDict((key.lower(), key) for key in initial) def __repr__(self): return '{0}({1})'.format( type(self).__name__, list(self.items()), ) @fix_unicode_literals_in_doctest class CaseInsensitiveSet(MutableSet): """A very basic case-insensitive set. >>> s = CaseInsensitiveSet() >>> len(s) 0 >>> 'a' in s False >>> list(CaseInsensitiveSet(['aaa', 'Aaa', 'AAA'])) [u'aaa'] >>> s = CaseInsensitiveSet(['Aaa', 'Bbb']) >>> s CaseInsensitiveSet([u'Aaa', u'Bbb']) >>> s.lower() CaseInsensitiveSet([u'aaa', u'bbb']) >>> len(s) 2 >>> 'aaa' in s True >>> 'Aaa' in s True >>> 'AAA' in s True >>> 'bbb' in s True >>> 'Bbb' in s True >>> 'abc' in s False >>> s.add('ccc') >>> len(s) 3 >>> 'aaa' in s True >>> 'ccc' in s True >>> s.remove('AAA') >>> len(s) 2 >>> 'aaa' in s False >>> bool(CaseInsensitiveSet(['a'])) True >>> bool(CaseInsensitiveSet([])) False >>> bool(CaseInsensitiveSet()) False """ def __init__(self, iterable=()): self._set = set() self._keys = dict() for item in iterable: self.add(item) def __contains__(self, key): return key.lower() in self._set def __iter__(self): return iter(self._set) def __len__(self): return len(self._set) def __repr__(self): """A caselessDict version of __repr__ """ return '{0}({1})'.format( type(self).__name__, repr(sorted(self._keys.values())) ) def add(self, key): key_lower = key.lower() self._set.add(key_lower) self._keys[key_lower] = key def discard(self, key): key_lower = key.lower() self._set.discard(key_lower) self._keys.pop(key_lower, None) def get_canonical_key(self, key): return self._keys[key.lower()] def lower(self): return type(self)(self._set) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5216126 pybtex-0.24.0/setup.cfg0000644000175000001440000000024500000000000014501 0ustar00agusers00000000000000[bdist_wheel] universal = 1 [tool:pytest] testpaths = pybtex tests addopts = --doctest-modules [isort] multi_line_output = 5 [upload_docs] upload_dir = docs/site ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5216126 pybtex-0.24.0/setup.py0000755000175000001440000001550500000000000014402 0ustar00agusers00000000000000#!/usr/bin/env python # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. import os import sys from collections import OrderedDict from distutils.command.sdist import sdist from distutils.dep_util import newer from pybtex import __version__ from setuptools import find_packages, setup progname = 'pybtex' class Sdist(sdist): def run(self): from pybtex.database.convert import convert bibtex_yaml = os.path.join('examples', 'xampl.yaml') bibtexml = os.path.join('examples', 'xampl.bibtexml') bibtex = os.path.join('examples', 'xampl.bib') if not os.path.exists(bibtex_yaml) or newer(bibtex, bibtex_yaml): convert(bibtex, bibtex_yaml) if not os.path.exists(bibtexml) or newer(bibtex, bibtexml): convert(bibtex, bibtexml) sys.path.insert(0, os.path.join(ROOT, 'docs')) from pybtex_doctools.man import generate_manpages generate_manpages(os.path.join(ROOT, 'docs')) sdist.run(self) ROOT = os.path.abspath(os.path.dirname(__file__)) README = open(os.path.join(ROOT, 'README')).read() install_requires = ['PyYAML>=3.01', 'latexcodec>=1.0.4', 'six'] extras_require = { 'test': ['pytest'], } setup( name=progname, version=__version__, description='A BibTeX-compatible bibliography processor in Python', long_description=README, author='Andrey Golovizin', author_email='ag@sologoc.com', url='https://pybtex.org/', project_urls=OrderedDict(( ('Documentation', 'https://docs.pybtex.org/'), ('Code', 'https://bitbucket.org/pybtex-devs/pybtex'), ('Issue tracker', 'https://bitbucket.org/pybtex-devs/pybtex/issues'), )), license='MIT', platforms=['platform-independent'], classifiers=[ 'Development Status :: 4 - Beta', 'Environment :: Console', 'Intended Audience :: End Users/Desktop', 'License :: OSI Approved :: MIT License', 'Operating System :: OS Independent', 'Programming Language :: Python', 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 3', 'Topic :: Text Processing :: Markup :: LaTeX', 'Topic :: Text Processing :: Markup :: XML', 'Topic :: Utilities', ], install_requires=install_requires, extras_require=extras_require, python_requires='>=2.7,!=3.0.*,!=3.1.*,!=3.2.*', packages=find_packages(exclude=['docs']), include_package_data=True, cmdclass={'sdist': Sdist}, entry_points={ 'console_scripts': [ 'pybtex = pybtex.__main__:main', 'pybtex-convert = pybtex.database.convert.__main__:main', 'pybtex-format = pybtex.database.format.__main__:main', ], 'pybtex.database.input': [ 'bibtex = pybtex.database.input.bibtex:Parser', 'bibtexml = pybtex.database.input.bibtexml:Parser', 'yaml = pybtex.database.input.bibyaml:Parser', ], 'pybtex.database.input.aliases': [ 'bibyaml = pybtex.database.input.bibyaml:Parser', ], 'pybtex.database.input.suffixes': [ '.bib = pybtex.database.input.bibtex:Parser', '.xml = pybtex.database.input.bibtexml:Parser', '.bibtexml = pybtex.database.input.bibtexml:Parser', '.bibyaml = pybtex.database.input.bibyaml:Parser', '.yaml = pybtex.database.input.bibyaml:Parser', ], 'pybtex.database.output': [ 'bibtex = pybtex.database.output.bibtex:Writer', 'bibtexml = pybtex.database.output.bibtexml:Writer', 'yaml = pybtex.database.output.bibyaml:Writer', ], 'pybtex.database.output.aliases': [ 'bibyaml = pybtex.database.output.bibyaml:Writer', ], 'pybtex.database.output.suffixes': [ '.bib = pybtex.database.output.bibtex:Writer', '.xml = pybtex.database.output.bibtexml:Writer', '.bibtexml = pybtex.database.output.bibtexml:Writer', '.bibyaml = pybtex.database.output.bibyaml:Writer', '.yaml = pybtex.database.output.bibyaml:Writer', ], 'pybtex.backends': [ 'latex = pybtex.backends.latex:Backend', 'html = pybtex.backends.html:Backend', 'plaintext = pybtex.backends.plaintext:Backend', 'markdown = pybtex.backends.markdown:Backend', ], 'pybtex.backends.aliases': [ 'text = pybtex.backends.plaintext:Backend', 'md = pybtex.backends.markdown:Backend', ], 'pybtex.backends.suffixes': [ '.bbl = pybtex.backends.latex:Backend', '.tex = pybtex.backends.latex:Backend', '.latex = pybtex.backends.latex:Backend', '.html = pybtex.backends.html:Backend', '.txt = pybtex.backends.plaintext:Backend', '.md = pybtex.backends.markdown:Backend', ], 'pybtex.style.labels': [ 'number = pybtex.style.labels.number:LabelStyle', 'alpha = pybtex.style.labels.alpha:LabelStyle', ], 'pybtex.style.names': [ 'plain = pybtex.style.names.plain:NameStyle', 'lastfirst = pybtex.style.names.lastfirst:NameStyle', ], 'pybtex.style.names.aliases': [ 'last_first = pybtex.style.names.lastfirst:NameStyle', ], 'pybtex.style.sorting': [ 'none = pybtex.style.sorting.none:SortingStyle', 'author_year_title = pybtex.style.sorting.author_year_title:SortingStyle', ], 'pybtex.style.formatting': [ 'plain = pybtex.style.formatting.plain:Style', 'unsrt = pybtex.style.formatting.unsrt:Style', 'alpha = pybtex.style.formatting.alpha:Style', 'unsrtalpha = pybtex.style.formatting.unsrtalpha:Style', ], }, zip_safe=True, ) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912831.9567142 pybtex-0.24.0/tests/0000755000175000001440000000000000000000000014021 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.568612 pybtex-0.24.0/tests/__init__.py0000644000175000001440000000211700000000000016133 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5506122 pybtex-0.24.0/tests/backend_test.py0000644000175000001440000002042500000000000017024 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. import pytest from pybtex.database import parse_string from pybtex.backends.html import Backend as HtmlBackend from pybtex.style.formatting.unsrt import Style as UnsrtStyle article_bib = """ @article{article, author = {Peter Adams}, title = {The title of the work}, journal = {The name of the journal}, year = 1993, number = 2, pages = {201-213}, month = 7, note = {An optional note}, volume = 4 } """ article_html = """ Peter Adams. The title of the work. The name of the journal, 4(2):201–213, 7 1993. An optional note. """ book_bib = """@book{book, author = {Peter Babington}, title = {The title of the work}, publisher = {The name of the publisher}, year = 1993, volume = 4, series = 10, address = {The address}, edition = {3rd}, month = 7, note = {An optional note}, isbn = {3257227892} } """ book_html = """ Peter Babington. The title of the work. Volume 4 of 10. The name of the publisher, The address, 3rd edition, 7 1993. ISBN 3257227892. An optional note. """ booklet_bib = """ @booklet{booklet, title = {The title of the work}, author = {Peter Caxton}, howpublished = {How it was published}, address = {The address of the publisher}, month = jul, year = 1993, note = {An optional note} } """ booklet_html = """ Peter Caxton. The title of the work. How it was published, The address of the publisher, July 1993, An optional note. """ inbook_bib = """ @inbook{inbook, author = {Peter Eston}, title = {The title of the work}, chapter = 8, pages = {201-213}, publisher = {The name of the publisher}, year = 1993, volume = 4, series = {The name of the series}, address = {The address of the publisher}, edition = {3rd}, month = 7, note = {An optional note} } """ inbook_html = """ Peter Eston. The title of the work, chapter 8, pages 201–213. Volume 4 of The name of the series. The name of the publisher, The address of the publisher, 3rd edition, 7 1993, An optional note. """ incollection_bib = """ @incollection{incollection, author = {Peter Farindon}, title = {The title of the work}, booktitle = {The title of the book}, publisher = {The name of the publisher}, year = 1993, editor = {The editor}, volume = 4, series = {The name of the series}, chapter = 8, pages = {201-213}, address = {The address of the publisher}, edition = {3rd}, month = aug, note = {An optional note} } """ incollection_html = """ Peter Farindon. The title of the work. In The editor, editor, The title of the book, volume 4 of The name of the series, chapter 8, pages 201–213. The name of the publisher, The address of the publisher, 3rd edition, August 1993. """ manual_bib = """ @manual{manual, title = {The title of the work}, author = {Peter Gainsford}, organization = {The organization}, address = {The address of the publisher}, edition = {3rd}, month = jan, year = 1993, note = {An optional note} } """ manual_html = """ Peter Gainsford. The title of the work. The organization, The address of the publisher, 3rd edition, January 1993. An optional note. """ masterthesis_bib = """ @mastersthesis{mastersthesis, author = {Peter Harwood}, title = {The title of the work}, school = {The school of the thesis}, year = 1993, address = {The address of the publisher}, month = feb, note = {An optional note} } """ masterthesis_html = """ Peter Harwood. The title of the work. Master's thesis, The school of the thesis, The address of the publisher, February 1993. An optional note. """ misc_bib = """ @misc{misc, author = {Peter Isley}, title = {The title of the work}, howpublished = {How it was published}, month = oct, year = 1993, note = {An optional note} } """ misc_html = """ Peter Isley. The title of the work. How it was published, October 1993. An optional note. """ phdthesis_bib = """ @phdthesis{phdthesis, author = {Peter Joslin}, title = {The title of the work}, school = {The school of the thesis}, year = 1993, address = {The address of the publisher}, month = dec, note = {An optional note} } """ phdthesis_html = """ Peter Joslin. The title of the work. PhD thesis, The school of the thesis, The address of the publisher, December 1993. An optional note. """ proceedings_bib = """ @proceedings{proceedings, title = {The title of the work}, year = 1993, editor = {Peter Kidwelly}, volume = 4, series = 5, address = {The address of the publisher}, month = oct, organization = {The organization}, publisher = {The name of the publisher}, note = {An optional note} } """ proceedings_html = """ Peter Kidwelly, editor. The title of the work, volume 4 of 5, The address of the publisher, October 1993. The organization, The name of the publisher. An optional note. """ techreport_bib = """ @techreport{techreport, author = {Peter Lambert}, title = {The title of the work}, institution = {The institution that published}, year = 1993, number = 2, address = {The address of the publisher}, month = nov, note = {An optional note} } """ techreport_html = """ Peter Lambert. The title of the work. Technical Report 2, The institution that published, The address of the publisher, November 1993. An optional note. """ unpublished_bib = """ @unpublished{unpublished, author = {Peter Marcheford}, title = {The title of the work}, note = {An optional note}, month = mar, year = 1993 } """ unpublished_html = """ Peter Marcheford. The title of the work. An optional note, March 1993. """ online_bib = """ @online{online, author = {Peter Nash}, title = {The title of the work}, year = 1993, url = {http://www.google.com/}, urldate = {1993-03-07}, } """ online_html = """ Peter Nash. The title of the work. 1993. URL: http://www.google.com/ (visited on 1993-03-07). """ @pytest.mark.parametrize("bib,html", [ (article_bib, article_html), (book_bib, book_html), (booklet_bib, booklet_html), (inbook_bib, inbook_html), (incollection_bib, incollection_html), (manual_bib, manual_html), (masterthesis_bib, masterthesis_html), (misc_bib, misc_html), (online_bib, online_html), (phdthesis_bib, phdthesis_html), (proceedings_bib, proceedings_html), (techreport_bib, techreport_html), (unpublished_bib, unpublished_html), ]) def test_backend_html(bib, html): style = UnsrtStyle() backend = HtmlBackend() bib_data = parse_string(bib, 'bibtex') for formatted_entry in style.format_entries(bib_data.entries.values()): render = formatted_entry.text.render(backend) print(render) assert render.strip() == html.strip() ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.568612 pybtex-0.24.0/tests/bibtex_parser_test.py0000644000175000001440000004065100000000000020271 0ustar00agusers00000000000000# vim:fileencoding=utf-8 # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """ Test routines for the BibTeX .bib parser. Some tests were adopted from Babybib - another BibTeX parser by Matthew Brett. https://github.com/matthew-brett/babybib """ from __future__ import absolute_import, unicode_literals from unittest import TestCase import six from six.moves import zip_longest from pybtex.database import BibliographyData, Entry, Person from pybtex.database.input.bibtex import Parser class _TestParser(Parser): def __init__(self, *args, **kwargs): super(_TestParser, self).__init__(*args, **kwargs) self.errors = [] def handle_error(self, error): self.errors.append(error) class ParserTest(object): input_string = None input_strings = [] correct_result = None parser_options = {} errors = [] def setUp(self): if not self.input_strings: self.input_strings = [self.input_string] def test_parser(self): parser = _TestParser(encoding='UTF-8', **self.parser_options) for input_string in self.input_strings: parser.parse_string(input_string) result = parser.data correct_result = self.correct_result assert result == correct_result for error, correct_error in zip_longest(parser.errors, self.errors): actual_error = six.text_type(error) assert actual_error == correct_error class EmptyDataTest(ParserTest, TestCase): input_string = u'' correct_result = BibliographyData() class BracesTest(ParserTest, TestCase): input_string = u"""@ARTICLE{ test, title={Polluted with {DDT}. }, }""" correct_result = BibliographyData([(u'test', Entry('article', [(u'title', 'Polluted with {DDT}.')]))]) class BracesAndQuotesTest(ParserTest, TestCase): input_string = u'''@ARTICLE{ test, title="Nested braces and {"quotes"}", }''' correct_result = BibliographyData([(u'test', Entry('article', [(u'title', 'Nested braces and {"quotes"}')]))]) class EntryInStringTest(ParserTest, TestCase): input_string = u""" @article{Me2010, author="Brett, Matthew", title="An article @article{something, author={Name, Another}, title={not really an article}} "} @article{Me2009,author={Nom de Plume, My}, title="A short story"} """ correct_result = BibliographyData( entries=[ (u'Me2010', Entry(u'article', fields=[ (u'title', u'An article @article{something, author={Name, Another}, title={not really an article}}'), ], persons=[(u'author', [Person(u'Brett, Matthew')])] )), (u'Me2009', Entry(u'article', fields=[(u'title', u'A short story')], persons={u'author': [Person(u'Nom de Plume, My')]} )), ] ) class EntryInCommentTest(ParserTest, TestCase): input_string = u""" Both the articles register despite the comment block @Comment{ @article{Me2010, title="An article"} @article{Me2009, title="A short story"} } These all work OK without errors @Comment{and more stuff} Last article to show we can get here @article{Me2011, } """ correct_result = BibliographyData([ ('Me2010', Entry('article', fields=[('title', 'An article')])), ('Me2009', Entry('article', fields=[('title', 'A short story')])), ('Me2011', Entry('article')), ]) class AtTest(ParserTest, TestCase): # FIXME: check warnings input_string = u""" The @ here parses fine in both cases @article{Me2010, title={An @tey article}} @article{Me2009, title="A @tey short story"} """ correct_result = BibliographyData([ ('Me2010', Entry('article', [('title', 'An @tey article')])), ('Me2009', Entry('article', [('title', 'A @tey short story')])), ]) errors = [ "syntax error in line 2: '(' or '{' expected", ] class EntryTypesTest(ParserTest, TestCase): input_string = u""" Testing what are allowed for entry types These are OK @somename{an_id,} @t2{another_id,} @t@{again_id,} @t+{aa1_id,} @_t{aa2_id,} These ones not @2thou{further_id,} @some name{id3,} @some#{id4,} @some%{id4,} """ correct_result = BibliographyData([ ('an_id', Entry('somename')), ('another_id', Entry('t2')), ('again_id', Entry('t@')), ('aa1_id', Entry('t+')), ('aa2_id', Entry('_t')), ]) errors = [ "syntax error in line 12: a valid name expected", "syntax error in line 13: '(' or '{' expected", "syntax error in line 14: '(' or '{' expected", "syntax error in line 15: '(' or '{' expected", ] class FieldNamesTest(ParserTest, TestCase): input_string = u""" Check for characters allowed in field names Here the cite key is fine, but the field name is not allowed: ``You are missing a field name`` @article{2010, 0author="Me"} Underscores allowed (no error) @article{2011, _author="Me"} Not so for spaces obviously (``expecting an '='``) @article{2012, author name = "Myself"} Or hashes (``missing a field name``) @article{2013, #name = "Myself"} But field names can start with +-. @article{2014, .name = "Myself"} @article{2015, +name = "Myself"} @article{2016, -name = "Myself"} @article{2017, @name = "Myself"} """ correct_result = BibliographyData([ ('2010', Entry('article')), ('2011', Entry('article', [('_author', 'Me')])), ('2012', Entry('article')), ('2013', Entry('article')), ('2014', Entry('article', [('.name', 'Myself')])), ('2015', Entry('article', [('+name', 'Myself')])), ('2016', Entry('article', [('-name', 'Myself')])), ('2017', Entry('article', [('@name', 'Myself')])), ]) errors = [ "syntax error in line 5: '}' expected", "syntax error in line 11: '=' expected", 'syntax error in line 14: \'}\' expected', ] class InlineCommentTest(ParserTest, TestCase): input_string = u""" "some text" causes an error like this ``You're missing a field name---line 6 of file bibs/inline_comment.bib`` for all 3 of the % some text occurences below; in each case the parser keeps what it has up till that point and skips, so that it correctly gets the last entry. @article{Me2010,} @article{Me2011, author="Brett-like, Matthew", % some text title="Another article"} @article{Me2012, % some text author="Real Brett"} This one correctly read @article{Me2013,} """ correct_result = BibliographyData([ ('Me2010', Entry('article')), ('Me2011', Entry('article', persons={'author': [ Person(first='Matthew', last='Brett-like'), ]})), ('Me2012', Entry('article')), ('Me2013', Entry('article')), ]) errors = [ "syntax error in line 10: '}' expected", "syntax error in line 12: '}' expected", ] class SimpleEntryTest(ParserTest, TestCase): input_string = u""" % maybe the simplest possible % just a comment and one reference @ARTICLE{Brett2002marsbar, author = {Matthew Brett and Jean-Luc Anton and Romain Valabregue and Jean-Baptise Poline}, title = {{Region of interest analysis using an SPM toolbox}}, journal = {Neuroimage}, institution = {}, year = {2002}, volume = {16}, pages = {1140--1141}, number = {2} } """ correct_result = BibliographyData({ 'Brett2002marsbar': Entry('article', fields=[ ('title', '{Region of interest analysis using an SPM toolbox}'), ('journal', 'Neuroimage'), ('institution', ''), ('year', '2002'), ('volume', '16'), ('pages', '1140--1141'), ('number', '2'), ], persons={ 'author': [ Person(first='Matthew', last='Brett'), Person(first='Jean-Luc', last='Anton'), Person(first='Romain', last='Valabregue'), Person(first='Jean-Baptise', last='Poline'), ], }, ) }) class KeyParsingTest(ParserTest, TestCase): input_string = u""" # will not work as expected @article(test(parens1)) # works fine @article(test(parens2),) # works fine @article{test(braces1)} # also works @article{test(braces2),} """ correct_result = BibliographyData([ ('test(parens1))', Entry('article')), ('test(parens2)', Entry('article')), ('test(braces1)', Entry('article')), ('test(braces2)', Entry('article')), ]) errors = [ "syntax error in line 5: ')' expected", ] class KeylessEntriesTest(ParserTest, TestCase): parser_options = {'keyless_entries': True} input_string = u""" @BOOK( title="I Am Jackie Chan: My Life in Action", year=1999 ) @BOOK() @BOOK{} @BOOK{ title = "Der deutsche Jackie Chan Filmführer", } """ correct_result = BibliographyData([ ('unnamed-1', Entry('book', [('title', 'I Am Jackie Chan: My Life in Action'), ('year', '1999')])), ('unnamed-2', Entry('book')), ('unnamed-3', Entry('book')), ('unnamed-4', Entry('book', [('title', u'Der deutsche Jackie Chan Filmführer')])), ]) class MacrosTest(ParserTest, TestCase): input_string = u""" @String{and = { and }} @String{etal = and # { {et al.}}} @Article( unknown, author = nobody, ) @Article( gsl, author = "Gough, Brian"#etal, ) """ correct_result = BibliographyData([ ('unknown', Entry('article')), ('gsl', Entry('article', persons={u'author': [Person(u'Gough, Brian'), Person(u'{et al.}')]})), ]) errors = [ 'undefined string in line 6: nobody', ] class WantedEntriesTest(ParserTest, TestCase): parser_options = {'wanted_entries': ['GSL']} input_string = u""" @Article( gsl, ) """ correct_result = BibliographyData(entries={ 'GSL': Entry('article'), }) class CrossrefTest(ParserTest, TestCase): parser_options = {'wanted_entries': ['GSL', 'GSL2']} input_string = u""" @Article(gsl, crossref="the_journal") @Article(gsl2, crossref="The_Journal") @Journal{the_journal,} """ correct_result = BibliographyData(entries=[ ('GSL', Entry('article', [('crossref', 'the_journal')])), ('GSL2', Entry('article', [('crossref', 'The_Journal')])), ('the_journal', Entry('journal')), ]) class CrossrefWantedTest(ParserTest, TestCase): """When cross-referencing an explicitly cited, the key from .aux file should be used.""" parser_options = {'wanted_entries': ['GSL', 'GSL2', 'The_Journal']} input_string = u""" @Article(gsl, crossref="the_journal") @Article(gsl2, crossref="The_Journal") @Journal{the_journal,} """ correct_result = BibliographyData(entries=[ ('GSL', Entry('article', [('crossref', 'the_journal')])), ('GSL2', Entry('article', [('crossref', 'The_Journal')])), ('The_Journal', Entry('journal')), ]) class UnusedEntryTest(ParserTest, TestCase): parser_options = {'wanted_entries': []} input_string = u""" @Article( gsl, author = nobody, ) """ correct_result = BibliographyData() class CrossFileMacrosTest(ParserTest, TestCase): input_strings = [ u'@string{jackie = "Jackie Chan"}', u""", @Book{ i_am_jackie, author = jackie, title = "I Am " # jackie # ": My Life in Action", } """, ] correct_result = BibliographyData({ 'i_am_jackie': Entry('book', fields=[('title', 'I Am Jackie Chan: My Life in Action')], persons={'author': [Person(u'Chan, Jackie')]} ), }) class AtCharacterTest(ParserTest, TestCase): input_strings = [ r""", @proceedings{acc, title = {Proc.\@ of the American Control Conference}, notes = "acc@example.org" } """, ] correct_result = BibliographyData({ 'acc': Entry('proceedings', fields=[ ('title', r'Proc.\@ of the American Control Conference'), ('notes', 'acc@example.org'), ], ), }) class AtCharacterInUnwantedEntryTest(ParserTest, TestCase): parser_options = {'wanted_entries': []} input_strings = [ r""", @proceedings{acc, title = {Proc.\@ of the American Control Conference}, notes = "acc@example.org" } """, ] correct_result = BibliographyData() class CaseSensitivityTest(ParserTest, TestCase): input_strings = [ r""", @Article{CamelCase, Title = {To CamelCase or Under score}, year = 2009, NOTES = "none" } """, ] correct_result = BibliographyData({ 'CamelCase': Entry('article', fields=[ ('Title', 'To CamelCase or Under score'), ('year', '2009'), ('NOTES', 'none'), ], ), }) class WindowsNewlineTest(ParserTest, TestCase): input_strings = [ u"""'@Article\r\n\r\n\r\n}\r\n'""", ] correct_result = BibliographyData() errors = ["syntax error in line 4: '(' or '{' expected"] class DuplicateFieldTest(ParserTest, TestCase): input_strings = [ r""" @MASTERSTHESIS{ Mastering, year = 1364, title = "Mastering Thesis Writing", school = "Charles University in Prague", TITLE = "No One Reads Master's Theses Anyway LOL", TiTlE = "Well seriously, lol.", } """ ] correct_result = BibliographyData({ 'Mastering': Entry('mastersthesis', fields=[ ('year', '1364'), ('title', 'Mastering Thesis Writing'), ('school', 'Charles University in Prague'), ], ), }) errors = [ 'entry with key Mastering has a duplicate TITLE field', 'entry with key Mastering has a duplicate TiTlE field', ] class DuplicatePersonFieldTest(ParserTest, TestCase): input_string = u""" @article{Me2009,author={Nom de Plume, My}, title="A short story", AUTHoR = {Foo}} """ correct_result = BibliographyData( entries=[ (u'Me2009', Entry(u'article', fields=[(u'title', u'A short story')], persons={u'author': [Person(u'Nom de Plume, My')]} )), ] ) errors = [ 'entry with key Me2009 has a duplicate AUTHoR field', ]././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610912831.9567142 pybtex-0.24.0/tests/bst_parser_test/0000755000175000001440000000000000000000000017224 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5636122 pybtex-0.24.0/tests/bst_parser_test/__init__.py0000644000175000001440000000000000000000000021323 0ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5636122 pybtex-0.24.0/tests/bst_parser_test/apacite.py0000644000175000001440000037307500000000000021223 0ustar00agusers00000000000000from __future__ import unicode_literals from pybtex.bibtex.interpreter import ( FunctionLiteral, Identifier, Integer, QuotedVar, String ) bst = [[u'FUNCTION', [Identifier(u'identify.apacite.version')], [String(u'apacite.bst'), String(u' [2009/03/01 v4.05 APA bibliography style]'), Identifier(u'*'), Identifier(u'top$')]], [u'ENTRY', [Identifier(u'address'), Identifier(u'annote'), Identifier(u'annotate'), Identifier(u'author'), Identifier(u'booktitle'), Identifier(u'chair'), Identifier(u'chapter'), Identifier(u'day'), Identifier(u'edition'), Identifier(u'editor'), Identifier(u'englishtitle'), Identifier(u'firstkey'), Identifier(u'howpublished'), Identifier(u'institution'), Identifier(u'journal'), Identifier(u'key'), Identifier(u'lastchecked'), Identifier(u'month'), Identifier(u'note'), Identifier(u'number'), Identifier(u'organization'), Identifier(u'originaladdress'), Identifier(u'originalbooktitle'), Identifier(u'originaledition'), Identifier(u'originaleditor'), Identifier(u'originaljournal'), Identifier(u'originalnumber'), Identifier(u'originalpages'), Identifier(u'originalpublisher'), Identifier(u'originalvolume'), Identifier(u'originalyear'), Identifier(u'pages'), Identifier(u'publisher'), Identifier(u'school'), Identifier(u'series'), Identifier(u'symposium'), Identifier(u'text'), Identifier(u'title'), Identifier(u'translator'), Identifier(u'type'), Identifier(u'url'), Identifier(u'volume'), Identifier(u'year')], [Identifier(u'title.number'), Identifier(u'cite.initials'), Identifier(u'cite.num.names.full'), Identifier(u'cite.num.names.short'), Identifier(u'add.to.year')], [Identifier(u'year.label'), Identifier(u'author.year.sort.label'), Identifier(u'title.sort.label'), Identifier(u'type.2')]], [u'INTEGERS', [Identifier(u'len'), Identifier(u'pos'), Identifier(u'name.max'), Identifier(u'old.number'), Identifier(u'numnames'), Identifier(u'numnames.old'), Identifier(u'nameptr'), Identifier(u'lastname'), Identifier(u'format.num.names'), Identifier(u'cite.initials.old'), Identifier(u'cite.num.names.old'), Identifier(u'add.to.year.old'), Identifier(u'forward'), Identifier(u'multiresult'), Identifier(u'dot'), Identifier(u'brace.level')]], [u'STRINGS', [Identifier(u's'), Identifier(u't'), Identifier(u'u'), Identifier(u'old.label'), Identifier(u'field'), Identifier(u'aut1f'), Identifier(u'aut1s'), Identifier(u'aut1f.old'), Identifier(u'aut1s.old'), Identifier(u'aut2'), Identifier(u'aut2.old'), Identifier(u'aut3'), Identifier(u'aut3.old'), Identifier(u'aut4'), Identifier(u'aut4.old'), Identifier(u'aut5'), Identifier(u'aut5.old'), Identifier(u'aut6'), Identifier(u'aut6.old'), Identifier(u'year.label.old')]], [u'FUNCTION', [Identifier(u'test')], [Integer(0)]], [u'FUNCTION', [Identifier(u'make.index')], [Integer(0)]], [u'MACRO', [Identifier(u'jan')], [String(u'{\\APACmonth{01}}')]], [u'MACRO', [Identifier(u'feb')], [String(u'{\\APACmonth{02}}')]], [u'MACRO', [Identifier(u'mar')], [String(u'{\\APACmonth{03}}')]], [u'MACRO', [Identifier(u'apr')], [String(u'{\\APACmonth{04}}')]], [u'MACRO', [Identifier(u'may')], [String(u'{\\APACmonth{05}}')]], [u'MACRO', [Identifier(u'jun')], [String(u'{\\APACmonth{06}}')]], [u'MACRO', [Identifier(u'jul')], [String(u'{\\APACmonth{07}}')]], [u'MACRO', [Identifier(u'aug')], [String(u'{\\APACmonth{08}}')]], [u'MACRO', [Identifier(u'sep')], [String(u'{\\APACmonth{09}}')]], [u'MACRO', [Identifier(u'oct')], [String(u'{\\APACmonth{10}}')]], [u'MACRO', [Identifier(u'nov')], [String(u'{\\APACmonth{11}}')]], [u'MACRO', [Identifier(u'dec')], [String(u'{\\APACmonth{12}}')]], [u'MACRO', [Identifier(u'winter')], [String(u'{\\APACmonth{13}}')]], [u'MACRO', [Identifier(u'spring')], [String(u'{\\APACmonth{14}}')]], [u'MACRO', [Identifier(u'summer')], [String(u'{\\APACmonth{15}}')]], [u'MACRO', [Identifier(u'fall')], [String(u'{\\APACmonth{16}}')]], [u'FUNCTION', [Identifier(u'not')], [FunctionLiteral([Integer(0)]), FunctionLiteral([Integer(1)]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'and')], [QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'pop$'), Integer(0)]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'or')], [FunctionLiteral([Identifier(u'pop$'), Integer(1)]), QuotedVar(u'skip$'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'warning.if.empty')], [Identifier(u'empty$'), FunctionLiteral([String(u'No '), Identifier(u'swap$'), Identifier(u'*'), String(u' in '), Identifier(u'*'), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$')]), FunctionLiteral([Identifier(u'pop$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'check.relevant.fields')], [Identifier(u'title'), Identifier(u'empty$'), Identifier(u'type'), Identifier(u'empty$'), Identifier(u'and'), Identifier(u'howpublished'), Identifier(u'empty$'), Identifier(u'and'), FunctionLiteral([String(u'No title, type, and howpublished in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$')]), QuotedVar(u'skip$'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'editor.ne.trans')], [Identifier(u'translator'), Identifier(u'empty$'), FunctionLiteral([Integer(0)]), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Integer(0)]), FunctionLiteral([Identifier(u'translator'), Identifier(u'editor'), Identifier(u'='), FunctionLiteral([Integer(0)]), FunctionLiteral([Integer(1)]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'conv.int.to.str')], [Identifier(u'duplicate$'), Integer(10), Identifier(u'<'), FunctionLiteral([String(u'0000'), Identifier(u'swap$'), Identifier(u'int.to.str$'), Identifier(u'*')]), FunctionLiteral([Identifier(u'duplicate$'), Integer(100), Identifier(u'<'), FunctionLiteral([String(u'000'), Identifier(u'swap$'), Identifier(u'int.to.str$'), Identifier(u'*')]), FunctionLiteral([Identifier(u'duplicate$'), Integer(1000), Identifier(u'<'), FunctionLiteral([String(u'00'), Identifier(u'swap$'), Identifier(u'int.to.str$'), Identifier(u'*')]), FunctionLiteral([Identifier(u'duplicate$'), Integer(10000), Identifier(u'<'), FunctionLiteral([String(u'0'), Identifier(u'swap$'), Identifier(u'int.to.str$'), Identifier(u'*')]), FunctionLiteral([Identifier(u'int.to.str$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'ref.type')], [Identifier(u'type$'), String(u'article'), Identifier(u'='), Identifier(u'type$'), String(u'magazine'), Identifier(u'='), Identifier(u'type$'), String(u'newspaper'), Identifier(u'='), Identifier(u'type$'), String(u'book'), Identifier(u'='), Identifier(u'type$'), String(u'techreport'), Identifier(u'='), Identifier(u'type$'), String(u'unpublished'), Identifier(u'='), Identifier(u'type$'), String(u'misc'), Identifier(u'='), Identifier(u'type$'), String(u'booklet'), Identifier(u'='), Identifier(u'type$'), String(u'manual'), Identifier(u'='), Identifier(u'type$'), String(u'proceedings'), Identifier(u'='), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), FunctionLiteral([Integer(1)]), FunctionLiteral([Identifier(u'type$'), String(u'incollection'), Identifier(u'='), Identifier(u'type$'), String(u'phdthesis'), Identifier(u'='), Identifier(u'type$'), String(u'mastersthesis'), Identifier(u'='), Identifier(u'type$'), String(u'lecture'), Identifier(u'='), Identifier(u'type$'), String(u'inbook'), Identifier(u'='), Identifier(u'type$'), String(u'inproceedings'), Identifier(u'='), Identifier(u'type$'), String(u'conference'), Identifier(u'='), Identifier(u'type$'), String(u'intechreport'), Identifier(u'='), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), FunctionLiteral([Integer(2)]), FunctionLiteral([Identifier(u'type$'), String(u'literal'), Identifier(u'='), FunctionLiteral([Integer(3)]), FunctionLiteral([Integer(0)]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'is.atype')], [Identifier(u'type$'), String(u'article'), Identifier(u'='), Identifier(u'type$'), String(u'magazine'), Identifier(u'='), Identifier(u'type$'), String(u'newspaper'), Identifier(u'='), Identifier(u'type$'), String(u'incollection'), Identifier(u'='), Identifier(u'type$'), String(u'inbook'), Identifier(u'='), Identifier(u'type$'), String(u'inproceedings'), Identifier(u'='), Identifier(u'type$'), String(u'conference'), Identifier(u'='), Identifier(u'type$'), String(u'intechreport'), Identifier(u'='), Identifier(u'type$'), String(u'manual'), Identifier(u'='), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), FunctionLiteral([Integer(1)]), FunctionLiteral([Identifier(u'journal'), Identifier(u'empty$'), Identifier(u'not'), Identifier(u'type$'), String(u'phdthesis'), Identifier(u'='), Identifier(u'type$'), String(u'mastersthesis'), Identifier(u'='), Identifier(u'or'), Identifier(u'and'), FunctionLiteral([Integer(1)]), FunctionLiteral([Identifier(u'type$'), String(u'misc'), Identifier(u'='), Identifier(u'type'), Identifier(u'empty$'), Identifier(u'not'), Identifier(u'and'), FunctionLiteral([Identifier(u'type'), String(u'\\bibmessage'), Identifier(u'='), Identifier(u'type'), String(u'\\bibcomputerprogram'), Identifier(u'='), Identifier(u'type'), String(u'\\bibcomputerprogrammanual'), Identifier(u'='), Identifier(u'type'), String(u'\\bibcomputerprogramandmanual'), Identifier(u'='), Identifier(u'type'), String(u'\\bibcomputersoftware'), Identifier(u'='), Identifier(u'type'), String(u'\\bibcomputersoftwaremanual'), Identifier(u'='), Identifier(u'type'), String(u'\\bibcomputersoftwareandmanual'), Identifier(u'='), Identifier(u'type'), String(u'\\bibprogramminglanguage'), Identifier(u'='), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), Identifier(u'or'), FunctionLiteral([Integer(1)]), FunctionLiteral([Integer(0)]), Identifier(u'if$')]), FunctionLiteral([Integer(0)]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'connect.check')], [QuotedVar(u'u'), Identifier(u':='), Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), String(u'')]), QuotedVar(u'skip$'), Identifier(u'if$')]), FunctionLiteral([Identifier(u'swap$'), Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$')]), FunctionLiteral([Identifier(u'u'), Identifier(u'*'), Identifier(u'swap$'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'tie.or.space.connect')], [Identifier(u'duplicate$'), Identifier(u'text.length$'), Integer(4), Identifier(u'<'), FunctionLiteral([String(u'~')]), FunctionLiteral([String(u'\\ ')]), Identifier(u'if$'), Identifier(u'swap$'), Identifier(u'*'), Identifier(u'*')]], [u'FUNCTION', [Identifier(u'connect.with.comma.check')], [String(u', '), Identifier(u'connect.check')]], [u'FUNCTION', [Identifier(u'connect.with.semicolon.check')], [String(u'; '), Identifier(u'connect.check')]], [u'FUNCTION', [Identifier(u'connect.with.colon.check')], [String(u': '), Identifier(u'connect.check')]], [u'FUNCTION', [Identifier(u'connect.with.space.check')], [String(u'\\ '), Identifier(u'connect.check')]], [u'FUNCTION', [Identifier(u'enclose.check')], [Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), Identifier(u'pop$'), Identifier(u'pop$'), String(u'')]), FunctionLiteral([Identifier(u'swap$'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'emphasize.check')], [String(u'\\Bem{'), Identifier(u'swap$'), String(u'}'), Identifier(u'swap$'), Identifier(u'enclose.check')]], [u'FUNCTION', [Identifier(u'bracket.check')], [String(u'['), Identifier(u'swap$'), String(u']'), Identifier(u'swap$'), Identifier(u'enclose.check')]], [u'FUNCTION', [Identifier(u'parenthesize.check')], [String(u'('), Identifier(u'swap$'), String(u')'), Identifier(u'swap$'), Identifier(u'enclose.check')]], [u'FUNCTION', [Identifier(u'multi.result.check')], [QuotedVar(u't'), Identifier(u':='), Integer(0), QuotedVar(u'multiresult'), Identifier(u':='), FunctionLiteral([Identifier(u'multiresult'), Identifier(u'not'), Identifier(u't'), Identifier(u'text.length$'), Integer(1), Identifier(u'>'), Identifier(u'and')]), FunctionLiteral([Identifier(u't'), Integer(1), Integer(2), Identifier(u'substring$'), QuotedVar(u's'), Identifier(u':='), String(u'--'), Identifier(u's'), Identifier(u'='), FunctionLiteral([Integer(1), QuotedVar(u'multiresult'), Identifier(u':=')]), FunctionLiteral([Identifier(u't'), Integer(1), Integer(1), Identifier(u'substring$'), QuotedVar(u's'), Identifier(u':='), String(u'+'), Identifier(u's'), Identifier(u'='), String(u','), Identifier(u's'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([Integer(1), QuotedVar(u'multiresult'), Identifier(u':=')]), FunctionLiteral([Identifier(u't'), Integer(2), Identifier(u'global.max$'), Identifier(u'substring$'), QuotedVar(u't'), Identifier(u':=')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'while$'), Identifier(u'multiresult')]], [u'FUNCTION', [Identifier(u'is.bibcorporate')], [Integer(1), Integer(14), Identifier(u'substring$'), String(u'{\\bibcorporate'), Identifier(u'=')]], [u'FUNCTION', [Identifier(u'sortify')], [Identifier(u'purify$'), String(u'l'), Identifier(u'change.case$')]], [u'FUNCTION', [Identifier(u'remove.spaces')], [QuotedVar(u's'), Identifier(u':='), Identifier(u's'), Identifier(u'text.length$'), QuotedVar(u'len'), Identifier(u':='), String(u''), QuotedVar(u't'), Identifier(u':='), Integer(0), QuotedVar(u'pos'), Identifier(u':='), FunctionLiteral([Identifier(u'pos'), Identifier(u'len'), Identifier(u'<')]), FunctionLiteral([Identifier(u'pos'), Integer(1), Identifier(u'+'), QuotedVar(u'pos'), Identifier(u':='), Identifier(u's'), Identifier(u'pos'), Integer(1), Identifier(u'substring$'), QuotedVar(u'u'), Identifier(u':='), Identifier(u'u'), String(u' '), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u't'), Identifier(u'u'), Identifier(u'*'), QuotedVar(u't'), Identifier(u':=')]), Identifier(u'if$')]), Identifier(u'while$'), Identifier(u't')]], [u'FUNCTION', [Identifier(u'output.end.block')], [Identifier(u'write$'), Identifier(u'newline$')]], [u'FUNCTION', [Identifier(u'output.new.block')], [Identifier(u'output.end.block'), String(u'\\newblock'), Identifier(u'write$'), Identifier(u'newline$')]], [u'FUNCTION', [Identifier(u'output.dot.new.block')], [Identifier(u'add.period$'), Identifier(u'output.new.block')]], [u'FUNCTION', [Identifier(u'start.new.block')], [Identifier(u'newline$'), String(u'\\unskip\\ '), Identifier(u'write$'), Identifier(u'newline$'), String(u'\\newblock '), Identifier(u'write$'), Identifier(u'newline$')]], [u'FUNCTION', [Identifier(u'fin.entry')], [Identifier(u'output.end.block'), String(u'\\PrintBackRefs{\\CurrentBib}'), Identifier(u'write$'), Identifier(u'newline$'), Identifier(u'test'), FunctionLiteral([String(u'\\vspace{\\baselineskip}'), Identifier(u'write$'), Identifier(u'newline$')]), QuotedVar(u'skip$'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'sort.name.format')], [String(u'{ll{}}{ f{}}{ vv{}}{ jj{}}')]], [u'FUNCTION', [Identifier(u'cite.name.format')], [String(u'{ll}')]], [u'FUNCTION', [Identifier(u'cite.initials.name.format')], [String(u'{f{\\BPBI }.~~}{vv }{ll}{ jj}')]], [u'FUNCTION', [Identifier(u'author.name.format')], [String(u'{ll}{, f{\\BPBI }.}{ vv}{, jj}')]], [u'FUNCTION', [Identifier(u'editor.name.format')], [String(u'{f{\\BPBI }.~~}{vv }{ll}{ jj}')]], [u'FUNCTION', [Identifier(u'index.name.format')], [String(u'{ll}{, f{\\BPBI }.}{ vv}{, jj}')]], [u'FUNCTION', [Identifier(u'init.initials')], [String(u'yyyyy'), QuotedVar(u'aut1f.old'), Identifier(u':='), String(u'yyyyy'), QuotedVar(u'aut1s.old'), Identifier(u':='), Integer(0), QuotedVar(u'cite.initials.old'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'update.no.initials')], [QuotedVar(u'field'), Identifier(u':='), Identifier(u'field'), QuotedVar(u'aut1f.old'), Identifier(u':='), Identifier(u'field'), QuotedVar(u'aut1s.old'), Identifier(u':='), Integer(0), QuotedVar(u'cite.initials.old'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'check.add.initials.aut')], [Identifier(u'aut1s'), Identifier(u'aut1s.old'), Identifier(u'='), FunctionLiteral([Identifier(u'aut1f'), Identifier(u'aut1f.old'), Identifier(u'='), FunctionLiteral([Identifier(u'cite.initials.old'), QuotedVar(u'cite.initials'), Identifier(u':=')]), FunctionLiteral([Integer(1), QuotedVar(u'cite.initials'), Identifier(u':='), Identifier(u'aut1f'), QuotedVar(u'aut1f.old'), Identifier(u':='), Identifier(u'aut1s'), QuotedVar(u'aut1s.old'), Identifier(u':='), Identifier(u'cite.initials'), QuotedVar(u'cite.initials.old'), Identifier(u':=')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'aut1f'), QuotedVar(u'aut1f.old'), Identifier(u':='), Identifier(u'aut1s'), QuotedVar(u'aut1s.old'), Identifier(u':='), Identifier(u'cite.initials'), QuotedVar(u'cite.initials.old'), Identifier(u':=')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'check.add.initials.field')], [QuotedVar(u'field'), Identifier(u':='), Identifier(u'field'), Integer(1), Identifier(u'cite.initials.name.format'), Identifier(u'format.name$'), QuotedVar(u'aut1f'), Identifier(u':='), Identifier(u'field'), Integer(1), Identifier(u'cite.name.format'), Identifier(u'format.name$'), QuotedVar(u'aut1s'), Identifier(u':='), Identifier(u'check.add.initials.aut')]], [u'FUNCTION', [Identifier(u'check.add.initials')], [Identifier(u'firstkey'), Identifier(u'empty$'), Identifier(u'not'), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), Identifier(u'not'), FunctionLiteral([Identifier(u'firstkey'), Identifier(u'sortify'), Identifier(u'remove.spaces'), QuotedVar(u'aut1f'), Identifier(u':='), Identifier(u'key'), Identifier(u'sortify'), Identifier(u'remove.spaces'), QuotedVar(u'aut1s'), Identifier(u':='), Identifier(u'check.add.initials.aut')]), FunctionLiteral([Identifier(u'firstkey'), Identifier(u'sortify'), Identifier(u'remove.spaces'), Identifier(u'update.no.initials')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), Identifier(u'not'), FunctionLiteral([Identifier(u'key'), Identifier(u'sortify'), Identifier(u'remove.spaces'), Identifier(u'update.no.initials')]), FunctionLiteral([Identifier(u'ref.type'), Integer(2), Identifier(u'='), FunctionLiteral([Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'title.sort.label'), Identifier(u'update.no.initials')]), FunctionLiteral([Identifier(u'author'), Identifier(u'check.add.initials.field')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'title.sort.label'), Identifier(u'update.no.initials')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'check.add.initials.field')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'author'), Identifier(u'check.add.initials.field')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'tentative.cite.num.names.field')], [QuotedVar(u'field'), Identifier(u':='), Identifier(u'field'), Identifier(u'num.names$'), QuotedVar(u'numnames'), Identifier(u':='), Identifier(u'numnames'), Integer(3), Identifier(u'<'), FunctionLiteral([Identifier(u'numnames'), QuotedVar(u'cite.num.names.full'), Identifier(u':='), Identifier(u'numnames'), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), FunctionLiteral([Identifier(u'numnames'), Integer(6), Identifier(u'<'), FunctionLiteral([Identifier(u'numnames'), QuotedVar(u'cite.num.names.full'), Identifier(u':='), Integer(1), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), FunctionLiteral([Integer(1), QuotedVar(u'cite.num.names.full'), Identifier(u':='), Integer(1), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'tentative.cite.num.names')], [Identifier(u'firstkey'), Identifier(u'empty$'), Identifier(u'not'), FunctionLiteral([Integer(1), QuotedVar(u'cite.num.names.full'), Identifier(u':='), Integer(1), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), Identifier(u'not'), FunctionLiteral([Integer(1), QuotedVar(u'cite.num.names.full'), Identifier(u':='), Integer(1), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), FunctionLiteral([Identifier(u'ref.type'), Integer(2), Identifier(u'='), FunctionLiteral([Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Integer(1), QuotedVar(u'cite.num.names.full'), Identifier(u':='), Integer(1), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), FunctionLiteral([Identifier(u'author'), Identifier(u'tentative.cite.num.names.field')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Integer(1), QuotedVar(u'cite.num.names.full'), Identifier(u':='), Integer(1), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'tentative.cite.num.names.field')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'author'), Identifier(u'tentative.cite.num.names.field')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'init.cite.num.names')], [Integer(0), QuotedVar(u'cite.num.names.old'), Identifier(u':='), Integer(0), QuotedVar(u'numnames.old'), Identifier(u':='), String(u'yyyy'), QuotedVar(u'year.label.old'), Identifier(u':='), Integer(0), QuotedVar(u'add.to.year.old'), Identifier(u':='), String(u''), QuotedVar(u'aut1f.old'), Identifier(u':='), String(u''), QuotedVar(u'aut2.old'), Identifier(u':='), String(u''), QuotedVar(u'aut3.old'), Identifier(u':='), String(u''), QuotedVar(u'aut4.old'), Identifier(u':='), String(u''), QuotedVar(u'aut5.old'), Identifier(u':='), String(u''), QuotedVar(u'aut6.old'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'update.cite.num.names')], [Identifier(u'cite.num.names.short'), QuotedVar(u'cite.num.names.old'), Identifier(u':='), Identifier(u'numnames'), QuotedVar(u'numnames.old'), Identifier(u':='), Identifier(u'year.label'), QuotedVar(u'year.label.old'), Identifier(u':='), Identifier(u'add.to.year'), QuotedVar(u'add.to.year.old'), Identifier(u':='), Identifier(u'aut1f'), QuotedVar(u'aut1f.old'), Identifier(u':='), Identifier(u'aut2'), QuotedVar(u'aut2.old'), Identifier(u':='), Identifier(u'aut3'), QuotedVar(u'aut3.old'), Identifier(u':='), Identifier(u'aut4'), QuotedVar(u'aut4.old'), Identifier(u':='), Identifier(u'aut5'), QuotedVar(u'aut5.old'), Identifier(u':='), Identifier(u'aut6'), QuotedVar(u'aut6.old'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'format.6.authors')], [Identifier(u'field'), Integer(1), Identifier(u'cite.initials.name.format'), Identifier(u'format.name$'), QuotedVar(u'aut1f'), Identifier(u':='), Identifier(u'numnames'), Integer(1), Identifier(u'>'), Identifier(u'name.max'), Integer(1), Identifier(u'>'), Identifier(u'and'), FunctionLiteral([Identifier(u'field'), Integer(2), Identifier(u'cite.name.format'), Identifier(u'format.name$'), QuotedVar(u'aut2'), Identifier(u':='), Identifier(u'numnames'), Integer(2), Identifier(u'>'), Identifier(u'name.max'), Integer(2), Identifier(u'>'), Identifier(u'and'), FunctionLiteral([Identifier(u'field'), Integer(3), Identifier(u'cite.name.format'), Identifier(u'format.name$'), QuotedVar(u'aut3'), Identifier(u':='), Identifier(u'numnames'), Integer(3), Identifier(u'>'), Identifier(u'name.max'), Integer(3), Identifier(u'>'), Identifier(u'and'), FunctionLiteral([Identifier(u'field'), Integer(4), Identifier(u'cite.name.format'), Identifier(u'format.name$'), QuotedVar(u'aut4'), Identifier(u':='), Identifier(u'numnames'), Integer(4), Identifier(u'>'), Identifier(u'name.max'), Integer(4), Identifier(u'>'), Identifier(u'and'), FunctionLiteral([Identifier(u'field'), Integer(5), Identifier(u'cite.name.format'), Identifier(u'format.name$'), QuotedVar(u'aut5'), Identifier(u':='), Identifier(u'numnames'), Integer(5), Identifier(u'>'), Identifier(u'name.max'), Integer(5), Identifier(u'>'), Identifier(u'and'), FunctionLiteral([Identifier(u'field'), Integer(6), Identifier(u'cite.name.format'), Identifier(u'format.name$'), QuotedVar(u'aut6'), Identifier(u':=')]), FunctionLiteral([String(u''), QuotedVar(u'aut6'), Identifier(u':=')]), Identifier(u'if$')]), FunctionLiteral([String(u''), QuotedVar(u'aut5'), Identifier(u':='), String(u''), QuotedVar(u'aut6'), Identifier(u':=')]), Identifier(u'if$')]), FunctionLiteral([String(u''), QuotedVar(u'aut4'), Identifier(u':='), String(u''), QuotedVar(u'aut5'), Identifier(u':='), String(u''), QuotedVar(u'aut6'), Identifier(u':=')]), Identifier(u'if$')]), FunctionLiteral([String(u''), QuotedVar(u'aut3'), Identifier(u':='), String(u''), QuotedVar(u'aut4'), Identifier(u':='), String(u''), QuotedVar(u'aut5'), Identifier(u':='), String(u''), QuotedVar(u'aut6'), Identifier(u':=')]), Identifier(u'if$')]), FunctionLiteral([String(u''), QuotedVar(u'aut2'), Identifier(u':='), String(u''), QuotedVar(u'aut3'), Identifier(u':='), String(u''), QuotedVar(u'aut4'), Identifier(u':='), String(u''), QuotedVar(u'aut5'), Identifier(u':='), String(u''), QuotedVar(u'aut6'), Identifier(u':=')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'change.add.to.year')], [Identifier(u'forward'), Integer(1), Identifier(u'='), FunctionLiteral([Identifier(u'add.to.year.old'), Integer(0), Identifier(u'>'), FunctionLiteral([Identifier(u'add.to.year.old'), Integer(1), Identifier(u'+'), QuotedVar(u'add.to.year'), Identifier(u':=')]), FunctionLiteral([Integer(2), QuotedVar(u'add.to.year'), Identifier(u':=')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'add.to.year.old'), Integer(1), Identifier(u'-'), QuotedVar(u'add.to.year'), Identifier(u':=')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'definitive.cite.num.names.1.or.2')], [Identifier(u'numnames'), Identifier(u'numnames.old'), Identifier(u'='), FunctionLiteral([Identifier(u'aut1f'), Identifier(u'aut1f.old'), Identifier(u'='), FunctionLiteral([Identifier(u'aut2'), Identifier(u'aut2.old'), Identifier(u'='), Identifier(u'numnames'), Integer(2), Identifier(u'='), Identifier(u'and'), Identifier(u'numnames'), Integer(1), Identifier(u'='), Identifier(u'or'), FunctionLiteral([Identifier(u'change.add.to.year')]), FunctionLiteral([Identifier(u'skip$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'skip$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'skip$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'definitive.cite.num.names.3.or.more')], [Identifier(u'aut1f'), Identifier(u'aut1f.old'), Identifier(u'='), FunctionLiteral([Identifier(u'aut2'), Identifier(u'aut2.old'), Identifier(u'='), FunctionLiteral([Identifier(u'aut3'), Identifier(u'aut3.old'), Identifier(u'='), FunctionLiteral([Identifier(u'numnames.old'), Integer(3), Identifier(u'='), FunctionLiteral([Identifier(u'numnames'), Integer(3), Identifier(u'='), FunctionLiteral([Identifier(u'change.add.to.year'), Identifier(u'cite.num.names.short'), Identifier(u'cite.num.names.old'), Identifier(u'<'), FunctionLiteral([Identifier(u'cite.num.names.old'), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$')]), FunctionLiteral([Identifier(u'cite.num.names.short'), Integer(4), Identifier(u'<'), FunctionLiteral([Integer(4), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'numnames'), Integer(3), Identifier(u'='), FunctionLiteral([Identifier(u'numnames'), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), FunctionLiteral([Identifier(u'aut4'), Identifier(u'aut4.old'), Identifier(u'='), FunctionLiteral([Identifier(u'numnames.old'), Integer(4), Identifier(u'='), FunctionLiteral([Identifier(u'numnames'), Integer(4), Identifier(u'='), FunctionLiteral([Identifier(u'change.add.to.year'), Identifier(u'cite.num.names.short'), Identifier(u'cite.num.names.old'), Identifier(u'<'), FunctionLiteral([Identifier(u'cite.num.names.old'), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$')]), FunctionLiteral([Identifier(u'cite.num.names.short'), Integer(5), Identifier(u'<'), FunctionLiteral([Integer(5), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'numnames'), Integer(4), Identifier(u'='), FunctionLiteral([Identifier(u'numnames'), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), FunctionLiteral([Identifier(u'aut5'), Identifier(u'aut5.old'), Identifier(u'='), FunctionLiteral([Identifier(u'numnames.old'), Integer(5), Identifier(u'='), FunctionLiteral([Identifier(u'numnames'), Integer(5), Identifier(u'='), FunctionLiteral([Identifier(u'change.add.to.year'), Identifier(u'cite.num.names.short'), Identifier(u'cite.num.names.old'), Identifier(u'<'), FunctionLiteral([Identifier(u'cite.num.names.old'), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$')]), FunctionLiteral([Identifier(u'cite.num.names.short'), Integer(6), Identifier(u'<'), FunctionLiteral([Integer(6), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'numnames'), Integer(5), Identifier(u'='), FunctionLiteral([Identifier(u'numnames'), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), FunctionLiteral([Identifier(u'numnames'), Integer(6), Identifier(u'>'), Identifier(u'numnames.old'), Integer(6), Identifier(u'='), Identifier(u'and'), Identifier(u'numnames'), Integer(6), Identifier(u'='), Identifier(u'numnames.old'), Integer(6), Identifier(u'>'), Identifier(u'and'), Identifier(u'or'), Identifier(u'aut6'), Identifier(u'aut6.old'), Identifier(u'='), Identifier(u'not'), Identifier(u'or'), FunctionLiteral([Integer(6), Identifier(u'cite.num.names.short'), Identifier(u'<'), FunctionLiteral([Integer(6), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$')]), FunctionLiteral([Identifier(u'change.add.to.year'), Identifier(u'cite.num.names.short'), Identifier(u'cite.num.names.old'), Identifier(u'<'), FunctionLiteral([Identifier(u'cite.num.names.old'), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'cite.num.names.short'), Integer(5), Identifier(u'<'), FunctionLiteral([Integer(5), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'cite.num.names.short'), Integer(4), Identifier(u'<'), FunctionLiteral([Integer(4), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'cite.num.names.short'), Integer(3), Identifier(u'<'), FunctionLiteral([Integer(3), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'cite.num.names.short'), Integer(2), Identifier(u'<'), FunctionLiteral([Integer(2), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'skip$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'definitive.cite.num.names.field')], [QuotedVar(u'field'), Identifier(u':='), Identifier(u'field'), Identifier(u'num.names$'), QuotedVar(u'numnames'), Identifier(u':='), Identifier(u'format.6.authors'), Identifier(u'cite.num.names.short'), Identifier(u'numnames.old'), Identifier(u'>'), FunctionLiteral([Identifier(u'skip$')]), FunctionLiteral([Identifier(u'year.label'), Identifier(u'year.label.old'), Identifier(u'='), FunctionLiteral([Identifier(u'numnames'), Integer(3), Identifier(u'<'), Identifier(u'numnames.old'), Integer(3), Identifier(u'<'), Identifier(u'or'), FunctionLiteral([Identifier(u'definitive.cite.num.names.1.or.2')]), FunctionLiteral([Identifier(u'definitive.cite.num.names.3.or.more')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'skip$')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'cite.num.names.short'), Identifier(u'name.max'), Identifier(u'>'), FunctionLiteral([Identifier(u'name.max'), QuotedVar(u'cite.num.names.short'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$'), Identifier(u'cite.num.names.full'), Identifier(u'cite.num.names.short'), Identifier(u'<'), FunctionLiteral([Identifier(u'cite.num.names.short'), QuotedVar(u'cite.num.names.full'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$'), Identifier(u'update.cite.num.names')]], [u'FUNCTION', [Identifier(u'definitive.cite.no.names')], [QuotedVar(u'aut1f'), Identifier(u':='), String(u''), QuotedVar(u'aut2'), Identifier(u':='), String(u''), QuotedVar(u'aut3'), Identifier(u':='), String(u''), QuotedVar(u'aut4'), Identifier(u':='), String(u''), QuotedVar(u'aut5'), Identifier(u':='), String(u''), QuotedVar(u'aut6'), Identifier(u':='), Integer(1), QuotedVar(u'numnames'), Identifier(u':='), Identifier(u'year.label'), Identifier(u'year.label.old'), Identifier(u'='), FunctionLiteral([Identifier(u'definitive.cite.num.names.1.or.2')]), FunctionLiteral([Identifier(u'skip$')]), Identifier(u'if$'), Identifier(u'update.cite.num.names')]], [u'FUNCTION', [Identifier(u'definitive.cite.num.names')], [Identifier(u'firstkey'), Identifier(u'empty$'), Identifier(u'not'), FunctionLiteral([Identifier(u'firstkey'), Identifier(u'sortify'), Identifier(u'remove.spaces'), Identifier(u'definitive.cite.no.names')]), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), Identifier(u'not'), FunctionLiteral([Identifier(u'key'), Identifier(u'sortify'), Identifier(u'remove.spaces'), Identifier(u'definitive.cite.no.names')]), FunctionLiteral([Identifier(u'ref.type'), Integer(2), Identifier(u'='), FunctionLiteral([Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'title.sort.label'), Identifier(u'definitive.cite.no.names')]), FunctionLiteral([Identifier(u'author'), Identifier(u'definitive.cite.num.names.field')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'title.sort.label'), Identifier(u'definitive.cite.no.names')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'definitive.cite.num.names.field')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'author'), Identifier(u'definitive.cite.num.names.field')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'make.tentative.year.sort.label')], [Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u'0000'), QuotedVar(u'year.label'), Identifier(u':=')]), FunctionLiteral([Identifier(u'year'), String(u'\\bibnodate'), Identifier(u'='), Identifier(u'year'), String(u'n.d.'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([String(u'0000'), QuotedVar(u'year.label'), Identifier(u':=')]), FunctionLiteral([Identifier(u'year'), String(u'\\BIP'), Identifier(u'='), FunctionLiteral([String(u'9999'), QuotedVar(u'year.label'), Identifier(u':=')]), FunctionLiteral([Identifier(u'year'), Identifier(u'sortify'), Identifier(u'remove.spaces'), QuotedVar(u'year.label'), Identifier(u':=')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'year.label')]], [u'FUNCTION', [Identifier(u'month.number.day')], [Identifier(u'month'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'month'), Identifier(u'sortify'), Identifier(u'remove.spaces'), Identifier(u'day'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'/'), Identifier(u'*'), Identifier(u'day'), Identifier(u'sortify'), Identifier(u'remove.spaces'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'make.name.sort.label')], [QuotedVar(u'field'), Identifier(u':='), Identifier(u'field'), Identifier(u'num.names$'), QuotedVar(u'numnames'), Identifier(u':='), Identifier(u'field'), Integer(1), Identifier(u'sort.name.format'), Identifier(u'format.name$'), Identifier(u'numnames'), Integer(1), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'numnames'), Integer(2), Identifier(u'='), FunctionLiteral([Identifier(u'field'), Integer(2), String(u'{ll{}}'), Identifier(u'format.name$'), QuotedVar(u's'), Identifier(u':='), Identifier(u's'), String(u'others'), Identifier(u'='), FunctionLiteral([String(u' zzzz'), Identifier(u'*')]), FunctionLiteral([String(u' '), Identifier(u'*'), Identifier(u's'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u' zzzz'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$'), String(u' '), Identifier(u'*'), Identifier(u'make.tentative.year.sort.label'), Identifier(u'*'), String(u' '), Identifier(u'*'), Identifier(u'numnames'), Integer(3), Identifier(u'<'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'numnames'), Identifier(u'name.max'), Identifier(u'>'), FunctionLiteral([Identifier(u'name.max'), QuotedVar(u'lastname'), Identifier(u':='), String(u' zzzz')]), FunctionLiteral([Identifier(u'numnames'), QuotedVar(u'lastname'), Identifier(u':='), String(u'')]), Identifier(u'if$'), String(u''), Integer(2), QuotedVar(u'nameptr'), Identifier(u':='), FunctionLiteral([Identifier(u'nameptr'), Identifier(u'lastname'), Identifier(u'<')]), FunctionLiteral([Identifier(u'field'), Identifier(u'nameptr'), String(u'{ll{}}'), Identifier(u'format.name$'), Identifier(u'*'), String(u' '), Identifier(u'*'), Identifier(u'nameptr'), Integer(1), Identifier(u'+'), QuotedVar(u'nameptr'), Identifier(u':=')]), Identifier(u'while$'), Identifier(u'field'), Identifier(u'lastname'), String(u'{ll{}}'), Identifier(u'format.name$'), QuotedVar(u's'), Identifier(u':='), Identifier(u's'), String(u'others'), Identifier(u'='), FunctionLiteral([String(u'zzzz'), Identifier(u'*')]), FunctionLiteral([Identifier(u's'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'swap$'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), String(u' '), Identifier(u'*'), Identifier(u'title.number'), Identifier(u'conv.int.to.str'), Identifier(u'*'), Identifier(u'sortify'), String(u' '), Identifier(u'*'), Identifier(u'month.number.day'), Identifier(u'*'), QuotedVar(u'author.year.sort.label'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'make.field.year.sort.label')], [String(u' '), Identifier(u'*'), Identifier(u'make.tentative.year.sort.label'), Identifier(u'*'), String(u' '), Identifier(u'*'), String(u' '), Identifier(u'*'), Identifier(u'title.number'), Identifier(u'conv.int.to.str'), Identifier(u'*'), Identifier(u'sortify'), String(u' '), Identifier(u'*'), Identifier(u'month.number.day'), Identifier(u'*'), QuotedVar(u'author.year.sort.label'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'make.author.editor.sort.label')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'title.sort.label'), Identifier(u'make.field.year.sort.label')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'make.name.sort.label')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'author'), Identifier(u'make.name.sort.label')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'make.author.sort.label')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'title.sort.label'), Identifier(u'make.field.year.sort.label')]), FunctionLiteral([Identifier(u'author'), Identifier(u'make.name.sort.label')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'make.tentative.sort.label')], [Identifier(u'firstkey'), Identifier(u'empty$'), Identifier(u'not'), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), Identifier(u'not'), FunctionLiteral([Identifier(u'key'), Identifier(u'sortify'), Identifier(u'remove.spaces'), String(u' '), Identifier(u'*'), Identifier(u'firstkey'), Identifier(u'sortify'), Identifier(u'remove.spaces'), Identifier(u'*'), Identifier(u'make.field.year.sort.label')]), FunctionLiteral([Identifier(u'firstkey'), Identifier(u'sortify'), Identifier(u'remove.spaces'), Identifier(u'make.field.year.sort.label')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), Identifier(u'not'), FunctionLiteral([Identifier(u'key'), Identifier(u'sortify'), Identifier(u'remove.spaces'), Identifier(u'make.field.year.sort.label')]), FunctionLiteral([Identifier(u'ref.type'), Identifier(u'duplicate$'), Integer(1), Identifier(u'='), FunctionLiteral([Identifier(u'pop$'), Identifier(u'make.author.editor.sort.label')]), FunctionLiteral([Identifier(u'duplicate$'), Integer(2), Identifier(u'='), FunctionLiteral([Identifier(u'pop$'), Identifier(u'make.author.sort.label')]), FunctionLiteral([Integer(3), Identifier(u'='), FunctionLiteral([String(u'no key in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), Identifier(u'make.author.editor.sort.label')]), FunctionLiteral([Identifier(u'make.author.editor.sort.label')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'author.year.sort.label'), QuotedVar(u'sort.key$'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'make.definitive.name.sort.label')], [QuotedVar(u'field'), Identifier(u':='), Identifier(u'field'), Identifier(u'num.names$'), QuotedVar(u'numnames'), Identifier(u':='), Identifier(u'numnames'), Identifier(u'name.max'), Identifier(u'>'), FunctionLiteral([Identifier(u'name.max'), QuotedVar(u'format.num.names'), Identifier(u':=')]), FunctionLiteral([Identifier(u'numnames'), QuotedVar(u'format.num.names'), Identifier(u':=')]), Identifier(u'if$'), String(u''), Integer(1), QuotedVar(u'nameptr'), Identifier(u':='), FunctionLiteral([Identifier(u'nameptr'), Identifier(u'format.num.names'), Identifier(u'<')]), FunctionLiteral([Identifier(u'field'), Identifier(u'nameptr'), Identifier(u'sort.name.format'), Identifier(u'format.name$'), Identifier(u'*'), String(u' '), Identifier(u'*'), Identifier(u'nameptr'), Integer(1), Identifier(u'+'), QuotedVar(u'nameptr'), Identifier(u':=')]), Identifier(u'while$'), Identifier(u'field'), Identifier(u'nameptr'), Identifier(u'sort.name.format'), Identifier(u'format.name$'), Identifier(u'*'), Identifier(u'nameptr'), Identifier(u'numnames'), Identifier(u'<'), FunctionLiteral([String(u' zzzz'), Identifier(u'*')]), QuotedVar(u'skip$'), Identifier(u'if$'), Identifier(u'sortify'), String(u' '), Identifier(u'*'), Identifier(u'year.label'), Identifier(u'*'), String(u' '), Identifier(u'*'), Identifier(u'title.number'), Identifier(u'conv.int.to.str'), Identifier(u'*'), String(u' '), Identifier(u'*'), Identifier(u'month.number.day'), Identifier(u'*'), QuotedVar(u'author.year.sort.label'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'make.definitive.field.year.sort.label')], [String(u' '), Identifier(u'*'), Identifier(u'year.label'), Identifier(u'*'), String(u' '), Identifier(u'*'), Identifier(u'title.number'), Identifier(u'conv.int.to.str'), Identifier(u'*'), String(u' '), Identifier(u'*'), Identifier(u'month.number.day'), Identifier(u'*'), QuotedVar(u'author.year.sort.label'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'make.definitive.author.editor.sort.label')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'title.sort.label'), Identifier(u'make.definitive.field.year.sort.label')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'make.definitive.name.sort.label')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'author'), Identifier(u'make.definitive.name.sort.label')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'make.definitive.author.sort.label')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'title.sort.label'), Identifier(u'make.definitive.field.year.sort.label')]), FunctionLiteral([Identifier(u'author'), Identifier(u'make.definitive.name.sort.label')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'make.final.sort.key')], [Identifier(u'ref.type'), Integer(2), Identifier(u'='), FunctionLiteral([Identifier(u'make.definitive.author.sort.label')]), FunctionLiteral([Identifier(u'make.definitive.author.editor.sort.label')]), Identifier(u'if$'), Identifier(u'author.year.sort.label'), QuotedVar(u'sort.key$'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'chop.word')], [QuotedVar(u's'), Identifier(u':='), QuotedVar(u'len'), Identifier(u':='), Identifier(u's'), Integer(1), Identifier(u'len'), Identifier(u'substring$'), Identifier(u'='), FunctionLiteral([Identifier(u's'), Identifier(u'len'), Integer(1), Identifier(u'+'), Identifier(u'global.max$'), Identifier(u'substring$')]), FunctionLiteral([Identifier(u's')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'chop.articles')], [QuotedVar(u's'), Identifier(u':='), String(u'a '), Integer(2), String(u'an '), Integer(3), String(u'the '), Integer(4), Identifier(u's'), Identifier(u'chop.word'), Identifier(u'chop.word'), Identifier(u'chop.word')]], [u'FUNCTION', [Identifier(u'format.sort.title')], [Identifier(u'sortify'), Identifier(u'chop.articles'), Integer(1), Identifier(u'entry.max$'), Identifier(u'substring$')]], [u'FUNCTION', [Identifier(u'make.sort.title')], [Identifier(u'title'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'text'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'type'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'howpublished'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'note'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'url'), Identifier(u'empty$'), FunctionLiteral([String(u' ')]), FunctionLiteral([Identifier(u'url'), Identifier(u'format.sort.title')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'note'), Identifier(u'format.sort.title')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'howpublished'), Identifier(u'format.sort.title')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'type'), Identifier(u'format.sort.title')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'text'), Identifier(u'format.sort.title')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'title'), Identifier(u'format.sort.title')]), Identifier(u'if$'), Identifier(u'remove.spaces'), QuotedVar(u'title.sort.label'), Identifier(u':='), Identifier(u'title.sort.label'), QuotedVar(u'sort.key$'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'make.title.number')], [Identifier(u'title.sort.label'), Identifier(u'old.label'), Identifier(u'='), FunctionLiteral([Identifier(u'old.number'), QuotedVar(u'title.number'), Identifier(u':=')]), FunctionLiteral([Identifier(u'old.number'), Integer(1), Identifier(u'+'), QuotedVar(u'title.number'), Identifier(u':='), Identifier(u'title.number'), QuotedVar(u'old.number'), Identifier(u':='), Identifier(u'title.sort.label'), QuotedVar(u'old.label'), Identifier(u':=')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'last.part.name.format')], [String(u'{ll}')]], [u'FUNCTION', [Identifier(u'initials.with.space.name.format')], [String(u'{f.}')]], [u'FUNCTION', [Identifier(u'von.last.junior.name.format')], [String(u'{vv }{ll}{ jj}')]], [u'FUNCTION', [Identifier(u'von.junior.name.format')], [String(u'{ vv}{, jj}')]], [u'FUNCTION', [Identifier(u'one.complete.name.format')], [String(u'{vv }{ll}{, jj}{, ff}')]], [u'FUNCTION', [Identifier(u'string.length')], [Integer(0), QuotedVar(u'pos'), Identifier(u':='), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'pos'), Integer(1), Identifier(u'+'), Integer(1), Identifier(u'substring$'), String(u''), Identifier(u'='), Identifier(u'not')]), FunctionLiteral([Identifier(u'pos'), Integer(1), Identifier(u'+'), QuotedVar(u'pos'), Identifier(u':=')]), Identifier(u'while$'), Identifier(u'pop$'), Identifier(u'pos')]], [u'FUNCTION', [Identifier(u'transform.spaces.and.hyphens')], [QuotedVar(u's'), Identifier(u':='), Identifier(u's'), Identifier(u'string.length'), QuotedVar(u'len'), Identifier(u':='), String(u''), QuotedVar(u't'), Identifier(u':='), Integer(1), QuotedVar(u'pos'), Identifier(u':='), Integer(0), QuotedVar(u'brace.level'), Identifier(u':='), FunctionLiteral([Identifier(u'pos'), Identifier(u'len'), Identifier(u'<')]), FunctionLiteral([Identifier(u'brace.level'), Integer(0), Identifier(u'='), FunctionLiteral([Identifier(u's'), Identifier(u'pos'), Integer(2), Identifier(u'substring$'), String(u'. '), Identifier(u'='), Identifier(u's'), Identifier(u'pos'), Integer(2), Identifier(u'substring$'), String(u'.~'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([Identifier(u't'), String(u'\\BPBI '), Identifier(u'*'), QuotedVar(u't'), Identifier(u':='), Identifier(u'pos'), Integer(2), Identifier(u'+'), QuotedVar(u'pos'), Identifier(u':=')]), FunctionLiteral([Identifier(u's'), Identifier(u'pos'), Integer(2), Identifier(u'substring$'), String(u'.-'), Identifier(u'='), FunctionLiteral([Identifier(u't'), String(u'\\BHBI '), Identifier(u'*'), QuotedVar(u't'), Identifier(u':='), Identifier(u'pos'), Integer(2), Identifier(u'+'), QuotedVar(u'pos'), Identifier(u':=')]), FunctionLiteral([Identifier(u't'), Identifier(u's'), Identifier(u'pos'), Integer(1), Identifier(u'substring$'), Identifier(u'*'), QuotedVar(u't'), Identifier(u':='), Identifier(u's'), Identifier(u'pos'), Integer(1), Identifier(u'substring$'), String(u'{'), Identifier(u'='), FunctionLiteral([Identifier(u'brace.level'), Integer(1), Identifier(u'+'), QuotedVar(u'brace.level'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$'), Identifier(u'pos'), Integer(1), Identifier(u'+'), QuotedVar(u'pos'), Identifier(u':=')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u't'), Identifier(u's'), Identifier(u'pos'), Integer(1), Identifier(u'substring$'), Identifier(u'*'), QuotedVar(u't'), Identifier(u':='), Identifier(u's'), Identifier(u'pos'), Integer(1), Identifier(u'substring$'), String(u'{'), Identifier(u'='), FunctionLiteral([Identifier(u'brace.level'), Integer(1), Identifier(u'+'), QuotedVar(u'brace.level'), Identifier(u':=')]), FunctionLiteral([Identifier(u's'), Identifier(u'pos'), Integer(1), Identifier(u'substring$'), String(u'}'), Identifier(u'='), FunctionLiteral([Identifier(u'brace.level'), Integer(1), Identifier(u'-'), QuotedVar(u'brace.level'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'pos'), Integer(1), Identifier(u'+'), QuotedVar(u'pos'), Identifier(u':=')]), Identifier(u'if$')]), Identifier(u'while$'), Identifier(u'pos'), Identifier(u'len'), Identifier(u'='), FunctionLiteral([Identifier(u't'), Identifier(u's'), Identifier(u'pos'), Integer(1), Identifier(u'substring$'), Identifier(u'*'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([Identifier(u's'), Identifier(u'len'), Integer(1), Identifier(u'-'), Integer(2), Identifier(u'substring$'), Identifier(u't'), Identifier(u'text.length$'), QuotedVar(u'len'), Identifier(u':='), Identifier(u't'), Integer(1), Identifier(u'len'), Integer(6), Identifier(u'-'), Identifier(u'substring$'), Identifier(u'swap$'), Identifier(u'*'), QuotedVar(u't'), Identifier(u':=')]), Identifier(u'if$'), Identifier(u't')]], [u'FUNCTION', [Identifier(u'format.initials.with.hyphen')], [Identifier(u'initials.with.space.name.format'), Identifier(u'format.name$'), Identifier(u'transform.spaces.and.hyphens')]], [u'FUNCTION', [Identifier(u'format.last.part.name')], [Identifier(u'last.part.name.format'), Identifier(u'format.name$')]], [u'FUNCTION', [Identifier(u'format.von.last.junior.name')], [Identifier(u'von.last.junior.name.format'), Identifier(u'format.name$')]], [u'FUNCTION', [Identifier(u'format.von.junior.name')], [Identifier(u'von.junior.name.format'), Identifier(u'format.name$')]], [u'FUNCTION', [Identifier(u'format.cite.initials.name')], [Identifier(u'one.complete.name.format'), Identifier(u'format.name$'), Identifier(u'duplicate$'), Integer(1), Identifier(u'format.initials.with.hyphen'), Identifier(u'swap$'), Integer(1), Identifier(u'format.von.last.junior.name'), String(u'~'), Identifier(u'connect.check')]], [u'FUNCTION', [Identifier(u'format.author.name')], [Identifier(u'one.complete.name.format'), Identifier(u'format.name$'), Identifier(u'duplicate$'), Identifier(u'duplicate$'), Integer(1), Identifier(u'format.last.part.name'), Identifier(u'swap$'), Integer(1), Identifier(u'format.initials.with.hyphen'), Identifier(u'connect.with.comma.check'), Identifier(u'swap$'), Integer(1), Identifier(u'format.von.junior.name'), String(u''), Identifier(u'connect.check')]], [u'FUNCTION', [Identifier(u'format.editor.name')], [Identifier(u'format.cite.initials.name')]], [u'FUNCTION', [Identifier(u'format.index.name')], [Identifier(u'format.author.name')]], [u'FUNCTION', [Identifier(u'comma.between.two')], [String(u'\\BCBT{}')]], [u'FUNCTION', [Identifier(u'comma.between.names')], [String(u', ')]], [u'FUNCTION', [Identifier(u'comma.before.last')], [String(u'\\BCBL{}')]], [u'FUNCTION', [Identifier(u'and.before.last')], [String(u'\\ \\BBA{} ')]], [u'FUNCTION', [Identifier(u'et.al.string.cite')], [String(u'\\ \\protect\\BOthers{.}')]], [u'FUNCTION', [Identifier(u'et.al.string')], [String(u'\\ \\BOthers{.}')]], [u'FUNCTION', [Identifier(u'et.al.string.period')], [String(u'\\ \\BOthersPeriod{.}')]], [u'FUNCTION', [Identifier(u'add.name.index')], [Identifier(u'make.index'), FunctionLiteral([String(u'%'), Identifier(u'*'), Identifier(u'write$'), Identifier(u'newline$'), Identifier(u'field'), Identifier(u'is.bibcorporate'), FunctionLiteral([String(u'\\corporateAX{')]), FunctionLiteral([String(u'\\AX{')]), Identifier(u'if$'), Identifier(u'write$'), Identifier(u'field'), Identifier(u'nameptr'), Identifier(u'sort.name.format'), Identifier(u'format.name$'), Identifier(u'sortify'), Identifier(u'write$'), Identifier(u'newline$'), String(u'@'), Identifier(u'write$'), Identifier(u'field'), Identifier(u'nameptr'), Identifier(u'format.index.name'), String(u'}%'), Identifier(u'*'), Identifier(u'write$'), Identifier(u'newline$')]), FunctionLiteral([String(u'%'), Identifier(u'*'), Identifier(u'write$'), Identifier(u'newline$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'make.name.cite.label')], [QuotedVar(u'field'), Identifier(u':='), QuotedVar(u'format.num.names'), Identifier(u':='), Identifier(u'field'), Identifier(u'num.names$'), QuotedVar(u'numnames'), Identifier(u':='), Identifier(u'format.num.names'), Identifier(u'numnames'), Integer(1), Identifier(u'-'), Identifier(u'='), FunctionLiteral([Identifier(u'numnames'), QuotedVar(u'format.num.names'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$'), Integer(1), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u'cite.initials'), Integer(1), Identifier(u'='), FunctionLiteral([Identifier(u'field'), Identifier(u'nameptr'), Identifier(u'format.cite.initials.name')]), FunctionLiteral([Identifier(u'field'), Identifier(u'nameptr'), Identifier(u'cite.name.format'), Identifier(u'format.name$')]), Identifier(u'if$'), Identifier(u'add.name.index'), Identifier(u'numnames'), Integer(1), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'format.num.names'), Integer(1), Identifier(u'='), FunctionLiteral([Identifier(u'et.al.string.cite'), Identifier(u'write$')]), FunctionLiteral([Identifier(u'numnames'), Integer(2), Identifier(u'='), FunctionLiteral([Integer(2), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u'field'), Identifier(u'nameptr'), Identifier(u'cite.name.format'), Identifier(u'format.name$'), QuotedVar(u's'), Identifier(u':='), Identifier(u's'), String(u'others'), Identifier(u'='), FunctionLiteral([Identifier(u'et.al.string.cite'), Identifier(u'write$')]), FunctionLiteral([Identifier(u'and.before.last'), Identifier(u'write$'), Identifier(u's'), Identifier(u'add.name.index')]), Identifier(u'if$')]), FunctionLiteral([Integer(2), QuotedVar(u'nameptr'), Identifier(u':='), FunctionLiteral([Identifier(u'nameptr'), Identifier(u'format.num.names'), Identifier(u'<')]), FunctionLiteral([Identifier(u'comma.between.names'), Identifier(u'write$'), Identifier(u'field'), Identifier(u'nameptr'), Identifier(u'cite.name.format'), Identifier(u'format.name$'), Identifier(u'add.name.index'), Identifier(u'nameptr'), Integer(1), Identifier(u'+'), QuotedVar(u'nameptr'), Identifier(u':=')]), Identifier(u'while$'), Identifier(u'field'), Identifier(u'nameptr'), Identifier(u'cite.name.format'), Identifier(u'format.name$'), QuotedVar(u's'), Identifier(u':='), Identifier(u'format.num.names'), Identifier(u'numnames'), Identifier(u'='), FunctionLiteral([Identifier(u'comma.before.last'), Identifier(u'write$'), Identifier(u's'), String(u'others'), Identifier(u'='), FunctionLiteral([Identifier(u'et.al.string.cite'), Identifier(u'write$')]), FunctionLiteral([Identifier(u'and.before.last'), Identifier(u'write$'), Identifier(u's'), Identifier(u'add.name.index')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'comma.between.names'), Identifier(u'write$'), Identifier(u's'), Identifier(u'add.name.index'), Identifier(u'comma.before.last'), Identifier(u'et.al.string.cite'), Identifier(u'*'), Identifier(u'write$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'make.title.cite.label')], [Identifier(u'is.atype'), FunctionLiteral([String(u'\\APACciteatitle{')]), FunctionLiteral([String(u'\\APACcitebtitle{')]), Identifier(u'if$'), Identifier(u'title'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'text'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'type'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'howpublished'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'note'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'url'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'cite$')]), FunctionLiteral([Identifier(u'url')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'note')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'howpublished')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'type')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'text')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'title')]), Identifier(u'if$'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'write$')]], [u'FUNCTION', [Identifier(u'make.author.editor.cite.label')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'make.title.cite.label'), String(u'}{%'), Identifier(u'write$'), Identifier(u'newline$'), Identifier(u'make.title.cite.label')]), FunctionLiteral([Identifier(u'cite.num.names.full'), Identifier(u'editor'), Identifier(u'make.name.cite.label'), String(u'}{%'), Identifier(u'write$'), Identifier(u'newline$'), Identifier(u'cite.num.names.short'), Identifier(u'editor'), Identifier(u'make.name.cite.label')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'cite.num.names.full'), Identifier(u'author'), Identifier(u'make.name.cite.label'), String(u'}{%'), Identifier(u'write$'), Identifier(u'newline$'), Identifier(u'cite.num.names.short'), Identifier(u'author'), Identifier(u'make.name.cite.label')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'make.author.cite.label')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'make.title.cite.label'), String(u'}{%'), Identifier(u'write$'), Identifier(u'newline$'), Identifier(u'make.title.cite.label')]), FunctionLiteral([Identifier(u'cite.num.names.full'), Identifier(u'author'), Identifier(u'make.name.cite.label'), String(u'}{%'), Identifier(u'write$'), Identifier(u'newline$'), Identifier(u'cite.num.names.short'), Identifier(u'author'), Identifier(u'make.name.cite.label')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'make.definitive.year.supplement')], [Identifier(u'add.to.year'), Integer(0), Identifier(u'='), FunctionLiteral([String(u'')]), FunctionLiteral([String(u'{\\protect'), Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u'\\BCntND'), Identifier(u'*')]), FunctionLiteral([Identifier(u'year'), String(u'\\bibnodate'), Identifier(u'='), FunctionLiteral([String(u'\\BCntND'), Identifier(u'*')]), FunctionLiteral([Identifier(u'year'), String(u'\\BIP'), Identifier(u'='), FunctionLiteral([String(u'\\BCntIP'), Identifier(u'*')]), FunctionLiteral([String(u'\\BCnt'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$'), String(u'{'), Identifier(u'*'), Identifier(u'add.to.year'), Identifier(u'int.to.str$'), Identifier(u'*'), String(u'}}'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'protect.year')], [Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u'{\\protect\\bibnodate{}}')]), FunctionLiteral([Identifier(u'year'), String(u'\\bibnodate'), Identifier(u'='), FunctionLiteral([String(u'{\\protect\\bibnodate{}}')]), FunctionLiteral([Identifier(u'year'), String(u'\\BIP'), Identifier(u'='), FunctionLiteral([String(u'{\\protect\\BIP{}}')]), FunctionLiteral([Identifier(u'year')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'make.definitive.year.label')], [String(u'{\\protect\\APACyear{'), Identifier(u'originalyear'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'protect.year')]), FunctionLiteral([Identifier(u'originalyear'), String(u'\\bibnodate'), Identifier(u'='), FunctionLiteral([Identifier(u'translator'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'protect.year')]), FunctionLiteral([Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u'{\\protect\\BTRANSL{}~\\protect\\bibnodate{}}')]), FunctionLiteral([String(u'{\\protect\\BTRANSL{}}~'), Identifier(u'protect.year'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'originalyear'), String(u'/{\\protect\\bibnodate{}}'), Identifier(u'*')]), FunctionLiteral([Identifier(u'originalyear'), Identifier(u'year'), Identifier(u'='), FunctionLiteral([Identifier(u'protect.year')]), FunctionLiteral([Identifier(u'originalyear'), String(u'/'), Identifier(u'*'), Identifier(u'protect.year'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'*'), String(u'}}%'), Identifier(u'*'), Identifier(u'write$'), Identifier(u'newline$'), String(u'{\\protect\\APACexlab{'), String(u'}}'), Identifier(u'make.definitive.year.supplement'), Identifier(u'enclose.check')]], [u'FUNCTION', [Identifier(u'make.cite.labels')], [Identifier(u'newline$'), Identifier(u'test'), FunctionLiteral([String(u'\\bibitem[]{} \\fullciteA{'), Identifier(u'cite$'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'write$'), Identifier(u'newline$'), String(u'\\bibitem[]{} \\citeA{'), Identifier(u'cite$'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'write$'), Identifier(u'newline$')]), QuotedVar(u'skip$'), Identifier(u'if$'), String(u'\\bibitem[\\protect\\citeauthoryear{%'), Identifier(u'write$'), Identifier(u'newline$'), Identifier(u'firstkey'), Identifier(u'empty$'), Identifier(u'not'), FunctionLiteral([Identifier(u'firstkey'), Identifier(u'write$'), String(u'}{%'), Identifier(u'write$'), Identifier(u'newline$'), Identifier(u'cite.initials'), Integer(0), Identifier(u'='), Identifier(u'key'), Identifier(u'empty$'), Identifier(u'not'), Identifier(u'and'), FunctionLiteral([Identifier(u'key')]), FunctionLiteral([Identifier(u'firstkey')]), Identifier(u'if$'), Identifier(u'write$')]), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), Identifier(u'not'), FunctionLiteral([Identifier(u'key'), Identifier(u'write$'), String(u'}{%'), Identifier(u'write$'), Identifier(u'newline$'), Identifier(u'key'), Identifier(u'write$')]), FunctionLiteral([Identifier(u'ref.type'), Integer(2), Identifier(u'='), FunctionLiteral([Identifier(u'make.author.cite.label')]), FunctionLiteral([Identifier(u'make.author.editor.cite.label')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$'), String(u'}{%'), Identifier(u'write$'), Identifier(u'newline$'), Identifier(u'make.definitive.year.label'), Identifier(u'write$'), String(u'}]{%'), Identifier(u'write$'), Identifier(u'newline$'), Identifier(u'cite$'), Identifier(u'write$'), String(u'}%'), Identifier(u'write$'), Identifier(u'newline$'), String(u'\\APACinsertmetastar{%'), Identifier(u'write$'), Identifier(u'newline$'), Identifier(u'cite$'), Identifier(u'write$'), String(u'}%'), Identifier(u'write$'), Identifier(u'newline$')]], [u'FUNCTION', [Identifier(u'editor.postfix')], [Identifier(u'editor'), Identifier(u'num.names$'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u'(\\BEDS)')]), FunctionLiteral([String(u'(\\BED)')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'editor.trans.postfix')], [Identifier(u'editor'), Identifier(u'num.names$'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u'(\\BEDS{} \\BAnd{} \\BTRANSS)')]), FunctionLiteral([String(u'(\\BED{} \\BAnd{} \\BTRANS)')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'trans.postfix')], [Identifier(u'translator'), Identifier(u'num.names$'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u'(\\BTRANSS)')]), FunctionLiteral([String(u'(\\BTRANS)')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.author.names')], [QuotedVar(u'field'), Identifier(u':='), QuotedVar(u'dot'), Identifier(u':='), Identifier(u'field'), Identifier(u'num.names$'), QuotedVar(u'numnames'), Identifier(u':='), Identifier(u'numnames'), QuotedVar(u'format.num.names'), Identifier(u':='), Identifier(u'format.num.names'), Identifier(u'name.max'), Identifier(u'>'), FunctionLiteral([Identifier(u'dot'), FunctionLiteral([Identifier(u'name.max'), QuotedVar(u'format.num.names'), Identifier(u':=')]), FunctionLiteral([Identifier(u'cite.num.names.full'), QuotedVar(u'format.num.names'), Identifier(u':=')]), Identifier(u'if$')]), QuotedVar(u'skip$'), Identifier(u'if$'), Integer(1), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u'field'), Identifier(u'nameptr'), Identifier(u'format.author.name'), Identifier(u'numnames'), Integer(1), Identifier(u'='), Identifier(u'dot'), Identifier(u'and'), FunctionLiteral([Identifier(u'add.period$')]), QuotedVar(u'skip$'), Identifier(u'if$'), Identifier(u'add.name.index'), Identifier(u'numnames'), Integer(1), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'format.num.names'), Integer(1), Identifier(u'='), FunctionLiteral([Identifier(u'comma.between.two'), Identifier(u'dot'), FunctionLiteral([Identifier(u'et.al.string.period'), Identifier(u'*')]), FunctionLiteral([Identifier(u'et.al.string'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'write$')]), FunctionLiteral([Identifier(u'numnames'), Integer(2), Identifier(u'='), FunctionLiteral([Identifier(u'comma.between.two'), Identifier(u'write$'), Integer(2), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u'field'), Identifier(u'nameptr'), Identifier(u'format.author.name'), QuotedVar(u's'), Identifier(u':='), Identifier(u's'), String(u'others'), Identifier(u'='), FunctionLiteral([Identifier(u'dot'), FunctionLiteral([Identifier(u'et.al.string.period')]), FunctionLiteral([Identifier(u'et.al.string')]), Identifier(u'if$'), Identifier(u'write$')]), FunctionLiteral([Identifier(u'and.before.last'), Identifier(u'write$'), Identifier(u'dot'), FunctionLiteral([Identifier(u's'), Identifier(u'add.period$')]), FunctionLiteral([Identifier(u's')]), Identifier(u'if$'), Identifier(u'add.name.index')]), Identifier(u'if$')]), FunctionLiteral([Integer(2), QuotedVar(u'nameptr'), Identifier(u':='), FunctionLiteral([Identifier(u'nameptr'), Identifier(u'format.num.names'), Identifier(u'<')]), FunctionLiteral([Identifier(u'comma.between.names'), Identifier(u'write$'), Identifier(u'field'), Identifier(u'nameptr'), Identifier(u'format.author.name'), Identifier(u'add.name.index'), Identifier(u'nameptr'), Integer(1), Identifier(u'+'), QuotedVar(u'nameptr'), Identifier(u':=')]), Identifier(u'while$'), Identifier(u'field'), Identifier(u'nameptr'), Identifier(u'format.author.name'), QuotedVar(u's'), Identifier(u':='), Identifier(u'format.num.names'), Identifier(u'numnames'), Identifier(u'='), FunctionLiteral([Identifier(u'comma.before.last'), Identifier(u'write$'), Identifier(u's'), String(u'others'), Identifier(u'='), FunctionLiteral([Identifier(u'dot'), FunctionLiteral([Identifier(u'et.al.string.period')]), FunctionLiteral([Identifier(u'et.al.string')]), Identifier(u'if$'), Identifier(u'write$')]), FunctionLiteral([Identifier(u'and.before.last'), Identifier(u'write$'), Identifier(u'dot'), FunctionLiteral([Identifier(u's'), Identifier(u'add.period$')]), FunctionLiteral([Identifier(u's')]), Identifier(u'if$'), Identifier(u'add.name.index')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'comma.between.names'), Identifier(u'write$'), Identifier(u's'), Identifier(u'add.name.index'), Identifier(u'comma.before.last'), Identifier(u'dot'), FunctionLiteral([Identifier(u'et.al.string.period'), Identifier(u'*')]), FunctionLiteral([Identifier(u'et.al.string'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'write$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.authors')], [Integer(1), Identifier(u'author'), Identifier(u'format.author.names'), String(u'%'), Identifier(u'write$')]], [u'FUNCTION', [Identifier(u'format.editors.as.authors')], [Integer(0), Identifier(u'editor'), Identifier(u'format.author.names'), String(u'\\ '), Identifier(u'editor.postfix'), Identifier(u'*'), Identifier(u'add.period$'), Identifier(u'write$')]], [u'FUNCTION', [Identifier(u'format.ed.trans.as.authors')], [Integer(0), Identifier(u'editor'), Identifier(u'format.author.names'), String(u'\\ '), Identifier(u'editor.trans.postfix'), Identifier(u'*'), Identifier(u'add.period$'), Identifier(u'write$')]], [u'FUNCTION', [Identifier(u'format.editor.names')], [QuotedVar(u'field'), Identifier(u':='), Identifier(u'field'), Identifier(u'num.names$'), QuotedVar(u'numnames'), Identifier(u':='), Identifier(u'numnames'), QuotedVar(u'format.num.names'), Identifier(u':='), Identifier(u'format.num.names'), Identifier(u'name.max'), Identifier(u'>'), FunctionLiteral([Integer(1), QuotedVar(u'format.num.names'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$'), Identifier(u'field'), Integer(1), Identifier(u'format.editor.name'), Identifier(u'numnames'), Integer(1), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'format.num.names'), Integer(1), Identifier(u'='), FunctionLiteral([Identifier(u'et.al.string'), Identifier(u'*')]), FunctionLiteral([Identifier(u'numnames'), Integer(2), Identifier(u'='), FunctionLiteral([Identifier(u'field'), Integer(2), Identifier(u'format.editor.name'), QuotedVar(u's'), Identifier(u':='), Identifier(u's'), String(u'others'), Identifier(u'='), FunctionLiteral([Identifier(u'et.al.string'), Identifier(u'*')]), FunctionLiteral([Identifier(u'and.before.last'), Identifier(u'*'), Identifier(u's'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Integer(2), QuotedVar(u'nameptr'), Identifier(u':='), FunctionLiteral([Identifier(u'nameptr'), Identifier(u'format.num.names'), Identifier(u'<')]), FunctionLiteral([Identifier(u'comma.between.names'), Identifier(u'*'), Identifier(u'field'), Identifier(u'nameptr'), Identifier(u'format.editor.name'), Identifier(u'*'), Identifier(u'nameptr'), Integer(1), Identifier(u'+'), QuotedVar(u'nameptr'), Identifier(u':=')]), Identifier(u'while$'), Identifier(u'field'), Identifier(u'nameptr'), Identifier(u'format.editor.name'), QuotedVar(u's'), Identifier(u':='), Identifier(u'format.num.names'), Identifier(u'numnames'), Identifier(u'='), FunctionLiteral([Identifier(u'comma.before.last'), Identifier(u'*'), Identifier(u's'), String(u'others'), Identifier(u'='), FunctionLiteral([Identifier(u'et.al.string'), Identifier(u'*')]), FunctionLiteral([Identifier(u'and.before.last'), Identifier(u'*'), Identifier(u's'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'comma.between.names'), Identifier(u'*'), Identifier(u's'), Identifier(u'*'), Identifier(u'comma.before.last'), Identifier(u'*'), Identifier(u'et.al.string'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.editors.in.line')], [Identifier(u'editor'), Identifier(u'format.editor.names'), Identifier(u'editor.postfix'), Identifier(u'connect.with.space.check')]], [u'FUNCTION', [Identifier(u'format.editors.trans.in.line')], [Identifier(u'editor'), Identifier(u'format.editor.names'), Identifier(u'editor.trans.postfix'), Identifier(u'connect.with.space.check')]], [u'FUNCTION', [Identifier(u'format.translators.in.line')], [Identifier(u'translator'), Identifier(u'format.editor.names'), Identifier(u'trans.postfix'), Identifier(u'connect.with.space.check')]], [u'FUNCTION', [Identifier(u'format.translators.in.paren.check')], [Identifier(u'translator'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'translator'), Identifier(u'format.editor.names'), Identifier(u'translator'), Identifier(u'num.names$'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u', \\BTRANSS{}'), Identifier(u'*')]), FunctionLiteral([String(u', \\BTRANS{}'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.editors.translators.in.paren.check')], [Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'translator'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'translator'), Identifier(u'format.editor.names'), Identifier(u'translator'), Identifier(u'num.names$'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u', \\BTRANSS{}'), Identifier(u'*')]), FunctionLiteral([String(u', \\BTRANS{}'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'format.editor.names'), Identifier(u'editor'), Identifier(u'num.names$'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u', \\BEDS{}'), Identifier(u'*')]), FunctionLiteral([String(u', \\BED{}'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'translator'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'translator'), Identifier(u'='), FunctionLiteral([Identifier(u'editor'), Identifier(u'num.names$'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u' \\BAnd{} \\BTRANSS'), Identifier(u'*')]), FunctionLiteral([String(u' \\BAnd{} \\BTRANS'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u' \\BAnd{} '), Identifier(u'*'), Identifier(u'translator'), Identifier(u'format.editor.names'), Identifier(u'*'), Identifier(u'translator'), Identifier(u'num.names$'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u', \\BTRANSS{}'), Identifier(u'*')]), FunctionLiteral([String(u', \\BTRANS{}'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.atrans.check')], [Identifier(u'format.translators.in.paren.check'), Identifier(u'parenthesize.check')]], [u'FUNCTION', [Identifier(u'format.in.editors')], [String(u'\\BIn{} '), Identifier(u'editor'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'format.editors.in.line'), Identifier(u'*'), String(u', '), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.in.trans')], [String(u'\\BIn{} '), Identifier(u'translator'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'format.translators.in.line'), Identifier(u'*'), String(u', '), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.in.editors.trans')], [String(u'\\BIn{} '), Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'translator'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'format.translators.in.line'), Identifier(u'*'), String(u', '), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'translator'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.editors.in.line'), Identifier(u'*')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'translator'), Identifier(u'='), FunctionLiteral([Identifier(u'format.editors.trans.in.line'), Identifier(u'*')]), FunctionLiteral([Identifier(u'format.editors.in.line'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$'), String(u', '), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.year.check')], [String(u'\\APACrefYear{'), Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u'\\bibnodate{}'), Identifier(u'*')]), FunctionLiteral([Identifier(u'year'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'make.definitive.year.supplement'), Identifier(u'*'), String(u'}'), Identifier(u'*')]], [u'FUNCTION', [Identifier(u'format.year.month.day.check')], [String(u'\\APACrefYearMonthDay{'), Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u'\\bibnodate{}'), Identifier(u'*')]), FunctionLiteral([Identifier(u'year'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'make.definitive.year.supplement'), Identifier(u'*'), String(u'}{'), Identifier(u'*'), Identifier(u'month'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'month'), Identifier(u'*')]), Identifier(u'if$'), String(u'}{'), Identifier(u'*'), Identifier(u'day'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'day'), Identifier(u'*')]), Identifier(u'if$'), String(u'}'), Identifier(u'*')]], [u'FUNCTION', [Identifier(u'format.atitle.no.dot')], [String(u'\\BBOQ{}'), Identifier(u'swap$'), String(u'\\BBCQ{}'), Identifier(u'swap$'), Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), String(u'\\APACrefatitle{'), Identifier(u'swap$'), Identifier(u'*'), String(u'}{'), Identifier(u'*'), Identifier(u'swap$'), String(u't'), Identifier(u'change.case$'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'enclose.check')]], [u'FUNCTION', [Identifier(u'format.atitle.dot')], [String(u'\\BBOQ{}'), Identifier(u'swap$'), String(u'\\BBCQ{}'), Identifier(u'swap$'), Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), String(u'\\APACrefatitle{'), Identifier(u'swap$'), Identifier(u'*'), String(u'}{'), Identifier(u'*'), Identifier(u'swap$'), String(u't'), Identifier(u'change.case$'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'add.period$')]), Identifier(u'if$'), Identifier(u'enclose.check')]], [u'FUNCTION', [Identifier(u'format.atitle.connect')], [Identifier(u'swap$'), Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), Identifier(u'format.atitle.dot')]), FunctionLiteral([Identifier(u'swap$'), Identifier(u'format.atitle.no.dot'), Identifier(u'swap$'), Identifier(u'connect.with.space.check'), Identifier(u'add.period$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.btitle.no.dot')], [Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), String(u'\\APACrefbtitle{'), Identifier(u'swap$'), Identifier(u'*'), String(u'}{'), Identifier(u'*'), Identifier(u'swap$'), String(u't'), Identifier(u'change.case$'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.btitle.dot')], [Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'add.period$'), Identifier(u'format.btitle.no.dot')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.btitle.connect')], [Identifier(u'swap$'), Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), Identifier(u'format.btitle.dot')]), FunctionLiteral([Identifier(u'swap$'), Identifier(u'format.btitle.no.dot'), Identifier(u'swap$'), Identifier(u'connect.with.space.check'), Identifier(u'add.period$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.btitle.connect.no.dot')], [Identifier(u'swap$'), Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), Identifier(u'format.btitle.no.dot')]), FunctionLiteral([Identifier(u'swap$'), Identifier(u'format.btitle.no.dot'), Identifier(u'swap$'), Identifier(u'connect.with.space.check')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.aetitle.check')], [Identifier(u'englishtitle'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([String(u'\\APACrefaetitle{'), Identifier(u'englishtitle'), Identifier(u'*'), String(u'}{'), Identifier(u'*'), Identifier(u'englishtitle'), String(u't'), Identifier(u'change.case$'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.betitle.check')], [Identifier(u'englishtitle'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([String(u'\\APACrefbetitle{'), Identifier(u'englishtitle'), Identifier(u'*'), String(u'}{'), Identifier(u'*'), Identifier(u'englishtitle'), String(u't'), Identifier(u'change.case$'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.atype.check')], [Identifier(u'type'), Identifier(u'bracket.check')]], [u'FUNCTION', [Identifier(u'format.atitle.check')], [Identifier(u'format.aetitle.check'), Identifier(u'title'), Identifier(u'format.atitle.connect')]], [u'FUNCTION', [Identifier(u'format.atitle.type.check')], [Identifier(u'format.aetitle.check'), Identifier(u'format.atype.check'), Identifier(u'connect.with.space.check'), Identifier(u'title'), Identifier(u'format.atitle.connect')]], [u'FUNCTION', [Identifier(u'format.atitle.trans.check')], [Identifier(u'format.aetitle.check'), Identifier(u'format.atrans.check'), Identifier(u'connect.with.space.check'), Identifier(u'title'), Identifier(u'format.atitle.connect')]], [u'FUNCTION', [Identifier(u'format.atitle.type.trans.check')], [Identifier(u'format.aetitle.check'), Identifier(u'format.atype.check'), Identifier(u'connect.with.space.check'), Identifier(u'format.atrans.check'), Identifier(u'connect.with.space.check'), Identifier(u'title'), Identifier(u'format.atitle.connect')]], [u'FUNCTION', [Identifier(u'format.journal.vol.num.pages.check')], [String(u'journal'), Identifier(u'journal'), Identifier(u'warning.if.empty'), Identifier(u'duplicate$'), Identifier(u'empty$'), Identifier(u'journal'), Identifier(u'empty$'), Identifier(u'and'), Identifier(u'volume'), Identifier(u'empty$'), Identifier(u'and'), Identifier(u'number'), Identifier(u'empty$'), Identifier(u'and'), FunctionLiteral([Identifier(u'pop$'), String(u'')]), FunctionLiteral([String(u'\\APACjournalVolNumPages{'), Identifier(u'journal'), String(u''), Identifier(u'connect.check'), String(u'}{'), Identifier(u'*'), Identifier(u'volume'), String(u''), Identifier(u'connect.check'), String(u'}{'), Identifier(u'*'), Identifier(u'number'), String(u''), Identifier(u'connect.check'), String(u'}{'), Identifier(u'*'), Identifier(u'swap$'), String(u''), Identifier(u'connect.check'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.bvolume.check')], [Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'multi.result.check'), FunctionLiteral([String(u'\\BVOLS'), Identifier(u'swap$'), Identifier(u'tie.or.space.connect')]), FunctionLiteral([String(u'\\BVOL'), Identifier(u'swap$'), Identifier(u'tie.or.space.connect')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.edition.check')], [Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\PrintOrdinal{'), Identifier(u'swap$'), Identifier(u'*'), String(u'}'), Identifier(u'*'), String(u'\\BEd'), Identifier(u'connect.with.space.check')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.bvol.edition.check')], [Identifier(u'edition'), Identifier(u'format.edition.check'), Identifier(u'volume'), Identifier(u'format.bvolume.check'), Identifier(u'connect.with.comma.check')]], [u'FUNCTION', [Identifier(u'format.bvol.edition')], [Identifier(u'format.bvol.edition.check'), Identifier(u'parenthesize.check')]], [u'FUNCTION', [Identifier(u'format.bvol.edition.trans')], [Identifier(u'format.bvol.edition.check'), Identifier(u'format.translators.in.paren.check'), Identifier(u'connect.with.semicolon.check'), Identifier(u'parenthesize.check')]], [u'FUNCTION', [Identifier(u'format.bvol.edition.editor.trans')], [Identifier(u'format.bvol.edition.check'), Identifier(u'format.editors.translators.in.paren.check'), Identifier(u'connect.with.semicolon.check'), Identifier(u'parenthesize.check')]], [u'FUNCTION', [Identifier(u'format.bpages.check')], [Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'multi.result.check'), FunctionLiteral([String(u'\\BPGS'), Identifier(u'swap$'), Identifier(u'tie.or.space.connect')]), FunctionLiteral([String(u'\\BPG~'), Identifier(u'swap$'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.bchapter.check')], [Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'multi.result.check'), FunctionLiteral([String(u'\\BCHAPS'), Identifier(u'swap$'), Identifier(u'tie.or.space.connect')]), FunctionLiteral([String(u'\\BCHAP'), Identifier(u'swap$'), Identifier(u'tie.or.space.connect')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.bvol.edition.pages')], [Identifier(u'format.bvol.edition.check'), Identifier(u'pages'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'chapter'), Identifier(u'format.bchapter.check'), Identifier(u'connect.with.comma.check')]), FunctionLiteral([Identifier(u'pages'), Identifier(u'format.bpages.check'), Identifier(u'connect.with.comma.check')]), Identifier(u'if$'), Identifier(u'parenthesize.check')]], [u'FUNCTION', [Identifier(u'format.btitle.vol.edition')], [Identifier(u'format.betitle.check'), Identifier(u'format.bvol.edition'), Identifier(u'connect.with.space.check'), Identifier(u'title'), Identifier(u'format.btitle.connect.no.dot')]], [u'FUNCTION', [Identifier(u'format.btitle.vol.edition.trans')], [Identifier(u'format.betitle.check'), Identifier(u'format.bvol.edition.trans'), Identifier(u'connect.with.space.check'), Identifier(u'title'), Identifier(u'format.btitle.connect.no.dot')]], [u'FUNCTION', [Identifier(u'format.btitle.vol.edition.editor.trans')], [Identifier(u'format.betitle.check'), Identifier(u'format.bvol.edition.editor.trans'), Identifier(u'connect.with.space.check'), Identifier(u'title'), Identifier(u'format.btitle.connect.no.dot')]], [u'FUNCTION', [Identifier(u'format.address.publisher')], [Identifier(u'author'), Identifier(u'empty$'), Identifier(u'publisher'), Identifier(u'empty$'), Identifier(u'or'), FunctionLiteral([Identifier(u'publisher'), String(u'\\APACaddressPublisher{')]), FunctionLiteral([Identifier(u'author'), Identifier(u'publisher'), Identifier(u'='), String(u'author'), Identifier(u'publisher'), Identifier(u'='), Identifier(u'or'), String(u'Author'), Identifier(u'publisher'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([Identifier(u'author'), String(u'\\APACaddressPublisherEqAuth{')]), FunctionLiteral([Identifier(u'publisher'), String(u'\\APACaddressPublisher{')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'address'), String(u''), Identifier(u'connect.check'), String(u'}{'), Identifier(u'*'), Identifier(u'swap$'), String(u''), Identifier(u'connect.check'), String(u'}'), Identifier(u'*')]], [u'FUNCTION', [Identifier(u'format.address.publisher.check')], [String(u'publisher'), Identifier(u'publisher'), Identifier(u'warning.if.empty'), String(u'address'), Identifier(u'address'), Identifier(u'warning.if.empty'), Identifier(u'publisher'), Identifier(u'empty$'), Identifier(u'address'), Identifier(u'empty$'), Identifier(u'and'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'format.address.publisher')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.rnumber.check')], [Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'multi.result.check'), FunctionLiteral([String(u'\\BNUMS'), Identifier(u'swap$'), Identifier(u'tie.or.space.connect')]), FunctionLiteral([String(u'\\BNUM'), Identifier(u'swap$'), Identifier(u'tie.or.space.connect')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.type.number')], [Identifier(u'type'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'type.2')]), FunctionLiteral([Identifier(u'type')]), Identifier(u'if$'), Identifier(u'number'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'bracket.check')]), FunctionLiteral([Identifier(u'number'), Identifier(u'format.rnumber.check'), Identifier(u'connect.with.space.check'), Identifier(u'parenthesize.check')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.howpublished')], [Identifier(u'howpublished'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'pop$'), FunctionLiteral([Identifier(u'output.dot.new.block')]), Identifier(u'if$'), String(u'\\APAChowpublished{'), Identifier(u'howpublished'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'output.howpublished')], [Identifier(u'howpublished'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\APAChowpublished{'), Identifier(u'howpublished'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'output.dot.new.block')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'begin.end.url.env')], [String(u' \\begin{APACrefURL} '), Identifier(u'lastchecked'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'[{'), Identifier(u'*'), Identifier(u'lastchecked'), Identifier(u'*'), String(u'}]'), Identifier(u'*')]), Identifier(u'if$'), String(u' \\end{APACrefURL} ')]], [u'FUNCTION', [Identifier(u'begin.end.msg.env')], [String(u' \\begin{APACrefURLmsg} '), String(u' \\end{APACrefURLmsg} ')]], [u'FUNCTION', [Identifier(u'format.url')], [Identifier(u'type.2'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'begin.end.url.env')]), FunctionLiteral([Identifier(u'type.2'), String(u'\\bibmessage'), Identifier(u'='), FunctionLiteral([Identifier(u'begin.end.msg.env')]), FunctionLiteral([Identifier(u'begin.end.url.env')]), Identifier(u'if$')]), Identifier(u'if$'), String(u'\\url{'), Identifier(u'url'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'enclose.check')]], [u'FUNCTION', [Identifier(u'format.note')], [String(u'\\APACrefnote{'), String(u'}'), Identifier(u'note'), Identifier(u'enclose.check')]], [u'FUNCTION', [Identifier(u'format.orig.year.note')], [Identifier(u'originalyear'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.note')]), FunctionLiteral([String(u'\\APACorigyearnote{'), Identifier(u'originalyear'), String(u''), Identifier(u'connect.check'), String(u'}{'), Identifier(u'*'), Identifier(u'note'), String(u''), Identifier(u'connect.check'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.orig.journal.note')], [String(u'\\APACorigjournalnote{'), Identifier(u'originalyear'), String(u''), Identifier(u'connect.check'), String(u'}{'), Identifier(u'*'), Identifier(u'originaljournal'), String(u''), Identifier(u'connect.check'), String(u'}{'), Identifier(u'*'), Identifier(u'originalvolume'), String(u''), Identifier(u'connect.check'), String(u'}{'), Identifier(u'*'), Identifier(u'originalnumber'), String(u''), Identifier(u'connect.check'), String(u'}{'), Identifier(u'*'), Identifier(u'originalpages'), String(u''), Identifier(u'connect.check'), String(u'}{'), Identifier(u'*'), Identifier(u'note'), String(u''), Identifier(u'connect.check'), String(u'}'), Identifier(u'*')]], [u'FUNCTION', [Identifier(u'format.orig.book.note')], [String(u'\\APACorigbooknote{'), Identifier(u'originalyear'), String(u''), Identifier(u'connect.check'), String(u'}{'), Identifier(u'*'), Identifier(u'originaleditor'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'originaleditor'), Identifier(u'num.names$'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u'\\APACorigEDS{'), Identifier(u'*'), Identifier(u'originaleditor'), Identifier(u'format.editor.names'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), FunctionLiteral([String(u'\\APACorigED{'), Identifier(u'*'), Identifier(u'originaleditor'), Identifier(u'format.editor.names'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$'), String(u'}{'), Identifier(u'*'), Identifier(u'originalbooktitle'), Identifier(u'format.btitle.no.dot'), String(u''), Identifier(u'connect.check'), String(u'}{'), Identifier(u'*'), Identifier(u'originaledition'), Identifier(u'format.edition.check'), String(u''), Identifier(u'connect.check'), String(u'}{'), Identifier(u'*'), Identifier(u'originalvolume'), Identifier(u'format.bvolume.check'), String(u''), Identifier(u'connect.check'), String(u'}{'), Identifier(u'*'), Identifier(u'originalpages'), Identifier(u'format.bpages.check'), String(u''), Identifier(u'connect.check'), String(u'}{'), Identifier(u'*'), Identifier(u'originaladdress'), String(u''), Identifier(u'connect.check'), String(u'}{'), Identifier(u'*'), Identifier(u'originalpublisher'), String(u''), Identifier(u'connect.check'), String(u'}{'), Identifier(u'*'), Identifier(u'note'), String(u''), Identifier(u'connect.check'), String(u'}'), Identifier(u'*')]], [u'FUNCTION', [Identifier(u'format.orig.note')], [Identifier(u'originaljournal'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'originalbooktitle'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'note'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'originalyear'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'originalyear'), String(u'\\bibnodate'), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block'), Identifier(u'format.orig.year.note')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'output.new.block'), Identifier(u'format.orig.year.note')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'output.new.block'), Identifier(u'format.orig.book.note')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'output.new.block'), Identifier(u'format.orig.journal.note')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'periodical')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.atitle.type.trans.check'), Identifier(u'output.new.block'), Identifier(u'output.dot.new.block')]), FunctionLiteral([Identifier(u'format.editors.as.authors'), Identifier(u'start.new.block'), Identifier(u'output.dot.new.block'), Identifier(u'format.atitle.type.trans.check'), Identifier(u'output.new.block')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'start.new.block'), Identifier(u'output.dot.new.block'), Identifier(u'format.atitle.type.trans.check'), Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'format.journal.vol.num.pages.check'), Identifier(u'format.howpublished'), Identifier(u'add.period$'), Identifier(u'url'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'format.url')]), Identifier(u'if$'), Identifier(u'format.orig.note'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'article')], [Identifier(u'pages'), Identifier(u'format.year.month.day.check'), Identifier(u'periodical')]], [u'FUNCTION', [Identifier(u'magazine')], [Identifier(u'pages'), Identifier(u'format.year.month.day.check'), Identifier(u'periodical')]], [u'FUNCTION', [Identifier(u'newspaper')], [Identifier(u'pages'), Identifier(u'format.bpages.check'), Identifier(u'format.year.month.day.check'), Identifier(u'periodical')]], [u'FUNCTION', [Identifier(u'book')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.btitle.vol.edition.trans'), Identifier(u'format.type.number'), Identifier(u'connect.with.space.check'), Identifier(u'output.dot.new.block'), Identifier(u'format.year.check'), Identifier(u'add.period$')]), FunctionLiteral([Identifier(u'translator'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.editors.as.authors'), Identifier(u'start.new.block'), Identifier(u'format.year.check'), Identifier(u'output.dot.new.block'), Identifier(u'format.btitle.vol.edition')]), FunctionLiteral([Identifier(u'translator'), Identifier(u'editor'), Identifier(u'='), Identifier(u'not'), FunctionLiteral([Identifier(u'format.editors.as.authors'), Identifier(u'start.new.block'), Identifier(u'format.year.check'), Identifier(u'output.dot.new.block'), Identifier(u'format.btitle.vol.edition.trans')]), FunctionLiteral([Identifier(u'format.ed.trans.as.authors'), Identifier(u'start.new.block'), Identifier(u'format.year.check'), Identifier(u'output.dot.new.block'), Identifier(u'format.btitle.vol.edition')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'format.type.number'), Identifier(u'connect.with.space.check'), Identifier(u'add.period$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'start.new.block'), Identifier(u'format.year.check'), Identifier(u'output.dot.new.block'), Identifier(u'format.btitle.vol.edition.editor.trans'), Identifier(u'format.type.number'), Identifier(u'connect.with.space.check'), Identifier(u'add.period$')]), Identifier(u'if$'), Identifier(u'format.address.publisher.check'), Identifier(u'format.howpublished'), Identifier(u'add.period$'), Identifier(u'url'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'format.url')]), Identifier(u'if$'), Identifier(u'format.orig.note'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'incollection')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor.ne.trans'), FunctionLiteral([Identifier(u'format.atitle.type.trans.check')]), FunctionLiteral([Identifier(u'format.atitle.type.check')]), Identifier(u'if$'), Identifier(u'output.new.block'), Identifier(u'format.year.month.day.check'), Identifier(u'add.period$')]), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'start.new.block'), Identifier(u'format.year.month.day.check'), Identifier(u'output.dot.new.block'), Identifier(u'editor.ne.trans'), FunctionLiteral([Identifier(u'format.atitle.type.trans.check')]), FunctionLiteral([Identifier(u'format.atitle.type.check')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'output.new.block'), Identifier(u'format.in.editors.trans'), Identifier(u'format.bvol.edition.pages'), Identifier(u'booktitle'), Identifier(u'format.btitle.connect'), Identifier(u'*'), Identifier(u'add.period$'), Identifier(u'format.address.publisher.check'), Identifier(u'format.howpublished'), Identifier(u'add.period$'), Identifier(u'url'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'format.url')]), Identifier(u'if$'), Identifier(u'format.orig.note'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'format.tr.number')], [Identifier(u'type'), Identifier(u'empty$'), FunctionLiteral([String(u'\\BTR{}')]), FunctionLiteral([Identifier(u'type'), String(u'\\bibnotype'), Identifier(u'='), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'type')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'number'), Identifier(u'format.rnumber.check'), Identifier(u'connect.with.space.check')]], [u'FUNCTION', [Identifier(u'format.tr.title.number')], [Identifier(u'format.betitle.check'), Identifier(u'type'), Identifier(u'empty$'), FunctionLiteral([String(u'\\APACbVolEdTR{'), Identifier(u'format.bvol.edition.check'), Identifier(u'*'), String(u'}{'), Identifier(u'*'), Identifier(u'format.tr.number'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), FunctionLiteral([Identifier(u'type'), String(u'\\bibnotype'), Identifier(u'='), Identifier(u'number'), Identifier(u'empty$'), Identifier(u'volume'), Identifier(u'empty$'), Identifier(u'edition'), Identifier(u'empty$'), Identifier(u'and'), Identifier(u'and'), Identifier(u'and'), FunctionLiteral([String(u'')]), FunctionLiteral([String(u'\\APACbVolEdTR{'), Identifier(u'format.bvol.edition.check'), Identifier(u'*'), String(u'}{'), Identifier(u'*'), Identifier(u'format.tr.number'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'connect.with.space.check'), Identifier(u'title'), Identifier(u'format.btitle.connect')]], [u'FUNCTION', [Identifier(u'format.address.institution.check')], [String(u'institution'), Identifier(u'institution'), Identifier(u'warning.if.empty'), String(u'address'), Identifier(u'address'), Identifier(u'warning.if.empty'), Identifier(u'institution'), Identifier(u'empty$'), Identifier(u'address'), Identifier(u'empty$'), Identifier(u'and'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'author'), Identifier(u'empty$'), Identifier(u'institution'), Identifier(u'empty$'), Identifier(u'or'), FunctionLiteral([Identifier(u'institution'), String(u'\\APACaddressInstitution{')]), FunctionLiteral([Identifier(u'author'), Identifier(u'institution'), Identifier(u'='), String(u'author'), Identifier(u'institution'), Identifier(u'='), Identifier(u'or'), String(u'Author'), Identifier(u'institution'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([Identifier(u'author'), String(u'\\APACaddressInstitutionEqAuth{')]), FunctionLiteral([Identifier(u'institution'), String(u'\\APACaddressInstitution{')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'address'), String(u''), Identifier(u'connect.check'), String(u'}{'), Identifier(u'*'), Identifier(u'swap$'), String(u''), Identifier(u'connect.check'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'techreport')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.tr.title.number'), Identifier(u'output.dot.new.block'), Identifier(u'format.year.month.day.check'), Identifier(u'add.period$')]), FunctionLiteral([Identifier(u'format.editors.as.authors'), Identifier(u'start.new.block'), Identifier(u'format.year.month.day.check'), Identifier(u'output.dot.new.block'), Identifier(u'format.tr.title.number'), Identifier(u'add.period$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'start.new.block'), Identifier(u'format.year.month.day.check'), Identifier(u'output.dot.new.block'), Identifier(u'format.tr.title.number'), Identifier(u'add.period$')]), Identifier(u'if$'), Identifier(u'format.address.institution.check'), Identifier(u'format.howpublished'), Identifier(u'add.period$'), Identifier(u'url'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'format.url')]), Identifier(u'if$'), Identifier(u'note'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'format.note')]), Identifier(u'if$'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'intechreport')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor.ne.trans'), FunctionLiteral([Identifier(u'format.atitle.trans.check')]), FunctionLiteral([Identifier(u'format.atitle.check')]), Identifier(u'if$'), Identifier(u'output.new.block'), Identifier(u'format.year.month.day.check'), Identifier(u'output.dot.new.block')]), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'start.new.block'), Identifier(u'format.year.month.day.check'), Identifier(u'output.dot.new.block'), Identifier(u'editor.ne.trans'), FunctionLiteral([Identifier(u'format.atitle.trans.check')]), FunctionLiteral([Identifier(u'format.atitle.check')]), Identifier(u'if$'), Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'format.in.editors.trans'), String(u'\\APACbVolEdTRpgs{'), Identifier(u'format.bvol.edition.check'), Identifier(u'*'), String(u'}{'), Identifier(u'*'), Identifier(u'format.tr.number'), Identifier(u'*'), String(u'}{'), Identifier(u'*'), Identifier(u'pages'), Identifier(u'format.bpages.check'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'booktitle'), Identifier(u'format.btitle.connect'), Identifier(u'*'), Identifier(u'add.period$'), Identifier(u'format.address.institution.check'), Identifier(u'format.howpublished'), Identifier(u'add.period$'), Identifier(u'url'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'format.url')]), Identifier(u'if$'), Identifier(u'format.orig.note'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'lecture')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([String(u'author'), Identifier(u'author'), Identifier(u'warning.if.empty')]), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'start.new.block')]), Identifier(u'if$'), Identifier(u'format.year.month.day.check'), Identifier(u'output.dot.new.block'), Identifier(u'symposium'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.betitle.check'), Identifier(u'title'), Identifier(u'format.btitle.connect'), Identifier(u'output.new.block'), Identifier(u'howpublished'), Identifier(u'empty$'), FunctionLiteral([String(u'symposium and howpublished missing in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), String(u'')]), FunctionLiteral([String(u'\\APAChowpublished{'), Identifier(u'howpublished'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'address'), Identifier(u'connect.with.comma.check')]), FunctionLiteral([Identifier(u'format.atitle.type.check'), Identifier(u'output.new.block'), String(u'\\BIn{} '), Identifier(u'chair'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'chair'), Identifier(u'format.editor.names'), Identifier(u'chair'), Identifier(u'num.names$'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u'(\\BCHAIRS)')]), FunctionLiteral([String(u'(\\BCHAIR)')]), Identifier(u'if$'), Identifier(u'connect.with.space.check'), Identifier(u'*'), String(u', '), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'symposium'), Identifier(u'format.btitle.no.dot'), Identifier(u'*'), Identifier(u'format.howpublished'), Identifier(u'address'), Identifier(u'connect.with.comma.check')]), Identifier(u'if$'), Identifier(u'add.period$'), Identifier(u'url'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'format.url')]), Identifier(u'if$'), Identifier(u'note'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'format.note')]), Identifier(u'if$'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'format.type.school')], [Identifier(u'type'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'pop$'), Identifier(u'type'), String(u't'), Identifier(u'change.case$')]), Identifier(u'if$'), Identifier(u'school'), Identifier(u'connect.with.comma.check')]], [u'FUNCTION', [Identifier(u'thesis')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([String(u'author'), Identifier(u'author'), Identifier(u'warning.if.empty')]), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'start.new.block')]), Identifier(u'if$'), Identifier(u'format.year.check'), Identifier(u'output.dot.new.block'), Identifier(u'journal'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.btitle.vol.edition'), Identifier(u'output.dot.new.block'), Identifier(u'swap$'), Identifier(u'pop$'), Identifier(u'format.type.school'), Identifier(u'address'), Identifier(u'connect.with.comma.check')]), FunctionLiteral([Identifier(u'pop$'), Identifier(u'type'), Identifier(u'empty$'), Identifier(u'school'), Identifier(u'empty$'), Identifier(u'originalyear'), Identifier(u'empty$'), Identifier(u'and'), Identifier(u'and'), FunctionLiteral([Identifier(u'pop$'), String(u'')]), FunctionLiteral([Identifier(u'format.type.school'), Identifier(u'originalyear'), Identifier(u'connect.with.comma.check'), Identifier(u'parenthesize.check')]), Identifier(u'if$'), Identifier(u'format.aetitle.check'), Identifier(u'swap$'), Identifier(u'connect.with.space.check'), String(u'title'), Identifier(u'title'), Identifier(u'warning.if.empty'), Identifier(u'title'), Identifier(u'format.atitle.connect'), Identifier(u'output.new.block'), Identifier(u'pages'), Identifier(u'format.journal.vol.num.pages.check')]), Identifier(u'if$'), Identifier(u'format.howpublished'), Identifier(u'add.period$'), Identifier(u'url'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'format.url')]), Identifier(u'if$'), Identifier(u'note'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'format.note')]), Identifier(u'if$'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'phdthesis')], [String(u'\\BPhD'), String(u'\\BUPhD'), Identifier(u'thesis')]], [u'FUNCTION', [Identifier(u'mastersthesis')], [String(u'\\BMTh'), String(u'\\BUMTh'), Identifier(u'thesis')]], [u'FUNCTION', [Identifier(u'format.btitle.type.num')], [Identifier(u'format.betitle.check'), Identifier(u'format.bvol.edition'), Identifier(u'connect.with.space.check'), Identifier(u'format.type.number'), Identifier(u'connect.with.space.check'), Identifier(u'title'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'add.period$')]), FunctionLiteral([Identifier(u'title'), Identifier(u'format.btitle.connect')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.mtitle.type.num')], [Identifier(u'format.aetitle.check'), Identifier(u'format.bvol.edition'), Identifier(u'connect.with.space.check'), Identifier(u'type.2'), String(u'\\bibmessage'), Identifier(u'='), FunctionLiteral([Identifier(u'number'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'type.2'), Identifier(u'number'), Identifier(u'tie.or.space.connect'), Identifier(u'bracket.check'), Identifier(u'connect.with.space.check')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'format.type.number'), Identifier(u'connect.with.space.check')]), Identifier(u'if$'), Identifier(u'title'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'add.period$')]), FunctionLiteral([Identifier(u'title'), Identifier(u'format.atitle.connect')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'output.misctitle.type.num')], [Identifier(u'type.2'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.btitle.type.num')]), FunctionLiteral([Identifier(u'type.2'), String(u'\\bibmessage'), Identifier(u'='), Identifier(u'type.2'), String(u'\\bibcomputerprogram'), Identifier(u'='), Identifier(u'or'), Identifier(u'type.2'), String(u'\\bibcomputerprogrammanual'), Identifier(u'='), Identifier(u'or'), Identifier(u'type.2'), String(u'\\bibcomputerprogramandmanual'), Identifier(u'='), Identifier(u'or'), Identifier(u'type.2'), String(u'\\bibcomputersoftware'), Identifier(u'='), Identifier(u'or'), Identifier(u'type.2'), String(u'\\bibcomputersoftwaremanual'), Identifier(u'='), Identifier(u'or'), Identifier(u'type.2'), String(u'\\bibcomputersoftwareandmanual'), Identifier(u'='), Identifier(u'or'), Identifier(u'type.2'), String(u'\\bibprogramminglanguage'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([Identifier(u'format.mtitle.type.num')]), FunctionLiteral([Identifier(u'format.btitle.type.num')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'unpublished')], [Identifier(u'check.relevant.fields'), Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.btitle.type.num'), Identifier(u'output.new.block'), Identifier(u'format.year.month.day.check'), Identifier(u'add.period$')]), FunctionLiteral([Identifier(u'format.editors.as.authors'), Identifier(u'start.new.block'), Identifier(u'format.year.month.day.check'), Identifier(u'output.dot.new.block'), Identifier(u'format.btitle.type.num')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'start.new.block'), Identifier(u'format.year.month.day.check'), Identifier(u'output.dot.new.block'), Identifier(u'format.btitle.type.num')]), Identifier(u'if$'), Identifier(u'howpublished'), Identifier(u'empty$'), Identifier(u'organization'), Identifier(u'empty$'), Identifier(u'and'), Identifier(u'address'), Identifier(u'empty$'), Identifier(u'and'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block'), String(u'\\APAChowpublished{'), String(u'}'), Identifier(u'howpublished'), Identifier(u'enclose.check'), Identifier(u'organization'), Identifier(u'connect.with.comma.check'), Identifier(u'address'), Identifier(u'connect.with.comma.check'), Identifier(u'add.period$')]), Identifier(u'if$'), Identifier(u'url'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'format.url')]), Identifier(u'if$'), Identifier(u'note'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'format.note')]), Identifier(u'if$'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'misc')], [Identifier(u'type.2'), Identifier(u'empty$'), Identifier(u'type'), Identifier(u'empty$'), Identifier(u'not'), Identifier(u'and'), FunctionLiteral([Identifier(u'type'), QuotedVar(u'type.2'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$'), Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'title'), Identifier(u'empty$'), Identifier(u'type.2'), Identifier(u'empty$'), Identifier(u'and'), FunctionLiteral([Identifier(u'howpublished'), Identifier(u'empty$'), FunctionLiteral([String(u'No author, editor, title, type, and howpublished in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), String(u'')]), FunctionLiteral([String(u'\\APAChowpublished{'), Identifier(u'howpublished'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'add.period$')]), Identifier(u'if$'), Identifier(u'format.year.month.day.check'), Identifier(u'add.period$')]), FunctionLiteral([Identifier(u'output.misctitle.type.num'), Identifier(u'output.new.block'), Identifier(u'format.year.month.day.check'), Identifier(u'add.period$'), Identifier(u'format.howpublished'), Identifier(u'add.period$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'format.editors.as.authors'), Identifier(u'start.new.block'), Identifier(u'format.year.month.day.check'), Identifier(u'output.dot.new.block'), Identifier(u'output.misctitle.type.num'), Identifier(u'format.howpublished'), Identifier(u'add.period$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'start.new.block'), Identifier(u'format.year.month.day.check'), Identifier(u'output.dot.new.block'), Identifier(u'output.misctitle.type.num'), Identifier(u'format.howpublished'), Identifier(u'add.period$')]), Identifier(u'if$'), Identifier(u'address'), Identifier(u'empty$'), Identifier(u'publisher'), Identifier(u'empty$'), Identifier(u'and'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'format.address.publisher'), Identifier(u'add.period$')]), Identifier(u'if$'), Identifier(u'url'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'format.url')]), Identifier(u'if$'), Identifier(u'note'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.new.block')]), Identifier(u'if$'), Identifier(u'format.note')]), Identifier(u'if$'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'literal')], [String(u'key'), Identifier(u'key'), Identifier(u'warning.if.empty'), String(u'text'), Identifier(u'text'), Identifier(u'warning.if.empty'), Identifier(u'text'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'text')]), Identifier(u'if$'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'manual')], [Identifier(u'type'), Identifier(u'empty$'), FunctionLiteral([String(u'\\bibcomputersoftwaremanual'), QuotedVar(u'type.2'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$'), Identifier(u'misc')]], [u'FUNCTION', [Identifier(u'booklet')], [Identifier(u'misc')]], [u'FUNCTION', [Identifier(u'inbook')], [Identifier(u'incollection')]], [u'FUNCTION', [Identifier(u'inproceedings')], [Identifier(u'incollection')]], [u'FUNCTION', [Identifier(u'conference')], [Identifier(u'inproceedings')]], [u'FUNCTION', [Identifier(u'proceedings')], [Identifier(u'misc')]], [u'FUNCTION', [Identifier(u'default.type')], [Identifier(u'misc')]], [u'FUNCTION', [Identifier(u'initialize')], [Integer(6), QuotedVar(u'name.max'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'init.old.number')], [Integer(0), QuotedVar(u'old.number'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'init.old.label')], [String(u'zzzzzz'), QuotedVar(u'old.label'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'init.cite.initials.add.to.year')], [Integer(0), QuotedVar(u'cite.initials'), Identifier(u':='), Integer(0), QuotedVar(u'add.to.year'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'move.forward')], [Integer(1), QuotedVar(u'forward'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'move.backward')], [Integer(0), QuotedVar(u'forward'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'begin.bib')], [Identifier(u'preamble$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'preamble$'), Identifier(u'write$'), Identifier(u'newline$')]), Identifier(u'if$'), String(u'\\begin{thebibliography}{}'), Identifier(u'write$'), Identifier(u'newline$')]], [u'FUNCTION', [Identifier(u'end.bib')], [Identifier(u'newline$'), String(u'\\end{thebibliography}'), Identifier(u'write$'), Identifier(u'newline$')]], [u'FUNCTION', [Identifier(u'write.bbl.entry')], [Identifier(u'make.cite.labels'), Identifier(u'call.type$')]], [u'READ'], [u'EXECUTE', [Identifier(u'identify.apacite.version')]], [u'EXECUTE', [Identifier(u'initialize')]], [u'ITERATE', [Identifier(u'make.sort.title')]], [u'SORT'], [u'EXECUTE', [Identifier(u'init.old.number')]], [u'EXECUTE', [Identifier(u'init.old.label')]], [u'ITERATE', [Identifier(u'make.title.number')]], [u'ITERATE', [Identifier(u'make.tentative.sort.label')]], [u'SORT'], [u'ITERATE', [Identifier(u'init.cite.initials.add.to.year')]], [u'EXECUTE', [Identifier(u'init.initials')]], [u'ITERATE', [Identifier(u'check.add.initials')]], [u'EXECUTE', [Identifier(u'init.initials')]], [u'REVERSE', [Identifier(u'check.add.initials')]], [u'ITERATE', [Identifier(u'tentative.cite.num.names')]], [u'EXECUTE', [Identifier(u'init.cite.num.names')]], [u'EXECUTE', [Identifier(u'move.forward')]], [u'ITERATE', [Identifier(u'definitive.cite.num.names')]], [u'EXECUTE', [Identifier(u'init.cite.num.names')]], [u'EXECUTE', [Identifier(u'move.backward')]], [u'REVERSE', [Identifier(u'definitive.cite.num.names')]], [u'ITERATE', [Identifier(u'make.final.sort.key')]], [u'SORT'], [u'EXECUTE', [Identifier(u'begin.bib')]], [u'ITERATE', [Identifier(u'write.bbl.entry')]], [u'EXECUTE', [Identifier(u'end.bib')]]] ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.568612 pybtex-0.24.0/tests/bst_parser_test/bst_parser_test.py0000644000175000001440000000340300000000000023001 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals import pytest from six.moves import zip_longest from pybtex.bibtex import bst from ..utils import get_data @pytest.mark.parametrize(["dataset_name"], [("plain",), ("apacite",), ("jurabib",)]) def test_bst_parser(dataset_name): module = __import__('tests.bst_parser_test.{0}'.format(dataset_name), globals(), locals(), 'bst') correct_result = module.bst bst_data = get_data(dataset_name + '.bst') actual_result = bst.parse_string(bst_data) for correct_element, actual_element in zip_longest(actual_result, correct_result): assert correct_element == actual_element, '\n{0}\n{1}'.format(correct_element, actual_element) ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.566612 pybtex-0.24.0/tests/bst_parser_test/jurabib.py0000644000175000001440000044037600000000000021232 0ustar00agusers00000000000000from __future__ import unicode_literals from pybtex.bibtex.interpreter import ( FunctionLiteral, Identifier, Integer, QuotedVar, String ) bst = [[u'ENTRY', [Identifier(u'address'), Identifier(u'author'), Identifier(u'booktitle'), Identifier(u'chapter'), Identifier(u'edition'), Identifier(u'editor'), Identifier(u'howpublished'), Identifier(u'institution'), Identifier(u'isbn'), Identifier(u'issn'), Identifier(u'journal'), Identifier(u'key'), Identifier(u'language'), Identifier(u'month'), Identifier(u'note'), Identifier(u'number'), Identifier(u'organization'), Identifier(u'pages'), Identifier(u'publisher'), Identifier(u'school'), Identifier(u'series'), Identifier(u'title'), Identifier(u'type'), Identifier(u'volume'), Identifier(u'year'), Identifier(u'url'), Identifier(u'urldate'), Identifier(u'volumetitle'), Identifier(u'dissyear'), Identifier(u'howcited'), Identifier(u'juratitle'), Identifier(u'juraauthor'), Identifier(u'shorttitle'), Identifier(u'shortauthor'), Identifier(u'ssedition'), Identifier(u'titleaddon'), Identifier(u'booktitleaddon'), Identifier(u'editortype'), Identifier(u'sortkey'), Identifier(u'annote'), Identifier(u'gender'), Identifier(u'translator'), Identifier(u'flanguage'), Identifier(u'oyear'), Identifier(u'oaddress'), Identifier(u'opublisher'), Identifier(u'updated'), Identifier(u'totalpages'), Identifier(u'founder'), Identifier(u'archive'), Identifier(u'subarchive'), Identifier(u'shortarchive'), Identifier(u'shortsubarchive'), Identifier(u'sig1'), Identifier(u'sig2'), Identifier(u'sig3'), Identifier(u'sig4'), Identifier(u'archname')], [Identifier(u'repeat-authors'), Identifier(u'repeat-titles')], [Identifier(u'label'), Identifier(u'dummy.label'), Identifier(u'extra.label'), Identifier(u'sort.label'), Identifier(u'current-authors')]], [u'INTEGERS', [Identifier(u'output.state'), Identifier(u'before.all'), Identifier(u'mid.sentence'), Identifier(u'after.sentence'), Identifier(u'after.block')]], [u'INTEGERS', [Identifier(u'colon.after'), Identifier(u'period.dash')]], [u'FUNCTION', [Identifier(u'init.state.consts')], [Integer(0), QuotedVar(u'before.all'), Identifier(u':='), Integer(1), QuotedVar(u'mid.sentence'), Identifier(u':='), Integer(2), QuotedVar(u'after.sentence'), Identifier(u':='), Integer(3), QuotedVar(u'after.block'), Identifier(u':='), Integer(4), QuotedVar(u'colon.after'), Identifier(u':='), Integer(5), QuotedVar(u'period.dash'), Identifier(u':=')]], [u'STRINGS', [Identifier(u's'), Identifier(u't'), Identifier(u'u'), Identifier(u'v'), Identifier(u'w'), Identifier(u'x')]], [u'FUNCTION', [Identifier(u'output.nonnull')], [QuotedVar(u's'), Identifier(u':='), Identifier(u'output.state'), Identifier(u'after.block'), Identifier(u'='), FunctionLiteral([Identifier(u'write$')]), FunctionLiteral([Identifier(u'output.state'), Identifier(u'before.all'), Identifier(u'='), FunctionLiteral([Identifier(u'write$')]), FunctionLiteral([Identifier(u'output.state'), Identifier(u'colon.after'), Identifier(u'='), FunctionLiteral([String(u''), Identifier(u'*'), Identifier(u'write$')]), FunctionLiteral([Identifier(u'output.state'), Identifier(u'period.dash'), Identifier(u'='), FunctionLiteral([String(u', '), Identifier(u'*'), Identifier(u'write$')]), FunctionLiteral([Identifier(u'output.state'), Identifier(u'mid.sentence'), Identifier(u'='), FunctionLiteral([String(u' '), Identifier(u'*'), Identifier(u'write$')]), FunctionLiteral([Identifier(u'write$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'after.block'), QuotedVar(u'output.state'), Identifier(u':=')]), Identifier(u'if$'), Identifier(u's')]], [u'FUNCTION', [Identifier(u'output')], [Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'pop$'), QuotedVar(u'output.nonnull'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'output.check')], [QuotedVar(u't'), Identifier(u':='), Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), String(u'Empty '), Identifier(u't'), Identifier(u'*'), String(u' in '), Identifier(u'*'), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$')]), QuotedVar(u'output.nonnull'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'not')], [FunctionLiteral([Integer(0)]), FunctionLiteral([Integer(1)]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'and')], [QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'pop$'), Integer(0)]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'or')], [FunctionLiteral([Identifier(u'pop$'), Integer(1)]), QuotedVar(u'skip$'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'is.num')], [Identifier(u'chr.to.int$'), Identifier(u'duplicate$'), String(u'0'), Identifier(u'chr.to.int$'), Identifier(u'<'), Identifier(u'not'), Identifier(u'swap$'), String(u'9'), Identifier(u'chr.to.int$'), Identifier(u'>'), Identifier(u'not'), Identifier(u'and')]], [u'FUNCTION', [Identifier(u'extract.num')], [Identifier(u'duplicate$'), QuotedVar(u't'), Identifier(u':='), String(u''), QuotedVar(u's'), Identifier(u':='), FunctionLiteral([Identifier(u't'), Identifier(u'empty$'), Identifier(u'not')]), FunctionLiteral([Identifier(u't'), Integer(1), Integer(1), Identifier(u'substring$'), Identifier(u't'), Integer(2), Identifier(u'global.max$'), Identifier(u'substring$'), QuotedVar(u't'), Identifier(u':='), Identifier(u'duplicate$'), Identifier(u'is.num'), FunctionLiteral([Identifier(u's'), Identifier(u'swap$'), Identifier(u'*'), QuotedVar(u's'), Identifier(u':=')]), FunctionLiteral([Identifier(u'pop$'), String(u''), QuotedVar(u't'), Identifier(u':=')]), Identifier(u'if$')]), Identifier(u'while$'), Identifier(u's'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'pop$'), Identifier(u's')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'convert.edition.superscript')], [Identifier(u'edition'), Identifier(u'extract.num'), String(u'l'), Identifier(u'change.case$'), QuotedVar(u's'), Identifier(u':='), Identifier(u's'), String(u'first'), Identifier(u'='), Identifier(u's'), String(u'1'), Identifier(u'='), Identifier(u'or'), Identifier(u's'), String(u'erste'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([String(u'1'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([Identifier(u's'), String(u'second'), Identifier(u'='), Identifier(u's'), String(u'2'), Identifier(u'='), Identifier(u'or'), Identifier(u's'), String(u'zweite'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([String(u'2'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([Identifier(u's'), String(u'third'), Identifier(u'='), Identifier(u's'), String(u'3'), Identifier(u'='), Identifier(u'or'), Identifier(u's'), String(u'dritte'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([String(u'3'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([Identifier(u's'), String(u'fourth'), Identifier(u'='), Identifier(u's'), String(u'4'), Identifier(u'='), Identifier(u'or'), Identifier(u's'), String(u'vierte'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([String(u'4'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([Identifier(u's'), String(u'fifth'), Identifier(u'='), Identifier(u's'), String(u'5'), Identifier(u'='), Identifier(u'or'), Identifier(u's'), String(u'fuenfte'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([String(u'5'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([Identifier(u's'), String(u'sixth'), Identifier(u'='), Identifier(u's'), String(u'6'), Identifier(u'='), Identifier(u'or'), Identifier(u's'), String(u'sechste'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([String(u'6'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([Identifier(u's'), String(u'seventh'), Identifier(u'='), Identifier(u's'), String(u'7'), Identifier(u'='), Identifier(u'or'), Identifier(u's'), String(u'siebte'), Identifier(u'='), Identifier(u'or'), Identifier(u's'), String(u'siebente'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([String(u'7'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([Identifier(u's'), String(u'eighth'), Identifier(u'='), Identifier(u's'), String(u'8'), Identifier(u'='), Identifier(u'or'), Identifier(u's'), String(u'achte'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([String(u'8'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([Identifier(u's'), String(u'nineth'), Identifier(u'='), Identifier(u's'), String(u'9'), Identifier(u'='), Identifier(u'or'), Identifier(u's'), String(u'neunte'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([String(u'9'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([Identifier(u's'), Integer(1), Integer(1), Identifier(u'substring$'), Identifier(u'is.num'), FunctionLiteral([Identifier(u's'), String(u''), Identifier(u'*'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([Identifier(u'edition'), QuotedVar(u't'), Identifier(u':=')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u't')]], [u'FUNCTION', [Identifier(u'n.dashify')], [QuotedVar(u't'), Identifier(u':='), String(u''), FunctionLiteral([Identifier(u't'), Identifier(u'empty$'), Identifier(u'not')]), FunctionLiteral([Identifier(u't'), Integer(1), Integer(1), Identifier(u'substring$'), String(u'-'), Identifier(u'='), FunctionLiteral([Identifier(u't'), Integer(1), Integer(2), Identifier(u'substring$'), String(u'--'), Identifier(u'='), Identifier(u'not'), FunctionLiteral([String(u'--'), Identifier(u'*'), Identifier(u't'), Integer(2), Identifier(u'global.max$'), Identifier(u'substring$'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([FunctionLiteral([Identifier(u't'), Integer(1), Integer(1), Identifier(u'substring$'), String(u'-'), Identifier(u'=')]), FunctionLiteral([String(u'-'), Identifier(u'*'), Identifier(u't'), Integer(2), Identifier(u'global.max$'), Identifier(u'substring$'), QuotedVar(u't'), Identifier(u':=')]), Identifier(u'while$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u't'), Integer(1), Integer(1), Identifier(u'substring$'), Identifier(u'*'), Identifier(u't'), Integer(2), Identifier(u'global.max$'), Identifier(u'substring$'), QuotedVar(u't'), Identifier(u':=')]), Identifier(u'if$')]), Identifier(u'while$')]], [u'FUNCTION', [Identifier(u'output.bibitem.fst')], [Identifier(u'newline$'), String(u'\\bibitem[{'), Identifier(u'write$'), Identifier(u'shortauthor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'juraauthor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'organization'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'archive'), Identifier(u'empty$'), FunctionLiteral([String(u'empty'), Identifier(u'write$')]), FunctionLiteral([Identifier(u'archive'), Identifier(u'write$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'organization'), Identifier(u'write$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'label'), Identifier(u'write$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'label'), Identifier(u'write$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'juraauthor'), Identifier(u'write$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'shortauthor'), Identifier(u'write$')]), Identifier(u'if$'), String(u'}%'), Identifier(u'write$'), Identifier(u'sortkey'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'newline$'), String(u'% SORTKEY: ['), Identifier(u'sortkey'), Identifier(u'*'), String(u']'), Identifier(u'*'), Identifier(u'write$')]), Identifier(u'if$'), Identifier(u'newline$'), Identifier(u'shorttitle'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'juratitle'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'journal'), Identifier(u'empty$'), FunctionLiteral([String(u' {}%'), Identifier(u'write$')]), FunctionLiteral([Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u' {'), Identifier(u'journal'), Identifier(u'*'), String(u'}%'), Identifier(u'*'), Identifier(u'write$')]), FunctionLiteral([String(u' {'), Identifier(u'journal'), Identifier(u'*'), String(u'\\jbsy {'), Identifier(u'*'), Identifier(u'year'), Identifier(u'*'), String(u'}}%'), Identifier(u'*'), Identifier(u'write$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u' {'), Identifier(u'journal'), Identifier(u'*'), String(u'}%'), Identifier(u'*'), Identifier(u'write$')]), FunctionLiteral([String(u' {'), Identifier(u'journal'), Identifier(u'*'), String(u' '), Identifier(u'*'), Identifier(u'volume'), Identifier(u'*'), String(u' '), Identifier(u'*'), String(u' \\peryearformat {'), Identifier(u'year'), Identifier(u'*'), String(u'}}%'), Identifier(u'*'), Identifier(u'*'), Identifier(u'write$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([String(u' {'), Identifier(u'juratitle'), Identifier(u'*'), String(u'}%'), Identifier(u'*'), Identifier(u'write$')]), Identifier(u'if$')]), FunctionLiteral([String(u' {'), Identifier(u'shorttitle'), Identifier(u'*'), String(u'}%'), Identifier(u'*'), Identifier(u'write$')]), Identifier(u'if$'), Identifier(u'newline$'), Identifier(u'repeat-authors'), FunctionLiteral([String(u' {{1}'), Identifier(u'write$')]), FunctionLiteral([String(u' {{0}'), Identifier(u'write$')]), Identifier(u'if$'), Identifier(u'howcited'), Identifier(u'empty$'), FunctionLiteral([String(u'{}'), Identifier(u'write$')]), FunctionLiteral([String(u'{'), Identifier(u'howcited'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'write$')]), Identifier(u'if$'), Identifier(u'type$'), Identifier(u'empty$'), FunctionLiteral([String(u'{}'), Identifier(u'write$')]), FunctionLiteral([String(u'{'), Identifier(u'type$'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'write$')]), Identifier(u'if$'), Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'type$'), String(u'book'), Identifier(u'='), Identifier(u'dissyear'), Identifier(u'empty$'), Identifier(u'not'), Identifier(u'and'), FunctionLiteral([String(u'{'), Identifier(u'dissyear'), Identifier(u'*'), Identifier(u'write$'), Identifier(u'extra.label'), String(u''), Identifier(u'='), Identifier(u'skip$'), FunctionLiteral([String(u'\\el {'), Identifier(u'write$'), Identifier(u'extra.label'), Identifier(u'write$'), String(u'}'), Identifier(u'write$')]), Identifier(u'if$'), String(u'}'), Identifier(u'write$')]), FunctionLiteral([String(u'{}'), Identifier(u'write$')]), Identifier(u'if$')]), FunctionLiteral([String(u'{'), Identifier(u'year'), Identifier(u'*'), Identifier(u'write$'), Identifier(u'extra.label'), String(u''), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\el {'), Identifier(u'write$'), Identifier(u'extra.label'), Identifier(u'write$'), String(u'}'), Identifier(u'write$')]), Identifier(u'if$'), String(u'}'), Identifier(u'write$')]), Identifier(u'if$'), Identifier(u'edition'), Identifier(u'empty$'), FunctionLiteral([String(u'{}'), Identifier(u'write$')]), FunctionLiteral([String(u'{'), Identifier(u'convert.edition.superscript'), Identifier(u'extract.num'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'write$')]), Identifier(u'if$'), Identifier(u'ssedition'), Identifier(u'empty$'), FunctionLiteral([String(u'{}'), Identifier(u'write$')]), FunctionLiteral([String(u'{'), Identifier(u'ssedition'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'write$')]), Identifier(u'if$'), Identifier(u'language'), Identifier(u'empty$'), FunctionLiteral([String(u'{}'), Identifier(u'write$')]), FunctionLiteral([String(u'{'), Identifier(u'language'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'write$')]), Identifier(u'if$'), Identifier(u'pages'), Identifier(u'empty$'), FunctionLiteral([String(u'{}%'), Identifier(u'write$')]), FunctionLiteral([String(u'{'), Identifier(u'write$'), Identifier(u'pages'), Identifier(u'n.dashify'), Identifier(u'write$'), String(u'}%'), Identifier(u'write$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'output.bibitem.snd')], [Identifier(u'newline$'), Identifier(u'publisher'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'address'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u' {'), Identifier(u'write$')]), FunctionLiteral([String(u' {'), Identifier(u'write$'), Identifier(u'year'), Identifier(u'write$'), Identifier(u'extra.label'), String(u''), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\el {'), Identifier(u'write$'), Identifier(u'extra.label'), Identifier(u'write$'), String(u'}'), Identifier(u'write$')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u' {'), Identifier(u'write$'), Identifier(u'address'), Identifier(u'write$')]), FunctionLiteral([String(u' {'), Identifier(u'write$'), Identifier(u'address'), Identifier(u'write$'), String(u'\\bibbdsep {} '), Identifier(u'write$'), Identifier(u'year'), Identifier(u'write$'), Identifier(u'extra.label'), String(u''), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\el {'), Identifier(u'write$'), Identifier(u'extra.label'), Identifier(u'write$'), String(u'}'), Identifier(u'write$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'address'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u' {'), Identifier(u'write$'), Identifier(u'publisher'), Identifier(u'write$')]), FunctionLiteral([String(u' {'), Identifier(u'write$'), Identifier(u'publisher'), Identifier(u'write$'), String(u'\\bibbdsep {} '), Identifier(u'write$'), Identifier(u'year'), Identifier(u'write$'), Identifier(u'extra.label'), String(u''), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\el {'), Identifier(u'write$'), Identifier(u'extra.label'), Identifier(u'write$'), String(u'}'), Identifier(u'write$')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u' {'), Identifier(u'write$'), Identifier(u'address'), Identifier(u'write$'), String(u'\\bpubaddr {} '), Identifier(u'write$'), Identifier(u'publisher'), Identifier(u'write$')]), FunctionLiteral([String(u' {'), Identifier(u'write$'), Identifier(u'address'), Identifier(u'write$'), String(u'\\bpubaddr {} '), Identifier(u'write$'), Identifier(u'publisher'), Identifier(u'write$'), String(u'\\bibbdsep {} '), Identifier(u'write$'), Identifier(u'year'), Identifier(u'write$'), Identifier(u'extra.label'), String(u''), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\el {'), Identifier(u'write$'), Identifier(u'extra.label'), Identifier(u'write$'), String(u'}'), Identifier(u'write$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$'), String(u'}}%'), Identifier(u'write$'), Identifier(u'newline$'), String(u' {'), Identifier(u'write$'), Identifier(u'title'), Identifier(u'empty$'), FunctionLiteral([String(u'{}%'), Identifier(u'write$'), Identifier(u'newline$')]), FunctionLiteral([String(u'{'), Identifier(u'title'), Identifier(u'*'), Identifier(u'type$'), String(u'archival'), Identifier(u'='), FunctionLiteral([Identifier(u'shortarchive'), Identifier(u'empty$'), Identifier(u'not'), FunctionLiteral([String(u', In: '), Identifier(u'shortarchive'), Identifier(u'*'), Identifier(u'*')]), FunctionLiteral([Identifier(u'archive'), Identifier(u'empty$'), Identifier(u'not'), FunctionLiteral([String(u', In: '), Identifier(u'archive'), Identifier(u'*'), Identifier(u'*')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'shortsubarchive'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u', '), Identifier(u'shortsubarchive'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'sig1'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u', '), Identifier(u'sig1'), Identifier(u'*'), Identifier(u'*'), Identifier(u'sig2'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'. '), Identifier(u'sig2'), Identifier(u'*'), Identifier(u'*'), Identifier(u'sig3'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'. '), Identifier(u'sig3'), Identifier(u'*'), Identifier(u'*'), Identifier(u'sig4'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'. '), Identifier(u'sig4'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'pages'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u' \\jbArchPages {'), Identifier(u'pages'), Identifier(u'n.dashify'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), QuotedVar(u'skip$'), Identifier(u'if$'), String(u'}%'), Identifier(u'*'), Identifier(u'write$'), Identifier(u'newline$')]), Identifier(u'if$'), Identifier(u'gender'), Identifier(u'empty$'), FunctionLiteral([String(u' {}'), Identifier(u'write$')]), FunctionLiteral([String(u' {'), Identifier(u'gender'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'write$')]), Identifier(u'if$'), Identifier(u'oyear'), Identifier(u'empty$'), FunctionLiteral([String(u'{}'), Identifier(u'write$')]), FunctionLiteral([String(u'{'), Identifier(u'oyear'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'write$')]), Identifier(u'if$'), Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([String(u'{4}'), Identifier(u'write$')]), FunctionLiteral([String(u'{3}'), Identifier(u'write$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([String(u'{2}'), Identifier(u'write$')]), FunctionLiteral([String(u'{1}'), Identifier(u'write$')]), Identifier(u'if$')]), Identifier(u'if$'), String(u'{}{}{}{}{}}%'), Identifier(u'write$'), Identifier(u'newline$'), String(u' ]{'), Identifier(u'write$'), Identifier(u'cite$'), Identifier(u'write$'), String(u'}'), Identifier(u'write$'), Identifier(u'url'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'newline$'), String(u' \\jburldef {'), Identifier(u'write$'), Identifier(u'cite$'), Identifier(u'write$'), String(u'}{'), Identifier(u'write$'), Identifier(u'url'), Identifier(u'write$'), String(u'}%'), Identifier(u'write$')]), Identifier(u'if$'), Identifier(u'newline$'), String(u' \\jbbibargs {'), Identifier(u'write$'), String(u''), Identifier(u'before.all'), QuotedVar(u'output.state'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'output.bibitem')], [Identifier(u'output.bibitem.fst'), Identifier(u'output.bibitem.snd')]], [u'FUNCTION', [Identifier(u'format.note')], [Identifier(u'note'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.state'), Identifier(u'before.all'), Identifier(u'='), FunctionLiteral([String(u' \\jbnote {} {'), Identifier(u'*'), Identifier(u'note'), Identifier(u'*'), String(u'} '), Identifier(u'*')]), FunctionLiteral([String(u' \\jbnote {1} {'), Identifier(u'*'), Identifier(u'note'), Identifier(u'*'), String(u'} '), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.endnote')], [Identifier(u'note'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([String(u' \\jbendnote {'), Identifier(u'note'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.juradiss.book')], [Identifier(u'dissyear'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'type'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'school'), Identifier(u'empty$'), FunctionLiteral([String(u'Dissyear but no school in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), String(u' (\\alsothesisname {} \\jurthesisname'), Identifier(u'*'), Identifier(u'year'), Identifier(u'empty$'), Identifier(u'not'), Identifier(u'year'), Identifier(u'missing$'), Identifier(u'not'), Identifier(u'and'), FunctionLiteral([String(u'\\bibbdsep {} '), Identifier(u'dissyear'), Identifier(u'*')]), QuotedVar(u'skip$'), Identifier(u'if$'), String(u')'), Identifier(u'*')]), FunctionLiteral([String(u' (\\alsothesisname {} \\jurthesisname, '), Identifier(u'school'), Identifier(u'*'), Identifier(u'year'), Identifier(u'empty$'), Identifier(u'not'), Identifier(u'year'), Identifier(u'missing$'), Identifier(u'not'), Identifier(u'and'), FunctionLiteral([String(u'\\bibbdsep {} '), Identifier(u'dissyear'), Identifier(u'*'), Identifier(u'*')]), QuotedVar(u'skip$'), Identifier(u'if$'), String(u')'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'school'), Identifier(u'empty$'), FunctionLiteral([String(u'Dissyear but no school in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), String(u' (\\alsothesisname {} '), Identifier(u'type'), Identifier(u'*'), Identifier(u'year'), Identifier(u'empty$'), Identifier(u'not'), Identifier(u'year'), Identifier(u'missing$'), Identifier(u'not'), Identifier(u'and'), FunctionLiteral([String(u'\\bibbdsep {} '), Identifier(u'dissyear'), Identifier(u'*')]), QuotedVar(u'skip$'), Identifier(u'if$'), String(u')'), Identifier(u'*')]), FunctionLiteral([String(u' (\\alsothesisname {} '), Identifier(u'type'), Identifier(u'*'), String(u', '), Identifier(u'school'), Identifier(u'*'), Identifier(u'*'), Identifier(u'year'), Identifier(u'empty$'), Identifier(u'not'), Identifier(u'year'), Identifier(u'missing$'), Identifier(u'not'), Identifier(u'and'), FunctionLiteral([String(u'\\bibbdsep {} '), Identifier(u'dissyear'), Identifier(u'*'), Identifier(u'*')]), QuotedVar(u'skip$'), Identifier(u'if$'), String(u')'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.thesis')], [Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'school'), Identifier(u'empty$'), FunctionLiteral([String(u'No universtiy in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$')]), FunctionLiteral([String(u"There's a university, but no year in "), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$')]), Identifier(u'if$'), String(u'')]), FunctionLiteral([Identifier(u'type'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'school'), Identifier(u'empty$'), FunctionLiteral([String(u'No university in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), Identifier(u'type$'), String(u'mastersthesis'), Identifier(u'='), FunctionLiteral([String(u'\\apyformat {\\mastersthesisname'), Identifier(u'*'), Identifier(u'address'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u', '), Identifier(u'address'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), String(u'\\bibbdsep {} '), Identifier(u'year'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), FunctionLiteral([Identifier(u'type$'), String(u'jurthesis'), Identifier(u'='), FunctionLiteral([String(u'\\apyformat {\\jurthesisname'), Identifier(u'*'), Identifier(u'address'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u', '), Identifier(u'address'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), String(u'\\bibbdsep {} '), Identifier(u'year'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), FunctionLiteral([String(u'\\apyformat {\\phdthesisname'), Identifier(u'*'), Identifier(u'address'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u', '), Identifier(u'address'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), String(u'\\bibbdsep {} '), Identifier(u'year'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'type$'), String(u'mastersthesis'), Identifier(u'='), FunctionLiteral([String(u'\\mastersthesisname, \\apyformat {'), Identifier(u'school'), Identifier(u'*'), Identifier(u'address'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u', '), Identifier(u'address'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), String(u'\\bibbdsep {} '), Identifier(u'year'), Identifier(u'*'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), FunctionLiteral([Identifier(u'type$'), String(u'jurthesis'), Identifier(u'='), FunctionLiteral([String(u'\\jurthesisname, \\apyformat {'), Identifier(u'school'), Identifier(u'*'), Identifier(u'address'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u', '), Identifier(u'address'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), String(u'\\bibbdsep {} '), Identifier(u'year'), Identifier(u'*'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), FunctionLiteral([String(u'\\phdthesisname, \\apyformat {'), Identifier(u'school'), Identifier(u'*'), Identifier(u'address'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u', '), Identifier(u'address'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), String(u'\\bibbdsep {} '), Identifier(u'year'), Identifier(u'*'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'school'), Identifier(u'empty$'), FunctionLiteral([String(u'No university in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), Identifier(u'type'), Identifier(u'address'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u' \\apyformat {'), Identifier(u'address'), Identifier(u'*')]), Identifier(u'if$'), String(u'\\bibbdsep {} '), Identifier(u'*'), Identifier(u'*'), Identifier(u'year'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), FunctionLiteral([Identifier(u'type'), String(u' \\apyformat {'), Identifier(u'*'), Identifier(u'school'), Identifier(u'*'), Identifier(u'address'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u', '), Identifier(u'address'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), String(u'\\bibbdsep {} '), Identifier(u'year'), Identifier(u'*'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'set.comma.pages.check')], [Identifier(u'year'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'pages'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'url'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u', '), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u', '), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'set.period.dash')], [Identifier(u'output.state'), Identifier(u'before.all'), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'period.dash'), QuotedVar(u'output.state'), Identifier(u':=')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'set.period.dash.check')], [Identifier(u'empty$'), QuotedVar(u'skip$'), QuotedVar(u'set.period.dash'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'new.sentence')], [Identifier(u'output.state'), Identifier(u'before.all'), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'after.sentence'), QuotedVar(u'output.state'), Identifier(u':=')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'part.of.sentence')], [Identifier(u'output.state'), Identifier(u'before.all'), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'mid.sentence'), QuotedVar(u'output.state'), Identifier(u':=')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'new.sentence.checka')], [Identifier(u'empty$'), QuotedVar(u'skip$'), QuotedVar(u'new.sentence'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'field.or.null')], [Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), String(u'')]), QuotedVar(u'skip$'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'get.final.nonrightbrace.char')], [FunctionLiteral([Identifier(u'duplicate$'), Integer(-1), Integer(1), Identifier(u'substring$'), Identifier(u'duplicate$'), String(u'}'), Identifier(u'=')]), FunctionLiteral([Identifier(u'pop$'), Integer(-2), Identifier(u'global.max$'), Identifier(u'substring$')]), Identifier(u'while$'), Identifier(u'swap$'), Identifier(u'pop$')]], [u'FUNCTION', [Identifier(u'check.punct.instead.of.add.period')], [Identifier(u'duplicate$'), Identifier(u'get.final.nonrightbrace.char'), Identifier(u'duplicate$'), String(u'.'), Identifier(u'='), Identifier(u'swap$'), Identifier(u'duplicate$'), String(u'!'), Identifier(u'='), Identifier(u'swap$'), String(u'?'), Identifier(u'='), Identifier(u'or'), Identifier(u'or'), FunctionLiteral([String(u'} '), Identifier(u'*')]), FunctionLiteral([String(u'}\\bibatsep\\ '), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'check.punct.instead.of.add.period.art')], [Identifier(u'duplicate$'), Identifier(u'get.final.nonrightbrace.char'), Identifier(u'duplicate$'), String(u'.'), Identifier(u'='), Identifier(u'swap$'), Identifier(u'duplicate$'), String(u'!'), Identifier(u'='), Identifier(u'swap$'), String(u'?'), Identifier(u'='), Identifier(u'or'), Identifier(u'or'), FunctionLiteral([String(u'} '), Identifier(u'*')]), FunctionLiteral([Identifier(u'pages'), Identifier(u'empty$'), Identifier(u'note'), Identifier(u'empty$'), Identifier(u'url'), Identifier(u'empty$'), Identifier(u'and'), Identifier(u'and'), FunctionLiteral([String(u'} '), Identifier(u'*')]), FunctionLiteral([Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pages'), Identifier(u'empty$'), FunctionLiteral([String(u'}\\ajtsep\\ '), Identifier(u'*')]), FunctionLiteral([Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'month'), Identifier(u'empty$'), FunctionLiteral([String(u'}\\ajtsep\\ '), Identifier(u'*')]), FunctionLiteral([String(u'}\\ajtsep '), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u'}\\ajtsep '), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([String(u'}\\ajtsep\\ '), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'emphasize')], [Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), String(u'')]), FunctionLiteral([String(u'\\bibtfont {'), Identifier(u'swap$'), Identifier(u'check.punct.instead.of.add.period'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'journaltitlemarkup')], [Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), String(u'')]), FunctionLiteral([String(u'\\bibJTsep \\bibjtfont {'), Identifier(u'swap$'), Identifier(u'check.punct.instead.of.add.period.art'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'incollbooktitlemarkup')], [Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), String(u'')]), FunctionLiteral([String(u'\\bibbtfont {'), Identifier(u'swap$'), Identifier(u'check.punct.instead.of.add.period'), Identifier(u'*')]), Identifier(u'if$')]], [u'INTEGERS', [Identifier(u'nameptr'), Identifier(u'namesleft'), Identifier(u'numnames')]], [u'FUNCTION', [Identifier(u'lastnamemarkup')], [Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), String(u'')]), FunctionLiteral([String(u'\\bibnf {'), Identifier(u'swap$'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'editorlastnamemarkup')], [Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), String(u'')]), FunctionLiteral([Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([String(u'\\biblenf {'), Identifier(u'swap$'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), FunctionLiteral([String(u'\\bibenf {'), Identifier(u'swap$'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'othermarkup')], [Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), String(u' {}')]), FunctionLiteral([String(u' {'), Identifier(u'swap$'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'article.in.journal')], [Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), String(u'')]), FunctionLiteral([Identifier(u'author'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'title'), Identifier(u'missing$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'journaltitlemarkup'), String(u''), Identifier(u'swap$'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'journaltitlemarkup'), String(u''), Identifier(u'swap$'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.names')], [QuotedVar(u's'), Identifier(u':='), Integer(1), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u's'), Identifier(u'num.names$'), QuotedVar(u'numnames'), Identifier(u':='), Identifier(u'numnames'), QuotedVar(u'namesleft'), Identifier(u':='), FunctionLiteral([Identifier(u'namesleft'), Integer(0), Identifier(u'>')]), FunctionLiteral([Identifier(u's'), Identifier(u'nameptr'), String(u'{ll}'), Identifier(u'format.name$'), QuotedVar(u't'), Identifier(u':='), Identifier(u't'), Identifier(u'lastnamemarkup'), QuotedVar(u't'), Identifier(u':='), Identifier(u's'), Identifier(u'nameptr'), String(u'{ff}'), Identifier(u'format.name$'), Identifier(u'othermarkup'), QuotedVar(u'u'), Identifier(u':='), Identifier(u's'), Identifier(u'nameptr'), String(u'{f.}'), Identifier(u'format.name$'), Identifier(u'othermarkup'), QuotedVar(u'v'), Identifier(u':='), Identifier(u's'), Identifier(u'nameptr'), String(u'{vv}'), Identifier(u'format.name$'), Identifier(u'othermarkup'), QuotedVar(u'w'), Identifier(u':='), Identifier(u's'), Identifier(u'nameptr'), String(u'{jj}'), Identifier(u'format.name$'), Identifier(u'othermarkup'), QuotedVar(u'x'), Identifier(u':='), Identifier(u't'), Identifier(u'u'), Identifier(u'*'), Identifier(u'v'), Identifier(u'*'), Identifier(u'w'), Identifier(u'*'), Identifier(u'x'), Identifier(u'*'), QuotedVar(u't'), Identifier(u':='), Identifier(u'nameptr'), Integer(1), Identifier(u'>'), FunctionLiteral([Identifier(u'namesleft'), Integer(1), Identifier(u'>'), FunctionLiteral([Identifier(u'numnames'), Integer(3), Identifier(u'>'), FunctionLiteral([String(u''), Identifier(u'*')]), FunctionLiteral([Identifier(u'numnames'), Integer(3), Identifier(u'<'), FunctionLiteral([String(u'\\Bibbtasep '), Identifier(u'*'), Identifier(u't'), Identifier(u'*')]), FunctionLiteral([String(u'\\Bibbfsasep '), Identifier(u'*'), Identifier(u't'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u't'), String(u'\\bibnf {others} {} {} {} {}'), Identifier(u'='), Identifier(u't'), String(u'\\bibnf {others} {} {} {} {} \\edfont {\\editorsname}'), Identifier(u'='), Identifier(u'or'), Identifier(u'numnames'), Integer(3), Identifier(u'>'), Identifier(u'or'), FunctionLiteral([String(u'\\bibIMfont {\\Bibetal}'), Identifier(u'*')]), FunctionLiteral([Identifier(u'numnames'), Integer(3), Identifier(u'<'), FunctionLiteral([String(u'\\Bibbtasep '), Identifier(u'*'), Identifier(u't'), Identifier(u'*')]), FunctionLiteral([String(u'\\Bibbstasep '), Identifier(u'*'), Identifier(u't'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), QuotedVar(u't'), Identifier(u'if$'), Identifier(u'nameptr'), Integer(1), Identifier(u'+'), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u'namesleft'), Integer(1), Identifier(u'-'), QuotedVar(u'namesleft'), Identifier(u':=')]), Identifier(u'while$')]], [u'FUNCTION', [Identifier(u'format.editor.names')], [QuotedVar(u's'), Identifier(u':='), Integer(1), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u's'), Identifier(u'num.names$'), QuotedVar(u'numnames'), Identifier(u':='), Identifier(u'numnames'), QuotedVar(u'namesleft'), Identifier(u':='), FunctionLiteral([Identifier(u'namesleft'), Integer(0), Identifier(u'>')]), FunctionLiteral([Identifier(u's'), Identifier(u'nameptr'), String(u'{ll}'), Identifier(u'format.name$'), QuotedVar(u't'), Identifier(u':='), Identifier(u't'), Identifier(u'editorlastnamemarkup'), QuotedVar(u't'), Identifier(u':='), Identifier(u's'), Identifier(u'nameptr'), String(u'{ff}'), Identifier(u'format.name$'), Identifier(u'othermarkup'), QuotedVar(u'u'), Identifier(u':='), Identifier(u's'), Identifier(u'nameptr'), String(u'{f.}'), Identifier(u'format.name$'), Identifier(u'othermarkup'), QuotedVar(u'v'), Identifier(u':='), Identifier(u's'), Identifier(u'nameptr'), String(u'{vv}'), Identifier(u'format.name$'), Identifier(u'othermarkup'), QuotedVar(u'w'), Identifier(u':='), Identifier(u's'), Identifier(u'nameptr'), String(u'{jj}'), Identifier(u'format.name$'), Identifier(u'othermarkup'), QuotedVar(u'x'), Identifier(u':='), Identifier(u't'), Identifier(u'u'), Identifier(u'*'), Identifier(u'v'), Identifier(u'*'), Identifier(u'w'), Identifier(u'*'), Identifier(u'x'), Identifier(u'*'), QuotedVar(u't'), Identifier(u':='), Identifier(u'nameptr'), Integer(1), Identifier(u'>'), FunctionLiteral([Identifier(u'namesleft'), Integer(1), Identifier(u'>'), FunctionLiteral([Identifier(u'numnames'), Integer(3), Identifier(u'>'), FunctionLiteral([String(u''), Identifier(u'*')]), FunctionLiteral([Identifier(u'numnames'), Integer(3), Identifier(u'<'), FunctionLiteral([String(u'\\Bibbtesep '), Identifier(u'*'), Identifier(u't'), Identifier(u'*')]), FunctionLiteral([String(u'\\Bibbfsesep '), Identifier(u'*'), Identifier(u't'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u't'), String(u'\\bibenf {others} {} {} {} {}'), Identifier(u'='), Identifier(u't'), String(u'\\biblenf {others} {} {} {} {}'), Identifier(u'='), Identifier(u'or'), Identifier(u't'), String(u'\\bibenf {others} {} {} {} {} \\edfont {\\editorsname}'), Identifier(u'='), Identifier(u'or'), Identifier(u't'), String(u'\\biblenf {others} {} {} {} {} \\edfont {\\editorsname}'), Identifier(u'='), Identifier(u'or'), Identifier(u'numnames'), Integer(3), Identifier(u'>'), Identifier(u'or'), FunctionLiteral([String(u'\\bibIMfont {\\Bibetal}'), Identifier(u'*')]), FunctionLiteral([Identifier(u'numnames'), Integer(3), Identifier(u'<'), FunctionLiteral([String(u'\\Bibbtesep '), Identifier(u'*'), Identifier(u't'), Identifier(u'*')]), FunctionLiteral([String(u'\\Bibbstesep '), Identifier(u'*'), Identifier(u't'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), QuotedVar(u't'), Identifier(u'if$'), Identifier(u'nameptr'), Integer(1), Identifier(u'+'), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u'namesleft'), Integer(1), Identifier(u'-'), QuotedVar(u'namesleft'), Identifier(u':=')]), Identifier(u'while$')]], [u'FUNCTION', [Identifier(u'format.name.sig')], [QuotedVar(u's'), Identifier(u':='), Integer(1), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u's'), Identifier(u'num.names$'), QuotedVar(u'numnames'), Identifier(u':='), Identifier(u'numnames'), QuotedVar(u'namesleft'), Identifier(u':='), FunctionLiteral([Identifier(u'namesleft'), Integer(0), Identifier(u'>')]), FunctionLiteral([Identifier(u's'), Identifier(u'nameptr'), String(u'{ff}{ vv}{ ll}{ jj}'), Identifier(u'format.name$'), QuotedVar(u't'), Identifier(u':='), Identifier(u'nameptr'), Integer(1), Identifier(u'>'), FunctionLiteral([Identifier(u'namesleft'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u''), Identifier(u'*'), Identifier(u't'), Identifier(u'*')]), FunctionLiteral([Identifier(u't'), String(u'others'), Identifier(u'='), FunctionLiteral([String(u' et al.'), Identifier(u'*')]), FunctionLiteral([String(u''), Identifier(u'*'), Identifier(u't'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), QuotedVar(u't'), Identifier(u'if$'), Identifier(u'nameptr'), Integer(1), Identifier(u'+'), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u'namesleft'), Integer(1), Identifier(u'-'), QuotedVar(u'namesleft'), Identifier(u':=')]), Identifier(u'while$')]], [u'FUNCTION', [Identifier(u'indexmarkup')], [Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), String(u'{}')]), FunctionLiteral([String(u'{'), Identifier(u'swap$'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.names.for.index')], [QuotedVar(u's'), Identifier(u':='), Integer(1), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u's'), Identifier(u'num.names$'), QuotedVar(u'numnames'), Identifier(u':='), Identifier(u'numnames'), QuotedVar(u'namesleft'), Identifier(u':='), FunctionLiteral([Identifier(u'namesleft'), Integer(0), Identifier(u'>')]), FunctionLiteral([Identifier(u's'), Identifier(u'nameptr'), String(u'{ll}'), Identifier(u'format.name$'), QuotedVar(u't'), Identifier(u':='), Identifier(u't'), Identifier(u'indexmarkup'), QuotedVar(u't'), Identifier(u':='), Identifier(u's'), Identifier(u'nameptr'), String(u'{ff}'), Identifier(u'format.name$'), Identifier(u'indexmarkup'), QuotedVar(u'u'), Identifier(u':='), Identifier(u's'), Identifier(u'nameptr'), String(u'{f.}'), Identifier(u'format.name$'), Identifier(u'indexmarkup'), QuotedVar(u'v'), Identifier(u':='), Identifier(u's'), Identifier(u'nameptr'), String(u'{vv}'), Identifier(u'format.name$'), Identifier(u'indexmarkup'), QuotedVar(u'w'), Identifier(u':='), Identifier(u's'), Identifier(u'nameptr'), String(u'{jj}'), Identifier(u'format.name$'), Identifier(u'indexmarkup'), QuotedVar(u'x'), Identifier(u':='), Identifier(u't'), Identifier(u'u'), Identifier(u'*'), Identifier(u'v'), Identifier(u'*'), Identifier(u'w'), Identifier(u'*'), Identifier(u'x'), Identifier(u'*'), QuotedVar(u't'), Identifier(u':='), Identifier(u't'), String(u'{others}{}{}{}{}'), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'nameptr'), Integer(1), Identifier(u'>'), FunctionLiteral([Identifier(u'namesleft'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u'; '), Identifier(u'*'), Identifier(u't'), Identifier(u'*')]), FunctionLiteral([Identifier(u't'), String(u'others'), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([String(u'; '), Identifier(u'*'), Identifier(u't'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), QuotedVar(u't'), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'nameptr'), Integer(1), Identifier(u'+'), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u'namesleft'), Integer(1), Identifier(u'-'), QuotedVar(u'namesleft'), Identifier(u':=')]), Identifier(u'while$')]], [u'FUNCTION', [Identifier(u'format.authors')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'author'), Identifier(u'format.names')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.founders')], [Identifier(u'founder'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'author'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u' in: '), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'founder'), Identifier(u'format.names'), String(u'\\foundername'), Identifier(u'*'), Identifier(u'*'), Identifier(u'editor'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([String(u'\\afterfoundersep {}'), Identifier(u'*')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.editors')], [Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'format.editor.names'), Identifier(u'editortype'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'num.names$'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u'\\fsted {\\editorsname}'), Identifier(u'*')]), FunctionLiteral([String(u'\\fsted {\\editorname}'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u'\\fsted {('), Identifier(u'editortype'), Identifier(u'*'), String(u')}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'founder'), Identifier(u'empty$'), FunctionLiteral([String(u'\\bibfnfont {;} '), Identifier(u'*')]), FunctionLiteral([Identifier(u'type$'), String(u'commented'), Identifier(u'='), FunctionLiteral([String(u'\\afterfoundersep {}'), Identifier(u'*')]), FunctionLiteral([String(u'\\bibfnfont {;} '), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'editor'), Identifier(u'format.editor.names'), Identifier(u'*'), Identifier(u'editortype'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'num.names$'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u' \\edfont {\\editorsname}'), Identifier(u'*')]), FunctionLiteral([String(u' \\edfont {\\editorname}'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u' \\edfont {('), Identifier(u'editortype'), Identifier(u'*'), String(u')}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.snd.editors')], [Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([String(u''), Identifier(u'*')]), FunctionLiteral([Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editortype'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'num.names$'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u'\\snded {\\sndeditorsname}'), Identifier(u'*')]), FunctionLiteral([String(u'\\snded {\\sndeditorname}'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u'\\snded {('), Identifier(u'editortype'), Identifier(u'*'), String(u')}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.howcited')], [String(u'} {\\bibhowcited}'), Identifier(u'format.endnote'), Identifier(u'*')]], [u'FUNCTION', [Identifier(u'fin.entry.endnote')], [String(u' \\jbdoitem {'), Identifier(u'*'), Identifier(u'author'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'author'), Identifier(u'format.names.for.index'), Identifier(u'*')]), Identifier(u'if$'), String(u'} {'), Identifier(u'editor'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'format.names.for.index'), Identifier(u'*')]), Identifier(u'if$'), String(u'} {'), Identifier(u'*'), Identifier(u'organization'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'{'), Identifier(u'organization'), Identifier(u'*'), String(u'}{}{}{}{}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), String(u'}'), Identifier(u'*'), Identifier(u'*'), Identifier(u'write$'), Identifier(u'annote'), Identifier(u'missing$'), FunctionLiteral([String(u' \\bibAnnoteFile {'), Identifier(u'cite$'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'write$'), Identifier(u'newline$')]), FunctionLiteral([String(u' \\bibAnnote {'), Identifier(u'annote'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'write$'), Identifier(u'newline$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'count.authors.or.editors')], [QuotedVar(u's'), Identifier(u':='), Integer(1), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u's'), Identifier(u'num.names$'), QuotedVar(u'numnames'), Identifier(u':='), Identifier(u'numnames'), QuotedVar(u'namesleft'), Identifier(u':='), FunctionLiteral([Identifier(u'namesleft'), Integer(0), Identifier(u'>')]), FunctionLiteral([String(u''), QuotedVar(u't'), Identifier(u':='), Identifier(u'nameptr'), Integer(1), Identifier(u'>'), FunctionLiteral([Identifier(u'namesleft'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u''), Identifier(u'*')]), FunctionLiteral([String(u's'), Identifier(u'*')]), Identifier(u'if$')]), QuotedVar(u't'), Identifier(u'if$'), Identifier(u'nameptr'), Integer(1), Identifier(u'+'), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u'namesleft'), Integer(1), Identifier(u'-'), QuotedVar(u'namesleft'), Identifier(u':=')]), Identifier(u'while$')]], [u'FUNCTION', [Identifier(u'set.after.author.sep')], [Identifier(u'author'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'organization'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'archive'), Identifier(u'missing$'), FunctionLiteral([String(u'} {empty} {} {')]), FunctionLiteral([String(u'} {'), Identifier(u'archive'), Identifier(u'format.name.sig'), Identifier(u'*'), String(u'} {} {'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u'} {'), Identifier(u'organization'), String(u'} {org} {'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u'} {'), Identifier(u'editor'), Identifier(u'format.name.sig'), Identifier(u'*'), String(u'} {ed'), Identifier(u'editor'), Identifier(u'count.authors.or.editors'), String(u'} {'), Identifier(u'*'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u'} {'), Identifier(u'author'), Identifier(u'format.name.sig'), Identifier(u'*'), String(u'} {au'), Identifier(u'author'), Identifier(u'count.authors.or.editors'), String(u'} {'), Identifier(u'*'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.snd.editors')]), QuotedVar(u'skip$'), Identifier(u'if$'), String(u''), Identifier(u'*')]], [u'FUNCTION', [Identifier(u'format.names.info')], [QuotedVar(u's'), Identifier(u':='), Integer(1), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u's'), Identifier(u'num.names$'), QuotedVar(u'numnames'), Identifier(u':='), Identifier(u'numnames'), QuotedVar(u'namesleft'), Identifier(u':='), FunctionLiteral([Identifier(u'namesleft'), Integer(0), Identifier(u'>')]), FunctionLiteral([Identifier(u's'), Identifier(u'nameptr'), String(u'{ff }{vv }{ll}'), Identifier(u'format.name$'), QuotedVar(u't'), Identifier(u':='), Identifier(u'nameptr'), Integer(1), Identifier(u'>'), FunctionLiteral([Identifier(u'namesleft'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u' '), Identifier(u'*'), Identifier(u't'), Identifier(u'*')]), FunctionLiteral([Identifier(u't'), String(u'others'), Identifier(u'='), FunctionLiteral([String(u' et al.'), Identifier(u'*')]), FunctionLiteral([String(u' '), Identifier(u'*'), Identifier(u't'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), QuotedVar(u't'), Identifier(u'if$'), Identifier(u'nameptr'), Integer(1), Identifier(u'+'), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u'namesleft'), Integer(1), Identifier(u'-'), QuotedVar(u'namesleft'), Identifier(u':=')]), Identifier(u'while$')]], [u'FUNCTION', [Identifier(u'format.howcited.comment')], [Identifier(u'edition'), Identifier(u'empty$'), FunctionLiteral([String(u'} {\\bibcommenthowcited}'), Identifier(u'format.endnote'), Identifier(u'*')]), FunctionLiteral([String(u'} {\\bibcommenthowcited}'), Identifier(u'format.endnote'), Identifier(u'*'), Identifier(u'*'), Identifier(u'author'), Identifier(u'empty$'), Identifier(u'editor'), Identifier(u'empty$'), Identifier(u'not'), Identifier(u'and'), FunctionLiteral([String(u' \\jbauthorinfo {'), Identifier(u'editor'), Identifier(u'format.names.info'), String(u' '), Identifier(u'title'), Identifier(u'*'), Identifier(u'*'), Identifier(u'*'), String(u'}{'), Identifier(u'cite$'), String(u'}'), Identifier(u'*'), Identifier(u'*'), Identifier(u'*')]), FunctionLiteral([Identifier(u'author'), Identifier(u'empty$'), Identifier(u'shortauthor'), Identifier(u'empty$'), Identifier(u'not'), Identifier(u'and'), FunctionLiteral([String(u' \\jbauthorinfo {'), Identifier(u'shortauthor'), Identifier(u'format.names.info'), String(u' '), Identifier(u'title'), Identifier(u'*'), Identifier(u'*'), Identifier(u'*'), String(u'}{'), Identifier(u'cite$'), String(u'}'), Identifier(u'*'), Identifier(u'*'), Identifier(u'*')]), FunctionLiteral([String(u' \\jbauthorinfo {'), Identifier(u'author'), Identifier(u'format.names.info'), String(u' '), Identifier(u'title'), Identifier(u'*'), Identifier(u'*'), Identifier(u'*'), String(u'}{'), Identifier(u'cite$'), String(u'}'), Identifier(u'*'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.howcited.artperiod')], [String(u'} {\\bibartperiodhowcited}'), Identifier(u'format.endnote'), Identifier(u'*')]], [u'FUNCTION', [Identifier(u'format.proceed.organization')], [Identifier(u'organization'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'organization'), String(u' \\organizationname {}'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.titleaddon')], [Identifier(u'title'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'titleaddon'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'titleaddon'), String(u'\\bibatsep\\ '), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.title')], [Identifier(u'title'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([String(u'\\bibtfont {'), Identifier(u'title'), Identifier(u'check.punct.instead.of.add.period'), Identifier(u'*'), Identifier(u'format.titleaddon'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.artperiodincoll.title')], [Identifier(u'title'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([String(u'\\bibapifont {'), Identifier(u'title'), Identifier(u'check.punct.instead.of.add.period'), Identifier(u'*'), Identifier(u'format.titleaddon'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.volumetitle')], [Identifier(u'volumetitle'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([String(u"There's a volumetitle but no volume in "), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), Identifier(u'volumetitle'), String(u', '), Identifier(u'*')]), FunctionLiteral([Identifier(u'volumetitle'), String(u', '), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'add.extra.label')], [Identifier(u'extra.label'), String(u''), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\bibel {'), Identifier(u'extra.label'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.date')], [Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'month'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([String(u"There's a month but no year in "), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), Identifier(u'month')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'month'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'edition'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\jbssedbd {'), Identifier(u'convert.edition.superscript'), Identifier(u'extract.num'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'year'), Identifier(u'add.extra.label')]), FunctionLiteral([Identifier(u'month'), String(u' '), Identifier(u'*'), Identifier(u'edition'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\jbssedbd {'), Identifier(u'convert.edition.superscript'), Identifier(u'extract.num'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'year'), Identifier(u'*'), Identifier(u'add.extra.label')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.update')], [Identifier(u'updated'), Identifier(u'missing$'), Identifier(u'not'), FunctionLiteral([String(u'\\updatesep {} \\updatename {} '), Identifier(u'*'), Identifier(u'updated'), Identifier(u'*')]), QuotedVar(u'skip$'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'oaddress.opublisher.oyear.format')], [Identifier(u'type$'), String(u'book'), Identifier(u'='), Identifier(u'type$'), String(u'inbook'), Identifier(u'='), Identifier(u'type$'), String(u'incollection'), Identifier(u'='), Identifier(u'or'), Identifier(u'or'), FunctionLiteral([Identifier(u'oyear'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'opublisher'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'oaddress'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'oaddress'), String(u'\\osep {} '), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'oaddress'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'opublisher'), String(u'\\osep {} '), Identifier(u'*'), Identifier(u'*')]), FunctionLiteral([Identifier(u'oaddress'), String(u'\\bpubaddr {} '), Identifier(u'*'), Identifier(u'opublisher'), String(u'\\osep {} '), Identifier(u'*'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u'oyear without year in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$')]), QuotedVar(u'skip$'), Identifier(u'if$'), Identifier(u'opublisher'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'oaddress'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'oyear'), Identifier(u'*'), String(u'\\osep {} \\reprintname {}, '), Identifier(u'*')]), FunctionLiteral([Identifier(u'oaddress'), String(u'\\bibbdsep {} '), Identifier(u'*'), Identifier(u'oyear'), String(u'\\osep {} '), Identifier(u'*'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'oaddress'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'opublisher'), Identifier(u'*'), String(u'\\bibbdsep {} '), Identifier(u'*'), Identifier(u'oyear'), String(u'\\osep {} '), Identifier(u'*'), Identifier(u'*')]), FunctionLiteral([Identifier(u'oaddress'), String(u'\\bpubaddr {} '), Identifier(u'*'), Identifier(u'opublisher'), String(u'\\bibbdsep {} '), Identifier(u'*'), Identifier(u'*'), Identifier(u'oyear'), String(u'\\osep {} '), Identifier(u'*'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), QuotedVar(u'skip$'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'make.translators')], [Identifier(u'before.all'), QuotedVar(u'output.state'), Identifier(u':='), Identifier(u'translator'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'flanguage'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([String(u'\\translator {}{'), Identifier(u'flanguage'), String(u'l'), Identifier(u'change.case$'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'type$'), String(u'incollection'), Identifier(u'='), Identifier(u'not'), Identifier(u'type$'), String(u'article'), Identifier(u'='), Identifier(u'not'), Identifier(u'and'), FunctionLiteral([String(u'{1} '), Identifier(u'*')]), FunctionLiteral([Identifier(u'type$'), String(u'incollection'), Identifier(u'='), FunctionLiteral([Identifier(u'booktitle'), Identifier(u'empty$'), FunctionLiteral([String(u'{} '), Identifier(u'*')]), FunctionLiteral([String(u'{1} '), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'type$'), String(u'article'), Identifier(u'='), FunctionLiteral([String(u'{1}'), Identifier(u'*')]), FunctionLiteral([Identifier(u'series'), Identifier(u'empty$'), FunctionLiteral([String(u'{} '), Identifier(u'*')]), FunctionLiteral([String(u'{1} '), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([String(u'\\translator {'), Identifier(u'translator'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'flanguage'), Identifier(u'empty$'), FunctionLiteral([String(u'{}'), Identifier(u'*')]), FunctionLiteral([String(u'{'), Identifier(u'*'), Identifier(u'flanguage'), String(u'l'), Identifier(u'change.case$'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'type$'), String(u'incollection'), Identifier(u'='), Identifier(u'not'), Identifier(u'type$'), String(u'article'), Identifier(u'='), Identifier(u'not'), Identifier(u'and'), FunctionLiteral([String(u'{1} '), Identifier(u'*')]), FunctionLiteral([Identifier(u'type$'), String(u'incollection'), Identifier(u'='), FunctionLiteral([Identifier(u'booktitle'), Identifier(u'empty$'), FunctionLiteral([String(u'{} '), Identifier(u'*')]), FunctionLiteral([String(u'{1} '), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'type$'), String(u'article'), Identifier(u'='), FunctionLiteral([String(u'{1} '), Identifier(u'*')]), FunctionLiteral([Identifier(u'series'), Identifier(u'empty$'), FunctionLiteral([String(u'{} '), Identifier(u'*')]), FunctionLiteral([String(u'{1} '), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'before.all'), QuotedVar(u'output.state'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'checked.inst')], [Identifier(u'institution'), Identifier(u'empty$'), FunctionLiteral([String(u' \\apyformat {'), Identifier(u'*'), Identifier(u'oaddress.opublisher.oyear.format')]), FunctionLiteral([Identifier(u'address'), Identifier(u'empty$'), Identifier(u'not'), FunctionLiteral([String(u' \\apyformat {'), Identifier(u'*')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.address.publisher.year')], [Identifier(u'publisher'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'address'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u'Neither address nor year in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), String(u'')]), FunctionLiteral([String(u'No address in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), Identifier(u'institution'), Identifier(u'empty$'), FunctionLiteral([String(u' \\apyformat {'), Identifier(u'oaddress.opublisher.oyear.format'), Identifier(u'format.date'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), FunctionLiteral([String(u' \\apyformat {'), Identifier(u'institution'), Identifier(u'*'), String(u'\\bibbdsep {} '), Identifier(u'*'), Identifier(u'format.date'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'checked.inst'), Identifier(u'address'), String(u'}'), Identifier(u'*')]), FunctionLiteral([Identifier(u'checked.inst'), Identifier(u'address'), String(u'\\bibbdsep {} '), Identifier(u'format.date'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'address'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u"There's only a publisher (no address, no year) in "), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), Identifier(u'publisher')]), FunctionLiteral([Identifier(u'checked.inst'), Identifier(u'publisher'), String(u'\\bibbdsep {} '), Identifier(u'*'), Identifier(u'format.date'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'checked.inst'), Identifier(u'address'), Identifier(u'*'), String(u'\\bpubaddr {} '), Identifier(u'publisher'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), FunctionLiteral([Identifier(u'checked.inst'), Identifier(u'address'), Identifier(u'*'), String(u'\\bpubaddr {} '), Identifier(u'publisher'), String(u'\\bibbdsep {} '), Identifier(u'*'), Identifier(u'format.date'), String(u'}'), Identifier(u'*'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.howpublished.address.year')], [Identifier(u'howpublished'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'address'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u'Neither address nor year in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), String(u'')]), FunctionLiteral([String(u'No address in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), Identifier(u'format.date')]), Identifier(u'if$')]), FunctionLiteral([String(u' \\apyformat {'), Identifier(u'oaddress.opublisher.oyear.format'), Identifier(u'address'), Identifier(u'*'), String(u'\\bibbdsep {} '), Identifier(u'*'), Identifier(u'format.date'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'address'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u"There's only a howpublished (no address, no year) in "), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), Identifier(u'howpublished')]), FunctionLiteral([String(u' \\apyformat {'), Identifier(u'oaddress.opublisher.oyear.format'), Identifier(u'howpublished'), Identifier(u'*'), String(u'\\bibbdsep {} '), Identifier(u'*'), Identifier(u'format.date'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u' \\apyformat {'), Identifier(u'oaddress.opublisher.oyear.format'), Identifier(u'address'), Identifier(u'*'), String(u'\\bpubaddr {} '), Identifier(u'*'), Identifier(u'howpublished'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), FunctionLiteral([String(u' \\apyformat {'), Identifier(u'oaddress.opublisher.oyear.format'), Identifier(u'address'), Identifier(u'*'), String(u'\\bpubaddr {} '), Identifier(u'*'), Identifier(u'howpublished'), Identifier(u'*'), String(u'\\bibbdsep {} '), Identifier(u'*'), Identifier(u'format.date'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'tie.or.space.connect')], [Identifier(u'duplicate$'), Identifier(u'text.length$'), Integer(4), Identifier(u'<'), FunctionLiteral([String(u'~')]), FunctionLiteral([String(u' ')]), Identifier(u'if$'), Identifier(u'swap$'), Identifier(u'*'), Identifier(u'*')]], [u'FUNCTION', [Identifier(u'bibvol.tie.or.space.connect')], [Identifier(u'duplicate$'), Identifier(u'text.length$'), Integer(4), Identifier(u'<'), FunctionLiteral([String(u'~')]), FunctionLiteral([String(u'{} ')]), Identifier(u'if$'), Identifier(u'swap$'), Identifier(u'*'), Identifier(u'*')]], [u'FUNCTION', [Identifier(u'format.btitle')], [Identifier(u'title'), Identifier(u'emphasize'), Identifier(u'format.titleaddon'), Identifier(u'*')]], [u'FUNCTION', [Identifier(u'format.btitle.vol')], [Identifier(u'number'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'series'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'title'), Identifier(u'emphasize'), Identifier(u'format.titleaddon'), Identifier(u'*')]), FunctionLiteral([Identifier(u'title'), Identifier(u'emphasize'), Identifier(u'format.titleaddon'), Identifier(u'*'), String(u' \\volumeformat {'), Identifier(u'volume'), Identifier(u'*'), String(u'} '), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'title'), Identifier(u'emphasize'), Identifier(u'format.titleaddon'), Identifier(u'*')]), FunctionLiteral([Identifier(u'title'), Identifier(u'emphasize'), Identifier(u'format.titleaddon'), Identifier(u'*'), String(u'\\volumeformat {'), Identifier(u'volume'), Identifier(u'*'), String(u'} '), Identifier(u'*'), Identifier(u'*'), Identifier(u'series'), String(u'\\bibatsep\\ '), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'title'), Identifier(u'emphasize'), Identifier(u'format.titleaddon'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.btitle.vol.inbook')], [Identifier(u'number'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'series'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([String(u'\\bibapifont {'), Identifier(u'title'), Identifier(u'check.punct.instead.of.add.period'), Identifier(u'*'), Identifier(u'format.titleaddon'), Identifier(u'*')]), FunctionLiteral([String(u'\\bibapifont {'), Identifier(u'title'), Identifier(u'check.punct.instead.of.add.period'), Identifier(u'*'), Identifier(u'format.titleaddon'), Identifier(u'*'), String(u' \\volumeformat {'), Identifier(u'volume'), Identifier(u'*'), String(u'} '), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([String(u'\\bibapifont {'), Identifier(u'title'), Identifier(u'check.punct.instead.of.add.period'), Identifier(u'*'), Identifier(u'format.titleaddon'), Identifier(u'*')]), FunctionLiteral([Identifier(u'series'), Identifier(u'emphasize'), String(u'\\volumeformat {'), Identifier(u'volume'), Identifier(u'*'), String(u'} '), Identifier(u'*'), Identifier(u'*'), String(u'\\bibapifont {'), Identifier(u'title'), Identifier(u'check.punct.instead.of.add.period'), Identifier(u'*'), Identifier(u'format.titleaddon'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([String(u'\\bibapifont {'), Identifier(u'title'), Identifier(u'check.punct.instead.of.add.period'), Identifier(u'*'), Identifier(u'format.titleaddon'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.url')], [Identifier(u'url'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'author'), Identifier(u'empty$'), Identifier(u'title'), Identifier(u'empty$'), Identifier(u'and'), QuotedVar(u'skip$'), FunctionLiteral([String(u' '), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'urldate'), Identifier(u'empty$'), FunctionLiteral([String(u'\\jburluse {'), Identifier(u'cite$'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), FunctionLiteral([String(u'\\jburluse {'), Identifier(u'cite$'), Identifier(u'*'), String(u'}\\bibbudcsep {}\\urldatecomment '), Identifier(u'*'), Identifier(u'urldate'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.naked.url')], [Identifier(u'url'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'urldate'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'title'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'title'), Identifier(u'emphasize'), Identifier(u'*')]), Identifier(u'if$'), String(u'\\jburluse {'), Identifier(u'cite$'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), FunctionLiteral([Identifier(u'title'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'title'), Identifier(u'emphasize'), Identifier(u'*')]), Identifier(u'if$'), String(u'\\jburluse {'), Identifier(u'cite$'), Identifier(u'*'), String(u'}\\bibbudcsep {}\\urldatecomment '), Identifier(u'*'), Identifier(u'urldate'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.series.number')], [Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'number'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'series'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([String(u' \\numberandseries {}{'), Identifier(u'series'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'series'), Identifier(u'empty$'), FunctionLiteral([String(u' \\numberandseries {'), Identifier(u'number'), Identifier(u'*'), String(u'}{}'), Identifier(u'*'), String(u"There's a number but no series in "), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$')]), FunctionLiteral([String(u' \\numberandseries {'), Identifier(u'number'), Identifier(u'*'), String(u'}{'), Identifier(u'*'), Identifier(u'series'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'series'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'type$'), String(u'proceedings'), Identifier(u'='), FunctionLiteral([String(u' \\numberandseries {}{'), Identifier(u'series'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), FunctionLiteral([String(u'')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'first.ed')], [String(u'\\firstedname')]], [u'FUNCTION', [Identifier(u'second.ed')], [String(u'\\secondedname')]], [u'FUNCTION', [Identifier(u'third.ed')], [String(u'\\thirdedname')]], [u'FUNCTION', [Identifier(u'fourth.ed')], [String(u'\\fourthedname')]], [u'FUNCTION', [Identifier(u'fifth.ed')], [String(u'\\fifthedname')]], [u'FUNCTION', [Identifier(u'th.ed')], [String(u'\\thedname')]], [u'FUNCTION', [Identifier(u'convert.edition')], [Identifier(u'edition'), Identifier(u'extract.num'), String(u'l'), Identifier(u'change.case$'), QuotedVar(u's'), Identifier(u':='), Identifier(u's'), String(u'first'), Identifier(u'='), Identifier(u's'), String(u'1'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([Identifier(u'first.ed'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([Identifier(u's'), String(u'second'), Identifier(u'='), Identifier(u's'), String(u'2'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([Identifier(u'second.ed'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([Identifier(u's'), String(u'third'), Identifier(u'='), Identifier(u's'), String(u'3'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([Identifier(u'third.ed'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([Identifier(u's'), String(u'fourth'), Identifier(u'='), Identifier(u's'), String(u'4'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([Identifier(u'fourth.ed'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([Identifier(u's'), String(u'fifth'), Identifier(u'='), Identifier(u's'), String(u'5'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([Identifier(u'fifth.ed'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([Identifier(u's'), Integer(1), Integer(1), Identifier(u'substring$'), Identifier(u'is.num'), FunctionLiteral([Identifier(u's'), Identifier(u'th.ed'), Identifier(u'*'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([Identifier(u'edition'), QuotedVar(u't'), Identifier(u':=')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u't')]], [u'FUNCTION', [Identifier(u'format.edition')], [Identifier(u'edition'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([String(u'\\jbedition {'), Identifier(u'*'), Identifier(u'convert.edition'), String(u'~\\editionname {}\\jbaensep} '), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.isbn.issn')], [Identifier(u'isbn'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'issn'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([String(u'\\jbissn {'), Identifier(u'issn'), Identifier(u'n.dashify'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u'\\jbisbn {'), Identifier(u'isbn'), Identifier(u'n.dashify'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]], [u'INTEGERS', [Identifier(u'multiresult')]], [u'FUNCTION', [Identifier(u'multi.page.check')], [QuotedVar(u't'), Identifier(u':='), Integer(0), QuotedVar(u'multiresult'), Identifier(u':='), FunctionLiteral([Identifier(u'multiresult'), Identifier(u'not'), Identifier(u't'), Identifier(u'empty$'), Identifier(u'not'), Identifier(u'and')]), FunctionLiteral([Identifier(u't'), Integer(1), Integer(1), Identifier(u'substring$'), Identifier(u'duplicate$'), String(u'-'), Identifier(u'='), Identifier(u'swap$'), Identifier(u'duplicate$'), String(u','), Identifier(u'='), Identifier(u'swap$'), String(u'+'), Identifier(u'='), Identifier(u'or'), Identifier(u'or'), FunctionLiteral([Integer(1), QuotedVar(u'multiresult'), Identifier(u':=')]), FunctionLiteral([Identifier(u't'), Integer(2), Identifier(u'global.max$'), Identifier(u'substring$'), QuotedVar(u't'), Identifier(u':=')]), Identifier(u'if$')]), Identifier(u'while$'), Identifier(u'multiresult')]], [u'FUNCTION', [Identifier(u'format.pages')], [Identifier(u'pages'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([String(u' \\jbPages{'), Identifier(u'pages'), Identifier(u'n.dashify'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'multi.pagerange.check')], [QuotedVar(u't'), Identifier(u':='), Integer(0), QuotedVar(u'multiresult'), Identifier(u':='), FunctionLiteral([Identifier(u'multiresult'), Identifier(u'not'), Identifier(u't'), Identifier(u'empty$'), Identifier(u'not'), Identifier(u'and')]), FunctionLiteral([Identifier(u't'), Integer(1), Integer(1), Identifier(u'substring$'), Identifier(u'duplicate$'), String(u'-'), Identifier(u'='), Identifier(u'swap$'), Identifier(u'duplicate$'), String(u'b'), Identifier(u'='), Identifier(u'swap$'), String(u'/'), Identifier(u'='), Identifier(u'or'), Identifier(u'or'), FunctionLiteral([Integer(1), QuotedVar(u'multiresult'), Identifier(u':=')]), FunctionLiteral([Identifier(u't'), Integer(2), Identifier(u'global.max$'), Identifier(u'substring$'), QuotedVar(u't'), Identifier(u':=')]), Identifier(u'if$')]), Identifier(u'while$'), Identifier(u'multiresult')]], [u'FUNCTION', [Identifier(u'check.missing.pages')], [Identifier(u'pages'), Identifier(u'empty$'), FunctionLiteral([String(u'Empty pages in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$')]), FunctionLiteral([Identifier(u'pages'), Identifier(u'multi.pagerange.check'), FunctionLiteral([String(u''), Identifier(u'*')]), FunctionLiteral([Identifier(u'type$'), String(u'article'), Identifier(u'='), Identifier(u'type$'), String(u'periodical'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([String(u"There's only a starting page, no pagerange in "), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.pages.book')], [Identifier(u'pages'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([String(u' \\jbpages {'), Identifier(u'pages'), String(u' \\bibtotalpagesname}'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.totalpages')], [Identifier(u'totalpages'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([String(u', '), Identifier(u'totalpages'), String(u'~\\bibtotalpagesname'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.vol.year.num.pages')], [Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([String(u' \\artvolumeformat {'), Identifier(u'volume'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u"There's a volume but no year in "), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'month'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\ '), Identifier(u'month'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'year'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u' \\artyearformat {'), Identifier(u'year'), Identifier(u'*'), Identifier(u'add.extra.label'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'number'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\artnumberformat {'), Identifier(u'number'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'pages'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), Identifier(u'format.pages')]), FunctionLiteral([String(u''), Identifier(u'format.pages'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.vol.bracedyear.num.pages')], [Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([String(u' \\pervolumeformat {'), Identifier(u'volume'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u"There's a volume but no year in "), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'year'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u' \\peryearformat {'), Identifier(u'year'), Identifier(u'*'), Identifier(u'add.extra.label'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'month'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u', '), Identifier(u'month'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'number'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u', \\pernumberformat {'), Identifier(u'number'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'pages'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), Identifier(u'format.pages')]), FunctionLiteral([String(u''), Identifier(u'format.pages'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.chapter.pages')], [Identifier(u'chapter'), Identifier(u'empty$'), QuotedVar(u'format.pages'), FunctionLiteral([Identifier(u'type'), Identifier(u'empty$'), FunctionLiteral([String(u'\\unskip.\\,-- \\bibchapterlongname')]), FunctionLiteral([String(u'\\unskip.\\,-- '), Identifier(u'type'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'chapter'), Identifier(u'tie.or.space.connect'), Identifier(u'pages'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'format.pages'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.booktitleaddon')], [Identifier(u'booktitle'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'booktitleaddon'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'booktitleaddon')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.incoll.editor.booktitle')], [Identifier(u'booktitle'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([String(u'\\incolledformat {}{}{'), Identifier(u'booktitle'), Identifier(u'incollbooktitlemarkup'), Identifier(u'format.booktitleaddon'), Identifier(u'*'), Identifier(u'*'), String(u'}{}'), Identifier(u'*'), Identifier(u'booktitleaddon'), Identifier(u'empty$'), FunctionLiteral([String(u'{} '), Identifier(u'*')]), FunctionLiteral([String(u'{1} '), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u'\\incolledformat {}{}{'), Identifier(u'booktitle'), Identifier(u'incollbooktitlemarkup'), Identifier(u'format.booktitleaddon'), Identifier(u'*'), Identifier(u'*'), String(u'}{'), Identifier(u'*'), Identifier(u'volume'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'booktitleaddon'), Identifier(u'empty$'), FunctionLiteral([String(u'{} '), Identifier(u'*')]), FunctionLiteral([String(u'{1} '), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([String(u'\\incolledformat {'), Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'format.editor.names'), String(u'}'), Identifier(u'*'), Identifier(u'*'), Identifier(u'editortype'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'num.names$'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u'{\\edfont {\\editorsname}}{'), Identifier(u'*')]), FunctionLiteral([String(u'{\\edfont {\\editorname}}{'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u'{\\edfont {('), Identifier(u'*'), Identifier(u'editortype'), Identifier(u'*'), String(u')}}{'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'booktitle'), Identifier(u'incollbooktitlemarkup'), Identifier(u'*'), Identifier(u'format.booktitleaddon'), Identifier(u'*'), String(u'}{}'), Identifier(u'*'), Identifier(u'booktitleaddon'), Identifier(u'empty$'), FunctionLiteral([String(u'{} '), Identifier(u'*')]), FunctionLiteral([String(u'{1} '), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u'\\incolledformat {'), Identifier(u'*'), Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'format.editor.names'), String(u'}'), Identifier(u'*'), Identifier(u'*'), Identifier(u'editortype'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'num.names$'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u'{\\edfont {\\editorsname}}{'), Identifier(u'*')]), FunctionLiteral([String(u'{\\edfont {\\editorname}}{'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u'{\\edfont {('), Identifier(u'*'), Identifier(u'editortype'), Identifier(u'*'), String(u')}}{'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'booktitle'), Identifier(u'incollbooktitlemarkup'), Identifier(u'*'), Identifier(u'format.booktitleaddon'), Identifier(u'*'), String(u'}{'), Identifier(u'volume'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'booktitleaddon'), Identifier(u'empty$'), FunctionLiteral([String(u'{} '), Identifier(u'*')]), FunctionLiteral([String(u'{1} '), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.tr.number.jur')], [Identifier(u'type'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'number'), Identifier(u'empty$'), FunctionLiteral([String(u' -- \\technicalreportname {} ')]), FunctionLiteral([String(u'~('), Identifier(u'number'), Identifier(u'*'), String(u').\\,-- \\technicalreportname {} '), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'number'), Identifier(u'empty$'), FunctionLiteral([String(u' -- '), Identifier(u'type'), Identifier(u'*')]), FunctionLiteral([String(u'~('), Identifier(u'number'), Identifier(u'*'), String(u').\\,-- '), Identifier(u'type'), Identifier(u'*'), String(u' '), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.article.crossref.bracedyear')], [Identifier(u'key'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'journal'), Identifier(u'empty$'), FunctionLiteral([String(u'Need key or journal for '), Identifier(u'cite$'), Identifier(u'*'), String(u' to crossref '), Identifier(u'*'), Identifier(u'crossref'), Identifier(u'*'), Identifier(u'warning$'), String(u'')]), FunctionLiteral([String(u'\\bibJTsep\\bibjtfont {'), Identifier(u'journal'), Identifier(u'*'), Identifier(u'check.punct.instead.of.add.period.art'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([String(u'No volume in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$')]), FunctionLiteral([String(u' \\pervolumeformat {'), Identifier(u'volume'), Identifier(u'*'), String(u'} '), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([String(u'No year in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$')]), FunctionLiteral([String(u'\\peryearformat {'), Identifier(u'year'), Identifier(u'*'), Identifier(u'add.extra.label'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'pages'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), Identifier(u'format.pages')]), FunctionLiteral([Identifier(u'format.pages'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([String(u''), Identifier(u'key'), Identifier(u'*')]), Identifier(u'if$'), String(u'\\ \\protect\\jbcrossrefchecked {'), Identifier(u'*'), Identifier(u'crossref'), Identifier(u'*'), String(u'}\\unskip'), Identifier(u'*')]], [u'FUNCTION', [Identifier(u'format.article.crossref')], [Identifier(u'key'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'journal'), Identifier(u'empty$'), FunctionLiteral([String(u'Need key or journal for '), Identifier(u'cite$'), Identifier(u'*'), String(u' to crossref '), Identifier(u'*'), Identifier(u'crossref'), Identifier(u'*'), Identifier(u'warning$'), String(u'')]), FunctionLiteral([String(u'\\bibJTsep\\bibjtfont {'), Identifier(u'journal'), Identifier(u'*'), Identifier(u'check.punct.instead.of.add.period.art'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u''), Identifier(u'key'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'year'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'year'), Identifier(u'*')]), Identifier(u'if$'), String(u' \\protect\\jbcrossrefchecked {'), Identifier(u'crossref'), Identifier(u'*'), String(u'}'), Identifier(u'*')]], [u'FUNCTION', [Identifier(u'format.book.crossref')], [Identifier(u'editor'), Identifier(u'empty$'), Identifier(u'editor'), Identifier(u'field.or.null'), Identifier(u'author'), Identifier(u'field.or.null'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'series'), Identifier(u'empty$'), FunctionLiteral([String(u'Need editor, key, or series for '), Identifier(u'cite$'), Identifier(u'*'), String(u' to crossref '), Identifier(u'*'), Identifier(u'crossref'), Identifier(u'*'), Identifier(u'warning$'), String(u''), Identifier(u'*')]), FunctionLiteral([String(u''), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'key'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u''), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([String(u'Empty volume in '), Identifier(u'cite$'), Identifier(u'*'), String(u"'s crossref of "), Identifier(u'*'), Identifier(u'crossref'), Identifier(u'*'), Identifier(u'warning$'), String(u''), String(u' \\protect\\jbcrossrefchecked {'), Identifier(u'*'), Identifier(u'crossref'), Identifier(u'*'), String(u'}\\unskip'), Identifier(u'*')]), FunctionLiteral([String(u' \\protect\\jbcrossrefchecked['), Identifier(u'*'), Identifier(u'volume'), Identifier(u'*'), String(u']{'), Identifier(u'*'), Identifier(u'crossref'), String(u'}\\unskip'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.incoll.inproc.crossref')], [String(u' \\protect\\jbincollcrossref {'), Identifier(u'*'), Identifier(u'crossref'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([String(u'{}'), Identifier(u'*')]), FunctionLiteral([String(u'{1}'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'format.pages')]], [u'FUNCTION', [Identifier(u'format.editors.organization')], [Identifier(u'organization'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'type$'), String(u'misc'), Identifier(u'='), FunctionLiteral([Identifier(u'organization')]), FunctionLiteral([Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([String(u' '), Identifier(u'organization'), Identifier(u'*'), String(u' \\organizationname {}'), Identifier(u'*')]), FunctionLiteral([String(u'; '), Identifier(u'organization'), Identifier(u'*'), String(u' \\organizationname {}'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u'; '), Identifier(u'organization'), Identifier(u'*'), String(u' \\organizationname {}'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.address.organization.manual')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'organization'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'address'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'address'), Identifier(u'output'), Identifier(u'part.of.sentence'), Identifier(u'year'), Identifier(u'empty$'), Identifier(u'not'), FunctionLiteral([String(u'\\bibbdsep {}'), Identifier(u'*')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$')]), QuotedVar(u'skip$'), Identifier(u'if$')]), FunctionLiteral([Identifier(u'address'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'organization'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'organization'), Identifier(u'output'), Identifier(u'part.of.sentence'), Identifier(u'year'), Identifier(u'empty$'), Identifier(u'not'), FunctionLiteral([String(u'\\bibbdsep {}'), Identifier(u'*')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'organization'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'address'), Identifier(u'output'), Identifier(u'part.of.sentence')]), FunctionLiteral([Identifier(u'address'), String(u'\\bpubaddr {} '), Identifier(u'*'), Identifier(u'organization'), Identifier(u'*'), Identifier(u'output'), Identifier(u'part.of.sentence')]), Identifier(u'if$'), Identifier(u'year'), Identifier(u'empty$'), Identifier(u'not'), FunctionLiteral([String(u'\\bibbdsep {}'), Identifier(u'*')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'article')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), String(u'author'), Identifier(u'output.check'), Identifier(u'set.after.author.sep'), Identifier(u'output'), Identifier(u'format.artperiodincoll.title'), String(u'title'), Identifier(u'output.check'), Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'journal'), Identifier(u'article.in.journal'), Identifier(u'output.nonnull'), Identifier(u'new.sentence'), Identifier(u'format.vol.year.num.pages'), Identifier(u'output')]), FunctionLiteral([Identifier(u'format.article.crossref'), Identifier(u'output.nonnull')]), Identifier(u'if$'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.note'), Identifier(u'format.isbn.issn'), Identifier(u'output'), Identifier(u'format.howcited.artperiod'), Identifier(u'output'), Identifier(u'check.missing.pages'), Identifier(u'fin.entry.endnote')]], [u'FUNCTION', [Identifier(u'commented')], [Identifier(u'output.bibitem'), Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.founders')]), FunctionLiteral([Identifier(u'format.founders'), Identifier(u'format.editors'), String(u'editor'), Identifier(u'output.check')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'format.founders'), Identifier(u'output.nonnull')]), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'format.founders'), Identifier(u'format.editors'), Identifier(u'output.nonnull')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'set.after.author.sep'), Identifier(u'output'), Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'format.btitle.vol'), String(u'title'), Identifier(u'output.check')]), FunctionLiteral([Identifier(u'format.btitle'), String(u'title'), Identifier(u'output.check')]), Identifier(u'if$'), Identifier(u'format.volumetitle'), Identifier(u'output'), Identifier(u'format.edition'), Identifier(u'output'), Identifier(u'format.address.publisher.year'), String(u'publisher'), Identifier(u'output.check'), Identifier(u'format.update'), Identifier(u'new.sentence'), Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'format.series.number'), Identifier(u'output')]), FunctionLiteral([Identifier(u'format.book.crossref'), Identifier(u'output.nonnull')]), Identifier(u'if$'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.pages'), Identifier(u'output'), Identifier(u'format.note'), Identifier(u'format.howcited.comment'), Identifier(u'output'), Identifier(u'fin.entry.endnote')]], [u'FUNCTION', [Identifier(u'periodical')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), String(u'author'), Identifier(u'output.check'), Identifier(u'set.after.author.sep'), Identifier(u'output'), Identifier(u'format.artperiodincoll.title'), String(u'title'), Identifier(u'output.check'), Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'journal'), Identifier(u'article.in.journal'), Identifier(u'output.nonnull'), Identifier(u'new.sentence'), Identifier(u'format.vol.bracedyear.num.pages'), Identifier(u'output')]), FunctionLiteral([Identifier(u'new.sentence'), Identifier(u'format.article.crossref.bracedyear'), Identifier(u'output.nonnull')]), Identifier(u'if$'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.note'), Identifier(u'format.isbn.issn'), Identifier(u'output'), Identifier(u'format.howcited.artperiod'), Identifier(u'output'), Identifier(u'fin.entry.endnote')]], [u'FUNCTION', [Identifier(u'book')], [Identifier(u'output.bibitem'), Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([String(u''), String(u'author and editor'), Identifier(u'output.check')]), FunctionLiteral([Identifier(u'format.editors'), Identifier(u'output.nonnull')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'output.nonnull')]), FunctionLiteral([Identifier(u'format.authors'), String(u'\\jbtiafed {'), Identifier(u'format.editors'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'output.nonnull')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'set.after.author.sep'), Identifier(u'output'), Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'format.btitle.vol'), String(u'title'), Identifier(u'output.check')]), FunctionLiteral([Identifier(u'format.btitle'), String(u'title'), Identifier(u'output.check')]), Identifier(u'if$'), Identifier(u'author'), Identifier(u'empty$'), Identifier(u'not'), Identifier(u'editor'), Identifier(u'empty$'), Identifier(u'not'), Identifier(u'and'), FunctionLiteral([String(u'\\jbedafti {\\edbyname {} '), Identifier(u'editor'), Identifier(u'*'), String(u','), Identifier(u'*'), Identifier(u'*'), String(u'} '), Identifier(u'*')]), QuotedVar(u'skip$'), Identifier(u'if$'), Identifier(u'make.translators'), Identifier(u'output'), Identifier(u'format.volumetitle'), Identifier(u'output'), Identifier(u'format.edition'), Identifier(u'output'), Identifier(u'format.address.publisher.year'), String(u'publisher'), Identifier(u'output.check'), Identifier(u'new.sentence'), Identifier(u'format.juradiss.book'), Identifier(u'output'), Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'format.series.number'), Identifier(u'output')]), FunctionLiteral([Identifier(u'format.book.crossref'), Identifier(u'output.nonnull')]), Identifier(u'if$'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.pages'), Identifier(u'output'), Identifier(u'format.totalpages'), Identifier(u'output'), Identifier(u'format.note'), Identifier(u'format.isbn.issn'), Identifier(u'output'), Identifier(u'format.howcited'), Identifier(u'output'), Identifier(u'fin.entry.endnote')]], [u'FUNCTION', [Identifier(u'inbook')], [Identifier(u'output.bibitem'), Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.editors'), String(u'author and editor'), Identifier(u'output.check')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'output.nonnull')]), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'format.editors'), Identifier(u'output.nonnull')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'set.after.author.sep'), Identifier(u'output'), Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'chapter'), Identifier(u'empty$'), FunctionLiteral([String(u"There's no chapter in "), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), String(u''), Identifier(u'*')]), FunctionLiteral([Identifier(u'type'), Identifier(u'empty$'), FunctionLiteral([String(u'\\Bibchaptername{}')]), FunctionLiteral([Identifier(u'type')]), Identifier(u'if$'), Identifier(u'chapter'), Identifier(u'tie.or.space.connect'), String(u' In '), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'format.btitle.vol.inbook'), String(u'title'), Identifier(u'output.check'), Identifier(u'make.translators'), Identifier(u'output'), Identifier(u'format.volumetitle'), Identifier(u'output'), Identifier(u'format.edition'), Identifier(u'output'), Identifier(u'format.address.publisher.year'), String(u'publisher'), Identifier(u'output.check'), Identifier(u'new.sentence'), Identifier(u'format.series.number'), Identifier(u'output'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.pages'), String(u'pages'), Identifier(u'output.check'), Identifier(u'format.note'), Identifier(u'format.isbn.issn'), Identifier(u'output')]), FunctionLiteral([Identifier(u'chapter'), Identifier(u'empty$'), FunctionLiteral([String(u"There's no chapter in "), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), String(u''), Identifier(u'*'), Identifier(u'format.btitle.vol.inbook'), String(u'title'), Identifier(u'output.check')]), FunctionLiteral([Identifier(u'type'), Identifier(u'empty$'), FunctionLiteral([String(u'\\Bibchaptername{}')]), FunctionLiteral([Identifier(u'type')]), Identifier(u'if$'), Identifier(u'chapter'), Identifier(u'tie.or.space.connect'), String(u''), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'format.volumetitle'), Identifier(u'output'), Identifier(u'format.book.crossref'), Identifier(u'output.nonnull'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.pages'), String(u'pages'), Identifier(u'output.check'), Identifier(u'format.note')]), Identifier(u'if$'), Identifier(u'part.of.sentence'), Identifier(u'format.howcited'), Identifier(u'output'), Identifier(u'fin.entry.endnote')]], [u'FUNCTION', [Identifier(u'incollection')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), String(u'author'), Identifier(u'output.check'), Identifier(u'set.after.author.sep'), Identifier(u'output'), Identifier(u'format.artperiodincoll.title'), String(u'title'), Identifier(u'output.check'), Identifier(u'make.translators'), Identifier(u'output'), Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'format.incoll.editor.booktitle'), String(u'booktitle'), Identifier(u'output.check'), Identifier(u'format.volumetitle'), Identifier(u'output'), Identifier(u'format.edition'), Identifier(u'output'), Identifier(u'format.address.publisher.year'), String(u'publisher'), Identifier(u'output.check'), Identifier(u'new.sentence'), Identifier(u'format.series.number'), Identifier(u'output'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.isbn.issn'), Identifier(u'output'), Identifier(u'part.of.sentence'), Identifier(u'format.chapter.pages'), Identifier(u'output'), Identifier(u'format.note')]), FunctionLiteral([Identifier(u'format.volumetitle'), Identifier(u'output'), Identifier(u'format.incoll.inproc.crossref'), Identifier(u'output.nonnull'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.note')]), Identifier(u'if$'), Identifier(u'format.howcited'), Identifier(u'output'), Identifier(u'check.missing.pages'), Identifier(u'fin.entry.endnote')]], [u'FUNCTION', [Identifier(u'inproceedings')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), String(u'author'), Identifier(u'output.check'), Identifier(u'set.after.author.sep'), Identifier(u'output'), Identifier(u'format.artperiodincoll.title'), String(u'title'), Identifier(u'output.check'), Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'format.incoll.editor.booktitle'), String(u'booktitle'), Identifier(u'output.check'), Identifier(u'address'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'organization'), Identifier(u'new.sentence.checka'), Identifier(u'organization'), Identifier(u'output'), Identifier(u'part.of.sentence'), Identifier(u'format.address.publisher.year'), Identifier(u'output')]), FunctionLiteral([Identifier(u'format.address.publisher.year'), String(u'publisher'), Identifier(u'output.check')]), Identifier(u'if$'), Identifier(u'new.sentence'), Identifier(u'series'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'format.series.number'), Identifier(u'output')]), Identifier(u'if$'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.note'), Identifier(u'format.isbn.issn'), Identifier(u'output'), Identifier(u'part.of.sentence'), Identifier(u'format.pages'), Identifier(u'output')]), FunctionLiteral([Identifier(u'format.incoll.inproc.crossref'), Identifier(u'output.nonnull'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.note')]), Identifier(u'if$'), Identifier(u'format.howcited'), Identifier(u'output'), Identifier(u'fin.entry.endnote')]], [u'FUNCTION', [Identifier(u'conference')], [Identifier(u'inproceedings')]], [u'FUNCTION', [Identifier(u'manual')], [Identifier(u'output.bibitem'), Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'organization'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\bibnf{'), Identifier(u'organization'), Identifier(u'*'), String(u'} {} {} {} {}'), Identifier(u'*'), Identifier(u'output.nonnull')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'output.nonnull')]), Identifier(u'if$'), Identifier(u'set.after.author.sep'), Identifier(u'output'), Identifier(u'format.btitle'), String(u'title'), Identifier(u'output.check'), Identifier(u'format.edition'), Identifier(u'output'), Identifier(u'format.address.organization.manual'), Identifier(u'format.date'), Identifier(u'output'), Identifier(u'pages'), Identifier(u'set.period.dash.check'), Identifier(u'format.pages.book'), Identifier(u'output'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.note'), Identifier(u'format.howcited'), Identifier(u'output'), Identifier(u'fin.entry.endnote')]], [u'FUNCTION', [Identifier(u'mastersthesis')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), String(u'author'), Identifier(u'output.check'), Identifier(u'set.after.author.sep'), Identifier(u'output'), Identifier(u'format.btitle'), String(u'title'), Identifier(u'output.check'), Identifier(u'format.thesis'), Identifier(u'output'), Identifier(u'set.comma.pages.check'), Identifier(u'pages'), Identifier(u'new.sentence.checka'), Identifier(u'format.pages'), Identifier(u'output'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.note'), Identifier(u'format.howcited'), Identifier(u'output'), Identifier(u'fin.entry.endnote')]], [u'FUNCTION', [Identifier(u'phdthesis')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), String(u'author'), Identifier(u'output.check'), Identifier(u'set.after.author.sep'), Identifier(u'output'), Identifier(u'format.btitle'), String(u'title'), Identifier(u'output.check'), Identifier(u'format.thesis'), Identifier(u'output'), Identifier(u'set.comma.pages.check'), Identifier(u'pages'), Identifier(u'new.sentence.checka'), Identifier(u'format.pages'), Identifier(u'output'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.note'), Identifier(u'format.howcited'), Identifier(u'output'), Identifier(u'fin.entry.endnote')]], [u'FUNCTION', [Identifier(u'jurthesis')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), String(u'author'), Identifier(u'output.check'), Identifier(u'set.after.author.sep'), Identifier(u'output'), Identifier(u'format.btitle'), String(u'title'), Identifier(u'output.check'), Identifier(u'format.thesis'), Identifier(u'output'), Identifier(u'set.comma.pages.check'), Identifier(u'pages'), Identifier(u'new.sentence.checka'), Identifier(u'format.pages'), Identifier(u'output'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.note'), Identifier(u'format.howcited'), Identifier(u'output'), Identifier(u'fin.entry.endnote')]], [u'FUNCTION', [Identifier(u'booklet')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), String(u'author'), Identifier(u'output.check'), Identifier(u'set.after.author.sep'), Identifier(u'output'), Identifier(u'format.title'), String(u'title'), Identifier(u'output.check'), Identifier(u'format.howpublished.address.year'), Identifier(u'output'), Identifier(u'format.note'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.howcited'), Identifier(u'output'), Identifier(u'fin.entry.endnote')]], [u'FUNCTION', [Identifier(u'misc')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), String(u'author'), Identifier(u'output.check'), Identifier(u'set.after.author.sep'), Identifier(u'output'), Identifier(u'format.title'), Identifier(u'output'), Identifier(u'format.howpublished.address.year'), Identifier(u'output'), Identifier(u'format.note'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.howcited'), Identifier(u'output'), Identifier(u'fin.entry.endnote')]], [u'FUNCTION', [Identifier(u'proceedings')], [Identifier(u'output.bibitem'), Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'organization'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\biblnfont {'), Identifier(u'organization'), Identifier(u'*'), String(u' \\organizationname}'), Identifier(u'*'), Identifier(u'output')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'format.editors'), Identifier(u'output.nonnull')]), Identifier(u'if$'), Identifier(u'set.after.author.sep'), Identifier(u'output'), Identifier(u'format.btitle'), String(u'title'), Identifier(u'output.check'), Identifier(u'new.sentence'), Identifier(u'editor'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'format.proceed.organization'), Identifier(u'output')]), Identifier(u'if$'), Identifier(u'new.sentence'), Identifier(u'format.series.number'), Identifier(u'output.nonnull'), Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([String(u''), Identifier(u'output.nonnull')]), FunctionLiteral([String(u'\\volumeformat {'), Identifier(u'volume'), Identifier(u'*'), String(u'} '), Identifier(u'*'), String(u'volume'), Identifier(u'output.check')]), Identifier(u'if$'), Identifier(u'format.address.publisher.year'), String(u'publisher'), Identifier(u'output.check'), Identifier(u'pages'), Identifier(u'set.period.dash.check'), Identifier(u'format.pages.book'), Identifier(u'output'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.note'), Identifier(u'format.isbn.issn'), Identifier(u'output'), Identifier(u'format.howcited'), Identifier(u'output'), Identifier(u'fin.entry.endnote')]], [u'FUNCTION', [Identifier(u'techreport')], [Identifier(u'output.bibitem'), Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.editors'), String(u'author and editor'), Identifier(u'output.check')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'output.nonnull')]), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'format.editors'), Identifier(u'output.nonnull')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'set.after.author.sep'), Identifier(u'output'), Identifier(u'format.title'), String(u'title'), Identifier(u'output.check'), Identifier(u'institution'), Identifier(u'new.sentence.checka'), Identifier(u'format.address.publisher.year'), Identifier(u'output'), Identifier(u'number'), Identifier(u'new.sentence.checka'), Identifier(u'format.tr.number.jur'), String(u'number'), Identifier(u'output.check'), Identifier(u'pages'), Identifier(u'set.period.dash.check'), Identifier(u'format.pages.book'), Identifier(u'output'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.note'), Identifier(u'format.isbn.issn'), Identifier(u'output'), Identifier(u'format.howcited'), Identifier(u'output'), Identifier(u'fin.entry.endnote')]], [u'FUNCTION', [Identifier(u'www')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), String(u'author'), Identifier(u'output.check'), Identifier(u'set.after.author.sep'), Identifier(u'output'), Identifier(u'format.naked.url'), Identifier(u'output'), Identifier(u'format.howcited'), Identifier(u'output'), Identifier(u'fin.entry.endnote')]], [u'FUNCTION', [Identifier(u'lexicon')], [Identifier(u'output.bibitem'), Identifier(u'set.after.author.sep'), Identifier(u'output'), Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'format.btitle.vol'), String(u'title'), Identifier(u'output.check')]), FunctionLiteral([Identifier(u'format.btitle'), String(u'title'), Identifier(u'output.check')]), Identifier(u'if$'), Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\edbyname{} '), Identifier(u'*'), Identifier(u'editor'), Identifier(u'format.editor.names'), String(u','), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u'\\byname{} '), Identifier(u'author'), Identifier(u'format.names'), Identifier(u'*'), String(u','), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'make.translators'), Identifier(u'output'), Identifier(u'format.volumetitle'), Identifier(u'output'), Identifier(u'format.edition'), Identifier(u'output'), Identifier(u'format.address.publisher.year'), String(u'publisher'), Identifier(u'output.check'), Identifier(u'new.sentence'), Identifier(u'format.juradiss.book'), Identifier(u'output'), Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'format.series.number'), Identifier(u'output')]), FunctionLiteral([Identifier(u'format.book.crossref'), Identifier(u'output.nonnull')]), Identifier(u'if$'), Identifier(u'format.url'), Identifier(u'output'), Identifier(u'format.pages'), Identifier(u'output'), Identifier(u'format.totalpages'), Identifier(u'output'), Identifier(u'format.note'), Identifier(u'format.isbn.issn'), Identifier(u'output'), Identifier(u'format.howcited'), Identifier(u'output'), Identifier(u'fin.entry.endnote')]], [u'STRINGS', [Identifier(u'last.archive'), Identifier(u'last.subarchive')]], [u'FUNCTION', [Identifier(u'init.last.archive')], [String(u''), QuotedVar(u'last.archive'), Identifier(u':='), String(u''), QuotedVar(u'last.subarchive'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'archival')], [Identifier(u'output.bibitem'), Identifier(u'archive'), Identifier(u'empty$'), FunctionLiteral([String(u''), QuotedVar(u'last.archive'), Identifier(u':=')]), FunctionLiteral([Identifier(u'archive'), Identifier(u'last.archive'), Identifier(u'='), FunctionLiteral([String(u'} {'), Identifier(u'archive'), Identifier(u'format.name.sig'), Identifier(u'*'), String(u'} {} {\\jbsamearch{} '), Identifier(u'*'), Identifier(u'*')]), FunctionLiteral([String(u'\\bibanfont{'), Identifier(u'archive'), Identifier(u'*'), String(u'archive'), Identifier(u'output.check'), Identifier(u'shortarchive'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u' \\jbshortarchformat{'), Identifier(u'shortarchive'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), String(u'}'), Identifier(u'*'), String(u'} {'), Identifier(u'archive'), Identifier(u'format.name.sig'), Identifier(u'*'), String(u'} {} {\\jbnotsamearch{} '), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'archive'), QuotedVar(u'last.archive'), Identifier(u':=')]), Identifier(u'if$'), Identifier(u'subarchive'), Identifier(u'empty$'), FunctionLiteral([String(u''), QuotedVar(u'last.subarchive'), Identifier(u':=')]), FunctionLiteral([Identifier(u'subarchive'), Identifier(u'last.subarchive'), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'subarchive'), Identifier(u'output'), Identifier(u'shortsubarchive'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u' \\jbshortsubarchformat{'), Identifier(u'shortsubarchive'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$'), String(u'\\jbsubarchsep{} '), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'subarchive'), QuotedVar(u'last.subarchive'), Identifier(u':=')]), Identifier(u'if$'), Identifier(u'sig1'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\jbarchsig {'), Identifier(u'*'), Identifier(u'subarchive'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\jbsamesubarchindent{} '), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'sig1'), Identifier(u'*'), Identifier(u'sig2'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'. '), Identifier(u'sig2'), Identifier(u'*'), Identifier(u'*'), Identifier(u'sig3'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'. '), Identifier(u'sig3'), Identifier(u'*'), Identifier(u'*'), Identifier(u'sig4'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'. '), Identifier(u'sig4'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$'), String(u'} {'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'archname'), Identifier(u'missing$'), FunctionLiteral([String(u'}'), Identifier(u'*')]), FunctionLiteral([Identifier(u'archname'), String(u'}'), Identifier(u'*'), Identifier(u'output')]), Identifier(u'if$'), Identifier(u'format.howcited'), Identifier(u'output'), Identifier(u'fin.entry.endnote')]], [u'FUNCTION', [Identifier(u'unpublished')], [Identifier(u'misc')]], [u'FUNCTION', [Identifier(u'default.type')], [Identifier(u'misc')]], [u'MACRO', [Identifier(u'jan')], [String(u'\\janname\\ ')]], [u'MACRO', [Identifier(u'feb')], [String(u'\\febname\\ ')]], [u'MACRO', [Identifier(u'mar')], [String(u'\\marname\\ ')]], [u'MACRO', [Identifier(u'apr')], [String(u'\\aprname\\ ')]], [u'MACRO', [Identifier(u'may')], [String(u'\\mayname\\ ')]], [u'MACRO', [Identifier(u'jun')], [String(u'\\junname\\ ')]], [u'MACRO', [Identifier(u'jul')], [String(u'\\julname\\ ')]], [u'MACRO', [Identifier(u'aug')], [String(u'\\augname\\ ')]], [u'MACRO', [Identifier(u'sep')], [String(u'\\sepname\\ ')]], [u'MACRO', [Identifier(u'oct')], [String(u'\\octname\\ ')]], [u'MACRO', [Identifier(u'nov')], [String(u'\\novname\\ ')]], [u'MACRO', [Identifier(u'dec')], [String(u'\\decname\\ ')]], [u'READ'], [u'FUNCTION', [Identifier(u'sortify')], [Identifier(u'purify$'), String(u'l'), Identifier(u'change.case$')]], [u'INTEGERS', [Identifier(u'len')]], [u'FUNCTION', [Identifier(u'chop.word')], [QuotedVar(u's'), Identifier(u':='), QuotedVar(u'len'), Identifier(u':='), Identifier(u's'), Integer(1), Identifier(u'len'), Identifier(u'substring$'), Identifier(u'='), FunctionLiteral([Identifier(u's'), Identifier(u'len'), Integer(1), Identifier(u'+'), Identifier(u'global.max$'), Identifier(u'substring$')]), QuotedVar(u's'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.lab.names')], [QuotedVar(u's'), Identifier(u':='), Identifier(u's'), Integer(1), String(u'{vv~}{ll}'), Identifier(u'format.name$'), Identifier(u's'), Identifier(u'num.names$'), Identifier(u'duplicate$'), Integer(2), Identifier(u'<'), QuotedVar(u'pop$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'duplicate$'), Integer(3), Identifier(u'>'), Identifier(u'swap$'), Identifier(u's'), Identifier(u'swap$'), String(u'{ff }{vv }{ll}{ jj}'), Identifier(u'format.name$'), String(u'others'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([Identifier(u'pop$'), String(u'\\Bibetal'), Identifier(u'*')]), FunctionLiteral([Integer(2), Identifier(u'='), FunctionLiteral([String(u'\\jbbtasep '), Identifier(u'*'), Identifier(u's'), Integer(2), String(u'{vv~}{ll}'), Identifier(u'format.name$'), Identifier(u'*')]), FunctionLiteral([String(u'\\jbbfsasep '), Identifier(u'*'), Identifier(u's'), Integer(2), String(u'{vv~}{ll}'), Identifier(u'format.name$'), Identifier(u'*'), String(u'\\jbbstasep '), Identifier(u'*'), Identifier(u's'), Integer(3), String(u'{vv~}{ll}'), Identifier(u'format.name$'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'year'), Identifier(u'missing$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\jbdy {'), Identifier(u'year'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.editor.lab.names')], [QuotedVar(u's'), Identifier(u':='), Identifier(u's'), Integer(1), String(u'{vv~}{ll}'), Identifier(u'format.name$'), Identifier(u's'), Identifier(u'num.names$'), Identifier(u'duplicate$'), Integer(2), Identifier(u'<'), QuotedVar(u'pop$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'duplicate$'), Integer(3), Identifier(u'>'), Identifier(u'swap$'), Identifier(u's'), Identifier(u'swap$'), String(u'{ff }{vv }{ll}{ jj}'), Identifier(u'format.name$'), String(u'others'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([Identifier(u'pop$'), String(u'\\Bibetal'), Identifier(u'*')]), FunctionLiteral([Integer(2), Identifier(u'='), FunctionLiteral([String(u'\\jbbtesep '), Identifier(u'*'), Identifier(u's'), Integer(2), String(u'{vv~}{ll}'), Identifier(u'format.name$'), Identifier(u'*')]), FunctionLiteral([String(u'\\jbbfsesep '), Identifier(u'*'), Identifier(u's'), Integer(2), String(u'{vv~}{ll}'), Identifier(u'format.name$'), Identifier(u'*'), String(u'\\jbbstesep '), Identifier(u'*'), Identifier(u's'), Integer(3), String(u'{vv~}{ll}'), Identifier(u'format.name$'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'year'), Identifier(u'missing$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'\\jbdy {'), Identifier(u'year'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'author.key.label')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'cite$'), Integer(1), Integer(3), Identifier(u'substring$')]), QuotedVar(u'key'), Identifier(u'if$')]), FunctionLiteral([Identifier(u'author'), Identifier(u'format.lab.names')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'author.editor.key.label')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'cite$'), Integer(1), Integer(3), Identifier(u'substring$')]), QuotedVar(u'key'), Identifier(u'if$')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'format.editor.lab.names')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'author'), Identifier(u'format.lab.names')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'editor.key.label')], [Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'cite$'), Integer(1), Integer(3), Identifier(u'substring$')]), QuotedVar(u'key'), Identifier(u'if$')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'format.editor.lab.names')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'calc.label')], [Identifier(u'type$'), String(u'book'), Identifier(u'='), Identifier(u'type$'), String(u'inbook'), Identifier(u'='), Identifier(u'or'), Identifier(u'type$'), String(u'incollection'), Identifier(u'='), Identifier(u'or'), Identifier(u'type$'), String(u'commented'), Identifier(u'='), Identifier(u'or'), Identifier(u'type$'), String(u'lexicon'), Identifier(u'='), Identifier(u'or'), QuotedVar(u'author.editor.key.label'), FunctionLiteral([Identifier(u'type$'), String(u'proceedings'), Identifier(u'='), QuotedVar(u'editor.key.label'), QuotedVar(u'author.key.label'), Identifier(u'if$')]), Identifier(u'if$'), QuotedVar(u'label'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'calc.dummy.label')], [Identifier(u'type$'), String(u'book'), Identifier(u'='), Identifier(u'type$'), String(u'inbook'), Identifier(u'='), Identifier(u'or'), Identifier(u'type$'), String(u'incollection'), Identifier(u'='), Identifier(u'or'), Identifier(u'type$'), String(u'commented'), Identifier(u'='), Identifier(u'or'), QuotedVar(u'author.editor.key.label'), FunctionLiteral([Identifier(u'type$'), String(u'proceedings'), Identifier(u'='), QuotedVar(u'editor.key.label'), QuotedVar(u'author.key.label'), Identifier(u'if$')]), Identifier(u'if$'), QuotedVar(u'dummy.label'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'sort.format.names')], [QuotedVar(u's'), Identifier(u':='), Integer(1), QuotedVar(u'nameptr'), Identifier(u':='), String(u''), Identifier(u's'), Identifier(u'num.names$'), QuotedVar(u'numnames'), Identifier(u':='), Identifier(u'numnames'), QuotedVar(u'namesleft'), Identifier(u':='), FunctionLiteral([Identifier(u'namesleft'), Integer(0), Identifier(u'>')]), FunctionLiteral([Identifier(u'nameptr'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u' '), Identifier(u'*')]), QuotedVar(u'skip$'), Identifier(u'if$'), Identifier(u's'), Identifier(u'nameptr'), String(u'{ll{ }}{ ff{ }}{ vv{ }}{ jj{ }}'), Identifier(u'format.name$'), QuotedVar(u't'), Identifier(u':='), Identifier(u'nameptr'), Identifier(u'numnames'), Identifier(u'='), Identifier(u't'), String(u'\\bibnf {others} {} {} {} {}'), Identifier(u'='), Identifier(u'and'), FunctionLiteral([String(u'\\Bibetal'), Identifier(u'*')]), FunctionLiteral([Identifier(u't'), Identifier(u'sortify'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'nameptr'), Integer(1), Identifier(u'+'), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u'namesleft'), Integer(1), Identifier(u'-'), QuotedVar(u'namesleft'), Identifier(u':=')]), Identifier(u'while$')]], [u'FUNCTION', [Identifier(u'sort.format.title')], [QuotedVar(u't'), Identifier(u':='), String(u'A '), Integer(2), String(u'An '), Integer(3), String(u'Der '), Integer(4), String(u'Die '), Integer(4), String(u'Das '), Integer(4), String(u'Ein '), Integer(4), String(u'Eine '), Integer(5), String(u'The '), Integer(4), Identifier(u't'), Identifier(u'chop.word'), Identifier(u'chop.word'), Identifier(u'chop.word'), Identifier(u'chop.word'), Identifier(u'chop.word'), Identifier(u'chop.word'), Identifier(u'chop.word'), Identifier(u'chop.word'), Identifier(u'sortify'), Integer(1), Identifier(u'global.max$'), Identifier(u'substring$')]], [u'FUNCTION', [Identifier(u'author.sort')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'key'), Identifier(u'sortify')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'author'), Identifier(u'sort.format.names')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'author.editor.sort')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'key'), Identifier(u'sortify')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'sort.format.names')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'author'), Identifier(u'sort.format.names')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'editor.sort')], [Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), FunctionLiteral([String(u'to sort, need editor or key in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), String(u'')]), FunctionLiteral([Identifier(u'key'), Identifier(u'sortify')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'sort.format.names')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'archival.sort')], [Identifier(u'archive'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'shortarchive'), Identifier(u'empty$'), FunctionLiteral([String(u'to sort, need archive or shortarchive in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), String(u'')]), FunctionLiteral([Identifier(u'shortarchive'), Identifier(u'sortify')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'archive'), Identifier(u'sortify')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'presort')], [Identifier(u'calc.label'), Identifier(u'calc.dummy.label'), Identifier(u'dummy.label'), Identifier(u'sortify'), String(u' '), Identifier(u'*'), Identifier(u'sortkey'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'type$'), String(u'book'), Identifier(u'='), Identifier(u'type$'), String(u'incollection'), Identifier(u'='), Identifier(u'or'), Identifier(u'type$'), String(u'inbook'), Identifier(u'='), Identifier(u'or'), Identifier(u'type$'), String(u'commented'), Identifier(u'='), Identifier(u'or'), QuotedVar(u'author.editor.sort'), FunctionLiteral([Identifier(u'type$'), String(u'proceedings'), Identifier(u'='), QuotedVar(u'editor.sort'), FunctionLiteral([Identifier(u'type$'), String(u'archival'), Identifier(u'='), QuotedVar(u'archival.sort'), QuotedVar(u'author.sort'), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'sortkey'), Identifier(u'sort.format.names')]), Identifier(u'if$'), Identifier(u'type$'), String(u'archival'), Identifier(u'='), Identifier(u'not'), FunctionLiteral([String(u' '), Identifier(u'*'), Identifier(u'year'), Identifier(u'field.or.null'), Identifier(u'sortify'), Identifier(u'*'), String(u' '), Identifier(u'*'), Identifier(u'title'), Identifier(u'field.or.null'), Identifier(u'sort.format.title'), Identifier(u'*')]), FunctionLiteral([String(u' '), Identifier(u'*'), Identifier(u'subarchive'), Identifier(u'field.or.null'), Identifier(u'sortify'), Identifier(u'*'), String(u' '), Identifier(u'*'), Identifier(u'sig1'), Identifier(u'field.or.null'), Identifier(u'sortify'), Identifier(u'*'), String(u' '), Identifier(u'*'), Identifier(u'sig2'), Identifier(u'field.or.null'), Identifier(u'sortify'), Identifier(u'*'), String(u' '), Identifier(u'*'), Identifier(u'sig3'), Identifier(u'field.or.null'), Identifier(u'sortify'), Identifier(u'*'), String(u' '), Identifier(u'*'), Identifier(u'sig4'), Identifier(u'field.or.null'), Identifier(u'sortify'), Identifier(u'*')]), Identifier(u'if$'), Integer(1), Identifier(u'entry.max$'), Identifier(u'substring$'), QuotedVar(u'sort.label'), Identifier(u':='), Identifier(u'sort.label'), Identifier(u'*'), Integer(1), Identifier(u'entry.max$'), Identifier(u'substring$'), QuotedVar(u'sort.key$'), Identifier(u':=')]], [u'ITERATE', [Identifier(u'presort')]], [u'SORT'], [u'INTEGERS', [Identifier(u'last.extra.num'), Identifier(u'number.label'), Identifier(u'extra.extra.num')]], [u'FUNCTION', [Identifier(u'make.extra.label')], [Identifier(u'last.extra.num'), Integer(122), Identifier(u'<'), FunctionLiteral([Identifier(u'last.extra.num'), Integer(1), Identifier(u'+')]), FunctionLiteral([Identifier(u'extra.extra.num'), Integer(0), Identifier(u'='), FunctionLiteral([String(u'a'), Identifier(u'chr.to.int$')]), FunctionLiteral([Identifier(u'extra.extra.num'), Integer(1), Identifier(u'+')]), Identifier(u'if$'), QuotedVar(u'extra.extra.num'), Identifier(u':='), String(u'a'), Identifier(u'chr.to.int$')]), Identifier(u'if$'), QuotedVar(u'last.extra.num'), Identifier(u':='), Identifier(u'extra.extra.num'), Integer(0), Identifier(u'='), FunctionLiteral([Identifier(u'last.extra.num'), Identifier(u'int.to.chr$')]), FunctionLiteral([Identifier(u'extra.extra.num'), Identifier(u'int.to.chr$'), QuotedVar(u'extra.label'), Identifier(u':='), Identifier(u'extra.label'), Identifier(u'last.extra.num'), Identifier(u'int.to.chr$'), Identifier(u'*')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'forward.pass')], [Identifier(u'w'), Identifier(u'dummy.label'), Identifier(u'='), FunctionLiteral([Identifier(u'make.extra.label'), QuotedVar(u'extra.label'), Identifier(u':=')]), FunctionLiteral([String(u'a'), Identifier(u'chr.to.int$'), QuotedVar(u'last.extra.num'), Identifier(u':='), Integer(0), QuotedVar(u'extra.extra.num'), Identifier(u':='), String(u''), QuotedVar(u'extra.label'), Identifier(u':='), Identifier(u'dummy.label'), QuotedVar(u'w'), Identifier(u':=')]), Identifier(u'if$'), Identifier(u'number.label'), Integer(1), Identifier(u'+'), QuotedVar(u'number.label'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'reverse.pass')], [Identifier(u'x'), String(u'b'), Identifier(u'='), FunctionLiteral([String(u'a'), QuotedVar(u'extra.label'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$'), Identifier(u'extra.label'), QuotedVar(u'x'), Identifier(u':='), Identifier(u'extra.label'), Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u''), Identifier(u'swap$'), Identifier(u'*')]), Identifier(u'if$'), QuotedVar(u'extra.label'), Identifier(u':='), Identifier(u'dummy.label'), Identifier(u'extra.label'), Identifier(u'*'), QuotedVar(u'dummy.label'), Identifier(u':=')]], [u'ITERATE', [Identifier(u'forward.pass')]], [u'REVERSE', [Identifier(u'reverse.pass')]], [u'FUNCTION', [Identifier(u'bib.sort.order')], [Identifier(u'sort.label'), QuotedVar(u'sort.key$'), Identifier(u':=')]], [u'ITERATE', [Identifier(u'bib.sort.order')]], [u'SORT'], [u'FUNCTION', [Identifier(u'set.current.authors')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'organization'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'cite$'), QuotedVar(u'current-authors'), Identifier(u':=')]), FunctionLiteral([Identifier(u'organization'), QuotedVar(u'current-authors'), Identifier(u':=')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'format.names'), Integer(1), Identifier(u'entry.max$'), Identifier(u'substring$'), QuotedVar(u'current-authors'), Identifier(u':=')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'author'), Identifier(u'format.names'), Integer(1), Identifier(u'entry.max$'), Identifier(u'substring$'), QuotedVar(u'current-authors'), Identifier(u':=')]), Identifier(u'if$')]], [u'STRINGS', [Identifier(u'previous-authors')]], [u'FUNCTION', [Identifier(u'initialize.previous.authors')], [String(u''), QuotedVar(u'previous-authors'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'mark.repeat.authors')], [Identifier(u'current-authors'), Identifier(u'previous-authors'), Identifier(u'='), FunctionLiteral([Integer(1), QuotedVar(u'repeat-authors'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$'), Identifier(u'current-authors'), QuotedVar(u'previous-authors'), Identifier(u':=')]], [u'ITERATE', [Identifier(u'set.current.authors')]], [u'EXECUTE', [Identifier(u'initialize.previous.authors')]], [u'ITERATE', [Identifier(u'mark.repeat.authors')]], [u'EXECUTE', [Identifier(u'initialize.previous.authors')]], [u'REVERSE', [Identifier(u'mark.repeat.authors')]], [u'FUNCTION', [Identifier(u'begin.bib')], [Identifier(u'preamble$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'preamble$'), Identifier(u'write$'), Identifier(u'newline$')]), Identifier(u'if$'), String(u'%'), Identifier(u'write$'), Identifier(u'newline$'), String(u'% This bibliography was produced by using jurabib.bst'), Identifier(u'write$'), Identifier(u'newline$'), String(u'%'), Identifier(u'write$'), Identifier(u'newline$'), String(u'\\begin{thebibliography}{}'), Identifier(u'write$'), Identifier(u'newline$')]], [u'EXECUTE', [Identifier(u'begin.bib')]], [u'EXECUTE', [Identifier(u'init.state.consts')]], [u'ITERATE', [Identifier(u'call.type$')]], [u'FUNCTION', [Identifier(u'end.bib')], [Identifier(u'newline$'), String(u'\\end{thebibliography}'), Identifier(u'write$'), Identifier(u'newline$')]], [u'EXECUTE', [Identifier(u'end.bib')]]] ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5676122 pybtex-0.24.0/tests/bst_parser_test/plain.py0000644000175000001440000013171500000000000020711 0ustar00agusers00000000000000from __future__ import unicode_literals from pybtex.bibtex.interpreter import ( FunctionLiteral, Identifier, Integer, QuotedVar, String ) bst = [[u'ENTRY', [Identifier(u'address'), Identifier(u'author'), Identifier(u'booktitle'), Identifier(u'chapter'), Identifier(u'edition'), Identifier(u'editor'), Identifier(u'howpublished'), Identifier(u'institution'), Identifier(u'journal'), Identifier(u'key'), Identifier(u'month'), Identifier(u'note'), Identifier(u'number'), Identifier(u'organization'), Identifier(u'pages'), Identifier(u'publisher'), Identifier(u'school'), Identifier(u'series'), Identifier(u'title'), Identifier(u'type'), Identifier(u'volume'), Identifier(u'year')], [], [Identifier(u'label')]], [u'INTEGERS', [Identifier(u'output.state'), Identifier(u'before.all'), Identifier(u'mid.sentence'), Identifier(u'after.sentence'), Identifier(u'after.block')]], [u'FUNCTION', [Identifier(u'init.state.consts')], [Integer(0), QuotedVar(u'before.all'), Identifier(u':='), Integer(1), QuotedVar(u'mid.sentence'), Identifier(u':='), Integer(2), QuotedVar(u'after.sentence'), Identifier(u':='), Integer(3), QuotedVar(u'after.block'), Identifier(u':=')]], [u'STRINGS', [Identifier(u's'), Identifier(u't')]], [u'FUNCTION', [Identifier(u'output.nonnull')], [QuotedVar(u's'), Identifier(u':='), Identifier(u'output.state'), Identifier(u'mid.sentence'), Identifier(u'='), FunctionLiteral([String(u', '), Identifier(u'*'), Identifier(u'write$')]), FunctionLiteral([Identifier(u'output.state'), Identifier(u'after.block'), Identifier(u'='), FunctionLiteral([Identifier(u'add.period$'), Identifier(u'write$'), Identifier(u'newline$'), String(u'\\newblock '), Identifier(u'write$')]), FunctionLiteral([Identifier(u'output.state'), Identifier(u'before.all'), Identifier(u'='), QuotedVar(u'write$'), FunctionLiteral([Identifier(u'add.period$'), String(u' '), Identifier(u'*'), Identifier(u'write$')]), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'mid.sentence'), QuotedVar(u'output.state'), Identifier(u':=')]), Identifier(u'if$'), Identifier(u's')]], [u'FUNCTION', [Identifier(u'output')], [Identifier(u'duplicate$'), Identifier(u'empty$'), QuotedVar(u'pop$'), QuotedVar(u'output.nonnull'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'output.check')], [QuotedVar(u't'), Identifier(u':='), Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), String(u'empty '), Identifier(u't'), Identifier(u'*'), String(u' in '), Identifier(u'*'), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$')]), QuotedVar(u'output.nonnull'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'output.bibitem')], [Identifier(u'newline$'), String(u'\\bibitem{'), Identifier(u'write$'), Identifier(u'cite$'), Identifier(u'write$'), String(u'}'), Identifier(u'write$'), Identifier(u'newline$'), String(u''), Identifier(u'before.all'), QuotedVar(u'output.state'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'fin.entry')], [Identifier(u'add.period$'), Identifier(u'write$'), Identifier(u'newline$')]], [u'FUNCTION', [Identifier(u'new.block')], [Identifier(u'output.state'), Identifier(u'before.all'), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'after.block'), QuotedVar(u'output.state'), Identifier(u':=')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'new.sentence')], [Identifier(u'output.state'), Identifier(u'after.block'), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'output.state'), Identifier(u'before.all'), Identifier(u'='), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'after.sentence'), QuotedVar(u'output.state'), Identifier(u':=')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'not')], [FunctionLiteral([Integer(0)]), FunctionLiteral([Integer(1)]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'and')], [QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'pop$'), Integer(0)]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'or')], [FunctionLiteral([Identifier(u'pop$'), Integer(1)]), QuotedVar(u'skip$'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'new.block.checka')], [Identifier(u'empty$'), QuotedVar(u'skip$'), QuotedVar(u'new.block'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'new.block.checkb')], [Identifier(u'empty$'), Identifier(u'swap$'), Identifier(u'empty$'), Identifier(u'and'), QuotedVar(u'skip$'), QuotedVar(u'new.block'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'new.sentence.checka')], [Identifier(u'empty$'), QuotedVar(u'skip$'), QuotedVar(u'new.sentence'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'new.sentence.checkb')], [Identifier(u'empty$'), Identifier(u'swap$'), Identifier(u'empty$'), Identifier(u'and'), QuotedVar(u'skip$'), QuotedVar(u'new.sentence'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'field.or.null')], [Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), String(u'')]), QuotedVar(u'skip$'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'emphasize')], [Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), String(u'')]), FunctionLiteral([String(u'{\\em '), Identifier(u'swap$'), Identifier(u'*'), String(u'}'), Identifier(u'*')]), Identifier(u'if$')]], [u'INTEGERS', [Identifier(u'nameptr'), Identifier(u'namesleft'), Identifier(u'numnames')]], [u'FUNCTION', [Identifier(u'format.names')], [QuotedVar(u's'), Identifier(u':='), Integer(1), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u's'), Identifier(u'num.names$'), QuotedVar(u'numnames'), Identifier(u':='), Identifier(u'numnames'), QuotedVar(u'namesleft'), Identifier(u':='), FunctionLiteral([Identifier(u'namesleft'), Integer(0), Identifier(u'>')]), FunctionLiteral([Identifier(u's'), Identifier(u'nameptr'), String(u'{ff~}{vv~}{ll}{, jj}'), Identifier(u'format.name$'), QuotedVar(u't'), Identifier(u':='), Identifier(u'nameptr'), Integer(1), Identifier(u'>'), FunctionLiteral([Identifier(u'namesleft'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u', '), Identifier(u'*'), Identifier(u't'), Identifier(u'*')]), FunctionLiteral([Identifier(u'numnames'), Integer(2), Identifier(u'>'), FunctionLiteral([String(u','), Identifier(u'*')]), QuotedVar(u'skip$'), Identifier(u'if$'), Identifier(u't'), String(u'others'), Identifier(u'='), FunctionLiteral([String(u' et~al.'), Identifier(u'*')]), FunctionLiteral([String(u' and '), Identifier(u'*'), Identifier(u't'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), QuotedVar(u't'), Identifier(u'if$'), Identifier(u'nameptr'), Integer(1), Identifier(u'+'), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u'namesleft'), Integer(1), Identifier(u'-'), QuotedVar(u'namesleft'), Identifier(u':=')]), Identifier(u'while$')]], [u'FUNCTION', [Identifier(u'format.authors')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'author'), Identifier(u'format.names')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.editors')], [Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'format.names'), Identifier(u'editor'), Identifier(u'num.names$'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u', editors'), Identifier(u'*')]), FunctionLiteral([String(u', editor'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.title')], [Identifier(u'title'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'title'), String(u't'), Identifier(u'change.case$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'n.dashify')], [QuotedVar(u't'), Identifier(u':='), String(u''), FunctionLiteral([Identifier(u't'), Identifier(u'empty$'), Identifier(u'not')]), FunctionLiteral([Identifier(u't'), Integer(1), Integer(1), Identifier(u'substring$'), String(u'-'), Identifier(u'='), FunctionLiteral([Identifier(u't'), Integer(1), Integer(2), Identifier(u'substring$'), String(u'--'), Identifier(u'='), Identifier(u'not'), FunctionLiteral([String(u'--'), Identifier(u'*'), Identifier(u't'), Integer(2), Identifier(u'global.max$'), Identifier(u'substring$'), QuotedVar(u't'), Identifier(u':=')]), FunctionLiteral([FunctionLiteral([Identifier(u't'), Integer(1), Integer(1), Identifier(u'substring$'), String(u'-'), Identifier(u'=')]), FunctionLiteral([String(u'-'), Identifier(u'*'), Identifier(u't'), Integer(2), Identifier(u'global.max$'), Identifier(u'substring$'), QuotedVar(u't'), Identifier(u':=')]), Identifier(u'while$')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u't'), Integer(1), Integer(1), Identifier(u'substring$'), Identifier(u'*'), Identifier(u't'), Integer(2), Identifier(u'global.max$'), Identifier(u'substring$'), QuotedVar(u't'), Identifier(u':=')]), Identifier(u'if$')]), Identifier(u'while$')]], [u'FUNCTION', [Identifier(u'format.date')], [Identifier(u'year'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'month'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([String(u"there's a month but no year in "), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), Identifier(u'month')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'month'), Identifier(u'empty$'), QuotedVar(u'year'), FunctionLiteral([Identifier(u'month'), String(u' '), Identifier(u'*'), Identifier(u'year'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.btitle')], [Identifier(u'title'), Identifier(u'emphasize')]], [u'FUNCTION', [Identifier(u'tie.or.space.connect')], [Identifier(u'duplicate$'), Identifier(u'text.length$'), Integer(3), Identifier(u'<'), FunctionLiteral([String(u'~')]), FunctionLiteral([String(u' ')]), Identifier(u'if$'), Identifier(u'swap$'), Identifier(u'*'), Identifier(u'*')]], [u'FUNCTION', [Identifier(u'either.or.check')], [Identifier(u'empty$'), QuotedVar(u'pop$'), FunctionLiteral([String(u"can't use both "), Identifier(u'swap$'), Identifier(u'*'), String(u' fields in '), Identifier(u'*'), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.bvolume')], [Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([String(u'volume'), Identifier(u'volume'), Identifier(u'tie.or.space.connect'), Identifier(u'series'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u' of '), Identifier(u'*'), Identifier(u'series'), Identifier(u'emphasize'), Identifier(u'*')]), Identifier(u'if$'), String(u'volume and number'), Identifier(u'number'), Identifier(u'either.or.check')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.number.series')], [Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'number'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'series'), Identifier(u'field.or.null')]), FunctionLiteral([Identifier(u'output.state'), Identifier(u'mid.sentence'), Identifier(u'='), FunctionLiteral([String(u'number')]), FunctionLiteral([String(u'Number')]), Identifier(u'if$'), Identifier(u'number'), Identifier(u'tie.or.space.connect'), Identifier(u'series'), Identifier(u'empty$'), FunctionLiteral([String(u"there's a number but no series in "), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$')]), FunctionLiteral([String(u' in '), Identifier(u'*'), Identifier(u'series'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), FunctionLiteral([String(u'')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.edition')], [Identifier(u'edition'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'output.state'), Identifier(u'mid.sentence'), Identifier(u'='), FunctionLiteral([Identifier(u'edition'), String(u'l'), Identifier(u'change.case$'), String(u' edition'), Identifier(u'*')]), FunctionLiteral([Identifier(u'edition'), String(u't'), Identifier(u'change.case$'), String(u' edition'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'INTEGERS', [Identifier(u'multiresult')]], [u'FUNCTION', [Identifier(u'multi.page.check')], [QuotedVar(u't'), Identifier(u':='), Integer(0), QuotedVar(u'multiresult'), Identifier(u':='), FunctionLiteral([Identifier(u'multiresult'), Identifier(u'not'), Identifier(u't'), Identifier(u'empty$'), Identifier(u'not'), Identifier(u'and')]), FunctionLiteral([Identifier(u't'), Integer(1), Integer(1), Identifier(u'substring$'), Identifier(u'duplicate$'), String(u'-'), Identifier(u'='), Identifier(u'swap$'), Identifier(u'duplicate$'), String(u','), Identifier(u'='), Identifier(u'swap$'), String(u'+'), Identifier(u'='), Identifier(u'or'), Identifier(u'or'), FunctionLiteral([Integer(1), QuotedVar(u'multiresult'), Identifier(u':=')]), FunctionLiteral([Identifier(u't'), Integer(2), Identifier(u'global.max$'), Identifier(u'substring$'), QuotedVar(u't'), Identifier(u':=')]), Identifier(u'if$')]), Identifier(u'while$'), Identifier(u'multiresult')]], [u'FUNCTION', [Identifier(u'format.pages')], [Identifier(u'pages'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'pages'), Identifier(u'multi.page.check'), FunctionLiteral([String(u'pages'), Identifier(u'pages'), Identifier(u'n.dashify'), Identifier(u'tie.or.space.connect')]), FunctionLiteral([String(u'page'), Identifier(u'pages'), Identifier(u'tie.or.space.connect')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.vol.num.pages')], [Identifier(u'volume'), Identifier(u'field.or.null'), Identifier(u'number'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u'('), Identifier(u'number'), Identifier(u'*'), String(u')'), Identifier(u'*'), Identifier(u'*'), Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([String(u"there's a number but no volume in "), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'pages'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'duplicate$'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'pop$'), Identifier(u'format.pages')]), FunctionLiteral([String(u':'), Identifier(u'*'), Identifier(u'pages'), Identifier(u'n.dashify'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.chapter.pages')], [Identifier(u'chapter'), Identifier(u'empty$'), QuotedVar(u'format.pages'), FunctionLiteral([Identifier(u'type'), Identifier(u'empty$'), FunctionLiteral([String(u'chapter')]), FunctionLiteral([Identifier(u'type'), String(u'l'), Identifier(u'change.case$')]), Identifier(u'if$'), Identifier(u'chapter'), Identifier(u'tie.or.space.connect'), Identifier(u'pages'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([String(u', '), Identifier(u'*'), Identifier(u'format.pages'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.in.ed.booktitle')], [Identifier(u'booktitle'), Identifier(u'empty$'), FunctionLiteral([String(u'')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([String(u'In '), Identifier(u'booktitle'), Identifier(u'emphasize'), Identifier(u'*')]), FunctionLiteral([String(u'In '), Identifier(u'format.editors'), Identifier(u'*'), String(u', '), Identifier(u'*'), Identifier(u'booktitle'), Identifier(u'emphasize'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'empty.misc.check')], [Identifier(u'author'), Identifier(u'empty$'), Identifier(u'title'), Identifier(u'empty$'), Identifier(u'howpublished'), Identifier(u'empty$'), Identifier(u'month'), Identifier(u'empty$'), Identifier(u'year'), Identifier(u'empty$'), Identifier(u'note'), Identifier(u'empty$'), Identifier(u'and'), Identifier(u'and'), Identifier(u'and'), Identifier(u'and'), Identifier(u'and'), Identifier(u'key'), Identifier(u'empty$'), Identifier(u'not'), Identifier(u'and'), FunctionLiteral([String(u'all relevant fields are empty in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$')]), QuotedVar(u'skip$'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.thesis.type')], [Identifier(u'type'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'pop$'), Identifier(u'type'), String(u't'), Identifier(u'change.case$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.tr.number')], [Identifier(u'type'), Identifier(u'empty$'), FunctionLiteral([String(u'Technical Report')]), QuotedVar(u'type'), Identifier(u'if$'), Identifier(u'number'), Identifier(u'empty$'), FunctionLiteral([String(u't'), Identifier(u'change.case$')]), FunctionLiteral([Identifier(u'number'), Identifier(u'tie.or.space.connect')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.article.crossref')], [Identifier(u'key'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'journal'), Identifier(u'empty$'), FunctionLiteral([String(u'need key or journal for '), Identifier(u'cite$'), Identifier(u'*'), String(u' to crossref '), Identifier(u'*'), Identifier(u'crossref'), Identifier(u'*'), Identifier(u'warning$'), String(u'')]), FunctionLiteral([String(u'In {\\em '), Identifier(u'journal'), Identifier(u'*'), String(u'\\/}'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u'In '), Identifier(u'key'), Identifier(u'*')]), Identifier(u'if$'), String(u' \\cite{'), Identifier(u'*'), Identifier(u'crossref'), Identifier(u'*'), String(u'}'), Identifier(u'*')]], [u'FUNCTION', [Identifier(u'format.crossref.editor')], [Identifier(u'editor'), Integer(1), String(u'{vv~}{ll}'), Identifier(u'format.name$'), Identifier(u'editor'), Identifier(u'num.names$'), Identifier(u'duplicate$'), Integer(2), Identifier(u'>'), FunctionLiteral([Identifier(u'pop$'), String(u' et~al.'), Identifier(u'*')]), FunctionLiteral([Integer(2), Identifier(u'<'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'editor'), Integer(2), String(u'{ff }{vv }{ll}{ jj}'), Identifier(u'format.name$'), String(u'others'), Identifier(u'='), FunctionLiteral([String(u' et~al.'), Identifier(u'*')]), FunctionLiteral([String(u' and '), Identifier(u'*'), Identifier(u'editor'), Integer(2), String(u'{vv~}{ll}'), Identifier(u'format.name$'), Identifier(u'*')]), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'format.book.crossref')], [Identifier(u'volume'), Identifier(u'empty$'), FunctionLiteral([String(u'empty volume in '), Identifier(u'cite$'), Identifier(u'*'), String(u"'s crossref of "), Identifier(u'*'), Identifier(u'crossref'), Identifier(u'*'), Identifier(u'warning$'), String(u'In ')]), FunctionLiteral([String(u'Volume'), Identifier(u'volume'), Identifier(u'tie.or.space.connect'), String(u' of '), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'editor'), Identifier(u'empty$'), Identifier(u'editor'), Identifier(u'field.or.null'), Identifier(u'author'), Identifier(u'field.or.null'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'series'), Identifier(u'empty$'), FunctionLiteral([String(u'need editor, key, or series for '), Identifier(u'cite$'), Identifier(u'*'), String(u' to crossref '), Identifier(u'*'), Identifier(u'crossref'), Identifier(u'*'), Identifier(u'warning$'), String(u''), Identifier(u'*')]), FunctionLiteral([String(u'{\\em '), Identifier(u'*'), Identifier(u'series'), Identifier(u'*'), String(u'\\/}'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'key'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'format.crossref.editor'), Identifier(u'*')]), Identifier(u'if$'), String(u' \\cite{'), Identifier(u'*'), Identifier(u'crossref'), Identifier(u'*'), String(u'}'), Identifier(u'*')]], [u'FUNCTION', [Identifier(u'format.incoll.inproc.crossref')], [Identifier(u'editor'), Identifier(u'empty$'), Identifier(u'editor'), Identifier(u'field.or.null'), Identifier(u'author'), Identifier(u'field.or.null'), Identifier(u'='), Identifier(u'or'), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'booktitle'), Identifier(u'empty$'), FunctionLiteral([String(u'need editor, key, or booktitle for '), Identifier(u'cite$'), Identifier(u'*'), String(u' to crossref '), Identifier(u'*'), Identifier(u'crossref'), Identifier(u'*'), Identifier(u'warning$'), String(u'')]), FunctionLiteral([String(u'In {\\em '), Identifier(u'booktitle'), Identifier(u'*'), String(u'\\/}'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u'In '), Identifier(u'key'), Identifier(u'*')]), Identifier(u'if$')]), FunctionLiteral([String(u'In '), Identifier(u'format.crossref.editor'), Identifier(u'*')]), Identifier(u'if$'), String(u' \\cite{'), Identifier(u'*'), Identifier(u'crossref'), Identifier(u'*'), String(u'}'), Identifier(u'*')]], [u'FUNCTION', [Identifier(u'article')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), String(u'author'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'format.title'), String(u'title'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'journal'), Identifier(u'emphasize'), String(u'journal'), Identifier(u'output.check'), Identifier(u'format.vol.num.pages'), Identifier(u'output'), Identifier(u'format.date'), String(u'year'), Identifier(u'output.check')]), FunctionLiteral([Identifier(u'format.article.crossref'), Identifier(u'output.nonnull'), Identifier(u'format.pages'), Identifier(u'output')]), Identifier(u'if$'), Identifier(u'new.block'), Identifier(u'note'), Identifier(u'output'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'book')], [Identifier(u'output.bibitem'), Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.editors'), String(u'author and editor'), Identifier(u'output.check')]), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'output.nonnull'), Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([String(u'author and editor'), Identifier(u'editor'), Identifier(u'either.or.check')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'new.block'), Identifier(u'format.btitle'), String(u'title'), Identifier(u'output.check'), Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'format.bvolume'), Identifier(u'output'), Identifier(u'new.block'), Identifier(u'format.number.series'), Identifier(u'output'), Identifier(u'new.sentence'), Identifier(u'publisher'), String(u'publisher'), Identifier(u'output.check'), Identifier(u'address'), Identifier(u'output')]), FunctionLiteral([Identifier(u'new.block'), Identifier(u'format.book.crossref'), Identifier(u'output.nonnull')]), Identifier(u'if$'), Identifier(u'format.edition'), Identifier(u'output'), Identifier(u'format.date'), String(u'year'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'note'), Identifier(u'output'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'booklet')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), Identifier(u'output'), Identifier(u'new.block'), Identifier(u'format.title'), String(u'title'), Identifier(u'output.check'), Identifier(u'howpublished'), Identifier(u'address'), Identifier(u'new.block.checkb'), Identifier(u'howpublished'), Identifier(u'output'), Identifier(u'address'), Identifier(u'output'), Identifier(u'format.date'), Identifier(u'output'), Identifier(u'new.block'), Identifier(u'note'), Identifier(u'output'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'inbook')], [Identifier(u'output.bibitem'), Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'format.editors'), String(u'author and editor'), Identifier(u'output.check')]), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'output.nonnull'), Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([String(u'author and editor'), Identifier(u'editor'), Identifier(u'either.or.check')]), QuotedVar(u'skip$'), Identifier(u'if$')]), Identifier(u'if$'), Identifier(u'new.block'), Identifier(u'format.btitle'), String(u'title'), Identifier(u'output.check'), Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'format.bvolume'), Identifier(u'output'), Identifier(u'format.chapter.pages'), String(u'chapter and pages'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'format.number.series'), Identifier(u'output'), Identifier(u'new.sentence'), Identifier(u'publisher'), String(u'publisher'), Identifier(u'output.check'), Identifier(u'address'), Identifier(u'output')]), FunctionLiteral([Identifier(u'format.chapter.pages'), String(u'chapter and pages'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'format.book.crossref'), Identifier(u'output.nonnull')]), Identifier(u'if$'), Identifier(u'format.edition'), Identifier(u'output'), Identifier(u'format.date'), String(u'year'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'note'), Identifier(u'output'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'incollection')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), String(u'author'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'format.title'), String(u'title'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'format.in.ed.booktitle'), String(u'booktitle'), Identifier(u'output.check'), Identifier(u'format.bvolume'), Identifier(u'output'), Identifier(u'format.number.series'), Identifier(u'output'), Identifier(u'format.chapter.pages'), Identifier(u'output'), Identifier(u'new.sentence'), Identifier(u'publisher'), String(u'publisher'), Identifier(u'output.check'), Identifier(u'address'), Identifier(u'output'), Identifier(u'format.edition'), Identifier(u'output'), Identifier(u'format.date'), String(u'year'), Identifier(u'output.check')]), FunctionLiteral([Identifier(u'format.incoll.inproc.crossref'), Identifier(u'output.nonnull'), Identifier(u'format.chapter.pages'), Identifier(u'output')]), Identifier(u'if$'), Identifier(u'new.block'), Identifier(u'note'), Identifier(u'output'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'inproceedings')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), String(u'author'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'format.title'), String(u'title'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'crossref'), Identifier(u'missing$'), FunctionLiteral([Identifier(u'format.in.ed.booktitle'), String(u'booktitle'), Identifier(u'output.check'), Identifier(u'format.bvolume'), Identifier(u'output'), Identifier(u'format.number.series'), Identifier(u'output'), Identifier(u'format.pages'), Identifier(u'output'), Identifier(u'address'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'organization'), Identifier(u'publisher'), Identifier(u'new.sentence.checkb'), Identifier(u'organization'), Identifier(u'output'), Identifier(u'publisher'), Identifier(u'output'), Identifier(u'format.date'), String(u'year'), Identifier(u'output.check')]), FunctionLiteral([Identifier(u'address'), Identifier(u'output.nonnull'), Identifier(u'format.date'), String(u'year'), Identifier(u'output.check'), Identifier(u'new.sentence'), Identifier(u'organization'), Identifier(u'output'), Identifier(u'publisher'), Identifier(u'output')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'format.incoll.inproc.crossref'), Identifier(u'output.nonnull'), Identifier(u'format.pages'), Identifier(u'output')]), Identifier(u'if$'), Identifier(u'new.block'), Identifier(u'note'), Identifier(u'output'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'conference')], [Identifier(u'inproceedings')]], [u'FUNCTION', [Identifier(u'manual')], [Identifier(u'output.bibitem'), Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'organization'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'organization'), Identifier(u'output.nonnull'), Identifier(u'address'), Identifier(u'output')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'format.authors'), Identifier(u'output.nonnull')]), Identifier(u'if$'), Identifier(u'new.block'), Identifier(u'format.btitle'), String(u'title'), Identifier(u'output.check'), Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'organization'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'address'), Identifier(u'new.block.checka'), Identifier(u'address'), Identifier(u'output')]), QuotedVar(u'skip$'), Identifier(u'if$')]), FunctionLiteral([Identifier(u'organization'), Identifier(u'address'), Identifier(u'new.block.checkb'), Identifier(u'organization'), Identifier(u'output'), Identifier(u'address'), Identifier(u'output')]), Identifier(u'if$'), Identifier(u'format.edition'), Identifier(u'output'), Identifier(u'format.date'), Identifier(u'output'), Identifier(u'new.block'), Identifier(u'note'), Identifier(u'output'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'mastersthesis')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), String(u'author'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'format.title'), String(u'title'), Identifier(u'output.check'), Identifier(u'new.block'), String(u"Master's thesis"), Identifier(u'format.thesis.type'), Identifier(u'output.nonnull'), Identifier(u'school'), String(u'school'), Identifier(u'output.check'), Identifier(u'address'), Identifier(u'output'), Identifier(u'format.date'), String(u'year'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'note'), Identifier(u'output'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'misc')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), Identifier(u'output'), Identifier(u'title'), Identifier(u'howpublished'), Identifier(u'new.block.checkb'), Identifier(u'format.title'), Identifier(u'output'), Identifier(u'howpublished'), Identifier(u'new.block.checka'), Identifier(u'howpublished'), Identifier(u'output'), Identifier(u'format.date'), Identifier(u'output'), Identifier(u'new.block'), Identifier(u'note'), Identifier(u'output'), Identifier(u'fin.entry'), Identifier(u'empty.misc.check')]], [u'FUNCTION', [Identifier(u'phdthesis')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), String(u'author'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'format.btitle'), String(u'title'), Identifier(u'output.check'), Identifier(u'new.block'), String(u'PhD thesis'), Identifier(u'format.thesis.type'), Identifier(u'output.nonnull'), Identifier(u'school'), String(u'school'), Identifier(u'output.check'), Identifier(u'address'), Identifier(u'output'), Identifier(u'format.date'), String(u'year'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'note'), Identifier(u'output'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'proceedings')], [Identifier(u'output.bibitem'), Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'organization'), Identifier(u'output')]), FunctionLiteral([Identifier(u'format.editors'), Identifier(u'output.nonnull')]), Identifier(u'if$'), Identifier(u'new.block'), Identifier(u'format.btitle'), String(u'title'), Identifier(u'output.check'), Identifier(u'format.bvolume'), Identifier(u'output'), Identifier(u'format.number.series'), Identifier(u'output'), Identifier(u'address'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'publisher'), Identifier(u'new.sentence.checka')]), FunctionLiteral([Identifier(u'organization'), Identifier(u'publisher'), Identifier(u'new.sentence.checkb'), Identifier(u'organization'), Identifier(u'output')]), Identifier(u'if$'), Identifier(u'publisher'), Identifier(u'output'), Identifier(u'format.date'), String(u'year'), Identifier(u'output.check')]), FunctionLiteral([Identifier(u'address'), Identifier(u'output.nonnull'), Identifier(u'format.date'), String(u'year'), Identifier(u'output.check'), Identifier(u'new.sentence'), Identifier(u'editor'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'organization'), Identifier(u'output')]), Identifier(u'if$'), Identifier(u'publisher'), Identifier(u'output')]), Identifier(u'if$'), Identifier(u'new.block'), Identifier(u'note'), Identifier(u'output'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'techreport')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), String(u'author'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'format.title'), String(u'title'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'format.tr.number'), Identifier(u'output.nonnull'), Identifier(u'institution'), String(u'institution'), Identifier(u'output.check'), Identifier(u'address'), Identifier(u'output'), Identifier(u'format.date'), String(u'year'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'note'), Identifier(u'output'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'unpublished')], [Identifier(u'output.bibitem'), Identifier(u'format.authors'), String(u'author'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'format.title'), String(u'title'), Identifier(u'output.check'), Identifier(u'new.block'), Identifier(u'note'), String(u'note'), Identifier(u'output.check'), Identifier(u'format.date'), Identifier(u'output'), Identifier(u'fin.entry')]], [u'FUNCTION', [Identifier(u'default.type')], [Identifier(u'misc')]], [u'MACRO', [Identifier(u'jan')], [String(u'January')]], [u'MACRO', [Identifier(u'feb')], [String(u'February')]], [u'MACRO', [Identifier(u'mar')], [String(u'March')]], [u'MACRO', [Identifier(u'apr')], [String(u'April')]], [u'MACRO', [Identifier(u'may')], [String(u'May')]], [u'MACRO', [Identifier(u'jun')], [String(u'June')]], [u'MACRO', [Identifier(u'jul')], [String(u'July')]], [u'MACRO', [Identifier(u'aug')], [String(u'August')]], [u'MACRO', [Identifier(u'sep')], [String(u'September')]], [u'MACRO', [Identifier(u'oct')], [String(u'October')]], [u'MACRO', [Identifier(u'nov')], [String(u'November')]], [u'MACRO', [Identifier(u'dec')], [String(u'December')]], [u'MACRO', [Identifier(u'acmcs')], [String(u'ACM Computing Surveys')]], [u'MACRO', [Identifier(u'acta')], [String(u'Acta Informatica')]], [u'MACRO', [Identifier(u'cacm')], [String(u'Communications of the ACM')]], [u'MACRO', [Identifier(u'ibmjrd')], [String(u'IBM Journal of Research and Development')]], [u'MACRO', [Identifier(u'ibmsj')], [String(u'IBM Systems Journal')]], [u'MACRO', [Identifier(u'ieeese')], [String(u'IEEE Transactions on Software Engineering')]], [u'MACRO', [Identifier(u'ieeetc')], [String(u'IEEE Transactions on Computers')]], [u'MACRO', [Identifier(u'ieeetcad')], [String(u'IEEE Transactions on Computer-Aided Design of Integrated Circuits')]], [u'MACRO', [Identifier(u'ipl')], [String(u'Information Processing Letters')]], [u'MACRO', [Identifier(u'jacm')], [String(u'Journal of the ACM')]], [u'MACRO', [Identifier(u'jcss')], [String(u'Journal of Computer and System Sciences')]], [u'MACRO', [Identifier(u'scp')], [String(u'Science of Computer Programming')]], [u'MACRO', [Identifier(u'sicomp')], [String(u'SIAM Journal on Computing')]], [u'MACRO', [Identifier(u'tocs')], [String(u'ACM Transactions on Computer Systems')]], [u'MACRO', [Identifier(u'tods')], [String(u'ACM Transactions on Database Systems')]], [u'MACRO', [Identifier(u'tog')], [String(u'ACM Transactions on Graphics')]], [u'MACRO', [Identifier(u'toms')], [String(u'ACM Transactions on Mathematical Software')]], [u'MACRO', [Identifier(u'toois')], [String(u'ACM Transactions on Office Information Systems')]], [u'MACRO', [Identifier(u'toplas')], [String(u'ACM Transactions on Programming Languages and Systems')]], [u'MACRO', [Identifier(u'tcs')], [String(u'Theoretical Computer Science')]], [u'READ'], [u'FUNCTION', [Identifier(u'sortify')], [Identifier(u'purify$'), String(u'l'), Identifier(u'change.case$')]], [u'INTEGERS', [Identifier(u'len')]], [u'FUNCTION', [Identifier(u'chop.word')], [QuotedVar(u's'), Identifier(u':='), QuotedVar(u'len'), Identifier(u':='), Identifier(u's'), Integer(1), Identifier(u'len'), Identifier(u'substring$'), Identifier(u'='), FunctionLiteral([Identifier(u's'), Identifier(u'len'), Integer(1), Identifier(u'+'), Identifier(u'global.max$'), Identifier(u'substring$')]), QuotedVar(u's'), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'sort.format.names')], [QuotedVar(u's'), Identifier(u':='), Integer(1), QuotedVar(u'nameptr'), Identifier(u':='), String(u''), Identifier(u's'), Identifier(u'num.names$'), QuotedVar(u'numnames'), Identifier(u':='), Identifier(u'numnames'), QuotedVar(u'namesleft'), Identifier(u':='), FunctionLiteral([Identifier(u'namesleft'), Integer(0), Identifier(u'>')]), FunctionLiteral([Identifier(u'nameptr'), Integer(1), Identifier(u'>'), FunctionLiteral([String(u' '), Identifier(u'*')]), QuotedVar(u'skip$'), Identifier(u'if$'), Identifier(u's'), Identifier(u'nameptr'), String(u'{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}'), Identifier(u'format.name$'), QuotedVar(u't'), Identifier(u':='), Identifier(u'nameptr'), Identifier(u'numnames'), Identifier(u'='), Identifier(u't'), String(u'others'), Identifier(u'='), Identifier(u'and'), FunctionLiteral([String(u'et al'), Identifier(u'*')]), FunctionLiteral([Identifier(u't'), Identifier(u'sortify'), Identifier(u'*')]), Identifier(u'if$'), Identifier(u'nameptr'), Integer(1), Identifier(u'+'), QuotedVar(u'nameptr'), Identifier(u':='), Identifier(u'namesleft'), Integer(1), Identifier(u'-'), QuotedVar(u'namesleft'), Identifier(u':=')]), Identifier(u'while$')]], [u'FUNCTION', [Identifier(u'sort.format.title')], [QuotedVar(u't'), Identifier(u':='), String(u'A '), Integer(2), String(u'An '), Integer(3), String(u'The '), Integer(4), Identifier(u't'), Identifier(u'chop.word'), Identifier(u'chop.word'), Identifier(u'chop.word'), Identifier(u'sortify'), Integer(1), Identifier(u'global.max$'), Identifier(u'substring$')]], [u'FUNCTION', [Identifier(u'author.sort')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), FunctionLiteral([String(u'to sort, need author or key in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), String(u'')]), FunctionLiteral([Identifier(u'key'), Identifier(u'sortify')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'author'), Identifier(u'sort.format.names')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'author.editor.sort')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), FunctionLiteral([String(u'to sort, need author, editor, or key in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), String(u'')]), FunctionLiteral([Identifier(u'key'), Identifier(u'sortify')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'sort.format.names')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'author'), Identifier(u'sort.format.names')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'author.organization.sort')], [Identifier(u'author'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'organization'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), FunctionLiteral([String(u'to sort, need author, organization, or key in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), String(u'')]), FunctionLiteral([Identifier(u'key'), Identifier(u'sortify')]), Identifier(u'if$')]), FunctionLiteral([String(u'The '), Integer(4), Identifier(u'organization'), Identifier(u'chop.word'), Identifier(u'sortify')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'author'), Identifier(u'sort.format.names')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'editor.organization.sort')], [Identifier(u'editor'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'organization'), Identifier(u'empty$'), FunctionLiteral([Identifier(u'key'), Identifier(u'empty$'), FunctionLiteral([String(u'to sort, need editor, organization, or key in '), Identifier(u'cite$'), Identifier(u'*'), Identifier(u'warning$'), String(u'')]), FunctionLiteral([Identifier(u'key'), Identifier(u'sortify')]), Identifier(u'if$')]), FunctionLiteral([String(u'The '), Integer(4), Identifier(u'organization'), Identifier(u'chop.word'), Identifier(u'sortify')]), Identifier(u'if$')]), FunctionLiteral([Identifier(u'editor'), Identifier(u'sort.format.names')]), Identifier(u'if$')]], [u'FUNCTION', [Identifier(u'presort')], [Identifier(u'type$'), String(u'book'), Identifier(u'='), Identifier(u'type$'), String(u'inbook'), Identifier(u'='), Identifier(u'or'), QuotedVar(u'author.editor.sort'), FunctionLiteral([Identifier(u'type$'), String(u'proceedings'), Identifier(u'='), QuotedVar(u'editor.organization.sort'), FunctionLiteral([Identifier(u'type$'), String(u'manual'), Identifier(u'='), QuotedVar(u'author.organization.sort'), QuotedVar(u'author.sort'), Identifier(u'if$')]), Identifier(u'if$')]), Identifier(u'if$'), String(u' '), Identifier(u'*'), Identifier(u'year'), Identifier(u'field.or.null'), Identifier(u'sortify'), Identifier(u'*'), String(u' '), Identifier(u'*'), Identifier(u'title'), Identifier(u'field.or.null'), Identifier(u'sort.format.title'), Identifier(u'*'), Integer(1), Identifier(u'entry.max$'), Identifier(u'substring$'), QuotedVar(u'sort.key$'), Identifier(u':=')]], [u'ITERATE', [Identifier(u'presort')]], [u'SORT'], [u'STRINGS', [Identifier(u'longest.label')]], [u'INTEGERS', [Identifier(u'number.label'), Identifier(u'longest.label.width')]], [u'FUNCTION', [Identifier(u'initialize.longest.label')], [String(u''), QuotedVar(u'longest.label'), Identifier(u':='), Integer(1), QuotedVar(u'number.label'), Identifier(u':='), Integer(0), QuotedVar(u'longest.label.width'), Identifier(u':=')]], [u'FUNCTION', [Identifier(u'longest.label.pass')], [Identifier(u'number.label'), Identifier(u'int.to.str$'), QuotedVar(u'label'), Identifier(u':='), Identifier(u'number.label'), Integer(1), Identifier(u'+'), QuotedVar(u'number.label'), Identifier(u':='), Identifier(u'label'), Identifier(u'width$'), Identifier(u'longest.label.width'), Identifier(u'>'), FunctionLiteral([Identifier(u'label'), QuotedVar(u'longest.label'), Identifier(u':='), Identifier(u'label'), Identifier(u'width$'), QuotedVar(u'longest.label.width'), Identifier(u':=')]), QuotedVar(u'skip$'), Identifier(u'if$')]], [u'EXECUTE', [Identifier(u'initialize.longest.label')]], [u'ITERATE', [Identifier(u'longest.label.pass')]], [u'FUNCTION', [Identifier(u'begin.bib')], [Identifier(u'preamble$'), Identifier(u'empty$'), QuotedVar(u'skip$'), FunctionLiteral([Identifier(u'preamble$'), Identifier(u'write$'), Identifier(u'newline$')]), Identifier(u'if$'), String(u'\\begin{thebibliography}{'), Identifier(u'longest.label'), Identifier(u'*'), String(u'}'), Identifier(u'*'), Identifier(u'write$'), Identifier(u'newline$')]], [u'EXECUTE', [Identifier(u'begin.bib')]], [u'EXECUTE', [Identifier(u'init.state.consts')]], [u'ITERATE', [Identifier(u'call.type$')]], [u'FUNCTION', [Identifier(u'end.bib')], [Identifier(u'newline$'), String(u'\\end{thebibliography}'), Identifier(u'write$'), Identifier(u'newline$')]], [u'EXECUTE', [Identifier(u'end.bib')]]] ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.958714 pybtex-0.24.0/tests/data/0000755000175000001440000000000000000000000014732 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.576612 pybtex-0.24.0/tests/data/IEEEtran.aux0000644000175000001440000000042400000000000017045 0ustar00agusers00000000000000\relax \citation{IEEEexample:BSTcontrol} \citation{IEEEexample:bibtexuser} \citation{IEEEexample:tamethebeast} \citation{IEEEexample:bibtexFAQ} \citation{IEEEexample:bibtexguide} \bibstyle{IEEEtran} \bibdata{IEEEtran} \@writefile{toc}{\contentsline {section}{References}{1}} ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5816119 pybtex-0.24.0/tests/data/IEEEtran.bib0000644000175000001440000000306700000000000017012 0ustar00agusers00000000000000@IEEEtranBSTCTL{IEEEexample:BSTcontrol, CTLname_url_prefix = "URL:", CTLuse_alt_spacing = "yes", CTLalt_stretch_factor = "4" } The BibTeX user's guide. The filename could have been put in the URL instead. But, there might be other interesting things for the user in the same directory - and the filename might change before the directory that contains it. @electronic{IEEEexample:bibtexuser, author = "Oren Patashnik", title = "{{\BibTeX}}ing", howpublished = "{btxdoc.pdf}", url = "http://www.ctan.org/tex-archive/biblio/bibtex/contrib/doc/", month = feb, year = "1988" } A comprehensive BibTeX tutorial. @electronic{IEEEexample:tamethebeast, author = "Nicolas Markey", title = "Tame the BeaST --- The B to X of {{\BibTeX}}", url = "http://tug.ctan.org/tex-archive/info/bibtex/tamethebeast/", month = oct, year = "2005" } The BibTeX Tips and FAQ guide. @electronic{IEEEexample:bibtexFAQ, author = "David Hoadley and Michael Shell", title = "{{\BibTeX}} Tips and {FAQ}", howpublished = "{btxFAQ.pdf}", url = "http://www.ctan.org/tex-archive/biblio/bibtex/contrib/doc/", month = jan, year = "2007" } A BibTeX Guide via Examples. @electronic{IEEEexample:bibtexguide, author = "Ki-Joo Kim", title = "A {{\BibTeX}} Guide via Examples", howpublished = "{bibtex\_guide.pdf}", url = "http://www.geocities.com/kijoo2000/", month = apr, year = "2004" } ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5716121 pybtex-0.24.0/tests/data/IEEEtran.bst0000644000175000001440000016416200000000000017052 0ustar00agusers00000000000000%% %% IEEEtran.bst %% BibTeX Bibliography Style file for IEEE Journals and Conferences (unsorted) %% Version 1.13 (2008/09/30) %% %% Copyright (c) 2003-2008 Michael Shell %% %% Original starting code base and algorithms obtained from the output of %% Patrick W. Daly's makebst package as well as from prior versions of %% IEEE BibTeX styles: %% %% 1. Howard Trickey and Oren Patashnik's ieeetr.bst (1985/1988) %% 2. Silvano Balemi and Richard H. Roy's IEEEbib.bst (1993) %% %% Support sites: %% http://www.michaelshell.org/tex/ieeetran/ %% http://www.ctan.org/tex-archive/macros/latex/contrib/IEEEtran/ %% and/or %% http://www.ieee.org/ %% %% For use with BibTeX version 0.99a or later %% %% This is a numerical citation style. %% %%************************************************************************* %% Legal Notice: %% This code is offered as-is without any warranty either expressed or %% implied; without even the implied warranty of MERCHANTABILITY or %% FITNESS FOR A PARTICULAR PURPOSE! %% User assumes all risk. %% In no event shall IEEE or any contributor to this code be liable for %% any damages or losses, including, but not limited to, incidental, %% consequential, or any other damages, resulting from the use or misuse %% of any information contained here. %% %% All comments are the opinions of their respective authors and are not %% necessarily endorsed by the IEEE. %% %% This work is distributed under the LaTeX Project Public License (LPPL) %% ( http://www.latex-project.org/ ) version 1.3, and may be freely used, %% distributed and modified. A copy of the LPPL, version 1.3, is included %% in the base LaTeX documentation of all distributions of LaTeX released %% 2003/12/01 or later. %% Retain all contribution notices and credits. %% ** Modified files should be clearly indicated as such, including ** %% ** renaming them and changing author support contact information. ** %% %% File list of work: IEEEabrv.bib, IEEEfull.bib, IEEEexample.bib, %% IEEEtran.bst, IEEEtranS.bst, IEEEtranSA.bst, %% IEEEtranN.bst, IEEEtranSN.bst, IEEEtran_bst_HOWTO.pdf %%************************************************************************* % % % Changelog: % % 1.00 (2002/08/13) Initial release % % 1.10 (2002/09/27) % 1. Corrected minor bug for improperly formed warning message when a % book was not given a title. Thanks to Ming Kin Lai for reporting this. % 2. Added support for CTLname_format_string and CTLname_latex_cmd fields % in the BST control entry type. % % 1.11 (2003/04/02) % 1. Fixed bug with URLs containing underscores when using url.sty. Thanks % to Ming Kin Lai for reporting this. % % 1.12 (2007/01/11) % 1. Fixed bug with unwanted comma before "et al." when an entry contained % more than two author names. Thanks to Pallav Gupta for reporting this. % 2. Fixed bug with anomalous closing quote in tech reports that have a % type, but without a number or address. Thanks to Mehrdad Mirreza for % reporting this. % 3. Use braces in \providecommand in begin.bib to better support % latex2html. TeX style length assignments OK with recent versions % of latex2html - 1.71 (2002/2/1) or later is strongly recommended. % Use of the language field still causes trouble with latex2html. % Thanks to Federico Beffa for reporting this. % 4. Added IEEEtran.bst ID and version comment string to .bbl output. % 5. Provide a \BIBdecl hook that allows the user to execute commands % just prior to the first entry. % 6. Use default urlstyle (is using url.sty) of "same" rather than rm to % better work with a wider variety of bibliography styles. % 7. Changed month abbreviations from Sept., July and June to Sep., Jul., % and Jun., respectively, as IEEE now does. Thanks to Moritz Borgmann % for reporting this. % 8. Control entry types should not be considered when calculating longest % label width. % 9. Added alias www for electronic/online. % 10. Added CTLname_url_prefix control entry type. % % 1.13 (2008/09/30) % 1. Fixed bug with edition number to ordinal conversion. Thanks to % Michael Roland for reporting this and correcting the algorithm. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% DEFAULTS FOR THE CONTROLS OF THE BST STYLE %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % These are the defaults for the user adjustable controls. The values used % here can be overridden by the user via IEEEtranBSTCTL entry type. % NOTE: The recommended LaTeX command to invoke a control entry type is: % %\makeatletter %\def\bstctlcite{\@ifnextchar[{\@bstctlcite}{\@bstctlcite[@auxout]}} %\def\@bstctlcite[#1]#2{\@bsphack % \@for\@citeb:=#2\do{% % \edef\@citeb{\expandafter\@firstofone\@citeb}% % \if@filesw\immediate\write\csname #1\endcsname{\string\citation{\@citeb}}\fi}% % \@esphack} %\makeatother % % It is called at the start of the document, before the first \cite, like: % \bstctlcite{IEEEexample:BSTcontrol} % % IEEEtran.cls V1.6 and later does provide this command. % #0 turns off the display of the number for articles. % #1 enables FUNCTION {default.is.use.number.for.article} { #1 } % #0 turns off the display of the paper and type fields in @inproceedings. % #1 enables FUNCTION {default.is.use.paper} { #1 } % #0 turns off the forced use of "et al." % #1 enables FUNCTION {default.is.forced.et.al} { #0 } % The maximum number of names that can be present beyond which an "et al." % usage is forced. Be sure that num.names.shown.with.forced.et.al (below) % is not greater than this value! % Note: There are many instances of references in IEEE journals which have % a very large number of authors as well as instances in which "et al." is % used profusely. FUNCTION {default.max.num.names.before.forced.et.al} { #10 } % The number of names that will be shown with a forced "et al.". % Must be less than or equal to max.num.names.before.forced.et.al FUNCTION {default.num.names.shown.with.forced.et.al} { #1 } % #0 turns off the alternate interword spacing for entries with URLs. % #1 enables FUNCTION {default.is.use.alt.interword.spacing} { #1 } % If alternate interword spacing for entries with URLs is enabled, this is % the interword spacing stretch factor that will be used. For example, the % default "4" here means that the interword spacing in entries with URLs can % stretch to four times normal. Does not have to be an integer. Note that % the value specified here can be overridden by the user in their LaTeX % code via a command such as: % "\providecommand\BIBentryALTinterwordstretchfactor{1.5}" in addition to % that via the IEEEtranBSTCTL entry type. FUNCTION {default.ALTinterwordstretchfactor} { "4" } % #0 turns off the "dashification" of repeated (i.e., identical to those % of the previous entry) names. IEEE normally does this. % #1 enables FUNCTION {default.is.dash.repeated.names} { #1 } % The default name format control string. FUNCTION {default.name.format.string}{ "{f.~}{vv~}{ll}{, jj}" } % The default LaTeX font command for the names. FUNCTION {default.name.latex.cmd}{ "" } % The default URL prefix. FUNCTION {default.name.url.prefix}{ "[Online]. Available:" } % Other controls that cannot be accessed via IEEEtranBSTCTL entry type. % #0 turns off the terminal startup banner/completed message so as to % operate more quietly. % #1 enables FUNCTION {is.print.banners.to.terminal} { #1 } %%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% FILE VERSION AND BANNER %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION{bst.file.version} { "1.13" } FUNCTION{bst.file.date} { "2008/09/30" } FUNCTION{bst.file.website} { "http://www.michaelshell.org/tex/ieeetran/bibtex/" } FUNCTION {banner.message} { is.print.banners.to.terminal { "-- IEEEtran.bst version" " " * bst.file.version * " (" * bst.file.date * ") " * "by Michael Shell." * top$ "-- " bst.file.website * top$ "-- See the " quote$ * "IEEEtran_bst_HOWTO.pdf" * quote$ * " manual for usage information." * top$ } { skip$ } if$ } FUNCTION {completed.message} { is.print.banners.to.terminal { "" top$ "Done." top$ } { skip$ } if$ } %%%%%%%%%%%%%%%%%%%%%% %% STRING CONSTANTS %% %%%%%%%%%%%%%%%%%%%%%% FUNCTION {bbl.and}{ "and" } FUNCTION {bbl.etal}{ "et~al." } FUNCTION {bbl.editors}{ "eds." } FUNCTION {bbl.editor}{ "ed." } FUNCTION {bbl.edition}{ "ed." } FUNCTION {bbl.volume}{ "vol." } FUNCTION {bbl.of}{ "of" } FUNCTION {bbl.number}{ "no." } FUNCTION {bbl.in}{ "in" } FUNCTION {bbl.pages}{ "pp." } FUNCTION {bbl.page}{ "p." } FUNCTION {bbl.chapter}{ "ch." } FUNCTION {bbl.paper}{ "paper" } FUNCTION {bbl.part}{ "pt." } FUNCTION {bbl.patent}{ "Patent" } FUNCTION {bbl.patentUS}{ "U.S." } FUNCTION {bbl.revision}{ "Rev." } FUNCTION {bbl.series}{ "ser." } FUNCTION {bbl.standard}{ "Std." } FUNCTION {bbl.techrep}{ "Tech. Rep." } FUNCTION {bbl.mthesis}{ "Master's thesis" } FUNCTION {bbl.phdthesis}{ "Ph.D. dissertation" } FUNCTION {bbl.st}{ "st" } FUNCTION {bbl.nd}{ "nd" } FUNCTION {bbl.rd}{ "rd" } FUNCTION {bbl.th}{ "th" } % This is the LaTeX spacer that is used when a larger than normal space % is called for (such as just before the address:publisher). FUNCTION {large.space} { "\hskip 1em plus 0.5em minus 0.4em\relax " } % The LaTeX code for dashes that are used to represent repeated names. % Note: Some older IEEE journals used something like % "\rule{0.275in}{0.5pt}\," which is fairly thick and runs right along % the baseline. However, IEEE now uses a thinner, above baseline, % six dash long sequence. FUNCTION {repeated.name.dashes} { "------" } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% PREDEFINED STRING MACROS %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% MACRO {jan} {"Jan."} MACRO {feb} {"Feb."} MACRO {mar} {"Mar."} MACRO {apr} {"Apr."} MACRO {may} {"May"} MACRO {jun} {"Jun."} MACRO {jul} {"Jul."} MACRO {aug} {"Aug."} MACRO {sep} {"Sep."} MACRO {oct} {"Oct."} MACRO {nov} {"Nov."} MACRO {dec} {"Dec."} %%%%%%%%%%%%%%%%%% %% ENTRY FIELDS %% %%%%%%%%%%%%%%%%%% ENTRY { address assignee author booktitle chapter day dayfiled edition editor howpublished institution intype journal key language month monthfiled nationality note number organization pages paper publisher school series revision title type url volume year yearfiled CTLuse_article_number CTLuse_paper CTLuse_forced_etal CTLmax_names_forced_etal CTLnames_show_etal CTLuse_alt_spacing CTLalt_stretch_factor CTLdash_repeated_names CTLname_format_string CTLname_latex_cmd CTLname_url_prefix } {} { label } %%%%%%%%%%%%%%%%%%%%%%% %% INTEGER VARIABLES %% %%%%%%%%%%%%%%%%%%%%%%% INTEGERS { prev.status.punct this.status.punct punct.std punct.no punct.comma punct.period prev.status.space this.status.space space.std space.no space.normal space.large prev.status.quote this.status.quote quote.std quote.no quote.close prev.status.nline this.status.nline nline.std nline.no nline.newblock status.cap cap.std cap.no cap.yes} INTEGERS { longest.label.width multiresult nameptr namesleft number.label numnames } INTEGERS { is.use.number.for.article is.use.paper is.forced.et.al max.num.names.before.forced.et.al num.names.shown.with.forced.et.al is.use.alt.interword.spacing is.dash.repeated.names} %%%%%%%%%%%%%%%%%%%%%% %% STRING VARIABLES %% %%%%%%%%%%%%%%%%%%%%%% STRINGS { bibinfo longest.label oldname s t ALTinterwordstretchfactor name.format.string name.latex.cmd name.url.prefix} %%%%%%%%%%%%%%%%%%%%%%%%% %% LOW LEVEL FUNCTIONS %% %%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {initialize.controls} { default.is.use.number.for.article 'is.use.number.for.article := default.is.use.paper 'is.use.paper := default.is.forced.et.al 'is.forced.et.al := default.max.num.names.before.forced.et.al 'max.num.names.before.forced.et.al := default.num.names.shown.with.forced.et.al 'num.names.shown.with.forced.et.al := default.is.use.alt.interword.spacing 'is.use.alt.interword.spacing := default.is.dash.repeated.names 'is.dash.repeated.names := default.ALTinterwordstretchfactor 'ALTinterwordstretchfactor := default.name.format.string 'name.format.string := default.name.latex.cmd 'name.latex.cmd := default.name.url.prefix 'name.url.prefix := } % This IEEEtran.bst features a very powerful and flexible mechanism for % controlling the capitalization, punctuation, spacing, quotation, and % newlines of the formatted entry fields. (Note: IEEEtran.bst does not need % or use the newline/newblock feature, but it has been implemented for % possible future use.) The output states of IEEEtran.bst consist of % multiple independent attributes and, as such, can be thought of as being % vectors, rather than the simple scalar values ("before.all", % "mid.sentence", etc.) used in most other .bst files. % % The more flexible and complex design used here was motivated in part by % IEEE's rather unusual bibliography style. For example, IEEE ends the % previous field item with a period and large space prior to the publisher % address; the @electronic entry types use periods as inter-item punctuation % rather than the commas used by the other entry types; and URLs are never % followed by periods even though they are the last item in the entry. % Although it is possible to accommodate these features with the conventional % output state system, the seemingly endless exceptions make for convoluted, % unreliable and difficult to maintain code. % % IEEEtran.bst's output state system can be easily understood via a simple % illustration of two most recently formatted entry fields (on the stack): % % CURRENT_ITEM % "PREVIOUS_ITEM % % which, in this example, is to eventually appear in the bibliography as: % % "PREVIOUS_ITEM," CURRENT_ITEM % % It is the job of the output routine to take the previous item off of the % stack (while leaving the current item at the top of the stack), apply its % trailing punctuation (including closing quote marks) and spacing, and then % to write the result to BibTeX's output buffer: % % "PREVIOUS_ITEM," % % Punctuation (and spacing) between items is often determined by both of the % items rather than just the first one. The presence of quotation marks % further complicates the situation because, in standard English, trailing % punctuation marks are supposed to be contained within the quotes. % % IEEEtran.bst maintains two output state (aka "status") vectors which % correspond to the previous and current (aka "this") items. Each vector % consists of several independent attributes which track punctuation, % spacing, quotation, and newlines. Capitalization status is handled by a % separate scalar because the format routines, not the output routine, % handle capitalization and, therefore, there is no need to maintain the % capitalization attribute for both the "previous" and "this" items. % % When a format routine adds a new item, it copies the current output status % vector to the previous output status vector and (usually) resets the % current (this) output status vector to a "standard status" vector. Using a % "standard status" vector in this way allows us to redefine what we mean by % "standard status" at the start of each entry handler and reuse the same % format routines under the various inter-item separation schemes. For % example, the standard status vector for the @book entry type may use % commas for item separators, while the @electronic type may use periods, % yet both entry handlers exploit many of the exact same format routines. % % Because format routines have write access to the output status vector of % the previous item, they can override the punctuation choices of the % previous format routine! Therefore, it becomes trivial to implement rules % such as "Always use a period and a large space before the publisher." By % pushing the generation of the closing quote mark to the output routine, we % avoid all the problems caused by having to close a quote before having all % the information required to determine what the punctuation should be. % % The IEEEtran.bst output state system can easily be expanded if needed. % For instance, it is easy to add a "space.tie" attribute value if the % bibliography rules mandate that two items have to be joined with an % unbreakable space. FUNCTION {initialize.status.constants} { #0 'punct.no := #1 'punct.comma := #2 'punct.period := #0 'space.no := #1 'space.normal := #2 'space.large := #0 'quote.no := #1 'quote.close := #0 'cap.no := #1 'cap.yes := #0 'nline.no := #1 'nline.newblock := } FUNCTION {std.status.using.comma} { punct.comma 'punct.std := space.normal 'space.std := quote.no 'quote.std := nline.no 'nline.std := cap.no 'cap.std := } FUNCTION {std.status.using.period} { punct.period 'punct.std := space.normal 'space.std := quote.no 'quote.std := nline.no 'nline.std := cap.yes 'cap.std := } FUNCTION {initialize.prev.this.status} { punct.no 'prev.status.punct := space.no 'prev.status.space := quote.no 'prev.status.quote := nline.no 'prev.status.nline := punct.no 'this.status.punct := space.no 'this.status.space := quote.no 'this.status.quote := nline.no 'this.status.nline := cap.yes 'status.cap := } FUNCTION {this.status.std} { punct.std 'this.status.punct := space.std 'this.status.space := quote.std 'this.status.quote := nline.std 'this.status.nline := } FUNCTION {cap.status.std}{ cap.std 'status.cap := } FUNCTION {this.to.prev.status} { this.status.punct 'prev.status.punct := this.status.space 'prev.status.space := this.status.quote 'prev.status.quote := this.status.nline 'prev.status.nline := } FUNCTION {not} { { #0 } { #1 } if$ } FUNCTION {and} { { skip$ } { pop$ #0 } if$ } FUNCTION {or} { { pop$ #1 } { skip$ } if$ } % convert the strings "yes" or "no" to #1 or #0 respectively FUNCTION {yes.no.to.int} { "l" change.case$ duplicate$ "yes" = { pop$ #1 } { duplicate$ "no" = { pop$ #0 } { "unknown boolean " quote$ * swap$ * quote$ * " in " * cite$ * warning$ #0 } if$ } if$ } % pushes true if the single char string on the stack is in the % range of "0" to "9" FUNCTION {is.num} { chr.to.int$ duplicate$ "0" chr.to.int$ < not swap$ "9" chr.to.int$ > not and } % multiplies the integer on the stack by a factor of 10 FUNCTION {bump.int.mag} { #0 'multiresult := { duplicate$ #0 > } { #1 - multiresult #10 + 'multiresult := } while$ pop$ multiresult } % converts a single character string on the stack to an integer FUNCTION {char.to.integer} { duplicate$ is.num { chr.to.int$ "0" chr.to.int$ - } {"noninteger character " quote$ * swap$ * quote$ * " in integer field of " * cite$ * warning$ #0 } if$ } % converts a string on the stack to an integer FUNCTION {string.to.integer} { duplicate$ text.length$ 'namesleft := #1 'nameptr := #0 'numnames := { nameptr namesleft > not } { duplicate$ nameptr #1 substring$ char.to.integer numnames bump.int.mag + 'numnames := nameptr #1 + 'nameptr := } while$ pop$ numnames } % The output routines write out the *next* to the top (previous) item on the % stack, adding punctuation and such as needed. Since IEEEtran.bst maintains % the output status for the top two items on the stack, these output % routines have to consider the previous output status (which corresponds to % the item that is being output). Full independent control of punctuation, % closing quote marks, spacing, and newblock is provided. % % "output.nonnull" does not check for the presence of a previous empty % item. % % "output" does check for the presence of a previous empty item and will % remove an empty item rather than outputing it. % % "output.warn" is like "output", but will issue a warning if it detects % an empty item. FUNCTION {output.nonnull} { swap$ prev.status.punct punct.comma = { "," * } { skip$ } if$ prev.status.punct punct.period = { add.period$ } { skip$ } if$ prev.status.quote quote.close = { "''" * } { skip$ } if$ prev.status.space space.normal = { " " * } { skip$ } if$ prev.status.space space.large = { large.space * } { skip$ } if$ write$ prev.status.nline nline.newblock = { newline$ "\newblock " write$ } { skip$ } if$ } FUNCTION {output} { duplicate$ empty$ 'pop$ 'output.nonnull if$ } FUNCTION {output.warn} { 't := duplicate$ empty$ { pop$ "empty " t * " in " * cite$ * warning$ } 'output.nonnull if$ } % "fin.entry" is the output routine that handles the last item of the entry % (which will be on the top of the stack when "fin.entry" is called). FUNCTION {fin.entry} { this.status.punct punct.no = { skip$ } { add.period$ } if$ this.status.quote quote.close = { "''" * } { skip$ } if$ write$ newline$ } FUNCTION {is.last.char.not.punct} { duplicate$ "}" * add.period$ #-1 #1 substring$ "." = } FUNCTION {is.multiple.pages} { 't := #0 'multiresult := { multiresult not t empty$ not and } { t #1 #1 substring$ duplicate$ "-" = swap$ duplicate$ "," = swap$ "+" = or or { #1 'multiresult := } { t #2 global.max$ substring$ 't := } if$ } while$ multiresult } FUNCTION {capitalize}{ "u" change.case$ "t" change.case$ } FUNCTION {emphasize} { duplicate$ empty$ { pop$ "" } { "\emph{" swap$ * "}" * } if$ } FUNCTION {do.name.latex.cmd} { name.latex.cmd empty$ { skip$ } { name.latex.cmd "{" * swap$ * "}" * } if$ } % IEEEtran.bst uses its own \BIBforeignlanguage command which directly % invokes the TeX hyphenation patterns without the need of the Babel % package. Babel does a lot more than switch hyphenation patterns and % its loading can cause unintended effects in many class files (such as % IEEEtran.cls). FUNCTION {select.language} { duplicate$ empty$ 'pop$ { language empty$ 'skip$ { "\BIBforeignlanguage{" language * "}{" * swap$ * "}" * } if$ } if$ } FUNCTION {tie.or.space.prefix} { duplicate$ text.length$ #3 < { "~" } { " " } if$ swap$ } FUNCTION {get.bbl.editor} { editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ } FUNCTION {space.word}{ " " swap$ * " " * } % Field Conditioners, Converters, Checkers and External Interfaces FUNCTION {empty.field.to.null.string} { duplicate$ empty$ { pop$ "" } { skip$ } if$ } FUNCTION {either.or.check} { empty$ { pop$ } { "can't use both " swap$ * " fields in " * cite$ * warning$ } if$ } FUNCTION {empty.entry.warn} { author empty$ title empty$ howpublished empty$ month empty$ year empty$ note empty$ url empty$ and and and and and and { "all relevant fields are empty in " cite$ * warning$ } 'skip$ if$ } % The bibinfo system provides a way for the electronic parsing/acquisition % of a bibliography's contents as is done by ReVTeX. For example, a field % could be entered into the bibliography as: % \bibinfo{volume}{2} % Only the "2" would show up in the document, but the LaTeX \bibinfo command % could do additional things with the information. IEEEtran.bst does provide % a \bibinfo command via "\providecommand{\bibinfo}[2]{#2}". However, it is % currently not used as the bogus bibinfo functions defined here output the % entry values directly without the \bibinfo wrapper. The bibinfo functions % themselves (and the calls to them) are retained for possible future use. % % bibinfo.check avoids acting on missing fields while bibinfo.warn will % issue a warning message if a missing field is detected. Prior to calling % the bibinfo functions, the user should push the field value and then its % name string, in that order. FUNCTION {bibinfo.check} { swap$ duplicate$ missing$ { pop$ pop$ "" } { duplicate$ empty$ { swap$ pop$ } { swap$ pop$ } if$ } if$ } FUNCTION {bibinfo.warn} { swap$ duplicate$ missing$ { swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ "" } { duplicate$ empty$ { swap$ "empty " swap$ * " in " * cite$ * warning$ } { swap$ pop$ } if$ } if$ } % IEEE separates large numbers with more than 4 digits into groups of % three. IEEE uses a small space to separate these number groups. % Typical applications include patent and page numbers. % number of consecutive digits required to trigger the group separation. FUNCTION {large.number.trigger}{ #5 } % For numbers longer than the trigger, this is the blocksize of the groups. % The blocksize must be less than the trigger threshold, and 2 * blocksize % must be greater than the trigger threshold (can't do more than one % separation on the initial trigger). FUNCTION {large.number.blocksize}{ #3 } % What is actually inserted between the number groups. FUNCTION {large.number.separator}{ "\," } % So as to save on integer variables by reusing existing ones, numnames % holds the current number of consecutive digits read and nameptr holds % the number that will trigger an inserted space. FUNCTION {large.number.separate} { 't := "" #0 'numnames := large.number.trigger 'nameptr := { t empty$ not } { t #-1 #1 substring$ is.num { numnames #1 + 'numnames := } { #0 'numnames := large.number.trigger 'nameptr := } if$ t #-1 #1 substring$ swap$ * t #-2 global.max$ substring$ 't := numnames nameptr = { duplicate$ #1 nameptr large.number.blocksize - substring$ swap$ nameptr large.number.blocksize - #1 + global.max$ substring$ large.number.separator swap$ * * nameptr large.number.blocksize - 'numnames := large.number.blocksize #1 + 'nameptr := } { skip$ } if$ } while$ } % Converts all single dashes "-" to double dashes "--". FUNCTION {n.dashify} { large.number.separate 't := "" { t empty$ not } { t #1 #1 substring$ "-" = { t #1 #2 substring$ "--" = not { "--" * t #2 global.max$ substring$ 't := } { { t #1 #1 substring$ "-" = } { "-" * t #2 global.max$ substring$ 't := } while$ } if$ } { t #1 #1 substring$ * t #2 global.max$ substring$ 't := } if$ } while$ } % This function detects entries with names that are identical to that of % the previous entry and replaces the repeated names with dashes (if the % "is.dash.repeated.names" user control is nonzero). FUNCTION {name.or.dash} { 's := oldname empty$ { s 'oldname := s } { s oldname = { is.dash.repeated.names { repeated.name.dashes } { s 'oldname := s } if$ } { s 'oldname := s } if$ } if$ } % Converts the number string on the top of the stack to % "numerical ordinal form" (e.g., "7" to "7th"). There is % no artificial limit to the upper bound of the numbers as the % two least significant digits determine the ordinal form. FUNCTION {num.to.ordinal} { duplicate$ #-2 #1 substring$ "1" = { bbl.th * } { duplicate$ #-1 #1 substring$ "1" = { bbl.st * } { duplicate$ #-1 #1 substring$ "2" = { bbl.nd * } { duplicate$ #-1 #1 substring$ "3" = { bbl.rd * } { bbl.th * } if$ } if$ } if$ } if$ } % If the string on the top of the stack begins with a number, % (e.g., 11th) then replace the string with the leading number % it contains. Otherwise retain the string as-is. s holds the % extracted number, t holds the part of the string that remains % to be scanned. FUNCTION {extract.num} { duplicate$ 't := "" 's := { t empty$ not } { t #1 #1 substring$ t #2 global.max$ substring$ 't := duplicate$ is.num { s swap$ * 's := } { pop$ "" 't := } if$ } while$ s empty$ 'skip$ { pop$ s } if$ } % Converts the word number string on the top of the stack to % Arabic string form. Will be successful up to "tenth". FUNCTION {word.to.num} { duplicate$ "l" change.case$ 's := s "first" = { pop$ "1" } { skip$ } if$ s "second" = { pop$ "2" } { skip$ } if$ s "third" = { pop$ "3" } { skip$ } if$ s "fourth" = { pop$ "4" } { skip$ } if$ s "fifth" = { pop$ "5" } { skip$ } if$ s "sixth" = { pop$ "6" } { skip$ } if$ s "seventh" = { pop$ "7" } { skip$ } if$ s "eighth" = { pop$ "8" } { skip$ } if$ s "ninth" = { pop$ "9" } { skip$ } if$ s "tenth" = { pop$ "10" } { skip$ } if$ } % Converts the string on the top of the stack to numerical % ordinal (e.g., "11th") form. FUNCTION {convert.edition} { duplicate$ empty$ 'skip$ { duplicate$ #1 #1 substring$ is.num { extract.num num.to.ordinal } { word.to.num duplicate$ #1 #1 substring$ is.num { num.to.ordinal } { "edition ordinal word " quote$ * edition * quote$ * " may be too high (or improper) for conversion" * " in " * cite$ * warning$ } if$ } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% LATEX BIBLIOGRAPHY CODE %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {start.entry} { newline$ "\bibitem{" write$ cite$ write$ "}" write$ newline$ "" initialize.prev.this.status } % Here we write out all the LaTeX code that we will need. The most involved % code sequences are those that control the alternate interword spacing and % foreign language hyphenation patterns. The heavy use of \providecommand % gives users a way to override the defaults. Special thanks to Javier Bezos, % Johannes Braams, Robin Fairbairns, Heiko Oberdiek, Donald Arseneau and all % the other gurus on comp.text.tex for their help and advice on the topic of % \selectlanguage, Babel and BibTeX. FUNCTION {begin.bib} { "% Generated by IEEEtran.bst, version: " bst.file.version * " (" * bst.file.date * ")" * write$ newline$ preamble$ empty$ 'skip$ { preamble$ write$ newline$ } if$ "\begin{thebibliography}{" longest.label * "}" * write$ newline$ "\providecommand{\url}[1]{#1}" write$ newline$ "\csname url@samestyle\endcsname" write$ newline$ "\providecommand{\newblock}{\relax}" write$ newline$ "\providecommand{\bibinfo}[2]{#2}" write$ newline$ "\providecommand{\BIBentrySTDinterwordspacing}{\spaceskip=0pt\relax}" write$ newline$ "\providecommand{\BIBentryALTinterwordstretchfactor}{" ALTinterwordstretchfactor * "}" * write$ newline$ "\providecommand{\BIBentryALTinterwordspacing}{\spaceskip=\fontdimen2\font plus " write$ newline$ "\BIBentryALTinterwordstretchfactor\fontdimen3\font minus \fontdimen4\font\relax}" write$ newline$ "\providecommand{\BIBforeignlanguage}[2]{{%" write$ newline$ "\expandafter\ifx\csname l@#1\endcsname\relax" write$ newline$ "\typeout{** WARNING: IEEEtran.bst: No hyphenation pattern has been}%" write$ newline$ "\typeout{** loaded for the language `#1'. Using the pattern for}%" write$ newline$ "\typeout{** the default language instead.}%" write$ newline$ "\else" write$ newline$ "\language=\csname l@#1\endcsname" write$ newline$ "\fi" write$ newline$ "#2}}" write$ newline$ "\providecommand{\BIBdecl}{\relax}" write$ newline$ "\BIBdecl" write$ newline$ } FUNCTION {end.bib} { newline$ "\end{thebibliography}" write$ newline$ } FUNCTION {if.url.alt.interword.spacing} { is.use.alt.interword.spacing {url empty$ 'skip$ {"\BIBentryALTinterwordspacing" write$ newline$} if$} { skip$ } if$ } FUNCTION {if.url.std.interword.spacing} { is.use.alt.interword.spacing {url empty$ 'skip$ {"\BIBentrySTDinterwordspacing" write$ newline$} if$} { skip$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%% %% LONGEST LABEL PASS %% %%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {initialize.longest.label} { "" 'longest.label := #1 'number.label := #0 'longest.label.width := } FUNCTION {longest.label.pass} { type$ "ieeetranbstctl" = { skip$ } { number.label int.to.str$ 'label := number.label #1 + 'number.label := label width$ longest.label.width > { label 'longest.label := label width$ 'longest.label.width := } { skip$ } if$ } if$ } %%%%%%%%%%%%%%%%%%%%% %% FORMAT HANDLERS %% %%%%%%%%%%%%%%%%%%%%% %% Lower Level Formats (used by higher level formats) FUNCTION {format.address.org.or.pub.date} { 't := "" year empty$ { "empty year in " cite$ * warning$ } { skip$ } if$ address empty$ t empty$ and year empty$ and month empty$ and { skip$ } { this.to.prev.status this.status.std cap.status.std address "address" bibinfo.check * t empty$ { skip$ } { punct.period 'prev.status.punct := space.large 'prev.status.space := address empty$ { skip$ } { ": " * } if$ t * } if$ year empty$ month empty$ and { skip$ } { t empty$ address empty$ and { skip$ } { ", " * } if$ month empty$ { year empty$ { skip$ } { year "year" bibinfo.check * } if$ } { month "month" bibinfo.check * year empty$ { skip$ } { " " * year "year" bibinfo.check * } if$ } if$ } if$ } if$ } FUNCTION {format.names} { 'bibinfo := duplicate$ empty$ 'skip$ { this.to.prev.status this.status.std 's := "" 't := #1 'nameptr := s num.names$ 'numnames := numnames 'namesleft := { namesleft #0 > } { s nameptr name.format.string format.name$ bibinfo bibinfo.check 't := nameptr #1 > { nameptr num.names.shown.with.forced.et.al #1 + = numnames max.num.names.before.forced.et.al > is.forced.et.al and and { "others" 't := #1 'namesleft := } { skip$ } if$ namesleft #1 > { ", " * t do.name.latex.cmd * } { s nameptr "{ll}" format.name$ duplicate$ "others" = { 't := } { pop$ } if$ t "others" = { " " * bbl.etal emphasize * } { numnames #2 > { "," * } { skip$ } if$ bbl.and space.word * t do.name.latex.cmd * } if$ } if$ } { t do.name.latex.cmd } if$ nameptr #1 + 'nameptr := namesleft #1 - 'namesleft := } while$ cap.status.std } if$ } %% Higher Level Formats %% addresses/locations FUNCTION {format.address} { address duplicate$ empty$ 'skip$ { this.to.prev.status this.status.std cap.status.std } if$ } %% author/editor names FUNCTION {format.authors}{ author "author" format.names } FUNCTION {format.editors} { editor "editor" format.names duplicate$ empty$ 'skip$ { ", " * get.bbl.editor capitalize * } if$ } %% date FUNCTION {format.date} { month "month" bibinfo.check duplicate$ empty$ year "year" bibinfo.check duplicate$ empty$ { swap$ 'skip$ { this.to.prev.status this.status.std cap.status.std "there's a month but no year in " cite$ * warning$ } if$ * } { this.to.prev.status this.status.std cap.status.std swap$ 'skip$ { swap$ " " * swap$ } if$ * } if$ } FUNCTION {format.date.electronic} { month "month" bibinfo.check duplicate$ empty$ year "year" bibinfo.check duplicate$ empty$ { swap$ { pop$ } { "there's a month but no year in " cite$ * warning$ pop$ ")" * "(" swap$ * this.to.prev.status punct.no 'this.status.punct := space.normal 'this.status.space := quote.no 'this.status.quote := cap.yes 'status.cap := } if$ } { swap$ { swap$ pop$ ")" * "(" swap$ * } { "(" swap$ * ", " * swap$ * ")" * } if$ this.to.prev.status punct.no 'this.status.punct := space.normal 'this.status.space := quote.no 'this.status.quote := cap.yes 'status.cap := } if$ } %% edition/title % Note: IEEE considers the edition to be closely associated with % the title of a book. So, in IEEEtran.bst the edition is normally handled % within the formatting of the title. The format.edition function is % retained here for possible future use. FUNCTION {format.edition} { edition duplicate$ empty$ 'skip$ { this.to.prev.status this.status.std convert.edition status.cap { "t" } { "l" } if$ change.case$ "edition" bibinfo.check "~" * bbl.edition * cap.status.std } if$ } % This is used to format the booktitle of a conference proceedings. % Here we use the "intype" field to provide the user a way to % override the word "in" (e.g., with things like "presented at") % Use of intype stops the emphasis of the booktitle to indicate that % we no longer mean the written conference proceedings, but the % conference itself. FUNCTION {format.in.booktitle} { booktitle "booktitle" bibinfo.check duplicate$ empty$ 'skip$ { this.to.prev.status this.status.std select.language intype missing$ { emphasize bbl.in " " * } { intype " " * } if$ swap$ * cap.status.std } if$ } % This is used to format the booktitle of collection. % Here the "intype" field is not supported, but "edition" is. FUNCTION {format.in.booktitle.edition} { booktitle "booktitle" bibinfo.check duplicate$ empty$ 'skip$ { this.to.prev.status this.status.std select.language emphasize edition empty$ 'skip$ { ", " * edition convert.edition "l" change.case$ * "~" * bbl.edition * } if$ bbl.in " " * swap$ * cap.status.std } if$ } FUNCTION {format.article.title} { title duplicate$ empty$ 'skip$ { this.to.prev.status this.status.std "t" change.case$ } if$ "title" bibinfo.check duplicate$ empty$ 'skip$ { quote.close 'this.status.quote := is.last.char.not.punct { punct.std 'this.status.punct := } { punct.no 'this.status.punct := } if$ select.language "``" swap$ * cap.status.std } if$ } FUNCTION {format.article.title.electronic} { title duplicate$ empty$ 'skip$ { this.to.prev.status this.status.std cap.status.std "t" change.case$ } if$ "title" bibinfo.check duplicate$ empty$ { skip$ } { select.language } if$ } FUNCTION {format.book.title.edition} { title "title" bibinfo.check duplicate$ empty$ { "empty title in " cite$ * warning$ } { this.to.prev.status this.status.std select.language emphasize edition empty$ 'skip$ { ", " * edition convert.edition status.cap { "t" } { "l" } if$ change.case$ * "~" * bbl.edition * } if$ cap.status.std } if$ } FUNCTION {format.book.title} { title "title" bibinfo.check duplicate$ empty$ 'skip$ { this.to.prev.status this.status.std cap.status.std select.language emphasize } if$ } %% journal FUNCTION {format.journal} { journal duplicate$ empty$ 'skip$ { this.to.prev.status this.status.std cap.status.std select.language emphasize } if$ } %% how published FUNCTION {format.howpublished} { howpublished duplicate$ empty$ 'skip$ { this.to.prev.status this.status.std cap.status.std } if$ } %% institutions/organization/publishers/school FUNCTION {format.institution} { institution duplicate$ empty$ 'skip$ { this.to.prev.status this.status.std cap.status.std } if$ } FUNCTION {format.organization} { organization duplicate$ empty$ 'skip$ { this.to.prev.status this.status.std cap.status.std } if$ } FUNCTION {format.address.publisher.date} { publisher "publisher" bibinfo.warn format.address.org.or.pub.date } FUNCTION {format.address.publisher.date.nowarn} { publisher "publisher" bibinfo.check format.address.org.or.pub.date } FUNCTION {format.address.organization.date} { organization "organization" bibinfo.check format.address.org.or.pub.date } FUNCTION {format.school} { school duplicate$ empty$ 'skip$ { this.to.prev.status this.status.std cap.status.std } if$ } %% volume/number/series/chapter/pages FUNCTION {format.volume} { volume empty.field.to.null.string duplicate$ empty$ 'skip$ { this.to.prev.status this.status.std bbl.volume status.cap { capitalize } { skip$ } if$ swap$ tie.or.space.prefix "volume" bibinfo.check * * cap.status.std } if$ } FUNCTION {format.number} { number empty.field.to.null.string duplicate$ empty$ 'skip$ { this.to.prev.status this.status.std status.cap { bbl.number capitalize } { bbl.number } if$ swap$ tie.or.space.prefix "number" bibinfo.check * * cap.status.std } if$ } FUNCTION {format.number.if.use.for.article} { is.use.number.for.article { format.number } { "" } if$ } % IEEE does not seem to tie the series so closely with the volume % and number as is done in other bibliography styles. Instead the % series is treated somewhat like an extension of the title. FUNCTION {format.series} { series empty$ { "" } { this.to.prev.status this.status.std bbl.series " " * series "series" bibinfo.check * cap.status.std } if$ } FUNCTION {format.chapter} { chapter empty$ { "" } { this.to.prev.status this.status.std type empty$ { bbl.chapter } { type "l" change.case$ "type" bibinfo.check } if$ chapter tie.or.space.prefix "chapter" bibinfo.check * * cap.status.std } if$ } % The intended use of format.paper is for paper numbers of inproceedings. % The paper type can be overridden via the type field. % We allow the type to be displayed even if the paper number is absent % for things like "postdeadline paper" FUNCTION {format.paper} { is.use.paper { paper empty$ { type empty$ { "" } { this.to.prev.status this.status.std type "type" bibinfo.check cap.status.std } if$ } { this.to.prev.status this.status.std type empty$ { bbl.paper } { type "type" bibinfo.check } if$ " " * paper "paper" bibinfo.check * cap.status.std } if$ } { "" } if$ } FUNCTION {format.pages} { pages duplicate$ empty$ 'skip$ { this.to.prev.status this.status.std duplicate$ is.multiple.pages { bbl.pages swap$ n.dashify } { bbl.page swap$ } if$ tie.or.space.prefix "pages" bibinfo.check * * cap.status.std } if$ } %% technical report number FUNCTION {format.tech.report.number} { number "number" bibinfo.check this.to.prev.status this.status.std cap.status.std type duplicate$ empty$ { pop$ bbl.techrep } { skip$ } if$ "type" bibinfo.check swap$ duplicate$ empty$ { pop$ } { tie.or.space.prefix * * } if$ } %% note FUNCTION {format.note} { note empty$ { "" } { this.to.prev.status this.status.std punct.period 'this.status.punct := note #1 #1 substring$ duplicate$ "{" = { skip$ } { status.cap { "u" } { "l" } if$ change.case$ } if$ note #2 global.max$ substring$ * "note" bibinfo.check cap.yes 'status.cap := } if$ } %% patent FUNCTION {format.patent.date} { this.to.prev.status this.status.std year empty$ { monthfiled duplicate$ empty$ { "monthfiled" bibinfo.check pop$ "" } { "monthfiled" bibinfo.check } if$ dayfiled duplicate$ empty$ { "dayfiled" bibinfo.check pop$ "" * } { "dayfiled" bibinfo.check monthfiled empty$ { "dayfiled without a monthfiled in " cite$ * warning$ * } { " " swap$ * * } if$ } if$ yearfiled empty$ { "no year or yearfiled in " cite$ * warning$ } { yearfiled "yearfiled" bibinfo.check swap$ duplicate$ empty$ { pop$ } { ", " * swap$ * } if$ } if$ } { month duplicate$ empty$ { "month" bibinfo.check pop$ "" } { "month" bibinfo.check } if$ day duplicate$ empty$ { "day" bibinfo.check pop$ "" * } { "day" bibinfo.check month empty$ { "day without a month in " cite$ * warning$ * } { " " swap$ * * } if$ } if$ year "year" bibinfo.check swap$ duplicate$ empty$ { pop$ } { ", " * swap$ * } if$ } if$ cap.status.std } FUNCTION {format.patent.nationality.type.number} { this.to.prev.status this.status.std nationality duplicate$ empty$ { "nationality" bibinfo.warn pop$ "" } { "nationality" bibinfo.check duplicate$ "l" change.case$ "united states" = { pop$ bbl.patentUS } { skip$ } if$ " " * } if$ type empty$ { bbl.patent "type" bibinfo.check } { type "type" bibinfo.check } if$ * number duplicate$ empty$ { "number" bibinfo.warn pop$ } { "number" bibinfo.check large.number.separate swap$ " " * swap$ * } if$ cap.status.std } %% standard FUNCTION {format.organization.institution.standard.type.number} { this.to.prev.status this.status.std organization duplicate$ empty$ { pop$ institution duplicate$ empty$ { "institution" bibinfo.warn } { "institution" bibinfo.warn " " * } if$ } { "organization" bibinfo.warn " " * } if$ type empty$ { bbl.standard "type" bibinfo.check } { type "type" bibinfo.check } if$ * number duplicate$ empty$ { "number" bibinfo.check pop$ } { "number" bibinfo.check large.number.separate swap$ " " * swap$ * } if$ cap.status.std } FUNCTION {format.revision} { revision empty$ { "" } { this.to.prev.status this.status.std bbl.revision revision tie.or.space.prefix "revision" bibinfo.check * * cap.status.std } if$ } %% thesis FUNCTION {format.master.thesis.type} { this.to.prev.status this.status.std type empty$ { bbl.mthesis } { type "type" bibinfo.check } if$ cap.status.std } FUNCTION {format.phd.thesis.type} { this.to.prev.status this.status.std type empty$ { bbl.phdthesis } { type "type" bibinfo.check } if$ cap.status.std } %% URL FUNCTION {format.url} { url empty$ { "" } { this.to.prev.status this.status.std cap.yes 'status.cap := name.url.prefix " " * "\url{" * url * "}" * punct.no 'this.status.punct := punct.period 'prev.status.punct := space.normal 'this.status.space := space.normal 'prev.status.space := quote.no 'this.status.quote := } if$ } %%%%%%%%%%%%%%%%%%%% %% ENTRY HANDLERS %% %%%%%%%%%%%%%%%%%%%% % Note: In many journals, IEEE (or the authors) tend not to show the number % for articles, so the display of the number is controlled here by the % switch "is.use.number.for.article" FUNCTION {article} { std.status.using.comma start.entry if.url.alt.interword.spacing format.authors "author" output.warn name.or.dash format.article.title "title" output.warn format.journal "journal" bibinfo.check "journal" output.warn format.volume output format.number.if.use.for.article output format.pages output format.date "year" output.warn format.note output format.url output fin.entry if.url.std.interword.spacing } FUNCTION {book} { std.status.using.comma start.entry if.url.alt.interword.spacing author empty$ { format.editors "author and editor" output.warn } { format.authors output.nonnull } if$ name.or.dash format.book.title.edition output format.series output author empty$ { skip$ } { format.editors output } if$ format.address.publisher.date output format.volume output format.number output format.note output format.url output fin.entry if.url.std.interword.spacing } FUNCTION {booklet} { std.status.using.comma start.entry if.url.alt.interword.spacing format.authors output name.or.dash format.article.title "title" output.warn format.howpublished "howpublished" bibinfo.check output format.organization "organization" bibinfo.check output format.address "address" bibinfo.check output format.date output format.note output format.url output fin.entry if.url.std.interword.spacing } FUNCTION {electronic} { std.status.using.period start.entry if.url.alt.interword.spacing format.authors output name.or.dash format.date.electronic output format.article.title.electronic output format.howpublished "howpublished" bibinfo.check output format.organization "organization" bibinfo.check output format.address "address" bibinfo.check output format.note output format.url output fin.entry empty.entry.warn if.url.std.interword.spacing } FUNCTION {inbook} { std.status.using.comma start.entry if.url.alt.interword.spacing author empty$ { format.editors "author and editor" output.warn } { format.authors output.nonnull } if$ name.or.dash format.book.title.edition output format.series output format.address.publisher.date output format.volume output format.number output format.chapter output format.pages output format.note output format.url output fin.entry if.url.std.interword.spacing } FUNCTION {incollection} { std.status.using.comma start.entry if.url.alt.interword.spacing format.authors "author" output.warn name.or.dash format.article.title "title" output.warn format.in.booktitle.edition "booktitle" output.warn format.series output format.editors output format.address.publisher.date.nowarn output format.volume output format.number output format.chapter output format.pages output format.note output format.url output fin.entry if.url.std.interword.spacing } FUNCTION {inproceedings} { std.status.using.comma start.entry if.url.alt.interword.spacing format.authors "author" output.warn name.or.dash format.article.title "title" output.warn format.in.booktitle "booktitle" output.warn format.series output format.editors output format.volume output format.number output publisher empty$ { format.address.organization.date output } { format.organization "organization" bibinfo.check output format.address.publisher.date output } if$ format.paper output format.pages output format.note output format.url output fin.entry if.url.std.interword.spacing } FUNCTION {manual} { std.status.using.comma start.entry if.url.alt.interword.spacing format.authors output name.or.dash format.book.title.edition "title" output.warn format.howpublished "howpublished" bibinfo.check output format.organization "organization" bibinfo.check output format.address "address" bibinfo.check output format.date output format.note output format.url output fin.entry if.url.std.interword.spacing } FUNCTION {mastersthesis} { std.status.using.comma start.entry if.url.alt.interword.spacing format.authors "author" output.warn name.or.dash format.article.title "title" output.warn format.master.thesis.type output.nonnull format.school "school" bibinfo.warn output format.address "address" bibinfo.check output format.date "year" output.warn format.note output format.url output fin.entry if.url.std.interword.spacing } FUNCTION {misc} { std.status.using.comma start.entry if.url.alt.interword.spacing format.authors output name.or.dash format.article.title output format.howpublished "howpublished" bibinfo.check output format.organization "organization" bibinfo.check output format.address "address" bibinfo.check output format.pages output format.date output format.note output format.url output fin.entry empty.entry.warn if.url.std.interword.spacing } FUNCTION {patent} { std.status.using.comma start.entry if.url.alt.interword.spacing format.authors output name.or.dash format.article.title output format.patent.nationality.type.number output format.patent.date output format.note output format.url output fin.entry empty.entry.warn if.url.std.interword.spacing } FUNCTION {periodical} { std.status.using.comma start.entry if.url.alt.interword.spacing format.editors output name.or.dash format.book.title "title" output.warn format.series output format.volume output format.number output format.organization "organization" bibinfo.check output format.date "year" output.warn format.note output format.url output fin.entry if.url.std.interword.spacing } FUNCTION {phdthesis} { std.status.using.comma start.entry if.url.alt.interword.spacing format.authors "author" output.warn name.or.dash format.article.title "title" output.warn format.phd.thesis.type output.nonnull format.school "school" bibinfo.warn output format.address "address" bibinfo.check output format.date "year" output.warn format.note output format.url output fin.entry if.url.std.interword.spacing } FUNCTION {proceedings} { std.status.using.comma start.entry if.url.alt.interword.spacing format.editors output name.or.dash format.book.title "title" output.warn format.series output format.volume output format.number output publisher empty$ { format.address.organization.date output } { format.organization "organization" bibinfo.check output format.address.publisher.date output } if$ format.note output format.url output fin.entry if.url.std.interword.spacing } FUNCTION {standard} { std.status.using.comma start.entry if.url.alt.interword.spacing format.authors output name.or.dash format.book.title "title" output.warn format.howpublished "howpublished" bibinfo.check output format.organization.institution.standard.type.number output format.revision output format.date output format.note output format.url output fin.entry if.url.std.interword.spacing } FUNCTION {techreport} { std.status.using.comma start.entry if.url.alt.interword.spacing format.authors "author" output.warn name.or.dash format.article.title "title" output.warn format.howpublished "howpublished" bibinfo.check output format.institution "institution" bibinfo.warn output format.address "address" bibinfo.check output format.tech.report.number output.nonnull format.date "year" output.warn format.note output format.url output fin.entry if.url.std.interword.spacing } FUNCTION {unpublished} { std.status.using.comma start.entry if.url.alt.interword.spacing format.authors "author" output.warn name.or.dash format.article.title "title" output.warn format.date output format.note "note" output.warn format.url output fin.entry if.url.std.interword.spacing } % The special entry type which provides the user interface to the % BST controls FUNCTION {IEEEtranBSTCTL} { is.print.banners.to.terminal { "** IEEEtran BST control entry " quote$ * cite$ * quote$ * " detected." * top$ } { skip$ } if$ CTLuse_article_number empty$ { skip$ } { CTLuse_article_number yes.no.to.int 'is.use.number.for.article := } if$ CTLuse_paper empty$ { skip$ } { CTLuse_paper yes.no.to.int 'is.use.paper := } if$ CTLuse_forced_etal empty$ { skip$ } { CTLuse_forced_etal yes.no.to.int 'is.forced.et.al := } if$ CTLmax_names_forced_etal empty$ { skip$ } { CTLmax_names_forced_etal string.to.integer 'max.num.names.before.forced.et.al := } if$ CTLnames_show_etal empty$ { skip$ } { CTLnames_show_etal string.to.integer 'num.names.shown.with.forced.et.al := } if$ CTLuse_alt_spacing empty$ { skip$ } { CTLuse_alt_spacing yes.no.to.int 'is.use.alt.interword.spacing := } if$ CTLalt_stretch_factor empty$ { skip$ } { CTLalt_stretch_factor 'ALTinterwordstretchfactor := "\renewcommand{\BIBentryALTinterwordstretchfactor}{" ALTinterwordstretchfactor * "}" * write$ newline$ } if$ CTLdash_repeated_names empty$ { skip$ } { CTLdash_repeated_names yes.no.to.int 'is.dash.repeated.names := } if$ CTLname_format_string empty$ { skip$ } { CTLname_format_string 'name.format.string := } if$ CTLname_latex_cmd empty$ { skip$ } { CTLname_latex_cmd 'name.latex.cmd := } if$ CTLname_url_prefix missing$ { skip$ } { cTLname_url_prefix 'name.url.prefix := } if$ num.names.shown.with.forced.et.al max.num.names.before.forced.et.al > { "CTLnames_show_etal cannot be greater than CTLmax_names_forced_etal in " cite$ * warning$ max.num.names.before.forced.et.al 'num.names.shown.with.forced.et.al := } { skip$ } if$ } %%%%%%%%%%%%%%%%%%% %% ENTRY ALIASES %% %%%%%%%%%%%%%%%%%%% FUNCTION {conference}{inproceedings} FUNCTION {online}{electronic} FUNCTION {internet}{electronic} FUNCTION {webpage}{electronic} FUNCTION {www}{electronic} FUNCTION {default.type}{misc} %%%%%%%%%%%%%%%%%% %% MAIN PROGRAM %% %%%%%%%%%%%%%%%%%% READ EXECUTE {initialize.controls} EXECUTE {initialize.status.constants} EXECUTE {banner.message} EXECUTE {initialize.longest.label} ITERATE {longest.label.pass} EXECUTE {begin.bib} ITERATE {call.type$} EXECUTE {end.bib} EXECUTE{completed.message} %% That's all folks, mds. ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.579612 pybtex-0.24.0/tests/data/IEEEtran_IEEEtran.bibtex.bbl0000644000175000001440000000347300000000000021746 0ustar00agusers00000000000000% Generated by IEEEtran.bst, version: 1.13 (2008/09/30) \begin{thebibliography}{1} \providecommand{\url}[1]{#1} \csname url@samestyle\endcsname \providecommand{\newblock}{\relax} \providecommand{\bibinfo}[2]{#2} \providecommand{\BIBentrySTDinterwordspacing}{\spaceskip=0pt\relax} \providecommand{\BIBentryALTinterwordstretchfactor}{4} \providecommand{\BIBentryALTinterwordspacing}{\spaceskip=\fontdimen2\font plus \BIBentryALTinterwordstretchfactor\fontdimen3\font minus \fontdimen4\font\relax} \providecommand{\BIBforeignlanguage}[2]{{% \expandafter\ifx\csname l@#1\endcsname\relax \typeout{** WARNING: IEEEtran.bst: No hyphenation pattern has been}% \typeout{** loaded for the language `#1'. Using the pattern for}% \typeout{** the default language instead.}% \else \language=\csname l@#1\endcsname \fi #2}} \providecommand{\BIBdecl}{\relax} \BIBdecl \renewcommand{\BIBentryALTinterwordstretchfactor}{4} \bibitem{IEEEexample:bibtexuser} \BIBentryALTinterwordspacing O.~Patashnik. (1988, Feb.) {{\BibTeX}}ing. {btxdoc.pdf}. URL: \url{http://www.ctan.org/tex-archive/biblio/bibtex/contrib/doc/} \BIBentrySTDinterwordspacing \bibitem{IEEEexample:tamethebeast} \BIBentryALTinterwordspacing N.~Markey. (2005, Oct.) Tame the beast --- the b to x of {{\BibTeX}}. URL: \url{http://tug.ctan.org/tex-archive/info/bibtex/tamethebeast/} \BIBentrySTDinterwordspacing \bibitem{IEEEexample:bibtexFAQ} \BIBentryALTinterwordspacing D.~Hoadley and M.~Shell. (2007, Jan.) {{\BibTeX}} tips and {FAQ}. {btxFAQ.pdf}. URL: \url{http://www.ctan.org/tex-archive/biblio/bibtex/contrib/doc/} \BIBentrySTDinterwordspacing \bibitem{IEEEexample:bibtexguide} \BIBentryALTinterwordspacing K.-J. Kim. (2004, Apr.) A {{\BibTeX}} guide via examples. {bibtex\_guide.pdf}. URL: \url{http://www.geocities.com/kijoo2000/} \BIBentrySTDinterwordspacing \end{thebibliography} ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5716121 pybtex-0.24.0/tests/data/__init__.py0000644000175000001440000000000000000000000017031 0ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.577612 pybtex-0.24.0/tests/data/alpha.bst0000644000175000001440000005654300000000000016546 0ustar00agusers00000000000000% BibTeX standard bibliography style `alpha' % Version 0.99b (8-Dec-10 release) for BibTeX versions 0.99a or later. % Copyright (C) 1984, 1985, 1988, 2010 Howard Trickey and Oren Patashnik. % Unlimited copying and redistribution of this file are permitted as long as % it is unmodified. Modifications (and redistribution of modified versions) % are also permitted, but only if the resulting file is renamed to something % besides btxbst.doc, plain.bst, unsrt.bst, alpha.bst, and abbrv.bst. % This restriction helps ensure that all standard styles are identical. % The file btxbst.doc has the documentation for this style. ENTRY { address author booktitle chapter edition editor howpublished institution journal key month note number organization pages publisher school series title type volume year } {} { label extra.label sort.label } INTEGERS { output.state before.all mid.sentence after.sentence after.block } FUNCTION {init.state.consts} { #0 'before.all := #1 'mid.sentence := #2 'after.sentence := #3 'after.block := } STRINGS { s t } FUNCTION {output.nonnull} { 's := output.state mid.sentence = { ", " * write$ } { output.state after.block = { add.period$ write$ newline$ "\newblock " write$ } { output.state before.all = 'write$ { add.period$ " " * write$ } if$ } if$ mid.sentence 'output.state := } if$ s } FUNCTION {output} { duplicate$ empty$ 'pop$ 'output.nonnull if$ } FUNCTION {output.check} { 't := duplicate$ empty$ { pop$ "empty " t * " in " * cite$ * warning$ } 'output.nonnull if$ } FUNCTION {output.bibitem} { newline$ "\bibitem[" write$ label write$ "]{" write$ cite$ write$ "}" write$ newline$ "" before.all 'output.state := } FUNCTION {fin.entry} { add.period$ write$ newline$ } FUNCTION {new.block} { output.state before.all = 'skip$ { after.block 'output.state := } if$ } FUNCTION {new.sentence} { output.state after.block = 'skip$ { output.state before.all = 'skip$ { after.sentence 'output.state := } if$ } if$ } FUNCTION {not} { { #0 } { #1 } if$ } FUNCTION {and} { 'skip$ { pop$ #0 } if$ } FUNCTION {or} { { pop$ #1 } 'skip$ if$ } FUNCTION {new.block.checka} { empty$ 'skip$ 'new.block if$ } FUNCTION {new.block.checkb} { empty$ swap$ empty$ and 'skip$ 'new.block if$ } FUNCTION {new.sentence.checka} { empty$ 'skip$ 'new.sentence if$ } FUNCTION {new.sentence.checkb} { empty$ swap$ empty$ and 'skip$ 'new.sentence if$ } FUNCTION {field.or.null} { duplicate$ empty$ { pop$ "" } 'skip$ if$ } FUNCTION {emphasize} { duplicate$ empty$ { pop$ "" } { "{\em " swap$ * "}" * } if$ } INTEGERS { nameptr namesleft numnames } FUNCTION {format.names} { 's := #1 'nameptr := s num.names$ 'numnames := numnames 'namesleft := { namesleft #0 > } { s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't := nameptr #1 > { namesleft #1 > { ", " * t * } { numnames #2 > { "," * } 'skip$ if$ t "others" = { " et~al." * } { " and " * t * } if$ } if$ } 't if$ nameptr #1 + 'nameptr := namesleft #1 - 'namesleft := } while$ } FUNCTION {format.authors} { author empty$ { "" } { author format.names } if$ } FUNCTION {format.editors} { editor empty$ { "" } { editor format.names editor num.names$ #1 > { ", editors" * } { ", editor" * } if$ } if$ } FUNCTION {format.title} { title empty$ { "" } { title "t" change.case$ } if$ } FUNCTION {n.dashify} { 't := "" { t empty$ not } { t #1 #1 substring$ "-" = { t #1 #2 substring$ "--" = not { "--" * t #2 global.max$ substring$ 't := } { { t #1 #1 substring$ "-" = } { "-" * t #2 global.max$ substring$ 't := } while$ } if$ } { t #1 #1 substring$ * t #2 global.max$ substring$ 't := } if$ } while$ } FUNCTION {format.date} { year empty$ { month empty$ { "" } { "there's a month but no year in " cite$ * warning$ month } if$ } { month empty$ 'year { month " " * year * } if$ } if$ } FUNCTION {format.btitle} { title emphasize } FUNCTION {tie.or.space.connect} { duplicate$ text.length$ #3 < { "~" } { " " } if$ swap$ * * } FUNCTION {either.or.check} { empty$ 'pop$ { "can't use both " swap$ * " fields in " * cite$ * warning$ } if$ } FUNCTION {format.bvolume} { volume empty$ { "" } { "volume" volume tie.or.space.connect series empty$ 'skip$ { " of " * series emphasize * } if$ "volume and number" number either.or.check } if$ } FUNCTION {format.number.series} { volume empty$ { number empty$ { series field.or.null } { output.state mid.sentence = { "number" } { "Number" } if$ number tie.or.space.connect series empty$ { "there's a number but no series in " cite$ * warning$ } { " in " * series * } if$ } if$ } { "" } if$ } FUNCTION {format.edition} { edition empty$ { "" } { output.state mid.sentence = { edition "l" change.case$ " edition" * } { edition "t" change.case$ " edition" * } if$ } if$ } INTEGERS { multiresult } FUNCTION {multi.page.check} { 't := #0 'multiresult := { multiresult not t empty$ not and } { t #1 #1 substring$ duplicate$ "-" = swap$ duplicate$ "," = swap$ "+" = or or { #1 'multiresult := } { t #2 global.max$ substring$ 't := } if$ } while$ multiresult } FUNCTION {format.pages} { pages empty$ { "" } { pages multi.page.check { "pages" pages n.dashify tie.or.space.connect } { "page" pages tie.or.space.connect } if$ } if$ } FUNCTION {format.vol.num.pages} { volume field.or.null number empty$ 'skip$ { "(" number * ")" * * volume empty$ { "there's a number but no volume in " cite$ * warning$ } 'skip$ if$ } if$ pages empty$ 'skip$ { duplicate$ empty$ { pop$ format.pages } { ":" * pages n.dashify * } if$ } if$ } FUNCTION {format.chapter.pages} { chapter empty$ 'format.pages { type empty$ { "chapter" } { type "l" change.case$ } if$ chapter tie.or.space.connect pages empty$ 'skip$ { ", " * format.pages * } if$ } if$ } FUNCTION {format.in.ed.booktitle} { booktitle empty$ { "" } { editor empty$ { "In " booktitle emphasize * } { "In " format.editors * ", " * booktitle emphasize * } if$ } if$ } FUNCTION {empty.misc.check} { author empty$ title empty$ howpublished empty$ month empty$ year empty$ note empty$ and and and and and key empty$ not and { "all relevant fields are empty in " cite$ * warning$ } 'skip$ if$ } FUNCTION {format.thesis.type} { type empty$ 'skip$ { pop$ type "t" change.case$ } if$ } FUNCTION {format.tr.number} { type empty$ { "Technical Report" } 'type if$ number empty$ { "t" change.case$ } { number tie.or.space.connect } if$ } FUNCTION {format.article.crossref} { key empty$ { journal empty$ { "need key or journal for " cite$ * " to crossref " * crossref * warning$ "" } { "In {\em " journal * "\/}" * } if$ } { "In " key * } if$ " \cite{" * crossref * "}" * } FUNCTION {format.crossref.editor} { editor #1 "{vv~}{ll}" format.name$ editor num.names$ duplicate$ #2 > { pop$ " et~al." * } { #2 < 'skip$ { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = { " et~al." * } { " and " * editor #2 "{vv~}{ll}" format.name$ * } if$ } if$ } if$ } FUNCTION {format.book.crossref} { volume empty$ { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ "In " } { "Volume" volume tie.or.space.connect " of " * } if$ editor empty$ editor field.or.null author field.or.null = or { key empty$ { series empty$ { "need editor, key, or series for " cite$ * " to crossref " * crossref * warning$ "" * } { "{\em " * series * "\/}" * } if$ } { key * } if$ } { format.crossref.editor * } if$ " \cite{" * crossref * "}" * } FUNCTION {format.incoll.inproc.crossref} { editor empty$ editor field.or.null author field.or.null = or { key empty$ { booktitle empty$ { "need editor, key, or booktitle for " cite$ * " to crossref " * crossref * warning$ "" } { "In {\em " booktitle * "\/}" * } if$ } { "In " key * } if$ } { "In " format.crossref.editor * } if$ " \cite{" * crossref * "}" * } FUNCTION {article} { output.bibitem format.authors "author" output.check new.block format.title "title" output.check new.block crossref missing$ { journal emphasize "journal" output.check format.vol.num.pages output format.date "year" output.check } { format.article.crossref output.nonnull format.pages output } if$ new.block note output fin.entry } FUNCTION {book} { output.bibitem author empty$ { format.editors "author and editor" output.check } { format.authors output.nonnull crossref missing$ { "author and editor" editor either.or.check } 'skip$ if$ } if$ new.block format.btitle "title" output.check crossref missing$ { format.bvolume output new.block format.number.series output new.sentence publisher "publisher" output.check address output } { new.block format.book.crossref output.nonnull } if$ format.edition output format.date "year" output.check new.block note output fin.entry } FUNCTION {booklet} { output.bibitem format.authors output new.block format.title "title" output.check howpublished address new.block.checkb howpublished output address output format.date output new.block note output fin.entry } FUNCTION {inbook} { output.bibitem author empty$ { format.editors "author and editor" output.check } { format.authors output.nonnull crossref missing$ { "author and editor" editor either.or.check } 'skip$ if$ } if$ new.block format.btitle "title" output.check crossref missing$ { format.bvolume output format.chapter.pages "chapter and pages" output.check new.block format.number.series output new.sentence publisher "publisher" output.check address output } { format.chapter.pages "chapter and pages" output.check new.block format.book.crossref output.nonnull } if$ format.edition output format.date "year" output.check new.block note output fin.entry } FUNCTION {incollection} { output.bibitem format.authors "author" output.check new.block format.title "title" output.check new.block crossref missing$ { format.in.ed.booktitle "booktitle" output.check format.bvolume output format.number.series output format.chapter.pages output new.sentence publisher "publisher" output.check address output format.edition output format.date "year" output.check } { format.incoll.inproc.crossref output.nonnull format.chapter.pages output } if$ new.block note output fin.entry } FUNCTION {inproceedings} { output.bibitem format.authors "author" output.check new.block format.title "title" output.check new.block crossref missing$ { format.in.ed.booktitle "booktitle" output.check format.bvolume output format.number.series output format.pages output address empty$ { organization publisher new.sentence.checkb organization output publisher output format.date "year" output.check } { address output.nonnull format.date "year" output.check new.sentence organization output publisher output } if$ } { format.incoll.inproc.crossref output.nonnull format.pages output } if$ new.block note output fin.entry } FUNCTION {conference} { inproceedings } FUNCTION {manual} { output.bibitem author empty$ { organization empty$ 'skip$ { organization output.nonnull address output } if$ } { format.authors output.nonnull } if$ new.block format.btitle "title" output.check author empty$ { organization empty$ { address new.block.checka address output } 'skip$ if$ } { organization address new.block.checkb organization output address output } if$ format.edition output format.date output new.block note output fin.entry } FUNCTION {mastersthesis} { output.bibitem format.authors "author" output.check new.block format.title "title" output.check new.block "Master's thesis" format.thesis.type output.nonnull school "school" output.check address output format.date "year" output.check new.block note output fin.entry } FUNCTION {misc} { output.bibitem format.authors output title howpublished new.block.checkb format.title output howpublished new.block.checka howpublished output format.date output new.block note output fin.entry empty.misc.check } FUNCTION {phdthesis} { output.bibitem format.authors "author" output.check new.block format.btitle "title" output.check new.block "PhD thesis" format.thesis.type output.nonnull school "school" output.check address output format.date "year" output.check new.block note output fin.entry } FUNCTION {proceedings} { output.bibitem editor empty$ { organization output } { format.editors output.nonnull } if$ new.block format.btitle "title" output.check format.bvolume output format.number.series output address empty$ { editor empty$ { publisher new.sentence.checka } { organization publisher new.sentence.checkb organization output } if$ publisher output format.date "year" output.check } { address output.nonnull format.date "year" output.check new.sentence editor empty$ 'skip$ { organization output } if$ publisher output } if$ new.block note output fin.entry } FUNCTION {techreport} { output.bibitem format.authors "author" output.check new.block format.title "title" output.check new.block format.tr.number output.nonnull institution "institution" output.check address output format.date "year" output.check new.block note output fin.entry } FUNCTION {unpublished} { output.bibitem format.authors "author" output.check new.block format.title "title" output.check new.block note "note" output.check format.date output fin.entry } FUNCTION {default.type} { misc } MACRO {jan} {"January"} MACRO {feb} {"February"} MACRO {mar} {"March"} MACRO {apr} {"April"} MACRO {may} {"May"} MACRO {jun} {"June"} MACRO {jul} {"July"} MACRO {aug} {"August"} MACRO {sep} {"September"} MACRO {oct} {"October"} MACRO {nov} {"November"} MACRO {dec} {"December"} MACRO {acmcs} {"ACM Computing Surveys"} MACRO {acta} {"Acta Informatica"} MACRO {cacm} {"Communications of the ACM"} MACRO {ibmjrd} {"IBM Journal of Research and Development"} MACRO {ibmsj} {"IBM Systems Journal"} MACRO {ieeese} {"IEEE Transactions on Software Engineering"} MACRO {ieeetc} {"IEEE Transactions on Computers"} MACRO {ieeetcad} {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} MACRO {ipl} {"Information Processing Letters"} MACRO {jacm} {"Journal of the ACM"} MACRO {jcss} {"Journal of Computer and System Sciences"} MACRO {scp} {"Science of Computer Programming"} MACRO {sicomp} {"SIAM Journal on Computing"} MACRO {tocs} {"ACM Transactions on Computer Systems"} MACRO {tods} {"ACM Transactions on Database Systems"} MACRO {tog} {"ACM Transactions on Graphics"} MACRO {toms} {"ACM Transactions on Mathematical Software"} MACRO {toois} {"ACM Transactions on Office Information Systems"} MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} MACRO {tcs} {"Theoretical Computer Science"} READ FUNCTION {sortify} { purify$ "l" change.case$ } INTEGERS { len } FUNCTION {chop.word} { 's := 'len := s #1 len substring$ = { s len #1 + global.max$ substring$ } 's if$ } INTEGERS { et.al.char.used } FUNCTION {initialize.et.al.char.used} { #0 'et.al.char.used := } EXECUTE {initialize.et.al.char.used} FUNCTION {format.lab.names} { 's := s num.names$ 'numnames := numnames #1 > { numnames #4 > { #3 'namesleft := } { numnames 'namesleft := } if$ #1 'nameptr := "" { namesleft #0 > } { nameptr numnames = { s nameptr "{ff }{vv }{ll}{ jj}" format.name$ "others" = { "{\etalchar{+}}" * #1 'et.al.char.used := } { s nameptr "{v{}}{l{}}" format.name$ * } if$ } { s nameptr "{v{}}{l{}}" format.name$ * } if$ nameptr #1 + 'nameptr := namesleft #1 - 'namesleft := } while$ numnames #4 > { "{\etalchar{+}}" * #1 'et.al.char.used := } 'skip$ if$ } { s #1 "{v{}}{l{}}" format.name$ duplicate$ text.length$ #2 < { pop$ s #1 "{ll}" format.name$ #3 text.prefix$ } 'skip$ if$ } if$ } FUNCTION {author.key.label} { author empty$ { key empty$ { cite$ #1 #3 substring$ } { key #3 text.prefix$ } if$ } { author format.lab.names } if$ } FUNCTION {author.editor.key.label} { author empty$ { editor empty$ { key empty$ { cite$ #1 #3 substring$ } { key #3 text.prefix$ } if$ } { editor format.lab.names } if$ } { author format.lab.names } if$ } FUNCTION {author.key.organization.label} { author empty$ { key empty$ { organization empty$ { cite$ #1 #3 substring$ } { "The " #4 organization chop.word #3 text.prefix$ } if$ } { key #3 text.prefix$ } if$ } { author format.lab.names } if$ } FUNCTION {editor.key.organization.label} { editor empty$ { key empty$ { organization empty$ { cite$ #1 #3 substring$ } { "The " #4 organization chop.word #3 text.prefix$ } if$ } { key #3 text.prefix$ } if$ } { editor format.lab.names } if$ } FUNCTION {calc.label} { type$ "book" = type$ "inbook" = or 'author.editor.key.label { type$ "proceedings" = 'editor.key.organization.label { type$ "manual" = 'author.key.organization.label 'author.key.label if$ } if$ } if$ duplicate$ year field.or.null purify$ #-1 #2 substring$ * 'label := year field.or.null purify$ #-1 #4 substring$ * sortify 'sort.label := } FUNCTION {sort.format.names} { 's := #1 'nameptr := "" s num.names$ 'numnames := numnames 'namesleft := { namesleft #0 > } { nameptr #1 > { " " * } 'skip$ if$ s nameptr "{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}" format.name$ 't := nameptr numnames = t "others" = and { "et al" * } { t sortify * } if$ nameptr #1 + 'nameptr := namesleft #1 - 'namesleft := } while$ } FUNCTION {sort.format.title} { 't := "A " #2 "An " #3 "The " #4 t chop.word chop.word chop.word sortify #1 global.max$ substring$ } FUNCTION {author.sort} { author empty$ { key empty$ { "to sort, need author or key in " cite$ * warning$ "" } { key sortify } if$ } { author sort.format.names } if$ } FUNCTION {author.editor.sort} { author empty$ { editor empty$ { key empty$ { "to sort, need author, editor, or key in " cite$ * warning$ "" } { key sortify } if$ } { editor sort.format.names } if$ } { author sort.format.names } if$ } FUNCTION {author.organization.sort} { author empty$ { organization empty$ { key empty$ { "to sort, need author, organization, or key in " cite$ * warning$ "" } { key sortify } if$ } { "The " #4 organization chop.word sortify } if$ } { author sort.format.names } if$ } FUNCTION {editor.organization.sort} { editor empty$ { organization empty$ { key empty$ { "to sort, need editor, organization, or key in " cite$ * warning$ "" } { key sortify } if$ } { "The " #4 organization chop.word sortify } if$ } { editor sort.format.names } if$ } FUNCTION {presort} { calc.label sort.label " " * type$ "book" = type$ "inbook" = or 'author.editor.sort { type$ "proceedings" = 'editor.organization.sort { type$ "manual" = 'author.organization.sort 'author.sort if$ } if$ } if$ * " " * year field.or.null sortify * " " * title field.or.null sort.format.title * #1 entry.max$ substring$ 'sort.key$ := } ITERATE {presort} SORT STRINGS { longest.label last.sort.label next.extra } INTEGERS { longest.label.width last.extra.num } FUNCTION {initialize.longest.label} { "" 'longest.label := #0 int.to.chr$ 'last.sort.label := "" 'next.extra := #0 'longest.label.width := #0 'last.extra.num := } FUNCTION {forward.pass} { last.sort.label sort.label = { last.extra.num #1 + 'last.extra.num := last.extra.num int.to.chr$ 'extra.label := } { "a" chr.to.int$ 'last.extra.num := "" 'extra.label := sort.label 'last.sort.label := } if$ } FUNCTION {reverse.pass} { next.extra "b" = { "a" 'extra.label := } 'skip$ if$ label extra.label * 'label := label width$ longest.label.width > { label 'longest.label := label width$ 'longest.label.width := } 'skip$ if$ extra.label 'next.extra := } EXECUTE {initialize.longest.label} ITERATE {forward.pass} REVERSE {reverse.pass} FUNCTION {begin.bib} { et.al.char.used { "\newcommand{\etalchar}[1]{$^{#1}$}" write$ newline$ } 'skip$ if$ preamble$ empty$ 'skip$ { preamble$ write$ newline$ } if$ "\begin{thebibliography}{" longest.label * "}" * write$ newline$ } EXECUTE {begin.bib} EXECUTE {init.state.consts} ITERATE {call.type$} FUNCTION {end.bib} { newline$ "\end{thebibliography}" write$ newline$ } EXECUTE {end.bib} ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.573612 pybtex-0.24.0/tests/data/apacite.bst0000644000175000001440000043542200000000000017064 0ustar00agusers00000000000000%% %% This is file `apacite.bst', %% generated with the docstrip utility. %% %% The original source files were: %% %% apacite.dtx (with options: `bibstyle') %% %% This is a generated file. %% %% Copyright (C) 1994-2009 Erik Meijer and any individual authors listed %% elsewhere in this file. %% %% This file is part of the `apacite' package. %% ------------------------------------------- %% %% It may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either %% version 1.3 of this license or (at your option) any later %% version. The latest version of this license is in: %% %% http://www.latex-project.org/lppl.txt %% %% and version 1.3 or later is part of all distributions of %% LaTeX version 2005/12/01 or later. %% %% The `apacite' package consists of the files apacite.dtx and %% apacite.ins, and the following generated files: %% apacite.sty, apacite.bst, apacitex.bst, apa5ex.bib, %% apacite.drv, apacdoc.sty, apacann.bst, apacannx.bst, %% english.apc, dutch.apc, finnish.apc, french.apc, german.apc, %% ngerman.apc, greek.apc, norsk.apc, spanish.apc, swedish.apc. %% %% This work has the LPPL maintenance status `maintained' %% %% The Current Maintainer of this work is Erik Meijer %% %% This file may only be distributed together with a copy of the %% source files of the apacite package, i.e., apacite.dtx and %% apacite.ins. You may however distribute the apacite package without %% the generated files. %% %% apacite.bst %% [2009/03/01 v4.05 APA bibliography style] %% apacite.bst : reference list according to APA manual %% Written by Erik Meijer FUNCTION {identify.apacite.version} { % Put identifying string in the .blg file "apacite.bst" " [2009/03/01 v4.05 APA bibliography style]" * top$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ENTRY { address annote % only used for annotated version annotate % only used for annotated version author booktitle % for articles in books chair % for lectures chapter % for incollection, esp. internet documents day edition editor englishtitle % english translation of title in other language firstkey % key for first citation howpublished institution % for technical reports journal key % key for second and later citations, or all % citations if firstkey is missing lastchecked % for URL's month note number % number of journal or report organization % for unpublished % % for reprints, translations, etc. % originaladdress originalbooktitle originaledition originaleditor originaljournal originalnumber originalpages originalpublisher originalvolume originalyear % % back to normal % pages publisher school % for theses series % not used symposium % for lectures text % for literals title translator % translator of book (or article) type % type of phdthesis (e.g., Doctoral dissertation) % or type of article (e.g., Letter to the editor) % etc. url volume year } { title.number % for sorting titles cite.initials % dummy (0-1) indicating whether or not % initials of the 1st author must % be used for citing cite.num.names.full % number of names to be cited for full and cite.num.names.short % short cite add.to.year % For a, b, c, etc. after year % in multiple citations with same author-year } { year.label % For sorting entries by year author.year.sort.label % For sorting entries and checking whether % initials should be added, how many authors % should be cited and whether a, b, etc. % after year is necessary title.sort.label % for sorting titles type.2 % Replacement for type with misc entries and % entries that revert to misc. } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% INTEGERS { len pos name.max old.number numnames numnames.old nameptr lastname format.num.names cite.initials.old cite.num.names.old add.to.year.old forward multiresult dot brace.level } STRINGS { s t u old.label field aut1f aut1s aut1f.old aut1s.old aut2 aut2.old aut3 aut3.old aut4 aut4.old aut5 aut5.old aut6 aut6.old year.label.old } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {test} { #0 } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.index} { #0 } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% MACRO {jan} {"{\APACmonth{01}}"} MACRO {feb} {"{\APACmonth{02}}"} MACRO {mar} {"{\APACmonth{03}}"} MACRO {apr} {"{\APACmonth{04}}"} MACRO {may} {"{\APACmonth{05}}"} MACRO {jun} {"{\APACmonth{06}}"} MACRO {jul} {"{\APACmonth{07}}"} MACRO {aug} {"{\APACmonth{08}}"} MACRO {sep} {"{\APACmonth{09}}"} MACRO {oct} {"{\APACmonth{10}}"} MACRO {nov} {"{\APACmonth{11}}"} MACRO {dec} {"{\APACmonth{12}}"} MACRO {winter} {"{\APACmonth{13}}"} MACRO {spring} {"{\APACmonth{14}}"} MACRO {summer} {"{\APACmonth{15}}"} MACRO {fall} {"{\APACmonth{16}}"} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {not} { { #0 } { #1 } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {and} { 'skip$ { pop$ #0 } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {or} { { pop$ #1 } 'skip$ if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % issues warning if field is empty % call with % "field" field warning.if.empty % Note that the first field must be between quotes % because it is the fieldname for use in the warning message. % FUNCTION {warning.if.empty} { empty$ { "No " swap$ * " in " * cite$ * warning$ } { pop$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % issues warning if title, type, and howpublished are empty % FUNCTION {check.relevant.fields} { title empty$ type empty$ and howpublished empty$ and { "No title, type, and howpublished in " cite$ * warning$ } 'skip$ if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % delivers 1 if (both editor and translator % not empty and not equal to each other) % 0 if (editor or translator empty) or % (editor = translator) % FUNCTION {editor.ne.trans} { translator empty$ { #0 } { editor empty$ { #0 } { translator editor = { #0 } { #1 } if$ } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {conv.int.to.str} { duplicate$ #10 < { "0000" swap$ int.to.str$ * } { duplicate$ #100 < { "000" swap$ int.to.str$ * } { duplicate$ #1000 < { "00" swap$ int.to.str$ * } { duplicate$ #10000 < { "0" swap$ int.to.str$ * } { int.to.str$ } if$ } if$ } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {ref.type} { type$ "article" = type$ "magazine" = type$ "newspaper" = type$ "book" = type$ "techreport" = type$ "unpublished" = type$ "misc" = type$ "booklet" = type$ "manual" = type$ "proceedings" = or or or or or or or or or { #1 } { type$ "incollection" = type$ "phdthesis" = type$ "mastersthesis" = type$ "lecture" = type$ "inbook" = type$ "inproceedings" = type$ "conference" = type$ "intechreport" = or or or or or or or { #2 } { type$ "literal" = { #3 } { #0 } if$ } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {is.atype} { type$ "article" = type$ "magazine" = type$ "newspaper" = type$ "incollection" = type$ "inbook" = type$ "inproceedings" = type$ "conference" = type$ "intechreport" = type$ "manual" = or or or or or or or or { #1 } { journal empty$ not % type$ "phdthesis" = type$ "mastersthesis" = or % and { #1 } { type$ "misc" = type empty$ not and { type "\bibmessage" = type "\bibcomputerprogram" = type "\bibcomputerprogrammanual" = type "\bibcomputerprogramandmanual" = type "\bibcomputersoftware" = type "\bibcomputersoftwaremanual" = type "\bibcomputersoftwareandmanual" = type "\bibprogramminglanguage" = or or or or or or or { #1 } { #0 } if$ } { #0 } if$ } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % connects two strings with connect string % if one of them empty, then connect string % is left out % % call with S1 S2 connectstring connect.check % FUNCTION {connect.check} { 'u := % % if S2 = "" % duplicate$ empty$ % % then remove S2 % { pop$ % % S1 is on top of stack. % if it is empty, it is replaced by the empty string "" % duplicate$ empty$ { pop$ "" } 'skip$ if$ } % % else swap S1 and S2 so that S1 can be checked % { swap$ % % if S1 is empty, remove S1 so that S2 is left on the % stack and is the result is given % duplicate$ empty$ { pop$ } % % now the real work starts: % push the connect string "C" % so that top of stack is "C" "S1" "S2" % concatenate, so that top of stack is % "S1+C" "S2" % { u * % % swap and concatenate % swap$ * } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % connects two strings with space ("\ ") % if length of second is 4 or larger, % connects them with non-breaking space ("tie", "~") % if length of second smaller than 4 % % call with S1 S2 tie.or.space.connect % result: "S1\ S2" or "S1~S2" % FUNCTION {tie.or.space.connect} { duplicate$ text.length$ #4 < { "~" } { "\ " } if$ swap$ * * } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % connects two strings with comma (", ") % if one of them is empty, the comma is left out % % call with S1 S2 connect.with.comma.check % result: "S1, S2" % FUNCTION {connect.with.comma.check} { ", " connect.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % connects two strings with semicolon ("; ") % if one of them is empty, semicolon is left out % % call with S1 S2 connect.with.semicolon.check % result: "S1; S2" % FUNCTION {connect.with.semicolon.check} { "; " connect.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % connects two strings with colon (": ") % if one of them is empty, colon is left out % % call with S1 S2 connect.with.colon.check % result: "S1: S2" % FUNCTION {connect.with.colon.check} { ": " connect.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % connects two strings with space ("\ ") % % call with S1 S2 connect.with.space.check % result: "S1\ S2" % FUNCTION {connect.with.space.check} { "\ " connect.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % encloses string in pre- and postfix string % call with % prefix postfix S enclose.check % delivers empty string if S empty % FUNCTION {enclose.check} { duplicate$ empty$ { pop$ pop$ pop$ "" } { swap$ * * } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % emphasizes top of stack % call with % "string" emphasize.check % FUNCTION {emphasize.check} { "\Bem{" swap$ "}" swap$ enclose.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % brackets top of stack % call with % "string" bracket % FUNCTION {bracket.check} { "[" swap$ "]" swap$ enclose.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % parenthesizes top of stack % call with % "string" parenthesize % FUNCTION {parenthesize.check} { "(" swap$ ")" swap$ enclose.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % checks whether argument is "multiresult": % whether it contains '-', '+', or ',' characters % used with pages to check whether pp. or p. must be used % FUNCTION {multi.result.check} { 't := #0 'multiresult := % % while (not multiresult) and (length(t) > 1) do % { multiresult not t text.length$ #1 > and } % % if t(1-2) = "--" or t(1) = "+" or "," % then multiresult = 1 % else t = t(2-last) % { t #1 #2 substring$ 's := "--" s = { #1 'multiresult := } { t #1 #1 substring$ 's := "+" s = "," s = or { #1 'multiresult := } { t #2 global.max$ substring$ 't := } if$ } if$ } while$ multiresult } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Checks whether an author is a corporate author, i.e., % whether the field starts with "{\bibcorporate". % Call with % field is.bibcorporate % FUNCTION {is.bibcorporate} { #1 #14 substring$ "{\bibcorporate" = } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {sortify} { purify$ "l" change.case$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {remove.spaces} { % Remove spaces from string. % Works best if string only contains alphanumeric characters and spaces. 's := % The original string s text.length$ 'len := % Its length (no. of characters) "" 't := % Initialize the transformed string #0 'pos := % % while (pos < len) do % { pos len < } { pos #1 + 'pos := s pos #1 substring$ 'u := % % u is the pos-th character in s % If it is a space, move to next character, % else copy character to output. % u " " = 'skip$ { t u * 't := } if$ } while$ % % Now push the result back on the stack t } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % starting new block by writing what's left on the stack, % starting a new line and adding some extra space or % whatever is more defined in \newblock % FUNCTION {output.end.block} { write$ newline$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % starting new block by writing what's left on the stack, % starting a new line and adding some extra space or % whatever is more defined in \newblock % FUNCTION {output.new.block} { output.end.block "\newblock" write$ newline$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % starting new block by writing what's left on the stack, % starting a new line and adding some extra space or % whatever is more defined in \newblock % FUNCTION {output.dot.new.block} { add.period$ output.new.block } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {start.new.block} { newline$ "\unskip\ " write$ newline$ "\newblock " write$ newline$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % finish current entry % by writing what's left on the stack and starting a new line % FUNCTION {fin.entry} { output.end.block "\PrintBackRefs{\CurrentBib}" write$ newline$ test { "\vspace{\baselineskip}" write$ newline$ } 'skip$ if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {sort.name.format} { "{ll{}}{ f{}}{ vv{}}{ jj{}}" } FUNCTION {cite.name.format} { "{ll}" } FUNCTION {cite.initials.name.format} { "{f{\BPBI }.~~}{vv }{ll}{ jj}" } FUNCTION {author.name.format} { "{ll}{, f{\BPBI }.}{ vv}{, jj}" } FUNCTION {editor.name.format} { "{f{\BPBI }.~~}{vv }{ll}{ jj}" } FUNCTION {index.name.format} { "{ll}{, f{\BPBI }.}{ vv}{, jj}" } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {init.initials} { "yyyyy" 'aut1f.old := "yyyyy" 'aut1s.old := #0 'cite.initials.old := } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {update.no.initials} { 'field := field 'aut1f.old := field 'aut1s.old := #0 'cite.initials.old := } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {check.add.initials.aut} { % % If last name is equal to previous last name % but initials are different, then initials should % be cited. If initials are also the same, initials % should be cited if that is the case for the previous % author . % aut1s aut1s.old = { aut1f aut1f.old = { cite.initials.old 'cite.initials := } { #1 'cite.initials := aut1f 'aut1f.old := aut1s 'aut1s.old := cite.initials 'cite.initials.old := } if$ } { % % Different last name. aut1f 'aut1f.old := aut1s 'aut1s.old := cite.initials 'cite.initials.old := } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {check.add.initials.field} { 'field := field #1 cite.initials.name.format format.name$ 'aut1f := field #1 cite.name.format format.name$ 'aut1s := % % Now do the actual work % check.add.initials.aut } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {check.add.initials} { % % Check whether author or editor or other field acts as author. % Initials are only relevant with author or editor. % firstkey empty$ not { key empty$ not { % % Both key and firstkey are nonempty. % Then, key is treated as last name of first author, % and firstkey is treated as last name + initials of % first author . % firstkey sortify remove.spaces 'aut1f := key sortify remove.spaces 'aut1s := check.add.initials.aut } { firstkey sortify remove.spaces update.no.initials } if$ } { key empty$ not { key sortify remove.spaces update.no.initials } { % % No key or firstkey, so find out which field % to use as author. % % Check reference type: % if result is 1 then possibly editor acts as author % 2 then editor does not act as author % 3 then key should have been used % 0 then unknown reference type ref.type #2 = { % % Format first author with and without initials author empty$ { title.sort.label update.no.initials } { author check.add.initials.field } if$ } { % % Format first author with and without initials author empty$ { editor empty$ { title.sort.label update.no.initials } { editor check.add.initials.field } if$ } { author check.add.initials.field } if$ } if$ } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {tentative.cite.num.names.field} { 'field := field num.names$ 'numnames := numnames #3 < { % % 1 or 2 names: always cite all of them. numnames 'cite.num.names.full := numnames 'cite.num.names.short := } { numnames #6 < { % % 3-5 names: cite all of them the first time, % only the first name later times numnames 'cite.num.names.full := #1 'cite.num.names.short := } { % % 6 or more names: cite only the first name #1 'cite.num.names.full := #1 'cite.num.names.short := } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {tentative.cite.num.names} { % % Check whether author or editor or other field acts as author. % Number of names is only relevant with author or editor. % firstkey empty$ not { #1 'cite.num.names.full := #1 'cite.num.names.short := } { key empty$ not { #1 'cite.num.names.full := #1 'cite.num.names.short := } { % % No key or firstkey, so find out which field % to use as author. % % Check reference type: % if result is 1 then possibly editor acts as author % 2 then editor does not act as author % 3 then key should have been used % 0 then unknown reference type ref.type #2 = { % % Format first author with and without initials author empty$ { #1 'cite.num.names.full := #1 'cite.num.names.short := } { author tentative.cite.num.names.field } if$ } { % % Format first author with and without initials author empty$ { editor empty$ { #1 'cite.num.names.full := #1 'cite.num.names.short := } { editor tentative.cite.num.names.field } if$ } { author tentative.cite.num.names.field } if$ } if$ } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {init.cite.num.names} { #0 'cite.num.names.old := #0 'numnames.old := "yyyy" 'year.label.old := #0 'add.to.year.old := "" 'aut1f.old := "" 'aut2.old := "" 'aut3.old := "" 'aut4.old := "" 'aut5.old := "" 'aut6.old := } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {update.cite.num.names} { cite.num.names.short 'cite.num.names.old := numnames 'numnames.old := year.label 'year.label.old := add.to.year 'add.to.year.old := aut1f 'aut1f.old := aut2 'aut2.old := aut3 'aut3.old := aut4 'aut4.old := aut5 'aut5.old := aut6 'aut6.old := } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {format.6.authors} { % % First author: with initials. % field #1 cite.initials.name.format format.name$ 'aut1f := % % Second and later authors: without initials. % numnames #1 > name.max #1 > and { % % 2nd author field #2 cite.name.format format.name$ 'aut2 := % numnames #2 > name.max #2 > and { % % 3nd author field #3 cite.name.format format.name$ 'aut3 := % numnames #3 > name.max #3 > and { % % 4th author field #4 cite.name.format format.name$ 'aut4 := % numnames #4 > name.max #4 > and { % % 5th author field #5 cite.name.format format.name$ 'aut5 := % numnames #5 > name.max #5 > and { % % 6th author field #6 cite.name.format format.name$ 'aut6 := } { % % 5 authors: 6 is empty % "" 'aut6 := } if$ } { % % 4 authors: 5-6 are empty % "" 'aut5 := "" 'aut6 := } if$ } { % % 3 authors: 4-6 are empty % "" 'aut4 := "" 'aut5 := "" 'aut6 := } if$ } { % % 2 authors: 3-6 are empty % "" 'aut3 := "" 'aut4 := "" 'aut5 := "" 'aut6 := } if$ } { % % Only 1 author: 2-6 are empty % "" 'aut2 := "" 'aut3 := "" 'aut4 := "" 'aut5 := "" 'aut6 := } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {change.add.to.year} { forward #1 = { % % Moving forward: this add.to.year number must be 1 higher than % previous. % add.to.year.old #0 > { add.to.year.old #1 + 'add.to.year := } { #2 'add.to.year := } if$ } { % % Moving backward: this add.to.year number must be 1 lower than % previous. % add.to.year.old #1 - 'add.to.year := } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {definitive.cite.num.names.1.or.2} { % numnames numnames.old = { % % Same number of names: ambiguity could arise. Check whether current % and previous have the same author(s). % aut1f aut1f.old = { % % Same first author: if the second author is also the same or if % there is only one author, a's and b's should be added. % aut2 aut2.old = numnames #2 = and % numnames #1 = or { % % Same author(s): add to year. % change.add.to.year } { % % Different second author: no ambiguity possible. % skip$ } if$ } { % % Different first author: no ambiguity possible. % skip$ } if$ } { % % Different number of names: no ambiguity possible. % skip$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {definitive.cite.num.names.3.or.more} { % % Check whether current and previous have the same first author. % aut1f aut1f.old = { % % Same first author: check second author % aut2 aut2.old = { % % Same 1st & 2nd author: check 3rd. % aut3 aut3.old = { % % Same 1st-3rd authors: check 4th. % numnames.old #3 = { numnames #3 = { % % Both current and previous have 3 authors, which are % the same, so both have identical author-year % combinations, so ambiguity should be resolved by % a's and b's. Check whether more authors were % necessary for previous one. % change.add.to.year cite.num.names.short cite.num.names.old < { cite.num.names.old 'cite.num.names.short := } 'skip$ if$ } { % % Previous has 3 authors, current has more, with same % first 3, so at least 4 must be used for current to % make a difference. % cite.num.names.short #4 < { #4 'cite.num.names.short := } 'skip$ if$ } if$ } { numnames #3 = { % % Current has 3 authors, previous has more, with same % first 3, so all 3 of current must be used. % numnames 'cite.num.names.short := } { % % Same 1st-3rd author and both current and previous % have at least 4 authors: check 4th. % aut4 aut4.old = { % % Same 1st-4th authors: check 5th. % numnames.old #4 = { numnames #4 = { % % Both current and previous have 4 authors, % which are the same, so both have % identical author-year combinations, so % ambiguity should be resolved by a's and % b's. Check whether more authors were % necessary for previous one. % change.add.to.year cite.num.names.short cite.num.names.old < { cite.num.names.old 'cite.num.names.short := } 'skip$ if$ } { % % Previous has 4 authors, current has more, % with same first 4, so at least 5 must be % used for current to make a difference. % cite.num.names.short #5 < { #5 'cite.num.names.short := } 'skip$ if$ } if$ } { numnames #4 = { % % Current has 4 authors, previous has more, % with same first 4, so all 4 of current % must be used. % numnames 'cite.num.names.short := } { % % Same 1st-4th author and both current and % previous have at least 5 authors: check % 5th. % aut5 aut5.old = { % % Same 1st-5th authors: check 6th. % numnames.old #5 = { numnames #5 = { % % Both current and previous % have 5 authors, which are the % same, so both have identical % author-year combinations, so % ambiguity should be resolved % by a's and b's. Check whether % more authors were necessary % for previous one. % change.add.to.year cite.num.names.short cite.num.names.old < { cite.num.names.old 'cite.num.names.short := } 'skip$ if$ } { % % Previous has 5 authors, % current has more, with same % first 5, so at least 6 must % be used for current to make % a difference. % cite.num.names.short #6 < { #6 'cite.num.names.short := } 'skip$ if$ } if$ } { numnames #5 = { % % Current has 5 authors, % previous has more, with same % first 5, so all 5 of current % must be used. % numnames 'cite.num.names.short := } { % % Same 1st-5th author and both % current and previous have at % least 6 authors. If one has % 6 authors and the other has % more or the 6th is different, % 6 should be used (which is % the maximum). % numnames #6 > numnames.old #6 = and % numnames #6 = numnames.old #6 > and % or % aut6 aut6.old = not % or { #6 cite.num.names.short < { #6 'cite.num.names.short := } 'skip$ if$ } { % % The first 6 authors are % the same and either both % have 6 or both have more. % So for all practical % purposes they have % identical author-year % combination, so ambiguity % should be resolved by a's % and b's. Check whether % more authors were % necessary for previous % one. % change.add.to.year cite.num.names.short cite.num.names.old < { cite.num.names.old 'cite.num.names.short := } 'skip$ if$ } if$ } if$ } if$ } { % % Different 5th author: citing 5 authors is % sufficient for this comparison. % cite.num.names.short #5 < { #5 'cite.num.names.short := } 'skip$ if$ } if$ } if$ } if$ } { % % Different 4th author: citing 4 authors is % sufficient for this comparison. % cite.num.names.short #4 < { #4 'cite.num.names.short := } 'skip$ if$ } if$ } if$ } if$ } { % % Different 3rd author: citing 3 authors is sufficient for this % comparison. % cite.num.names.short #3 < { #3 'cite.num.names.short := } 'skip$ if$ } if$ } { % % Different 2nd author: citing 2 authors is sufficient for this % comparison. % cite.num.names.short #2 < { #2 'cite.num.names.short := } 'skip$ if$ } if$ } { % % Different first author: no ambiguity, move to next entry. % skip$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {definitive.cite.num.names.field} { 'field := field num.names$ 'numnames := % % Format authors % format.6.authors % % Now compare authors with authors of previous entry. % cite.num.names.short numnames.old > { % % The previous entry has less authors than already defined % necessary to be cited. No ambiguity is possible and we're ready. % skip$ } { % % Both previous and current entry have at least one author . % year.label year.label.old = { % % Same year label: possibly ambiguous citation. % % First check: current and/or previous have 1 or % 2 authors. % numnames #3 < numnames.old #3 < or % { definitive.cite.num.names.1.or.2 } { definitive.cite.num.names.3.or.more } if$ } { % % Different year label: everything's fine, % move to next entry. % skip$ } if$ } if$ % % If during the previous process the name maximum is exceeded % (which was not checked), correct this. NOTE: If the name % maximum is smaller than 6, this could lead to ambiguous % citations if, e.g., the year and the first 5 authors are % the same, but the 6th author is different. % cite.num.names.short name.max > { name.max 'cite.num.names.short := } 'skip$ if$ % % For a "full" cite, the number of names should always be at least % as large as for a "short" cite. % cite.num.names.full cite.num.names.short < { cite.num.names.short 'cite.num.names.full := } 'skip$ if$ % % Update "old" variables for next entry. % update.cite.num.names } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {definitive.cite.no.names} { % % The formatted field that acts as author is on top % of the stack. 'aut1f := "" 'aut2 := "" 'aut3 := "" 'aut4 := "" 'aut5 := "" 'aut6 := #1 'numnames := % year.label year.label.old = { % % Same year label: possibly ambiguous citation. % definitive.cite.num.names.1.or.2 } { % % Different year label: everything's fine, % move to next entry. % skip$ } if$ % % Update "old" variables for next entry. % update.cite.num.names } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {definitive.cite.num.names} { % % Check whether author or editor or other field acts as author. % Number of names is only relevant with author or editor. % firstkey empty$ not { firstkey sortify remove.spaces definitive.cite.no.names } { key empty$ not { key sortify remove.spaces definitive.cite.no.names } { % % No key or firstkey, so find out which field % to use as author. % % Check reference type: % if result is 1 then possibly editor acts as author % 2 then editor does not act as author % 3 then key should have been used % 0 then unknown reference type ref.type #2 = { % % Format first author with and without initials author empty$ { title.sort.label definitive.cite.no.names } { author definitive.cite.num.names.field } if$ } { % % Format first author with and without initials author empty$ { editor empty$ { title.sort.label definitive.cite.no.names } { editor definitive.cite.num.names.field } if$ } { author definitive.cite.num.names.field } if$ } if$ } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.tentative.year.sort.label} { % % Implicit or explicit ``no date'' is put at the front % (the year zero; years B.C. will imply complications) % because these are possibly old works. % ``In press'' is put at the end. % year empty$ { "0000" 'year.label := } { year "\bibnodate" = year "n.d." = or { "0000" 'year.label := } { year "\BIP" = { "9999" 'year.label := } { % It is not checked whether the year field % makes sense. year sortify remove.spaces 'year.label := } if$ } if$ } if$ % % Push year sort label on the stack year.label } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {month.number.day} { month empty$ { "" } { month sortify remove.spaces % % Add the day when available. day empty$ 'skip$ { "/" * day sortify remove.spaces * } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.name.sort.label} { % % Author or editor-acting-as-author available. % => Make tentative "short cite with initials" author % label (L1) of one of the forms % "Last1 F1" % "Last1 F1 Last2" % "Last1 F1 zzzz" ("zzzz" representing et al.) % => If more than 2 'authors': make label (L2) for 2nd-6th authors % of one of the forms % "Last2 Last3" % "Last2 Last3 Last4" % "Last2 Last3 Last4 Last5" % "Last2 Last3 Last4 Last5 Last6" % "Last2 Last3 Last4 Last5 Last6 zzzz" % % Then format year label (L3) of one of the forms: % "0000" (missing year or explicit 'no date') % "9999" ('in press') % year (otherwise; don't use originalyear here yet) % % From earlier sorting of titles, we have title number. Convert % to string, which gives title label (L4) . % % Then tentative sorting label (author.year.sort.label) is a % concatenation of % L1 % " " % L3 % " " % L2 % " " % L4 % % The name field is on top of the stack. 'field := % % numnames is the total number of names contained in field field num.names$ 'numnames := % % Format first author field #1 sort.name.format format.name$ % % Format the second author if there are two, or else "zzzz" = et al. numnames #1 = 'skip$ { numnames #2 = { % % Two authors: format second author field #2 "{ll{}}" format.name$ 's := s "others" = { " zzzz" * } % Add "et al."-substitute { " " * s * } % Add second author if$ } { " zzzz" * } % 3 or more authors: add "et al."-substitute if$ } if$ " " * % Add spaces make.tentative.year.sort.label * % Add year (L3). " " * % Add spaces % % Now build up L2 if applicable numnames #3 < 'skip$ { % % Treat last author slightly differently numnames name.max > { name.max 'lastname := " zzzz" % Push "et al."-substitute on stack } { numnames 'lastname := "" % Push empty string on stack } if$ % % Names 2 to "last" - 1 "" % Push empty string on stack #2 'nameptr := { nameptr lastname < } { % Add name no. nameptr field nameptr "{ll{}}" format.name$ * " " * nameptr #1 + 'nameptr := } while$ % % "Last" author field lastname "{ll{}}" format.name$ 's := s "others" = { "zzzz" * } % Add "et al."-substitute { s * } % Add last author if$ % swap$ * % Add the previously formatted empty string or % "et al."-substitute if there are many authors. * % Add L2 to the earlier labels. } if$ % " " * % Add spaces title.number conv.int.to.str * % Add sorted title number (L4). sortify % Clean up and convert to lowercase " " * % Add spaces month.number.day * % Add month and day when available 'author.year.sort.label := % Assign result to sort label. } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.field.year.sort.label} { % % 'field' acts as first author (L1), subsequent authors % are empty (L2). % % Then format year label (L3) of one of the forms: % "0000" (missing year or explicit 'no date') % "9999" ('in press') % year (otherwise; don't use originalyear here yet) % % From earlier sorting of titles, we have title number. Convert % to string, which gives title label (L4) . % % Then tentative sorting label (author.year.sort.label) is a % concatenation of % L1 % " " % L3 % " " % L2 % " " % L4 % % 'field' is on top of the stack. It is already supposed to be cleaned % (i.e., sortified and space-removed), so this is already L1. " " * % Add spaces to L1 make.tentative.year.sort.label * % Add year (L3). " " * % Add spaces " " * % L2 is empty, add spaces title.number conv.int.to.str * % Add sorted title number (L4). sortify % Clean up and convert to lowercase " " * % Add spaces month.number.day * % Add month and day when available 'author.year.sort.label := % Assign result to sort label. } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.author.editor.sort.label} { author empty$ { editor empty$ { % % Use what has previously been stored in title.sort.label % as author substitute . title.sort.label make.field.year.sort.label } { editor make.name.sort.label } if$ } { author make.name.sort.label } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.author.sort.label} { author empty$ { % % Use what has previously been stored in title.sort.label % as author substitute . title.sort.label make.field.year.sort.label } { author make.name.sort.label } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.tentative.sort.label} { % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % General strategy: % % Ordinary situation: author or editor-acting-as-author % available. % => Make tentative "short cite with initials" author % label (L1) of one of the forms % "Last1 F1" % "Last1 F1 Last2" % "Last1 F1 zzzz" ("zzzz" representing et al.) % => If more than 2 'authors': make label (L2) for 2nd-6th authors % of one of the forms % "Last2 Last3" % "Last2 Last3 Last4" % "Last2 Last3 Last4 Last5" % "Last2 Last3 Last4 Last5 Last6" % "Last2 Last3 Last4 Last5 Last6 zzzz" % When key is available (overrules author and editor fields): % => L1 = key, L2 = "" % No author, editor, and key: define title or substitute as key % and format as key. % % Then format year label (L3) of one of the forms: % "0000" (missing year or explicit 'no date') % "9999" ('in press') % year (otherwise; don't use originalyear here yet) % % From earlier sorting of titles, we have title number. Convert % to string, which gives title label (L4) . % % Then tentative sorting label (author.year.sort.label) is a % concatenation of % L1 % " " % L3 % " " % L2 % " " % L4 % % This can then be sorted, from which it can be derived % whether initials are necessary, how many names must % be used for short and full citations, and whether "a"'s and % "b"'s etc. are necessary behind the year labels. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % key and firstkey overrule author information % firstkey empty$ not { key empty$ not { % % Both key and firstkey available: % for sorting and checking initials, treat key as last % name and firstkey as initials. % key sortify remove.spaces " " * firstkey sortify remove.spaces * make.field.year.sort.label } { firstkey sortify remove.spaces make.field.year.sort.label } if$ } { key empty$ not { key sortify remove.spaces make.field.year.sort.label } { % % No key or firstkey, so find out which field % to use as author. % % Check reference type: % if result is 1 then possibly editor acts as author % 2 then editor does not act as author % 3 then key should have been used % 0 then unknown reference type ref.type duplicate$ #1 = { pop$ make.author.editor.sort.label } { duplicate$ #2 = { pop$ make.author.sort.label } { #3 = { "no key in " cite$ * warning$ make.author.editor.sort.label } { make.author.editor.sort.label } if$ } if$ } if$ } if$ } if$ % author.year.sort.label 'sort.key$ := } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.definitive.name.sort.label} { % % Author or editor-acting-as-author available. % => Make author-with-initials label (L1) of one of the forms % "Last1 F1 Last2 F2 ... LastN FN" % "Last1 F1 Last2 F2 ... Last6 F6 zzzz" % (where N <= 6 is the total number of authors, and % "zzzz" represents et al. if there are more than 6 authors) % No author, editor, and key: define title or substitute as sort key. % % The name field is on top of the stack. 'field := % % numnames is the total number of names contained in field field num.names$ 'numnames := % % If there are more than 6 authors, only 6 are mentioned. numnames name.max > { name.max 'format.num.names := } { numnames 'format.num.names := } if$ % Initialize stack with empty string "" % % Cycle over authors. #1 'nameptr := { nameptr format.num.names < } { % Format author and add spaces field nameptr sort.name.format format.name$ * " " * nameptr #1 + 'nameptr := } while$ % Format last author that must be formatted field nameptr sort.name.format format.name$ * % Add et al. if necessary nameptr numnames < { " zzzz" * } 'skip$ if$ sortify % Clean up and change case " " * % Add spaces year.label * % Add year " " * % Add spaces title.number conv.int.to.str * % Add sorted title number " " * % Add spaces month.number.day * % Add month and day when available 'author.year.sort.label := % Assign result to sort label. } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.definitive.field.year.sort.label} { % % 'field' acts as author (L1). % % Then format year label (L2) of one of the forms: % "0000" (missing year or explicit `no date') % "9999" (`in press') % year (otherwise; don't use originalyear here yet) % % From earlier sorting of titles, we have title number. Convert % to string, which gives title label (L3) . % % Then tentative sorting label (author.year.sort.label) is a % concatenation of % L1 % " " % L2 % " " % L3 % % 'field' is on top of the stack. It is already supposed to be cleaned % (i.e., sortified and space-removed), so this is already L1. " " * % Add spaces year.label * % Add year " " * % Add spaces title.number conv.int.to.str * % Add sorted title number " " * % Add spaces month.number.day * % Add month and day when available 'author.year.sort.label := % Assign result to sort label. } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.definitive.author.editor.sort.label} { author empty$ { editor empty$ { % % Use what has previously been stored in title.sort.label % as author substitute . title.sort.label make.definitive.field.year.sort.label } { editor make.definitive.name.sort.label } if$ } { author make.definitive.name.sort.label } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.definitive.author.sort.label} { author empty$ { % % Use what has previously been stored in title.sort.label % as author substitute . title.sort.label make.definitive.field.year.sort.label } { author make.definitive.name.sort.label } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.final.sort.key} { % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % General strategy: % % Ordinary situation: author or editor-acting-as-author % available. % => Make author-with-initials label (L1) of one of the forms % "Last1 F1 Last2 F2 ... LastN FN" % "Last1 F1 Last2 F2 ... Last6 F6 zzzz" % (where N <= 6 is the total number of authors, and % "zzzz" represents et al. if there are more than 6 authors) % No author, editor, and key: define title or substitute as sort key. % % Then format year label (L2) of one of the forms: % "0000" (missing year or explicit `no date') % "9999" (`in press') % year (otherwise; don't use originalyear here yet) % Add "/"month"/"day to the latter when available. % % From earlier sorting of titles, we have title number. Convert % to string, which gives title label (L3) . % % Then final sorting label (author.year.sort.label) is a % concatenation of % L1 % " " % L2 % " " % L3 % % This can then be sorted. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % % Find out which field % to use as author. % % Check reference type: % if result is 1 then possibly editor acts as author % 2 then editor does not act as author % 3 then key should have been used % 0 then unknown reference type ref.type #2 = { make.definitive.author.sort.label } { make.definitive.author.editor.sort.label } if$ % author.year.sort.label 'sort.key$ := } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {chop.word} { 's := 'len := s #1 len substring$ = { s len #1 + global.max$ substring$ } { s } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {chop.articles} { 's := "a " #2 "an " #3 "the " #4 s chop.word chop.word chop.word } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {format.sort.title} { % % Remove non-alphanumeric characters and change to lower case . sortify % % Remove "a ", "an ", and "the " from the front . chop.articles #1 entry.max$ substring$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.sort.title} { title empty$ { text empty$ { type empty$ { howpublished empty$ { note empty$ { url empty$ { " " } { url format.sort.title } if$ } { note format.sort.title } if$ } { howpublished format.sort.title } if$ } { type format.sort.title } if$ } { text format.sort.title } if$ } { title format.sort.title } if$ remove.spaces 'title.sort.label := title.sort.label 'sort.key$ := } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.title.number} { title.sort.label old.label = { % % A tie: old and new label are the same . old.number 'title.number := } { % % The usual situation: titles are different. old.number #1 + 'title.number := title.number 'old.number := title.sort.label 'old.label := } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {last.part.name.format} { "{ll}" } FUNCTION {initials.with.space.name.format} { "{f.}" } FUNCTION {von.last.junior.name.format} { "{vv }{ll}{ jj}" } FUNCTION {von.junior.name.format} { "{ vv}{, jj}" } FUNCTION {one.complete.name.format} { "{vv }{ll}{, jj}{, ff}" } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {string.length} { #0 'pos := % If the next character exists, i.e., is not empty, % add 1 to the string length. % We cannot use empty$ because " " empty$ is true. { duplicate$ pos #1 + #1 substring$ "" = not } { pos #1 + 'pos := } while$ pop$ pos } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {transform.spaces.and.hyphens} { 's := % The original string s string.length 'len := % Its length (no. of characters) "" 't := % Initialize the transformed string #1 'pos := #0 'brace.level := % % while (pos < len) do % { pos len < } { % First, check whether we are at brace level 0 brace.level #0 = { % At least two characters left: check for ". ", ".~", and ".-". % If so, replace and shift two positions. s pos #2 substring$ ". " = s pos #2 substring$ ".~" = or { t "\BPBI " * 't := pos #2 + 'pos := } { s pos #2 substring$ ".-" = { t "\BHBI " * 't := pos #2 + 'pos := } { % neither is true, copy one character and shift one position t s pos #1 substring$ * 't := % Check whether we need to increase brace level. % Note that this is not sophisticated: it does not capture % \{, \verb+}+, etc. % Note also that unbalanced braces cause problems. s pos #1 substring$ "{" = { brace.level #1 + 'brace.level := } 'skip$ if$ pos #1 + 'pos := } if$ } if$ } { % Not at brace level 0: copy result literally t s pos #1 substring$ * 't := % Check whether we need to increase or decrease brace level. % Note that this is not sophisticated: it does not capture % \{, \verb+}+, etc. s pos #1 substring$ "{" = { brace.level #1 + 'brace.level := } { s pos #1 substring$ "}" = { brace.level #1 - 'brace.level := } 'skip$ if$ } if$ pos #1 + 'pos := } if$ } while$ % pos len = { % Last character, copy t s pos #1 substring$ * 't := } { % pos = len + 1, so s ends with ". " or ".-" % This should not have happened, but make the best out of it. % Push last two characters of s on the stack, i.e., ". " or ".-". s len #1 - #2 substring$ % Remove "\BPBI " or "\BHBI " from t t text.length$ 'len := % Length of t (no. of characters) t #1 len #6 - substring$ % Concatenate and assign to t swap$ * 't := } if$ % % Now push the result back on the stack t } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {format.initials.with.hyphen} { % Format initials. % Call with % field authornumber format.initials.with.hyphen % e.g. % author #1 format.initials.with.hyphen % Instead of field, a string may also be used. % % First, format initials in the default way, retaining spaces % and hyphens. initials.with.space.name.format format.name$ transform.spaces.and.hyphens } FUNCTION {format.last.part.name} { % Format a name with last.part.name.format, % as part of more complicated things. % Call with % field authornumber format.last.part.name % e.g. % author #1 format.last.part.name % Instead of field, a string may also be used. last.part.name.format format.name$ } FUNCTION {format.von.last.junior.name} { % Format a name with von.last.junior.name.format, % for citing or as part of more complicated things. % Call with % field authornumber format.von.last.junior.name % e.g. % author #1 format.von.last.junior.name % Instead of field, a string may also be used. von.last.junior.name.format format.name$ } FUNCTION {format.von.junior.name} { % Format a name with von.last.junior.name.format, % for citing or as part of more complicated things. % Call with % field authornumber format.von.junior.name % e.g. % author #1 format.von.junior.name % Instead of field, a string may also be used. von.junior.name.format format.name$ } FUNCTION {format.cite.initials.name} { % Format a name for citing with initials. % Call with % field authornumber format.cite.initials.name % e.g. % author #1 format.cite.initials.name % Instead of field, a string may also be used. % % First, extract the complete name, format it in the canonical form, % and push on the stack. one.complete.name.format format.name$ % % Format the initials and push on the stack. duplicate$ #1 format.initials.with.hyphen % % Format the von-last-junior part and push on the stack. swap$ #1 format.von.last.junior.name % % Connect with "~" hyphen (if they're both non-empty). "~" connect.check } FUNCTION {format.author.name} { % Format an author name for the reference list. % Call with % field authornumber format.author.name % e.g. % author #1 format.author.name % Instead of field, a string may also be used. % % First, extract the complete name, format it in the canonical form, % and push on the stack. one.complete.name.format format.name$ % % Make two copies of the name, format the last name and push on the stack. duplicate$ duplicate$ #1 format.last.part.name % % Format the initials and push on the stack. swap$ #1 format.initials.with.hyphen % % Connect with last name. connect.with.comma.check % % Format the von-junior part and connect with initials. swap$ #1 format.von.junior.name "" connect.check } FUNCTION {format.editor.name} { % Format a name for the reference list as an editor. % Call with % field authornumber format.editor.name % e.g. % author #1 format.editor.name % Instead of field, a string may also be used. % format.cite.initials.name } FUNCTION {format.index.name} { % Format an author name for the index. % Call with % field authornumber format.index.name % e.g. % author #1 format.index.name % Instead of field, a string may also be used. % format.author.name } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {comma.between.two} { "\BCBT{}" } FUNCTION {comma.between.names} { ", " } FUNCTION {comma.before.last} { "\BCBL{}" } FUNCTION {and.before.last} { "\ \BBA{} " } FUNCTION {et.al.string.cite} { "\ \protect\BOthers{.}" } FUNCTION {et.al.string} { "\ \BOthers{.}" } FUNCTION {et.al.string.period} { "\ \BOthersPeriod{.}" } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {add.name.index} { % % make.index { "%" * write$ newline$ % Check for corporate author field is.bibcorporate { "\corporateAX{" } { "\AX{" } if$ write$ field nameptr sort.name.format format.name$ sortify write$ newline$ "@" write$ field nameptr format.index.name "}%" * write$ newline$ } { "%" * write$ newline$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.name.cite.label} { 'field := 'format.num.names := % field num.names$ 'numnames := % numnames is the total number of names % contained in field % % It is implicit in the APA manual that if "et al." would refer % to exactly one author, then this author should be named % instead of "et al." % format.num.names numnames #1 - = { numnames 'format.num.names := } 'skip$ if$ % % Format first author: with or without initials % #1 'nameptr := cite.initials #1 = { field nameptr format.cite.initials.name } { field nameptr cite.name.format format.name$ } if$ add.name.index % Add index entry when desired. % numnames #1 = 'skip$ { format.num.names #1 = { % % First author et al. % et.al.string.cite write$ } { numnames #2 = { % % Given that format.num.names > 1, it is 2. % Format second author. % #2 'nameptr := field nameptr cite.name.format format.name$ 's := % % Check if 2nd author is explicit "others". % If so, insert "et al." string. % s "others" = { et.al.string.cite write$ } % First et al. { % % First \& Second % and.before.last write$ s add.name.index % Add index entry when desired. } if$ } { % % 3 or more names, 2 or more must be cited % % for nameptr := 2 to format.num.names - 1 do % #2 'nameptr := { nameptr format.num.names < } { % % Put comma between consecutive authors % comma.between.names write$ % % Format and add next author % field nameptr cite.name.format format.name$ add.name.index % Add index entry when desired. % % Move to next author % nameptr #1 + 'nameptr := } while$ % % nameptr = format.num.names % Format this author. % field nameptr cite.name.format format.name$ 's := % format.num.names numnames = { % % This is also the last author. Add (optional) comma. % comma.before.last write$ % % Check if this author is explicit "others". % If so, insert "et al." string. % s "others" = { et.al.string.cite write$ } { and.before.last write$ s add.name.index % Add index entry when desired. } if$ } { % % This is not the last author. % Add comma, author name, and "et al." % comma.between.names write$ s add.name.index % Add index entry when desired. % comma.before.last et.al.string.cite * write$ } if$ } if$ } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.title.cite.label} { % % Formatting: check if formatted as article title or % as book title, and insert this formatting. % is.atype { "\APACciteatitle{" } { "\APACcitebtitle{" } if$ % title empty$ { text empty$ { type empty$ { howpublished empty$ { note empty$ { url empty$ { cite$ } { url } if$ } { note } if$ } { howpublished } if$ } { type } if$ } { text } if$ } { title } if$ % % Connect with formatting. % * "}" * % % Write to output % write$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.author.editor.cite.label} { author empty$ { editor empty$ { % % No author or editor: % Use title or other description as citation label. % make.title.cite.label "}{%" write$ newline$ make.title.cite.label } { cite.num.names.full editor make.name.cite.label "}{%" write$ newline$ cite.num.names.short editor make.name.cite.label } if$ } { cite.num.names.full author make.name.cite.label "}{%" write$ newline$ cite.num.names.short author make.name.cite.label } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.author.cite.label} { author empty$ { % % No author: % Use title or other description as citation label. % make.title.cite.label "}{%" write$ newline$ make.title.cite.label } { cite.num.names.full author make.name.cite.label "}{%" write$ newline$ cite.num.names.short author make.name.cite.label } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.definitive.year.supplement} { % % Add "a", "b", etc. when necessary. % add.to.year #0 = { "" } { "{\protect" year empty$ { "\BCntND" * } { year "\bibnodate" = { "\BCntND" * } { year "\BIP" = { "\BCntIP" * } { "\BCnt" * } if$ } if$ } if$ "{" * add.to.year int.to.str$ * "}}" * } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {protect.year} { year empty$ { "{\protect\bibnodate{}}" } { year "\bibnodate" = { "{\protect\bibnodate{}}" } { year "\BIP" = { "{\protect\BIP{}}" } { year } if$ } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.definitive.year.label} { "{\protect\APACyear{" originalyear empty$ { protect.year } { originalyear "\bibnodate" = % date of original publication unknown { translator empty$ { protect.year } { year empty$ { "{\protect\BTRANSL{}~\protect\bibnodate{}}" } % trans. n.d. { "{\protect\BTRANSL{}}~" protect.year * } % trans. 1931 if$ } if$ } { year empty$ { originalyear "/{\protect\bibnodate{}}" * } % 1923/n.d. { originalyear year = { protect.year } { originalyear "/" * protect.year * } % 1923/1961 if$ } if$ } if$ } if$ * "}}%" * write$ newline$ % % Add "a", "b", etc. when necessary. % "{\protect\APACexlab{" "}}" make.definitive.year.supplement enclose.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {make.cite.labels} { newline$ % % Write a few lines for testing purposes. % test { "\bibitem[]{} \fullciteA{" cite$ * "}" * write$ newline$ "\bibitem[]{} \citeA{" cite$ * "}" * write$ newline$ } 'skip$ if$ % "\bibitem[\protect\citeauthoryear{%" write$ newline$ % % When key or firstkey is available, this takes precedence. % firstkey empty$ not { % % Full cite: firstkey. % firstkey write$ "}{%" write$ newline$ % % Short cite: if key is not empty and cite.initials is 0, % then key, else firstkey. % cite.initials #0 = key empty$ not and { key } { firstkey } if$ write$ } { key empty$ not { % % No firstkey, but key available: % Both full and short labels are key. % key write$ "}{%" write$ newline$ key write$ } { % No key or firstkey, so find out which field % to use as author. % % Check reference type: % if result is 1 then possibly editor acts as author % 2 then editor does not act as author % 3 then key should have been used % 0 then unknown reference type ref.type #2 = { make.author.cite.label } { make.author.editor.cite.label } if$ } if$ } if$ "}{%" write$ newline$ % % Make year label that's used for citations % make.definitive.year.label write$ "}]{%" write$ newline$ cite$ write$ "}%" write$ newline$ % author.year.sort.label write$ newline$ % for testing purposes % year.label write$ newline$ % for testing purposes % % If the item is used in a meta-analysis, indicate this with % a star. % "\APACinsertmetastar{%" write$ newline$ cite$ write$ "}%" write$ newline$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {editor.postfix} { editor num.names$ #1 > { "(\BEDS)" } { "(\BED)" } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {editor.trans.postfix} { editor num.names$ #1 > { "(\BEDS{} \BAnd{} \BTRANSS)" } { "(\BED{} \BAnd{} \BTRANS)" } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % "(Trans.)" postfix % translator must not be empty % FUNCTION {trans.postfix} { translator num.names$ #1 > { "(\BTRANSS)" } { "(\BTRANS)" } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {format.author.names} { 'field := 'dot := % field num.names$ 'numnames := % numnames is the total number of names % contained in field numnames 'format.num.names := % Format all authors format.num.names name.max > % Unless this exceeds the maximum of 6. { dot { name.max 'format.num.names := } % Format 6 authors { cite.num.names.full 'format.num.names := } % Format 1 editor if$ } 'skip$ if$ % % It is kind of explicit in the APA manual that if "et al." would % refer to exactly one author (the 7th), then this author should % still be replaced by "et al.", unlike with citations. % So format.num.names is not adapted. % % Format first author % #1 'nameptr := field nameptr format.author.name % % Add period if required and if this is the only author. % numnames #1 = dot and { add.period$ } 'skip$ if$ add.name.index % Add index entry when desired. % numnames #1 = 'skip$ { format.num.names #1 = { % % First author et al. % comma.between.two % % Add period if required. % dot { et.al.string.period * } { et.al.string * } if$ write$ } { numnames #2 = { % % Given that format.num.names > 1, it is 2. % comma.between.two write$ % % Format second author. % #2 'nameptr := field nameptr format.author.name 's := % % Check if 2nd author is explicit "others". % If so, insert "et al." string. % s "others" = { % % First et al. % Add period if required. % dot { et.al.string.period } { et.al.string } if$ write$ } { % % First \& Second % and.before.last write$ % % Add period if required. % dot { s add.period$ } { s } if$ add.name.index % Add index entry when desired. } if$ } { % % 3 or more names, 2 or more must be cited % % for nameptr := 2 to format.num.names - 1 do % #2 'nameptr := { nameptr format.num.names < } { % % Put comma between consecutive authors % comma.between.names write$ % % Format and add next author % field nameptr format.author.name add.name.index % Add index entry when desired. % % Move to next author % nameptr #1 + 'nameptr := } while$ % % nameptr = format.num.names % Format this author. % field nameptr format.author.name 's := % format.num.names numnames = { % % This is also the last author. Add (optional) comma. % comma.before.last write$ % % Check if this author is explicit "others". % If so, insert "et al." string. % s "others" = { % % Add period if required. % dot { et.al.string.period } { et.al.string } if$ write$ } { and.before.last write$ % % Add period if required. % dot { s add.period$ } { s } if$ add.name.index % Add index entry when desired. } if$ } { % % This is not the last author. % Add comma, author name, and "et al." % comma.between.names write$ s add.name.index % Add index entry when desired. % comma.before.last % % Add period if required. % dot { et.al.string.period * } { et.al.string * } if$ write$ } if$ } if$ } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {format.authors} { #1 author format.author.names "%" write$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {format.editors.as.authors} { #0 editor format.author.names "\ " editor.postfix * add.period$ write$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {format.ed.trans.as.authors} { #0 editor format.author.names "\ " editor.trans.postfix * add.period$ write$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {format.editor.names} { 'field := % field num.names$ 'numnames := % numnames is the total number of names % contained in field numnames 'format.num.names := % Format all authors format.num.names name.max > % Unless this exceeds the maximum of 6. { #1 'format.num.names := } % Then it becomes 1 (First et al.) 'skip$ if$ % % Format first editor % field #1 format.editor.name % numnames #1 = 'skip$ { format.num.names #1 = { et.al.string * } % First editor et al., no comma. { numnames #2 = { % % Given that format.num.names > 1, it is 2. % No comma. Format second editor. % field #2 format.editor.name 's := % % Check if 2nd editor is explicit "others". % If so, insert "et al." string. % s "others" = { et.al.string * } % First et al. { and.before.last * s * } % First \& Second if$ } { % % 3 or more names, 2 or more must be cited % % for nameptr := 2 to format.num.names - 1 do % #2 'nameptr := { nameptr format.num.names < } { % % Put comma between consecutive editors % comma.between.names * % % Format and add next editor % field nameptr format.editor.name * % % Move to next editor % nameptr #1 + 'nameptr := } while$ % % nameptr = format.num.names % Format this editor. % field nameptr format.editor.name 's := % format.num.names numnames = { % % This is also the last editor. Add (optional) comma. % comma.before.last * % % Check if this editor is explicit "others". % If so, insert "et al." string. % s "others" = { et.al.string * } { and.before.last * s * } if$ } { % % This is not the last editor. % Add comma, editor name, and "et al." % comma.between.names * s * comma.before.last * et.al.string * } if$ } if$ } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format editors in case editors do not act as authors % (such as reference to chapter in edited book) % % L. W. Poon (Ed.) (1 editor) % or % A. S. Gurman \& D. P. Kniskern (Eds.) (2 editors) % or % L. Poon, A. Jones, \& D. P. Smith (Eds.) (>2 editors) % % editor must not be empty % FUNCTION {format.editors.in.line} { editor format.editor.names editor.postfix connect.with.space.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format editors in case editors are also translators % and do not act as authors % (such as reference to chapter in edited book % of translated articles) % % L. W. Poon (Ed. and Trans.) (1 editor) % or % A. S. Gurman \& D. P. Kniskern (Eds. and Trans.) (2 editors) % or % L. Poon, A. Jones, \& D. P. Smith (Eds. and Trans.) (>2 editors) % % editor must not be empty % FUNCTION {format.editors.trans.in.line} { editor format.editor.names editor.trans.postfix connect.with.space.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format translators in case translators act as editors % (such as reference to chapter in translated book) % % L. W. Poon (Trans.) (1 translator) % or % A. S. Gurman \& D. P. Kniskern (Trans.) (2 translators) % or % L. Poon, A. Jones, \& D. P. Smith (Trans.) (>2 translators) % % translator must not be empty % FUNCTION {format.translators.in.line} { translator format.editor.names trans.postfix connect.with.space.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format translators in case translator does not act as editor % (such as reference to translated book) % % L. Solotaroff, Trans. % FUNCTION {format.translators.in.paren.check} { translator empty$ { "" } { translator format.editor.names translator num.names$ #1 > { ", \BTRANSS{}" * } { ", \BTRANS{}" * } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format editors and translators in case neither act as editor % (such as reference to edited or translated book with a % a single author) % % L. Solotaroff, Ed. % L. Solotaroff, Ed. \& Trans. % L. Solotaroff, Trans. % L. Solotaroff, Ed. \& S. Prokofieff, Trans. % FUNCTION {format.editors.translators.in.paren.check} { editor empty$ { translator empty$ { "" } { translator format.editor.names translator num.names$ #1 > { ", \BTRANSS{}" * } { ", \BTRANS{}" * } if$ } if$ } { editor format.editor.names editor num.names$ #1 > { ", \BEDS{}" * } { ", \BED{}" * } if$ translator empty$ 'skip$ { editor translator = { editor num.names$ #1 > { " \BAnd{} \BTRANSS" * } { " \BAnd{} \BTRANS" * } if$ } { " \BAnd{} " * translator format.editor.names * translator num.names$ #1 > { ", \BTRANSS{}" * } { ", \BTRANS{}" * } if$ } if$ } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % translator of article % FUNCTION {format.atrans.check} { format.translators.in.paren.check parenthesize.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format "In editor (Ed.), " % FUNCTION {format.in.editors} { "\BIn{} " editor empty$ 'skip$ { format.editors.in.line * ", " * } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format "In translator (Trans.)," % FUNCTION {format.in.trans} { "\BIn{} " translator empty$ 'skip$ { format.translators.in.line * ", " * } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format "In editor (Ed. and Trans.)" % or "In editor (Ed.)" if editor not equal to translator % FUNCTION {format.in.editors.trans} { "\BIn{} " editor empty$ { translator empty$ 'skip$ { format.translators.in.line * ", " * } if$ } { translator empty$ { format.editors.in.line * } { editor translator = { format.editors.trans.in.line * } { format.editors.in.line * } if$ } if$ ", " * } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {format.year.check} { "\APACrefYear{" year empty$ { "\bibnodate{}" * } { year * } if$ % % Add "a", "b", etc. when necessary. % make.definitive.year.supplement * "}" * } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {format.year.month.day.check} { "\APACrefYearMonthDay{" year empty$ { "\bibnodate{}" * } { year * } if$ % % Add "a", "b", etc. when necessary. % make.definitive.year.supplement * "}{" * % % Add month and day when present. % month empty$ 'skip$ { month * } if$ "}{" * day empty$ 'skip$ { day * } if$ "}" * } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % title of article in journal or book % no finishing period % field must be on top of stack % (so englishtitle can be handled also) % FUNCTION {format.atitle.no.dot} { "\BBOQ{}" swap$ "\BBCQ{}" swap$ duplicate$ empty$ 'skip$ { duplicate$ % Two arguments: Title twice: (1) don't change case; (2) change case "\APACrefatitle{" swap$ * "}{" * swap$ "t" change.case$ * "}" * } if$ enclose.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % title of article in journal or book % with finishing period % field must be on top of stack % (so englishtitle can be handled also) % FUNCTION {format.atitle.dot} { "\BBOQ{}" swap$ "\BBCQ{}" swap$ duplicate$ empty$ 'skip$ { duplicate$ % Two arguments: Title twice: (1) don't change case; (2) change case "\APACrefatitle{" swap$ * "}{" * swap$ "t" change.case$ * "}" * add.period$ } if$ enclose.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % title of article in journal or book % field must be on top of stack % second element on stack must be connected: % if that is empty, then atitle.dot % else atitle.no.dot, connect, and add period % FUNCTION {format.atitle.connect} { swap$ duplicate$ empty$ { pop$ format.atitle.dot } { swap$ format.atitle.no.dot swap$ connect.with.space.check add.period$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % title of book or so, without period % call with % field format.btitle.no.dot % FUNCTION {format.btitle.no.dot} { duplicate$ empty$ 'skip$ { duplicate$ % Two arguments: Title twice: (1) don't change case; (2) change case "\APACrefbtitle{" swap$ * "}{" * swap$ "t" change.case$ * "}" * } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % title of book or so, with period % call with % field format.btitle.dot % FUNCTION {format.btitle.dot} { duplicate$ empty$ 'skip$ { add.period$ format.btitle.no.dot } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % title of book and similar % field must be on top of stack % second element on stack must be connected: % if that is empty, then btitle.dot % else btitle.no.dot, connect, and add period % FUNCTION {format.btitle.connect} { swap$ duplicate$ empty$ { pop$ format.btitle.dot } { swap$ format.btitle.no.dot swap$ connect.with.space.check add.period$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % title of book and similar % field must be on top of stack % second element on stack must be connected % FUNCTION {format.btitle.connect.no.dot} { swap$ duplicate$ empty$ { pop$ format.btitle.no.dot } { swap$ format.btitle.no.dot swap$ connect.with.space.check } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format englishtitle (of nonenglish article, etc.) % FUNCTION {format.aetitle.check} { englishtitle empty$ { "" } { % Two arguments: Title twice: (1) don't change case; (2) change case "\APACrefaetitle{" englishtitle * "}{" * englishtitle "t" change.case$ * "}" * } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format englishtitle (of nonenglish book, etc.) % FUNCTION {format.betitle.check} { englishtitle empty$ { "" } { % Two arguments: Title twice: (1) don't change case; (2) change case "\APACrefbetitle{" englishtitle * "}{" * englishtitle "t" change.case$ * "}" * } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format type (of article, etc.) % FUNCTION {format.atype.check} { type bracket.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format title and englishtitle (of article, etc.) % FUNCTION {format.atitle.check} { format.aetitle.check title format.atitle.connect } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format title, englishtitle, and type % (of article, etc.) % FUNCTION {format.atitle.type.check} { format.aetitle.check format.atype.check connect.with.space.check title format.atitle.connect } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format title, englishtitle, % and translator (of article, etc.) % FUNCTION {format.atitle.trans.check} { format.aetitle.check format.atrans.check connect.with.space.check title format.atitle.connect } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format title, englishtitle, type, % and translator (of article, etc.) % FUNCTION {format.atitle.type.trans.check} { format.aetitle.check format.atype.check connect.with.space.check format.atrans.check connect.with.space.check title format.atitle.connect } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format journal, volume, number and pages % call with % formatted.pages format.journal.vol.num.pages.check % FUNCTION { format.journal.vol.num.pages.check } { "journal" journal warning.if.empty duplicate$ empty$ journal empty$ and volume empty$ and number empty$ and { pop$ "" } { "\APACjournalVolNumPages{" journal "" connect.check "}{" * volume "" connect.check "}{" * number "" connect.check "}{" * swap$ "" connect.check "}" * } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % volume of book, checks whether % "Volume" or "Volumes" % % call with % field format.bvolume.check % FUNCTION {format.bvolume.check} { duplicate$ empty$ 'skip$ { duplicate$ multi.result.check { "\BVOLS" swap$ tie.or.space.connect } { "\BVOL" swap$ tie.or.space.connect } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % edition of book, must not be empty % call with % field format.edition.check % FUNCTION {format.edition.check} { duplicate$ empty$ 'skip$ { "\PrintOrdinal{" swap$ * "}" * "\BEd" connect.with.space.check } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % volume and edition of book % FUNCTION {format.bvol.edition.check} { edition format.edition.check volume format.bvolume.check connect.with.comma.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % volume and edition of book % FUNCTION {format.bvol.edition} { format.bvol.edition.check parenthesize.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % volume and edition and translator of translated book % FUNCTION {format.bvol.edition.trans} { format.bvol.edition.check format.translators.in.paren.check connect.with.semicolon.check parenthesize.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % volume, edition, editor, and translator of (translated) book % FUNCTION {format.bvol.edition.editor.trans} { format.bvol.edition.check format.editors.translators.in.paren.check connect.with.semicolon.check parenthesize.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % formats pages by first checking if 1 or more pages % and prefixing pages with "p." or "pp." (these strings % are given in the commands \BPG and \BPGS, respectively), % whichever is applicable, and do a tie or space connect % % call with % field format.bpages.check % FUNCTION {format.bpages.check} { duplicate$ empty$ 'skip$ { duplicate$ multi.result.check { "\BPGS" swap$ tie.or.space.connect } { "\BPG~" swap$ * } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % formats chapters by first checking if 1 or more chapters % and prefixing pages with "chap." (this string % is given in the commands \BCHAP and \BCHAPS, respectively), % whichever is applicable, and do a tie or space connect % % call with % field format.bchapter.check % FUNCTION {format.bchapter.check} { duplicate$ empty$ 'skip$ { duplicate$ multi.result.check { "\BCHAPS" swap$ tie.or.space.connect } { "\BCHAP" swap$ tie.or.space.connect } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % volume, edition, and pages or chapter of article in book etc. % FUNCTION {format.bvol.edition.pages} { format.bvol.edition.check pages empty$ { chapter format.bchapter.check connect.with.comma.check } { pages format.bpages.check connect.with.comma.check } if$ parenthesize.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % title, volume, edition of book % FUNCTION {format.btitle.vol.edition} { format.betitle.check format.bvol.edition connect.with.space.check title format.btitle.connect.no.dot } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % title, volume, edition, and translator of book % FUNCTION {format.btitle.vol.edition.trans} { format.betitle.check format.bvol.edition.trans connect.with.space.check title format.btitle.connect.no.dot } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % title, volume, edition, editor, and translator of book % FUNCTION {format.btitle.vol.edition.editor.trans} { format.betitle.check format.bvol.edition.editor.trans connect.with.space.check title format.btitle.connect.no.dot } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format address and publisher of book etc. % % New York: Wiley % or % Wiley (if address empty) % or % New York (if publisher empty) % FUNCTION {format.address.publisher} { % % If publisher = author or publisher = "author" or publisher = "Author" % then hand over the final choice how to format this to \LaTeX. % (I could imagine similar code for editors, but the APA manual does % not mention it and then we'd have to check whether the editor is in % the author position, so let's keep it simple until someone complains.) % author empty$ publisher empty$ or { publisher "\APACaddressPublisher{" } { author publisher = "author" publisher = or "Author" publisher = or { author "\APACaddressPublisherEqAuth{" } { publisher "\APACaddressPublisher{" } if$ } if$ address "" connect.check "}{" * % Recover publisher that was pushed onto the stack previously. swap$ "" connect.check "}" * } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format address and publisher of book etc. % % New York: Wiley % or % Wiley (if address empty) % or % New York (if publisher empty) % % warning if no publisher or no address % FUNCTION {format.address.publisher.check} { "publisher" publisher warning.if.empty "address" address warning.if.empty publisher empty$ address empty$ and 'skip$ { % Clear the stack duplicate$ empty$ 'skip$ { output.new.block } if$ format.address.publisher } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format number as in reports: No. 2017 % call with % field format.rnumber.check % FUNCTION {format.rnumber.check} { duplicate$ empty$ 'skip$ { duplicate$ multi.result.check { "\BNUMS" swap$ tie.or.space.connect } { "\BNUM" swap$ tie.or.space.connect } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format type and number of a standalone item % call with % format.type.number % FUNCTION { format.type.number } { type empty$ { type.2 } { type } if$ number empty$ { bracket.check } { number format.rnumber.check connect.with.space.check parenthesize.check } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format howpublished if not empty, % for various entry types % call with % format.howpublished % FUNCTION {format.howpublished} { howpublished empty$ 'skip$ { % clear the stack duplicate$ empty$ 'pop$ { output.dot.new.block } if$ "\APAChowpublished{" howpublished * "}" * } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format howpublished if not empty, % for misc % call with % output.howpublished % FUNCTION {output.howpublished} { howpublished empty$ 'skip$ { "\APAChowpublished{" howpublished * "}" * output.dot.new.block } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % begin and end of url environment % FUNCTION {begin.end.url.env} { " \begin{APACrefURL} " % For "Retrieved , from" lastchecked empty$ 'skip$ { "[{" * lastchecked * "}]" * } if$ " \end{APACrefURL} " } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % begin and end of message environment % FUNCTION {begin.end.msg.env} { " \begin{APACrefURLmsg} " " \end{APACrefURLmsg} " } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format url given that it is not empty, % for various entry types % call with % format.url % FUNCTION {format.url} { % First format begin and end of the enclosing environment. % With posted messages, a different environment is used. type.2 empty$ { begin.end.url.env } { type.2 "\bibmessage" = { begin.end.msg.env } { begin.end.url.env } if$ } if$ % The url string. "\url{" url * "}" * % Enclose in begin and end environment enclose.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format optional note % FUNCTION {format.note} { "\APACrefnote{" "}" note enclose.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format original year of publication and note % (reprint or translation) % FUNCTION {format.orig.year.note} { originalyear empty$ { format.note } { "\APACorigyearnote{" originalyear "" connect.check "}{" * note "" connect.check "}" * } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format original journal of publication and note % (reprint or translation) % FUNCTION {format.orig.journal.note} { "\APACorigjournalnote{" originalyear "" connect.check "}{" * originaljournal "" connect.check "}{" * originalvolume "" connect.check "}{" * originalnumber "" connect.check "}{" * originalpages "" connect.check "}{" * note "" connect.check "}" * } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format original book of publication and note % (reprint or translation) % FUNCTION {format.orig.book.note} { "\APACorigbooknote{" originalyear "" connect.check "}{" * % originaleditor empty$ 'skip$ { originaleditor num.names$ #1 > { "\APACorigEDS{" * originaleditor format.editor.names * "}" * } { "\APACorigED{" * originaleditor format.editor.names * "}" * } if$ } if$ % "}{" * originalbooktitle format.btitle.no.dot "" connect.check "}{" * originaledition format.edition.check "" connect.check "}{" * originalvolume format.bvolume.check "" connect.check "}{" * originalpages format.bpages.check "" connect.check "}{" * originaladdress "" connect.check "}{" * originalpublisher "" connect.check "}{" * note "" connect.check "}" * } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format information about original publication of reprint % and format optional note % FUNCTION {format.orig.note} { originaljournal empty$ { originalbooktitle empty$ { note empty$ { originalyear empty$ 'skip$ { originalyear "\bibnodate" = 'skip$ { output.new.block format.orig.year.note } if$ } if$ } { output.new.block format.orig.year.note } if$ } { output.new.block format.orig.book.note } if$ } { output.new.block format.orig.journal.note } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % article in periodical: journal, magazine, newspaper, ... % % call with % formatted.pages formatted.date periodical % FUNCTION {periodical} { % % author or editor, year, title, englishtitle, type % author empty$ % % no author: possibly special issue with editors as authors % (APA manual, ex. 11, p. 121) % { editor empty$ % % no author or editor: title serves as author. % title formatted as article title (APA manual not consistent in this, % compare statement on p. 119: ``treat as book title'' and % example 8, p. 121: no underlining => article title) % { format.atitle.type.trans.check output.new.block % % now formatted date on top of stack % output.dot.new.block } % % format editor and year, and check if year is present % format article title and check if title or type present % { format.editors.as.authors start.new.block % % now formatted date on top of stack % output.dot.new.block format.atitle.type.trans.check output.new.block } if$ } % % format author and year, and check if year is present % format article title and check if title or type present % { format.authors start.new.block % % now formatted date on top of stack % output.dot.new.block format.atitle.type.trans.check output.new.block } if$ % % format journal name, volume and issue number, and pages % and check if journal not empty % format.journal.vol.num.pages.check % % if not empty, insert howpublished. % (used if article is retrieved from the internet) % format.howpublished add.period$ % % format url % url empty$ 'skip$ { % Clear the stack duplicate$ empty$ 'skip$ { output.new.block } if$ format.url } if$ % % possible reprint and optional note % format.orig.note fin.entry } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % journal article % FUNCTION {article} { pages format.year.month.day.check periodical } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % magazine article % FUNCTION {magazine} { pages format.year.month.day.check periodical } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % newspaper article % FUNCTION {newspaper} { pages format.bpages.check format.year.month.day.check periodical } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % (translation of) entire book % FUNCTION {book} { % % author or editor, % year, title, englishtitle, translator % author empty$ % % no author: possibly edited book with editors as authors % { editor empty$ % % no author or editor: title serves as author. % title formatted as book title % { format.btitle.vol.edition.trans format.type.number connect.with.space.check output.dot.new.block format.year.check add.period$ } % % format editor and year, and check if year is present % format booktitle, volume, and edition and check if title present % { translator empty$ { format.editors.as.authors start.new.block format.year.check output.dot.new.block format.btitle.vol.edition } % % format translator correctly % { translator editor = not { format.editors.as.authors start.new.block format.year.check output.dot.new.block format.btitle.vol.edition.trans } { format.ed.trans.as.authors start.new.block format.year.check output.dot.new.block format.btitle.vol.edition } if$ } if$ format.type.number connect.with.space.check add.period$ } if$ } % % format author and year, and check if year is present % format booktitle, volume, and edition and check if title present % { format.authors start.new.block format.year.check output.dot.new.block format.btitle.vol.edition.editor.trans format.type.number connect.with.space.check add.period$ } if$ % % format address and publisher, check if address and publisher present % format.address.publisher.check % % if not empty, insert howpublished. % (used if book is retrieved from the internet) % format.howpublished add.period$ % % format url % url empty$ 'skip$ { % Clear the stack duplicate$ empty$ 'skip$ { output.new.block } if$ format.url } if$ % % format original publication (of reprint/translation) % and optional note % format.orig.note fin.entry } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % (translated) article or chapter in edited book % FUNCTION {incollection} { author empty$ % % no author: title serves as author. % title formatted as article title (APA manual not consistent in this, % compare statement on p. 119: ``treat as book title'' and % example 8, p. 121: no underlining => article title) % { editor.ne.trans { format.atitle.type.trans.check } { format.atitle.type.check } if$ output.new.block % % format month and day as well when available % esp. for ``collections'' that are not books, % such as parts of internet documents % format.year.month.day.check add.period$ } % % format author and year, and check if year is present % format article title and check if title or type present % { format.authors start.new.block format.year.month.day.check output.dot.new.block editor.ne.trans { format.atitle.type.trans.check } { format.atitle.type.check } if$ } if$ % % format "In " editor " (Ed. \& Trans.), " % booktitle, volume, edition, pages % output.new.block format.in.editors.trans format.bvol.edition.pages booktitle format.btitle.connect * add.period$ % % format address and publisher, check if publisher present % format.address.publisher.check % % if not empty, insert howpublished. % (used if article is retrieved from the internet) % format.howpublished add.period$ % % format url % url empty$ 'skip$ { % Clear the stack duplicate$ empty$ 'skip$ { output.new.block } if$ format.url } if$ % % format original publication (of reprint/translation) % and optional note % format.orig.note fin.entry } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % technical report number % FUNCTION {format.tr.number} { type empty$ { "\BTR{}" } { type "\bibnotype" = { "" } { type } if$ } if$ number format.rnumber.check connect.with.space.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % title, volume, edition, report number % FUNCTION {format.tr.title.number} { format.betitle.check % Single out the situation in which there is no number % and type = {\bibnotype}, i.e., no type as well. % (Why not use book then?) type empty$ { % Now, we're in the regular situation with at least a % number, a type, a volume, or an edition. "\APACbVolEdTR{" format.bvol.edition.check * "}{" * format.tr.number * "}" * } { type "\bibnotype" = number empty$ volume empty$ edition empty$ and and and { "" } { % Now, we're in the regular situation with at least a % number, a type, a volume, or an edition. "\APACbVolEdTR{" format.bvol.edition.check * "}{" * format.tr.number * "}" * } if$ } if$ connect.with.space.check title format.btitle.connect } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % format address and institution of reports etc. % % Washington, DC: National Institute of Education % or % National Institute of Education (if address empty) % % warning if no institution % FUNCTION {format.address.institution.check} { "institution" institution warning.if.empty "address" address warning.if.empty institution empty$ address empty$ and 'skip$ { % Clear the stack duplicate$ empty$ 'skip$ { output.new.block } if$ % % If institution = author or institution = "author" % or institution = "Author" then hand over the final choice how to % format this to \LaTeX. See also format.address.publisher % author empty$ institution empty$ or { institution "\APACaddressInstitution{" } { author institution = "author" institution = or "Author" institution = or { author "\APACaddressInstitutionEqAuth{" } { institution "\APACaddressInstitution{" } if$ } if$ address "" connect.check "}{" * % Recover institution that was pushed onto the stack previously. swap$ "" connect.check "}" * } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % reports % FUNCTION {techreport} { author empty$ % % no author: possibly edited report with editors as authors % { editor empty$ % % no author or editor: title serves as author. % title formatted as book title % { format.tr.title.number output.dot.new.block format.year.month.day.check add.period$ } % % format editor and year, and check if year is present % format report title and check if title present % format volume, edition, type, and number % { format.editors.as.authors start.new.block format.year.month.day.check output.dot.new.block format.tr.title.number add.period$ } if$ } % % format author and year, and check if year is present % format report title and check if title present % format volume, edition, type, and number % { format.authors start.new.block format.year.month.day.check output.dot.new.block format.tr.title.number add.period$ } if$ % % format address and institution, check if institution present % format.address.institution.check % % if not empty, insert howpublished. % (used if report is retrieved from the internet) % format.howpublished add.period$ % % format url % url empty$ 'skip$ { % Clear the stack duplicate$ empty$ 'skip$ { output.new.block } if$ format.url } if$ % % format optional note % note empty$ 'skip$ { % Clear the stack duplicate$ empty$ 'skip$ { output.new.block } if$ format.note } if$ fin.entry } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % (translated) article or chapter in report % FUNCTION {intechreport} { author empty$ % % no author: title serves as author. % title formatted as article title (APA manual not consistent in this, % compare statement on p. 119: ``treat as book title'' and % example 8, p. 121: no underlining => article title) % { editor.ne.trans { format.atitle.trans.check } { format.atitle.check } if$ output.new.block format.year.month.day.check output.dot.new.block } % % format author and year, and check if year is present % format article title and check if title or type present % { format.authors start.new.block format.year.month.day.check output.dot.new.block editor.ne.trans { format.atitle.trans.check } { format.atitle.check } if$ output.new.block } if$ % % format "In " editor " (Ed. \& Trans.), " % booktitle, volume, edition, pages % format.in.editors.trans % % volume, edition, report type and number, pages % "\APACbVolEdTRpgs{" format.bvol.edition.check * "}{" * format.tr.number * "}{" * pages format.bpages.check * "}" * % booktitle format.btitle.connect * add.period$ % % format address and publisher, check if publisher present % format.address.institution.check % % if not empty, insert howpublished. % (used if report is retrieved from the internet) % format.howpublished add.period$ % % format url % url empty$ 'skip$ { % Clear the stack duplicate$ empty$ 'skip$ { output.new.block } if$ format.url } if$ % % format original publication (of reprint/translation) % and optional note % format.orig.note fin.entry } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % papers presented at conferences etc. % FUNCTION {lecture} { author empty$ { "author" author warning.if.empty } { format.authors start.new.block } if$ % % format year, month, and day, and check if year present % format title and check if title present % format howpublished and check if howpublished present % format.year.month.day.check output.dot.new.block symposium empty$ { format.betitle.check title format.btitle.connect output.new.block howpublished empty$ { "symposium and howpublished missing in " cite$ * warning$ "" } { "\APAChowpublished{" howpublished * "}" * } if$ address connect.with.comma.check } { format.atitle.type.check output.new.block "\BIn{} " chair empty$ 'skip$ { chair format.editor.names chair num.names$ #1 > { "(\BCHAIRS)" } { "(\BCHAIR)" } if$ connect.with.space.check * ", " * } if$ symposium format.btitle.no.dot * format.howpublished address connect.with.comma.check } if$ add.period$ % % format url % url empty$ 'skip$ { % Clear the stack duplicate$ empty$ 'skip$ { output.new.block } if$ format.url } if$ % % format optional note % note empty$ 'skip$ { % Clear the stack duplicate$ empty$ 'skip$ { output.new.block } if$ format.note } if$ fin.entry } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % default thesis type is on top of stack % now, if type field is empty, this default is used % else default is removed and replaced by value of % type field % FUNCTION {format.type.school} { type empty$ 'skip$ { pop$ type "t" change.case$ } if$ school connect.with.comma.check } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % phd theses, etc. % call with % "default.published.thesis" "default.unpublished.thesis" thesis % FUNCTION {thesis} { author empty$ { "author" author warning.if.empty } { format.authors start.new.block } if$ % % format year and check if year present % format.year.check output.dot.new.block % % format title and check if title present % journal empty => unpublished PhD thesis % journal not empty => published (e.g., Dissertation Abstracts Int.) % journal empty$ { format.btitle.vol.edition output.dot.new.block % % pop default unpublished thesis, top is default published thesis % swap$ pop$ format.type.school address connect.with.comma.check } % % pop default published thesis, top is default unpublished thesis % { pop$ type empty$ school empty$ originalyear empty$ and and { pop$ "" } { format.type.school originalyear connect.with.comma.check parenthesize.check } if$ format.aetitle.check swap$ connect.with.space.check "title" title warning.if.empty title format.atitle.connect output.new.block pages format.journal.vol.num.pages.check } if$ % % if not empty, insert howpublished. % (used if thesis is retrieved from the internet) % format.howpublished add.period$ % % format url % url empty$ 'skip$ { % Clear the stack duplicate$ empty$ 'skip$ { output.new.block } if$ format.url } if$ % % format optional note % note empty$ 'skip$ { % Clear the stack duplicate$ empty$ 'skip$ { output.new.block } if$ format.note } if$ fin.entry } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % phd theses, etc. % FUNCTION {phdthesis} { "\BPhD" "\BUPhD" thesis } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % master's theses, etc. % FUNCTION {mastersthesis} { "\BMTh" "\BUMTh" thesis } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % title of something (used in unpublished and misc) % english translation of title % type and number of something % FUNCTION {format.btitle.type.num} { format.betitle.check format.bvol.edition connect.with.space.check format.type.number connect.with.space.check title empty$ { add.period$ } { title format.btitle.connect } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % title of message or software-related thing (used in misc) % english translation of title % type and number of something % FUNCTION {format.mtitle.type.num} { format.aetitle.check format.bvol.edition connect.with.space.check type.2 "\bibmessage" = { number empty$ 'skip$ { type.2 number tie.or.space.connect bracket.check connect.with.space.check } if$ } { format.type.number connect.with.space.check } if$ title empty$ { add.period$ } { title format.atitle.connect } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % title, english translation of title, % type and number of something (used in misc) % FUNCTION {output.misctitle.type.num} { type.2 empty$ { format.btitle.type.num } { type.2 "\bibmessage" = type.2 "\bibcomputerprogram" = or type.2 "\bibcomputerprogrammanual" = or type.2 "\bibcomputerprogramandmanual" = or type.2 "\bibcomputersoftware" = or type.2 "\bibcomputersoftwaremanual" = or type.2 "\bibcomputersoftwareandmanual" = or type.2 "\bibprogramminglanguage" = or { format.mtitle.type.num } { format.btitle.type.num } if$ } if$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % unpublished manuscripts, etc. % FUNCTION {unpublished} { check.relevant.fields author empty$ % % no author: possibly edited book with editors as authors % { editor empty$ % % no author or editor: title serves as author. % title formatted as book title % { format.btitle.type.num output.new.block format.year.month.day.check add.period$ } % % format editor and year, and check if year is present % format book title, volume, and edition and check if title present % { format.editors.as.authors start.new.block format.year.month.day.check output.dot.new.block format.btitle.type.num } if$ } % % format author and year, and check if year is present % format book title, volume, and edition % and check if title or type present % { format.authors start.new.block format.year.month.day.check output.dot.new.block format.btitle.type.num } if$ howpublished empty$ organization empty$ and address empty$ and 'skip$ { output.new.block "\APAChowpublished{" "}" howpublished enclose.check organization connect.with.comma.check address connect.with.comma.check add.period$ } if$ % % format url % url empty$ 'skip$ { % Clear the stack duplicate$ empty$ 'skip$ { output.new.block } if$ format.url } if$ % % format optional note % note empty$ 'skip$ { % Clear the stack duplicate$ empty$ 'skip$ { output.new.block } if$ format.note } if$ fin.entry } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % nonprint media and other things that don't fit % FUNCTION {misc} { % % To handle @manual: use type.2 instead of type. type.2 empty$ type empty$ not and { type 'type.2 := } 'skip$ if$ % author empty$ % % no author: possibly edited item with editors as authors % { editor empty$ % % no author or editor: title/type serves as author. % title formatted as book title % % if no title and no type, howpublished is title % { title empty$ type.2 empty$ and { howpublished empty$ { "No author, editor, title, type, and howpublished in " cite$ * warning$ "" } { "\APAChowpublished{" howpublished * "}" * add.period$ } if$ format.year.month.day.check add.period$ } { output.misctitle.type.num output.new.block format.year.month.day.check add.period$ format.howpublished add.period$ } if$ } % % format editor and year, and check if year is present % format book title, volume, and edition and check if title present % { format.editors.as.authors start.new.block format.year.month.day.check output.dot.new.block output.misctitle.type.num format.howpublished add.period$ } if$ } % % format author and year, and check if year is present % format book title, volume, and edition % and check if title or type present % { format.authors start.new.block format.year.month.day.check output.dot.new.block output.misctitle.type.num format.howpublished add.period$ } if$ % address empty$ publisher empty$ and 'skip$ { % Clear the stack duplicate$ empty$ 'skip$ { output.new.block } if$ format.address.publisher add.period$ } if$ % % format url % url empty$ 'skip$ { % Clear the stack duplicate$ empty$ 'skip$ { output.new.block } if$ format.url } if$ % % format optional note % note empty$ 'skip$ { % Clear the stack duplicate$ empty$ 'skip$ { output.new.block } if$ format.note } if$ fin.entry } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % for legal cases and other cases that need to be % done by hand % FUNCTION {literal} { "key" key warning.if.empty "text" text warning.if.empty text empty$ { "" } { text } if$ fin.entry } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % technical documentation % FUNCTION {manual} { % % If type is empty, assume that it is a computer software manual. % type empty$ { "\bibcomputersoftwaremanual" 'type.2 := } 'skip$ if$ misc } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % following functions not used for APA Manual examples % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % booklet % FUNCTION {booklet} { misc } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % part of a book % FUNCTION {inbook} { incollection } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % article in proceedings % FUNCTION {inproceedings} { incollection } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % article in proceedings (Kopka & Daly, 2004, p. 230) % FUNCTION {conference} { inproceedings } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % proceedings % FUNCTION {proceedings} { misc } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % unknown types % FUNCTION {default.type} { misc } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {initialize} { % % Maximum number of names to be formatted . #6 'name.max := } FUNCTION {init.old.number} { % % For numbering the entries according to current sorting order. #0 'old.number := } FUNCTION {init.old.label} { % % For comparing labels across entries . "zzzzzz" 'old.label := } FUNCTION {init.cite.initials.add.to.year} { % % Initialize "cite initials" indicator for all entries. #0 'cite.initials := % % Initialize "add to year", i.e., whether a, b, etc. must % be added to the year in citation, to "no". #0 'add.to.year := % } FUNCTION {move.forward} { % % Indicates that we're moving forward (ITERATE) through the entry list . #1 'forward := } FUNCTION {move.backward} { % % Indicates that we're moving backward (REVERSE) through the entry list . #0 'forward := } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {begin.bib} { preamble$ empty$ 'skip$ { preamble$ write$ newline$ } if$ "\begin{thebibliography}{}" write$ newline$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {end.bib} { newline$ "\end{thebibliography}" write$ newline$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {write.bbl.entry} { % % Output \bibitem and \citeauthoryear command. % make.cite.labels % % Format and output reference list entry. % call.type$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% READ EXECUTE { identify.apacite.version } EXECUTE { initialize } ITERATE { make.sort.title } SORT EXECUTE { init.old.number } EXECUTE { init.old.label } ITERATE { make.title.number } ITERATE { make.tentative.sort.label } SORT ITERATE { init.cite.initials.add.to.year } EXECUTE { init.initials } ITERATE { check.add.initials } EXECUTE { init.initials } REVERSE { check.add.initials } ITERATE { tentative.cite.num.names } EXECUTE { init.cite.num.names } EXECUTE { move.forward } ITERATE { definitive.cite.num.names } EXECUTE { init.cite.num.names } EXECUTE { move.backward } REVERSE { definitive.cite.num.names } ITERATE { make.final.sort.key } SORT EXECUTE { begin.bib } ITERATE { write.bbl.entry } EXECUTE { end.bib } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% %% %% End of file `apacite.bst'. ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.574612 pybtex-0.24.0/tests/data/cyrillic.bib0000644000175000001440000000257400000000000017232 0ustar00agusers00000000000000@preamble{"%%% pybtex example file"} @article{ruckenstein-diffusion, author = "Liu, Hongquin and Ruckenstein, Eli", language = "english", title = "Predicting the Diffusion Coefficient in Supercritical Fluids", journal = "Ind. Eng. Chem. Res.", volume = "36", year = "1997", pages = "888-895" } @book{viktorov-metodoj, author = "Викторов, Михаил Маркович", publisher = "Л.: <<Химия>>", title = "Методы вычисления физико-химических величин и прикладные расчёты", language = "russian", year = "1977", isbn = "000-0000000000", } @inbook{test-inbook, author = "Jackson, P\'eter", publisher = "Some Publisher", language = "english", title = "Some Title", series = "Some series", booktitle = "Some Good Book", number = "3", edition = "Second", year = "1933", pages = "44--59", url = "https://example.com/Peter%20Jackson.html" } @INBOOK{inbook-editor, editor = "Vladimir Ilyich Lenin", title = "Lesbian Nurses", publisher = "Yale University Press", year = "1914", chapter = "8", } @booklet{test-booklet, author = "de Last, Jr., First Middle", language = "english", title = "Just a booklet", year = "2006", month = "January", address = "Moscow", howpublished = "Published by Foo" } ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5676122 pybtex-0.24.0/tests/data/cyrillic_alpha.bibtex.bbl0000644000175000001440000000173200000000000021651 0ustar00agusers00000000000000%%% pybtex example file \begin{thebibliography}{Вик77} \bibitem[dL06]{test-booklet} First~Middle de~Last, Jr. \newblock Just a booklet. \newblock Published by Foo, Moscow, January 2006. \bibitem[Jac33]{test-inbook} P\'eter Jackson. \newblock {\em Some Title}, pages 44--59. \newblock Number~3 in Some series. Some Publisher, second edition, 1933. \bibitem[Len14]{inbook-editor} Vladimir~Ilyich Lenin, editor. \newblock {\em Lesbian Nurses}, chapter~8. \newblock Yale University Press, 1914. \bibitem[LR97]{ruckenstein-diffusion} Hongquin Liu and Eli Ruckenstein. \newblock Predicting the diffusion coefficient in supercritical fluids. \newblock {\em Ind. Eng. Chem. Res.}, 36:888--895, 1997. \bibitem[Вик77]{viktorov-metodoj} Михаил~Маркович Викторов. \newblock {\em Методы вычисления физико-химических величин и прикладные расчёты}. \newblock Л.: <<Химия>>, 1977. \end{thebibliography} ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5816119 pybtex-0.24.0/tests/data/cyrillic_alpha.pybtex.bbl0000644000175000001440000000207300000000000021706 0ustar00agusers00000000000000%%% pybtex example file \begin{thebibliography}{Len14} \bibitem[dL06]{test-booklet} First~Middle de~Last, Jr. \newblock Just a booklet. \newblock Published by Foo, Moscow, January 2006. \bibitem[Jac33]{test-inbook} Péter Jackson. \newblock \emph{Some Title}, pages 44–59. \newblock Number~3 in Some series. \newblock Some Publisher, Second edition, 1933. \newblock URL: \url{https://example.com/Peter%20Jackson.html}. \bibitem[Len14]{inbook-editor} Vladimir~Ilyich Lenin, editor. \newblock \emph{Lesbian Nurses}, chapter~8. \newblock Yale University Press, 1914. \bibitem[LR97]{ruckenstein-diffusion} Hongquin Liu and Eli Ruckenstein. \newblock Predicting the diffusion coefficient in supercritical fluids. \newblock \emph{Ind. Eng. Chem. Res.}, 36:888--895, 1997. \bibitem[77]{viktorov-metodoj} Михаил~Маркович Викторов. \newblock \emph{Методы вычисления физико-химических величин и прикладные расчёты}. \newblock Л.: <<Химия>>, 1977. \newblock ISBN 000-0000000000. \end{thebibliography} ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5786119 pybtex-0.24.0/tests/data/cyrillic_plain.pybtex.bbl0000644000175000001440000000205000000000000021717 0ustar00agusers00000000000000%%% pybtex example file \begin{thebibliography}{1} \bibitem[1]{test-booklet} First~Middle de~Last, Jr. \newblock Just a booklet. \newblock Published by Foo, Moscow, January 2006. \bibitem[2]{test-inbook} Péter Jackson. \newblock \emph{Some Title}, pages 44–59. \newblock Number~3 in Some series. \newblock Some Publisher, Second edition, 1933. \newblock URL: \url{https://example.com/Peter%20Jackson.html}. \bibitem[3]{inbook-editor} Vladimir~Ilyich Lenin, editor. \newblock \emph{Lesbian Nurses}, chapter~8. \newblock Yale University Press, 1914. \bibitem[4]{ruckenstein-diffusion} Hongquin Liu and Eli Ruckenstein. \newblock Predicting the diffusion coefficient in supercritical fluids. \newblock \emph{Ind. Eng. Chem. Res.}, 36:888--895, 1997. \bibitem[5]{viktorov-metodoj} Михаил~Маркович Викторов. \newblock \emph{Методы вычисления физико-химических величин и прикладные расчёты}. \newblock Л.: <<Химия>>, 1977. \newblock ISBN 000-0000000000. \end{thebibliography} ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5816119 pybtex-0.24.0/tests/data/cyrillic_unsrt.bibtex.bbl0000644000175000001440000000165700000000000021745 0ustar00agusers00000000000000%%% pybtex example file \begin{thebibliography}{1} \bibitem{ruckenstein-diffusion} Hongquin Liu and Eli Ruckenstein. \newblock Predicting the diffusion coefficient in supercritical fluids. \newblock {\em Ind. Eng. Chem. Res.}, 36:888--895, 1997. \bibitem{viktorov-metodoj} Михаил~Маркович Викторов. \newblock {\em Методы вычисления физико-химических величин и прикладные расчёты}. \newblock Л.: <<Химия>>, 1977. \bibitem{test-inbook} P\'eter Jackson. \newblock {\em Some Title}, pages 44--59. \newblock Number~3 in Some series. Some Publisher, second edition, 1933. \bibitem{inbook-editor} Vladimir~Ilyich Lenin, editor. \newblock {\em Lesbian Nurses}, chapter~8. \newblock Yale University Press, 1914. \bibitem{test-booklet} First~Middle de~Last, Jr. \newblock Just a booklet. \newblock Published by Foo, Moscow, January 2006. \end{thebibliography} ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.568612 pybtex-0.24.0/tests/data/cyrillic_unsrt.pybtex.bbl0000644000175000001440000000205000000000000021767 0ustar00agusers00000000000000%%% pybtex example file \begin{thebibliography}{1} \bibitem[1]{ruckenstein-diffusion} Hongquin Liu and Eli Ruckenstein. \newblock Predicting the diffusion coefficient in supercritical fluids. \newblock \emph{Ind. Eng. Chem. Res.}, 36:888--895, 1997. \bibitem[2]{viktorov-metodoj} Михаил~Маркович Викторов. \newblock \emph{Методы вычисления физико-химических величин и прикладные расчёты}. \newblock Л.: <<Химия>>, 1977. \newblock ISBN 000-0000000000. \bibitem[3]{test-inbook} Péter Jackson. \newblock \emph{Some Title}, pages 44–59. \newblock Number~3 in Some series. \newblock Some Publisher, Second edition, 1933. \newblock URL: \url{https://example.com/Peter%20Jackson.html}. \bibitem[4]{inbook-editor} Vladimir~Ilyich Lenin, editor. \newblock \emph{Lesbian Nurses}, chapter~8. \newblock Yale University Press, 1914. \bibitem[5]{test-booklet} First~Middle de~Last, Jr. \newblock Just a booklet. \newblock Published by Foo, Moscow, January 2006. \end{thebibliography} ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.580612 pybtex-0.24.0/tests/data/extrafields.bib0000644000175000001440000000125200000000000017722 0ustar00agusers00000000000000@article{scikit-image, title = {{s}cikit-image: image processing in {P}ython}, author = {van der Walt, {S}t\'efan and {S}ch\"onberger, {J}ohannes {L}. and {Nunez-Iglesias}, {J}uan and {B}oulogne, {F}ran\c{c}ois and {W}arner, {J}oshua {D}. and {Y}ager, {N}eil and {G}ouillart, {E}mmanuelle and {Y}u, {T}ony and the scikit-image contributors}, year = {2014}, month = {6}, keywords = {Image processing, Reproducible research, Education, Visualization, Open source, Python, Scientific programming}, volume = {2}, pages = {e453}, journal = {PeerJ}, issn = {2167-8359}, url = {http://scikit-image.org/}, doi = {10.7717/peerj.453} } ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5816119 pybtex-0.24.0/tests/data/extrafields_unsrt.pybtex.bbl0000644000175000001440000000077200000000000022500 0ustar00agusers00000000000000\begin{thebibliography}{1} \bibitem[1]{scikit-image} {S}téfan van~der Walt, {J}ohannes~{L}. {S}chönberger, {J}uan {Nunez-Iglesias}, {F}ran{ç}ois {B}oulogne, {J}oshua~{D}. {W}arner, {N}eil {Y}ager, {E}mmanuelle {G}ouillart, {T}ony {Y}u, and the~scikit-image contributors. \newblock {s}cikit-image: image processing in {P}ython. \newblock \emph{PeerJ}, 2:e453, 6 2014. \newblock URL: \url{http://scikit-image.org/}, \href{https://doi.org/10.7717/peerj.453}{doi:10.7717/peerj.453}. \end{thebibliography} ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.580612 pybtex-0.24.0/tests/data/jurabib.bst0000644000175000001440000020257100000000000017071 0ustar00agusers00000000000000%% %% This is file `jurabib.bst', %% generated with the docstrip utility. %% %% The original source files were: %% %% jurabib.dtx (with options: `jurabst') %% ---------------------------------------- %% BibTeX style for use with the jurabib package version v0.6 %% Copyright (C) 1999-2004 Jens Berger (http://www.jurabib.org) %% See jurabib.ins for the copyright details. %% ENTRY{ address author booktitle chapter edition editor howpublished institution isbn issn journal key language month note number organization pages publisher school series title type volume year %% url urldate volumetitle dissyear howcited juratitle juraauthor shorttitle shortauthor ssedition titleaddon booktitleaddon editortype sortkey annote gender translator flanguage oyear oaddress opublisher updated totalpages founder archive subarchive shortarchive shortsubarchive sig1 sig2 sig3 sig4 archname } { repeat-authors repeat-titles } { label dummy.label extra.label sort.label current-authors } INTEGERS { output.state before.all mid.sentence after.sentence after.block } INTEGERS { colon.after period.dash } FUNCTION {init.state.consts} { #0 'before.all := #1 'mid.sentence := #2 'after.sentence := #3 'after.block := #4 'colon.after := #5 'period.dash := } STRINGS { s t u v w x } FUNCTION {output.nonnull} { 's := output.state after.block = { write$ } { output.state before.all = { write$ } { output.state colon.after = { "" * write$ } { output.state period.dash = { ", " * write$ } { output.state mid.sentence = { " " * write$ } { write$ } if$ } if$ } if$ } if$ after.block 'output.state := } if$ s } FUNCTION {output} { duplicate$ empty$ 'pop$ 'output.nonnull if$ } FUNCTION {output.check} { 't := duplicate$ empty$ { pop$ "Empty " t * " in " * cite$ * warning$ } 'output.nonnull if$ } FUNCTION {not} { { #0 } { #1 } if$ } FUNCTION {and} { 'skip$ { pop$ #0 } if$ } FUNCTION {or} { { pop$ #1 } 'skip$ if$ } FUNCTION {is.num} { chr.to.int$ duplicate$ "0" chr.to.int$ < not swap$ "9" chr.to.int$ > not and } FUNCTION {extract.num} { duplicate$ 't := "" 's := { t empty$ not } { t #1 #1 substring$ t #2 global.max$ substring$ 't := duplicate$ is.num { s swap$ * 's := } { pop$ "" 't := } if$ } while$ s empty$ 'skip$ { pop$ s } if$ } FUNCTION {convert.edition.superscript} { edition extract.num "l" change.case$ 's := s "first" = s "1" = or s "erste" = or { "1" 't := } { s "second" = s "2" = or s "zweite" = or { "2" 't := } { s "third" = s "3" = or s "dritte" = or { "3" 't := } { s "fourth" = s "4" = or s "vierte" = or { "4" 't := } { s "fifth" = s "5" = or s "fuenfte" = or { "5" 't := } { s "sixth" = s "6" = or s "sechste" = or { "6" 't := } { s "seventh" = s "7" = or s "siebte" = or s "siebente" = or { "7" 't := } { s "eighth" = s "8" = or s "achte" = or { "8" 't := } { s "nineth" = s "9" = or s "neunte" = or { "9" 't := } { s #1 #1 substring$ is.num { s "" * 't := } { edition 't := } if$ } if$ } if$ } if$ } if$ } if$ } if$ } if$ } if$ } if$ t } FUNCTION {n.dashify} { 't := "" { t empty$ not } { t #1 #1 substring$ "-" = { t #1 #2 substring$ "--" = not { "--" * t #2 global.max$ substring$ 't := } { { t #1 #1 substring$ "-" = } { "-" * t #2 global.max$ substring$ 't := } while$ } if$ } { t #1 #1 substring$ * t #2 global.max$ substring$ 't := } if$ } while$ } FUNCTION {output.bibitem.fst} { newline$ "\bibitem[{" write$ shortauthor empty$ { juraauthor empty$ { author empty$ { editor empty$ { organization empty$ { archive empty$ { "empty" write$ } { archive write$ } if$ } { organization write$ } if$ } { label write$ } if$ } { label write$ } if$ } { juraauthor write$ } if$ } { shortauthor write$ } if$ "}%" write$ sortkey empty$ 'skip$ { newline$ "% SORTKEY: [" sortkey * "]" * write$ } if$ newline$ shorttitle empty$ { juratitle empty$ { journal empty$ { " {}%" write$ } { volume empty$ { year empty$ { " {" journal * "}%" * write$ } { " {" journal * "\jbsy {" * year * "}}%" * write$ } if$ } { year empty$ { " {" journal * "}%" * write$ } { " {" journal * " " * volume * " " * " \peryearformat {" year * "}}%" * * write$ } if$ } if$ } if$ } { " {" juratitle * "}%" * write$ } if$ } { " {" shorttitle * "}%" * write$ } if$ newline$ repeat-authors { " {{1}" write$ } { " {{0}" write$ } if$ howcited empty$ { "{}" write$ } { "{" howcited * "}" * write$ } if$ type$ empty$ { "{}" write$ } { "{" type$ * "}" * write$ } if$ year empty$ { type$ "book" = dissyear empty$ not and { "{" dissyear * write$ extra.label "" = skip$ { "\el {" write$ extra.label write$ "}" write$ } if$ "}" write$ } { "{}" write$ } if$ } { "{" year * write$ extra.label "" = 'skip$ { "\el {" write$ extra.label write$ "}" write$ } if$ "}" write$ } if$ edition empty$ { "{}" write$ } { "{" convert.edition.superscript extract.num * "}" * write$ } if$ ssedition empty$ { "{}" write$ } { "{" ssedition * "}" * write$ } if$ language empty$ { "{}" write$ } { "{" language * "}" * write$ } if$ pages empty$ { "{}%" write$ } { "{" write$ pages n.dashify write$ "}%" write$ } if$ } FUNCTION {output.bibitem.snd} { newline$ publisher empty$ { address empty$ { year empty$ { " {" write$ } { " {" write$ year write$ extra.label "" = 'skip$ { "\el {" write$ extra.label write$ "}" write$ } if$ } if$ } { year empty$ { " {" write$ address write$ } { " {" write$ address write$ "\bibbdsep {} " write$ year write$ extra.label "" = 'skip$ { "\el {" write$ extra.label write$ "}" write$ } if$ } if$ } if$ } { address empty$ { year empty$ { " {" write$ publisher write$ } { " {" write$ publisher write$ "\bibbdsep {} " write$ year write$ extra.label "" = 'skip$ { "\el {" write$ extra.label write$ "}" write$ } if$ } if$ } { year empty$ { " {" write$ address write$ "\bpubaddr {} " write$ publisher write$ } { " {" write$ address write$ "\bpubaddr {} " write$ publisher write$ "\bibbdsep {} " write$ year write$ extra.label "" = 'skip$ { "\el {" write$ extra.label write$ "}" write$ } if$ } if$ } if$ } if$ "}}%" write$ newline$ " {" write$ title empty$ { "{}%" write$ newline$ } { "{" title * type$ "archival" = { shortarchive empty$ not { ", In: " shortarchive * * } { archive empty$ not { ", In: " archive * * } 'skip$ if$ } if$ shortsubarchive empty$ 'skip$ { ", " shortsubarchive * * } if$ sig1 empty$ 'skip$ { ", " sig1 * * sig2 empty$ 'skip$ { ". " sig2 * * sig3 empty$ 'skip$ { ". " sig3 * * sig4 empty$ 'skip$ { ". " sig4 * * } if$ } if$ } if$ } if$ pages empty$ 'skip$ { " \jbArchPages {" pages n.dashify * "}" * * } if$ } 'skip$ if$ "}%" * write$ newline$ } if$ gender empty$ { " {}" write$ } { " {" gender * "}" * write$ } if$ oyear empty$ { "{}" write$ } { "{" oyear * "}" * write$ } if$ author empty$ { editor empty$ { "{4}" write$ }% author and editor empty { "{3}" write$ }% author empty, editor not if$ } { editor empty$ { "{2}" write$ }% editor empty, author not { "{1}" write$ }% both author and editor given if$ } if$ "{}{}{}{}{}}%" write$ newline$ " ]{" write$ cite$ write$ "}" write$ url empty$ 'skip$ { newline$ " \jburldef {" write$ cite$ write$ "}{" write$ url write$ "}%" write$ } if$ newline$ " \jbbibargs {" write$ "" before.all 'output.state := } FUNCTION {output.bibitem} { output.bibitem.fst output.bibitem.snd } FUNCTION {format.note} { note empty$ 'skip$ { output.state before.all = {" \jbnote {} {" * note * "} " * } {" \jbnote {1} {" * note * "} " * } if$ } if$ } FUNCTION {format.endnote} { note empty$ { "" } { " \jbendnote {" note * "}" * } if$ } FUNCTION {format.juradiss.book} { dissyear empty$ { "" } { type empty$ { school empty$ { "Dissyear but no school in " cite$ * warning$ " (\alsothesisname {} \jurthesisname" * year empty$ not year missing$ not and { "\bibbdsep {} " dissyear * } 'skip$ if$ ")" * } { " (\alsothesisname {} \jurthesisname, " school * year empty$ not year missing$ not and { "\bibbdsep {} " dissyear * * } 'skip$ if$ ")" * } if$ } { school empty$ { "Dissyear but no school in " cite$ * warning$ " (\alsothesisname {} " type * year empty$ not year missing$ not and { "\bibbdsep {} " dissyear * } 'skip$ if$ ")" * } { " (\alsothesisname {} " type * ", " school * * year empty$ not year missing$ not and { "\bibbdsep {} " dissyear * * } 'skip$ if$ ")" * } if$ } if$ } if$ } FUNCTION {format.thesis} { year empty$ { school empty$ { "No universtiy in " cite$ * warning$ } { "There's a university, but no year in " cite$ * warning$ } if$ "" } { type empty$ { school empty$ { "No university in " cite$ * warning$ type$ "mastersthesis" = { "\apyformat {\mastersthesisname" * address empty$ 'skip$ { ", " address * * } if$ "\bibbdsep {} " year * "}" * } { type$ "jurthesis" = { "\apyformat {\jurthesisname" * address empty$ 'skip$ { ", " address * * } if$ "\bibbdsep {} " year * "}" * } { "\apyformat {\phdthesisname" * address empty$ 'skip$ { ", " address * * } if$ "\bibbdsep {} " year * "}" * } if$ } if$ } { type$ "mastersthesis" = { "\mastersthesisname, \apyformat {" school * address empty$ 'skip$ { ", " address * * } if$ "\bibbdsep {} " year * * "}" * } { type$ "jurthesis" = { "\jurthesisname, \apyformat {" school * address empty$ 'skip$ { ", " address * * } if$ "\bibbdsep {} " year * * "}" * } { "\phdthesisname, \apyformat {" school * address empty$ 'skip$ { ", " address * * } if$ "\bibbdsep {} " year * * "}" * } if$ } if$ } if$ } { school empty$ { "No university in " cite$ * warning$ type address empty$ 'skip$ { " \apyformat {" address * } if$ "\bibbdsep {} " * * year * "}" * } { type " \apyformat {" * school * address empty$ 'skip$ { ", " address * * } if$ "\bibbdsep {} " year * * "}" * } if$ } if$ } if$ } FUNCTION {set.comma.pages.check} { year empty$ 'skip$ { pages empty$ { url empty$ 'skip$ { ", " * } if$ } { ", " * } if$ } if$ } FUNCTION {set.period.dash} { output.state before.all = 'skip$ { period.dash 'output.state := } if$ } FUNCTION {set.period.dash.check} { empty$ 'skip$ 'set.period.dash if$ } FUNCTION {new.sentence} { output.state before.all = 'skip$ { after.sentence 'output.state := } if$ } FUNCTION {part.of.sentence} { output.state before.all = 'skip$ { mid.sentence 'output.state := } if$ } FUNCTION {new.sentence.checka} { empty$ 'skip$ 'new.sentence if$ } FUNCTION {field.or.null} { duplicate$ empty$ { pop$ "" } 'skip$ if$ } FUNCTION {get.final.nonrightbrace.char} { { duplicate$ #-1 #1 substring$ duplicate$ "}" = } { pop$ #-2 global.max$ substring$ } while$ swap$ pop$ } FUNCTION {check.punct.instead.of.add.period} { duplicate$ get.final.nonrightbrace.char duplicate$ "." = swap$ duplicate$ "!" = swap$ "?" = or or { "} " * } { "}\bibatsep\ " * } if$ } FUNCTION {check.punct.instead.of.add.period.art} { duplicate$ get.final.nonrightbrace.char duplicate$ "." = swap$ duplicate$ "!" = swap$ "?" = or or { "} " * } { pages empty$ note empty$ url empty$ and and { "} " * } { volume empty$ { pages empty$ { "}\ajtsep\ " * } { crossref missing$ { month empty$ { "}\ajtsep\ " * } { "}\ajtsep " * } if$ } { "}\ajtsep " * } if$ } if$ } { "}\ajtsep\ " * } if$ } if$ } if$ } FUNCTION {emphasize} { duplicate$ empty$ { pop$ "" } { "\bibtfont {" swap$ check.punct.instead.of.add.period * } if$ } FUNCTION {journaltitlemarkup} { duplicate$ empty$ { pop$ "" } { "\bibJTsep \bibjtfont {" swap$ check.punct.instead.of.add.period.art * } if$ } FUNCTION {incollbooktitlemarkup} { duplicate$ empty$ { pop$ "" } { "\bibbtfont {" swap$ check.punct.instead.of.add.period * } if$ } INTEGERS { nameptr namesleft numnames } FUNCTION { lastnamemarkup } { duplicate$ empty$ { pop$ "" } { "\bibnf {" swap$ * "}" * } if$ } FUNCTION { editorlastnamemarkup } { duplicate$ empty$ { pop$ "" } { author empty$ { "\biblenf {" swap$ * "}" * } % lonely editor(s)! { "\bibenf {" swap$ * "}" * } if$ } if$ } FUNCTION { othermarkup } { duplicate$ empty$ { pop$ " {}" } { " {" swap$ * "}" * } if$ } FUNCTION {article.in.journal} { duplicate$ empty$ { pop$ "" } { author missing$ { title missing$ 'skip$ { journaltitlemarkup "" swap$ * } if$ } { journaltitlemarkup "" swap$ * } if$ } if$ } FUNCTION {format.names} % NEW v0.5 { 's := #1 'nameptr := s num.names$ 'numnames := numnames 'namesleft := { namesleft #0 > } { s nameptr "{ll}" format.name$ 't := t lastnamemarkup 't := s nameptr "{ff}" format.name$ othermarkup 'u := s nameptr "{f.}" format.name$ othermarkup 'v := s nameptr "{vv}" format.name$ othermarkup 'w := s nameptr "{jj}" format.name$ othermarkup 'x := t u * v * w * x * 't := nameptr #1 > { namesleft #1 > { numnames #3 > { "" * } { numnames #3 < { "\Bibbtasep " * t * } % between (exactly) two authors { "\Bibbfsasep " * t * } % between first and second author (if more than two) if$ } if$ } { t "\bibnf {others} {} {} {} {}" = t "\bibnf {others} {} {} {} {} \edfont {\editorsname}" = or numnames #3 > or { "\bibIMfont {\Bibetal}" * } { numnames #3 < { "\Bibbtasep " * t * } % between (exactly) two authors { "\Bibbstasep " * t * } % between second and third author if$ } if$ } if$ } 't if$ nameptr #1 + 'nameptr := namesleft #1 - 'namesleft := } while$ } FUNCTION {format.editor.names} % NEW v0.5 { 's := #1 'nameptr := s num.names$ 'numnames := numnames 'namesleft := { namesleft #0 > } { s nameptr "{ll}" format.name$ 't := t editorlastnamemarkup 't := s nameptr "{ff}" format.name$ othermarkup 'u := s nameptr "{f.}" format.name$ othermarkup 'v := s nameptr "{vv}" format.name$ othermarkup 'w := s nameptr "{jj}" format.name$ othermarkup 'x := t u * v * w * x * 't := nameptr #1 > { namesleft #1 > { numnames #3 > { "" * } { numnames #3 < { "\Bibbtesep " * t * } % between (exactly) two editors { "\Bibbfsesep " * t * } % between first and second editor (if more than two) if$ } if$ } { t "\bibenf {others} {} {} {} {}" = t "\biblenf {others} {} {} {} {}" = or t "\bibenf {others} {} {} {} {} \edfont {\editorsname}" = or t "\biblenf {others} {} {} {} {} \edfont {\editorsname}" = or numnames #3 > or { "\bibIMfont {\Bibetal}" * } { numnames #3 < { "\Bibbtesep " * t * } % between (exactly) two editors { "\Bibbstesep " * t * } % between second and third editor if$ } if$ } if$ } 't if$ nameptr #1 + 'nameptr := namesleft #1 - 'namesleft := } while$ } FUNCTION {format.name.sig} { 's := #1 'nameptr := s num.names$ 'numnames := numnames 'namesleft := { namesleft #0 > } { s nameptr "{ff}{ vv}{ ll}{ jj}" format.name$ 't := nameptr #1 > { namesleft #1 > { "" * t * } { t "others" = { " et al." * } { "" * t * } if$ } if$ } 't if$ nameptr #1 + 'nameptr := namesleft #1 - 'namesleft := } while$ } FUNCTION {indexmarkup} { duplicate$ empty$ { pop$ "{}" } { "{" swap$ * "}" * } if$ } FUNCTION {format.names.for.index} { 's := #1 'nameptr := s num.names$ 'numnames := numnames 'namesleft := { namesleft #0 > } { s nameptr "{ll}" format.name$ 't := t indexmarkup 't := s nameptr "{ff}" format.name$ indexmarkup 'u := s nameptr "{f.}" format.name$ indexmarkup 'v := s nameptr "{vv}" format.name$ indexmarkup 'w := s nameptr "{jj}" format.name$ indexmarkup 'x := t u * v * w * x * 't := t "{others}{}{}{}{}" = 'skip$ { nameptr #1 > { namesleft #1 > { "; " * t * } { t "others" = 'skip$ { "; " * t * } if$ } if$ } 't if$ } if$ nameptr #1 + 'nameptr := namesleft #1 - 'namesleft := } while$ } FUNCTION {format.authors} { author empty$ { "" } { author format.names } if$ } FUNCTION {format.founders} { founder empty$ 'skip$ { author empty$ 'skip$ { " in: " * } if$ founder format.names "\foundername" * * editor empty$ 'skip$ { author empty$ { "\afterfoundersep {}" * } 'skip$ if$ } if$ } if$ } FUNCTION {format.editors} { editor empty$ { "" } { author empty$ { editor format.editor.names editortype empty$ { editor num.names$ #1 > { "\fsted {\editorsname}" * } { "\fsted {\editorname}" * } if$ } { "\fsted {(" editortype * ")}" * * } if$ } { founder empty$ { "\bibfnfont {;} " * } { type$ "commented" = { "\afterfoundersep {}" * } { "\bibfnfont {;} " * } if$ } if$ editor format.editor.names * editortype empty$ { editor num.names$ #1 > { " \edfont {\editorsname}" * } { " \edfont {\editorname}" * } if$ } { " \edfont {(" editortype * ")}" * * } if$ } if$ } if$ } FUNCTION {format.snd.editors} { editor empty$ { "" * } { author empty$ { editortype empty$ { editor num.names$ #1 > { "\snded {\sndeditorsname}" * } { "\snded {\sndeditorname}" * } if$ } { "\snded {(" editortype * ")}" * * } if$ } 'skip$ if$ } if$ } FUNCTION { format.howcited } { "} {\bibhowcited}" format.endnote * } FUNCTION {fin.entry.endnote} { " \jbdoitem {" * author empty$ 'skip$ { author format.names.for.index * } if$ "} {" editor empty$ 'skip$ { editor format.names.for.index * } if$ "} {" * organization empty$ 'skip$ { "{" organization * "}{}{}{}{}" * * } if$ "}" * * write$ annote missing$ { " \bibAnnoteFile {" cite$ * "}" * write$ newline$ } { " \bibAnnote {" annote * "}" * write$ newline$ } if$ } FUNCTION {count.authors.or.editors} { 's := #1 'nameptr := s num.names$ 'numnames := numnames 'namesleft := { namesleft #0 > } { "" 't := nameptr #1 > { namesleft #1 > { "" * } { "s" * } % more than one author/editor, append `s' if$ } 't if$ nameptr #1 + 'nameptr := namesleft #1 - 'namesleft := } while$ } FUNCTION { set.after.author.sep } { author missing$ { editor missing$ { organization missing$ { archive missing$ { "} {empty} {} {" } { "} {" archive format.name.sig * "} {} {" * } if$ } { "} {" organization "} {org} {" * * } if$ } { "} {" editor format.name.sig * "} {ed" editor count.authors.or.editors "} {" * * * } if$ } { "} {" author format.name.sig * "} {au" author count.authors.or.editors "} {" * * * } if$ author empty$ { format.snd.editors } 'skip$ if$ "" * } FUNCTION {format.names.info} { 's := #1 'nameptr := s num.names$ 'numnames := numnames 'namesleft := { namesleft #0 > } { s nameptr "{ff }{vv }{ll}" format.name$ 't := nameptr #1 > { namesleft #1 > { " " * t * } { t "others" = { " et al." * } { " " * t * } if$ } if$ } 't if$ nameptr #1 + 'nameptr := namesleft #1 - 'namesleft := } while$ } FUNCTION { format.howcited.comment } { edition empty$ { "} {\bibcommenthowcited}" format.endnote * } { "} {\bibcommenthowcited}" format.endnote * * author empty$ editor empty$ not and { " \jbauthorinfo {" editor format.names.info " " title * * * "}{" cite$ "}" * * * } { author empty$ shortauthor empty$ not and { " \jbauthorinfo {" shortauthor format.names.info " " title * * * "}{" cite$ "}" * * * } { " \jbauthorinfo {" author format.names.info " " title * * * "}{" cite$ "}" * * * } if$ } if$ } if$ } FUNCTION { format.howcited.artperiod } { "} {\bibartperiodhowcited}" format.endnote * } FUNCTION {format.proceed.organization} { organization empty$ { "" } { organization " \organizationname {}" * } if$ } FUNCTION {format.titleaddon} { title empty$ { "" } { titleaddon empty$ { "" } { titleaddon "\bibatsep\ " * } if$ } if$ } FUNCTION {format.title} { title empty$ { "" } { "\bibtfont {" title check.punct.instead.of.add.period * format.titleaddon * } if$ } FUNCTION {format.artperiodincoll.title} { title empty$ { "" } { "\bibapifont {" title check.punct.instead.of.add.period * format.titleaddon * } if$ } FUNCTION {format.volumetitle} { volumetitle empty$ { "" } { volume empty$ { "There's a volumetitle but no volume in " cite$ * warning$ volumetitle ", " * } { volumetitle ", " * } if$ } if$ } FUNCTION {add.extra.label} { extra.label "" = 'skip$ { "\bibel {" extra.label * "}" * * } if$ } FUNCTION {format.date} { year empty$ { month empty$ { "" } { "There's a month but no year in " cite$ * warning$ month } if$ } { month empty$ { edition empty$ 'skip$ { "\jbssedbd {" convert.edition.superscript extract.num * "}" * * } if$ year add.extra.label } { month " " * edition empty$ 'skip$ { "\jbssedbd {" convert.edition.superscript extract.num * "}" * * } if$ year * add.extra.label } if$ } if$ } FUNCTION {format.update} { updated missing$ not { "\updatesep {} \updatename {} " * updated * } 'skip$ if$ } FUNCTION {oaddress.opublisher.oyear.format} { type$ "book" = type$ "inbook" = type$ "incollection" = or or { oyear empty$ { opublisher empty$ { oaddress empty$ 'skip$ { oaddress "\osep {} " * * } if$ } { oaddress empty$ { opublisher "\osep {} " * * } { oaddress "\bpubaddr {} " * opublisher "\osep {} " * * * } if$ } if$ } { year empty$ { "oyear without year in " cite$ * warning$ } 'skip$ if$ opublisher empty$ { oaddress empty$ { oyear * "\osep {} \reprintname {}, " * } { oaddress "\bibbdsep {} " * oyear "\osep {} " * * * } if$ } { oaddress empty$ { opublisher * "\bibbdsep {} " * oyear "\osep {} " * * } { oaddress "\bpubaddr {} " * opublisher "\bibbdsep {} " * * oyear "\osep {} " * * * } if$ } if$ } if$ } 'skip$ if$ } FUNCTION {make.translators} { before.all 'output.state := translator empty$ { flanguage empty$ { "" } { "\translator {}{" flanguage "l" change.case$ * "}" * type$ "incollection" = not type$ "article" = not and { "{1} " * } { type$ "incollection" = { booktitle empty$ { "{} " * } { "{1} " * } if$ } { type$ "article" = { "{1}" * } { series empty$ { "{} " * } { "{1} " * } if$ } if$ } if$ } if$ } if$ } { "\translator {" translator * "}" * flanguage empty$ { "{}" * } { "{" * flanguage "l" change.case$ * "}" * } if$ type$ "incollection" = not type$ "article" = not and { "{1} " * } { type$ "incollection" = { booktitle empty$ { "{} " * } { "{1} " * } if$ } { type$ "article" = { "{1} " * } { series empty$ { "{} " * } { "{1} " * } if$ } if$ } if$ } if$ } if$ before.all 'output.state := } FUNCTION {checked.inst} { institution empty$ { " \apyformat {" * oaddress.opublisher.oyear.format } { address empty$ not { " \apyformat {" * } 'skip$ if$ } if$ } FUNCTION {format.address.publisher.year} { publisher empty$ { address empty$ { year empty$ { "Neither address nor year in " cite$ * warning$ "" } { "No address in " cite$ * warning$ institution empty$ { " \apyformat {" oaddress.opublisher.oyear.format format.date * "}" * } { " \apyformat {" institution * "\bibbdsep {} " * format.date "}" * * } if$ } if$ } { year empty$ { checked.inst address "}" * } { checked.inst address "\bibbdsep {} " format.date * "}" * * } if$ } if$ } { address empty$ { year empty$ { "There's only a publisher (no address, no year) in " cite$ * warning$ publisher } { checked.inst publisher "\bibbdsep {} " * format.date "}" * * } if$ } { year empty$ { checked.inst address * "\bpubaddr {} " publisher "}" * * }% { checked.inst address * "\bpubaddr {} " publisher "\bibbdsep {} " * format.date "}" * * * } if$ } if$ } if$ } FUNCTION {format.howpublished.address.year} { howpublished empty$ { address empty$ { year empty$ { "Neither address nor year in " cite$ * warning$ "" } { "No address in " cite$ * warning$ format.date } if$ } { " \apyformat {" oaddress.opublisher.oyear.format address * "\bibbdsep {} " * format.date "}" * * } if$ } { address empty$ { year empty$ { "There's only a howpublished (no address, no year) in " cite$ * warning$ howpublished } { " \apyformat {" oaddress.opublisher.oyear.format howpublished * "\bibbdsep {} " * format.date "}" * * } if$ } { year empty$ { " \apyformat {" oaddress.opublisher.oyear.format address * "\bpubaddr {} " * howpublished "}" * * } { " \apyformat {" oaddress.opublisher.oyear.format address * "\bpubaddr {} " * howpublished * "\bibbdsep {} " * format.date "}" * * } if$ } if$ } if$ } FUNCTION {tie.or.space.connect} { duplicate$ text.length$ #4 < { "~" } { " " } if$ swap$ * * } FUNCTION {bibvol.tie.or.space.connect} { duplicate$ text.length$ #4 < { "~" } { "{} " } if$ swap$ * * } FUNCTION {format.btitle}{ title emphasize format.titleaddon * } FUNCTION {format.btitle.vol} { number empty$ { series empty$ { volume empty$ { title emphasize format.titleaddon * } { title emphasize format.titleaddon * " \volumeformat {" volume * "} " * * } if$ } { volume empty$ { title emphasize format.titleaddon * } { title emphasize format.titleaddon * "\volumeformat {" volume * "} " * * series "\bibatsep\ " * * } if$ } if$ } { title emphasize format.titleaddon * } if$ } FUNCTION {format.btitle.vol.inbook} { number empty$ { series empty$ { volume empty$ { "\bibapifont {" title check.punct.instead.of.add.period * format.titleaddon * } { "\bibapifont {" title check.punct.instead.of.add.period * format.titleaddon * " \volumeformat {" volume * "} " * * } if$ } { volume empty$ { "\bibapifont {" title check.punct.instead.of.add.period * format.titleaddon * } { series emphasize "\volumeformat {" volume * "} " * * "\bibapifont {" title check.punct.instead.of.add.period * format.titleaddon * * } if$ } if$ } { "\bibapifont {" title check.punct.instead.of.add.period * format.titleaddon * } if$ } FUNCTION {format.url} { url empty$ { "" } { author empty$ title empty$ and 'skip$ { " " * } if$ urldate empty$ {"\jburluse {" cite$ * "}" * } {"\jburluse {" cite$ * "}\bibbudcsep {}\urldatecomment " * urldate * } if$ } if$ } FUNCTION {format.naked.url} { url empty$ { "" } { urldate empty$ { title empty$ 'skip$ { title emphasize * } if$ "\jburluse {" cite$ * "}" * } { title empty$ 'skip$ { title emphasize * } if$ "\jburluse {" cite$ * "}\bibbudcsep {}\urldatecomment " * urldate * } if$ } if$ } FUNCTION {format.series.number} { volume empty$ { number empty$ { series empty$ { "" } { " \numberandseries {}{" series * "}" * } if$ } { series empty$ { " \numberandseries {" number * "}{}" * "There's a number but no series in " cite$ * warning$ } { " \numberandseries {" number * "}{" * series "}" * * } if$ } if$ } { series empty$ { "" } { type$ "proceedings" = { " \numberandseries {}{" series * "}" * } % { " (" series * ")" * } { "" } if$ } if$ } if$ } FUNCTION {first.ed} { "\firstedname" } FUNCTION {second.ed}{ "\secondedname" } FUNCTION {third.ed} { "\thirdedname" } FUNCTION {fourth.ed}{ "\fourthedname" } FUNCTION {fifth.ed} { "\fifthedname" } FUNCTION {th.ed} { "\thedname" } FUNCTION {convert.edition} { edition extract.num "l" change.case$ 's := s "first" = s "1" = or { first.ed 't := } { s "second" = s "2" = or { second.ed 't := } { s "third" = s "3" = or { third.ed 't := } { s "fourth" = s "4" = or { fourth.ed 't := } { s "fifth" = s "5" = or { fifth.ed 't := } { s #1 #1 substring$ is.num { s th.ed * 't := } { edition 't := } if$ } if$ } if$ } if$ } if$ } if$ t } FUNCTION {format.edition} { edition empty$ { "" } { "\jbedition {" * convert.edition "~\editionname {}\jbaensep} " * }% dot or not ??????? if$ } FUNCTION { format.isbn.issn } { isbn empty$ { issn empty$ { "" } { "\jbissn {" issn n.dashify * "}" * } if$ } { "\jbisbn {" isbn n.dashify * "}" * } if$ } INTEGERS { multiresult } FUNCTION {multi.page.check} { 't := #0 'multiresult := { multiresult not t empty$ not and } { t #1 #1 substring$ duplicate$ "-" = swap$ duplicate$ "," = swap$ "+" = or or { #1 'multiresult := } { t #2 global.max$ substring$ 't := } if$ } while$ multiresult } FUNCTION {format.pages} { pages empty$ { "" } { " \jbPages{" pages n.dashify * "}" * } if$ } FUNCTION {multi.pagerange.check} { 't := #0 'multiresult := { multiresult not t empty$ not and } { t #1 #1 substring$ duplicate$ "-" = swap$ duplicate$ "b" = swap$ "/" = or or { #1 'multiresult := } { t #2 global.max$ substring$ 't := } if$ } while$ multiresult } FUNCTION {check.missing.pages} { pages empty$ { "Empty pages in " cite$ * warning$ } { pages multi.pagerange.check { "" * } { type$ "article" = type$ "periodical" = or { "There's only a starting page, no pagerange in " cite$ * warning$ } 'skip$ if$ } if$ } if$ } FUNCTION {format.pages.book} { pages empty$ { "" } { " \jbpages {" pages " \bibtotalpagesname}" *} if$ } FUNCTION {format.totalpages} { totalpages empty$ { "" } { ", " totalpages "~\bibtotalpagesname" * * } if$ } FUNCTION {format.vol.year.num.pages} { volume empty$ { "" } { " \artvolumeformat {" volume * "}" * year empty$ { "There's a volume but no year in " cite$ * warning$ } 'skip$ if$ } if$ month empty$ 'skip$ { "\ " month * * } if$ year empty$ 'skip$ { " \artyearformat {" year * add.extra.label "}" * * } if$ number empty$ 'skip$ { "\artnumberformat {" number * "}" * * } if$ pages empty$ 'skip$ { duplicate$ empty$ { pop$ format.pages } { "" format.pages * * } if$ } if$ } FUNCTION {format.vol.bracedyear.num.pages} { volume empty$ { "" } { " \pervolumeformat {" volume * "}" * year empty$ { "There's a volume but no year in " cite$ * warning$ } 'skip$ if$ } if$ year empty$ 'skip$ { " \peryearformat {" year * add.extra.label "}" * * } if$ month empty$ 'skip$ { ", " month * * } if$ number empty$ 'skip$ { ", \pernumberformat {" number * "}" * * } if$ pages empty$ 'skip$ { duplicate$ empty$ { pop$ format.pages } { "" format.pages * * } if$ } if$ } FUNCTION {format.chapter.pages} { chapter empty$ 'format.pages { type empty$ { "\unskip.\,-- \bibchapterlongname" } { "\unskip.\,-- " type * } if$ chapter tie.or.space.connect pages empty$ 'skip$ { format.pages * } if$ } if$ } FUNCTION {format.booktitleaddon} { booktitle empty$ { "" } { booktitleaddon empty$ { "" } { booktitleaddon } if$ } if$ } FUNCTION {format.incoll.editor.booktitle} { booktitle empty$ { "" } { editor empty$ { volume empty$ { "\incolledformat {}{}{" booktitle incollbooktitlemarkup format.booktitleaddon * * "}{}" * booktitleaddon empty$ { "{} " * } { "{1} " * } if$ } { "\incolledformat {}{}{" booktitle incollbooktitlemarkup format.booktitleaddon * * "}{" * volume * "}" * booktitleaddon empty$ { "{} " * } { "{1} " * } if$ } if$ } { volume empty$ { "\incolledformat {" editor empty$ { "" } { editor format.editor.names "}" * * editortype empty$ { editor num.names$ #1 > { "{\edfont {\editorsname}}{" * } { "{\edfont {\editorname}}{" * } if$ } { "{\edfont {(" * editortype * ")}}{" * } if$ } if$ booktitle incollbooktitlemarkup * format.booktitleaddon * "}{}" * booktitleaddon empty$ { "{} " * } { "{1} " * } if$ } { "\incolledformat {" * editor empty$ { "" } { editor format.editor.names "}" * * editortype empty$ { editor num.names$ #1 > { "{\edfont {\editorsname}}{" * } { "{\edfont {\editorname}}{" * } if$ } { "{\edfont {(" * editortype * ")}}{" * } if$ } if$ booktitle incollbooktitlemarkup * format.booktitleaddon * "}{" volume * "}" * booktitleaddon empty$ { "{} " * } { "{1} " * } if$ } if$ } if$ } if$ } FUNCTION {format.tr.number.jur} { type empty$ { number empty$ { " -- \technicalreportname {} " } { "~(" number * ").\,-- \technicalreportname {} " * } if$ } { number empty$ { " -- " type * } { "~(" number * ").\,-- " type * " " * * } if$ } if$ } FUNCTION {format.article.crossref.bracedyear} { key empty$ { journal empty$ { "Need key or journal for " cite$ * " to crossref " * crossref * warning$ "" } { "\bibJTsep\bibjtfont {" journal * check.punct.instead.of.add.period.art * } if$ volume empty$ { "No volume in " cite$ * warning$ } { " \pervolumeformat {" volume * "} " * } if$ year empty$ { "No year in " cite$ * warning$ } { "\peryearformat {" year * add.extra.label "}" * * } if$ pages empty$ 'skip$ { duplicate$ empty$ { pop$ format.pages } { format.pages * } if$ } if$ } { "" key * } if$ "\ \protect\jbcrossrefchecked {" * crossref * "}\unskip" * } FUNCTION {format.article.crossref} { key empty$ { journal empty$ { "Need key or journal for " cite$ * " to crossref " * crossref * warning$ "" } { "\bibJTsep\bibjtfont {" journal * check.punct.instead.of.add.period.art * } if$ } { "" key * } if$ year empty$ 'skip$ { year * } if$ " \protect\jbcrossrefchecked {" crossref * "}" * } FUNCTION {format.book.crossref} { editor empty$ editor field.or.null author field.or.null = or { key empty$ { series empty$ { "Need editor, key, or series for " cite$ * " to crossref " * crossref * warning$ "" * } { "" * } if$ } { key * } if$ } { "" * } if$ volume empty$ { "Empty volume in " cite$ * "'s crossref of " * crossref * warning$ "" " \protect\jbcrossrefchecked {" * crossref * "}\unskip" * } { " \protect\jbcrossrefchecked[" * volume * "]{" * crossref "}\unskip" * } if$ } FUNCTION {format.incoll.inproc.crossref} { " \protect\jbincollcrossref {" * crossref * "}" * editor empty$ { "{}" * } { "{1}" * } if$ format.pages % *<== 0.5f removed too. } FUNCTION { format.editors.organization } { organization empty$ 'skip$ { type$ "misc" = { organization } { author empty$ { editor empty$ { " " organization * " \organizationname {}" * } { "; " organization * " \organizationname {}" * } if$ } { "; " organization * " \organizationname {}" * } if$ } if$ } if$ } FUNCTION {format.address.organization.manual} { author empty$ { organization empty$ { address empty$ 'skip$ { address output part.of.sentence year empty$ not { "\bibbdsep {}" *} 'skip$ if$ } if$ } 'skip$ if$ } { address empty$ { organization empty$ 'skip$ { organization output part.of.sentence year empty$ not { "\bibbdsep {}" *} 'skip$ if$ } if$ } { organization empty$ { address output part.of.sentence } { address "\bpubaddr {} " * organization * output part.of.sentence } if$ year empty$ not { "\bibbdsep {}" *} 'skip$ if$ } if$ } if$ } FUNCTION {article} { output.bibitem format.authors "author" output.check set.after.author.sep output format.artperiodincoll.title "title" output.check crossref missing$ { journal article.in.journal output.nonnull new.sentence format.vol.year.num.pages output } { format.article.crossref output.nonnull } if$ format.url output format.note format.isbn.issn output format.howcited.artperiod output check.missing.pages fin.entry.endnote } FUNCTION {commented} { output.bibitem author empty$ { editor empty$ { format.founders } { format.founders format.editors "editor" output.check } if$ } { editor empty$ { format.authors format.founders output.nonnull } { format.authors format.founders format.editors output.nonnull } if$ } if$ set.after.author.sep output crossref missing$ { format.btitle.vol "title" output.check } { format.btitle "title" output.check } if$ format.volumetitle output format.edition output format.address.publisher.year "publisher" output.check format.update new.sentence crossref missing$ { format.series.number output } { format.book.crossref output.nonnull } if$ format.url output format.pages output format.note format.howcited.comment output fin.entry.endnote } FUNCTION {periodical} { output.bibitem format.authors "author" output.check set.after.author.sep output format.artperiodincoll.title "title" output.check crossref missing$ { journal article.in.journal output.nonnull new.sentence format.vol.bracedyear.num.pages output } { new.sentence format.article.crossref.bracedyear output.nonnull } if$ format.url output format.note format.isbn.issn output format.howcited.artperiod output fin.entry.endnote } FUNCTION {book} { output.bibitem author empty$ { editor empty$ { "" "author and editor" output.check } { format.editors output.nonnull } if$ } { editor empty$ { format.authors output.nonnull } { format.authors "\jbtiafed {" format.editors * "}" * output.nonnull } if$ } if$ set.after.author.sep output crossref missing$ { format.btitle.vol "title" output.check } { format.btitle "title" output.check } if$ author empty$ not editor empty$ not and { "\jbedafti {\edbyname {} " editor * "," * * "} " * } 'skip$ if$ make.translators output format.volumetitle output format.edition output format.address.publisher.year "publisher" output.check new.sentence format.juradiss.book output crossref missing$ { format.series.number output } { format.book.crossref output.nonnull } if$ format.url output format.pages output format.totalpages output format.note format.isbn.issn output format.howcited output fin.entry.endnote } FUNCTION {inbook} { output.bibitem author empty$ { format.editors "author and editor" output.check } { editor empty$ { format.authors output.nonnull } { format.authors format.editors output.nonnull } if$ } if$ set.after.author.sep output crossref missing$ { chapter empty$ { "There's no chapter in " cite$ * warning$ "" * } { type empty$ { "\Bibchaptername{}" } { type } if$ chapter tie.or.space.connect " In " * * } if$ format.btitle.vol.inbook "title" output.check make.translators output format.volumetitle output format.edition output format.address.publisher.year "publisher" output.check new.sentence format.series.number output format.url output format.pages "pages" output.check format.note format.isbn.issn output } { chapter empty$ { "There's no chapter in " cite$ * warning$ "" * format.btitle.vol.inbook "title" output.check } { type empty$ { "\Bibchaptername{}" } { type } if$ chapter tie.or.space.connect "" * * } if$ format.volumetitle output format.book.crossref output.nonnull format.url output format.pages "pages" output.check format.note } if$ part.of.sentence format.howcited output fin.entry.endnote } FUNCTION {incollection} { output.bibitem format.authors "author" output.check set.after.author.sep output format.artperiodincoll.title "title" output.check make.translators output crossref missing$ { format.incoll.editor.booktitle "booktitle" output.check format.volumetitle output format.edition output format.address.publisher.year "publisher" output.check new.sentence format.series.number output format.url output format.isbn.issn output part.of.sentence format.chapter.pages output format.note } { format.volumetitle output format.incoll.inproc.crossref output.nonnull format.url output format.note } if$ format.howcited output check.missing.pages fin.entry.endnote } FUNCTION {inproceedings} { output.bibitem format.authors "author" output.check set.after.author.sep output format.artperiodincoll.title "title" output.check crossref missing$ { format.incoll.editor.booktitle "booktitle" output.check address empty$ { organization new.sentence.checka organization output part.of.sentence format.address.publisher.year output } { format.address.publisher.year "publisher" output.check } if$ new.sentence series empty$ 'skip$ { format.series.number output } if$ format.url output format.note format.isbn.issn output part.of.sentence format.pages output } { format.incoll.inproc.crossref output.nonnull format.url output format.note } if$ format.howcited output fin.entry.endnote } FUNCTION {conference}{inproceedings} FUNCTION {manual} { output.bibitem author empty$ { organization empty$ 'skip$ { "\bibnf{" organization * "} {} {} {} {}" * output.nonnull } if$ } { format.authors output.nonnull } if$ set.after.author.sep output format.btitle "title" output.check format.edition output format.address.organization.manual format.date output pages set.period.dash.check format.pages.book output format.url output format.note format.howcited output fin.entry.endnote } FUNCTION {mastersthesis} { output.bibitem format.authors "author" output.check set.after.author.sep output format.btitle "title" output.check format.thesis output set.comma.pages.check pages new.sentence.checka format.pages output format.url output format.note format.howcited output fin.entry.endnote } FUNCTION {phdthesis} { output.bibitem format.authors "author" output.check set.after.author.sep output format.btitle "title" output.check format.thesis output set.comma.pages.check pages new.sentence.checka format.pages output format.url output format.note format.howcited output fin.entry.endnote } FUNCTION {jurthesis} { output.bibitem format.authors "author" output.check set.after.author.sep output format.btitle "title" output.check format.thesis output set.comma.pages.check pages new.sentence.checka format.pages output format.url output format.note format.howcited output fin.entry.endnote } FUNCTION {booklet} { output.bibitem format.authors "author" output.check set.after.author.sep output format.title "title" output.check format.howpublished.address.year output format.note format.url output format.howcited output fin.entry.endnote } FUNCTION {misc} { output.bibitem format.authors "author" output.check set.after.author.sep output format.title output format.howpublished.address.year output format.note format.url output format.howcited output fin.entry.endnote } FUNCTION {proceedings} { output.bibitem editor empty$ { organization empty$ 'skip$ { "\biblnfont {" organization * " \organizationname}" * output } if$ } { format.editors output.nonnull } if$ set.after.author.sep output format.btitle "title" output.check new.sentence editor empty$ 'skip$ { format.proceed.organization output } if$ new.sentence format.series.number output.nonnull volume empty$ { "" output.nonnull } { "\volumeformat {" volume * "} " * "volume" output.check } if$ format.address.publisher.year "publisher" output.check pages set.period.dash.check format.pages.book output format.url output format.note format.isbn.issn output format.howcited output fin.entry.endnote } FUNCTION {techreport} { output.bibitem author empty$ { format.editors "author and editor" output.check } { editor empty$ { format.authors output.nonnull } { format.authors format.editors output.nonnull } if$ } if$ set.after.author.sep output format.title "title" output.check institution new.sentence.checka format.address.publisher.year output number new.sentence.checka format.tr.number.jur "number" output.check pages set.period.dash.check format.pages.book output format.url output format.note format.isbn.issn output format.howcited output fin.entry.endnote } FUNCTION {www} { output.bibitem format.authors "author" output.check set.after.author.sep output format.naked.url output format.howcited output fin.entry.endnote } FUNCTION {lexicon} { output.bibitem set.after.author.sep output crossref missing$ { format.btitle.vol "title" output.check } { format.btitle "title" output.check } if$ author empty$ { editor empty$ 'skip$ { "\edbyname{} " * editor format.editor.names "," * * } if$ } { "\byname{} " author format.names * "," * * } if$ make.translators output format.volumetitle output format.edition output format.address.publisher.year "publisher" output.check new.sentence format.juradiss.book output crossref missing$ { format.series.number output } { format.book.crossref output.nonnull } if$ format.url output format.pages output format.totalpages output format.note format.isbn.issn output format.howcited output fin.entry.endnote } STRINGS { last.archive last.subarchive } FUNCTION {init.last.archive } { "" 'last.archive := "" 'last.subarchive := } FUNCTION {archival} { output.bibitem archive empty$ { "" 'last.archive := } { archive last.archive = { "} {" archive format.name.sig * "} {} {\jbsamearch{} " * * } { "\bibanfont{" archive * "archive" output.check shortarchive empty$ 'skip$ { " \jbshortarchformat{" shortarchive * "}" * * } if$ "}" * "} {" archive format.name.sig * "} {} {\jbnotsamearch{} " * * } if$ archive 'last.archive := } if$ subarchive empty$ { "" 'last.subarchive := } { subarchive last.subarchive = 'skip$ { subarchive output shortsubarchive empty$ 'skip$ { " \jbshortsubarchformat{" shortsubarchive * "}" * * } if$ "\jbsubarchsep{} " * } if$ subarchive 'last.subarchive := } if$ sig1 empty$ 'skip$ { "\jbarchsig {" * subarchive empty$ 'skip$ { "\jbsamesubarchindent{} " * } if$ sig1 * sig2 empty$ 'skip$ { ". " sig2 * * sig3 empty$ 'skip$ { ". " sig3 * * sig4 empty$ 'skip$ { ". " sig4 * * } if$ } if$ } if$ "} {" * } if$ archname missing$ { "}" * } { archname "}" * output } if$ format.howcited output fin.entry.endnote } FUNCTION {unpublished}{misc} FUNCTION {default.type}{misc} MACRO {jan} {"\janname\ "} MACRO {feb} {"\febname\ "} MACRO {mar} {"\marname\ "} MACRO {apr} {"\aprname\ "} MACRO {may} {"\mayname\ "} MACRO {jun} {"\junname\ "} MACRO {jul} {"\julname\ "} MACRO {aug} {"\augname\ "} MACRO {sep} {"\sepname\ "} MACRO {oct} {"\octname\ "} MACRO {nov} {"\novname\ "} MACRO {dec} {"\decname\ "} READ FUNCTION {sortify}{ purify$ "l" change.case$ } INTEGERS { len } FUNCTION {chop.word} { 's := 'len := s #1 len substring$ = { s len #1 + global.max$ substring$ } 's if$ } FUNCTION {format.lab.names} { 's := % for two: (Jones/de~Bruijn) s #1 "{vv~}{ll}" format.name$ % for three: (Jones/de~Bruijn/Smith) s num.names$ duplicate$ % for more: (Jones et\,al.) #2 < 'pop$ % for just one person { duplicate$ duplicate$ #3 > swap$ s swap$ "{ff }{vv }{ll}{ jj}" format.name$ "others" = or { pop$ "\Bibetal" * } % for 4 or more, or last is `others' { #2 = { "\jbbtasep " * s #2 "{vv~}{ll}" format.name$ * } % for (exactly) two { "\jbbfsasep " * s #2 "{vv~}{ll}" format.name$ * % for three "\jbbstasep " * s #3 "{vv~}{ll}" format.name$ * } if$ } if$ } if$ year missing$ 'skip$ { "\jbdy {" year * "}" * * }% dummy year to prevent from `1993a' and `2001b' for works by the same author if$ } FUNCTION {format.editor.lab.names} { 's := % for two: (Jones/de~Bruijn) s #1 "{vv~}{ll}" format.name$ % for three: (Jones/de~Bruijn/Smith) s num.names$ duplicate$ % for more: (Jones et\,al.) #2 < 'pop$ % for just one person { duplicate$ duplicate$ #3 > swap$ s swap$ "{ff }{vv }{ll}{ jj}" format.name$ "others" = or { pop$ "\Bibetal" * } % for 4 or more, or last is `others' { #2 = { "\jbbtesep " * s #2 "{vv~}{ll}" format.name$ * } % for (exactly) two { "\jbbfsesep " * s #2 "{vv~}{ll}" format.name$ * % for three "\jbbstesep " * s #3 "{vv~}{ll}" format.name$ * } if$ } if$ } if$ year missing$ 'skip$ { "\jbdy {" year * "}" * * }% dummy year to prevent from `1993a' and `2001b' for works by the same author if$ } FUNCTION {author.key.label} { author empty$ { key empty$ { cite$ #1 #3 substring$ } 'key if$ } { author format.lab.names } if$ } FUNCTION {author.editor.key.label} { author empty$ { editor empty$ { key empty$ { cite$ #1 #3 substring$ } 'key if$ } { editor format.editor.lab.names } if$ } { author format.lab.names } if$ } FUNCTION {editor.key.label} { editor empty$ { key empty$ { cite$ #1 #3 substring$ } 'key if$ } { editor format.editor.lab.names } if$ } FUNCTION {calc.label} { type$ "book" = type$ "inbook" = or type$ "incollection" = or type$ "commented" = or type$ "lexicon" = or 'author.editor.key.label { type$ "proceedings" = 'editor.key.label 'author.key.label if$ } if$ 'label := } FUNCTION {calc.dummy.label} { type$ "book" = type$ "inbook" = or type$ "incollection" = or type$ "commented" = or 'author.editor.key.label { type$ "proceedings" = 'editor.key.label 'author.key.label if$ } if$ 'dummy.label := } FUNCTION {sort.format.names} { 's := #1 'nameptr := "" s num.names$ 'numnames := numnames 'namesleft := { namesleft #0 > } { nameptr #1 > { " " * } 'skip$ if$ s nameptr "{ll{ }}{ ff{ }}{ vv{ }}{ jj{ }}" format.name$ 't := nameptr numnames = t "\bibnf {others} {} {} {} {}" = and { "\Bibetal" * } { t sortify * } if$ nameptr #1 + 'nameptr := namesleft #1 - 'namesleft := } while$ } FUNCTION {sort.format.title} { 't := "A " #2 "An " #3 "Der " #4 "Die " #4 "Das " #4 "Ein " #4 "Eine " #5 "The " #4 t chop.word chop.word chop.word chop.word chop.word chop.word chop.word chop.word sortify #1 global.max$ substring$ } FUNCTION {author.sort} { author empty$ { key empty$ { %% "to sort, need author or key in " cite$ * warning$ "" } { key sortify } if$ } { author sort.format.names } if$ } FUNCTION {author.editor.sort} { author empty$ { editor empty$ { key empty$ { %% "to sort, need author, editor, or key in " cite$ * warning$ "" } { key sortify } if$ } { editor sort.format.names } if$ } { author sort.format.names } if$ } FUNCTION {editor.sort} { editor empty$ { key empty$ { "to sort, need editor or key in " cite$ * warning$ "" } { key sortify } if$ } { editor sort.format.names } if$ } FUNCTION {archival.sort} { archive empty$ { shortarchive empty$ { "to sort, need archive or shortarchive in " cite$ * warning$ "" } { shortarchive sortify } if$ } { archive sortify } if$ } FUNCTION {presort} { calc.label calc.dummy.label dummy.label sortify " " * sortkey empty$ { type$ "book" = type$ "incollection" = or type$ "inbook" = or type$ "commented" = or 'author.editor.sort { type$ "proceedings" = 'editor.sort { type$ "archival" = 'archival.sort 'author.sort if$ } if$ } if$ } { sortkey sort.format.names } if$ type$ "archival" = not { " " * year field.or.null sortify * " " * title field.or.null sort.format.title * } { " " * subarchive field.or.null sortify * " " * sig1 field.or.null sortify * " " * sig2 field.or.null sortify * " " * sig3 field.or.null sortify * " " * sig4 field.or.null sortify * } if$ #1 entry.max$ substring$ 'sort.label := sort.label * #1 entry.max$ substring$ 'sort.key$ := } ITERATE {presort} %% FUNCTION {before.sort} { "BEFORE SORT:" top$ } %% EXECUTE {before.sort} %% FUNCTION {print.sort.keys} {sort.key$ top$} %% ITERATE {print.sort.keys} SORT %% FUNCTION {after.sort} {"AFTER SORT:" top$} %% EXECUTE {after.sort} %% ITERATE {print.sort.keys} INTEGERS { last.extra.num number.label extra.extra.num } FUNCTION {make.extra.label} { last.extra.num #122 < { last.extra.num #1 + } { extra.extra.num #0 = { "a" chr.to.int$ } { extra.extra.num #1 + } if$ 'extra.extra.num := "a" chr.to.int$ } if$ 'last.extra.num := extra.extra.num #0 = { last.extra.num int.to.chr$ } { extra.extra.num int.to.chr$ 'extra.label := extra.label last.extra.num int.to.chr$ * } if$ } FUNCTION {forward.pass} { w dummy.label = { make.extra.label 'extra.label := } { "a" chr.to.int$ 'last.extra.num := #0 'extra.extra.num := "" 'extra.label := dummy.label 'w := } if$ number.label #1 + 'number.label := } FUNCTION {reverse.pass} { x "b" = { "a" 'extra.label := } 'skip$ if$ extra.label 'x := extra.label duplicate$ empty$ 'skip$ { "" swap$ * } if$ 'extra.label := dummy.label extra.label * 'dummy.label := } ITERATE {forward.pass} REVERSE {reverse.pass} FUNCTION {bib.sort.order} { sort.label 'sort.key$ := } ITERATE {bib.sort.order} SORT FUNCTION {set.current.authors} { author empty$ { editor empty$ { organization empty$ { cite$ 'current-authors := } { organization 'current-authors := } if$ } { editor format.names #1 entry.max$ substring$ 'current-authors := } %% ^^^^^^^^^^^^ NOT format.editor.names, otherwise \jb@@arg is always = 0!!! if$ } { author format.names #1 entry.max$ substring$ 'current-authors := } if$ } STRINGS { previous-authors } FUNCTION {initialize.previous.authors} { "" 'previous-authors := } FUNCTION {mark.repeat.authors} { current-authors previous-authors = { #1 'repeat-authors := } 'skip$ if$ current-authors 'previous-authors := } ITERATE {set.current.authors} EXECUTE {initialize.previous.authors} ITERATE {mark.repeat.authors} EXECUTE {initialize.previous.authors} REVERSE {mark.repeat.authors} FUNCTION {begin.bib} { preamble$ empty$ 'skip$ { preamble$ write$ newline$ } if$ "%" write$ newline$ "% This bibliography was produced by using jurabib.bst" write$ newline$ "%" write$ newline$ "\begin{thebibliography}{}" write$ newline$ } EXECUTE {begin.bib} EXECUTE {init.state.consts} ITERATE {call.type$} FUNCTION {end.bib} { newline$ "\end{thebibliography}" write$ newline$ } EXECUTE {end.bib} %% %% %% End of file `jurabib.bst'. ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5816119 pybtex-0.24.0/tests/data/plain.bst0000644000175000001440000004546500000000000016565 0ustar00agusers00000000000000% BibTeX standard bibliography style `plain' % version 0.99a for BibTeX versions 0.99a or later, LaTeX version 2.09. % Copyright (C) 1985, all rights reserved. % Copying of this file is authorized only if either % (1) you make absolutely no changes to your copy, including name, or % (2) if you do make changes, you name it something other than % btxbst.doc, plain.bst, unsrt.bst, alpha.bst, and abbrv.bst. % This restriction helps ensure that all standard styles are identical. % The file btxbst.doc has the documentation for this style. ENTRY { address author booktitle chapter edition editor howpublished institution journal key month note number organization pages publisher school series title type volume year } {} { label } INTEGERS { output.state before.all mid.sentence after.sentence after.block } FUNCTION {init.state.consts} { #0 'before.all := #1 'mid.sentence := #2 'after.sentence := #3 'after.block := } STRINGS { s t } FUNCTION {output.nonnull} { 's := output.state mid.sentence = { ", " * write$ } { output.state after.block = { add.period$ write$ newline$ "\newblock " write$ } { output.state before.all = 'write$ { add.period$ " " * write$ } if$ } if$ mid.sentence 'output.state := } if$ s } FUNCTION {output} { duplicate$ empty$ 'pop$ 'output.nonnull if$ } FUNCTION {output.check} { 't := duplicate$ empty$ { pop$ "empty " t * " in " * cite$ * warning$ } 'output.nonnull if$ } FUNCTION {output.bibitem} { newline$ "\bibitem{" write$ cite$ write$ "}" write$ newline$ "" before.all 'output.state := } FUNCTION {fin.entry} { add.period$ write$ newline$ } FUNCTION {new.block} { output.state before.all = 'skip$ { after.block 'output.state := } if$ } FUNCTION {new.sentence} { output.state after.block = 'skip$ { output.state before.all = 'skip$ { after.sentence 'output.state := } if$ } if$ } FUNCTION {not} { { #0 } { #1 } if$ } FUNCTION {and} { 'skip$ { pop$ #0 } if$ } FUNCTION {or} { { pop$ #1 } 'skip$ if$ } FUNCTION {new.block.checka} { empty$ 'skip$ 'new.block if$ } FUNCTION {new.block.checkb} { empty$ swap$ empty$ and 'skip$ 'new.block if$ } FUNCTION {new.sentence.checka} { empty$ 'skip$ 'new.sentence if$ } FUNCTION {new.sentence.checkb} { empty$ swap$ empty$ and 'skip$ 'new.sentence if$ } FUNCTION {field.or.null} { duplicate$ empty$ { pop$ "" } 'skip$ if$ } FUNCTION {emphasize} { duplicate$ empty$ { pop$ "" } { "{\em " swap$ * "}" * } if$ } INTEGERS { nameptr namesleft numnames } FUNCTION {format.names} { 's := #1 'nameptr := s num.names$ 'numnames := numnames 'namesleft := { namesleft #0 > } { s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't := nameptr #1 > { namesleft #1 > { ", " * t * } { numnames #2 > { "," * } 'skip$ if$ t "others" = { " et~al." * } { " and " * t * } if$ } if$ } 't if$ nameptr #1 + 'nameptr := namesleft #1 - 'namesleft := } while$ } FUNCTION {format.authors} { author empty$ { "" } { author format.names } if$ } FUNCTION {format.editors} { editor empty$ { "" } { editor format.names editor num.names$ #1 > { ", editors" * } { ", editor" * } if$ } if$ } FUNCTION {format.title} { title empty$ { "" } { title "t" change.case$ } if$ } FUNCTION {n.dashify} { 't := "" { t empty$ not } { t #1 #1 substring$ "-" = { t #1 #2 substring$ "--" = not { "--" * t #2 global.max$ substring$ 't := } { { t #1 #1 substring$ "-" = } { "-" * t #2 global.max$ substring$ 't := } while$ } if$ } { t #1 #1 substring$ * t #2 global.max$ substring$ 't := } if$ } while$ } FUNCTION {format.date} { year empty$ { month empty$ { "" } { "there's a month but no year in " cite$ * warning$ month } if$ } { month empty$ 'year { month " " * year * } if$ } if$ } FUNCTION {format.btitle} { title emphasize } FUNCTION {tie.or.space.connect} { duplicate$ text.length$ #3 < { "~" } { " " } if$ swap$ * * } FUNCTION {either.or.check} { empty$ 'pop$ { "can't use both " swap$ * " fields in " * cite$ * warning$ } if$ } FUNCTION {format.bvolume} { volume empty$ { "" } { "volume" volume tie.or.space.connect series empty$ 'skip$ { " of " * series emphasize * } if$ "volume and number" number either.or.check } if$ } FUNCTION {format.number.series} { volume empty$ { number empty$ { series field.or.null } { output.state mid.sentence = { "number" } { "Number" } if$ number tie.or.space.connect series empty$ { "there's a number but no series in " cite$ * warning$ } { " in " * series * } if$ } if$ } { "" } if$ } FUNCTION {format.edition} { edition empty$ { "" } { output.state mid.sentence = { edition "l" change.case$ " edition" * } { edition "t" change.case$ " edition" * } if$ } if$ } INTEGERS { multiresult } FUNCTION {multi.page.check} { 't := #0 'multiresult := { multiresult not t empty$ not and } { t #1 #1 substring$ duplicate$ "-" = swap$ duplicate$ "," = swap$ "+" = or or { #1 'multiresult := } { t #2 global.max$ substring$ 't := } if$ } while$ multiresult } FUNCTION {format.pages} { pages empty$ { "" } { pages multi.page.check { "pages" pages n.dashify tie.or.space.connect } { "page" pages tie.or.space.connect } if$ } if$ } FUNCTION {format.vol.num.pages} { volume field.or.null number empty$ 'skip$ { "(" number * ")" * * volume empty$ { "there's a number but no volume in " cite$ * warning$ } 'skip$ if$ } if$ pages empty$ 'skip$ { duplicate$ empty$ { pop$ format.pages } { ":" * pages n.dashify * } if$ } if$ } FUNCTION {format.chapter.pages} { chapter empty$ 'format.pages { type empty$ { "chapter" } { type "l" change.case$ } if$ chapter tie.or.space.connect pages empty$ 'skip$ { ", " * format.pages * } if$ } if$ } FUNCTION {format.in.ed.booktitle} { booktitle empty$ { "" } { editor empty$ { "In " booktitle emphasize * } { "In " format.editors * ", " * booktitle emphasize * } if$ } if$ } FUNCTION {empty.misc.check} { author empty$ title empty$ howpublished empty$ month empty$ year empty$ note empty$ and and and and and key empty$ not and { "all relevant fields are empty in " cite$ * warning$ } 'skip$ if$ } FUNCTION {format.thesis.type} { type empty$ 'skip$ { pop$ type "t" change.case$ } if$ } FUNCTION {format.tr.number} { type empty$ { "Technical Report" } 'type if$ number empty$ { "t" change.case$ } { number tie.or.space.connect } if$ } FUNCTION {format.article.crossref} { key empty$ { journal empty$ { "need key or journal for " cite$ * " to crossref " * crossref * warning$ "" } { "In {\em " journal * "\/}" * } if$ } { "In " key * } if$ " \cite{" * crossref * "}" * } FUNCTION {format.crossref.editor} { editor #1 "{vv~}{ll}" format.name$ editor num.names$ duplicate$ #2 > { pop$ " et~al." * } { #2 < 'skip$ { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = { " et~al." * } { " and " * editor #2 "{vv~}{ll}" format.name$ * } if$ } if$ } if$ } FUNCTION {format.book.crossref} { volume empty$ { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ "In " } { "Volume" volume tie.or.space.connect " of " * } if$ editor empty$ editor field.or.null author field.or.null = or { key empty$ { series empty$ { "need editor, key, or series for " cite$ * " to crossref " * crossref * warning$ "" * } { "{\em " * series * "\/}" * } if$ } { key * } if$ } { format.crossref.editor * } if$ " \cite{" * crossref * "}" * } FUNCTION {format.incoll.inproc.crossref} { editor empty$ editor field.or.null author field.or.null = or { key empty$ { booktitle empty$ { "need editor, key, or booktitle for " cite$ * " to crossref " * crossref * warning$ "" } { "In {\em " booktitle * "\/}" * } if$ } { "In " key * } if$ } { "In " format.crossref.editor * } if$ " \cite{" * crossref * "}" * } FUNCTION {article} { output.bibitem format.authors "author" output.check new.block format.title "title" output.check new.block crossref missing$ { journal emphasize "journal" output.check format.vol.num.pages output format.date "year" output.check } { format.article.crossref output.nonnull format.pages output } if$ new.block note output fin.entry } FUNCTION {book} { output.bibitem author empty$ { format.editors "author and editor" output.check } { format.authors output.nonnull crossref missing$ { "author and editor" editor either.or.check } 'skip$ if$ } if$ new.block format.btitle "title" output.check crossref missing$ { format.bvolume output new.block format.number.series output new.sentence publisher "publisher" output.check address output } { new.block format.book.crossref output.nonnull } if$ format.edition output format.date "year" output.check new.block note output fin.entry } FUNCTION {booklet} { output.bibitem format.authors output new.block format.title "title" output.check howpublished address new.block.checkb howpublished output address output format.date output new.block note output fin.entry } FUNCTION {inbook} { output.bibitem author empty$ { format.editors "author and editor" output.check } { format.authors output.nonnull crossref missing$ { "author and editor" editor either.or.check } 'skip$ if$ } if$ new.block format.btitle "title" output.check crossref missing$ { format.bvolume output format.chapter.pages "chapter and pages" output.check new.block format.number.series output new.sentence publisher "publisher" output.check address output } { format.chapter.pages "chapter and pages" output.check new.block format.book.crossref output.nonnull } if$ format.edition output format.date "year" output.check new.block note output fin.entry } FUNCTION {incollection} { output.bibitem format.authors "author" output.check new.block format.title "title" output.check new.block crossref missing$ { format.in.ed.booktitle "booktitle" output.check format.bvolume output format.number.series output format.chapter.pages output new.sentence publisher "publisher" output.check address output format.edition output format.date "year" output.check } { format.incoll.inproc.crossref output.nonnull format.chapter.pages output } if$ new.block note output fin.entry } FUNCTION {inproceedings} { output.bibitem format.authors "author" output.check new.block format.title "title" output.check new.block crossref missing$ { format.in.ed.booktitle "booktitle" output.check format.bvolume output format.number.series output format.pages output address empty$ { organization publisher new.sentence.checkb organization output publisher output format.date "year" output.check } { address output.nonnull format.date "year" output.check new.sentence organization output publisher output } if$ } { format.incoll.inproc.crossref output.nonnull format.pages output } if$ new.block note output fin.entry } FUNCTION {conference} { inproceedings } FUNCTION {manual} { output.bibitem author empty$ { organization empty$ 'skip$ { organization output.nonnull address output } if$ } { format.authors output.nonnull } if$ new.block format.btitle "title" output.check author empty$ { organization empty$ { address new.block.checka address output } 'skip$ if$ } { organization address new.block.checkb organization output address output } if$ format.edition output format.date output new.block note output fin.entry } FUNCTION {mastersthesis} { output.bibitem format.authors "author" output.check new.block format.title "title" output.check new.block "Master's thesis" format.thesis.type output.nonnull school "school" output.check address output format.date "year" output.check new.block note output fin.entry } FUNCTION {misc} { output.bibitem format.authors output title howpublished new.block.checkb format.title output howpublished new.block.checka howpublished output format.date output new.block note output fin.entry empty.misc.check } FUNCTION {phdthesis} { output.bibitem format.authors "author" output.check new.block format.btitle "title" output.check new.block "PhD thesis" format.thesis.type output.nonnull school "school" output.check address output format.date "year" output.check new.block note output fin.entry } FUNCTION {proceedings} { output.bibitem editor empty$ { organization output } { format.editors output.nonnull } if$ new.block format.btitle "title" output.check format.bvolume output format.number.series output address empty$ { editor empty$ { publisher new.sentence.checka } { organization publisher new.sentence.checkb organization output } if$ publisher output format.date "year" output.check } { address output.nonnull format.date "year" output.check new.sentence editor empty$ 'skip$ { organization output } if$ publisher output } if$ new.block note output fin.entry } FUNCTION {techreport} { output.bibitem format.authors "author" output.check new.block format.title "title" output.check new.block format.tr.number output.nonnull institution "institution" output.check address output format.date "year" output.check new.block note output fin.entry } FUNCTION {unpublished} { output.bibitem format.authors "author" output.check new.block format.title "title" output.check new.block note "note" output.check format.date output fin.entry } FUNCTION {default.type} { misc } MACRO {jan} {"January"} MACRO {feb} {"February"} MACRO {mar} {"March"} MACRO {apr} {"April"} MACRO {may} {"May"} MACRO {jun} {"June"} MACRO {jul} {"July"} MACRO {aug} {"August"} MACRO {sep} {"September"} MACRO {oct} {"October"} MACRO {nov} {"November"} MACRO {dec} {"December"} MACRO {acmcs} {"ACM Computing Surveys"} MACRO {acta} {"Acta Informatica"} MACRO {cacm} {"Communications of the ACM"} MACRO {ibmjrd} {"IBM Journal of Research and Development"} MACRO {ibmsj} {"IBM Systems Journal"} MACRO {ieeese} {"IEEE Transactions on Software Engineering"} MACRO {ieeetc} {"IEEE Transactions on Computers"} MACRO {ieeetcad} {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} MACRO {ipl} {"Information Processing Letters"} MACRO {jacm} {"Journal of the ACM"} MACRO {jcss} {"Journal of Computer and System Sciences"} MACRO {scp} {"Science of Computer Programming"} MACRO {sicomp} {"SIAM Journal on Computing"} MACRO {tocs} {"ACM Transactions on Computer Systems"} MACRO {tods} {"ACM Transactions on Database Systems"} MACRO {tog} {"ACM Transactions on Graphics"} MACRO {toms} {"ACM Transactions on Mathematical Software"} MACRO {toois} {"ACM Transactions on Office Information Systems"} MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} MACRO {tcs} {"Theoretical Computer Science"} READ FUNCTION {sortify} { purify$ "l" change.case$ } INTEGERS { len } FUNCTION {chop.word} { 's := 'len := s #1 len substring$ = { s len #1 + global.max$ substring$ } 's if$ } FUNCTION {sort.format.names} { 's := #1 'nameptr := "" s num.names$ 'numnames := numnames 'namesleft := { namesleft #0 > } { nameptr #1 > { " " * } 'skip$ if$ s nameptr "{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}" format.name$ 't := nameptr numnames = t "others" = and { "et al" * } { t sortify * } if$ nameptr #1 + 'nameptr := namesleft #1 - 'namesleft := } while$ } FUNCTION {sort.format.title} { 't := "A " #2 "An " #3 "The " #4 t chop.word chop.word chop.word sortify #1 global.max$ substring$ } FUNCTION {author.sort} { author empty$ { key empty$ { "to sort, need author or key in " cite$ * warning$ "" } { key sortify } if$ } { author sort.format.names } if$ } FUNCTION {author.editor.sort} { author empty$ { editor empty$ { key empty$ { "to sort, need author, editor, or key in " cite$ * warning$ "" } { key sortify } if$ } { editor sort.format.names } if$ } { author sort.format.names } if$ } FUNCTION {author.organization.sort} { author empty$ { organization empty$ { key empty$ { "to sort, need author, organization, or key in " cite$ * warning$ "" } { key sortify } if$ } { "The " #4 organization chop.word sortify } if$ } { author sort.format.names } if$ } FUNCTION {editor.organization.sort} { editor empty$ { organization empty$ { key empty$ { "to sort, need editor, organization, or key in " cite$ * warning$ "" } { key sortify } if$ } { "The " #4 organization chop.word sortify } if$ } { editor sort.format.names } if$ } FUNCTION {presort} { type$ "book" = type$ "inbook" = or 'author.editor.sort { type$ "proceedings" = 'editor.organization.sort { type$ "manual" = 'author.organization.sort 'author.sort if$ } if$ } if$ " " * year field.or.null sortify * " " * title field.or.null sort.format.title * #1 entry.max$ substring$ 'sort.key$ := } ITERATE {presort} SORT STRINGS { longest.label } INTEGERS { number.label longest.label.width } FUNCTION {initialize.longest.label} { "" 'longest.label := #1 'number.label := #0 'longest.label.width := } FUNCTION {longest.label.pass} { number.label int.to.str$ 'label := number.label #1 + 'number.label := label width$ longest.label.width > { label 'longest.label := label width$ 'longest.label.width := } 'skip$ if$ } EXECUTE {initialize.longest.label} ITERATE {longest.label.pass} FUNCTION {begin.bib} { preamble$ empty$ 'skip$ { preamble$ write$ newline$ } if$ "\begin{thebibliography}{" longest.label * "}" * write$ newline$ } EXECUTE {begin.bib} EXECUTE {init.state.consts} ITERATE {call.type$} FUNCTION {end.bib} { newline$ "\end{thebibliography}" write$ newline$ } EXECUTE {end.bib} ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5786119 pybtex-0.24.0/tests/data/unsrt.bst0000644000175000001440000004315600000000000016630 0ustar00agusers00000000000000% BibTeX standard bibliography style `unsrt' % Version 0.99b (8-Dec-10 release) for BibTeX versions 0.99a or later. % Copyright (C) 1984, 1985, 1988, 2010 Howard Trickey and Oren Patashnik. % Unlimited copying and redistribution of this file are permitted as long as % it is unmodified. Modifications (and redistribution of modified versions) % are also permitted, but only if the resulting file is renamed to something % besides btxbst.doc, plain.bst, unsrt.bst, alpha.bst, and abbrv.bst. % This restriction helps ensure that all standard styles are identical. % The file btxbst.doc has the documentation for this style. ENTRY { address author booktitle chapter edition editor howpublished institution journal key month note number organization pages publisher school series title type volume year } {} { label } INTEGERS { output.state before.all mid.sentence after.sentence after.block } FUNCTION {init.state.consts} { #0 'before.all := #1 'mid.sentence := #2 'after.sentence := #3 'after.block := } STRINGS { s t } FUNCTION {output.nonnull} { 's := output.state mid.sentence = { ", " * write$ } { output.state after.block = { add.period$ write$ newline$ "\newblock " write$ } { output.state before.all = 'write$ { add.period$ " " * write$ } if$ } if$ mid.sentence 'output.state := } if$ s } FUNCTION {output} { duplicate$ empty$ 'pop$ 'output.nonnull if$ } FUNCTION {output.check} { 't := duplicate$ empty$ { pop$ "empty " t * " in " * cite$ * warning$ } 'output.nonnull if$ } FUNCTION {output.bibitem} { newline$ "\bibitem{" write$ cite$ write$ "}" write$ newline$ "" before.all 'output.state := } FUNCTION {fin.entry} { add.period$ write$ newline$ } FUNCTION {new.block} { output.state before.all = 'skip$ { after.block 'output.state := } if$ } FUNCTION {new.sentence} { output.state after.block = 'skip$ { output.state before.all = 'skip$ { after.sentence 'output.state := } if$ } if$ } FUNCTION {not} { { #0 } { #1 } if$ } FUNCTION {and} { 'skip$ { pop$ #0 } if$ } FUNCTION {or} { { pop$ #1 } 'skip$ if$ } FUNCTION {new.block.checka} { empty$ 'skip$ 'new.block if$ } FUNCTION {new.block.checkb} { empty$ swap$ empty$ and 'skip$ 'new.block if$ } FUNCTION {new.sentence.checka} { empty$ 'skip$ 'new.sentence if$ } FUNCTION {new.sentence.checkb} { empty$ swap$ empty$ and 'skip$ 'new.sentence if$ } FUNCTION {field.or.null} { duplicate$ empty$ { pop$ "" } 'skip$ if$ } FUNCTION {emphasize} { duplicate$ empty$ { pop$ "" } { "{\em " swap$ * "}" * } if$ } INTEGERS { nameptr namesleft numnames } FUNCTION {format.names} { 's := #1 'nameptr := s num.names$ 'numnames := numnames 'namesleft := { namesleft #0 > } { s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't := nameptr #1 > { namesleft #1 > { ", " * t * } { numnames #2 > { "," * } 'skip$ if$ t "others" = { " et~al." * } { " and " * t * } if$ } if$ } 't if$ nameptr #1 + 'nameptr := namesleft #1 - 'namesleft := } while$ } FUNCTION {format.authors} { author empty$ { "" } { author format.names } if$ } FUNCTION {format.editors} { editor empty$ { "" } { editor format.names editor num.names$ #1 > { ", editors" * } { ", editor" * } if$ } if$ } FUNCTION {format.title} { title empty$ { "" } { title "t" change.case$ } if$ } FUNCTION {n.dashify} { 't := "" { t empty$ not } { t #1 #1 substring$ "-" = { t #1 #2 substring$ "--" = not { "--" * t #2 global.max$ substring$ 't := } { { t #1 #1 substring$ "-" = } { "-" * t #2 global.max$ substring$ 't := } while$ } if$ } { t #1 #1 substring$ * t #2 global.max$ substring$ 't := } if$ } while$ } FUNCTION {format.date} { year empty$ { month empty$ { "" } { "there's a month but no year in " cite$ * warning$ month } if$ } { month empty$ 'year { month " " * year * } if$ } if$ } FUNCTION {format.btitle} { title emphasize } FUNCTION {tie.or.space.connect} { duplicate$ text.length$ #3 < { "~" } { " " } if$ swap$ * * } FUNCTION {either.or.check} { empty$ 'pop$ { "can't use both " swap$ * " fields in " * cite$ * warning$ } if$ } FUNCTION {format.bvolume} { volume empty$ { "" } { "volume" volume tie.or.space.connect series empty$ 'skip$ { " of " * series emphasize * } if$ "volume and number" number either.or.check } if$ } FUNCTION {format.number.series} { volume empty$ { number empty$ { series field.or.null } { output.state mid.sentence = { "number" } { "Number" } if$ number tie.or.space.connect series empty$ { "there's a number but no series in " cite$ * warning$ } { " in " * series * } if$ } if$ } { "" } if$ } FUNCTION {format.edition} { edition empty$ { "" } { output.state mid.sentence = { edition "l" change.case$ " edition" * } { edition "t" change.case$ " edition" * } if$ } if$ } INTEGERS { multiresult } FUNCTION {multi.page.check} { 't := #0 'multiresult := { multiresult not t empty$ not and } { t #1 #1 substring$ duplicate$ "-" = swap$ duplicate$ "," = swap$ "+" = or or { #1 'multiresult := } { t #2 global.max$ substring$ 't := } if$ } while$ multiresult } FUNCTION {format.pages} { pages empty$ { "" } { pages multi.page.check { "pages" pages n.dashify tie.or.space.connect } { "page" pages tie.or.space.connect } if$ } if$ } FUNCTION {format.vol.num.pages} { volume field.or.null number empty$ 'skip$ { "(" number * ")" * * volume empty$ { "there's a number but no volume in " cite$ * warning$ } 'skip$ if$ } if$ pages empty$ 'skip$ { duplicate$ empty$ { pop$ format.pages } { ":" * pages n.dashify * } if$ } if$ } FUNCTION {format.chapter.pages} { chapter empty$ 'format.pages { type empty$ { "chapter" } { type "l" change.case$ } if$ chapter tie.or.space.connect pages empty$ 'skip$ { ", " * format.pages * } if$ } if$ } FUNCTION {format.in.ed.booktitle} { booktitle empty$ { "" } { editor empty$ { "In " booktitle emphasize * } { "In " format.editors * ", " * booktitle emphasize * } if$ } if$ } FUNCTION {empty.misc.check} { author empty$ title empty$ howpublished empty$ month empty$ year empty$ note empty$ and and and and and { "all relevant fields are empty in " cite$ * warning$ } 'skip$ if$ } FUNCTION {format.thesis.type} { type empty$ 'skip$ { pop$ type "t" change.case$ } if$ } FUNCTION {format.tr.number} { type empty$ { "Technical Report" } 'type if$ number empty$ { "t" change.case$ } { number tie.or.space.connect } if$ } FUNCTION {format.article.crossref} { key empty$ { journal empty$ { "need key or journal for " cite$ * " to crossref " * crossref * warning$ "" } { "In {\em " journal * "\/}" * } if$ } { "In " key * } if$ " \cite{" * crossref * "}" * } FUNCTION {format.crossref.editor} { editor #1 "{vv~}{ll}" format.name$ editor num.names$ duplicate$ #2 > { pop$ " et~al." * } { #2 < 'skip$ { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = { " et~al." * } { " and " * editor #2 "{vv~}{ll}" format.name$ * } if$ } if$ } if$ } FUNCTION {format.book.crossref} { volume empty$ { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ "In " } { "Volume" volume tie.or.space.connect " of " * } if$ editor empty$ editor field.or.null author field.or.null = or { key empty$ { series empty$ { "need editor, key, or series for " cite$ * " to crossref " * crossref * warning$ "" * } { "{\em " * series * "\/}" * } if$ } { key * } if$ } { format.crossref.editor * } if$ " \cite{" * crossref * "}" * } FUNCTION {format.incoll.inproc.crossref} { editor empty$ editor field.or.null author field.or.null = or { key empty$ { booktitle empty$ { "need editor, key, or booktitle for " cite$ * " to crossref " * crossref * warning$ "" } { "In {\em " booktitle * "\/}" * } if$ } { "In " key * } if$ } { "In " format.crossref.editor * } if$ " \cite{" * crossref * "}" * } FUNCTION {article} { output.bibitem format.authors "author" output.check new.block format.title "title" output.check new.block crossref missing$ { journal emphasize "journal" output.check format.vol.num.pages output format.date "year" output.check } { format.article.crossref output.nonnull format.pages output } if$ new.block note output fin.entry } FUNCTION {book} { output.bibitem author empty$ { format.editors "author and editor" output.check } { format.authors output.nonnull crossref missing$ { "author and editor" editor either.or.check } 'skip$ if$ } if$ new.block format.btitle "title" output.check crossref missing$ { format.bvolume output new.block format.number.series output new.sentence publisher "publisher" output.check address output } { new.block format.book.crossref output.nonnull } if$ format.edition output format.date "year" output.check new.block note output fin.entry } FUNCTION {booklet} { output.bibitem format.authors output new.block format.title "title" output.check howpublished address new.block.checkb howpublished output address output format.date output new.block note output fin.entry } FUNCTION {inbook} { output.bibitem author empty$ { format.editors "author and editor" output.check } { format.authors output.nonnull crossref missing$ { "author and editor" editor either.or.check } 'skip$ if$ } if$ new.block format.btitle "title" output.check crossref missing$ { format.bvolume output format.chapter.pages "chapter and pages" output.check new.block format.number.series output new.sentence publisher "publisher" output.check address output } { format.chapter.pages "chapter and pages" output.check new.block format.book.crossref output.nonnull } if$ format.edition output format.date "year" output.check new.block note output fin.entry } FUNCTION {incollection} { output.bibitem format.authors "author" output.check new.block format.title "title" output.check new.block crossref missing$ { format.in.ed.booktitle "booktitle" output.check format.bvolume output format.number.series output format.chapter.pages output new.sentence publisher "publisher" output.check address output format.edition output format.date "year" output.check } { format.incoll.inproc.crossref output.nonnull format.chapter.pages output } if$ new.block note output fin.entry } FUNCTION {inproceedings} { output.bibitem format.authors "author" output.check new.block format.title "title" output.check new.block crossref missing$ { format.in.ed.booktitle "booktitle" output.check format.bvolume output format.number.series output format.pages output address empty$ { organization publisher new.sentence.checkb organization output publisher output format.date "year" output.check } { address output.nonnull format.date "year" output.check new.sentence organization output publisher output } if$ } { format.incoll.inproc.crossref output.nonnull format.pages output } if$ new.block note output fin.entry } FUNCTION {conference} { inproceedings } FUNCTION {manual} { output.bibitem author empty$ { organization empty$ 'skip$ { organization output.nonnull address output } if$ } { format.authors output.nonnull } if$ new.block format.btitle "title" output.check author empty$ { organization empty$ { address new.block.checka address output } 'skip$ if$ } { organization address new.block.checkb organization output address output } if$ format.edition output format.date output new.block note output fin.entry } FUNCTION {mastersthesis} { output.bibitem format.authors "author" output.check new.block format.title "title" output.check new.block "Master's thesis" format.thesis.type output.nonnull school "school" output.check address output format.date "year" output.check new.block note output fin.entry } FUNCTION {misc} { output.bibitem format.authors output title howpublished new.block.checkb format.title output howpublished new.block.checka howpublished output format.date output new.block note output fin.entry empty.misc.check } FUNCTION {phdthesis} { output.bibitem format.authors "author" output.check new.block format.btitle "title" output.check new.block "PhD thesis" format.thesis.type output.nonnull school "school" output.check address output format.date "year" output.check new.block note output fin.entry } FUNCTION {proceedings} { output.bibitem editor empty$ { organization output } { format.editors output.nonnull } if$ new.block format.btitle "title" output.check format.bvolume output format.number.series output address empty$ { editor empty$ { publisher new.sentence.checka } { organization publisher new.sentence.checkb organization output } if$ publisher output format.date "year" output.check } { address output.nonnull format.date "year" output.check new.sentence editor empty$ 'skip$ { organization output } if$ publisher output } if$ new.block note output fin.entry } FUNCTION {techreport} { output.bibitem format.authors "author" output.check new.block format.title "title" output.check new.block format.tr.number output.nonnull institution "institution" output.check address output format.date "year" output.check new.block note output fin.entry } FUNCTION {unpublished} { output.bibitem format.authors "author" output.check new.block format.title "title" output.check new.block note "note" output.check format.date output fin.entry } FUNCTION {default.type} { misc } MACRO {jan} {"January"} MACRO {feb} {"February"} MACRO {mar} {"March"} MACRO {apr} {"April"} MACRO {may} {"May"} MACRO {jun} {"June"} MACRO {jul} {"July"} MACRO {aug} {"August"} MACRO {sep} {"September"} MACRO {oct} {"October"} MACRO {nov} {"November"} MACRO {dec} {"December"} MACRO {acmcs} {"ACM Computing Surveys"} MACRO {acta} {"Acta Informatica"} MACRO {cacm} {"Communications of the ACM"} MACRO {ibmjrd} {"IBM Journal of Research and Development"} MACRO {ibmsj} {"IBM Systems Journal"} MACRO {ieeese} {"IEEE Transactions on Software Engineering"} MACRO {ieeetc} {"IEEE Transactions on Computers"} MACRO {ieeetcad} {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} MACRO {ipl} {"Information Processing Letters"} MACRO {jacm} {"Journal of the ACM"} MACRO {jcss} {"Journal of Computer and System Sciences"} MACRO {scp} {"Science of Computer Programming"} MACRO {sicomp} {"SIAM Journal on Computing"} MACRO {tocs} {"ACM Transactions on Computer Systems"} MACRO {tods} {"ACM Transactions on Database Systems"} MACRO {tog} {"ACM Transactions on Graphics"} MACRO {toms} {"ACM Transactions on Mathematical Software"} MACRO {toois} {"ACM Transactions on Office Information Systems"} MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} MACRO {tcs} {"Theoretical Computer Science"} READ STRINGS { longest.label } INTEGERS { number.label longest.label.width } FUNCTION {initialize.longest.label} { "" 'longest.label := #1 'number.label := #0 'longest.label.width := } FUNCTION {longest.label.pass} { number.label int.to.str$ 'label := number.label #1 + 'number.label := label width$ longest.label.width > { label 'longest.label := label width$ 'longest.label.width := } 'skip$ if$ } EXECUTE {initialize.longest.label} ITERATE {longest.label.pass} FUNCTION {begin.bib} { preamble$ empty$ 'skip$ { preamble$ write$ newline$ } if$ "\begin{thebibliography}{" longest.label * "}" * write$ newline$ } EXECUTE {begin.bib} EXECUTE {init.state.consts} ITERATE {call.type$} FUNCTION {end.bib} { newline$ "\end{thebibliography}" write$ newline$ } EXECUTE {end.bib} ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5786119 pybtex-0.24.0/tests/data/unsrt_mixed.bst0000644000175000001440000004315600000000000020016 0ustar00agusers00000000000000% BibTeX standard bibliography style `unsrt' % Version 0.99b (8-Dec-10 release) for BibTeX versions 0.99a or later. % Copyright (C) 1984, 1985, 1988, 2010 Howard Trickey and Oren Patashnik. % Unlimited copying and redistribution of this file are permitted as long as % it is unmodified. Modifications (and redistribution of modified versions) % are also permitted, but only if the resulting file is renamed to something % besides btxbst.doc, plain.bst, unsrt.bst, alpha.bst, and abbrv.bst. % This restriction helps ensure that all standard styles are identical. % The file btxbst.doc has the documentation for this style. eNTrY { AddreSs aUTHoR BOoKTiTLe ChAPTER EditIon editoR hOwPubliSHeD instITuTIon JoURNAl keY mONTh note NumbeR oRgANIZaTIon pAgES puBLisHER scHooL series TITlE type volumE yEAR } {} { LaBEl } INTegErs { oUTPUt.stAtE Before.aLL mId.senTeNCE afTEr.SenTENce AFtER.bloCk } funcTioN {Init.sTatE.consTS} { #0 'BEFOre.aLL := #1 'Mid.seNTeNcE := #2 'aFtER.seNTeNcE := #3 'aFTeR.BLoCK := } stRIngs { S t } FUnCTiON {oUTpUT.nONnULl} { 'S := ouTPUt.sTAte mid.sEnTENce = { ", " * WriTe$ } { outPut.stATE afTeR.blOcK = { add.periOD$ writE$ NEwlInE$ "\newblock " wRitE$ } { Output.StatE beFoRE.aLl = 'WRiTE$ { ADd.periOd$ " " * Write$ } iF$ } IF$ Mid.SEntence 'Output.StATE := } iF$ s } FuNctioN {outPuT} { DuPLIcate$ eMPty$ 'pop$ 'oUTput.nonNUll If$ } FUNCtiON {oUtpuT.cHeCK} { 'T := dUplicate$ empty$ { Pop$ "empty " t * " in " * cItE$ * wARniNg$ } 'OuTput.NonnuLl if$ } FUnCtioN {outpUT.BIbitem} { newLIne$ "\bibitem{" wRite$ cItE$ WrItE$ "}" WriTe$ NEWLIne$ "" BeFore.all 'outPuT.sTate := } fuNcTION {FIn.enTRy} { add.PEriOd$ write$ nEwlIne$ } FuncTiON {New.BloCk} { OutpuT.StaTe BefOrE.All = 'SKip$ { AFteR.bLoCk 'oUtpuT.staTe := } iF$ } FUNCTION {nEw.SentENce} { outpuT.StatE AfteR.block = 'sKip$ { outPuT.sTate bEfoRE.all = 'skIp$ { aFTER.SenTence 'ouTpuT.sTAtE := } if$ } If$ } funCTIoN {nOT} { { #0 } { #1 } if$ } fuNctiOn {And} { 'sKip$ { pop$ #0 } iF$ } fUNCTIoN {or} { { pOp$ #1 } 'sKIp$ iF$ } funcTiOn {nEw.bLock.cheCKa} { eMPty$ 'sKIp$ 'nEW.BlocK iF$ } fUnCtIon {NEw.BLOcK.ChecKB} { EMPtY$ Swap$ Empty$ aND 'skip$ 'neW.bLocK IF$ } funCtiON {neW.seNteNCE.cheCKa} { eMPty$ 'skIP$ 'NEw.SenteNcE If$ } FUncTioN {nEw.sentenCe.chEckb} { EmptY$ SwaP$ empTY$ aNd 'skIp$ 'NeW.SentENce IF$ } functIoN {field.Or.NulL} { dupLIcaTe$ eMPTy$ { pop$ "" } 'SKip$ if$ } FuNCtiOn {emPhASiZE} { dupLiCATE$ eMPTY$ { poP$ "" } { "{\em " swAp$ * "}" * } if$ } INTEGeRS { naMepTr nAMeSleFt NUmNAmes } FUNCtiON {foRmat.nameS} { 's := #1 'nAMeptR := s nuM.nAmeS$ 'NUmNAmES := numnAMeS 'naMeslEFt := { NaMEslEft #0 > } { S NamEptr "{ff~}{vv~}{ll}{, jj}" fOrmAt.NAme$ 'T := nAmeptR #1 > { NAMEslefT #1 > { ", " * T * } { nUMNames #2 > { "," * } 'sKiP$ IF$ t "others" = { " et~al." * } { " and " * t * } IF$ } IF$ } 't iF$ nAMEptr #1 + 'NAMeptr := nameSlEft #1 - 'NameSleft := } while$ } FUNCtiOn {formAT.AUtHORS} { auTHoR emPTy$ { "" } { AUthoR FormAt.NAmeS } if$ } fUNCTion {formAt.eDiTors} { eDItOR Empty$ { "" } { EDIToR FoRmat.nameS EDitor NUm.NameS$ #1 > { ", editors" * } { ", editor" * } If$ } if$ } funcTiON {foRMAt.title} { tiTLe EMpty$ { "" } { titlE "t" chaNgE.Case$ } iF$ } FUNCTiOn {N.DaShifY} { 'T := "" { t eMPtY$ noT } { T #1 #1 sUBStrIng$ "-" = { t #1 #2 SuBStRiNG$ "--" = nOT { "--" * T #2 glObal.MAX$ suBstriNG$ 't := } { { t #1 #1 subSTRiNG$ "-" = } { "-" * t #2 GloBAl.Max$ SUbsTRing$ 'T := } wHIle$ } iF$ } { t #1 #1 substriNG$ * T #2 GlobaL.maX$ subsTrIng$ 't := } iF$ } WHile$ } FuncTion {FOrmAt.dAte} { yeAr EmptY$ { MonTh emPty$ { "" } { "there's a month but no year in " CItE$ * WaRNInG$ MoNth } if$ } { MOntH EmPTY$ 'YeaR { MOnth " " * yEaR * } If$ } If$ } FunCTioN {foRMAt.btitle} { titLe emphasize } Function {TIe.or.spAcE.CoNNeCt} { dupliCATE$ text.Length$ #3 < { "~" } { " " } if$ swap$ * * } FUnCtION {EIther.or.checK} { EMptY$ 'pOP$ { "can't use both " swAp$ * " fields in " * cite$ * wARNInG$ } iF$ } FUNCTIon {formaT.bvOlUMe} { VOlumE eMPTy$ { "" } { "volume" VolUME tIE.or.spacE.coNnect SErIes empty$ 'SkIP$ { " of " * SErieS emphasiZe * } if$ "volume and number" nUMbER EiTHEr.OR.CHecK } if$ } FuNCtioN {fOrmat.nUmbEr.sErieS} { VoLume eMpty$ { NUmBEr EMptY$ { SErIes fIeLd.or.NUll } { OUTput.STATE mid.SentENcE = { "number" } { "Number" } iF$ NuMBer Tie.OR.spAce.cOnNect sEries EMptY$ { "there's a number but no series in " Cite$ * wARninG$ } { " in " * sEriEs * } iF$ } if$ } { "" } iF$ } fUnCTIoN {forMAt.EDiTion} { edItion EmPty$ { "" } { output.statE Mid.senTenCe = { EditION "l" chaNgE.cAsE$ " edition" * } { eDition "t" chAnge.Case$ " edition" * } iF$ } if$ } iNTeGErs { mulTIResult } fUNcTiON {MUlti.paGe.CHeck} { 't := #0 'MulTIResuLt := { mUlTIresUlT not T eMpty$ noT ANd } { T #1 #1 substRInG$ duplicAtE$ "-" = Swap$ DupLicATE$ "," = Swap$ "+" = or or { #1 'muLtiresuLT := } { t #2 glObAL.mAx$ SUbsTRiNg$ 't := } If$ } while$ mUltiREsuLt } funCtION {FormAT.Pages} { paGES empTY$ { "" } { pages mulTI.PaGE.cHeCk { "pages" paGEs n.dashify tie.or.spAce.connEct } { "page" PagEs tiE.or.SPaCe.Connect } If$ } if$ } FUNCtiOn {FoRmat.Vol.Num.PageS} { vOluMe fIelD.oR.nULl Number EMpTy$ 'skip$ { "(" NumBeR * ")" * * voLUme eMpTy$ { "there's a number but no volume in " citE$ * Warning$ } 'sKIp$ if$ } if$ PagEs emptY$ 'skIp$ { duPliCATe$ EMpTy$ { POp$ FORMaT.paGes } { ":" * paGes N.dasHIfY * } If$ } If$ } FUncTIon {ForMAT.ChAPter.Pages} { CHaptEr empty$ 'FormAT.PageS { TYPe emPTy$ { "chapter" } { typE "l" CHANGe.CAsE$ } iF$ CHApTER tIe.Or.sPaCe.connect paGes eMpty$ 'SkIP$ { ", " * FORMAt.PaGes * } iF$ } IF$ } fuNCtiON {foRmAT.in.ed.booKtiTLe} { BOoktITlE EMPty$ { "" } { Editor EmpTY$ { "In " boOKtITLE eMphaSiZE * } { "In " format.eDiTORs * ", " * BooKtitlE eMPHasizE * } If$ } IF$ } FUNCtIon {EMpty.MisC.Check} { auThOr EmpTy$ tiTLe eMpTy$ hOwPUbLISHED EmPty$ MontH emPtY$ yEAr empty$ note emPtY$ anD aND aND AnD and { "all relevant fields are empty in " ciTe$ * wArnInG$ } 'skip$ if$ } funCtion {ForMAT.thesiS.type} { tyPe EmpTy$ 'skip$ { pop$ Type "t" chAnge.casE$ } If$ } FUncTioN {foRMAT.Tr.Number} { Type EmPty$ { "Technical Report" } 'tyPE if$ NuMBer EMpTy$ { "t" CHANGe.caSe$ } { nUmBer tie.OR.spAcE.coNNecT } iF$ } fUNctIoN {forMAt.arTIcle.cROSSREf} { kEY EMPty$ { jOURnaL emPty$ { "need key or journal for " cItE$ * " to crossref " * CRossref * waRnIng$ "" } { "In {\em " JOUrNal * "\/}" * } if$ } { "In " key * } iF$ " \cite{" * crossref * "}" * } FuNCTION {Format.CROsSReF.eDItoR} { EDitOr #1 "{vv~}{ll}" formAt.naMe$ ediTOr nuM.nAmes$ dUPLiCaTe$ #2 > { poP$ " et~al." * } { #2 < 'sKIP$ { eDitOr #2 "{ff }{vv }{ll}{ jj}" forMaT.name$ "others" = { " et~al." * } { " and " * EDitor #2 "{vv~}{ll}" FoRMAt.naMe$ * } If$ } IF$ } if$ } funCTiOn {fOrmaT.book.CROssReF} { voLUMe EMptY$ { "empty volume in " ciTE$ * "'s crossref of " * crOsSreF * waRNing$ "In " } { "Volume" volumE tIE.oR.SpacE.CoNnECT " of " * } if$ ediTor empty$ EdITor FIElD.or.Null AUTHoR fIelD.or.nulL = oR { key eMpty$ { SeRiEs emPty$ { "need editor, key, or series for " ciTE$ * " to crossref " * cROSSrEf * waRnIng$ "" * } { "{\em " * seRiEs * "\/}" * } If$ } { Key * } iF$ } { FoRmat.cRoSsREF.editor * } IF$ " \cite{" * cRossrEF * "}" * } fUNCTION {FORmAT.inCoLL.inproC.CrossrEf} { edITor empty$ editor FieLd.oR.NuLL aUTHor FIelD.OR.nUlL = Or { key emptY$ { bOokTItle EmpTy$ { "need editor, key, or booktitle for " CitE$ * " to crossref " * CroSSReF * WARning$ "" } { "In {\em " bOokTitle * "\/}" * } If$ } { "In " kEy * } if$ } { "In " fOrMAT.CROSsReF.edIToR * } If$ " \cite{" * croSsref * "}" * } fUnCtioN {article} { oUtPuT.BibitEm forMat.auTHors "author" OUtPuT.cHEcK nEw.blOck foRMaT.TitlE "title" OutPut.cHEcK new.bLOCK cRoSSref mIssInG$ { JOurnal EMpHasIZE "journal" outpUt.cHEcK FormaT.VoL.NUm.pAges OutpUt FOrMat.DaTE "year" oUtPUt.cHeCk } { FormAT.aRTiCle.CroSSRef ouTpuT.nONNUll fORmAt.pagEs oUtPUT } if$ new.blocK note oUTpUT fIN.EntRy } funCtIon {book} { outPuT.BibItem AuthOr empTy$ { fOrmAT.edItoRs "author and editor" oUTput.checK } { FormAt.authORs oUtpUt.noNNull CrosSref MisSing$ { "author and editor" EDiTor EItHER.oR.CHeck } 'SKIp$ IF$ } if$ new.bLOcK fORMaT.btitle "title" OUtpuT.ChEck cRoSsref MissinG$ { fORMAT.bVolUme Output new.BLock ForMAt.NumbEr.SERiEs oUTPUT New.SENTEnce publiSheR "publisher" OuTput.ChEcK aDdResS oUtpUt } { new.BloCK forMat.boOk.crOSsrEF ouTPut.NonnuLl } iF$ FormaT.edItioN ouTput formAT.DATe "year" ouTPut.CHeck new.bLOck noTe ouTPuT fin.entry } FUnCTiOn {boOklET} { OUtpUT.biBitem ForMat.authors outpUT nEW.bloCK fOrMat.TItle "title" OUtPuT.CHecK hOWPubLIsHeD ADdress nEw.BLock.cHECKB hOWpUbliSHed OUTpuT Address ouTPut FOrMat.daTE oUtPuT nEw.blOck nOtE OUtPUT fIN.eNTry } funCTiOn {INbOOK} { OutPUT.biBIteM Author empTY$ { FORmAT.eDitors "author and editor" OutPut.cHEcK } { FOrmat.AUTHORs OutPUt.nonNull CrOSsREf MISSinG$ { "author and editor" edItor eIther.Or.CHEcK } 'sKiP$ iF$ } iF$ new.bloCk foRMAt.bTiTlE "title" outPuT.cHeCk crossref MissinG$ { formAt.BVOlume oUtPut FormAT.chaptEr.PAGES "chapter and pages" OuTpuT.cheCk New.bLock foRmAT.nUmbER.sErIEs OutPut NEw.SeNtEnce PublisheR "publisher" OutPUt.CHEck addReSS output } { ForMAT.ChaPTeR.pageS "chapter and pages" ouTPut.CHecK nEW.blOck FormAT.bOOk.crosSREF oUTpUt.NonNuLl } IF$ FoRmaT.EditiON outPuT formAT.dATe "year" OutpUt.cHecK New.Block note OUTput fiN.eNtrY } FuNCtION {INcolleCTIOn} { OutpuT.bibitem formaT.AuThoRs "author" OUtpUT.ChecK New.blOck fOrMat.tItle "title" OutpuT.cHeck neW.BLock cRoSsrEf MIssing$ { fOrMaT.IN.ed.bOoktITLE "booktitle" OUTput.cHeck fOrMAt.BvOlume OutpuT FoRMat.NumbeR.Series output fORMAt.ChapTEr.pagES outpuT New.senTeNCE puBlisHer "publisher" outPuT.Check AddResS oUtPUt forMat.EDitiOn OutPut fOrMat.dAtE "year" OutpUt.cHecK } { forMat.incOLl.Inproc.crossref oUtput.nonnulL FOrMAt.ChaptER.pAges outpUT } if$ nEw.BlOcK nOte ouTput fin.eNtry } fUNCtIOn {inpRoceEdiNgs} { oUtpUT.bIbitEM foRMaT.AUthoRS "author" oUtPut.check NEw.bloCk formAt.TitLE "title" oUtPut.checK new.BlocK crosSrEF mIssiNG$ { forMat.in.Ed.bOOkTiTlE "booktitle" oUTPuT.CHeck foRMaT.BVoLumE OutPut foRMat.numBER.SErIeS oUtPuT fORMat.pagEs oUTpUt AddREsS eMPty$ { oRGaNizATIon pUBlisher nEw.SentEnce.cHEcKb oRganiZAtion OUTpUt pUblIShEr Output fOrmAT.daTe "year" Output.check } { addrEsS outpuT.NoNnull format.DaTe "year" oUTPuT.CHecK nEw.seNtENCe OrgaNIzaTIOn OUTPut pUBliSHeR outPuT } if$ } { forMat.iNCOll.Inproc.CRossref output.noNNUll FOrmaT.PageS OuTpUt } iF$ NEw.blocK NOTE OUTpUT fIN.ENTrY } functIoN {cONFERencE} { InprocEEDiNGs } FUNctIon {mANUal} { outPUt.BIbiTEM AuthoR Empty$ { ORganIZaTion emPTY$ 'SkIP$ { oRGaNizatIon outpUT.nOnNull addReSs OuTPUT } If$ } { format.authoRS OUTPuT.nOnnULl } If$ new.bloCK FoRmAT.btitLE "title" oUtpUt.cHeCk aUthOr Empty$ { oRGanIzatIoN Empty$ { adDress nEW.bLoCk.cheCKa ADDRESs OuTPuT } 'skiP$ iF$ } { orGaniZAtIoN AddrESS nEw.BLock.checkb oRganIzATion OUTput adDreSS OUTpUt } if$ ForMAt.EDItion outPuT fOrmaT.dATe OUtput neW.bLock nOTE oUtpUt fiN.enTRY } fuNcTiON {MAstersTHeSIS} { oUtPUT.bIbItem fOrMAt.authORs "author" outPuT.chECk nEW.BlOck foRmat.tiTle "title" OUtPut.cHeck NEW.BLock "Master's thesis" fOrMat.thesis.tYpe outpuT.NonnulL School "school" OUTPUT.cHeCK ADdRess outpUt FOrmat.DATE "year" OUtPUt.CHEck neW.BlOCK NoTe Output Fin.ENTRY } FUnCTioN {mIsC} { OUTput.biBItEM forMAt.aUthors oUtput TItLe hoWpublIShed NeW.block.cheCkb format.title outPuT hOWpublIsheD new.BLock.ChECKA HOWpubLiShed oUtpuT fOrmAt.datE oUtput NEW.BLOCk NoTE oUtPut fiN.EnTry EmPty.Misc.cHEck } FUNCtion {pHdthesis} { OutpUt.BiBitem fORmAt.AuThorS "author" ouTpUT.CheCk New.bloCk formaT.btitle "title" OutpUt.cHEck NEw.bLock "PhD thesis" fORmaT.thESIs.TyPE OutPut.noNnulL ScHOol "school" OutPut.cHeCK ADDreSS OUtPut FOrMAT.daTe "year" Output.chECk nEW.BLock nOTe outPuT Fin.Entry } fUNCtIOn {PRoceEDings} { oUtpUt.bIBIteM editor emPty$ { organizATiON oUtput } { fORMaT.editoRs ouTput.noNNUll } if$ new.BLock foRMAt.BTitLe "title" OutpUT.cHECk FOrMaT.BvoLume output fOrmat.numbeR.sEries ouTPuT AddrESs empty$ { edITor emPty$ { pUbLIShER new.sEntence.checkA } { orgAnizatIon pUBlIshEr New.sENtencE.chEcKB organizatIOn ouTPUt } If$ pubLIsher outPut Format.daTE "year" OUtpUT.CHECk } { adDResS outpUt.NonNuLL forMat.DatE "year" oUTpuT.ChEck new.SentenCe EDiToR emPtY$ 'sKip$ { oRGaniZaTiOn oUtput } If$ pUbLIshER Output } IF$ NEw.bLOck NOTe OUTpuT fiN.entRY } fuNction {tEcHrEpoRT} { ouTput.biBitEm fORmAT.aUthOrS "author" OutpUt.chECK NEW.blocK FOrmAt.TitlE "title" ouTPUt.Check nEw.BLock FoRMat.Tr.NUmber outpuT.noNNull InstitUtion "institution" ouTput.chECK addRESs oUTPuT fOrMat.DAtE "year" ouTput.chECk nEW.blOcK notE OutpUt fin.entry } functION {unpubLIsheD} { ouTput.bibiTem formAt.aUtHOrs "author" output.cHeCk neW.Block FOrmaT.TITLE "title" ouTpuT.check new.bloCK nOte "note" ouTPUt.chEck FoRmAt.DatE ouTpuT Fin.eNTry } FUnCtIon {deFauLt.tYPE} { mISc } MacrO {Jan} {"January"} MAcRo {feb} {"February"} mACRo {MAr} {"March"} MAcRo {APR} {"April"} MACRo {May} {"May"} MaCro {JuN} {"June"} maCro {JuL} {"July"} mAcro {aUg} {"August"} maCRO {SEp} {"September"} MACro {oct} {"October"} MACRO {nOV} {"November"} MacRo {dEC} {"December"} mAcRO {acMCS} {"ACM Computing Surveys"} maCro {acTa} {"Acta Informatica"} MaCro {cacm} {"Communications of the ACM"} MAcrO {ibMJrD} {"IBM Journal of Research and Development"} macrO {iBMSj} {"IBM Systems Journal"} MAcro {IEEese} {"IEEE Transactions on Software Engineering"} mAcro {iEeEtc} {"IEEE Transactions on Computers"} MaCRO {ieeEtCad} {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} MAcro {iPL} {"Information Processing Letters"} MAcRO {JaCM} {"Journal of the ACM"} macrO {JCss} {"Journal of Computer and System Sciences"} mAcrO {sCp} {"Science of Computer Programming"} mACrO {sICOMp} {"SIAM Journal on Computing"} MaCrO {tOcs} {"ACM Transactions on Computer Systems"} Macro {todS} {"ACM Transactions on Database Systems"} MacRo {tog} {"ACM Transactions on Graphics"} mAcRo {toMs} {"ACM Transactions on Mathematical Software"} MAcRo {tOois} {"ACM Transactions on Office Information Systems"} MACRo {ToPLaS} {"ACM Transactions on Programming Languages and Systems"} MaCRo {tCs} {"Theoretical Computer Science"} rEAd STRiNgS { longest.labEL } iNTEGERs { numBer.LaBEl LonGEST.LABeL.wIdTH } fUnctioN {inItiALIZE.longESt.LAbel} { "" 'LongEsT.LAbeL := #1 'nUMbeR.labEl := #0 'LonGesT.LaBEL.wiDTh := } funCtIOn {LonGest.LabEl.PasS} { NumbEr.lAbel int.tO.StR$ 'lABeL := NumBER.LaBel #1 + 'NUMBER.LaBel := lABEL wIdTh$ loNgeST.lABel.WiDTH > { Label 'longesT.LABEl := labEl WiDth$ 'LoNgESt.lAbeL.WiDTh := } 'Skip$ IF$ } eXecUTe {initIAlIzE.lONGEST.LabeL} itErAtE {lOnGEst.laBeL.PAss} fUNcTioN {beGin.bib} { preaMble$ EmpTY$ 'skiP$ { pReamBlE$ write$ nEWLiNe$ } if$ "\begin{thebibliography}{" LongeSt.lAbEL * "}" * WRite$ newline$ } EXecuTe {beGin.BIb} EXECUtE {iNIT.stATE.CONStS} iteRAtE {CalL.TyPe$} fUNCtioN {eNd.bib} { nEWLinE$ "\end{thebibliography}" wrIte$ nEwlINE$ } eXeCuTE {eNd.bIb} ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.577612 pybtex-0.24.0/tests/data/xampl.bib0000644000175000001440000002362500000000000016541 0ustar00agusers00000000000000% Copyright (C) 1988, 2010 Oren Patashnik. % Unlimited copying and redistribution of this file are permitted if it % is unmodified. Modifications (and their redistribution) are also % permitted, as long as the resulting file is renamed. @preamble{ "\newcommand{\noopsort}[1]{} " # "\newcommand{\printfirst}[2]{#1} " # "\newcommand{\singleletter}[1]{#1} " # "\newcommand{\switchargs}[2]{#2#1} " } @ARTICLE{article-minimal, author = {L[eslie] A. Aamport}, title = {The Gnats and Gnus Document Preparation System}, journal = {\mbox{G-Animal's} Journal}, year = 1986, } @ARTICLE{article-full, author = {L[eslie] A. Aamport}, title = {The Gnats and Gnus Document Preparation System}, journal = {\mbox{G-Animal's} Journal}, year = 1986, volume = 41, number = 7, pages = "73+", month = jul, note = "This is a full ARTICLE entry", } The KEY field is here to override the KEY field in the journal being cross referenced (so is the NOTE field, in addition to its imparting information). @ARTICLE{article-crossref, crossref = {WHOLE-JOURNAL}, key = "", author = {L[eslie] A. Aamport}, title = {The Gnats and Gnus Document Preparation System}, pages = "73+", note = "This is a cross-referencing ARTICLE entry", } @ARTICLE{whole-journal, key = "GAJ", journal = {\mbox{G-Animal's} Journal}, year = 1986, volume = 41, number = 7, month = jul, note = {The entire issue is devoted to gnats and gnus (this entry is a cross-referenced ARTICLE (journal))}, } @INBOOK{inbook-minimal, author = "Donald E. Knuth", title = "Fundamental Algorithms", publisher = "Addison-Wesley", year = "{\noopsort{1973b}}1973", chapter = "1.2", } @INBOOK{inbook-full, author = "Donald E. Knuth", title = "Fundamental Algorithms", volume = 1, series = "The Art of Computer Programming", publisher = "Addison-Wesley", address = "Reading, Massachusetts", edition = "Second", month = "10~" # jan, year = "{\noopsort{1973b}}1973", type = "Section", chapter = "1.2", pages = "10--119", note = "This is a full INBOOK entry", } @INBOOK{inbook-crossref, crossref = "whole-set", title = "Fundamental Algorithms", volume = 1, series = "The Art of Computer Programming", edition = "Second", year = "{\noopsort{1973b}}1973", type = "Section", chapter = "1.2", note = "This is a cross-referencing INBOOK entry", } @BOOK{book-minimal, author = "Donald E. Knuth", title = "Seminumerical Algorithms", publisher = "Addison-Wesley", year = "{\noopsort{1973c}}1981", } @BOOK{book-full, author = "Donald E. Knuth", title = "Seminumerical Algorithms", volume = 2, series = "The Art of Computer Programming", publisher = "Addison-Wesley", address = "Reading, Massachusetts", edition = "Second", month = "10~" # jan, year = "{\noopsort{1973c}}1981", note = "This is a full BOOK entry", } @BOOK{book-crossref, crossref = "whole-set", title = "Seminumerical Algorithms", volume = 2, series = "The Art of Computer Programming", edition = "Second", year = "{\noopsort{1973c}}1981", note = "This is a cross-referencing BOOK entry", } @BOOK{whole-set, author = "Donald E. Knuth", publisher = "Addison-Wesley", title = "The Art of Computer Programming", series = "Four volumes", year = "{\noopsort{1973a}}{\switchargs{--90}{1968}}", note = "Seven volumes planned (this is a cross-referenced set of BOOKs)", } @BOOKLET{booklet-minimal, key = "Kn{\printfirst{v}{1987}}", title = "The Programming of Computer Art", } @BOOKLET{booklet-full, author = "Jill C. Knvth", title = "The Programming of Computer Art", howpublished = "Vernier Art Center", address = "Stanford, California", month = feb, year = 1988, note = "This is a full BOOKLET entry", } @INCOLLECTION{incollection-minimal, author = "Daniel D. Lincoll", title = "Semigroups of Recurrences", booktitle = "High Speed Computer and Algorithm Organization", publisher = "Academic Press", year = 1977, } @INCOLLECTION{incollection-full, author = "Daniel D. Lincoll", title = "Semigroups of Recurrences", editor = "David J. Lipcoll and D. H. Lawrie and A. H. Sameh", booktitle = "High Speed Computer and Algorithm Organization", number = 23, series = "Fast Computers", chapter = 3, type = "Part", pages = "179--183", publisher = "Academic Press", address = "New York", edition = "Third", month = sep, year = 1977, note = "This is a full INCOLLECTION entry", } @INCOLLECTION{incollection-crossref, crossref = "whole-collection", author = "Daniel D. Lincoll", title = "Semigroups of Recurrences", pages = "179--183", note = "This is a cross-referencing INCOLLECTION entry", } @BOOK{whole-collection, editor = "David J. Lipcoll and D. H. Lawrie and A. H. Sameh", title = "High Speed Computer and Algorithm Organization", booktitle = "High Speed Computer and Algorithm Organization", number = 23, series = "Fast Computers", publisher = "Academic Press", address = "New York", edition = "Third", month = sep, year = 1977, note = "This is a cross-referenced BOOK (collection) entry", } @MANUAL{manual-minimal, key = "Manmaker", title = "The Definitive Computer Manual", } @MANUAL{manual-full, author = "Larry Manmaker", title = "The Definitive Computer Manual", organization = "Chips-R-Us", address = "Silicon Valley", edition = "Silver", month = apr # "-" # may, year = 1986, note = "This is a full MANUAL entry", } @MASTERSTHESIS{mastersthesis-minimal, author = "{\'{E}}douard Masterly", title = "Mastering Thesis Writing", school = "Stanford University", year = 1988, } @MASTERSTHESIS{mastersthesis-full, author = "{\'{E}}douard Masterly", title = "Mastering Thesis Writing", school = "Stanford University", type = "Master's project", address = "English Department", month = jun # "-" # aug, year = 1988, note = "This is a full MASTERSTHESIS entry", } @MISC{misc-minimal, key = "Missilany", note = "This is a minimal MISC entry", } @MISC{misc-full, author = "Joe-Bob Missilany", title = "Handing out random pamphlets in airports", howpublished = "Handed out at O'Hare", month = oct, year = 1984, note = "This is a full MISC entry", } @STRING{STOC-key = "OX{\singleletter{stoc}}"} @STRING{ACM = "The OX Association for Computing Machinery"} @STRING{STOC = " Symposium on the Theory of Computing"} @INPROCEEDINGS{inproceedings-minimal, author = "Alfred V. Oaho and Jeffrey D. Ullman and Mihalis Yannakakis", title = "On Notions of Information Transfer in {VLSI} Circuits", booktitle = "Proc. Fifteenth Annual ACM" # STOC, year = 1983, } @INPROCEEDINGS{inproceedings-full, author = "Alfred V. Oaho and Jeffrey D. Ullman and Mihalis Yannakakis", title = "On Notions of Information Transfer in {VLSI} Circuits", editor = "Wizard V. Oz and Mihalis Yannakakis", booktitle = "Proc. Fifteenth Annual ACM" # STOC, number = 17, series = "All ACM Conferences", pages = "133--139", month = mar, year = 1983, address = "Boston", organization = ACM, publisher = "Academic Press", note = "This is a full INPROCEDINGS entry", } @INPROCEEDINGS{inproceedings-crossref, crossref = "whole-proceedings", author = "Alfred V. Oaho and Jeffrey D. Ullman and Mihalis Yannakakis", title = "On Notions of Information Transfer in {VLSI} Circuits", organization = "", pages = "133--139", note = "This is a cross-referencing INPROCEEDINGS entry", } @PROCEEDINGS{proceedings-minimal, key = STOC-key, title = "Proc. Fifteenth Annual" # STOC, year = 1983, } @PROCEEDINGS{proceedings-full, editor = "Wizard V. Oz and Mihalis Yannakakis", title = "Proc. Fifteenth Annual" # STOC, number = 17, series = "All ACM Conferences", month = mar, year = 1983, address = "Boston", organization = ACM, publisher = "Academic Press", note = "This is a full PROCEEDINGS entry", } @PROCEEDINGS{whole-proceedings, key = STOC-key, organization = ACM, title = "Proc. Fifteenth Annual" # STOC, address = "Boston", year = 1983, booktitle = "Proc. Fifteenth Annual ACM" # STOC, note = "This is a cross-referenced PROCEEDINGS", } @PHDTHESIS{phdthesis-minimal, author = "F. Phidias Phony-Baloney", title = "Fighting Fire with Fire: Festooning {F}rench Phrases", school = "Fanstord University", year = 1988, } @PHDTHESIS{phdthesis-full, author = "F. Phidias Phony-Baloney", title = "Fighting Fire with Fire: Festooning {F}rench Phrases", school = "Fanstord University", type = "{PhD} Dissertation", address = "Department of French", month = jun # "-" # aug, year = 1988, note = "This is a full PHDTHESIS entry", } @TECHREPORT{techreport-minimal, author = "Tom Terrific", title = "An {$O(n \log n / \! \log\log n)$} Sorting Algorithm", institution = "Fanstord University", year = 1988, } @TECHREPORT{techreport-full, author = "Tom T{\'{e}}rrific", title = "An {$O(n \log n / \! \log\log n)$} Sorting Algorithm", institution = "Fanstord University", type = "Wishful Research Result", number = "7", address = "Computer Science Department, Fanstord, California", month = oct, year = 1988, note = "This is a full TECHREPORT entry", } @UNPUBLISHED{unpublished-minimal, author = "Ulrich {\"{U}}nderwood and Ned {\~N}et and Paul {\={P}}ot", title = "Lower Bounds for Wishful Research Results", note = "Talk at Fanstord University (this is a minimal UNPUBLISHED entry)", } @UNPUBLISHED{unpublished-full, author = "Ulrich {\"{U}}nderwood and Ned {\~N}et and Paul {\={P}}ot", title = "Lower Bounds for Wishful Research Results", month = nov # ", " # dec, year = 1988, note = "Talk at Fanstord University (this is a full UNPUBLISHED entry)", } @MISC{random-note-crossref, key = {Volume-2}, note = "Volume~2 is listed under Knuth \cite{book-full}" } ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.576612 pybtex-0.24.0/tests/data/xampl_alpha.bibtex.bbl0000644000175000001440000002004400000000000021155 0ustar00agusers00000000000000\newcommand{\noopsort}[1]{} \newcommand{\printfirst}[2]{#1} \newcommand{\singleletter}[1]{#1} \newcommand{\switchargs}[2]{#2#1} \begin{thebibliography}{OX{\singleletter{stoc}}83b} \bibitem[Aam86a]{article-minimal} L[eslie]~A. Aamport. \newblock The gnats and gnus document preparation system. \newblock {\em \mbox{G-Animal's} Journal}, 1986. \bibitem[Aam86b]{article-full} L[eslie]~A. Aamport. \newblock The gnats and gnus document preparation system. \newblock {\em \mbox{G-Animal's} Journal}, 41(7):73+, July 1986. \newblock This is a full ARTICLE entry. \bibitem[Aam86c]{article-crossref} L[eslie]~A. Aamport. \newblock The gnats and gnus document preparation system. \newblock In {\em \mbox{G-Animal's} Journal\/} \cite{whole-journal}, pages 73+. \newblock This is a cross-referencing ARTICLE entry. \bibitem[GAJ86]{whole-journal} {\em \mbox{G-Animal's} Journal}, 41(7), July 1986. \newblock The entire issue is devoted to gnats and gnus (this entry is a cross-referenced ARTICLE (journal)). \bibitem[Knu68]{whole-set} Donald~E. Knuth. \newblock {\em The Art of Computer Programming}. \newblock Four volumes. Addison-Wesley, {\noopsort{1973a}}{\switchargs{--90}{1968}}. \newblock Seven volumes planned (this is a cross-referenced set of BOOKs). \bibitem[Knu73a]{inbook-minimal} Donald~E. Knuth. \newblock {\em Fundamental Algorithms}, chapter 1.2. \newblock Addison-Wesley, {\noopsort{1973b}}1973. \bibitem[Knu73b]{inbook-full} Donald~E. Knuth. \newblock {\em Fundamental Algorithms}, volume~1 of {\em The Art of Computer Programming}, section 1.2, pages 10--119. \newblock Addison-Wesley, Reading, Massachusetts, second edition, 10~January {\noopsort{1973b}}1973. \newblock This is a full INBOOK entry. \bibitem[Knu73c]{inbook-crossref} Donald~E. Knuth. \newblock {\em Fundamental Algorithms}, section 1.2. \newblock Volume~1 of {\em The Art of Computer Programming\/} \cite{whole-set}, second edition, {\noopsort{1973b}}1973. \newblock This is a cross-referencing INBOOK entry. \bibitem[Knu81a]{book-minimal} Donald~E. Knuth. \newblock {\em Seminumerical Algorithms}. \newblock Addison-Wesley, {\noopsort{1973c}}1981. \bibitem[Knu81b]{book-full} Donald~E. Knuth. \newblock {\em Seminumerical Algorithms}, volume~2 of {\em The Art of Computer Programming}. \newblock Addison-Wesley, Reading, Massachusetts, second edition, 10~January {\noopsort{1973c}}1981. \newblock This is a full BOOK entry. \bibitem[Knu81c]{book-crossref} Donald~E. Knuth. \newblock {\em Seminumerical Algorithms}. \newblock Volume~2 of {\em The Art of Computer Programming\/} \cite{whole-set}, second edition, {\noopsort{1973c}}1981. \newblock This is a cross-referencing BOOK entry. \bibitem[Kn{\printfirst{v}{1987}}]{booklet-minimal} The programming of computer art. \bibitem[Knv88]{booklet-full} Jill~C. Knvth. \newblock The programming of computer art. \newblock Vernier Art Center, Stanford, California, February 1988. \newblock This is a full BOOKLET entry. \bibitem[Lin77a]{incollection-minimal} Daniel~D. Lincoll. \newblock Semigroups of recurrences. \newblock In {\em High Speed Computer and Algorithm Organization}. Academic Press, 1977. \bibitem[Lin77b]{incollection-full} Daniel~D. Lincoll. \newblock Semigroups of recurrences. \newblock In David~J. Lipcoll, D.~H. Lawrie, and A.~H. Sameh, editors, {\em High Speed Computer and Algorithm Organization}, number~23 in Fast Computers, part~3, pages 179--183. Academic Press, New York, third edition, September 1977. \newblock This is a full INCOLLECTION entry. \bibitem[Lin77c]{incollection-crossref} Daniel~D. Lincoll. \newblock Semigroups of recurrences. \newblock In Lipcoll et~al. \cite{whole-collection}, pages 179--183. \newblock This is a cross-referencing INCOLLECTION entry. \bibitem[LLS77]{whole-collection} David~J. Lipcoll, D.~H. Lawrie, and A.~H. Sameh, editors. \newblock {\em High Speed Computer and Algorithm Organization}. \newblock Number~23 in Fast Computers. Academic Press, New York, third edition, September 1977. \newblock This is a cross-referenced BOOK (collection) entry. \bibitem[Man]{manual-minimal} {\em The Definitive Computer Manual}. \bibitem[Man86]{manual-full} Larry Manmaker. \newblock {\em The Definitive Computer Manual}. \newblock Chips-R-Us, Silicon Valley, silver edition, April-May 1986. \newblock This is a full MANUAL entry. \bibitem[Mas88a]{mastersthesis-minimal} {\'{E}}douard Masterly. \newblock Mastering thesis writing. \newblock Master's thesis, Stanford University, 1988. \bibitem[Mas88b]{mastersthesis-full} {\'{E}}douard Masterly. \newblock Mastering thesis writing. \newblock Master's project, Stanford University, English Department, June-August 1988. \newblock This is a full MASTERSTHESIS entry. \bibitem[Mis]{misc-minimal} This is a minimal MISC entry. \bibitem[Mis84]{misc-full} Joe-Bob Missilany. \newblock Handing out random pamphlets in airports. \newblock Handed out at O'Hare, October 1984. \newblock This is a full MISC entry. \bibitem[OUY83a]{inproceedings-minimal} Alfred~V. Oaho, Jeffrey~D. Ullman, and Mihalis Yannakakis. \newblock On notions of information transfer in {VLSI} circuits. \newblock In {\em Proc. Fifteenth Annual ACM Symposium on the Theory of Computing}, 1983. \bibitem[OUY83b]{inproceedings-full} Alfred~V. Oaho, Jeffrey~D. Ullman, and Mihalis Yannakakis. \newblock On notions of information transfer in {VLSI} circuits. \newblock In Wizard~V. Oz and Mihalis Yannakakis, editors, {\em Proc. Fifteenth Annual ACM Symposium on the Theory of Computing}, number~17 in All ACM Conferences, pages 133--139, Boston, March 1983. The OX Association for Computing Machinery, Academic Press. \newblock This is a full INPROCEDINGS entry. \bibitem[OUY83c]{inproceedings-crossref} Alfred~V. Oaho, Jeffrey~D. Ullman, and Mihalis Yannakakis. \newblock On notions of information transfer in {VLSI} circuits. \newblock In OX{\singleletter{stoc}} \cite{whole-proceedings}, pages 133--139. \newblock This is a cross-referencing INPROCEEDINGS entry. \bibitem[OX{\singleletter{stoc}}83a]{whole-proceedings} The OX Association for Computing Machinery. \newblock {\em Proc. Fifteenth Annual Symposium on the Theory of Computing}, Boston, 1983. \newblock This is a cross-referenced PROCEEDINGS. \bibitem[OX{\singleletter{stoc}}83b]{proceedings-minimal} {\em Proc. Fifteenth Annual Symposium on the Theory of Computing}, 1983. \bibitem[OY83]{proceedings-full} Wizard~V. Oz and Mihalis Yannakakis, editors. \newblock {\em Proc. Fifteenth Annual Symposium on the Theory of Computing}, number~17 in All ACM Conferences, Boston, March 1983. The OX Association for Computing Machinery, Academic Press. \newblock This is a full PROCEEDINGS entry. \bibitem[PB88a]{phdthesis-minimal} F.~Phidias Phony-Baloney. \newblock {\em Fighting Fire with Fire: Festooning {F}rench Phrases}. \newblock PhD thesis, Fanstord University, 1988. \bibitem[PB88b]{phdthesis-full} F.~Phidias Phony-Baloney. \newblock {\em Fighting Fire with Fire: Festooning {F}rench Phrases}. \newblock {PhD} dissertation, Fanstord University, Department of French, June-August 1988. \newblock This is a full PHDTHESIS entry. \bibitem[Ter88a]{techreport-minimal} Tom Terrific. \newblock An {$O(n \log n / \! \log\log n)$} sorting algorithm. \newblock Technical report, Fanstord University, 1988. \bibitem[T{\'{e}}r88b]{techreport-full} Tom T{\'{e}}rrific. \newblock An {$O(n \log n / \! \log\log n)$} sorting algorithm. \newblock Wishful Research Result~7, Fanstord University, Computer Science Department, Fanstord, California, October 1988. \newblock This is a full TECHREPORT entry. \bibitem[{\"{U}}{\~N}{\={P}}]{unpublished-minimal} Ulrich {\"{U}}nderwood, Ned {\~N}et, and Paul {\={P}}ot. \newblock Lower bounds for wishful research results. \newblock Talk at Fanstord University (this is a minimal UNPUBLISHED entry). \bibitem[{\"{U}}{\~N}{\={P}}88]{unpublished-full} Ulrich {\"{U}}nderwood, Ned {\~N}et, and Paul {\={P}}ot. \newblock Lower bounds for wishful research results. \newblock Talk at Fanstord University (this is a full UNPUBLISHED entry), November, December 1988. \bibitem[Vol]{random-note-crossref} Volume~2 is listed under Knuth \cite{book-full}. \end{thebibliography} ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.572612 pybtex-0.24.0/tests/data/xampl_jurabib.bibtex.bbl0000644000175000001440000006446000000000000021520 0ustar00agusers00000000000000\newcommand{\noopsort}[1]{} \newcommand{\printfirst}[2]{#1} \newcommand{\singleletter}[1]{#1} \newcommand{\switchargs}[2]{#2#1} % % This bibliography was produced by using jurabib.bst % \begin{thebibliography}{} \bibitem[{Aamport\jbdy {1986}}% {\mbox{G-Animal's} Journal\jbsy {1986}}% {{1}{}{article}{1986\el {a}}{}{}{}{}% {1986\el {a}}}% {{The Gnats and Gnus Document Preparation System}% {}{}{2}{}{}{}{}{}}% ]{article-minimal} \jbbibargs {\bibnf {Aamport} {L[eslie]~A.} {L.~A.} {} {}} {L[eslie]~A. Aamport} {au} {\bibapifont {The Gnats and Gnus Document Preparation System}\bibatsep\ \bibJTsep \bibjtfont {\mbox{G-Animal's} Journal} \artyearformat {1986\bibel {a}}} {\bibartperiodhowcited} \jbdoitem {{Aamport}{L[eslie]~A.}{L.~A.}{}{}} {} {} \bibAnnoteFile {article-minimal} \bibitem[{Aamport\jbdy {1986}}% {\mbox{G-Animal's} Journal 41 \peryearformat {1986}}% {{1}{}{article}{1986\el {b}}{}{}{}{73+}% {1986\el {b}}}% {{The Gnats and Gnus Document Preparation System}% {}{}{2}{}{}{}{}{}}% ]{article-full} \jbbibargs {\bibnf {Aamport} {L[eslie]~A.} {L.~A.} {} {}} {L[eslie]~A. Aamport} {au} {\bibapifont {The Gnats and Gnus Document Preparation System}\bibatsep\ \bibJTsep \bibjtfont {\mbox{G-Animal's} Journal}\ajtsep\ \artvolumeformat {41}\ \julname\ \artyearformat {1986\bibel {b}}\artnumberformat {7} \jbPages{73+} \jbnote {1} {This is a full ARTICLE entry} } {\bibartperiodhowcited} \jbendnote {This is a full ARTICLE entry} \jbdoitem {{Aamport}{L[eslie]~A.}{L.~A.}{}{}} {} {} \bibAnnoteFile {article-full} \bibitem[{Aamport\jbdy {1986}}% {\mbox{G-Animal's} Journal 41 \peryearformat {1986}}% {{1}{}{article}{1986\el {c}}{}{}{}{73+}% {1986\el {c}}}% {{The Gnats and Gnus Document Preparation System}% {}{}{2}{}{}{}{}{}}% ]{article-crossref} \jbbibargs {\bibnf {Aamport} {L[eslie]~A.} {L.~A.} {} {}} {L[eslie]~A. Aamport} {au} {\bibapifont {The Gnats and Gnus Document Preparation System}\bibatsep\ \bibJTsep\bibjtfont {\mbox{G-Animal's} Journal}\ajtsep\ 1986 \protect\jbcrossrefchecked {whole-journal} \jbnote {1} {This is a cross-referencing ARTICLE entry} } {\bibartperiodhowcited} \jbendnote {This is a cross-referencing ARTICLE entry} \jbdoitem {{Aamport}{L[eslie]~A.}{L.~A.}{}{}} {} {} \bibAnnoteFile {article-crossref} \bibitem[{empty}% {\mbox{G-Animal's} Journal 41 \peryearformat {1986}}% {{0}{}{article}{1986}{}{}{}{}% {1986}}% {{}% {}{}{4}{}{}{}{}{}}% ]{whole-journal} \jbbibargs {} {empty} {} {\mbox{G-Animal's} Journal \artvolumeformat {41}\ \julname\ \artyearformat {1986}\artnumberformat {7} \jbnote {1} {The entire issue is devoted to gnats and gnus (this entry is a cross-referenced ARTICLE (journal))} } {\bibartperiodhowcited} \jbendnote {The entire issue is devoted to gnats and gnus (this entry is a cross-referenced ARTICLE (journal))} \jbdoitem {} {} {} \bibAnnoteFile {whole-journal} \bibitem[{Knuth\jbdy {{\noopsort{1973a}}{\switchargs{--90}{1968}}}}% {}% {{1}{}{book}{{\noopsort{1973a}}{\switchargs{--90}{1968}}}{}{}{}{}% {Addison-Wesley\bibbdsep {} {\noopsort{1973a}}{\switchargs{--90}{1968}}}}% {{The Art of Computer Programming}% {}{}{2}{}{}{}{}{}}% ]{whole-set} \jbbibargs {\bibnf {Knuth} {Donald~E.} {D.~E.} {} {}} {Donald~E. Knuth} {au} {\bibtfont {The Art of Computer Programming}\bibatsep\ \apyformat {Addison-Wesley\bibbdsep {} {\noopsort{1973a}}{\switchargs{--90}{1968}}} \numberandseries {}{Four volumes} \jbnote {1} {Seven volumes planned (this is a cross-referenced set of BOOKs)} } {\bibhowcited} \jbendnote {Seven volumes planned (this is a cross-referenced set of BOOKs)} \jbdoitem {{Knuth}{Donald~E.}{D.~E.}{}{}} {} {} \bibAnnoteFile {whole-set} \bibitem[{Knuth\jbdy {{\noopsort{1973b}}1973}}% {}% {{1}{}{inbook}{{\noopsort{1973b}}1973\el {a}}{}{}{}{}% {Addison-Wesley\bibbdsep {} {\noopsort{1973b}}1973\el {a}}}% {{Fundamental Algorithms}% {}{}{2}{}{}{}{}{}}% ]{inbook-minimal} \jbbibargs {\bibnf {Knuth} {Donald~E.} {D.~E.} {} {}} {Donald~E. Knuth} {au} {\Bibchaptername{}~1.2 In \bibapifont {Fundamental Algorithms}\bibatsep\ \apyformat {Addison-Wesley\bibbdsep {} {\noopsort{1973b}}1973\bibel {a}} } {\bibhowcited} \jbdoitem {{Knuth}{Donald~E.}{D.~E.}{}{}} {} {} \bibAnnoteFile {inbook-minimal} \bibitem[{Knuth\jbdy {{\noopsort{1973b}}1973}}% {}% {{1}{}{inbook}{{\noopsort{1973b}}1973\el {b}}{2}{}{}{10--119}% {Reading, Massachusetts\bpubaddr {} Addison-Wesley\bibbdsep {} {\noopsort{1973b}}1973\el {b}}}% {{Fundamental Algorithms}% {}{}{2}{}{}{}{}{}}% ]{inbook-full} \jbbibargs {\bibnf {Knuth} {Donald~E.} {D.~E.} {} {}} {Donald~E. Knuth} {au} {Section~1.2 In \bibtfont {The Art of Computer Programming}\bibatsep\ \volumeformat {1} \bibapifont {Fundamental Algorithms}\bibatsep\ \jbedition {\secondedname~\editionname {}\jbaensep} \apyformat {Reading, Massachusetts\bpubaddr {} Addison-Wesley\bibbdsep {} 10~\janname\ \jbssedbd {2}{\noopsort{1973b}}1973\bibel {b}} \jbPages{10--119} \jbnote {1} {This is a full INBOOK entry} } {\bibhowcited} \jbendnote {This is a full INBOOK entry} \jbdoitem {{Knuth}{Donald~E.}{D.~E.}{}{}} {} {} \bibAnnoteFile {inbook-full} \bibitem[{Knuth\jbdy {{\noopsort{1973b}}1973}}% {}% {{1}{}{inbook}{{\noopsort{1973b}}1973\el {c}}{2}{}{}{}% {Addison-Wesley\bibbdsep {} {\noopsort{1973b}}1973\el {c}}}% {{Fundamental Algorithms}% {}{}{2}{}{}{}{}{}}% ]{inbook-crossref} \jbbibargs {\bibnf {Knuth} {Donald~E.} {D.~E.} {} {}} {Donald~E. Knuth} {au} {Section~1.2 \protect\jbcrossrefchecked[1]{whole-set}\unskip \jbnote {1} {This is a cross-referencing INBOOK entry} } {\bibhowcited} \jbendnote {This is a cross-referencing INBOOK entry} \jbdoitem {{Knuth}{Donald~E.}{D.~E.}{}{}} {} {} \bibAnnoteFile {inbook-crossref} \bibitem[{Knuth\jbdy {{\noopsort{1973c}}1981}}% {}% {{1}{}{book}{{\noopsort{1973c}}1981\el {a}}{}{}{}{}% {Addison-Wesley\bibbdsep {} {\noopsort{1973c}}1981\el {a}}}% {{Seminumerical Algorithms}% {}{}{2}{}{}{}{}{}}% ]{book-minimal} \jbbibargs {\bibnf {Knuth} {Donald~E.} {D.~E.} {} {}} {Donald~E. Knuth} {au} {\bibtfont {Seminumerical Algorithms}\bibatsep\ \apyformat {Addison-Wesley\bibbdsep {} {\noopsort{1973c}}1981\bibel {a}}} {\bibhowcited} \jbdoitem {{Knuth}{Donald~E.}{D.~E.}{}{}} {} {} \bibAnnoteFile {book-minimal} \bibitem[{Knuth\jbdy {{\noopsort{1973c}}1981}}% {}% {{1}{}{book}{{\noopsort{1973c}}1981\el {b}}{2}{}{}{}% {Reading, Massachusetts\bpubaddr {} Addison-Wesley\bibbdsep {} {\noopsort{1973c}}1981\el {b}}}% {{Seminumerical Algorithms}% {}{}{2}{}{}{}{}{}}% ]{book-full} \jbbibargs {\bibnf {Knuth} {Donald~E.} {D.~E.} {} {}} {Donald~E. Knuth} {au} {\bibtfont {Seminumerical Algorithms}\bibatsep\ \volumeformat {2} The Art of Computer Programming\bibatsep\ \jbedition {\secondedname~\editionname {}\jbaensep} \apyformat {Reading, Massachusetts\bpubaddr {} Addison-Wesley\bibbdsep {} 10~\janname\ \jbssedbd {2}{\noopsort{1973c}}1981\bibel {b}} \jbnote {1} {This is a full BOOK entry} } {\bibhowcited} \jbendnote {This is a full BOOK entry} \jbdoitem {{Knuth}{Donald~E.}{D.~E.}{}{}} {} {} \bibAnnoteFile {book-full} \bibitem[{Knuth\jbdy {{\noopsort{1973c}}1981}}% {}% {{1}{}{book}{{\noopsort{1973c}}1981\el {c}}{2}{}{}{}% {Addison-Wesley\bibbdsep {} {\noopsort{1973c}}1981\el {c}}}% {{Seminumerical Algorithms}% {}{}{2}{}{}{}{}{}}% ]{book-crossref} \jbbibargs {\bibnf {Knuth} {Donald~E.} {D.~E.} {} {}} {Donald~E. Knuth} {au} {\bibtfont {Seminumerical Algorithms}\bibatsep\ \jbedition {\secondedname~\editionname {}\jbaensep} \apyformat {Addison-Wesley\bibbdsep {} \jbssedbd {2}{\noopsort{1973c}}1981\bibel {c}} \protect\jbcrossrefchecked[2]{whole-set}\unskip \jbnote {1} {This is a cross-referencing BOOK entry} } {\bibhowcited} \jbendnote {This is a cross-referencing BOOK entry} \jbdoitem {{Knuth}{Donald~E.}{D.~E.}{}{}} {} {} \bibAnnoteFile {book-crossref} \bibitem[{empty}% {}% {{0}{}{booklet}{}{}{}{}{}% {}}% {{The Programming of Computer Art}% {}{}{4}{}{}{}{}{}}% ]{booklet-minimal} \jbbibargs {} {empty} {} {\bibtfont {The Programming of Computer Art}\bibatsep\ } {\bibhowcited} \jbdoitem {} {} {} \bibAnnoteFile {booklet-minimal} \bibitem[{Knvth\jbdy {1988}}% {}% {{0}{}{booklet}{1988}{}{}{}{}% {Stanford, California\bibbdsep {} 1988}}% {{The Programming of Computer Art}% {}{}{2}{}{}{}{}{}}% ]{booklet-full} \jbbibargs {\bibnf {Knvth} {Jill~C.} {J.~C.} {} {}} {Jill~C. Knvth} {au} {\bibtfont {The Programming of Computer Art}\bibatsep\ \apyformat {Stanford, California\bpubaddr {} Vernier Art Center\bibbdsep {} \febname\ 1988} \jbnote {1} {This is a full BOOKLET entry} } {\bibhowcited} \jbendnote {This is a full BOOKLET entry} \jbdoitem {{Knvth}{Jill~C.}{J.~C.}{}{}} {} {} \bibAnnoteFile {booklet-full} \bibitem[{Lincoll\jbdy {1977}}% {}% {{1}{}{incollection}{1977\el {a}}{}{}{}{}% {Academic Press\bibbdsep {} 1977\el {a}}}% {{Semigroups of Recurrences}% {}{}{2}{}{}{}{}{}}% ]{incollection-minimal} \jbbibargs {\bibnf {Lincoll} {Daniel~D.} {D.~D.} {} {}} {Daniel~D. Lincoll} {au} {\bibapifont {Semigroups of Recurrences}\bibatsep\ \incolledformat {}{}{\bibbtfont {High Speed Computer and Algorithm Organization}\bibatsep\ }{}{} \apyformat {Academic Press\bibbdsep {} 1977\bibel {a}} } {\bibhowcited} \jbdoitem {{Lincoll}{Daniel~D.}{D.~D.}{}{}} {} {} \bibAnnoteFile {incollection-minimal} \bibitem[{Lincoll\jbdy {1977}}% {}% {{1}{}{incollection}{1977\el {b}}{3}{}{}{179--183}% {New York\bpubaddr {} Academic Press\bibbdsep {} 1977\el {b}}}% {{Semigroups of Recurrences}% {}{}{1}{}{}{}{}{}}% ]{incollection-full} \jbbibargs {\bibnf {Lincoll} {Daniel~D.} {D.~D.} {} {}} {Daniel~D. Lincoll} {au} {\bibapifont {Semigroups of Recurrences}\bibatsep\ \incolledformat {\bibenf {Lipcoll} {David~J.} {D.~J.} {} {}\Bibbfsesep \bibenf {Lawrie} {D.~H.} {D.~H.} {} {}\Bibbstesep \bibenf {Sameh} {A.~H.} {A.~H.} {} {}}{\edfont {\editorsname}}{\bibbtfont {High Speed Computer and Algorithm Organization}\bibatsep\ }{}{} \jbedition {\thirdedname~\editionname {}\jbaensep} \apyformat {New York\bpubaddr {} Academic Press\bibbdsep {} \sepname\ \jbssedbd {3}1977\bibel {b}} \numberandseries {23}{Fast Computers} \unskip.\,-- Part~3 \jbPages{179--183} \jbnote {1} {This is a full INCOLLECTION entry} } {\bibhowcited} \jbendnote {This is a full INCOLLECTION entry} \jbdoitem {{Lincoll}{Daniel~D.}{D.~D.}{}{}} {{Lipcoll}{David~J.}{D.~J.}{}{}; {Lawrie}{D.~H.}{D.~H.}{}{}; {Sameh}{A.~H.}{A.~H.}{}{}} {} \bibAnnoteFile {incollection-full} \bibitem[{Lincoll\jbdy {1977}}% {}% {{1}{}{incollection}{1977\el {c}}{3}{}{}{179--183}% {New York\bpubaddr {} Academic Press\bibbdsep {} 1977\el {c}}}% {{Semigroups of Recurrences}% {}{}{1}{}{}{}{}{}}% ]{incollection-crossref} \jbbibargs {\bibnf {Lincoll} {Daniel~D.} {D.~D.} {} {}} {Daniel~D. Lincoll} {au} {\bibapifont {Semigroups of Recurrences}\bibatsep\ \protect\jbincollcrossref {whole-collection}{1} \jbPages{179--183} \jbnote {1} {This is a cross-referencing INCOLLECTION entry} } {\bibhowcited} \jbendnote {This is a cross-referencing INCOLLECTION entry} \jbdoitem {{Lincoll}{Daniel~D.}{D.~D.}{}{}} {{Lipcoll}{David~J.}{D.~J.}{}{}; {Lawrie}{D.~H.}{D.~H.}{}{}; {Sameh}{A.~H.}{A.~H.}{}{}} {} \bibAnnoteFile {incollection-crossref} \bibitem[{Lipcoll\jbbfsesep Lawrie\jbbstesep Sameh\jbdy {1977}}% {}% {{0}{}{book}{1977}{3}{}{}{}% {New York\bpubaddr {} Academic Press\bibbdsep {} 1977}}% {{High Speed Computer and Algorithm Organization}% {}{}{3}{}{}{}{}{}}% ]{whole-collection} \jbbibargs {\biblenf {Lipcoll} {David~J.} {D.~J.} {} {}\Bibbfsesep \biblenf {Lawrie} {D.~H.} {D.~H.} {} {}\Bibbstesep \biblenf {Sameh} {A.~H.} {A.~H.} {} {}\fsted {\editorsname}} {David~J. LipcollD.~H. LawrieA.~H. Sameh} {eds} {\snded {\sndeditorsname}\bibtfont {High Speed Computer and Algorithm Organization}\bibatsep\ \jbedition {\thirdedname~\editionname {}\jbaensep} \apyformat {New York\bpubaddr {} Academic Press\bibbdsep {} \sepname\ \jbssedbd {3}1977} \numberandseries {23}{Fast Computers} \jbnote {1} {This is a cross-referenced BOOK (collection) entry} } {\bibhowcited} \jbendnote {This is a cross-referenced BOOK (collection) entry} \jbdoitem {} {{Lipcoll}{David~J.}{D.~J.}{}{}; {Lawrie}{D.~H.}{D.~H.}{}{}; {Sameh}{A.~H.}{A.~H.}{}{}} {} \bibAnnoteFile {whole-collection} \bibitem[{empty}% {}% {{0}{}{manual}{}{}{}{}{}% {}}% {{The Definitive Computer Manual}% {}{}{4}{}{}{}{}{}}% ]{manual-minimal} \jbbibargs {} {empty} {} {\bibtfont {The Definitive Computer Manual}\bibatsep\ } {\bibhowcited} \jbdoitem {} {} {} \bibAnnoteFile {manual-minimal} \bibitem[{Manmaker\jbdy {1986}}% {}% {{0}{}{manual}{1986}{Silver}{}{}{}% {Silicon Valley\bibbdsep {} 1986}}% {{The Definitive Computer Manual}% {}{}{2}{}{}{}{}{}}% ]{manual-full} \jbbibargs {\bibnf {Manmaker} {Larry} {L.} {} {}} {Larry Manmaker} {au} {\bibtfont {The Definitive Computer Manual}\bibatsep\ \jbedition {Silver~\editionname {}\jbaensep} Silicon Valley\bpubaddr {} Chips-R-Us\bibbdsep {} \aprname\ -\mayname\ \jbssedbd {Silver}1986 \jbnote {1} {This is a full MANUAL entry} } {\bibhowcited} \jbendnote {This is a full MANUAL entry} \jbdoitem {{Manmaker}{Larry}{L.}{}{}} {} {{Chips-R-Us}{}{}{}{}} \bibAnnoteFile {manual-full} \bibitem[{Masterly\jbdy {1988}}% {}% {{1}{}{mastersthesis}{1988\el {a}}{}{}{}{}% {1988\el {a}}}% {{Mastering Thesis Writing}% {}{}{2}{}{}{}{}{}}% ]{mastersthesis-minimal} \jbbibargs {\bibnf {Masterly} {{\'{E}}douard} {{\'{E}}.} {} {}} {{\'{E}}douard Masterly} {au} {\bibtfont {Mastering Thesis Writing}\bibatsep\ \mastersthesisname, \apyformat {Stanford University\bibbdsep {} 1988}} {\bibhowcited} \jbdoitem {{Masterly}{{\'{E}}douard}{{\'{E}}.}{}{}} {} {} \bibAnnoteFile {mastersthesis-minimal} \bibitem[{Masterly\jbdy {1988}}% {}% {{1}{}{mastersthesis}{1988\el {b}}{}{}{}{}% {English Department\bibbdsep {} 1988\el {b}}}% {{Mastering Thesis Writing}% {}{}{2}{}{}{}{}{}}% ]{mastersthesis-full} \jbbibargs {\bibnf {Masterly} {{\'{E}}douard} {{\'{E}}.} {} {}} {{\'{E}}douard Masterly} {au} {\bibtfont {Mastering Thesis Writing}\bibatsep\ Master's project \apyformat {Stanford University, English Department\bibbdsep {} 1988} \jbnote {1} {This is a full MASTERSTHESIS entry} } {\bibhowcited} \jbendnote {This is a full MASTERSTHESIS entry} \jbdoitem {{Masterly}{{\'{E}}douard}{{\'{E}}.}{}{}} {} {} \bibAnnoteFile {mastersthesis-full} \bibitem[{empty}% {}% {{0}{}{misc}{}{}{}{}{}% {}}% {{}% {}{}{4}{}{}{}{}{}}% ]{misc-minimal} \jbbibargs {} {empty} {} { \jbnote {1} {This is a minimal MISC entry} } {\bibhowcited} \jbendnote {This is a minimal MISC entry} \jbdoitem {} {} {} \bibAnnoteFile {misc-minimal} \bibitem[{Missilany\jbdy {1984}}% {}% {{0}{}{misc}{1984}{}{}{}{}% {1984}}% {{Handing out random pamphlets in airports}% {}{}{2}{}{}{}{}{}}% ]{misc-full} \jbbibargs {\bibnf {Missilany} {Joe-Bob} {J.-B.} {} {}} {Joe-Bob Missilany} {au} {\bibtfont {Handing out random pamphlets in airports}\bibatsep\ \apyformat {Handed out at O'Hare\bibbdsep {} \octname\ 1984} \jbnote {1} {This is a full MISC entry} } {\bibhowcited} \jbendnote {This is a full MISC entry} \jbdoitem {{Missilany}{Joe-Bob}{J.-B.}{}{}} {} {} \bibAnnoteFile {misc-full} \bibitem[{Oaho\jbbfsasep Ullman\jbbstasep Yannakakis\jbdy {1983}}% {}% {{1}{}{inproceedings}{1983\el {a}}{}{}{}{}% {1983\el {a}}}% {{On Notions of Information Transfer in {VLSI} Circuits}% {}{}{2}{}{}{}{}{}}% ]{inproceedings-minimal} \jbbibargs {\bibnf {Oaho} {Alfred~V.} {A.~V.} {} {}\Bibbfsasep \bibnf {Ullman} {Jeffrey~D.} {J.~D.} {} {}\Bibbstasep \bibnf {Yannakakis} {Mihalis} {M.} {} {}} {Alfred~V. OahoJeffrey~D. UllmanMihalis Yannakakis} {aus} {\bibapifont {On Notions of Information Transfer in {VLSI} Circuits}\bibatsep\ \incolledformat {}{}{\bibbtfont {Proc. Fifteenth Annual ACM Symposium on the Theory of Computing}\bibatsep\ }{}{} \apyformat {1983\bibel {a}} } {\bibhowcited} \jbdoitem {{Oaho}{Alfred~V.}{A.~V.}{}{}; {Ullman}{Jeffrey~D.}{J.~D.}{}{}; {Yannakakis}{Mihalis}{M.}{}{}} {} {} \bibAnnoteFile {inproceedings-minimal} \bibitem[{Oaho\jbbfsasep Ullman\jbbstasep Yannakakis\jbdy {1983}}% {}% {{1}{}{inproceedings}{1983\el {b}}{}{}{}{133--139}% {Boston\bpubaddr {} Academic Press\bibbdsep {} 1983\el {b}}}% {{On Notions of Information Transfer in {VLSI} Circuits}% {}{}{1}{}{}{}{}{}}% ]{inproceedings-full} \jbbibargs {\bibnf {Oaho} {Alfred~V.} {A.~V.} {} {}\Bibbfsasep \bibnf {Ullman} {Jeffrey~D.} {J.~D.} {} {}\Bibbstasep \bibnf {Yannakakis} {Mihalis} {M.} {} {}} {Alfred~V. OahoJeffrey~D. UllmanMihalis Yannakakis} {aus} {\bibapifont {On Notions of Information Transfer in {VLSI} Circuits}\bibatsep\ \incolledformat {\bibenf {Oz} {Wizard~V.} {W.~V.} {} {}\Bibbtesep \bibenf {Yannakakis} {Mihalis} {M.} {} {}}{\edfont {\editorsname}}{\bibbtfont {Proc. Fifteenth Annual ACM Symposium on the Theory of Computing}\bibatsep\ }{}{} \apyformat {Boston\bpubaddr {} Academic Press\bibbdsep {} \marname\ 1983\bibel {b}} \numberandseries {17}{All ACM Conferences} \jbnote {1} {This is a full INPROCEDINGS entry} \jbPages{133--139}} {\bibhowcited} \jbendnote {This is a full INPROCEDINGS entry} \jbdoitem {{Oaho}{Alfred~V.}{A.~V.}{}{}; {Ullman}{Jeffrey~D.}{J.~D.}{}{}; {Yannakakis}{Mihalis}{M.}{}{}} {{Oz}{Wizard~V.}{W.~V.}{}{}; {Yannakakis}{Mihalis}{M.}{}{}} {{The OX Association for Computing Machinery}{}{}{}{}} \bibAnnoteFile {inproceedings-full} \bibitem[{Oaho\jbbfsasep Ullman\jbbstasep Yannakakis\jbdy {1983}}% {}% {{1}{}{inproceedings}{1983\el {c}}{}{}{}{133--139}% {Boston\bibbdsep {} 1983\el {c}}}% {{On Notions of Information Transfer in {VLSI} Circuits}% {}{}{2}{}{}{}{}{}}% ]{inproceedings-crossref} \jbbibargs {\bibnf {Oaho} {Alfred~V.} {A.~V.} {} {}\Bibbfsasep \bibnf {Ullman} {Jeffrey~D.} {J.~D.} {} {}\Bibbstasep \bibnf {Yannakakis} {Mihalis} {M.} {} {}} {Alfred~V. OahoJeffrey~D. UllmanMihalis Yannakakis} {aus} {\bibapifont {On Notions of Information Transfer in {VLSI} Circuits}\bibatsep\ \protect\jbincollcrossref {whole-proceedings}{} \jbPages{133--139} \jbnote {1} {This is a cross-referencing INPROCEEDINGS entry} } {\bibhowcited} \jbendnote {This is a cross-referencing INPROCEEDINGS entry} \jbdoitem {{Oaho}{Alfred~V.}{A.~V.}{}{}; {Ullman}{Jeffrey~D.}{J.~D.}{}{}; {Yannakakis}{Mihalis}{M.}{}{}} {} {} \bibAnnoteFile {inproceedings-crossref} \bibitem[{empty}% {}% {{0}{}{proceedings}{1983\el {a}}{}{}{}{}% {1983\el {a}}}% {{Proc. Fifteenth Annual Symposium on the Theory of Computing}% {}{}{4}{}{}{}{}{}}% ]{proceedings-minimal} \jbbibargs {} {empty} {} {\bibtfont {Proc. Fifteenth Annual Symposium on the Theory of Computing}\bibatsep\ \apyformat {1983\bibel {a}}} {\bibhowcited} \jbdoitem {} {} {} \bibAnnoteFile {proceedings-minimal} \bibitem[{The OX Association for Computing Machinery}% {}% {{0}{}{proceedings}{1983\el {b}}{}{}{}{}% {Boston\bibbdsep {} 1983\el {b}}}% {{Proc. Fifteenth Annual Symposium on the Theory of Computing}% {}{}{4}{}{}{}{}{}}% ]{whole-proceedings} \jbbibargs {\biblnfont {The OX Association for Computing Machinery \organizationname}} {The OX Association for Computing Machinery} {org} {\bibtfont {Proc. Fifteenth Annual Symposium on the Theory of Computing}\bibatsep\ \apyformat {Boston\bibbdsep {} 1983\bibel {b}} \jbnote {1} {This is a cross-referenced PROCEEDINGS} } {\bibhowcited} \jbendnote {This is a cross-referenced PROCEEDINGS} \jbdoitem {} {} {{The OX Association for Computing Machinery}{}{}{}{}} \bibAnnoteFile {whole-proceedings} \bibitem[{Oz\jbbtesep Yannakakis\jbdy {1983}}% {}% {{0}{}{proceedings}{1983}{}{}{}{}% {Boston\bpubaddr {} Academic Press\bibbdsep {} 1983}}% {{Proc. Fifteenth Annual Symposium on the Theory of Computing}% {}{}{3}{}{}{}{}{}}% ]{proceedings-full} \jbbibargs {\biblenf {Oz} {Wizard~V.} {W.~V.} {} {}\Bibbtesep \biblenf {Yannakakis} {Mihalis} {M.} {} {}\fsted {\editorsname}} {Wizard~V. OzMihalis Yannakakis} {eds} {\snded {\sndeditorsname}\bibtfont {Proc. Fifteenth Annual Symposium on the Theory of Computing}\bibatsep\ The OX Association for Computing Machinery \organizationname {} \numberandseries {17}{All ACM Conferences} \apyformat {Boston\bpubaddr {} Academic Press\bibbdsep {} \marname\ 1983} \jbnote {1} {This is a full PROCEEDINGS entry} } {\bibhowcited} \jbendnote {This is a full PROCEEDINGS entry} \jbdoitem {} {{Oz}{Wizard~V.}{W.~V.}{}{}; {Yannakakis}{Mihalis}{M.}{}{}} {{The OX Association for Computing Machinery}{}{}{}{}} \bibAnnoteFile {proceedings-full} \bibitem[{Phony-Baloney\jbdy {1988}}% {}% {{1}{}{phdthesis}{1988\el {a}}{}{}{}{}% {1988\el {a}}}% {{Fighting Fire with Fire: Festooning {F}rench Phrases}% {}{}{2}{}{}{}{}{}}% ]{phdthesis-minimal} \jbbibargs {\bibnf {Phony-Baloney} {F.~Phidias} {F.~P.} {} {}} {F.~Phidias Phony-Baloney} {au} {\bibtfont {Fighting Fire with Fire: Festooning {F}rench Phrases}\bibatsep\ \phdthesisname, \apyformat {Fanstord University\bibbdsep {} 1988}} {\bibhowcited} \jbdoitem {{Phony-Baloney}{F.~Phidias}{F.~P.}{}{}} {} {} \bibAnnoteFile {phdthesis-minimal} \bibitem[{Phony-Baloney\jbdy {1988}}% {}% {{1}{}{phdthesis}{1988\el {b}}{}{}{}{}% {Department of French\bibbdsep {} 1988\el {b}}}% {{Fighting Fire with Fire: Festooning {F}rench Phrases}% {}{}{2}{}{}{}{}{}}% ]{phdthesis-full} \jbbibargs {\bibnf {Phony-Baloney} {F.~Phidias} {F.~P.} {} {}} {F.~Phidias Phony-Baloney} {au} {\bibtfont {Fighting Fire with Fire: Festooning {F}rench Phrases}\bibatsep\ {PhD} Dissertation \apyformat {Fanstord University, Department of French\bibbdsep {} 1988} \jbnote {1} {This is a full PHDTHESIS entry} } {\bibhowcited} \jbendnote {This is a full PHDTHESIS entry} \jbdoitem {{Phony-Baloney}{F.~Phidias}{F.~P.}{}{}} {} {} \bibAnnoteFile {phdthesis-full} \bibitem[{Terrific\jbdy {1988}}% {}% {{0}{}{techreport}{1988}{}{}{}{}% {1988}}% {{An {$O(n \log n / \! \log\log n)$} Sorting Algorithm}% {}{}{2}{}{}{}{}{}}% ]{techreport-minimal} \jbbibargs {\bibnf {Terrific} {Tom} {T.} {} {}} {Tom Terrific} {au} {\bibtfont {An {$O(n \log n / \! \log\log n)$} Sorting Algorithm}\bibatsep\ \apyformat {Fanstord University\bibbdsep {} 1988} -- \technicalreportname {} } {\bibhowcited} \jbdoitem {{Terrific}{Tom}{T.}{}{}} {} {} \bibAnnoteFile {techreport-minimal} \bibitem[{T{\'{e}}rrific\jbdy {1988}}% {}% {{0}{}{techreport}{1988}{}{}{}{}% {Computer Science Department, Fanstord, California\bibbdsep {} 1988}}% {{An {$O(n \log n / \! \log\log n)$} Sorting Algorithm}% {}{}{2}{}{}{}{}{}}% ]{techreport-full} \jbbibargs {\bibnf {T{\'{e}}rrific} {Tom} {T.} {} {}} {Tom T{\'{e}}rrific} {au} {\bibtfont {An {$O(n \log n / \! \log\log n)$} Sorting Algorithm}\bibatsep\ \apyformat {Computer Science Department, Fanstord, California\bibbdsep {} \octname\ 1988}~(7).\,-- Wishful Research Result \jbnote {1} {This is a full TECHREPORT entry} } {\bibhowcited} \jbendnote {This is a full TECHREPORT entry} \jbdoitem {{T{\'{e}}rrific}{Tom}{T.}{}{}} {} {} \bibAnnoteFile {techreport-full} \bibitem[{{\"{U}}nderwood\jbbfsasep {\~N}et\jbbstasep {\={P}}ot}% {}% {{1}{}{unpublished}{}{}{}{}{}% {}}% {{Lower Bounds for Wishful Research Results}% {}{}{2}{}{}{}{}{}}% ]{unpublished-minimal} \jbbibargs {\bibnf {{\"{U}}nderwood} {Ulrich} {U.} {} {}\Bibbfsasep \bibnf {{\~N}et} {Ned} {N.} {} {}\Bibbstasep \bibnf {{\={P}}ot} {Paul} {P.} {} {}} {Ulrich {\"{U}}nderwoodNed {\~N}etPaul {\={P}}ot} {aus} {\bibtfont {Lower Bounds for Wishful Research Results}\bibatsep\ \jbnote {1} {Talk at Fanstord University (this is a minimal UNPUBLISHED entry)} } {\bibhowcited} \jbendnote {Talk at Fanstord University (this is a minimal UNPUBLISHED entry)} \jbdoitem {{{\"{U}}nderwood}{Ulrich}{U.}{}{}; {{\~N}et}{Ned}{N.}{}{}; {{\={P}}ot}{Paul}{P.}{}{}} {} {} \bibAnnoteFile {unpublished-minimal} \bibitem[{{\"{U}}nderwood\jbbfsasep {\~N}et\jbbstasep {\={P}}ot\jbdy {1988}}% {}% {{1}{}{unpublished}{1988}{}{}{}{}% {1988}}% {{Lower Bounds for Wishful Research Results}% {}{}{2}{}{}{}{}{}}% ]{unpublished-full} \jbbibargs {\bibnf {{\"{U}}nderwood} {Ulrich} {U.} {} {}\Bibbfsasep \bibnf {{\~N}et} {Ned} {N.} {} {}\Bibbstasep \bibnf {{\={P}}ot} {Paul} {P.} {} {}} {Ulrich {\"{U}}nderwoodNed {\~N}etPaul {\={P}}ot} {aus} {\bibtfont {Lower Bounds for Wishful Research Results}\bibatsep\ \novname\ , \decname\ 1988 \jbnote {1} {Talk at Fanstord University (this is a full UNPUBLISHED entry)} } {\bibhowcited} \jbendnote {Talk at Fanstord University (this is a full UNPUBLISHED entry)} \jbdoitem {{{\"{U}}nderwood}{Ulrich}{U.}{}{}; {{\~N}et}{Ned}{N.}{}{}; {{\={P}}ot}{Paul}{P.}{}{}} {} {} \bibAnnoteFile {unpublished-full} \bibitem[{empty}% {}% {{0}{}{misc}{}{}{}{}{}% {}}% {{}% {}{}{4}{}{}{}{}{}}% ]{random-note-crossref} \jbbibargs {} {empty} {} { \jbnote {1} {Volume~2 is listed under Knuth \cite{book-full}} } {\bibhowcited} \jbendnote {Volume~2 is listed under Knuth \cite{book-full}} \jbdoitem {} {} {} \bibAnnoteFile {random-note-crossref} \end{thebibliography} ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.566612 pybtex-0.24.0/tests/data/xampl_mixed.bib0000644000175000001440000002362500000000000017727 0ustar00agusers00000000000000% Copyright (C) 1988, 2010 Oren Patashnik. % Unlimited copying and redistribution of this file are permitted if it % is unmodified. Modifications (and their redistribution) are also % permitted, as long as the resulting file is renamed. @preamBle{ "\newcommand{\noopsort}[1]{} " # "\newcommand{\printfirst}[2]{#1} " # "\newcommand{\singleletter}[1]{#1} " # "\newcommand{\switchargs}[2]{#2#1} " } @ArTIclE{arTicLe-MiniMAl, AuTHoR = {L[eslie] A. Aamport}, TiTLe = {The Gnats and Gnus Document Preparation System}, jouRnaL = {\mbox{G-Animal's} Journal}, Year = 1986, } @ArTiCLe{artIclE-fulL, AUThOr = {L[eslie] A. Aamport}, titlE = {The Gnats and Gnus Document Preparation System}, journal = {\mbox{G-Animal's} Journal}, yEaR = 1986, VOlUMe = 41, nUMber = 7, pagEs = "73+", mONth = Jul, nOte = "This is a full ARTICLE entry", } ThE key field is hERE TO OvErRIdE The kEY fiELD iN The jOURNaL BeING CrOSS rEferEnCeD (so is ThE nOTE fiEld, In aDditioN to Its ImPaRTiNg inFoRmAtioN). @ARTiClE{aRtIcLE-crOssREf, CROsSREF = {WHOLE-JOURNAL}, kEy = "", author = {L[eslie] A. Aamport}, title = {The Gnats and Gnus Document Preparation System}, pAgeS = "73+", NOte = "This is a cross-referencing ARTICLE entry", } @aRtIcLe{WholE-journAl, kEy = "GAJ", JourNal = {\mbox{G-Animal's} Journal}, yeAr = 1986, vOluME = 41, numbEr = 7, mOnTh = jUl, note = {The entire issue is devoted to gnats and gnus (this entry is a cross-referenced ARTICLE (journal))}, } @InBOoK{iNbOOk-MiNiMal, authOr = "Donald E. Knuth", titLe = "Fundamental Algorithms", PUBLishEr = "Addison-Wesley", YeAR = "{\noopsort{1973b}}1973", ChApter = "1.2", } @inBOOk{iNbOok-full, AUthOR = "Donald E. Knuth", tiTLe = "Fundamental Algorithms", VolUMe = 1, serIEs = "The Art of Computer Programming", pubLisher = "Addison-Wesley", addResS = "Reading, Massachusetts", eDiTiOn = "Second", mONth = "10~" # jaN, yeaR = "{\noopsort{1973b}}1973", type = "Section", ChapteR = "1.2", paGES = "10--119", noTe = "This is a full INBOOK entry", } @iNBOOk{inBoOk-cRossRef, cRossrEf = "whole-set", Title = "Fundamental Algorithms", vOluMe = 1, serIEs = "The Art of Computer Programming", EdITioN = "Second", year = "{\noopsort{1973b}}1973", TYpE = "Section", CHAPtEr = "1.2", NOTE = "This is a cross-referencing INBOOK entry", } @BOok{Book-minimal, aUthOr = "Donald E. Knuth", TitlE = "Seminumerical Algorithms", pUbLIsheR = "Addison-Wesley", yeAr = "{\noopsort{1973c}}1981", } @BOoK{boOK-Full, AuThor = "Donald E. Knuth", tiTLE = "Seminumerical Algorithms", volumE = 2, Series = "The Art of Computer Programming", pUbLIshEr = "Addison-Wesley", AddresS = "Reading, Massachusetts", eDitioN = "Second", MOnTh = "10~" # jAn, year = "{\noopsort{1973c}}1981", noTe = "This is a full BOOK entry", } @boOK{bOOk-CroSsref, CROsSRef = "whole-set", titLE = "Seminumerical Algorithms", VOLume = 2, serIEs = "The Art of Computer Programming", EDITIon = "Second", yeAR = "{\noopsort{1973c}}1981", nOTE = "This is a cross-referencing BOOK entry", } @BOok{Whole-SEt, AUThOR = "Donald E. Knuth", PublisheR = "Addison-Wesley", TitLe = "The Art of Computer Programming", SerIes = "Four volumes", yEaR = "{\noopsort{1973a}}{\switchargs{--90}{1968}}", nOte = "Seven volumes planned (this is a cross-referenced set of BOOKs)", } @bOoklET{BoOkleT-minImAl, keY = "Kn{\printfirst{v}{1987}}", tiTle = "The Programming of Computer Art", } @BoOKLEt{booKLeT-fuLl, autHoR = "Jill C. Knvth", title = "The Programming of Computer Art", HowpUBlisHED = "Vernier Art Center", aDdreSs = "Stanford, California", Month = fEb, YeaR = 1988, nOte = "This is a full BOOKLET entry", } @IncOLLecTiOn{iNcoLLEcTIOn-MiniMal, AutHor = "Daniel D. Lincoll", TiTLE = "Semigroups of Recurrences", boOktItLE = "High Speed Computer and Algorithm Organization", pUblisHer = "Academic Press", YEar = 1977, } @INCoLlecTiON{iNcoLlection-FUll, author = "Daniel D. Lincoll", TitlE = "Semigroups of Recurrences", editoR = "David J. Lipcoll and D. H. Lawrie and A. H. Sameh", booktiTlE = "High Speed Computer and Algorithm Organization", nUmbER = 23, sErIeS = "Fast Computers", cHapTEr = 3, tyPe = "Part", pagEs = "179--183", PubLishEr = "Academic Press", aDDreSS = "New York", eDition = "Third", monTh = SeP, yeAr = 1977, noTe = "This is a full INCOLLECTION entry", } @InCollectiOn{inCoLlectIon-CroSsRef, CroSSREF = "whole-collection", AUthOR = "Daniel D. Lincoll", tiTlE = "Semigroups of Recurrences", PAGes = "179--183", note = "This is a cross-referencing INCOLLECTION entry", } @bOok{whOle-CoLlECTion, EdITor = "David J. Lipcoll and D. H. Lawrie and A. H. Sameh", TItle = "High Speed Computer and Algorithm Organization", bOoktitLE = "High Speed Computer and Algorithm Organization", nUmBer = 23, seRies = "Fast Computers", pUblIShER = "Academic Press", aDdRESs = "New York", ediTION = "Third", Month = SeP, YeaR = 1977, nOte = "This is a cross-referenced BOOK (collection) entry", } @MAnUAl{MaNuAl-MInImal, keY = "Manmaker", titLe = "The Definitive Computer Manual", } @mAnuaL{manual-Full, AuThOr = "Larry Manmaker", tiTle = "The Definitive Computer Manual", orGanizatioN = "Chips-R-Us", AdDReSS = "Silicon Valley", ediTIoN = "Silver", MoNth = aPr # "-" # May, YEaR = 1986, nOte = "This is a full MANUAL entry", } @MasteRsThesIs{MAstersThesIs-miNImAl, author = "{\'{E}}douard Masterly", titLE = "Mastering Thesis Writing", schOoL = "Stanford University", yeaR = 1988, } @MaSteRSTHesiS{MasterSTheSIs-FULL, aUtHOr = "{\'{E}}douard Masterly", TiTle = "Mastering Thesis Writing", ScHoOL = "Stanford University", TYPe = "Master's project", adDreSS = "English Department", month = juN # "-" # aUg, yeAr = 1988, NOte = "This is a full MASTERSTHESIS entry", } @miSC{misc-mINiMAl, KEy = "Missilany", nOte = "This is a minimal MISC entry", } @Misc{MIsc-fuLl, AuThOr = "Joe-Bob Missilany", tITle = "Handing out random pamphlets in airports", howpuBLiShED = "Handed out at O'Hare", MONtH = ocT, yeaR = 1984, nOtE = "This is a full MISC entry", } @StRING{SToC-Key = "OX{\singleletter{stoc}}"} @stRInG{acm = "The OX Association for Computing Machinery"} @STrinG{Stoc = " Symposium on the Theory of Computing"} @iNProcEedInGS{iNPRoCEEdinGs-MiNIMaL, AUThoR = "Alfred V. Oaho and Jeffrey D. Ullman and Mihalis Yannakakis", titLe = "On Notions of Information Transfer in {VLSI} Circuits", BooktItlE = "Proc. Fifteenth Annual ACM" # sToC, YeAR = 1983, } @inproCEeDINgs{inprocEEdIngS-FUlL, aUtHOr = "Alfred V. Oaho and Jeffrey D. Ullman and Mihalis Yannakakis", title = "On Notions of Information Transfer in {VLSI} Circuits", eDItoR = "Wizard V. Oz and Mihalis Yannakakis", BOOktiTLE = "Proc. Fifteenth Annual ACM" # StOc, NUMBer = 17, sERiEs = "All ACM Conferences", pages = "133--139", mONTh = mAr, yeAr = 1983, ADDREsS = "Boston", orgAnIZatIon = acm, publISHER = "Academic Press", nOte = "This is a full INPROCEDINGS entry", } @iNprOcEediNGs{InproceedINgS-cROssrEf, cROSSrEF = "whole-proceedings", aUtHOR = "Alfred V. Oaho and Jeffrey D. Ullman and Mihalis Yannakakis", titLE = "On Notions of Information Transfer in {VLSI} Circuits", ORgaNiZAtioN = "", PaGEs = "133--139", NOte = "This is a cross-referencing INPROCEEDINGS entry", } @pROceEDingS{ProCEEDInGs-miNIMAl, kEy = sTOC-key, TitLe = "Proc. Fifteenth Annual" # STOC, YEAR = 1983, } @pRocEEDiNgS{pRoceedINGS-fuLl, editOr = "Wizard V. Oz and Mihalis Yannakakis", tiTLe = "Proc. Fifteenth Annual" # stOC, NUMBeR = 17, SeRieS = "All ACM Conferences", monTH = MaR, YEAr = 1983, adDress = "Boston", OrgAnizaTIoN = ACM, puBliShEr = "Academic Press", notE = "This is a full PROCEEDINGS entry", } @PRoCeEDINGs{whole-PrOCeEdIngs, key = sTOC-keY, oRGaNIzAtIoN = aCm, TitlE = "Proc. Fifteenth Annual" # sToc, ADDrEss = "Boston", yEAr = 1983, BOoktiTLe = "Proc. Fifteenth Annual ACM" # Stoc, NOte = "This is a cross-referenced PROCEEDINGS", } @PhDthEsIs{phdtHESIs-mInimAl, AUThOR = "F. Phidias Phony-Baloney", tItle = "Fighting Fire with Fire: Festooning {F}rench Phrases", SChOOl = "Fanstord University", yeaR = 1988, } @PHdthesIs{phdtHESIs-full, autHoR = "F. Phidias Phony-Baloney", tiTlE = "Fighting Fire with Fire: Festooning {F}rench Phrases", sCHool = "Fanstord University", TYpE = "{PhD} Dissertation", AddReSs = "Department of French", mOnTH = juN # "-" # Aug, yEAR = 1988, NOtE = "This is a full PHDTHESIS entry", } @TecHrEpORT{tEchrEport-miNIMAl, aUthoR = "Tom Terrific", tITlE = "An {$O(n \log n / \! \log\log n)$} Sorting Algorithm", iNstitutIon = "Fanstord University", yeAR = 1988, } @TeCHrEPOrT{TEChreport-fUll, aUtHOr = "Tom T{\'{e}}rrific", tiTlE = "An {$O(n \log n / \! \log\log n)$} Sorting Algorithm", inSTiTUTion = "Fanstord University", typE = "Wishful Research Result", NUmBeR = "7", AdDrEsS = "Computer Science Department, Fanstord, California", month = oCT, YeAR = 1988, NOtE = "This is a full TECHREPORT entry", } @UnpUBlisHeD{uNpubLiSHed-minIMal, aUtHOr = "Ulrich {\"{U}}nderwood and Ned {\~N}et and Paul {\={P}}ot", TitLE = "Lower Bounds for Wishful Research Results", note = "Talk at Fanstord University (this is a minimal UNPUBLISHED entry)", } @uNpublISHed{unpubLIshEd-fulL, aUtHor = "Ulrich {\"{U}}nderwood and Ned {\~N}et and Paul {\={P}}ot", TitlE = "Lower Bounds for Wishful Research Results", month = nOv # ", " # dec, yEar = 1988, nOTe = "Talk at Fanstord University (this is a full UNPUBLISHED entry)", } @misC{ranDom-note-cRoSsREf, Key = {Volume-2}, noTE = "Volume~2 is listed under Knuth \cite{book-full}" } ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.576612 pybtex-0.24.0/tests/data/xampl_mixed_unsrt_mixed.aux0000644000175000001440000000201200000000000022374 0ustar00agusers00000000000000\citation{article-minimal} \citation{article-full} \citation{article-crossref} \citation{whole-journal} \citation{inbook-minimal} \citation{inbook-full} \citation{inbook-crossref} \citation{book-minimal} \citation{book-full} \citation{book-crossref} \citation{whole-set} \citation{booklet-minimal} \citation{booklet-full} \citation{incollection-minimal} \citation{incollection-full} \citation{incollection-crossref} \citation{whole-collection} \citation{manual-minimal} \citation{manual-full} \citation{mastersthesis-minimal} \citation{mastersthesis-full} \citation{misc-minimal} \citation{misc-full} \citation{inproceedings-minimal} \citation{inproceedings-full} \citation{inproceedings-crossref} \citation{proceedings-minimal} \citation{proceedings-full} \citation{whole-proceedings} \citation{phdthesis-minimal} \citation{phdthesis-full} \citation{techreport-minimal} \citation{techreport-full} \citation{unpublished-minimal} \citation{unpublished-full} \citation{random-note-crossref} \bibdata{xampl_mixed} \bibstyle{unsrt_mixed} ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.579612 pybtex-0.24.0/tests/data/xampl_mixed_unsrt_mixed.bibtex.bbl0000644000175000001440000001724300000000000023626 0ustar00agusers00000000000000\newcommand{\noopsort}[1]{} \newcommand{\printfirst}[2]{#1} \newcommand{\singleletter}[1]{#1} \newcommand{\switchargs}[2]{#2#1} \begin{thebibliography}{10} \bibitem{article-minimal} L[eslie]~A. Aamport. \newblock The gnats and gnus document preparation system. \newblock {\em \mbox{G-Animal's} Journal}, 1986. \bibitem{article-full} L[eslie]~A. Aamport. \newblock The gnats and gnus document preparation system. \newblock {\em \mbox{G-Animal's} Journal}, 41(7):73+, July 1986. \newblock This is a full ARTICLE entry. \bibitem{article-crossref} L[eslie]~A. Aamport. \newblock The gnats and gnus document preparation system. \newblock In {\em \mbox{G-Animal's} Journal\/} \cite{whole-journal}, pages 73+. \newblock This is a cross-referencing ARTICLE entry. \bibitem{whole-journal} {\em \mbox{G-Animal's} Journal}, 41(7), July 1986. \newblock The entire issue is devoted to gnats and gnus (this entry is a cross-referenced ARTICLE (journal)). \bibitem{inbook-minimal} Donald~E. Knuth. \newblock {\em Fundamental Algorithms}, chapter 1.2. \newblock Addison-Wesley, {\noopsort{1973b}}1973. \bibitem{inbook-full} Donald~E. Knuth. \newblock {\em Fundamental Algorithms}, volume~1 of {\em The Art of Computer Programming}, section 1.2, pages 10--119. \newblock Addison-Wesley, Reading, Massachusetts, second edition, 10~January {\noopsort{1973b}}1973. \newblock This is a full INBOOK entry. \bibitem{inbook-crossref} Donald~E. Knuth. \newblock {\em Fundamental Algorithms}, section 1.2. \newblock Volume~1 of {\em The Art of Computer Programming\/} \cite{whole-set}, second edition, {\noopsort{1973b}}1973. \newblock This is a cross-referencing INBOOK entry. \bibitem{book-minimal} Donald~E. Knuth. \newblock {\em Seminumerical Algorithms}. \newblock Addison-Wesley, {\noopsort{1973c}}1981. \bibitem{book-full} Donald~E. Knuth. \newblock {\em Seminumerical Algorithms}, volume~2 of {\em The Art of Computer Programming}. \newblock Addison-Wesley, Reading, Massachusetts, second edition, 10~January {\noopsort{1973c}}1981. \newblock This is a full BOOK entry. \bibitem{book-crossref} Donald~E. Knuth. \newblock {\em Seminumerical Algorithms}. \newblock Volume~2 of {\em The Art of Computer Programming\/} \cite{whole-set}, second edition, {\noopsort{1973c}}1981. \newblock This is a cross-referencing BOOK entry. \bibitem{whole-set} Donald~E. Knuth. \newblock {\em The Art of Computer Programming}. \newblock Four volumes. Addison-Wesley, {\noopsort{1973a}}{\switchargs{--90}{1968}}. \newblock Seven volumes planned (this is a cross-referenced set of BOOKs). \bibitem{booklet-minimal} The programming of computer art. \bibitem{booklet-full} Jill~C. Knvth. \newblock The programming of computer art. \newblock Vernier Art Center, Stanford, California, February 1988. \newblock This is a full BOOKLET entry. \bibitem{incollection-minimal} Daniel~D. Lincoll. \newblock Semigroups of recurrences. \newblock In {\em High Speed Computer and Algorithm Organization}. Academic Press, 1977. \bibitem{incollection-full} Daniel~D. Lincoll. \newblock Semigroups of recurrences. \newblock In David~J. Lipcoll, D.~H. Lawrie, and A.~H. Sameh, editors, {\em High Speed Computer and Algorithm Organization}, number~23 in Fast Computers, part~3, pages 179--183. Academic Press, New York, third edition, September 1977. \newblock This is a full INCOLLECTION entry. \bibitem{incollection-crossref} Daniel~D. Lincoll. \newblock Semigroups of recurrences. \newblock In Lipcoll et~al. \cite{whole-collection}, pages 179--183. \newblock This is a cross-referencing INCOLLECTION entry. \bibitem{whole-collection} David~J. Lipcoll, D.~H. Lawrie, and A.~H. Sameh, editors. \newblock {\em High Speed Computer and Algorithm Organization}. \newblock Number~23 in Fast Computers. Academic Press, New York, third edition, September 1977. \newblock This is a cross-referenced BOOK (collection) entry. \bibitem{manual-minimal} {\em The Definitive Computer Manual}. \bibitem{manual-full} Larry Manmaker. \newblock {\em The Definitive Computer Manual}. \newblock Chips-R-Us, Silicon Valley, silver edition, April-May 1986. \newblock This is a full MANUAL entry. \bibitem{mastersthesis-minimal} {\'{E}}douard Masterly. \newblock Mastering thesis writing. \newblock Master's thesis, Stanford University, 1988. \bibitem{mastersthesis-full} {\'{E}}douard Masterly. \newblock Mastering thesis writing. \newblock Master's project, Stanford University, English Department, June-August 1988. \newblock This is a full MASTERSTHESIS entry. \bibitem{misc-minimal} This is a minimal MISC entry. \bibitem{misc-full} Joe-Bob Missilany. \newblock Handing out random pamphlets in airports. \newblock Handed out at O'Hare, October 1984. \newblock This is a full MISC entry. \bibitem{inproceedings-minimal} Alfred~V. Oaho, Jeffrey~D. Ullman, and Mihalis Yannakakis. \newblock On notions of information transfer in {VLSI} circuits. \newblock In {\em Proc. Fifteenth Annual ACM Symposium on the Theory of Computing}, 1983. \bibitem{inproceedings-full} Alfred~V. Oaho, Jeffrey~D. Ullman, and Mihalis Yannakakis. \newblock On notions of information transfer in {VLSI} circuits. \newblock In Wizard~V. Oz and Mihalis Yannakakis, editors, {\em Proc. Fifteenth Annual ACM Symposium on the Theory of Computing}, number~17 in All ACM Conferences, pages 133--139, Boston, March 1983. The OX Association for Computing Machinery, Academic Press. \newblock This is a full INPROCEDINGS entry. \bibitem{inproceedings-crossref} Alfred~V. Oaho, Jeffrey~D. Ullman, and Mihalis Yannakakis. \newblock On notions of information transfer in {VLSI} circuits. \newblock In OX{\singleletter{stoc}} \cite{whole-proceedings}, pages 133--139. \newblock This is a cross-referencing INPROCEEDINGS entry. \bibitem{proceedings-minimal} {\em Proc. Fifteenth Annual Symposium on the Theory of Computing}, 1983. \bibitem{proceedings-full} Wizard~V. Oz and Mihalis Yannakakis, editors. \newblock {\em Proc. Fifteenth Annual Symposium on the Theory of Computing}, number~17 in All ACM Conferences, Boston, March 1983. The OX Association for Computing Machinery, Academic Press. \newblock This is a full PROCEEDINGS entry. \bibitem{whole-proceedings} The OX Association for Computing Machinery. \newblock {\em Proc. Fifteenth Annual Symposium on the Theory of Computing}, Boston, 1983. \newblock This is a cross-referenced PROCEEDINGS. \bibitem{phdthesis-minimal} F.~Phidias Phony-Baloney. \newblock {\em Fighting Fire with Fire: Festooning {F}rench Phrases}. \newblock PhD thesis, Fanstord University, 1988. \bibitem{phdthesis-full} F.~Phidias Phony-Baloney. \newblock {\em Fighting Fire with Fire: Festooning {F}rench Phrases}. \newblock {PhD} dissertation, Fanstord University, Department of French, June-August 1988. \newblock This is a full PHDTHESIS entry. \bibitem{techreport-minimal} Tom Terrific. \newblock An {$O(n \log n / \! \log\log n)$} sorting algorithm. \newblock Technical report, Fanstord University, 1988. \bibitem{techreport-full} Tom T{\'{e}}rrific. \newblock An {$O(n \log n / \! \log\log n)$} sorting algorithm. \newblock Wishful Research Result~7, Fanstord University, Computer Science Department, Fanstord, California, October 1988. \newblock This is a full TECHREPORT entry. \bibitem{unpublished-minimal} Ulrich {\"{U}}nderwood, Ned {\~N}et, and Paul {\={P}}ot. \newblock Lower bounds for wishful research results. \newblock Talk at Fanstord University (this is a minimal UNPUBLISHED entry). \bibitem{unpublished-full} Ulrich {\"{U}}nderwood, Ned {\~N}et, and Paul {\={P}}ot. \newblock Lower bounds for wishful research results. \newblock Talk at Fanstord University (this is a full UNPUBLISHED entry), November, December 1988. \bibitem{random-note-crossref} Volume~2 is listed under Knuth \cite{book-full}. \end{thebibliography} ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.569612 pybtex-0.24.0/tests/data/xampl_plain.bibtex.bbl0000644000175000001440000001724300000000000021202 0ustar00agusers00000000000000\newcommand{\noopsort}[1]{} \newcommand{\printfirst}[2]{#1} \newcommand{\singleletter}[1]{#1} \newcommand{\switchargs}[2]{#2#1} \begin{thebibliography}{10} \bibitem{article-minimal} L[eslie]~A. Aamport. \newblock The gnats and gnus document preparation system. \newblock {\em \mbox{G-Animal's} Journal}, 1986. \bibitem{article-full} L[eslie]~A. Aamport. \newblock The gnats and gnus document preparation system. \newblock {\em \mbox{G-Animal's} Journal}, 41(7):73+, July 1986. \newblock This is a full ARTICLE entry. \bibitem{article-crossref} L[eslie]~A. Aamport. \newblock The gnats and gnus document preparation system. \newblock In {\em \mbox{G-Animal's} Journal\/} \cite{whole-journal}, pages 73+. \newblock This is a cross-referencing ARTICLE entry. \bibitem{whole-journal} {\em \mbox{G-Animal's} Journal}, 41(7), July 1986. \newblock The entire issue is devoted to gnats and gnus (this entry is a cross-referenced ARTICLE (journal)). \bibitem{whole-set} Donald~E. Knuth. \newblock {\em The Art of Computer Programming}. \newblock Four volumes. Addison-Wesley, {\noopsort{1973a}}{\switchargs{--90}{1968}}. \newblock Seven volumes planned (this is a cross-referenced set of BOOKs). \bibitem{inbook-minimal} Donald~E. Knuth. \newblock {\em Fundamental Algorithms}, chapter 1.2. \newblock Addison-Wesley, {\noopsort{1973b}}1973. \bibitem{inbook-full} Donald~E. Knuth. \newblock {\em Fundamental Algorithms}, volume~1 of {\em The Art of Computer Programming}, section 1.2, pages 10--119. \newblock Addison-Wesley, Reading, Massachusetts, second edition, 10~January {\noopsort{1973b}}1973. \newblock This is a full INBOOK entry. \bibitem{inbook-crossref} Donald~E. Knuth. \newblock {\em Fundamental Algorithms}, section 1.2. \newblock Volume~1 of {\em The Art of Computer Programming\/} \cite{whole-set}, second edition, {\noopsort{1973b}}1973. \newblock This is a cross-referencing INBOOK entry. \bibitem{book-minimal} Donald~E. Knuth. \newblock {\em Seminumerical Algorithms}. \newblock Addison-Wesley, {\noopsort{1973c}}1981. \bibitem{book-full} Donald~E. Knuth. \newblock {\em Seminumerical Algorithms}, volume~2 of {\em The Art of Computer Programming}. \newblock Addison-Wesley, Reading, Massachusetts, second edition, 10~January {\noopsort{1973c}}1981. \newblock This is a full BOOK entry. \bibitem{book-crossref} Donald~E. Knuth. \newblock {\em Seminumerical Algorithms}. \newblock Volume~2 of {\em The Art of Computer Programming\/} \cite{whole-set}, second edition, {\noopsort{1973c}}1981. \newblock This is a cross-referencing BOOK entry. \bibitem{booklet-minimal} The programming of computer art. \bibitem{booklet-full} Jill~C. Knvth. \newblock The programming of computer art. \newblock Vernier Art Center, Stanford, California, February 1988. \newblock This is a full BOOKLET entry. \bibitem{incollection-minimal} Daniel~D. Lincoll. \newblock Semigroups of recurrences. \newblock In {\em High Speed Computer and Algorithm Organization}. Academic Press, 1977. \bibitem{incollection-full} Daniel~D. Lincoll. \newblock Semigroups of recurrences. \newblock In David~J. Lipcoll, D.~H. Lawrie, and A.~H. Sameh, editors, {\em High Speed Computer and Algorithm Organization}, number~23 in Fast Computers, part~3, pages 179--183. Academic Press, New York, third edition, September 1977. \newblock This is a full INCOLLECTION entry. \bibitem{incollection-crossref} Daniel~D. Lincoll. \newblock Semigroups of recurrences. \newblock In Lipcoll et~al. \cite{whole-collection}, pages 179--183. \newblock This is a cross-referencing INCOLLECTION entry. \bibitem{whole-collection} David~J. Lipcoll, D.~H. Lawrie, and A.~H. Sameh, editors. \newblock {\em High Speed Computer and Algorithm Organization}. \newblock Number~23 in Fast Computers. Academic Press, New York, third edition, September 1977. \newblock This is a cross-referenced BOOK (collection) entry. \bibitem{manual-minimal} {\em The Definitive Computer Manual}. \bibitem{manual-full} Larry Manmaker. \newblock {\em The Definitive Computer Manual}. \newblock Chips-R-Us, Silicon Valley, silver edition, April-May 1986. \newblock This is a full MANUAL entry. \bibitem{mastersthesis-minimal} {\'{E}}douard Masterly. \newblock Mastering thesis writing. \newblock Master's thesis, Stanford University, 1988. \bibitem{mastersthesis-full} {\'{E}}douard Masterly. \newblock Mastering thesis writing. \newblock Master's project, Stanford University, English Department, June-August 1988. \newblock This is a full MASTERSTHESIS entry. \bibitem{misc-minimal} This is a minimal MISC entry. \bibitem{misc-full} Joe-Bob Missilany. \newblock Handing out random pamphlets in airports. \newblock Handed out at O'Hare, October 1984. \newblock This is a full MISC entry. \bibitem{inproceedings-minimal} Alfred~V. Oaho, Jeffrey~D. Ullman, and Mihalis Yannakakis. \newblock On notions of information transfer in {VLSI} circuits. \newblock In {\em Proc. Fifteenth Annual ACM Symposium on the Theory of Computing}, 1983. \bibitem{inproceedings-full} Alfred~V. Oaho, Jeffrey~D. Ullman, and Mihalis Yannakakis. \newblock On notions of information transfer in {VLSI} circuits. \newblock In Wizard~V. Oz and Mihalis Yannakakis, editors, {\em Proc. Fifteenth Annual ACM Symposium on the Theory of Computing}, number~17 in All ACM Conferences, pages 133--139, Boston, March 1983. The OX Association for Computing Machinery, Academic Press. \newblock This is a full INPROCEDINGS entry. \bibitem{inproceedings-crossref} Alfred~V. Oaho, Jeffrey~D. Ullman, and Mihalis Yannakakis. \newblock On notions of information transfer in {VLSI} circuits. \newblock In OX{\singleletter{stoc}} \cite{whole-proceedings}, pages 133--139. \newblock This is a cross-referencing INPROCEEDINGS entry. \bibitem{whole-proceedings} The OX Association for Computing Machinery. \newblock {\em Proc. Fifteenth Annual Symposium on the Theory of Computing}, Boston, 1983. \newblock This is a cross-referenced PROCEEDINGS. \bibitem{proceedings-minimal} {\em Proc. Fifteenth Annual Symposium on the Theory of Computing}, 1983. \bibitem{proceedings-full} Wizard~V. Oz and Mihalis Yannakakis, editors. \newblock {\em Proc. Fifteenth Annual Symposium on the Theory of Computing}, number~17 in All ACM Conferences, Boston, March 1983. The OX Association for Computing Machinery, Academic Press. \newblock This is a full PROCEEDINGS entry. \bibitem{phdthesis-minimal} F.~Phidias Phony-Baloney. \newblock {\em Fighting Fire with Fire: Festooning {F}rench Phrases}. \newblock PhD thesis, Fanstord University, 1988. \bibitem{phdthesis-full} F.~Phidias Phony-Baloney. \newblock {\em Fighting Fire with Fire: Festooning {F}rench Phrases}. \newblock {PhD} dissertation, Fanstord University, Department of French, June-August 1988. \newblock This is a full PHDTHESIS entry. \bibitem{techreport-minimal} Tom Terrific. \newblock An {$O(n \log n / \! \log\log n)$} sorting algorithm. \newblock Technical report, Fanstord University, 1988. \bibitem{techreport-full} Tom T{\'{e}}rrific. \newblock An {$O(n \log n / \! \log\log n)$} sorting algorithm. \newblock Wishful Research Result~7, Fanstord University, Computer Science Department, Fanstord, California, October 1988. \newblock This is a full TECHREPORT entry. \bibitem{unpublished-minimal} Ulrich {\"{U}}nderwood, Ned {\~N}et, and Paul {\={P}}ot. \newblock Lower bounds for wishful research results. \newblock Talk at Fanstord University (this is a minimal UNPUBLISHED entry). \bibitem{unpublished-full} Ulrich {\"{U}}nderwood, Ned {\~N}et, and Paul {\={P}}ot. \newblock Lower bounds for wishful research results. \newblock Talk at Fanstord University (this is a full UNPUBLISHED entry), November, December 1988. \bibitem{random-note-crossref} Volume~2 is listed under Knuth \cite{book-full}. \end{thebibliography} ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.574612 pybtex-0.24.0/tests/data/xampl_unsrt.bibtex.bbl0000644000175000001440000001724300000000000021252 0ustar00agusers00000000000000\newcommand{\noopsort}[1]{} \newcommand{\printfirst}[2]{#1} \newcommand{\singleletter}[1]{#1} \newcommand{\switchargs}[2]{#2#1} \begin{thebibliography}{10} \bibitem{article-minimal} L[eslie]~A. Aamport. \newblock The gnats and gnus document preparation system. \newblock {\em \mbox{G-Animal's} Journal}, 1986. \bibitem{article-full} L[eslie]~A. Aamport. \newblock The gnats and gnus document preparation system. \newblock {\em \mbox{G-Animal's} Journal}, 41(7):73+, July 1986. \newblock This is a full ARTICLE entry. \bibitem{article-crossref} L[eslie]~A. Aamport. \newblock The gnats and gnus document preparation system. \newblock In {\em \mbox{G-Animal's} Journal\/} \cite{whole-journal}, pages 73+. \newblock This is a cross-referencing ARTICLE entry. \bibitem{whole-journal} {\em \mbox{G-Animal's} Journal}, 41(7), July 1986. \newblock The entire issue is devoted to gnats and gnus (this entry is a cross-referenced ARTICLE (journal)). \bibitem{inbook-minimal} Donald~E. Knuth. \newblock {\em Fundamental Algorithms}, chapter 1.2. \newblock Addison-Wesley, {\noopsort{1973b}}1973. \bibitem{inbook-full} Donald~E. Knuth. \newblock {\em Fundamental Algorithms}, volume~1 of {\em The Art of Computer Programming}, section 1.2, pages 10--119. \newblock Addison-Wesley, Reading, Massachusetts, second edition, 10~January {\noopsort{1973b}}1973. \newblock This is a full INBOOK entry. \bibitem{inbook-crossref} Donald~E. Knuth. \newblock {\em Fundamental Algorithms}, section 1.2. \newblock Volume~1 of {\em The Art of Computer Programming\/} \cite{whole-set}, second edition, {\noopsort{1973b}}1973. \newblock This is a cross-referencing INBOOK entry. \bibitem{book-minimal} Donald~E. Knuth. \newblock {\em Seminumerical Algorithms}. \newblock Addison-Wesley, {\noopsort{1973c}}1981. \bibitem{book-full} Donald~E. Knuth. \newblock {\em Seminumerical Algorithms}, volume~2 of {\em The Art of Computer Programming}. \newblock Addison-Wesley, Reading, Massachusetts, second edition, 10~January {\noopsort{1973c}}1981. \newblock This is a full BOOK entry. \bibitem{book-crossref} Donald~E. Knuth. \newblock {\em Seminumerical Algorithms}. \newblock Volume~2 of {\em The Art of Computer Programming\/} \cite{whole-set}, second edition, {\noopsort{1973c}}1981. \newblock This is a cross-referencing BOOK entry. \bibitem{whole-set} Donald~E. Knuth. \newblock {\em The Art of Computer Programming}. \newblock Four volumes. Addison-Wesley, {\noopsort{1973a}}{\switchargs{--90}{1968}}. \newblock Seven volumes planned (this is a cross-referenced set of BOOKs). \bibitem{booklet-minimal} The programming of computer art. \bibitem{booklet-full} Jill~C. Knvth. \newblock The programming of computer art. \newblock Vernier Art Center, Stanford, California, February 1988. \newblock This is a full BOOKLET entry. \bibitem{incollection-minimal} Daniel~D. Lincoll. \newblock Semigroups of recurrences. \newblock In {\em High Speed Computer and Algorithm Organization}. Academic Press, 1977. \bibitem{incollection-full} Daniel~D. Lincoll. \newblock Semigroups of recurrences. \newblock In David~J. Lipcoll, D.~H. Lawrie, and A.~H. Sameh, editors, {\em High Speed Computer and Algorithm Organization}, number~23 in Fast Computers, part~3, pages 179--183. Academic Press, New York, third edition, September 1977. \newblock This is a full INCOLLECTION entry. \bibitem{incollection-crossref} Daniel~D. Lincoll. \newblock Semigroups of recurrences. \newblock In Lipcoll et~al. \cite{whole-collection}, pages 179--183. \newblock This is a cross-referencing INCOLLECTION entry. \bibitem{whole-collection} David~J. Lipcoll, D.~H. Lawrie, and A.~H. Sameh, editors. \newblock {\em High Speed Computer and Algorithm Organization}. \newblock Number~23 in Fast Computers. Academic Press, New York, third edition, September 1977. \newblock This is a cross-referenced BOOK (collection) entry. \bibitem{manual-minimal} {\em The Definitive Computer Manual}. \bibitem{manual-full} Larry Manmaker. \newblock {\em The Definitive Computer Manual}. \newblock Chips-R-Us, Silicon Valley, silver edition, April-May 1986. \newblock This is a full MANUAL entry. \bibitem{mastersthesis-minimal} {\'{E}}douard Masterly. \newblock Mastering thesis writing. \newblock Master's thesis, Stanford University, 1988. \bibitem{mastersthesis-full} {\'{E}}douard Masterly. \newblock Mastering thesis writing. \newblock Master's project, Stanford University, English Department, June-August 1988. \newblock This is a full MASTERSTHESIS entry. \bibitem{misc-minimal} This is a minimal MISC entry. \bibitem{misc-full} Joe-Bob Missilany. \newblock Handing out random pamphlets in airports. \newblock Handed out at O'Hare, October 1984. \newblock This is a full MISC entry. \bibitem{inproceedings-minimal} Alfred~V. Oaho, Jeffrey~D. Ullman, and Mihalis Yannakakis. \newblock On notions of information transfer in {VLSI} circuits. \newblock In {\em Proc. Fifteenth Annual ACM Symposium on the Theory of Computing}, 1983. \bibitem{inproceedings-full} Alfred~V. Oaho, Jeffrey~D. Ullman, and Mihalis Yannakakis. \newblock On notions of information transfer in {VLSI} circuits. \newblock In Wizard~V. Oz and Mihalis Yannakakis, editors, {\em Proc. Fifteenth Annual ACM Symposium on the Theory of Computing}, number~17 in All ACM Conferences, pages 133--139, Boston, March 1983. The OX Association for Computing Machinery, Academic Press. \newblock This is a full INPROCEDINGS entry. \bibitem{inproceedings-crossref} Alfred~V. Oaho, Jeffrey~D. Ullman, and Mihalis Yannakakis. \newblock On notions of information transfer in {VLSI} circuits. \newblock In OX{\singleletter{stoc}} \cite{whole-proceedings}, pages 133--139. \newblock This is a cross-referencing INPROCEEDINGS entry. \bibitem{proceedings-minimal} {\em Proc. Fifteenth Annual Symposium on the Theory of Computing}, 1983. \bibitem{proceedings-full} Wizard~V. Oz and Mihalis Yannakakis, editors. \newblock {\em Proc. Fifteenth Annual Symposium on the Theory of Computing}, number~17 in All ACM Conferences, Boston, March 1983. The OX Association for Computing Machinery, Academic Press. \newblock This is a full PROCEEDINGS entry. \bibitem{whole-proceedings} The OX Association for Computing Machinery. \newblock {\em Proc. Fifteenth Annual Symposium on the Theory of Computing}, Boston, 1983. \newblock This is a cross-referenced PROCEEDINGS. \bibitem{phdthesis-minimal} F.~Phidias Phony-Baloney. \newblock {\em Fighting Fire with Fire: Festooning {F}rench Phrases}. \newblock PhD thesis, Fanstord University, 1988. \bibitem{phdthesis-full} F.~Phidias Phony-Baloney. \newblock {\em Fighting Fire with Fire: Festooning {F}rench Phrases}. \newblock {PhD} dissertation, Fanstord University, Department of French, June-August 1988. \newblock This is a full PHDTHESIS entry. \bibitem{techreport-minimal} Tom Terrific. \newblock An {$O(n \log n / \! \log\log n)$} sorting algorithm. \newblock Technical report, Fanstord University, 1988. \bibitem{techreport-full} Tom T{\'{e}}rrific. \newblock An {$O(n \log n / \! \log\log n)$} sorting algorithm. \newblock Wishful Research Result~7, Fanstord University, Computer Science Department, Fanstord, California, October 1988. \newblock This is a full TECHREPORT entry. \bibitem{unpublished-minimal} Ulrich {\"{U}}nderwood, Ned {\~N}et, and Paul {\={P}}ot. \newblock Lower bounds for wishful research results. \newblock Talk at Fanstord University (this is a minimal UNPUBLISHED entry). \bibitem{unpublished-full} Ulrich {\"{U}}nderwood, Ned {\~N}et, and Paul {\={P}}ot. \newblock Lower bounds for wishful research results. \newblock Talk at Fanstord University (this is a full UNPUBLISHED entry), November, December 1988. \bibitem{random-note-crossref} Volume~2 is listed under Knuth \cite{book-full}. \end{thebibliography} ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610912831.958714 pybtex-0.24.0/tests/database_test/0000755000175000001440000000000000000000000016624 5ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5516124 pybtex-0.24.0/tests/database_test/__init__.py0000644000175000001440000000000000000000000020723 0ustar00agusers00000000000000././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5606122 pybtex-0.24.0/tests/database_test/data.py0000644000175000001440000000411300000000000020106 0ustar00agusers00000000000000# vim:fileencoding=utf-8 from __future__ import unicode_literals from pybtex.database import BibliographyData, Entry, Person reference_data = BibliographyData( entries=[ ('viktorov-metodoj', Entry('book', fields=[ ('publisher', u'Л.: <<Химия>>'), ('language', u'russian'), ('year', u'1977'), ('title', u'Методы вычисления физико-химических величин и прикладные расчёты'), ], persons={'author': [Person(u'Викторов, Михаил Маркович')]} )), ('test-booklet', Entry('booklet', fields=[ ('year', u'2006'), ('month', u'January'), ('title', u'Just a booklet'), ('howpublished', u'Published by Foo'), ('language', u'english'), ('address', u'Moscow'), ], persons={'author': [Person(u'de Last, Jr., First Middle')]} )), ('ruckenstein-diffusion', Entry('article', fields=[ ('language', u'english'), ('title', u'Predicting the Diffusion Coefficient in Supercritical Fluids'), ('journal', u'Ind. Eng. Chem. Res.'), ('volume', u'36'), ('year', u'1997'), ('pages', u'888-895'), ], persons={'author': [Person(u'Liu, Hongquin'), Person(u'Ruckenstein, Eli')]}, )), ('test-inbook', Entry('inbook', fields=[ ('title', u'Some Title'), ('booktitle', u'Some Good Book'), ('series', u'Some series'), ('number', u'3'), ('publisher', u'Some Publisher'), ('edition', u'Second'), ('language', u'english'), ('year', u'1933'), ('pages', u'44--59'), ], persons={'author': [Person(u'Jackson, Peter')]} )), ], preamble=['%%% pybtex example file'] ) ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5606122 pybtex-0.24.0/tests/database_test/database_test.py0000644000175000001440000001357100000000000022010 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import absolute_import, unicode_literals import pickle from abc import ABCMeta, abstractmethod from copy import deepcopy from io import BytesIO, TextIOWrapper import six import pytest from pybtex.database import parse_bytes, parse_string, BibliographyData, Entry from pybtex.plugin import find_plugin from .data import reference_data class DatabaseIO(object): __metaclass__ = ABCMeta def __init__(self): self.reference_data = deepcopy(reference_data) assert reference_data.entries assert reference_data.preamble @abstractmethod def serialize(self, bib_data): pass @abstractmethod def deserialize(self, bib_data): pass class PybtexDatabaseIO(DatabaseIO): def __init__(self, bib_format): super(PybtexDatabaseIO, self).__init__() self.bib_format = bib_format self.writer = find_plugin('pybtex.database.output', bib_format)(encoding='UTF-8') self.parser = find_plugin('pybtex.database.input', bib_format)(encoding='UTF-8') if bib_format == 'bibtexml': # BibTeXML does not support TeX preambles self.reference_data._preamble = [] def __repr__(self): return '{}({!r})'.format(type(self).__name__, self.bib_format) class PybtexStreamIO(PybtexDatabaseIO): def serialize(self, bib_data): stream = BytesIO() unicode_stream = TextIOWrapper(stream, 'UTF-8') self.writer.write_stream(bib_data, unicode_stream if self.writer.unicode_io else stream) unicode_stream.flush() stream.seek(0) return unicode_stream def deserialize(self, stream): parser_stream = stream if self.parser.unicode_io else stream.buffer return self.parser.parse_stream(parser_stream) class PybtexStringIO(PybtexDatabaseIO): def serialize(self, bib_data): result = bib_data.to_string(self.bib_format) assert isinstance(result, six.text_type) return result def deserialize(self, string): # wrapper for parse_string return BibliographyData.from_string(string, self.bib_format) class PybtexEntryStringIO(PybtexDatabaseIO): # the first entry in reference_data def __init__(self, bib_format): super(PybtexEntryStringIO, self).__init__(bib_format) # get 1st key self.key = list(reference_data.entries.keys())[0] # make Entry as single-item BibliographyData self.reference_data = reference_data.entries[self.key] assert reference_data.entries assert reference_data.preamble def serialize(self, bib_data): # Entry.to_string result = bib_data.to_string(self.bib_format) assert isinstance(result, six.text_type) return result def deserialize(self, string): # Entry.from_string return Entry.from_string(string, self.bib_format) class PybtexBytesIO(PybtexDatabaseIO): def serialize(self, bib_data): result = bib_data.to_bytes(self.bib_format) assert isinstance(result, bytes) return result def deserialize(self, string): return parse_bytes(string, self.bib_format) class PickleIO(DatabaseIO): def __init__(self, protocol): super(PickleIO, self).__init__() self.protocol = protocol def __repr__(self): return '{}(protocol={!r})'.format(type(self).__name__, self.protocol) def serialize(self, bib_data): return pickle.dumps(bib_data, protocol=self.protocol) def deserialize(self, pickled_data): return pickle.loads(pickled_data) class ReprEvalIO(DatabaseIO): def __repr__(self): return '{}()'.format(type(self).__name__) def serialize(self, bib_data): return repr(bib_data) def deserialize(self, repr_value): from pybtex.utils import OrderedCaseInsensitiveDict from pybtex.database import BibliographyData, Entry, Person return eval(repr_value, { 'OrderedCaseInsensitiveDict': OrderedCaseInsensitiveDict, 'BibliographyData': BibliographyData, 'Entry': Entry, 'Person': Person, }) def check_database_io(io_obj): serialized_data = io_obj.serialize(io_obj.reference_data) deserialized_data = io_obj.deserialize(serialized_data) assert deserialized_data == io_obj.reference_data @pytest.mark.parametrize(["io_cls"], [(PybtexBytesIO,), (PybtexStringIO,), (PybtexEntryStringIO,),(PybtexBytesIO,)]) @pytest.mark.parametrize(["bib_format"], [("bibtex",), ("bibtexml",), ("yaml",)]) def test_database_io(io_cls, bib_format): check_database_io(io_cls(bib_format)) @pytest.mark.parametrize( ["protocol"], [(protocol,) for protocol in range(0, pickle.HIGHEST_PROTOCOL + 1)] ) def test_database_pickling(protocol): check_database_io(PickleIO(protocol)) def test_database_repr(): check_database_io(ReprEvalIO()) ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.570612 pybtex-0.24.0/tests/general_engine_test.py0000644000175000001440000001315000000000000020374 0ustar00agusers00000000000000# vim:fileencoding=utf-8 # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals import os import posixpath from contextlib import contextmanager from shutil import rmtree from tempfile import mkdtemp import pytest from pybtex import errors, io from .utils import diff, get_data @contextmanager def cd_tempdir(): current_workdir = os.getcwd() tempdir = mkdtemp(prefix='pybtex_test_') os.chdir(tempdir) try: yield tempdir finally: os.chdir(current_workdir) rmtree(tempdir) def copy_file(filename): data = get_data(filename) with io.open_unicode(filename, 'w') as data_file: data_file.write(data) def copy_files(filenames): for filename in filenames: copy_file(filename) def write_aux(aux_name, bib_name, bst_name): with io.open_unicode(aux_name, 'w') as aux_file: aux_file.write(u'\\citation{*}\n') aux_file.write(u'\\bibstyle{{{0}}}\n'.format(bst_name)) aux_file.write(u'\\bibdata{{{0}}}\n'.format(bib_name)) def group_by_suffix(filenames): filenames_by_suffix = dict( (posixpath.splitext(filename)[1], filename) for filename in filenames ) return filenames_by_suffix def check_format_from_string(engine, filenames): filenames_by_suffix = group_by_suffix(filenames) engine_name = engine.__name__.rsplit('.', 1)[-1] if '.aux' in filenames_by_suffix: from io import StringIO from pybtex import auxfile aux_contents = StringIO(get_data(filenames_by_suffix['.aux'])) auxdata = auxfile.parse_file(aux_contents) citations = auxdata.citations style = auxdata.style else: citations = '*' style = posixpath.splitext(filenames_by_suffix['.bst'])[0] with cd_tempdir(): copy_file(filenames_by_suffix['.bst']) bib_name = posixpath.splitext(filenames_by_suffix['.bib'])[0] bib_string = get_data(filenames_by_suffix['.bib']) with errors.capture(): # FIXME check error messages result = engine.format_from_string(bib_string, style=style, citations=citations) correct_result_name = '{0}_{1}.{2}.bbl'.format(bib_name, style, engine_name) correct_result = get_data(correct_result_name).replace('\r\n', '\n') assert result == correct_result, diff(correct_result, result) def check_make_bibliography(engine, filenames): allowed_exts = {'.bst', '.bib', '.aux'} filenames_by_ext = dict( (posixpath.splitext(filename)[1], filename) for filename in filenames ) engine_name = engine.__name__.rsplit('.', 1)[-1] for ext in filenames_by_ext: if ext not in allowed_exts: raise ValueError(ext) with cd_tempdir(): copy_files(filenames) bib_name = posixpath.splitext(filenames_by_ext['.bib'])[0] bst_name = posixpath.splitext(filenames_by_ext['.bst'])[0] if '.aux' not in filenames_by_ext: write_aux('test.aux', bib_name, bst_name) filenames_by_ext['.aux'] = 'test.aux' with errors.capture(): # FIXME check error messages engine.make_bibliography(filenames_by_ext['.aux']) result_name = posixpath.splitext(filenames_by_ext['.aux'])[0] + '.bbl' with io.open_unicode(result_name) as result_file: result = result_file.read() correct_result_name = '{0}_{1}.{2}.bbl'.format(bib_name, bst_name, engine_name) correct_result = get_data(correct_result_name).replace('\r\n', '\n') assert result == correct_result, diff(correct_result, result) @pytest.mark.parametrize( ["filenames"], [ (['xampl.bib', 'unsrt.bst'],), (['xampl.bib', 'plain.bst'],), (['xampl.bib', 'alpha.bst'],), (['xampl.bib', 'jurabib.bst'],), (['cyrillic.bib', 'unsrt.bst'],), (['cyrillic.bib', 'alpha.bst'],), (['xampl_mixed.bib', 'unsrt_mixed.bst', 'xampl_mixed_unsrt_mixed.aux'],), (['IEEEtran.bib', 'IEEEtran.bst', 'IEEEtran.aux'],), ] ) @pytest.mark.parametrize( ["check"], [(check_make_bibliography,), (check_format_from_string,)] ) def test_bibtex_engine(check, filenames): from pybtex import bibtex check(bibtex, filenames) @pytest.mark.parametrize( ["filenames"], [ (['cyrillic.bib', 'unsrt.bst'],), (['cyrillic.bib', 'plain.bst'],), (['cyrillic.bib', 'alpha.bst'],), (['extrafields.bib', 'unsrt.bst'],), ] ) @pytest.mark.parametrize( ["check"], [(check_make_bibliography,), (check_format_from_string,)] ) def test_pybtex_engine(check, filenames): import pybtex check(pybtex, filenames) ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.570612 pybtex-0.24.0/tests/io_test.py0000644000175000001440000001035200000000000016042 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals import errno import posixpath from unittest import TestCase from pybtex import io class MockFile(object): def __init__(self, name, mode): self.name = name self.mode = mode def __repr__(self): return "" % (self.name, self.mode) class MockFilesystem(object): def __init__(self, files=(), writable_dirs=(), readonly_dirs=()): self.files = set(files) self.writable_dirs = set(writable_dirs) self.readonly_dirs = set(readonly_dirs) def add_file(self, path): self.files.add(path) def chdir(self, path): self.pwd = path def locate(self, filename): for path in self.files: if path.endswith(filename): return path def open_read(self, path, mode): if path in self.files: return MockFile(path, mode) else: raise IOError(errno.ENOENT, 'No such file or directory', path) def open_write(self, path, mode): dirname = posixpath.dirname(path) if dirname in self.writable_dirs: return MockFile(path, mode) else: raise IOError(errno.EACCES, 'Permission denied', path) def open(self, path, mode): full_path = posixpath.join(self.pwd, path) if 'w' in mode: return self.open_write(full_path, mode) else: return self.open_read(full_path, mode) class IOTest(TestCase): def setUp(self): self.fs = MockFilesystem( files=( '/home/test/foo.bib', '/home/test/foo.bbl', '/usr/share/texmf/bibtex/bst/unsrt.bst', ), writable_dirs=('/home/test',), readonly_dirs=('/'), ) self.fs.chdir('/home/test') def test_open_existing(self): file = io._open_existing(self.fs.open, 'foo.bbl', 'rb', locate=self.fs.locate) self.assertEqual(file.name, '/home/test/foo.bbl') self.assertEqual(file.mode, 'rb') def test_open_missing(self): self.assertRaises( EnvironmentError, io._open_existing, self.fs.open, 'nosuchfile.bbl', 'rb', locate=self.fs.locate, ) def test_locate(self): file = io._open_existing( self.fs.open, 'unsrt.bst', 'rb', locate=self.fs.locate ) self.assertEqual(file.name, '/usr/share/texmf/bibtex/bst/unsrt.bst') self.assertEqual(file.mode, 'rb') def test_create(self): file = io._open_or_create(self.fs.open, 'foo.bbl', 'wb', {}) self.assertEqual(file.name, '/home/test/foo.bbl') self.assertEqual(file.mode, 'wb') def test_create_in_readonly_dir(self): self.fs.chdir('/') self.assertRaises( EnvironmentError, io._open_or_create, self.fs.open, 'foo.bbl', 'wb', {}, ) def test_create_in_fallback_dir(self): self.fs.chdir('/') file = io._open_or_create( self.fs.open, 'foo.bbl', 'wb', {'TEXMFOUTPUT': '/home/test'} ) self.assertEqual(file.name, '/home/test/foo.bbl') self.assertEqual(file.mode, 'wb') ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.570612 pybtex-0.24.0/tests/markup_test.py0000644000175000001440000000044200000000000016731 0ustar00agusers00000000000000import pytest from pybtex.markup import LaTeXParser from pybtex.scanner import PybtexSyntaxError @pytest.mark.parametrize(["bad_input"], [("abc{def}}",), ("abc{def}{",)]) def test_syntax_error(bad_input): with pytest.raises(PybtexSyntaxError): LaTeXParser(bad_input).parse() ././@PaxHeader0000000000000000000000000000003300000000000011451 xustar000000000000000027 mtime=1610911594.569612 pybtex-0.24.0/tests/parse_name_test.py0000644000175000001440000002636500000000000017560 0ustar00agusers00000000000000# vim:fileencoding=utf-8 # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals import pytest from pybtex import errors from pybtex.database import InvalidNameString, Person # name, (bibtex_first, prelast, last, lineage # as parsed by the bibtex program itself sample_names = [ ('A. E. Siegman', (['A.', 'E.'], [], ['Siegman'], []), None), ('A. G. W. Cameron', (['A.', 'G.', 'W.'], [], ['Cameron'], []), None), ('A. Hoenig', (['A.'], [], ['Hoenig'], []), None), ('A. J. Van Haagen', (['A.', 'J.', 'Van'], [], ['Haagen'], []), None), ('A. S. Berdnikov', (['A.', 'S.'], [], ['Berdnikov'], []), None), ('A. Trevorrow', (['A.'], [], ['Trevorrow'], []), None), ('Adam H. Lewenberg', (['Adam', 'H.'], [], ['Lewenberg'], []), None), ('Addison-Wesley Publishing Company', (['Addison-Wesley', 'Publishing'], [], ['Company'], []), None), ('Advogato (Raph Levien)', (['Advogato', '(Raph'], [], ['Levien)'], []), None), ('Andrea de Leeuw van Weenen', (['Andrea'], ['de', 'Leeuw', 'van'], ['Weenen'], []), None), ('Andreas Geyer-Schulz', (['Andreas'], [], ['Geyer-Schulz'], []), None), ("Andr{\\'e} Heck", (["Andr{\\'e}"], [], ['Heck'], []), None), ('Anne Br{\\"u}ggemann-Klein', (['Anne'], [], ['Br{\\"u}ggemann-Klein'], []), None), ('Anonymous', ([], [], ['Anonymous'], []), None), ('B. Beeton', (['B.'], [], ['Beeton'], []), None), ('B. Hamilton Kelly', (['B.', 'Hamilton'], [], ['Kelly'], []), None), ('B. V. Venkata Krishna Sastry', (['B.', 'V.', 'Venkata', 'Krishna'], [], ['Sastry'], []), None), ('Benedict L{\\o}fstedt', (['Benedict'], [], ['L{\\o}fstedt'], []), None), ('Bogus{\\l}aw Jackowski', (['Bogus{\\l}aw'], [], ['Jackowski'], []), None), ('Christina A. L.\\ Thiele', # (['Christina', 'A.', 'L.\\'], [], ['Thiele'], []), None), (['Christina', 'A.', 'L.'], [], ['Thiele'], []), None), # BibTeX incompatible: treat "\ " as a space ("D. Men'shikov", (['D.'], [], ["Men'shikov"], []), None), ("Darko \\v{Z}ubrini{\\'c}", (['Darko'], [], ["\\v{Z}ubrini{\\'c}"], []), None), ("Dunja Mladeni{\\'c}", (['Dunja'], [], ["Mladeni{\\'c}"], []), None), ('Edwin V. {Bell, II}', (['Edwin', 'V.'], [], ['{Bell, II}'], []), None), ('Frank G. {Bennett, Jr.}', (['Frank', 'G.'], [], ['{Bennett, Jr.}'], []), None), ("Fr{\\'e}d{\\'e}ric Boulanger", (["Fr{\\'e}d{\\'e}ric"], [], ['Boulanger'], []), None), ('Ford, Jr., Henry', (['Henry'], [], ['Ford'], ['Jr.']), None), ('mr Ford, Jr., Henry', (['Henry'], ['mr'], ['Ford'], ['Jr.']), None), ('Fukui Rei', (['Fukui'], [], ['Rei'], []), None), ('G. Gr{\\"a}tzer', (['G.'], [], ['Gr{\\"a}tzer'], []), None), ('George Gr{\\"a}tzer', (['George'], [], ['Gr{\\"a}tzer'], []), None), ('Georgia K. M. Tobin', (['Georgia', 'K.', 'M.'], [], ['Tobin'], []), None), ('Gilbert van den Dobbelsteen', (['Gilbert'], ['van', 'den'], ['Dobbelsteen'], []), None), ('Gy{\\"o}ngyi Bujdos{\\\'o}', (['Gy{\\"o}ngyi'], [], ["Bujdos{\\'o}"], []), None), ('Helmut J{\\"u}rgensen', (['Helmut'], [], ['J{\\"u}rgensen'], []), None), ('Herbert Vo{\\ss}', (['Herbert'], [], ['Vo{\\ss}'], []), None), ("H{\\'a}n Th{\\^e}\\llap{\\raise 0.5ex\\hbox{\\'{\\relax}}} Th{\\'a}nh", (["H{\\'a}n", "Th{\\^e}\\llap{\\raise 0.5ex\\hbox{\\'{\\relax}}}"], [], ["Th{\\'a}nh"], []), None), ("H{\\`a}n Th\\^e\\llap{\\raise0.5ex\\hbox{\\'{\\relax}}} Th{\\`a}nh", (['H{\\`a}n', "Th\\^e\\llap{\\raise0.5ex\\hbox{\\'{\\relax}}}"], [], ['Th{\\`a}nh'], []), None), ("J. Vesel{\\'y}", (['J.'], [], ["Vesel{\\'y}"], []), None), ("Javier Rodr\\'{\\i}guez Laguna", (['Javier', "Rodr\\'{\\i}guez"], [], ['Laguna'], []), None), ("Ji\\v{r}\\'{\\i} Vesel{\\'y}", (["Ji\\v{r}\\'{\\i}"], [], ["Vesel{\\'y}"], []), None), ("Ji\\v{r}\\'{\\i} Zlatu{\\v{s}}ka", (["Ji\\v{r}\\'{\\i}"], [], ['Zlatu{\\v{s}}ka'], []), None), ("Ji\\v{r}{\\'\\i} Vesel{\\'y}", (["Ji\\v{r}{\\'\\i}"], [], ["Vesel{\\'y}"], []), None), ("Ji\\v{r}{\\'{\\i}}Zlatu{\\v{s}}ka", ([], [], ["Ji\\v{r}{\\'{\\i}}Zlatu{\\v{s}}ka"], []), None), ('Jim Hef{}feron', (['Jim'], [], ['Hef{}feron'], []), None), ('J{\\"o}rg Knappen', (['J{\\"o}rg'], [], ['Knappen'], []), None), ('J{\\"o}rgen L. Pind', (['J{\\"o}rgen', 'L.'], [], ['Pind'], []), None), ("J{\\'e}r\\^ome Laurens", (["J{\\'e}r\\^ome"], [], ['Laurens'], []), None), ('J{{\\"o}}rg Knappen', (['J{{\\"o}}rg'], [], ['Knappen'], []), None), ('K. Anil Kumar', (['K.', 'Anil'], [], ['Kumar'], []), None), ("Karel Hor{\\'a}k", (['Karel'], [], ["Hor{\\'a}k"], []), None), ("Karel P\\'{\\i}{\\v{s}}ka", (['Karel'], [], ["P\\'{\\i}{\\v{s}}ka"], []), None), ("Karel P{\\'\\i}{\\v{s}}ka", (['Karel'], [], ["P{\\'\\i}{\\v{s}}ka"], []), None), ("Karel Skoup\\'{y}", (['Karel'], [], ["Skoup\\'{y}"], []), None), ("Karel Skoup{\\'y}", (['Karel'], [], ["Skoup{\\'y}"], []), None), ('Kent McPherson', (['Kent'], [], ['McPherson'], []), None), ('Klaus H{\\"o}ppner', (['Klaus'], [], ['H{\\"o}ppner'], []), None), ('Lars Hellstr{\\"o}m', (['Lars'], [], ['Hellstr{\\"o}m'], []), None), ('Laura Elizabeth Jackson', (['Laura', 'Elizabeth'], [], ['Jackson'], []), None), ("M. D{\\'{\\i}}az", (['M.'], [], ["D{\\'{\\i}}az"], []), None), ('M/iche/al /O Searc/oid', (['M/iche/al', '/O'], [], ['Searc/oid'], []), None), ("Marek Ry{\\'c}ko", (['Marek'], [], ["Ry{\\'c}ko"], []), None), ('Marina Yu. Nikulina', (['Marina', 'Yu.'], [], ['Nikulina'], []), None), ("Max D{\\'{\\i}}az", (['Max'], [], ["D{\\'{\\i}}az"], []), None), ('Merry Obrecht Sawdey', (['Merry', 'Obrecht'], [], ['Sawdey'], []), None), ("Miroslava Mis{\\'a}kov{\\'a}", (['Miroslava'], [], ["Mis{\\'a}kov{\\'a}"], []), None), ('N. A. F. M. Poppelier', (['N.', 'A.', 'F.', 'M.'], [], ['Poppelier'], []), None), ('Nico A. F. M. Poppelier', (['Nico', 'A.', 'F.', 'M.'], [], ['Poppelier'], []), None), ('Onofrio de Bari', (['Onofrio'], ['de'], ['Bari'], []), None), ("Pablo Rosell-Gonz{\\'a}lez", (['Pablo'], [], ["Rosell-Gonz{\\'a}lez"], []), None), ('Paco La Bruna', (['Paco', 'La'], [], ['Bruna'], []), None), ('Paul Franchi-Zannettacci', (['Paul'], [], ['Franchi-Zannettacci'], []), None), ('Pavel \\v{S}eve\\v{c}ek', (['Pavel'], [], ['\\v{S}eve\\v{c}ek'], []), None), ('Petr Ol{\\v{s}}ak', (['Petr'], [], ['Ol{\\v{s}}ak'], []), None), ("Petr Ol{\\v{s}}{\\'a}k", (['Petr'], [], ["Ol{\\v{s}}{\\'a}k"], []), None), ('Primo\\v{z} Peterlin', (['Primo\\v{z}'], [], ['Peterlin'], []), None), ('Prof. Alban Grimm', (['Prof.', 'Alban'], [], ['Grimm'], []), None), ("P{\\'e}ter Husz{\\'a}r", (["P{\\'e}ter"], [], ["Husz{\\'a}r"], []), None), ("P{\\'e}ter Szab{\\'o}", (["P{\\'e}ter"], [], ["Szab{\\'o}"], []), None), ('Rafa{\\l}\\.Zbikowski', ([], [], ['Rafa{\\l}\\.Zbikowski'], []), None), ('Rainer Sch{\\"o}pf', (['Rainer'], [], ['Sch{\\"o}pf'], []), None), ('T. L. (Frank) Pappas', (['T.', 'L.', '(Frank)'], [], ['Pappas'], []), None), ('TUG 2004 conference', (['TUG', '2004'], [], ['conference'], []), None), # von part with BibTeX special characters ('TUG {\\sltt DVI} Driver Standards Committee', (['TUG', '{\\sltt DVI}', 'Driver', 'Standards'], [], ['Committee'], []), None), ('TUG {\\sltt xDVIx} Driver Standards Committee', (['TUG'], ['{\\sltt xDVIx}'], ['Driver', 'Standards', 'Committee'], []), None), ('University of M{\\"u}nster', (['University'], ['of'], ['M{\\"u}nster'], []), None), ('Walter van der Laan', (['Walter'], ['van', 'der'], ['Laan'], []), None), ('Wendy G. McKay', (['Wendy', 'G.'], [], ['McKay'], []), None), ('Wendy McKay', (['Wendy'], [], ['McKay'], []), None), ('W{\\l}odek Bzyl', (['W{\\l}odek'], [], ['Bzyl'], []), None), ('\\LaTeX Project Team', (['\\LaTeX', 'Project'], [], ['Team'], []), None), ('\\rlap{Lutz Birkhahn}', ([], [], ['\\rlap{Lutz Birkhahn}'], []), None), ('{Jim Hef{}feron}', ([], [], ['{Jim Hef{}feron}'], []), None), ('{Kristoffer H\\o{}gsbro Rose}', ([], [], ['{Kristoffer H\\o{}gsbro Rose}'], []), None), ('{TUG} {Working} {Group} on a {\\TeX} {Directory} {Structure}', (['{TUG}', '{Working}', '{Group}'], ['on', 'a'], ['{\\TeX}', '{Directory}', '{Structure}'], []), None), ('{The \\TUB{} Team}', ([], [], ['{The \\TUB{} Team}'], []), None), ('{\\LaTeX} project team', (['{\\LaTeX}'], ['project'], ['team'], []), None), ('{\\NTG{} \\TeX{} future working group}', ([], [], ['{\\NTG{} \\TeX{} future working group}'], []), None), ('{{\\LaTeX\\,3} Project Team}', ([], [], ['{{\\LaTeX\\,3} Project Team}'], []), None), ('Johansen Kyle, Derik Mamania M.', (['Derik', 'Mamania', 'M.'], [], ['Johansen', 'Kyle'], []), None), ("Johannes Adam Ferdinand Alois Josef Maria Marko d'Aviano " 'Pius von und zu Liechtenstein', (['Johannes', 'Adam', 'Ferdinand', 'Alois', 'Josef', 'Maria', 'Marko'], ["d'Aviano", 'Pius', 'von', 'und', 'zu'], ['Liechtenstein'],[]), None), (r'Brand\~{a}o, F', (['F'], [], [r'Brand\~{a}o'], []), None), # but BibTeX parses it like this: # (r'Brand\~{a}o, F', (['F'], [], ['Brand\\', '{a}o'], []), None), # incorrectly formatted name strings below # too many commas ('Chong, B. M., Specia, L., & Mitkov, R.', (['Specia', 'L.', '&', 'Mitkov', 'R.'], [], ['Chong'], ['B.', 'M.']), [InvalidNameString('Chong, B. M., Specia, L., & Mitkov, R.')] ), # too many commas, sloppy whitespace ('LeCun, Y. , Bottou, L . , Bengio, Y. , Haffner , P', (['Bottou', 'L', '.', 'Bengio', 'Y.', 'Haffner', 'P'], [], ['LeCun'], ['Y.']), [InvalidNameString('LeCun, Y. , Bottou, L . , Bengio, Y. , Haffner , P')]), ] @pytest.mark.parametrize( ["name", "correct_result", "expected_errors"], sample_names ) def test_parse_name(name, correct_result, expected_errors): if expected_errors is None: expected_errors = [] with errors.capture() as captured_errors: person = Person(name) result = (person.bibtex_first_names, person.prelast_names, person.last_names, person.lineage_names) assert result == correct_result assert captured_errors == expected_errors ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5636122 pybtex-0.24.0/tests/plugin_test.py0000644000175000001440000001171100000000000016731 0ustar00agusers00000000000000# Copyright (c) 2014 Matthias C. M. Troffaes # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import unicode_literals import re import pytest import pybtex.database.input.bibtex import pybtex.plugin import pybtex.style.formatting.plain def test_plugin_loader(): """Check that all enumerated plugins can be imported.""" for group in pybtex.plugin._DEFAULT_PLUGINS: for name in pybtex.plugin.enumerate_plugin_names(group): pybtex.plugin.find_plugin(group, name) class TestPlugin1(pybtex.plugin.Plugin): pass class TestPlugin2(pybtex.plugin.Plugin): pass class TestPlugin3(pybtex.plugin.Plugin): pass class TestPlugin4(pybtex.plugin.Plugin): pass def test_register_plugin_1(): assert pybtex.plugin.register_plugin( 'pybtex.style.formatting', 'yippikayee', TestPlugin1 ) assert pybtex.plugin.find_plugin( 'pybtex.style.formatting', 'yippikayee' ) is TestPlugin1 assert not pybtex.plugin.register_plugin( 'pybtex.style.formatting', 'yippikayee', TestPlugin2 ) assert pybtex.plugin.find_plugin( 'pybtex.style.formatting', 'yippikayee' ) is TestPlugin1 assert pybtex.plugin.register_plugin( 'pybtex.style.formatting', 'yippikayee', TestPlugin2, force=True ) assert pybtex.plugin.find_plugin( 'pybtex.style.formatting', 'yippikayee' ), TestPlugin2 def test_register_plugin_2(): assert not pybtex.plugin.register_plugin( 'pybtex.style.formatting', 'plain', TestPlugin2 ) plugin = pybtex.plugin.find_plugin('pybtex.style.formatting', 'plain') assert plugin is not TestPlugin2 assert plugin is pybtex.style.formatting.plain.Style def test_register_plugin_3(): assert pybtex.plugin.register_plugin( 'pybtex.style.formatting.suffixes', '.woo', TestPlugin3 ) plugin = pybtex.plugin.find_plugin( 'pybtex.style.formatting', filename='test.woo') assert plugin is TestPlugin3 def test_bad_find_plugin(): with pytest.raises(pybtex.plugin.PluginGroupNotFound): pybtex.plugin.find_plugin("pybtex.invalid.group", "__oops") with pytest.raises(pybtex.plugin.PluginNotFound) as excinfo: pybtex.plugin.find_plugin("pybtex.style.formatting", "__oops") assert 'plugin pybtex.style.formatting.__oops not found' in str(excinfo.value) with pytest.raises(pybtex.plugin.PluginNotFound): pybtex.plugin.find_plugin("pybtex.style.formatting", filename="oh.__oops") def test_bad_register_plugin(): with pytest.raises(pybtex.plugin.PluginGroupNotFound): pybtex.plugin.register_plugin( "pybtex.invalid.group", "__oops", TestPlugin1) with pytest.raises(pybtex.plugin.PluginGroupNotFound): pybtex.plugin.register_plugin( "pybtex.invalid.group.suffixes", ".__oops", TestPlugin1) # suffixes must start with a dot with pytest.raises(ValueError): pybtex.plugin.register_plugin( "pybtex.style.formatting.suffixes", "notasuffix", TestPlugin1) def test_plugin_suffix(): plugin = pybtex.plugin.find_plugin( "pybtex.database.input", filename="test.bib") assert plugin is pybtex.database.input.bibtex.Parser def test_plugin_alias(): pybtex.plugin._DEFAULT_PLUGINS['pybtex.legacy.input'] = 'punchcard' assert pybtex.plugin.register_plugin('pybtex.legacy.input', 'punchcard', TestPlugin4) assert pybtex.plugin.register_plugin( 'pybtex.legacy.input.aliases', 'punchedcard', TestPlugin4 ) assert list(pybtex.plugin.enumerate_plugin_names('pybtex.legacy.input')) == ['punchcard'] plugin = pybtex.plugin.find_plugin("pybtex.legacy.input", 'punchedcard') assert plugin is TestPlugin4 del pybtex.plugin._DEFAULT_PLUGINS['pybtex.legacy.input'] def test_plugin_class(): """If a plugin class is passed to find_plugin(), it shoud be returned back.""" plugin = pybtex.plugin.find_plugin("pybtex.database.input", 'bibtex') plugin2 = pybtex.plugin.find_plugin("pybtex.database.input", plugin) assert plugin == plugin2 ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5496123 pybtex-0.24.0/tests/richtext_test.py0000644000175000001440000014237600000000000017301 0ustar00agusers00000000000000# vim:fileencoding=utf-8 # Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. from __future__ import absolute_import, unicode_literals import re from abc import ABCMeta, abstractmethod from unittest import TestCase import pytest import six from pybtex import textutils from pybtex.richtext import HRef, Protected, String, Symbol, Tag, Text, nbsp class TextTestMixin(object): __metaclass__ = ABCMeta @abstractmethod def test__init__(self): raise NotImplementedError @abstractmethod def test__str__(self): raise NotImplementedError @abstractmethod def test__eq__(self): raise NotImplementedError @abstractmethod def test__len__(self): raise NotImplementedError @abstractmethod def test__contains__(self): raise NotImplementedError @abstractmethod def test__getitem__(self): raise NotImplementedError @abstractmethod def test__add__(self): raise NotImplementedError @abstractmethod def test_append(self): raise NotImplementedError @abstractmethod def test_join(self): raise NotImplementedError @abstractmethod def test_split(self): raise NotImplementedError @abstractmethod def test_startswith(self): raise NotImplementedError @abstractmethod def test_endswith(self): raise NotImplementedError @abstractmethod def test_isalpha(self): raise NotImplementedError @abstractmethod def test_capfirst(self): raise NotImplementedError @abstractmethod def test_capitalize(self): raise NotImplementedError @abstractmethod def test_add_period(self): raise NotImplementedError @abstractmethod def test_lower(self): raise NotImplementedError @abstractmethod def test_upper(self): raise NotImplementedError @abstractmethod def test_render_as(self): raise NotImplementedError class TestText(TextTestMixin, TestCase): def test__init__(self): assert six.text_type(Text('a', '', 'c')) == 'ac' assert six.text_type(Text('a', Text(), 'c')) == 'ac' text = Text(Text(), Text('mary ', 'had ', 'a little lamb')) assert six.text_type(text) == 'mary had a little lamb' text = six.text_type(Text('a', Text('b', 'c'), Tag('em', 'x'), Symbol('nbsp'), 'd')) assert text == 'abcxd' with pytest.raises(ValueError): Text({}) with pytest.raises(ValueError): Text(0, 0) def test__eq__(self): assert Text() == Text() assert not (Text() != Text()) assert Text('Cat') == Text('Cat') assert not (Text('Cat') != Text('Cat')) assert Text('Cat', ' tail') == Text('Cat tail') assert not (Text('Cat', ' tail') != Text('Cat tail')) assert Text('Cat') != Text('Dog') assert not (Text('Cat') == Text('Dog')) def test__len__(self): assert len(Text()) == 0 assert len(Text('Never', ' ', 'Knows', ' ', 'Best')) == len('Never Knows Best') assert len(Text('Never', ' ', Tag('em', 'Knows', ' '), 'Best')) == len('Never Knows Best') assert len(Text('Never', ' ', Tag('em', HRef('/', 'Knows'), ' '), 'Best')) == len('Never Knows Best') def test__str__(self): assert six.text_type(Text()) == '' assert six.text_type(Text(u'Чудаки украшают мир')) == u'Чудаки украшают мир' def test__contains__(self): text = Text('mary ', 'had ', 'a little lamb') assert 'mary' in text assert not 'Mary' in text assert 'had a little' in text text = Text('a', 'b', 'c') assert 'abc' in text def test_capfirst(self): text = Text('dear ', 'Alice') assert six.text_type(text.capfirst()) == 'Dear Alice' def test_capitalize(self): text = Text('mary ', 'had ', 'a Little Lamb') assert six.text_type(text.capitalize()) == 'Mary had a little lamb' def test__add__(self): t = Text('a') assert six.text_type(t + 'b') == 'ab' assert six.text_type(t + t) == 'aa' assert six.text_type(t) == 'a' def test__getitem__(self): t = Text('123', Text('456', Text('78'), '9'), '0') with pytest.raises(TypeError): 1 in t assert t == Text('1234567890') assert t[:0] == Text('') assert t[:1] == Text('1') assert t[:3] == Text('123') assert t[:5] == Text('12345') assert t[:7] == Text('1234567') assert t[:10] == Text('1234567890') assert t[:100] == Text('1234567890') assert t[:-100] == Text('') assert t[:-10] == Text('') assert t[:-9] == Text('1') assert t[:-7] == Text('123') assert t[:-5] == Text('12345') assert t[:-3] == Text('1234567') assert t[-100:] == Text('1234567890') assert t[-10:] == Text('1234567890') assert t[-9:] == Text('234567890') assert t[-7:] == Text('4567890') assert t[-5:] == Text('67890') assert t[-3:] == Text('890') assert t[1:] == Text('234567890') assert t[3:] == Text('4567890') assert t[5:] == Text('67890') assert t[7:] == Text('890') assert t[10:] == Text('') assert t[100:] == Text('') assert t[0:10] == Text('1234567890') assert t[0:100] == Text('1234567890') assert t[2:3] == Text('3') assert t[2:4] == Text('34') assert t[3:7] == Text('4567') assert t[4:7] == Text('567') assert t[4:7] == Text('567') assert t[7:9] == Text('89') assert t[100:200] == Text('') t = Text('123', Tag('em', '456', HRef('/', '789')), '0') assert t[:3] == Text('123') assert t[:5] == Text('123', Tag('em', '45')) assert t[:7] == Text('123', Tag('em', '456', HRef('/', '7'))) assert t[:10] == Text('123', Tag('em', '456', HRef('/', '789')), '0') assert t[:100] == Text('123', Tag('em', '456', HRef('/', '789')), '0') assert t[:-7] == Text('123') assert t[:-5] == Text('123', Tag('em', '45')) assert t[:-3] == Text('123', Tag('em', '456', HRef('/', '7'))) def test_append(self): text = Tag('strong', 'Chuck Norris') assert (text + ' wins!').render_as('html') == 'Chuck Norris wins!' assert text.append(' wins!').render_as('html') == 'Chuck Norris wins!' text = HRef('/', 'Chuck Norris') assert (text + ' wins!').render_as('html') == 'Chuck Norris wins!' assert text.append(' wins!').render_as('html') == 'Chuck Norris wins!' def test_upper(self): text = Text('mary ', 'had ', 'a little lamb') assert six.text_type(text.upper()) == 'MARY HAD A LITTLE LAMB' def test_lower(self): text = Text('mary ', 'had ', 'a little lamb') assert six.text_type(text.lower()) == 'mary had a little lamb' def test_startswith(self): assert not Text().startswith('.') assert not Text().startswith(('.', '!')) text = Text('mary ', 'had ', 'a little lamb') assert not text.startswith('M') assert text.startswith('m') text = Text('a', 'b', 'c') assert text.startswith('ab') assert Text('This is good').startswith(('This', 'That')) assert not Text('This is good').startswith(('That', 'Those')) def test_endswith(self): assert not Text().endswith('.') assert not Text().endswith(('.', '!')) text = Text('mary ', 'had ', 'a little lamb') assert not text.endswith('B') assert text.endswith('b') text = Text('a', 'b', 'c') assert text.endswith('bc') assert Text('This is good').endswith(('good', 'wonderful')) assert not Text('This is good').endswith(('bad', 'awful')) def test_isalpha(self): assert not Text().isalpha() assert not Text('a b c').isalpha() assert Text('abc').isalpha() assert Text(u'文字').isalpha() assert Text('ab', Tag('em', 'cd'), 'ef').isalpha() assert not Text('ab', Tag('em', '12'), 'ef').isalpha() def test_join(self): assert six.text_type(Text(' ').join(['a', Text('b c')])) == 'a b c' assert six.text_type(Text(nbsp).join(['a', 'b', 'c'])) == 'abc' assert six.text_type(nbsp.join(['a', 'b', 'c'])) == 'abc' assert six.text_type(String('-').join(['a', 'b', 'c'])) == 'a-b-c' result = Tag('em', ' and ').join(['a', 'b', 'c']).render_as('html') assert result == 'a and b and c' result = HRef('/', ' and ').join(['a', 'b', 'c']).render_as('html') assert result == 'a and b and c' def test_split(self): assert Text().split() == [] assert Text().split('abc') == [Text()] assert Text('a').split() == [Text('a')] assert Text('a ').split() == [Text('a')] assert Text(' a ').split() == [Text('a')] assert Text('a + b').split() == [Text('a'), Text('+'), Text('b')] assert Text('a + b').split(' + ') == [Text('a'), Text('b')] assert Text('a + b').split(re.compile(r'\s')) == [Text('a'), Text('+'), Text('b')] assert Text('abc').split('xyz') == [Text('abc')] assert Text('---').split('--') == [Text(), Text('-')] assert Text('---').split('-') == [Text(), Text(), Text(), Text()] def test_add_period(self): assert Text().endswith(('.', '!', '?')) == False assert textutils.is_terminated(Text()) == False assert six.text_type(Text().add_period()) == '' text = Text("That's all, folks") assert six.text_type(text.add_period()) == "That's all, folks." def test_render_as(self): string = Text(u'Detektivbyrån & friends') assert string.render_as('text') == u'Detektivbyrån & friends' assert string.render_as('html') == u'Detektivbyrån & friends' class TestString(TextTestMixin, TestCase): def test__init__(self): assert String().value == '' assert String('').value == '' assert String('Wa', '', 'ke', ' ', 'up!').value == 'Wake up!' def test__eq__(self): assert String() != '' assert String('') != '' assert String() == String() assert String('') == String() assert String('', '', '') == String() assert String('Wa', '', 'ke', ' ', 'up!') == String('Wake up!') def test__len__(self): assert len(String()) == len(String('')) == 0 val = 'test string' assert len(String(val)) == len(val) def test__str__(self): val = u'Detektivbyrån' assert six.text_type(String(val)) == val def test__contains__(self): assert '' in String() assert 'abc' not in String() assert '' in String(' ') assert ' + ' in String('2 + 2') def test__getitem__(self): digits = String('0123456789') assert digits[0] != '0' assert digits[0] == String('0') def test__add__(self): assert String('Python') + String(' 3') != 'Python 3' assert String('Python') + String(' 3') == Text('Python 3') assert String('A').lower() == String('a') assert six.text_type(String('Python') + String(' ') + String('3')) == 'Python 3' assert six.text_type(String('Python') + Text(' ') + String('3')) == 'Python 3' assert six.text_type(String('Python') + ' ' + '3') == 'Python 3' assert six.text_type(String('Python').append(' 3')) == 'Python 3' def test_startswith(self): assert not String().startswith('n') assert not String('').startswith('n') assert not String().endswith('n') assert not String('').endswith('n') assert not String('November.').startswith('n') assert String('November.').startswith('N') def test_endswith(self): assert not String().endswith('.') assert not String().endswith(('.', '!')) assert not String('November.').endswith('r') assert String('November.').endswith('.') assert String('November.').endswith(('.', '!')) assert not String('November.').endswith(('?', '!')) def test_isalpha(self): assert not String().isalpha() assert not String('a b c').isalpha() assert String('abc').isalpha() assert String(u'文字').isalpha() def test_append(self): assert String().append('') == Text() text = String('The').append(' Adventures of ').append('Tom Sawyer') assert text == Text('The Adventures of Tom Sawyer') def test_lower(self): assert String('').lower() == String() assert String('A').lower() == String('a') assert String('November').lower() == String('november') def test_upper(self): assert String('').upper() == String() assert String('a').upper() == String('A') assert String('November').upper() == String('NOVEMBER') def test_split(self): assert String().split() == [] assert String().split('abc') == [String('')] assert String('a').split() == [String('a')] assert String('a ').split() == [String('a')] assert String('a + b').split() == [String('a'), String('+'), String('b')] assert String('a + b').split(' + ') == [String('a'), String('b')] assert String('a + b').split(re.compile(r'\s')) == [String('a'), String('+'), String('b')] def test_join(self): assert String().join([]) == Text() assert String('nothing to see here').join([]) == Text() assert String().join(['a', 'b', 'c']) == Text('abc') assert String(', ').join(['tomatoes']) == Text('tomatoes') assert String(', ').join(['tomatoes', 'cucumbers']) == Text('tomatoes, cucumbers') assert String(', ').join(['tomatoes', 'cucumbers', 'lemons']) == Text('tomatoes, cucumbers, lemons') def test_capfirst(self): assert six.text_type(String('').capitalize()) == '' assert six.text_type(String('november december').capitalize()) == 'November december' assert six.text_type(String('November December').capitalize()) == 'November december' assert six.text_type(String('NOVEMBER DECEMBER').capitalize()) == 'November december' def test_capitalize(self): assert six.text_type(String('').capfirst()) == '' assert six.text_type(String('november').capfirst()) == 'November' assert six.text_type(String('November').capfirst()) == 'November' assert six.text_type(String('november december').capfirst()) == 'November december' assert six.text_type(String('November December').capfirst()) == 'November December' assert six.text_type(String('NOVEMBER DECEMBER').capfirst()) == 'NOVEMBER DECEMBER' def test_add_period(self): assert six.text_type(String('').add_period()) == '' assert six.text_type(String('').add_period('!')) == '' assert six.text_type(String('').add_period().add_period()) == '' assert six.text_type(String('').add_period().add_period('!')) == '' assert six.text_type(String('').add_period('!').add_period()) == '' six.text_type(String('November').add_period()) == 'November.' result = six.text_type(String('November').add_period().add_period()) assert result == 'November.' def test_render_as(self): string = String(u'Detektivbyrån & friends') assert string.render_as('text') == u'Detektivbyrån & friends' assert string.render_as('html') == u'Detektivbyrån & friends' class TestTag(TextTestMixin, TestCase): def test__init__(self): empty = Tag('em') assert six.text_type(empty) == '' text = Text('This ', Tag('em', 'is'), ' good') assert 'This is' in six.text_type(text) assert six.text_type(text).startswith('This is') assert six.text_type(text).endswith('is good') def test__eq__(self): assert Tag('em', '') != '' assert Tag('em', '') != Text() assert Tag('em', '') != Tag('strong', '') assert Tag('em', '') == Tag('em', '') assert Tag('em', 'good') != Tag('em', 'bad') assert Tag('em', 'good') != Text('good') assert Tag('em', 'good') == Tag('em', 'good') assert not (Tag('em', 'good') != Tag('em', 'good')) def test__len__(self): val = 'Tomato apple!' assert len(Tag('em', val)) == len(val) def test__str__(self): empty = Tag('em') assert six.text_type(empty.lower()) == '' assert six.text_type(empty.capitalize()) == '' assert six.text_type(empty.add_period()) == '' assert six.text_type(Tag('strong', u'ねここねこ')) == u'ねここねこ' def test__contains__(self): tag = Tag('em', Text(), Text('mary ', 'had ', 'a little lamb')) assert 'mary' in tag assert 'Mary' not in tag assert 'had a little' in tag text = Text('This ', Tag('em', 'is'), ' good') assert not 'This is' in text def test__getitem__(self): t = Tag('em', '1234567890') with pytest.raises(TypeError): 1 in t assert t == Tag('em', '1234567890') assert t[:] == t assert t[:0] == Tag('em', '') assert t[:1] == Tag('em', '1') assert t[:3] == Tag('em', '123') assert t[:5] == Tag('em', '12345') assert t[:7] == Tag('em', '1234567') assert t[:10] == Tag('em', '1234567890') assert t[:100] == Tag('em', '1234567890') assert t[:-100] == Tag('em', '') assert t[:-10] == Tag('em', '') assert t[:-9] == Tag('em', '1') assert t[:-7] == Tag('em', '123') assert t[:-5] == Tag('em', '12345') assert t[:-3] == Tag('em', '1234567') assert t[-100:] == Tag('em', '1234567890') assert t[-10:] == Tag('em', '1234567890') assert t[-9:] == Tag('em', '234567890') assert t[-7:] == Tag('em', '4567890') assert t[-5:] == Tag('em', '67890') assert t[-3:] == Tag('em', '890') assert t[1:] == Tag('em', '234567890') assert t[3:] == Tag('em', '4567890') assert t[5:] == Tag('em', '67890') assert t[7:] == Tag('em', '890') assert t[10:] == Tag('em', '') assert t[100:] == Tag('em', '') assert t[0:10] == Tag('em', '1234567890') assert t[0:100] == Tag('em', '1234567890') assert t[2:3] == Tag('em', '3') assert t[2:4] == Tag('em', '34') assert t[3:7] == Tag('em', '4567') assert t[4:7] == Tag('em', '567') assert t[4:7] == Tag('em', '567') assert t[7:9] == Tag('em', '89') assert t[100:200] == Tag('em', '') t = Tag('strong', '123', Tag('em', '456', HRef('/', '789')), '0') assert t[:3] == Tag('strong', '123') assert t[:5] == Tag('strong', '123', Tag('em', '45')) assert t[:7] == Tag('strong', '123', Tag('em', '456', HRef('/', '7'))) assert t[:10] == Tag('strong', '123', Tag('em', '456', HRef('/', '789')), '0') assert t[:100] == Tag('strong', '123', Tag('em', '456', HRef('/', '789')), '0') assert t[:-7] == Tag('strong', '123') assert t[:-5] == Tag('strong', '123', Tag('em', '45')) assert t[:-3] == Tag('strong', '123', Tag('em', '456', HRef('/', '7'))) def test__add__(self): assert Tag('em', '') + Tag('em', '') == Text(Tag('em', '')) assert Tag('em', '') + Tag('strong', '') == Text(Tag('em', ''), Tag('strong', '')) assert Tag('em', 'Good') + Tag('em', '') == Text(Tag('em', 'Good')) assert Tag('em', 'Good') + Tag('em', ' job!') == Text(Tag('em', 'Good job!')) assert Tag('em', 'Good') + Tag('strong', ' job!') == Text(Tag('em', 'Good'), Tag('strong', ' job!')) assert Tag('em', 'Good') + Text(' job!') == Text(Tag('em', 'Good'), ' job!') assert Text('Good') + Tag('em', ' job!') == Text('Good', Tag('em', ' job!')) def test_upper(self): tag = Tag('em', Text(), Text('mary ', 'had ', 'a little lamb')) assert tag.upper().render_as('html') == 'MARY HAD A LITTLE LAMB' def test_lower(self): tag = Tag('em', Text(), Text('mary ', 'had ', 'a little lamb')) assert tag.lower().render_as('html') == 'mary had a little lamb' def test_capfirst(self): tag = Tag('em', Text(), Text('mary ', 'had ', 'a Little Lamb')) assert tag.capfirst().render_as('html') == 'Mary had a Little Lamb' def test_capitalize(self): tag = Tag('em', Text(), Text('mary ', 'had ', 'a Little Lamb')) assert tag.capitalize().render_as('html') == 'Mary had a little lamb' def test_startswith(self): tag = Tag('em', Text(), Text('mary ', 'had ', 'a little lamb')) assert not tag.startswith('M') assert tag.startswith('m') tag = Tag('em', 'a', 'b', 'c') assert tag.startswith('ab') tag = Tag('em', 'This is good') assert tag.startswith(('This', 'That')) assert not tag.startswith(('That', 'Those')) text = Text('This ', Tag('em', 'is'), ' good') assert not text.startswith('This is') def test_isalpha(self): assert not Tag('em').isalpha() assert not Tag('em', 'a b c').isalpha() assert Tag('em', 'abc').isalpha() assert Tag('em', u'文字').isalpha() def test_endswith(self): tag = Tag('em', Text(), Text('mary ', 'had ', 'a little lamb')) assert not tag.endswith('B') assert tag.endswith('b') tag = Tag('em', 'a', 'b', 'c') assert tag.endswith('bc') tag = Tag('em', 'This is good') assert tag.endswith(('good', 'wonderful')) assert not tag.endswith(('bad', 'awful')) text = Text('This ', Tag('em', 'is'), ' good') assert not text.endswith('is good') def test_split(self): empty = Tag('em') assert empty.split() == [] assert empty.split('abc') == [Tag('em')] em = Tag('em', 'Emphasized text') assert em.split() == [Tag('em', 'Emphasized'), Tag('em', 'text')] assert em.split(' ') == [Tag('em', 'Emphasized'), Tag('em', 'text')] assert em.split('no such text') == [em] text = Text('Bonnie ', Tag('em', 'and'), ' Clyde') assert text.split('and') == [Text('Bonnie '), Text(' Clyde')] assert text.split(' and ') == [text] text = Text('Bonnie', Tag('em', ' and '), 'Clyde') assert text.split('and') == [Text('Bonnie', Tag('em', ' ')), Text(Tag('em', ' '), 'Clyde')] assert text.split(' and ') == [Text('Bonnie'), Text('Clyde')] text = Text('From ', Tag('em', 'the very beginning'), ' of things') assert text.split() == [ Text('From'), Text(Tag('em', 'the')), Text(Tag('em', 'very')), Text(Tag('em', 'beginning')), Text('of'), Text('things'), ] parts = text.split() assert parts == [ Text('From'), Text(Tag('em', 'the')), Text(Tag('em', 'very')), Text(Tag('em', 'beginning')), Text('of'), Text('things'), ] def test_join(self): text = Text('From ', Tag('em', 'the very beginning'), ' of things') dashified = String('-').join(text.split()) assert dashified == Text('From-', Tag('em', 'the'), '-', Tag('em', 'very'), '-', Tag('em', 'beginning'), '-of-things') dashified = Tag('em', '-').join(text.split()) assert dashified == Text('From', Tag('em', '-the-very-beginning-'), 'of', Tag('em', '-'), 'things') def test_append(self): text = Tag('strong', 'Chuck Norris') assert (text + ' wins!').render_as('html') == 'Chuck Norris wins!' assert text.append(' wins!').render_as('html') == 'Chuck Norris wins!' text = Tag('em', 'Look here') assert (text + '!').render_as('html') == 'Look here!' assert text.append('!').render_as('html') == 'Look here!' def test_add_period(self): text = Tag('em', Text("That's all, folks")) assert text.add_period().render_as('html') == "That's all, folks." assert text.add_period().add_period().render_as('html') == "That's all, folks." text = Text("That's all, ", Tag('em', 'folks')) assert text.add_period().render_as('html') == "That's all, folks." assert text.add_period().add_period().render_as('html') == "That's all, folks." text = Text("That's all, ", Tag('em', 'folks.')) assert text.add_period().render_as('html') == "That's all, folks." text = Text("That's all, ", Tag('em', 'folks')) assert text.add_period('!').render_as('html') == "That's all, folks!" text = text.add_period('!').add_period('.').render_as('html') assert text == "That's all, folks!" tag = Tag('em', Text(), Text('mary ', 'had ', 'a little lamb')) assert tag.add_period().render_as('html') == 'mary had a little lamb.' assert tag.add_period().add_period().render_as('html') == 'mary had a little lamb.' def test_render_as(self): empty = Tag('em') assert empty.render_as('html') == '' assert empty.render_as('latex') == '' tag = Tag('em', 'a', 'b') assert tag.render_as('html') == 'ab' assert tag.render_as('latex') == '\\emph{ab}' em = Tag('em', 'Emphasized text') assert em.render_as('latex') == '\\emph{Emphasized text}' assert em.upper().render_as('latex') == '\\emph{EMPHASIZED TEXT}' assert em.lower().render_as('latex') == '\\emph{emphasized text}' assert em.render_as('html') == 'Emphasized text' t = Tag(u'em', u'123', Tag(u'em', u'456', Text(u'78'), u'9'), u'0') assert t[:2].render_as('html') == '12' assert t[2:4].render_as('html') == '34' tag = Tag('em', Text(), Text('mary ', 'had ', 'a little lamb')) assert tag.render_as('html') == 'mary had a little lamb' class TestHRef(TextTestMixin, TestCase): def test__init__(self): empty = HRef('/') assert empty.url == '/' assert empty.parts == [] def test__str__(self): empty = HRef('/') assert six.text_type(empty) == '' text = Text('This ', HRef('/', 'is'), ' good') six.text_type(text) == 'This is good' def test__eq__(self): assert HRef('/', '') != '' assert HRef('/', '') != Text() assert HRef('/', '') != HRef('', '') assert HRef('/', '') == HRef('/', '') assert HRef('/', 'good') != HRef('', 'bad') assert HRef('/', 'good') != Text('good') assert HRef('/', 'good') == HRef('/', 'good') assert not (HRef('/', 'good') != HRef('/', 'good')) assert HRef('strong', '') != Tag('strong', '') def test__len__(self): val = 'Tomato apple!' assert len(HRef('index', val)) == len(val) def test__contains__(self): tag = HRef('info.html', Text(), Text('Mary ', 'had ', 'a little lamb')) assert not 'mary' in tag assert 'Mary' in tag assert 'had a little' in tag text = Text('This ', HRef('/', 'is'), ' good') assert not 'This is' in text def test__getitem__(self): t = HRef('/', '1234567890') with pytest.raises(TypeError): 1 in t assert t == HRef('/', '1234567890') assert t[:] == t assert t[:0] == HRef('/', '') assert t[:1] == HRef('/', '1') assert t[:3] == HRef('/', '123') assert t[:5] == HRef('/', '12345') assert t[:7] == HRef('/', '1234567') assert t[:10] == HRef('/', '1234567890') assert t[:100] == HRef('/', '1234567890') assert t[:-100] == HRef('/', '') assert t[:-10] == HRef('/', '') assert t[:-9] == HRef('/', '1') assert t[:-7] == HRef('/', '123') assert t[:-5] == HRef('/', '12345') assert t[:-3] == HRef('/', '1234567') assert t[-100:] == HRef('/', '1234567890') assert t[-10:] == HRef('/', '1234567890') assert t[-9:] == HRef('/', '234567890') assert t[-7:] == HRef('/', '4567890') assert t[-5:] == HRef('/', '67890') assert t[-3:] == HRef('/', '890') assert t[1:] == HRef('/', '234567890') assert t[3:] == HRef('/', '4567890') assert t[5:] == HRef('/', '67890') assert t[7:] == HRef('/', '890') assert t[10:] == HRef('/', '') assert t[100:] == HRef('/', '') assert t[0:10] == HRef('/', '1234567890') assert t[0:100] == HRef('/', '1234567890') assert t[2:3] == HRef('/', '3') assert t[2:4] == HRef('/', '34') assert t[3:7] == HRef('/', '4567') assert t[4:7] == HRef('/', '567') assert t[4:7] == HRef('/', '567') assert t[7:9] == HRef('/', '89') assert t[100:200] == HRef('/', '') t = HRef('', '123', HRef('/', '456', HRef('/', '789')), '0') assert t[:3] == HRef('', '123') assert t[:5] == HRef('', '123', HRef('/', '45')) assert t[:7] == HRef('', '123', HRef('/', '456', HRef('/', '7'))) assert t[:10] == HRef('', '123', HRef('/', '456', HRef('/', '789')), '0') assert t[:100] == HRef('', '123', HRef('/', '456', HRef('/', '789')), '0') assert t[:-7] == HRef('', '123') assert t[:-5] == HRef('', '123', HRef('/', '45')) assert t[:-3] == HRef('', '123', HRef('/', '456', HRef('/', '7'))) def test__add__(self): assert HRef('/', '') + HRef('/', '') == Text(HRef('/', '')) assert HRef('/', '') + HRef('strong', '') == Text(HRef('/', ''), HRef('strong', '')) assert HRef('/', 'Good') + HRef('/', '') == Text(HRef('/', 'Good')) assert HRef('/', 'Good') + HRef('/', ' job!') == Text(HRef('/', 'Good job!')) assert HRef('/', 'Good') + HRef('strong', ' job!') == Text(HRef('/', 'Good'), HRef('strong', ' job!')) assert HRef('/', 'Good') + Text(' job!') == Text(HRef('/', 'Good'), ' job!') assert Text('Good') + HRef('/', ' job!') == Text('Good', HRef('/', ' job!')) def test_append(self): text = HRef('/', 'Chuck Norris') assert (text + ' wins!').render_as('html') == 'Chuck Norris wins!' assert text.append(' wins!').render_as('html') == 'Chuck Norris wins!' def test_lower(self): assert HRef('/').lower() == HRef('/') href = HRef('http://www.example.com', 'Hyperlinked text.') assert href.lower().render_as('latex') == '\\href{http://www.example.com}{hyperlinked text.}' tag = HRef('info.html', Text(), Text('Mary ', 'had ', 'a little lamb')) assert tag.lower().render_as('html') == 'mary had a little lamb' def test_upper(self): assert HRef('/').upper() == HRef('/') href = HRef('http://www.example.com', 'Hyperlinked text.') assert href.upper().render_as('latex') == '\\href{http://www.example.com}{HYPERLINKED TEXT.}' tag = HRef('info.html', Text(), Text('Mary ', 'had ', 'a little lamb')) assert tag.upper().render_as('html') == 'MARY HAD A LITTLE LAMB' def test_capfirst(self): assert HRef('/').capfirst() == Text(HRef('/')) tag = HRef('info.html', Text(), Text('Mary ', 'had ', 'a Little Lamb')) assert tag.capfirst().render_as('html') == 'Mary had a Little Lamb' assert tag.lower().capfirst().render_as('html') == 'Mary had a little lamb' def test_capitalize(self): assert HRef('/').capitalize() == Text(HRef('/')) tag = HRef('info.html', Text(), Text('Mary ', 'had ', 'a Little Lamb')) assert tag.capitalize().render_as('html') == 'Mary had a little lamb' assert tag.lower().capitalize().render_as('html') == 'Mary had a little lamb' def test_add_period(self): assert HRef('/').add_period() == HRef('/') tag = HRef('info.html', Text(), Text('Mary ', 'had ', 'a little lamb')) assert tag.add_period().render_as('html') == 'Mary had a little lamb.' assert tag.add_period().add_period().render_as('html') == 'Mary had a little lamb.' def test_split(self): empty = HRef('/') assert empty.split() == [] assert empty.split('abc') == [empty] href = HRef('/', 'World Wide Web') assert href.split() == [HRef('/', 'World'), HRef('/', 'Wide'), HRef('/', 'Web')] result = Text('Estimated size of the ', href).split() assert result == [ Text('Estimated'), Text('size'), Text('of'), Text('the'), Text(HRef('/', 'World')), Text(HRef('/', 'Wide')), Text(HRef('/', 'Web')), ] text = Text(Tag('em', Text(Tag('strong', HRef('/', ' Very, very'), ' bad'), ' guys')), '! ') assert text.render_as('html') == ' Very, very bad guys! ' assert text.split(', ') == [ Text(Tag('em', Tag('strong', HRef('/', ' Very')))), Text(Tag('em', Tag('strong', HRef('/', 'very'), ' bad'), ' guys'), '! '), ] assert text.split(' ') == [ Text(), Text(), Text(Tag('em', Tag('strong', HRef('/', 'Very,')))), Text(Tag('em', Tag('strong', HRef('/', 'very')))), Text(Tag('em', Tag('strong', 'bad'))), Text(Tag('em', 'guys'), '!'), Text(), ] assert text.split(' ', keep_empty_parts=False) == [ Text(Tag('em', Tag('strong', HRef('/', 'Very,')))), Text(Tag('em', Tag('strong', HRef('/', 'very')))), Text(Tag('em', Tag('strong', 'bad'))), Text(Tag('em', 'guys'), '!'), ] assert text.split() == [ Text(Tag('em', Tag('strong', HRef('/', 'Very,')))), Text(Tag('em', Tag('strong', HRef('/', 'very')))), Text(Tag('em', Tag('strong', 'bad'))), Text(Tag('em', 'guys'), '!'), ] assert text.split(keep_empty_parts=True) == [ Text(), Text(Tag('em', Tag('strong', HRef('/', 'Very,')))), Text(Tag('em', Tag('strong', HRef('/', 'very')))), Text(Tag('em', Tag('strong', 'bad'))), Text(Tag('em', 'guys'), '!'), Text(), ] text = Text(' A', Tag('em', ' big', HRef('/', ' ', Tag('strong', 'no-no'), '! '))) assert text.render_as('html') == ' A big no-no! ' assert text.split('-') == [ Text(' A', Tag('em', ' big', HRef('/', ' ', Tag('strong', 'no')))), Text(Tag('em', HRef('/', Tag('strong', 'no'), '! '))), ] assert text.split(' ') == [ Text(), Text('A'), Text(Tag('em', 'big')), Text(Tag('em', HRef('/', Tag('strong', 'no-no'), '!'))), Text(), Text(), ] assert text.split(' ', keep_empty_parts=False) == [ Text('A'), Text(Tag('em', 'big')), Text(Tag('em', HRef('/', Tag('strong', 'no-no'), '!'))), ] assert text.split() == [ Text('A'), Text(Tag('em', 'big')), Text(Tag('em', HRef('/', Tag('strong', 'no-no'), '!'))), ] assert text.split(keep_empty_parts=True) == [ Text(), Text('A'), Text(Tag('em', 'big')), Text(Tag('em', HRef('/', Tag('strong', 'no-no'), '!'))), Text(), ] def test_join(self): href = HRef('/', 'World Wide Web') result = Text('-').join(Text('Estimated size of the ', href).split()) assert result == Text('Estimated-size-of-the-', HRef('/', 'World'), '-', HRef('/', 'Wide'), '-', HRef('/', 'Web')) def test_startswith(self): tag = HRef('info.html', Text(), Text('Mary ', 'had ', 'a little lamb')) assert tag.startswith('') assert tag.startswith('M') assert tag.startswith('Mary') assert not tag.startswith('m') assert not tag.startswith('mary') tag = HRef('/', 'a', 'b', 'c') assert tag.startswith('ab') tag = HRef('/', 'This is good') assert tag.startswith(('This', 'That')) assert not tag.startswith(('That', 'Those')) text = Text('This ', HRef('/', 'is'), ' good') assert not text.startswith('This is') def test_endswith(self): tag = HRef('info.html', Text(), Text('Mary ', 'had ', 'a little lamb')) assert tag.endswith('') assert not tag.endswith('B') assert tag.endswith('b') assert tag.endswith('lamb') tag = HRef('/', 'a', 'b', 'c') assert tag.endswith('bc') tag = HRef('/', 'This is good') assert tag.endswith(('good', 'wonderful')) assert not tag.endswith(('bad', 'awful')) text = Text('This ', HRef('/', 'is'), ' good') assert not text.endswith('is good') def test_isalpha(self): assert not HRef('/').isalpha() assert not HRef('/', 'a b c').isalpha() assert HRef('/', 'abc').isalpha() assert HRef('/', u'文字').isalpha() def test_render_as(self): href = HRef('http://www.example.com', 'Hyperlinked text.') assert href.render_as('latex') == '\\href{http://www.example.com}{Hyperlinked text.}' assert href.render_as('html') == 'Hyperlinked text.' assert href.render_as('plaintext') == 'Hyperlinked text.' tag = HRef('info.html', Text(), Text('Mary ', 'had ', 'a little lamb')) assert tag.render_as('html') == 'Mary had a little lamb' class TestProtected(TextTestMixin, TestCase): def test__init__(self): assert six.text_type(Protected('a', '', 'c')) == 'ac' assert six.text_type(Protected('a', Text(), 'c')) == 'ac' text = Protected(Protected(), Protected('mary ', 'had ', 'a little lamb')) assert text == Protected(Protected('mary had a little lamb')) assert six.text_type(text) == 'mary had a little lamb' text = six.text_type(Protected('a', Protected('b', 'c'), Tag('em', 'x'), Symbol('nbsp'), 'd')) assert text == 'abcxd' with pytest.raises(ValueError): Protected({}) with pytest.raises(ValueError): Protected(0, 0) def test__eq__(self): assert Protected() == Protected() assert not (Protected() != Protected()) assert Protected('Cat') == Protected('Cat') assert not (Protected('Cat') != Protected('Cat')) assert Protected('Cat', ' tail') == Protected('Cat tail') assert not (Protected('Cat', ' tail') != Protected('Cat tail')) assert Protected('Cat') != Protected('Dog') assert not (Protected('Cat') == Protected('Dog')) def test__len__(self): assert len(Protected()) == 0 assert len(Protected('Never', ' ', 'Knows', ' ', 'Best')) == len('Never Knows Best') assert len(Protected('Never', ' ', Tag('em', 'Knows', ' '), 'Best')) == len('Never Knows Best') assert len(Protected('Never', ' ', Tag('em', HRef('/', 'Knows'), ' '), 'Best')) == len('Never Knows Best') def test__str__(self): assert six.text_type(Protected()) == '' assert six.text_type(Protected(u'Чудаки украшают мир')) == u'Чудаки украшают мир' def test__contains__(self): text = Protected('mary ', 'had ', 'a little lamb') assert 'mary' in text assert 'Mary' not in text assert 'had a little' in text text = Protected('a', 'b', 'c') assert 'abc' in text def test_capfirst(self): text = Protected('mary ', 'had ', 'a Little Lamb') assert six.text_type(text.capitalize()) == 'mary had a Little Lamb' def test_capitalize(self): text = Protected('mary ', 'had ', 'a little lamb') assert six.text_type(text.capitalize()) == 'mary had a little lamb' def test__add__(self): t = Protected('a') assert t + 'b' == Text(Protected('a'), 'b') assert t + t == Text(Protected('aa')) def test__getitem__(self): t = Protected('1234567890') with pytest.raises(TypeError): 1 in t assert t == Protected('1234567890') assert t[:0] == Protected('') assert t[:1] == Protected('1') assert t[:3] == Protected('123') assert t[:5] == Protected('12345') assert t[:7] == Protected('1234567') assert t[:10] == Protected('1234567890') assert t[:100] == Protected('1234567890') assert t[:-100] == Protected('') assert t[:-10] == Protected('') assert t[:-9] == Protected('1') assert t[:-7] == Protected('123') assert t[:-5] == Protected('12345') assert t[:-3] == Protected('1234567') assert t[-100:] == Protected('1234567890') assert t[-10:] == Protected('1234567890') assert t[-9:] == Protected('234567890') assert t[-7:] == Protected('4567890') assert t[-5:] == Protected('67890') assert t[-3:] == Protected('890') assert t[1:] == Protected('234567890') assert t[3:] == Protected('4567890') assert t[5:] == Protected('67890') assert t[7:] == Protected('890') assert t[10:] == Protected('') assert t[100:] == Protected('') assert t[0:10] == Protected('1234567890') assert t[0:100] == Protected('1234567890') assert t[2:3] == Protected('3') assert t[2:4] == Protected('34') assert t[3:7] == Protected('4567') assert t[4:7] == Protected('567') assert t[4:7] == Protected('567') assert t[7:9] == Protected('89') assert t[100:200] == Protected('') t = Protected('123', Protected('456', Protected('789')), '0') assert t[:3] == Protected('123') assert t[:5] == Protected('123', Protected('45')) assert t[:7] == Protected('123', Protected('456', Protected('7'))) assert t[:10] == Protected('123', Protected('456', Protected('789')), '0') assert t[:100] == Protected('123', Protected('456', Protected('789')), '0') assert t[:-7] == Protected('123') assert t[:-5] == Protected('123', Protected('45')) assert t[:-3] == Protected('123', Protected('456', Protected('7'))) def test_append(self): text = Protected('Chuck Norris') assert (text + ' wins!').render_as('latex') == '{Chuck Norris} wins!' assert text.append(' wins!').render_as('latex') == '{Chuck Norris wins!}' def test_upper(self): text = Protected('Mary ', 'had ', 'a little lamb') assert six.text_type(text.upper()) == 'Mary had a little lamb' text = Protected('mary ', 'had ', 'a little lamb') assert six.text_type(text.upper()) == 'mary had a little lamb' def test_lower(self): text = Protected('Mary ', 'had ', 'a little lamb') assert six.text_type(text.lower()) == 'Mary had a little lamb' text = Protected('MARY ', 'HAD ', 'A LITTLE LAMB') assert six.text_type(text.lower()) == 'MARY HAD A LITTLE LAMB' def test_startswith(self): assert not Protected().startswith('.') assert not Protected().startswith(('.', '!')) text = Protected('mary ', 'had ', 'a little lamb') assert not text.startswith('M') assert text.startswith('m') text = Protected('a', 'b', 'c') assert text.startswith('ab') assert Protected('This is good').startswith(('This', 'That')) assert not Protected('This is good').startswith(('That', 'Those')) def test_endswith(self): assert not Protected().endswith('.') assert not Protected().endswith(('.', '!')) text = Protected('mary ', 'had ', 'a little lamb') assert not text.endswith('B') assert text.endswith('b') text = Protected('a', 'b', 'c') assert text.endswith('bc') assert Protected('This is good').endswith(('good', 'wonderful')) assert not Protected('This is good').endswith(('bad', 'awful')) def test_isalpha(self): assert not Protected().isalpha() assert not Protected('a b c').isalpha() assert Protected('abc').isalpha() assert Protected(u'文字').isalpha() def test_join(self): assert Protected(' ').join(['a', Protected('b c')]).render_as('latex') == 'a{ b c}' assert Protected(nbsp).join(['a', 'b', 'c']).render_as('latex') == 'a{~}b{~}c' assert nbsp.join(['a', Protected('b'), 'c']).render_as('latex') == 'a~{b}~c' assert String('-').join([Protected('a'), Protected('b'), Protected('c')]).render_as('latex') == '{a}-{b}-{c}' result = Protected(' and ').join(['a', 'b', 'c']).render_as('latex') assert result == 'a{ and }b{ and }c' def test_split(self): assert Protected().split() == [Protected()] assert Protected().split('abc') == [Protected()] assert Protected('a').split() == [Protected('a')] assert Protected('a ').split() == [Protected('a ')] assert Protected(' a ').split() == [Protected(' a ')] assert Protected('a + b').split() == [Protected('a + b')] assert Protected('a + b').split(' + ') == [Protected('a + b')] assert Protected('abc').split('xyz') == [Protected('abc')] assert Protected('---').split('--') == [Protected('---')] assert Protected('---').split('-') == [Protected('---')] def test_add_period(self): assert not Protected().endswith(('.', '!', '?')) assert not textutils.is_terminated(Protected()) assert Protected().add_period().render_as('latex') == '{}' text = Protected("That's all, folks") assert text.add_period().render_as('latex') == "{That's all, folks.}" def test_render_as(self): string = Protected('a < b') assert string.render_as('latex') == '{a < b}' assert string.render_as('html') == 'a < b' class TestSymbol(TextTestMixin, TestCase): def test__init__(self): assert nbsp.name == 'nbsp' def test__eq__(self): assert Symbol('nbsp') == Symbol('nbsp') assert not Symbol('nbsp') != Symbol('nbsp') assert not Symbol('nbsp') == Symbol('ndash') assert Symbol('nbsp') != Symbol('ndash') assert Text(nbsp, nbsp) == Text(Symbol('nbsp'), Symbol('nbsp')) def test__str__(self): assert six.text_type(nbsp) == '' def test__len__(self): assert len(nbsp) == 1 def test__contains__(self): assert not '' in nbsp assert not 'abc' in nbsp def test__getitem__(self): symbol = Symbol('nbsp') assert symbol[0] == Symbol('nbsp') assert symbol[0:] == Symbol('nbsp') assert symbol[0:5] == Symbol('nbsp') assert symbol[1:] == String() assert symbol[1:5] == String() with pytest.raises(IndexError): symbol[1] def test__add__(self): assert (nbsp + '.').render_as('html') == ' .' def test_split(self): assert nbsp.split() == [nbsp] text = Text('F.', nbsp, 'Miller') assert text.split() == [text] def test_join(self): assert nbsp.join(['S.', 'Jerusalem']) == Text('S.', nbsp, 'Jerusalem') def test_upper(self): assert nbsp.upper().render_as('html') == ' ' def test_lower(self): assert nbsp.lower().render_as('html') == ' ' def test_capfirst(self): assert Text(nbsp, nbsp).capfirst().render_as('html') == '  ' def test_capitalize(self): assert Text(nbsp, nbsp).capitalize().render_as('html') == '  ' def test_add_period(self): assert nbsp.add_period().render_as('html') == ' .' assert nbsp.add_period().add_period().render_as('html') == ' .' def test_append(self): assert nbsp.append('.').render_as('html') == ' .' def test_startswith(self): assert not nbsp.startswith('.') assert not nbsp.startswith(('.', '?!')) def test_endswith(self): assert not nbsp.endswith('.') assert not nbsp.endswith(('.', '?!')) def test_isalpha(self): assert not nbsp.isalpha() def test_render_as(self): assert nbsp.render_as('latex') == '~' assert nbsp.render_as('html') == ' ' assert Text(nbsp, nbsp).render_as('html') == '  ' ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5226126 pybtex-0.24.0/tests/utils.py0000644000175000001440000000251500000000000015536 0ustar00agusers00000000000000# Copyright (c) 2006-2021 Andrey Golovizin # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. import pkgutil from difflib import unified_diff def diff(src, dst): return '\n'.join(unified_diff(src.splitlines(), dst.splitlines())) def get_data(filename, package='tests.data'): return pkgutil.get_data(package, filename).decode('UTF-8') ././@PaxHeader0000000000000000000000000000003400000000000011452 xustar000000000000000028 mtime=1610911594.5226126 pybtex-0.24.0/tox.ini0000644000175000001440000000005500000000000014172 0ustar00agusers00000000000000[testenv] extras = test commands = pytest -v