Return of an already solved problem: page numbers in MLA 8th edition

A problem solved a few weeks ago has returned, apparently concurrently with the recent solution of another problem.

1. The old problem that came back: MLA 8th edition was not changing page ranges such as 235-259 to 235-59.

2. The problem whose solution may have brought the old problem back: MLA 8th edition was omitting a space in some initials, e.g., A.Brian Smith instead of A. Brian Smith.

Is there a way to get MLA 8 working again on both fronts?

For 1, see issue 3 in https://forums.zotero.org/discussion/68482/how-to-create-a-modified-version-of-a-style-and-keep-the-original#latest.

For 2, see my second entry and following in https://forums.zotero.org/discussion/68482/how-to-create-a-modified-version-of-a-style-and-keep-the-original#latest.
  • BTW, the problem seems to be with bibliographic entries only, not citations.
  • I'm discovering new issues as I work. It appears that authors are no longer being processed correctly either in the bibliography (no et al. for more than two authors). Note that I am, at the suggestion of a respondent, using 5.0 beta. Maybe I should get back into the non-beta version and wait for the solution to my most recent problem, which involved a change to the csl processor, to make it into an update.
  • What exact style are you using?
  • Apologies! My confusion. The problem was in Word, and I was looking at an old bibliography that I had neglected to delete, not the automatically generated one. The latter is working as it should.
  • So I understand correctly that all issues mentioned here are resolved?
  • edited November 9, 2017
    Almost completely. There was one other issue I raised on that long thread near the end. (I came across the issue only later.) When there is both an editor and a translator, the "Translated by" is capitalized even though it appears after a comma ("Authors. Book title. Edited by X et al., Translated by Y et al., ...") Would this be a csl issue, a processor issue or maybe even an issue with the language specification?

    The relevant csl code is as follows:

    <macro name="other-contributors">
    <choose>
    <if variable="container-title" match="any">
    <names variable="editor translator" delimiter=", ">
    <label form="verb" suffix=" "/>
    <name and="text"/>
    </names>
    </if>
    <else>
    <names variable="editor translator" delimiter=", ">
    <label form="verb" suffix=" " text-case="capitalize-first"/>
    <name and="text"/>
    </names>
    </else>
    </choose>
    </macro>

    Does this imply that the label is always capitalized, even if the name is preceded by other names? If so, does that mean that the current CSL specifications cannot deal as one would like with the case above?
  • I think we actually cannot deal with this within CSL
    @Rintze
    Do you see any way of getting
    1. Edited by X
    2. Translated by Y
    3. Edited and translated by Z
    4. Edited by X, translated by Y

    I think we'll necessarily fail on one of 2, 3, or 4.
  • Technically, it looks like the schema allows for <text macro="editor-translator" text-case="capitalize-first"/>, so you could give that a try. But it might make more sense to change CSL to allow text-case="capitalize-first" on <group> tags.
  • edited November 9, 2017
    (and you need to wrap code on the forums within <code> and </code> tags)
  • That suggestion makes sense to me (mind you, as a pre-beginner at csl), but it didn't work, at least the way I implemented it. The capitalization at the beginning didn't take hold.

    e.g.:

    Fleck, Ludwik. Genesis and Development of a Scientific Fact. edited by Thaddeus J. Trenn and Robert K. Merton, translated by Fred Bradley and Thaddeus J. Trenn, University of Chicago P, 1979.

    Maybe there is a problem with my code?

    Before the change:


    <macro name="other-contributors">
    <choose>
    <if variable="container-title" match="any">
    <names variable="editor translator" delimiter=", ">
    <label form="verb" suffix=" "/>
    <name and="text"/>
    </names>
    </if>
    <else>
    <names variable="editor translator" delimiter=", ">
    <label form="verb" suffix=" " text-case="capitalize-first"/>
    <name and="text"/>
    </names>
    </else>
    </choose>
    </macro>


    After:


    <macro name="editor-translator">
    <names variable="editor translator" delimiter=", ">
    <label form="verb" suffix=" "/>
    <name and="text"/>
    </names>
    </macro>
    <macro name="other-contributors">
    <choose>
    <if variable="container-title" match="any">
    <text macro="editor-translator"/>
    </if>
    <else>
    <text macro="editor-translator" text-case="capitalize-first"/>
    </else>
    </choose>
    </macro>
  • code looks perfect -- I'm not surprised this isn't working -- text case applied to macros is a mess for the processor.
  • Ah, sorry, this might not be possible right now, then.
Sign In or Register to comment.