# How to remove comma from authoryear citation

I am using biblatex and biber for the bibliography of my thesis and the required bibliography style resembles the one provided by authortitle. Citations are required to be in the form authoryear. I have achieved this with the style and citestyle options, as below:

\usepackage[backend=biber,style=authortitle,citestyle=authoryear-ibid,sorting=nyt,isbn=false,doi=false]{biblatex}


There is an exception, however; some classical texts, such ass the Enneads by Plotinus, and some other philosophical works (Plato, Aristotle, etc.) are cited in the text according to abbreviated titles; thus, when first appearing, Enneads would be: (Plotinus, Enn. I.6.1), and further when explicating it, it would simply by (Enn. I.6.2) and so on. I have ALMOST managed to reach this by adding shorthand={\emph{Enn.}} and pagination={none} into the entry (in .bib), but there still remains a problem: when I use \parencite[I.6.2]{enneads}, the result is: (Enn., I.6.2), not (Enn. I.6.2).

My question: is there a simple way to remove the comma between the citation shorthand and the "pages" of the citation? Preferably something that would be added to the .bib file, maybe using the options={???}.

How about this? This creates a new entry option where you can specify the definition of \postnotedelim.

\documentclass{article}
\usepackage[backend=biber,style=authortitle,citestyle=authoryear-ibid,sorting=nyt,isbn=false,doi=false]{biblatex}
\DeclareEntryOption{postnotedelim}{%
\def\postnotedelim{#1}}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
author = {Plotinus},
pagination = {none},
shorthand = {\emph{Enn.}},
}
\end{filecontents}
\begin{document}
\end{document}

• This seems very simple, and as @moewe put it, quite brilliant. It also requires only one simple entry in the bib-entry. Thank you! – JSilvanus Oct 9 '15 at 21:05

While David Purton's answer is brilliant in its simplicity, I would like to offer one where you only need to set one field in the .bib file, namely entrysubtype = {classical} and all the other settings are taken care of by biblatex.

It would then be enough to say

@book{enneads,
author       = {Plotinus},
entrysubtype = {classical},
shorthand    = {Enn.},
}


We then switch some field definitions conditioned on the entrysubtype being classical

\DeclareFieldFormat{shorthand}{%
\iffieldequalstr{entrysubtype}{classical}
{\mkbibemph{#1\isdot}}
{#1\isdot}}

\renewcommand*{\postnotedelim}{%
\iffieldequalstr{entrysubtype}{classical}
{}


and make sure to set the pagination to none via sourcemapping

\DeclareSourcemap{
\maps[datatype=bibtex]{
\map{
\step[fieldsource=entrysubtype, match={classical}, final]
\step[fieldset=pagination, fieldvalue={none}]
}
}
}


MWE

\documentclass{article}
\usepackage[backend=biber,style=authortitle,citestyle=authoryear-ibid,sorting=nyt,isbn=false,doi=false]{biblatex}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
author       = {Plotinus},
entrysubtype = {classical},
shorthand    = {Enn.},
}
\end{filecontents}

\DeclareSourcemap{
\maps[datatype=bibtex]{
\map{
\step[fieldsource=entrysubtype, match={classical}, final]
\step[fieldset=pagination, fieldvalue={none}]
}
}
}

\DeclareFieldFormat{shorthand}{%
\iffieldequalstr{entrysubtype}{classical}
{\mkbibemph{#1\isdot}}
{#1\isdot}}

\renewcommand*{\postnotedelim}{%
\iffieldequalstr{entrysubtype}{classical}
{}