diff --git a/plugins/Filter/plugin.py b/plugins/Filter/plugin.py index 29e38a2e7..a687be850 100644 --- a/plugins/Filter/plugin.py +++ b/plugins/Filter/plugin.py @@ -756,13 +756,13 @@ class Filter(callbacks.Plugin): vowelrot = wrap(vowelrot, ['text']) - _uwure = re.compile('[lr]') + _uwutrans = utils.str.MultipleReplacer(dict(list(zip('lrLR', 'wwWW')))) def uwu(self, irc, msg, args, text): """ Returns in uwu-speak. """ - text = self._uwure.sub('w', text) + text = self._uwutrans(text) text += random.choice([''] * 10 + [' uwu', ' UwU', ' owo', ' OwO']) irc.reply(text) uwu = wrap(uwu, ['text']) diff --git a/plugins/Filter/test.py b/plugins/Filter/test.py index a038178c2..8cf6ffe2e 100644 --- a/plugins/Filter/test.py +++ b/plugins/Filter/test.py @@ -179,5 +179,6 @@ class FilterTest(ChannelPluginTestCase): def testUwu(self): for _ in range(100): self.assertRegexp('uwu foo bar baz', 'foo baw baz( [uoUO]w[uoUO])?') + self.assertRegexp('uwu FOO BAR BAZ', 'FOO BAW BAZ( [uoUO]w[uoUO])?') # vim:set shiftwidth=4 softtabstop=4 expandtab textwidth=79: