From 3db818741ab6fe5f1d28346afb7e637c6dc6d9fb Mon Sep 17 00:00:00 2001 From: Iris System Date: Sat, 27 Aug 2022 23:25:11 +1200 Subject: [PATCH] feat(bot): add `-nospace` (`-ns`) flag to `pk;edit` append/prepend mode Also adds flag aliases `-a` (`-append`) and `-p` (prepend) --- PluralKit.Bot/Commands/Message.cs | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/PluralKit.Bot/Commands/Message.cs b/PluralKit.Bot/Commands/Message.cs index efe5dd85..ef42ecbb 100644 --- a/PluralKit.Bot/Commands/Message.cs +++ b/PluralKit.Bot/Commands/Message.cs @@ -103,8 +103,9 @@ public class ProxiedMessage throw new PKError("Could not edit message."); // Check if we should append or prepend - var append = ctx.MatchFlag("append"); - var prepend = ctx.MatchFlag("prepend"); + var mutateSpace = ctx.MatchFlag("nospace", "ns") ? "" : " "; + var append = ctx.MatchFlag("append", "a"); + var prepend = ctx.MatchFlag("prepend", "p"); // Grab the original message content and new message content var originalContent = originalMsg.Content; @@ -113,9 +114,9 @@ public class ProxiedMessage // Append or prepend the new content to the original message content if needed. // If no flag is supplied, the new contents will completly overwrite the old contents // If both flags are specified. the message will be prepended AND appended - if (append && prepend) newContent = $"{newContent} {originalContent} {newContent}"; - else if (append) newContent = originalContent + " " + newContent; - else if (prepend) newContent = newContent + " " + originalContent; + if (append && prepend) newContent = $"{newContent}{mutateSpace}{originalContent}{mutateSpace}{newContent}"; + else if (append) newContent = $"{originalContent}{mutateSpace}{newContent}"; + else if (prepend) newContent = $"{newContent}{mutateSpace}{originalContent}"; if (newContent.Length > 2000) throw new PKError("PluralKit cannot proxy messages over 2000 characters in length.");