Как использовать среду уравнений латекса в Pandoc Markdown?
В уценке Pandoc я могу использовать "$$" для запуска среды отображения. Однако эти уравнения не пронумерованы в латексе, поэтому я надеюсь использовать среду уравнений, например:
\begin{equation}
x+1 = 2 \\
y+2 = 3
\end{equation}
Это прекрасно, если я конвертирую уценку в латекс. Но он не работает, когда я конвертирую его в HTML с Mathjax, потому что Pandoc рассматривает эти строки, поскольку raw_latex игнорирует их в HTML.
Я попытался запретить расширение raw_latex
pandoc -f markdown-raw_latex ...
На этот раз два уравнения отображаются в одной строке, потому что обратные косые экраны экранируются Pandoc, поэтому "\" не создает новую строку правильно.
Обратите внимание, что следующий код отлично работает при преобразовании в HTML, но создает ошибку компиляции в латексе.
$$
\begin{equation}
x+1 = 2 \\
y+2 = 3
\end{equation}
$$
Есть ли способ справиться с этой проблемой?
Ответы
Ответ 1
Попробуйте фильтр pandoc-eqnos. Ярлыки могут быть прикреплены к уравнениям с использованием атрибутов:
$$ y = mx +b $$ {#eq:description}
... и затем ссылается так:
@eq:description
Для вывода tex/pdf используются макросы LaTeX native equation
и макросы \label
и \ref
; для всех остальных цифры жестко закодированы.
Инструкции приведены на странице pandoc-eqnos для установки и применения фильтра.
Ответ 2
Не существует хорошей нативной поддержки правильной нумерации нумерации, но есть обходной путь.
> pandoc -s -o math.html --mathjax
(@) $$y=5$$
A paragraph here explaining
(@) $$y=6$$
Выход
<body>
<ol style="list-style-type: example">
<li><span class="math">\[y=5\]</span></li>
</ol>
<p>A paragraph here explaining</p>
<ol start="2" style="list-style-type: example">
<li><span class="math">\[y=6\]</span></li>
</ol>
</body>
![Numbering example]()
Очевидно, что вывод может быть создан с помощью css. С другой стороны, выход tex этого метода также помещает числа влево. Какой компромисс вы выбираете, зависит от вас.