]> git.lyx.org Git - features.git/commitdiff
Fix bug #8467: "Corrupted NFSS tables" error when Cyrillic character in an equation
authorEnrico Forestieri <forenr@lyx.org>
Sat, 22 Dec 2012 22:06:18 +0000 (23:06 +0100)
committerEnrico Forestieri <forenr@lyx.org>
Sun, 23 Dec 2012 12:11:36 +0000 (13:11 +0100)
(cherry picked from commit 25e4bf4b27b5b404e706ac7cf6f9f6c48cb57b33)

Conflicts:

src/BufferParams.cpp

src/BufferParams.cpp
status.20x

index 6c706479e2805ab607e88a2d36bc109aafa422db..71620c37b919635444925de68ece738a902dead2 100644 (file)
@@ -1389,15 +1389,27 @@ bool BufferParams::writeLaTeX(otexstream & os, LaTeXFeatures & features,
        // XeTeX and LuaTeX (with OS fonts) work without fontenc
        if (font_encoding() != "default" && language->lang() != "japanese"
            && !useNonTeXFonts && !tclass.provides("fontenc")) {
+               docstring extra_encoding;
+               if (features.mustProvide("textgreek"))
+                       extra_encoding += from_ascii("LGR");
+               if (features.mustProvide("textcyr")) {
+                       if (!extra_encoding.empty())
+                               extra_encoding.push_back(',');
+                       extra_encoding += from_ascii("T2A");
+               }
+               if (!extra_encoding.empty() && !font_encoding().empty())
+                       extra_encoding.push_back(',');
                size_t fars = language_options.str().find("farsi");
                size_t arab = language_options.str().find("arabic");
                if (language->lang() == "arabic_arabi"
                        || language->lang() == "farsi" || fars != string::npos
                        || arab != string::npos) {
-                       os << "\\usepackage[" << from_ascii(font_encoding())
+                       os << "\\usepackage[" << extra_encoding
+                          << from_ascii(font_encoding())
                           << ",LFE,LAE]{fontenc}\n";
                } else {
-                       os << "\\usepackage[" << from_ascii(font_encoding())
+                       os << "\\usepackage[" << extra_encoding
+                          << from_ascii(font_encoding())
                           << "]{fontenc}\n";
                }
        }
index 0ce3ebe742f360b1e06fd15b38ef9fbb82d53638..c9746f65fae4219dfbacf8190af06de26b38a2ad 100644 (file)
@@ -83,6 +83,9 @@ What's new
 
 - Fix crash while exporting document with images to xhtml from the command-line
 
+- In order to avoid NFSS problems with certain font packages, load the needed
+  font encodings when inserting cyrillic and/or greek characters (bug 8467).
+
 
 * USER INTERFACE