diff options
Diffstat (limited to 'paper/lua-filters/abstract-to-meta/abstract-to-meta.lua')
-rw-r--r-- | paper/lua-filters/abstract-to-meta/abstract-to-meta.lua | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/paper/lua-filters/abstract-to-meta/abstract-to-meta.lua b/paper/lua-filters/abstract-to-meta/abstract-to-meta.lua new file mode 100644 index 0000000..dbf9b03 --- /dev/null +++ b/paper/lua-filters/abstract-to-meta/abstract-to-meta.lua @@ -0,0 +1,23 @@ +local looking_at_abstract = false +local abstract = {} + +function Block (elem) + if looking_at_abstract then + abstract[#abstract + 1] = elem + return {} + end +end + +function Header (elem) + if elem.level == 1 and elem.identifier == 'abstract' then + looking_at_abstract = true + return {} + else + looking_at_abstract = looking_at_abstract and elem.level ~= 1 + end +end + +function Meta (meta) + meta.abstract = meta.abstract or pandoc.MetaBlocks(abstract) + return meta +end |