On 7/31/07, Robin Houston robin.houston@gmail.com wrote:
On 31/07/07, Brad Miller bmiller@luther.edu wrote:
But, if I make any changes the view does not update. I get the
following
error in the log:
Use of uninitialized value in system at /Users/bmiller/Library/Application Support/TextMate/Bundles/Latex.tmbundle/Support/bin/latex_watch.pl line 690.
What version of Watch did you use? In the current version (2.5), line 690 is a comment!
OK, I was using version 2.4 I'll grab the latest after lunch and try it.
- It feels like there must be a ton of duplicated effort between the
typeset and view command as implemented in texMate.py and friends and
what
you have done. texMate.py is pretty modular, and may be able to do much
of
what latex_watch.pl does.
It may well be that some logic is duplicated, and can be factored out. I suspect there may be less than you think. Have you looked at the Watch code? Most of it is fairly specific to the monitor-and-update model used by Watch.
I was thinking mostly of the compiling and finding options and getting preferences...
- I don't understand the limitation about not being able to watch files
that have the \begin document in an included header file.
Watch needs to be able to distinguish the preamble from the document body. The preamble is extracted and used to compile a custom format file (TeX memory dump) which is used to compile the body. This format is regenerated only when the preamble is changed. If the preamble is spread across multiple files, it is more complicated to keep track of. There are any number of ways that this could be improved to some extent: since I do not know a perfect solution, I thought I would address such cases as they arise. To date, no one has shown me a "real world" document that suffers from this problem.
(Incidentally, I did find a cunning solution to *half* the problem: see the contents of the Support/tex/generic directory in the bundle.)
Here's my real world example for you then :-) I'm working on a book with another author. We have a master file for when we want to typeset the entire book, but most of the time we just want to typeset individual chapters. So we have a header and a footer file that we put into each chapter, as well as the master file for the whole book. These headers and footers are smart enough to detect when we are typesetting the whole book, or just a chapter.
It works much better than both of us having to comment out various parts of the entire master file when we are working on a single chapter.
I think this approach was talked about on the TM list a while (over a year) back.
How hard would it be to solve this problem the brute force way and just provide a flag that would have the script recompile the whole document. I wonder whether precompiling the preamble really saves you that much time for most documents on modern hardware??
Brad
Robin
For new threads USE THIS: textmate@lists.macromates.com (threading gets destroyed and the universe will collapse if you don't) http://lists.macromates.com/mailman/listinfo/textmate