mirror of
https://github.com/scratchfoundation/scratch-blocks.git
synced 2025-07-24 12:49:30 -04:00
299 lines
13 KiB
JavaScript
299 lines
13 KiB
JavaScript
/**
|
|
* @license
|
|
* Visual Blocks Language
|
|
*
|
|
* Copyright 2012 Google Inc.
|
|
* https://developers.google.com/blockly/
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
/**
|
|
* @fileoverview English strings.
|
|
* @author ascii@media.mit.edu (Andrew Sliwinski)
|
|
*
|
|
* After modifying this file, run `npm run translate` from the root directory
|
|
* to regenerate `./msg/json/en.json`.
|
|
*/
|
|
'use strict';
|
|
|
|
goog.provide('Blockly.Msg.en');
|
|
goog.require('Blockly.Msg');
|
|
|
|
// Control blocks
|
|
Blockly.Msg.CONTROL_FOREVER = "forever";
|
|
Blockly.Msg.CONTROL_REPEAT = "repeat %1";
|
|
Blockly.Msg.CONTROL_IF = "if %1 then";
|
|
Blockly.Msg.CONTROL_ELSE = "else";
|
|
Blockly.Msg.CONTROL_STOP = "stop";
|
|
Blockly.Msg.CONTROL_STOP_ALL = "all";
|
|
Blockly.Msg.CONTROL_STOP_THIS = "this script";
|
|
Blockly.Msg.CONTROL_STOP_OTHER = "other scripts in sprite";
|
|
Blockly.Msg.CONTROL_WAIT = "wait %1 seconds";
|
|
Blockly.Msg.CONTROL_WAITUNTIL = "wait until %1";
|
|
Blockly.Msg.CONTROL_REPEATUNTIL = "repeat until %1";
|
|
Blockly.Msg.CONTROL_WHILE = "while %1";
|
|
Blockly.Msg.CONTROL_FOREACH = "for each %1 in %2";
|
|
Blockly.Msg.CONTROL_STARTASCLONE = "when I start as a clone";
|
|
Blockly.Msg.CONTROL_CREATECLONEOF = "create clone of %1";
|
|
Blockly.Msg.CONTROL_DELETETHISCLONE = "delete this clone";
|
|
Blockly.Msg.CONTROL_COUNTER = "counter";
|
|
Blockly.Msg.CONTROL_INCRCOUNTER = "increment counter";
|
|
Blockly.Msg.CONTROL_CLEARCOUNTER = "clear counter";
|
|
|
|
// Data blocks
|
|
Blockly.Msg.DATA_SETVARIABLETO = "set %1 to %2";
|
|
Blockly.Msg.DATA_CHANGEVARIABLEBY = "change %1 by %2";
|
|
Blockly.Msg.DATA_SHOWVARIABLE = "show variable %1";
|
|
Blockly.Msg.DATA_HIDEVARIABLE = "hide variable %1";
|
|
Blockly.Msg.DATA_ADDTOLIST = "add %1 to %2";
|
|
Blockly.Msg.DATA_DELETEOFLIST = "delete %1 of %2";
|
|
Blockly.Msg.DATA_INSERTATLIST = "insert %1 at %2 of %3";
|
|
Blockly.Msg.DATA_REPLACEITEMOFLIST = "replace item %1 of %2 with %3";
|
|
Blockly.Msg.DATA_ITEMOFLIST = "item %1 of %2";
|
|
Blockly.Msg.DATA_LENGTHOFLIST = "length of %1";
|
|
Blockly.Msg.DATA_LISTCONTAINSITEM = "%1 contains %2?";
|
|
Blockly.Msg.DATA_SHOWLIST = "show list %1";
|
|
Blockly.Msg.DATA_HIDELIST = "hide list %1";
|
|
|
|
// Event blocks
|
|
Blockly.Msg.EVENT_WHENFLAGCLICKED = "when %1 clicked";
|
|
Blockly.Msg.EVENT_WHENTHISSPRITECLICKED = "when this sprite clicked";
|
|
Blockly.Msg.EVENT_WHENSTAGECLICKED = "when stage clicked";
|
|
Blockly.Msg.EVENT_WHENBROADCASTRECEIVED = "when I receive %1";
|
|
Blockly.Msg.EVENT_WHENBACKDROPSWITCHESTO = "when backdrop switches to %1";
|
|
Blockly.Msg.EVENT_WHENGREATERTHAN = "when %1 > %2";
|
|
Blockly.Msg.EVENT_BROADCAST = "broadcast %1";
|
|
Blockly.Msg.EVENT_BROADCASTANDWAIT = "broadcast %1 and wait";
|
|
Blockly.Msg.EVENT_WHENKEYPRESSED = "when %1 key pressed";
|
|
Blockly.Msg.EVENT_WHENKEYPRESSED_SPACE = "space";
|
|
Blockly.Msg.EVENT_WHENKEYPRESSED_LEFT = "left arrow";
|
|
Blockly.Msg.EVENT_WHENKEYPRESSED_RIGHT = "right arrow";
|
|
Blockly.Msg.EVENT_WHENKEYPRESSED_DOWN = "down arrow";
|
|
Blockly.Msg.EVENT_WHENKEYPRESSED_UP = "up arrow";
|
|
Blockly.Msg.EVENT_WHENKEYPRESSED_ANY = "any";
|
|
|
|
// Looks blocks
|
|
Blockly.Msg.LOOKS_SAYFORSECS = "say %1 for %2 seconds";
|
|
Blockly.Msg.LOOKS_SAY = "say %1";
|
|
Blockly.Msg.LOOKS_THINKFORSECS = "think %1 for %2 seconds";
|
|
Blockly.Msg.LOOKS_THINK = "think %1";
|
|
Blockly.Msg.LOOKS_SHOW = "show";
|
|
Blockly.Msg.LOOKS_HIDE = "hide";
|
|
Blockly.Msg.LOOKS_HIDEALLSPRITES = "hide all sprites";
|
|
Blockly.Msg.LOOKS_EFFECT_COLOR = "color";
|
|
Blockly.Msg.LOOKS_EFFECT_FISHEYE = "fisheye";
|
|
Blockly.Msg.LOOKS_EFFECT_WHIRL = "whirl";
|
|
Blockly.Msg.LOOKS_EFFECT_PIXELATE = "pixelate";
|
|
Blockly.Msg.LOOKS_EFFECT_MOSAIC = "mosaic";
|
|
Blockly.Msg.LOOKS_EFFECT_BRIGHTNESS = "brightness";
|
|
Blockly.Msg.LOOKS_EFFECT_GHOST = "ghost";
|
|
Blockly.Msg.LOOKS_CHANGEEFFECTBY = "change %1 effect by %2";
|
|
Blockly.Msg.LOOKS_SETEFFECTTO = "set %1 effect to %2";
|
|
Blockly.Msg.LOOKS_CLEARGRAPHICEFFECTS = "clear graphic effects";
|
|
Blockly.Msg.LOOKS_CHANGESIZEBY = "change size by %1";
|
|
Blockly.Msg.LOOKS_SETSIZETO = "set size to %1 %";
|
|
Blockly.Msg.LOOKS_SIZE = "size";
|
|
Blockly.Msg.LOOKS_CHANGESTRETCHBY = "change stretch by %1";
|
|
Blockly.Msg.LOOKS_SETSTRETCHTO = "set stretch to %1 %";
|
|
Blockly.Msg.LOOKS_SWITCHCOSTUMETO = "switch costume to %1";
|
|
Blockly.Msg.LOOKS_NEXTCOSTUME = "next costume";
|
|
Blockly.Msg.LOOKS_SWITCHBACKDROPTO = "switch backdrop to %1";
|
|
Blockly.Msg.LOOKS_GOTOFRONTBACK = "go to %1 layer";
|
|
Blockly.Msg.LOOKS_GOTOFRONTBACK_FRONT = "front";
|
|
Blockly.Msg.LOOKS_GOTOFRONTBACK_BACK = "back";
|
|
Blockly.Msg.LOOKS_GOFORWARDBACKWARDLAYERS = "go %1 %2 layers";
|
|
Blockly.Msg.LOOKS_GOFORWARDBACKWARDLAYERS_FORWARD = "forward";
|
|
Blockly.Msg.LOOKS_GOFORWARDBACKWARDLAYERS_BACKWARD = "backward";
|
|
Blockly.Msg.LOOKS_BACKDROPNUMBERNAME = "backdrop %1";
|
|
Blockly.Msg.LOOKS_COSTUMENUMBERNAME = "costume %1";
|
|
Blockly.Msg.LOOKS_NUMBERNAME_NUMBER = "number";
|
|
Blockly.Msg.LOOKS_NUMBERNAME_NAME = "name";
|
|
Blockly.Msg.LOOKS_SWITCHBACKDROPTOANDWAIT = "switch backdrop to %1 and wait";
|
|
Blockly.Msg.LOOKS_NEXTBACKDROP = "next backdrop";
|
|
|
|
// Motion blocks
|
|
Blockly.Msg.MOTION_MOVESTEPS = "move %1 steps";
|
|
Blockly.Msg.MOTION_TURNLEFT = "turn %1 %2 degrees";
|
|
Blockly.Msg.MOTION_TURNRIGHT = "turn %1 %2 degrees";
|
|
Blockly.Msg.MOTION_POINTINDIRECTION = "point in direction %1";
|
|
Blockly.Msg.MOTION_POINTTOWARDS = "point towards %1";
|
|
Blockly.Msg.MOTION_POINTTOWARDS_POINTER = "mouse-pointer";
|
|
Blockly.Msg.MOTION_GOTO = "go to %1";
|
|
Blockly.Msg.MOTION_GOTO_POINTER = "mouse-pointer";
|
|
Blockly.Msg.MOTION_GOTO_RANDOM = "random position";
|
|
Blockly.Msg.MOTION_GOTOXY = "go to x: %1 y: %2";
|
|
Blockly.Msg.MOTION_GLIDESECSTOXY = "glide %1 secs to x: %2 y: %3";
|
|
Blockly.Msg.MOTION_GLIDETO = "glide %1 secs to %2";
|
|
Blockly.Msg.MOTION_GLIDETO_POINTER = "mouse-pointer";
|
|
Blockly.Msg.MOTION_GLIDETO_RANDOM = "random position";
|
|
Blockly.Msg.MOTION_CHANGEXBY = "change x by %1";
|
|
Blockly.Msg.MOTION_SETX = "set x to %1";
|
|
Blockly.Msg.MOTION_CHANGEYBY = "change y by %1";
|
|
Blockly.Msg.MOTION_SETY = "set y to %1";
|
|
Blockly.Msg.MOTION_IFONEDGEBOUNCE = "if on edge, bounce";
|
|
Blockly.Msg.MOTION_SETROTATIONSTYLE = "set rotation style %1";
|
|
Blockly.Msg.MOTION_SETROTATIONSTYLE_LEFTRIGHT = "left-right";
|
|
Blockly.Msg.MOTION_SETROTATIONSTYLE_DONTROTATE = "don't rotate";
|
|
Blockly.Msg.MOTION_SETROTATIONSTYLE_ALLAROUND = "all around";
|
|
Blockly.Msg.MOTION_XPOSITION = "x position";
|
|
Blockly.Msg.MOTION_YPOSITION = "y position";
|
|
Blockly.Msg.MOTION_DIRECTION = "direction";
|
|
|
|
// Operators blocks
|
|
Blockly.Msg.OPERATORS_ADD = "%1 + %2";
|
|
Blockly.Msg.OPERATORS_SUBTRACT = "%1 - %2";
|
|
Blockly.Msg.OPERATORS_MULTIPLY = "%1 * %2";
|
|
Blockly.Msg.OPERATORS_DIVIDE = "%1 / %2";
|
|
Blockly.Msg.OPERATORS_RANDOM = "pick random %1 to %2";
|
|
Blockly.Msg.OPERATORS_GT = "%1 > %2";
|
|
Blockly.Msg.OPERATORS_LT = "%1 < %2";
|
|
Blockly.Msg.OPERATORS_EQUALS = "%1 = %2";
|
|
Blockly.Msg.OPERATORS_AND = "%1 and %2";
|
|
Blockly.Msg.OPERATORS_OR = "%1 or %2";
|
|
Blockly.Msg.OPERATORS_NOT = "not %1";
|
|
Blockly.Msg.OPERATORS_JOIN = "join %1 %2";
|
|
Blockly.Msg.OPERATORS_LETTEROF = "letter %1 of %2";
|
|
Blockly.Msg.OPERATORS_LENGTH = "length of %1";
|
|
Blockly.Msg.OPERATORS_CONTAINS = "%1 contains %2?";
|
|
Blockly.Msg.OPERATORS_MOD = "%1 mod %2";
|
|
Blockly.Msg.OPERATORS_ROUND = "round %1";
|
|
Blockly.Msg.OPERATORS_MATHOP = "%1 of %2";
|
|
Blockly.Msg.OPERATORS_MATHOP_ABS = "abs";
|
|
Blockly.Msg.OPERATORS_MATHOP_FLOOR = "floor";
|
|
Blockly.Msg.OPERATORS_MATHOP_CEILING = "ceiling";
|
|
Blockly.Msg.OPERATORS_MATHOP_SQRT = "sqrt";
|
|
Blockly.Msg.OPERATORS_MATHOP_SIN = "sin";
|
|
Blockly.Msg.OPERATORS_MATHOP_COS = "cos";
|
|
Blockly.Msg.OPERATORS_MATHOP_TAN = "tan";
|
|
Blockly.Msg.OPERATORS_MATHOP_ASIN = "asin";
|
|
Blockly.Msg.OPERATORS_MATHOP_ACOS = "acos";
|
|
Blockly.Msg.OPERATORS_MATHOP_ATAN = "atan";
|
|
Blockly.Msg.OPERATORS_MATHOP_LN = "ln";
|
|
Blockly.Msg.OPERATORS_MATHOP_LOG = "log";
|
|
Blockly.Msg.OPERATORS_MATHOP_EEXP = "e ^";
|
|
Blockly.Msg.OPERATORS_MATHOP_10EXP = "10 ^";
|
|
|
|
// Procedures blocks
|
|
Blockly.Msg.PROCEDURES_DEFINITION = "define %1";
|
|
|
|
// Sensing blocks
|
|
Blockly.Msg.SENSING_TOUCHINGOBJECT = "touching %1?";
|
|
Blockly.Msg.SENSING_TOUCHINGOBJECT_POINTER = "mouse-pointer";
|
|
Blockly.Msg.SENSING_TOUCHINGOBJECT_EDGE = "edge";
|
|
Blockly.Msg.SENSING_TOUCHINGCOLOR = "touching color %1?";
|
|
Blockly.Msg.SENSING_COLORISTOUCHINGCOLOR = "color %1 is touching %2?";
|
|
Blockly.Msg.SENSING_DISTANCETO = "distance to %1";
|
|
Blockly.Msg.SENSING_DISTANCETO_POINTER = "mouse-pointer";
|
|
Blockly.Msg.SENSING_ASKANDWAIT = "ask %1 and wait";
|
|
Blockly.Msg.SENSING_ANSWER = "answer";
|
|
Blockly.Msg.SENSING_KEYPRESSED = "key %1 pressed?";
|
|
Blockly.Msg.SENSING_MOUSEDOWN = "mouse down?";
|
|
Blockly.Msg.SENSING_MOUSEX = "mouse x";
|
|
Blockly.Msg.SENSING_MOUSEY = "mouse y";
|
|
Blockly.Msg.SENSING_SETDRAGMODE = "set drag mode %1";
|
|
Blockly.Msg.SENSING_SETDRAGMODE_DRAGGABLE = "draggable";
|
|
Blockly.Msg.SENSING_SETDRAGMODE_NOTDRAGGABLE = "not draggable";
|
|
Blockly.Msg.SENSING_LOUDNESS = "loudness";
|
|
Blockly.Msg.SENSING_LOUD = "loud?";
|
|
Blockly.Msg.SENSING_TIMER = "timer";
|
|
Blockly.Msg.SENSING_RESETTIMER = "reset timer";
|
|
Blockly.Msg.SENSING_OF = "%1 of %2";
|
|
Blockly.Msg.SENSING_OF_XPOSITION = "x position";
|
|
Blockly.Msg.SENSING_OF_YPOSITION = "y position";
|
|
Blockly.Msg.SENSING_OF_DIRECTION = "direction";
|
|
Blockly.Msg.SENSING_OF_COSTUMENUMBER = "costume #";
|
|
Blockly.Msg.SENSING_OF_COSTUMENAME = "costume name";
|
|
Blockly.Msg.SENSING_OF_SIZE = "size";
|
|
Blockly.Msg.SENSING_OF_VOLUME = "volume";
|
|
Blockly.Msg.SENSING_OF_BACKDROPNUMBER = "backdrop #";
|
|
Blockly.Msg.SENSING_OF_BACKDROPNAME = "backdrop name";
|
|
Blockly.Msg.SENSING_CURRENT = "current %1";
|
|
Blockly.Msg.SENSING_CURRENT_YEAR = "year";
|
|
Blockly.Msg.SENSING_CURRENT_MONTH = "month";
|
|
Blockly.Msg.SENSING_CURRENT_DATE = "date";
|
|
Blockly.Msg.SENSING_CURRENT_DAYOFWEEK = "day of week";
|
|
Blockly.Msg.SENSING_CURRENT_HOUR = "hour";
|
|
Blockly.Msg.SENSING_CURRENT_MINUTE = "minute";
|
|
Blockly.Msg.SENSING_CURRENT_SECOND = "second";
|
|
Blockly.Msg.SENSING_DAYSSINCE2000 = "days since 2000";
|
|
Blockly.Msg.SENSING_USERNAME = "username";
|
|
Blockly.Msg.SENSING_USERID = "user id";
|
|
|
|
// Sound blocks
|
|
Blockly.Msg.SOUND_PLAY = "start sound %1";
|
|
Blockly.Msg.SOUND_PLAYUNTILDONE = "play sound %1 until done";
|
|
Blockly.Msg.SOUND_STOPALLSOUNDS = "stop all sounds";
|
|
Blockly.Msg.SOUND_SETEFFECTO = "set %1 effect to %2";
|
|
Blockly.Msg.SOUND_CHANGEEFFECTBY = "change %1 effect by %2";
|
|
Blockly.Msg.SOUND_CLEAREFFECTS = "clear sound effects";
|
|
Blockly.Msg.SOUND_EFFECTS_PITCH = "pitch";
|
|
Blockly.Msg.SOUND_EFFECTS_PAN = "pan left/right";
|
|
Blockly.Msg.SOUND_CHANGEVOLUMEBY = "change volume by %1";
|
|
Blockly.Msg.SOUND_SETVOLUMETO = "set volume to %1%";
|
|
Blockly.Msg.SOUND_VOLUME = "volume";
|
|
|
|
// Context menus
|
|
Blockly.Msg.DUPLICATE_BLOCK = 'Duplicate';
|
|
Blockly.Msg.ADD_COMMENT = 'Add Comment';
|
|
Blockly.Msg.REMOVE_COMMENT = 'Remove Comment';
|
|
Blockly.Msg.DELETE_BLOCK = 'Delete Block';
|
|
Blockly.Msg.DELETE_X_BLOCKS = 'Delete %1 Blocks';
|
|
Blockly.Msg.DELETE_ALL_BLOCKS = 'Delete all %1 blocks?';
|
|
Blockly.Msg.CLEAN_UP = 'Clean up Blocks';
|
|
Blockly.Msg.HELP = 'Help';
|
|
Blockly.Msg.UNDO = 'Undo';
|
|
Blockly.Msg.REDO = 'Redo';
|
|
Blockly.Msg.EDIT_PROCEDURE = 'Edit';
|
|
Blockly.Msg.SHOW_PROCEDURE_DEFINITION = 'Go to definition';
|
|
|
|
// Color
|
|
Blockly.Msg.COLOUR_HUE_LABEL = 'Color';
|
|
Blockly.Msg.COLOUR_SATURATION_LABEL = 'Saturation';
|
|
Blockly.Msg.COLOUR_BRIGHTNESS_LABEL = 'Brightness';
|
|
|
|
// Variables
|
|
// @todo Remove these once fully managed by Scratch VM / Scratch GUI
|
|
Blockly.Msg.CHANGE_VALUE_TITLE = 'Change value:';
|
|
Blockly.Msg.RENAME_VARIABLE = 'Rename variable';
|
|
Blockly.Msg.RENAME_VARIABLE_TITLE = 'Rename all "%1" variables to:';
|
|
Blockly.Msg.RENAME_VARIABLE_MODAL_TITLE = 'Rename Variable';
|
|
Blockly.Msg.NEW_VARIABLE = 'Make a Variable';
|
|
Blockly.Msg.NEW_VARIABLE_TITLE = 'New variable name:';
|
|
Blockly.Msg.VARIABLE_MODAL_TITLE = 'New Variable';
|
|
Blockly.Msg.VARIABLE_ALREADY_EXISTS = 'A variable named "%1" already exists.';
|
|
Blockly.Msg.VARIABLE_ALREADY_EXISTS_FOR_ANOTHER_TYPE = 'A variable named "%1" already exists for another variable of type "%2".';
|
|
Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = 'Delete %1 uses of the "%2" variable?';
|
|
Blockly.Msg.CANNOT_DELETE_VARIABLE_PROCEDURE = 'Can\'t delete the variable "%1" because it\'s part of the definition of the function "%2"';
|
|
Blockly.Msg.DELETE_VARIABLE = 'Delete the "%1" variable';
|
|
|
|
// Custom Procedures
|
|
// @todo Remove these once fully managed by Scratch VM / Scratch GUI
|
|
Blockly.Msg.NEW_PROCEDURE = 'Make a Block';
|
|
Blockly.Msg.PROCEDURE_ALREADY_EXISTS = 'A procedure named "%1" already exists.';
|
|
|
|
// Lists
|
|
// @todo Remove these once fully managed by Scratch VM / Scratch GUI
|
|
Blockly.Msg.NEW_LIST = 'Make a List';
|
|
Blockly.Msg.NEW_LIST_TITLE = 'New list name:';
|
|
Blockly.Msg.LIST_MODAL_TITLE = 'New List';
|
|
Blockly.Msg.LIST_ALREADY_EXISTS = 'A list named "%1" already exists.';
|
|
Blockly.Msg.RENAME_LIST_TITLE = 'Rename all "%1" lists to:';
|
|
Blockly.Msg.RENAME_LIST_MODAL_TITLE = 'Rename List';
|
|
|
|
// Broadcast Messages
|
|
// @todo Remove these once fully managed by Scratch VM / Scratch GUI
|
|
Blockly.Msg.NEW_BROADCAST_MESSAGE = 'New message';
|
|
Blockly.Msg.NEW_BROADCAST_MESSAGE_TITLE = 'New message name:';
|
|
Blockly.Msg.BROADCAST_MODAL_TITLE = 'New Message';
|
|
Blockly.Msg.DEFAULT_BROADCAST_MESSAGE_NAME = 'message1';
|