X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ftex2lyx%2FContext.cpp;h=2f49a071f5f663dd5df3b3a108cafaefe0e5225c;hb=9cad99c2b52a28ef487d319c2a802fa6f31ccaea;hp=33050489a09f003deacaecb2a09b2bcf6da62eb7;hpb=4b07e1ea9263b80dc04e222af328f19944ffcad5;p=lyx.git diff --git a/src/tex2lyx/Context.cpp b/src/tex2lyx/Context.cpp index 33050489a0..2f49a071f5 100644 --- a/src/tex2lyx/Context.cpp +++ b/src/tex2lyx/Context.cpp @@ -50,7 +50,8 @@ bool operator==(TeXFont const & f1, TeXFont const & f2) f1.size == f2.size && f1.family == f2.family && f1.series == f2.series && - f1.shape == f2.shape; + f1.shape == f2.shape && + f1.language == f2.language; } @@ -65,6 +66,8 @@ void output_font_change(ostream & os, TeXFont const & oldfont, os << "\n\\shape " << newfont.shape << '\n'; if (oldfont.size != newfont.size) os << "\n\\size " << newfont.size << '\n'; + if (oldfont.language != newfont.language) + os << "\n\\lang " << newfont.language << '\n'; } @@ -79,7 +82,8 @@ Context::Context(bool need_layout_, : need_layout(need_layout_), need_end_layout(false), need_end_deeper(false), has_item(false), deeper_paragraph(false), - new_layout_allowed(true), textclass(textclass_), + new_layout_allowed(true), merging_hyphens_allowed(true), + textclass(textclass_), layout(layout_), parent_layout(parent_layout_), font(font_) { @@ -93,7 +97,7 @@ Context::Context(bool need_layout_, Context::~Context() { if (!par_extra_stuff.empty()) - cerr << "Bug: Ignoring par-level extra stuff '" + cerr << "Bug: Ignoring par-level extra stuff '" << par_extra_stuff << '\'' << endl; } @@ -110,6 +114,9 @@ void Context::begin_layout(ostream & os, Layout const * const & l) } // FIXME: This is not enough for things like // \\Huge par1 \\par par2 + // FIXME: If the document language is not english this outputs a + // superflous language change. Fortunately this is only file format + // bloat and does not change the TeX export of LyX. output_font_change(os, normalfont, font); } @@ -147,7 +154,6 @@ void Context::check_layout(ostream & os) } need_layout = false; need_end_layout = true; - os << "\n"; empty = false; } } @@ -235,6 +241,8 @@ void Context::dump(ostream & os, string const & desc) const os << "deeper_paragraph "; if (new_layout_allowed) os << "new_layout_allowed "; + if (merging_hyphens_allowed) + os << "merging_hyphens_allowed "; if (!extra_stuff.empty()) os << "extrastuff=[" << extra_stuff << "] "; if (!par_extra_stuff.empty())