]> git.lyx.org Git - lyx.git/blobdiff - src/BufferParams.cpp
Do not overwrite read-only files. We now move the file to the backup directory and...
[lyx.git] / src / BufferParams.cpp
index fab62fb9ec4a5682a320435a964741e2994191d9..c09f5bbbad1e8c5849c11dfa8782899736913950 100644 (file)
@@ -1120,6 +1120,7 @@ void BufferParams::validate(LaTeXFeatures & features) const
                                features.require("ct-none");
                        }
                        break;
+               case OutputParams::LUATEX:
                case OutputParams::PDFLATEX:
                case OutputParams::XETEX:
                        if (xcolorulem) {
@@ -1187,7 +1188,7 @@ void BufferParams::validate(LaTeXFeatures & features) const
                        features.require("color");
        }
 
-       if (useXetex)
+       if (features.runparams().flavor == OutputParams::XETEX)
                features.require("polyglossia");
 
        if (language->lang() == "vietnamese")
@@ -1359,9 +1360,9 @@ bool BufferParams::writeLaTeX(odocstream & os, LaTeXFeatures & features,
        // set font encoding
        // for arabic_arabi and farsi we also need to load the LAE and
        // LFE encoding
-       // XeTeX works without fontenc
+       // XeTeX and LuaTeX (isFullUnicode() flavor) work without fontenc
        if (font_encoding() != "default" && language->lang() != "japanese"
-           && !useXetex && !tclass.provides("fontenc")) {
+           && !features.runparams().isFullUnicode() && !tclass.provides("fontenc")) {
                size_t fars = language_options.str().find("farsi");
                size_t arab = language_options.str().find("arabic");
                if (language->lang() == "arabic_arabi"
@@ -1892,7 +1893,7 @@ bool BufferParams::writeLaTeX(odocstream & os, LaTeXFeatures & features,
        // these packages (xunicode, for that matter) need to be loaded at least
        // after amsmath, amssymb, esint and the other packages that provide 
        // special glyphs
-       if (useXetex) {
+       if (features.runparams().flavor == OutputParams::XETEX) {
                os << "\\usepackage{xunicode}\n";
                texrow.newline();
                os << "\\usepackage{xltxtra}\n";
@@ -2456,7 +2457,8 @@ docstring BufferParams::getGraphicsDriver(string const & package) const
 void BufferParams::writeEncodingPreamble(odocstream & os,
                LaTeXFeatures & features, TexRow & texrow) const
 {
-       if (useXetex)
+       // fully unicode-aware backends (such as XeTeX) do not need this
+       if (features.runparams().isFullUnicode())
                return;
        if (inputenc == "auto") {
                string const doc_encoding =