재번역

Lingo.dev CLI는 소스 텍스트가 변경되면 자동으로 콘텐츠를 재번역하며, 다른 이유로 번역을 새로 고쳐야 할 때 수동 재번역 옵션을 제공합니다.

CLI의 콘텐츠 지문 시스템은 변경되지 않은 콘텐츠의 불필요한 재번역을 피하면서 번역이 소스 변경 사항과 동기화된 상태를 유지하도록 보장합니다.

자동 재번역

소스 콘텐츠를 수정하면 Lingo.dev CLI가 콘텐츠 지문을 통해 변경 사항을 감지하고 다음 실행 시 영향을 받는 키를 재번역합니다.

예시 워크플로:

// locales/en.json (original)
{
  "button.save": "Save changes"
}

// locales/es.json (generated)
{
  "button.save": "Guardar cambios"
}

소스 업데이트 후:

// locales/en.json (modified)
{
  "button.save": "Save all changes"
}

npx lingo.dev@latest run를 실행하면 스페인어 버전이 다시 번역됩니다:

// locales/es.json (updated)
{
  "button.save": "Guardar todos los cambios"
}

CLI는 새 콘텐츠 지문을 i18n.lock와 비교하여 업데이트가 필요한 번역을 식별합니다.

수동 재번역

소스가 변경되지 않았더라도 콘텐츠를 재번역해야 하는 경우가 있습니다. 이는 AI 모델을 업데이트하거나, 번역 프롬프트를 변경하거나, 개선된 컨텍스트로 번역을 새로 고치려는 경우에 발생합니다.

전체 재번역

전체 재번역 강제 실행:

npx lingo.dev@latest run --force

이는 lockfile을 우회하고 모든 콘텐츠를 재번역하여 i18n.lock 파일을 처음부터 다시 생성합니다.

타겟 재번역

특정 언어 대상 지정:

npx lingo.dev@latest run --target-locale es

다른 언어는 보존하면서 스페인어 콘텐츠만 재번역합니다.

특정 파일 유형 대상 지정:

npx lingo.dev@latest run --bucket json

JSON 파일만 재번역하며, 파일 유형마다 업데이트 빈도가 다를 때 유용합니다.

특정 번역 키 대상 지정:

npx lingo.dev@latest run --key welcome.title

모든 대상 언어에서 단일 키를 재번역합니다. 중첩된 키의 경우 점 표기법을 사용하세요:

npx lingo.dev@latest run --key header.navigation.about

특정 파일 대상 지정:

npx lingo.dev@latest run --file blog.[locale].json

버킷 내의 특정 파일을 재번역합니다. 여러 파일을 대상으로 지정할 수 있습니다:

npx lingo.dev@latest run --file landing.[locale].json --file pricing.[locale].json

옵션 결합

정밀한 제어를 위해 대상 지정 옵션을 결합할 수 있습니다:

npx lingo.dev@latest run --force --bucket json --target-locale es

이는 모든 JSON 콘텐츠를 재번역하지만 스페인어에 대해서만 수행합니다.

번역 컨텍스트 업데이트

AI 번역 설정을 수정해도 기존 번역은 자동으로 업데이트되지 않습니다. 새로운 프롬프트나 모델을 이전에 번역된 콘텐츠에 적용하려면 수동 재번역이 필요합니다.

재번역이 필요한 일반적인 시나리오:

  • 한 AI 모델에서 다른 모델로 전환
  • 더 나은 컨텍스트를 위한 번역 프롬프트 업데이트
  • 원시 LLM API에서 Lingo.dev 엔진으로 이동
  • 원시 LLM API 사용 시 기존 번역 전반의 용어 일관성 개선

잠금 파일 통합

재번역은 i18n.lock 파일을 새로운 콘텐츠 지문으로 업데이트합니다. 이를 통해 향후 실행 시 현재 번역 설정에서 처리된 콘텐츠를 올바르게 추적할 수 있습니다.

잠금 파일은 재번역 루프를 방지하고 수동 재번역 작업 후에도 증분 번역의 성능 이점을 유지합니다.