Ren'Py 자체 번역하기
Ren'Py 자체를 번역할 수 있습니다. 완전한 번역에는 GUI, 여러 Ren'Py 메시지, 새 프로젝트와 런처가 포함됩니다. 대부분의 플레이 및 개발 상황을 다룰 수 있지만 현재는 모든 오류 메시지를 번역할 수 있는 것은 아닙니다.
새 번역을 만들려면 다음을 수행하세요.
Ren'Py 런처를 엽니다.
환경설정 페이지에서 “런처 프로젝트 열기(Open launcher project)”를 선택합니다.
“번역 생성(Generate Translations)”을 선택합니다.
번역할 언어 이름을 입력합니다. 소문자 ASCII 문자와 밑줄로 구성해야 합니다. 예를 들어 "japanese", "russian", "ancient_klingon"은 모두 유효한 언어 이름입니다.
“번역 생성(Generate Translations)”을 선택합니다.
기존 언어 번역도 같은 절차로 업데이트할 수 있습니다. 생성한 번역을 사용하려면 환경설정으로 돌아가 새로 만든 언어를 선택하세요. 번역은 기본적으로 영어 번역의 복사본으로 생성됩니다.
번역 파일
번역 파일은 launcher/game/tl/language/에 있습니다. script.rpy를 제외한 모든 파일은 문자열 번역 구문으로 번역할 수 있는 문자열로 구성됩니다. 일부 문자열은 "## "로 시작합니다. 이 문자열은 번역하고 줄바꿈을 조정한 뒤 options.rpy와 gui.rpy 파일에 넣는 주석입니다.
번역 파일은 다음과 같습니다.
- common.rpy
Ren'Py가 플레이어에게 표시할 수 있는 인터페이스 메시지(문자열)가 들어 있습니다.
- developer.rpy
플레이어가 아닌 제작자에게만 필요한 문자열이 들어 있습니다.
- error.rpy
Ren'Py에 문제가 생기면 개발자나 플레이어에게 표시하는 문자열이 들어 있습니다.
- gui.rpy
기본 GUI에 넣을 주석이 들어 있습니다.
- launcher.rpy
런처에 표시하는 문자열이 들어 있습니다.
- obsolete.rpy
현재 Ren'Py에서 사용하지 않는 문자열이 들어 있습니다.
- options.rpy
기본 options.rpy 파일의 주석을 번역하는 데 사용하는 문자열이 들어 있습니다.
- screens.rpy
기본 GUI에서 사용하는 문자열과 기본 screens.rpy 파일의 주석이 들어 있습니다.
- script.rpym
새 프로젝트를 만들 때 이 파일의 내용이 script.rpy에 그대로 복사됩니다.
- style.rpy
기본적으로 없는 파일이지만 필요하면 만들어야 합니다. 런처 스타일과 생성한 게임에서 사용할 글꼴을 설정합니다.
언어별 번역
단순히 문구만 번역해서는 안 되는 항목이 하나 있습니다. "{#language name and font}" 번역은 언어 이름으로 바꾸어야 하며, ASCII 이외의 문자를 사용하면 필요에 따라 런처 글꼴 태그로 감쌉니다. 예를 들면 다음과 같습니다.
translate french strings:
old "{#language name and font}"
new "{font=fonts/Roboto-Light.ttf}Français{/font}"
이 항목은 런처에서 해당 언어를 사용하지 않을 때 그 언어 이름을 표시하는 데 사용합니다.
"{#in language font}"로 시작하는 번역도 같은 방식으로 감싸야 합니다. 예를 들면 다음과 같습니다.
translate french strings:
old "{#in language font}Start using Ren'Py in [lang_name]"
new "{font=fonts/Roboto-Light.ttf}Commencez à utiliser Ren'Py en [lang_name]{/font}"
글꼴 변경
Ren'Py의 기본 글꼴(DejaVuSans)은 대부분의 서구권 언어를 지원하지만 다른 글꼴이 필요한 경우도 많습니다. launcher/game/tl/language/style.rpy를 편집하고 다음을 추가하여 글꼴을 설정할 수 있습니다.
init python:
translate_font("language", "myfont.ttf")
여기서 "language"는 해당 언어(예: "japanese")이고 "myfont.ttf"는 사용할 글꼴(예: "MTLc3m.ttf")입니다. 런처가 찾을 수 있도록 글꼴 파일을 launcher/game/tl/language 디렉터리에 넣어야 합니다.
런처 스타일 변경
translate python 블록에서 변수를 설정하여 런처의 스타일을 구성할 수 있습니다. 사용 가능한 변수는 다음과 같습니다. 영어 번역을 기준으로 이름을 지었으므로 다소 혼동될 수 있습니다.
이 변수들은 런처에서만 사용할 수 있습니다.
- define gui.LIGHT_FONT = "Roboto-Light.ttf"
런처의 일반 텍스트에 사용하는 글꼴의 경로입니다.
- define gui.REGULAR_FONT = "Roboto-Regular.ttf"
런처의 굵은 텍스트에 사용하는 글꼴의 경로입니다.
- define gui.REGULAR_BOLD = False
True이면 굵은 텍스트에 볼드체를 적용합니다.
- define gui.FONT_SCALE = 1.0
런처의 모든 텍스트에 적용하는 크기 배율입니다.
이 변수들은 translate python 블록에서 설정합니다. 예를 들어 Ren'Py의 아랍어 번역에서는 다음과 같이 글꼴을 변경합니다.
translate arabic python:
gui.REGULAR_FONT = "DejaVuSans.ttf"
gui.LIGHT_FONT = "DejaVuSans.ttf"
gui.FONT_SCALE = .9
gui.REGULAR_BOLD = True
함수
다음 함수는 런처의 번역 설정에 사용합니다. init python 블록에서 호출해야 합니다.
- translate_font(language, font)
language에 사용할 글꼴을 설정합니다. 이 글꼴은 런처와 해당 언어로 생성한 게임에 사용됩니다. 글꼴 파일은 game/fonts에 넣어야 합니다.
- font
글꼴 파일의 이름을 나타내는 문자열입니다.
- translate_define(language, define, value, help=None)
게임을 생성할 때 define 값을 설정합니다. 예를 들어 글꼴 크기를 바꾸는 데 사용할 수 있습니다.
- language
대상 언어입니다.
- define
define의 이름입니다.
- value
define에 설정할 값을 나타내는 문자열입니다. (예: "10", "False", "'Font.ttf'")
- comment
None이 아니면 define 앞에 생성할 주석입니다. define이 gui.rpy에 없을 때만 주석이 생성됩니다. 주석 기호와 줄바꿈은 자동으로 추가되므로 "## "를 넣을 필요가 없습니다.
예를 들어 다음은 대사 텍스트의 크기를 변경합니다.
translate_define("martian", "gui.text_size", 12)