سؤال

برنامجي لديه gtk.TreeView الذي يعرض أ gtk.ListStore. ال gtk.ListStore يحتوي على سلاسل مثل هذا:

"<span size='medium'><b>"+site_title+"</b></span>"+"\n"+URL

أين URL هو (من الواضح) سلسلة عنوان URL. في بعض الأحيان هناك شخصيات في URL التي تجعل بانغو فشل في تحليل الترميز.

هل هناك طريقة للهروب URL ككل بحيث يتجاهلها بانغو حتى يتم عرضها حرفيًا؟ إذا لم يكن كذلك ، كيف يجب أن "الهروب" من شخصيات خاصة في عناوين URL؟

هل كانت مفيدة؟

المحلول

تحتاج إلى الهروب من القيم. لست متأكدًا من التنسيق الدقيق الذي يتطلبه Pango ، لكنه يبدو مثل HTML و CGI.ESCAPE قد تكون الوظيفة كل ما تحتاجه.

import cgi
print "<span size='medium'><b>%s</b></span>\n%s" %
      (cgi.escape(site_title), cgi.escape(URL))

نصائح أخرى

glib.markup_escape_text قد يكون نهجا أكثر قانونيا عند استخدام GTK.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top