Как заставить pandoc добавить пакет в мой заголовок при транспиляции Markdown в LATeX?

Как заставить pandoc добавить пакет в мой заголовок при транспиляции Markdown в LATeX?

У меня есть файл Markdown, который я хочу скомпилировать в LaTeX. Я хочу вставить \usepackage{tikz}заголовок. Вот что я попробовал:

$ cat test.md | pandoc -s -f markdown -t latex -H \usepackage{tikz} > test.tex
File usepackage{tikz} not found in resource path

Затем я удалил -Hфлаг и создал заголовок YAML для своего Markdown.

---
title: My title
author: My name
header-includes:
  - '`\usepackage{tikz}`{=latex}'
---

Это дает

Файл tikz не найден в пути к ресурсам.

Я использую Tectonic, поэтому у меня нет установленного локально TikZ. Я просто хочу добавить строку текста в заголовок, так что, полагаю, я на неправильном пути, если pandocожидаю найти программное обеспечение по какому-то пути.

Как мне pandocдобавить пакет в мой заголовок?

решение1

Theкомментарий Фрэнсделал свое дело.

Вместо:

  - '`\usepackage{tikz}`{=latex}'

Мне пришлось использовать

  - \usepackage{tikz}

и убедитесь, что pandoc вызывается без -H \usepackage{tikz}.

решение2

Я использую следующее:

> pandoc --standalone \
  -H packages.tex \
  -f markdown \
  -t latex -o book.pdf \
  mymarkdownfile.md

Обратите внимание на -H packages.tex. Этот файл включает все пакеты, которые мне нужны в заголовке, например:

\usepackage{a4wide}
\usepackage{...}
...

Связанный контент