번역 프로젝트

번역 구성

Weblate는 프로젝트/구성요소의 번역 가능한 VCS 콘텐츠를 트리 구조로 구성합니다. 카테고리를 사용하여 프로젝트 내에서 구성요소를 추가로 구성할 수도 있습니다.

  • 최하위 객체는 프로젝트 설정 이며, 함께 속하는 모든 번역을 포함해야 합니다 (예: 여러 버전의 애플리케이션 번역 및/또는 accompanying 문서).

  • 중간 수준은 카테고리 에 의해 선택적으로 생성됩니다. 카테고리를 중첩하여 더 복잡한 구조를 만들 수 있습니다.

  • 위 수준인 구성요소 설정 는 실제로 번역할 구성요소로, 사용할 VCS 저장소와 번역할 파일의 마스크를 정의합니다.

  • 구성요소 설정 위에는 개별 번역이 있으며, 번역 파일 (구성요소 설정 에 정의된 파일 마스크 와 일치)이 VCS 저장소에 나타나면 Weblate가 자동으로 처리합니다.

Weblate는 Translate Toolkit이 지원하는 다양한 번역 형식 (이중언어 및 단일언어 모두)을 지원합니다 ( 현지화 파일 형식 참조).

참고

Weblate 내부 URL 를 사용하여 클론된 VCS 저장소를 공유할 수 있습니다. 같은 VCS를 공유하는 구성요소가 많은 경우 이 기능을 사용하는 것을 강력히 권장합니다. 성능이 향상되고 필요한 디스크 공간이 줄어듭니다.

번역 프로젝트 및 구성요소 추가

권한에 따라 새 번역 프로젝트와 구성요소를 만들 수 있습니다. 새 프로젝트 추가 권한이 있는 사용자에게는 항상 허용되며, 인스턴스에서 결제를 사용하는 경우(예: https://hosted.weblate.org/ , 결제 참조) 결제를 관리하는 사용자 계정의 플랜 허용량에 따라 만들 수도 있습니다. 또한 작업공간에서 작업공간에 프로젝트 추가 권한이 있는 사용자는 그 작업공간 안에 프로젝트를 만들 수 있습니다. 작업공간을 선택하지 않고 프로젝트를 만들려면 사이트 전체 새 프로젝트 추가 권한이 필요합니다. 자세한 내용은 프로젝트 생성 및 이동 을 참조하세요.

힌트

모든 사용자에게 새 프로젝트를 만들 수 있는 권한을 부여하려면 프로젝트 작성자 팀에 대한 새 자동 팀 할당 을 만듭니다.

별도의 페이지에서 현재 결제 플랜을 확인할 수 있음:

../_images/user-billing.webp

프로젝트 생성은 해당 페이지에서 또는 탐색 표시줄의 메뉴를 사용하여 시작할 수 있으며, 번역 프로젝트에 대한 기본 정보를 입력하여 추가를 완료함:

../_images/user-add-project.webp

프로젝트를 만든 후 바로 프로젝트 페이지로 이동함:

../_images/user-add-project-done.webp

여기서 새 번역 구성요소를 한 번의 클릭으로 만들 수 있습니다. 구성요소를 반드는 과정은 다단계이며 대부분의 번역 매개변수를 자동으로 감지합니다. 구성요소를 만드는 방법은 여러 가지가 있음:

버전 관리에서

원격 버전 관리 저장소에서 구성요소를 만듭니다.

기존 구성요소에서

다른 파일을 선택하여 기존 구성요소에 추가 구성요소를 만듭니다.

추가 브랜치

다른 브랜치만을 위한 기존 구성요소의 추가 구성요소를 만듭니다.

번역 파일 올리기

버전 관리가 없거나 Weblate와 통합하지 않으려는 경우 번역 파일을 Weblate에 업로드합니다. 나중에 웹 인터페이스 또는 Weblate의 REST API 를 사용하여 콘텐츠를 업데이트할 수 있습니다.

문서 번역

단일 문서 또는 번역 파일을 업로드하고 번역합니다.

처음부터 시작

빈 번역 프로젝트를 만들고 수동으로 문자열을 추가합니다.

기존 번역 구성요소가 있으면 같은 저장소를 사용하여 추가 파일이나 브랜치에 대한 새 구성요소를 쉽게 추가할 수도 있습니다.

먼저 이름과 저장소 위치를 입력해야 함:

../_images/user-add-component-init.webp

다음 페이지에서 발견된 번역 가능한 리소스 목록이 표시됨:

../_images/user-add-component-discovery.webp

마지막 단계로 번역 구성요소 정보를 검토하고 선택적 세부 정보를 입력함:

../_images/user-add-component.webp

프로젝트 설정

번역 프로젝트를 만든 다음 번역할 새 구성요소를 추가합니다. 프로젝트는 실제 번역이 쌓이는 선반과 같습니다. 같은 프로젝트의 모든 구성요소는 제안과 사전을 공유합니다. 번역은 단일 프로젝트의 모든 구성요소를 통해 자동으로 전파됩니다 (구성요소 설정에서 끄지 않는 한) ( 번역 메모리 참조).

더 보기

Weblate와 통합

이 기본 속성은 프로젝트를 설정하고 번역자에게 알림:

프로젝트 이름

프로젝트 이름을 표시하는 데 사용되는 상세 프로젝트 이름입니다.

URL 슬러그

URL에 적합한 프로젝트 이름입니다.

프로젝트 웹사이트

번역자가 프로젝트에 대한更多信息를 찾을 수 있는 URL입니다.

WEBSITE_REQUIRED 에 의해 꺼지지 않는 한 필수 매개변수입니다.

번역 안내

프로젝트의 현지화 프로세스와 번역자에게 유용한 기타 정보를 설명하는 텍스트입니다. 텍스트 서식 지정이나 링크 삽입에 Markdown을 사용할 수 있습니다.

Good translation instructions explain how contributors should submit translations, what review they should expect, how they can report problems with source strings, and where translations can be tested or when they are released.

번역 라이선스

Default translation license for components in this project.

기여자 라이선스 계약

Default contributor license agreement for components in this project. Markdown can be used for text formatting or inserting links.

공유된 번역 메모리 사용하기

공유된 번역 메모리를 사용할지 여부입니다. 자세한 내용은 공유된 번역 메모리 을 참조하세요.

기본값은 DEFAULT_SHARED_TM 을 통해 변경할 수 있습니다.

공유된 번역 메모리에 기여하기

공유된 번역 메모리에 기여할지 여부입니다. 자세한 내용은 공유된 번역 메모리 을 참조하세요.

이는 프로젝트를 자동 번역 의 소스로 사용할 수 있는지에도 영향을 미칩니다.

기본값은 DEFAULT_SHARED_TM 을 통해 변경할 수 있습니다.

참고

이 옵션은 호스팅 Weblate에서 사용할 수 없으며 공유된 번역 메모리 사용하기 과 함께 전환됩니다.

Use workspace translation memory

Whether to use translation memory shared by projects in the same workspace, see 번역 메모리 범위 for more details. The workspace has to allow workspace translation memory as well.

Contribute to workspace translation memory

Whether to contribute translations to the translation memory shared by projects in the same workspace. The workspace has to allow contribution as well.

참고

This option is unavailable on Hosted Weblate, it is toggled together with Use workspace translation memory.

번역 메모리 자동 정리

Added in version 5.13.

번역이 활성화될 때 자동으로 생성된 이전 번역 메모리 항목을 교체할지 여부입니다.

매칭은 동일한 원문 문자열, 구성요소, 컨텍스트 및 원문/대상 언어 쌍을 기반으로 합니다. 업로드된 번역 메모리 파일에는 영향을 미치지 않습니다.

접근 제어

프로젝트별 접근 제어를 설정합니다. 자세한 내용은 프로젝트 접근 제어 을 참조하세요.

기본값은 DEFAULT_ACCESS_CONTROL 에 의해 변경될 수 있습니다.

강제 2단계 인증

Added in version 5.7.

모든 기여자에게 2단계 인증 를 강제합니다. 설정하지 않으면 프로젝트 내에서 작업을 수행할 수 없습니다.

검토 활성화

번역에 대한 검토 워크플로를 활성화합니다 ( 전담 검토자 참조).

원문 검토 활성화

원문 문자열에 대한 검토 워크플로를 활성화합니다 ( 원문 문자열 검토 참조).

번역 품질 필터

Added in version 5.13.

커밋 정책은 버전 관리 시스템에 변경사항을 커밋할 때 어떤 번역이 포함되는지 결정합니다. 이 설정은 프로젝트 수준에서 사용 가능하며 다음 옵션을 지원함:

  • 품질에 관계없이 모든 번역 커밋: 편집 필요 또는 미검토로 표시된 번역을 포함하여 모든 번역이 커밋됩니다.

  • 편집 필요로 표시된 번역 건너뛰기: “편집 필요”, “다시 작성 필요” 또는 “확인 필요” 상태가 아닌 번역만 커밋됩니다.

  • 승인된 번역만 포함: 검토자가 승인한 번역만 커밋됩니다. 이 옵션을 사용하려면 검토 활성화 를 활성화해야 합니다.

후크 활성화

이 저장소에 인증되지 않은 알림 후크 를 사용할지 여부입니다.

언어 별칭

Weblate로 번역을 가져올 때 언어 코드 매핑을 정의합니다. 저장소에서 언어 코드가 일관되지 않아 Weblate에서 일관된 보기를 원하거나 번역 파일의 비표준 명명을 사용하려는 경우 이것을 사용하세요.

전형적인 사용 사례는 미국 영어를 영어로 매핑하는 것일 수 있음: en_US:en

여러 매핑은 쉼표로 구분함: en_GB:en,en_US:en

비표준 코드 사용: ia_FOO:ia

힌트

언어 코드는 번역 파일을 매칭할 때 매핑되며 매칭은 대소문자를 구분합니다. 따라서 파일 이름에 사용된 것과 같은 형식의 원문 언어 코드를 사용해야 합니다.

새 번역 추가

Default behavior for requests to create new translations in components in this project.

언어 코드 스타일

Default language code style for translations created by Weblate in components in this project.

보조 언어

Added in version 5.11.

번역할 때 원문 언어와 함께 표시할 추가 언어입니다.

선택적으로 기계 번역의 소스로도 사용할 수 있습니다.

번역 플래그

Added in version 5.11.

품질 검사 및 기타 Weblate 동작의 사용자 정의입니다 ( 플래그를 사용한 동작 사용자 지정 참조).

작업공간, 프로젝트, 구성 요소 및 번역 플래그가 병합됩니다.

커밋, 추가, 삭제, 병합, 애드온 및 병합 요청 메시지

Default commit and merge request message templates for components in this project.

The default values can be changed by DEFAULT_ADD_MESSAGE, DEFAULT_ADDON_MESSAGE, DEFAULT_COMMIT_MESSAGE, DEFAULT_DELETE_MESSAGE, DEFAULT_MERGE_MESSAGE, DEFAULT_PULL_MESSAGE.

The built-in defaults follow Conventional Commits and include Weblate links where available. Use Restore site default next to a message editor to restore the current installation default for that message; for inherited values, this also disables inheritance for that message.

구성요소 설정

구성요소는 번역할 대상의 그룹입니다. VCS 저장소 위치와 번역하려는 파일의 파일 마스크를 입력하면 Weblate가 이 VCS에서 자동으로 가져와 일치하는 모든 번역 가능한 파일을 찾습니다.

더 보기

Weblate와 통합

현지화 파일 형식 에서 전형적인 설정의 예시를 찾을 수 있습니다.

참고

번역 구성요소를 적절한 크기로 유지하는 것이 권장됩니다 - 경우에 따라 의미 있는 것으로 번역을 분할하세요 (개별 앱 또는 애드온, 책 장 또는 웹사이트).

Weblate는 수만 개의 문자열이 있는 번역을 쉽게 처리하지만, 이렇게 큰 번역 구성요소에서는 작업을 분할하고 번역자 간에 조율하기가 더 어렵습니다.

번역에 대한 언어 정의가 누락된 경우 빈 정의가 생성되어 “cs_CZ (generated)”로 명명됩니다. 정의를 조정하고 Weblate 작성자에게 보고하여 누락된 언어가 다음 릴리스에 포함될 수 있도록 해야 합니다.

구성요소에는 VCS 작업 및 VCS에서 번역을 가져오는 데 필요한 모든 중요한 매개변수가 포함되어 있음:

구성요소 이름

구성요소 이름을 표시하는 데 사용되는 상세 구성요소 이름입니다.

구성요소 슬러그

URL에 적합한 구성요소 이름입니다.

구성요소 프로젝트

구성요소가 속하는 프로젝트 설정 입니다.

버전 관리 시스템

사용할 VCS입니다. 자세한 내용은 버전 관리 통합 를 참조하세요.

소스 코드 저장소

변경사항을 가져오는 데 사용되는 VCS 저장소입니다.

더 보기

URL 지정에 대한 자세한 내용은 저장소 접근 를 참조하세요.

힌트

실제 VCS URL이거나 다른 구성요소와 저장소를 공유해야 함을 나타내는 weblate://project/component 일 수 있습니다. 자세한 내용은 Weblate 내부 URL 를 참조하세요.

저장소 푸시 URL

푸시에 사용되는 저장소 URL입니다. 이 동작은 버전 관리 시스템 에 따라 달라지며, Weblate에서 변경사항 푸시 에서 더 자세히 다룹니다.

연결된 저장소의 경우 사용되지 않으며 연결된 구성요소의 설정이 적용됩니다.

더 보기

저장소 URL 지정 방법에 대한 자세한 내용은 저장소 접근 를, Weblate에서 변경사항을 푸시하는 방법에 대한 자세한 내용은 Weblate에서 변경사항 푸시 를 참조하세요.

저장소 탐색기

원본 파일(사용된 메시지의 위치)을 표시하는 데 사용되는 저장소 탐색기의 URL입니다. 비어 있으면 이러한 링크가 생성되지 않습니다. 템플릿 마크업 을 사용할 수 있습니다.

예를 들어 GitHub에서는 다음과 같이 사용함: https://github.com/WeblateOrg/hello/blob/{{branch}}/{{filename}}#L{{line}}

경로가 다른 폴더에 상대적인 경우 (경로에 .. 포함) parentdir 필터를 사용하여 선행 디렉터리를 제거할 수 있습니다 ( 템플릿 마크업 참조): https://github.com/WeblateOrg/hello/blob/{{branch}}/{{filename|parentdir}}#L{{line}}

내보내기된 저장소 URL

Weblate가 만든 변경사항이 내보내지는 URL입니다. 지속적 현지화 을 사용하지 않거나 수동으로 변경사항을 병합해야 할 때 중요합니다. Git 내보내기 를 사용하여 Git 저장소에 대해 자동화할 수 있습니다.

저장소 브랜치

VCS에서 체크아웃할 브랜치와 번역을 찾을 위치입니다.

Weblate 내부 URL 를 사용하는 연결된 저장소의 경우, 이 설정은 저장소를 소유하는 연결된 구성 요소에 의해 제어됩니다. 연결된 하위 구성 요소는 해당 구성 요소의 값을 사용합니다.

푸시 브랜치

변경사항을 푸시할 브랜치입니다. 저장소 브랜치 를 사용하려면 비워 두세요.

Weblate 내부 URL 를 사용하는 연결된 저장소의 경우, 이 설정은 저장소를 소유하는 연결된 구성 요소에 의해 제어됩니다. 연결된 하위 구성 요소는 해당 구성 요소의 값을 사용합니다.

참고

이 설정은 Mercurial과 Subversion에서 무시됩니다.

For Gerrit, this selects the target branch for the review request. Leave it empty to review against 저장소 브랜치. Use the short branch name, not refs/heads/<branch> or refs/for/<branch>. Gerrit push options can be appended after % in either setting, for example main%topic=l10n; Gerrit interprets them as the configured Weblate Gerrit account.

파일 마스크

번역할 파일의 마스크(경로 포함)입니다. 언어 코드를 대체하는 “*”가 하나 포함되어야 합니다 (처리 방법에 대한 정보는 언어 정의 참조). 저장소에 둘 이상의 번역 파일(예: 여러 gettext 도메인)이 있는 경우 각각에 대한 구성요소를 만들어야 합니다.

예: po/*.po 또는 locale/*/LC_MESSAGES/django.po.

파일 이름에 [, ] 와 같은 특수 문자가 포함된 경우 [[] 또는 []] 로 이스케이프해야 합니다.

스크린샷 파일 마스크

이 기능은 VCS 저장소의 경로를 사용하여 스크린샷 파일 마스크를 통해 스크린샷을 검색하고 업데이트할 수 있게 합니다. 구성요소 수준에서 작동하며 스크린샷 파일 이름을 대체하기 위해 별표 “*”를 사용해야 합니다.

허용되는 형식은 WebP, JPEG, PNG, APNG 및 GIF입니다.

참고:

  1. 파일 마스크와 스크린샷 파일 마스크는 관련이 없습니다. 별도로 설정하세요.

  2. 구성요소에서 발견된 스크린샷을 특정 번역 키에 연결하는 것은 수동 작업입니다.

예시:

VCS 저장소가 다음과 같은 구조를 가지고 있다고 가정해 보겠습니다:

component_A
└── docs
    ├── image1.png
    └── image2.jpg

component_A에 대해 PNG 스크린샷의 검색과 업데이트를 허용하려고 합니다. component_A의 스크린샷 파일 마스크를 component_A/docs/*.png 로 설정합니다. 이는 component_A의 docs 아래의 모든 PNG 이미지를 검색하고 업데이트할 수 있음을 의미합니다. 따라서 image1.png 를 업데이트하려면 제공하는 새 스크린샷이 기존 filename 과 일치하는 image1.png 로 명명되어야 하며 component_A/docs/ 아래에 저장되어야 합니다.

Fastlane 메타데이터를 사용하는 Android 프로젝트의 경우 원문 언어 스크린샷 마스크가 메타데이터 스크린샷 폴더를 가리킬 수 있습니다. 예: fastlane/metadata/android/en-US/images/phoneScreenshots/*.png. Weblate는 저장소 업데이트 시 일치하는 스크린샷을 발견합니다. 발견된 스크린샷은 여전히 스크린샷 관리 인터페이스에서 원문 문자열과 연결해야 합니다. 그곳에서 OCR이나 원문 문자열 검색을 사용해 일괄 할당하세요.

단일언어 기반 언어 파일

Project and component creation 의 문자열 정의가 포함된 기반 파일입니다.

기반 파일 편집

단일언어 기반 언어 파일 에서 문자열 편집을 허용할지 여부입니다.

중간 언어 파일

Project and component creation 의 중간 언어 파일입니다. 대부분의 경우 개발자가 제공하는 번역 파일이며 실제 원문 문자열을 만드는 데 사용됩니다.

설정하면 원문 문자열은 이 파일을 기반으로 하지만 다른 모든 언어는 단일언어 기반 언어 파일 를 기반으로 합니다. 문자열이 원문 언어로 번역되지 않으면 다른 언어로의 번역이 금지됩니다. 이를 통해 원문 문자열의 품질 관문 가 제공됩니다.

The intermediate file can match an existing language file. While it is configured as intermediate, Weblate does not list it as a regular language in the component language list. Clearing this setting makes the file appear as a regular language again on the next component scan.

Target strings can become read-only while the intermediate file is configured. This happens for strings where the matching source string in the 단일언어 기반 언어 파일 is not translated yet.

신규 번역의 템플릿

새 번역을 생성하는 데 사용되는 기반 파일입니다.

  • 대부분의 단일언어 형식에서는 이 필드를 비워 두세요. 일반적으로 빈 파일에서 시작할 수 있습니다.

  • GNU gettext PO 파일의 경우 .pot 파일을 선택하세요.

  • 번역이 없는 빈 파일이 있는 경우 이를 선택하세요.

  • 전체 키 세트가 필요한 단일언어 형식의 경우 단일언어 기반 언어 파일 를 선택하세요.

  • 문서 번역의 경우 단일언어 기반 언어 파일 를 선택하세요.

  • 기타의 경우 아무 번역 파일이나 선택하세요.

  • 템플릿 파일은 대부분의 경우 기반 파일과 동일할 수 있습니다.

힌트

많은 단일언어 형식에서 Weblate는 기본적으로 빈 파일에서 시작합니다. 새 번역을 만들 때 빈 값으로 모든 문자열이 존재하도록 하려면 이것을 사용하세요.

파일 형식

번역 파일 형식입니다. 현지화 파일 형식 도 참조하세요.

파일 형식 매개변수

번역 파일 처리 방법을 설정하는 데 사용되는 매개변수입니다 ( 파일 형식 매개변수 도 참조).

원문 문자열 버그 보고 주소

업스트림 버그를 보고하는 데 사용되는 이메일 주소입니다. 이 주소는 Weblate에서 작성된 원문 문자열 의견에 대한 알림도 수신합니다.

GNU gettext PO (Portable Object) 형식의 경우 이 주소는 Weblate에 의해 파일의 Report-Msgid-Bugs-To 머리글에도 저장됩니다.

용어집 매치 표시 안 함

이 구성요소에 대해 번역 편집기에서 용어집 패널과 그 매치를 숨깁니다. 활성화하면 이 구성요소에 대한 용어집 제안이 계산되지 않으며, 용어집 패널(용어집에 용어 추가 작업 포함)이 편집기에서 숨겨집니다.

참고

용어집 자기 참조는 이 옵션이 비활성화되어 있어도 항상 매치에서 제외됩니다.

번역 전파 허용

같은 프로젝트의 다른 구성요소에서 이 구성요소로의 번역 전파를 끌 수 있습니다. 이는 번역하는 대상에 따라 다르며, 때로는 번역을 한 번 이상 사용하는 것이 바람직할 수 있습니다.

전체 프로젝트에서 동일한 ID를 사용하지 않는 한 단일언어 번역의 경우 이 기능을 끄는 것이 일반적으로 좋습니다.

기본값은 DEFAULT_TRANSLATION_PROPAGATION 을 통해 변경할 수 있습니다.

제안 활성화

이 구성요소에 대해 번역 제안을 수락할지 여부입니다.

제안 투표

제안에 대한 투표를 활성화합니다 ( 제안 투표 참조).

제안 자동 수락

투표된 제안을 자동으로 수락합니다 ( 제안 투표 참조).

번역 플래그

품질 검사 및 기타 Weblate 동작의 사용자 정의입니다 ( 플래그를 사용한 동작 사용자 지정 참조).

작업공간, 프로젝트, 구성 요소 및 번역 플래그가 병합됩니다.

강제 검사

무시할 수 없는 검사 목록입니다.

더 보기

검사 강제

번역 라이선스

번역의 라이선스입니다 (소스 코드 라이선스와 동일할 필요는 없습니다).

기여자 라이선스 계약

사용자가 이 구성요소를 번역하기 전에 승인해야 하는 기여자 라이선스 계약.

텍스트 서식 지정이나 링크 삽입에 Markdown을 사용할 수 있습니다.

새 번역 추가

새 언어 생성 요청을 처리하는 방법입니다. 사용 가능한 옵션:

관리자에게 문의

사용자가 원하는 언어를 선택할 수 있으며 프로젝트 관리자가 이에 대한 알림을 받습니다. 저장소에 언어를 추가할지는 관리자가 결정합니다.

번역 지침 URL을 가리킴

사용자에게 새 번역 시작 프로세스를 설명하는 페이지로의 링크가 표시됩니다. 더 공식적인 프로세스가 필요한 경우 (예: 실제 번역을 시작하기 전에 팀 구성) 이것을 사용하세요.

새 언어 파일 만들기

사용자가 언어를 선택하면 Weblate가 자동으로 파일을 만들고 번역을 시작할 수 있습니다.

새 번역 추가 비활성화

사용자가 새 번역을 시작하는 옵션이 없습니다.

힌트

프로젝트 관리자는 여기서 비활성화되어 있더라도 가능한 경우 새 번역을 추가할 수 있습니다 (신규 번역의 템플릿 가 있거나 파일 형식이 빈 파일에서 시작을 지원하는 경우).

문자열 관리

Added in version 4.5.

Weblate 사용자가 새 문자열을 추가하고 기존 문자열을 제거할 수 있는지 설정합니다. 현지화 워크플로(새 문자열이 어떻게 도입되어야 하는지)에 맞게 조정하세요.

이중언어 형식의 경우 문자열은 일반적으로 소스 코드에서 추출됩니다 (예: xgettext 사용). Weblate에서 새 문자열 추가를 비활성화해야 합니다 (다음에 번역 파일을 업데이트할 때 무시되기 때문). Weblate에서는 모든 번역에 대해 문자열을 관리할 수 있지만 모든 번역의 문자열 일관성을 강제하지는 않습니다.

단일언어 형식의 경우 문자열은 원문 언어에서만 관리되며 번역에서 자동으로 추가되거나 제거됩니다. 문자열은 번역되면 번역 파일에 나타납니다.

힌트

단일언어 형식의 경우 문자열 관리 와 함께 기반 파일 편집 를 활성화하는 것이 좋습니다.

언어 코드 스타일

Weblate에 의해 생성된 번역의 파일 이름을 생성하는 데 사용되는 언어 코드를 사용자 정의합니다.

참고

Weblate는 번역 파일을 파싱할 때 모든 언어 코드를 인식하며, 다음 설정은 새 파일이 생성되는 방법에만 영향을 미칩니다.

파일 형식에 따른 기본값

파일 형식에 따라 다르며, 대부분 POSIX가 사용됩니다.

밑줄(_)을 구분자로 사용하는 POSIX 형식

일반적으로 gettext 및 관련 도구에서 사용하며, pt_BR 와 같은 언어 코드를 생성합니다.

구분 기호로 밑줄을 사용하는 POSIX 스타일, 소문자

일반적으로 gettext 및 관련 도구에서 사용하며, pt_BR 와 같은 언어 코드를 생성합니다.

밑줄(_)을 국가 코드를 포함하는 구분자로 사용하는 POSIX 형식

필요하지 않은 경우에도 국가 코드를 포함하는 POSIX 스타일 언어 코드입니다 (예: cs_CZ).

국가 코드를 포함하여 밑줄을 구분 기호로 사용하는 POSIX 스타일(소문자)

필요하지 않은 경우에도 국가 코드를 포함하는 POSIX 스타일 언어 코드(소문자)입니다 (예: cs_cz).

구분 기호로 하이픈(-)을 사용하는 BCP 형식

일반적으로 웹 플랫폼에서 사용하며, pt-BR 와 같은 언어 코드를 생성합니다.

구분 기호로 국가 코드를 포함하는 하이픈(-)을 사용하는 BCP 형식

필요하지 않은 경우에도 국가 코드를 포함하는 BCP 스타일 언어 코드입니다 (예: cs-CZ).

하이픈을 구분 기호로 사용하는 BCP 스타일, 레거시 언어 코드

중국어에 레거시 코드를 사용하고 BCP 스타일 표기법을 사용합니다.

하이픈을 구분 기호로 사용하는 BCP 스타일, 소문자

BCP 스타일 표기법, 모두 소문자 (예: cs-cz).

Apple App Store 메타데이터 스타일

Apple App Store에 메타데이터를 업로드하기에 적합한 스타일입니다.

Google Play 메타데이터 스타일

Google Play Store에 메타데이터를 업로드하기에 적합한 스타일입니다.

Android 스타일

Android 앱에서만 사용하며, pt-rBR 과 같은 언어 코드를 생성합니다.

Linux 스타일

Linux에서 사용하는 로케일로, 중국어에 레거시 코드를 사용하고 POSIX 스타일 표기법을 사용합니다.

Linux 스타일, 소문자

Linux에서 사용하는 로케일로, 중국어에 레거시 코드를 사용하고 POSIX 스타일 표기법을 사용합니다. 소문자.

병합 스타일

업스트림 저장소의 업데이트 처리 방법을 설정할 수 있습니다. 실제 구현은 VCS에 따릅니다 ( 버전 관리 통합 참조).

리베이스

업데이트 시 업스트림 저장소 위에 Weblate 커밋을 리베이스합니다. 추가 병합 커밋 없이 깔끔한 히스토리를 제공합니다.

리베이스는 복잡한 병합의 경우 문제를 일으킬 수 있으므로 활성화할지 신중하게 고려하세요.

버전 관리 시스템Git force push 를 선택하여 강제 푸시를 활성화해야 할 수 있습니다. 특히 다른 브랜치에 푸시할 때 그렇습니다.

병합

업스트림 저장소 변경사항이 Weblate 저장소에 병합됩니다. 이 설정은 가능한 경우 fast-forward를 활용합니다. 가장 안전한 방법이지만 많은 병합 커밋이 생성될 수 있습니다.

fast-forward 없이 병합

업스트림 저장소 변경사항이 매번 병합 커밋을 수행하여 Weblate 저장소에 병합됩니다 (fast-forward가 가능한 경우에도). 모든 Weblate 변경사항은 Weblate 저장소에서 병합 커밋으로 표시됩니다.

기본값은 DEFAULT_MERGE_STYLE 을 통해 변경할 수 있습니다.

커밋, 추가, 삭제, 병합, 애드온 및 병합 요청 메시지

번역을 커밋할 때 사용되는 메시지입니다 ( 템플릿 마크업 참조).

기본값은 DEFAULT_ADD_MESSAGE, DEFAULT_ADDON_MESSAGE, DEFAULT_COMMIT_MESSAGE, DEFAULT_DELETE_MESSAGE, DEFAULT_MERGE_MESSAGE, DEFAULT_PULL_MESSAGE 를 통해 변경할 수 있습니다.

The built-in defaults follow Conventional Commits and include Weblate links where available. Use Restore site default next to a message editor to restore the current installation default for that message; for inherited values, this also disables inheritance for that message.

커밋 시 푸시

커밋된 변경사항을 업스트림 저장소에 자동으로 푸시할지 여부입니다. 활성화하면 Weblate가 기본 저장소에 변경사항을 커밋하면 푸시가 시작됩니다 ( 지연 커밋 참조). 푸시를 실제로 활성화하려면 저장소 푸시 URL 도 설정해야 합니다.

Weblate 내부 URL 를 사용하는 연결된 저장소의 경우, 이 설정은 저장소를 소유하는 연결된 구성 요소에 의해 제어됩니다. 연결된 하위 구성 요소는 해당 구성 요소의 값을 사용합니다.

커밋할 변경사항의 경과 시간

백그라운드 작업 또는 commit_pending 관리 명령에 의해 커밋되기 전에 변경사항이 얼마나 오래되어야 하는지(시간)를 설정합니다. 이 기간보다 오래된 변경사항이 하나 이상 있으면 구성요소의 모든 변경사항이 커밋됩니다.

Weblate 내부 URL 를 사용하는 연결된 저장소의 경우, 이 설정은 저장소를 소유하는 연결된 구성 요소에 의해 제어됩니다. 연결된 하위 구성 요소는 해당 구성 요소의 값을 사용합니다.

기본값은 COMMIT_PENDING_HOURS 를 통해 변경할 수 있습니다.

힌트

보류 중인 변경사항이 커밋될 수 있는 다른 상황이 있습니다 ( 지연 커밋 참조).

오류 시 잠금

첫 번째 푸시 또는 업스트림 저장소로의 병합, 또는 업스트림 저장소에서의 가져오기가 실패하면 구성요소(및 연결된 구성요소, Weblate 내부 URL 참조)를 잠급니다. 이렇게 하면 수동으로 해결해야 하는 추가 충돌을 방지할 수 있습니다.

저장소 오류가 남아 있지 않으면 구성요소의 잠금이 자동으로 해제됩니다.

Weblate 내부 URL 를 사용하는 연결된 저장소의 경우, 이 설정은 저장소를 소유하는 연결된 구성 요소에 의해 제어됩니다. 연결된 하위 구성 요소는 해당 구성 요소의 값을 사용합니다.

원문 언어

원문 문자열에 사용되는 언어입니다. 영어가 아닌 다른 언어에서 번역하는 경우 이것을 변경하세요.

힌트

영어에서 이중언어 파일을 번역하면서 영어 번역도 수정하려는 경우, 원문 언어 이름과 기존 번역 간의 충돌을 피하기 위해 원문 언어로 English (Developer) 를 선택하세요.

단일언어 번역의 경우 이 경우 중간 번역을 사용할 수 있습니다 ( 중간 언어 파일 참조).

언어 필터

파일 마스크를 검색할 때 번역을 필터링하는 데 사용되는 정규 표현식입니다. Weblate가 관리하는 언어 목록을 제한하는 데 사용할 수 있습니다.

참고

파일 이름에 나타나는 대로 언어 코드를 나열해야 합니다.

필터링의 몇 가지 예시:

필터 설명

정규 표현식

선택한 언어만

^(cs|de|es)$

언어 제외

^(?!(it|fr)$).+$

두 글자 코드만 필터링

^..$

언어가 아닌 파일 제외

^(?!(blank)$).+$

모든 파일 포함 (기본값)

^[^.]+$

키 필터

Added in version 5.8.

키를 기준으로 유닛을 필터링하는 데 사용되는 정규 표현식입니다. 이 필드의 값으로 설정된 정규 표현식과 키가 일치하는 유닛만 표시합니다.

필터링의 몇 가지 예시:

필터 설명

정규 표현식

선택한 키만

^(one|two|other)$

앱 스토어 변경 로그 제외

^(?!changelogs/.*$).+$

접두사가 있는 문자열 필터링

^translatable

참고

이 필터는 단일언어 파일 형식의 구성요소에서만 사용할 수 있습니다.

변형 정규 표현식

문자열의 변형을 결정하는 데 사용되는 정규 표현식입니다 ( 문자열 변형 참조).

참고

대부분의 필드는 프로젝트 소유자 또는 관리자가 Weblate 인터페이스에서 편집할 수 있습니다.

보조 언어

Added in version 5.11.

번역할 때 원문 언어와 함께 표시할 추가 언어입니다.

선택적으로 기계 번역의 소스로도 사용할 수 있습니다.

참고

This setting can be inherited from the project.

우선순위

우선순위가 높은 구성요소가 번역자에게 먼저 제공됩니다.

버전 4.15에서 변경: 이제 일치하는 용어집 용어의 순서에도 영향을 미칩니다.

접근 제한

참고

On Hosted Weblate, this requires a billing plan which permits private projects.

기본적으로 프로젝트에 접근할 수 있는 사람은 구성요소에서 변경을 수행할 수 없더라도 구성요소를 볼 수 있습니다. 이를 통해 프로젝트 내에서 번역 일관성을 유지하기가 더 쉬워집니다.

구성요소 또는 구성요소 목록 수준에서 접근을 제한하면 프로젝트 수준의 권한에 관계없이 구성요소에 대한 접근 권한을 대체합니다. 명시적으로 접근 권한을 부여해야 합니다. 새 사용자 그룹에 접근 권한을 부여하고 사용자를 배치하거나 기본 custom 또는 private 접근 제어 그룹을 사용하여 수행할 수 있습니다.

기본값은 DEFAULT_RESTRICTED_COMPONENT 에서 변경할 수 있습니다.

힌트

This applies to project admins as well — please ensure you will not lose access to the component after toggling the status.

프로젝트에서 공유

구성요소가 표시될 추가 프로젝트를 선택할 수 있습니다. 여러 프로젝트에서 사용하는 공유 라이브러리에 유용합니다.

참고

구성요소를 공유해도 접근 제어는 변경되지 않습니다. 다른 프로젝트를 탐색할 때 표시될 뿐입니다. 사용자가 실제로 구성요소를 탐색하거나 번역하려면 해당 구성요소에 대한 접근 권한이 필요합니다.

용어집으로 사용

Added in version 4.5.

이 구성요소를 용어집으로 사용할 수 있습니다. 일반 번역과 별도로 용어를 관리하려는 경우 사용하세요.

용어집은 다음과 같은 경우에 가장 적합함:

  • 용어의 일관된 사용 보장 (예: UI 레이블, 제품 이름).

  • 여러 구성요소 또는 프로젝트에서 선호하는 번역 공유.

  • 정의와 컨텍스트로 번역자 지원.

참고

용어집은 일반 번역이 아닌 용어 관리 전용입니다.

용어집 색상 를 사용하여 나열되는 방식을 구성할 수 있습니다.

용어집은 프로젝트에서 공유 로 정의된 모든 프로젝트에서 접근할 수 있습니다.

새 단어를 추가할 수 있도록 용어집에서 문자열 관리 를 활성화하는 것이 권장됩니다.

더 보기

용어집

용어집 색상

이 용어집의 용어를 표시할 때 사용되는 색상입니다. 여러 용어집을 사용할 때 용어집을 구분하는 데 유용합니다.

더 보기

용어집

카테고리

카테고리는 프로젝트 내 구성요소에 구조를 부여하기 위해 있습니다. 중첩하여 더 복잡한 구조를 만들 수 있습니다.

Category settings

Categories can override the same inherited settings as projects and components, including translation license, contributor agreement, adding new translations, secondary language, translation flags, and commit messages.

Nested categories inherit from their parent category by default. Top-level categories inherit from the project. Components in a category inherit from that category by default.

템플릿 마크업

Weblate는 텍스트 렌더링이 필요한 여러 곳에서 간단한 마크업 언어를 사용합니다. The Django template language 를 기반으로 하므로 상당히 강력할 수 있습니다.

현재 다음과 같은 곳에서 사용됨:

구성요소 템플릿에서 다음 변수를 사용할 수 있음:

{{ language_code }}

언어 코드

{{ language_name }}

언어명

{{ component_name }}

구성요소 이름

{{ component_slug }}

구성요소 슬러그

{{ project_name }}

프로젝트 이름

{{ project_slug }}

프로젝트 슬러그

{{ url }}

번역 URL

{{ filename }}

번역 파일 이름

{{ stats }}

번역 통계입니다. 추가 속성이 있으며 아래에 예시가 있습니다.

{{ stats.all }}

총 문자열 수

{{ stats.fuzzy }}

검토가 필요한 문자열 수

{{ stats.fuzzy_percent }}

검토가 필요한 문자열 비율

{{ stats.translated }}

번역된 문자열 수

{{ stats.translated_percent }}

번역된 문자열 비율

{{ stats.allchecks }}

검사 실패 문자열 수

{{ stats.allchecks_percent }}

검사 실패 문자열 비율

{{ author }}

현재 커밋의 작성자입니다. 커밋 범위에서만 사용할 수 있습니다.

{{ addon_name }}

현재 실행 중인 애드온의 이름입니다. 애드온 커밋 메시지에서만 사용할 수 있습니다.

저장소 탐색기 또는 편집기 템플릿에서 다음 변수를 사용할 수 있음:

{{branch}}

현재 브랜치

{{line}}

파일 내 줄 번호

{{filename}}

파일 이름입니다. parentdir 필터를 사용하여 선행 부분을 제거할 수도 있습니다. 예: {{filename|parentdir}}

힌트

일부 곳에서는 추가 변수를 사용할 수 있습니다 ( 구성요소 발견 참조).

필터와 결합할 수 있음:

{{ component|title }}

조건을 사용할 수 있음:

{% if stats.translated_percent > 80 %}Well translated!{% endif %}

문자 대체를 위한 추가 태그를 사용할 수 있음:

{% replace component "-" " " %}

필터와 결합할 수 있음:

{% replace component|capfirst "-" " " %}

파일 이름을 조작하기 위한 추가 필터도 있음:

Directory of a file: {{ filename|dirname }}
File without extension: {{ filename|stripext }}
File in parent dir: {{ filename|parentdir }}
It can be used multiple times: {{ filename|parentdir|parentdir }}

…및 기타 Django 템플릿 기능.

가져오기 속도

VCS 저장소를 가져오고 Weblate로 번역을 가져오는 것은 번역의 크기에 따라 긴 프로세스가 될 수 있습니다. 다음은 몇 가지 팁임:

설정 최적화

기본 설정은 Weblate 테스트 및 디버깅에 유용하지만, 프로덕션 설정에서는 일부 조정을 해야 합니다. 많은 설정이 성능에 상당한 영향을 미칩니다. 자세한 내용은 프로덕션 설정 을 확인하세요. 특히:

리소스 제한 확인

대용량 번역이나 저장소를 가져오는 경우 서버의 리소스 제한에 부딪힐 수 있습니다.

  • 여유 메모리량을 확인하세요. 운영 체제에 의해 번역 파일이 캐시되면 성능이 크게 향상됩니다.

  • 처리할 문자열이 많으면 디스크 작업이 병목이 될 수 있습니다 - Weblate와 데이터베이스 모두 디스크에 부하를 줍니다.

  • 추가 CPU 코어가 백그라운드 작업의 성능 향상에 도움이 될 수 있습니다 ( Celery를 사용한 백그라운드 작업 참조).

불필요한 검사 비활성화

일부 품질 검사는 상당히 비용이 많이 들 수 있으며, 필요하지 않으면 가져오는 동안 생략하면 시간을 절약할 수 있습니다. 설정에 대한 정보는 CHECK_LIST 를 참조하세요.

구성요소 자동 생성

프로젝트에 수십 개의 번역 파일(예: 서로 다른 gettext 도메인 또는 Android 앱의 일부)이 있는 경우 자동으로 가져올 수 있습니다. 이는 명령줄에서 import_project 또는 import_json 을 사용하거나 구성요소 발견 애드온을 설치하여 수행할 수 있습니다.

애드온을 사용하려면 먼저 하나의 번역 파일에 대한 구성요소를 만들고 (향후 이름이 변경되거나 제거될 가능성이 가장 적은 것을 선택) 이 구성요소에 애드온을 설치해야 합니다.

관리 명령의 경우 모든 구성요소를 포함할 프로젝트를 만든 다음 import_project 또는 import_json 을 실행해야 합니다.