扩展 Pandoc 自定义 Markdown 语法

我想要为首字母缩写添加以下语法糖来扩展 R Markdown:

(WHO:: 世界卫生组织)是(UN:: 联合国)的机构

应该被翻译成以下内容:使用 \nomenclature 生成原始的 LaTeX。

WHO\nomenclature{WHO}{世界卫生组织}是UN\nomenclature{UN}{联合国}的机构

编译后,我将看到一个词汇表页面和此文本:

WHO是UN的机构

我发现 Pandoc 有 Lua 过滤器,但我不是 Lua(或 Haskell)程序员,对于我来说很难理解我哪里出错了:

- 从AST获取整个段落
function Para(s)
 - 匹配新语法:(ACRONYM:: definition)
 before,acronym,definition,after = tostring(s):match(“(.*)%(.*)::(.-)%)(.*)”)

 - 如果匹配
 如果有缩写,则
- 插值新的段落字符串
 new = string.format('%s%s\\ nomenclature {%s} {%s}%s',before,acronym,acronym,definition,after)
- 返回新的AST元素
 返回 pandoc.read(new)
 否则
 返回 s

end

不幸的是,我在输出PDF中看到原始的“Para”结构。

原文链接 https://stackoverflow.com/questions/71169269

点赞