web-dev-qa-db-fra.com

Comment utiliser l'environnement d'équation au latex dans Pandoc Markdown?

Dans le démarquage Pandoc, je peux utiliser "$$" pour démarrer un environnement mathématique d'affichage. Cependant, ces équations ne sont pas numérotées en latex, j'espère donc utiliser l'environnement d'équation à la place, comme ceci:

\begin{equation}
x+1 = 2 \\
y+2 = 3 
\end{equation}

C'est bien si je convertis le démarquage en latex. Mais cela ne fonctionne pas lorsque je le convertis en HTML avec Mathjax car Pandoc traite ces lignes comme si raw_latex les ignorait en HTML.

J'ai essayé d'interdire l'extension raw_latex

pandoc -f markdown-raw_latex ...

Cette fois, les deux équations sont affichées sur la même ligne car les barres obliques inverses sont échappées par Pandoc, de sorte que le "\" ne produit pas une nouvelle ligne correctement.

Notez que le code suivant fonctionne correctement lors de la conversion au format HTML, mais génère une erreur de compilation en latex.

$$    
\begin{equation}
    x+1 = 2 \\
    y+2 = 3 
\end{equation}
$$

Y a-t-il un moyen de gérer ce problème?

15
Stan

Essayez le filtre pandoc-eqnos . Les étiquettes peuvent être attachées aux équations à l'aide d'attributs:

 $$ y = mx +b $$ {#eq:description}

... et ensuite référencé comme ceci:

@eq:description

Pour la sortie tex/pdf, l’environnement natif equation et les macros \label et \ref de LaTeX sont utilisés; pour tous les autres, les nombres sont codés en dur.

Des instructions sont données sur la page pandoc-eqnos pour savoir comment installer et appliquer le filtre.

13
tjd

La prise en charge native de la numérotation correcte des équations n’est pas satisfaisante, mais il existe une solution de contournement.

> pandoc -s -o math.html --mathjax 
(@) $$y=5$$

A paragraph here explaining 

(@) $$y=6$$

Sortie

<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

Évidemment, la sortie peut être stylée avec CSS pour convenir. D'autre part, la sortie tex de cette méthode place également les nombres à gauche. Quel compromis vous choisissez est à vous.

1
Matthew Pickering