簡體   English   中英

使用gettext翻譯.js文件

[英]translate .js files using gettext

我找到了這個很酷的js gettext庫 - > http://code.google.com/p/gettext-js/但我不明白如何實現它。 我正在使用poedit來編輯翻譯,我可以看到它在我簽出項目並運行演示文件時有效,但是當我對文本進行更改時,.po文件不會更新,我看不到新文本。 有人有什么想法嗎? 謝謝!

“我還必須在gettext命令中強制使用python”:

  1. 文件|偏好|解析器
  2. 編輯Python
  3. 編輯“擴展名列表”:
  4. *.py;*.js
  5. 編輯“Parser表示:”
  6. xgettext --language=Python --force-po -o %o %C %K %F

完成。

謝謝你帶領我到肯特爾:)

我認為xgettext --language = perl --force-po -o%o%C%K%F(使用perl而不是python)應該是更好的選擇,因為python導致javascript注釋包含單引號的問題(未終結字符串錯誤)。

我最初嘗試使用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,我這樣做是為了解析我的下划線模板。 希望它有助於使我真的很沮喪:)

您必須調用xgettext才能將字符串解壓縮到.pot文件中,然后運行msgmerge來更新.po文件。 gettext手冊包含所有血腥細節。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM