]> git.lyx.org Git - features.git/commitdiff
Fix layout2layout conversion for format 40. This is a big ugly,
authorRichard Heck <rgheck@lyx.org>
Fri, 12 Oct 2012 13:49:10 +0000 (09:49 -0400)
committerRichard Heck <rgheck@lyx.org>
Fri, 12 Oct 2012 13:50:47 +0000 (09:50 -0400)
I'm afraid, but it's going to be. We skip all comment lines at
the start of the script, but what we want to convert here is in
those comment lines. My previous attempt to deal with this issue
produced an invalid file.

lib/scripts/layout2layout.py

index 1248c7f05c9d50bee1ea132d1ad68058ae8928d7..a20ba900e8023e6bf433f7c12be3880faa16390c 100644 (file)
@@ -296,12 +296,23 @@ def convert(lines):
     flexstyles = []
 
     while i < len(lines):
-        # Skip comments and empty lines, but not if it's the declaration 
-        # line (we'll deal with it below)
-        if (re_Comment.match(lines[i]) or re_Empty.match(lines[i])) \
-          and not re_Declaration.match(lines[i]):
-            i += 1
-            continue
+        # Skip comments and empty lines
+        if (re_Comment.match(lines[i]) or re_Empty.match(lines[i])):
+          # We need to deal with this conversion here, because it happens
+          # inside the initial comment block.
+          if only_comment and format == 39:
+              match = re_ExtractCategory.match(lines[i])
+              if match:
+                  lpre = match.group(1)
+                  lcat = match.group(2)
+                  lnam = match.group(3)
+                  if lcat in ConvDict:
+                      lcat = ConvDict[lcat]
+                  lines[i] = lpre + "{" + lnam + "}"
+                  lines.insert(i+1, "#  \\DeclareCategory{" + lcat + "}")
+                  i += 1 
+          i += 1
+          continue
 
         # insert file format if not already there
         if (only_comment):
@@ -340,16 +351,6 @@ def convert(lines):
             continue
 
         if format == 39:
-            match = re_ExtractCategory.match(lines[i])
-            if match:
-                lpre = match.group(1)
-                lcat = match.group(2)
-                lnam = match.group(3)
-                if lcat in ConvDict:
-                    lcat = ConvDict[lcat]
-                lines[i] = lpre + "{" + lnam + "}"
-                lines.insert(i+1, "#  \\DeclareCategory{" + lcat + "}")
-                i += 1 
             i += 1
             continue