OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 | 2 |
3 import os.path | 3 import os.path |
4 import re | 4 import re |
5 import subprocess | 5 import subprocess |
6 import sys | 6 import sys |
7 | 7 |
8 from in_file import InFile | 8 from in_file import InFile |
9 import in_generator | 9 import in_generator |
10 import license | 10 import license |
(...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
161 'license': license.license_for_generated_cpp(), | 161 'license': license.license_for_generated_cpp(), |
162 'class_name': self.class_name, | 162 'class_name': self.class_name, |
163 'value_keyword_strings': '\n'.join(map(lambda property: ' "%(name
)s\\0"' % property, self._value_keywords)), | 163 'value_keyword_strings': '\n'.join(map(lambda property: ' "%(name
)s\\0"' % property, self._value_keywords)), |
164 'value_keyword_offsets': '\n'.join(map(lambda offset: ' %d,' % offs
et, keyword_offsets)), | 164 'value_keyword_offsets': '\n'.join(map(lambda offset: ' %d,' % offs
et, keyword_offsets)), |
165 'value_keyword_to_enum_map': '\n'.join(map(lambda property: '%(name)
s, %(enum_name)s' % property, self._value_keywords)), | 165 'value_keyword_to_enum_map': '\n'.join(map(lambda property: '%(name)
s, %(enum_name)s' % property, self._value_keywords)), |
166 'ua_sheet_mode_values_keywords': '\n '.join(map(self._case_va
lue_keyword, self._value_keywords_with_mode('UASheet'))), | 166 'ua_sheet_mode_values_keywords': '\n '.join(map(self._case_va
lue_keyword, self._value_keywords_with_mode('UASheet'))), |
167 'quirks_mode_values_keywords': '\n '.join(map(self._case_valu
e_keyword, self._value_keywords_with_mode('Quirks'))), | 167 'quirks_mode_values_keywords': '\n '.join(map(self._case_valu
e_keyword, self._value_keywords_with_mode('Quirks'))), |
168 'quirks_mode_or_ua_sheet_mode_values_keywords': '\n '.join(map(se
lf._case_value_keyword, self._value_keywords_with_mode('QuirksOrUASheet'))), | 168 'quirks_mode_or_ua_sheet_mode_values_keywords': '\n '.join(map(se
lf._case_value_keyword, self._value_keywords_with_mode('QuirksOrUASheet'))), |
169 } | 169 } |
170 # FIXME: If we could depend on Python 2.7, we would use subprocess.check
_output | 170 # FIXME: If we could depend on Python 2.7, we would use subprocess.check
_output |
171 gperf_args = [self.gperf_path, '--key-positions=*', '-D', '-n', '-s', '2
'] | 171 gperf_args = [self.gperf_path, '--key-positions=*', '-P', '-n'] |
| 172 gperf_args.extend(['-m', '50']) # Pick best of 50 attempts. |
| 173 gperf_args.append('-D') # Allow duplicate hashes -> More compact code. |
172 gperf = subprocess.Popen(gperf_args, stdin=subprocess.PIPE, stdout=subpr
ocess.PIPE, universal_newlines=True) | 174 gperf = subprocess.Popen(gperf_args, stdin=subprocess.PIPE, stdout=subpr
ocess.PIPE, universal_newlines=True) |
173 return gperf.communicate(gperf_input)[0] | 175 return gperf.communicate(gperf_input)[0] |
174 | 176 |
175 | 177 |
176 if __name__ == "__main__": | 178 if __name__ == "__main__": |
177 in_generator.Maker(CSSValueKeywordsWriter).main(sys.argv) | 179 in_generator.Maker(CSSValueKeywordsWriter).main(sys.argv) |
OLD | NEW |