Lingo.dev + .jsonc (주석이 있는 JSON)
Lingo.dev CLI는 JSONC(주석이 포함된 JSON) 파일을 번역하며, 모든 표준 JSON 기능과 함께 주석 및 후행 쉼표를 지원합니다. CLI는 주석을 번역 힌트로 추출하고, 정확한 형식을 유지하며, 중첩 구조를 지능적으로 처리하고, 비용 효율성을 위해 수정된 콘텐츠만 처리합니다.
빠른 설정
i18n.json
구성 파일을 생성합니다:
{
"locale": {
"source": "en",
"targets": ["es", "fr", "de"]
},
"buckets": {
"jsonc": {
"include": ["locales/[locale].jsonc"]
}
}
}
참고: [locale]
은 CLI 실행 중에 실제 로케일로 대체되므로 구성에서 문자 그대로 유지해야 하는 플레이스홀더입니다.
모든 것 번역하기
npx lingo.dev@latest i18n
중첩 구조를 자동으로 처리하고, 주석을 번역 힌트로 추출하며, 변경된 콘텐츠만 업데이트합니다.
주석 기반 번역 힌트
JSONC의 주요 장점은 주석을 사용하여 번역 컨텍스트를 제공하는 것입니다:
{
// 이 주석은 인사말에 대한 컨텍스트를 제공합니다
"greeting": "Hello, world!",
"button": "Click me" /* 이것은 버튼의 목적을 설명합니다 */,
/*
* 복잡한 컨텍스트에 대한 여러 줄 주석
* 문화적 뉘앙스 설명
*/
"welcome": "Welcome to our app"
}
주석은 자동으로 힌트로 추출되어 번역 품질을 향상시키고 AI 번역기에 컨텍스트를 제공합니다.
스마트 구조 보존
복잡한 계층 구조를 유지하고 후행 쉼표를 지원합니다:
{
"nav": {
"home": "Home", // 네비게이션 항목
"about": {
"team": "Our Team" // 중첩된 네비게이션
},
},
"items": {
"one": "{{count}} item",
"other": "{{count}} items", // 복수형 지원
},
}
고급 구성
파일 제외
"jsonc": {
"include": ["locales/[locale]/*.jsonc"],
"exclude": ["locales/[locale]/config.jsonc"]
}
기술적 키 잠금
"jsonc": {
"lockedKeys": ["app/version", "settings/apiKey"]
}
중첩된 키 경로에는 슬래시(/
)를 사용하거나 여러 키 경로를 일치시키려면 별표(*
)를 사용하세요.