當前在項目中使用Gettext並且.po文件在版本控制下很好地保持 。版本控制下的Gettext .po文件
PO文件當然包含翻譯,但除此之外,它們還包含一些元數據 - 有關可轉換字符串所在的確切文件和行號的信息。
問題是,每次更新PO文件時,元數據 都會改變很多,而不是實際的翻譯。這使得它 真的很難以後從版本控制差異中看到什麼實際上是 改變 - 你只是看到文件名和行 號碼的變化無數。這樣的:
- #: somefile.js:43
- #: somefile.js:45
- #: somefile.js:118
+ #: somefile.js:203
+ #: somefile.js:215
msgid "Translate me please"
msgstr "Tõlgi mind palun"
- #: somefile.js:23
- #: somefile.js:135
+ #: otherfile.js:23
+ #: otherfile.js:135
msgid "Note"
msgstr "Märkus"
- #: andThatFile.js:18
#: orThisFile.js:131
- msgid "Before I was like this"
- msgstr "Selline olin ma enne"
+ msgid "I happen to be changed"
+ msgstr "Paistab, et mind muudeti"
當然,一個簡單的解決方法是隻在禁用了xgettext輸出 文件名/行號意見產生。但我實際上發現這些文件名在翻譯時非常有用。
我當然不可能是唯一不喜歡他的PO文件差異的人。 建議?
您也可以嘗試將該更改分成2個更改:一個更新元數據,一個更新元數據翻譯。然後,您可以忽略元數據更改。 – 2010-07-09 21:30:38