언어 하나 추가하기
OpenCLI에는 열 가지 번역이 들어 있습니다: English, 简体中文, 繁體中文, 日本語, 한국어, Español, Português (Brasil), Français, Deutsch, Русский.
다른 언어는 파일 하나입니다 —— 그리고 저 중 하나의 한 문장을 고치는 것도 파일 하나입니다.
화면에서
Customize → Language → Add a language file… 가 .json 파일을 받아 보관합니다.
곧바로 선택 목록에 나타납니다.
손으로
같은 파일을 ~/.opencli/locales 에, 언어 이름으로 둡니다:
~/.opencli/locales/nl.json
두 길이 쓰는 자리는 같으므로, 화면에서 넣은 것을 나중에 손으로 고칠 수도 있고 다른 기계로 복사할 수도 있습니다.
안에 무엇이 있는가
각 항목의 왼쪽은 화면에 나타나는 그대로의 영어 문장이고, 오른쪽은 대신 보여 줄 것입니다:
{
"name": "Nederlands",
"strings": {
"Dispatch": "Verzenden",
"Scheduled tasks": "Geplande taken",
"Runs ({count})": "Uitvoeringen ({count})"
}
}
name 은 언어 선택기에 보이는 이름입니다. 빼면 파일 이름이 쓰입니다.
바깥 껍데기 없이 맨 대응표만 있어도 됩니다:
{ "Dispatch": "Verzenden" }
들어 있는 것 하나에서 시작하기
들어 있는 번역은 같은 종류의 파일이고
web/src/locales/
에 있습니다. 하나를 복사해 각 줄의 오른쪽을 바꾸면, 찾아다녀야 할 문장 목록이 아니라
완성된 출발점이 생깁니다.
화면이 쓰는 모든 문장을 보려면:
python3 scripts/i18n-check.py
자리 표시자
문장 속의 {name} 은 채워집니다. 같은 자리 표시자를, 당신 언어가 원하는 순서로
남겨 두세요 —— 그 재배치야말로 그것들이 존재하는 이유의 대부분입니다:
{ "Allowed {count} of {total}": "{total} 중 {count} 개 허용" }
복수형
plural() 은 두 가지 형태 사이에서 고릅니다. 영어, 독일어, 스페인어, 프랑스어,
포르투갈어에는 그것으로 충분합니다. 러시아어가 2–4 에 요구하는 세 번째 형태는 없습니다.
두 개보다 많은 형태가 필요한 언어에서는 숫자가 스스로 뜻을 지도록 문장을 쓰세요 ——
그것과 일치해야 하는 명사 대신 запусков: {count} 처럼요.
중국어, 일본어, 한국어는 단수형을 쓰고 숫자에 일을 시킵니다. 이건 처리되어 있습니다.
들어 있는 번역 고치기
이미 들어 있는 언어의 이름을 단 파일은 대체하는 것이 아니라 합쳐집니다. 한 문장만 바꾸려면 한 항목만 쓰세요:
{ "Dispatch": "발송" }
나머지는 기본 문구 그대로 갑니다.
언제 반영되는가
화면에서 넣은 파일은 즉시 반영됩니다. 손으로 디렉터리에 둔 것은 창이 접속할 때 읽히므로 창을 다시 여세요. 파싱되지 않는 파일은 건너뛰고, 게이트웨이 로그에 한 줄이 남습니다 —— 다른 언어는 영향을 받지 않습니다.
번역되지 않은 문장
대응 항목이 없는 문장은 영어로 보입니다. 그래서 절반쯤 된 번역은 텅 빈 화면이 아니라 섞인 화면으로 읽힙니다. 쓸모 있으려고 다 끝낼 필요는 없습니다.
오른쪽에서 왼쪽으로
아랍어, 히브리어, 페르시아어는 들어 있지 않고, 그중 하나를 파일로 넣어도 페이지는
여전히 왼쪽에서 오른쪽으로 놓입니다. 화면에는 아직 dir="rtl" 처리가 없습니다.
그건 번역 파일이 아니라 스타일시트를 고치는 일입니다.