使用試算表進行在地化

試算表是遊戲在地化最常見的格式之一。在 Godot 中,透過 CSV 格式支援試算表。此指南將說明如何使用 CSV。

CSV 檔案 必須 以沒有 byte order mark 的 UTF-8 編碼儲存。

警告

預設情況下,Microsoft Excel 會以 ANSI 而非 UTF-8 儲存 CSV。雖然沒有內建的方式可直接以 UTF-8 儲存,但可依 此處 的替代做法處理。

建議改用 LibreOffice 或 Google 試算表。

格式

CSV 檔案必須使用如下格式:

keys

<語言1>

<語言2>

<語言N>

KEY1

字串

字串

字串

KEY2

字串

字串

字串

KEYN

字串

字串

字串

「lang」標籤必須代表一種語言,該語言必須是引擎支援的其中一個 有效地區設定,或它們必須以底線符號 (_) 開頭,這表示相關欄位被視為註解且不會被匯入。「KEY」標籤必須是唯一的,並全域性地代表一個字串 (它們通常為大寫,以區別其他字串)。這些金鑰將會在執行時由匹配的翻譯字串取代。請注意大小寫很重要,「KEY1」和「Key1」將會是不同的金鑰。左上角的儲存格將被忽略,且可以留空或包含任何內容。以下是一個範例:

keys

en

es

ja

GREET

Hello, friend!

Hola, amigo!

こんにちは

ASK

How are you?

Cómo está?

元気ですか

BYE

Goodbye

Adiós

さようなら

QUOTE

"Hello" said the man.

"Hola" dijo el hombre.

「こんにちは」男は言いました

下面是同一份 CSV 轉成純文字檔的長相,這通常是你用試算表編輯好之後存檔的結果。如果你直接編輯純文字 CSV,要特別注意:只要內容有逗號、換行或雙引號,整段一定要加雙引號,否則會被當成多個欄或多列,雙引號本身要用兩個連寫("Hello" 變成 ""Hello"")。也可以在 Godot 匯入時改用逗號以外的分隔符。

keys,en,es,ja
GREET,"Hello, friend!","Hola, amigo!",こんにちは
ASK,How are you?,Cómo está?,元気ですか
BYE,Goodbye,Adiós,さようなら
QUOTE,"""Hello"" said the man.","""Hola"" dijo el hombre.",「こんにちは」男は言いました

CSV 匯入器

Godot 會自動把 CSV 檔當作翻譯檔來處理,然後在同一目錄下產生一個或多個翻譯資源檔(壓縮格式)。

匯入時也會自動把這份翻譯檔加進專案設定(project.godot/專案選單)裡的載入清單。Godot 也支援在執行時動態載入或卸載翻譯。

選取 .csv 檔後,打開 匯入 面板,可以調整翻譯檔的壓縮選項與指定分隔符號(預設為逗號,可改成其他符號)。

../../_images/import_csv.webp

只要改過這些設定,記得一定要點「重新匯入」。