Fix some incorrect handling of message styling
This commit is contained in:
parent
fcec78ce27
commit
de3af0ae24
|
@ -211,15 +211,15 @@ public static string parse_add_markup(string s_, string? highlight_word, bool pa
|
||||||
for (int i = 0; i < markup_string.length; i++) {
|
for (int i = 0; i < markup_string.length; i++) {
|
||||||
string markup_esc = Regex.escape_string(markup_string[i]);
|
string markup_esc = Regex.escape_string(markup_string[i]);
|
||||||
try {
|
try {
|
||||||
Regex regex = new Regex("(^|\\s)" + markup_esc + "(\\S.*?\\S|\\S)" + markup_esc + "($|\\s)");
|
Regex regex = new Regex("(^|\\s)" + markup_esc + "(\\S.*?\\S|\\S)" + markup_esc);
|
||||||
MatchInfo match_info;
|
MatchInfo match_info;
|
||||||
regex.match(s.down(), 0, out match_info);
|
regex.match(s.down(), 0, out match_info);
|
||||||
if (match_info.matches()) {
|
if (match_info.matches()) {
|
||||||
int start, end;
|
int start, end;
|
||||||
match_info.fetch_pos(2, out start, out end);
|
match_info.fetch_pos(2, out start, out end);
|
||||||
return parse_add_markup(s[0:start], highlight_word, parse_links, parse_text_markup, already_escaped) +
|
return parse_add_markup(s[0:start-1], highlight_word, parse_links, parse_text_markup, already_escaped) +
|
||||||
@"<$(convenience_tag[i])>" + s[start:end] + @"</$(convenience_tag[i])>" +
|
s[start-1:start] + @"<$(convenience_tag[i])>" + s[start:end] + @"</$(convenience_tag[i])>" + s[end:end+1] +
|
||||||
parse_add_markup(s[end:s.length], highlight_word, parse_links, parse_text_markup, already_escaped);
|
parse_add_markup(s[end+1:s.length], highlight_word, parse_links, parse_text_markup, already_escaped);
|
||||||
}
|
}
|
||||||
} catch (RegexError e) {
|
} catch (RegexError e) {
|
||||||
assert_not_reached();
|
assert_not_reached();
|
||||||
|
|
Loading…
Reference in a new issue