
복수형을 잃지 않고 PO 파일 번역
msgid, 언어별 올바른 복수형, 주석을 그대로 유지하면서 gettext 워크플로를 더 빠르게 처리해요.
PO 고유의 특성을 무시하는 일반 번역 도구
PO 파일은 단순한 키-값 쌍이 아니에요. 언어마다 다른 복수형, 의미를 구분하는 메시지 문맥, 번역가 주석, 원문 참조가 들어 있어요. 하지만 대부분의 번역 도구는 PO 파일을 평면 텍스트 파일처럼 다뤄요.
언어마다 nplurals와 복수형 수식이 다른데도 일반 도구가 잘못된 복수형 개수를 사용
의미를 구분하는 msgctxt 문맥을 무시하거나 번역
번역가 주석(#.)과 원문 참조(#:)를 삭제
문자 인코딩 헤더와 PO 메타데이터를 손상
원문(영어)
messages.pot
#: src/components/Cart.tsx:42
#. Translator: shown when cart is empty
msgid "Your cart is empty"
msgstr ""
#: src/components/Cart.tsx:55
msgid "item"
msgid_plural "items"
msgstr[0] ""
msgstr[1] ""
#: src/components/Auth.tsx:12
msgctxt "button"
msgid "Sign in"
msgstr ""번역문(스페인어)
es/LC_MESSAGES/messages.po
#: src/components/Cart.tsx:42
#. Translator: shown when cart is empty
msgid "Your cart is empty"
msgstr "Tu carrito está vacío"
#: src/components/Cart.tsx:55
msgid "item"
msgid_plural "items"
msgstr[0] "artículo"
msgstr[1] "artículos"
#: src/components/Auth.tsx:12
msgctxt "button"
msgid "Sign in"
msgstr "Iniciar sesión"i18n Agent가 유지하는 요소
언어별 복수형
대상 언어마다 올바른 nplurals와 복수형 수식을 설정해 수동 구성 불필요
메시지 문맥
의미 구분을 위해 msgctxt를 유지해 강둑의 'bank'와 금융 기관인 'bank'를 정확히 구분
주석 및 참조
번역가 주석(#.), 추출된 주석(#:), 플래그(#,)를 모두 유지
PO 메타데이터
대상 언어에 맞게 헤더(Content-Type, Plural-Forms, charset)를 올바르게 설정
사용 중인 기술 스택 지원
WordPress / WP-CLI
Django
PHP (gettext)
Python (gettext / Babel)
C/C++ (GNU gettext)
Ruby (gettext gem)
이용 방법

1
2
3
terminal
$translate_filesrc/messages/en.json
--target["de", "ja", "es"]
Done.3 languages, 142 keys translated.
수동으로 복사해 붙여 넣거나 문자열을 추출할 필요 없이 번역된 파일만 받아보세요.
지금 i18n Agent 사용해 보기
번역 파일을 여기에 드롭
JSON, YAML, PO, XML, CSV, Markdown, Properties
또는 클릭하여 파일 선택
대상 언어
가입 불필요즉시 견적
자주 묻는 질문
기업 팀인가요?
아직 TMS 계약에 묶여 있나요? 이전 방법을 함께 알아봐요.