summaryrefslogtreecommitdiff
path: root/format.c
diff options
context:
space:
mode:
authorGravatar default2024-07-18 17:19:14 +0200
committerGravatar default2024-07-18 17:19:14 +0200
commitf3b392e06a72cc1461ab2c9587c96991a2731e9c (patch)
treea14437db2e4b4563fc54ea9de579cc7f2ce8a156 /format.c
parentUpdated RELEASE_NOTES. (diff)
downloadsnac2-f3b392e06a72cc1461ab2c9587c96991a2731e9c.tar.gz
snac2-f3b392e06a72cc1461ab2c9587c96991a2731e9c.tar.xz
snac2-f3b392e06a72cc1461ab2c9587c96991a2731e9c.zip
Show bold+italic (text between ***) correctly.
Diffstat (limited to '')
-rw-r--r--format.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/format.c b/format.c
index c30fd5d..52edd05 100644
--- a/format.c
+++ b/format.c
@@ -88,9 +88,9 @@ static xs_str *format_line(const char *line, xs_list **attach)
88 /* split by markup */ 88 /* split by markup */
89 xs *sm = xs_regex_split(line, 89 xs *sm = xs_regex_split(line,
90 "(" 90 "("
91 "`[^`]+`" "|" 91 "`[^`]+`" "|"
92 "\\*\\*?[^\\*]+\\*?\\*" "|" 92 "\\*\\*?\\*?[^\\*]+\\*?\\*?\\*" "|"
93 "\\[[^]]+\\]\\([^\\)]+\\)" "|" 93 "\\[[^]]+\\]\\([^\\)]+\\)" "|"
94 "https?:/" "/[^[:space:]]+" 94 "https?:/" "/[^[:space:]]+"
95 ")"); 95 ")");
96 int n = 0; 96 int n = 0;
@@ -106,6 +106,12 @@ static xs_str *format_line(const char *line, xs_list **attach)
106 s = xs_str_cat(s, s2); 106 s = xs_str_cat(s, s2);
107 } 107 }
108 else 108 else
109 if (xs_startswith(v, "***")) {
110 xs *s1 = xs_crop_i(xs_dup(v), 3, -3);
111 xs *s2 = xs_fmt("<b><i>%s</i></b>", s1);
112 s = xs_str_cat(s, s2);
113 }
114 else
109 if (xs_startswith(v, "**")) { 115 if (xs_startswith(v, "**")) {
110 xs *s1 = xs_crop_i(xs_dup(v), 2, -2); 116 xs *s1 = xs_crop_i(xs_dup(v), 2, -2);
111 xs *s2 = xs_fmt("<b>%s</b>", s1); 117 xs *s2 = xs_fmt("<b>%s</b>", s1);