2014-10-03 52 views
1

我正在使用python,gtk + 3和glade創建一個movielist接口,我希望它是兩種語言。我遵循了我在不同網站上找到的說明,但我遇到了問題。我有翻譯po文件(英文到西班牙文),但現在,當涉及到添加該文件與翻譯到代碼我運行在各種錯誤。在pygtk中添加traductions文件

gtk.glade.textdomain(APP) 
    gtk.glade.bindtextdomain(APP, DIR) 

是APP文件名和DIR目錄,但GTK名稱不存在,並沒有運行到分段錯誤,我不能導入它。

所以,我基本上需要知道如何在我的pygtk代碼中添加翻譯文件。 謝謝

回答

1

我相信國際化(I18N)應用程序最流行的方式是使用gettext。

https://docs.python.org/2/library/gettext.html

裹要翻譯的字符串這樣_(U「這段文字被翻譯成」)

一個很好的工具來轉換字符串是poEdit的http://poedit.net/

+0

好吧,這適用於翻譯Python代碼中的字符串... 但是對於空地中的文本,這將不起作用... – 2014-10-06 08:10:43

+0

從來沒有使用glade,但它似乎將def存儲在xml文件中,並標記要翻譯的字符串'translatable = 「是」,所以你需要教poedit來處理額外的關鍵字。也許這個網頁將幫助:http://www.servin.com/linux/GladeInternationalization.html – Werner 2014-10-06 14:09:18