12

私のプログラムには、gtk.TreeViewを表示するがありますgtk.ListStore。には次のgtk.ListStoreような文字列が含まれています。

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

URL(明らかに)URL文字列はどこにありますか。URLpangoがマークアップの解析に失敗する原因となる文字が含まれている場合があります。

URLパンゴがそれを無視して文字通り表示されるように、全体として脱出する方法はありますか?そうでない場合、URLの特殊文字をどのように「エスケープ」する必要がありますか?

4

2 に答える 2

22

glib.markup_escape_textGTKを使用する場合は、より標準的なアプローチになる可能性があります。

于 2009-11-25T18:18:54.807 に答える
2

値をエスケープする必要があります。Pangoに必要な正確な形式はわかりませんが、HTMLのように見え、cgi.escape関数で十分な場合があります。

import cgi
print "<span size='medium'><b>%s</b></span>\n%s" %
      (cgi.escape(site_title), cgi.escape(URL))
于 2009-11-19T02:43:44.120 に答える