Traduzindo rapidamente a aplicação

1

Eu criei um aplicativo usando quickly create ubuntu-application myapp . Então criei traduções e criei o pacote deb quickly package para instalá-lo e testá-lo. Quando eu executo myapp, todas as strings dos arquivos glade foram traduzidas, mas todas as strings do código não foram traduzidas. O que é isso? Como resolver este problema?

    
por Denis Kovalskiy 13.07.2012 / 07:57

2 respostas

2

Eu resolvi isso. Eu devo usar locale.gettext em vez de gettext . Eu não sei qual é a diferença, mas funciona.

    
por Denis Kovalskiy 14.07.2012 / 07:27
1

Em seu código, você precisa marcar todas as suas strings para tradução, colocando-as em _() . Por exemplo:

import gettext
from gettext import gettext as _
gettext.textdomain('yourappname')

some_string = 'This is not a translatable string'
some_other_string = _('This is a translatable string')

Observe as instruções gettext acima, que são colocadas rapidamente em cada arquivo de origem. Você precisará adicioná-los a qualquer arquivo de origem que contenha strings traduzíveis.

    
por David Planella 13.07.2012 / 09:34