commit 5d13d8c78372c1cd5a0f6c3f451bacac55015cb3 Author: Juergen Spitzmueller <sp...@lyx.org> Date: Sat Sep 8 12:50:42 2018 +0200
Amend 2d4ac90fd20eac Properly close local language switch. (cherry picked from commit 11163359772db1ca80dccde5087f55686b9da76d) --- src/output_latex.cpp | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/output_latex.cpp b/src/output_latex.cpp index dbddb6c..1cdb6dd 100644 --- a/src/output_latex.cpp +++ b/src/output_latex.cpp @@ -835,9 +835,11 @@ void TeXOnePar(Buffer const & buf, // Also, if an RTL language is set via environment in polyglossia, // only a nested \\text<lang> command will reset the direction for LTR // languages (see # 10111). + bool const pg_rtl_env = + use_polyglossia && outer_language->rightToLeft() && !par_language->rightToLeft(); bool const localswitch = text.inset().forceLocalFontSwitch() || (using_begin_end && text.inset().forcePlainLayout()) - || (use_polyglossia && outer_language->rightToLeft() && !par_language->rightToLeft()); + || pg_rtl_env; if (localswitch) { lang_begin_command = use_polyglossia ? "\\text$$lang$$opts{" : lyxrc.language_command_local; @@ -1178,7 +1180,8 @@ void TeXOnePar(Buffer const & buf, && style != nextpar->layout()))) || (atSameLastLangSwitchDepth(state) && state->lang_switch_depth_.size() - && cur_lang != par_lang)) + && cur_lang != par_lang) + || pg_rtl_env) { if (using_begin_end && !localswitch) os << breakln;