summaryrefslogtreecommitdiff
path: root/format.c
diff options
context:
space:
mode:
authordefault <nobody@localhost>2023-08-17 18:20:16 +0200
committerdefault <nobody@localhost>2023-08-17 18:20:16 +0200
commit8b176292d60975f498a5a1564ab66393a9f4fd5b (patch)
treed7329a149cc22fcee7c8b7751c1b69513955c480 /format.c
parent93bdf79eb69d79803a091e2d6583772b40e41f44 (diff)
Simplified smiley processing.
Diffstat (limited to 'format.c')
-rw-r--r--format.c60
1 files changed, 29 insertions, 31 deletions
diff --git a/format.c b/format.c
index 2d09131..37b0838 100644
--- a/format.c
+++ b/format.c
@@ -8,34 +8,30 @@
#include "snac.h"
/* emoticons, people laughing and such */
-
-struct {
- const char *key;
- const char *value;
-} smileys[] = {
- { ":-)", "&#128578;" },
- { ":-D", "&#128512;" },
- { "X-D", "&#128518;" },
- { ";-)", "&#128521;" },
- { "B-)", "&#128526;" },
- { ">:-(", "&#128545;" },
- { ":-(", "&#128542;" },
- { ":-*", "&#128536;" },
- { ":-/", "&#128533;" },
- { "8-o", "&#128562;" },
- { "%-)", "&#129322;" },
- { ":_(", "&#128546;" },
- { ":-|", "&#128528;" },
- { "<3", "&#128147;" },
- { ":facepalm:", "&#129318;" },
- { ":shrug:", "&#129335;" },
- { ":shrug2:", "&#175;\\_(&#12484;)_/&#175;" },
- { ":eyeroll:", "&#128580;" },
- { ":beer:", "&#127866;" },
- { ":beers:", "&#127867;" },
- { ":munch:", "&#128561;" },
- { ":thumb:", "&#128077;" },
- { NULL, NULL }
+const char *smileys[] = {
+ ":-)", "&#128578;",
+ ":-D", "&#128512;",
+ "X-D", "&#128518;",
+ ";-)", "&#128521;",
+ "B-)", "&#128526;",
+ ">:-(", "&#128545;",
+ ":-(", "&#128542;",
+ ":-*", "&#128536;",
+ ":-/", "&#128533;",
+ "8-o", "&#128562;",
+ "%-)", "&#129322;",
+ ":_(", "&#128546;",
+ ":-|", "&#128528;",
+ "<3", "&#128147;",
+ ":facepalm:", "&#129318;",
+ ":shrug:", "&#129335;",
+ ":shrug2:", "&#175;\\_(&#12484;)_/&#175;",
+ ":eyeroll:", "&#128580;",
+ ":beer:", "&#127866;",
+ ":beers:", "&#127867;",
+ ":munch:", "&#128561;",
+ ":thumb:", "&#128077;",
+ NULL, NULL
};
@@ -193,10 +189,12 @@ xs_str *not_really_markdown(const char *content, xs_list **attach)
{
/* traditional emoticons */
- int n;
+ const char **emo = smileys;
- for (n = 0; smileys[n].key; n++)
- s = xs_replace_i(s, smileys[n].key, smileys[n].value);
+ while (*emo) {
+ s = xs_replace_i(s, emo[0], emo[1]);
+ emo += 2;
+ }
}
return s;