翻譯
備註:
從 v1.20.0 開始,@logto/cli
中的 translate 指令已被移除,並作為獨立的 @logto/translate
套件在 logto monorepo 中維護。更多詳情請參閱 translate CLI。
使用 CLI 管理 i18n 翻譯。這些指令是為想要對 Logto 做出貢獻的開發者準備的。如果你只想使用 Logto 並進行自訂翻譯,請參閱這份指南。
同步鍵值
假設我們在 phrases
套件的 en
資料夾中對翻譯鍵值進行了一些更改。我們希望將這些更改同步到 pt-BR
資料夾。運行以下指令以同步翻譯鍵值和檔案結構:
pnpm cli translate sync-keys --target pt-BR
此指令將從來源語言資料夾(預設為 en
)讀取所有翻譯鍵值,並將其同步到目標語言資料夾(此例中為 pt-BR
)。
- 如果目標語言資料夾不存在,將自動創建;
- 如果目標語言資料夾已存在,將更新新鍵值並移除過時的鍵值。
對於每個翻譯鍵值:
- 如果目標中缺少某個鍵值,將添加該鍵值並附上註解以指示該短語未翻譯(標記為
/** UNTRANSLATED */
); - 如果基準中缺少某個鍵值,將從目標中移除該鍵值;
- 如果基準和目標中都存在某個鍵值,將使用目標的值。
要同步 phrases
套件中所有語言的鍵值,運行以下指令:
pnpm cli translate sync-keys --target all
因此,我們可以專注於更新來源語言資料夾中的翻譯鍵值,其他語言的翻譯鍵值將自動更新。
資訊:
此指令預設對 phrases
套件執行。你可以使用 --package
選項指定套件名稱。例如,使用 --package phrases-experience
來同步 phrases-experience
套件的鍵值。
同步鍵值後,我們可以使用 ChatGPT API 翻譯這些鍵值。
使用 ChatGPT 翻譯鍵值
運行以下指令以使用 ChatGPT 翻譯鍵值:
pnpm cli translate sync
此指令將翻譯所有未翻譯的鍵值(標記為 /** UNTRANSLATED */
),涵蓋 phrases
和 phrases-experience
套件中的所有語言。注意,運行此指令需要環境變數 OPENAI_API_KEY
。