From 7e0ea12ebbbb7465fc9258cfc5f26b2d153b93fc Mon Sep 17 00:00:00 2001 From: Nicolas Werner Date: Fri, 7 Oct 2022 23:16:00 +0200 Subject: [PATCH] Update to unicode 15 and make script jinja:3 compatible --- resources/emoji-test.txt | 125 ++++++++++------- scripts/emoji_codegen.py | 5 +- src/emoji/Provider.cpp | 282 +++++++++++++++++++++------------------ src/emoji/Provider.h | 2 +- 4 files changed, 234 insertions(+), 180 deletions(-) diff --git a/resources/emoji-test.txt b/resources/emoji-test.txt index dd549336..87d093d6 100644 --- a/resources/emoji-test.txt +++ b/resources/emoji-test.txt @@ -1,13 +1,13 @@ # emoji-test.txt -# Date: 2021-08-26, 17:22:23 GMT -# ยฉ 2021 Unicodeยฎ, Inc. +# Date: 2022-08-12, 20:24:39 GMT +# ยฉ 2022 Unicodeยฎ, Inc. # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. -# For terms of use, see http://www.unicode.org/terms_of_use.html +# For terms of use, see https://www.unicode.org/terms_of_use.html # # Emoji Keyboard/Display Test Data for UTS #51 -# Version: 14.0 +# Version: 15.0 # -# For documentation and usage, see http://www.unicode.org/reports/tr51 +# For documentation and usage, see https://www.unicode.org/reports/tr51 # # This file provides data for testing which emoji forms should be in keyboards and which should also be displayed/processed. # Format: code points; status # emoji name @@ -92,6 +92,7 @@ 1F62C ; fully-qualified # ๐Ÿ˜ฌ E1.0 grimacing face 1F62E 200D 1F4A8 ; fully-qualified # ๐Ÿ˜ฎโ€๐Ÿ’จ E13.1 face exhaling 1F925 ; fully-qualified # ๐Ÿคฅ E3.0 lying face +1FAE8 ; fully-qualified # ๐Ÿซจ E15.0 shaking face # subgroup: face-sleepy 1F60C ; fully-qualified # ๐Ÿ˜Œ E0.6 relieved face @@ -155,7 +156,7 @@ # subgroup: face-negative 1F624 ; fully-qualified # ๐Ÿ˜ค E0.6 face with steam from nose -1F621 ; fully-qualified # ๐Ÿ˜ก E0.6 pouting face +1F621 ; fully-qualified # ๐Ÿ˜ก E0.6 enraged face 1F620 ; fully-qualified # ๐Ÿ˜  E0.6 angry face 1F92C ; fully-qualified # ๐Ÿคฌ E5.0 face with symbols on mouth 1F608 ; fully-qualified # ๐Ÿ˜ˆ E1.0 smiling face with horns @@ -190,8 +191,7 @@ 1F649 ; fully-qualified # ๐Ÿ™‰ E0.6 hear-no-evil monkey 1F64A ; fully-qualified # ๐Ÿ™Š E0.6 speak-no-evil monkey -# subgroup: emotion -1F48B ; fully-qualified # ๐Ÿ’‹ E0.6 kiss mark +# subgroup: heart 1F48C ; fully-qualified # ๐Ÿ’Œ E0.6 love letter 1F498 ; fully-qualified # ๐Ÿ’˜ E0.6 heart with arrow 1F49D ; fully-qualified # ๐Ÿ’ E0.6 heart with ribbon @@ -210,14 +210,20 @@ 2764 200D 1FA79 ; unqualified # โคโ€๐Ÿฉน E13.1 mending heart 2764 FE0F ; fully-qualified # โค๏ธ E0.6 red heart 2764 ; unqualified # โค E0.6 red heart +1FA77 ; fully-qualified # ๐Ÿฉท E15.0 pink heart 1F9E1 ; fully-qualified # ๐Ÿงก E5.0 orange heart 1F49B ; fully-qualified # ๐Ÿ’› E0.6 yellow heart 1F49A ; fully-qualified # ๐Ÿ’š E0.6 green heart 1F499 ; fully-qualified # ๐Ÿ’™ E0.6 blue heart +1FA75 ; fully-qualified # ๐Ÿฉต E15.0 light blue heart 1F49C ; fully-qualified # ๐Ÿ’œ E0.6 purple heart 1F90E ; fully-qualified # ๐ŸคŽ E12.0 brown heart 1F5A4 ; fully-qualified # ๐Ÿ–ค E3.0 black heart +1FA76 ; fully-qualified # ๐Ÿฉถ E15.0 grey heart 1F90D ; fully-qualified # ๐Ÿค E12.0 white heart + +# subgroup: emotion +1F48B ; fully-qualified # ๐Ÿ’‹ E0.6 kiss mark 1F4AF ; fully-qualified # ๐Ÿ’ฏ E0.6 hundred points 1F4A2 ; fully-qualified # ๐Ÿ’ข E0.6 anger symbol 1F4A5 ; fully-qualified # ๐Ÿ’ฅ E0.6 collision @@ -226,21 +232,20 @@ 1F4A8 ; fully-qualified # ๐Ÿ’จ E0.6 dashing away 1F573 FE0F ; fully-qualified # ๐Ÿ•ณ๏ธ E0.7 hole 1F573 ; unqualified # ๐Ÿ•ณ E0.7 hole -1F4A3 ; fully-qualified # ๐Ÿ’ฃ E0.6 bomb 1F4AC ; fully-qualified # ๐Ÿ’ฌ E0.6 speech balloon 1F441 FE0F 200D 1F5E8 FE0F ; fully-qualified # ๐Ÿ‘๏ธโ€๐Ÿ—จ๏ธ E2.0 eye in speech bubble 1F441 200D 1F5E8 FE0F ; unqualified # ๐Ÿ‘โ€๐Ÿ—จ๏ธ E2.0 eye in speech bubble -1F441 FE0F 200D 1F5E8 ; unqualified # ๐Ÿ‘๏ธโ€๐Ÿ—จ E2.0 eye in speech bubble +1F441 FE0F 200D 1F5E8 ; minimally-qualified # ๐Ÿ‘๏ธโ€๐Ÿ—จ E2.0 eye in speech bubble 1F441 200D 1F5E8 ; unqualified # ๐Ÿ‘โ€๐Ÿ—จ E2.0 eye in speech bubble 1F5E8 FE0F ; fully-qualified # ๐Ÿ—จ๏ธ E2.0 left speech bubble 1F5E8 ; unqualified # ๐Ÿ—จ E2.0 left speech bubble 1F5EF FE0F ; fully-qualified # ๐Ÿ—ฏ๏ธ E0.7 right anger bubble 1F5EF ; unqualified # ๐Ÿ—ฏ E0.7 right anger bubble 1F4AD ; fully-qualified # ๐Ÿ’ญ E1.0 thought balloon -1F4A4 ; fully-qualified # ๐Ÿ’ค E0.6 zzz +1F4A4 ; fully-qualified # ๐Ÿ’ค E0.6 ZZZ -# Smileys & Emotion subtotal: 177 -# Smileys & Emotion subtotal: 177 w/o modifiers +# Smileys & Emotion subtotal: 180 +# Smileys & Emotion subtotal: 180 w/o modifiers # group: People & Body @@ -300,6 +305,18 @@ 1FAF4 1F3FD ; fully-qualified # ๐Ÿซด๐Ÿฝ E14.0 palm up hand: medium skin tone 1FAF4 1F3FE ; fully-qualified # ๐Ÿซด๐Ÿพ E14.0 palm up hand: medium-dark skin tone 1FAF4 1F3FF ; fully-qualified # ๐Ÿซด๐Ÿฟ E14.0 palm up hand: dark skin tone +1FAF7 ; fully-qualified # ๐Ÿซท E15.0 leftwards pushing hand +1FAF7 1F3FB ; fully-qualified # ๐Ÿซท๐Ÿป E15.0 leftwards pushing hand: light skin tone +1FAF7 1F3FC ; fully-qualified # ๐Ÿซท๐Ÿผ E15.0 leftwards pushing hand: medium-light skin tone +1FAF7 1F3FD ; fully-qualified # ๐Ÿซท๐Ÿฝ E15.0 leftwards pushing hand: medium skin tone +1FAF7 1F3FE ; fully-qualified # ๐Ÿซท๐Ÿพ E15.0 leftwards pushing hand: medium-dark skin tone +1FAF7 1F3FF ; fully-qualified # ๐Ÿซท๐Ÿฟ E15.0 leftwards pushing hand: dark skin tone +1FAF8 ; fully-qualified # ๐Ÿซธ E15.0 rightwards pushing hand +1FAF8 1F3FB ; fully-qualified # ๐Ÿซธ๐Ÿป E15.0 rightwards pushing hand: light skin tone +1FAF8 1F3FC ; fully-qualified # ๐Ÿซธ๐Ÿผ E15.0 rightwards pushing hand: medium-light skin tone +1FAF8 1F3FD ; fully-qualified # ๐Ÿซธ๐Ÿฝ E15.0 rightwards pushing hand: medium skin tone +1FAF8 1F3FE ; fully-qualified # ๐Ÿซธ๐Ÿพ E15.0 rightwards pushing hand: medium-dark skin tone +1FAF8 1F3FF ; fully-qualified # ๐Ÿซธ๐Ÿฟ E15.0 rightwards pushing hand: dark skin tone # subgroup: hand-fingers-partial 1F44C ; fully-qualified # ๐Ÿ‘Œ E0.6 OK hand @@ -473,11 +490,11 @@ 1F932 1F3FE ; fully-qualified # ๐Ÿคฒ๐Ÿพ E5.0 palms up together: medium-dark skin tone 1F932 1F3FF ; fully-qualified # ๐Ÿคฒ๐Ÿฟ E5.0 palms up together: dark skin tone 1F91D ; fully-qualified # ๐Ÿค E3.0 handshake -1F91D 1F3FB ; fully-qualified # ๐Ÿค๐Ÿป E3.0 handshake: light skin tone -1F91D 1F3FC ; fully-qualified # ๐Ÿค๐Ÿผ E3.0 handshake: medium-light skin tone -1F91D 1F3FD ; fully-qualified # ๐Ÿค๐Ÿฝ E3.0 handshake: medium skin tone -1F91D 1F3FE ; fully-qualified # ๐Ÿค๐Ÿพ E3.0 handshake: medium-dark skin tone -1F91D 1F3FF ; fully-qualified # ๐Ÿค๐Ÿฟ E3.0 handshake: dark skin tone +1F91D 1F3FB ; fully-qualified # ๐Ÿค๐Ÿป E14.0 handshake: light skin tone +1F91D 1F3FC ; fully-qualified # ๐Ÿค๐Ÿผ E14.0 handshake: medium-light skin tone +1F91D 1F3FD ; fully-qualified # ๐Ÿค๐Ÿฝ E14.0 handshake: medium skin tone +1F91D 1F3FE ; fully-qualified # ๐Ÿค๐Ÿพ E14.0 handshake: medium-dark skin tone +1F91D 1F3FF ; fully-qualified # ๐Ÿค๐Ÿฟ E14.0 handshake: dark skin tone 1FAF1 1F3FB 200D 1FAF2 1F3FC ; fully-qualified # ๐Ÿซฑ๐Ÿปโ€๐Ÿซฒ๐Ÿผ E14.0 handshake: light skin tone, medium-light skin tone 1FAF1 1F3FB 200D 1FAF2 1F3FD ; fully-qualified # ๐Ÿซฑ๐Ÿปโ€๐Ÿซฒ๐Ÿฝ E14.0 handshake: light skin tone, medium skin tone 1FAF1 1F3FB 200D 1FAF2 1F3FE ; fully-qualified # ๐Ÿซฑ๐Ÿปโ€๐Ÿซฒ๐Ÿพ E14.0 handshake: light skin tone, medium-dark skin tone @@ -1455,7 +1472,7 @@ 1F575 1F3FF ; fully-qualified # ๐Ÿ•ต๐Ÿฟ E2.0 detective: dark skin tone 1F575 FE0F 200D 2642 FE0F ; fully-qualified # ๐Ÿ•ต๏ธโ€โ™‚๏ธ E4.0 man detective 1F575 200D 2642 FE0F ; unqualified # ๐Ÿ•ตโ€โ™‚๏ธ E4.0 man detective -1F575 FE0F 200D 2642 ; unqualified # ๐Ÿ•ต๏ธโ€โ™‚ E4.0 man detective +1F575 FE0F 200D 2642 ; minimally-qualified # ๐Ÿ•ต๏ธโ€โ™‚ E4.0 man detective 1F575 200D 2642 ; unqualified # ๐Ÿ•ตโ€โ™‚ E4.0 man detective 1F575 1F3FB 200D 2642 FE0F ; fully-qualified # ๐Ÿ•ต๐Ÿปโ€โ™‚๏ธ E4.0 man detective: light skin tone 1F575 1F3FB 200D 2642 ; minimally-qualified # ๐Ÿ•ต๐Ÿปโ€โ™‚ E4.0 man detective: light skin tone @@ -1469,7 +1486,7 @@ 1F575 1F3FF 200D 2642 ; minimally-qualified # ๐Ÿ•ต๐Ÿฟโ€โ™‚ E4.0 man detective: dark skin tone 1F575 FE0F 200D 2640 FE0F ; fully-qualified # ๐Ÿ•ต๏ธโ€โ™€๏ธ E4.0 woman detective 1F575 200D 2640 FE0F ; unqualified # ๐Ÿ•ตโ€โ™€๏ธ E4.0 woman detective -1F575 FE0F 200D 2640 ; unqualified # ๐Ÿ•ต๏ธโ€โ™€ E4.0 woman detective +1F575 FE0F 200D 2640 ; minimally-qualified # ๐Ÿ•ต๏ธโ€โ™€ E4.0 woman detective 1F575 200D 2640 ; unqualified # ๐Ÿ•ตโ€โ™€ E4.0 woman detective 1F575 1F3FB 200D 2640 FE0F ; fully-qualified # ๐Ÿ•ต๐Ÿปโ€โ™€๏ธ E4.0 woman detective: light skin tone 1F575 1F3FB 200D 2640 ; minimally-qualified # ๐Ÿ•ต๐Ÿปโ€โ™€ E4.0 woman detective: light skin tone @@ -2302,7 +2319,7 @@ 1F3CC 1F3FF ; fully-qualified # ๐ŸŒ๐Ÿฟ E4.0 person golfing: dark skin tone 1F3CC FE0F 200D 2642 FE0F ; fully-qualified # ๐ŸŒ๏ธโ€โ™‚๏ธ E4.0 man golfing 1F3CC 200D 2642 FE0F ; unqualified # ๐ŸŒโ€โ™‚๏ธ E4.0 man golfing -1F3CC FE0F 200D 2642 ; unqualified # ๐ŸŒ๏ธโ€โ™‚ E4.0 man golfing +1F3CC FE0F 200D 2642 ; minimally-qualified # ๐ŸŒ๏ธโ€โ™‚ E4.0 man golfing 1F3CC 200D 2642 ; unqualified # ๐ŸŒโ€โ™‚ E4.0 man golfing 1F3CC 1F3FB 200D 2642 FE0F ; fully-qualified # ๐ŸŒ๐Ÿปโ€โ™‚๏ธ E4.0 man golfing: light skin tone 1F3CC 1F3FB 200D 2642 ; minimally-qualified # ๐ŸŒ๐Ÿปโ€โ™‚ E4.0 man golfing: light skin tone @@ -2316,7 +2333,7 @@ 1F3CC 1F3FF 200D 2642 ; minimally-qualified # ๐ŸŒ๐Ÿฟโ€โ™‚ E4.0 man golfing: dark skin tone 1F3CC FE0F 200D 2640 FE0F ; fully-qualified # ๐ŸŒ๏ธโ€โ™€๏ธ E4.0 woman golfing 1F3CC 200D 2640 FE0F ; unqualified # ๐ŸŒโ€โ™€๏ธ E4.0 woman golfing -1F3CC FE0F 200D 2640 ; unqualified # ๐ŸŒ๏ธโ€โ™€ E4.0 woman golfing +1F3CC FE0F 200D 2640 ; minimally-qualified # ๐ŸŒ๏ธโ€โ™€ E4.0 woman golfing 1F3CC 200D 2640 ; unqualified # ๐ŸŒโ€โ™€ E4.0 woman golfing 1F3CC 1F3FB 200D 2640 FE0F ; fully-qualified # ๐ŸŒ๐Ÿปโ€โ™€๏ธ E4.0 woman golfing: light skin tone 1F3CC 1F3FB 200D 2640 ; minimally-qualified # ๐ŸŒ๐Ÿปโ€โ™€ E4.0 woman golfing: light skin tone @@ -2427,7 +2444,7 @@ 26F9 1F3FF ; fully-qualified # โ›น๐Ÿฟ E2.0 person bouncing ball: dark skin tone 26F9 FE0F 200D 2642 FE0F ; fully-qualified # โ›น๏ธโ€โ™‚๏ธ E4.0 man bouncing ball 26F9 200D 2642 FE0F ; unqualified # โ›นโ€โ™‚๏ธ E4.0 man bouncing ball -26F9 FE0F 200D 2642 ; unqualified # โ›น๏ธโ€โ™‚ E4.0 man bouncing ball +26F9 FE0F 200D 2642 ; minimally-qualified # โ›น๏ธโ€โ™‚ E4.0 man bouncing ball 26F9 200D 2642 ; unqualified # โ›นโ€โ™‚ E4.0 man bouncing ball 26F9 1F3FB 200D 2642 FE0F ; fully-qualified # โ›น๐Ÿปโ€โ™‚๏ธ E4.0 man bouncing ball: light skin tone 26F9 1F3FB 200D 2642 ; minimally-qualified # โ›น๐Ÿปโ€โ™‚ E4.0 man bouncing ball: light skin tone @@ -2441,7 +2458,7 @@ 26F9 1F3FF 200D 2642 ; minimally-qualified # โ›น๐Ÿฟโ€โ™‚ E4.0 man bouncing ball: dark skin tone 26F9 FE0F 200D 2640 FE0F ; fully-qualified # โ›น๏ธโ€โ™€๏ธ E4.0 woman bouncing ball 26F9 200D 2640 FE0F ; unqualified # โ›นโ€โ™€๏ธ E4.0 woman bouncing ball -26F9 FE0F 200D 2640 ; unqualified # โ›น๏ธโ€โ™€ E4.0 woman bouncing ball +26F9 FE0F 200D 2640 ; minimally-qualified # โ›น๏ธโ€โ™€ E4.0 woman bouncing ball 26F9 200D 2640 ; unqualified # โ›นโ€โ™€ E4.0 woman bouncing ball 26F9 1F3FB 200D 2640 FE0F ; fully-qualified # โ›น๐Ÿปโ€โ™€๏ธ E4.0 woman bouncing ball: light skin tone 26F9 1F3FB 200D 2640 ; minimally-qualified # โ›น๐Ÿปโ€โ™€ E4.0 woman bouncing ball: light skin tone @@ -2462,7 +2479,7 @@ 1F3CB 1F3FF ; fully-qualified # ๐Ÿ‹๐Ÿฟ E2.0 person lifting weights: dark skin tone 1F3CB FE0F 200D 2642 FE0F ; fully-qualified # ๐Ÿ‹๏ธโ€โ™‚๏ธ E4.0 man lifting weights 1F3CB 200D 2642 FE0F ; unqualified # ๐Ÿ‹โ€โ™‚๏ธ E4.0 man lifting weights -1F3CB FE0F 200D 2642 ; unqualified # ๐Ÿ‹๏ธโ€โ™‚ E4.0 man lifting weights +1F3CB FE0F 200D 2642 ; minimally-qualified # ๐Ÿ‹๏ธโ€โ™‚ E4.0 man lifting weights 1F3CB 200D 2642 ; unqualified # ๐Ÿ‹โ€โ™‚ E4.0 man lifting weights 1F3CB 1F3FB 200D 2642 FE0F ; fully-qualified # ๐Ÿ‹๐Ÿปโ€โ™‚๏ธ E4.0 man lifting weights: light skin tone 1F3CB 1F3FB 200D 2642 ; minimally-qualified # ๐Ÿ‹๐Ÿปโ€โ™‚ E4.0 man lifting weights: light skin tone @@ -2476,7 +2493,7 @@ 1F3CB 1F3FF 200D 2642 ; minimally-qualified # ๐Ÿ‹๐Ÿฟโ€โ™‚ E4.0 man lifting weights: dark skin tone 1F3CB FE0F 200D 2640 FE0F ; fully-qualified # ๐Ÿ‹๏ธโ€โ™€๏ธ E4.0 woman lifting weights 1F3CB 200D 2640 FE0F ; unqualified # ๐Ÿ‹โ€โ™€๏ธ E4.0 woman lifting weights -1F3CB FE0F 200D 2640 ; unqualified # ๐Ÿ‹๏ธโ€โ™€ E4.0 woman lifting weights +1F3CB FE0F 200D 2640 ; minimally-qualified # ๐Ÿ‹๏ธโ€โ™€ E4.0 woman lifting weights 1F3CB 200D 2640 ; unqualified # ๐Ÿ‹โ€โ™€ E4.0 woman lifting weights 1F3CB 1F3FB 200D 2640 FE0F ; fully-qualified # ๐Ÿ‹๐Ÿปโ€โ™€๏ธ E4.0 woman lifting weights: light skin tone 1F3CB 1F3FB 200D 2640 ; minimally-qualified # ๐Ÿ‹๐Ÿปโ€โ™€ E4.0 woman lifting weights: light skin tone @@ -3262,8 +3279,8 @@ 1FAC2 ; fully-qualified # ๐Ÿซ‚ E13.0 people hugging 1F463 ; fully-qualified # ๐Ÿ‘ฃ E0.6 footprints -# People & Body subtotal: 2986 -# People & Body subtotal: 506 w/o modifiers +# People & Body subtotal: 2998 +# People & Body subtotal: 508 w/o modifiers # group: Component @@ -3306,6 +3323,8 @@ 1F405 ; fully-qualified # ๐Ÿ… E1.0 tiger 1F406 ; fully-qualified # ๐Ÿ† E1.0 leopard 1F434 ; fully-qualified # ๐Ÿด E0.6 horse face +1FACE ; fully-qualified # ๐ŸซŽ E15.0 moose +1FACF ; fully-qualified # ๐Ÿซ E15.0 donkey 1F40E ; fully-qualified # ๐ŸŽ E0.6 horse 1F984 ; fully-qualified # ๐Ÿฆ„ E1.0 unicorn 1F993 ; fully-qualified # ๐Ÿฆ“ E5.0 zebra @@ -3373,6 +3392,9 @@ 1F9A9 ; fully-qualified # ๐Ÿฆฉ E12.0 flamingo 1F99A ; fully-qualified # ๐Ÿฆš E11.0 peacock 1F99C ; fully-qualified # ๐Ÿฆœ E11.0 parrot +1FABD ; fully-qualified # ๐Ÿชฝ E15.0 wing +1F426 200D 2B1B ; fully-qualified # ๐Ÿฆโ€โฌ› E15.0 black bird +1FABF ; fully-qualified # ๐Ÿชฟ E15.0 goose # subgroup: animal-amphibian 1F438 ; fully-qualified # ๐Ÿธ E0.6 frog @@ -3399,6 +3421,7 @@ 1F419 ; fully-qualified # ๐Ÿ™ E0.6 octopus 1F41A ; fully-qualified # ๐Ÿš E0.6 spiral shell 1FAB8 ; fully-qualified # ๐Ÿชธ E14.0 coral +1FABC ; fully-qualified # ๐Ÿชผ E15.0 jellyfish # subgroup: animal-bug 1F40C ; fully-qualified # ๐ŸŒ E0.6 snail @@ -3433,6 +3456,7 @@ 1F33B ; fully-qualified # ๐ŸŒป E0.6 sunflower 1F33C ; fully-qualified # ๐ŸŒผ E0.6 blossom 1F337 ; fully-qualified # ๐ŸŒท E0.6 tulip +1FABB ; fully-qualified # ๐Ÿชป E15.0 hyacinth # subgroup: plant-other 1F331 ; fully-qualified # ๐ŸŒฑ E0.6 seedling @@ -3451,9 +3475,10 @@ 1F343 ; fully-qualified # ๐Ÿƒ E0.6 leaf fluttering in wind 1FAB9 ; fully-qualified # ๐Ÿชน E14.0 empty nest 1FABA ; fully-qualified # ๐Ÿชบ E14.0 nest with eggs +1F344 ; fully-qualified # ๐Ÿ„ E0.6 mushroom -# Animals & Nature subtotal: 151 -# Animals & Nature subtotal: 151 w/o modifiers +# Animals & Nature subtotal: 159 +# Animals & Nature subtotal: 159 w/o modifiers # group: Food & Drink @@ -3492,10 +3517,11 @@ 1F966 ; fully-qualified # ๐Ÿฅฆ E5.0 broccoli 1F9C4 ; fully-qualified # ๐Ÿง„ E12.0 garlic 1F9C5 ; fully-qualified # ๐Ÿง… E12.0 onion -1F344 ; fully-qualified # ๐Ÿ„ E0.6 mushroom 1F95C ; fully-qualified # ๐Ÿฅœ E3.0 peanuts 1FAD8 ; fully-qualified # ๐Ÿซ˜ E14.0 beans 1F330 ; fully-qualified # ๐ŸŒฐ E0.6 chestnut +1FADA ; fully-qualified # ๐Ÿซš E15.0 ginger root +1FADB ; fully-qualified # ๐Ÿซ› E15.0 pea pod # subgroup: food-prepared 1F35E ; fully-qualified # ๐Ÿž E0.6 bread @@ -3607,8 +3633,8 @@ 1FAD9 ; fully-qualified # ๐Ÿซ™ E14.0 jar 1F3FA ; fully-qualified # ๐Ÿบ E1.0 amphora -# Food & Drink subtotal: 134 -# Food & Drink subtotal: 134 w/o modifiers +# Food & Drink subtotal: 135 +# Food & Drink subtotal: 135 w/o modifiers # group: Travel & Places @@ -3974,11 +4000,10 @@ 1F3AF ; fully-qualified # ๐ŸŽฏ E0.6 bullseye 1FA80 ; fully-qualified # ๐Ÿช€ E12.0 yo-yo 1FA81 ; fully-qualified # ๐Ÿช E12.0 kite +1F52B ; fully-qualified # ๐Ÿ”ซ E0.6 water pistol 1F3B1 ; fully-qualified # ๐ŸŽฑ E0.6 pool 8 ball 1F52E ; fully-qualified # ๐Ÿ”ฎ E0.6 crystal ball 1FA84 ; fully-qualified # ๐Ÿช„ E13.0 magic wand -1F9FF ; fully-qualified # ๐Ÿงฟ E11.0 nazar amulet -1FAAC ; fully-qualified # ๐Ÿชฌ E14.0 hamsa 1F3AE ; fully-qualified # ๐ŸŽฎ E0.6 video game 1F579 FE0F ; fully-qualified # ๐Ÿ•น๏ธ E0.7 joystick 1F579 ; unqualified # ๐Ÿ•น E0.7 joystick @@ -4013,8 +4038,8 @@ 1F9F6 ; fully-qualified # ๐Ÿงถ E11.0 yarn 1FAA2 ; fully-qualified # ๐Ÿชข E13.0 knot -# Activities subtotal: 97 -# Activities subtotal: 97 w/o modifiers +# Activities subtotal: 96 +# Activities subtotal: 96 w/o modifiers # group: Objects @@ -4040,6 +4065,7 @@ 1FA73 ; fully-qualified # ๐Ÿฉณ E12.0 shorts 1F459 ; fully-qualified # ๐Ÿ‘™ E0.6 bikini 1F45A ; fully-qualified # ๐Ÿ‘š E0.6 womanโ€™s clothes +1FAAD ; fully-qualified # ๐Ÿชญ E15.0 folding hand fan 1F45B ; fully-qualified # ๐Ÿ‘› E0.6 purse 1F45C ; fully-qualified # ๐Ÿ‘œ E0.6 handbag 1F45D ; fully-qualified # ๐Ÿ‘ E0.6 clutch bag @@ -4055,6 +4081,7 @@ 1F461 ; fully-qualified # ๐Ÿ‘ก E0.6 womanโ€™s sandal 1FA70 ; fully-qualified # ๐Ÿฉฐ E12.0 ballet shoes 1F462 ; fully-qualified # ๐Ÿ‘ข E0.6 womanโ€™s boot +1FAAE ; fully-qualified # ๐Ÿชฎ E15.0 hair pick 1F451 ; fully-qualified # ๐Ÿ‘‘ E0.6 crown 1F452 ; fully-qualified # ๐Ÿ‘’ E0.6 womanโ€™s hat 1F3A9 ; fully-qualified # ๐ŸŽฉ E0.6 top hat @@ -4103,6 +4130,8 @@ 1FA95 ; fully-qualified # ๐Ÿช• E12.0 banjo 1F941 ; fully-qualified # ๐Ÿฅ E3.0 drum 1FA98 ; fully-qualified # ๐Ÿช˜ E13.0 long drum +1FA87 ; fully-qualified # ๐Ÿช‡ E15.0 maracas +1FA88 ; fully-qualified # ๐Ÿชˆ E15.0 flute # subgroup: phone 1F4F1 ; fully-qualified # ๐Ÿ“ฑ E0.6 mobile phone @@ -4275,7 +4304,7 @@ 1F5E1 ; unqualified # ๐Ÿ—ก E0.7 dagger 2694 FE0F ; fully-qualified # โš”๏ธ E1.0 crossed swords 2694 ; unqualified # โš” E1.0 crossed swords -1F52B ; fully-qualified # ๐Ÿ”ซ E0.6 water pistol +1F4A3 ; fully-qualified # ๐Ÿ’ฃ E0.6 bomb 1FA83 ; fully-qualified # ๐Ÿชƒ E13.0 boomerang 1F3F9 ; fully-qualified # ๐Ÿน E1.0 bow and arrow 1F6E1 FE0F ; fully-qualified # ๐Ÿ›ก๏ธ E0.7 shield @@ -4354,12 +4383,14 @@ 1FAA6 ; fully-qualified # ๐Ÿชฆ E13.0 headstone 26B1 FE0F ; fully-qualified # โšฑ๏ธ E1.0 funeral urn 26B1 ; unqualified # โšฑ E1.0 funeral urn +1F9FF ; fully-qualified # ๐Ÿงฟ E11.0 nazar amulet +1FAAC ; fully-qualified # ๐Ÿชฌ E14.0 hamsa 1F5FF ; fully-qualified # ๐Ÿ—ฟ E0.6 moai 1FAA7 ; fully-qualified # ๐Ÿชง E13.0 placard 1FAAA ; fully-qualified # ๐Ÿชช E14.0 identification card -# Objects subtotal: 304 -# Objects subtotal: 304 w/o modifiers +# Objects subtotal: 310 +# Objects subtotal: 310 w/o modifiers # group: Symbols @@ -4455,6 +4486,7 @@ 262E ; unqualified # โ˜ฎ E1.0 peace symbol 1F54E ; fully-qualified # ๐Ÿ•Ž E1.0 menorah 1F52F ; fully-qualified # ๐Ÿ”ฏ E0.6 dotted six-pointed star +1FAAF ; fully-qualified # ๐Ÿชฏ E15.0 khanda # subgroup: zodiac 2648 ; fully-qualified # โ™ˆ E0.6 Aries @@ -4503,6 +4535,7 @@ 1F505 ; fully-qualified # ๐Ÿ”… E1.0 dim button 1F506 ; fully-qualified # ๐Ÿ”† E1.0 bright button 1F4F6 ; fully-qualified # ๐Ÿ“ถ E0.6 antenna bars +1F6DC ; fully-qualified # ๐Ÿ›œ E15.0 wireless 1F4F3 ; fully-qualified # ๐Ÿ“ณ E0.6 vibration mode 1F4F4 ; fully-qualified # ๐Ÿ“ด E0.6 mobile phone off @@ -4693,8 +4726,8 @@ 1F533 ; fully-qualified # ๐Ÿ”ณ E0.6 white square button 1F532 ; fully-qualified # ๐Ÿ”ฒ E0.6 black square button -# Symbols subtotal: 302 -# Symbols subtotal: 302 w/o modifiers +# Symbols subtotal: 304 +# Symbols subtotal: 304 w/o modifiers # group: Flags @@ -4709,7 +4742,7 @@ 1F3F3 200D 1F308 ; unqualified # ๐Ÿณโ€๐ŸŒˆ E4.0 rainbow flag 1F3F3 FE0F 200D 26A7 FE0F ; fully-qualified # ๐Ÿณ๏ธโ€โšง๏ธ E13.0 transgender flag 1F3F3 200D 26A7 FE0F ; unqualified # ๐Ÿณโ€โšง๏ธ E13.0 transgender flag -1F3F3 FE0F 200D 26A7 ; unqualified # ๐Ÿณ๏ธโ€โšง E13.0 transgender flag +1F3F3 FE0F 200D 26A7 ; minimally-qualified # ๐Ÿณ๏ธโ€โšง E13.0 transgender flag 1F3F3 200D 26A7 ; unqualified # ๐Ÿณโ€โšง E13.0 transgender flag 1F3F4 200D 2620 FE0F ; fully-qualified # ๐Ÿดโ€โ˜ ๏ธ E11.0 pirate flag 1F3F4 200D 2620 ; minimally-qualified # ๐Ÿดโ€โ˜  E11.0 pirate flag @@ -4983,9 +5016,9 @@ # Flags subtotal: 275 w/o modifiers # Status Counts -# fully-qualified : 3624 -# minimally-qualified : 817 -# unqualified : 252 +# fully-qualified : 3655 +# minimally-qualified : 827 +# unqualified : 242 # component : 9 #EOF diff --git a/scripts/emoji_codegen.py b/scripts/emoji_codegen.py index a0758454..7e4f4702 100755 --- a/scripts/emoji_codegen.py +++ b/scripts/emoji_codegen.py @@ -13,8 +13,9 @@ class Emoji(object): self.unicodename = unicodename def generate_qml_list(**kwargs): + entrycount = sum([len(c[1]) for c in kwargs.items()]) tmpl = Template(''' -const std::array emoji::Provider::emoji = { +const std::array emoji::Provider::emoji = { {%- for c in kwargs.items() %} // {{ c[0].capitalize() }} {%- for e in c[1] %} @@ -23,7 +24,7 @@ const std::array emoji::P {%- endfor %} }; ''') - d = dict(kwargs=kwargs) + d = dict(kwargs=kwargs, entrycount=entrycount) print(tmpl.render(d)) if __name__ == '__main__': if len(sys.argv) < 3: diff --git a/src/emoji/Provider.cpp b/src/emoji/Provider.cpp index f98e5d34..41c254d8 100644 --- a/src/emoji/Provider.cpp +++ b/src/emoji/Provider.cpp @@ -7,7 +7,7 @@ using namespace emoji; -const std::array emoji::Provider::emoji = { +const std::array emoji::Provider::emoji = { // People Emoji{QStringLiteral(u"\U0001F600"), QStringLiteral(u"grinning"), @@ -205,6 +205,10 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"lying"), QStringLiteral(u"lying face"), emoji::Emoji::Category::People}, + Emoji{QStringLiteral(u"\U0001FAE8"), + QStringLiteral(u"shaking"), + QStringLiteral(u"shaking face"), + emoji::Emoji::Category::People}, Emoji{QStringLiteral(u"\U0001F60C"), QStringLiteral(u"relieved"), QStringLiteral(u"relieved face"), @@ -406,8 +410,8 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"face with steam from nose"), emoji::Emoji::Category::People}, Emoji{QStringLiteral(u"\U0001F621"), - QStringLiteral(u"pouting"), - QStringLiteral(u"pouting face"), + QStringLiteral(u"enraged"), + QStringLiteral(u"enraged face"), emoji::Emoji::Category::People}, Emoji{QStringLiteral(u"\U0001F620"), QStringLiteral(u"angry"), @@ -513,10 +517,6 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"speak_no_evil_monkey"), QStringLiteral(u"speak-no-evil monkey"), emoji::Emoji::Category::People}, - Emoji{QStringLiteral(u"\U0001F48B"), - QStringLiteral(u"kiss_mark"), - QStringLiteral(u"kiss mark"), - emoji::Emoji::Category::People}, Emoji{QStringLiteral(u"\U0001F48C"), QStringLiteral(u"love_letter"), QStringLiteral(u"love letter"), @@ -573,6 +573,10 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"red_heart"), QStringLiteral(u"red heart"), emoji::Emoji::Category::People}, + Emoji{QStringLiteral(u"\U0001FA77"), + QStringLiteral(u"pink_heart"), + QStringLiteral(u"pink heart"), + emoji::Emoji::Category::People}, Emoji{QStringLiteral(u"\U0001F9E1"), QStringLiteral(u"orange_heart"), QStringLiteral(u"orange heart"), @@ -589,6 +593,10 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"blue_heart"), QStringLiteral(u"blue heart"), emoji::Emoji::Category::People}, + Emoji{QStringLiteral(u"\U0001FA75"), + QStringLiteral(u"light_blue_heart"), + QStringLiteral(u"light blue heart"), + emoji::Emoji::Category::People}, Emoji{QStringLiteral(u"\U0001F49C"), QStringLiteral(u"purple_heart"), QStringLiteral(u"purple heart"), @@ -601,10 +609,18 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"black_heart"), QStringLiteral(u"black heart"), emoji::Emoji::Category::People}, + Emoji{QStringLiteral(u"\U0001FA76"), + QStringLiteral(u"grey_heart"), + QStringLiteral(u"grey heart"), + emoji::Emoji::Category::People}, Emoji{QStringLiteral(u"\U0001F90D"), QStringLiteral(u"white_heart"), QStringLiteral(u"white heart"), emoji::Emoji::Category::People}, + Emoji{QStringLiteral(u"\U0001F48B"), + QStringLiteral(u"kiss_mark"), + QStringLiteral(u"kiss mark"), + emoji::Emoji::Category::People}, Emoji{QStringLiteral(u"\U0001F4AF"), QStringLiteral(u"100"), QStringLiteral(u"hundred points"), @@ -633,10 +649,6 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"hole"), QStringLiteral(u"hole"), emoji::Emoji::Category::People}, - Emoji{QStringLiteral(u"\U0001F4A3"), - QStringLiteral(u"bomb"), - QStringLiteral(u"bomb"), - emoji::Emoji::Category::People}, Emoji{QStringLiteral(u"\U0001F4AC"), QStringLiteral(u"speech_balloon"), QStringLiteral(u"speech balloon"), @@ -659,7 +671,7 @@ const std::array emoji::Provider::emoji = { emoji::Emoji::Category::People}, Emoji{QStringLiteral(u"\U0001F4A4"), QStringLiteral(u"zzz"), - QStringLiteral(u"zzz"), + QStringLiteral(u"ZZZ"), emoji::Emoji::Category::People}, Emoji{QStringLiteral(u"\U0001F44B"), QStringLiteral(u"wave"), @@ -877,6 +889,54 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"palm_up_hand_dark_skin_tone"), QStringLiteral(u"palm up hand: dark skin tone"), emoji::Emoji::Category::People}, + Emoji{QStringLiteral(u"\U0001FAF7"), + QStringLiteral(u"leftwards_pushing_hand"), + QStringLiteral(u"leftwards pushing hand"), + emoji::Emoji::Category::People}, + Emoji{QStringLiteral(u"\U0001FAF7\U0001F3FB"), + QStringLiteral(u"leftwards_pushing_hand_light_skin_tone"), + QStringLiteral(u"leftwards pushing hand: light skin tone"), + emoji::Emoji::Category::People}, + Emoji{QStringLiteral(u"\U0001FAF7\U0001F3FC"), + QStringLiteral(u"leftwards_pushing_hand_medium_light_skin_tone"), + QStringLiteral(u"leftwards pushing hand: medium-light skin tone"), + emoji::Emoji::Category::People}, + Emoji{QStringLiteral(u"\U0001FAF7\U0001F3FD"), + QStringLiteral(u"leftwards_pushing_hand_medium_skin_tone"), + QStringLiteral(u"leftwards pushing hand: medium skin tone"), + emoji::Emoji::Category::People}, + Emoji{QStringLiteral(u"\U0001FAF7\U0001F3FE"), + QStringLiteral(u"leftwards_pushing_hand_medium_dark_skin_tone"), + QStringLiteral(u"leftwards pushing hand: medium-dark skin tone"), + emoji::Emoji::Category::People}, + Emoji{QStringLiteral(u"\U0001FAF7\U0001F3FF"), + QStringLiteral(u"leftwards_pushing_hand_dark_skin_tone"), + QStringLiteral(u"leftwards pushing hand: dark skin tone"), + emoji::Emoji::Category::People}, + Emoji{QStringLiteral(u"\U0001FAF8"), + QStringLiteral(u"rightwards_pushing_hand"), + QStringLiteral(u"rightwards pushing hand"), + emoji::Emoji::Category::People}, + Emoji{QStringLiteral(u"\U0001FAF8\U0001F3FB"), + QStringLiteral(u"rightwards_pushing_hand_light_skin_tone"), + QStringLiteral(u"rightwards pushing hand: light skin tone"), + emoji::Emoji::Category::People}, + Emoji{QStringLiteral(u"\U0001FAF8\U0001F3FC"), + QStringLiteral(u"rightwards_pushing_hand_medium_light_skin_tone"), + QStringLiteral(u"rightwards pushing hand: medium-light skin tone"), + emoji::Emoji::Category::People}, + Emoji{QStringLiteral(u"\U0001FAF8\U0001F3FD"), + QStringLiteral(u"rightwards_pushing_hand_medium_skin_tone"), + QStringLiteral(u"rightwards pushing hand: medium skin tone"), + emoji::Emoji::Category::People}, + Emoji{QStringLiteral(u"\U0001FAF8\U0001F3FE"), + QStringLiteral(u"rightwards_pushing_hand_medium_dark_skin_tone"), + QStringLiteral(u"rightwards pushing hand: medium-dark skin tone"), + emoji::Emoji::Category::People}, + Emoji{QStringLiteral(u"\U0001FAF8\U0001F3FF"), + QStringLiteral(u"rightwards_pushing_hand_dark_skin_tone"), + QStringLiteral(u"rightwards pushing hand: dark skin tone"), + emoji::Emoji::Category::People}, Emoji{QStringLiteral(u"\U0001F44C"), QStringLiteral(u"ok_hand"), QStringLiteral(u"OK hand"), @@ -9505,6 +9565,14 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"horse"), QStringLiteral(u"horse face"), emoji::Emoji::Category::Nature}, + Emoji{QStringLiteral(u"\U0001FACE"), + QStringLiteral(u"moose"), + QStringLiteral(u"moose"), + emoji::Emoji::Category::Nature}, + Emoji{QStringLiteral(u"\U0001FACF"), + QStringLiteral(u"donkey"), + QStringLiteral(u"donkey"), + emoji::Emoji::Category::Nature}, Emoji{QStringLiteral(u"\U0001F40E"), QStringLiteral(u"horse"), QStringLiteral(u"horse"), @@ -9753,6 +9821,18 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"parrot"), QStringLiteral(u"parrot"), emoji::Emoji::Category::Nature}, + Emoji{QStringLiteral(u"\U0001FABD"), + QStringLiteral(u"wing"), + QStringLiteral(u"wing"), + emoji::Emoji::Category::Nature}, + Emoji{QStringLiteral(u"\U0001F426\U0000200D\U00002B1B"), + QStringLiteral(u"black_bird"), + QStringLiteral(u"black bird"), + emoji::Emoji::Category::Nature}, + Emoji{QStringLiteral(u"\U0001FABF"), + QStringLiteral(u"goose"), + QStringLiteral(u"goose"), + emoji::Emoji::Category::Nature}, Emoji{QStringLiteral(u"\U0001F438"), QStringLiteral(u"frog"), QStringLiteral(u"frog"), @@ -9833,6 +9913,10 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"coral"), QStringLiteral(u"coral"), emoji::Emoji::Category::Nature}, + Emoji{QStringLiteral(u"\U0001FABC"), + QStringLiteral(u"jellyfish"), + QStringLiteral(u"jellyfish"), + emoji::Emoji::Category::Nature}, Emoji{QStringLiteral(u"\U0001F40C"), QStringLiteral(u"snail"), QStringLiteral(u"snail"), @@ -9941,6 +10025,10 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"tulip"), QStringLiteral(u"tulip"), emoji::Emoji::Category::Nature}, + Emoji{QStringLiteral(u"\U0001FABB"), + QStringLiteral(u"hyacinth"), + QStringLiteral(u"hyacinth"), + emoji::Emoji::Category::Nature}, Emoji{QStringLiteral(u"\U0001F331"), QStringLiteral(u"seedling"), QStringLiteral(u"seedling"), @@ -10001,6 +10089,10 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"nest_with_eggs"), QStringLiteral(u"nest with eggs"), emoji::Emoji::Category::Nature}, + Emoji{QStringLiteral(u"\U0001F344"), + QStringLiteral(u"mushroom"), + QStringLiteral(u"mushroom"), + emoji::Emoji::Category::Nature}, // Food Emoji{QStringLiteral(u"\U0001F347"), QStringLiteral(u"grapes"), @@ -10126,10 +10218,6 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"onion"), QStringLiteral(u"onion"), emoji::Emoji::Category::Food}, - Emoji{QStringLiteral(u"\U0001F344"), - QStringLiteral(u"mushroom"), - QStringLiteral(u"mushroom"), - emoji::Emoji::Category::Food}, Emoji{QStringLiteral(u"\U0001F95C"), QStringLiteral(u"peanuts"), QStringLiteral(u"peanuts"), @@ -10142,6 +10230,14 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"chestnut"), QStringLiteral(u"chestnut"), emoji::Emoji::Category::Food}, + Emoji{QStringLiteral(u"\U0001FADA"), + QStringLiteral(u"ginger_root"), + QStringLiteral(u"ginger root"), + emoji::Emoji::Category::Food}, + Emoji{QStringLiteral(u"\U0001FADB"), + QStringLiteral(u"pea_pod"), + QStringLiteral(u"pea pod"), + emoji::Emoji::Category::Food}, Emoji{QStringLiteral(u"\U0001F35E"), QStringLiteral(u"bread"), QStringLiteral(u"bread"), @@ -10759,6 +10855,10 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"kite"), QStringLiteral(u"kite"), emoji::Emoji::Category::Activity}, + Emoji{QStringLiteral(u"\U0001F52B"), + QStringLiteral(u"water_pistol"), + QStringLiteral(u"water pistol"), + emoji::Emoji::Category::Activity}, Emoji{QStringLiteral(u"\U0001F3B1"), QStringLiteral(u"pool_8_ball"), QStringLiteral(u"pool 8 ball"), @@ -10771,14 +10871,6 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"magic_wand"), QStringLiteral(u"magic wand"), emoji::Emoji::Category::Activity}, - Emoji{QStringLiteral(u"\U0001F9FF"), - QStringLiteral(u"nazar_amulet"), - QStringLiteral(u"nazar amulet"), - emoji::Emoji::Category::Activity}, - Emoji{QStringLiteral(u"\U0001FAAC"), - QStringLiteral(u"hamsa"), - QStringLiteral(u"hamsa"), - emoji::Emoji::Category::Activity}, Emoji{QStringLiteral(u"\U0001F3AE"), QStringLiteral(u"video_game"), QStringLiteral(u"video game"), @@ -11829,6 +11921,10 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"woman_s_clothes"), QStringLiteral(u"womanโ€™s clothes"), emoji::Emoji::Category::Objects}, + Emoji{QStringLiteral(u"\U0001FAAD"), + QStringLiteral(u"folding_hand_fan"), + QStringLiteral(u"folding hand fan"), + emoji::Emoji::Category::Objects}, Emoji{QStringLiteral(u"\U0001F45B"), QStringLiteral(u"purse"), QStringLiteral(u"purse"), @@ -11885,6 +11981,10 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"woman_s_boot"), QStringLiteral(u"womanโ€™s boot"), emoji::Emoji::Category::Objects}, + Emoji{QStringLiteral(u"\U0001FAAE"), + QStringLiteral(u"hair_pick"), + QStringLiteral(u"hair pick"), + emoji::Emoji::Category::Objects}, Emoji{QStringLiteral(u"\U0001F451"), QStringLiteral(u"crown"), QStringLiteral(u"crown"), @@ -12037,6 +12137,14 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"long_drum"), QStringLiteral(u"long drum"), emoji::Emoji::Category::Objects}, + Emoji{QStringLiteral(u"\U0001FA87"), + QStringLiteral(u"maracas"), + QStringLiteral(u"maracas"), + emoji::Emoji::Category::Objects}, + Emoji{QStringLiteral(u"\U0001FA88"), + QStringLiteral(u"flute"), + QStringLiteral(u"flute"), + emoji::Emoji::Category::Objects}, Emoji{QStringLiteral(u"\U0001F4F1"), QStringLiteral(u"mobile_phone"), QStringLiteral(u"mobile phone"), @@ -12513,9 +12621,9 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"crossed_swords"), QStringLiteral(u"crossed swords"), emoji::Emoji::Category::Objects}, - Emoji{QStringLiteral(u"\U0001F52B"), - QStringLiteral(u"water_pistol"), - QStringLiteral(u"water pistol"), + Emoji{QStringLiteral(u"\U0001F4A3"), + QStringLiteral(u"bomb"), + QStringLiteral(u"bomb"), emoji::Emoji::Category::Objects}, Emoji{QStringLiteral(u"\U0001FA83"), QStringLiteral(u"boomerang"), @@ -12757,6 +12865,14 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"funeral_urn"), QStringLiteral(u"funeral urn"), emoji::Emoji::Category::Objects}, + Emoji{QStringLiteral(u"\U0001F9FF"), + QStringLiteral(u"nazar_amulet"), + QStringLiteral(u"nazar amulet"), + emoji::Emoji::Category::Objects}, + Emoji{QStringLiteral(u"\U0001FAAC"), + QStringLiteral(u"hamsa"), + QStringLiteral(u"hamsa"), + emoji::Emoji::Category::Objects}, Emoji{QStringLiteral(u"\U0001F5FF"), QStringLiteral(u"moai"), QStringLiteral(u"moai"), @@ -12770,110 +12886,6 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"identification card"), emoji::Emoji::Category::Objects}, // Symbols - Emoji{QStringLiteral(u"\U0000200C\U0001F1E6\U0000200C"), - QStringLiteral(u"regional_indicator_a"), - QStringLiteral(u"regional indicator a"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1E7\U0000200C"), - QStringLiteral(u"regional_indicator_b"), - QStringLiteral(u"regional indicator b"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1E8\U0000200C"), - QStringLiteral(u"regional_indicator_c"), - QStringLiteral(u"regional indicator c"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1E9\U0000200C"), - QStringLiteral(u"regional_indicator_d"), - QStringLiteral(u"regional indicator d"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1EA\U0000200C"), - QStringLiteral(u"regional_indicator_e"), - QStringLiteral(u"regional indicator e"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1EB\U0000200C"), - QStringLiteral(u"regional_indicator_f"), - QStringLiteral(u"regional indicator f"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1EC\U0000200C"), - QStringLiteral(u"regional_indicator_g"), - QStringLiteral(u"regional indicator g"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1ED\U0000200C"), - QStringLiteral(u"regional_indicator_h"), - QStringLiteral(u"regional indicator h"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1EE\U0000200C"), - QStringLiteral(u"regional_indicator_i"), - QStringLiteral(u"regional indicator i"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1EF\U0000200C"), - QStringLiteral(u"regional_indicator_j"), - QStringLiteral(u"regional indicator j"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1F0\U0000200C"), - QStringLiteral(u"regional_indicator_k"), - QStringLiteral(u"regional indicator k"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1F1\U0000200C"), - QStringLiteral(u"regional_indicator_l"), - QStringLiteral(u"regional indicator l"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1F2\U0000200C"), - QStringLiteral(u"regional_indicator_m"), - QStringLiteral(u"regional indicator m"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1F3\U0000200C"), - QStringLiteral(u"regional_indicator_n"), - QStringLiteral(u"regional indicator n"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1F4\U0000200C"), - QStringLiteral(u"regional_indicator_o"), - QStringLiteral(u"regional indicator o"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1F5\U0000200C"), - QStringLiteral(u"regional_indicator_p"), - QStringLiteral(u"regional indicator p"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1F6\U0000200C"), - QStringLiteral(u"regional_indicator_q"), - QStringLiteral(u"regional indicator q"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1F7\U0000200C"), - QStringLiteral(u"regional_indicator_r"), - QStringLiteral(u"regional indicator r"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1F8\U0000200C"), - QStringLiteral(u"regional_indicator_s"), - QStringLiteral(u"regional indicator s"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1F9\U0000200C"), - QStringLiteral(u"regional_indicator_t"), - QStringLiteral(u"regional indicator t"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1FA\U0000200C"), - QStringLiteral(u"regional_indicator_u"), - QStringLiteral(u"regional indicator u"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1FB\U0000200C"), - QStringLiteral(u"regional_indicator_v"), - QStringLiteral(u"regional indicator v"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1FC\U0000200C"), - QStringLiteral(u"regional_indicator_w"), - QStringLiteral(u"regional indicator w"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1FD\U0000200C"), - QStringLiteral(u"regional_indicator_x"), - QStringLiteral(u"regional indicator x"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1FE\U0000200C"), - QStringLiteral(u"regional_indicator_y"), - QStringLiteral(u"regional indicator y"), - emoji::Emoji::Category::Symbols}, - Emoji{QStringLiteral(u"\U0000200C\U0001F1FF\U0000200C"), - QStringLiteral(u"regional_indicator_z"), - QStringLiteral(u"regional indicator z"), - emoji::Emoji::Category::Symbols}, Emoji{QStringLiteral(u"\U0001F3E7"), QStringLiteral(u"atm_sign"), QStringLiteral(u"ATM sign"), @@ -13110,6 +13122,10 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"dotted_six_pointed_star"), QStringLiteral(u"dotted six-pointed star"), emoji::Emoji::Category::Symbols}, + Emoji{QStringLiteral(u"\U0001FAAF"), + QStringLiteral(u"khanda"), + QStringLiteral(u"khanda"), + emoji::Emoji::Category::Symbols}, Emoji{QStringLiteral(u"\U00002648"), QStringLiteral(u"aries"), QStringLiteral(u"Aries"), @@ -13250,6 +13266,10 @@ const std::array emoji::Provider::emoji = { QStringLiteral(u"antenna_bars"), QStringLiteral(u"antenna bars"), emoji::Emoji::Category::Symbols}, + Emoji{QStringLiteral(u"\U0001F6DC"), + QStringLiteral(u"wireless"), + QStringLiteral(u"wireless"), + emoji::Emoji::Category::Symbols}, Emoji{QStringLiteral(u"\U0001F4F3"), QStringLiteral(u"vibration_mode"), QStringLiteral(u"vibration mode"), diff --git a/src/emoji/Provider.h b/src/emoji/Provider.h index 566c53a0..32544793 100644 --- a/src/emoji/Provider.h +++ b/src/emoji/Provider.h @@ -46,7 +46,7 @@ class Provider { public: // all emoji for QML purposes - static const std::array emoji; + static const std::array emoji; }; } // namespace emoji