The Markdown API provides functions for parsing and rendering Markdown content.
Parses a piece of markdown text into a ParseTree.
Example:
local text = [
# Hello World
This is a **bold** statement.
](
# Hello World
This is a **bold** statement.
)
local tree = markdown.parseMarkdown(text)
print("Parsed markdown tree:", tree)
Renders a ParseTree back to markdown text.
Example:
local text = "# Title\n\nSome text"
local tree = markdown.parseMarkdown(text)
-- Modify tree if needed
local rendered = markdown.renderParseTree(tree)
print("Rendered markdown:", rendered)
Renders a piece of markdown text into HTML
Example:
local text = "# Title\n\nSome text"
local html = markdown.markdownToHtml(text)
print("Rendered html:", html)
Expands custom markdown Lua directives and transclusions into plain markdown inside a ParseTree
Example:
local text = "This is a some lua ${os.time()}"
local tree = markdown.parseMarkdown(text)
local expandedTree = markdown.expandMarkdown(tree)
local rendered = markdown.renderParseTree(expandedTree)
print("Rendered markdown:", rendered)
Transforms a list of tables into a markdown table.
Supported options:
* renderCell(val, key) custom cell renderer
Example: ${markdown.objectsToTable({{name="Pete", age=20}, {name="Jane", age=32}}, { renderCell=function(v, k) if k == "age" and v > 20 then return "" .. v .. "" else return v end end})}