|
|
|
@ -11,19 +11,6 @@ class Emoji(object): |
|
|
|
|
self.code = repr(code.encode('utf-8'))[1:].strip("'") |
|
|
|
|
self.shortname = shortname |
|
|
|
|
|
|
|
|
|
def generate_code(emojis, category): |
|
|
|
|
tmpl = Template(''' |
|
|
|
|
const std::vector<Emoji> emoji::Provider::{{ category }} = { |
|
|
|
|
// {{ category.capitalize() }} |
|
|
|
|
{%- for e in emoji %} |
|
|
|
|
Emoji{QString::fromUtf8("{{ e.code }}"), "{{ e.shortname }}", emoji::EmojiCategory::{{ category.capitalize() }}}, |
|
|
|
|
{%- endfor %} |
|
|
|
|
}; |
|
|
|
|
''') |
|
|
|
|
|
|
|
|
|
d = dict(category=category, emoji=emojis) |
|
|
|
|
print(tmpl.render(d)) |
|
|
|
|
|
|
|
|
|
def generate_qml_list(**kwargs): |
|
|
|
|
tmpl = Template(''' |
|
|
|
|
const QVector<Emoji> emoji::Provider::emoji = { |
|
|
|
@ -93,12 +80,4 @@ if __name__ == '__main__': |
|
|
|
|
|
|
|
|
|
# Use xclip to pipe the output to clipboard. |
|
|
|
|
# e.g ./codegen.py emoji.json | xclip -sel clip |
|
|
|
|
generate_code(people, 'people') |
|
|
|
|
generate_code(nature, 'nature') |
|
|
|
|
generate_code(food, 'food') |
|
|
|
|
generate_code(activity, 'activity') |
|
|
|
|
generate_code(travel, 'travel') |
|
|
|
|
generate_code(objects, 'objects') |
|
|
|
|
generate_code(symbols, 'symbols') |
|
|
|
|
generate_code(flags, 'flags') |
|
|
|
|
generate_qml_list(people=people, nature=nature, food=food, activity=activity, travel=travel, objects=objects, symbols=symbols, flags=flags) |
|
|
|
|
generate_qml_list(people=people, nature=nature, food=food, activity=activity, travel=travel, objects=objects, symbols=symbols, flags=flags) |
|
|
|
|