diff --git a/plugins/Alias/test.py b/plugins/Alias/test.py index c9fc8c12d..a68829980 100644 --- a/plugins/Alias/test.py +++ b/plugins/Alias/test.py @@ -68,6 +68,8 @@ class AliasTestCase(ChannelPluginTestCase): def testAliasHelp(self): self.assertNotError('alias add slashdot foo') self.assertRegexp('help slashdot', "Alias for .*foo") + self.assertNotError('alias add nonascii echo éé') + self.assertRegexp('help nonascii', "Alias for .*echo éé") def testRemove(self): self.assertNotError('alias add foo echo bar') diff --git a/src/utils/str.py b/src/utils/str.py index bc7e0fdfd..82c4c18f4 100644 --- a/src/utils/str.py +++ b/src/utils/str.py @@ -444,10 +444,12 @@ def format(s, *args, **kwargs): char = match.group(1) if char == 's': token = args.pop() - if isinstance(token, unicode) or isinstance(token, str): + if isinstance(token, str): return token + elif sys.version_info[0] < 3 and isinstance(token, unicode): + return token.encode('utf8') else: - return unicode(token) + return str(token) elif char == 'i': # XXX Improve me! return str(args.pop())