TransWikia.com

biblatex: change inproceedings

TeX - LaTeX Asked by Berserk on September 29, 2021

I’d love to change the bibliography representation of @inproceedings. I use biblatex without biber (since I can’t get biber to work) and my bibliography definitions currently read as follows:

usepackage[style=alphabetic,maxbibnames=99,sorting=anyt,firstinits=true,url=false,doi=false]{biblatex}
    renewcommand*{newunitpunct}{addcommaspace}
    renewcommand{labelalphaothers}{}
    renewcommand{labelnamepunct}{addcolonspace}
    renewbibmacro{in:}{}
    DeclareFieldFormat*{journaltitle}{#1}
    DeclareFieldFormat*{title}{enquote{textsl{#1}}}
    DeclareFieldFormat*{volume}{textbf{#1}}
    renewbibmacro*{volume+number+eid}{printfield{volume}}
    AtEveryBibitem{clearfield{issn}} 

This pretty much worked for journals and books, but inproceedings do not look as I want them to. With a typical entry like:

@inproceedings{Wilis2001,
address = {Les Ulis, France},
author = {Wills, A.},
booktitle = {JDN 9 – Neutrons et Magn'{e}tisme},
doi = {10.1051/jp4:2001906},
file = {:D:/NP430 MasterThesis/Bibliography/2001_JDN9_Wills_Magnetic structures and their determination.pdf:pdf},
issn = {1155-4339},
pages = {133--158},
publisher = {EDP Sciences},
title = {{Magnetic structures and their determination using group theory}},
url = {http://www.edpsciences.org/10.1051/jp4:2001906},
year = {2001}
}

I get something like this:

A. Wills: "Magnetic structures and their determination using group theory", JDN 9 – Neutrons et Magnétisme, Les Ulis, France: EDP Sciences, 2001, pp. 133-158

  1. Now first of all I wanted the year to be in parentheses, as it is done for journal articles. I tried DeclareFieldFormat[inproceedings]{year}{(#1)} but it didn’t change a thing.
  2. And second, I would like to get rid of the publisher and address (or maybe only the address, I need to see what it gives…).
  3. And while you’re at it, maybe you could also let me know how to suppress the month, that is printed for journal articles. Thanks.

———EDIT————-

Here is the MWE:

documentclass{book}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage[backend=biber,style=alphabetic,maxbibnames=99,sorting=anyt,firstinits=true,url=false,doi=false]{biblatex}
renewcommand*{newunitpunct}{addcommaspace}
renewcommand{labelalphaothers}{}
renewcommand{labelnamepunct}{addcolonspace}
renewbibmacro{in:}{}
DeclareFieldFormat*{journaltitle}{#1}
DeclareFieldFormat*{title}{enquote{textsl{#1}}}
DeclareFieldFormat*{volume}{textbf{#1}}
renewbibmacro*{volume+number+eid}{printfield{volume}}
AtEveryBibitem{clearfield{issn}}
DeclareFieldFormat[inproceedings]{booktitle}{Conference: #1}
DeclareFieldFormat[inproceedings]{date}{ifbibliography{mkbibparens{#1}}{#1}}

AtEveryBibitem{%
  ifentrytype{article}
    {clearfield{month}%
     clearfield{day}}
    {}%  
  ifentrytype{inproceedings}
    {clearlist{address}
     clearfield{month}
     }
    {}}

begin{filecontents}{jobname.bib}
@inproceedings{Wilis2001,
address = {Les Ulis, France},
author = {Wills, A.},
booktitle = {JDN 9 -- Neutrons et Magn'{e}tisme},
doi = {10.1051/jp4:2001906},
file = {:D:/NP430 MasterThesis/Bibliography/2001_JDN9_Wills_Magnetic structures and their determination.pdf:pdf},
issn = {1155-4339},
pages = {133--158},
month = {July},
publisher = {EDP Sciences},
title = {{Magnetic structures and their determination using group theory}},
url = {http://www.edpsciences.org/10.1051/jp4:2001906},
year = {2001}
}
end{filecontents}

addbibresource{jobname.bib}

begin{document}
nocite{*}
printbibliography
end{document}

As you can see, I managed to get biber to work (a simple update can work miracles…). But I still don’t access the year, even with

DeclareFieldFormat[inproceedings]{date}{ifbibliography{mkbibparens{#1}}{#1}}

Also I could get rid of the publisher and months with the suggested clearfields etc. but not the address…

One Answer

Standard bibliography drivers print dates with printdate and friends. So you'll have to change the date format:

DeclareFieldFormat[inproceedings]{date}{ifbibliography{mkbibparens{#1}}{#1}}

The date format feature was added to biblatex 1.7, but it fails to work in English documents. This is due to a known bug in the English localization module (english.lbx). To fix this (along with some other 1.7 bugs) you can upgrade to biblatex 2.0. This beta version requires biber 1.0 and its default setting for the backend option is biber. To use bibtex instead, add backend=bibtex to the biblatex load-time option settings. Alternatively you can edit the module yourself with the bug fix documentation at the "caretaker" github repo for biblatex.

You can suppress data in the bibliography using clearfield and friends. A couple questions cover this topic already. Here's an example.

AtEveryBibitem{%
  ifentrytype{article}
    {clearfield{month}%
     clearfield{day}}
    {}%  
  ifentrytype{inproceedings}
    {clearlist{publisher}%
     clearlist{location}}
    {}}

The address field is an alias for location, so we suppress location instead. We use clearlist because both location and publisher are literal lists.

Correct answer by Audrey on September 29, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP