diff options
author | John MacFarlane <jgm@berkeley.edu> | 2017-02-25 23:42:56 +0100 |
---|---|---|
committer | John MacFarlane <jgm@berkeley.edu> | 2017-02-25 23:42:56 +0100 |
commit | 124551461cb9bc46e4387dbcd8ac4ebf3eae6d22 (patch) | |
tree | 8020180917b973f400adb23f531d48a8d4e0efe3 | |
parent | 699d289cc5913c3cb0ec7b1b3d7ae767cbe55339 (diff) | |
download | pandoc-124551461cb9bc46e4387dbcd8ac4ebf3eae6d22.tar.gz |
Fixed addVariablesToJSON.
It was previously not allowing multiple values to become lists.
-rw-r--r-- | src/Text/Pandoc/Writers/Shared.hs | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/Text/Pandoc/Writers/Shared.hs b/src/Text/Pandoc/Writers/Shared.hs index a9431a920..991ce5437 100644 --- a/src/Text/Pandoc/Writers/Shared.hs +++ b/src/Text/Pandoc/Writers/Shared.hs @@ -89,9 +89,12 @@ metaToJSON' blockWriter inlineWriter (Meta metamap) = do -- of the original JSON object itself, prior to addition of variables. addVariablesToJSON :: WriterOptions -> Value -> Value addVariablesToJSON opts metadata = - foldl (\acc (x,y) -> resetField x y acc) - (defField "meta-json" (toStringLazy $ encode metadata) metadata) + foldl (\acc (x,y) -> setField x y acc) + (defField "meta-json" (toStringLazy $ encode metadata) (Object mempty)) (writerVariables opts) + `combineMetadata` metadata + where combineMetadata (Object o1) (Object o2) = Object $ H.union o1 o2 + combineMetadata x _ = x metaValueToJSON :: Monad m => ([Block] -> m String) |