aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2022-11-26 20:50:41 +0100
committerdec05eba <dec05eba@protonmail.com>2022-11-26 20:50:41 +0100
commite12e7e960ee36607f6107a28c0935e8c2a006632 (patch)
tree35b1d372948344103679a1c1ae4f7a1b3b2b7776
parentc5f465fe6c04afa26fd20ca600457d8de50cf42e (diff)
Support more emoji
-rw-r--r--TODO3
-rwxr-xr-xgenerate-emoji-sequences.py2
-rw-r--r--generated/Emoji.cpp251
-rw-r--r--src/Text.cpp3
4 files changed, 257 insertions, 2 deletions
diff --git a/TODO b/TODO
index d6f8594..0a0f880 100644
--- a/TODO
+++ b/TODO
@@ -250,4 +250,5 @@ Use matrix /sync "since" param. Its beneficial even to quickmedia because synaps
allow navigating to cross-post/dead thread with ctrl+i, fallback to 4chan archive if thread is dead, allow navigating to thread post in the same thread as well using archive to bring the post back alive, revive deleted images using archive.
Add option to open youtube/4chan links in a new instance of quickmedia (maybe with ctrl+enter?).
AAAAA Resizing 4chan post with no images but with replies (reactions) gives incorrect body item height compared to the rendered height.
-Some mangadex chapter images are .webp files, such as the images for chapter 0 for "the lolicon killer". Quickmedia doesn't work for that because quickmedia doesn't support manga webp files. Fix that. \ No newline at end of file
+Some mangadex chapter images are .webp files, such as the images for chapter 0 for "the lolicon killer". Quickmedia doesn't work for that because quickmedia doesn't support manga webp files. Fix that.
+Fully support all emoji, including the minimally-qualified ones. Sometimes twemoji doesn't have the correct sequence images. \ No newline at end of file
diff --git a/generate-emoji-sequences.py b/generate-emoji-sequences.py
index b796548..5239d81 100755
--- a/generate-emoji-sequences.py
+++ b/generate-emoji-sequences.py
@@ -9,7 +9,7 @@ all_sequences = []
longest_sequence = 0
for line in response.text.splitlines(False):
- if len(line) == 0 or line[0] == '#' or line.find("fully-qualified") == -1:
+ if len(line) == 0 or line[0] == '#' or line.find("minimally-qualified") != -1:
continue
columns = line.split(";")
diff --git a/generated/Emoji.cpp b/generated/Emoji.cpp
index 5156ba8..0437a07 100644
--- a/generated/Emoji.cpp
+++ b/generated/Emoji.cpp
@@ -27,6 +27,7 @@ namespace QuickMedia {
{ 0x1f618, { } },
{ 0x1f617, { } },
{ 0x263a, { 0xfe0f } },
+ { 0x263a, { } },
{ 0x1f61a, { } },
{ 0x1f619, { } },
{ 0x1f972, { } },
@@ -85,6 +86,7 @@ namespace QuickMedia {
{ 0x1f61f, { } },
{ 0x1f641, { } },
{ 0x2639, { 0xfe0f } },
+ { 0x2639, { } },
{ 0x1f62e, { } },
{ 0x1f62f, { } },
{ 0x1f632, { } },
@@ -114,6 +116,7 @@ namespace QuickMedia {
{ 0x1f47f, { } },
{ 0x1f480, { } },
{ 0x2620, { 0xfe0f } },
+ { 0x2620, { } },
{ 0x1f4a9, { } },
{ 0x1f921, { } },
{ 0x1f479, { } },
@@ -144,10 +147,14 @@ namespace QuickMedia {
{ 0x1f495, { } },
{ 0x1f49f, { } },
{ 0x2763, { 0xfe0f } },
+ { 0x2763, { } },
{ 0x1f494, { } },
{ 0x2764, { 0xfe0f, 0x200d, 0x1f525 } },
+ { 0x2764, { 0x200d, 0x1f525 } },
{ 0x2764, { 0xfe0f, 0x200d, 0x1fa79 } },
+ { 0x2764, { 0x200d, 0x1fa79 } },
{ 0x2764, { 0xfe0f } },
+ { 0x2764, { } },
{ 0x1fa77, { } },
{ 0x1f9e1, { } },
{ 0x1f49b, { } },
@@ -167,10 +174,15 @@ namespace QuickMedia {
{ 0x1f4a6, { } },
{ 0x1f4a8, { } },
{ 0x1f573, { 0xfe0f } },
+ { 0x1f573, { } },
{ 0x1f4ac, { } },
{ 0x1f441, { 0xfe0f, 0x200d, 0x1f5e8, 0xfe0f } },
+ { 0x1f441, { 0x200d, 0x1f5e8, 0xfe0f } },
+ { 0x1f441, { 0x200d, 0x1f5e8 } },
{ 0x1f5e8, { 0xfe0f } },
+ { 0x1f5e8, { } },
{ 0x1f5ef, { 0xfe0f } },
+ { 0x1f5ef, { } },
{ 0x1f4ad, { } },
{ 0x1f4a4, { } },
{ 0x1f44b, { } },
@@ -186,6 +198,7 @@ namespace QuickMedia {
{ 0x1f91a, { 0x1f3fe } },
{ 0x1f91a, { 0x1f3ff } },
{ 0x1f590, { 0xfe0f } },
+ { 0x1f590, { } },
{ 0x1f590, { 0x1f3fb } },
{ 0x1f590, { 0x1f3fc } },
{ 0x1f590, { 0x1f3fd } },
@@ -258,6 +271,7 @@ namespace QuickMedia {
{ 0x1f90f, { 0x1f3fe } },
{ 0x1f90f, { 0x1f3ff } },
{ 0x270c, { 0xfe0f } },
+ { 0x270c, { } },
{ 0x270c, { 0x1f3fb } },
{ 0x270c, { 0x1f3fc } },
{ 0x270c, { 0x1f3fd } },
@@ -324,6 +338,7 @@ namespace QuickMedia {
{ 0x1f447, { 0x1f3fe } },
{ 0x1f447, { 0x1f3ff } },
{ 0x261d, { 0xfe0f } },
+ { 0x261d, { } },
{ 0x261d, { 0x1f3fb } },
{ 0x261d, { 0x1f3fc } },
{ 0x261d, { 0x1f3fd } },
@@ -434,6 +449,7 @@ namespace QuickMedia {
{ 0x1f64f, { 0x1f3fe } },
{ 0x1f64f, { 0x1f3ff } },
{ 0x270d, { 0xfe0f } },
+ { 0x270d, { } },
{ 0x270d, { 0x1f3fb } },
{ 0x270d, { 0x1f3fc } },
{ 0x270d, { 0x1f3fd } },
@@ -496,6 +512,7 @@ namespace QuickMedia {
{ 0x1f9b4, { } },
{ 0x1f440, { } },
{ 0x1f441, { 0xfe0f } },
+ { 0x1f441, { } },
{ 0x1f445, { } },
{ 0x1f444, { } },
{ 0x1fae6, { } },
@@ -1154,18 +1171,23 @@ namespace QuickMedia {
{ 0x1f46e, { 0x1f3fe, 0x200d, 0x2640, 0xfe0f } },
{ 0x1f46e, { 0x1f3ff, 0x200d, 0x2640, 0xfe0f } },
{ 0x1f575, { 0xfe0f } },
+ { 0x1f575, { } },
{ 0x1f575, { 0x1f3fb } },
{ 0x1f575, { 0x1f3fc } },
{ 0x1f575, { 0x1f3fd } },
{ 0x1f575, { 0x1f3fe } },
{ 0x1f575, { 0x1f3ff } },
{ 0x1f575, { 0xfe0f, 0x200d, 0x2642, 0xfe0f } },
+ { 0x1f575, { 0x200d, 0x2642, 0xfe0f } },
+ { 0x1f575, { 0x200d, 0x2642 } },
{ 0x1f575, { 0x1f3fb, 0x200d, 0x2642, 0xfe0f } },
{ 0x1f575, { 0x1f3fc, 0x200d, 0x2642, 0xfe0f } },
{ 0x1f575, { 0x1f3fd, 0x200d, 0x2642, 0xfe0f } },
{ 0x1f575, { 0x1f3fe, 0x200d, 0x2642, 0xfe0f } },
{ 0x1f575, { 0x1f3ff, 0x200d, 0x2642, 0xfe0f } },
{ 0x1f575, { 0xfe0f, 0x200d, 0x2640, 0xfe0f } },
+ { 0x1f575, { 0x200d, 0x2640, 0xfe0f } },
+ { 0x1f575, { 0x200d, 0x2640 } },
{ 0x1f575, { 0x1f3fb, 0x200d, 0x2640, 0xfe0f } },
{ 0x1f575, { 0x1f3fc, 0x200d, 0x2640, 0xfe0f } },
{ 0x1f575, { 0x1f3fd, 0x200d, 0x2640, 0xfe0f } },
@@ -1671,6 +1693,7 @@ namespace QuickMedia {
{ 0x1f57a, { 0x1f3fe } },
{ 0x1f57a, { 0x1f3ff } },
{ 0x1f574, { 0xfe0f } },
+ { 0x1f574, { } },
{ 0x1f574, { 0x1f3fb } },
{ 0x1f574, { 0x1f3fc } },
{ 0x1f574, { 0x1f3fd } },
@@ -1723,6 +1746,7 @@ namespace QuickMedia {
{ 0x1f3c7, { 0x1f3fe } },
{ 0x1f3c7, { 0x1f3ff } },
{ 0x26f7, { 0xfe0f } },
+ { 0x26f7, { } },
{ 0x1f3c2, { } },
{ 0x1f3c2, { 0x1f3fb } },
{ 0x1f3c2, { 0x1f3fc } },
@@ -1730,18 +1754,23 @@ namespace QuickMedia {
{ 0x1f3c2, { 0x1f3fe } },
{ 0x1f3c2, { 0x1f3ff } },
{ 0x1f3cc, { 0xfe0f } },
+ { 0x1f3cc, { } },
{ 0x1f3cc, { 0x1f3fb } },
{ 0x1f3cc, { 0x1f3fc } },
{ 0x1f3cc, { 0x1f3fd } },
{ 0x1f3cc, { 0x1f3fe } },
{ 0x1f3cc, { 0x1f3ff } },
{ 0x1f3cc, { 0xfe0f, 0x200d, 0x2642, 0xfe0f } },
+ { 0x1f3cc, { 0x200d, 0x2642, 0xfe0f } },
+ { 0x1f3cc, { 0x200d, 0x2642 } },
{ 0x1f3cc, { 0x1f3fb, 0x200d, 0x2642, 0xfe0f } },
{ 0x1f3cc, { 0x1f3fc, 0x200d, 0x2642, 0xfe0f } },
{ 0x1f3cc, { 0x1f3fd, 0x200d, 0x2642, 0xfe0f } },
{ 0x1f3cc, { 0x1f3fe, 0x200d, 0x2642, 0xfe0f } },
{ 0x1f3cc, { 0x1f3ff, 0x200d, 0x2642, 0xfe0f } },
{ 0x1f3cc, { 0xfe0f, 0x200d, 0x2640, 0xfe0f } },
+ { 0x1f3cc, { 0x200d, 0x2640, 0xfe0f } },
+ { 0x1f3cc, { 0x200d, 0x2640 } },
{ 0x1f3cc, { 0x1f3fb, 0x200d, 0x2640, 0xfe0f } },
{ 0x1f3cc, { 0x1f3fc, 0x200d, 0x2640, 0xfe0f } },
{ 0x1f3cc, { 0x1f3fd, 0x200d, 0x2640, 0xfe0f } },
@@ -1802,36 +1831,46 @@ namespace QuickMedia {
{ 0x1f3ca, { 0x1f3fe, 0x200d, 0x2640, 0xfe0f } },
{ 0x1f3ca, { 0x1f3ff, 0x200d, 0x2640, 0xfe0f } },
{ 0x26f9, { 0xfe0f } },
+ { 0x26f9, { } },
{ 0x26f9, { 0x1f3fb } },
{ 0x26f9, { 0x1f3fc } },
{ 0x26f9, { 0x1f3fd } },
{ 0x26f9, { 0x1f3fe } },
{ 0x26f9, { 0x1f3ff } },
{ 0x26f9, { 0xfe0f, 0x200d, 0x2642, 0xfe0f } },
+ { 0x26f9, { 0x200d, 0x2642, 0xfe0f } },
+ { 0x26f9, { 0x200d, 0x2642 } },
{ 0x26f9, { 0x1f3fb, 0x200d, 0x2642, 0xfe0f } },
{ 0x26f9, { 0x1f3fc, 0x200d, 0x2642, 0xfe0f } },
{ 0x26f9, { 0x1f3fd, 0x200d, 0x2642, 0xfe0f } },
{ 0x26f9, { 0x1f3fe, 0x200d, 0x2642, 0xfe0f } },
{ 0x26f9, { 0x1f3ff, 0x200d, 0x2642, 0xfe0f } },
{ 0x26f9, { 0xfe0f, 0x200d, 0x2640, 0xfe0f } },
+ { 0x26f9, { 0x200d, 0x2640, 0xfe0f } },
+ { 0x26f9, { 0x200d, 0x2640 } },
{ 0x26f9, { 0x1f3fb, 0x200d, 0x2640, 0xfe0f } },
{ 0x26f9, { 0x1f3fc, 0x200d, 0x2640, 0xfe0f } },
{ 0x26f9, { 0x1f3fd, 0x200d, 0x2640, 0xfe0f } },
{ 0x26f9, { 0x1f3fe, 0x200d, 0x2640, 0xfe0f } },
{ 0x26f9, { 0x1f3ff, 0x200d, 0x2640, 0xfe0f } },
{ 0x1f3cb, { 0xfe0f } },
+ { 0x1f3cb, { } },
{ 0x1f3cb, { 0x1f3fb } },
{ 0x1f3cb, { 0x1f3fc } },
{ 0x1f3cb, { 0x1f3fd } },
{ 0x1f3cb, { 0x1f3fe } },
{ 0x1f3cb, { 0x1f3ff } },
{ 0x1f3cb, { 0xfe0f, 0x200d, 0x2642, 0xfe0f } },
+ { 0x1f3cb, { 0x200d, 0x2642, 0xfe0f } },
+ { 0x1f3cb, { 0x200d, 0x2642 } },
{ 0x1f3cb, { 0x1f3fb, 0x200d, 0x2642, 0xfe0f } },
{ 0x1f3cb, { 0x1f3fc, 0x200d, 0x2642, 0xfe0f } },
{ 0x1f3cb, { 0x1f3fd, 0x200d, 0x2642, 0xfe0f } },
{ 0x1f3cb, { 0x1f3fe, 0x200d, 0x2642, 0xfe0f } },
{ 0x1f3cb, { 0x1f3ff, 0x200d, 0x2642, 0xfe0f } },
{ 0x1f3cb, { 0xfe0f, 0x200d, 0x2640, 0xfe0f } },
+ { 0x1f3cb, { 0x200d, 0x2640, 0xfe0f } },
+ { 0x1f3cb, { 0x200d, 0x2640 } },
{ 0x1f3cb, { 0x1f3fb, 0x200d, 0x2640, 0xfe0f } },
{ 0x1f3cb, { 0x1f3fc, 0x200d, 0x2640, 0xfe0f } },
{ 0x1f3cb, { 0x1f3fd, 0x200d, 0x2640, 0xfe0f } },
@@ -2317,10 +2356,20 @@ namespace QuickMedia {
{ 0x1f469, { 0x200d, 0x1f467, 0x200d, 0x1f466 } },
{ 0x1f469, { 0x200d, 0x1f467, 0x200d, 0x1f467 } },
{ 0x1f5e3, { 0xfe0f } },
+ { 0x1f5e3, { } },
{ 0x1f464, { } },
{ 0x1f465, { } },
{ 0x1fac2, { } },
{ 0x1f463, { } },
+ { 0x1f3fb, { } },
+ { 0x1f3fc, { } },
+ { 0x1f3fd, { } },
+ { 0x1f3fe, { } },
+ { 0x1f3ff, { } },
+ { 0x1f9b0, { } },
+ { 0x1f9b1, { } },
+ { 0x1f9b3, { } },
+ { 0x1f9b2, { } },
{ 0x1f435, { } },
{ 0x1f412, { } },
{ 0x1f98d, { } },
@@ -2374,6 +2423,7 @@ namespace QuickMedia {
{ 0x1f430, { } },
{ 0x1f407, { } },
{ 0x1f43f, { 0xfe0f } },
+ { 0x1f43f, { } },
{ 0x1f9ab, { } },
{ 0x1f994, { } },
{ 0x1f987, { } },
@@ -2396,6 +2446,7 @@ namespace QuickMedia {
{ 0x1f426, { } },
{ 0x1f427, { } },
{ 0x1f54a, { 0xfe0f } },
+ { 0x1f54a, { } },
{ 0x1f985, { } },
{ 0x1f986, { } },
{ 0x1f9a2, { } },
@@ -2439,7 +2490,9 @@ namespace QuickMedia {
{ 0x1f997, { } },
{ 0x1fab3, { } },
{ 0x1f577, { 0xfe0f } },
+ { 0x1f577, { } },
{ 0x1f578, { 0xfe0f } },
+ { 0x1f578, { } },
{ 0x1f982, { } },
{ 0x1f99f, { } },
{ 0x1fab0, { } },
@@ -2450,6 +2503,7 @@ namespace QuickMedia {
{ 0x1f4ae, { } },
{ 0x1fab7, { } },
{ 0x1f3f5, { 0xfe0f } },
+ { 0x1f3f5, { } },
{ 0x1f339, { } },
{ 0x1f940, { } },
{ 0x1f33a, { } },
@@ -2466,6 +2520,7 @@ namespace QuickMedia {
{ 0x1f33e, { } },
{ 0x1f33f, { } },
{ 0x2618, { 0xfe0f } },
+ { 0x2618, { } },
{ 0x1f340, { } },
{ 0x1f341, { } },
{ 0x1f342, { } },
@@ -2498,6 +2553,7 @@ namespace QuickMedia {
{ 0x1f955, { } },
{ 0x1f33d, { } },
{ 0x1f336, { 0xfe0f } },
+ { 0x1f336, { } },
{ 0x1fad1, { } },
{ 0x1f952, { } },
{ 0x1f96c, { } },
@@ -2601,6 +2657,7 @@ namespace QuickMedia {
{ 0x1f9ca, { } },
{ 0x1f962, { } },
{ 0x1f37d, { 0xfe0f } },
+ { 0x1f37d, { } },
{ 0x1f374, { } },
{ 0x1f944, { } },
{ 0x1f52a, { } },
@@ -2611,26 +2668,39 @@ namespace QuickMedia {
{ 0x1f30f, { } },
{ 0x1f310, { } },
{ 0x1f5fa, { 0xfe0f } },
+ { 0x1f5fa, { } },
{ 0x1f5fe, { } },
{ 0x1f9ed, { } },
{ 0x1f3d4, { 0xfe0f } },
+ { 0x1f3d4, { } },
{ 0x26f0, { 0xfe0f } },
+ { 0x26f0, { } },
{ 0x1f30b, { } },
{ 0x1f5fb, { } },
{ 0x1f3d5, { 0xfe0f } },
+ { 0x1f3d5, { } },
{ 0x1f3d6, { 0xfe0f } },
+ { 0x1f3d6, { } },
{ 0x1f3dc, { 0xfe0f } },
+ { 0x1f3dc, { } },
{ 0x1f3dd, { 0xfe0f } },
+ { 0x1f3dd, { } },
{ 0x1f3de, { 0xfe0f } },
+ { 0x1f3de, { } },
{ 0x1f3df, { 0xfe0f } },
+ { 0x1f3df, { } },
{ 0x1f3db, { 0xfe0f } },
+ { 0x1f3db, { } },
{ 0x1f3d7, { 0xfe0f } },
+ { 0x1f3d7, { } },
{ 0x1f9f1, { } },
{ 0x1faa8, { } },
{ 0x1fab5, { } },
{ 0x1f6d6, { } },
{ 0x1f3d8, { 0xfe0f } },
+ { 0x1f3d8, { } },
{ 0x1f3da, { 0xfe0f } },
+ { 0x1f3da, { } },
{ 0x1f3e0, { } },
{ 0x1f3e1, { } },
{ 0x1f3e2, { } },
@@ -2654,18 +2724,21 @@ namespace QuickMedia {
{ 0x1f6d5, { } },
{ 0x1f54d, { } },
{ 0x26e9, { 0xfe0f } },
+ { 0x26e9, { } },
{ 0x1f54b, { } },
{ 0x26f2, { } },
{ 0x26fa, { } },
{ 0x1f301, { } },
{ 0x1f303, { } },
{ 0x1f3d9, { 0xfe0f } },
+ { 0x1f3d9, { } },
{ 0x1f304, { } },
{ 0x1f305, { } },
{ 0x1f306, { } },
{ 0x1f307, { } },
{ 0x1f309, { } },
{ 0x2668, { 0xfe0f } },
+ { 0x2668, { } },
{ 0x1f3a0, { } },
{ 0x1f6dd, { } },
{ 0x1f3a1, { } },
@@ -2702,7 +2775,9 @@ namespace QuickMedia {
{ 0x1f69b, { } },
{ 0x1f69c, { } },
{ 0x1f3ce, { 0xfe0f } },
+ { 0x1f3ce, { } },
{ 0x1f3cd, { 0xfe0f } },
+ { 0x1f3cd, { } },
{ 0x1f6f5, { } },
{ 0x1f9bd, { } },
{ 0x1f9bc, { } },
@@ -2713,8 +2788,11 @@ namespace QuickMedia {
{ 0x1f6fc, { } },
{ 0x1f68f, { } },
{ 0x1f6e3, { 0xfe0f } },
+ { 0x1f6e3, { } },
{ 0x1f6e4, { 0xfe0f } },
+ { 0x1f6e4, { } },
{ 0x1f6e2, { 0xfe0f } },
+ { 0x1f6e2, { } },
{ 0x26fd, { } },
{ 0x1f6de, { } },
{ 0x1f6a8, { } },
@@ -2728,11 +2806,16 @@ namespace QuickMedia {
{ 0x1f6f6, { } },
{ 0x1f6a4, { } },
{ 0x1f6f3, { 0xfe0f } },
+ { 0x1f6f3, { } },
{ 0x26f4, { 0xfe0f } },
+ { 0x26f4, { } },
{ 0x1f6e5, { 0xfe0f } },
+ { 0x1f6e5, { } },
{ 0x1f6a2, { } },
{ 0x2708, { 0xfe0f } },
+ { 0x2708, { } },
{ 0x1f6e9, { 0xfe0f } },
+ { 0x1f6e9, { } },
{ 0x1f6eb, { } },
{ 0x1f6ec, { } },
{ 0x1fa82, { } },
@@ -2742,17 +2825,22 @@ namespace QuickMedia {
{ 0x1f6a0, { } },
{ 0x1f6a1, { } },
{ 0x1f6f0, { 0xfe0f } },
+ { 0x1f6f0, { } },
{ 0x1f680, { } },
{ 0x1f6f8, { } },
{ 0x1f6ce, { 0xfe0f } },
+ { 0x1f6ce, { } },
{ 0x1f9f3, { } },
{ 0x231b, { } },
{ 0x23f3, { } },
{ 0x231a, { } },
{ 0x23f0, { } },
{ 0x23f1, { 0xfe0f } },
+ { 0x23f1, { } },
{ 0x23f2, { 0xfe0f } },
+ { 0x23f2, { } },
{ 0x1f570, { 0xfe0f } },
+ { 0x1f570, { } },
{ 0x1f55b, { } },
{ 0x1f567, { } },
{ 0x1f550, { } },
@@ -2790,7 +2878,9 @@ namespace QuickMedia {
{ 0x1f31b, { } },
{ 0x1f31c, { } },
{ 0x1f321, { 0xfe0f } },
+ { 0x1f321, { } },
{ 0x2600, { 0xfe0f } },
+ { 0x2600, { } },
{ 0x1f31d, { } },
{ 0x1f31e, { } },
{ 0x1fa90, { } },
@@ -2799,28 +2889,44 @@ namespace QuickMedia {
{ 0x1f320, { } },
{ 0x1f30c, { } },
{ 0x2601, { 0xfe0f } },
+ { 0x2601, { } },
{ 0x26c5, { } },
{ 0x26c8, { 0xfe0f } },
+ { 0x26c8, { } },
{ 0x1f324, { 0xfe0f } },
+ { 0x1f324, { } },
{ 0x1f325, { 0xfe0f } },
+ { 0x1f325, { } },
{ 0x1f326, { 0xfe0f } },
+ { 0x1f326, { } },
{ 0x1f327, { 0xfe0f } },
+ { 0x1f327, { } },
{ 0x1f328, { 0xfe0f } },
+ { 0x1f328, { } },
{ 0x1f329, { 0xfe0f } },
+ { 0x1f329, { } },
{ 0x1f32a, { 0xfe0f } },
+ { 0x1f32a, { } },
{ 0x1f32b, { 0xfe0f } },
+ { 0x1f32b, { } },
{ 0x1f32c, { 0xfe0f } },
+ { 0x1f32c, { } },
{ 0x1f300, { } },
{ 0x1f308, { } },
{ 0x1f302, { } },
{ 0x2602, { 0xfe0f } },
+ { 0x2602, { } },
{ 0x2614, { } },
{ 0x26f1, { 0xfe0f } },
+ { 0x26f1, { } },
{ 0x26a1, { } },
{ 0x2744, { 0xfe0f } },
+ { 0x2744, { } },
{ 0x2603, { 0xfe0f } },
+ { 0x2603, { } },
{ 0x26c4, { } },
{ 0x2604, { 0xfe0f } },
+ { 0x2604, { } },
{ 0x1f525, { } },
{ 0x1f4a7, { } },
{ 0x1f30a, { } },
@@ -2843,9 +2949,12 @@ namespace QuickMedia {
{ 0x1f380, { } },
{ 0x1f381, { } },
{ 0x1f397, { 0xfe0f } },
+ { 0x1f397, { } },
{ 0x1f39f, { 0xfe0f } },
+ { 0x1f39f, { } },
{ 0x1f3ab, { } },
{ 0x1f396, { 0xfe0f } },
+ { 0x1f396, { } },
{ 0x1f3c6, { } },
{ 0x1f3c5, { } },
{ 0x1f947, { } },
@@ -2872,6 +2981,7 @@ namespace QuickMedia {
{ 0x1f945, { } },
{ 0x26f3, { } },
{ 0x26f8, { 0xfe0f } },
+ { 0x26f8, { } },
{ 0x1f3a3, { } },
{ 0x1f93f, { } },
{ 0x1f3bd, { } },
@@ -2887,6 +2997,7 @@ namespace QuickMedia {
{ 0x1fa84, { } },
{ 0x1f3ae, { } },
{ 0x1f579, { 0xfe0f } },
+ { 0x1f579, { } },
{ 0x1f3b0, { } },
{ 0x1f3b2, { } },
{ 0x1f9e9, { } },
@@ -2895,15 +3006,21 @@ namespace QuickMedia {
{ 0x1faa9, { } },
{ 0x1fa86, { } },
{ 0x2660, { 0xfe0f } },
+ { 0x2660, { } },
{ 0x2665, { 0xfe0f } },
+ { 0x2665, { } },
{ 0x2666, { 0xfe0f } },
+ { 0x2666, { } },
{ 0x2663, { 0xfe0f } },
+ { 0x2663, { } },
{ 0x265f, { 0xfe0f } },
+ { 0x265f, { } },
{ 0x1f0cf, { } },
{ 0x1f004, { } },
{ 0x1f3b4, { } },
{ 0x1f3ad, { } },
{ 0x1f5bc, { 0xfe0f } },
+ { 0x1f5bc, { } },
{ 0x1f3a8, { } },
{ 0x1f9f5, { } },
{ 0x1faa1, { } },
@@ -2911,6 +3028,7 @@ namespace QuickMedia {
{ 0x1faa2, { } },
{ 0x1f453, { } },
{ 0x1f576, { 0xfe0f } },
+ { 0x1f576, { } },
{ 0x1f97d, { } },
{ 0x1f97c, { } },
{ 0x1f9ba, { } },
@@ -2934,6 +3052,7 @@ namespace QuickMedia {
{ 0x1f45c, { } },
{ 0x1f45d, { } },
{ 0x1f6cd, { 0xfe0f } },
+ { 0x1f6cd, { } },
{ 0x1f392, { } },
{ 0x1fa74, { } },
{ 0x1f45e, { } },
@@ -2952,6 +3071,7 @@ namespace QuickMedia {
{ 0x1f9e2, { } },
{ 0x1fa96, { } },
{ 0x26d1, { 0xfe0f } },
+ { 0x26d1, { } },
{ 0x1f4ff, { } },
{ 0x1f484, { } },
{ 0x1f48d, { } },
@@ -2969,8 +3089,11 @@ namespace QuickMedia {
{ 0x1f3b5, { } },
{ 0x1f3b6, { } },
{ 0x1f399, { 0xfe0f } },
+ { 0x1f399, { } },
{ 0x1f39a, { 0xfe0f } },
+ { 0x1f39a, { } },
{ 0x1f39b, { 0xfe0f } },
+ { 0x1f39b, { } },
{ 0x1f3a4, { } },
{ 0x1f3a7, { } },
{ 0x1f4fb, { } },
@@ -2988,6 +3111,7 @@ namespace QuickMedia {
{ 0x1f4f1, { } },
{ 0x1f4f2, { } },
{ 0x260e, { 0xfe0f } },
+ { 0x260e, { } },
{ 0x1f4de, { } },
{ 0x1f4df, { } },
{ 0x1f4e0, { } },
@@ -2996,10 +3120,15 @@ namespace QuickMedia {
{ 0x1f50c, { } },
{ 0x1f4bb, { } },
{ 0x1f5a5, { 0xfe0f } },
+ { 0x1f5a5, { } },
{ 0x1f5a8, { 0xfe0f } },
+ { 0x1f5a8, { } },
{ 0x2328, { 0xfe0f } },
+ { 0x2328, { } },
{ 0x1f5b1, { 0xfe0f } },
+ { 0x1f5b1, { } },
{ 0x1f5b2, { 0xfe0f } },
+ { 0x1f5b2, { } },
{ 0x1f4bd, { } },
{ 0x1f4be, { } },
{ 0x1f4bf, { } },
@@ -3007,7 +3136,9 @@ namespace QuickMedia {
{ 0x1f9ee, { } },
{ 0x1f3a5, { } },
{ 0x1f39e, { 0xfe0f } },
+ { 0x1f39e, { } },
{ 0x1f4fd, { 0xfe0f } },
+ { 0x1f4fd, { } },
{ 0x1f3ac, { } },
{ 0x1f4fa, { } },
{ 0x1f4f7, { } },
@@ -3017,6 +3148,7 @@ namespace QuickMedia {
{ 0x1f50d, { } },
{ 0x1f50e, { } },
{ 0x1f56f, { 0xfe0f } },
+ { 0x1f56f, { } },
{ 0x1f4a1, { } },
{ 0x1f526, { } },
{ 0x1f3ee, { } },
@@ -3035,9 +3167,11 @@ namespace QuickMedia {
{ 0x1f4c4, { } },
{ 0x1f4f0, { } },
{ 0x1f5de, { 0xfe0f } },
+ { 0x1f5de, { } },
{ 0x1f4d1, { } },
{ 0x1f516, { } },
{ 0x1f3f7, { 0xfe0f } },
+ { 0x1f3f7, { } },
{ 0x1f4b0, { } },
{ 0x1fa99, { } },
{ 0x1f4b4, { } },
@@ -3049,6 +3183,7 @@ namespace QuickMedia {
{ 0x1f9fe, { } },
{ 0x1f4b9, { } },
{ 0x2709, { 0xfe0f } },
+ { 0x2709, { } },
{ 0x1f4e7, { } },
{ 0x1f4e8, { } },
{ 0x1f4e9, { } },
@@ -3061,21 +3196,31 @@ namespace QuickMedia {
{ 0x1f4ed, { } },
{ 0x1f4ee, { } },
{ 0x1f5f3, { 0xfe0f } },
+ { 0x1f5f3, { } },
{ 0x270f, { 0xfe0f } },
+ { 0x270f, { } },
{ 0x2712, { 0xfe0f } },
+ { 0x2712, { } },
{ 0x1f58b, { 0xfe0f } },
+ { 0x1f58b, { } },
{ 0x1f58a, { 0xfe0f } },
+ { 0x1f58a, { } },
{ 0x1f58c, { 0xfe0f } },
+ { 0x1f58c, { } },
{ 0x1f58d, { 0xfe0f } },
+ { 0x1f58d, { } },
{ 0x1f4dd, { } },
{ 0x1f4bc, { } },
{ 0x1f4c1, { } },
{ 0x1f4c2, { } },
{ 0x1f5c2, { 0xfe0f } },
+ { 0x1f5c2, { } },
{ 0x1f4c5, { } },
{ 0x1f4c6, { } },
{ 0x1f5d2, { 0xfe0f } },
+ { 0x1f5d2, { } },
{ 0x1f5d3, { 0xfe0f } },
+ { 0x1f5d3, { } },
{ 0x1f4c7, { } },
{ 0x1f4c8, { } },
{ 0x1f4c9, { } },
@@ -3085,44 +3230,61 @@ namespace QuickMedia {
{ 0x1f4cd, { } },
{ 0x1f4ce, { } },
{ 0x1f587, { 0xfe0f } },
+ { 0x1f587, { } },
{ 0x1f4cf, { } },
{ 0x1f4d0, { } },
{ 0x2702, { 0xfe0f } },
+ { 0x2702, { } },
{ 0x1f5c3, { 0xfe0f } },
+ { 0x1f5c3, { } },
{ 0x1f5c4, { 0xfe0f } },
+ { 0x1f5c4, { } },
{ 0x1f5d1, { 0xfe0f } },
+ { 0x1f5d1, { } },
{ 0x1f512, { } },
{ 0x1f513, { } },
{ 0x1f50f, { } },
{ 0x1f510, { } },
{ 0x1f511, { } },
{ 0x1f5dd, { 0xfe0f } },
+ { 0x1f5dd, { } },
{ 0x1f528, { } },
{ 0x1fa93, { } },
{ 0x26cf, { 0xfe0f } },
+ { 0x26cf, { } },
{ 0x2692, { 0xfe0f } },
+ { 0x2692, { } },
{ 0x1f6e0, { 0xfe0f } },
+ { 0x1f6e0, { } },
{ 0x1f5e1, { 0xfe0f } },
+ { 0x1f5e1, { } },
{ 0x2694, { 0xfe0f } },
+ { 0x2694, { } },
{ 0x1f4a3, { } },
{ 0x1fa83, { } },
{ 0x1f3f9, { } },
{ 0x1f6e1, { 0xfe0f } },
+ { 0x1f6e1, { } },
{ 0x1fa9a, { } },
{ 0x1f527, { } },
{ 0x1fa9b, { } },
{ 0x1f529, { } },
{ 0x2699, { 0xfe0f } },
+ { 0x2699, { } },
{ 0x1f5dc, { 0xfe0f } },
+ { 0x1f5dc, { } },
{ 0x2696, { 0xfe0f } },
+ { 0x2696, { } },
{ 0x1f9af, { } },
{ 0x1f517, { } },
{ 0x26d3, { 0xfe0f } },
+ { 0x26d3, { } },
{ 0x1fa9d, { } },
{ 0x1f9f0, { } },
{ 0x1f9f2, { } },
{ 0x1fa9c, { } },
{ 0x2697, { 0xfe0f } },
+ { 0x2697, { } },
{ 0x1f9ea, { } },
{ 0x1f9eb, { } },
{ 0x1f9ec, { } },
@@ -3141,7 +3303,9 @@ namespace QuickMedia {
{ 0x1fa9e, { } },
{ 0x1fa9f, { } },
{ 0x1f6cf, { 0xfe0f } },
+ { 0x1f6cf, { } },
{ 0x1f6cb, { 0xfe0f } },
+ { 0x1f6cb, { } },
{ 0x1fa91, { } },
{ 0x1f6bd, { } },
{ 0x1faa0, { } },
@@ -3163,8 +3327,10 @@ namespace QuickMedia {
{ 0x1f6d2, { } },
{ 0x1f6ac, { } },
{ 0x26b0, { 0xfe0f } },
+ { 0x26b0, { } },
{ 0x1faa6, { } },
{ 0x26b1, { 0xfe0f } },
+ { 0x26b1, { } },
{ 0x1f9ff, { } },
{ 0x1faac, { } },
{ 0x1f5ff, { } },
@@ -3184,6 +3350,7 @@ namespace QuickMedia {
{ 0x1f6c4, { } },
{ 0x1f6c5, { } },
{ 0x26a0, { 0xfe0f } },
+ { 0x26a0, { } },
{ 0x1f6b8, { } },
{ 0x26d4, { } },
{ 0x1f6ab, { } },
@@ -3195,21 +3362,37 @@ namespace QuickMedia {
{ 0x1f4f5, { } },
{ 0x1f51e, { } },
{ 0x2622, { 0xfe0f } },
+ { 0x2622, { } },
{ 0x2623, { 0xfe0f } },
+ { 0x2623, { } },
{ 0x2b06, { 0xfe0f } },
+ { 0x2b06, { } },
{ 0x2197, { 0xfe0f } },
+ { 0x2197, { } },
{ 0x27a1, { 0xfe0f } },
+ { 0x27a1, { } },
{ 0x2198, { 0xfe0f } },
+ { 0x2198, { } },
{ 0x2b07, { 0xfe0f } },
+ { 0x2b07, { } },
{ 0x2199, { 0xfe0f } },
+ { 0x2199, { } },
{ 0x2b05, { 0xfe0f } },
+ { 0x2b05, { } },
{ 0x2196, { 0xfe0f } },
+ { 0x2196, { } },
{ 0x2195, { 0xfe0f } },
+ { 0x2195, { } },
{ 0x2194, { 0xfe0f } },
+ { 0x2194, { } },
{ 0x21a9, { 0xfe0f } },
+ { 0x21a9, { } },
{ 0x21aa, { 0xfe0f } },
+ { 0x21aa, { } },
{ 0x2934, { 0xfe0f } },
+ { 0x2934, { } },
{ 0x2935, { 0xfe0f } },
+ { 0x2935, { } },
{ 0x1f503, { } },
{ 0x1f504, { } },
{ 0x1f519, { } },
@@ -3219,14 +3402,23 @@ namespace QuickMedia {
{ 0x1f51d, { } },
{ 0x1f6d0, { } },
{ 0x269b, { 0xfe0f } },
+ { 0x269b, { } },
{ 0x1f549, { 0xfe0f } },
+ { 0x1f549, { } },
{ 0x2721, { 0xfe0f } },
+ { 0x2721, { } },
{ 0x2638, { 0xfe0f } },
+ { 0x2638, { } },
{ 0x262f, { 0xfe0f } },
+ { 0x262f, { } },
{ 0x271d, { 0xfe0f } },
+ { 0x271d, { } },
{ 0x2626, { 0xfe0f } },
+ { 0x2626, { } },
{ 0x262a, { 0xfe0f } },
+ { 0x262a, { } },
{ 0x262e, { 0xfe0f } },
+ { 0x262e, { } },
{ 0x1f54e, { } },
{ 0x1f52f, { } },
{ 0x1faaf, { } },
@@ -3247,20 +3439,29 @@ namespace QuickMedia {
{ 0x1f501, { } },
{ 0x1f502, { } },
{ 0x25b6, { 0xfe0f } },
+ { 0x25b6, { } },
{ 0x23e9, { } },
{ 0x23ed, { 0xfe0f } },
+ { 0x23ed, { } },
{ 0x23ef, { 0xfe0f } },
+ { 0x23ef, { } },
{ 0x25c0, { 0xfe0f } },
+ { 0x25c0, { } },
{ 0x23ea, { } },
{ 0x23ee, { 0xfe0f } },
+ { 0x23ee, { } },
{ 0x1f53c, { } },
{ 0x23eb, { } },
{ 0x1f53d, { } },
{ 0x23ec, { } },
{ 0x23f8, { 0xfe0f } },
+ { 0x23f8, { } },
{ 0x23f9, { 0xfe0f } },
+ { 0x23f9, { } },
{ 0x23fa, { 0xfe0f } },
+ { 0x23fa, { } },
{ 0x23cf, { 0xfe0f } },
+ { 0x23cf, { } },
{ 0x1f3a6, { } },
{ 0x1f505, { } },
{ 0x1f506, { } },
@@ -3269,56 +3470,88 @@ namespace QuickMedia {
{ 0x1f4f3, { } },
{ 0x1f4f4, { } },
{ 0x2640, { 0xfe0f } },
+ { 0x2640, { } },
{ 0x2642, { 0xfe0f } },
+ { 0x2642, { } },
{ 0x26a7, { 0xfe0f } },
+ { 0x26a7, { } },
{ 0x2716, { 0xfe0f } },
+ { 0x2716, { } },
{ 0x2795, { } },
{ 0x2796, { } },
{ 0x2797, { } },
{ 0x1f7f0, { } },
{ 0x267e, { 0xfe0f } },
+ { 0x267e, { } },
{ 0x203c, { 0xfe0f } },
+ { 0x203c, { } },
{ 0x2049, { 0xfe0f } },
+ { 0x2049, { } },
{ 0x2753, { } },
{ 0x2754, { } },
{ 0x2755, { } },
{ 0x2757, { } },
{ 0x3030, { 0xfe0f } },
+ { 0x3030, { } },
{ 0x1f4b1, { } },
{ 0x1f4b2, { } },
{ 0x2695, { 0xfe0f } },
+ { 0x2695, { } },
{ 0x267b, { 0xfe0f } },
+ { 0x267b, { } },
{ 0x269c, { 0xfe0f } },
+ { 0x269c, { } },
{ 0x1f531, { } },
{ 0x1f4db, { } },
{ 0x1f530, { } },
{ 0x2b55, { } },
{ 0x2705, { } },
{ 0x2611, { 0xfe0f } },
+ { 0x2611, { } },
{ 0x2714, { 0xfe0f } },
+ { 0x2714, { } },
{ 0x274c, { } },
{ 0x274e, { } },
{ 0x27b0, { } },
{ 0x27bf, { } },
{ 0x303d, { 0xfe0f } },
+ { 0x303d, { } },
{ 0x2733, { 0xfe0f } },
+ { 0x2733, { } },
{ 0x2734, { 0xfe0f } },
+ { 0x2734, { } },
{ 0x2747, { 0xfe0f } },
+ { 0x2747, { } },
{ 0xa9, { 0xfe0f } },
+ { 0xa9, { } },
{ 0xae, { 0xfe0f } },
+ { 0xae, { } },
{ 0x2122, { 0xfe0f } },
+ { 0x2122, { } },
{ 0x23, { 0xfe0f, 0x20e3 } },
+ { 0x23, { 0x20e3 } },
{ 0x2a, { 0xfe0f, 0x20e3 } },
+ { 0x2a, { 0x20e3 } },
{ 0x30, { 0xfe0f, 0x20e3 } },
+ { 0x30, { 0x20e3 } },
{ 0x31, { 0xfe0f, 0x20e3 } },
+ { 0x31, { 0x20e3 } },
{ 0x32, { 0xfe0f, 0x20e3 } },
+ { 0x32, { 0x20e3 } },
{ 0x33, { 0xfe0f, 0x20e3 } },
+ { 0x33, { 0x20e3 } },
{ 0x34, { 0xfe0f, 0x20e3 } },
+ { 0x34, { 0x20e3 } },
{ 0x35, { 0xfe0f, 0x20e3 } },
+ { 0x35, { 0x20e3 } },
{ 0x36, { 0xfe0f, 0x20e3 } },
+ { 0x36, { 0x20e3 } },
{ 0x37, { 0xfe0f, 0x20e3 } },
+ { 0x37, { 0x20e3 } },
{ 0x38, { 0xfe0f, 0x20e3 } },
+ { 0x38, { 0x20e3 } },
{ 0x39, { 0xfe0f, 0x20e3 } },
+ { 0x39, { 0x20e3 } },
{ 0x1f51f, { } },
{ 0x1f520, { } },
{ 0x1f521, { } },
@@ -3326,25 +3559,33 @@ namespace QuickMedia {
{ 0x1f523, { } },
{ 0x1f524, { } },
{ 0x1f170, { 0xfe0f } },
+ { 0x1f170, { } },
{ 0x1f18e, { } },
{ 0x1f171, { 0xfe0f } },
+ { 0x1f171, { } },
{ 0x1f191, { } },
{ 0x1f192, { } },
{ 0x1f193, { } },
{ 0x2139, { 0xfe0f } },
+ { 0x2139, { } },
{ 0x1f194, { } },
{ 0x24c2, { 0xfe0f } },
+ { 0x24c2, { } },
{ 0x1f195, { } },
{ 0x1f196, { } },
{ 0x1f17e, { 0xfe0f } },
+ { 0x1f17e, { } },
{ 0x1f197, { } },
{ 0x1f17f, { 0xfe0f } },
+ { 0x1f17f, { } },
{ 0x1f198, { } },
{ 0x1f199, { } },
{ 0x1f19a, { } },
{ 0x1f201, { } },
{ 0x1f202, { 0xfe0f } },
+ { 0x1f202, { } },
{ 0x1f237, { 0xfe0f } },
+ { 0x1f237, { } },
{ 0x1f236, { } },
{ 0x1f22f, { } },
{ 0x1f250, { } },
@@ -3356,7 +3597,9 @@ namespace QuickMedia {
{ 0x1f234, { } },
{ 0x1f233, { } },
{ 0x3297, { 0xfe0f } },
+ { 0x3297, { } },
{ 0x3299, { 0xfe0f } },
+ { 0x3299, { } },
{ 0x1f23a, { } },
{ 0x1f235, { } },
{ 0x1f534, { } },
@@ -3378,11 +3621,15 @@ namespace QuickMedia {
{ 0x2b1b, { } },
{ 0x2b1c, { } },
{ 0x25fc, { 0xfe0f } },
+ { 0x25fc, { } },
{ 0x25fb, { 0xfe0f } },
+ { 0x25fb, { } },
{ 0x25fe, { } },
{ 0x25fd, { } },
{ 0x25aa, { 0xfe0f } },
+ { 0x25aa, { } },
{ 0x25ab, { 0xfe0f } },
+ { 0x25ab, { } },
{ 0x1f536, { } },
{ 0x1f537, { } },
{ 0x1f538, { } },
@@ -3398,8 +3645,12 @@ namespace QuickMedia {
{ 0x1f38c, { } },
{ 0x1f3f4, { } },
{ 0x1f3f3, { 0xfe0f } },
+ { 0x1f3f3, { } },
{ 0x1f3f3, { 0xfe0f, 0x200d, 0x1f308 } },
+ { 0x1f3f3, { 0x200d, 0x1f308 } },
{ 0x1f3f3, { 0xfe0f, 0x200d, 0x26a7, 0xfe0f } },
+ { 0x1f3f3, { 0x200d, 0x26a7, 0xfe0f } },
+ { 0x1f3f3, { 0x200d, 0x26a7 } },
{ 0x1f3f4, { 0x200d, 0x2620, 0xfe0f } },
{ 0x1f1e6, { 0x1f1e8 } },
{ 0x1f1e6, { 0x1f1e9 } },
diff --git a/src/Text.cpp b/src/Text.cpp
index 74a0625..2a09336 100644
--- a/src/Text.cpp
+++ b/src/Text.cpp
@@ -572,6 +572,9 @@ namespace QuickMedia
if(emoji_sequence_length > 0 && emoji_sequence[emoji_sequence_length - 1] == 0xfe0f && access(text_element.url.c_str(), F_OK) != 0) {
emoji_codepoint_combined.erase(emoji_codepoint_combined.end() - 5, emoji_codepoint_combined.end());
text_element.url = "/usr/share/quickmedia/emoji/" + emoji_codepoint_combined + ".png";
+ } else if(emoji_sequence_length > 0 && emoji_sequence[emoji_sequence_length - 1] != 0xfe0f && access(text_element.url.c_str(), F_OK) != 0) {
+ emoji_codepoint_combined += "-fe0f";
+ text_element.url = "/usr/share/quickmedia/emoji/" + emoji_codepoint_combined + ".png";
}
text_element.local = true;
text_element.size = { (int)vspace, (int)vspace };