A hack: it's very easy to modify a .bst
file so that it recognises new entry types: simply append lines to the .bst
file such as, to make @undocument a synonym for @misc:
FUNCTION { undocument } { misc }
which just means that the function Bibtex calls to produce the .bbl entry for an @undocument just calls the function it uses to produce an @misc entry.
Biblatex does things a little differently, since it passes the type information as follows:
FUNCTION {article} { type$ output:entry }
where output:entry
is the generic function used to dump all the information about the record to the .bbl for Biblatex to work with (if you didn't pass the type information, as per the first line, Biblatex would think, e.g., @undocument was an @misc entry).
You can then just clone the site definition of biblatex.bst
into your local texmf tree (for Texlive), and add some lines such as:
FUNCTION { undocument } { type$ output:entry }
to your personal version of biblatex.bst. Bibtex will then treat these types just like the other types and you can use them in your bbx/cbx styles.
Postscript
As domwass notes, if you change your version of biblatex.bst
in this way, you have to be aware that upgrades might break Biblatex if you use a local fork based on an older version. While most revisions don't introduce incompatible changes to biblatex.bst
(there were no changes from 0.9e to 1.3 that would have caused problems, I think), the last revision, 1.4, introduced a very big change in the way biblatex.bst
represented information in .bib
files that certainly would have required creating a new patched file.
There are two possible roles of dates associated with a web document. The year
and month
fields generally indicate when the document was created or published. To provide information about when you (last) accessed the document, you could set up a note
field for each entry, such as
note = "Last accessed 16 March 2014",
A full MWE that adds note
fields would generate the following output:
\RequirePackage{filecontents}
\documentclass[a4paper]{scrartcl}
\bibliographystyle{plainnat}
\usepackage[hyphens]{url}
\usepackage[numbers]{natbib}
\begin{filecontents*}{\jobname.bib}
@misc{wiki-web1,
Title = {Wikipedia},
howpublished = "\url{https://en.wikipedia.org}",
Month = mar,
Timestamp = {2014.03.16},
Year = {2014},
note = "Last accessed 16 March 2014",
}
@misc{wiki-web2,
Title = {Wikipedia},
Author = {Wikipedia Foundation},
howpublished = "\url{https://en.wikipedia.org/wiki/Main_Page}",
Month = mar,
Year = {2014},
note = "Last accessed 16 March 2014",
}
@misc{wiki-web3,
Title = {Wikipedia},
Author = {Wikipedia Foundation (SF)},
howpublished = "\url{https://en.wikipedia.org/wiki/Main_Page}",
Month = mar,
Year = {2014},
note = "Last accessed 16 March 2014",
}
@misc{wiki-web4,
Title = {Wikipedia},
Author = {Wikipedia Foundation (SF)},
howpublished = "\url{https://en.wikipedia.org/wiki/Main_Page}",
Month = mar,
Year = {2014},
note = "Last accessed 16 March 2014",
}
@misc{wiki-web5,
Title = {Wikipedia},
Author = {Wikipedia Foundation (SF)},
howpublished = "\url{https://en.wikipedia.org/wiki/File:Camborne_Redruth_Community_Hospital_-_geograph.org.uk_-_716833.jpg#filehistory}",
Month = mar,
Year = {2014},
note = "Last accessed 16 March 2014",
}
\end{filecontents*}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\begin{document}
\nocite{wiki-web1,wiki-web2,wiki-web3,wiki-web4,wiki-web5}
\bibliography{\jobname}
\end{document}
To address some of your other queries. Yes, there are certain bibliography styles that automatically insert a line break before a url
field. Your entries don't provided fields called url
though, just howpublished
.
Best Answer
http://www.ctan.org/pkg/urlbst has a collection of bibtex styles that have support for webpage, url and lastchecked entry types.
the bundle also provides a script that will edit an existing .bst to offer those entry types.
the incidental text in the styles is in english (herbert's suggested styles are in german).