Re: [luatex] Calling texlua from texlua, with a space in the tex binary path

Siep Kroonenberg <[email protected]>
Newsgroups gmane.comp.tex.miktex,gmane.comp.tex.luatex.user
Message-ID <[email protected]>
On Sun, Nov 02, 2014 at 12:06:48AM +0100, Reinhard Kotucha wrote:
> On 2014-11-01 at 12:29:29 +0100, Siep Kroonenberg wrote:
> 
>  > I am investigating this in connection with my epspdf texlua script,
>  > which calls luatex at some point. A user who had installed miktex
>  > under Program Files ran into a problem. When I ran my test suite --
>  > another texlua script -- I ran into more problems.
>  > 
>  > So I wrote a texlua test script which calls another texlua script in
>  > the same directory and ran it with portable miktex, with TL/linux
>  > and with TL/w32. Note that TL is portable out of the box in all
>  > respects that matter here. None has its binaries on the searchpath.
> 
> Hi Siep,
> I must admit that I don't know what you mean with "None has its
> binaries on the searchpath.".  LuaTeX has to be in PATH, otherwise the
> shebang line
> 
>   #!/usr/bin/env texlua
> 
> wouldn't work.

I am talking about calling the script with the full path of the
script interpreter, which contains a space:

X:\>"\\vbitmuis\tldev\Mas ter\bin\win32\texlua" x:\epspdf\lua\tlu_call\tlu_caller_rk.tlu

Output from the patched version:

PATH[1]:        C:\WINDOWS\system32
PATH[2]:        C:\WINDOWS
PATH[3]:        C:\WINDOWS\System32\Wbem

prepending "//vbitmuis/tldev/Mas ter/bin/win32" (os.selfdir) to PATH

PATH[1]:        C:\WINDOWS\system32
PATH[2]:        C:\WINDOWS
PATH[3]:        C:\WINDOWS\System32\Wbem

Note that under TL/w32 os.getenv returns the parent path. Maybe
this should be considered a bug, although the modified path is
visible to child processes.

For completeness: this is the output with portable miktex:

X:\>"x:\mik port\miktex\bin\texlua" x:\epspdf\lua\tlu_call\tlu_caller_rk.t
1. os.execute
'x:\mik' is not recognized as an internal or external command,
operable program or batch file.
...

PATH[1]:        C:\WINDOWS\system32
PATH[2]:        C:\WINDOWS
PATH[3]:        C:\WINDOWS\System32\Wbem

prepending "x:\mik port\miktex\bin" (os.selfdir) to PATH

PATH[1]:        x:\mik port\miktex\bin
PATH[2]:        C:\WINDOWS\system32
PATH[3]:        C:\WINDOWS
PATH[4]:        C:\WINDOWS\System32\Wbem

Under MikTeX, os.getenv does return the modified path.

-- 
Siep Kroonenberg

------------------------------------------------------------------------------
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.