yum-slop/yummers.dev

source code for https://yummers.dev

git clone https://git.yummers.dev/yum-slop/yummers.dev

yumredo date parsing stuff; add about section to homepagede3687b

master
977 B32 linesraw
1local function parse_inlines(text)
2  return pandoc.read(text, "markdown").blocks[1].content
3end
4
5function Pandoc(doc)
6  local articles = pandoc.List()
7  local blocks = pandoc.Blocks({})
8
9  for _, block in ipairs(doc.blocks) do
10    if block.t == "Header" and block.level == 1 then
11      local date = block.attributes["data-date"]
12      if not date or date == "" then
13        error("article is missing data-date: " .. pandoc.utils.stringify(block.content))
14      end
15
16      block.attributes["data-date"] = nil
17
18      local label = pandoc.Inlines(block.content)
19      label:insert(pandoc.Span(parse_inlines(date), {class = "article-date"}))
20      articles:insert({pandoc.Plain({pandoc.Link(label, block.identifier .. ".html")})})
21
22      blocks:insert(block)
23      blocks:insert(pandoc.Para(parse_inlines(date)))
24    else
25      blocks:insert(block)
26    end
27  end
28
29  doc.blocks = blocks
30  doc.meta["article-list"] = pandoc.MetaBlocks({pandoc.BulletList(articles)})
31  return doc
32end