aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pandoc.cabal2
-rw-r--r--src/Text/Pandoc/Citeproc.hs4
-rw-r--r--stack.yaml1
-rw-r--r--test/command/citeproc-87.md42
4 files changed, 47 insertions, 2 deletions
diff --git a/pandoc.cabal b/pandoc.cabal
index bc8ea2588..f4a173f59 100644
--- a/pandoc.cabal
+++ b/pandoc.cabal
@@ -492,7 +492,7 @@ library
syb >= 0.1 && < 0.8,
tagsoup >= 0.14.6 && < 0.15,
temporary >= 1.1 && < 1.4,
- texmath >= 0.12.3 && < 0.12.4,
+ texmath >= 0.12.3.1 && < 0.12.4,
text >= 1.1.1.0 && < 1.3,
text-conversions >= 0.3 && < 0.4,
time >= 1.5 && < 1.12,
diff --git a/src/Text/Pandoc/Citeproc.hs b/src/Text/Pandoc/Citeproc.hs
index 0f007f336..39760776d 100644
--- a/src/Text/Pandoc/Citeproc.hs
+++ b/src/Text/Pandoc/Citeproc.hs
@@ -208,7 +208,9 @@ getReferences mblocale (Pandoc meta bs) = do
Just fp -> getRefsFromBib locale idpred fp
Nothing -> return []
Nothing -> return []
- return $ map (linkifyVariables . legacyDateRanges)
+ let addQuoteSpan (Quoted _ xs) = Span ("",["csl-quoted"],[]) xs
+ addQuoteSpan x = x
+ return $ map (linkifyVariables . legacyDateRanges . walk addQuoteSpan)
(externalRefs ++ inlineRefs)
-- note that inlineRefs can override externalRefs
diff --git a/stack.yaml b/stack.yaml
index ef92855c1..ce58cf732 100644
--- a/stack.yaml
+++ b/stack.yaml
@@ -12,6 +12,7 @@ extra-deps:
- skylighting-core-0.11
- skylighting-0.11
- doctemplates-0.10
+- texmath-0.12.3.1
# - citeproc-0.4.1
- git: https://github.com/jgm/citeproc.git
commit: 8d03cb722fac3ea8f17f432ac20abe35361df551
diff --git a/test/command/citeproc-87.md b/test/command/citeproc-87.md
index 42cf7a6ee..4faa6bfba 100644
--- a/test/command/citeproc-87.md
+++ b/test/command/citeproc-87.md
@@ -14,3 +14,45 @@ references:
^D
Foo (Aristotele, s.d., 50: «Disse: "bar"»). «Disse: "baz"»
```
+
+For en, the localized quotes match what Quoted would produce,
+so the Quoted is passed to citeproc as a Span ("",["csl-quoted"],[])
+and flipflopping and localization occur.
+```
+% pandoc -C -t plain -Mlang=en
+---
+references:
+- id: a
+ author:
+ - literal: Aristotele
+ title: Metafisica et "Physica"
+ type: article-journal
+...
+
+Foo [@a 50].
+^D
+Foo (Aristotele, n.d., 50).
+
+Aristotele. n.d. “Metafisica Et ‘Physica’.”
+```
+
+For cs, there is no such match, so the Quoted is left alone
+and has the same effect it would have elsewhere in a pandoc document.
+```
+% pandoc -C -t plain -Mlang=it
+---
+references:
+- id: a
+ author:
+ - literal: Aristotele
+ title: Metafisica et "Physica"
+ type: article-journal
+...
+
+Foo [@a 50].
+^D
+Foo (Aristotele, s.d., 50).
+
+Aristotele. s.d. «Metafisica et “Physica”».
+```
+