diff options
Diffstat (limited to 'servo/components/style/counter_style/update_predefined.py')
-rwxr-xr-x | servo/components/style/counter_style/update_predefined.py | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/servo/components/style/counter_style/update_predefined.py b/servo/components/style/counter_style/update_predefined.py new file mode 100755 index 0000000000..1523958ff3 --- /dev/null +++ b/servo/components/style/counter_style/update_predefined.py @@ -0,0 +1,35 @@ +#!/usr/bin/env python + +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at https://mozilla.org/MPL/2.0/. */ + +import os.path +import re +import urllib + + +def main(filename): + names = [ + re.search('>([^>]+)(</dfn>|<a class="self-link")', line).group(1) + for line in urllib.urlopen("https://drafts.csswg.org/css-counter-styles/") + if 'data-dfn-for="<counter-style-name>"' in line + or 'data-dfn-for="<counter-style>"' in line + ] + with open(filename, "wb") as f: + f.write( + """\ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ + +predefined! { +""" + ) + for name in names: + f.write(' "%s",\n' % name) + f.write("}\n") + + +if __name__ == "__main__": + main(os.path.join(os.path.dirname(__file__), "predefined.rs")) |