diff options
author | Albert Krewinkel <albert@zeitkraut.de> | 2017-12-27 18:42:19 +0100 |
---|---|---|
committer | Albert Krewinkel <albert@zeitkraut.de> | 2017-12-27 18:48:52 +0100 |
commit | 2953983e9ec72c096fe3b2055640e76ab1949fa0 (patch) | |
tree | 1cb45b52d86be6fe91628ac943e62b45a712195e /src/Text/Pandoc/Writers | |
parent | 9ef3d77652e54e5d3872c1ccfe29918ae2a703b1 (diff) | |
download | pandoc-2953983e9ec72c096fe3b2055640e76ab1949fa0.tar.gz |
Fix regression of DefinitionLists in custom writer
Pairs where serialized as two-element lists instead, and are now pushed
again as a table with a single key/value pair.
Fixes: #4202
Diffstat (limited to 'src/Text/Pandoc/Writers')
-rw-r--r-- | src/Text/Pandoc/Writers/Custom.hs | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/Text/Pandoc/Writers/Custom.hs b/src/Text/Pandoc/Writers/Custom.hs index 6a6fabf1d..a33196cbe 100644 --- a/src/Text/Pandoc/Writers/Custom.hs +++ b/src/Text/Pandoc/Writers/Custom.hs @@ -87,6 +87,15 @@ instance ToLuaStack (Stringify Citation) where addValue "citationNoteNum" $ citationNoteNum cit addValue "citationHash" $ citationHash cit +-- | Key-value pair, pushed as a table with @a@ as the only key and @v@ as the +-- associated value. +newtype KeyValue a b = KeyValue (a, b) + +instance (ToLuaStack a, ToLuaStack b) => ToLuaStack (KeyValue a b) where + push (KeyValue (k, v)) = do + newtable + addValue k v + data PandocLuaException = PandocLuaException String deriving (Show, Typeable) @@ -165,7 +174,8 @@ blockToCustom (OrderedList (num,sty,delim) items) = callFunc "OrderedList" (map Stringify items) num (show sty) (show delim) blockToCustom (DefinitionList items) = - callFunc "DefinitionList" (map (Stringify *** map Stringify) items) + callFunc "DefinitionList" + (map (KeyValue . (Stringify *** map Stringify)) items) blockToCustom (Div attr items) = callFunc "Div" (Stringify items) (attrToMap attr) |