3

When I am citing pages in books, I use the citation format

(Author 1982:45)

But when I am citing something like paragraphs or online data with an ID number (i.e. things that aren't a plain numeral like a page number), I would like to remove the colon:

(Online resource no. 58; Author 1975 §18)

I assume the necessary trick here is to specify an empty \postnotedelim iff the postnote is not a numeral. How can I accomplish this (adding something to the preamble in my .tex file)?

\documentclass{article}
\usepackage{fontspec,filecontents}
\usepackage[style=authoryear]{biblatex}
\renewcommand*{\postnotedelim}{\addcolon}
\DeclareFieldFormat{postnote}{#1}
\begin{filecontents}{\jobname.bib}
@BOOK{harrison,
    AUTHOR = "George Harrison",
    TITLE = "My life with the Beatles",
    YEAR = "1982",
    LOCATION = "London",
    PUBLISHER = "Big House"}
@ONLINE{archiveZ,
    TITLE = "Archive Z",
    SHORTHAND = "Archive Z",
    URL = "http://www.archivez.com",
    URLDATE = "2013-03-22"}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\parencites[45]{harrison}[no. 58]{archiveZ}.
\printbibliography
\end{document}

enter image description here

| improve this question | | | | |
5

This can be achieved by the following code

\renewcommand{\postnotedelim}{%
  \iffieldnums{postnote}
    {\addcolon}
    {\addspace}}
| improve this answer | | | | |
  • The package xtring isn't included in TeXLive, even though I have installed TeXLive with all packages. How is \IfInteger different from \ifnumerals? – Sverre Mar 22 '13 at 12:06
  • @Sverre I have changed the answer. The package would have been xstring. \IfInteger is from xstring, \ifnumerals is from biblatex. \ifnumerals or \iffieldnums would consider numbers also in different forms (roman and ranges). – Guido Mar 22 '13 at 12:14
  • biblatex now also has \iffieldpages which is probably most appropriate here. – moewe Mar 26 '16 at 14:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.