From 3312ab214393c1172ac72525d68823bfb3dee4a6 Mon Sep 17 00:00:00 2001 From: Yann Leboulanger <asterix@lagaule.org> Date: Tue, 18 Sep 2012 17:24:51 +0200 Subject: [PATCH] print punycode encoded urls if they contain non-ascii chars. Fixes #7204 --- src/conversation_textview.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/conversation_textview.py b/src/conversation_textview.py index 8d7cce1a6d..f7fbbe272f 100644 --- a/src/conversation_textview.py +++ b/src/conversation_textview.py @@ -49,7 +49,7 @@ from common.fuzzyclock import FuzzyClock from htmltextview import HtmlTextView from common.exceptions import GajimGeneralException -from common.exceptions import LatexError +from encodings.punycode import punycode_encode as puny_encode NOT_SHOWN = 0 ALREADY_RECEIVED = 1 @@ -1165,6 +1165,11 @@ class ConversationTextview(gobject.GObject): # convert all names to TextTag all_tags = [(ttt.lookup(t) if isinstance(t, str) else t) for t in all_tags] buffer_.insert_with_tags(end_iter, special_text, *all_tags) + if 'url' in tags: + puny_text = puny_encode(special_text) + if not puny_text.endswith('-'): + end_iter = buffer_.get_end_iter() + buffer_.insert(end_iter, " (%s)" % puny_text) def print_empty_line(self): buffer_ = self.tv.get_buffer() -- GitLab