diff options
| author | violette <vi@violette.town> | 2026-01-12 06:03:04 +0100 |
|---|---|---|
| committer | grunfink <grunfink@comam.es> | 2026-01-12 06:03:04 +0100 |
| commit | de9d546d70cfcbf3b2450b70039470c9a68ecdc6 (patch) | |
| tree | af3fcc8f82966420a59f0af9b5158d26d93bdb5a /format.c | |
| parent | 181132331d744065b13e5c6134b39335c51940f5 (diff) | |
Added emoji categories.
Diffstat (limited to 'format.c')
| -rw-r--r-- | format.c | 20 |
1 files changed, 19 insertions, 1 deletions
@@ -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; |