Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New Crowdin updates #77

Open
wants to merge 41 commits into
base: localization
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
3f67bc3
New translations shards.mdx (Korean)
TonSquare Jul 21, 2024
5d78d9b
New translations how-it-works.md (Korean)
TonSquare Jul 22, 2024
2228d8a
New translations overview.md (Korean)
TonSquare Jul 22, 2024
3517197
New translations how-to-contribute.md (Korean)
TonSquare Jul 22, 2024
a6772fa
New translations translation-style-guide.md (Korean)
TonSquare Jul 22, 2024
98d8281
add translations
sansx Jul 30, 2024
4223327
fix import
sansx Jul 30, 2024
3ba9f0b
New translations sdk.mdx (Korean)
TonSquare Aug 12, 2024
1f6796e
New translations sdk.mdx (Chinese Simplified)
TonSquare Aug 12, 2024
adf85ae
New translations developers.md (Chinese Simplified)
TonSquare Aug 12, 2024
36a71de
New translations overview.mdx (Chinese Simplified)
TonSquare Aug 12, 2024
62d7848
New translations send-transactions-from-highload.md (Chinese Simplified)
TonSquare Aug 12, 2024
a3f6791
New translations tl-b-language.mdx (Chinese Simplified)
TonSquare Aug 12, 2024
ffd3a32
New translations cookbook.md (Chinese Simplified)
TonSquare Aug 12, 2024
8bb3e0c
New translations functions.md (Chinese Simplified)
TonSquare Aug 12, 2024
4fd82e3
New translations examples.md (Chinese Simplified)
TonSquare Aug 12, 2024
2db2261
New translations governance.md (Chinese Simplified)
TonSquare Aug 12, 2024
038aef0
New translations message-delivery-guarantees.mdx (Chinese Simplified)
TonSquare Aug 12, 2024
f58c29c
New translations academy-overview.md (Chinese Simplified)
TonSquare Aug 12, 2024
a8b37e3
New translations archive-node.md (Chinese Simplified)
TonSquare Aug 12, 2024
e0d4d5d
New translations apps.mdx (Chinese Simplified)
TonSquare Aug 12, 2024
b21edf7
New translations how-to-open-any-ton-site.md (Chinese Simplified)
TonSquare Aug 12, 2024
d5801c8
New translations setting-proxy.md (Chinese Simplified)
TonSquare Aug 12, 2024
c216f24
New translations auditors.mdx (Chinese Simplified)
TonSquare Aug 14, 2024
9f0a191
New translations readme.md (Korean)
TonSquare Aug 30, 2024
d3661b6
New translations jettons.md (Korean)
TonSquare Aug 30, 2024
2889ebb
New translations jettons.md (Ukrainian)
TonSquare Aug 30, 2024
11d1696
New translations node-types.md (Chinese Simplified)
TonSquare Sep 1, 2024
52927ad
New translations sdk.mdx (Korean)
TonSquare Sep 1, 2024
ab114f4
New translations sdk.mdx (Chinese Simplified)
TonSquare Sep 1, 2024
9c7f501
New translations faq.md (Chinese Simplified)
TonSquare Sep 3, 2024
875d78e
New translations compile.md (Chinese Simplified)
TonSquare Sep 4, 2024
73eccd3
New translations overview.md (Korean)
TonSquare Sep 16, 2024
1fbce3a
New translations usdt.md (Korean)
TonSquare Sep 16, 2024
fad3442
New translations developers.md (Korean)
TonSquare Sep 16, 2024
8ddd80e
New translations integration.md (Korean)
TonSquare Sep 16, 2024
5d42e2b
New translations message-builders.mdx (Korean)
TonSquare Sep 16, 2024
91e3381
New translations overview.mdx (Korean)
TonSquare Sep 16, 2024
e580ff4
New translations readme.md (Korean)
TonSquare Sep 16, 2024
a011dd5
New translations wallet-guidelines.md (Korean)
TonSquare Sep 16, 2024
920b175
New translations react.mdx (Korean)
TonSquare Sep 16, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,152 @@
# 작동 방식

![작동 방식](/img/localizationProgramGuideline/localization-program.png)

**ownSquare Labs 현지화 프로그램**은 몇 가지 주요 요소로 구성됩니다. 이 장에서는 프로그램의 작동 방식을 개괄적으로 설명하여, 그 작동 원리와 효과적인 사용 방법을 이해할 수 있도록 도와줍니다.

이 시스템 내에서는 여러 애플리케이션을 통합하여 하나의 통합된 프로그램으로 원활하게 작동하도록 합니다:

- **GitHub**: 문서를 호스팅하고, 업스트림 리포지토리에서 문서를 동기화하고, 특정 브랜치에 번역을 동기화합니다.
- **Crowdin**: 번역, 교정, 언어 기본 설정 등 번역 프로세스를 관리합니다.
- **AI 시스템**: 번역자들을 지원하기 위해 고급 AI를 활용하여 원활한 워크플로우를 보장합니다.
- **맞춤형 용어집**: 번역자들을 안내하고 AI가 프로젝트의 맥락에 맞는 정확한 번역을 생성하도록 합니다. 사용자들은 필요에 따라 자신들의 용어집을 업로드할 수도 있습니다.

:::info
이 가이드는 전체 과정을 자세히 다루지는 않지만, TownSquare Labs 현지화 프로그램의 독특한 주요 요소들을 강조할 것입니다. 프로그램을 더 자세히 탐색해 보세요.
:::

## 문서 및 번역을 위한 GitHub 동기화

우리 리포지토리는 문서와 번역 관리를 위해 여러 브랜치를 활용합니다. 각 특수 브랜치의 목적과 기능에 대한 자세한 설명은 다음과 같습니다:

### 브랜치 개요

#### 1. `dev`

`dev` 브랜치는 동기화 작업을 처리하기 위해 GitHub Actions를 실행합니다. 워크플로우 설정은 [**`.github/workflows`**](https://github.com/TownSquareXYZ/ton-docs/tree/dev/.github/workflows) 디렉터리에서 찾을 수 있습니다:

- **`sync-fork.yml`**: 이 워크플로우는 업스트림 리포지토리로부터 문서를 동기화합니다. 매일 00:00에 실행됩니다.
- **`sync-translations.yml`**: 이 워크플로우는 업데이트된 번역을 해당 언어 브랜치로 동기화하여 해당 언어 웹사이트에서 미리 볼 수 있도록 합니다.

#### 2. '현지화'

이 브랜치는 `dev` 브랜치에서 실행되는 GitHub Actions를 통해 업스트림 리포지토리와 동기화를 유지합니다. 또한 원래 리포지토리에 제안하고자 하는 특정 코드를 업데이트하는 데 사용됩니다.

#### 3. `l10n_localization`

이 브랜치는 `localization` 브랜치의 모든 변경 사항과 Crowdin의 번역을 포함합니다. 이 브랜치의 모든 수정 사항은 업스트림 리포지토리에 커밋됩니다.

#### 4. `[lang]_localization`

이 브랜치들은 `ko_localization` (한국어) 및 `ja_localization` (일본어)와 같이 특정 언어 미리보기를 위해 지정됩니다. 이를 통해 우리는 웹사이트를 다양한 언어로 미리 볼 수 있습니다.

이 브랜치들을 유지하고 GitHub Actions를 사용함으로써, 우리는 문서와 번역 업데이트의 동기화를 효율적으로 관리하여 다국어 콘텐츠가 항상 최신 상태를 유지하도록 합니다.

## Crowdin의 새 프로젝트를 설정하는 방법

1. [**Crowdin 계정**](https://accounts.crowdin.com/login) 에 로그인하세요.

2. 메뉴에서 `새 프로젝트 만들기`를 클릭하세요.
![새 프로젝트 만들기](/img/localizationProgramGuideline/howItWorked/create-new-project.png)

3. 프로젝트 이름과 대상 언어를 설정하세요. 언어는 나중에 설정에서 변경할 수 있습니다.
![프로젝트 설정 만들기](/img/localizationProgramGuideline/howItWorked/create-project-setting.png)

4. 방금 만든 프로젝트로 이동하여, 통합 탭을 선택하고 `통합 추가` 버튼을 클릭한 다음, `GitHub`를 검색하여 설치하세요.
![GitHub 통합 설치](/img/localizationProgramGuideline/howItWorked/install-github-integration.png)

5. Crowdin에서 GitHub 통합을 구성하기 전에, 불필요한 파일 업로드를 방지하기 위해 Crowdin에 업로드할 파일을 지정하세요:

1. **GitHub 리포지토리 루트**에 **crowdin.yml** 파일을 기본 설정으로 만드세요:

```yml
project_id: <Your project id>
preserve_hierarchy: 1
files:
- source: <Path of your original files>
translation: <Path of your translated files>
```

2. 올바른 구성 값을 가져옵니다:
- **project_id**: Crowdin 프로젝트에서 도구 탭으로 이동하여 API를 선택하고, **project_id**를 찾으세요.
![API 도구 선택](/img/localizationProgramGuideline/howItWorked/select-api-tool.png)
![project\_id](/img/localizationProgramGuideline/howItWorked/projectId.png)
- **preserve_hierarchy**: Crowdin 서버에서 GitHub 디렉토리 구조를 유지합니다.
- **source**와 **translation**: Crowdin에 업로드할 파일 경로와 번역된 파일이 출력될 경로를 지정합니다.

예시는 [**공식 설정 파일**](https://github.com/TownSquareXYZ/ton-docs/blob/localization/crowdin.yml)을 참고하세요.\
자세한 내용은 [**Crowdin 구성 파일 문서**](https://developer.crowdin.com/configuration-file/)에서 확인할 수 있습니다.

6. Crowdin을 구성하여 GitHub 리포지토리에 연결합니다:
1. `리포지토리 추가`를 클릭하고 `소스 및 번역 파일 모드`를 선택합니다.
![통합 모드 선택](/img/localizationProgramGuideline/howItWorked/select-integration-mode.png)
2. GitHub 계정을 연결하고 번역할 리포지토리를 검색하세요.
![리포지토리 검색](/img/localizationProgramGuideline/howItWorked/search-repo.png)
3. 왼쪽에서 브랜치를 선택하면 Crowdin이 번역을 게시할 새 브랜치가 생성됩니다.
![브랜치 설정](/img/localizationProgramGuideline/howItWorked/setting-branch.png)
4. GitHub 브랜치로 번역을 업데이트할 빈도를 선택하세요. 다른 설정은 기본 설정을 유지한 후 저장을 클릭하여 통합을 활성화하세요.
![빈도 설정 후 저장](/img/localizationProgramGuideline/howItWorked/frequency-save.png)

자세한 내용은 [**GitHub 연동 문서**](https://support.crowdin.com/github-integration/)를 참조하세요.

7. 마지막으로, 필요할 때마다 `지금 동기화` 버튼을 클릭하여 리포지토리와 번역을 동기화할 수 있습니다.

## 용어집

### 용어집이란 무엇인가요?

때로는 AI 번역기가 번역해서는 안 되는 특정 용어를 인식하지 못할 수 있습니다. 예를 들어, 프로그래밍 언어를 나타내는 "Rust"는 번역하지 않아야 합니다. 이러한 실수를 방지하기 위해 번역 지침으로 용어집을 사용합니다.

**용어집**은 프로젝트별 용어를 한 곳에 생성, 저장 및 관리하여 용어가 올바르고 일관되게 번역되도록 합니다.

참고용으로 [**ton-i18n-glossary**](https://github.com/TownSquareXYZ/ton-i18n-glossary)를 확인할 수 있습니다.
![ton-i18n-glossary](/img/localizationProgramGuideline/howItWorked/ton-i18n-glossary.png)

### 새 언어에 대한 용어집을 설정하는 방법은 무엇인가요?

대부분의 번역 플랫폼은 용어집을 지원합니다. Crowdin에서는 용어집을 설정한 후, 각 용어가 편집기에서 밑줄이 그어진 단어로 나타납니다. 용어 위에 마우스를 올리면 번역, 품사, 정의(제공된 경우)를 볼 수 있습니다.
![github-glossary](/img/localizationProgramGuideline/howItWorked/github-glossary.png)
![crowdin-glossary](/img/localizationProgramGuideline/howItWorked/crowdin-glossary.png)

DeepL에서는 용어집을 업로드하면 AI 번역 중 자동으로 사용됩니다.

우리는 업데이트를 자동으로 업로드하는 [**용어집 프로그램**](https://github.com/TownSquareXYZ/ton-i18n-glossary)을 만들었습니다.

용어집에 용어를 추가하려면:

1. 영어 용어가 이미 용어집에 있는 경우, 해당 언어의 번역을 입력하고 업로드합니다.
2. 새 용어집을 업로드하려면, 프로젝트를 클론하고 다음을 실행합니다:

- `npm i`
- `npm run generate -- <glossary name you want>`

새 용어를 추가하려면 1단계를 반복합니다.

**간단하고 효율적이지 않나요?**

## AI 번역 Copilot을 활용하는 방법은 무엇인가요?

AI 번역 코파일럿은 여러 가지 이점으로 언어 장벽을 허물어줍니다:

- **향상된 일관성**: AI 번역은 최신 정보를 기반으로 하여 가장 정확하고 최신의 번역을 제공합니다.
- **속도와 효율성**: AI 번역은 실시간으로 대량의 콘텐츠를 즉시 처리합니다.
- **강력한 확장성**: AI 시스템은 지속적으로 학습하고 개선되어 번역 품질이 시간이 지남에 따라 향상됩니다. 제공된 용어집을 통해 AI 번역은 다양한 저장소의 특정 요구에 맞춰 조정될 수 있습니다.

Crowdin에서 AI 번역을 사용하려면(저희 프로젝트에서는 DeepL 사용):

1. Crowdin 메뉴에서 기계 번역을 선택하고 DeepL 라인에서 편집을 클릭하세요.
![select-deepl](/img/localizationProgramGuideline/howItWorked/select-deepl.png)
2. DeepL 지원을 활성화하고 DeepL 번역기 API 키를 입력하세요.
> [DeepL 번역기 API 키 받기 방법](https://www.deepl.com/pro-api?cta=header-pro-api)

![config-crowdin-deepl](/img/localizationProgramGuideline/howItWorked/config-crowdin-deepl.png)

3. 우리의 DeepL 설정은 맞춤형 용어집을 사용합니다. 용어집 업로드에 대한 자세한 내용은 [**ton-i18n-glossary**](https://github.com/TownSquareXYZ/ton-i18n-glossary)를 확인하세요.

4. 리포지토리에서 사전 번역을 클릭하고 기계 번역을 통해 선택하세요.
![pre-translation](/img/localizationProgramGuideline/howItWorked/pre-translation.png)

5. DeepL을 번역 엔진으로 선택하고, 대상 언어를 선택한 다음 번역할 파일을 선택하세요.
![pre-translate-config](/img/localizationProgramGuideline/howItWorked/pre-translate-config.png)

끝났습니다! 이제 사전 번역이 완료될 때까지 잠시 휴식을 취하면 됩니다.
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
# 기여 방법

**TON을 가장 성공적인 블록체인으로 만드는** 우리의 목표를 이루기 위해, TON 문서가 전 세계 사람들에게 이해될 수 있도록 하는 것이 중요합니다. 현지화가 핵심이며, 이 노력에 당신이 함께 해주신다면 **정말 기쁠 것**입니다.

## 사전 준비 사항

**TownSquare Labs Localization Program**은 누구에게나 열려 있습니다! 기여를 시작하기 전에 다음 단계를 따라주세요:

1. [**Crowdin**](https://crowdin.com) 계정에 로그인하거나 가입하세요.
2. 기여하고 싶은 언어를 선택하세요.
3. [**Crowdin 사용 방법**](/contribute/localization-program/how-to-contribute) 가이드와 [**번역 스타일 가이드**](/contribute/localization-program/translation-style-guide)를 읽고 팁과 모범 사례를 익히세요.
4. 기계 번역을 사용하여 작업을 보조하지만, 단독으로 의존하지 마세요.
5. 모든 번역 결과는 교정이 완료된 후 1시간 내에 웹사이트에서 미리 볼 수 있습니다.

## 역할

시스템에서 맡을 수 있는 **역할**은 다음과 같습니다:

- **언어 코디네이터** – 할당된 언어 내 프로젝트 기능을 관리합니다.
- **개발자** – 파일 업로드, 번역 가능한 텍스트 편집, 통합 연결 및 API 사용을 담당합니다.
- **교정자** – 문자열을 번역하고 승인합니다.
- **번역가** (내부 또는 커뮤니티) – 문자열을 번역하고 다른 사람이 추가한 번역에 투표합니다.

우리의 현지화 프로젝트는 [Crowdin](https://crowdin.com/project/ton-docs)에서 호스팅됩니다.

:::info
Before you start contributing, **read the guidelines below** to ensure standardization and quality, making the review process much faster.

## 나란히 보기 모드

모든 작업은 Crowdin Editor의 **나란히 보기** 모드에서 수행됩니다. 이를 활성화하려면 작업할 파일을 클릭하세요. 페이지 오른쪽 상단의 **편집기 보기** 버튼을 클릭하고 더 명확한 편집기 보기를 위해 **나란히 보기** 모드를 선택하세요.
![나란히 보기 모드](/img/localizationProgramGuideline/side-by-side.png)
:::

### 언어 코디네이터

- **문자열 번역 및 승인**
- **프로젝트 콘텐츠 사전 번역**
- **프로젝트 멤버 및 가입 요청 관리**
![멤버 관리](/img/localizationProgramGuideline/manage-members.png)
- **프로젝트 보고서 생성**
![보고서 생성](/img/localizationProgramGuideline/generate-reports.png)
- **작업 생성**
![작업 생성](/img/localizationProgramGuideline/create-tasks.png)

### 개발자

- **파일 업로드**
- **번역 가능한 텍스트 편집**
- **통합 연결** (예: GitHub 통합 추가)
![GitHub 통합 설치](/img/localizationProgramGuideline/howItWorked/install-github-integration.png)
- **[Crowdin API](https://developer.crowdin.com/api/v2/) 사용**

### 교정자

**교정자**로서, **파란색 진행 막대**가 있는 파일에서 작업하게 됩니다.
![교정 단계1](/img/localizationProgramGuideline/proofread-step1.png)
파일을 클릭하여 편집 인터페이스로 들어가세요.

#### 기여 시작

1. [**나란히 보기 모드**](#side-by-side-mode)에 있는지 확인하세요. **승인되지 않음** 번역으로 필터링하여 교정이 필요한 문자열을 확인하세요.
![교정 필터](/img/localizationProgramGuideline/proofread-filter.png)

2. 다음 규칙을 따르세요:
- **파란색 큐브 아이콘**이 있는 문자열을 선택하세요. 각 번역을 확인하세요:
- **올바르면**, ☑️ 버튼을 클릭하세요.
- **잘못되면**, 다음 줄로 이동하세요.

![교정 승인됨](/img/localizationProgramGuideline/proofread-approved.png)

:::info
You can also review approved lines:

1. **승인됨**으로 필터링하세요.

2. 승인된 줄에 문제가 있으면, ☑️ 버튼을 클릭하여 교정이 필요하도록 되돌리세요.
:::

3. 다음 파일로 이동하려면 상단의 파일 이름을 클릭하고, 팝업 창에서 새 파일을 선택하여 교정을 계속하세요.
![다음으로 이동](/img/localizationProgramGuideline/redirect-to-next.png)

#### 작업 미리보기

모든 승인된 콘텐츠는 1시간 내에 미리보기 웹사이트에 배포됩니다. 최신 PR의 **미리보기** 링크는 [**우리의 레포지토리**](https://github.com/TownSquareXYZ/ton-docs/pulls)에서 확인하세요.
![미리보기 링크](/img/localizationProgramGuideline/preview-link.png)

### 번역가

**번역가**로서, 당신의 목표는 번역이 원문과 가깝고 표현이 풍부하여 이해하기 쉽게 만드는 것입니다. **파란색 진행 막대**를 100%로 만드는 것이 당신의 임무입니다.

#### 번역 시작

성공적인 번역 과정을 위해 다음 단계를 따르세요:

1. 번역이 100%에 도달하지 않은 파일을 선택하세요.
![번역가 선택](/img/localizationProgramGuideline/translator-select.png)

2. [**나란히 보기 모드**](#side-by-side-mode)에 있는지 확인하세요. **번역되지 않음** 문자열로 필터링하세요.
![번역가 필터](/img/localizationProgramGuideline/translator-filter.png)

3. 작업 공간은 네 부분으로 구성됩니다:
- **왼쪽 상단:** 소스 문자열을 기반으로 번역을 입력하세요.
- **왼쪽 하단:** 번역된 파일을 미리보기 합니다. 원본 형식을 유지하세요.
- **오른쪽 하단:** Crowdin의 번역 제안. 클릭하여 사용할 수 있지만, 특히 링크의 정확성을 확인하세요.

4. 상단의 **저장** 버튼을 클릭하여 번역을 저장하세요.
![번역가 저장](/img/localizationProgramGuideline/translator-save.png)

5. 다음 파일로 이동하려면 상단의 파일 이름을 클릭하고 팝업 창에서 새 파일을 선택하세요.
![다음으로 이동](/img/localizationProgramGuideline/redirect-to-next.png)

## 새 언어 지원 추가 방법

현재, Crowdin에는 원하는 모든 언어가 있습니다. 커뮤니티 매니저인 경우, 다음 단계를 따르세요:

1. [TownSquareXYZ/ton-docs](https://github.com/TownSquareXYZ/ton-docs)에 `[lang]_localization` (예: 한국어의 경우 `ko_localization`)이라는 새 브랜치를 추가하세요.
2. 이 저장소의 Vercel 소유자에게 연락하여 메뉴에 새 언어를 추가하도록 요청하세요.
3. dev 브랜치에 PR 요청을 생성하세요. **dev로 병합하지 마세요**; 이는 미리보기 용도입니다.

이 단계가 완료되면 PR 요청에서 언어의 미리보기를 볼 수 있습니다.
![ko 미리보기](/img/localizationProgramGuideline/ko_preview.png)

언어가 TON 문서에 준비되면, 문제를 생성하고, 우리가 프로덕션 환경에 언어를 설정하도록 요청하세요.
Loading
Loading