Uwe St�hr wrote:

>> LyX has found a converter from gif to png format. It writes a
>> little shell script to do this and gets the shell to do the work.
>>
>> > #!/bin/sh
>>
>> [snipped the contents of the shell script...]
>>
>> All looks Ok. The script will take your file
>>         C:/lyxdokumente/.lyx/clipart/Gauss.gif
>> and use 'convert' to generate
> 
> The problem is, that I can't find any shell-script in the /bin
> directory.

LyX _generates_ the script and then tells the shell executable 
(sh.exe?) to run it.

>> So, for reasons yet to be understood, LyX is either not creating
>> the shell script or isn't putting it in the expected place.
> 
> I also can't find a lyxconvert1.sh.

That is the problem indeed.

> My converter is Imagemagick that is able to convert the gif images.
> I tested it manually. A assured that I have all permissions to all
> directories, so that shoulnd't be the the problem.

Good.

> My problem is possibly related to the lyx2lyx-script, which also
> doesn't work.

lyx2lyx is a python script. If you have python installed it should 
work just fine.

It may sound like a mess (it probably is) but LyX uses perl, python 
and shell scripts. Why? Well, that's because there are only a few of 
us and each has different skills. All of us can hack together a shell 
script because we're all used to the unix world. Jos� (the lyx2lyx 
author) is a fluent python coder. Amir Karger (long gone) wrote reLyX 
in perl. Indeed, one of the motivations for writing the replacement 
tex2lyx in C++ was that none of us understand --- want to understand 
--- perl.

> I've read on the list that it works on WinXP-machines, but I use
> Win2000pro. Maybe Ruurd has only tested the scripts under XP.
> 
>> So, you have a working system, but it would be nice to understand
>> what is going wrong. Can you dig further?

Hmmm. I guess that you can't patch the source and recompile can you? 
The problem is simply that the code isn't very informative:

                // Output the script to file.
                static int counter = 0;
                script_file_ = OnlyPath(to_file_base) + "lyxconvert" +
                        tostr(counter++) + ".sh";

                std::ofstream fs(script_file_.c_str());
                if (!fs.good())
                        return;

                fs << script.str();
                fs.close();

Ie, if LyX is unable to open the file it doesn't issue a diagnostic 
message...


-- 
Angus

Reply via email to