]> git.lyx.org Git - lyx.git/blobdiff - lib/lyx2lyx/lyxconvert_218.py
Small fix
[lyx.git] / lib / lyx2lyx / lyxconvert_218.py
index 794cab76b39e9d0b9490b22537970b22ee2dcc70..d915f2e3b75d96c69869d0f51ff90d7ab328314d 100644 (file)
@@ -189,7 +189,7 @@ def remove_oldminipage(lines):
 def is_empty(lines):
     return filter(is_nonempty_line, lines) == []
 
-font_rexp =  re.compile(r"\\(family|series|shape|size|emph|numeric|bar|noun)")
+move_rexp =  re.compile(r"\\(family|series|shape|size|emph|numeric|bar|noun|end_deeper)")
 ert_rexp = re.compile(r"\\begin_inset|.*\\SpecialChar")
 spchar_rexp = re.compile(r"(.*)(\\SpecialChar.*)")
 ert_begin = ["\\begin_inset ERT",
@@ -205,7 +205,7 @@ def remove_oldert(lines):
            break
        j = i+1
        while 1:
-           j = find_tokens(lines, ["\\latex default", "\\begin_inset", "\\layout", "\\end_float", "\\the_end"],
+           j = find_tokens(lines, ["\\latex default", "\\begin_inset", "\\layout", "\\end_inset", "\\end_float", "\\the_end"],
                            j)
            if check_token(lines[j], "\\begin_inset"):
                j = find_end_of_inset(lines, j)
@@ -240,7 +240,8 @@ def remove_oldert(lines):
 
            tmp = []
            for line in lines[k:k2]:
-               if font_rexp.match(line):
+                # Move some lines outside the ERT inset:
+               if move_rexp.match(line):
                    if new2 == []:
                        # This is not necessary, but we want the output to be
                        # as similar as posible to the lyx format
@@ -286,6 +287,7 @@ def remove_oldert(lines):
        lines[i:j+1] = new
        i = i+1
 
+    # Delete remaining "\latex xxx" tokens
     i = 0
     while 1:
        i = find_token(lines, "\\latex ", i)
@@ -293,7 +295,7 @@ def remove_oldert(lines):
            break
        del lines[i]
 
-
+# ERT insert are hidden feature of lyx 1.1.6. This might be removed in the future.
 def remove_oldertinset(lines):
     i = 0
     while 1:
@@ -435,6 +437,29 @@ def update_tabular(lines):
 
        i = i+1
 
+# Figure insert are hidden feature of lyx 1.1.6. This might be removed in the future.
+def fix_oldfloatinset(lines):
+    i = 0
+    while 1:
+       i = find_token(lines, "\\begin_inset Float ", i)
+       if i == -1:
+           break
+        j = find_token(lines, "collapsed", i)
+        if j != -1:
+            lines[j:j] = ["wide false"]
+            sys.stderr.write("i,j=%d,%d\n" % (i,j))
+        i = i+1
+
+def change_listof(lines):
+    i = 0
+    while 1:
+       i = find_token(lines, "\\begin_inset LatexCommand \\listof", i)
+       if i == -1:
+           break
+        type = lines[i][33:-3]
+        lines[i] = "\\begin_inset FloatList "+type
+        i = i+1
+
 def change_preamble(lines):
     i = find_token(lines, "\\use_amsmath", 0)
     if i == -1:
@@ -448,6 +473,8 @@ def convert(header, body):
        language = "english"
 
     change_preamble(header)
+    change_listof(body)
+    fix_oldfloatinset(body)
     update_tabular(body)
     remove_oldminipage(body)
     remove_oldfloat(body, language)