As you've discovered, the plainnat
bibliography style does not abbreviate given ("first") names. To change this behavior as well as to have the given name(s) placed after the surname, I suggest you perform the following steps:
Find the file plainnat.bst
in your TeX distribution and copy it to, say myplainnat.bst
. (Don't edit directly a file provided as part of your TeX distribution.)
Open the file myplainnat.bst
in your favorite text editor and search for function named format.names
. (It starts on line 216 in my copy of plainnat.bst
.)
In this function, look for the line
{ s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't :=
Change this line to
{ s nameptr "{vv~}{ll}{, f.}{, jj}" format.name$ 't :=
Save the file myplainnat.bst
either to the directory that contains your main .tex
file or to a directory that's searched by your TeX (and BibTeX) distribution. (If you choose the second option, you may also need to refresh the filename database suitably.)
Start using the modified bibliography style file by issuing the command \bibliographystyle{myplainnat}
.
Incidentally, since the plainnat
and, by extension, the myplainnat
bibliography styles use [English] "sentence style" to typeset the contents of a title
field in an entry of type @article
, you should encase words such as EU
, Referendum
, Finland
and Maastricht
in curly braces to keep them from being typeset in all-lowercase.
Addendum: It's been suggested that I provide a bit more information about what the strings "{ff~}{vv~}{ll}{, jj}"
and "{vv~}{ll}{, f.}{, jj}"
in the format.names
function stand for.
Some background information first. As far as BibTeX is concerned, an author's full name can have up to four separate components: A first name component (which includes any middle names as well), a "von" component (e.g., "de", "von", "van", "van der", "della", etc.), a last name or surname component -- usually, but not necessarily, a single word; a rather spectacular deviation from this rule is the four-word surname "Mies van der Rohe" -- and a "junior" component (e.g., "Jr.", "Sr.", "III", etc). A full name must have at least a "last name" or "surname" component; the first-name, von, and junior components are optional.
As you can probably guess by now, the strings ff
, vv
, ll
and jj
above denote the four components; the form "ff
" instructs BibTeX to print the complete first and middle names (if present, of course), whereas the form "f.
" instructs BibTeX to print only the first initial of every first and middle name.
There are various syntax rules that determine how BibTeX parses a full name to arrive at the various components. While this isn't the place for a full-blown tutorial of BibTeX syntax, it's worth mentioning a couple of topics:
- BibTeX does not examine the interior of the first-name component for special characters. Suppose, say, that an author's full name is listed as "C.A. Brown" in your
.bib
file. BibTeX will correctly identify "C.A." as the first-name component, but it will not ascribe any special meaning to the "." (dot) inside "C.A.", i.e., it won't notice that the field's first-name component consists of two separate initials, each one terminated by a dot. Thus, if the "{ f.}
" parsing specifier is provided in the .bst
file, BibTeX will abbreviate "C.A." down to "C.", even though that's probably not what you intended it to do.
So, what should you do if you do want to show all initials of the first-name component and not just the very first initial? You need to write the author field as "C. A. Brown" or, equivalently, as "Brown, C. A.". That way, BibTeX will "notice" that the first-name component has two parts ("C." and "A.") and will dutifully render both.
- As noted above, BibTeX assumes that the name of every author has at least a last-name component -- and possibly as many as four components. This factoid is useful for treating entries that have so-called "corporate authors", e.g., "National Aeronautics and Space Administration" and "International Monetary Fund". Left to its own devices, BibTeX will interpret the former author field as having two [!] (recall that "and" is a reserved word in
author
fields) separate authors, the first one named "National Aeronautics" and the second one named "Space Administration"; for the latter author field, its syntax rules will lead it to conclude that there's a single author with first name "International", middle name "Monetary", and last name "Fund".
If the bibliography style specifies that first names should be abbreviated and listed after the respective surnames, BibTeX will end up typesetting the author fields as "Aeronautics, N. and Administration, S.
" and "Fund, I. M.
". In addition, the former entry will be sorted under "A" (for Aeronautics) instead of "N", and the latter entry will be sorted under "F" (for Fund) instead of "I". Moreover, if author-year citations are being generated, they will look like "Aeronautics and Administration ([year])" and "Fund ([year])". Clearly none of these outcomes can be what you had in mind!
The solution to the corporate-author problem is simple: Encase the entire author field in double curly braces. For the two examples above, one should write
author = {{National Aeronautics and Space Administration}},
and
author = {{International Monetary Fund}},
respectively. The outer pair of curly braces delimits the field, and the inner pair serves to make BibTeX treat the field as having only one component -- which, by its syntax rules, must be the last-name component. In a sense, then, BibTeX is made to believe that the former author has one complicated last name consisting of five words and the latter author has a last name that consists of three words. The happy result, though, is that the names will be rendered -- and sorted -- correctly.
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
Here are some possible alternatives for the solution. You can choose the one that fits you best.
1- switch to
biblatex
. It is a newer package to deal with bibliography; it is much easier to configure than bibtex styles. The manual might look scary, but you only have to change a few lines to get it working.2- as already suggested in the comments, you can use an automated tool to generate a new bst file from scratch, if you have some liberty. You can use
makebst
, or the GUI program included inbib-it
.3 - hacking the bst files directly is also possible. You will need some programming experience to be able to understand what is going on, but since you speak of hacking Zotero, I guess this won't be a problem; keep in mind that bst files are written in a rather unusual stack-based language which might be difficult to understand at first. In your case, you probably only have to copy the
format.name
function used inabbrv.bst
intounsrt.bst
, replacing the existing one.EDIT: maybe I should clarify what a bst file is. Bibliography styles in bibtex are handled through style files with extension
.bst
. If you use\bibliographystyle{unsrtdin}
, then the file that will be loaded isunsrtdin.bst
. The default styles can be found inside the tex install directory (on my Ubuntu for instance it's/usr/share/texlive/texmf-dist/bibtex/bst/
); but, if you wish, you can create a new one by yourself and drop it in the same folder as your.tex
file (or use some more involved "local install" method, if you think you need it for multiple tex files).