# del_token, check_token, get_option_value
from lyx2lyx_tools import add_to_preamble, put_cmd_in_ert, get_ert, lyx2latex, \
- lyx2verbatim, length_in_bp
+ lyx2verbatim, length_in_bp, convert_info_insets
# insert_to_preamble, latex_length, revert_flex_inset, \
# revert_font_attrs, hex2ratio, str2bool
for glosse in glosses:
i = 0
while True:
- i = find_token(document.body, "\\begin_inset ERT", i)
+ i = find_token(document.body, glosse, i)
if i == -1:
- return
+ break
j = find_end_of_inset(document.body, i)
if j == -1:
- document.warning("Malformed LyX document: Can't find end of ERT inset")
+ document.warning("Malformed LyX document: Can't find end of Glosse inset")
i += 1
continue
- ert = get_ert(document.body, i, True)
- document.body[i:j+1] = [ert]
- i = i + 1
+ while True:
+ ert = find_token(document.body, "\\begin_inset ERT", i, j)
+ if ert == -1:
+ break
+ ertend = find_end_of_inset(document.body, ert)
+ if ertend == -1:
+ document.warning("Malformed LyX document: Can't find end of ERT inset")
+ ert += 1
+ continue
+ ertcontent = get_ert(document.body, ert, True)
+ document.body[ert : ertend + 1] = [ertcontent]
+ i += 1
def convert_newgloss(document):
revert_verbatim(document, True)
+def convert_save_props(document):
+ " Add save_transient_properties parameter. "
+ i = find_token(document.header, '\\begin_header', 0)
+ if i == -1:
+ document.warning("Malformed lyx document: Missing '\\begin_header'.")
+ return
+ document.header.insert(i + 1, '\\save_transient_properties true')
+
+
+def revert_save_props(document):
+ " Remove save_transient_properties parameter. "
+ i = find_token(document.header, "\\save_transient_properties", 0)
+ if i == -1:
+ return
+ del document.header[i]
+
+
+def convert_info_tabular_feature(document):
+ def f(arg):
+ return arg.replace("inset-modify tabular", "tabular-feature")
+ convert_info_insets(document, "shortcut(s)?|icon", f)
+
+
+def revert_info_tabular_feature(document):
+ def f(arg):
+ return arg.replace("tabular-feature", "inset-modify tabular")
+ convert_info_insets(document, "shortcut(s)?|icon", f)
+
+
##
# Conversion hub
#
[500, []],
[501, [convert_fontsettings]],
[502, []],
- [503, []]
+ [503, []],
+ [504, [convert_save_props]],
+ [505, []],
+ [506, [convert_info_tabular_feature]]
]
revert = [
+ [505, [revert_info_tabular_feature]],
+ [504, []],
+ [503, [revert_save_props]],
[502, [revert_verbatim_star]],
[501, [revert_solution]],
[500, [revert_fontsettings]],