Pando c Lua filter: как я могу проверить функцию Str, если аргумент происходит от заголовка (главы или раздела) - PullRequest
1 голос
/ 16 июня 2020

на самом деле, я делаю некоторую фильтрацию для преобразования уценки в LaTeX. Я использую для этого фильтры lua. Теперь мне нужно сделать что-то вроде этого:

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

, что означает, что внутри Str я хочу проверить, принадлежит ли аргумент заголовку главы / раздела. Есть ли способ сделать это?

1 Ответ

0 голосов
/ 17 июня 2020

Повторное размещение того, что я написал в списке рассылки:

Лучше всего это сделать, запустив подфильтры:

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

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

header_filter - это как обычный Lua фильтр. Функция walk_block применяет этот фильтр ко всем элементам ниже заголовка и только к этим элементам.

...