Poedit - 免費的多國語系 PO 檔編輯器
在你的產品征服星辰大海之前,都會面臨多國語系的問題,也就是針對使用不同語言的使用者提供不同語言的翻譯,這種問題很早就有解決方案,其中一種就是使用 gettext, 這種解決方案會使用 1 種副檔名為 po
的檔案,裏面放著原文 Id 與翻譯的對照,例如:
msgid "hello world"
msgstr "你好,世界"
上述檔案在翻譯完成之後會進一步編譯成 MO 檔,也就是 gettext 最終需要讀取的格式。 而使用時,你的程式需要以 msgid 做為參數交給 gettext 幫忙取出對應的翻譯:
print(gettext('hello world'))
當使用者使用繁體中文時,就會得到結果:
你好,世界
p.s. 另 1 種流派是將 msgid 設定為 1 個特殊的 Id 字串,好處是改原文翻譯不需要所有 mo 檔都更新,只需要更新 1 個 mo 檔即可
所以在做多國語系時,會使用線上服務或者試算表給專業翻譯人員,讓他們對照並填入翻譯後的內容。
但除了上述方法之外,也可以使用 POEDIT 這款免費的 PO 檔編輯器。
POEDIT 可以讓人直接開啟 PO 檔進行翻譯,還可以直接編譯成 MO 檔,算是一個不需要花錢還能得到不錯體驗的解決方案。
p.s. POEDIT 也有提供付費功能,整合自動翻譯(Microsoft, Google, DeepL 3 種翻譯模型)、翻譯建議等功能,也可以參考比價一下。