also for branch: new export flavor "DVILUATEX", fixes bug #7713, patch from Jürgen

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/branches/BRANCH_2_0_X@39461 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Uwe Stöhr 2011-08-10 02:49:30 +00:00
parent 3fb8ea4290
commit 9c4abdf137
10 changed files with 27 additions and 10 deletions

View File

@ -466,7 +466,7 @@ def checkLuatex():
logger.info(msg + ' yes')
addToRC(r'\converter luatex pdf5 "%s" "latex=lualatex"' % LUATEX)
if DVILUATEX != '':
addToRC(r'\converter luatex dvi3 "%s" "latex=lualatex"' % DVILUATEX)
addToRC(r'\converter luatex dvi3 "%s" "latex=dvilualatex"' % DVILUATEX)
# remove temporary files
removeFiles(['luatest.tex', 'luatest.log', 'luatest.aux', 'luatest.pdf'])

View File

@ -3421,6 +3421,8 @@ bool Buffer::doExport(string const & format, bool put_in_tempdir,
runparams.flavor = OutputParams::PDFLATEX;
else if (backend_format == "luatex")
runparams.flavor = OutputParams::LUATEX;
else if (backend_format == "dviluatex")
runparams.flavor = OutputParams::DVILUATEX;
else if (backend_format == "xetex")
runparams.flavor = OutputParams::XETEX;
}

View File

@ -1119,6 +1119,7 @@ void BufferParams::validate(LaTeXFeatures & features) const
switch (features.runparams().flavor) {
case OutputParams::LATEX:
case OutputParams::DVILUATEX:
if (dvipost) {
features.require("ct-dvipost");
features.require("dvipost");
@ -2120,9 +2121,12 @@ vector<string> BufferParams::backends() const
if (v.back() == "latex") {
v.push_back("pdflatex");
v.push_back("luatex");
v.push_back("dviluatex");
v.push_back("xetex");
} else if (v.back() == "xetex")
} else if (v.back() == "xetex") {
v.push_back("luatex");
v.push_back("dviluatex");
}
v.push_back("xhtml");
v.push_back("text");
v.push_back("lyx");
@ -2620,7 +2624,8 @@ void BufferParams::writeEncodingPreamble(otexstream & os,
return;
// LuaTeX neither, but with tex fonts, we need to load
// the luainputenc package.
if (features.runparams().flavor == OutputParams::LUATEX) {
if (features.runparams().flavor == OutputParams::LUATEX
|| features.runparams().flavor == OutputParams::DVILUATEX) {
if (!useNonTeXFonts && inputenc != "default"
&& ((inputenc == "auto" && language->encoding()->package() == Encoding::inputenc)
|| (inputenc != "auto" && encoding().package() == Encoding::inputenc))) {

View File

@ -266,6 +266,8 @@ OutputParams::FLAVOR Converters::getFlavor(Graph::EdgePath const & path)
return OutputParams::XETEX;
if (conv.latex_flavor == "lualatex")
return OutputParams::LUATEX;
if (conv.latex_flavor == "dvilualatex")
return OutputParams::DVILUATEX;
if (conv.latex_flavor == "pdflatex")
return OutputParams::PDFLATEX;
if (conv.xml)
@ -776,6 +778,7 @@ vector<string> Converters::savers() const
v.push_back("latex");
v.push_back("literate");
v.push_back("luatex");
v.push_back("dviluatex");
v.push_back("lyx");
v.push_back("xhtml");
v.push_back("pdflatex");

View File

@ -422,6 +422,7 @@ typedef Translator<OutputParams::FLAVOR, string> FlavorTranslator;
FlavorTranslator initFlavorTranslator()
{
FlavorTranslator f(OutputParams::LATEX, "latex");
f.addPair(OutputParams::DVILUATEX, "dviluatex");
f.addPair(OutputParams::LUATEX, "luatex");
f.addPair(OutputParams::PDFLATEX, "pdflatex");
f.addPair(OutputParams::XETEX, "xetex");

View File

@ -45,14 +45,14 @@ OutputParams::~OutputParams()
bool OutputParams::isLaTeX() const
{
return flavor == LATEX || flavor == LUATEX
return flavor == LATEX || flavor == LUATEX || flavor == DVILUATEX
|| flavor == PDFLATEX || flavor == XETEX;
}
bool OutputParams::isFullUnicode() const
{
return flavor == LUATEX || flavor == XETEX;
return flavor == LUATEX|| flavor == DVILUATEX || flavor == XETEX;
}
} // namespace lyx

View File

@ -28,6 +28,7 @@ class Language;
class OutputParams {
public:
enum FLAVOR {
DVILUATEX,
LATEX,
LUATEX,
PDFLATEX,

View File

@ -43,6 +43,7 @@
#include "support/filetools.h"
#include "support/foreach.h"
#include "support/gettext.h"
#include "support/lassert.h"
#include "support/lstrings.h"
#include "support/os.h"
#include "support/Package.h"
@ -1526,7 +1527,7 @@ void PrefSpellchecker::on_spellcheckerCB_currentIndexChanged(int index)
{
QString spellchecker = spellcheckerCB->itemData(index).toString();
compoundWordCB->setEnabled(spellchecker != QString("native"));
compoundWordCB->setEnabled(spellchecker == QString("aspell"));
}
@ -1924,6 +1925,7 @@ void PrefFileformats::updateView()
formatsCB->addItem(qt_(cit->prettyname()),
QVariant(form_->formats().getNumber(cit->name())));
if (form_->converters().isReachable("latex", cit->name())
|| form_->converters().isReachable("dviluatex", cit->name())
|| form_->converters().isReachable("pdflatex", cit->name())
|| form_->converters().isReachable("luatex", cit->name())
|| form_->converters().isReachable("xetex", cit->name()))

View File

@ -36,18 +36,18 @@
#include "graphics/PreviewLoader.h"
#include "support/bind.h"
#include "support/convert.h"
#include "support/debug.h"
#include "support/ExceptionMessage.h"
#include "support/filetools.h"
#include "support/gettext.h"
#include "support/lassert.h"
#include "support/lstrings.h"
#include "support/lyxlib.h"
#include "support/Translator.h"
#include "support/bind.h"
#include <sstream>
#include <vector>
using namespace std;
using namespace lyx::support;
@ -729,6 +729,7 @@ void InsetExternal::validate(LaTeXFeatures & features) const
string format;
switch (features.runparams().flavor) {
case OutputParams::LATEX:
case OutputParams::DVILUATEX:
format = "LaTeX";
break;
case OutputParams::LUATEX:

View File

@ -121,6 +121,8 @@ What's new
- Improve import of LaTeX documents with non-ASCII contents before loading
the inputenc package (bug 7509).
- The export format DVI (LuaTeX) is now correctly created (bug7713).
- Macros that use other macros now output properly to XHTML (bug 7532).
- Fixed XHTML output for tables that use multirow.
@ -136,7 +138,7 @@ What's new
- On Windows, allow to automatically switch TeX engines without the need
of manually saving the preferences after reconfiguring (bug 7557).
- Fix dvi forward search on Windows when compiling with MSVC.
- Fix DVI forward search on Windows when compiling with MSVC.
- Calculate relative pathnames to master documents when master is in a
directory above the child (bug 7540).