summaryrefslogtreecommitdiff
path: root/biblio/bibtex/contrib/urlbst/urlbst.html
diff options
context:
space:
mode:
Diffstat (limited to 'biblio/bibtex/contrib/urlbst/urlbst.html')
-rw-r--r--biblio/bibtex/contrib/urlbst/urlbst.html462
1 files changed, 462 insertions, 0 deletions
diff --git a/biblio/bibtex/contrib/urlbst/urlbst.html b/biblio/bibtex/contrib/urlbst/urlbst.html
new file mode 100644
index 0000000000..1edeadcf3a
--- /dev/null
+++ b/biblio/bibtex/contrib/urlbst/urlbst.html
@@ -0,0 +1,462 @@
+<?xml version="1.0"?>
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title>Urlbst</title>
+<link href="http://nxg.me.uk/" rev="author"/>
+<link type="text/css" rel="stylesheet" href="/style/base.css"/>
+</head>
+
+<body>
+<h1>Urlbst</h1>
+<div class="abstract">
+<p>A script to add a <code>webpage</code> BibTeX entry type, and add
+support for general <code>url</code> and <code>lastchecked</code>
+fields, to (most) BibTeX <code>.bst</code> files. Optionally adds
+basic support for <code>eprint</code>, <code>doi</code> and <code>pubmed</code> fields, and
+hypertex/hyperref support.</p>
+
+<p>The Persistent URL for this page is
+<code>http://purl.org/nxg/dist/urlbst</code>.
+The code (and bugparade) is on
+<a href='https://bitbucket.org/nxg/urlbst/'>bitbucket.org</a>.</p>
+
+<p>Version 0.8, 2019 July 1.</p>
+</div>
+
+<p>Contents</p>
+<ul>
+<li><a href='#usage'>Usage</a></li>
+<li><a href='#example'>For example...</a></li>
+<li><a href='#download'>Download and installation</a></li>
+<li><a href='#licences'>Licences</a></li>
+<li><a href='#information'>Further Information</a></li>
+<li><a href='#history'>Version history, and release notes</a></li>
+</ul>
+
+<p>The standard BibTeX styles have no explicit support for the web, in
+that they include no `webpage' type, and have no support for adding
+URLs to references. There are rumours that such support might appear
+in BibTeX 1.0, but there is no estimate of when that is likely to arrive.</p>
+
+<p>The Perl script <code>urlbst</code> can be used to add this support to an
+arbitrary <code>.bst</code> file which has a reasonably `conventional'
+structure. The result is meant to be robust rather than pretty.</p>
+
+<p>It has a different goal from Patrick Daly's `custom-bib' package --
+that is intended to create a BibTeX style .bst file from scratch, and
+supports `url' and `eprint' fields. This package, on the other hand,
+is intended for the case where you already have a style file that
+works (or at least, which you cannot or will not change), and edits it
+to add the new webpage entry type, plus the url, lastchecked and
+eprint fields. Fuller details are in the <a href="urlbst.pdf"
+>manual</a>.</p>
+
+<h2><a name='usage'>Usage</a></h2>
+<pre>
+urlbst [--[no]eprint] [--[no]doi] [--[no]pubmed]
+ [--inlinelinks] [--nohyperlinks] [--hypertex] [--hyperref]
+ [--literal key=value]
+ [input-file [output-file]]
+</pre>
+<p>If either the input-file or the output-file is omitted, they
+default to stdin and stdout respectively. If the input file already
+has a URL entry type, then the script objects.
+By default (in the current version), the output
+includes support for eprint, doi and pubmed, but these can be disabled
+by <code>--noeprint</code>, <code>--nodoi</code> and
+<code>--nopubmed</code>, respectively.</p>
+
+<p>The added fields are:</p>
+<ul>
+<li><code>url</code> and <code>lastchecked</code>, to associate a URL with
+ a reference, along with the date at which the URL was last checked
+ to exist;</li>
+<li><code>doi</code>, for a reference's <a href='https://doi.org'>DOI</a>;</li>
+<li><code>eprint</code>, for an <a href='http://arxiv.org'>arXiv</a> eprint reference; and</li>
+<li><code>pubmed</code> for a reference's
+ <a href='http://pubmed.gov'>PubMed</a> identifier (PMID).</li>
+</ul>
+
+<p>If either of the <code>--hypertex</code> or <code>--hyperref</code>
+options is present, then the generated <code>.bst</code> file includes
+support for hyperlinks in the generated eprint entries in the
+bibliography, with the format being either HyperTeX (see <a
+href="http://arxiv.org/hypertex/#implementation" >arXiv, again</a>),
+supported by xdvi, dvips and others, or using the support available
+from the hyperref package. These options have no effect unless one of
+the <code>--eprint</code> or <code>--doi</code> options is given: when
+URLs are included in the bibliography, they are written out using the
+<code>\url{...}</code> command, and hyperref automatically processes
+that in the correct way to include a hyperlink.</p>
+
+<p>The <code>--inlinelinks</code> option tells urlbst not to write out
+the URL as text within the bibliography entry. Instead, urlbst will
+produce a more conventional-looking and compact bibliography entry,
+but the entry's title will now be a hyperlink to that URL. This
+hyperlink may be useful to anyone who reads your document online
+(this option can only be used with <code>--hyperref</code> or
+<code>--hypertex</code>). Any DOI or eprint text which would be
+produced as a result of the appropriate option will still appear in
+this mode.</p>
+
+<p>You may adjust various literal strings, either for the purposes of
+internationalisation, or simply because you prefer different text. To
+do this, give the <code>--literal</code> option, followed by a
+<code>key=value</code> pair, for example <code>--literal online="on
+th'intert00bs"</code>, to replace the default <code>URL:</code> text.
+The possible values, and their defaults, are below (say
+<code>--literal help</code> to get this list printed out):</p>
+<table>
+<tr><th>keyword</th><th>default</th><th>meaning</th></tr>
+<tr><td>cited</td><td>cited</td><td>indicator of citation, or "last checked", date</td></tr>
+<tr><td>doiprefix</td><td>doi:</td><td>text printed before DOI</td></tr>
+<tr><td>eprintprefix</td><td>arXiv:</td><td>text printed before eprint
+ref</td></tr>
+<tr><td>linktext</td><td>[link]</td><td>fallback link text</td></tr>
+<tr><td>pubmedprefix</td><td>PMID:</td><td>text printed before PUBMED reference</td></tr>
+<tr><td>online</td><td>online</td><td>indication that resource is online</td></tr>
+<tr><td>urlintro</td><td>URL:</td><td>location of online resource (an
+alternative is "Available from:")</td></tr>
+</table>
+
+<p>The distribution includes preconverted versions of the four
+standard BibTeX .bst style files.</p>
+
+<p>Only the style files which result from conversion of the standard
+styles are checked in the regression tests. Other style files which
+are known to work include</p>
+<blockquote>
+acm.bst, amsalpha.bst, amsplain.bst, apalike.bst, gerabbrv.bst,
+geralpha.bst, gerapali.bst, gerplain.bst, gerunsrt.bst, ieeetr.bst,
+siam.bst, mla.bst
+</blockquote>
+
+<p>Style files which are known to fail:</p>
+<ul>
+<li>Currently (as of at least v0.5), there exists a style <code>achicago.bst</code>
+which seems to fox <code>urlbst</code>; it turns out that there's a
+simpler but almost equivalent style <code>chicago.bst</code> which
+works.</li>
+
+<li>Some APA-like styles, including at least <code>apager.bst</code>,
+seem to be sufficiently different from the most common styles, that
+they confuse <code>urlbst</code> completely.</li>
+
+<li>The <em>koma-script</em> styles and the <em>refer</em> styles are
+not designed to produce conventional <code>.bbl</code> files, and
+<code>urlbst</code> does not aim to produce anything useful from these.</li>
+</ul>
+<p>This might be a good time for me to revisit the rather
+convoluted logic within the script, to make it a little more robust in
+the face of variants like these, but don't hold your breath. The
+logic within the script is pretty hideous (it essentially works by
+spotting patterns in the input style file, and replacing or extending
+bits of BibTeX style-file code. This is a fragile technique, and is
+probably at the limits of its usefulness, therefore I'd take some
+persuading to add significant extra functionality to the script.</p>
+
+<p>The natbib and revtex style files already have URL fields. If you have a
+BibTeX style file which you think ought to work, but with which the
+script fails, send it to me, and I'll try to work out what I've
+missed (no promises, though).</p>
+
+<p>Note that the command to invoke the script changed from `urlbst.pl'
+to plain `urlbst' between versions 0.3 and 0.4.</p>
+
+<h2><a name='example'>For example...</a></h2>
+<p>To add URL support to the standard <code>siam.bst</code> file, you
+can give the command</p>
+<pre>
+% urlbst /path/to/original/siam.bst siamurl.bst
+</pre>
+<p>Your TeX installation will likely have some way of helping you find where
+the original <code>.bst</code> files are. On teTeX-based systems, for
+example, the command <code>kpsewhich siam.bst</code> returns the full
+path of the <code>siam.bst</code> file which BibTeX would find.</p>
+
+<p>The distributed files <code>abbrvurl.bst</code>,
+<code>alphaurl.bst</code>, <code>plainurl.bst</code> and
+<code>unsrturl.bst</code> are versions of the standard style files
+which have been pre-converted.</p>
+
+<p>There is more general discussion of including URLs in
+bibliographies in the <a
+href="http://www.tex.ac.uk/cgi-bin/texfaq2html?label=citeURL" >UK TeX
+FAQ</a>.</p>
+
+<h2><a name='download'>Download and installation</a></h2>
+
+<p>Download the file as a
+<a href="urlbst-0.8.tar.gz" >tarball</a>
+or
+<a href="urlbst-0.8.zip" >zip file</a>
+and unpack it. Or you can clone the source repository at
+<a href='http://bitbucket.org/nxg/urlbst/'>bitbucket.org</a>.</p>
+
+<p>To install, you should simply copy the distributed
+<code>urlbst</code> script to someplace on the path (such as
+<code>/usr/local/bin</code>, or <code>~/local/bin</code>, depending on
+your privileges and tastes).</p>
+
+<p>If you (might) want to use the pre-converted standard
+<code>.bst</code> files, then you'll need to copy these to somewhere
+in the BibTeX search path. Type <kbd>kpsepath bst</kbd> on Unix to
+find out the list of places BibTeX searches, and pick either one of
+the user-local locations, or a system-wide one. If you're installing
+in a system-wide location, you'll need admin privileges, obviously,
+and you will probably need to use <code>texhash</code>,
+<code>mktexlsr</code> or its equivalent, to update LaTeX's filename
+cache. For further hints here, see
+the TeX FAQ entries on <a
+href='http://www.tex.ac.uk/cgi-bin/texfaq2html?label=instpackages'
+>installing a package</a> and <a
+href='http://www.tex.ac.uk/cgi-bin/texfaq2html?label=wherefiles'
+>where LaTeX puts files</a>.</p>
+
+<p>That should be all you have to do.</p>
+
+<p>The urlbst script is distributed with a path which should just work,
+as long as the Perl binary is in your path, but if you have problems
+here, then you might want to change the first line to something like</p>
+<pre>
+#! /usr/local/bin/perl
+</pre>
+<p>if that's where your Perl binary is.</p>
+
+<p>You can also use the conventional <code>./configure; make; make
+install</code> to configure and install the package (as root, or using
+<code>sudo</code> if you're installing it in a system location),
+though you still have to install the <code>.bst</code> files by hand.
+This is rather heavyweight for the trivial amount of configuration
+required, so it's almost always simpler just to do things by hand.</p>
+
+<p>If you need to change some of the <code>urlbst</code> defaults,
+however, or if your fingers type <code>./configure</code>
+spontaneously, then you can be reassured that the configure script
+supports the standard <code>--prefix</code> option, plus the following
+options setting defaults:</p>
+<dl>
+
+<dt><code>--with-eprints=url</code>, <code>--without-eprints</code></dt>
+
+<dd>This makes the <code>--eprints</code> option to urlbst available
+by default, and allows you to optionally specify a prefix for creating
+URLs from eprint numbers. The default for this URL is
+<code>http://arxiv.org/abs/</code> -- this is appropriate for arXiv,
+obviously, but there are now a variety of other preprint archives
+appearing, for which this might be inappropriate. If you have
+comments on this default, or alternatives, please let me know. This
+option is enabled by default; if you have some reason for disabling
+the <code>--eprints</code> option for urlbst, the give the configure
+option <code>--without-eprints</code></dd>
+
+<dt><code>--with-doi=url</code>, <code>--without-doi</code></dt>
+
+<dd>This makes available the <code>--doi</code> option to urlbst and,
+as with the <code>--with-eprints</code> option, allows you to
+customise the DOI resolver URL. The <code>--doi</code> option to
+urlbst is on by default.</dd>
+
+<dt><code>--with-href=0/1/2</code></dt>
+
+<dd>This allows you to specify the type of hyperlinks which are
+inserted in the bibliography. Values 0, 1 and 2, indicating no
+hyperlinks, hypertex-style links, and hyperref-style links,
+respectively. The default is <code>--with-href=0</code>. The
+<code>hyperref</code>-style option is intended to complement the
+increasingly standard <code>hyperref</code> package.</dd>
+
+</dl>
+
+<p>The first two options simply change defaults, and if you never use
+the new <code>eprints</code> or <code>doi</code> fields, then the
+defaults don't matter to you. </p>
+
+<p>Since the modified style generates URLs wrapped in the
+<code>\url{}</code> macro, it is useful to use the resulting
+bibliography style alongside the <code>url</code> package. Since this
+tends to work with <code>hyperref</code> anyway, where possible, you
+don't get any extra goodness by changing the <code>--with-href</code>
+default at configuration time.</p>
+
+<h3>Documentation</h3>
+
+<p>Basic documentation is in the file <code>urlbst.tex</code>. This
+is distributed as a PDF file, but if you want to regenerate it, use</p>
+<pre>
+% latex urlbst
+% bibtex urlbst
+% latex urlbst
+% latex urlbst
+</pre>
+
+<h2><a name='licences'>Licences</a></h2>
+
+<!-- this text copied from the README.md -->
+<p>The copyright and licence position for the modified <code>.bst</code> files seems
+slightly muddy to me. On the grounds that any licence is better than
+no licence, I therefore assert that the <em>modifications</em> which the
+<code>urlbst</code> program makes to these files are copyright 2002-03, 2005-12, 2014, 2019,
+Norman Gray, and that these modifications are available for
+distribution under the terms of the LaTeX Project Public Licence.</p>
+
+<p>The original <code>.bst</code> files are copyright Howard Trickey and Oren
+Patashnik, with a set of permissions, in text at the top of the files,
+which state that "Unlimited copying and redistribution of this file
+are permitted as long as it is unmodified" (see the files for the
+complete text). The distribution terms above therefore appear to be
+compatible with -- in the sense of being morally equivalent to --
+these terms in the <code>.bst</code> file. If anyone disagrees with
+the logic here, I'd be very happy to discuss that.</p>
+
+<p>The <code>urlbst</code> script itself is distributed under the GPL, version 2.0.</p>
+
+<p>See the files <code>LICENCE-lppl.txt</code> and <code>LICENCE-gpl-2.0.txt</code> in the
+distribution, for the relevant licence text.</p>
+
+
+<h2><a name='information'>Further Information and acknowledgements</a></h2>
+
+<p><code>urlbst</code> is archived <a
+href='https://ctan.org/pkg/urlbst'
+>on CTAN</a>, and discussed in the
+<a href="http://www.tex.ac.uk/cgi-bin/texfaq2html?label=citeURL" >TeX
+FAQ</a>.</p>
+
+<p>The source code for the package is maintained at
+<a href='http://bitbucket.org/nxg/urlbst/'>bitbucket.org</a>,
+which also includes an issue tracker, where you can report bugs (or
+just mail me).</p>
+
+<p>The <a href="http://purl.org/nxg/dist/urlbst"
+>home page of urlbst</a> might possibly have more recent versions than the
+one you're looking at now.</p>
+
+
+<h2><a name='history'>Acknowledgements, and release notes</a></h2>
+
+<!-- include:release-notes.html -->
+<div xmlns='http://www.w3.org/1999/xhtml'>
+
+<p>Thanks are due to many people for suggestions and requests:
+to Jason Eisner for suggesting the <code>--inlinelinks</code> option;
+to ‘ijvm’ for code contributions in the <code>urlbst</code> script;
+to Paweł Widera for the suggestion to use <code>\path</code> when formatting DOIs;
+to Michael Giffin for the suggestion to include PubMed URLs;
+to Katrin Leinweber for the pull request which fixed the format of DOI
+references.</p>
+
+<dl>
+<dt><strong>0.8, 2019 July 1</strong></dt>
+<dd><ul>
+<li>The presence of a preexisting <code>format.doi</code>,
+<code>format.eprint</code> or <code>format.pubmed</code> function is
+now detected, and warned about. The resulting <code>.bst</code> file
+might still require some manual editing.
+Resolves <a href='https://bitbucket.org/nxg/urlbst/issue/8'>issue 8</a>.</li>
+<li>Clarified licences (I hope).</li>
+<li>Adjust format of DOI resolver.
+Resolves <a href='https://bitbucket.org/nxg/urlbst/issue/11'>issue 11</a>,
+thanks to
+<a href='https://bitbucket.org/nxg/urlbst/pull-requests/1/'
+>code contributed by Katrin Leinweber</a>.</li>
+</ul>
+</dd>
+
+<dt>0.7, 2011 July 20</dt>
+<dd>Add <code>--nodoi</code>, <code>--noeprints</code> and <code>--nopubmed</code> options (which defaulted
+on, and couldn't otherwise be turned off)</dd>
+
+<dt>0.7b1, 2011 March 17</dt>
+<dd>Allow parameterisation of literal strings, with option <code>--literal</code>.</dd>
+
+<dt>0.6-5, 2011 March 8</dt>
+<dd>Adjust support for inline links (should now work for arXiv, DOI and Pubmed)</dd>
+
+<dt>0.6-4, 2009 April 28</dt>
+<dd>Work around BibTeX linebreaking bug (thanks to Andras Salamon for the bug report).</dd>
+
+<dt>0.6-3, 2009 April 19</dt>
+<dd>Fix inline link generation (thanks to Eric Chamberland for the bug report).</dd>
+
+<dt>0.6-2, 2008 November 17</dt>
+<dd>We now turn on inlinelinks when we spot format.vol.num.pages,
+which means we include links for those styles which don't include a
+title in the citation (common for articles in physical science styles,
+such as aip.sty).</dd>
+
+<dt>0.6-1, 2008 June 16</dt>
+<dd>Fixed some broken links to the various citation standards
+(I think in this context this should probably <em>not</em> be happening, yes?).
+The distributed <code>*url.bst</code> no longer have the
+<code>--inlinelinks</code> option turned on by default.</dd>
+
+<dt><strong>0.6, 2007 March 26</strong></dt>
+<dd><ul>
+<li>Added the option <code>--inlinelinks</code>, which adds inline hyperlinks
+to any bibliography entries which have URLs, but does so inline, rather
+than printing the URL explicitly in the bibliography. This is (primarily)
+useful if you're preparing a version of a document which will be read
+on-screen. Thanks to Jason Eisner for the suggestion, and much testing.</li>
+
+<li>Incorporate hyperref bugfixes from Paweł Widera.</li>
+
+<li>Further reworkings of the inlinelinks support, so that it's now
+fired by a <code>format.title</code> (or <code>format.btitle</code>) line, with a fallback in
+<code>fin.entry</code>. This should be more robust, and allows me to delete some
+of the previous version's gymnastics.</li>
+
+<li>Reworked <code>inlinelinks</code> support; should now be more
+robust. Incorporate hyperref bugfixes from Paweł Widera.</li>
+
+<li>Added the option <code>inlinelinks</code>, which adds inline hyperlinks
+to any bibliography entries which have URLs, but does so inline, rather
+than printing the URL explicitly in the bibliography. This is (only)
+useful if you're preparing a version of a document which will be read
+on-screen.</li>
+</ul>
+</dd>
+
+<dt>0.5.2, 2006 September 6</dt>
+<dd>Another set of documentation-only changes, hopefully clarifying
+installation.</dd>
+
+<dt>0.5.1, 2006 January 10</dt>
+<dd>No functionality changes. Documentation and webpage changes only,
+hopefully clarifying usage and configuration</dd>
+
+<dt><strong>0.5, 2005 June 3</strong></dt>
+<dd>Added support for Digital Object Identifiers (DOI) fields in
+bibliographies.</dd>
+
+<dt>0.4-1, 2005 April 12</dt>
+<dd>Documentation improvements -- there are now examples in the help text!</dd>
+
+<dt><strong>0.4, 2004 December 1</strong></dt>
+<dd>Bug fixes: now compatible with mla.bst and friends.
+Now uses <code>./configure</code> (optionally). Assorted reorganisation.</dd>
+
+<dt><strong>0.3, 2003 June 4</strong></dt>
+<dd>Added <code>--eprint</code>, <code>--hypertex</code> and <code>--hyperref</code> options.</dd>
+
+<dt><strong>0.2, 2002 October 23</strong></dt>
+<dd>The `editor' field is now supported in the webpage entry type. Basic
+documentation added.</dd>
+
+<dt><strong>0.1, 2002 April</strong></dt>
+<dd>Initial version</dd>
+</dl>
+</div>
+
+<p>Copyright 2002-03, 2005-12, 2014, 2019, Norman Gray. Released under the terms of the GNU
+General Public Licence.</p>
+
+<div class="signature">
+<a href="http://nxg.me.uk"
+ >Norman Gray</a><br/>
+2019 July 1
+</div>
+
+</body>
+</html>