|
@@ -197,10 +197,11 @@ void buffer_append_escaped(buffer_t *buffer, char c) {
|
|
|
|
|
|
void preprocess_text(buffer_t *buffer, char *text) {
|
|
|
for (size_t i = 0; text[i]; i++) {
|
|
|
- unsigned char c, nc;
|
|
|
+ unsigned char c, nc, fc;
|
|
|
|
|
|
c = text[i];
|
|
|
nc = text[i+1];
|
|
|
+ fc = text[i+2];
|
|
|
|
|
|
if (c == '`')
|
|
|
SET("`", "tt", 0);
|
|
@@ -210,6 +211,8 @@ void preprocess_text(buffer_t *buffer, char *text) {
|
|
|
SET("__", "i", 1);
|
|
|
else if (c == '~' && nc == '~')
|
|
|
SET("~~", "s", 1);
|
|
|
+ else if (c == 0xee && nc == 0x80 && fc == 0x80)
|
|
|
+ SET("\xee\x80\x80", "u", 1);
|
|
|
else
|
|
|
buffer_append_escaped(buffer, c);
|
|
|
escape:;
|