Blockly의 기본 메시지 (예: 컨텍스트 메뉴의 텍스트)는 다양한 언어로 번역되었습니다. en
언어가 기본적으로 로드되지만 사용 가능한 다른 언어도 포함할 수 있습니다.
npm으로 언어 구성
import * as Blockly from 'blockly';
를 사용하여 Blockly를 가져오면 기본 모듈(Blockly 핵심, Blockly 내장 블록, JavaScript 생성기, 영어 lang 파일)이 제공됩니다.
다른 언어를 사용하려면 가져오기를 더 신중하게 정의해야 합니다.
Blockly 기본 모듈 가져오기
import * as Blockly from 'blockly/core';
import 'blockly/blocks';
import 'blockly/javascript'; // Or the generator of your choice
Blockly 언어 가져오기
예를 들어 프랑스어 메시지 세트를 가져오려면 다음 단계를 따르세요.
import * as Fr from 'blockly/msg/fr';
지원되는 Blockly 언어의 전체 목록은 https://github.com/google/blockly/tree/master/msg/js를 참고하세요.
언어 구성
원하는 메시지 세트를 가져온 후에는 Blockly에서 언어를 설정해야 합니다. 이 함수는 현재 Blockly의 npm 출시 버전에만 포함되어 있습니다.
Blockly.setLocale(Fr);
이는 워크스페이스가 로드되기 전에 호출해야 합니다.
npm 없이 언어 구성
Blockly msg 디렉터리에서 적절한 스크립트 src를 포함하면 번역이 자동으로 포함됩니다.
<script src="../../blockly_compressed.js"></script>
<script src="../../blocks_compressed.js"></script>
<script src="../../msg/js/ar.js"></script>
커스텀 번역
Blockly는 모든 기본 문자열의 번역을 포함하지만 텍스트가 있는 맞춤 블록이 있는 경우 이러한 문자열에 자체 번역을 포함하는 것이 좋습니다. 예를 들어 blockly/msg/es
의 구조는 다음과 유사합니다.
Blockly.Msg["COLOUR_RGB_RED"] = "rojo";
맞춤 번역이 포함된 객체로 setLocale
를 호출하여 맞춤 메시지를 Blockly.Msg
객체의 새 속성으로 추가할 수 있습니다. 향후 추가될 수 있는 기본 번역과의 충돌을 방지하기 위해 번역에 맞춤 접두사를 추가하는 것이 좋습니다.
// In custom_es.js
export const CustomEs = {
HELLO: "Hola",
}
// In your setup code
import * as Es from blockly/msg/Es;
import { CustomEs } from ../custom_es;
Blockly.setLocale(Es);
Blockly.setLocale(CustomEs);
setLocale
는 입력 객체의 각 키를 Blockly.Msg
에 넣습니다. 고유한 키로 여러 번 호출할 수 있지만 중복 키로 두 번째 호출하면 첫 번째 키가 덮어쓰기됩니다.
블록에서 번역된 문자열을 참조하려면 구성한 언어의 문자열이 포함된 Blockly.Msg['HELLO']
를 사용하세요.