From 1742821c3edb7d5d2ed7ced265e3b4c9f00e622a Mon Sep 17 00:00:00 2001 From: John MacFarlane <jgm@berkeley.edu> Date: Wed, 7 Oct 2020 11:23:28 -0700 Subject: [PATCH] Fix URL prefixes in citations also when they occur in notes. Update chicago-fullnote-bibliography.csl and adjust tests. Closes #6723. --- src/Text/Pandoc/Citeproc.hs | 6 +- test/command/6723.md | 33 ++ .../command/chicago-fullnote-bibliography.csl | 466 ++++++++++++++---- test/command/citeproc-7a.md | 2 +- test/command/pandoc-citeproc-360.md | 8 +- test/command/pandoc-citeproc-68.md | 4 +- test/command/pandoc-citeproc-77.md | 8 +- ...-citeproc-chicago-fullnote-bibliography.md | 11 +- ...andoc-citeproc-move-period-inside-quote.md | 5 +- 9 files changed, 411 insertions(+), 132 deletions(-) create mode 100644 test/command/6723.md diff --git a/src/Text/Pandoc/Citeproc.hs b/src/Text/Pandoc/Citeproc.hs index 528be6cd7..a5cd26d18 100644 --- a/src/Text/Pandoc/Citeproc.hs +++ b/src/Text/Pandoc/Citeproc.hs @@ -164,9 +164,9 @@ processCitations (Pandoc meta bs) = do walk (fixQuotes . mvPunct moveNotes locale) $ walk deNote $ evalState (walkM insertResolvedCitations $ Pandoc meta' bs) $ cits - return $ Pandoc meta'' - $ insertRefs refkvs classes meta'' - (walk fixLinks $ B.toList bibs) bs' + return $ walk fixLinks + $ Pandoc meta'' + $ insertRefs refkvs classes meta'' (B.toList bibs) bs' -- If we have a span.csl-left-margin followed by span.csl-right-inline, -- we insert a space. This ensures that they will be separated by a space, diff --git a/test/command/6723.md b/test/command/6723.md new file mode 100644 index 000000000..f4455fcce --- /dev/null +++ b/test/command/6723.md @@ -0,0 +1,33 @@ +``` +% pandoc --citeproc -t markdown-citations +--- +csl: command/chicago-fullnote-bibliography.csl +references: +- id: doe + type: article + author: + - family: Doe + given: John + DOI: 10.1109/5.771073 + issued: + - year: 2020 + title: An article +... +Blah [@doe]. + +# References {-} + +^D +Blah.[^1] + +References {#references .unnumbered} +========== + +::: {#refs .references .csl-bib-body .hanging-indent} +::: {#ref-doe .csl-entry} +Doe, John. "An Article," 2020. <https://doi.org/10.1109/5.771073>. +::: +::: + +[^1]: John Doe, "An Article," 2020, <https://doi.org/10.1109/5.771073>. +``` diff --git a/test/command/chicago-fullnote-bibliography.csl b/test/command/chicago-fullnote-bibliography.csl index 5bcfe59b3..7d9c48c54 100644 --- a/test/command/chicago-fullnote-bibliography.csl +++ b/test/command/chicago-fullnote-bibliography.csl @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8"?> -<style xmlns="http://purl.org/net/xbiblio/csl" class="note" version="1.0" demote-non-dropping-particle="never" page-range-format="chicago"> +<style xmlns="http://purl.org/net/xbiblio/csl" class="note" version="1.0" demote-non-dropping-particle="display-and-sort" page-range-format="chicago"> <info> - <title>Chicago Manual of Style 16th edition (full note)</title> + <title>Chicago Manual of Style 17th edition (full note)</title> <id>http://www.zotero.org/styles/chicago-fullnote-bibliography</id> <link href="http://www.zotero.org/styles/chicago-fullnote-bibliography" rel="self"/> <link href="http://www.chicagomanualofstyle.org/tools_citationguide.html" rel="documentation"/> @@ -25,24 +25,22 @@ <name>Andrew Dunning</name> <email>andrew.dunning@utoronto.ca</email> </contributor> + <contributor> + <name>Sebastian Karcher</name> + </contributor> <category citation-format="note"/> <category field="generic-base"/> <summary>Chicago format with full notes and bibliography</summary> - <updated>2014-05-15T18:02:53+00:00</updated> + <updated>2017-10-12T12:00:00+00:00</updated> <rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights> </info> <locale xml:lang="en"> <terms> <term name="editor" form="verb-short">ed.</term> <term name="translator" form="verb-short">trans.</term> - <term name="editortranslator" form="verb-short"> - <single>ed. and trans.</single> - <multiple>ed. and trans.</multiple> - </term> - <term name="editortranslator" form="verb"> - <single>Edited and translated by</single> - <multiple>Edited and translated by</multiple> - </term> + <term name="translator" form="short">trans.</term> + <term name="editortranslator" form="verb-short">ed. and trans.</term> + <term name="editortranslator" form="verb">Edited and translated by</term> <term name="translator" form="short">trans.</term> </terms> </locale> @@ -68,21 +66,21 @@ </macro> <macro name="secondary-contributors-note"> <choose> - <if type="chapter paper-conference" match="none"> + <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="none"> <text macro="editor-translator"/> </if> </choose> </macro> <macro name="container-contributors-note"> <choose> - <if type="chapter paper-conference" match="any"> + <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any"> <text macro="editor-translator"/> </if> </choose> </macro> <macro name="secondary-contributors"> <choose> - <if type="chapter paper-conference" match="none"> + <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="none"> <names variable="editor translator" delimiter=". "> <label form="verb" text-case="capitalize-first" suffix=" "/> <name and="text" delimiter=", "/> @@ -92,7 +90,7 @@ </macro> <macro name="container-contributors"> <choose> - <if type="chapter paper-conference" match="any"> + <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any"> <group delimiter=", "> <choose> <if variable="author"> @@ -233,14 +231,14 @@ <if variable="title" match="none"> <text variable="genre"/> </if> - <else-if type="bill book graphic legislation motion_picture report song" match="any"> + <else-if type="book graphic map motion_picture song" match="any"> <text variable="title" text-case="title" font-style="italic"/> <group delimiter=" " prefix=", "> <text term="version"/> <text variable="version"/> </group> </else-if> - <else-if type="legal_case interview" match="any"> + <else-if type="legal_case interview patent" match="any"> <text variable="title"/> </else-if> <else-if variable="reviewed-author"> @@ -260,7 +258,7 @@ </if> </choose> </if> - <else-if type="bill book graphic legislation motion_picture report song" match="any"> + <else-if type="book graphic motion_picture song" match="any"> <text variable="title" text-case="title" font-style="italic"/> <group prefix=" (" suffix=")" delimiter=" "> <text term="version"/> @@ -276,7 +274,7 @@ </names> </group> </else-if> - <else-if type="legal_case interview" match="any"> + <else-if type="bill legislation legal_case interview patent" match="any"> <text variable="title"/> </else-if> <else> @@ -299,10 +297,16 @@ </else-if> </choose> </if> - <else-if type="bill book graphic legislation motion_picture report song" match="any"> + <else-if type="book graphic motion_picture song" match="any"> <text variable="title" text-case="title" form="short" font-style="italic"/> </else-if> - <else-if type="legal_case interview" match="any"> + <else-if type="legal_case" variable="title-short" match="all"> + <text variable="title" font-style="italic" form="short"/> + </else-if> + <else-if type="patent interview" match="any"> + <text variable="title" form="short"/> + </else-if> + <else-if type="legal_case bill legislation" match="any"> <text variable="title"/> </else-if> <else> @@ -323,11 +327,25 @@ <text variable="medium"/> <choose> <if variable="title" match="none"/> - <else-if type="thesis speech" match="any"/> + <else-if type="manuscript thesis speech" match="any"/> + <else-if type="patent"> + <group delimiter=" "> + <text variable="authority"/> + <text variable="number"/> + </group> + </else-if> <else> <text variable="genre"/> </else> </choose> + <choose> + <if type="map"> + <text variable="scale"/> + </if> + <else-if type="graphic"> + <text variable="dimensions"/> + </else-if> + </choose> </group> </macro> <macro name="description"> @@ -339,37 +357,63 @@ <choose> <if variable="title" match="none"/> <else-if type="thesis speech" match="any"/> + <else-if type="patent"> + <group delimiter=" "> + <text variable="authority"/> + <text variable="number"/> + </group> + </else-if> <else> <text variable="genre" text-case="capitalize-first"/> </else> </choose> + <choose> + <if type="map"> + <text variable="scale"/> + </if> + <else-if type="graphic"> + <text variable="dimensions"/> + </else-if> + </choose> </group> </macro> <macro name="container-title-note"> <group delimiter=" "> <choose> - <if type="chapter paper-conference" match="any"> + <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any"> <text term="in"/> </if> </choose> <choose> - <if type="legal_case" match="none"> - <text variable="container-title" text-case="title" font-style="italic"/> + <if type="webpage"> + <text variable="container-title"/> </if> + <else-if type="post-weblog"> + <text variable="container-title" text-case="title" font-style="italic" suffix=" (blog)"/> + </else-if> + <else-if type="bill legislation legal_case" match="none"> + <text variable="container-title" text-case="title" font-style="italic"/> + </else-if> </choose> </group> </macro> <macro name="container-title"> <group delimiter=" "> <choose> - <if type="chapter paper-conference" match="any"> + <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any"> <text term="in" text-case="capitalize-first"/> </if> </choose> <choose> - <if type="legal_case" match="none"> - <text variable="container-title" text-case="title" font-style="italic"/> + <if type="webpage"> + <text variable="container-title"/> </if> + <else-if type="post-weblog"> + <text variable="container-title" text-case="title" font-style="italic" suffix=" (blog)"/> + </else-if> + <else-if type="bill legislation legal_case" match="none"> + <text variable="container-title" text-case="title" font-style="italic"/> + </else-if> </choose> </group> </macro> @@ -405,7 +449,7 @@ </macro> <macro name="edition-note"> <choose> - <if type="bill book chapter graphic legal_case legislation motion_picture paper-conference report song" match="any"> + <if type="book chapter graphic motion_picture paper-conference report song" match="any"> <choose> <if is-numeric="edition"> <group delimiter=" "> @@ -422,7 +466,7 @@ </macro> <macro name="edition"> <choose> - <if type="bill book chapter graphic legal_case legislation motion_picture paper-conference report song" match="any"> + <if type="book chapter graphic motion_picture paper-conference report song" match="any"> <choose> <if is-numeric="edition"> <group delimiter=" "> @@ -477,17 +521,10 @@ </group> </group> </if> - <else-if type="legal_case"> - <group delimiter=", "> - <group delimiter=" "> - <number variable="volume"/> - <text variable="container-title"/> - <text variable="page"/> - </group> - <text variable="locator"/> - </group> + <else-if type="bill legislation legal_case" match="any"> + <text macro="legal-cites"/> </else-if> - <else-if type="bill book chapter graphic legal_case legislation motion_picture paper-conference report song" match="any"> + <else-if type="book chapter graphic motion_picture paper-conference report song" match="any"> <group delimiter=", "> <text macro="edition-note"/> <group delimiter=" "> @@ -506,6 +543,58 @@ </else-if> </choose> </macro> + <macro name="legal-cites"> + <choose> + <if type="legal_case" match="any"> + <group delimiter=" "> + <choose> + <if variable="container-title"> + <text variable="volume"/> + <text variable="container-title"/> + <group delimiter=" "> + <!--change to label variable="section" as that becomes available --> + <text term="section" form="symbol"/> + <text variable="section"/> + </group> + <text variable="page"/> + </if> + <else> + <text variable="number" prefix="No. "/> + </else> + </choose> + </group> + </if> + <else-if type="bill legislation" match="any"> + <group delimiter=", "> + <choose> + <if variable="number"> + <!--There's a public law number--> + <text variable="number" prefix="Pub. L. No. "/> + <group delimiter=" "> + <!--change to label variable="section" as that becomes available --> + <text term="section" form="symbol"/> + <text variable="section"/> + </group> + <group delimiter=" "> + <text variable="volume"/> + <text variable="container-title"/> + <text variable="page-first"/> + </group> + </if> + <else> + <group delimiter=" "> + <text variable="volume"/> + <text variable="container-title"/> + <!--change to label variable="section" as that becomes available --> + <text term="section" form="symbol"/> + <text variable="section"/> + </group> + </else> + </choose> + </group> + </else-if> + </choose> + </macro> <macro name="locators-join-with-space"> <choose> <if type="article-journal" variable="volume" match="all"> @@ -519,7 +608,7 @@ </macro> <macro name="locators-join-with-comma"> <choose> - <if type="legal_case chapter paper-conference" match="any"> + <if type="bill chapter legislation legal_case paper-conference" match="any"> <text macro="locators"/> </if> <else-if type="article-journal"> @@ -536,7 +625,7 @@ </macro> <macro name="locators-join-with-period"> <choose> - <if type="legal_case article-journal chapter paper-conference" match="none"> + <if type="bill legislation legal_case article-journal chapter paper-conference" match="none"> <text macro="locators"/> </if> </choose> @@ -553,14 +642,10 @@ </group> </group> </if> - <else-if type="legal_case"> - <group delimiter=" "> - <number variable="volume"/> - <text variable="container-title"/> - <text variable="page"/> - </group> + <else-if type="bill legislation legal_case" match="any"> + <text macro="legal-cites"/> </else-if> - <else-if type="bill book graphic legal_case legislation motion_picture report song" match="any"> + <else-if type="book graphic motion_picture report song" match="any"> <group delimiter=". "> <text macro="edition"/> <group delimiter=" "> @@ -573,7 +658,7 @@ </group> </group> </else-if> - <else-if type="chapter paper-conference" match="any"> + <else-if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any"> <group delimiter=". "> <text macro="edition"/> <choose> @@ -604,12 +689,55 @@ </if> </choose> </macro> + <macro name="event-note"> + <text variable="event"/> + </macro> <macro name="event"> - <group delimiter=" "> - <text term="presented at"/> - <text variable="event"/> + <choose> + <if variable="title"> + <group delimiter=" "> + <text term="presented at"/> + <text variable="event"/> + </group> + </if> + <else> + <group delimiter=" "> + <text term="presented at" text-case="capitalize-first"/> + <text variable="event"/> + </group> + </else> + </choose> + </macro> + <macro name="originally-published"> + <group delimiter=", "> + <group delimiter=": "> + <text variable="original-publisher-place"/> + <text variable="original-publisher"/> + </group> + <date variable="original-date" form="text" date-parts="year"/> </group> </macro> + <macro name="reprint-note"> + <!--needs localization--> + <choose> + <if variable="original-date issued" match="all"> + <choose> + <!--for whatever reason in notes, when we have both original and new publishers, reprint doesn't appear--> + <if variable="original-publisher original-publisher-place" match="none"> + <text value="repr."/> + </if> + </choose> + </if> + </choose> + </macro> + <macro name="reprint"> + <!--needs localization--> + <choose> + <if variable="original-date issued" match="all"> + <text value="reprint" text-case="capitalize-first"/> + </if> + </choose> + </macro> <macro name="publisher"> <choose> <if type="thesis"> @@ -630,27 +758,64 @@ <choose> <if variable="issued"> <choose> - <if type="graphic report" match="any"> - <date variable="issued" form="text"/> - </if> - <else-if type="legal_case"> + <if type="legal_case"> <group delimiter=" "> <text variable="authority"/> - <date variable="issued"> - <date-part name="year"/> - </date> + <choose> + <if variable="container-title" match="any"> + <!--Only print year for cases published in reporters--> + <date variable="issued" form="numeric" date-parts="year"/> + </if> + <else> + <date variable="issued" form="text"/> + </else> + </choose> + </group> + </if> + <else-if type="book bill chapter legislation motion_picture paper-conference song thesis" match="any"> + <choose> + <if is-uncertain-date="issued"> + <date variable="issued" form="numeric" date-parts="year" prefix="[" suffix="?]"/> + </if> + <else> + <date variable="issued" form="numeric" date-parts="year"/> + </else> + </choose> + </else-if> + <else-if type="patent"> + <group delimiter=", "> + <group delimiter=" "> + <!--Needs Localization--> + <text value="filed"/> + <date variable="submitted" form="text"/> + </group> + <group delimiter=" "> + <choose> + <if variable="issued submitted" match="all"> + <text term="and"/> + </if> + </choose> + <!--Needs Localization--> + <text value="issued"/> + <date variable="issued" form="text"/> + </group> </group> </else-if> - <else-if type="bill book chapter graphic legal_case legislation motion_picture paper-conference report song thesis" match="any"> - <date variable="issued"> - <date-part name="year"/> - </date> - </else-if> <else> - <date variable="issued" form="text"/> + <choose> + <if is-uncertain-date="issued"> + <date variable="issued" form="text" prefix="[" suffix="?]"/> + </if> + <else> + <date variable="issued" form="text"/> + </else> + </choose> </else> </choose> </if> + <else-if variable="status"> + <text variable="status"/> + </else-if> <else-if variable="accessed URL" match="all"/> <else> <text term="no date" form="short"/> @@ -659,12 +824,28 @@ </macro> <macro name="point-locators-subsequent"> <choose> - <if variable="locator"> + <if type="legal_case" variable="locator" match="all"> + <choose> + <if locator="page"> + <group delimiter=":"> + <number variable="volume"/> + <text variable="locator"/> + </group> + </if> + <else> + <group delimiter=" "> + <label variable="locator" form="short"/> + <text variable="locator"/> + </group> + </else> + </choose> + </if> + <else-if variable="locator"> <choose> <if locator="page" match="none"> <group delimiter=" "> <choose> - <if type="bill book graphic legal_case legislation motion_picture report song" match="any"> + <if type="book graphic motion_picture report song" match="any"> <choose> <if variable="volume"> <group delimiter=", "> @@ -687,7 +868,7 @@ <text variable="locator"/> </group> </if> - <else-if type="bill book graphic legal_case legislation motion_picture report song" match="any"> + <else-if type="book graphic motion_picture report song" match="any"> <group delimiter=":"> <number variable="volume" form="numeric"/> <text variable="locator"/> @@ -697,7 +878,7 @@ <text variable="locator"/> </else> </choose> - </if> + </else-if> </choose> </macro> <macro name="point-locators-join-with-colon"> @@ -759,7 +940,7 @@ </macro> <macro name="locators-chapter"> <choose> - <if type="chapter paper-conference" match="any"> + <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any"> <choose> <if variable="author container-author" match="all"/> <else> @@ -832,7 +1013,7 @@ </macro> <macro name="issue-note-join-with-space"> <choose> - <if type="article-journal legal_case" variable="publisher-place publisher" match="any"> + <if type="article-journal bill legislation legal_case manuscript thesis" variable="publisher-place publisher" match="any"> <!--Chicago doesn't use publisher/place for Newspapers and we want the date delimited by a comma--> <choose> <if type="article-newspaper" match="none"> @@ -851,7 +1032,7 @@ </macro> <macro name="issue-note-join-with-comma"> <choose> - <if type="article-journal legal_case" variable="publisher-place publisher" match="none"> + <if type="article-journal bill legislation legal_case manuscript thesis" variable="publisher-place publisher" match="none"> <text macro="issue-note"/> </if> <else-if type="article-newspaper"> @@ -866,9 +1047,21 @@ </else-if> </choose> </macro> + <macro name="issue-map-graphic"> + <!--See CMoS 17th ed. 14.235 and 14.237--> + <choose> + <if type="graphic map" match="any"> + <choose> + <if variable="publisher publisher-place" match="none"> + <text macro="issued"/> + </if> + </choose> + </if> + </choose> + </macro> <macro name="issue-note"> <choose> - <if type="legal_case" match="any"> + <if type="bill legislation legal_case" match="any"> <text macro="issued" prefix="(" suffix=")"/> </if> <else-if type="article-journal"> @@ -884,18 +1077,27 @@ <else-if type="article-newspaper"> <text macro="issued"/> </else-if> - <else-if variable="publisher-place event-place publisher genre" match="any"> + <else-if type="manuscript thesis speech" match="any"> + <group delimiter=", " prefix="(" suffix=")"> + <choose> + <if variable="title" match="any"> + <text variable="genre"/> + </if> + </choose> + <text variable="publisher"/> + <text macro="issued"/> + </group> + </else-if> + <else-if variable="publisher-place event-place publisher" match="any"> <group prefix="(" suffix=")" delimiter=", "> - <group delimiter=" "> - <choose> - <if variable="title" match="none"/> - <else-if type="thesis speech" match="any"> - <text variable="genre"/> - </else-if> - </choose> - <text macro="event"/> + <text macro="event-note"/> + <group delimiter="; "> + <text macro="originally-published"/> + <group delimiter=", "> + <text macro="reprint-note"/> + <text macro="publisher"/> + </group> </group> - <text macro="publisher"/> <text macro="issued"/> </group> </else-if> @@ -906,18 +1108,21 @@ </macro> <macro name="issue-join-with-space"> <choose> - <if type="article-journal legal_case" match="any"> + <if type="article-journal" match="any"> <choose> <if variable="issue volume" match="any"> <text macro="issue"/> </if> </choose> </if> + <else-if type="bill legislation legal_case" match="any"> + <text macro="issue"/> + </else-if> </choose> </macro> <macro name="issue-join-with-period"> <choose> - <if type="article-journal legal_case" match="none"> + <if type="article-journal bill legislation legal_case" match="none"> <choose> <if type="speech" variable="publisher publisher-place" match="any"> <text macro="issue"/> @@ -928,21 +1133,25 @@ </macro> <macro name="issue-join-with-comma"> <choose> - <if type="article-journal legal_case" match="none"> + <if type="bill legislation legal_case" match="none"> <choose> - <if type="speech" variable="publisher publisher-place" match="none"> - <text macro="issue"/> + <if type="article-journal" match="none"> + <choose> + <if type="speech" variable="publisher publisher-place" match="none"> + <text macro="issue"/> + </if> + </choose> </if> + <else-if variable="volume issue" match="none"> + <text macro="issue"/> + </else-if> </choose> </if> - <else-if variable="volume issue" match="none"> - <text macro="issue"/> - </else-if> </choose> </macro> <macro name="issue"> <choose> - <if type="legal_case" match="any"> + <if type="bill legislation legal_case" match="any"> <text macro="issued" prefix="(" suffix=")"/> </if> <else-if type="article-journal"> @@ -981,13 +1190,20 @@ <text variable="genre" text-case="capitalize-first"/> </if> </choose> - <text macro="publisher"/> + <group delimiter=". "> + <text macro="originally-published"/> + <group delimiter=", "> + <text macro="reprint"/> + <text macro="publisher"/> + </group> + </group> <text macro="issued"/> </group> </else-if> - <else> + <!--location for data for maps and artwork is different--> + <else-if type="graphic map" match="none"> <text macro="issued"/> - </else> + </else-if> </choose> </macro> <macro name="access-note"> @@ -1012,7 +1228,7 @@ <if type="legal_case" match="none"> <choose> <if variable="DOI"> - <text variable="DOI" prefix="doi:"/> + <text variable="DOI" prefix="https://doi.org/"/> </if> <else> <text variable="URL"/> @@ -1044,7 +1260,7 @@ <if type="legal_case" match="none"> <choose> <if variable="DOI"> - <text variable="DOI" prefix="doi:"/> + <text variable="DOI" prefix="https://doi.org/"/> </if> <else> <text variable="URL"/> @@ -1057,29 +1273,55 @@ <macro name="case-locator-subsequent"> <choose> <if type="legal_case"> - <text macro="locators-note"/> + <group delimiter=" "> + <text variable="volume"/> + <text variable="container-title"/> + </group> </if> </choose> </macro> - <macro name="case-issue-subsequent"> + <macro name="case-pinpoint-subsequent"> <choose> <if type="legal_case"> - <text macro="issue"/> + <group delimiter=" "> + <choose> + <if locator="page"> + <text term="at"/> + <text variable="locator"/> + </if> + <else> + <label variable="locator"/> + <text variable="locator"/> + </else> + </choose> + </group> </if> </choose> </macro> <citation et-al-min="4" et-al-use-first="1" disambiguate-add-names="true"> <layout suffix="." delimiter="; "> <choose> - <if position="ibid-with-locator"> + <if position="ibid ibid-with-locator" match="any"> <group delimiter=", "> - <text term="ibid"/> - <text macro="point-locators-subsequent"/> + <text macro="contributors-short"/> + <group delimiter=" "> + <group delimiter=", "> + <choose> + <if variable="author editor translator" match="none"> + <text macro="title-short"/> + </if> + </choose> + <text macro="case-locator-subsequent"/> + </group> + <text macro="case-pinpoint-subsequent"/> + </group> + <choose> + <if match="none" type="legal_case"> + <text macro="point-locators-subsequent"/> + </if> + </choose> </group> </if> - <else-if position="ibid"> - <text term="ibid"/> - </else-if> <else-if position="subsequent"> <group delimiter=", "> <text macro="contributors-short"/> @@ -1090,9 +1332,13 @@ <text macro="date-disambiguate"/> <text macro="case-locator-subsequent"/> </group> - <text macro="case-issue-subsequent"/> + <text macro="case-pinpoint-subsequent"/> </group> - <text macro="point-locators-subsequent"/> + <choose> + <if match="none" type="legal_case"> + <text macro="point-locators-subsequent"/> + </if> + </choose> </group> </else-if> <else> @@ -1106,6 +1352,7 @@ <group delimiter=", "> <text macro="contributors-note"/> <text macro="title-note"/> + <text macro="issue-map-graphic"/> </group> <text macro="description-note"/> <text macro="secondary-contributors-note"/> @@ -1150,6 +1397,7 @@ <group delimiter=". "> <text macro="contributors"/> <text macro="title"/> + <text macro="issue-map-graphic"/> </group> <text macro="description"/> <text macro="secondary-contributors"/> diff --git a/test/command/citeproc-7a.md b/test/command/citeproc-7a.md index fc4e799cf..386ba3594 100644 --- a/test/command/citeproc-7a.md +++ b/test/command/citeproc-7a.md @@ -34,7 +34,7 @@ Doe, John. "Test," n.d. [^1]: John Doe, "Test," n.d., 12. -[^2]: Ibid. +[^2]: Doe, 12. [^3]: asdfasdf diff --git a/test/command/pandoc-citeproc-360.md b/test/command/pandoc-citeproc-360.md index 233551304..7cb8e4f61 100644 --- a/test/command/pandoc-citeproc-360.md +++ b/test/command/pandoc-citeproc-360.md @@ -25,11 +25,11 @@ references: ::: {#refs .references .csl-bib-body .hanging-indent} ::: {#ref-lestrange2017 .csl-entry} -L'Estrange, Michael, and Stephen Merchant. *2017 Independent -Intelligence Review*, July 18, 2017. +L'Estrange, Michael, and Stephen Merchant. "2017 Independent +Intelligence Review," July 18, 2017. ::: ::: -[^1]: Michael L'Estrange and Stephen Merchant, *2017 Independent - Intelligence Review*, July 18, 2017. +[^1]: Michael L'Estrange and Stephen Merchant, "2017 Independent + Intelligence Review," July 18, 2017. ``` diff --git a/test/command/pandoc-citeproc-68.md b/test/command/pandoc-citeproc-68.md index d384f0e69..7f0dd784e 100644 --- a/test/command/pandoc-citeproc-68.md +++ b/test/command/pandoc-citeproc-68.md @@ -49,8 +49,8 @@ Pontifical Institute of Mediaeval Studies, 1992. Care*, Studies and Texts 108 (Toronto: Pontifical Institute of Mediaeval Studies, 1992), 501--3. -[^2]: Excerpts from this text were previously printed in ibid., 508--14; - it was also briefly described in ibid., 141--42. +[^2]: Excerpts from this text were previously printed in Goering, + 508--14; it was also briefly described in Goering, 141--42. [^3]: Goering, *William de Montibus*, 141--42. ``` diff --git a/test/command/pandoc-citeproc-77.md b/test/command/pandoc-citeproc-77.md index d7090edb4..cc0494539 100644 --- a/test/command/pandoc-citeproc-77.md +++ b/test/command/pandoc-citeproc-77.md @@ -52,12 +52,12 @@ Doe, John, III, n.d. Dumboldt, Ezekiel, III, n.d. ::: -::: {#ref-item3 .csl-entry} -Humboldt, Alexander von, n.d. +::: {#ref-item2 .csl-entry} +Gogh, Vincent van, n.d. ::: -::: {#ref-item2 .csl-entry} -van Gogh, Vincent, n.d. +::: {#ref-item3 .csl-entry} +Humboldt, Alexander von, n.d. ::: ::: diff --git a/test/command/pandoc-citeproc-chicago-fullnote-bibliography.md b/test/command/pandoc-citeproc-chicago-fullnote-bibliography.md index ff23c326c..567e6e4f0 100644 --- a/test/command/pandoc-citeproc-chicago-fullnote-bibliography.md +++ b/test/command/pandoc-citeproc-chicago-fullnote-bibliography.md @@ -105,9 +105,9 @@ Sam Smith. Oxford: Oxford University Press, 2007. [^3]: [*First Book* (Cambridge: Cambridge University Press, 2005)](#ref-item1). -[^4]: [Ibid., 30](#ref-item1). +[^4]: [30](#ref-item1). -[^5]: [Ibid.](#ref-item1), with suffix. +[^5]: [30](#ref-item1), with suffix. [^6]: [*First Book*, 2005](#ref-item1); ["Article," *Journal of Generic Studies* 6 (2006): 30](#ref-item2); see also [John Doe and Jenny @@ -123,7 +123,7 @@ Sam Smith. Oxford: Oxford University Press, 2007. [^9]: See [Doe, *First Book*, 2005, 34--35](#ref-item1). -[^10]: Some citations (See [ibid., chap. 3](#ref-item1); [Doe and Roe, +[^10]: Some citations (See [Doe, chap. 3](#ref-item1); [Doe and Roe, "Why Water Is Wet"](#ref-пункт3); [Doe, "Article," 2006](#ref-item2)). @@ -132,9 +132,8 @@ Sam Smith. Oxford: Oxford University Press, 2007. [^12]: [Doe, *First Book*, 2005](#ref-item1) and nowhere else. -[^13]: Like a citation without author: ([Ibid.](#ref-item1)), and again - ([Ibid.](#ref-item1)), and now Doe with a locator (["Article," 2006, - 44](#ref-item2)). +[^13]: Like a citation without author: (), and again (), and now Doe + with a locator (["Article," 2006, 44](#ref-item2)). [^14]: *See* [Doe, *First Book*, 2005, 32](#ref-item1). ``` diff --git a/test/command/pandoc-citeproc-move-period-inside-quote.md b/test/command/pandoc-citeproc-move-period-inside-quote.md index e08c6b00f..86c330dff 100644 --- a/test/command/pandoc-citeproc-move-period-inside-quote.md +++ b/test/command/pandoc-citeproc-move-period-inside-quote.md @@ -46,8 +46,7 @@ Here is a test citation.[^2] [^1]: J. D. Watson and F. H. C. Crick, "Molecular Structure of Nucleic Acids: A Structure for Deoxyribose Nucleic Acid," *Nature* 171, no. - 4356 (April 25, 1953): 737--38, - doi:[10.1038/171737a0](https://doi.org/10.1038/171737a0). + 4356 (April 25, 1953): 737--38, <https://doi.org/10.1038/171737a0>. -[^2]: Ibid. +[^2]: Watson and Crick. ```