summary refs log tree commit diff
path: root/scripts/emoji_codegen.py
diff options
context:
space:
mode:
authorJoseph Donofry <joedonofry@gmail.com>2020-06-11 22:27:17 -0400
committerGitHub <noreply@github.com>2020-06-11 22:27:17 -0400
commit813884ee0cbacf5b5b7facab445d3c7cdc712084 (patch)
treef31c6e9545b58d873484e35ea987d486046faa0d /scripts/emoji_codegen.py
parentMerge pull request #218 from z33ky/alert-notifications (diff)
parentUpdate translations (diff)
downloadnheko-813884ee0cbacf5b5b7facab445d3c7cdc712084.tar.xz
Merge pull request #217 from Nheko-Reborn/reactions
Reactions
Diffstat (limited to 'scripts/emoji_codegen.py')
-rwxr-xr-xscripts/emoji_codegen.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/scripts/emoji_codegen.py b/scripts/emoji_codegen.py

index 634887b2..b39feb34 100755 --- a/scripts/emoji_codegen.py +++ b/scripts/emoji_codegen.py
@@ -14,8 +14,9 @@ class Emoji(object): 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{QString::fromUtf8("{{ e.code }}"), "{{ e.shortname }}", emoji::EmojiCategory::{{ category.capitalize() }}}, {%- endfor %} }; ''') @@ -23,6 +24,19 @@ const std::vector<Emoji> emoji::Provider::{{ category }} = { d = dict(category=category, emoji=emojis) print(tmpl.render(d)) +def generate_qml_list(**kwargs): + tmpl = Template(''' +const QVector<Emoji> emoji::Provider::emoji = { + {%- for c in kwargs.items() %} + // {{ c[0].capitalize() }} + {%- for e in c[1] %} + Emoji{QString::fromUtf8("{{ e.code }}"), "{{ e.shortname }}", emoji::EmojiCategory::{{ c[0].capitalize() }}}, + {%- endfor %} + {%- endfor %} +}; + ''') + d = dict(kwargs=kwargs) + print(tmpl.render(d)) if __name__ == '__main__': if len(sys.argv) < 2: @@ -87,3 +101,4 @@ if __name__ == '__main__': 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) \ No newline at end of file