Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I'm using biblatex's verbose-trad2 as a basis for defining a citation style. Toying with biblatex is still mainly black magic for me, I've no idea if my code is optimally written, and I've no idea what is supposed to be difficult and what is easy to modify.

So, here's the problem: when I cite a work (book, article, etc.) for the first time using \footcite, the whole bibliographic data is printed. I call this the long form. If I cite the same work again later, only the author's last name, the title and the mention op cit are printed (plus any postnote of course). I call this the short form. That's nice and it works well for all entries... except for @inbook, where in the short form, it's the book's title that gets printed and I would like to have the chapter. I at least managed part of it, since the book's title is formatted, in the short form only, like the chapter... my problem is that I don't even really understand what command from what file actually takes care of printing the citation.

Here are links to files:

The pdf is what you need to see an illustration of my complaint (between the first and the second footnote).

Thanks for your time and any help!

share|improve this question
6  
For @inbook, the book's title should be recorded in the booktitle field. The title field should correspond to the title of the work. In this case I'd use the chapter title. –  Audrey Jun 29 '12 at 20:53
add comment

1 Answer 1

up vote 1 down vote accepted

I had already tried what Audrey suggested to me, but then it was the first citation that got messed up. However, her comment got me thinking some more and I applied her suggested change to all the bibliographic entries, plus I modified the bibliography driver like so:

\DeclareBibliographyDriver{inbook}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \usebibmacro{author}%
  \setunit{\labelnamepunct}\newblock
  \printfield{title}% used to be 'chapter'
  \newunit\newblock
  \usebibmacro{in:}%
  \usebibmacro{bybookauthor/byeditor}%
  \newblock
  \usebibmacro{booktitle}% used to be 'title'
  \newunit\newblock
  \printfield{edition}%
  \newunit
  \printfield{volumes}%
  \newunit\newblock
  \usebibmacro{series+number}%
  \newunit\newblock
  \usebibmacro{publisher+location+date}%
  \newunit\newblock
  \iftoggle{bbx:isbn}
    {\printfield{isbn}}
    {}%
  \newunit\newblock
  \setunit{\bibpagespunct}%
  \printfield{pages}%
  \usebibmacro{finentry}}

I now just realized, doing some research on the web, that when I've been using @inbook I should have been using @incollection all along...

Nevertheless, this works, so my question is answered. Thanks to all those who gave it a thought!

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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