리소스Gettext 복수형 이해하기: WordPress에서 복잡한 복수형을 처리하는 방법

Gettext 복수형 이해하기: WordPress에서 복잡한 복수형을 처리하는 방법

SimplePoTranslate 팀2025년 12월 1일

영어에서 복수형은 간단합니다. 하나의 "Apple"이 있고, 두 개 이상의 "Apples"가 있습니다.

그러나 WordPress 사이트를 폴란드어, 러시아어 또는 아랍어로 번역하는 경우 언어적 지뢰밭에 발을 들여놓는 것과 같습니다.

러시아어에서는 "파일"이라는 단어가 파일이 1개인지, 2-4개인지, 5개 이상인지에 따라 변한다는 사실을 알고 계셨나요?

  • 1 файл (1 파일)
  • 3 файла (3 파일)
  • 5 файлов (5 파일)

번역 도구가 맹목적으로 모든 언어가 영어(단수 대 복수)처럼 작동한다고 가정하면 사용자는 문법적으로 틀린 문장을 보게 되어 브랜드가 전문적이지 않게 보일 것입니다.

이 가이드에서는 WordPress와 Gettext가 이러한 복잡한 규칙을 어떻게 처리하고 정확하게 자동화하는지 설명합니다.

복수형 문자열의 기술적 해부

표준 .po 파일에서 복수형 문자열은 다음과 같습니다.

msgid "You have %d new message"
msgid_plural "You have %d new messages"
msgstr[0] ""
msgstr[1] ""
  • msgid: 단수형(개수 = 1에 사용).
  • msgid_plural: 복수형(개수 != 1에 사용).
  • msgstr[N]: 번역.

영어의 경우 msgstr[0](단수)과 msgstr[1](복수)만 필요합니다. 그러나 다른 언어의 경우 msgstr[2], msgstr[3] 또는 msgstr[5]가 필요할 수 있습니다.

Plural-Forms 헤더

WordPress는 어떤 msgstr을 사용할지 어떻게 알 수 있나요? .po 파일의 헤더를 봅니다.

러시아어의 경우 헤더는 다음과 같습니다. "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"

이 무서운 수학 공식은 WordPress에 다음을 알려줍니다.

  1. 3가지 가능한 형태가 있습니다(nplurals=3).
  2. 숫자가 1로 끝나면(11은 아님) 형식 0을 사용합니다.
  3. 숫자가 2-4로 끝나면(12-14는 아님) 형식 1을 사용합니다.
  4. 나머니 모든 경우에는 형식 2를 사용합니다.

대부분의 번역기가 여기서 실패하는 이유

일반적인 AI 래퍼나 기본 자동화 도구를 사용하는 경우 종종 Plural-Forms 헤더를 무시합니다.

영어 입력(2가지 형태)을 보고 대상 언어에 강제로 적용하려고 합니다.

  • 오류: msgstr[0]msgstr[1]은 채울 수 있지만 msgstr[2]는 비워 둘 수 있습니다.
  • 결과: 러시아 사용자에게 5개의 메시지가 있는 경우 WordPress는 형식 2를 찾습니다. 비어 있거나 누락된 경우 WordPress는 일반적으로 원래 영어 문자열로 돌아갑니다.

갑자기 완전히 현지화된 사이트가 러시아어 문장 한가운데에 영어로 "You have 5 new messages"를 표시합니다. 이는 몰입감과 사용자 신뢰를 깨뜨립니다.

해결책: 복수형을 지원하는 문맥 인식 AI

복수형을 올바르게 처리하려면 두 가지가 필요합니다.

  1. Gettext 표준의 엄격한 준수: 도구는 헤더의 nplurals 개수를 존중해야 합니다.
  2. 언어 지능: AI는 특정 숫자 범위에 대해 단어를 활용하는 방법을 알아야 합니다.

이것은 SimplePoTranslate의 기본 기능입니다.

복잡한 복수형을 처리하는 방법

우리는 텍스트만 번역하는 것이 아닙니다. 우리는 .po 헤더의 수학을 읽습니다.

폴란드어(3가지 복수형이 있음)로 번역하기 위해 파일을 업로드할 때:

  1. 헤더 분석: nplurals=3을 감지합니다.
  2. 프롬프트 엔지니어링: 우리 시스템은 문맥 인식 AI에 지시합니다. "이 문자열을 폴란드어로 번역하세요. 정확히 3가지 형식을 제공하세요. 하나는 단수형, 하나는 2-4로 끝나는 숫자용, 다른 하나는 기타용입니다."
  3. 유효성 검사: 파일을 컴파일하기 전에 출력에 msgstr[0], msgstr[1], msgstr[2]가 정확히 포함되어 있는지 확인합니다.

우리는 이것을 자동으로 처리합니다. 대상 언어의 문법 규칙을 알 필요가 없습니다. 파일을 업로드하면 필요한 모든 복수형 양식을 올바르게 채웁니다.

수동 번역보다 낫습니까?

대상 언어를 유창하게 말하지 않는 한, 이러한 복수형 양식을 수동으로 채울 수는 없습니다. 추측하는 셈이 됩니다. SimplePoTranslate는 이러한 정확한 문법 규칙에 대해 훈련된 고급 LLM을 활용하여 원어민 수준의 정확성을 보장합니다.

복수형을 올바르게 만드세요

"1 Apple, 5 Apples"가 사이트의 전문적인 모습을 망치지 않도록 하십시오. 전 세계 문법의 복잡성을 이해하는 도구를 사용하십시오.

SimplePoTranslate를 사용하면 복수화 엔진을 무료로 테스트할 수 있습니다.

골치 아픈 일 없이 번역할 준비가 되셨습니까? SimplePoTranslate.com에서 무료로 시작하세요