Issues with punctuation sometimes crop up in the biblatex-mla style. This is mostly due to the fact that it hasn't been updated since the time of biblatex 1.0.
Your particular problem isn't present with biblatex 1.0. With biblatex 1.7 it seems biblatex-mla's definition of \bibnamedash sets too much punctuation. Here's an excerpt from mla.bbx:
\renewcommand*{\bibnamedash}{%
\mbox{%
\mlanamedash%
\iffieldundef{nameaddon}%
{\unspace\newunitpunct}%
{\unspace\addspace}%
}%
}
The collection entry types are handled with the book bibliography driver. It expects maintitle to be used only in addition to title. If the nameaddon and title fields are missing, the driver will output too many dots.
So you have three options:
- Use biblatex 1.0 until biblatex-mla gets updated. This will spare you from resolving other incompatibilities the style has with newer biblatex versions. Any remaining punctuation issues can likely be resolved by loading the hyperref package (after biblatex).
- Use the
maintitle (mainsubtitle) field only when you're already using title (subtitle). Same goes for booktitle and booksubtitle. Note that your collection entries appear different in other styles. The biblatex-examples.bib demonstrate conventional use of collection and incollection. Details on these entry types and crossref inheritance can be found in the biblatex manual.
- Edit the
\bibnamedash command.
For (3), the following should give you no dots (like the standard biblatex styles).
\renewcommand*{\bibnamedash}{\mlanamedash\nopunct}
This should give you exactly one dot:
\renewcommand*{\bibnamedash}{%
\mlanamedash%
\iffieldundef{nameaddon}{\adddot}{\nopunct}}
We don't need to worry about the space delimiting the dash and the nameaddon field because biblatex-mla's author bibliography macro issues \setunit{\addspace} before printing nameaddon.
\documentclass{scrartcl}
\usepackage{csquotes}
\usepackage[ngerman]{babel}
\usepackage[backend=biber,style=mla]{biblatex}
%\renewcommand*{\bibnamedash}{\mlanamedash\nopunct}
\renewcommand*{\bibnamedash}{%
\mlanamedash%
\iffieldundef{nameaddon}{\adddot}{\nopunct}}
% biblatex-mla has no localization module for German
\DefineBibliographyStrings{german}{%
print = {print}}
\begin{filecontents}{\jobname.bib}
@INCOLLECTION{gaonkar:in,
author = {Gaonkar, Dilip Parameshwar},
title = {On Alternative Modernities},
pages = {1--23},
nameaddon = {Name add-on},
editor = {Gaonkar, Dilip Parameshwar},
booktitle = {Alternative Modernities},
publisher = {Duke University Press},
location = {Durham and London},
date = {2001},
isbn = {0-822-32714-7}}
@COLLECTION{adorno-gs2,
editor = {Rolf Tiedemann},
year = {2003},
maintitle = {Gesammelte Schriften Bd. 10.2},
mainsubtitle = {Kulturkritik und Gesellschaft II. Eingriffe. Stichworte},
publisher = {Suhrkamp},
location = {Frankfurt am Main},
author = {Theodor W. Adorno},
howpublished = {Print},
options = {useeditor=false},
shortauthor = {{In: GS 10.2}}}
@COLLECTION{adorno-gs8,
editor = {Rolf Tiedemann},
year = {2003},
maintitle = {Gesammelte Schriften Bd. 8},
mainsubtitle = {Soziologische Schriften I},
publisher = {Suhrkamp},
location = {Frankfurt am Main},
author = {Theodor W. Adorno},
howpublished = {Print},
options = {useeditor=false},
shortauthor = {{In: GS 8}}}
@INCOLLECTION{adorno-spaet,
author = {Theodor W. Adorno},
title = {Sp\"{o}tkapitalismus oder Industriegesellschaft?},
year = {1968},
subtitle = {Einleitungsvortrag zum 1. Deutschen Soziologentag},
pages = {354-370},
crossref = {adorno-gs8}}
\end{filecontents}
\addbibresource{\jobname.bib}
\addbibresource{biblatex-examples.bib}
\begin{document}
\nocite{adorno-spaet,adorno-gs2,adorno-gs8}
\nocite{gaonkar,gaonkar:in,knuth:ct,knuth:ct:a,knuth:ct:b}
\printbibliography
\end{document}
Here's the output without dots:

And with dots:

howpublishedfield. biblatex-mla has nolbxfile for German. In the example I make use of\DefineBibliographyStringsto give a string forprint. – Audrey Apr 01 '12 at 19:11\DefinBibliographyStringscode instead of adding ahowpublishedfield to each single entry. Although biblatex hasmvbooksI think that(in)collectiondoes a better job sincebiblatex-mlalists theincollectionsseparately after thecollections, which no other authortitle style I tried did. – Jakob Apr 01 '12 at 23:26bookdriver forcollection. In standard stylescollectionentries can be sorted byeditor, notauthor. There are a variety of ways around this - usebook/inbook, fields to override sort order or a modifiedcollectiondriver. I wouldn't overlook any of the standard styles, unless you're having to strictly follow the MLA style. – Audrey Apr 02 '12 at 03:44