]> git.lyx.org Git - lyx.git/blobdiff - lib/scripts/lyxpreview_tools.py
whitespace.
[lyx.git] / lib / scripts / lyxpreview_tools.py
index 4b18227746b037351a93694305c744d803c22e4b..2012927c05003e662621a29ecf2bd75cb33a01d3 100644 (file)
@@ -168,7 +168,7 @@ def run_command_win32(cmd):
             if hr != winerror.ERROR_IO_PENDING:
                 data = data + buffer
 
-        except pywintypes.error, e:
+        except pywintypes.error as e:
             if e.args[0] != winerror.ERROR_BROKEN_PIPE:
                 error = 1
             break
@@ -272,11 +272,13 @@ def write_metrics_info(metrics_info, metrics_file):
 # Reads a .tex files and create an identical file but only with
 # pages whose index is in pages_to_keep
 def filter_pages(source_path, destination_path, pages_to_keep):
+    def_re = re.compile(r"(\\newcommandx|\\renewcommandx|\\global\\long\\def)(\\[a-zA-Z]+)(.+)")
     source_file = open(source_path, "r")
     destination_file = open(destination_path, "w")
 
     page_index = 0
     skip_page = False
+    macros = []
     for line in source_file:
         # We found a new page
         if line.startswith("\\begin{preview}"):
@@ -285,6 +287,14 @@ def filter_pages(source_path, destination_path, pages_to_keep):
             skip_page = page_index not in pages_to_keep
 
         if not skip_page:
+            match = def_re.match(line)
+            if match != None:
+                definecmd = match.group(1)
+                macroname = match.group(2)
+                if not macroname in macros:
+                    macros.append(macroname)
+                    if definecmd == "\\renewcommandx":
+                        line = line.replace(definecmd, "\\newcommandx")
             destination_file.write(line)
 
         # End of a page, we reset the skip_page bool
@@ -348,7 +358,7 @@ def run_tex(tex, tex_file):
 
     tex_status, tex_stdout = run_command(tex_call)
     if tex_status:
-        warning("%s had problems compiling %s" \
+        progress("Warning: %s had problems compiling %s" \
             % (os.path.basename(tex), tex_file))
     return tex_status, tex_stdout
 
@@ -396,6 +406,6 @@ def check_latex_log(log_file):
 
     except:
         warning('check_latex_log: Unable to open "%s"' % log_file)
-        warning(`sys.exc_type` + ',' + `sys.exc_value`)
+        warning(repr(sys.exc_info()[0]) + ',' + repr(sys.exc_info()[1]))
 
     return error_pages