무료 계정을 만들고 매월 30,000자 무료를 받아 AI 기반 현지화 서비스로 콘텐츠를 번역하세요.
시작하는 데 신용카드가 필요하지 않습니다!
저희의 AI 기반 서비스로 PO(Portable Object) 파일을 번역하는 것은 빠르고 정확합니다. PO 형식 구조를 보존하면서 gettext 현지화 콘텐츠를 번역하려면 다음 단계를 따르세요.
PO(Portable Object) 파일은 GNU gettext 국제화 시스템에서 만든 널리 사용되는 현지화 형식입니다. 이 파일은 msgid(원본 텍스트) 및 msgstr(번역된 텍스트) 항목을 사용하여 번역 가능한 문자열을 키-값 쌍으로 저장합니다.
PO 파일은 WordPress, PHP 애플리케이션, Python(Django, Flask), Ruby on Rails, C/C++ 프로그램 및 GTK나 GNOME으로 구축된 데스크톱 애플리케이션을 포함한 많은 오픈 소스 프로젝트와 프레임워크의 표준 현지화 형식입니다.
PO 파일은 다음 핵심 요소가 포함된 항목으로 구성됩니다:
# Translation file for MyApp
#: src/components/header.js:12
msgid "Welcome to our application"
msgstr ""
#: src/components/login.js:8
msgid "Sign in to your account"
msgstr ""
#: src/components/dashboard.js:15
msgid "You have %d new messages"
msgid_plural "You have %d new messages"
msgstr[0] ""
msgstr[1] ""msgid — 번역되지 않은 원본 문자열(원본 용어)입니다. 이는 번역을 찾기 위한 키 역할을 합니다.msgstr — 대상 언어에 대한 번역된 문자열입니다. 비어 있는 msgstr 값은 번역되지 않은 문자열을 나타냅니다.#) — 번역가를 위한 문맥을 제공합니다. #:는 원본 파일 참조를 나타내고, #.은 추출된 주석을 포함하며, #,은 fuzzy와 같은 플래그를 보유합니다.msgid_plural, msgstr[N]) — 언어별 복수형 규칙을 처리합니다. 언어마다 복수형의 개수가 다릅니다(예: 영어는 2개, 폴란드어는 3개, 아랍어는 6개).msgctxt) — 문맥에 따라 다른 번역이 필요한 동일한 원본 문자열을 구분합니다(예: 동사로서의 "Open" vs 형용사로서의 "Open").POT(Portable Object Template) 파일은 PO 파일을 만드는 데 사용되는 템플릿입니다. 여기에는 msgstr 값이 비어 있는 모든 원본 문자열이 포함되어 있습니다. 새 번역을 시작할 때 POT 파일을 복사하고 대상 언어에 맞게 이름을 바꾼(예: fr.po) 다음 번역을 채워 넣습니다.
저희 서비스는 PO 및 POT 콘텐츠를 모두 허용합니다. 어느 형식이든 붙여넣기만 하면 AI가 모든 msgstr 항목에 대한 번역을 생성합니다.
다음은 헤더와 번역 가능한 문자열이 포함된 일반적인 POT 템플릿 파일입니다:
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-01-01 00:00+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: src/app.py:42
msgid "Hello, World!"
msgstr ""저희의 AI 용어집 생성 기능을 사용하면 모든 PO 현지화 파일에서 일관된 용어를 유지할 수 있습니다. 번역 옵션에서 용어집 생성을 토글하여 활성화하세요:
msgstr 항목에 자동으로 적용합니다.%s, %d, %(name)s)를 처리하며 대상 언어의 문화적 뉘앙스에 맞게 번역을 조정합니다.msgctxt), 복수형 및 형식 플래그를 포함한 모든 PO 형식 기능을 처리합니다. 번역 중에 PO 구조가 완전히 보존됩니다.msgstr[N] 항목을 생성합니다.PO 파일은 다양한 플랫폼과 프레임워크의 표준 현지화 형식입니다:
makemessages 명령은 번역 가능한 문자열을 POT 파일로 추출하고, compilemessages는 PO 파일을 바이너리 MO 파일로 컴파일합니다.gettext 젬을 사용합니다.@lingui/cli 도구는 번역 가능한 문자열을 PO 카탈로그로 추출하며, Lingui 런타임은 최적의 성능을 위해 빌드 시점에 컴파일된 번역을 로드합니다.PO 파일은 오픈 소스 커뮤니티에서 30년 이상의 역사를 가진 가장 확립된 현지화 형식 중 하나입니다. JSON이나 YAML 기반 형식과 달리 PO 파일은 복수형, 번역가 주석, 원본 참조 및 문맥적 모호성 해소에 대한 내장 지원을 포함합니다.
최신 프레임워크는 종종 JSON(i18next, React Intl)이나 YAML(Rails)을 사용하지만, PO는 여전히 WordPress 플러그인, PHP 애플리케이션, Python Django 프로젝트 및 Linux 데스크톱 소프트웨어에서 선호되는 형식입니다. 저희 서비스는 두 세계를 연결합니다. 여기서 PO 콘텐츠를 번역하거나, 모든 형식의 일괄 처리를 위해 저희의 국제화 파일 번역 페이지를 사용하세요.
저희 AI 번역은 헤더(Project-Id-Version, Content-Type, Plural-Forms), 번역가 주석, 원본 파일 참조 및 형식 플래그를 포함한 전체 PO 파일 구조를 보존하여 번역된 PO 파일이 msgfmt와 같은 gettext 도구에서 즉시 사용할 수 있도록 합니다.