|
@@ -144,11 +144,16 @@ static xs_str *format_line(const char *line, xs_list **attach)
|
|
|
if (*v == '[') {
|
|
if (*v == '[') {
|
|
|
/* markdown-like links [label](url) */
|
|
/* markdown-like links [label](url) */
|
|
|
xs *w = xs_strip_chars_i(xs_dup(v), "[)");
|
|
xs *w = xs_strip_chars_i(xs_dup(v), "[)");
|
|
|
- xs *l = xs_split(w, "](");
|
|
|
|
|
- xs *link = xs_fmt("<a href=\"%s\">%s</a>",
|
|
|
|
|
|
|
+ xs *l = xs_split_n(w, "](", 1);
|
|
|
|
|
+
|
|
|
|
|
+ if (xs_list_len(l) == 2) {
|
|
|
|
|
+ xs *link = xs_fmt("<a href=\"%s\">%s</a>",
|
|
|
xs_list_get(l, 1), xs_list_get(l, 0));
|
|
xs_list_get(l, 1), xs_list_get(l, 0));
|
|
|
|
|
|
|
|
- s = xs_str_cat(s, link);
|
|
|
|
|
|
|
+ s = xs_str_cat(s, link);
|
|
|
|
|
+ }
|
|
|
|
|
+ else
|
|
|
|
|
+ s = xs_str_cat(s, v);
|
|
|
}
|
|
}
|
|
|
else
|
|
else
|
|
|
s = xs_str_cat(s, v);
|
|
s = xs_str_cat(s, v);
|