Pandoc Lua过滤器。如何在函数Str中检查参数是否来自标题(一章或一节)?

问题描述 投票:1回答:1

实际上,我为标记语言到LaTeX的转换做了一些过滤。我使用lua过滤器。现在我需要做这样的事情。

function Str (el)
  if is_in_a_title(el) then
    -- do this
  else
    -- do that
  end
end

意思是在Str里面我想检查参数是否属于一个章节的标题。有什么方法可以做到这一点吗?

lua pandoc
1个回答
0
投票

重新发布我在邮件列表上写的内容。

最好是通过运行子过滤器来完成。

local header_filter = {
  Str = function (el)
    -- do this
  end
}

function Header (h)
  return pandoc.util.walk_block(h, header_filter)
end

The header_filter 就像一个普通的Lua过滤器。在 walk_block 函数将该过滤器应用于Header以下的所有元素,并且只应用于这些元素。

© www.soinside.com 2019 - 2024. All rights reserved.