Skip to content
TopicTracker
出典 HackerNews原文を表示
翻訳言語翻訳言語

Pandoc Lua Filters

Pandoc Lua Filters allows users to write custom transformations for documents processed by Pandoc using the Lua scripting language. These filters can modify the document's abstract syntax tree (AST) at various stages of conversion, enabling tasks such as custom formatting, content manipulation, and metadata handling. The documentation provides a comprehensive guide to writing and using Lua filters, including API references, examples, and best practices.

背景メモ

Pandoc(パンドック)は、John MacFarlane(カリフォルニア大学バークレー校教授)が開発した汎用文書変換ツール。Markdown、LaTeX、HTML、Word(docx)、ePub、PDFなど、多数の形式間で相互変換できる。学術界やライター・出版業界で広く使われており、VS Codeなど多くのエディタに標準搭載されている。 Luaフィルターは、Pandocの内部表現(AST: 抽象構文木)を変換中に書き換えるための仕組み。Luaは軽量スクリプト言語で、Pandoc v1.12から標準サポートされている。フィルターを使うと、特定の見出しに自動で注釈を追加する、コードブロックのシンタックスハイライトをカスタマイズする、脚注の形式を一括変更する、といった処理を自作スクリプトで行える。 従来はデフォルト形式であるMarkdownだけでは対応できない細かい整形(学術論文のスタイル統一、出版用の特殊なレイアウト適用など)を手動で行う必要があったが、Luaフィルターの登場により自動化が容易になった。類似の仕組みとしてPythonを使う「panflute」なども存在するが、Pandoc本体にLuaインタプリタが組み込まれているため、別途環境を用意せずに使える点がLuaフィルターの大きな利点。

関連記事