diff --git a/miku/plugins/patterns.lua b/miku/plugins/patterns.lua new file mode 100644 index 0000000..8b19514 --- /dev/null +++ b/miku/plugins/patterns.lua @@ -0,0 +1,33 @@ +local patterns = {} + +local utilities = require('miku.utilities') + +patterns.triggers = { + '^/?s/.-/.-$' +} + +function patterns:action(msg) + if not msg.reply_to_message then return true end + local output = msg.reply_to_message.text + if msg.reply_to_message.from.id == self.info.id then + output = output:gsub('Du meintest wohl:\n"', '') + output = output:gsub('"$', '') + end + local m1, m2 = msg.text:match('^/?s/(.-)/(.-)/?$') + if not m2 then return true end + local res + res, output = pcall( + function() + return output:gsub(m1, m2) + end + ) + if res == false then + utilities.send_reply(self, msg, 'Falsches Pattern!') + else + output = output:sub(1, 4000) + output = 'Du meintest wohl:\n"' .. output .. '"' + utilities.send_reply(self, msg.reply_to_message, output) + end +end + +return patterns \ No newline at end of file