콘텐츠 번역¶
번역 시작하기¶
BeeWare 번역 작업에 기여하고 싶으시다면 Weblate 계정이 필요합니다. 아직 계정이 없다면 새 계정 만들기를 진행한 후, 번역 작업에 참여하고 싶다는 의사를 알려주세요.
번역 작업에 도움을 주고 싶다는 의사를 알려주실 수 있는 방법은 두 가지입니다:
- 디스코드를 사용 중이라면 BeeWare 서버에 가입하고
#translations채널로 이동하세요. - 디스코드를 사용하지 않는다면, BeeWare 저장소에서 새 이슈를 생성할 수 있습니다.
두 경우 모두 다음 정보를 포함한 메시지를 남겨 주십시오:
- 귀하의 Weblate 사용자 이름
- 번역할 예정인 언어
이 정보를 받으면 팀에 가입시켜 드리겠습니다.
새 번역 추가¶
도움을 주려는 언어가 아직 존재하지 않는다면, 시작하기 전에 몇 가지 추가 단계가 필요합니다:
/docs/mkdocs.language-code.yml파일을 생성하고, 언어별 특정 내용을 포함시키세요.tox.ini를 업데이트하여 새로운 언어 빌드 명령어를 포함시키십시오./docs/config.yml를 업데이트하여extra: alternate:아래에 언어를 포함시키세요.
다음은 독일어를 예시로 필요한 변경 사항을 보여줍니다; 독일어 번역은 이미 존재합니다; 대상 언어로 독일어, de, 또는 기타 콘텐츠에 대한
참조를 대체하십시오.
새로운 MkDocs 구성 파일¶
먼저, mkdocs.de.yml 디렉토리에 docs라는 새 파일을 생성하고 다음 내용을 입력하세요:
INHERIT: config.yml
site_name: BeeWare Dokumentation
site_url: https://beeware.org/de
docs_dir: de
theme:
language: de
extra:
translation_type: machine
이 파일에서 진행 중인 내용은 다음과 같습니다:
- 이 파일은
config.yml의 구성 내용을 상속합니다. site_name값이 번역됩니다.site_url값은 프로젝트 사이트 URL이며, 그 뒤에 언어 코드가 이어집니다.docs_dir는 언어 코드여야 합니다.theme: language:값은 MkDocs Material 테마에서 지정된 대로 언어 코드여야 합니다. 대부분의 언어에서는docs_dir언어 코드와 동일하지만, 일부 언어(특히zh_CN와 같이 로케일 변형이 있는 언어)에서는 차이가 있습니다.extra: translation_type:는 번역률이 처음 100%에 도달할 때까지machine로 유지되어야 하며, 이때human.로 변경됩니다. 번역률이 90% 미만으로 하락할 경우machine.에서human로 되돌아가게 됩니다.
업데이트 tox.ini¶
tox.ini 파일에 여러 가지 변경 사항을 적용해야 합니다.
다음 내용을 추가하면 됩니다:
- 새로운 언어 코드 환경 플래그는
[testenv:docs로 시작하는 헤더 라인에 적용되며, 언어 코드 앞에-가 위치하고 공백은 포함되지 않습니다. 예를 들어-de. - 첫 번째 명령어에 대한 새로운 언어 코드 제외 규칙은
!lint로 시작하며, 그 앞에-!가 위치하고 공백을 포함하지 않습니다. 예를 들어-!de. - 첫 번째 명령어에 대한 새로운 언어 코드 제외 규칙은
!lint로 시작하며, 그 앞에-!가 위치하고 공백을 포함하지 않습니다. 예를 들어-!de. translate : update_machine_translations로 시작하는 줄 끝에 추가할 새 언어 코드- 기존의 언어별 명령어 뒤에, 예를 들어 독일어의 경우
de : build_md_translations로 시작하는 새로운 명령어를 추가하여, 해당 명령어의 내용을 새로운 언어 코드와 일치시킵니다. - 기존의 언어별 명령어 뒤에, 예를 들어 독일어의 경우
de : build_md_translations로 시작하는 새로운 명령어를 추가하여, 해당 명령어의 내용을 새로운 언어 코드와 일치시킵니다.
업데이트 config.yml¶
언어를 config.yml에 추가하면 헤더의 언어 선택기에 표시됩니다. extra:로 시작하는 섹션을 찾은 후, alternate:로
시작하는 하위 섹션을 찾으세요. 독일어의 경우 다음과 같이 추가합니다:
- name: Deutsch
link: /de/
lang: de
언어명은 해당 언어로 번역되어야 합니다. 링크에는 /가 반드시 포함되어야 합니다.
새로운 언어가 이제 번역을 시작할 준비가 되었습니다.
번역 가이드라인¶
팀에 추가되면 Weblate에 로그인하여 문자열 번역 작업을 시작할 차례입니다.
어조 대 직역¶
영어 원문의 어조를 유지하는 것이 단어별 번역을 고집하는 것보다 더 중요합니다. 저희 콘텐츠는 친근하고 약간 구어체적인 어조를 지향합니다. 번역 시에도 이러한 정신을 유지해 주시기 바랍니다.
영어 원문에 강한 영어 관용구가 포함되어 있다면, 해당 관용구를 반드시 유지해야 한다는 부담을 느끼지 마십시오. 여러분의 언어에 동등하게 효과적인 유사 표현이 있다면 사용해도 좋습니다. 영어 원문의 용어나 구문이 특히 관용적이거나 속어인 경우, 변경을 고려해야 한다고 주저 없이 알려주십시오. 영어 원어민에게도 관용구와 속어는 어려움을 줄 수 있습니다. 번역자와 독자 모두에게 더 직관적으로 전달하기 위해 영어 원문을 수정해야 할 때가 있습니다.
번역해야 할까요?¶
다음 항목들은 번역하거나 업데이트해서는 안 됩니다:
- 명령어. 예를 들어, "You should run `briefcase create`.", 에서 "You should run"만 번역해야 합니다.
- 네임스페이스, 예를 들어 클래스, 메서드 또는 속성 이름.
- 네임스페이스, 예를 들어 클래스, 메서드 또는 속성 이름.
-
클래스, 메서드 또는 속성 이름이 포함된 참조 링크. 백틱(`)을 포함한 이 링크들은 그대로 유지해야 합니다. 여기에 표시된 예시 링크의 모든 부분은 번역되지 않습니다.
[`Class.attribute`][Class.attribute] -
참조 링크의 링크 내용. 예를 들어,
link-content는 다음에서 생략됩니다:[Link text][link-content] -
진자 지시어. 이는 두 쌍의 일치하는 중괄호로 감싸진 모든 콘텐츠, 또는 양 끝에 퍼센트 기호가 포함된 일치하는 한 쌍의 중괄호를 의미합니다. 참고: 여기에 구문 예시를 포함하면 매크로 플러그인이 이를 렌더링하려고 시도합니다. 예시는 매크로 문서을 참조하십시오.
- 사용자 정의 앵커. 헤더 뒤나 특정 콘텐츠 위에 위치하며,
{ #anchor }형식으로 표시됩니다. -
주의 사항 구문. 다음 예시에서 "주의 사항"이라는 단어는 번역하지 않아야 합니다. 이는 메모, 경고 등 모든 유형의 주의 사항에 적용됩니다. 나머지 내용 번역에 관한 정보는 다음 섹션을 참조하십시오.
/// admonition | Page Title Content. /// -
백틱. 백틱은 그대로 유지되어야 하며, 인라인 코드와 코드 블록 양쪽의 서식을 지정하는 데 사용됩니다.
- 외부 콘텐츠 포함 구문. 이는
-8<-과 같은 줄에 있거나, 별도의 줄에 있는 두-8<-사이의 줄에 있는 모든 것을 의미합니다.
다음 항목들은 반드시 번역되어야 합니다:
- 링크 텍스트. 링크 구문에서 텍스트는 URL 앞에 위치하며,
[Link text](URL)와 같이 대괄호로 묶입니다. 표준 마크다운 링크는 Weblate에서[Link text]{1}로 표시되어야 하며, 여기서1는 문자열 내에서 다른 가능한 링크를 기준으로 한 링크의 위치를 나타냅니다. -
참조 링크 텍스트. 예를 들어,
Link text는 다음과 같이 번역됩니다:[Link text][link-content] -
경고 제목과 내용. 이전 경고 예시에서 "페이지 제목"과 "내용"은 번역되어야 합니다.
웹레이트¶
저희는 콘텐츠 번역에 Weblate을 사용합니다. 새 번역을 추가할 때 DeepL의 기계 번역을 활용해 초안을 생성합니다. 즉, 일반적으로 번역하실 콘텐츠는 이미 기계 번역된 상태입니다. 번역가로서 기존 기계 번역을 검토하고 수정하며 개선해 주시길 기대합니다.
Weblate는 모든 작업을 문자열 단위로 처리합니다. 변경 사항을 일괄 처리하여 몇 시간마다 해당 시간 동안 변경된 모든 문자열을 포함하는 대량 커밋을 제출합니다. 따라서 변경 사항이 웹사이트에 반영되기까지 몇 시간이 소요될 수 있으나, 최대 4시간 이내에 업데이트가 표시될 것으로 예상할 수 있습니다.
해당 시간 이후에도 변경 사항이 반영되지 않았다면, 해당 언어의 문서 빌드 실패를 초래한 마크업 오류가 원인일 가능성이 높습니다. 어떤 문자열의 마크업 문제라도 전체 번역 공개를 차단합니다. 해당 언어의 빌드 페이지에서 빌드 성공 여부를 확인할 수 있습니다. 해당 링크는 프랑스어 빌드 페이지 링크와 유사한 형식입니다. https://app.readthedocs.org/projects/beewareorg/; 언어 코드를 해당 언어로 변경하면 해당 언어의 빌드 페이지를 볼 수 있습니다. 이 페이지에는 사이트의 최신 빌드 상태가 표시됩니다. 빌드가 실패한 경우 빌드 로그를 확인하여 문제의 원인을 파악할 수 있는지 살펴보세요.