Necmettin Begiter wrote:
> 2008/5/23 Aydın ŞEN <adigeaydin_at_gmail.com>:
>
>> Bu tip işler içinde Python'da tuple (demet) değişken türü bulunmaktadır.
>> Ayrıca bir dil dosyası oluşturmanıza gerek yok. Buton isimleri için
>> yayınlamak istediğiniz diller kadar tuple nesnesi oluşturursunuz ve buton
>> isimlerini o listeden çekersiniz.
>>
>> Dil seçimi yapıldıktan sonra seçilen dili bir değişkene alıp basit bir if
>> sorgusu içerisinde istediğiniz tuple nesnesinden buton vb. isimlerini
>> yükleyebilirsiniz.
>>
>
> Peki bir soru. Diyelim programımda 5 tane düğme var, isimleri dgmTmm,
> dgmIp, dgmYuru, dgmDur, dgmYavas olsun. Beş dile de destek vermek
> istiyorum. Bunlar da tr_TR, en_US, pt_BR, tr_AZ, de olsun.
>
> Nasıl yapacağım, bana basit bir örnek kod yazabilir misiniz?
> _______________________________________________
> Linux-programlama mailing list
> Linux-programlama_at_liste.linux.org.tr
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>
>
ilk başta test diyebir klasör oluştur.
ilk başta mo dosyaları hazırlayacağız iki tane birisi ingilizce diğeri
türkçe olucak
ingilizce olan:
domain "test"
msgid "Hello"
msgstr "hello"
msgid "World"
msgstr "world"
türkçe olan:
domain "test"
msgid "Hello"
msgstr "merhaba"
msgid "World"
msgstr "dünya"
Bunların ikisde ayrı dosya !
şimdi önce birinciyi al test.po olarak kaydet ve msgfmt test.po ile mo
dosyalarını üret ilk başta
test/locale/en/LC_MESSAGES/test.mo ya kopyala
sonra aynı şeyi türkçe içinde yap onuda
test/locale/tr/LC_MESSAGES/test.mo ya kopyala
burası zor kısmıydı :-)
sonra test klasörüne şu kodu kopyala
import gettext
turkce=gettext.translation('test', './locale' ,languages=['tr'])
eng=gettext.translation('test', './locale', languages=['en'])
_=eng.ugettext
print _('Hello')+" "+_('World')
_=turkce.ugettext
print _('Hello')+" "+_('World')
sonra kodu çalıştır sırasıyla
hello world
merhaba dünya
yazıcak.
biraz karmaşık oldu. :-) ama umarım isteğinizi karşılar.
_______________________________________________
Linux-programlama mailing list
Linux-programlama_at_liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama
Received on Fri 23 May 2008 - 23:29:15 EEST