Double surname (last name has two words) bibtex export

Hello,

In my Zotero database, I have some publications in which the first author has a double last name such as "van Vleck" or "di Estos". I would like a way to enter the name into Zotero so that when exported as Bibtex it produces a bibliography like

di Estos (2010) ...

and not like

Estos (2010) ...

This can be accomplished by manually editing the bibtex and surrounding the surname in {} brackets. Like this.

author = "Uno {di Estos}";

But if I put the {} brackets in the surname field in Zotero, when I directly create a bibliography (not bibtex, but just e.g. drag the entry into an open office document), the generated bibliography includes the brackets in the generated bibliography like this.

{di Estos} (2010) ...

Which is obviously no good either. Is there an escape character or technique that can be used to fix it so both bibtex-export AND generate-bibliography do the right thing with double surnames (last names)? Or better yet, can the next release of Zotero automatically do the right thing just by having the surname bracketed in bibtex exports?

Thanks in advance. I hope I've been clear in describing what I'm after.

Cheers,

Matthew
  • The new CSL processor being prepped for inclusion in Zotero is able to handle particles on the "family" name correctly (di, von, van den, etc.). The processor is able either to apply heuristics to parse particles out of the family and given name fields, or to receive them as separate elements of the name structure (as dropping-particle or non-dropping-particle). If the UI for entering names remains unchanged in the next version of Zotero, the former method will presumably be applied -- we'll have to wait for a release to see how it's going to work.

    The conventions for data entry when the former (heuristic parsing) method is used are described in the processor manual. If the bibtex translator is made to apply the same heuristics, most cases should work correctly and -- when the new processor arrives -- names should format correctly in Zotero/CSL as well.
  • What happened to this issue?

    Entering { } brackets in the Zotero fields is not nice since they also appear in the document list and prevent a correct sorting...

    Shouldn't Zotero enclose every name field (surname, first name, places, journal names etc.) into { } brackets during export as soon as two words are in there?
    Example: I have a document, written by Richard Armstrong Jr. I type 'Armstrong Jr.' into the surname field, Richard into the first name field. When I export to BibTeX, Zotero can see the whitespace in the surname field and export {Richard {Armstrong Jr.}}.

    That would be a cool feature.
  • BTW: The example above exports {Richard {{Armstrong} Jr.}} instead of {Richard {Armstrong Jr.}}.

    Now I don't understand it anymore. If I don't include brackets in the name field, Zotero is not aware of double names. If I type the name with brackets Zotero adds additional brackets around the first part of the double name...
  • Thanks for raising this. In Zotero 2.1, with a couple of small adjustments to the CSL processor, a name with a suffix can be made to render correctly in (Zotero-generated) citations if entered like this:

    lastName: Gooding
    firstName: Cuba, Jr.

    This is as described in the processor manual linked above. The necessary adjustments should probably be made, in citeproc-js and in Zotero, and I'll certainly look into that at my end.

    How name suffixes (and the three separate kinds of last name prefix recognized by CSL) are handled in BibTeX export, I don't know.
  • Ok, thanks for the quick response!
    Good to hear that this issue is considered.

    Entering the name as described above (or in the linked manual) gives {Richard, Jr. Armstrong} as BibTeX export. The comma is not processed but directly output...

    Seems that I really need to use the brackets for the moment to get a pleasant BibTex output.
  • edited October 6, 2010
    There might be some adjustments to the handling of these suffixes, in light of user feedback and rethinking on the development side. The suffix could, for example, be appended (in the Zotero entry) to the last name rather than the given name.

    If you (or anyone else listening in) have an opinion on that, this would be the time bring it forward.

    I've checked in a release of the citeproc-js source that enables name parsing by default. Its merger to Zotero may be delayed a bit if this names handling issue raises debate.
  • Well, in my opinion Zotero should put every field content into brackets during export if the content consists of more than one word. This would solve the BibTeX issue. No other parsing tasks would be required then.

    Unfortunately, I have no glue how important a correct recognition of the name is to Zotero itself. I only think it might be complicated to solve this whole topic with such little helpers as a comma at the right location. Different languages have different name conventions. Who knows where names have additional words? Think of something as 'Prof. Peter John-Boy van Doe Jr. III of Essex'. Sounds very strange but can we really exclude somebody wants to input this? It will be hard to tell Zotero what the surname, what the first name, what a suffix etc. is. But entering 'Prof. Peter John-Boy' into the first name and 'van Doe Jr. III of Essex' into the surname field would sort correctly and output to BibTeX correctly as long as the exporter puts brackets around the field entries.
  • The BibTeX export issue is beyond my domain, unfortunately. In CSL output, the processor does reasonably well with your sample input, if a comma is placed after "Doe". The only anomaly is that "Prof." is reduced to the initial P. That might be an issue if this were an actual name used in publication, but since that's not the case, I don't see much cause for worry.
  • Wow, I have not expected this. Very nice!

    Then I hope somebody of the export team reads this :)
  • Shouldn't Zotero enclose every name field (surname, first name, places, journal names etc.) into { } brackets during export as soon as two words are in there?
    Absolutely not. This prevents capitalization changes and shortening and interferes with sorting.
    If I don't include brackets in the name field, Zotero is not aware of double names. If I type the name with brackets Zotero adds additional brackets around the first part of the double name...
    Author-field support in BibTeX export, specifically, should be made smarter. The reason inserting brackets into the Zotero database does not work is because Zotero is a reference manager & not merely a BibTeX-specific tool. Ideally, output should look good no matter how you are using the data & it is very unlikely that BibTeX-specific markup, such as bracket enclosures, will be made to work in the way you describe.

    The preferred way to export suffixes in BibTeX would be something like "Strunk, Jr., William". Comma-separated given and family names in the BibTeX files is the way to go. For the split field entry, this should be easy. For the single-field entry, more intelligent name parsing might be needed.
  • You are right, I haven't thought of that.

    Anyway, in the meanwhile, until a nice solution is found, is need a work-around. And the only way I can think of (besides manually editing the BIB file afterwards) is to include those brackets.

    Sure, Zotero is a manager, not a BibTeX-Creator. However, those two tasks are highly integrated and should flawlessly work together. At least for everybody I know having one of those functions without the other is of no use ;) Fortunately (and thanks to you), Zotero is very close to this optimum.
  • In non-BibTeX contexts, brackets are almost always intended to be literal. There is no god compromise. You can search the forums for the patch that does not escape brackets, but (as a BibTeX user and a 'Jr.') I do not think it should be applied for all Zotero users.
  • It is also quite possible to modify the export behavior by tweaking BibTeX.js for your own use. The changes you suggest (adding brackets to multi-word names) should be trivial for anyone with even a little programming experience.
  • Can we please remove the honorific title example ("Prof. ...") from consideration here? That sort of stuff is a different issue, and not really relevant for citations in any case.
  • It would be nice to support honorifics in theory, but it seems like it just won't be possible to handle them until (unless) Zotero adds the facility for manually specifying name parts -- honorifics, suffixes, etc. I tried to determine whether honorifics are ever required for citations, and it looks like bdarcus is right that they are not likely relevant.
  • I didn't want to raise this issue - I just looked for an example with as many single words as possible to demonstrate my concerns ;) Thus, feel free to ignore the "Prof." here...

    Tweaking BibTeX.js... Isn't this something I would need to do after every update of Zotero?

    @ noksagt: Sorry, I searched half an hour but can't find the patch you have mentioned...
  • You can make a copy of BibTeX.js under another name and generate a new UUID for it. Make your changes to that copy, and it will not be replaced with Zotero updates.
  • Yes, but then official updates to the BibTeX export behaviour are also not merged ;) That's something I even less like...
  • In that case, you can make a translator that wraps such names as you'd like, then calls the main BibTeX translator. That's a little bit more conceptually complex, but it would be just a few lines of code.
  • Just to confirm:

    If I have the author:

    van Vreeswik

    Then for it to show up correctly in my document (both in text and reference list) in the author field I need to put {van Vreeswik} ?

    If I put it in just as van Vreeswik (without the {}'s) then it just comes up as Vreeswik, with van added after the initials.

    If I put in Van Vreeswik (capital V in Van) then it recognizes as a two-word surname.

    So it seems not to recognize a two-word surname if the first word's letter is not capitalized.

    I just want to confirm I am doing the correct thing and the {} is the only solution ATM?

    I am using:
    Zotero 2.1b2
    PythonExt from zotero.org
    Word for Mac Plugin for Zotero 2.1
    MacWord Integration Trunk XPI

    Martin.
  • Then for it to show up correctly in my document (both in text and reference list) in the author field I need to put {van Vreeswik} ?
    That is only for BibTeX. In Zotero fields, just write it into the field in plain form, without the squiggly braces.
    If I put it in just as van Vreeswik (without the {}'s) then it just comes up as Vreeswik, with van added after the initials.
    It sounds like it's working correctly, with the particle treated separately from the family name. You can control the placement of the particle using the demote-non-dropping-particle option. See the link to the processor manual, above, for details.
  • Thanks for your reply,

    I found the following:

    Particles as part of the last name

    The particles preceding some names should be treated as part of the last name, depending on the cultural heritage and personal preferences of the individual. To suppress parsing and treat such particles as part of the family name field, enclose the family name field content in double-quotes:

    { "author" : [
    { "family" : "\"van der Vlist\"",
    "given" : "Eric",
    "parse-names" : "true"
    }
    ]
    }



    I'm not sure where to find the demote-non-dropping-particle option...

    Now I'm not sure do I put """ or {} in the Author field, or is there an option somewhere to include the van as part of the author...?
  • I'm sorry, I pointed you at the wrong document! You should look at the CSL 1.0 specification.
  • Hello,

    Is there already a quick solution for the correct sorting of references with the first author having a last name consisting of two parts? I did not comprehend how I should solve this problem from the comments above..

    Thanks
    Ellen
  • @ellentje: Are you producing documents via BibTeX, or using the word processor plugins?
  • using the word processsor plugin. However, I've noticed now that for some (at least one) citation styles the sorting is correct. So, I guess it just depends on the citation styles (and not on zotero), which can be modified manually somehow...
  • edited July 21, 2012
    The sorting rules applied will depend on the style and on whether the name uses a non-dropping particle (John le Smith, entered as "le Smith" and "John") or a dropping particle (Steve van Jones, entered as "Jones" and "Steve van"). The full rundown on how the styles can deal with these is in the CSL 1.0 specification.
  • So, for those that are struggling with this, I solved the problem by adding demote-non-dropping-particle="never" to the style attribute within the citation style (using a text editor)

    <style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="never" default-locale="en-US">

    cheers!
    ellen
  • Is there a way to override which particles are considered dropping vs. non-dropping? I'm having trouble with "du," which is a dropping particle in French, but this leads to Zotero alphabetizing (for example) W. E. B. Du Bois under "Bois." (This is using Zotero 4.0.27.5, MS Word plugin, and the Chicago author-date style, which has demote-non-dropping-particle set to "never.")
  • edited July 16, 2015
    OK, solved it: I just have to enter it as "Du Bois" (with the quotation marks) in the surname field. (This is based on @Biota's comment above, but the escape characters messed me up - you don't need them in the Zotero interface.)
Sign In or Register to comment.