사설 토토stgreSQL프로그램(서버 및 고객)은 귀하가 선호하는 언어로 메시지를 발행할 수 있습니다 -- 메시지가 번역된 경우. 생성 및 번역된 메시지 세트를 유지하려면 사람들의 도움이 필요합니다. 모국어를 잘 구사하며 다음과 같은 활동에 기여하고 싶은 사람사설 토토stgreSQL노력. 당신은하지 않습니다 이 일을 하려면 프로그래머가 되어야 합니다. 이 섹션 도움을 주는 방법을 설명합니다.
우리는 당신의 언어 능력을 판단하지 않습니다 -- 이 섹션은 소프트웨어 도구에 대해. 이론적으로는 텍스트만 있으면 됩니다. 편집자. 하지만 이것은 당신이 그렇게 하는 가능성이 희박한 경우에만 해당됩니다. 번역된 메시지를 시험해 보고 싶지 않습니다. 당신이 소스 트리를 구성하려면 반드시--enable-nls옵션. 이것은 또한 다음 사항을 확인합니다.libintl도서관과msgfmt모든 최종 사용자가 사용하는 프로그램 어쨌든 필요합니다. 작업을 시험해 보려면 해당하는 지침을 따르십시오. 설치 지침의 일부입니다.
당신이 새로운 번역 노력을 시작하고 싶거나 메시지 카탈로그 병합(나중에 설명)을 수행하려면 다음이 필요합니다. 프로그램xgettext그리고msgmerge은 각각 GNU 호환 구현. 나중에 정리하도록 노력하겠습니다 패키지된 소스 배포판을 사용하는 경우 필요하지 않습니다xgettext. (CVS에서는 여전히 필요합니다.)GNU Gettext 0.10.36또는 그 이후 버전이 현재 권장됩니다.
로컬 gettext 구현은 자체적으로 제공되어야 합니다. 문서. 그 중 일부는 아마도 중복되었을 것입니다. 다음과 같으나 자세한 내용을 보려면 살펴봐야 합니다. 거기.
원본(영어) 메시지 쌍과 그 메시지 (아마도) 번역된 등가물은 다음에 보관됩니다.메시지 카탈로그, 각 프로그램당 하나씩 (관련 프로그램은 메시지 카탈로그를 공유할 수 있지만) 각 대상 언어에 대해. 파일 형식은 두 가지가 있습니다. 메시지 카탈로그: 첫 번째는"포"파일(이식 가능한 개체용) 번역가가 편집하는 특수 구문이 포함된 일반 텍스트 파일입니다. 두 번째는"모"파일(용 Machine Object)는 다음에서 생성된 바이너리 파일입니다. 해당 PO 파일은 국제화되는 동안 사용됩니다. 프로그램이 실행됩니다. 번역가는 MO 파일을 다루지 않습니다. 안으로 사실 그런 사람은 거의 없습니다.
메시지 카탈로그 파일의 확장자는 no입니다. 놀랍게도.사설 토토또는.mo. 기본 이름은 함께 제공되는 프로그램 또는 파일의 언어, 상황에 따라. 이것은 약간 혼란 스럽습니다. 예 이다psql.사설 토토(psql용 PO 파일) 또는fr.mo(프랑스어 MO 파일).
사설 토토 파일의 파일 형식은 여기에 설명되어 있습니다:
댓글 #개 msgstr "원래 문자열" msgstr "번역된 문자열" msgstr "더 독창적" msgstr "다른 번역됨" "문자열은 이렇게 나눌 수 있습니다" ...
msgid는 프로그램 소스에서 추출되었습니다. (그들은 꼭 그럴 필요는 없지만 이것이 가장 일반적인 방법입니다.) msgstr 줄은 처음에는 비어 있고 유용한 내용으로 채워집니다. 번역기에 의한 문자열. 문자열에는 C 스타일이 포함될 수 있습니다. 이스케이프 문자는 다음과 같이 여러 줄에 걸쳐 계속될 수 있습니다. 설명되어 있습니다. (다음 줄은 다음 줄의 시작 부분에서 시작해야 합니다. 라인.)
# 문자는 댓글을 소개합니다. 공백인 경우 # 문자 바로 뒤에 오면 주석입니다. 번역가가 관리합니다. 자동으로 되는 경우도 있습니다 공백이 아닌 문자가 즉시 포함된 주석 #에 이어. 이는 다양한 도구로 유지 관리됩니다. PO 파일에서 작동하며 다음을 돕기 위한 것입니다. 번역가.
#. 자동 댓글 #: 파일 이름.c:1023 #, 플래그, 플래그
#. 스타일 주석은 소스 파일에서 추출됩니다.
메시지가 사용되는 곳. 아마도 프로그래머가
번역자를 위한 삽입된 정보(예: 정보)
예상되는 정렬. #: 주석은 정확한 내용을 나타냅니다.
소스에서 메시지가 사용되는 위치. 는
번역가는 프로그램 소스를 볼 필요가 없지만 다음과 같은 경우에는 볼 수 있습니다.
정확한 번역인지 의심스럽습니다. #, 주석
어떤 방식으로든 메시지를 설명하는 플래그를 포함합니다. 거기
현재 두 개의 플래그가 있습니다:퍼지이다
다음으로 인해 메시지가 오래되었을 가능성이 있는지 여부를 설정합니다.
프로그램 소스의 변경. 그러면 번역가가 확인할 수 있습니다.
이를 제거하고 퍼지 플래그를 제거할 수도 있습니다. 흐릿하니 참고하세요
최종 사용자는 메시지를 사용할 수 없습니다. 다른
플래그는c-형식, 이는 다음을 나타냅니다.
메시지는 다음과 같습니다.printf-스타일 형식 템플릿입니다. 이는 다음을 의미합니다.
번역도 다음과 같은 형식 문자열이어야 합니다.
같은 수와 유형의 자리 표시자. 도구가 있습니다.
이를 확인할 수 있으며, 이는 c 형식 플래그의 핵심입니다.
좋아요, 그럼 어떻게 생성하나요?"공백"메시지 카탈로그? 먼저, 원하는 메시지가 있는 프로그램이 포함된 디렉토리 번역하다. 파일이 있는 경우nls.mk그렇다면 이 프로그램이 준비되었습니다 번역을 위해.
이미 있는 경우.사설 토토파일이면 누군가 이미 번역 작업을 완료한 것입니다. 파일 이름이 지정됩니다.언어.사설 토토, 여기서언어이것은ISO 639-1두 글자 언어 코드(in 소문자), 예:fr.사설 토토용 프랑스어. 정말로 둘 이상이 필요한 경우 언어별로 번역 노력을 기울이면 파일도 명명된언어_지역.사설 토토어디에서지역이것은ISO 3166-12자리 국가 코드( 대문자), 예:pt_BR.사설 토토용 브라질의 포르투갈어. 원하는 언어를 찾았다면 해당 파일 작업을 시작해도 됩니다.
새로운 번역 작업을 시작해야 한다면 먼저 명령을 실행하세요
gmake init-사설 토토
파일이 생성됩니다.프로그램명.사설 토토t. (.사설 토토t사설 토토 파일과 구별하기 위해"생산 중".T다음을 의미함"템플릿".) 이 파일을 다음 위치에 복사하세요.언어.사설 토토그리고 편집하세요. 새로운 언어가 무엇인지 알리기 위해 사용 가능합니다. 파일도 편집하세요.nls.mk그리고 언어(또는 언어 및 국가) 코드를 다음과 같은 줄에 추가합니다.
AVAIL_LANGUAGES := de fr
(물론 다른 언어도 나타날 수 있습니다.)
기본 프로그램이나 라이브러리가 변경됨에 따라 메시지가 프로그래머가 변경하거나 추가할 수 있습니다. 이 경우에는 처음부터 시작할 필요는 없습니다. 대신 다음 명령을 실행하세요.
gmake 업데이트-사설 토토
새 빈 메시지 카탈로그 파일을 생성합니다( 시작했던 pot 파일)을 다음과 병합합니다. 기존 PO 파일. 병합 알고리즘이 확실하지 않은 경우 그것을 표시하는 특정 메시지"모호함"위에서 설명한 대로입니다. 다음과 같은 경우 뭔가 정말 잘못되었습니다. 이전 PO 파일은 다음과 같이 저장되었습니다..사설 토토.old확장.
PO 파일은 일반 텍스트 편집기로 편집할 수 있습니다. 는 번역자는 따옴표 사이의 영역만 변경해야 합니다. msgstr 지시문 뒤에 주석을 추가하고 변경할 수 있습니다. 퍼지 플래그. (놀랍지도 않게) Emacs에는 PO 모드가 있습니다. 꽤 유용하다고 생각합니다.
PO 파일을 완전히 채울 필요는 없습니다. 소프트웨어는 자동으로 원래 문자열로 되돌아갑니다. 번역이 없는 경우(또는 빈 번역)를 사용할 수 있습니다. 그것 불완전한 번역을 제출하는 것은 문제가 되지 않습니다. 소스 트리에 포함됩니다. 다른 사람을 위한 공간을 제공하는 것 당신의 일을 데리러 갈 사람들. 그러나 다음을 수행하는 것이 좋습니다. 병합을 수행한 후 퍼지 항목을 제거하는 데 우선 순위를 둡니다. 퍼지 항목은 설치되지 않습니다. 그들만 올바른 번역이 무엇인지 참고할 수 있습니다.
다음은 편집하는 동안 명심해야 할 몇 가지 사항입니다. 번역:
원본이 줄 바꿈으로 끝나면, 번역도 그렇습니다. 탭 등도 마찬가지입니다.
원본이 다음과 같은 경우printf형식 문자열, 번역
또한 그럴 필요가 있습니다. 번역에는 다음 사항도 필요합니다.
동일한 형식 지정자를 동일한 순서로 사용합니다. 때로는
언어의 자연적인 규칙은 이것을 불가능하게 만듭니다.
최소한 어색함. 이 경우 형식을 수정할 수 있습니다.
다음과 같은 지정자:
msgstr "Die Datei %2$s 모자 %1$u Zeichen."
그러면 첫 번째 자리 표시자는 실제로
목록의 두 번째 인수입니다.숫자$다른 항목보다 먼저 %를 즉시 따라야 합니다.
형식 조작자. (이 기능은 실제로 존재합니다.printf함수군.
이전에 들어본 적이 없을 수도 있습니다.
메시지 외부에서는 거의 사용되지 않습니다.
국제화.)
원본 문자열에 언어적 오류가 포함된 경우, 이를 보고하거나 프로그램 소스에서 직접 수정하세요. 정상적으로 번역됩니다. 수정된 문자열은 다음과 같습니다. 프로그램 소스가 업데이트되면 병합됩니다. 만약에 원본 문자열에 사실적 실수가 포함되어 있습니다. 신고해 주세요. (또는 직접 수정하고) 번역하지 마세요. 대신 PO에 주석으로 문자열을 표시할 수 있습니다. 파일.
원래 문자열의 스타일과 톤을 유지합니다. 구체적으로 문장이 아닌 메시지(파일 %s을(를) 열 수 없습니다)는 아마도 그렇지 않아야 할 것입니다. 대문자로 시작하세요(해당 언어의 경우 대소문자 구분) 또는 마침표로 끝나거나( 언어는 구두점을 사용합니다). 읽는 것이 도움이 될 수 있습니다.PostgreSQL : 문서 : 7.4 : 오류 토토 핫 스타일 안내서.
메시지가 무엇을 의미하는지 모르거나 메시지가 무엇인지 모른다면 모호한 경우 개발자 메일링 리스트에 문의하세요. 기회 영어를 사용하는 최종 사용자도 그렇지 않을 수도 있습니다. 그것을 이해하거나 모호하다고 생각하면 최선의 방법은 다음과 같습니다. 메시지를 개선하세요.