mirror of
https://github.com/twisterarmy/twister-html.git
synced 2025-01-14 00:48:05 +00:00
fix of #markdown chars position data collecting
This commit is contained in:
parent
4d11c5f5c6
commit
5e93f5263b
@ -273,6 +273,66 @@ function htmlFormatMsg(msg, mentions) {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function kindOfL(i) {
|
||||||
|
if (stopCharsMarkout.indexOf(msg.str[i]) > -1) {
|
||||||
|
for (var j = i - 1; j > -1; j--) {
|
||||||
|
if (msg.str[j] === chr) {
|
||||||
|
return -1;
|
||||||
|
} else if (stopCharsMarkout.indexOf(msg.str[j]) === -1) {
|
||||||
|
return whiteSpaces.indexOf(msg.str[j]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if (msg.str[i] === '<') {
|
||||||
|
for (var j = i - 1; j > -1; j--) {
|
||||||
|
if (msg.str[j] === '>') {
|
||||||
|
if (j === 0) {
|
||||||
|
return -1;
|
||||||
|
} else {
|
||||||
|
if (msg.str[j - 1] === chr) {
|
||||||
|
return -1;
|
||||||
|
} else {
|
||||||
|
return kindOfL(j - 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return whiteSpaces.indexOf(msg.str[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
function kindOfR(i) {
|
||||||
|
if (stopCharsMarkout.indexOf(msg.str[i]) > -1) {
|
||||||
|
for (var j = i + 1; j < msg.str.length; j++) {
|
||||||
|
if (msg.str[j] === chr) {
|
||||||
|
return -1;
|
||||||
|
} else if (stopCharsMarkout.indexOf(msg.str[j]) === -1) {
|
||||||
|
return whiteSpaces.indexOf(msg.str[j]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if (msg.str[i] === '>') {
|
||||||
|
for (var j = i + 1; j < msg.str.length; j++) {
|
||||||
|
if (msg.str[j] === '<') {
|
||||||
|
if (j === msg.str.length - 1) {
|
||||||
|
return -1;
|
||||||
|
} else {
|
||||||
|
if (msg.str[j + 1] === chr) {
|
||||||
|
return -1;
|
||||||
|
} else {
|
||||||
|
return kindOfR(j + 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return whiteSpaces.indexOf(msg.str[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
var i, j, t, l, r, htmlEntityEncoded;
|
var i, j, t, l, r, htmlEntityEncoded;
|
||||||
var w = false;
|
var w = false;
|
||||||
var p = [];
|
var p = [];
|
||||||
@ -291,32 +351,8 @@ function htmlFormatMsg(msg, mentions) {
|
|||||||
p.push({i: i, k: j - i, t: 1, w: w, a: -1, p: -1});
|
p.push({i: i, k: j - i, t: 1, w: w, a: -1, p: -1});
|
||||||
w = false;
|
w = false;
|
||||||
} else {
|
} else {
|
||||||
if (stopCharsMarkout.indexOf(msg.str[i - 1]) > -1) {
|
l = kindOfL(i - 1);
|
||||||
l = 1;
|
r = kindOfR(j);
|
||||||
for (t = i - 2; t > -1; t--) {
|
|
||||||
if (msg.str[t] === chr) {
|
|
||||||
l = -1;
|
|
||||||
break;
|
|
||||||
} else if (stopCharsMarkout.indexOf(msg.str[t]) === -1) {
|
|
||||||
l = whiteSpaces.indexOf(msg.str[t]);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else
|
|
||||||
l = whiteSpaces.indexOf(msg.str[i - 1]);
|
|
||||||
if (stopCharsMarkout.indexOf(msg.str[j]) > -1) {
|
|
||||||
r = 1;
|
|
||||||
for (t = j + 1; t < msg.str.length; t++) {
|
|
||||||
if (msg.str[t] === chr) {
|
|
||||||
r = -1;
|
|
||||||
break;
|
|
||||||
} else if (stopCharsMarkout.indexOf(msg.str[t]) === -1) {
|
|
||||||
r = whiteSpaces.indexOf(msg.str[t]);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else
|
|
||||||
r = whiteSpaces.indexOf(msg.str[j]);
|
|
||||||
if (l > -1) {
|
if (l > -1) {
|
||||||
if (r > -1) {
|
if (r > -1) {
|
||||||
if (j - i > 2) {
|
if (j - i > 2) {
|
||||||
|
Loading…
Reference in New Issue
Block a user