git.iko.soy/typeable/pandoc
on master help sign in
Sort YAML metadata keys in Markdown output case-insensitive.

Use caseFold.

commit39f357027aafeed5f20f350db0a892b9cc3efd43 authorJohn MacFarlane <jgm@berkeley.edu> dateSun 13 Sep 2020, 14:11 (6 years ago) parent045dd21
1 file changed+2−2
src/Text/Pandoc/Writers/Markdown.hs+2−2
src/Text/Pandoc/Writers/Markdown.hs+2−2
@@ -126,7 +126,7 @@ pandocTitleBlock tit auths dat =
126126
127127mmdTitleBlock :: Context Text -> Doc Text
128128mmdTitleBlock (Context hashmap) =
129− vcat $ map go $ sortOn fst $ M.toList hashmap
129+ vcat $ map go $ sortOn (T.toCaseFold . fst) $ M.toList hashmap
130130 where go (k,v) =
131131 case (text (T.unpack k), v) of
132132 (k', ListVal xs)
@@ -155,7 +155,7 @@ yamlMetadataBlock v = "---" $$ contextToYaml v $$ "---"
155155
156156contextToYaml :: Context Text -> Doc Text
157157contextToYaml (Context o) =
158− vcat $ map keyvalToYaml $ sortOn fst $ M.toList o
158+ vcat $ map keyvalToYaml $ sortOn (T.toCaseFold . fst) $ M.toList o
159159 where
160160 keyvalToYaml (k,v) =
161161 case (text (T.unpack k), v) of