aboutsummaryrefslogtreecommitdiff
path: root/format.c
diff options
context:
space:
mode:
authorviolette <vi@violette.town>2026-01-12 06:03:04 +0100
committergrunfink <grunfink@comam.es>2026-01-12 06:03:04 +0100
commitde9d546d70cfcbf3b2450b70039470c9a68ecdc6 (patch)
treeaf3fcc8f82966420a59f0af9b5158d26d93bdb5a /format.c
parent181132331d744065b13e5c6134b39335c51940f5 (diff)
Added emoji categories.
Diffstat (limited to 'format.c')
-rw-r--r--format.c20
1 files changed, 19 insertions, 1 deletions
diff --git a/format.c b/format.c
index 803e5a5..95c1b12 100644
--- a/format.c
+++ b/format.c
@@ -79,6 +79,24 @@ xs_dict *emojis(void)
return d;
}
+
+xs_dict *emojis_rm_categories() {
+ xs *emjs = emojis();
+ char *res = xs_dict_new();
+ const char *k, *v;
+ xs_dict_foreach(emjs, k, v) {
+ if (xs_type(v) == XSTYPE_DICT) {
+ const char *v2;
+ xs_dict_foreach(v, k, v2)
+ res = xs_dict_append(res, k, v2);
+ }
+ else
+ res = xs_dict_append(res, k, v);
+ }
+ return res;
+}
+
+
/* Non-whitespace without trailing comma, period or closing paren */
#define NOSPACE "([^[:space:],.)]+|[,.)]+[^[:space:],.)])+"
@@ -405,7 +423,7 @@ xs_str *not_really_markdown(const char *content, xs_list **attach, xs_list **tag
{
/* traditional emoticons */
- xs *d = emojis();
+ xs *d = emojis_rm_categories();
int c = 0;
const char *k, *v;