# Document class js*.cls requires platex <-> Xe/LuaTeX,
# fixed with "bxjs*.cls"
-# lyx2lyx: revert_language() compilation errors (cf. #9633)
-# ! LaTeX Error: \begin{otherlanguage} on input line 36 ended by \end{quote}.
-# with friulan, occitan, and piedmontese also:
-# ! LaTeX Error: Can be used only in preamble.
-# l.42 \AtEndPreamble
-export/export/lyx2lyx/revert-languages-.*_lyx(16|2[012])
# ================================================
Sublabel: lyxbugs
document.warning("Malformed document! Missing \\language_package")
else:
pack = get_value(document.header, "\\language_package", i)
- if pack == "default" or pack == "auto":
+ if pack in ("default", "auto"):
use_polyglossia = True
# Do we use this language with polyglossia?
document.body.insert(i, " ")
continue
+ # TODO: handle nesting issues with font attributes, e.g.
+ # \begin_layout Standard
+ #
+ # \emph on
+ # \lang macedonian
+ # Македонски јазик
+ # \emph default
+ # — јужнословенски јазик, дел од групата на словенски јазици од јазичното
+ # семејство на индоевропски јазици.
+ # Македонскиот е службен и национален јазик во Македонија.
+ # \end_layout
+
# Ensure correct handling of list labels
if (parent[0] in ["Labeling", "Description"]
and not " " in "\n".join(document.body[parent[3]:i])):
end_cmd = "\\end{otherlanguage}"
if (not primary or texname == "english"):
- document.body[i_e:i_e] = put_cmd_in_ert(end_cmd)
- document.body[i+1:i+1] = put_cmd_in_ert(begin_cmd)
+ try:
+ document.body[i_e:i_e] = put_cmd_in_ert(end_cmd)
+ document.body[i+1:i+1] = put_cmd_in_ert(begin_cmd)
+ except UnboundLocalError:
+ pass
del document.body[i]
if not (primary or secondary):
doc_lang_switch = "\\resetdefaultlanguage{%s}" % polyglossianame
# Reset LaTeX main language if required and not already done
- if doc_lang_switch and doc_lang_switch not in document.body[8:20] != doc_lang_switch:
+ if doc_lang_switch and doc_lang_switch[1:] not in document.body[8:20]:
document.body[2:2] = put_cmd_in_ert(doc_lang_switch,
is_open=True, as_paragraph=True)
# These are supported by babel and polyglossia
revert_language(document, lang, lang, lang)
-
# TODO:
# def convert_new_babel_languages(document)
# set to native support if get_value(document.header, "\\options") in
# ["bosnian", "friulan", "macedonian", "piedmontese", "romansh"]
-# and "\\language_package babel".
+# and Babel is used.
+
def revert_amharic(document):
"Set the document language to English but assure Amharic output"