emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: "Vitus Schäfftlein" <vitusschaefftlein@live.de>
To: "emacs-orgmode@gnu.org" <emacs-orgmode@gnu.org>
Subject: WG: ox-html: exporting LaTeX-environments
Date: Wed, 20 Apr 2022 18:46:05 +0000	[thread overview]
Message-ID: <AM0PR04MB5649F055CD26FE763C185328A8F59@AM0PR04MB5649.eurprd04.prod.outlook.com> (raw)
In-Reply-To: <AM0PR04MB564942C1956668ABB97195A5A8EE9@AM0PR04MB5649.eurprd04.prod.outlook.com>

[-- Attachment #1: Type: text/plain, Size: 5080 bytes --]

[Bump]

Dear Thibault, dear list,

thanks for your fast answer, Thibault!  I am happy to have convinced you of dropping the extra \n's.  The patch you addressed works fine for the asterisk issue: Only those environments get an extra asterisk which are in org-latex-math-environments-re. Nonetheless, I think we should make that variable more user-friendly by not requiring one huge regexp but a list of environment names like ("foo" "bar" "baz").

Unfortunately, the patch does not have any impact on the numbering problem. I guess we actually need org-html--latex-environments-leave-unlabelled to get this running. I just wanna give two examples why it is not useful to lable every environment.

1. Imagine you do not need links to your equations and use the \tag command in your equation environment to get the right equation numbers within the svg. This looks nicer anyway because the font is the same and the formatting is perfect. If we did not have org-html--latex-environments-leave-unlabelled, there would be both the line number within the equation and, below it, another in-text-line-number on a new line. Same goes for the figure-environment which provides its own caption. In general, everything that has its own counter within the svg should not receive extra equation numbers.
2. There are some environments you do not want labelled. Imagine you compile a table summarizing the most important formulas of your post. This is not an equation and it should not be numbered, but it is. Below the table then is a number which looks awful.

You will find an example of the problem here: https://uni-muenster.sciebo.de/s/8gW9dCx7q8NHIeV
[https://uni-muenster.sciebo.de/apps/files_sharing/publicpreview?file=/line_numbers.png&t=8gW9dCx7q8NHIeV&x=200&y=200]<https://uni-muenster.sciebo.de/s/8gW9dCx7q8NHIeV>
sciebo - www.hochschulcloud.nrw<https://uni-muenster.sciebo.de/s/8gW9dCx7q8NHIeV>
line_numbers.png is publicly shared
uni-muenster.sciebo.de


Since I am in the position of setting up a blog just now, I can only stress this variable is needed. I wish I could help you with the code more than I have done with my suggestions. But maybe some one else on the list has an idea?

Best Regards,
Vitus
________________________________________
Von: Thibault Marin [thibault.marin@gmx.com]
Gesendet: Dienstag, 12. April 2022 07:15
An: Vitus Schäfftlein
Cc: emacs-orgmode@gnu.org
Betreff: Re: ox-html: exporting LaTeX-environments

Hi Vitus, list.

My memory is quite fuzzy on this and I won't have a chance to take a
deep look until later, but I will try to share the information I have.

On Mon, 11 Apr 2022 19:38:13 +0000 (9 hours, 37 minutes, 37 seconds ago), Vitus Schäfftlein <vitusschaefftlein@live.de> wrote:

  Dear org-mode mailing list,

  [...]

  3. Any LaTeX environment name foo is changed to foo* (except it already ends with an
   asterisk). For example, \begin{tabular} is changed to \begin{tabular*}; same for
   \end{tabular}. But tabular* differs from tabular in needing an extra width-argument, so
   the export won’t work properly.

I had submitted a patch trying to address this
(https://list.orgmode.org/87h7ok3qi2.fsf@dell-desktop.WORKGROUP/, I have
attached a new version rebased on main to this message).  It never made
it in and I failed to follow-up.  This patch (or something similar)
could help with this issue.  It basically only adds the star for math
environments (using org-html--math-environment-p)

  [...]

  Now the newline commands \n before and after %s are exported as whitespace. Just replacing
  \n%s\n by %s (that is, leaving the newlines out) solves the problem. HTML ignores newlines
  anyway.

This seems to work better indeed; the \n's were just cosmetic.

  [...]

  1 Create a new variable ox-html-latex-environments-no-number of the form ("foo"
   "bar" "baz" ...), which contains all environments that should not receive equation
   numbers.

I don't know whether org-html--math-environment-p (as used in the
attached patch) is sufficient to determine whether we need to add a star
to the environment or if we need another variable (in my use cases,
testing for a match environment is sufficient but it may not be the case
in general).

  [...]

  I don’t know how to express in elisp what is in brackets, though. Does this make sense to you? I
  am a beginner with elisp, so I can only state the ideas I have but not implement them (yet).

This can be made to work if there is a consensus that we want to add a
ox-html-latex-environments-no-number variable (I can try to help with
that if needed, even though my elisp isn't great)

  [...]

  (let ((formula-link
              (org-html-format-latex
               (org-html--unlabel-latex-environment latex-frag)
               processing-type info)))

The patch should address that, I would be curious to see if you
encounter additional problematic cases after applying it.

Thanks for resurrecting this and for your help detecting and fixing the issues.

Best,

thibault


[-- Attachment #2: Type: text/html, Size: 8400 bytes --]

      reply	other threads:[~2022-04-20 19:51 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-11 19:38 ox-html: exporting LaTeX-environments Vitus Schäfftlein
2022-04-12  5:15 ` Thibault Marin
2022-04-15 10:23   ` AW: " Vitus Schäfftlein
2022-04-20 18:46     ` Vitus Schäfftlein [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=AM0PR04MB5649F055CD26FE763C185328A8F59@AM0PR04MB5649.eurprd04.prod.outlook.com \
    --to=vitusschaefftlein@live.de \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).