bug-texinfo
[Top][All Lists]
Advanced

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

Re: [bug #46007] texi2dvi Msys support


From: Vincent Belaïche
Subject: Re: [bug #46007] texi2dvi Msys support
Date: Wed, 23 Sep 2015 23:04:38 +0200


Le 23/09/2015 18:02, Eli Zaretskii a écrit :
>> Date: Wed, 23 Sep 2015 15:30:19 +0100
>> From: Gavin Smith <address@hidden>
>> Cc: Eli Zaretskii <address@hidden>, Vincent Belaïche <address@hidden>,
>>      Texinfo <address@hidden>
>>
>> From reading that MikTeX mailing list msys bash does a conversion
>> from the colon style to the semicolon style
>
> AFAIK, it only does that in PATH, but not in other environment
> variables that uses the PATH style to hold a list of directories.
>

I also thought that before, but as far as I understood there are in fact
two steps of conversion:

1) conversion when bash is loaded : then only the PATH envvar from MSW
   is converted.

2) conversion when a non-MSYS program is launched from MSYS, then

   2.1) locally to the subshell where this program is executed, prior to
     execution any envvar that looks like containing a colon spearated
     list of directories is converted so that colons are replaced by
     semicolons, and directories are converted to the MSW native format
     (except / remains /, ie does not become \ )


   2.2) any argument that looks like a FILENAME, or like
     --some-option=FILENAME, has FILENAME converted from MSYS format to
     MSW native format (with / remaining /) before passing it to the
     program.


I was more or less conscient of 1) and 2.2), but 2.1) is something that
I was not aware of. Ignoring 2.2) is what had made me initially &
erronously think that MikTeX was an MSYS program (otherwise how could
texi2dvi have been working), but MikTeX is not an MSYS program, and
texi2dvi was working thanks to MSYS making this 2.1) conversion which
made TEXINPUTS understandable by MikTeX engines.

Anyway, with the simple patch
https://savannah.gnu.org/bugs/download.php?file_id=34939 , texi2dvi
works with MikTeX for the basic case when users don't use TEXINPUTS-like
envvars.

It would also work with this simple patch if the user:

1) sets the TeX envvars without tailing // and without empty dir in the
   middle, and
2) the envvars are in MSYS format before calling texi2dvi (the
   conversion could be done by a not-so-thin wrapper)

I have prepared another patch (see my previous emails):

https://savannah.gnu.org/support/download.php?file_id=34966

It is slightly more complex, but on the other hand that would allow
MSYS/texi2dvi compatibility in all cases. Its ticks is just to work
always in MSW style within texi2dvi for all filenames except for PATH,
so there aren't any conversions.

VBR,
        Vincent








---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel 
antivirus Avast.
http://www.avast.com




reply via email to

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