element-web-patches/greentext.patch

33 lines
1.2 KiB
Diff

--- ./SlashCommands.tsx.orig 2024-03-29 11:54:30.219000000 -0400
+++ ./SlashCommands.tsx 2024-04-04 02:07:24.491092988 -0400
@@ -68,6 +68,29 @@
export const Commands = [
new Command({
+ command: "greentext",
+ args: "<message>",
+ description: _td("pretend you're on an imageboard"),
+ runFn: function(cli, roomId, threadId, args) {
+ const texts = args.split(/\n{2,}(.+|\n+)/g);
+ const greentext = texts[0];
+ const normalText = texts[1] || "";
+
+ let plainGreentext = greentext.replace(/^/g, ">");
+ plainGreentext = plainGreentext.replace(/(?:\r\n|\r|\n)+/g, "\n>");
+
+ let htmlGreentext = greentext.replace(/^/g, "&gt;");
+ htmlGreentext = htmlGreentext.replace(/(?:\r\n|\r|\n)+/g, "<br />&gt;");
+
+ return success(ContentHelpers.makeHtmlMessage(
+ plainGreentext + "\n" + normalText,
+ `<font color="#789922">${htmlGreentext}</font><br/>${normalText}`,
+ ));
+ },
+ category: CommandCategories.messages,
+ }),
+
+ new Command({
command: "spoiler",
args: "<message>",
description: _td("slash_command|spoiler"),