X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FFont.cpp;h=76a716da3ac66beff9bf6d24d92fae6b3acf3665;hb=ac3f391b46d25784f3129e24658b73c4bc15febf;hp=2b39813c518a1d6f8531b42df50f8cc961ffa183;hpb=908a11997372f2a96a27e5388c15387337a6166b;p=lyx.git diff --git a/src/Font.cpp b/src/Font.cpp index 2b39813c51..76a716da3a 100644 --- a/src/Font.cpp +++ b/src/Font.cpp @@ -26,11 +26,14 @@ #include "output_latex.h" #include "OutputParams.h" +#include "support/lassert.h" #include "support/convert.h" #include "support/debug.h" #include "support/gettext.h" #include "support/lstrings.h" +#include + using namespace std; using namespace lyx::support; @@ -143,6 +146,8 @@ void Font::update(Font const & newfont, setLanguage(default_language); else setLanguage(document_language); + else if (newfont.language() == reset_language) + setLanguage(document_language); else if (newfont.language() != ignore_language) setLanguage(newfont.language()); } @@ -335,14 +340,14 @@ FontInfo lyxRead(Lexer & lex, FontInfo const & fi) } else if (ttok == "noun") { f.setNoun(FONT_ON); } else { - lex.printError("Illegal misc type `$$Token'"); + lex.printError("Illegal misc type"); } } else if (tok == "color") { lex.next(); string const ttok = lex.getString(); setLyXColor(ttok, f); } else { - lex.printError("Unknown tag `$$Token'"); + lex.printError("Unknown tag"); error = true; } } @@ -618,10 +623,10 @@ int Font::latexWriteEndChanges(odocstream & os, BufferParams const & bparams, if (open_encoding_) { // We need to close the encoding even if it does not change // to do correct environment nesting - Encoding const * const ascii = encodings.getFromLyXName("ascii"); + Encoding const * const ascii = encodings.fromLyXName("ascii"); pair const c = switchEncoding(os, bparams, runparams, *ascii); - BOOST_ASSERT(c.first); + LASSERT(c.first, /**/); count += c.second; runparams.encoding = ascii; open_encoding_ = false; @@ -639,9 +644,8 @@ int Font::latexWriteEndChanges(odocstream & os, BufferParams const & bparams, string Font::toString(bool const toggle) const { - string lang = "ignore"; - if (language()) - lang = language()->lang(); + string const lang = (language() == reset_language) + ? "reset" : language()->lang(); ostringstream os; os << "family " << bits_.family() << '\n' @@ -662,7 +666,7 @@ string Font::toString(bool const toggle) const bool Font::fromString(string const & data, bool & toggle) { istringstream is(data); - Lexer lex(0,0); + Lexer lex; lex.setStream(is); int nset = 0; @@ -717,10 +721,7 @@ bool Font::fromString(string const & data, bool & toggle) } else if (token == "language") { string const next = lex.getString(); - if (next == "ignore") - setLanguage(ignore_language); - else - setLanguage(languages.getLanguage(next)); + setLanguage(languages.getLanguage(next)); } else if (token == "toggleall") { toggle = lex.getBool(); @@ -753,7 +754,7 @@ void Font::validate(LaTeXFeatures & features) const // probably we should put here all interface colors used for // font displaying! For now I just add this ones I know of (Jug) case Color_latex: - case Color_note: + case Color_notelabel: break; default: features.require("color");