diff options
| author | 2024-05-27 05:49:29 +0200 | |
|---|---|---|
| committer | 2024-05-27 05:49:29 +0200 | |
| commit | 36764b8ade5ee4686b04acb251f586eec4dacfad (patch) | |
| tree | 573e5b170842522b6e79f21e61a5aa2a53e538b3 | |
| parent | Updated documentation. (diff) | |
| download | penes-snac2-36764b8ade5ee4686b04acb251f586eec4dacfad.tar.gz penes-snac2-36764b8ade5ee4686b04acb251f586eec4dacfad.tar.xz penes-snac2-36764b8ade5ee4686b04acb251f586eec4dacfad.zip | |
Minor tweak to markdown-like links.
| -rw-r--r-- | format.c | 11 | ||||
| -rw-r--r-- | xs.h | 6 | ||||
| -rw-r--r-- | xs_version.h | 2 |
3 files changed, 12 insertions, 7 deletions
| @@ -144,11 +144,16 @@ static xs_str *format_line(const char *line, xs_list **attach) | |||
| 144 | if (*v == '[') { | 144 | if (*v == '[') { |
| 145 | /* markdown-like links [label](url) */ | 145 | /* markdown-like links [label](url) */ |
| 146 | xs *w = xs_strip_chars_i(xs_dup(v), "[)"); | 146 | xs *w = xs_strip_chars_i(xs_dup(v), "[)"); |
| 147 | xs *l = xs_split(w, "]("); | 147 | xs *l = xs_split_n(w, "](", 1); |
| 148 | xs *link = xs_fmt("<a href=\"%s\">%s</a>", | 148 | |
| 149 | if (xs_list_len(l) == 2) { | ||
| 150 | xs *link = xs_fmt("<a href=\"%s\">%s</a>", | ||
| 149 | xs_list_get(l, 1), xs_list_get(l, 0)); | 151 | xs_list_get(l, 1), xs_list_get(l, 0)); |
| 150 | 152 | ||
| 151 | s = xs_str_cat(s, link); | 153 | s = xs_str_cat(s, link); |
| 154 | } | ||
| 155 | else | ||
| 156 | s = xs_str_cat(s, v); | ||
| 152 | } | 157 | } |
| 153 | else | 158 | else |
| 154 | s = xs_str_cat(s, v); | 159 | s = xs_str_cat(s, v); |
| @@ -277,7 +277,7 @@ int _xs_get_size(const xs_val *ptr) | |||
| 277 | /* must match _XS_TYPE_SIZE */ | 277 | /* must match _XS_TYPE_SIZE */ |
| 278 | { | 278 | { |
| 279 | int i; | 279 | int i; |
| 280 | memcpy(&i, ptr, sizeof(i)); | 280 | memcpy(&i, ptr + 1, sizeof(i)); |
| 281 | return i; | 281 | return i; |
| 282 | } | 282 | } |
| 283 | 283 | ||
| @@ -299,7 +299,7 @@ int xs_size(const xs_val *data) | |||
| 299 | case XSTYPE_LIST: | 299 | case XSTYPE_LIST: |
| 300 | case XSTYPE_DICT: | 300 | case XSTYPE_DICT: |
| 301 | case XSTYPE_DATA: | 301 | case XSTYPE_DATA: |
| 302 | len = _xs_get_size(data + 1); | 302 | len = _xs_get_size(data); |
| 303 | 303 | ||
| 304 | break; | 304 | break; |
| 305 | 305 | ||
| @@ -1286,7 +1286,7 @@ xs_data *xs_data_new(const void *data, int size) | |||
| 1286 | int xs_data_size(const xs_data *value) | 1286 | int xs_data_size(const xs_data *value) |
| 1287 | /* returns the size of the data stored inside value */ | 1287 | /* returns the size of the data stored inside value */ |
| 1288 | { | 1288 | { |
| 1289 | return _xs_get_size(value + 1) - (1 + _XS_TYPE_SIZE); | 1289 | return _xs_get_size(value) - (1 + _XS_TYPE_SIZE); |
| 1290 | } | 1290 | } |
| 1291 | 1291 | ||
| 1292 | 1292 | ||
diff --git a/xs_version.h b/xs_version.h index 7a7ba53..2e86334 100644 --- a/xs_version.h +++ b/xs_version.h | |||
| @@ -1 +1 @@ | |||
| /* 65769f25ed99b886a643522bef21628396cd118d 2024-05-25T08:18:51+02:00 */ | /* e148ab08d5a55ac7bd30ff900f5eb048a57e21af 2024-05-27T05:33:01+02:00 */ | ||