From 382bf01befd029017624ae7eae952f0934b98731 Mon Sep 17 00:00:00 2001 From: Kelketek Rritaa Date: Thu, 30 Jan 2014 20:36:51 -0600 Subject: [PATCH 1/3] Fixes #465. Issues with translation method should be resolved. --- src/utils/ansi.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/utils/ansi.py b/src/utils/ansi.py index d5c24e76498..5f3effdeea0 100644 --- a/src/utils/ansi.py +++ b/src/utils/ansi.py @@ -370,8 +370,8 @@ def __init__(self, *args, **kwargs): self.parser = kwargs.pop('parser', ANSI_PARSER) super(ANSIString, self).__init__(*args, **kwargs) self.raw_string = unicode(self) - self.clean_string = self.parser.parse_ansi( - self.raw_string, strip_ansi=True) + self.clean_string = unicode(self.parser.parse_ansi( + self.raw_string, strip_ansi=True)) self._code_indexes, self._char_indexes = self._get_indexes() def __len__(self): @@ -554,14 +554,14 @@ def _transform(func_name): with the resulting string. """ def wrapped(self, *args, **kwargs): - replacement_string = _query_super(func_name)(*args, **kwargs) + replacement_string = _query_super(func_name)(self, *args, **kwargs) to_string = [] for index in range(0, len(self.raw_string)): if index in self._code_indexes: to_string.append(self.raw_string[index]) elif index in self._char_indexes: to_string.append(replacement_string[index]) - return ANSIString(''.join(to_string), decoded=True) + return ANSIString(''.join(to_string), decoded=True) return wrapped From f446a74c28ab520cdafd3246aeb848bcbef55cb4 Mon Sep 17 00:00:00 2001 From: Kelketek Rritaa Date: Thu, 30 Jan 2014 20:40:44 -0600 Subject: [PATCH 2/3] Resolves #466. Items that are not strings are converted into strings before being turned into ANSIStrings. --- src/utils/ansi.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/utils/ansi.py b/src/utils/ansi.py index 5f3effdeea0..24847dac6aa 100644 --- a/src/utils/ansi.py +++ b/src/utils/ansi.py @@ -356,6 +356,8 @@ def __new__(cls, *args, **kwargs): decode strings, as escapes can only be respected once. """ string = args[0] + if not isinstance(string, basestring): + string = str(string) args = args[1:] parser = kwargs.get('parser', ANSI_PARSER) decoded = kwargs.get('decoded', False) or hasattr(string, 'raw_string') From 46110c197637817436c9127bb0e1d0cb8ed51c29 Mon Sep 17 00:00:00 2001 From: Griatch Date: Fri, 31 Jan 2014 21:35:25 +0100 Subject: [PATCH 3/3] Replaced pil with pillow in requirements.txt --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index a7a24029a3c..f55c1fa36e5 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,5 +3,5 @@ django >= 1.5 twisted >= 11.0 -pil +pillow south >= 0.8.4