« Return to Thread: [bug #35451] texi2any does not place output in the right place under MSWindows

Re: [bug #35451] texi2any does not place output in the right place under MSWindows

by Vincent Belaïche-2 :: Rate this Message:

| View in Thread

Eli Zaretskii a écrit :

>> Date: Sun, 05 Feb 2012 08:48:50 +0000
>> From: Vincent Belaïche <INVALID.NOREPLY@...>
>>
>> So to recall the problem, under MSWindows I call
>>
>> sh makeinfo --html --no-split c:\my\path\fr.texi
>>
>> the current directory is
>>
>> c:\somewhere\else
>>
>> and the problem is that the output is created under c:\my\path rather than
>> under c:\somewhere\else
>>
>> sh is MSYS bash shell, and makeinfo is just a wrapper bash script to call
>> texi2any.
>>
>> If I do sh makeinfo --html --no-split c:/my/path/fr.texi
>>
>> there is no problem, but I think that I should be able to use \ instead of /
>> because tex2any is installed under MSWindows. Actually it was more practical
>> for me to use \ because I make this command line through an ant buildfile that
>> generates file path this way. I can robustify this buildfile, but
>> nevertheless, I think that there is an issue with texi2any.
>>    
>
> The easiest way to fix this is to convert the argument to forward
> slashes right from the start (on Windows).  Then the rest of the
> script doesn't need to know about backslashes.
>
>
>  

Yes, this one simple way to do it. Another way is to use only library
functions to manipulate filenames. There exists such kind of functions
in Java or in Elisp, there must be the counterparts in Perl (I am not
familiar with Perl, but I cannot imagine that this does not exist).
Personally I would prefer to use library functions, that sounds more
portable/futureproof.

   Vincent.

 « Return to Thread: [bug #35451] texi2any does not place output in the right place under MSWindows