From: Richard Kimberly Heck Date: Sun, 22 Jul 2018 02:49:49 +0000 (-0400) Subject: Speed up convert_literalparam. Part of #11200. X-Git-Tag: 2.3.3~141 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=7bc7b8f422db07ecb39322e65d583da75ffbf05d;p=features.git Speed up convert_literalparam. Part of #11200. (cherry picked from commit 4549f46a431021d6667451ab83965eca12d58f58) --- diff --git a/lib/lyx2lyx/lyx_2_3.py b/lib/lyx2lyx/lyx_2_3.py index 9a395687df..d6b31708e5 100644 --- a/lib/lyx2lyx/lyx_2_3.py +++ b/lib/lyx2lyx/lyx_2_3.py @@ -1551,24 +1551,29 @@ command_insets = ["bibitem", "citation", "href", "index_print", "nomenclature"] def convert_literalparam(document): " Add param literal " - for inset in command_insets: - i = 0 - while True: - i = find_token(document.body, '\\begin_inset CommandInset %s' % inset, i) - if i == -1: - break - j = find_end_of_inset(document.body, i) - if j == -1: - document.warning("Malformed LyX document: Can't find end of %s inset at line %d" % (inset, i)) - i += 1 - continue - while i < j and document.body[i].strip() != '': - i += 1 - # href is already fully latexified. Here we can switch off literal. - if inset == "href": - document.body.insert(i, "literal \"false\"") - else: - document.body.insert(i, "literal \"true\"") + pos = len("\\begin_inset CommandInset ") + i = 0 + while True: + i = find_token(document.body, '\\begin_inset CommandInset', i) + if i == -1: + break + inset = document.body[i][pos:].strip() + if not inset in command_insets: + i += 1 + continue + j = find_end_of_inset(document.body, i) + if j == -1: + document.warning("Malformed LyX document: Can't find end of %s inset at line %d" % (inset, i)) + i += 1 + continue + while i < j and document.body[i].strip() != '': + i += 1 + # href is already fully latexified. Here we can switch off literal. + if inset == "href": + document.body.insert(i, "literal \"false\"") + else: + document.body.insert(i, "literal \"true\"") + i = j + 1 diff --git a/status.23x b/status.23x index ba917afaee..36335aba2c 100644 --- a/status.23x +++ b/status.23x @@ -63,6 +63,11 @@ What's new +* LYX2LYX + +- Speed up some lyx2lyx conversions (bug 11200). + + * TEX2LYX