Bug: LaTeX: inline maths expression in \textrm is not fully supportedurn:uuid:419e5ab8-ad00-8068-9f9d-eae92d9f00252023-06-10T09:59:09ZFirmin Martinfirmin.martin@ens-lyon.frBug: LaTeX: inline maths expression in \textrm is not fully supported2020-12-13T01:32:26Zurn:uuid:f32f4eeb-2a27-4a69-1749-fb83ad9e506f
Sometimes, we want to nest inline maths expression in \textrm to
handle spaces easily and avoid repetition.

Examples:

1. $A = \{n : \textrm{$n$odd in$X$}\}$
2. $A = \{n : \textrm{$$n$$ odd in $$X$$}\}$
3. $$A = \{n : \textrm{\(n$$ odd in $$X$$}\}\)
4. $$A = \{n : \textrm{n odd in X}\}$$

are all equivalent to

- $A = \{n : n \textrm{ odd in } X}\}$

But Org mode exports them in LaTeX as

\begin{enumerate}
\item \$A =$\backslash${n : \textrm{$n$odd in$X$}$\backslash$}\$
\item $$A = \{n : \textrm{\(n$$ odd in $$X$$}\}\)
\item $$A = \{n : \textrm{\(n$$ odd in $$X$$\}$\backslash$}$\backslash$)
\item $$A = \{n : \textrm{n odd in X}\}$$
\end{enumerate}

Namely, only cases 2. and 4., where nested maths delimiters are different
than the outer-most maths delimiters, are correctly exported.
On the other hand, Cases 1. and 3. introduced extra $\backslash$.

Interestingly, display style maths expressions are correctly exported.

5. $$A = \{n : \textrm{n odd in X}\}$$
6. $$A = \{n : \textrm{$$n$$ odd in $$X$$}\}$$
7. $A = \{n : \textrm{$$n$$ odd in $$X$$}\}$
8. $A = \{n : \textrm{n odd in X}\}$

exports to

\begin{enumerate}
\item $$A = \{n : \textrm{n odd in X}\}$$
\item $$A = \{n : \textrm{$$n$$ odd in $$X$$}\}$$
\item $A = \{n : \textrm{$$n$$ odd in $$X$$}\}$
\item $A = \{n : \textrm{n odd in X}\}$
\end{enumerate}

without extra $\backslash$.

Best,

Firmin

Emacs  : GNU Emacs 28.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.20, cairo version 1.16.0) of 2020-10-16
Package: Org mode version 9.4 (9.4-55-g706ba9-elpaplus @ ~/.emacs.d/elpa/org-20201207/)


Eric S Fragae.fraga@ucl.ac.ukRe: Bug: LaTeX: inline maths expression in \textrm is not fully supported2020-12-13T10:25:43Zurn:uuid:49d8ca25-1848-2ed9-fa5e-582caec65b76
On Sunday, 13 Dec 2020 at 02:30, Firmin Martin wrote:
> Sometimes, we want to nest inline maths expression in \textrm to
> handle spaces easily and avoid repetition.
>
> Examples:
>
> 1. $A = \{n : \textrm{$n$odd in$X$}\}$

I think you may be expecting too much of org's simple inline LaTeX
parser.  As soon as you have complex LaTeX, it's best to be explicit

1. @@latex:$A = \{n : \textrm{$n$odd in$X$}\}$@@

HTH,
eric

--
: Eric S Fraga via Emacs 28.0.50, Org release_9.4-160-g7c8dce


Firmin Martinfirmin.martin@ens-lyon.frRe: Bug: LaTeX: inline maths expression in \textrm is not fully supported2020-12-14T06:34:15Zurn:uuid:5a5c1ac7-e564-37f9-9afd-046f23cad02f
> I think you may be expecting too much of org's simple inline LaTeX
> parser.  As soon as you have complex LaTeX, it's best to be explicit
> about it being LaTeX, e.g.:
>
> 1. @@latex:$A = \{n : \textrm{$n$odd in$X$}\}$@@

Thank you for the advice! This does work for LaTeX export, but if one
would also want to export in HTML, the LaTeX expression is lost. I will
stay with the "multiple \textrm" solution for now.

Best,

Firmin

Eric S Fraga <e.fraga@ucl.ac.uk> writes:

> On Sunday, 13 Dec 2020 at 02:30, Firmin Martin wrote:
>> Sometimes, we want to nest inline maths expression in \textrm to
>> handle spaces easily and avoid repetition.
>>
>> Examples:
>>
>> 1. $A = \{n : \textrm{$n$odd in$X$}\}$
>
> I think you may be expecting too much of org's simple inline LaTeX
> parser.  As soon as you have complex LaTeX, it's best to be explicit
> about it being LaTeX, e.g.:
>
> 1. @@latex:$A = \{n : \textrm{$n$odd in$X$}\}$@@
>
> HTH,
> eric
>
> --
> : Eric S Fraga via Emacs 28.0.50, Org release_9.4-160-g7c8dce