Pandoc Lua 过滤器 - pandoc.template 模块

处理 Pandoc 的模板。

Functions

apply

apply (template, context)

将带有变量赋值的上下文应用到一个模板上,并返回渲染后的模板。context 参数必须是一个表,其中键是变量名,值可以是 Doc、字符串、布尔值或表。这里的表可以是一个上述类型的列表,也可以是一个嵌套的上下文。

参数 描述
template 要应用的模板 ( Template )
context 变量值( table

返回:

  • 渲染后的模板 ( Doc )

自从: 3.0 版本起

compile

compile (template[, templates_path])

将一个模板字符串编译成 Pandoc 可用的 Template 对象。

如果指定了 templates_path 参数,则它应该是与模板关联的文件路径,用于在检查部分模板时使用。如果省略此参数,则仅从默认数据文件中获取部分模板。

如果编译失败,则会引发错误。

参数 描述
template 模板字符串( string
templates_path 用于确定部分模板的默认路径和扩展名;默认情况下使用数据文件中的模板路径。( string

返回:

自从: 2.17 版本起

default

default ([writer])

返回给定写入器的默认模板作为字符串。如果没有找到这样的模板,则会抛出错误。

参数 描述
writer 要检索其模板的写入器名称,默认为全局 FORMAT。( string

返回:

  • 原始模板( string

自从: 2.17 版本起

get

get (filename)

获取模板文本。

此函数首先检查资源路径中是否存在同名文件;如果未找到,则检查用户数据目录中的 templates 目录。如果找到文件则返回文件内容,否则抛出错误。

参数 描述
filename 模板名称( string

返回:

  • 模板文件的内容( string

自从: 3.2.1 版本起

meta_to_context

meta_to_context (meta, blocks_writer, inlines_writer)

使用给定的函数将文档的 Meta 数据转换为模板上下文,以将 BlocksInlines 转换为 Doc 值。

参数 描述
meta 文档元数据 ( Meta )
blocks_writer BlocksDoc 值的转换器( function
inlines_writer InlinesDoc 值的转换器( function

返回:

  • 模板上下文( table

自从: 3.0 版本起

在本文档中