mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-26 23:46:15 +01:00
win32/replace.py: Fix replacing items in files with UTF-8 content
Some files that this script will process might have UTF-8 items in there, which can cause problems on Python 3.x as it is more strict and careful on unicode issues. Fix this by: -Doing what we did before on Python 2.x -Open the file with encoding='utf-8' on Python 3.x
This commit is contained in:
parent
0d81bb4e31
commit
58ecc57ca7
@ -21,9 +21,15 @@ valid_actions = ['remove-prefix',
|
|||||||
'replace-str',
|
'replace-str',
|
||||||
'remove-str']
|
'remove-str']
|
||||||
|
|
||||||
|
def open_file(filename, mode):
|
||||||
|
if sys.version_info[0] < 3:
|
||||||
|
return open(filename, mode=mode)
|
||||||
|
else:
|
||||||
|
return open(filename, mode=mode, encoding='utf-8')
|
||||||
|
|
||||||
def replace_multi(src, dest, replace_items):
|
def replace_multi(src, dest, replace_items):
|
||||||
with open(src, 'r') as s:
|
with open_file(src, 'r') as s:
|
||||||
with open(dest, 'w') as d:
|
with open_file(dest, 'w') as d:
|
||||||
for line in s:
|
for line in s:
|
||||||
replace_dict = dict((re.escape(key), value) \
|
replace_dict = dict((re.escape(key), value) \
|
||||||
for key, value in replace_items.items())
|
for key, value in replace_items.items())
|
||||||
|
Loading…
Reference in New Issue
Block a user