From 114ebf00c4f12c8acf39b52e057f9a63a98dd58b Mon Sep 17 00:00:00 2001 From: Juergen Spitzmueller Date: Sat, 21 Jul 2018 15:50:35 +0200 Subject: [PATCH] Fix nesting problem with numbers in RTL text \textcolor must precede any \beginL Fixes: #6283 --- src/Font.cpp | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/src/Font.cpp b/src/Font.cpp index b8a6a29531..549f4b8171 100644 --- a/src/Font.cpp +++ b/src/Font.cpp @@ -349,21 +349,6 @@ int Font::latexWriteStartChanges(odocstream & os, BufferParams const & bparams, } } - // If the current language is Hebrew, Arabic, or Farsi - // the numbers are written Left-to-Right. ArabTeX package - // and bidi (polyglossia) reorder the number automatically - // but the packages used for Hebrew and Farsi (Arabi) do not. - if (!runparams.use_polyglossia - && !runparams.pass_thru - && bits_.number() == FONT_ON - && prev.fontInfo().number() != FONT_ON - && (language()->lang() == "hebrew" - || language()->lang() == "farsi" - || language()->lang() == "arabic_arabi")) { - os << "{\\beginL "; - count += 9; - } - FontInfo f = bits_; f.reduce(base.bits_); FontInfo p = bits_; @@ -413,6 +398,20 @@ int Font::latexWriteStartChanges(odocstream & os, BufferParams const & bparams, env = true; //We have opened a new environment } */ + // If the current language is Hebrew, Arabic, or Farsi + // the numbers are written Left-to-Right. ArabTeX package + // and bidi (polyglossia) reorder the number automatically + // but the packages used for Hebrew and Farsi (Arabi) do not. + if (!runparams.use_polyglossia + && !runparams.pass_thru + && bits_.number() == FONT_ON + && prev.fontInfo().number() != FONT_ON + && (language()->lang() == "hebrew" + || language()->lang() == "farsi" + || language()->lang() == "arabic_arabi")) { + os << "{\\beginL "; + count += 9; + } if (f.emph() == FONT_ON) { os << "\\emph{"; count += 6; -- 2.39.2