使用lua过滤器更新段落
我正在努力改进过滤输入的过滤代码 我的输入如下所示:使用lua过滤器更新段落,lua,pandoc,Lua,Pandoc,我正在努力改进过滤输入的过滤代码 我的输入如下所示: <html> <body> <p>Page 1</p> <p style="display: none">Pagebreak</p> <p>Page 2</p> <p style="display: none">Pagebreak</p> &
<html>
<body>
<p>Page 1</p>
<p style="display: none">Pagebreak</p>
<p>Page 2</p>
<p style="display: none">Pagebreak</p>
<p>Page 3</p>
</body>
</html>
第1页
分页符
第2页
分页符
第3页
我使用这样的过滤器将单词“Pagebreak”替换为实际的docx Pagebreak XML片段:
function Para (el)
-- Turning paragraphs which contain nothing but a Pagebreak word
-- into line breaks.
if #el.content == 1 and el.content[1].text == "Pagebreak" then
return pandoc.RawBlock('openxml', '<w:p><w:r><w:br w:type="page"/></w:r></w:p>')
end
end
return {
{Para = Para}
}
功能段(el)
--翻页只包含分页符的段落
--换行。
如果#el.content==1,el.content[1].text==“Pagebreak”,则
返回pandoc.RawBlock('openxml','')
结束
结束
返回{
{Para=Para}
}
我控制输入HTML,并希望通过删除Pagebreak来简化它,而在常规段落中添加一个属性。我想要的是:
<html>
<body>
<p>Page 1</p>
<p class="pageBreak">Page 2</p>
<p class="pageBreak">Page 3</p>
</body>
</html>
第1页
第2页
第3页
我应该编写什么lua代码来实现这一点?
从“”示例中,我看到可以检查传入元素的类。但是我如何修改现有段落以使其具有分页符呢?不幸的是,目前pandoc的文档模型。但是,您可以使用
div
:
<div class="pageBreak">Page 3</div>
第3页
我看你已经找到了