Menu

#25 Superfluous comma when combining xref and useeditor=false

Bugs
pending
xref (2)
2023-03-09
2017-05-01
Anonymous
No

I use the following to achieve "Editor (Hrsg.): Booktitle" when citing a collection in its own right, but at the same time "Author: Title. In: Booktitle, hrsg. von Editor" when citing a contribution to that collection:

\usepackage[style=footnote-dw,xref=true]{biblatex}
\ExecuteBibliographyOptions[incollection]{useeditor=false}

However, this produces "Author: Title, in: : Booktitle, hrsg. von Editor" with a superfluous colon. I am not sure if this should be considered a bug, or rather a mistake on my part. In any case, I would be very interested in your comments.

Best wishes,
Anton

Discussion

  • Anonymous

    Anonymous - 2017-06-21

    Thank you very much for your reply! Here is a minimal working example:

    \documentclass{article}
    
    \usepackage{filecontents}
    \begin{filecontents}{\jobname.bib}
    @proceedings{proceedings,
      editor    = {Some Editor},
      title     = {Some Proceedings},
      year      = {2017}
    }
    @inproceedings{paper1,
     author = {Some Author},
     title  = {Some Paper},
     xref   = {proceedings}
    }
    @inproceedings{paper2,
     author = {Some Author},
     title  = {Some Other Paper},
     xref   = {proceedings}
    }
    \end{filecontents}
    
    \usepackage[backend=biber,style=footnote-dw,xref=true]{biblatex}
    \addbibresource{\jobname.bib}
    \ExecuteBibliographyOptions[inproceedings]{useeditor=false}
    
    \begin{document}
    Citing a conference volume\cite{proceedings} and some paper in it.\cite{paper1} And another paper by the same author.\mancite\cite{paper2}
    \end{document}
    

    When I compile it, Footnote 1 looks like this (as it should - I do want the editor in front when citing the proceedings volume itself):

    Some Editor (ed.): Some Proceedings, 2017.
    

    Footnote 2 looks like this

    Some Author: Some Paper, in: : Some Proceedings, ed. by Editor (see n. 1).
    

    As desired, the editor comes after the title when an article from the proceedings volume is cited. However, there is a superfluous colon. So footnote 2 should look like this:

    Some Author: Some Paper, in: Some Proceedings, ed. by Editor (see n. 1).
    

    Footnote 3 shows another problem that troubles me: It looks like this

    Some Author: Some Other Paper, in: : Some Proceedings, ed. by Editor (see n. 1).
    

    But as the same author has been cited in footnote 2 it should look like this (last name only; note that I have inserted \mancite to avoid "idem"):

     Author: Some Other Paper, in: Some Proceedings, ed. by Editor (see n. 1).
    

    I am looking forward to your thoughts on this!

     
  • Dominik Waßenhoven

    • assigned_to: Dominik Waßenhoven
     
  • Dominik Waßenhoven

    Thanks for the MWE. I can confirm the bug. Workaround: Replace @proceedings and @inproceedings by @collection and @incollection. I will have to look into this to make it work for @proceedings and @inproceedings as well.

     
  • Dominik Waßenhoven

    • status: open --> accepted
     
  • Anonymous

    Anonymous - 2017-06-22

    Thank you for the suggested workaround! However, I get the same result when I use "collection" instead of "proceedings" -- I am not sure what I am doing wrong. Note that I have also changed "inproceedings" to "incollection" in the line

    \ExecuteBibliographyOptions[incollection]{useeditor=false}
    

    May I also ask about footnote 3 again: How can I achieve that the author is cited by his last name only (as the full name already appears in footnote 2)? Thank you so much!

     
  • Dominik Waßenhoven

    • labels: --> xref
     
  • Anonymous

    Anonymous - 2017-06-23

    I think this might have to do with the defintion of cite:xref.

    I'd use in footnote-dw.cbx

    \newbibmacro*{cite:xref}{%
      \ifciteseen
        {\iffieldundef{shorthand}
          {\ifnameundef{labelname}
            {}
            {\ifboolexpr{
              bool {xrefidem}
              and
              bool {bbx:edbyidem}
            }
              {\usebibmacro{cite:xref:idem}}
              {\ifbool{xref:inbook}
                {\usebibmacro{author}}
                {\usebibmacro{cite:editor}}%
                 \setunit{\nametitledelim}}}%
           \usebibmacro{cite:title}}       
          {\usebibmacro{cite:shorthand}}}
        {\ifboolexpr{
          bool {xrefidem}
          and
          bool {bbx:edbyidem}
        }
           {\usebibmacro{cite:fullxrefidem}}
           {\usebibmacro{cite:fullxref}}}}
    

    The current definition does not have the \setunit around \nametitledelim. This means that \nametitle is always printed even if nothing went before it - as happens here, because useeditor=false moves the editor after the title. I'm not sure if this causes problems in other places, but it should not.

     
  • Dominik Waßenhoven

    Sorry, I saw that too late for version 1.7a, but it will be fixed in 1.7b.

     
  • Dominik Waßenhoven

    • status: accepted --> pending
     

Anonymous
Anonymous

Add attachments
Cancel