version 1.113, 2014/01/19 22:48:16 |
version 1.114, 2014/01/22 20:58:39 |
|
|
render_key(struct mchars *mc, struct str *key) |
render_key(struct mchars *mc, struct str *key) |
{ |
{ |
size_t sz, bsz, pos; |
size_t sz, bsz, pos; |
char utfbuf[7], res[5]; |
char utfbuf[7], res[6]; |
char *buf; |
char *buf; |
const char *seq, *cpp, *val; |
const char *seq, *cpp, *val; |
int len, u; |
int len, u; |
Line 1676 render_key(struct mchars *mc, struct str *key) |
|
Line 1676 render_key(struct mchars *mc, struct str *key) |
|
res[1] = '\t'; |
res[1] = '\t'; |
res[2] = ASCII_NBRSP; |
res[2] = ASCII_NBRSP; |
res[3] = ASCII_HYPH; |
res[3] = ASCII_HYPH; |
res[4] = '\0'; |
res[4] = ASCII_BREAK; |
|
res[5] = '\0'; |
|
|
val = key->key; |
val = key->key; |
bsz = strlen(val); |
bsz = strlen(val); |
Line 1707 render_key(struct mchars *mc, struct str *key) |
|
Line 1708 render_key(struct mchars *mc, struct str *key) |
|
val += sz; |
val += sz; |
} |
} |
|
|
if (ASCII_HYPH == *val) { |
switch (*val) { |
|
case (ASCII_HYPH): |
buf[pos++] = '-'; |
buf[pos++] = '-'; |
val++; |
val++; |
continue; |
continue; |
} else if ('\t' == *val || ASCII_NBRSP == *val) { |
case ('\t'): |
|
/* FALLTHROUGH */ |
|
case (ASCII_NBRSP): |
buf[pos++] = ' '; |
buf[pos++] = ' '; |
val++; |
val++; |
|
/* FALLTHROUGH */ |
|
case (ASCII_BREAK): |
continue; |
continue; |
} else if ('\\' != *val) |
default: |
|
break; |
|
} |
|
if ('\\' != *val) |
break; |
break; |
|
|
/* Read past the slash. */ |
/* Read past the slash. */ |