Hi,
I have been experimenting with a latex daemon found on the
web. It works when I call it in a shell, but not when WW calls
it. I have tracked the problem pretty far and am hoping the
experts will be able to help.
The basics of how it works are:
- the idea is that latex is constantly running, and we feed it
snippets to typeset. Once it is up, you invoke a new program
(really shell script) called ilatex on the bit to be typeset.
- there is a fifo used for the latex file and the dvi file
- when ilatex is called on a snippet, it gets a special command
added to the beginning saying what process number sent it. There
are also bits saying "snippet starts here" and "snippet ends
here". Then ilatex has to wait for the
daemon to do its work.
- another program reads the output dvi file. It basically
converts the snippets into complete dvi files. When it sees that
a snippet is complete, it sends a signal to the process number of
ilatex which sent it to begin with. That is how the ilatex knows
that its dvi file is ready since the latex process itself never ends.
With that background, I think I can describe the problem. When WW
calls ilatex, the snippet does get run through the latex daemon, and
the program which reads the dvi fifo does its job of creating a usable
dvi file and sending its signal (SIGUSR1). But, ilatex never
hears that signal. All of this happens in a single system call
from WW.
Does WW do something to catch all signals of programs it calls?
John
<| Post or View Comments |>
|