X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=lib%2Fscripts%2Ffig_copy.py;h=a398c1dbf526b249b34098dddec5f40aa0e58fbd;hb=dd60e2d9f4bdf091d38590f83546147610eca9a1;hp=16ae154a4ea1c3403b86be8fa67638d35deedc8a;hpb=debd34424fdc6b2d610b5c03735b188c2a85940a;p=lyx.git diff --git a/lib/scripts/fig_copy.py b/lib/scripts/fig_copy.py index 16ae154a4e..a398c1dbf5 100644 --- a/lib/scripts/fig_copy.py +++ b/lib/scripts/fig_copy.py @@ -1,4 +1,3 @@ -#!/usr/bin/env python # -*- coding: utf-8 -*- # file fig_copy.py @@ -18,14 +17,15 @@ # picture files that are stored as relative paths are replaced # with the absolute path. +from __future__ import print_function import os, sys if len(sys.argv) != 3: - print >> sys.stderr, "Usage: fig_copy.py " + print ("Usage: fig_copy.py ", file=sys.stderr) sys.exit(1) if not os.path.isfile(sys.argv[1]): - print >> sys.stderr, "Unable to read", sys.argv[1] + print ("Unable to read", sys.argv[1], file=sys.stderr) sys.exit(1) from_dir = os.path.split(os.path.realpath(sys.argv[1]))[0] @@ -46,20 +46,20 @@ import re # We're looking for a line of text that defines an entry of # type '2' (a polyline), subtype '5' (an external picture file). # The line has 14 other data fields. -patternline = re.compile(r'^\s*2\s+5(\s+[0-9.+-]+){14}\s*$') -emptyline = re.compile(r'^\s*$') -commentline = re.compile(r'^\s*#.*$') +patternline = re.compile(br'^\s*2\s+5(\s+[0-9.+-]+){14}\s*$') +emptyline = re.compile(br'^\s*$') +commentline = re.compile(br'^\s*#.*$') # we allow space in path name -figureline = re.compile(r'^(\s*[01]\s*)(\S[\S ]*)(\s*)$') +figureline = re.compile(br'^(\s*[01]\s*)(\S[\S ]*)(\s*)$') -input = open(sys.argv[1], 'r') -output = open(sys.argv[2], 'w') +input = open(sys.argv[1], 'rb') +output = open(sys.argv[2], 'wb') # path in the fig is relative to this path os.chdir(from_dir) found = False -for line in input.xreadlines(): +for line in input: if found and not emptyline.match(line) and not commentline.match(line): # The contents of the final line containing the file name # are ' X ', where X = 0 or 1. @@ -69,7 +69,7 @@ for line in input.xreadlines(): found = False elif patternline.match(line): found = True - print >> output, line, + output.write(line) input.close() output.close()