1 | import os
|
2 | import re
|
3 | import sys
|
4 |
|
5 |
|
6 | def split_example_file(example, dst_dir):
|
7 | lines = open(example, 'rU').readlines()
|
8 |
|
9 | target_lines = []
|
10 | target_require_lines = []
|
11 |
|
12 | found_requires = False
|
13 | found_code = False
|
14 | for line in lines:
|
15 | m = re.match(r'goog.require\(\'(.*)\'\);', line)
|
16 | if m:
|
17 | found_requires = True
|
18 | target_require_lines.append(line)
|
19 | elif found_requires:
|
20 | if found_code or line not in ('\n', '\r\n'):
|
21 | found_code = True
|
22 | target_lines.append(line)
|
23 |
|
24 | target = open(
|
25 | os.path.join(dst_dir, os.path.basename(example)), 'wb')
|
26 | target_require = open(
|
27 | os.path.join(dst_dir, os.path.basename(example)
|
28 | .replace('.js', '-require.js')),
|
29 | 'wb')
|
30 |
|
31 | target.writelines(target_lines)
|
32 | target.close()
|
33 |
|
34 | target_require.writelines(target_require_lines)
|
35 | target_require.close()
|
36 |
|
37 |
|
38 | if __name__ == '__main__':
|
39 | split_example_file(*sys.argv[1:])
|