Discussion:
[O] equation numbering in html and latex export
Samuel Sinayoko
2011-06-14 06:48:43 UTC
Permalink
Dear list,

I've been trying to write short scientific reports that I can export to
both LaTeX and HTML. So far I've managed to figure out how to include
equations, images, references, and how to include labels and cross
reference between all these things.

The only problem I have is that I can't get numbered equations in both
LaTeX and HTML. Using the snippet below, I'm able to get a numbered
equation in HTML but not in LaTeX. I've put
loadFiles: ["extensions/eqn-number.js"],
in jsMath/easy/load.js. If I replace the $$ by
\begin{equation} and \end{equation}, I get a numbered equation in LaTeX
but not in HTML.

How can I get numbered equations in both HTML and LaTeX?

Thanks,

Sam

-------
#+TITLE: A simple equation
#+STYLE: <SCRIPT SRC="jsMath/easy/load.js"></SCRIPT>
#+OPTIONS: LaTeX:verbatim
* A simple equation
This is to test writing equations with org-mode. Hopefully MathJax is going to be used.
$$
\label{eq:1}
x_{1,2} = \frac{-b \pm \sqrt{\Delta}}{2a}
$$
Equation \ref{eq:1} gives the roots of a polynomial of order 2.
Eric S Fraga
2011-06-16 07:53:24 UTC
Permalink
Post by Samuel Sinayoko
Dear list,
I've been trying to write short scientific reports that I can export to
both LaTeX and HTML. So far I've managed to figure out how to include
equations, images, references, and how to include labels and cross
reference between all these things.
The only problem I have is that I can't get numbered equations in both
LaTeX and HTML. Using the snippet below, I'm able to get a numbered
equation in HTML but not in LaTeX. I've put
loadFiles: ["extensions/eqn-number.js"],
in jsMath/easy/load.js. If I replace the $$ by
\begin{equation} and \end{equation}, I get a numbered equation in LaTeX
but not in HTML.
How can I get numbered equations in both HTML and LaTeX?
I can't help you wish HTML unfortunately but I can summarise the issue
in LaTeX.

With the standard document class (article say), equations can be either
"displayed" or "inline". Only displayed equations are numbered and then
only if you use =equation= (or =align=, =eqnarray=, etc). $$ ... $$ is
equivalent to \[ ... \] which is essentially equivalent to the
unnumbered version of \begin{equation} (aka \begin{equation*}).

The trick would be to get the HTML exporter to apply the same processing
to \begin{equation} ... \end{equation} as it does to $$ ... $$, I guess?
--
: Eric S Fraga (GnuPG: 0xC89193D8FFFCF67D) in Emacs 24.0.50.1
: using Org-mode version 7.5 (release_7.5.399.g01eb)
Samuel Sinayoko
2011-06-16 11:46:59 UTC
Permalink
Thanks Eric. I think you're right. It would make sense to use
\begin{equation} \end{equation} with HTML export to number equations.
I've put a minimal example below showing what is happening.

--
#+TITLE: Equation numbering
#+STYLE: <SCRIPT SRC="jsMath/easy/load.js"></SCRIPT>

* Numbered in HTML export / Not numbered in LaTeX
Equation is numbered and can be referenced in HTML export. Equation is
*not* numbered in LaTeX export.
$$
\label{eq:1}
y = ax + b
$$
Equation \ref{eq:1} is a polynomial of order 1.

* Not numbered in HTML / Numbered in LaTeX
Equation is not numbered but can be referenced in HTML export. Equation
is numbered in LaTeX export.
\begin{equation}
\label{eq:1}
y = ax + b
\end{equation}
Equation \ref{eq:1} is not numbered but can be referenced in HTML
export. It is numbered in LaTeX export.
--

I also think the right behaviour would be to have a numbered equation in
the second case in both HTML and LaTeX, and an unnumbered equation in
the first case in both HTML and LaTeX. Does everyone agree?

I'd be happy to try and change the behaviour of the HTML export if
someone can point me in the right direction.

Cheers,

Sam
Darlan Cavalcante Moreira
2011-06-16 14:37:47 UTC
Permalink
Using the org-special-blocks library org-mode will recognize blocks in the
form
: #+begin_something
: bla bla bla
: #+end_something

Then you could write
: #+begin_equation
: y=ax+b
: #+end_equation
in org-mode. It would be translated to
: \begin{equation}
: y=ax+b
: \end{equation}
in latex and
: <div class="equation">
: y=ax+b
: </div>
in html.

Can mathjax be configured to process anything inside <div class="equation">?

If not, maybe the #+begin_equation should be a built-in block in org-mode,
also with a fast template (maybe "<eq").

--
Darlan Cavalcante

At Thu, 16 Jun 2011 08:53:24 +0100,
Post by Eric S Fraga
Post by Samuel Sinayoko
Dear list,
I've been trying to write short scientific reports that I can export to
both LaTeX and HTML. So far I've managed to figure out how to include
equations, images, references, and how to include labels and cross
reference between all these things.
The only problem I have is that I can't get numbered equations in both
LaTeX and HTML. Using the snippet below, I'm able to get a numbered
equation in HTML but not in LaTeX. I've put
loadFiles: ["extensions/eqn-number.js"],
in jsMath/easy/load.js. If I replace the $$ by
\begin{equation} and \end{equation}, I get a numbered equation in LaTeX
but not in HTML.
How can I get numbered equations in both HTML and LaTeX?
I can't help you wish HTML unfortunately but I can summarise the issue
in LaTeX.
With the standard document class (article say), equations can be either
"displayed" or "inline". Only displayed equations are numbered and then
only if you use =equation= (or =align=, =eqnarray=, etc). $$ ... $$ is
equivalent to \[ ... \] which is essentially equivalent to the
unnumbered version of \begin{equation} (aka \begin{equation*}).
The trick would be to get the HTML exporter to apply the same processing
to \begin{equation} ... \end{equation} as it does to $$ ... $$, I guess?
--
: Eric S Fraga (GnuPG: 0xC89193D8FFFCF67D) in Emacs 24.0.50.1
: using Org-mode version 7.5 (release_7.5.399.g01eb)
Samuel Sinayoko
2011-06-16 15:39:59 UTC
Permalink
Unfortunately this is not what jsMath expects. We get this in the html
file (see attached files for full source)

---
<p>This is what we want
$$
\label{eq:1}
y = ax + b
$$
</p>


<p>This is what we get
<div class="EQUATION">
\label{eq:1}
y = ax + b
</div>
</p>
--

What we need to do is to replace \begin{equation} ... \end{equation}
with $$ ... $$ in the HTML export. Any idea of how to do this?

Sam
Post by Darlan Cavalcante Moreira
Using the org-special-blocks library org-mode will recognize blocks in the
form
: #+begin_something
: bla bla bla
: #+end_something
Then you could write
: #+begin_equation
: y=ax+b
: #+end_equation
in org-mode. It would be translated to
: \begin{equation}
: y=ax+b
: \end{equation}
in latex and
: <div class="equation">
: y=ax+b
: </div>
in html.
Can mathjax be configured to process anything inside <div class="equation">?
If not, maybe the #+begin_equation should be a built-in block in org-mode,
also with a fast template (maybe "<eq").
--
Darlan Cavalcante
At Thu, 16 Jun 2011 08:53:24 +0100,
Post by Eric S Fraga
Post by Samuel Sinayoko
Dear list,
I've been trying to write short scientific reports that I can export to
both LaTeX and HTML. So far I've managed to figure out how to include
equations, images, references, and how to include labels and cross
reference between all these things.
The only problem I have is that I can't get numbered equations in both
LaTeX and HTML. Using the snippet below, I'm able to get a numbered
equation in HTML but not in LaTeX. I've put
loadFiles: ["extensions/eqn-number.js"],
in jsMath/easy/load.js. If I replace the $$ by
\begin{equation} and \end{equation}, I get a numbered equation in LaTeX
but not in HTML.
How can I get numbered equations in both HTML and LaTeX?
I can't help you wish HTML unfortunately but I can summarise the issue
in LaTeX.
With the standard document class (article say), equations can be either
"displayed" or "inline". Only displayed equations are numbered and then
only if you use =equation= (or =align=, =eqnarray=, etc). $$ ... $$ is
equivalent to \[ ... \] which is essentially equivalent to the
unnumbered version of \begin{equation} (aka \begin{equation*}).
The trick would be to get the HTML exporter to apply the same processing
to \begin{equation} ... \end{equation} as it does to $$ ... $$, I guess?
--
: Eric S Fraga (GnuPG: 0xC89193D8FFFCF67D) in Emacs 24.0.50.1
: using Org-mode version 7.5 (release_7.5.399.g01eb)
Samuel Sinayoko
2011-06-16 10:36:16 UTC
Permalink
Thanks Eric. I think you're right. It would make sense to use
\begin{equation} \end{equation} with HTML export to number equations.
I've put a minimal example below showing what is happening.

--
#+TITLE: Equation numbering
#+STYLE: <SCRIPT SRC="jsMath/easy/load.js"></SCRIPT>

* Numbered in HTML export / Not numbered in LaTeX
Equation is numbered and can be referenced in HTML export. Equation is
*not* numbered in LaTeX export.
$$
\label{eq:1}
y = ax + b
$$
Equation \ref{eq:1} is a polynomial of order 1.

* Not numbered in HTML / Numbered in LaTeX
Equation is not numbered but can be referenced in HTML export. Equation
is numbered in LaTeX export.
\begin{equation}
\label{eq:1}
y = ax + b
\end{equation}
Equation \ref{eq:1} is not numbered but can be referenced in HTML
export. It is numbered in LaTeX export.
--

I also think the right behaviour would be to have a numbered equation in
the second case in both HTML and LaTeX, and an unnumbered equation in
the first case in both HTML and LaTeX. Does everyone agree?

I'd be happy to try and change the behaviour of the HTML export if
someone can point me in the right direction.

Cheers,

Sam
Post by Eric S Fraga
Post by Samuel Sinayoko
Dear list,
I've been trying to write short scientific reports that I can export to
both LaTeX and HTML. So far I've managed to figure out how to include
equations, images, references, and how to include labels and cross
reference between all these things.
The only problem I have is that I can't get numbered equations in both
LaTeX and HTML. Using the snippet below, I'm able to get a numbered
equation in HTML but not in LaTeX. I've put
loadFiles: ["extensions/eqn-number.js"],
in jsMath/easy/load.js. If I replace the $$ by
\begin{equation} and \end{equation}, I get a numbered equation in LaTeX
but not in HTML.
How can I get numbered equations in both HTML and LaTeX?
I can't help you wish HTML unfortunately but I can summarise the issue
in LaTeX.
With the standard document class (article say), equations can be either
"displayed" or "inline". Only displayed equations are numbered and then
only if you use =equation= (or =align=, =eqnarray=, etc). $$ ... $$ is
equivalent to \[ ... \] which is essentially equivalent to the
unnumbered version of \begin{equation} (aka \begin{equation*}).
The trick would be to get the HTML exporter to apply the same processing
to \begin{equation} ... \end{equation} as it does to $$ ... $$, I guess?
Loading...