aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Text/Pandoc/Writers/Markdown.hs11
-rw-r--r--test/command/1279.md2
-rw-r--r--test/command/biblatex-inproceedings.md2
-rw-r--r--test/command/biblatex-jaffe.md4
-rw-r--r--test/command/biblatex-moraux.md2
-rw-r--r--test/command/biblatex-quotes.md2
-rw-r--r--test/command/biblatex-spiegelberg.md4
-rw-r--r--test/command/biblatex-test-case-conversion.md4
-rw-r--r--test/command/biblatex-textnormal.md2
9 files changed, 16 insertions, 17 deletions
diff --git a/src/Text/Pandoc/Writers/Markdown.hs b/src/Text/Pandoc/Writers/Markdown.hs
index daf45ed53..3295d9e6c 100644
--- a/src/Text/Pandoc/Writers/Markdown.hs
+++ b/src/Text/Pandoc/Writers/Markdown.hs
@@ -26,7 +26,7 @@ import Data.Default
import Data.List (intersperse, sortOn, transpose)
import Data.List.NonEmpty (nonEmpty, NonEmpty(..))
import qualified Data.Map as M
-import Data.Maybe (fromMaybe, mapMaybe)
+import Data.Maybe (fromMaybe, mapMaybe, isNothing)
import qualified Data.Set as Set
import Data.Text (Text)
import qualified Data.Text as T
@@ -142,18 +142,17 @@ valToYaml (SimpleVal x)
| otherwise =
if hasNewlines x
then hang 0 ("|" <> cr) x
- else if fst $ foldr needsDoubleQuotes (False, True) x
+ else if isNothing $ foldM needsDoubleQuotes True x
then "\"" <> fmap escapeInDoubleQuotes x <> "\""
else x
where
- needsDoubleQuotes t (positive, isFirst)
+ needsDoubleQuotes isFirst t
= if T.any isBadAnywhere t ||
(isFirst && T.any isYamlPunct (T.take 1 t))
- then (True, False)
- else (positive, False)
+ then Nothing
+ else Just False
isBadAnywhere '#' = True
isBadAnywhere ':' = True
- isBadAnywhere '`' = False
isBadAnywhere _ = False
hasNewlines NewLine = True
hasNewlines BlankLines{} = True
diff --git a/test/command/1279.md b/test/command/1279.md
index acad6859e..d3572f245 100644
--- a/test/command/1279.md
+++ b/test/command/1279.md
@@ -9,7 +9,7 @@ title: My Article
[^1]: Dept. of This and That
^D
---
-author: "John Doe[^1]"
+author: John Doe[^1]
date: 2014
title: My Article
---
diff --git a/test/command/biblatex-inproceedings.md b/test/command/biblatex-inproceedings.md
index 29a1e0298..76b584800 100644
--- a/test/command/biblatex-inproceedings.md
+++ b/test/command/biblatex-inproceedings.md
@@ -63,7 +63,7 @@ references:
publisher-place: Cambridge
title: "Le *De Anima* dans la tradition grècque: Quelques aspects de
l'interpretation du traité, de Theophraste à Themistius"
- title-short: *De Anima* dans la tradition grècque
+ title-short: "*De Anima* dans la tradition grècque"
type: paper-conference
- author:
- family: Salam
diff --git a/test/command/biblatex-jaffe.md b/test/command/biblatex-jaffe.md
index f172c6ae7..e0381772b 100644
--- a/test/command/biblatex-jaffe.md
+++ b/test/command/biblatex-jaffe.md
@@ -72,8 +72,8 @@ references:
language: la
number-of-volumes: 2
publisher-place: Leipzig
- title: "Regesta Pontificum Romanorum ab condita ecclesia ad annum post
- Christum natum [mcxcviii]{.smallcaps}"
+ title: Regesta Pontificum Romanorum ab condita ecclesia ad annum post
+ Christum natum [mcxcviii]{.smallcaps}
title-short: Regesta Pontificum Romanorum
type: book
---
diff --git a/test/command/biblatex-moraux.md b/test/command/biblatex-moraux.md
index 8a1b084f8..1624ad960 100644
--- a/test/command/biblatex-moraux.md
+++ b/test/command/biblatex-moraux.md
@@ -86,7 +86,7 @@ references:
publisher-place: Cambridge
title: "Le *De Anima* dans la tradition grècque: Quelques aspects de
l'interpretation du traité, de Theophraste à Themistius"
- title-short: *De Anima* dans la tradition grècque
+ title-short: "*De Anima* dans la tradition grècque"
type: paper-conference
---
diff --git a/test/command/biblatex-quotes.md b/test/command/biblatex-quotes.md
index 9d868cb76..50055316f 100644
--- a/test/command/biblatex-quotes.md
+++ b/test/command/biblatex-quotes.md
@@ -36,7 +36,7 @@ references:
language: en-US
publisher: Princeton University Press
publisher-place: Princeton
- title: "Aristotle's \"De Motu Animalium\""
+ title: Aristotle's "De Motu Animalium"
type: book
---
diff --git a/test/command/biblatex-spiegelberg.md b/test/command/biblatex-spiegelberg.md
index 59d651958..59338ae88 100644
--- a/test/command/biblatex-spiegelberg.md
+++ b/test/command/biblatex-spiegelberg.md
@@ -63,8 +63,8 @@ references:
issued: 1969
language: de-DE
page: 189-216
- title: "Intention" und "Intentionalität" in der Scholastik, bei
- Brentano und Husserl
+ title: "\"Intention\" und \"Intentionalität\" in der Scholastik, bei
+ Brentano und Husserl"
title-short: Intention und Intentionalität
type: article-journal
volume: 29
diff --git a/test/command/biblatex-test-case-conversion.md b/test/command/biblatex-test-case-conversion.md
index aa30767ec..e69cb9336 100644
--- a/test/command/biblatex-test-case-conversion.md
+++ b/test/command/biblatex-test-case-conversion.md
@@ -63,9 +63,9 @@ references:
id: item1
issued: 2013
language: en-US
- title: "A title, in English, with a Proper Name and an ACRONYM and a
+ title: A title, in English, with a Proper Name and an ACRONYM and a
[camelCase]{.nocase} word and some units, 400 [nm]{.nocase},
- 3 [cm]{.nocase}, and a quote, *Alea [iacta est]{.nocase}*"
+ 3 [cm]{.nocase}, and a quote, *Alea [iacta est]{.nocase}*
type: article-journal
---
diff --git a/test/command/biblatex-textnormal.md b/test/command/biblatex-textnormal.md
index 0aa5550c3..a4e6107ec 100644
--- a/test/command/biblatex-textnormal.md
+++ b/test/command/biblatex-textnormal.md
@@ -9,7 +9,7 @@
nocite: "[@*]"
references:
- id: item1
- title: "The title [of this book]{.nodecor}"
+ title: The title [of this book]{.nodecor}
type: book
---