diff options
author | Karl Berry <karl@freefriends.org> | 2009-08-14 23:55:17 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2009-08-14 23:55:17 +0000 |
commit | 0d16b3b7e2ce00f9de58a809a4ce47b39aaef068 (patch) | |
tree | 791c0999c492978ee744af2cb14e3605c135ba2d /Master/texmf-dist/doc | |
parent | 8c1962d0507c747e0e1a8870dfd758365c5f63ff (diff) |
bibhtml 2.0 (9aug09)
git-svn-id: svn://tug.org/texlive/trunk@14680 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc')
-rw-r--r-- | Master/texmf-dist/doc/bibtex/bibhtml/README | 14 | ||||
-rw-r--r-- | Master/texmf-dist/doc/bibtex/bibhtml/bibhtml | 6 | ||||
-rw-r--r-- | Master/texmf-dist/doc/bibtex/bibhtml/bibhtml-extract-aux.xslt | 99 | ||||
-rw-r--r-- | Master/texmf-dist/doc/bibtex/bibhtml/bibhtml-insert-bib.xslt | 50 | ||||
-rw-r--r-- | Master/texmf-dist/doc/bibtex/bibhtml/bibhtml.html | 490 | ||||
-rw-r--r-- | Master/texmf-dist/doc/bibtex/bibhtml/bibhtml.xslt | 55 | ||||
-rw-r--r-- | Master/texmf-dist/doc/bibtex/bibhtml/bibrefs.bib | 221 | ||||
-rw-r--r-- | Master/texmf-dist/doc/bibtex/bibhtml/detex.sed | 55 |
8 files changed, 707 insertions, 283 deletions
diff --git a/Master/texmf-dist/doc/bibtex/bibhtml/README b/Master/texmf-dist/doc/bibtex/bibhtml/README new file mode 100644 index 00000000000..cdd8f9b5dab --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/bibhtml/README @@ -0,0 +1,14 @@ +Bibhtml consists of a set of BibTeX style files, which allow you to +use BibTeX to produce bibliographies in HTML. These are modelled +closely on the standard BibTeX style files. + +To accompany them, this package includes a pair of XSLT scripts which +illustrate how you might integrate these generated bibliographies into +an XML/HTML workflow. + +The long-term URL for this page is http://purl.org/nxg/dist/bibhtml + +This distribution contains bibhtml version 2.0, released 2009 August 9. + + +Norman Gray, http://nxg.me.uk diff --git a/Master/texmf-dist/doc/bibtex/bibhtml/bibhtml b/Master/texmf-dist/doc/bibtex/bibhtml/bibhtml index 4d645bba496..a7edf5fc826 100644 --- a/Master/texmf-dist/doc/bibtex/bibhtml/bibhtml +++ b/Master/texmf-dist/doc/bibtex/bibhtml/bibhtml @@ -25,14 +25,14 @@ # See the file LICENCE for a copy of the GPL. # You can also find an online copy at http://www.gnu.org/copyleft/gpl.html . # -# $Id: bibhtml.in,v 1.5 2005/09/19 16:18:43 norman Exp $ +# $Id$ # # See <http://www.astro.gla.ac.uk/users/norman/distrib/bibhtml.html> # for documentation. use strict; -my $version = 'Bibhtml, version 1.3, Norman Gray <norman@astro.gla.ac.uk>, 2006 October 31'; +my $version = 'Bibhtml, version 2.0, Norman Gray <norman@astro.gla.ac.uk>, 2009 August 9'; # configuration... @@ -439,7 +439,7 @@ sub readconfig { sub printhelp { print STDOUT <<\_EOD; -This is bibhtml version 1.3, 2006 October 31. +This is bibhtml version 2.0, 2009 August 9. Usage: % bibhtml [options...] filename... diff --git a/Master/texmf-dist/doc/bibtex/bibhtml/bibhtml-extract-aux.xslt b/Master/texmf-dist/doc/bibtex/bibhtml/bibhtml-extract-aux.xslt new file mode 100644 index 00000000000..b630d338e7a --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/bibhtml/bibhtml-extract-aux.xslt @@ -0,0 +1,99 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ! bibhtml-extract-aux.xslt + ! + ! Part of bibhtml, version 2.0, released 2009 August 9 + ! Hg Node 4a5600417b09. + ! See <http://purl.org/nxg/dist/bibhtml> + ! + ! This sample script processes an XML file which contains elements like + ! <span class='cite'>citation</span>, extracting each of the `citation' + ! strings and emitting a .aux file which, once a \bibdata line has been + ! appended, is suitable for processing with BibTeX. Adapt or extend as + ! appropriate. + !--> +<stylesheet xmlns="http://www.w3.org/1999/XSL/Transform" + version="1.0" + exclude-result-prefixes="h" + xmlns:h="http://www.w3.org/1999/xhtml"> + + <output method="xml" + version="1.0" + doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" + doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" + omit-xml-declaration="yes"/> + + <template match="/"> + <text>\relax +</text> + <apply-templates select="//h:span[@class='cite']"/> + <apply-templates select='//processing-instruction("bibliography")'/> + <!-- + <call-template name="make-tex-command"> + <with-param name="command">bibstyle</with-param> + <with-param name="content">plainhtml</with-param> + </call-template> + --> + </template> + + <template match="h:span[@class='cite']"> + <!-- + <h:a> + <attribute name='href'> + <text>#</text> + <copy-of select='.'/> + </attribute> + <copy-of select='.'/> + </h:a> + --> + <call-template name="make-tex-command"> + <with-param name="command">citation</with-param> + <with-param name="content"> + <copy-of select="."/> + </with-param> + </call-template> + </template> + + <template match='processing-instruction("bibliography")'> + <choose> + <when test='string-length(.) = 0'> + <text>% No bibliography file specified! +</text> + </when> + <when test='contains(.," ")'> + <call-template name='make-tex-command'> + <with-param name='command'>bibdata</with-param> + <with-param name='content'> + <value-of select='substring-before(.," ")'/> + </with-param> + </call-template> + <call-template name='make-tex-command'> + <with-param name='command'>bibstyle</with-param> + <with-param name='content'> + <value-of select='substring-after(.," ")'/> + </with-param> + </call-template> + </when> + <otherwise> + <call-template name='make-tex-command'> + <with-param name='command'>bibdata</with-param> + <with-param name='content'> + <value-of select='normalize-space(.)'/> + </with-param> + </call-template> + </otherwise> + </choose> + </template> + + <template name="make-tex-command"> + <param name="command"/> + <param name="content"/> + <text>\</text> + <value-of select="$command"/> + <text>{</text> + <value-of select="$content"/> + <text>} +</text> + </template> + +</stylesheet> diff --git a/Master/texmf-dist/doc/bibtex/bibhtml/bibhtml-insert-bib.xslt b/Master/texmf-dist/doc/bibtex/bibhtml/bibhtml-insert-bib.xslt new file mode 100644 index 00000000000..fb1d64b319a --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/bibhtml/bibhtml-insert-bib.xslt @@ -0,0 +1,50 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ! bibhtml-extract-aux.xslt + ! + ! Part of bibhtml, version 2.0, released 2009 August 9 + ! Hg node 4a5600417b09. + ! See <http://purl.org/nxg/dist/bibhtml> + ! + ! This sample script processes an XML file which contains elements like + ! <span class='cite'>citation</span>, extracting each of the `citation' + ! strings and emitting a .aux file which, once a \bibdata line has been + ! appended, is suitable for processing with BibTeX. Adapt or extend as + ! appropriate. + !--> +<stylesheet xmlns="http://www.w3.org/1999/XSL/Transform" + version="1.0" + exclude-result-prefixes="h" + xmlns:h="http://www.w3.org/1999/xhtml"> + + <output method="xml" + version="1.0" + doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" + doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" + omit-xml-declaration="yes"/> + + <param name='bibfile-name'>bibliography</param> + + + <!-- identity transform --> + <template match="*"> + <copy> + <copy-of select="@*"/> + <apply-templates/> + </copy> + </template> + + <template match="h:span[@class='cite']"> + <h:a> + <attribute name='href'> + <text>#</text> + <copy-of select='.'/> + </attribute> + <copy-of select='.'/> + </h:a> + </template> + + <template match='processing-instruction("bibliography")'> + <copy-of select='document(concat($bibfile-name,".bbl"))'/> + </template> +</stylesheet> diff --git a/Master/texmf-dist/doc/bibtex/bibhtml/bibhtml.html b/Master/texmf-dist/doc/bibtex/bibhtml/bibhtml.html index 0c76961e2b1..ae24e497a0c 100644 --- a/Master/texmf-dist/doc/bibtex/bibhtml/bibhtml.html +++ b/Master/texmf-dist/doc/bibtex/bibhtml/bibhtml.html @@ -1,63 +1,59 @@ -<?xml version="1.0"?> <!-- -*- nxml -*- --> - -<!-- $Id: bibhtml.html.in,v 1.10 2006/10/31 15:39:36 norman Exp $ --> - +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> - <head> + <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Bibhtml documentation</title> - <meta name="keywords" content="bibhtml, bibtex, HTML"/> - <link href="http://nxg.me.uk" rev="author"/> - <link type="text/css" - rel="stylesheet" - href="http://nxg.me.uk/style/base.css"/> + <meta name="keywords" content="bibhtml, bibtex, HTML" /> + <link href="http://nxg.me.uk" rev="author" /> + <link type="text/css" rel="stylesheet" href="http://nxg.me.uk/style/base.css" /> </head> <body> <h1>Bibhtml</h1> -<div class='abstract'> +<div class="abstract"> <p><em>Bibhtml</em> consists of a set of BibTeX style files, which -allow you to use BibTeX to produce bibliographies in HTML. As well, -it includes a Perl script which orchestrates the various steps -required to manage such a bibliography for one or more HTML files. -The references in the text are linked directly to the corresponding -bibliography entry, and if a URL is defined in the entry within the -BibTeX database file, then the generated bibliography entry is linked -to this.</p> +allow you to use BibTeX to produce bibliographies in HTML. These are +modelled closely on the standard BibTeX style files.</p> -<p>This page is <code>http://purl.org/nxg/dist/bibhtml</code></p> +<p>To accompany them, this package includes a pair of XSLT scripts +which illustrate how you might integrate these generated +bibliographies into an XML/HTML workflow.</p> + +<p>The long-term URL for this page is <code>http://purl.org/nxg/dist/bibhtml</code></p> <p>This documentation describes -<em>bibhtml, version 1.3, 2006 October 31</em>.</p> +bibhtml version 2.0, released 2009 August 9.</p> </div> <h3>Contents</h3> <ul> -<li><a href='#usage'>Running <em>bibhtml</em></a> -<ul> -<li>The BibTeX database</li> -<li>Preparing the text</li> -<li><a href='#pis' >Preparing the bibliography file -- processing -instructions supported</a></li> -<li><a href='#options'>Supported options</a></li> -</ul></li> -<li><a href='#bst-files'>BibTeX style files</a></li> -<li><a href='#install'>Installation</a></li> -<li><a href='#two-pass'>Two-pass bibhtml</a></li> -<li><a href='#example'>Example</a></li> -<li><a href='#refs'>References</a></li> -<li><a href='#dist'>Distribution</a> - <ul> - <li><a href='#changes'>Changes</a></li> - <li><a href='#get'>Obtaining <em>bibhtml</em></a></li> - <li><a href='#licence'>Licence</a></li> - </ul> -</li> +<li><a href="#bst-files">BibTeX style files</a></li> +<li><a href="#xslt">XSLT scripts</a></li> +<li><a href="#postprocess">Postprocessing HTML bibliographies</a></li> +<li><a href="#install">Installation</a></li> +<li><a href="#usage">The <em>bibhtml</em> script</a></li> +<li><a href="#example">Example</a></li> +<li><a href="#refs">References</a></li> +<li><a href="#dist">Distribution, licence and source code</a></li> </ul> <p><em>Bibhtml</em> consists of a set of BibTeX style files, which -allow you to use BibTeX to produce bibliographies in HTML. As well, +allow you to use BibTeX to produce bibliographies in HTML. These are +modelled closely on the standard BibTeX style files.</p> + +<p>To accompany them, this package includes a pair of XSLT scripts +which illustrate how you might integrate these generated +bibliographies into an XML/HTML workflow.</p> + +<p>The output of these style files is usable as-is, but it benefits +from some post-processing, to remove TeX-isms. There's a <em>sed</em> +script in the distribution which does exactly that, called +<code>detex.sed</code>. If you want to make a version of that im some +other regexp-supporting language, let me know and I can include it in +the distribution.</p> + +<p>As well, it includes a Perl script which orchestrates the various steps required to manage such a bibliography for one or more HTML files. The references in the text are linked directly to the corresponding @@ -65,36 +61,173 @@ bibliography entry, and if a URL is defined in the entry within the BibTeX database file, then the generated bibliography entry is linked to this.</p> -<p>The BibTeX style files are <code>plainhtml.bst</code> and -<code>alphahtml.bst</code>, which are derived from the standard files -<code>plain.bst</code> and <code>alpha.bst</code>. As well, there are +<p>The BibTeX style files are +<code>abbrvhtml.bst</code>, +<code>alphahtml.bst</code>, +<code>plainhtml.bst</code> and +<code>unsrthtml.bst</code>. +As well, there are <code>.bst</code> files which produce their output in date order. To use them, you should generate an <code>.aux</code> file by some appropriate means, and include the line <code>\bibstyle{plainhtml}</code>. Run BibTeX, and the result is a -<code>.bbl</code> file, in broadly the `plain' style, but formatted +<code>.bbl</code> file, in broadly the same style as the corresponding +traditional BibTeX one, but formatted using HTML rather than LaTeX. This might form a useful component of a XSLT-based workflow. For further details, see the discussion of the -style files <a href="#bst-files" >below</a>.</p> - -<p>The <em>bibhtml</em> script can orchestrate generating and using -this <code>.aux</code> file, and you can specify the style file to use -either with the <a href="#opt-s"><code>-s</code> option</a>, or with -the processing instructions described <a href="#pis" >below</a>.</p> - -<h2><a name='usage'>Running <em>bibhtml</em></a></h2> +style files <a href="#bst-files">below</a>.</p> -<h3>The BibTeX database</h3> +<p>There is also a Perl script, <em>bibhtml</em>, which can orchestrate generating and using +this <code>.aux</code> file. This script isn't really maintained any +more, but it is still distributed, and documented <a href="#usage">below</a>.</p> <p><em>Bibhtml</em> works with a standard BibTeX database -- it is intended to be compatible with a database used in the standard way -with LaTeX. The <a href="#bst-files" >BibTeX style files</a> +with LaTeX. The <a href="#bst-files">BibTeX style files</a> distributed with this package define an additional <code>url</code> field: if this is present, then the generated entry will contain a link to this URL. They also define an <code>eprint</code> field -- if you do not use the LANL preprint archive, this will be of no interest to you.</p> +<h2><a name="bst-files" id="bst-files">BibTeX style files</a></h2> + +<p>The package includes several BibTeX style files. As well as the +ones directly derived from the standard styles, there are also <code>plainhtmldate.bst</code> and +<code>plainhtmldater.bst</code>, which are derived from the standard +<code>plain.bst</code> which sort the +output by date and reverse date, rather than by author.</p> + +<p>In version 2 of the <em>bibhtml</em> package, the +<code>*html.bst</code> files are derived from the traditional files +using the <a href="http://purl.org/nxg/dist/urlbst">urlbst</a> +package, and then minimally adjusted so as to produce HTML rather than +LaTeX.</p> + +<p>Since they are derived via the <em>urlbst</em> package, these style +files support an additional entry type, <code>@webpage</code>, and two +additional fields on all entry types, <code>url</code> and +<code>lastchecked</code>, which give the URL associated with the +reference, and the date at which the URL was last verified to be still +present.</p> + +<p>The distributed <code>.bst</code> files have two configurable +parameters, which you might want to adjust for your installation:</p> + +<p>The variable <code>'xxxmirror</code> gives the host name of the arXiv mirror which will be used +when generating links to eprints. The default setting in the +<code>.bst</code> files is:</p> +<pre> +"xxx.arxiv.org" 'xxxmirror := +</pre> + +<p>By default, the style files generate link targets in the +bibliography with the same name as the citation key. Thus a BibTeX +entry with key <code>surname99</code>, say, would appear in the +generated HTML <code>.bbl</code> file wrapped in <code><a +name="surname99">...</a></code>. If this is inconvenient, +perhaps because it conflicts with other links within the file, +then you can adjust the <code>'hrefprefix</code> variable within the +style file, to specify a prefix which should appear in the link key. +Thus setting</p> +<pre> +"ref:" 'hrefprefix := +</pre> +<p>in the <code>.bst</code> file would produce links like <code><a +name="ref:surname99">...</a></code> in the <code>.bbl</code> +file.</p> + +<h2><a name="xslt" id="xslt">XSLT scripts</a></h2> + +<p>The distribution includes a pair of sample XSLT scripts:</p> +<ul> +<li><code>bibhtml-extract-aux.xslt</code> shows how you might use XSLT to +extract citations from a source file into an <code>.aux</code> +file, for processing into a <code>.bbl</code> file;</li> +<li><code>bibhtml-insert-bib.xslt</code> shows how you might use XSLT +to insert the resulting <code>.bbl</code> file into the original +file.</li> +</ul> + +<p>The scripts assume that a source file is in XHTML, and has +citations marked up as</p> +<pre> +<span class='cite'>ref99</span> +</pre> +<p>and that the bibliography is indicated with</p> +<pre> +<?bibliography <em>bibdata</em> <em>bibstyle</em>?> +</pre> +<p>A suitable workflow, taking as an example the source file for the +page you are reading, is:</p> +<pre> +% xsltproc bibhtml-extract-aux.xslt bibhtml.html >bibhtml.aux +% bibtex bibhtml +This is BibTeX, Version 0.99c (Web2C 7.5.7) +The top-level auxiliary file: bibhtml.aux +The style file: unsrthtml.bst +Database file #1: bibrefs.bib +% sed -f detex.sed bibhtml.bbl >bibhtml.bbl.tmp +% mv bibhtml.bbl.tmp bibhtml.bbl +% xsltproc --stringparam bibfile-name bibhtml \ + bibhtml-insert-bib.xslt bibhtml.html >bibhtml-new.html +</pre> + +<p>The <code>bibhtml.xslt</code> script, when run over a source file, +generates a <code>.aux</code> suitable for processing with BibTeX. +The resulting <code>.bbl</code> file, possibly after +<a href="#postprocessing">post-processing</a>, can be included in the +source XHTML with an XSLT script which includes something like:</p> +<pre> +<xsl:template select="processing-instruction('bibliography')"> + <xsl:copy-of select="document('mybib.bbl')"/> +</xsl:template> +</pre> + +<h2><a name="postprocess" id="postprocess">Postprocessing HTML bibliographies</a></h2> + +<p>The output of the BibTeX styles is designed so that it is generally +reasonably usable without any post-processing. However it is not +ideal, since there are occasionaly TeX-isms such as backslash-escaped +characters and the like, depending on what is in the source +<code>.bib</code> file. Also, without post-processing any DOIs in +the source file aren't formed into links.</p> + +<p>The distribution includes a <code>sed</code> file, +<code>detex.sed</code>, which can do appropriate post-processing. +Thus the normal workflow is:</p> +<pre> +% bibtex mydoc +% sed -f detex.sed mydoc.bbl >mydoc.bbl.tmp +% mv mydoc.bbl.tmp mydoc.bbl +</pre> +<p>Since it uses <code>sed</code>, this is fairly obviously +unix-specific, but if anyone would like to contribute a script with +similar functionality (it's just a few moderately tortuous regular +expressions), I'd be delighted to include it in the distribution.</p> + +<h2><a name="install" id="install">Installation</a></h2> + +<p>The <code>.bst</code> files have to be installed +<a href="http://www.tex.ac.uk/cgi-bin/texfaq2html?label=inst-wlcf">‘somewhere where LaTeX can find them’</a>. If you give the command +<code>kpsepath bst</code> you can see the list of directories that +BibTeX searches for <code>.bst</code> files – on my system, I'd put +them into <code>/usr/local/texlive/texmf-local/bibtex/bst</code>, +which is a directory for system-wide local additions.</p> + +<p>If you wish, you may change the distributed BibTeX style files (see +<a href="#bst-files">above</a>) to the extent of changing the +`eprint' mirror site from the master <code>xxx.arxiv.org</code> to a +more local mirror. If you don't use the LANL preprint archive, this +will be of no interest to you.</p> + +<h2><a name="usage" id="usage">The <em>bibhtml</em> script</a></h2> + +<p>As noted above, this script should still work and is distributed on +that basis, but it's no longer maintained, and won't be further developed.</p> + +<h3>The BibTeX database</h3> + <p>TeX features such as <code>~</code> and <code>--</code> are translated to corresponding HTML entities (controlled with the <code>+3</code> switch, see below), but other TeX constructions will make their way @@ -113,7 +246,7 @@ it. When you run <em>bibhtml</em>, it generates an <code>.aux</code> file which makes BibTeX produce references for exactly those keys which appear in this way. </p> -<h3><a name="pis" >Preparing the bibliography file -- processing +<h3><a name="pis" id="pis">Preparing the bibliography file -- processing instructions supported</a></h3> <p>The bibliography file is an ordinary HTML document (which may @@ -139,7 +272,7 @@ generated file (perhaps the output of a separate XML tool-chain, for example), which will not therefore have to be rescanned in future.</p> <p>You can specify the bibliography database and style file either on -the command line (see <a href="#options" >below</a>) or using the +the command line (see <a href="#options">below</a>) or using the <code><?bibhtml bibdata </code><em>bibfile</em><code>?></code> and <code><?bibhtml bibstyle</code><em>stylefile</em><code>?></code> instructions. The value of `bibdata' is cumulative, and appends to any value specified @@ -177,7 +310,7 @@ command in a LaTex file; see also the <code>-s</code> command-line option.</dd> <dd>Replace the <em>following</em> line by today's date.</dd> </dl> -<h3><a name='options'>Supported options</a></h3> +<h3><a name="options" id="options">Supported options</a></h3> <p><em>Usage</em></p> <pre> @@ -211,13 +344,13 @@ database. This is equivalent to <code>\nocite{*}</code> in LaTeX.</dd> <code>\bibliography{}</code> command in LaTeX. Unless <em>you</em> happen to keep all your references in a file called <code>bib.bib</code>, you'll probably want to change this. Or you can use the <code><?bibhtml -bibdata xxx?></code> <a href="#pis" >processing instruction</a>.</dd> +bibdata xxx?></code> <a href="#pis">processing instruction</a>.</dd> <dt>-c configfile</dt> <dd>Specifies a configuration file which contains a single line of options, which are inserted in the command line at that point.</dd> -<dt><a name='merge'>--merge</a></dt> +<dt><a name="merge" id="merge">--merge</a></dt> <dd>In this special case, <em>bibhtml</em> takes two arguments, a <code>.bbl</code> file and an <code>.html</code> file, merges the first into the second, and nothing else. It's @@ -232,7 +365,7 @@ other post-processing system.</dd> <code>rootname.aux</code> and so on. Why not just stick with the default `bibliography'...? </dd> -<dt><a name='opt-s'>-s bibstyle</a></dt> +<dt><a name="opt-s" id="opt-s">-s bibstyle</a></dt> <dd>The name of the BibTeX bibliography style you want to use, as it would be specified for the <code>\bibstyle</code> command in LaTeX. If you want to have a different layout for your HTML @@ -241,9 +374,9 @@ distributed with bibhtml. Instead, make a <em>copy</em> of plainhtml.bst under a different name, edit it as much as you like, and use this option of bibhtml to use the modified version instead of the default. Or you can use the <code><?bibhtml -bibstyle xxx?></code> <a href='#pis' >processing instruction</a>.</dd> +bibstyle xxx?></code> <a href="#pis">processing instruction</a>.</dd> -<dt><a name='strip'>--strip</a></dt> +<dt><a name="strip" id="strip">--strip</a></dt> <dd>If this option is set, then strip all processing-instruction lines from the output file. This means that the resulting file cannot be processed again by <em>bibhtml</em>, and so is appropriate when the @@ -273,80 +406,7 @@ file might contain:</p> -b mybib +3 -r refs </pre> -<h2><a name='bst-files'>BibTeX style files</a></h2> - -<p><em>bibhtml</em> depends on several BibTeX style files. -<code>plainhtml.bst</code>, <code>plainhtmldate.bst</code> and -<code>plainhtmldater.bst</code> are derived from the standard -<code>plain.bst</code>. All produce HTML, but the latter two sort the -output by date and reverse date, rather than by author. -<code>alphahtml.bst</code> and friends were derived from the standard -<code>alpha.bst</code>, and contributed to the package, by Franz -G. Fischer, <code>Franz.Fischer@lpr.e-technik.tu-muenchen.de</code>, -to whom thanks are due.</p> - -<p>These style files support an additional entry type, -<code>@webpage</code>, and two additional fields on all entry types, -<code>url</code> and <code>lastchecked</code>, which give the URL -associated with the reference, and the date at which the URL was last -verified to be still present. See also the <a -href="http://purl.org/nxg/dist/urlbst" ><code>urlbst</code> -package</a>, which performs a different role, but implements the same -BibTeX extensions.</p> - -<p>Although these style files are distributed as part of -<em>bibhtml</em> they are also useful in isolation, as part of a -larger system which generates HTML.</p> - -<p>The distribution includes a sample XSLT script, -<code>bibhtml.xslt</code> which shows how you might use XSLT to -extract citations from a source file into an <code>.aux</code> -file.</p> - -<p>The distributed <code>.bst</code> files have two configurable -parameters, which you might want to adjust for your installation:</p> - -<p>The variable <code>'xxxmirror</code> gives the host name of the arXiv mirror which will be used -when generating links to eprints. The default setting in the -<code>.bst</code> files is:</p> -<pre> -"xxx.arxiv.org" 'xxxmirror := -</pre> - -<p>By default, the style files generate link targets in the -bibliography with the same name as the citation key. Thus a BibTeX -entry with key <code>surname99</code>, say, would appear in the -generated HTML <code>.bbl</code> file wrapped in <code><a -name="surname99">...</a></code>. If this is inconvenient, -perhaps because it conflicts with other links within the file, -then you can adjust the <code>'hrefprefix</code> variable within the -style file, to specify a prefix which should appear in the link key. -Thus setting</p> -<pre> -"ref:" 'hrefprefix := -</pre> -<p>in the <code>.bst</code> file would produce links like <code><a -name="ref:surname99">...</a></code> in the <code>.bbl</code> -file.</p> - -<h2><a name='install'>Installation</a></h2> - -<p>Nothing to it.... On Unix, for example, put <em>bibhtml</em> -somewhere in your path and make it executable (<code>chmod u+x -bibhtml</code>), and put <code>*.bst</code> somewhere BibTeX -will find it (this means either looking at the -environment variable <code>BSTINPUTS</code>, or running the command -<kbd>kpsepath bst</kbd>, if you have it). If you want to use the <a -href="#two-pass">two-pass variant</a> of the program, then make a symbolic -link with <code>ln -s bibhtml bibhtml2</code>.</p> - -<p>If you wish, you may change the distributed BibTeX style files (see -<a href="#bst-files" >above</a>) to the extent of changing the -`eprint' mirror site from the master <code>xxx.arxiv.org</code> to a -more local mirror. If you don't use the LANL preprint archive, this -will be of no interest to you.</p> - -<h2><a name='two-pass'>Two-pass bibhtml</a></h2> +<h3><a name="two-pass" id="two-pass">Two-pass bibhtml</a></h3> <p>You might sometimes have a need to invoke the two phases separately. If you make a symbolic link to the program via @@ -363,87 +423,93 @@ is being merged with, (and so it is more robust, and more flexible).</p> detect the name it was invoked under. This may be more difficult on other platforms. If so, please get in touch, with suggestions. </p> - -<h2><a name='example'>Example</a></h2> +<h2><a name="example" id="example">Example</a></h2> <p>There are multiple sources of advice for how to cite electronic -documents. The most formal are an ISO standard <a -href="bibhtml.html#iso690">[ISO 690-2]</a>, and the American -Psychological Association's guidance <a href="bibhtml.html#apa03" ->[APA 2003]</a>. As well, there are older, but still useful -discussions in -<a href="bibhtml.html#walker95">Walker</a> and -<a href="bibhtml.html#emory95">Emory</a>.</p> - -<p>We also include here a <a href="bibhtml.html#test" >test</a> entry, -which has some odd characters in the title and URL.</p> +documents. The most formal are an ISO standard <a href="#url:iso690"><span class="cite">url:iso690</span></a>, and the American Psychological +Association's guidance in Sect. 6.31 of <a href="#apastyle"><span class="cite">apastyle</span></a>. As well, there are older, but still +useful discussions in <a href="#walker06"><span class="cite">walker06</span></a> and <a href="#emory95"><span class="cite">emory95</span></a>.</p> -<p>This file was processed with the command <code>bibhtml -r bibhtml -bibhtml.html</code> to produce the document you are reading now.</p> - -<h2><a name='refs'>References</a></h2> - -<?bibhtml start?> -<dl> - -<dt><a name="apa03">[apa03] American Psychological Society.</a></dt> <dd> - <a href="http://www.apastyle.org/elecref.html" ->APA style: Electronic - references</a>. - [Online, cited September 2005]. -</dd> +<h2><a name="refs" id="refs">References</a></h2> -<dt><a name="test">[test] A. N. Experimenter.</a></dt> <dd> - <a - href="http://www.example.org/%7etilde/query?arg1=%1e&arg2=one;two&moreargswhichmaketheurlquitelong" ->bibhtml tests - how do we handle odd ( &) - characters?</a>. - This is a test entry. -</dd> +<dl xmlns=""> -<dt><a name="iso690">[iso690] ISO 690-2.</a></dt> <dd> - <a href="http://www.collectionscanada.ca/iso/tc46sc9/standard/690-2e.htm" +<dt><a name="url:iso690" id="url:iso690">[url:iso690] +International Standards Organisation.</a></dt> +<dd><a href="http://en.wikipedia.org/wiki/ISO_690">ISO 690-2</a> [online, + cited 9 August 2009].</dd> - >ISO 690-2, bibliographic references to electronic documents - (excerpts)</a>. - [Online, cited September 2005]. -</dd> +<dt><a name="apastyle" id="apastyle">[apastyle] +American Psychological Association.</a></dt> +<dd><a href="http://www.apastyle.org/manual/index.aspx"><em>Publication Manual + of the American Psychological Association</em></a>, 6th edition, 2009 [cited + 9 August 2009].</dd> -<dt><a name="emory95">[emory95] libsf@web.cc.emory.edu.</a></dt> <dd> - <a href="http://www.cc.emory.edu/WHSCL/citation.formats.html" ->Citation - formats</a>. - [Online]. -</dd> +<dt><a name="walker06" id="walker06">[walker06] +Janice R. Walker and Todd Taylor.</a></dt> +<dd><a href="http://cup.columbia.edu/book/978-0-231-13210-7/the-columbia-guide-to-online-style"><em>The Columbia Guide to Online Style</em></a>. +Columbia University Press, 2nd edition, 2006 [cited 9 August 2009].</dd> -<dt><a name="walker95">[walker95] Janice R Walker.</a></dt> <dd> - <a href="http://www.columbia.edu/cu/cup/cgos/idx_basic.html" ->MLA-style - citations of electronic sources</a>. - Technical Report 4/95, Department of English, University of South Florida, - January 1995. - Endorsed by the Alliance for Computers and Writing. -</dd> +<dt><a name="emory95" id="emory95">[emory95] +Goizueta Business Library.</a></dt> +<dd><a href="http://business.library.emory.edu/eresources/citing.html">Citation + formats</a> [online, cited 9 August 2009].</dd> </dl> -<?bibhtml end?> -<?bibhtml bibdata bibrefs?> -<?bibhtml bibstyle plainhtml?> -<p>See also the documentation for the <a -href="http://purl.org/nxg/dist/urlbst" ><code>urlbst</code> +<p>See also the documentation for the <a href="http://purl.org/nxg/dist/urlbst"><code>urlbst</code> package</a>, which generates BibTeX style files for ordinary LaTeX output (which also supports a <code>@webpage</code> entry type, and <code>url</code> and <code>lastchecked</code> fields), and which contains a similar list of references concerned with citing online sources.</p> -<h2><a name='dist'>Distribution</a></h2> +<h2><a name="dist" id="dist">Distribution</a></h2> + +<h3><a name="get" id="get">Obtaining <em>bibhtml</em></a></h3> + +<p>Bibhtml is available on CTAN at +<a href="http://www.ctan.org/tex-archive/biblio/bibtex/contrib/bibhtml/"><code>biblio/bibtex/contrib/bibhtml/</code></a>, +and at +<a href="http://purl.org/nxg/dist/bibhtml"><code>http://purl.org/nxg/dist/bibhtml</code></a>.</p> + +<p>Download the distribution: +<a href="bibhtml-2.0.tar.gz">bibhtml-2.0.tar.gz</a> or +<a href="bibhtml-2.0.zip">bibhtml-2.0.zip</a>.</p> + +<p>Do <a href="mailto:norman@astro.gla.ac.uk">let me know</a> if +you use this stuff. I'd be grateful for any bug reports, +and bug fixes, and also for any comments on the clarity or +otherwise of this documentation.</p> + +<p>The project source code is +<a href="http://bitbucket.org/nxg/bibhtml/">hosted at bitbucket.org</a>. +You can check out the source code from there, and you are welcome to +add issues to the bugparade.</p> + +<h3><a name="licence" id="licence">Licence</a></h3> + +<p>This software is copyright, 1999, 2005, 2006, 2009, Norman Gray. It is released +under the terms of the GNU General Public Licence. See the copyright +declaration at the top of file <code>bibhtml</code>, and the file +<code>LICENCE</code> for the licence conditions. You can find an +online copy of the GPL at <code><a href="http://www.gnu.org/copyleft/gpl.html">http://www.gnu.org/copyleft/gpl.html</a></code>.</p> + +<p>If this licence is a problem for you, get in touch and we can work something out.</p> -<h3><a name='changes'>Changes</a></h3> +<h3><a name="changes" id="changes">Changes</a></h3> <dl> +<dt>2.0, 2009 August 9</dt> +<dd>First real release of v2.0, after mild use elsewhere.</dd> + +<dt>2.0b1, 2009 August 9</dt> +<dd>Substantial rewrite, taking the style files from the urlbst +package (thus there are more styles than before), adding more XSLT +scripts, and de-emphasising the Perl script. The code is now +<a href="http://bitbucket.org/nxg/bibhtml/">hosted at bitbucket.org</a>.</dd> + <dt>1.3, 2006 October 31</dt> <dd><ul> <li>Add <code>hrefprefix</code> parameterisation to style files.</li> @@ -487,35 +553,9 @@ inserts the bibliography in-place.</li> </dd> </dl> -<h3><a name='get'>Obtaining <em>bibhtml</em></a></h3> - -<p>Bibhtml is available on CTAN at -<a href="http://www.ctan.org/tex-archive/biblio/bibtex/contrib/bibhtml/" - ><code>biblio/bibtex/contrib/bibhtml/</code></a>, -and at -<a href="http://purl.org/nxg/dist/bibhtml" ><code>@HOMEPAGE</code></a>.</p> - -<p>Download the distribution: -<a href="bibhtml-1.3.tar.gz">bibhtml-1.3.tar.gz</a>.</p> - -<p>Do <a href="mailto:norman@astro.gla.ac.uk">let me know</a> if -you use this stuff. I'd be grateful for any bug reports, -and bug fixes, and also for any comments on the clarity or -otherwise of this documentation.</p> - -<h3><a name='licence'>Licence</a></h3> - -<p>This software is copyright, 1999, 2005, Norman Gray. It is released -under the terms of the GNU General Public Licence. See the copyright -declaration at the top of file <code>bibhtml</code>, and the file -<code>LICENCE</code> for the licence conditions. You can find an -online copy of the GPL at <code><a -href="http://www.gnu.org/copyleft/gpl.html" ->http://www.gnu.org/copyleft/gpl.html</a></code>.</p> - <div class="signature"> -<a href="http://purl.org/nxg">Norman</a><br/> -2006 October 31 +<a href="http://nxg.me.uk">Norman</a><br /> +2009 August 9 </div> </body> diff --git a/Master/texmf-dist/doc/bibtex/bibhtml/bibhtml.xslt b/Master/texmf-dist/doc/bibtex/bibhtml/bibhtml.xslt deleted file mode 100644 index 0980890f171..00000000000 --- a/Master/texmf-dist/doc/bibtex/bibhtml/bibhtml.xslt +++ /dev/null @@ -1,55 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - ! bibhtml.xslt - ! - ! Part of bibhtml, version 1.3, released 2006 October 31 - ! See <http://purl.org/nxg/dist/bibhtml> - ! - ! This sample script processes an XML file which contains elements like - ! <span class='cite'>citation</span>, extracting each of the `citation' - ! strings and emitting a .aux file which, once a \bibdata line has been - ! appended, is suitable for processing with BibTeX. Adapt or extend as - ! appropriate. - ! - ! $Revision: 1.1 $ - !--> -<x:stylesheet xmlns:x="http://www.w3.org/1999/XSL/Transform" - version="1.0" - exclude-result-prefixes="h" - xmlns:h="http://www.w3.org/1999/xhtml"> - - <x:output method="xml" - version="1.0" - doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" - doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" - omit-xml-declaration="yes"/> - - <x:template match="/"> - <x:apply-templates select="//h:span[@class='cite']"/> - <x:call-template name="make-tex-command"> - <x:with-param name="command">bibstyle</x:with-param> - <x:with-param name="content">plainhtml</x:with-param> - </x:call-template> - </x:template> - - <x:template match="h:span[@class='cite']"> - <x:call-template name="make-tex-command"> - <x:with-param name="command">citation</x:with-param> - <x:with-param name="content"> - <x:copy-of select="."/> - </x:with-param> - </x:call-template> - </x:template> - - <x:template name="make-tex-command"> - <x:param name="command"/> - <x:param name="content"/> - <x:text>\</x:text> - <x:value-of select="$command"/> - <x:text>{</x:text> - <x:value-of select="$content"/> - <x:text>} -</x:text> - </x:template> - -</x:stylesheet> diff --git a/Master/texmf-dist/doc/bibtex/bibhtml/bibrefs.bib b/Master/texmf-dist/doc/bibtex/bibhtml/bibrefs.bib new file mode 100644 index 00000000000..76fef8e5c52 --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/bibhtml/bibrefs.bib @@ -0,0 +1,221 @@ +% Webpage with lastchecked and date +@webpage{url:weapas, + url = {http://www.beadsland.com/weapas/}, + title = {Web Extension to {American Psychological Association} Style ({WEAPAS}) (Rev.2.0)}, + author = {B Land}, + year = 2001, + month = jul, + lastchecked = {16 June 2008} +} + + + +@Manual{apastyle, + title = {Publication Manual of the American Psychological + Association}, + organization = {{American Psychological Association}}, + edition = {6th}, + year = 2009, + lastchecked = {9 August 2009}, + url = {http://www.apastyle.org/manual/index.aspx} +} + +@webpage{url:iso690, + author = {{International Standards Organisation}}, + title = {{ISO 690-2}}, + url = {http://en.wikipedia.org/wiki/ISO_690}, + lastchecked = {9 August 2009} +} + +% This one appears to be dead +@Webpage{gone:classroom96, + title = {Citing Internet Addresses: how students should + reference online sources in their bibliographies}, + year = 1996, + month = mar, + key = {Classroom}, + url = "http://www.classroom.net/classroom/CitingNetResources.html" +} + +@Webpage{emory95, + author = {{Goizueta Business Library}}, + title = "Citation Formats", + date = {1997}, + lastchecked = {9 August 2009}, + url = {http://business.library.emory.edu/eresources/citing.html} +} + +@Book{walker06, + author = {Janice R. Walker and Todd Taylor}, + title = {The Columbia Guide to Online Style}, + publisher = {Columbia University Press}, + year = 2006, + edition = {2nd}, + isbn = {978-0-231-13211-4}, + url = {http://cup.columbia.edu/book/978-0-231-13210-7/the-columbia-guide-to-online-style}, + lastchecked = {9 August 2009} +} + +% this one appears to be dead +@Webpage{walker-orig, + title = {{MLA}-Style Citations of Electronic Sources}, + author = {Janice R. Walker}, + url = {http://www.cas.usf.edu/english/walker/mla.html}, + year = 1995, + lastchecked = {23 October 2002}, + note = {Updated and superceded by \cite{walker}} +} + +@Webpage{texfaq, + url = {http://www.tex.ac.uk/cgi-bin/texfaq2html?label=citeURL}, + title = {{UK \TeX\ FAQ: URLs in BibTeX bibliographies}}, + key = {UK TeX FAQ}, + editor = {Robin Fairbairns}, + year = 2002, + lastchecked = {16 June 2008} +} + + + +@Webpage{url:daly, + url = {http://www.tex.ac.uk/tex-archive/macros/latex/contrib/custom-bib/}, + title = {Index of custom-bib}, + author = {Patrick W Daly}, + year = 2003, + lastchecked = {4 June 2003} +} + +% Following are test entries + +% Article with URL and lastchecked +@article{test:towell, + title = {Presence in Text-Based Networked Virtual + Environments or `{MUDs}'}, + author = {John Towell and Elizabeth Towell}, + journal = {Presence}, + volume = 6, + number = 5, + pages = {590-595}, + year = 1997, + url = {http://www-unix.mcs.anl.gov/~towell/presence.html}, + lastchecked = {13 February 2002} +} + +% Book with URL, lastchecked, and note. +@Book{test:raymond99, + author = {Eric S Raymond}, + title = {The Cathedral and the Bazaar}, + publisher = {O'Reilly}, + year = 1999, + url = {http://www.tuxedo.org}, + isbn = {1-56592-724-9}, + lastchecked = {1 April 2002}, + note = {The seminal book on the commercialisation of open-source} +} + +% Plain book, no URLs at all +@book{test:laurillard93, + author = {Diana Laurillard}, + title = {Rethinking University Teaching}, + publisher = {Routledge}, + year = 1993 +} + +% Webpage with lastchecked but no date +@webpage{test:iso690, + author = {{International Standards Organisation}}, + title = {{ISO 690-2}}, + url = {http://www.nlc-bnc.ca/iso/tc46sc9/standard/690-2e.htm}, + lastchecked = {20 August 2001} +} + +% Webpage with date but no lastchecked +@Webpage{test:classroom96, + title = {Citing Internet Addresses: how students should + reference online sources in their bibliographies}, + year = 1996, + month = mar, + key = {Classroom}, + url = "http://www.classroom.net/classroom/CitingNetResources.html" +} + +% Webpage with neither date nor lastchecked +@Webpage{test:emory95, + author = "libsf@web.cc.emory.edu", + title = "Citation Formats", + url = "http://www.emory.edu/WHSCL/citation.formats.html" +} + +% The same, but with no title either +@Webpage{test:emory95x, + author = "libsf@web.cc.emory.edu", + url = "http://www.emory.edu/WHSCL/citation.formats.html" +} + +% Article with eprint number +@techreport{test:simkin, + author = {Mikhail Simkin and V. P. Roychowdhury}, + title = {Read before you cite!}, + year = 2002, + institution = {UCLA}, + eprint = {cond-mat/0212043} +} + +% Article with a DOI +% an underscore +@article{test:gray00c, + author = "Norman Gray", + title = "Automatic Reduction of Elliptic Integrals using + {Carlson's} Relations", + journal = {Mathematics of Computation}, + volume = 71, + pages = {311-318}, + year = 2002, + doi = {10.1090/S0025-5718-01-01333-3} +} + +% Article with a PUBMED reference + + +@Article{test:giffin03, + author = {M J Giffin and J C Stroud and D L Bates and von Koenig, K D and J Hardin and L Chen}, + title = {Structure of {NFAT1} Bound as a Dimer to the {HIV-1 LTR} kappa {B} element}, + journal = {Nature Structural Biology}, + year = {2003}, + volume = {10}, + number = {10}, + pages = {800-6}, + month = oct, + pubmed = {12949493} +} + +@ARTICLE{test:nastydoi, + author = {Zemla, Adam and Venclovas, Ceslovas and Moult, John and + Fidelis, Krzysztof}, + title = {{P}rocessing and analysis of {CASP}3 protein structure predictions}, + journal = {Proteins: Structure, Function, and Genetics}, + year = {1999}, + volume = {37}, + pages = {22--29}, + number = {S3}, + month = jan, + comment = {Description of GDT measure.}, + doi = {10.1002/(SICI)1097-0134(1999)37:3+<22::AID-PROT5>3.0.CO;2-W}, + keywords = {CASP}, + timestamp = {2007-03-13} +} + +% Example from Jason Eisner, by mail (nothing special about the entry, +% but he seemed to be having formatting problems with unsrturl and proceedings +% entries. +@InProceedings{test:eisner-sample, + author = {Damianos Karakos and Sanjeev Khudanpur and Jason + Eisner and Carey~E. Priebe}, + title = {Iterative denoising using {J}ensen-{R}eny\'{\i} + divergences with an application to unsupervised + document categorization}, + booktitle = {Proceedings of ICASSP}, + year = 2007, + url = {http://cs.jhu.edu/~jason/papers/#icassp07} +} + diff --git a/Master/texmf-dist/doc/bibtex/bibhtml/detex.sed b/Master/texmf-dist/doc/bibtex/bibhtml/detex.sed new file mode 100644 index 00000000000..24034434203 --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/bibhtml/detex.sed @@ -0,0 +1,55 @@ +# Edit TeXisms in the .bbl output, to make it HTML-ready +# From bibhtml release 2.0, of 2009 August 9. +# Hg node 4a5600417b09. +# See http://purl.org/nxg/dist/bibhtml + +# Remove %\n line-breaks added by BibTeX +/% *$/{ + :a + N + s/% *\n// + t a +} + +# Escape ampersands +s,&,&,g + +# Process DOI:{...} lines, escaping '<' characters in DOIs and rearranging into a <a> element +# (the substitutions below probably rely on the "DOI:" being at the beginning of a line). +# First, turn DOI:{X} into DOI:{X|X} +/^DOI/s,DOI:{\([^}]*\)},DOI:{\1|\1}, +# Escape the two DOIs differently... +# ...first do URL escaping +# ...then do HTML/XML escaping +/^DOI:/{ + :bx + s,\([^<|]*\)<\([^|]*\)|,\1%3C\2|, + t bx + :cx + s,\([^<}]*\)<\([^}]*\)},\1\<\2}, + t cx +} +# ...and then turn the result into a <a> element +/^DOI:{/s,DOI:{\([^|]*\)|\([^}]*\)},DOI: <a href='http://dx.doi.org/\1'><code>\2</code></a>, + +# Get rid of TeX braces (I hope there aren't any of these in DOIs or other URLs) +s/[{}]//g + +# Replace '~' ties with spaces, as lont as they aren't URL ".../~user" +s,\([^/]\)~,\1 ,g + +# accented characters +s,\\'a,á,g +s,\\'e,é,g +s,\\`e,è,g +s,\\^o,ô,g +s+\\,c+ç+g +s,\\ss,ß,g +s,\\"a,ä,g +s,\\"o,ö,g +s,\\"u,ü,g +# We could include the following substitution, but I'm nervous of that, +# because I'm not positive that "--" can't legitimately appear in DOIs +# (the above substitutions are also in principle illegitimate for the same reason, +# but they seem safely unlikely). +#s,--,–, |