diff --git a/plugins/Utilities.py b/plugins/Utilities.py index 44db0890c..970ff4c72 100644 --- a/plugins/Utilities.py +++ b/plugins/Utilities.py @@ -38,6 +38,8 @@ import plugins import string import utils +import ircmsgs +import ircutils import privmsgs import callbacks @@ -142,6 +144,13 @@ class Utilities(callbacks.Privmsg): """ irc.reply(msg, ' '.join(args), prefixName=False) + def action(self, irc, msg, args): + """takes any number of arguments + + Returns the arguments given it, but as an action. + """ + irc.queueMsg(ircmsgs.action(ircutils.replyTo(msg), ' '.join(args))) + def re(self, irc, msg, args): """ diff --git a/test/test_Utilities.py b/test/test_Utilities.py index 2394d5a52..49a505ebe 100644 --- a/test/test_Utilities.py +++ b/test/test_Utilities.py @@ -65,6 +65,9 @@ class UtilitiesTestCase(PluginTestCase, PluginDocumentation): m = self.getMsg('cpustats') self.assertResponse('echo "%s"' % m.args[1], m.args[1]) + def testAction(self): + self.assertAction('action moos', 'moos') + def testRe(self): self.assertResponse('re "m/My children/" [cpustats]', 'My children') self.assertResponse('re s/user/luser/g user user', 'luser luser')