Difference between revisions of "Translations-ko KR"

From AMule Project FAQ
Jump to: navigation, search
(Totally new translation of Translation-HOWTO)
m (Added Link to Spanish Version)
 
(10 intermediate revisions by 6 users not shown)
Line 1: Line 1:
 
<center>
 
<center>
[[Translations|영국말]] | [[Translations-pt|포르투칼말]] | '''한국말''' | [[Translations-ru|Russian]]
+
[[Translations|English]] |  
 +
[[Translations-cn|汉语]] |
 +
[[Translations-de|Deutsch]] |
 +
[[Translations-es|Espa&ntilde;ol]] |
 +
[[Translations-pt|포르투갈어]] |  
 +
'''한국어''' |  
 +
[[Translations-ru|러시아어]]
 
</center>
 
</center>
  
 
== 소개 ==
 
== 소개 ==
  
[[aMule|어뮬]]은 어떤 언어로든 쉽게 적용할수 있습니다. 그리고 지금 이것은 [http://www.unicode.org 유니코드]를 지원하고 있습니다. 그래서 더이상 서양의 문자셋에 제한되지 않습니다. 중국말, 한국말, 아랍말, 히부리말 (...) 의 번역이 가능합니다!
 
  
그러나 번역은 번역자의 도움이 필요합니다. 그래서 [[aMule|어뮬]] 모험에 참여하는것을 주저하지 마세요!
+
[[aMule|어뮬]]은 어느 언어로도 번역하기 매우 쉽습니다. 그리고 이제 [http://www.unicode.org 유니코드]도 지원하기 때문에 동양 문자 세트에 대한 제한도 더 이상 없습니다. 중국어, 한국어, 아랍어, 히브리어 등등의 어느 언어로도 번역이 가능합니다!
  
[http://gcc.gnu.org C++]이나 [http://en.wikipedia.org/wiki/Klingon_language 클린곤] 코딩에대하여 번역자는 더이상 알필요가 없습니다! 당신은 단지 당신의 말과 영국말을 알면 됩니다!
+
하지만 번역은 번역자가 필요한 법인지라, [[aMule|어뮬]]의 모험에 주저하지 말고 동참하세요!
  
흥미롭죠? 그럼 가볼까요!
 
  
== 어떻게 진행하나 ==
+
[http://gcc.gnu.org C++]나 [http://en.wikipedia.org/wiki/Klingon_language Klingon] 같은 프로그래밍 언어를 알 필요도 없습니다! 단지 당신의 모국어(!!)와 약간의 평범한 영어만 알면 됩니다!
  
시간이 흐르면 (대략 한달에 한번) 우리는 [http://forum.amule.org/thread.php?threadid=1097 번역] 포럼에 ''source_strings.po''란 파일을 붙입니다.
+
흥미가 생기셨나요? 가 봅시다!
  
만약 당신이 [http://www.kde.org KDE]사용자 라면 그파일을 다운 받아서 [http://i18n.kde.org/tools/kbabel/ KBabel]로 열고, [http://www.gnome.org Gnome]사용자 라면 [http://www.poedit.org PoEdit]나 [http://gtranslator.sourceforge.net/ gTranslator]로 열으세요.
+
== 진행하는 법 ==
  
이전에 [http://i18n.kde.org/tools/kbabel/ KBabel], [http://www.poedit.org PoEdit]나 [http://gtranslator.sourceforge.net/ gTranslator]에서 당신의 이름, 이메일, 문자셋 등을 설정하는것을 잊지마세요.
+
때때로 (한 달에 한 번) 우리는 ''source_strings.po''라는 텍스트 파일을 [http://forum.amule.org/thread.php?threadid=1097 번역] 포럼에 게재합니다.
  
 +
그냥 다운로드받으시고 [http://www.kde.org KDE]에서는 [http://i18n.kde.org/tools/kbabel/ KBabel], [http://www.gnome.org Gnome]에서는 [http://www.poedit.org PoEdit] 또는 [http://gtranslator.sourceforge.net/ gTranslator]으로 여십시오.
  
당신이 보고있는것은 [http://i18n.kde.org/tools/kbabel KBabel]일것 입니다.
+
그 전에 [http://i18n.kde.org/tools/kbabel/ KBabel], [http://www.poedit.org PoEdit] 또는 [http://gtranslator.sourceforge.net/ gTranslator]의 환경설정에 당신의 이름, 이메일, 문자 세트 등등을 설정하는 것을 잊지 마십시오.
 +
 
 +
이 장면이 [http://i18n.kde.org/tools/kbabel KBabel]에서 볼 화면입니다.:
  
 
   
 
   
Line 28: Line 35:
 
   
 
   
  
왼쪽 상단에는 영국말 문자열이 있을것입니다.
+
왼쪽 구석에 영문이 있습니다.
  
오른쪽 상단에는 문자열의 출처파일 이름이 있을것입니다.
+
오른쪽 구석에 이 문자열의 원시 파일 이름이 있습니다.
  
그러면, 당신은 번역된 문자열을 왼쪽 하단에 아래와 같이 기록하면 됩니다:
+
그러니까 번역된 문장을 왼쪽 아래 구석에 이렇게 쓰시면 됩니다:
  
 
   
 
   
Line 38: Line 45:
 
   
 
   
  
<font color=#ff0000>&, %i, \n 등의 문자를 번역본에 복사할때 주의하고 시작과 끝공간을 유지해 주세요.</font>
+
<font color=#ff0000>특히 특수문자, 가령 &, %i, \n 등을 번역한 문장에 잘 포함시키는 일과, 시작과 끝에 있는 공백을 지키는 일에 신중해 주십시오!</font>
 +
 
 +
'''부탁드립니다.''' [[format specifiers|이 문서]]를 보시고 어떤 문자가 변경되면 안 되는 지 확인하시기 바랍니다.
 +
 
 +
이런 식으로 모든 문자열에 진행하시고 파일을 저장하시면...
 +
 
 +
번역이 끝났습니다! 이제 [http://www.amule-project.net/amule/board.php?boardid=40 어뮬 번역 포럼]에 게재하시고 수천의 사람들이 당신에게 고마워할 것입니다. :)
 +
 
 +
== 이미 시작된 번역을 계속하는 법 ==
 +
 
 +
번역이 시작되면, 이전의 ''source_strings.po''에 기존에 번역된 문자열을 모두 다시 기록할 필요는 없습니다!
 +
 
 +
그래서 이미 번역된 문자열을 새 ''source_strings.po''에 섞는 방법은 자동화되어 있습니다.
 +
 
 +
예를 들어, 불어 번역을 계속하고 싶다고 상상해 봅시다:
  
'''제발''', 어떤 문자는 수정하면 안되는지 알기 위해서 [[format specifiers|이 문서]]를 봐 주세요.
+
* 새 ''source_strings.po''를 [http://forum.amule.org/thread.php?threadid=1097 포럼]에서 받고, 옛날 ''fr.po''를 이전 [[aMule]] 릴리즈에서 가져옵니다.
  
모든 문자열을 이렇게 진행하고, 당신의 파일을 저장하고...
+
* 예전과 새 파일을 다응과 같은 명령을 입력하여 섞습니다:
  
번역이 끝났습니다! 단지[http://www.amule-project.net/amule/board.php?boardid=40 어뮬의 번역 포럼]에 붙여주면, 많은사람들이 당신을 고마워 할것입니다 ^_^
+
'''msgmerge --no-fuzzy-matching -o new_fr.po fr.po source_strings.po'''
  
== 이미 번역이 시작되었다면 어떻게 계속하나 ==
+
이 방법 외에도 [http://i18n.kde.org/tools/kbabel KBabel] 또는 [http://poedit.sourceforge.net PoEdit]에 내장된 병합 도구를 사용할 수도 있습니다 (각각의 도움말을 참조하십시오).
  
번역을 시작하였을때, 당신은 이전에 ''source_strings.po''로 준비된 번역물을 다시 번역하지는 않을것입니다.
+
그 후에 병합된 ''new_fr.po''를 처음에 ''source_strings.po''처럼 작업하시되 새로 추가된 문자열만 번역하시면 됩니다.
  
그래서, 이미 번역된 문자열중 새로운 ''source_strings.po''에 섞여있는것을 자동으로 처리할것입니다.
+
== 번역 결과물 테스트 ==
  
예로, 당신이 계속 한국말을 번역하길 원한다고 생각하면:
+
=== 주의 ===
  
* [http://forum.amule.org/thread.php?threadid=1097 포럼]으로부터 새로운 ''source_strings.po'를 받고, 오래된 ''ko_KR.po'가 이전 [[aMule|aMule]]에 이미 공개되어 있습니다.
+
번역을 끝낸 다음, 그냥 [[aMule|어뮬]]을 재[[compile|컴파일]]하거나, 또는 먼저 번역한 파일이 정상적인지 별도로 테스트(이 단계는 [[compile|어뮬 컴파일]] 시에 자동으로 됩니다)해 볼 수 있습니다.
  
* 오래된 번역과 새로운 문자열을 다음과 같이쳐서 섞습니다:
+
후자의 좋은 점은 전제 [[aMule|어뮬]]을 빌드할 필요가 없으며 단지 새 번역본의 바이너리만을 생성한다는 점입니다.
  
'''msgmerge --no-fuzzy-matching -o new_ko_KR.po ko_KR.po source_strings.po'''
+
추천하는 방법은 번역 파일만 [[#번역 파일만 테스트|테스트]]하여 성공할 때 까지 하고, 그 후에 [[#어뮬과 함께 테스트|어뮬과 번역본을 같이 컴파일]]하여 어떻게 작동하는 지 관찰하는 것입니다.
  
당신은 [http://i18n.kde.org/tools/kbabel KBabel]나 [http://poedit.sourceforge.net PoEdit]를 이용하여 합칠수도 있습니다. (그들의 도움말을 참조하세요)
+
=== 번역 파일만 테스트 ===
  
그러면, 합쳐진 ''new_ko_KR.po''가 진행되어 ''source_srings.po''로 초기화 되어있으며, 새롭게 추가된 문자열만 번역하는것이 예상됩니다.
+
==== 새로운 방법 ====
  
== 당신의 번역 검사 ==
+
당신의 번역 파일이 있는 디렉토리에서 다음과 같이 입력하십시오.
  
=== 첫째 공지 ===
+
''msgfmt -c --statistics -o '''번역한_언어'''.gmo '''번역한_언어'''.po''
  
당신의 번역이 끝난이후, [[aMule|어뮬]]을 다시[[compile|컴파일]]할수 있으며, 첫번째로 잘 되었는지 확인할수 있습니다.(이 단계는 [[compile|어뮬 컴파일]]할때 자동으로 끝납니다.)
+
예를 들어,
  
후자 설정에 무엇이 좋은지는 전체의 [[aMule|어뮬]]을 설계하지 않아도 돕니다. 그렇지만 단지 당신의 번역 실행파일을 생성합니다.
+
[~/aMule/amule-dev-cvs/po]$ msgfmt -c --statistics -o ko_KR.gmo ko_KR.po
 +
번역된 메시지 1433개, 번역되지 않은 메시지 48개.
  
추천하는 순서는 성공할때 까지 [[#Testing only the translation file|번역 파일 검사]]를 하고, [[#Testing with aMule|번역물과 함께 어뮬을 컴파일]]해서 잘 동작하는지 보는겁니다.
+
이후 발생하는 메세지에 대해서는 [[#이전 방법]]을 참조하십시오. 이 방법은 컴파일 환경이 갖춰지지 않은 컴퓨터에서 번역 파일만을 테스트할 때에 유용합니다. 왜냐면 ''./configure''실행하는 데에 컴파일 환경을 요구하기 때문입니다.
  
=== 단지 번역 파일 검사 ===
+
==== 이전 방법 ====
  
이것을 하기위해, 먼저 ''./configure''를 실행하세요.
+
먼저 ''./configure''를 실행합니다.
  
그러면, 당신의 번역 파일을 ''po/'' 폴더로 옴기고, ''make ko_KR.gmo''처럼 ''make '''언어_국가'''.gmo''를 실행하세요.
+
이제 일단 당신의 번역 파일을 ''po/'' 디렉토리에 옮기고, ''make '''번역한_언어'''.gmo'' 라고 입력합니다. (예를 들어 ''make en_GB.gmo'')
  
만약 당신의 번역이 잘됬다면, 다음과 같이 보여줄것 입니다.
+
만약 번역한 것이 옲다면, 이렇게 보일 것입니다.
  
  [~/aMule/amule-dev-cvs/po]$ make ko_KR.gmo
+
  [~/aMule/amule-dev-cvs/po]$ make en_GB.gmo
  rm -f ko_KR.gmo && /usr/bin/msgfmt -c --statistics -o ko_KR.gmo ko_KR.po
+
  rm -f en_GB.gmo && /usr/bin/msgfmt -c --statistics -o en_GB.gmo en_GB.po
 
  1354 translated messages
 
  1354 translated messages
  
위 예는 성공적이고 완전한 번역입니다.
+
상기 예제는 성공적이고 완전한 번역의 경우입니다.
  
당신은 반듯이 완전하거나 불완전하는 어떤 번역물이든지 문법 오류가 없는 사용가능한 "성공적"으로 이해해야 합니다.
+
"성공적"이라는 단어는 번역이 완전하든 그렇지 않든, 내부에 번역 체계에 위배되는 문법 오류가 없기 때문에 사용할 수 있는 상태라는 것으로 이해해야 합니다.
  
성공적이지만 불완전한 번역물은 이런 다른 예입니다:
+
성공적이지만 불완전한 번역이 이번 다른 예제가 되겠습니다:
  
  [~/aMule/amule-dev-cvs/po]$ make ko_KR.gmo
+
  [~/aMule/amule-dev-cvs/po]$ make ru.gmo
  rm -f ko_KR.gmo && /usr/bin/msgfmt -c --statistics -o ko_KR.gmo ko_KR.po
+
  rm -f ru.gmo && /usr/bin/msgfmt -c --statistics -o ru.gmo ru.po
 
  1333 translated messages, 79 untranslated messages.
 
  1333 translated messages, 79 untranslated messages.
  
당신이 보듯이, 여전히 79문장의 번역이 필요로 합니다.
+
당신이 보시다시피, 79줄은 여전히 번역이 필요합니다.
  
특히, 당신은 약간 유연성있게 번역을 할수 있습니다. 유연성있는 번역은 [http://www.gnu.org/software/gettext gettext]로 이런것을 제안하고 있습니다. 그러나 아마 틀릴것입니다(모든 가능성은 닫힘). 그들은 번역물의 오른쪽에 ''#, fuzzy''라인을 추가적으로 만들것입니다. 그래서, 당신이 유연성있는 번역을 가지고 있다면, 이 라인을 찾아서 그것을 수정할수 있습니다(혹은 단지 괜찮다면 ''#, fuzzy''를 라인에서 제거합니다).
+
또한 약간의 'fuzzy'한 번역을 보실 수도 있습니다. 'Fuzzy' 번역이란 [http://www.gnu.org/software/gettext gettext](번역을 위한 내부 체계 프로그램)이 약간의 추정을 더한 것인데, (대체로 비슷하게 번역함에도) 틀렸을 수가 있습니다. 이렇게 된 번역은 그 위에 ''#, fuzzy'라는 줄을 삽입해서 표시됩니다. 따라서 만약 'fuzzy' 번역을 보시면, 그 줄을 찾아서 고치십시오 (혹 번역이 괜찮다면 ''#, fuzzy'' 줄을 지우십시오).
  
유연성있는 번역물의 예제 출력입니다:
+
'Fuzzy' 번역의 예는 다음과 같습니다:
  
  [~/aMule/amule-dev-cvs/po]$ make ko_KR.gmo
+
  [~/aMule/amule-dev-cvs/po]$ make hr.gmo
  rm -f ko_KR.gmo && /usr/bin/msgfmt -c --statistics -o ko_KR.gmo ko_KR.po
+
  rm -f hr.gmo && /usr/bin/msgfmt -c --statistics -o hr.gmo hr.po
 
  544 translated messages, 412 fuzzy translations, 443 untranslated messages.
 
  544 translated messages, 412 fuzzy translations, 443 untranslated messages.
  
최종적으로, 당신의 번역물은 오류를 포함할수 있습니다. 이러한 경우, 당신은 당신의 파일과 이것들에 관한 설명의 모든 오류를 보고해야 합니다.
+
마지막으로 당신의 번역에 상기한 내부 문법 오류가 있을 수 있습니다. 그런 경우에, 모든 에러와 각각에 대한 설명을 보고받을 것입니다:
  
  [~/aMule/amule-dev-cvs/po]$ make ko_KR.gmo
+
  [~/aMule/amule-dev-cvs/po]$ make de.gmo
  rm -f ko_KR.gmo && /usr/bin/msgfmt -c --statistics -o ko_KR.gmo ko_KR.po
+
  rm -f de.gmo && /usr/bin/msgfmt -c --statistics -o de.gmo de.po
  ko_KR.po:88: number of format specifications in 'msgid' and 'msgstr' does not match
+
  de.po:88: number of format specifications in 'msgid' and 'msgstr' does not match
 
  /usr/bin/msgfmt: found 1 fatal error
 
  /usr/bin/msgfmt: found 1 fatal error
  make: *** [ko_KR.gmo] Error 1
+
  make: *** [de.gmo] Error 1
  
위의 예는, 번역물이 88번째 열에 오류를 가지고 있어서, 이것을 수정하기 전까지는 실행 번역파일을 생성할수 없습니다.
+
위와 같은 예제에서, 번역의 88번째 줄에 오류가 있어서, 그것이 고쳐질 때까지는 바이너리 번역 파일이 생성되지 않을 것입니다.
  
=== [[aMule|어뮬]]로 검사 ===
+
=== [[aMule|어뮬]]과 함께 테스트 ===
  
당신은 당신의 번역물을 [[compile|재컴파일한 어뮬]]로 검사할수 있고, 어떻게 나오는지 확인할수 있습니다.
+
이제 번역본을 [[compile|어뮬을 재컴파일하여]] 테스트하고 어떻게 동작하는 지 볼 수 있습니다.
  
만약 당신의 언어가 [[aMule|어뮬]]에 유효하지 않을때, 당신은 반드시 데이터베이스에 추가해야하여, [[aMule|어뮬]]에 그것이 존재하고 그것과 함께[[compile|컴파일]]해야 합니다.
+
만약 당신의 언어가 [[aMule|어뮬]]에서 이전에 사용 가능하지 않았다면, 데이터베이스에 추가하뎌 [[aMule|어뮬]]이 그 존재를 알고 같이 [[compile|컴파일]]하도록 해야 합니다. 그렇게 하려면 당신의 언어 코드를 ''po/LINGUAS'' 파일에 추가하십시오 (한 줄에 한 언어).
그런후, 당신의 언어코드를 ''po/LINGUAS''파일 처럼 추가해야 합니다(한줄당 하나의 언어).
+
  
그러면 일반적으로 [[aMule|어뮬]]을 [[compile|컴파일]]하세요. 만약 도움이 필요하면, [[compile|다음 안내]]를 참고하세요.
+
이제 [[aMule|어뮬]]을 정상적으로 [[compile|컴파일]]하십시오. 도움이 필요하다면 [[compile|이 가이드]]를 따르십시오.
  
== 고급 번역 ==
+
== 고급 사용자를 위한 번역법 ==
  
만약 당신이 리눅스나 개발에 익숙하거나 참을성 없이 항상 최신의 벅역을 원하다면...
+
만약 당신이 프로그램 개발과 리눅스 사용의 초보가 아니거나 참을성이 없어서 항상 최신의 번역을 손에 넣고 싶다면...
  
당신의 ''source_strings.po''을 스스로 생성하세요!
+
당신의 ''source_strings.po''를 직접 생성하십시오!
  
어떻게 처리하나?
+
어떻게 진행합니까?
  
* http://amule.hirnriss.net 에서 최신의 [[aMule|어뮬]] [http://www.gnu.org/software/cvs CVS] 스넵샷을 내려받으세요.
+
* 최신의 [[aMule|어뮬]] [http://www.gnu.org/software/cvs CVS] 스냅샷을 http://amule.hirnriss.net 에서 받고,
  
* 압축을 풀고, root폴더로 가서 [http://www.gnu.org/software/make Makefiles]를 생성하세요:
+
* 압축을 풀어 루트 디렉토리로 이동, [http://www.gnu.org/software/make Makefile] 들을 생성합니다:
  
 
<code>
 
<code>
Line 143: Line 164:
 
</code>
 
</code>
  
* ''POTFILE.in''파일을 갱신하세요:
+
* ''POTFILE.in'' 파일을 업데이트:
  
 
<code>
 
<code>
Line 149: Line 170:
 
</code>
 
</code>
  
* 새로운 ''source_strings.po''를 생성하세요:
+
* 새로운 ''source_strings.po'' 생성:
  
 
<code>
 
<code>
Line 159: Line 180:
 
</code>
 
</code>
  
* 새로운 ''source_strings.po''를 [[Translations#How_to_proceed|번역]]하고 [http://forum.amule.org/board.php?boardid=40 번역물을 붇이세요]!
+
* 새로운 ''source_strings.po''를 [[Translations#How_to_proceed|번역]]하여 [http://forum.amule.org/board.php?boardid=40 게시하십시오]!
  
 
----
 
----
  
  
--[[User:Thepolish|Thepolish]] 22:46, 9 Oct 2004 (CEST)
+
--[[User:Thepolish|Thepolish]] 22:46, 9 Oct 2004 (CEST), Translated in 11:45, 30 July 2006 (KST)

Latest revision as of 15:26, 24 September 2008

English | 汉语 | Deutsch | Español | 포르투갈어 | 한국어 | 러시아어

소개

어뮬은 어느 언어로도 번역하기 매우 쉽습니다. 그리고 이제 유니코드도 지원하기 때문에 동양 문자 세트에 대한 제한도 더 이상 없습니다. 중국어, 한국어, 아랍어, 히브리어 등등의 어느 언어로도 번역이 가능합니다!

하지만 번역은 번역자가 필요한 법인지라, 어뮬의 모험에 주저하지 말고 동참하세요!


C++Klingon 같은 프로그래밍 언어를 알 필요도 없습니다! 단지 당신의 모국어(!!)와 약간의 평범한 영어만 알면 됩니다!

흥미가 생기셨나요? 가 봅시다!

진행하는 법

때때로 (한 달에 한 번) 우리는 source_strings.po라는 텍스트 파일을 번역 포럼에 게재합니다.

그냥 다운로드받으시고 KDE에서는 KBabel, Gnome에서는 PoEdit 또는 gTranslator으로 여십시오.

그 전에 KBabel, PoEdit 또는 gTranslator의 환경설정에 당신의 이름, 이메일, 문자 세트 등등을 설정하는 것을 잊지 마십시오.

이 장면이 KBabel에서 볼 화면입니다.:


http://www.amule.org/dev-up/kb1.png


왼쪽 구석에 영문이 있습니다.

오른쪽 구석에 이 문자열의 원시 파일 이름이 있습니다.

그러니까 번역된 문장을 왼쪽 아래 구석에 이렇게 쓰시면 됩니다:


http://www.amule.org/dev-up/kb2.png


특히 특수문자, 가령 &, %i, \n 등을 번역한 문장에 잘 포함시키는 일과, 시작과 끝에 있는 공백을 지키는 일에 신중해 주십시오!

부탁드립니다. 이 문서를 보시고 어떤 문자가 변경되면 안 되는 지 확인하시기 바랍니다.

이런 식으로 모든 문자열에 진행하시고 파일을 저장하시면...

번역이 끝났습니다! 이제 어뮬 번역 포럼에 게재하시고 수천의 사람들이 당신에게 고마워할 것입니다. :)

이미 시작된 번역을 계속하는 법

번역이 시작되면, 이전의 source_strings.po에 기존에 번역된 문자열을 모두 다시 기록할 필요는 없습니다!

그래서 이미 번역된 문자열을 새 source_strings.po에 섞는 방법은 자동화되어 있습니다.

예를 들어, 불어 번역을 계속하고 싶다고 상상해 봅시다:

  • source_strings.po포럼에서 받고, 옛날 fr.po를 이전 aMule 릴리즈에서 가져옵니다.
  • 예전과 새 파일을 다응과 같은 명령을 입력하여 섞습니다:

msgmerge --no-fuzzy-matching -o new_fr.po fr.po source_strings.po

이 방법 외에도 KBabel 또는 PoEdit에 내장된 병합 도구를 사용할 수도 있습니다 (각각의 도움말을 참조하십시오).

그 후에 병합된 new_fr.po를 처음에 source_strings.po처럼 작업하시되 새로 추가된 문자열만 번역하시면 됩니다.

번역 결과물 테스트

주의

번역을 끝낸 다음, 그냥 어뮬을 재컴파일하거나, 또는 먼저 번역한 파일이 정상적인지 별도로 테스트(이 단계는 어뮬 컴파일 시에 자동으로 됩니다)해 볼 수 있습니다.

후자의 좋은 점은 전제 어뮬을 빌드할 필요가 없으며 단지 새 번역본의 바이너리만을 생성한다는 점입니다.

추천하는 방법은 번역 파일만 테스트하여 성공할 때 까지 하고, 그 후에 어뮬과 번역본을 같이 컴파일하여 어떻게 작동하는 지 관찰하는 것입니다.

번역 파일만 테스트

새로운 방법

당신의 새 번역 파일이 있는 디렉토리에서 다음과 같이 입력하십시오.

msgfmt -c --statistics -o 번역한_언어.gmo 번역한_언어.po

예를 들어,

[~/aMule/amule-dev-cvs/po]$ msgfmt -c --statistics -o ko_KR.gmo ko_KR.po
번역된 메시지 1433개, 번역되지 않은 메시지 48개.

이후 발생하는 메세지에 대해서는 #이전 방법을 참조하십시오. 이 방법은 컴파일 환경이 갖춰지지 않은 컴퓨터에서 번역 파일만을 테스트할 때에 유용합니다. 왜냐면 ./configure를 실행하는 데에 컴파일 환경을 요구하기 때문입니다.

이전 방법

먼저 ./configure를 실행합니다.

이제 일단 당신의 번역 파일을 po/ 디렉토리에 옮기고, make 번역한_언어.gmo 라고 입력합니다. (예를 들어 make en_GB.gmo)

만약 번역한 것이 옲다면, 이렇게 보일 것입니다.

[~/aMule/amule-dev-cvs/po]$ make en_GB.gmo
rm -f en_GB.gmo && /usr/bin/msgfmt -c --statistics -o en_GB.gmo en_GB.po
1354 translated messages

상기 예제는 성공적이고 완전한 번역의 경우입니다.

"성공적"이라는 단어는 번역이 완전하든 그렇지 않든, 내부에 번역 체계에 위배되는 문법 오류가 없기 때문에 사용할 수 있는 상태라는 것으로 이해해야 합니다.

성공적이지만 불완전한 번역이 이번 다른 예제가 되겠습니다:

[~/aMule/amule-dev-cvs/po]$ make ru.gmo
rm -f ru.gmo && /usr/bin/msgfmt -c --statistics -o ru.gmo ru.po
1333 translated messages, 79 untranslated messages.

당신이 보시다시피, 79줄은 여전히 번역이 필요합니다.

또한 약간의 'fuzzy'한 번역을 보실 수도 있습니다. 'Fuzzy' 번역이란 gettext(번역을 위한 내부 체계 프로그램)이 약간의 추정을 더한 것인데, (대체로 비슷하게 번역함에도) 틀렸을 수가 있습니다. 이렇게 된 번역은 그 위에 #, fuzzy'라는 줄을 삽입해서 표시됩니다. 따라서 만약 'fuzzy' 번역을 보시면, 그 줄을 찾아서 고치십시오 (혹 번역이 괜찮다면 #, fuzzy 줄을 지우십시오).

'Fuzzy' 번역의 예는 다음과 같습니다:

[~/aMule/amule-dev-cvs/po]$ make hr.gmo
rm -f hr.gmo && /usr/bin/msgfmt -c --statistics -o hr.gmo hr.po
544 translated messages, 412 fuzzy translations, 443 untranslated messages.

마지막으로 당신의 번역에 상기한 내부 문법 오류가 있을 수 있습니다. 그런 경우에, 모든 에러와 각각에 대한 설명을 보고받을 것입니다:

[~/aMule/amule-dev-cvs/po]$ make de.gmo
rm -f de.gmo && /usr/bin/msgfmt -c --statistics -o de.gmo de.po
de.po:88: number of format specifications in 'msgid' and 'msgstr' does not match
/usr/bin/msgfmt: found 1 fatal error
make: *** [de.gmo] Error 1

위와 같은 예제에서, 번역의 88번째 줄에 오류가 있어서, 그것이 고쳐질 때까지는 바이너리 번역 파일이 생성되지 않을 것입니다.

어뮬과 함께 테스트

이제 번역본을 어뮬을 재컴파일하여 테스트하고 어떻게 동작하는 지 볼 수 있습니다.

만약 당신의 언어가 어뮬에서 이전에 사용 가능하지 않았다면, 데이터베이스에 추가하뎌 어뮬이 그 존재를 알고 같이 컴파일하도록 해야 합니다. 그렇게 하려면 당신의 언어 코드를 po/LINGUAS 파일에 추가하십시오 (한 줄에 한 언어).

이제 어뮬을 정상적으로 컴파일하십시오. 도움이 필요하다면 이 가이드를 따르십시오.

고급 사용자를 위한 번역법

만약 당신이 프로그램 개발과 리눅스 사용의 초보가 아니거나 참을성이 없어서 항상 최신의 번역을 손에 넣고 싶다면...

당신의 source_strings.po를 직접 생성하십시오!

어떻게 진행합니까?

  • 압축을 풀어 루트 디렉토리로 이동, Makefile 들을 생성합니다:

tar -xjf aMule-cvs-20041009.tar.bz2
cd amule-cvs
./configure

  • POTFILE.in 파일을 업데이트:

grep -m 1 '_(' `find * -name "*.cpp"` | cut -d: -f1 > po/POTFILES.in

  • 새로운 source_strings.po 생성:

cd po
mv amule.pot amule.pot.old
make amule.pot
mv amule.pot source_strings.po
mv amule.pot.old amule.pot



--Thepolish 22:46, 9 Oct 2004 (CEST), Translated in 11:45, 30 July 2006 (KST)