Merge pull request #364 from zoemartin01/fix/reply-mentions
Fix mentions in replies being cut off
This commit is contained in:
commit
6455c5fc5f
@ -177,11 +177,28 @@ namespace PluralKit.Bot
|
|||||||
if (msg.Length > 100)
|
if (msg.Length > 100)
|
||||||
{
|
{
|
||||||
msg = repliedTo.Content.Substring(0, 100);
|
msg = repliedTo.Content.Substring(0, 100);
|
||||||
|
var endsWithOpenMention = Regex.IsMatch(msg, @"<[at]?[@#:][!&]?(\w+:)?(\d+)?(:[tTdDfFR])?$");
|
||||||
|
if (endsWithOpenMention)
|
||||||
|
{
|
||||||
|
var mentionTail = repliedTo.Content.Substring(100).Split(">")[0];
|
||||||
|
if (repliedTo.Content.Contains(msg + mentionTail + ">"))
|
||||||
|
msg += mentionTail + ">";
|
||||||
|
}
|
||||||
|
|
||||||
|
var endsWithUrl = Regex.IsMatch(msg,
|
||||||
|
@"(http|https)(:\/\/)?(www\.)?([-a-zA-Z0-9@:%._\+~#=]{1,256})?\.?([a-zA-Z0-9()]{1,6})?\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)$");
|
||||||
|
if (endsWithUrl)
|
||||||
|
{
|
||||||
|
var urlTail = repliedTo.Content.Substring(100).Split(" ")[0];
|
||||||
|
msg += urlTail + " ";
|
||||||
|
}
|
||||||
|
|
||||||
var spoilersInOriginalString = Regex.Matches(repliedTo.Content, @"\|\|").Count;
|
var spoilersInOriginalString = Regex.Matches(repliedTo.Content, @"\|\|").Count;
|
||||||
var spoilersInTruncatedString = Regex.Matches(msg, @"\|\|").Count;
|
var spoilersInTruncatedString = Regex.Matches(msg, @"\|\|").Count;
|
||||||
if (spoilersInTruncatedString % 2 == 1 && spoilersInOriginalString % 2 == 0)
|
if (spoilersInTruncatedString % 2 == 1 && spoilersInOriginalString % 2 == 0)
|
||||||
msg += "||";
|
msg += "||";
|
||||||
msg += "…";
|
if (msg != repliedTo.Content)
|
||||||
|
msg += "…";
|
||||||
}
|
}
|
||||||
|
|
||||||
content.Append($"**[Reply to:]({jumpLink})** ");
|
content.Append($"**[Reply to:]({jumpLink})** ");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user