Pergunta

Meu programa tem um gtk.TreeView que exibe um gtk.ListStore. o gtk.ListStore contém cordas como esta:

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

Onde URL é (obviamente) uma string de URL. Às vezes há personagens em URL Isso faz com que Pango falhe em analisar a marcação.

Existe uma maneira de escapar URL Como um todo, para que o Pango o ignore para que seja exibido literalmente? Caso contrário, como devo "escapar" de personagens especiais em URLs?

Foi útil?

Solução

Você precisa escapar dos valores. Não tenho certeza de que formato exato Pango exige, mas parece html e o cgi.escape função pode ser tudo que você precisa.

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

Outras dicas

glib.markup_escape_text Pode ser uma abordagem mais canônica ao usar o GTK.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top