Pandoc在解析文档时包含元数据块。元数据块的标题部分是[Inline]类型,是Pandoc特有的标记数据类型。我正在尝试找到一种方法将其转换为Html,以便我可以将该文本直接嵌入到传出的Html文档的Header元素中。
进行此转换需要哪些功能或功能组合?
[Inline] -> Html
[Str "My", Space, Str "Title"] -> ("My Title" :: Html)
对于过渡期,我将破解一个处理Str和Space的函数,但我知道我最终需要这样做来处理所有的Inline构造函数。
答案 0 :(得分:4)
你想要的是这个:
inlinesToHtml :: [Inline] -> Html
inlinesToHtml = writeHtml defaultWriterOptions . Plain
答案 1 :(得分:2)
我发现只有少数辅助函数来自Pandoc(Data.Text.Pandoc.Shared,并且在您的示例中,stringify
函数将是您所需要的(此函数会注意到它会删除任何函数)格式化,我猜这对于进入标题元素的文本并不重要。)
inlineToHtml i = (Data.Text.Pandoc.Shared.stringify i) :: Html