emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Michael <sp1ff@runbox.com>
To: Ihor Radchenko <yantar92@posteo.net>
Cc: Timothy <orgmode@tec.tecosaur.net>,
	Karthik Chikmagalur <karthikchikmagalur@gmail.com>,
	emacs-orgmode@gnu.org
Subject: Re: [PATCH] Run latex more than once for LaTeX src block evaluation
Date: Fri, 22 Mar 2024 10:23:35 -0700	[thread overview]
Message-ID: <864jcyw4wj.fsf@runbox.com> (raw)
In-Reply-To: <87le6atofh.fsf@localhost>

>> I have a small patch for `org-preview-latex-process-alist' 
>> making
>> the default setting for LaTeX source block evaluation be 
>> running
>> latex three times (instead of the current one). It is sometimes
>> necessary to run latex more than once to produce the final
>> document, a phenomenom described in the docstring for
>> `org-latex-pdf-process' which itself runs latex three times by
>> default. This patch just brings the former variable into parity
>> with the latter.
>
> Thanks for the patch!
> May you please describe a use case when it is necessary to run 
> latex
> multiple times for previews?

Sure: it's required whenever you have LaTeX that refers to
other document elements whose positions are only known after
they've been typeset. This often comes up with bibliographies; to
quote the docstring for `org-latex-pdf-process': "The reason why
this is a list is that it usually takes several runs of
‘pdflatex’, maybe mixed with a call to ‘bibtex’."

I personally encountered it when using the tikzmark library from
the tikzpicture package to draw  annotations on a table (LaTeX
needed to be run once to typeset the table & only then did it
"know" where the arrows needed to be drawn).

Oh-- and it's not just previews (sorry if I gave that
impression)-- it's also required for "evaluating" LaTeX source
blocks.

> CCing Timothy and Kathik - I see that
> https://code.tecosaur.net/tec/org-mode/src/branch/dev/lisp/org-latex-preview.el#L102
> still uses a single compiler invocation.


-- 
Michael <mherstine@pobox.com>


  reply	other threads:[~2024-03-22 17:31 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-21 22:55 [PATCH] Run latex more than once for LaTeX src block evaluation Michael
2024-03-22 12:56 ` Ihor Radchenko
2024-03-22 17:23   ` Michael [this message]
2024-03-23 14:42     ` Ihor Radchenko
2024-04-05  6:41     ` Karthik Chikmagalur
2024-03-24  8:04 ` Max Nikulin
2024-03-24  8:58   ` Ihor Radchenko
2024-03-26 12:13     ` Max Nikulin
2024-03-27 19:34       ` Michael
2024-03-28 12:17         ` Ihor Radchenko
2024-04-05  0:00           ` Michael
2024-04-29  9:24             ` Ihor Radchenko
2024-04-05  0:04           ` Michael
2024-05-05 10:44           ` Ihor Radchenko

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=864jcyw4wj.fsf@runbox.com \
    --to=sp1ff@runbox.com \
    --cc=emacs-orgmode@gnu.org \
    --cc=karthikchikmagalur@gmail.com \
    --cc=mherstine@pobox.com \
    --cc=orgmode@tec.tecosaur.net \
    --cc=yantar92@posteo.net \
    /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).