[OS X TeX] pdflatexmk not running the first time
Herbert Schulz
herbs at wideopenwest.com
Sun Mar 20 16:14:18 EDT 2022
> On Mar 20, 2022, at 2:21 PM, G. M.-S. <lists.gms at gmail.com> wrote:
>
>
> Hi Herb.
>
> Everything (TeXShop and TeX Live) is up to date.
>
> After some experimenting, I think I found the conditions for this to happen.
> 1) In TeXShop > Preferences > Engine, add the option --shell-escape and tick Shell Escape Warning.
> 2) Create a new file beginning with % !TEX TS-program = pdflatexmk.
> 3) Typeset it. TeXShop will ask about using shell escape. Whichever the answer it will ignore the program to use.
>
> It seems to me that on first typeset TeXShop puts a flag in the file saying if shell escape is to be used or not, but then it forgets the !TEX TS-program part.
>
> Guillermo
>
> On Sun, 20 Mar 2022 at 18:11, Herbert Schulz <herbs at wideopenwest.com> wrote:
> > On Mar 20, 2022, at 11:52 AM, G. M.-S. <lists.gms at gmail.com> wrote:
> >
> > Hello.
> >
> > Something must be misconfigured on my side, but I have been unable to find where.
> >
> > The first time I typeset a new LaTeX file test.tex containing
> >
> > % !TEX TS-program = pdflatexmk
> > \documentclass{article}
> > \begin{document}
> > Test.
> > \begin{equation}
> > \label{eq}
> > 2+2=4
> > \end{equation}
> > As seen in \ref{eq}.
> > \end{document}
> >
> > with TeXShop I get
> >
> > This is pdfTeX, Version 3.141592653-2.6-1.40.23 (TeX Live 2022/dev) (preloaded format=pdflatex)
> > restricted \write18 enabled.
> > entering extended mode
> > (./test.tex
> > LaTeX2e <2021-11-15> patch level 1
> > L3 programming layer <2022-02-24>
> > (/usr/local/texlive/2021/texmf-dist/tex/latex/base/article.cls
> > Document Class: article 2021/10/04 v1.4n Standard LaTeX document class
> > (/usr/local/texlive/2021/texmf-dist/tex/latex/base/size10.clo))
> > (/usr/local/texlive/2021/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def)
> > No file test.aux.
> >
> > LaTeX Warning: Reference `eq' on page 1 undefined on input line 29.
> >
> > [1{/usr/local/texlive/2021/texmf-var/fonts/map/pdftex/updmap/pdftex.map}]
> > (./test.aux)
> >
> > LaTeX Warning: There were undefined references.
> >
> >
> > LaTeX Warning: Label(s) may have changed. Rerun to get cross-references right.
> >
> > )</usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx10.pfb
> > ></usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb>
> > Output written on test.pdf (1 page, 23320 bytes).
> > SyncTeX written on test.synctex.
> > Transcript written on test.log.
> >
> > If I typeset again, latexmk is called and everything works as expected.
> >
> > So this seems to be related to the fact that there is only one file called test.*.
> >
> > Guillermo
>
> Howdy,
>
> This is very strange. What version of TeXShop are you using? When you say `first time' do you mean first time ever (i.e., you are a new user of TeXShop) or does this happen with any file using the pdflatexmk engine the first time you typeset? What is the console output when pdflatexmk is actually used?
>
> Good Luck,
>
> Herb Schulz
> herbs at wideopenwest.com
>
Howdy,
Do you really want shell-escape to be enabled all the time? That's rather dangerous. I haven't checked that possibility and won't. So uncheck that option and remove the --shell-escape you added to the command(s) in the Engine tab of TeXShop preferences. PS: do you really want to go through a warning on every compile using pdflatex?
If you want to use the pdflatexmk engine (or any of the latexmk based engines) the best way to enable shell-escape on a file by file basis is to use the TeXShop directive
% !TEX parameter = -shell-escape
for that file. That keeps things safe.
There also is the sepdflatexmk engine whcih is like the pdflatexmk engine but with -shell-escape enabled. This method is still available but is deprecated.
Finally, on a completely separate issue... with the 2020/10/01 update of LaTeX using and of the latexmk based engines for simple files that only need a single typeset run (i.e., no cross-references, bibliography or indexes) suddenly started to typeset twice. Usually one uses the latexmk based engines for more complex jobs but I'm lazy and often use it even for these ``trivial'' typesetting jobs (I go back to a time when it took almost a minute to typeset a single page so the extra second or so to use the latexmk based engine is meaningless to me) but the extra typesetting run was disconcerting. There is a solution: go to <https://herbs.github.io> and download the LaTeX2020-10-01AndLatexmk.pdf.zip file for information on what is happening and how to solve the problem.
Good Luck,
Herb Schulz
herbs at wideopenwest.com
More information about the MacOSX-TeX
mailing list