]> git.lyx.org Git - lyx.git/blobdiff - lib/lyx2lyx/lyx_2_1.py
AEA.lyx: update to address latest AEA version
[lyx.git] / lib / lyx2lyx / lyx_2_1.py
index 176d4812c18f021351a4fedd7c90c5ef8c313acb..fe5f9d69932ca2ab47e632609873f1e72391825b 100644 (file)
@@ -58,7 +58,7 @@ def revert_Argument_to_TeX_brace(document, line, endline, n, nmax, environment,
     Reverts an InsetArgument to TeX-code
     usage:
     revert_Argument_to_TeX_brace(document, LineOfBegin, LineOfEnd, StartArgument, EndArgument, isEnvironment, isOpt)
     Reverts an InsetArgument to TeX-code
     usage:
     revert_Argument_to_TeX_brace(document, LineOfBegin, LineOfEnd, StartArgument, EndArgument, isEnvironment, isOpt)
-    LineOfBegin is the line  of the \begin_layout or \begin_inset statement
+    LineOfBegin is the line  of the \\begin_layout or \\begin_inset statement
     LineOfEnd is the line  of the \end_layout or \end_inset statement, if "0" is given, the end of the file is used instead
     StartArgument is the number of the first argument that needs to be converted
     EndArgument is the number of the last argument that needs to be converted or the last defined one
     LineOfEnd is the line  of the \end_layout or \end_inset statement, if "0" is given, the end of the file is used instead
     StartArgument is the number of the first argument that needs to be converted
     EndArgument is the number of the last argument that needs to be converted or the last defined one
@@ -111,7 +111,7 @@ def convert_TeX_brace_to_Argument(document, line, n, nmax, inset, environment, o
     - { and } surround a mandatory argument of an environment
     usage:
     convert_TeX_brace_to_Argument(document, LineOfBeginLayout/Inset, StartArgument, EndArgument, isInset, isEnvironment, isOpt)
     - { and } surround a mandatory argument of an environment
     usage:
     convert_TeX_brace_to_Argument(document, LineOfBeginLayout/Inset, StartArgument, EndArgument, isInset, isEnvironment, isOpt)
-    LineOfBeginLayout/Inset is the line  of the \begin_layout or \begin_inset statement
+    LineOfBeginLayout/Inset is the line  of the \\begin_layout or \\begin_inset statement
     StartArgument is the number of the first ERT that needs to be converted
     EndArgument is the number of the last ERT that needs to be converted
     isInset must be true, if braces inside an InsetLayout needs to be converted
     StartArgument is the number of the first ERT that needs to be converted
     EndArgument is the number of the last ERT that needs to be converted
     isInset must be true, if braces inside an InsetLayout needs to be converted
@@ -181,7 +181,7 @@ def convert_TeX_brace_to_Argument(document, line, n, nmax, inset, environment, o
             else:
               beginBrace = find_token(document.body, "{", endBrace, end_layout)
             # assure that the ERTs are consecutive (11 or 12 depending if there is a space between the ERTs or not)
             else:
               beginBrace = find_token(document.body, "{", endBrace, end_layout)
             # assure that the ERTs are consecutive (11 or 12 depending if there is a space between the ERTs or not)
-            if beginBrace == endBrace + 11 or beginBrace == endBrace + 12:
+            if beginBrance != -1 and (beginBrace == endBrace + 11 or beginBrace == endBrace + 12):
               end = find_token(document.body, "\\end_inset", beginBrace)
               document.body[lineERT : end + 1] = ["\\end_layout", "", "\\end_inset"]
               if loop == 1:
               end = find_token(document.body, "\\end_inset", beginBrace)
               document.body[lineERT : end + 1] = ["\\end_layout", "", "\\end_inset"]
               if loop == 1:
@@ -1699,38 +1699,39 @@ def revert_IEEEtran(document):
     if document.textclass != "IEEEtran":
         return
 
     if document.textclass != "IEEEtran":
         return
 
+    layouts = {"Page headings": False,
+               "Biography without photo": True}
+
+    for layout in list(layouts.keys()):
+        i = 0
+        while True:
+            i = find_token(document.body, '\\begin_layout ' + layout, i)
+            if i == -1:
+                break
+            revert_Argument_to_TeX_brace(document, i, 0, 1, 1, layouts[layout], False)
+            i += 1
+
     i = 0
     i = 0
-    i2 = 0
-    j = 0
-    k = 0
     while True:
     while True:
-        if i != -1:
-            i = find_token(document.body, "\\begin_layout Page headings", i)
-        if i != -1:
-            revert_Argument_to_TeX_brace(document, i, 0, 1, 1, False, False)
+        i = find_token(document.body, '\\begin_inset Flex Paragraph Start', i)
+        if i == -1:
+            break
+        revert_Argument_to_TeX_brace(document, i, 0, 1, 1, False, False)
+        i += 1
+
+    i = 0
+    while True:
+        i = find_token_exact(document.body, "\\begin_layout Biography", i)
+        if i == -1:
+                break
+
+        if document.body[i] == "\\begin_layout Biography without photo":
             i += 1
             i += 1
-        if i2 != -1:
-            i2 = find_token(document.body, "\\begin_inset Flex Paragraph Start", i2)
-        if i2 != -1:
-            revert_Argument_to_TeX_brace(document, i2, 0, 1, 1, False, False)
-            i2 = i2 + 1
-        if j != -1:
-            j = find_token(document.body, "\\begin_layout Biography without photo", j)
-        if j != -1:
-            revert_Argument_to_TeX_brace(document, j, 0, 1, 1, True, False)
-            j += 1
-        if k != -1:
-            k = find_token(document.body, "\\begin_layout Biography", k)
-            kA = find_token(document.body, "\\begin_layout Biography without photo", k)
-            if k == kA and k != -1:
-                k += 1
-                continue
-        if k != -1:
-            # start with the second argument, therefore 2
-            revert_Argument_to_TeX_brace(document, k, 0, 2, 2, True, False)
-            k += 1
-        if i == -1 and i2 == -1 and j == -1 and k == -1:
-            return
+            continue
+
+        # start with the second argument, therefore 2
+        revert_Argument_to_TeX_brace(document, i, 0, 2, 2, True, False)
+        i += 1
 
 
 def revert_IEEEtran_2(document):
 
 
 def revert_IEEEtran_2(document):
@@ -1760,33 +1761,31 @@ def convert_IEEEtran(document):
     if document.textclass != "IEEEtran":
         return
 
     if document.textclass != "IEEEtran":
         return
 
+    layouts = {"Page headings": False,
+               "Biography without photo": True}
+
+    for layout in list(layouts.keys()):
+        i = 0
+        while True:
+            i = find_token(document.body, '\\begin_layout ' + layout, i)
+            if i == -1:
+                break
+            convert_TeX_brace_to_Argument(document, i, 1, 1, False, layouts[layout], False)
+            i += 1
+
     i = 0
     i = 0
-    j = 0
-    k = 0
     while True:
     while True:
-        if i != -1:
-            i = find_token(document.body, "\\begin_layout Page headings", i)
-        if i != -1:
-            convert_TeX_brace_to_Argument(document, i, 1, 1, False, False, False)
+        i = find_token_exact(document.body, "\\begin_layout Biography", i)
+        if i == -1:
+                break
+
+        if document.body[i] == "\\begin_layout Biography without photo":
             i += 1
             i += 1
-        if j != -1:
-            j = find_token(document.body, "\\begin_layout Biography without photo", j)
-        if j != -1:
-            convert_TeX_brace_to_Argument(document, j, 1, 1, False, True, False)
-            j += 1
-        if k != -1:
-            # assure that we don't handle Biography Biography without photo
-            k = find_token(document.body, "\\begin_layout Biography", k)
-            kA = find_token(document.body, "\\begin_layout Biography without photo", k - 1)
-        if k == kA and k != -1:
-            k += 1
             continue
             continue
-        if k != -1:
-            # the argument we want to convert is the second one
-            convert_TeX_brace_to_Argument(document, k, 2, 2, False, True, False)
-            k += 1
-        if i == -1 and j == -1 and k == -1:
-            return
+
+        # the argument we want to convert is the second one
+        convert_TeX_brace_to_Argument(document, i, 2, 2, False, True, False)
+        i += 1
 
 
 def revert_AASTeX(document):
 
 
 def revert_AASTeX(document):