잠긴 키는 번역되지 않고 소스 파일에서 모든 대상 파일로 그대로 복사됩니다. Lingo.dev CLI는 이런 키를 번역 처리에서 완전히 제외하고, 모든 언어에서 원본 값을 유지합니다.
설정#
버킷의 i18n.json에 lockedKeys을 추가하세요:
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" 키를 가리킵니다.
키 잠금 vs. 키 무시#
| 키 잠금 | 키 무시 | |
|---|---|---|
| 대상 파일에 포함됨 | 예 - 소스 값 그대로 | 아니요 |
| 사용 사례 | 브랜드명, 기술 ID, URL | 디버그 문자열, 내부 플래그, 테스트 데이터 |
