Quarto + Typst (+ tdf ) save your eyes from reading documents

using TerminalPager
using Sixel
using TerminalGat
using FileIO, ImageIO
using Markdown
using SpecialFunctions
using quarto_jll

run(`rm -f sample.pdf sample.qmd`)

frontmatter = """
---
format:
  typst:
    keep-typ: true
    margin:
      x: 2cm
      y: 2cm
    mainfont: "Hiragino Mincho ProN"
    fontsize: "24pt"
---
"""

import REPL # allow us collect all docstring related to zeta
md = Markdown.MD(@doc zeta).content[begin]

io = IOBuffer()
println(io, frontmatter)

for t in md.content
    println(io, t)
end

str = String(take!(io))
output_text = replace(str, r"```math\s*(.*?)\s*```"m => s"$$\1$$", r"``(.*?)``" => s"$\1$")
write("sample.qmd", output_text)

run(`$(quarto()) render sample.qmd --to typst`)
@assert isfile("sample.typ")
run(`$(quarto()) typst compile sample.typ sample_\{n\}.png`)

imgs = filter(readdir(".")) do f
  pattern = r"^sample_[0-9]+\.png$"
  m = match(pattern, f)
  !isnothing(m)
end .|> load

for c in Iterators.partition(imgs, 2)
  Sixel.sixel_encode(hcat(c...))
end