我發現這個很酷的js gettext庫 - >http://code.google.com/p/gettext-js/但我不明白如何實現它。我使用poedit來編輯翻譯,我可以看到它在我簽出項目並運行演示文件時起作用,但當我對文本進行更改時,.po文件不會更新,而且我也看不到新的文字。有人有任何想法嗎?謝謝!使用gettext翻譯.js文件
回答
「我也只好用力蟒蛇在gettext的命令」:
- 文件|偏好|解析器
- 編輯的Python
- 編輯 「擴展名列表..」:
*.py;*.js
- 編輯「Parser表示:」
xgettext --language=Python --force-po -o %o %C %K %F
完成。
感謝leading me有Kentor :)
您必須調用xgettext
才能將字符串提取到.pot文件中,然後運行msgmerge
來更新.po文件。 gettext
manual有所有的血淋淋的細節。
我覺得--language了xgettext的perl = --force-PO -o%Ø%C%K%F(用perl而不是蟒蛇)應該是一個更好的選擇,因爲Python會導致包含單引號(未終止的字符串錯誤)的javascript註釋問題。
我試過你的解決方案,警告沒有顯示。但一些翻譯沒有在js文件中找到(對於Python版本,他們被發現)...所以我更喜歡Python版本,即使有警告...... :( – Andron 2013-04-01 14:27:19
我最初嘗試了兩種配置,Python & Perl但帶有一些複雜的下劃線模板,嵌套引號和雙引號,轉義字符等。這兩個解析器都報告了大量錯誤的廢棄字符串,因此我無法更新.pot或.po文件源代碼正確。
我還沒有成功http://code.google.com/p/gettext-js/
測試了很多嘗試&錯誤後,我發現我可以使用鏈接解析和它poEdit的1.5.7正常工作。這些是應同時啓用最佳匹配的配置參數
從Mac版本的Library/Preferences/net.poedit.Poedit.cfg中提取,您可以簡單地複製並粘貼到對話框上,否則
[Parsers/js]
Extensions=*.js;*.html
Command=xgettext --language=Python --force-po -o %o %C %K %F
KeywordItem=-k%k
FileItem=%f
CharsetItem=--from-code=%c
[Parsers/PHP]
Extensions=*.php;*.js;*.html
Command=xgettext --language=PHP --force-po -o %o %C %K %F
KeywordItem=-k%k
FileItem=%f
CharsetItem=--from-code=%c
請注意,您可能不需要在擴展中包含* .html,我是這樣做的,以解析我的下劃線模板。希望它有助於導致我真的很沮喪:)
- 1. 沒有使用gettext翻譯
- 2. 用PHP和gettext翻譯XSL文件
- 3. getText crowdfounded翻譯
- 4. gettext未翻譯
- 5. 如何組織gettext翻譯文件?
- 6. PHP gettext不翻譯
- 7. 如何同時使用多個.mo文件進行gettext翻譯?
- 8. Gettext不同的翻譯
- 9. gettext沒有翻譯顯示
- 10. 使用gettext翻譯ajax調用中的電子郵件
- 11. Zend Framework 2翻譯使用gettext變量的文本
- 12. 如何在鏈接到翻譯文本時使用gettext?
- 13. 翻譯php應用程序與gettext
- 14. PHP gettext翻譯不起作用
- 15. Django模型翻譯:在數據庫中存儲翻譯或使用gettext?
- 16. 使用Babel:如何保護GNU gettext PO文件中的翻譯者評論(以及舊翻譯)?
- 17. 在翻譯js文件鋼軌
- 18. 翻譯文本文件使用谷歌翻譯API或其他
- 19. 翻譯在JS?
- 20. Gettext的翻譯字符串鏈接
- 21. 通過AJAX返回的Gettext未翻譯
- 22. 在Python和gettext中切換翻譯
- 23. 翻譯在JavaScript中像PHP中的gettext?
- 24. Gettext的或數據庫翻譯
- 25. 使用谷歌翻譯自動翻譯django.po文件
- 26. 翻譯文件,使用此代碼谷歌翻譯的Java API
- 27. 使用預先存在的/系統翻譯與gettext?
- 28. 如何使用gettext進行列表或設置可翻譯?
- 29. 使用ZF的gettext適配器翻譯路由段
- 30. 在php項目中使用gettext - 只有一種語言翻譯
我能弄清楚我遇到的問題。事情是,當修改語言時,我不得不用Poedit重新掃描所有文件。所以我必須先爲該項目添加正確的路徑,然後我必須將Python的解析器用於* .js文件。我還必須在gettext命令中強制python,否則Poedit會抱怨.js文件不被理解,並會嘗試使用C/C++來解析它們。 – Kentor 2010-01-29 18:35:34