Rake task for building latex?

Does anyone know whether there’s a rake task to build latex files,
including
taking care of whether latex should be run one or more times? I searched
google, this mailing list, rubyforge and RAA, but found nothing. If
nobody has
already written one, I can do it myself, but I wanted to be sure before
attempting it.

Thanks in andvance

Stefano

On Mon, 03 Nov 2008 10:41:25 +0100, Stefano C.
[email protected] wrote:

Does anyone know whether there’s a rake task to build latex files,
including taking care of whether latex should be run one or more times?
I searched google, this mailing list, rubyforge and RAA, but found
nothing.

As far as I know there is no such rake task. Almost all people using
LaTeX
use an environment that takes care of this (AucTeX for example), launch
the programs manually or use Makefiles for it

If nobody has already written one, I can do it myself, but I wanted to
be sure before attempting it.

Let me suggest that you do not write such a task from scratch but
starting
with a proven Makefile. While the implementation of the tasks is simple,
the dependencies that need to be taken into account are not. Two
Makefiles
you may wish to look at:

http://www.acoustics.hut.fi/u/mairas/UltimateLatexMakefile/
http://code.google.com/p/latex-makefile/

And please consider taking a look at AucTeX. In my humble opinion it is
the best available environment to write LaTeX and it is available for
every operating system that has GNU Emacs or XEmacs and a LaTeX
implementation (i.e. on virtually every operating system currently in
use).

http://www.gnu.org/software/auctex/

Even though I use vim most of the time I prefer writing LaTeX with Emacs
and AucTeX.

Josef ‘Jupp’ Schugt

Alle Monday 03 November 2008, Josef ‘Jupp’ Schugt ha scritto:

the programs manually or use Makefiles for it
Google Code Archive - Long-term storage for Google Code Project Hosting.

Josef ‘Jupp’ Schugt

Thanks for the answer and for the pointers to the two makefiles. I
looked at
them and I must admit that they look much more complex than I’d have
expected.

I know about AucTeX and other tools like it (I’ve used them in the
past), but
for what I’m doing now, they’re useless. I got the idea of writing the
documentation for the ruby program I’m developing using literate
programming
and rubyweb (http://www.eng.dmu.ac.uk/~hgs/ruby/rubyweb) and to use
latex to
format the output of rubyweb. This has two consequences:

  1. AucTeX and similar tools expect to have to deal with latex-only files
    and
    would be utterly confused by a mix of ruby and latex. I could indeed use
    them
    on the files produced by rubyweb, which are pure latex, but that
    couldn’t be
    easily automated
  2. Not only I, but also the users of my program should be able to build
    the
    documentation, without the need of installing extra tools.

Thanks again

Stefano

Stefano C. wrote:

Does anyone know whether there’s a rake task to build latex files, including
taking care of whether latex should be run one or more times? I searched
google, this mailing list, rubyforge and RAA, but found nothing. If nobody has
already written one, I can do it myself, but I wanted to be sure before
attempting it.

Thanks in andvance

Stefano

Can’t be that hard run latex about 3 times, once for the intial run.
Once for references to get done right, once for any index to be
created. Then run the dvi converter you want for the output format
you want.

RF.

On Mon, 03 Nov 2008 14:18:39 +0100, Ron F. [email protected] wrote:

Can’t be that hard run latex about 3 times, once for the intial run.
Once for references to get done right, once for any index to be created.
Then run the dvi converter you want for the output format you want.

Even though it is possible, as far as the portable document format is
concerned you do not want to first create DVIs and convert them to PDFs.
That results in documents inferior to direct PDF generation. And
depending
on the document LaTeX runs take quite some time so it perhaps is no
great
idea to run LaTeX three times just to be safe. Only doing what is
actually
is necessary is the central concept of Makefiles and Co.

Josef ‘Jupp’ Schugt

Then you’d better get into parsing latex log files… as there’s no
way to know a-priori how many times you’re going to need to run latex
based on file modification dates. Sorry… that’s LaTeX. The only hint
you have is messages about undefined references.

The initial poster did not specify pdf output. Naturally if that’s
what he wants pdflatex is the beast to run.

RF.

Can’t be that hard run latex about 3 times, once for the intial run.
Once for references to get done right, once for any index to be
created. Then run the dvi converter you want for the output format
you want.

I remember looking at the source for Auctex when I decided to write a
rake file to automate LaTeX compilation for my thesis. I seem to
remember it parses the log output of LaTeX looking for “undefined
reference” type warnings and uses that as the trigger to either run
Bibtex or Latex again to resolve cross-references.

I never bothered writing this step in my rake tasks as the compilation
step was always quick enough, but it shouldn’t be too hard to use that
approach.

Chris

FYI, it may be relevant to check out ConText (wiki.contextgarden.net),
another TeX macro package, where ruby is heavily used
(and of late lua) to assist better interaction with user.

Josef ‘Jupp’ Schugt wrote:

depending on the document LaTeX runs take quite some time so it
Michigan State University
East Lansing, MI 48824-1321


Saji N. Hameed

APEC Climate Center +82 51 668 7470
National Pension Corporation Busan Building 12F
Yeonsan 2-dong, Yeonje-gu, BUSAN 611705 [email protected]
KOREA

Alle Monday 03 November 2008, Stefano C. ha scritto:

Does anyone know whether there’s a rake task to build latex files,
including taking care of whether latex should be run one or more times? I
searched google, this mailing list, rubyforge and RAA, but found nothing.
If nobody has already written one, I can do it myself, but I wanted to be
sure before attempting it.

Thanks in andvance

Stefano

Here’s my attempt at producing a latex task for rake. It’s not very
sofisticated and quite untested, but it should work for my needs. If
anyone is
interested on what it does and does not or how it works, he can run rdoc
on it
(using the -a option, since some private methods can be very
important,
too). I hope the documentation is clear enough (I’m not very good at
writing
it).

Please, let me know what you think of it.

Stefano

Alle Thursday 06 November 2008, Stefano C. ha scritto:

A couple of last-minute changes broke the whole thing. Here’s a working
version.

Stefano