Flutter ARB 파일 누락 키 검사기

.arb 파일을 놓으면 모든 언어를 템플릿과 비교해 누락된 키, 남는 키, 빈 값, 더 이상 맞지 않는 플레이스홀더를 보여 줍니다. 무료이고 가입이 필요 없으며, 파일은 브라우저 밖으로 나가지 않습니다.

ARB 파일 비교하기

또는 두 파일의 내용을 붙여넣기

브라우저에서 비교하며, 파일은 업로드되지 않습니다.

파일을 하나하나 손으로 고치지 않고 수정하기

LocalePilot은 현지화 폴더 전체를 여는 데스크톱 앱입니다. 누락된 키를 찾고, 플레이스홀더를 검사하고, 원하면 로컬 AI로 번역한 뒤 백업과 함께 내보냅니다. macOS 버전을 마무리하고 있습니다. 이메일을 남기시면 출시 소식을 알려 드립니다.

검사기가 찾는 것

  • 누락된 키: 템플릿에는 있지만 어떤 언어에는 없는 키. 앱은 컴파일되지만 사용자에게는 자기 언어가 아니라 템플릿 언어의 텍스트가 보입니다.
  • 남는 키: 번역에는 있지만 템플릿에는 더 이상 없는 키. 삭제한 기능의 흔적인 경우가 많습니다.
  • 빈 값: 키는 있지만 번역이 비어 있는 경우. 단순한 키 비교로는 놓칩니다.
  • 플레이스홀더 불일치: {name}이 {nom}으로 바뀌었거나 빠진 경우. ICU 복수형과 select 안의 플레이스홀더도 읽습니다.

@로 시작하는 키(메타데이터와 @@locale)는 무시합니다. 기준 파일은 l10n.yaml의 template-arb-file로 지정한 파일로, 보통 app_en.arb입니다. 도구가 자동으로 고르며, 다른 파일을 선택할 수도 있습니다.

Flutter 앱에서 누락된 키 찾기

  1. arb-dir 폴더(기본값 lib/l10n)의 파일을 모읍니다.
  2. 템플릿을 포함해 한꺼번에 놓습니다.
  3. 언어별로 문제를 확인한 뒤 누락된 키를 ARB 형식으로 복사합니다. 템플릿 텍스트가 들어 있어 바로 번역할 수 있습니다.

빌드할 때마다 자동으로 검사하려면 flutter gen-l10n의 untranslated-messages-file 옵션과 간단한 CI 스크립트를 쓰면 됩니다. 자세한 내용은 ARB 파일의 누락된 키 찾기 가이드에 있습니다. ICU 플레이스홀더 실수는 복수형과 플레이스홀더 가이드에서 설명합니다.

검사기의 한계

이 도구는 키와 플레이스홀더 이름을 비교합니다. ICU 구문 전체를 검증하지 않고(그것은 flutter gen-l10n의 역할입니다), 번역 품질을 판단하지 않으며, 파일을 수정하지 않습니다. 프로젝트 전체를 가져와 번역하고 백업과 함께 내보내려면 LocalePilot 같은 현지화 편집기가 필요합니다.

자주 묻는 질문

ARB 파일이 서버에 업로드되나요?

아닙니다. 비교는 브라우저에서 이루어지며 파일도 키도 어디로도 전송되지 않습니다. 개발자 도구의 네트워크 탭에서 확인할 수 있습니다.

누락된 키를 찾을 때 기준 파일은 무엇인가요?

템플릿 파일, 즉 l10n.yaml의 template-arb-file이 가리키는 파일(보통 app_en.arb)입니다. 도구는 @@locale이나 파일 이름으로 이를 고르며, 다른 파일을 선택할 수도 있습니다.

도구가 파일을 수정하나요?

아닙니다. 읽기 전용입니다. 번역할 수 있도록 누락된 키를 템플릿 텍스트와 함께 ARB 형식으로 복사하는 기능만 제공합니다.

Flutter는 누락된 번역을 어떻게 알려 주나요?

l10n.yaml에 untranslated-messages-file 옵션을 넣으면 flutter gen-l10n이 언어별로 빠진 템플릿 키를 JSON 파일에 기록합니다. 이 옵션과 CI용 비교 스크립트는 전용 가이드에서 다룹니다.

ICU 복수형과 select도 지원하나요?

플레이스홀더는 지원합니다. plural이나 select 분기 안의 플레이스홀더도 템플릿과 비교합니다. ICU 구문 자체는 검증하지 않습니다.

LocalePilot과 무엇이 다른가요?

이 도구는 붙여넣거나 놓은 파일을 저장하지 않고 검사합니다. LocalePilot은 macOS 버전을 마무리 중인 데스크톱 앱으로, 프로젝트 전체를 열어 검토하고, 로컬 또는 클라우드 AI로 번역하고, 백업과 함께 내보냅니다.

출시 알림 받기

LocalePilot은 마무리 단계입니다. 이메일을 남기시면 출시 소식을 알려 드립니다.

  • macOS 12 이상 · Ollama 또는 LM Studio 선택 사항
  • 앱 인터페이스 언어: 영어, 프랑스어, 스페인어, 이탈리아어, 포르투갈어.