pandoc/test/command/le-tapuscrit-note.csl

497 lines
18 KiB
Text
Raw Normal View History

Add built-in citation support using new citeproc library. This deprecates the use of the external pandoc-citeproc filter; citation processing is now built in to pandoc. * Add dependency on citeproc library. * Add Text.Pandoc.Citeproc module (and some associated unexported modules under Text.Pandoc.Citeproc). Exports `processCitations`. [API change] * Add data files needed for Text.Pandoc.Citeproc: default.csl in the data directory, and a citeproc directory that is just used at compile-time. Note that we've added file-embed as a mandatory rather than a conditional depedency, because of the biblatex localization files. We might eventually want to use readDataFile for this, but it would take some code reorganization. * Text.Pandoc.Loging: Add `CiteprocWarning` to `LogMessage` and use it in `processCitations`. [API change] * Add tests from the pandoc-citeproc package as command tests (including some tests pandoc-citeproc did not pass). * Remove instructions for building pandoc-citeproc from CI and release binary build instructions. We will no longer distribute pandoc-citeproc. * Markdown reader: tweak abbreviation support. Don't insert a nonbreaking space after a potential abbreviation if it comes right before a note or citation. This messes up several things, including citeproc's moving of note citations. * Add `csljson` as and input and output format. This allows pandoc to convert between `csljson` and other bibliography formats, and to generate formatted versions of CSL JSON bibliographies. * Add module Text.Pandoc.Writers.CslJson, exporting `writeCslJson`. [API change] * Add module Text.Pandoc.Readers.CslJson, exporting `readCslJson`. [API change] * Added `bibtex`, `biblatex` as input formats. This allows pandoc to convert between BibLaTeX and BibTeX and other bibliography formats, and to generated formatted versions of BibTeX/BibLaTeX bibliographies. * Add module Text.Pandoc.Readers.BibTeX, exporting `readBibTeX` and `readBibLaTeX`. [API change] * Make "standalone" implicit if output format is a bibliography format. This is needed because pandoc readers for bibliography formats put the bibliographic information in the `references` field of metadata; and unless standalone is specified, metadata gets ignored. (TODO: This needs improvement. We should trigger standalone for the reader when the input format is bibliographic, and for the writer when the output format is markdown.) * Carry over `citationNoteNum` to `citationNoteNumber`. This was just ignored in pandoc-citeproc. * Text.Pandoc.Filter: Add `CiteprocFilter` constructor to Filter. [API change] This runs the processCitations transformation. We need to treat it like a filter so it can be placed in the sequence of filter runs (after some, before others). In FromYAML, this is parsed from `citeproc` or `{type: citeproc}`, so this special filter may be specified either way in a defaults file (or by `citeproc: true`, though this gives no control of positioning relative to other filters). TODO: we need to add something to the manual section on defaults files for this. * Add deprecation warning if `upandoc-citeproc` filter is used. * Add `--citeproc/-C` option to trigger citation processing. This behaves like a filter and will be positioned relative to filters as they appear on the command line. * Rewrote the manual on citatations, adding a dedicated Citations section which also includes some information formerly found in the pandoc-citeproc man page. * Look for CSL styles in the `csl` subdirectory of the pandoc user data directory. This changes the old pandoc-citeproc behavior, which looked in `~/.csl`. Users can simply symlink `~/.csl` to the `csl` subdirectory of their pandoc user data directory if they want the old behavior. * Add support for CSL bibliography entry formatting to LaTeX, HTML, Ms writers. Added CSL-related CSS to styles.html.
2020-09-07 01:25:16 +02:00
<?xml version="1.0" encoding="utf-8"?>
<style xmlns="http://purl.org/net/xbiblio/csl" class="note" default-locale="fr-FR" version="1.0" page-range-format="expanded">
<info>
<title>Le tapuscrit (École des hautes études en sciences sociales) (note, French)</title>
<title-short>Tapuscrit-EHESS</title-short>
<id>http://www.zotero.org/styles/le-tapuscrit-note</id>
<link href="http://www.zotero.org/styles/le-tapuscrit-note" rel="self"/>
<link href="http://www.editions.ehess.fr/ouvrages/ouvrage/le-tapuscrit/" rel="documentation"/>
<author>
<name>Franziska Heimburger</name>
<email>zotero@franziska.fr</email>
</author>
<category citation-format="note"/>
<category field="social_science"/>
<category field="generic-base"/>
<updated>2018-07-12T11:20:37+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="fr">
<terms>
<term name="ordinal-01">ère</term>
<term name="ordinal-02">e</term>
<term name="ordinal-03">e</term>
<term name="ordinal-04">e</term>
<term name="cited">op.&#160;cit.</term>
<term name="page" form="short">p.</term>
<term name="editor" form="short">
<single>ed.</single>
<multiple>eds.</multiple>
</term>
<term name="in">dans</term>
</terms>
</locale>
<macro name="author">
<choose>
<if variable="author">
<names variable="author">
<name form="long" and="text" delimiter-precedes-last="never" sort-separator=" "/>
</names>
</if>
<else-if variable="editor">
<names variable="editor">
<name form="long" and="text" delimiter-precedes-last="never" sort-separator=" "/>
<label form="short" prefix="&#160;(" suffix=".)"/>
</names>
</else-if>
</choose>
</macro>
<macro name="author-bib">
<choose>
<if variable="author">
<names variable="author">
<name name-as-sort-order="all" form="long" and="text" delimiter-precedes-last="never" sort-separator=" ">
<name-part name="family" font-variant="small-caps"/>
</name>
</names>
</if>
<else-if variable="editor">
<names variable="editor">
<name name-as-sort-order="all" form="long" and="text" delimiter-precedes-last="never" sort-separator=" ">
<name-part name="family" font-variant="small-caps"/>
</name>
<label form="short" prefix="&#160;(" suffix=".)"/>
</names>
</else-if>
</choose>
</macro>
<macro name="author-ibid">
<choose>
<if variable="author">
<names variable="author">
<name and="text" initialize="true" initialize-with="." delimiter-precedes-last="never" sort-separator=" " font-style="normal"/>
</names>
</if>
<else-if variable="editor">
<names variable="editor">
<name form="long" and="text" delimiter-precedes-last="never" sort-separator=" "/>
<label form="short" prefix="&#160;(" suffix=".)"/>
</names>
</else-if>
</choose>
</macro>
<macro name="editor">
<names variable="editor">
<name form="long" and="text" delimiter-precedes-last="never" sort-separator=" "/>
<label form="short" prefix="&#160;(" suffix=".)"/>
</names>
</macro>
<macro name="translator">
<names variable="translator">
<name form="long" and="text" delimiter-precedes-last="never" sort-separator=" " prefix=" traduit par "/>
</names>
</macro>
<macro name="title">
<choose>
<if type="bill book graphic legal_case motion_picture report song" match="any">
<text variable="title" text-case="capitalize-first" font-style="italic"/>
</if>
<else-if type="article-journal article-newspaper article-magazine" match="any">
<group delimiter=", ">
<text variable="title" text-case="capitalize-first" quotes="true"/>
<text variable="container-title" font-style="italic"/>
</group>
</else-if>
<else-if type="thesis" match="any">
<group delimiter="">
<text variable="title" text-case="capitalize-first" font-style="italic" suffix=","/>
<text variable="genre" suffix=", " prefix=" "/>
<text variable="publisher"/>
</group>
</else-if>
<else-if type="manuscript" match="any">
<group delimiter=",">
<text variable="title" text-case="capitalize-first" font-style="italic"/>
<text variable="genre" prefix=" [" suffix="]"/>
</group>
</else-if>
<else-if type="chapter entry-dictionary entry-encyclopedia" match="any">
<group delimiter="">
<text variable="title" text-case="capitalize-first" quotes="true"/>
<text value="dans" suffix=" " prefix=" "/>
<text macro="editor" suffix=", "/>
<text variable="container-title" text-case="capitalize-first" font-style="italic"/>
</group>
</else-if>
<else-if type="webpage post-weblog" match="any">
<group delimiter="">
<text variable="title" text-case="capitalize-first" font-style="italic" suffix=", "/>
<text variable="URL"/>
<group prefix=" , ">
<date variable="issued">
<date-part name="day" suffix=" "/>
<date-part name="month" suffix=" "/>
<date-part name="year"/>
</date>
</group>
</group>
</else-if>
<else>
<text variable="title" quotes="true"/>
</else>
</choose>
</macro>
<macro name="pub-place">
<choose>
<if type="bill book chapter entry-dictionary entry-encyclopedia thesis graphic legal_case manuscript motion_picture paper-conference report song" match="any">
<choose>
<if variable="publisher-place" match="any">
<text variable="publisher-place"/>
</if>
<else>
<text value="s.l."/>
</else>
</choose>
</if>
</choose>
</macro>
<macro name="publisher">
<choose>
<if type="bill book chapter entry-dictionary entry-encyclopedia graphic legal_case motion_picture paper-conference report song" match="any">
<text variable="publisher"/>
</if>
</choose>
</macro>
<macro name="yearpage">
<choose>
<if type="bill book graphic legal_case motion_picture paper-conference manuscript report song thesis" match="any">
<group delimiter=", ">
<date variable="issued">
<date-part name="year"/>
</date>
<group>
<text term="volume" form="short" suffix="."/>
<text variable="number-of-volumes" prefix=". " suffix="/"/>
<text variable="volume"/>
</group>
<choose>
<if variable="locator" match="any">
<group delimiter="&#8239;">
<label variable="locator" form="short"/>
<text variable="locator"/>
</group>
</if>
<else-if variable="locator" match="none">
<text variable="number-of-pages" suffix="&#160;p"/>
</else-if>
</choose>
</group>
</if>
<else-if type="chapter entry-dictionary entry-encyclopedia" match="any">
<group delimiter=" ">
<date variable="issued">
<date-part name="year" suffix=", "/>
</date>
<group>
<text term="volume" form="short" suffix="."/>
<text variable="number-of-volumes" prefix=". " suffix="/"/>
<text variable="volume" suffix=","/>
</group>
<choose>
<if variable="locator" match="any">
<group delimiter="&#8239;">
<label variable="locator" form="short"/>
<text variable="locator"/>
</group>
</if>
<else-if variable="locator" match="none">
<label variable="page" form="short"/>
<text variable="page"/>
</else-if>
</choose>
</group>
</else-if>
<else-if type="article-journal" match="any">
<group delimiter=" " font-style="normal">
<choose>
<if variable="locator" match="any">
<group delimiter="&#8239;">
<label variable="locator" form="short"/>
<text variable="locator"/>
</group>
</if>
<else-if variable="locator" match="none">
<label variable="page" form="short"/>
<text variable="page"/>
</else-if>
</choose>
</group>
</else-if>
<else-if type="article-newspaper article-magazine" match="any">
<date variable="issued">
<date-part name="day" suffix=" "/>
<date-part name="month" form="short" suffix=" "/>
<date-part name="year"/>
</date>
<group delimiter=" " font-style="normal">
<label variable="page" form="short"/>
<text variable="page"/>
</group>
<group delimiter=" " font-style="normal">
<choose>
<if variable="locator" match="any">
<group delimiter="&#8239;">
<label variable="locator" form="short"/>
<text variable="locator"/>
</group>
</if>
<else-if variable="locator" match="none">
<label variable="page" form="short"/>
</else-if>
</choose>
</group>
</else-if>
<else-if type="webpage post-weblog" match="any">
<group delimiter=" " prefix="(" suffix=")">
<text value="consulté le" suffix=" " prefix=" "/>
<date variable="accessed" form="text">
<date-part name="day"/>
<date-part name="month"/>
<date-part name="year"/>
</date>
</group>
</else-if>
</choose>
</macro>
<macro name="yearpage-bib">
<choose>
<if type="bill book graphic legal_case motion_picture paper-conference report song thesis" match="any">
<group delimiter=", ">
<group delimiter=", ">
<date variable="issued">
<date-part name="year"/>
</date>
<group>
<text term="volume" form="short" suffix="."/>
<text variable="number-of-volumes" prefix=". " suffix="/"/>
<text variable="volume"/>
</group>
<text variable="number-of-pages" suffix="&#160;p"/>
</group>
<group>
<label variable="locator" form="short"/>
<text variable="locator"/>
</group>
</group>
</if>
<else-if type="chapter entry-dictionary entry-encyclopedia" match="any">
<group delimiter=", ">
<date variable="issued">
<date-part name="year"/>
</date>
<group>
<text term="volume" form="short" suffix="."/>
<text variable="number-of-volumes" prefix=". " suffix="/"/>
<text variable="volume"/>
</group>
<group>
<label variable="page" form="short"/>
<text variable="page" prefix="&#160;"/>
</group>
</group>
</else-if>
<else-if type="article-journal chapter" match="any">
<group delimiter=" ">
<label variable="page" form="short"/>
<text variable="page"/>
</group>
</else-if>
<else-if type="article-newspaper article-magazine" match="any">
<group delimiter=" ">
<date variable="issued">
<date-part name="day" suffix=" "/>
<date-part name="month" form="short" suffix=" "/>
<date-part name="year"/>
</date>
<label variable="page" form="short"/>
<text variable="page"/>
</group>
</else-if>
<else-if type="manuscript">
<group delimiter="" font-style="normal">
<choose>
<if variable="issued">
<date variable="issued">
<date-part name="day" suffix=" "/>
<date-part name="month" suffix=" "/>
<date-part name="year"/>
</date>
</if>
<else>
<text value="s. d."/>
</else>
</choose>
</group>
</else-if>
<else-if type="webpage post-weblog" match="any">
<group delimiter=" ">
<text value="consulté le" suffix=" " prefix=" "/>
<date variable="accessed" form="text">
<date-part name="day"/>
<date-part name="month"/>
<date-part name="year"/>
</date>
</group>
</else-if>
</choose>
</macro>
<macro name="edition">
<choose>
<if type="bill book graphic legal_case motion_picture report song chapter paper-conference" match="any">
<choose>
<if is-numeric="edition">
<group delimiter=" ">
<number variable="edition" form="ordinal"/>
<text term="edition" form="short"/>
</group>
</if>
<else>
<text variable="edition" text-case="capitalize-first" suffix="."/>
</else>
</choose>
</if>
<else-if type="article-journal article-magazine" match="any">
<group delimiter="">
<choose>
<if variable="issued">
<date variable="issued">
<date-part name="day" suffix=" "/>
<date-part name="month" suffix=" "/>
<date-part name="year"/>
</date>
<text macro="volume" prefix=", "/>
</if>
<else>
<text macro="volume" text-case="capitalize-first"/>
</else>
</choose>
</group>
</else-if>
</choose>
<text macro="issue" prefix=", "/>
</macro>
<macro name="volume">
<choose>
<if is-numeric="volume">
<text term="volume" form="short" suffix=".&#160;"/>
<text variable="volume"/>
</if>
<else>
<text variable="volume"/>
</else>
</choose>
</macro>
<macro name="issue">
<choose>
<if is-numeric="issue">
<text term="issue" form="short" suffix="&#160;"/>
<text variable="issue"/>
</if>
<else>
<text variable="issue"/>
</else>
</choose>
</macro>
<macro name="collection">
<text variable="collection-title" quotes="true" prefix=" (coll.&#160;" suffix=")"/>
</macro>
<citation et-al-min="4" et-al-use-first="1">
<layout suffix="." delimiter="&#160;; ">
<choose>
<if position="ibid-with-locator">
<group delimiter=", ">
<text term="ibid" text-case="capitalize-first" font-style="italic" suffix="."/>
<text variable="locator" prefix="p.&#160;"/>
</group>
</if>
<else-if position="ibid">
<text term="ibid" text-case="capitalize-first" font-style="italic"/>
</else-if>
<else-if position="subsequent">
<group delimiter=", ">
<text macro="author-ibid"/>
<choose>
<if type="bill book graphic legal_case motion_picture report song thesis manuscript" match="any">
<text variable="title" form="short" font-style="italic"/>
<text term="cited" font-style="italic" suffix="."/>
</if>
<else>
<text variable="title" text-case="capitalize-first" form="short" quotes="true"/>
<text value="art cit"/>
</else>
</choose>
<text variable="locator" prefix="p.&#160;"/>
</group>
</else-if>
<else>
<choose>
<if type="manuscript">
<group delimiter=", ">
<text variable="archive"/>
<text variable="archive_location"/>
<text variable="call-number"/>
<text macro="title"/>
<text macro="yearpage-bib"/>
</group>
</if>
<else-if type="bill chapter article-journal article-newspaper interview book graphic legal_case motion_picture paper-conference report song thesis webpage post-weblog article-magazine" match="any">
<group delimiter=", ">
<text macro="author"/>
<text macro="title"/>
<text macro="translator"/>
<text macro="edition"/>
<text macro="pub-place"/>
<text macro="publisher"/>
<text macro="yearpage"/>
</group>
</else-if>
</choose>
</else>
</choose>
</layout>
</citation>
<bibliography>
<sort>
<key macro="author" names-min="3" names-use-first="3"/>
<key variable="issued" sort="descending"/>
</sort>
<layout suffix=".">
<choose>
<if type="manuscript">
<group delimiter=", ">
<text variable="archive"/>
<text variable="archive_location"/>
<text variable="call-number"/>
<text macro="title"/>
<text macro="yearpage-bib"/>
</group>
</if>
<else-if type="bill chapter article-journal article-newspaper interview book graphic legal_case motion_picture paper-conference report song thesis webpage post-weblog article-magazine" match="any">
<group delimiter=", ">
<text macro="author-bib"/>
<text macro="title"/>
<text macro="translator"/>
<text macro="edition"/>
<text macro="pub-place"/>
<group delimiter=" ">
<text macro="publisher"/>
<text macro="collection"/>
</group>
<text macro="yearpage-bib"/>
</group>
</else-if>
</choose>
</layout>
</bibliography>
</style>