On 23/11/2011 6:25 PM, Richard Heck wrote:
On 11/23/2011 04:52 PM, Jean-Marc Lasgouttes wrote:
Le 23/11/11 19:58, Richard Heck a écrit :
In the call to backends() in exportableFormats(), we explicitly exclude
latex and pdflatex if we are using non-TeX fonts, but we do not do this
in the calls in isExportable() or getOutputFlavor(). It seems like we
should. Should we?
This seems reasonable at first glance. The code should probably be
factored out somewhere.
OK. It seems to simplify some other things, too.
There is one difference the current structure makes. Suppose we have a
LaTeX document using non-TeX fonts. Then, currently, the path
HTML->LaTeX-->DVI, say, would be unavailable. With the attached, it
would, in principle, be available. This issues seems like a larger one,
though, that has to do with allowing choice of export paths, and not
just formats.
Richard
Your patch seems to mostly remove the exclude machinery and instead
render LaTeX and PDFLaTeX unavailable as backends when non-TeX fonts are
used. The exclude machinery is still required I think, since a more
general way to (dis)allow export paths is still missing. For example for
documents using Sweave+non-TeX-fonts, we need to block the path
LyX->Sweave->LaTeX->DVI. So not only the LaTeX and PDFLaTeX backends
need to be unavailable, but any path that assumes we will get a valid
LaTeX file out of this backend at some point down the converter chain.
If you need a LyX->HTML->LuaTeX->DVI, it seems like defining a
HTML->LuaTeX converter would suffice for now. Of course, with all the
increasing number of formats and converters, it's high time to have a
more general system here, but it's not clear how to do it.
Regards,
Julien