Re: latex fragments compilation error when exporting to html
Hi, I can't comment on the rest of the discussion but I think I added this org-html--unlabel-latex-environment line. It was part of a change allowing links to equations in HTML export (https://lists.gnu.org/archive/html/emacs-orgmode/2018-01/msg00120.html). When removing the call to org-html--unlabel-latex-environment, exporting the following org file to html results in double equation labels (one from dvipng, one from org to allow links). , | #+OPTIONS: toc:nil html-postamble:nil tex:dvipng | | #+NAME: eq-test | \begin{align} | 1 + 1 = 0 | \end{align} | | link to equation [[eq-test]] ` (one could play with tex:mathjax and replace align by align* to see the possible modes) If I understand the problem correctly, one solution would be to apply the environment transformation from env to env* only for math environments. Something along the lines of , | (if (eq nil (org-html--math-environment-p latex-environment)) | latex-frag | (org-html--unlabel-latex-environment latex-frag)) ` may work (there may be a better way to do that). I hope this helps. Best, thibault On 2020-09-02T02:12:01-0400, Jeremie Juste wrote: Hello, I have found the culprit in the end. It was the function org-html--unlabel-latex-environment, int he ox-html.el file. I'm not sure this function is useful as I think it is better to give the user control on his environment (labelled or unlabelled) directly in his org file. I'm I missing something else about the use of this function? Anyway it was a good experience at debugging elisp. diff --git a/lisp/ox-html.el b/lisp/ox-html.el index 55d017529..b2a5d6d36 100644 --- a/lisp/ox-html.el +++ b/lisp/ox-html.el @@ -2891,7 +2891,7 @@ CONTENTS is nil. INFO is a plist holding contextual information." ((assq processing-type org-preview-latex-process-alist) (let ((formula-link (org-html-format-latex - (org-html--unlabel-latex-environment latex-frag) + latex-frag processing-type info))) (when (and formula-link (string-match "file:\\([^]]*\\)" formula-link)) (let ((source (org-export-file-uri (match-string 1 formula-link Best regards, Jeremie - GNU Emacs 28.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.5, cairo version 1.16.0) of 2020-09-01 - Org mode version 9.3.7 (release_9.3.7-725-g7bc18e @ /home/djj/src/org-mode/lisp/)
Re: latex fragments compilation error when exporting to html
Hello, I have found the culprit in the end. It was the function org-html--unlabel-latex-environment, int he ox-html.el file. I'm not sure this function is useful as I think it is better to give the user control on his environment (labelled or unlabelled) directly in his org file. I'm I missing something else about the use of this function? Anyway it was a good experience at debugging elisp. diff --git a/lisp/ox-html.el b/lisp/ox-html.el index 55d017529..b2a5d6d36 100644 --- a/lisp/ox-html.el +++ b/lisp/ox-html.el @@ -2891,7 +2891,7 @@ CONTENTS is nil. INFO is a plist holding contextual information." ((assq processing-type org-preview-latex-process-alist) (let ((formula-link (org-html-format-latex - (org-html--unlabel-latex-environment latex-frag) + latex-frag processing-type info))) (when (and formula-link (string-match "file:\\([^]]*\\)" formula-link)) (let ((source (org-export-file-uri (match-string 1 formula-link Best regards, Jeremie - GNU Emacs 28.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.5, cairo version 1.16.0) of 2020-09-01 - Org mode version 9.3.7 (release_9.3.7-725-g7bc18e @ /home/djj/src/org-mode/lisp/)
Re: latex fragments compilation error when exporting to html
Hello, Some follow up on this problem I thought that I messed up the org-mode update because I had some org files open during the updates. I reinstall emacs and org-mode to the latest but I still get the problem. Performing M-x org-html-export-to-html on the file below ends up in an error because tabular* is wrongly added instead of tabular. I could reproduce the problem with the version org-mode that comes with the latest emacs version as well. -- test.org #+OPTIONS: H:3 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t tex:imagemagick title:nil author:nil date:nil #+LATEX_HEADER: \usepackage{booktabs} \begin{tabular}{lll} \toprule 4 & 2 & 3 \\ 5 & 6 & 8 \\ \hline \end{tabular} \end{table} Best regards, Jeremie GNU Emacs 28.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.5, cairo version 1.16.0) of 2020-09-01 Org mode version 9.3.7 (release_9.3.7-725-g7bc18e @ /home/djj/src/org-mode/lisp/)
Re: latex fragments compilation error when exporting to html
> Jeremie Juste writes: > Hello, > Many thanks for your concerns. Everything goes well with emacs > -Q. Sorry for the noise. The culprit is definitely in my init > file. I'll keep the emacs -Q options in mind before sending issues > next time. >> Out of curiosity, what happens if you wrap the LaTeX in >> #+begin_export latex ... #+end_export > If I wrap I get the same error. Perhaps check that you don't have any older versions of org-mode in your system. Best wishes,
Re: latex fragments compilation error when exporting to html
Some news about the investigation. The org-mode version of the emacs -Q is Org mode version 9.1.9 (release_9.1.9-65-g5e4542 @ /usr/local/share/emacs/26.3/lisp/org/). It's pretty old but the latex compilation works fine. When I change to Org mode version 9.3.7 (9.3.7-24-g7b657c-elpa @ /home/djj/.controlled-emacs.d/elpa/org-20200831/) The same issue arises. tabular* instead of tabular. I don't know how to change the version of org-mode without restarting. But with my .emacs brought to minimun and I just uncommenting the following command. (add-to-list 'load-path "/home/djj/.controlled-emacs.d/elpa/org-20200831") (require 'org) is enough to generate the issue. Best regards, Jeremie Eric S Fraga writes: > On Monday, 31 Aug 2020 at 22:24, Jeremie Juste wrote: >> When I export test.org to html, the latex fragment fail to compile. >> The reason is a star get added to the tabular environment. {tabular*} >> (see tmpfile.tex). > > Doesn't happen to me. > > Out of curiosity, what happens if you wrap the LaTeX in > #+begin_export latex ... #+end_export > ?
Re: latex fragments compilation error when exporting to html
Hello, Many thanks for your concerns. Everything goes well with emacs -Q. Sorry for the noise. The culprit is definitely in my init file. I'll keep the emacs -Q options in mind before sending issues next time. > Out of curiosity, what happens if you wrap the LaTeX in > #+begin_export latex ... #+end_export If I wrap I get the same error. Best regards, Jeremie Eric S Fraga writes: > On Monday, 31 Aug 2020 at 22:24, Jeremie Juste wrote: >> When I export test.org to html, the latex fragment fail to compile. >> The reason is a star get added to the tabular environment. {tabular*} >> (see tmpfile.tex). > > Doesn't happen to me. > > Out of curiosity, what happens if you wrap the LaTeX in > #+begin_export latex ... #+end_export > ?
Re: latex fragments compilation error when exporting to html
On Monday, 31 Aug 2020 at 22:24, Jeremie Juste wrote: > When I export test.org to html, the latex fragment fail to compile. > The reason is a star get added to the tabular environment. {tabular*} > (see tmpfile.tex). Doesn't happen to me. Out of curiosity, what happens if you wrap the LaTeX in #+begin_export latex ... #+end_export ? -- : Eric S Fraga via Emacs 28.0.50, Org release_9.3.7-724-ge8ebf5
Re: latex fragments compilation error when exporting to html
Hello, Nick Dokos writes: > Jeremie Juste writes: > >> Hello >> >> When I export test.org to html, the latex fragment fail to compile. >> The reason is a star get added to the tabular environment. {tabular*} >> (see tmpfile.tex). >> >> I don't know why the function insists in using the tabular* environment. >> >> From this point I would have two questions: >> >> How can I remove the star from the tabular environment ? >> How can I can I find the culprit? >> - I was hoping to provide a patch by finding the culprit but I got lost. >> - I tried to debug-on-entry org-format-latex. >> >> >> Best regards, >> Jeremie >> >>> test.org >> >> #+OPTIONS: H:3 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t >> tex:imagemagick title:nil author:nil date:nil >> #+LATEX_HEADER: \usepackage{booktabs} >> >> \begin{tabular}{lll} >> \toprule >> 1 & 2 & 3 \\ >> 5 & 6 & 8 \\ >> \bottomrule >> \end{tabular} >> >>> tmpfile.tex >> >> ... >> >> {\color{fg} >> \begin{tabular*}{lll} >> \toprule >> 1 & 2 & 3 \\ >> 5 & 6 & 8 \\ >> \hline >> \end{tabular*} >> % >> } >> >> > > I cannot reproduce it with Org mode version 9.3.7 (release_9.3.7-705-gea9463 > @ /home/nick/src/emacs/org/org-mode/lisp/). > What version are you using? Thanks for have taken the time to check. The org-version I was using was Org mode version 9.3.7 (9.3.7-13-ge62ca4-elpaplus @ /home/djj/.emacs.d/elpa/org-plus-contrib-20200713/) I updated to the latest version on melpa but the issue persists Org mode version 9.3.7 (9.3.7-24-g7b657c-elpa @ /home/djj/.emacs.d/elpa/org-20200831/) Best regards, Jeremie
Re: latex fragments compilation error when exporting to html
Jeremie Juste writes: > Hello > > When I export test.org to html, the latex fragment fail to compile. > The reason is a star get added to the tabular environment. {tabular*} > (see tmpfile.tex). > > I don't know why the function insists in using the tabular* environment. > > From this point I would have two questions: > > How can I remove the star from the tabular environment ? > How can I can I find the culprit? > - I was hoping to provide a patch by finding the culprit but I got lost. > - I tried to debug-on-entry org-format-latex. > > > Best regards, > Jeremie > >> test.org > > #+OPTIONS: H:3 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t > tex:imagemagick title:nil author:nil date:nil > #+LATEX_HEADER: \usepackage{booktabs} > > \begin{tabular}{lll} > \toprule > 1 & 2 & 3 \\ > 5 & 6 & 8 \\ > \bottomrule > \end{tabular} > >> tmpfile.tex > > ... > > {\color{fg} > \begin{tabular*}{lll} > \toprule > 1 & 2 & 3 \\ > 5 & 6 & 8 \\ > \hline > \end{tabular*} > % > } > > I cannot reproduce it with Org mode version 9.3.7 (release_9.3.7-705-gea9463 @ /home/nick/src/emacs/org/org-mode/lisp/). What version are you using? -- Nick "There are only two hard problems in computer science: cache invalidation, naming things, and off-by-one errors." -Martin Fowler
latex fragments compilation error when exporting to html
Hello When I export test.org to html, the latex fragment fail to compile. The reason is a star get added to the tabular environment. {tabular*} (see tmpfile.tex). I don't know why the function insists in using the tabular* environment. >From this point I would have two questions: How can I remove the star from the tabular environment ? How can I can I find the culprit? - I was hoping to provide a patch by finding the culprit but I got lost. - I tried to debug-on-entry org-format-latex. Best regards, Jeremie > test.org #+OPTIONS: H:3 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t tex:imagemagick title:nil author:nil date:nil #+LATEX_HEADER: \usepackage{booktabs} \begin{tabular}{lll} \toprule 1 & 2 & 3 \\ 5 & 6 & 8 \\ \bottomrule \end{tabular} > tmpfile.tex ... {\color{fg} \begin{tabular*}{lll} \toprule 1 & 2 & 3 \\ 5 & 6 & 8 \\ \hline \end{tabular*} % }