Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(440)

Side by Side Diff: third_party/fontconfig/process-template.py

Issue 113203003: Fix Mac fontconfig build (Closed) Base URL: https://skia.googlesource.com/skia.git@noembed
Patch Set: checkpoint Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 #!/usr/bin/python
epoger 2014/01/08 19:40:22 Add copyright and documentation header?
2
3 import argparse
4 import os
5 import sys
6
7 parser = argparse.ArgumentParser()
8 parser.add_argument("-i", "--input")
epoger 2014/01/08 19:40:22 Please be consistent with either single- or double
vandebo (ex-Chrome) 2014/01/08 21:24:15 Done.
9 parser.add_argument("-o", "--output")
10 parser.add_argument(
epoger 2014/01/08 19:40:22 I would suggest naming this arg --keyword_substitu
vandebo (ex-Chrome) 2014/01/08 21:24:15 Done.
11 "-s", "--substitution", action="append", nargs=2, metavar=('KEY', 'VALUE'), help="Changes @KEY@ to VALUE in the template.")
bungeman-skia 2014/01/07 21:13:29 nit: this line is a bit long, looks like the next
vandebo (ex-Chrome) 2014/01/08 21:24:15 Done.
12 parser.add_argument(
13 "-p", "--path_substitution", action="append", nargs=2,
14 metavar=('KEY', 'PATH'),
15 help="Makes PATH absolute then changes @KEY@ to PATH in the template.")
16
17 args = parser.parse_args()
18
19 input = sys.stdin
20 if args.input:
21 try:
22 input = open(args.input, 'r')
23 except IOError:
epoger 2014/01/08 19:40:22 Why the manual try/except handling? If you just d
vandebo (ex-Chrome) 2014/01/08 21:24:15 Done.
24 sys.exit(1)
25
26 output = sys.stdout
27 if args.output:
28 try:
29 output = open(args.output, 'w')
30 except IOError:
31 sys.exit(1)
32
33 path_subs = None
34 if args.path_substitution:
35 path_subs = [
36 [sub[0], os.path.abspath(sub[1])] for sub in args.path_substitution
37 ]
38
39 for line in input:
40 if args.substitution:
41 for (key, value) in args.substitution:
42 line = line.replace('@' + key + '@', value)
epoger 2014/01/08 19:40:22 Rather than mandating the @ delimiters, why not ju
vandebo (ex-Chrome) 2014/01/08 21:24:15 Done.
43 if path_subs:
44 for (key, path) in path_subs:
45 line = line.replace('@' + key + '@', path)
46 output.write(line)
47
48 input.close()
49 output.close()
OLDNEW
« third_party/fontconfig/README.chromium ('K') | « third_party/fontconfig/config/mac/config.h.template ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698