문제

Java 소프트웨어의 현지화 작업을 수행하며 프로젝트에는 .properties 파일과 XML 리소스가 모두 있습니다. 우리는 현재 댓글을 사용하여 번역가에게 특정 문자열을 번역하지 말라고 지시하지만 주석의 문제는 기계 판독 할 수 없다는 것입니다.

내가 생각할 수있는 유일한 솔루션은 각각의 do-notlate 키를 _DNT_ 이러한 항목을 무시하도록 번역 도구를 교육하십시오. 더 나은 아이디어가있는 사람이 있습니까?

도움이 되었습니까?

해결책

번역 할 파일로 분해하거나 번역되지 않은 파일을 분해 한 다음 번역 할 파일 만 보낼 수 있습니까? (구조를 모르므로 실용적인지 대답 할 때 Har Dto가 알 수 있습니다 ...)

다른 팁

Eclipse JDT는 주석을 사용하여 특정 문자열의 번역을 방지합니다.

국제 시장을위한 일식 플러그인을 작성하는 방법

번역 도구가 비슷한 방식으로 작동해야한다고 생각합니까?

가장 간단한 솔루션은 리소스 파일에 DNT (Do-Translate Strings)를 넣지 않는 것입니다.

.속성 파일은 메타 데이터 처리 방식에 크게 제공되지 않으며 런타임에 데이터가 필요하지 않기 때문에 .속성 파일은 바람직한 것이 아니라 부작용입니다. 번역 가능한 문자열 (예 : 브랜드 이름 또는 URI)에 번역 할 수없는 부분이있는 부분 DNT도 고려하십시오.

"IDENTIFIER english en en en" -> "french fr IDENTIFIER fr fr"

내가 아는 한, 심지어 표준조차도 xliff DNT를 고려하지 마십시오. 사용자 정의 메타 데이터 파일을 통해 관리해야합니다. 용어 파일 및/또는 주석 (예 : 노트 xliff의 요소).

그의 링크에 게시 된 Axelclk처럼 ... Eclipse는

// $ non-nls-1 $

이 줄의 첫 번째 문자열이 번역되어서는 안된다는 것을 프로젝트에 알리는 진술. 소스-> 외부화 문자열을 호출하여 찾을 수있는 다른 모든 문자열

외부 문자열에는 지원하려는 모든 언어가 포함됩니다.

다음과 같은 번역이 포함 된 파일 : PluginPage.error1 = Text1 PluginPage.error2 = Text2

번역을 읽은 수업

private static final String BUNDLE_NAME = "com.plugin.name"; //$NON-NLS-1$

    private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle(BUNDLE_NAME);

    private PluginMessages() {
    }

    public static String getString(String key) { 
        // TODO Auto-generated method stub
        try {
            return RESOURCE_BUNDLE.getString(key);
        } catch (MissingResourceException e) {
            return '!' + key + '!';
        }
    }

그리고 당신은 그것을 다음과 같이 부를 수 있습니다.

String msg = PluginMessages.getString("PluginPage.Error2"); //$NON-NLS-1$

편집하다:

문자열이 외부화되어 원래 문자열을 사용하려면 기본적으로 기본적으로 모든 속성 파일에서 외부 분해 문자열을 삭제할 수 있습니다. 번들이 현지 언어와 일치하는 메시지 파일을 찾을 수없는 경우 기본값이 사용됩니다.

그러나 이것은 런타임에 작동하지 않습니다.

속성 파일에서 to-translate 주석을 사용하기로 결정한 경우 일식 컨벤션. 그것은 특별한 것이 아니지만, 우리 모두가 같은 마법 끈을 사용하면 인생이 더 쉬울 것입니다!

(Eclipse는 실제로 내가 아는 한 아직 번역하지 않은 의견을지지하지는 않지만 Tennera Ant-Gettext 리소스 번들에서 GetText PO 파일로 변환 할 때 사용되는 위의 체계의 구현이 있습니다.)

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top