2013-04-12 11 views
2

내가 관리하고 오차드 PO 파일을 변환하는 방법을 이해하려고 노력 해요 : 문제는 내가에서 발견 된 일부 편집자를 사용하려고 때 시작 http://weblogs.asp.net/bleroy/archive/2011/01/13/creating-and-maintaining-orchard-translations.aspx오차드 현지화 PO 파일 사용 및 Vandelay.TranslationManager

Vandelay.TranslationManager에 의해 생산

  • 과수원 번역 파일이 유효하지 않을 수 있습니다 외부 편집기에서
  • 편집 된 파일을 수도 PO 파일을 번역 깨고 (유효한 키가 사용되지 않는 것으로 표시되어 동기화를 사용하여 방지 : 인터넷과 나는 것으로 나타났습니다 새로운 하나는

것부터 처음에는 PO 파일 형식의 신뢰할 수있는 설명을 얻으려고 노력) 번역되지 않은으로 추가되어, 나는 여기에서 찾을 : 사양의 http://pology.nedohodnik.net/doc/user/en_US/ch-poformat.html

요약 :

  • PO 파일의 메시지가 해당 msgid 문자열로 고유하게 식별됩니다.
  • 다른 파일에서 동일한 msgid를 사용하는 경우 선택 가능한 컨텍스트는 을 구별하는 데 사용됩니다. msgid

Vandelay.TranslationManager에서 비트를 파고 번역 된 파일을 모두 찾은 후에 문제가 있음을 발견했습니다.

Vandelay.TranslationManager는 고유 키로 가정합니다. 두 값의 조합 : - # | 대신 "MSGID" "#의 |"MSGID # "- MSGID (번역 키로 사용) msgctxt (옵션 컨텍스트, 과수원이 항상 정의)이

문제는 Vandelay.TranslationManager가 고유 키를 사용한다는 것입니다 | "퍼지 문자열에 사용되며, 과수원에 더 많은 것 같다 추가 정보로 사용, 이전 번역되지 않은 문자열을 말한다"MSGID # "추출 PO 파일의

예 :

#: ~/Modules/nwazet.commerce/Module.txt 
#| msgid "Nwazet.Commerce.Category" 
msgctxt ~/Modules/nwazet.commerce/Module.txt 
msgid "Commerce" 
msgstr "Commerce" 

#: ~/Modules/nwazet.commerce/Module.txt 
#| msgid "Nwazet.Bundles.Category" 
msgctxt ~/Modules/nwazet.commerce/Module.txt 
msgid "Commerce" 
msgstr "Commerce" 

참고도. "# | msgid"가 다른 경우 위의 두 항목은 실제로 sp에 따라 중복됩니다 생태.

이제 질문 : 버그 또는 정밀한 디자인입니까? Orchard에서 Po 파일을 처리하는 데 Afaik Vandelay.TranslationManager가 권장됩니다. 이 기능을 사용하는데 다른 문제가 있습니까? 감사

+1

왜 downvote? 설명해 주시겠습니까? – manudea

답변

0

은 오차드 포 파일을 처리 할 수있는 권장되는 방법 온라인 번역 도구입니다 http://orchardproject.net/localize

+0

알아요.하지만 이것은 우선적으로 제출 된 키가있는 relased 모듈에서만 작동합니다. – manudea

+0

예제 시나리오 : Nwazet Commerce를 설치했습니다. 출시 된 버전에는 기능의 매우 작은 하위 집합이 있으며 bitbucket에는 100 이상이 있습니다. 내 고객을 위해 모듈을 사용하고 수정본이나 새로운 기능으로 개발에 기여할 계획인데, 그동안 모듈을 릴리스하고 테스트하고 완전히 현지화 된 버전을 사용해야합니다. – manudea

+0

이 시나리오에서는 온라인 도구를 사용할 수 없습니다. 사용할 수있는 유일한 도구는 번역 관리자입니다. 그리고이 시나리오에서 나는 문제를 발견했다. 이탈리아어 http : // orchardproject의 모든 상거래 키를 번역했습니다.net/localize/Module/Nwazet.Commerce/it-IT, 번역 된 키를 다운로드했으며 개발 버전에 추가 된 누락 된 키를 추가하기 위해 번역을 동기화하려고했습니다. 그래서 문제를 발견했습니다. 번역 된 모든 키는 쓸모없는 것으로 표시되어 새로운 번역되지 않은 키로 다시 추가되었습니다. – manudea