auctex-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [AUCTeX-devel] TeXLive 2019 update broke preview-latex (was Re: Type


From: jfbu
Subject: Re: [AUCTeX-devel] TeXLive 2019 update broke preview-latex (was Re: Typeset LaTeX files with non-ascii file name in TeXLive 2018)
Date: Mon, 7 Oct 2019 22:14:52 +0200
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:60.0) Gecko/20100101 Thunderbird/60.9.0

Hi Keita,

Le 07/10/2019 à 15:44, Ikumi Keita a écrit :
Ikumi Keita <address@hidden> writes:
Do you remember why the extra spaces added for preview-latex invocation?

If I remember correctly, these spaces are added for w32.  I'll look into
this and try to construct other invocation format valid for all OSes.

It seems that it's just enough to remove braces around the argument of
\input.  I think the attached small patch fixes the problem.



The /AUCTEXINPUT used when caching the preamble also uses this syntax.

It uses a \relax after the closing brace. This is due to the fact that
TeX will expand further if not.

(imagine you do \input abc.tex\x and \x is defined in abc.tex, then
an error will be raised because TeX will expand \x at a time it is not
yet defined).

But I guess here you can drop the \relax.

Will the filename %t always be with the .tex extension explicitly included?

If not then problem with a filename ending with space before .tex

indeed

$ pdflatex "\input\detokenize{test }"

fails


whereas

$ pdflatex "\input{test }"

succeeds if there is test<space>.tex

I do believe %t will always have the .tex (per definition),

thus the *real* problem
is with a filename *starting with a space*

$ pdflatex "\input\detokenize{ test.tex}"
This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019) (preloaded 
format=pdflatex)
 restricted \write18 enabled.
entering extended mode
LaTeX2e <2019-10-01>
! I can't find file `test.tex'.
<*> \input\detokenize{ test.tex}
(Press Enter to retry, or Control-D to exit)
Please type another input file name: ^D
! Emergency stop.
<*> \input\detokenize{ test.tex}
! ==> Fatal error occurred, no output PDF file produced!
Transcript written on texput.log.


to be compared with

$ pdflatex "\input{ test.tex}"
This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019) (preloaded 
format=pdflatex)
 restricted \write18 enabled.
entering extended mode
LaTeX2e <2019-10-01>
[...]
Output written on " test.pdf" (1 page, 8685 bytes).
Transcript written on " test.log".



I'll check whether the regression test passes, and push the fix with
suitable commit message soon.

The regression tests should be extended to cover the new filenames
authorized by LaTeX 2019-10-01, i.e. spaces in filenames along
with non-ascii characters as supported by the filesystem.

Arguably a filename starting with a space is not a good idea...


... but, isn't there a way to keep \input{...} form, this is the
most LaTeXian one, the only one one trusts will support fully
the once every 25years
change to \input the LaTeX team may do.


And now that I am such a law-obeying citizen I feel that the
/AUCTEXINPUT stuff should also use that form, too.
(I don't recall why it does not)

Best,

Jean-François




reply via email to

[Prev in Thread] Current Thread [Next in Thread]