Hi Andrew,

Thank you very much for your work on the latex plugins.

I wonder if it's possible to use the latex_encode filter as a TT filter
instead of filtering the data from the perl program.

I'm using catalyst and DBIX::Class so I don't explicitly fetch the data from
the database and pass it to my templates. Instead in my html templates I do
something like  [% table.field | html %] to filter my database content for
html encoding. For my latex templates I'd like to be able to do something
like:

    [% USE Latex %]
    [% FILTER latex('pdf') %]
    ...LaTeX doc...
         [% table.field | latex_encode %]
    ...
    [% END %]

is that possible?

Regarding the TEXTINPUTS feature, I haven't tried the version 3 of your
plugin, but for version 2.x I set up the TEXTINPUTS environment variable
before calling the plugin, and I've noticed that relative paths don't work:
So \includegraphics{./figure.eps} won't work but \includegraphics{figure.eps}
will. I know it's a latex issue, but It would be nice if your filter would
take care of it, since would make reusing latex files easier.

I've noticed that in your summary for the LaTeX::Driver module you don't
mention pdflatex. Does it mean that it is not used anymore? I'm asking
because pdflatex has some missing features (it doesn't support psfrag for
example) and it would be very useful to be able to at least have the option
of generating pdfs using latex + dvips + ps2pdf.

regards,
Francesc


On Oct 3, 2007 5:53 PM, Andrew Ford <[EMAIL PROTECTED]> wrote:

> I have uploaded a new version of the TT2 Latex plugin to CPAN (version
> 3.00_03).
>
> The main new features are:
>
>    * This version uses the LaTeX::Driver module to do the formatting,
>      so the Template::Plugin::Latex code has become very slim.  The
>      LaTeX::Driver module includes the scripts "latex2dvi", "latex2ps"
>      and "latex2pdf", which convert from a LaTeX file to the
>      appropriate output format.  The scripts can be used as classic
>      Unix-style filters (they set up a temporary directory to do the
>      formatting internally), and take a -tt2 option which specifies
>      that the input document is a Template Toolkit template, so the
>      input is processed through tt2 first before being formatted as a
>      LaTeX document.  (There is also a -define=key=value option to
>      define variables that are passed to tt2).  The scripts are not yet
>      fully documented (partly because I have not quite appreciated all
>      the flexibility that they have).  The scripts work as sort of
>      specialized versions of "tpage".
>    * The plugin also defines a latex_encode filter, which is an
>      interface to my new LaTeX::Encode module, which knows how to
>      encode about 250 Unicode characters.  It has an except option to
>      specify characters that are not to be encoded, and an iquotes
>      option (for intelligent quotes), which will turn  <He said,
>      "something."> into <He said, ``something.''> (the doubled
>      back-ticks and doubled single quotes are LaTeX's commands for
>      typographically correct quotation characters).  This filter will
>      take care of the fact that '&', '^', '#', '$', '_', '\', etc are
>      special to LaTeX and will transform them to '\&', '\^{ }', '\$',
>      '\_', '\textbackslash', etc, so you can filter your data fetched
>      from databases or elsewhere through this filter before
>      interpolating it into a LaTeX document template and be fairly
>      confident of not getting LaTeX errors.
>    * The plugin also defines a "table()" method, which is an interface
>      to the LaTeX::Table module, which will take arrays of data items
>      and headers, and other attributes of a table, and generate the
>      LaTeX commands to typeset the table, so you could say
>
>          [% USE Latex;
>             data = [ [ 1, 2, 3 ],
>                      [ 4, 5, 6 ] ];
>             headings = [ [ 'A', 'B', 'C' ] ];
>
>             text = Latex.table( caption = 'Sample table',
>                                 label   = 'table:sample',
>                                 headings = headings,
>                                 data     = data );
>          %]
>
>      and the variable "text" will contain all the LaTeX commands to set
>      the table.
>
> That is about it.  The module is nearing completion (and has spawned two
> other modules: LaTeX::Encode and LaTeX::Driver).
>
> What is left to do is flesh out the documentation and the test scripts
> (for the plugin module and also for the other two modules), and look at
> how the LaTeX environment variables (TEXINPUTS, TEXINPUTS_latex, etc)
> should interact with the filter options.  I'll probably put out another
> developer version (or two) in the next couple of weeks, then it is about
> ready for prime time.
>
> As always I welcome feedback.
>
> Andrew
>
> Andrew Ford wrote:
> > I have finally released a developer version of the TT2 Latex plugin to
> > CPAN (version 3.00_01).  This requires my LaTeX::Driver module version
> > 0.05.  The files are also updates on svn.tt2.org.
> >
> > The main new features are:
> >
> >     * internally it uses LaTeX::Driver to ensure that the document is
> >       run through (pdf)latex, bibtex, makeindex, dvips, dvipdfm and/or
> >       ps2pdf as many times as is necessary to format the document (with
> >       an upper limit of maxruns times)
> >
> >     * the TEXINPUTS path can be specified, so that one can include other
> >       tex, ist, bib files from other directories than the document
> >       directory - the document directory is included in the path, so
> >       that including files that are local to the source document should
> >       work, even when running ttree
> >
> >     * the Template::Latex module is deprecated
> >
> >     * the plugin includes a latex_encode filter that will encode special
> >       characters, so that "20% of $42" becomes "20\% of \$42".  I am
> >       still working on this feature and it will be possible to specify
> >       which characters to exclude so you can say
> >
> >           "my company is \textbf{Ford & Mason Ltd}" |
> >       latex_encode(exclude = "\\{}")
> >
> >       and get out "my company is \textbf{Ford \& Mason Ltd}".  This will
> >       allow you to embed LaTeX formatting commands in your data while
> >       having the non-excluded special characters escaped for you.
> >
> > There are probably other changes I've forgotten to mention but I just
> > want to get something out there for people to play with.
> >
> > I am still working on the documentation and the test suite, although
> > most of the tests do pass (and test useful things).  I will be including
> > an examples directory with some scripts that show how to use the plugin
> > for database publishing and generating personalized PDF files, etc.
> >
> > I would welcome any feedback.
> >
> > Andrew
> >
> >
>
> --
> Andrew Ford,  Director    Pauntley Prints / Ford & Mason Ltd
> [EMAIL PROTECTED]   South Wing Compton House
> pauntley-prints.co.uk     Compton Green, Redmarley  Tel: +44 1531 829900
> ford-mason.co.uk          Gloucester GL19 3JB       Fax: +44 1531 829901
> refcards.com cronolog.org Great Britain          Mobile: +44 7785 258278
>
>
>
> _______________________________________________
> templates mailing list
> [email protected]
> http://lists.template-toolkit.org/mailman/listinfo/templates
>
_______________________________________________
templates mailing list
[email protected]
http://mail.template-toolkit.org/mailman/listinfo/templates

Reply via email to