ロックされたキーは翻訳されず、ソースファイルからすべてのターゲットファイルへそのままコピーされます。Lingo.dev CLI はそれらを翻訳処理の対象外とし、すべての言語でソースの値を保持します。
設定#
バケット内で lockedKeys を i18n.json に追加します。
json
{
"buckets": {
"json": {
"include": ["locales/[locale].json"],
"lockedKeys": ["brand/name", "config/apiUrl", "system/version"]
}
}
}仕組み#
次のソースファイルがあるとします。
json
{
"welcome": "Welcome to our platform",
"brand": {
"name": "Lingo.dev"
},
"config": {
"apiUrl": "https://api.example.com"
}
}"lockedKeys": ["brand/name", "config/apiUrl"] を設定すると、スペイン語のターゲットファイルは次のようになります。
json
{
"welcome": "Bienvenido a nuestra plataforma",
"brand": {
"name": "Lingo.dev"
},
"config": {
"apiUrl": "https://api.example.com"
}
}翻訳されるのは welcome だけです。ロックされたキーはソースの値を完全にそのまま保持します。
キーパス記法#
ネストされたキーを指定するには、スラッシュ(/)を使います。
json
{ "lockedKeys": ["system/engine/component"] }複数のキーに一致させるには、アスタリスク(*)を使います。
json
{ "lockedKeys": ["navigation/menuItems/*"] }名前にドットを含むキーもそのまま扱えます。modules/ai.translation は "modules" 内の "ai.translation" というキーを指定します。
キーのロックとキーの無視#
| キーのロック | キーの無視 | |
|---|---|---|
| ターゲットファイルに含まれるか | はい — ソースの値のまま | いいえ |
| 用途 | ブランド名、技術ID、URL | デバッグ文字列、内部フラグ、テストデータ |
