Blockly는 사용자의 언어로 현지화할 수 있는 블록 정의를 지원합니다. JSON 블록 정의의 메시지 문자열, 문자열 테이블 사용을 통해 입력, 필드, 라벨을 조정하여 언어의 어휘와 단어 순서 및 방향을 확인할 수 있습니다.
이러한 모든 사례는 동일한 JSON 블록 정의를 공유합니다.
// Block for creating a list with one element repeated.
{
"type": "lists_repeat",
"message0": "%{BKY_LISTS_REPEAT_TITLE}",
"args0": [
{
"type": "input_value",
"name": "ITEM"
},
{
"type": "input_value",
"name": "NUM",
"check": "Number"
}
],
"output": "Array",
"colour": "%{BKY_LISTS_HUE}",
"tooltip": "%{BKY_LISTS_REPEAT_TOOLTIP}",
"helpUrl": "%{BKY_LISTS_REPEAT_HELPURL}"
}
스트링 테이블
lists_repeat
예에는 여러 "%{BKY_...}"
문자열이 포함되어 있습니다. 각각의
Blockly.Msg
문자열 테이블의 문자열에 대한 참조입니다. 이
블록이 인스턴스화되면 Blockly는 문자열을 값으로 바꾸려고 시도합니다.
예를 들어 %{BKY_LISTS_REPEAT_TITLE}
는
Blockly.Msg['LISTS_REPEAT_TITLE']
(있는 경우) 값이 존재하지 않는 경우
%{BKY_...}
표기법은 그대로 유지되며 Blockly는 경고를 표시합니다.
확인할 수 있습니다
예에 표시된 대로 이 표기법은 여러 위치에서 작동합니다. 메시지
도움말을 통해 사용자에게 표시되는 문자열을 바꿀 수 있습니다. 마찬가지로
필드는 항목 텍스트에 대한 표기법도 사용할 수 있습니다. 도움말 URL은
사용자가 유사한 현지화된 페이지로 연결되도록 하기 마지막으로
colour
값은 표기법을 사용하여 블록 팔레트를 중앙 집중화할 수 있습니다.
JavaScript 구현을 사용하고 있고
런타임 시 사용자 언어를 사용한다면 직접 참조를 사용하는 것이 더 쉬울 수 있습니다. 대상
예를 들어 Blockly.Msg['LISTS_REPEAT_TITLE']
또는
Blockly.Msg.LISTS_REPEAT_TITLE'
문자열 테이블은 다음 디렉터리의 언어별 .js
파일 중 하나를 통해 로드됩니다.
msg/js
해당 파일을 웹페이지에 업로드하여 올바른 블록 번역을 로드합니다.
JSON 메시지 보간
message0
속성 (및 message1
, message2
등)은 입력을 나타냅니다.
필드 및 주변 라벨 텍스트에 적용됩니다. LISTS_REPEAT_TITLE
의
lists_repeat
블록에서 영어 값은 다음과 같습니다.
Blockly.Msg.LISTS_REPEAT_TITLE = 'create list with item %1 repeated %2 times';
두 개의 보간 마커인 %1
와 %2
는 두 입력의 위치를 표시합니다.
자세한 내용은 args0
배열에서 확인할 수 있습니다. args1
에 해당
message1
문자열입니다. 자세한 내용은
맞춤 템플릿 만들기
가이드를 참조하세요.
보간 마커 사이의 텍스트가 이름 없는 텍스트로 변환됩니다. 라벨 필드가 포함되어 있습니다. 이렇게 하면 블록 순서와 읽기 방법을 보여줍니다.
// In Spanish
Blockly.Msg.LISTS_REPEAT_TITLE = "crear lista con el elemento %1 repetido %2 veces";
// In Korean
Blockly.Msg.LISTS_REPEAT_TITLE = "%1을 %2번 넣어, 리스트 생성";
오른쪽에서 왼쪽으로 쓰는 언어로 번역할 때 메시지 문자열은 시각적 순서이며 유니코드 방향 명령을 포함하면 안 됩니다.
// In Arabic. Note how %2 is left of %1, since it read right to left.
Blockly.Msg.LISTS_REPEAT_TITLE = "إنشئ قائمة مع العنصر %1 %2 مرات";
문자열 테이블 다시 빌드
문자열 테이블 .js
파일을 빌드하는 것은 build:langfiles
스크립트의 일부입니다. 이
스크립트는 식별자 키와 영어 번역을
msg/messages.js
드림
새 en.json
을(를) 만듭니다.
다음 단어 및 문장의 다른 번역과 결합
다른 JSON 파일
Kubernetes가 다시
JavaScript 문자열 테이블
새롭게 추가된
en.js
입니다.
영어 이외의 JSON 파일은 TranslateWiki 자세한 내용은 메모 사용 번역 페이지를 참조하세요.