]> git.lyx.org Git - lyx.git/blobdiff - lib/lyx2lyx/lyx_2_3.py
use https:// in the first line of .lyx files
[lyx.git] / lib / lyx2lyx / lyx_2_3.py
index 113312492b5f020b2f6492604357f70cd1f54fae..edc5b1ffa9384c83ec41f840ea6c8a38a3121a41 100644 (file)
@@ -1146,11 +1146,12 @@ def revert_noprefix(document):
             i += 1
             continue
         k = find_token(document.body, "LatexCommand labelonly", i, j)
-        if k == -1:
-            i = j
-            continue
-        noprefix = get_bool_value(document.body, "noprefix", i, j)
+        noprefix = False
+        if k != -1:
+            noprefix = get_bool_value(document.body, "noprefix", i, j)
         if not noprefix:
+            # either it was not a labelonly command, or else noprefix was not set.
+            # in that case, we just delete the option.
             del_token(document.body, "noprefix", i, j)
             i = j
             continue
@@ -1995,7 +1996,8 @@ def revert_mathindent(document):
     i = find_re(document.header, regexp, 0)
     if i != -1:
         value = get_value(document.header, "\\math_indentation" , i).split()[0]
-        add_to_preamble(document, ["\\setlength{\\mathindent}{" + value + '}'])
+        if value != "default":
+            add_to_preamble(document, ["\\setlength{\\mathindent}{" + value + '}'])
         del document.header[i]
     # now set the document class option
     regexp = re.compile(r'(\\is_math_indent 1)')
@@ -2142,12 +2144,13 @@ def revert_allowbreak(document):
 
 
 def convert_mathnumberpos(document):
-    " add the \math_number_before tag "
+    " add the \\math_number_before tag "
     # check if the document uses the class option "leqno"
     k = find_token(document.header, "\\quotes_style", 0)
+    m = find_token(document.header, "\\options", 0)
     regexp = re.compile(r'^.*leqno.*')
     i = find_re(document.header, regexp, 0)
-    if i != -1:
+    if i != -1 and i == m:
         document.header.insert(k, "\\math_number_before 1")
         # delete the found option
         document.header[i] = document.header[i].replace(",leqno", "")
@@ -2155,7 +2158,7 @@ def convert_mathnumberpos(document):
         document.header[i] = document.header[i].replace("leqno,", "")
         j = find_re(document.header, regexp, 0)
         if i == j:
-            # then we have fleqn as the only option
+            # then we have leqno as the only option
             del document.header[i]
     else:
         document.header.insert(k, "\\math_number_before 0")
@@ -2180,6 +2183,70 @@ def revert_mathnumberpos(document):
             del document.header[i + 1]
 
 
+def convert_mathnumberingname(document):
+    " rename the \\math_number_before tag to \\math_numbering_side "
+    regexp = re.compile(r'(\\math_number_before 1)')
+    i = find_re(document.header, regexp, 0)
+    if i != -1:
+        document.header[i] = "\\math_numbering_side left"
+    regexp = re.compile(r'(\\math_number_before 0)')
+    i = find_re(document.header, regexp, 0)
+    if i != -1:
+        document.header[i] = "\\math_numbering_side default"
+    # check if the document uses the class option "reqno"
+    k = find_token(document.header, "\\math_numbering_side", 0)
+    m = find_token(document.header, "\\options", 0)
+    regexp = re.compile(r'^.*reqno.*')
+    i = find_re(document.header, regexp, 0)
+    if i != -1 and i == m:
+        document.header[k] = "\\math_numbering_side right"
+        # delete the found option
+        document.header[i] = document.header[i].replace(",reqno", "")
+        document.header[i] = document.header[i].replace(", reqno", "")
+        document.header[i] = document.header[i].replace("reqno,", "")
+        j = find_re(document.header, regexp, 0)
+        if i == j:
+            # then we have reqno as the only option
+            del document.header[i]
+
+
+def revert_mathnumberingname(document):
+    " rename the \\math_numbering_side tag back to \\math_number_before "
+    # just rename
+    regexp = re.compile(r'(\\math_numbering_side left)')
+    i = find_re(document.header, regexp, 0)
+    if i != -1:
+        document.header[i] = "\\math_number_before 1"
+    # add the option reqno and delete the tag
+    regexp = re.compile(r'(\\math_numbering_side right)')
+    i = find_re(document.header, regexp, 0)
+    if i != -1:
+        document.header[i] = "\\math_number_before 0"
+        k = find_token(document.header, "\\options", 0)
+        if k != -1:
+           document.header[k] = document.header[k].replace("\\options", "\\options reqno,")
+        else:
+            l = find_token(document.header, "\\use_default_options", 0)
+            document.header.insert(l, "\\options reqno")
+    # add the math_number_before tag   
+    regexp = re.compile(r'(\\math_numbering_side default)')
+    i = find_re(document.header, regexp, 0)
+    if i != -1:
+        document.header[i] = "\\math_number_before 0"
+
+
+def convert_minted(document):
+    " add the \\use_minted tag "
+    document.header.insert(-1, "\\use_minted 0")
+
+
+def revert_minted(document):
+    " remove the \\use_minted tag "
+    i = find_token(document.header, "\\use_minted", 0)
+    if i != -1:
+        document.header.pop(i)
+
+
 ##
 # Conversion hub
 #
@@ -2219,10 +2286,14 @@ convert = [
            [539, []],
            [540, []],
            [541, [convert_allowbreak]],
-           [542, [convert_mathnumberpos]]
+           [542, [convert_mathnumberpos]],
+           [543, [convert_mathnumberingname]],
+           [544, [convert_minted]]
           ]
 
 revert =  [
+           [543, [revert_minted]],
+           [542, [revert_mathnumberingname]],
            [541, [revert_mathnumberpos]],
            [540, [revert_allowbreak]],
            [539, [revert_rotfloat]],