blockly 12.5.1 → 13.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/blockly.min.js +1541 -700
- package/blockly.mjs +13 -5
- package/blockly_compressed.js +1449 -674
- package/blockly_compressed.js.map +1 -1
- package/blocks_compressed.js +16 -16
- package/blocks_compressed.js.map +1 -1
- package/core/block.d.ts +1 -1
- package/core/block_aria_composer.d.ts +119 -0
- package/core/block_svg.d.ts +59 -16
- package/core/blockly.d.ts +21 -16
- package/core/bubbles/bubble.d.ts +17 -2
- package/core/bubbles/mini_workspace_bubble.d.ts +9 -1
- package/core/bubbles/text_bubble.d.ts +4 -1
- package/core/bubbles/textinput_bubble.d.ts +5 -0
- package/core/comments/comment_editor.d.ts +2 -2
- package/core/comments/rendered_workspace_comment.d.ts +6 -1
- package/core/common.d.ts +1 -1
- package/core/css.d.ts +2 -1
- package/core/dragging/block_drag_strategy.d.ts +126 -14
- package/core/dragging/bubble_drag_strategy.d.ts +5 -4
- package/core/dragging/comment_drag_strategy.d.ts +4 -4
- package/core/dragging/dragger.d.ts +13 -14
- package/core/events/events_block_create.d.ts +0 -3
- package/core/events/events_block_delete.d.ts +0 -3
- package/core/events/events_comment_create.d.ts +0 -3
- package/core/events/events_comment_delete.d.ts +0 -3
- package/core/field.d.ts +69 -2
- package/core/field_input.d.ts +23 -0
- package/core/flyout_base.d.ts +1 -125
- package/core/flyout_button.d.ts +9 -0
- package/core/flyout_horizontal.d.ts +0 -11
- package/core/flyout_vertical.d.ts +0 -11
- package/core/focus_manager.d.ts +47 -2
- package/core/gesture.d.ts +0 -12
- package/core/hints.d.ts +44 -0
- package/core/icons/icon.d.ts +6 -0
- package/core/inputs/input.d.ts +22 -1
- package/core/interfaces/i_bounded_element.d.ts +7 -0
- package/core/interfaces/i_bubble.d.ts +3 -2
- package/core/interfaces/i_collapsible_toolbox_item.d.ts +5 -1
- package/core/interfaces/i_draggable.d.ts +22 -17
- package/core/interfaces/i_dragger.d.ts +19 -10
- package/core/interfaces/i_flyout.d.ts +1 -31
- package/core/interfaces/i_focusable_node.d.ts +8 -0
- package/core/interfaces/i_focusable_tree.d.ts +8 -0
- package/core/interfaces/i_json_block_definition.d.ts +102 -0
- package/core/interfaces/i_navigation_policy.d.ts +12 -0
- package/core/interfaces/i_selectable.d.ts +2 -2
- package/core/interfaces/i_selectable_toolbox_item.d.ts +3 -3
- package/core/interfaces/i_toolbox.d.ts +4 -0
- package/core/interfaces/i_toolbox_item.d.ts +6 -0
- package/core/keyboard_nav/keyboard_mover.d.ts +149 -0
- package/core/keyboard_nav/move_indicator.d.ts +35 -0
- package/core/keyboard_nav/{block_navigation_policy.d.ts → navigation_policies/block_navigation_policy.d.ts} +17 -25
- package/core/keyboard_nav/navigation_policies/bubble_navigation_policy.d.ts +63 -0
- package/core/keyboard_nav/{comment_bar_button_navigation_policy.d.ts → navigation_policies/comment_bar_button_navigation_policy.d.ts} +10 -3
- package/core/keyboard_nav/{comment_editor_navigation_policy.d.ts → navigation_policies/comment_editor_navigation_policy.d.ts} +10 -3
- package/core/keyboard_nav/{connection_navigation_policy.d.ts → navigation_policies/connection_navigation_policy.d.ts} +11 -16
- package/core/keyboard_nav/{field_navigation_policy.d.ts → navigation_policies/field_navigation_policy.d.ts} +10 -3
- package/core/keyboard_nav/{flyout_button_navigation_policy.d.ts → navigation_policies/flyout_button_navigation_policy.d.ts} +10 -3
- package/core/keyboard_nav/{flyout_separator_navigation_policy.d.ts → navigation_policies/flyout_separator_navigation_policy.d.ts} +9 -3
- package/core/keyboard_nav/{icon_navigation_policy.d.ts → navigation_policies/icon_navigation_policy.d.ts} +12 -5
- package/core/keyboard_nav/navigation_policies/toolbox_item_navigation_policy.d.ts +64 -0
- package/core/keyboard_nav/{workspace_comment_navigation_policy.d.ts → navigation_policies/workspace_comment_navigation_policy.d.ts} +14 -9
- package/core/keyboard_nav/{workspace_navigation_policy.d.ts → navigation_policies/workspace_navigation_policy.d.ts} +10 -3
- package/core/keyboard_nav/navigators/flyout_navigator.d.ts +63 -0
- package/core/keyboard_nav/navigators/navigator.d.ts +225 -0
- package/core/keyboard_nav/navigators/toolbox_navigator.d.ts +70 -0
- package/core/registry.d.ts +0 -2
- package/core/renderers/common/constants.d.ts +4 -7
- package/core/renderers/common/i_path_object.d.ts +8 -0
- package/core/renderers/common/path_object.d.ts +5 -14
- package/core/renderers/common/renderer.d.ts +3 -3
- package/core/renderers/zelos/constants.d.ts +1 -14
- package/core/renderers/zelos/measurables/bottom_row.d.ts +1 -1
- package/core/renderers/zelos/measurables/top_row.d.ts +1 -1
- package/core/renderers/zelos/path_object.d.ts +0 -3
- package/core/renderers/zelos/renderer.d.ts +8 -0
- package/core/shortcut_items.d.ts +73 -1
- package/core/shortcut_registry.d.ts +6 -0
- package/core/theme.d.ts +0 -2
- package/core/toast.d.ts +2 -11
- package/core/toolbox/category.d.ts +5 -0
- package/core/toolbox/separator.d.ts +4 -0
- package/core/toolbox/toolbox.d.ts +17 -33
- package/core/toolbox/toolbox_item.d.ts +4 -0
- package/core/utils/aria.d.ts +245 -28
- package/core/utils/dom.d.ts +1 -1
- package/core/utils/shortcut_formatting.d.ts +22 -0
- package/core/utils/useragent.d.ts +1 -0
- package/core/variables.d.ts +1 -1
- package/core/workspace_audio.d.ts +23 -0
- package/core/workspace_svg.d.ts +8 -50
- package/dart_compressed.js +9 -9
- package/dart_compressed.js.map +1 -1
- package/index.mjs +13 -5
- package/javascript_compressed.js +11 -10
- package/javascript_compressed.js.map +1 -1
- package/lua_compressed.js +7 -7
- package/lua_compressed.js.map +1 -1
- package/msg/ab.js +65 -0
- package/msg/ab.mjs +65 -0
- package/msg/ace.js +65 -0
- package/msg/ace.mjs +65 -0
- package/msg/af.js +65 -0
- package/msg/af.mjs +65 -0
- package/msg/am.js +65 -0
- package/msg/am.mjs +65 -0
- package/msg/ar.js +65 -0
- package/msg/ar.mjs +65 -0
- package/msg/ast.js +65 -0
- package/msg/ast.mjs +65 -0
- package/msg/az.js +65 -0
- package/msg/az.mjs +65 -0
- package/msg/ba.js +65 -0
- package/msg/ba.mjs +65 -0
- package/msg/bcc.js +65 -0
- package/msg/bcc.mjs +65 -0
- package/msg/be-tarask.js +65 -0
- package/msg/be-tarask.mjs +65 -0
- package/msg/be.js +65 -0
- package/msg/be.mjs +65 -0
- package/msg/bg.js +65 -0
- package/msg/bg.mjs +65 -0
- package/msg/bn.js +65 -0
- package/msg/bn.mjs +65 -0
- package/msg/br.js +65 -0
- package/msg/br.mjs +65 -0
- package/msg/bs.js +65 -0
- package/msg/bs.mjs +65 -0
- package/msg/ca.js +65 -0
- package/msg/ca.mjs +65 -0
- package/msg/cdo.js +65 -0
- package/msg/cdo.mjs +65 -0
- package/msg/ce.js +65 -0
- package/msg/ce.mjs +65 -0
- package/msg/cs.js +65 -0
- package/msg/cs.mjs +65 -0
- package/msg/da.js +65 -0
- package/msg/da.mjs +65 -0
- package/msg/de.js +65 -0
- package/msg/de.mjs +65 -0
- package/msg/diq.js +65 -0
- package/msg/diq.mjs +65 -0
- package/msg/dtp.js +65 -0
- package/msg/dtp.mjs +65 -0
- package/msg/dty.js +65 -0
- package/msg/dty.mjs +65 -0
- package/msg/ee.js +65 -0
- package/msg/ee.mjs +65 -0
- package/msg/el.js +65 -0
- package/msg/el.mjs +65 -0
- package/msg/en-gb.js +65 -0
- package/msg/en-gb.mjs +65 -0
- package/msg/en.js +65 -0
- package/msg/en.mjs +65 -0
- package/msg/eo.js +65 -0
- package/msg/eo.mjs +65 -0
- package/msg/es.js +65 -0
- package/msg/es.mjs +65 -0
- package/msg/et.js +65 -0
- package/msg/et.mjs +65 -0
- package/msg/eu.js +65 -0
- package/msg/eu.mjs +65 -0
- package/msg/fa.js +65 -0
- package/msg/fa.mjs +65 -0
- package/msg/fi.js +65 -0
- package/msg/fi.mjs +65 -0
- package/msg/fo.js +65 -0
- package/msg/fo.mjs +65 -0
- package/msg/fr.js +65 -0
- package/msg/fr.mjs +65 -0
- package/msg/frr.js +65 -0
- package/msg/frr.mjs +65 -0
- package/msg/gl.js +65 -0
- package/msg/gl.mjs +65 -0
- package/msg/gn.js +65 -0
- package/msg/gn.mjs +65 -0
- package/msg/gor.js +65 -0
- package/msg/gor.mjs +65 -0
- package/msg/ha.js +65 -0
- package/msg/ha.mjs +65 -0
- package/msg/hak.js +65 -0
- package/msg/hak.mjs +65 -0
- package/msg/he.js +65 -0
- package/msg/he.mjs +65 -0
- package/msg/hi.js +65 -0
- package/msg/hi.mjs +65 -0
- package/msg/hr.js +65 -0
- package/msg/hr.mjs +65 -0
- package/msg/hrx.js +65 -0
- package/msg/hrx.mjs +65 -0
- package/msg/hsb.js +65 -0
- package/msg/hsb.mjs +65 -0
- package/msg/hu.js +65 -0
- package/msg/hu.mjs +65 -0
- package/msg/hy.js +65 -0
- package/msg/hy.mjs +65 -0
- package/msg/ia.js +65 -0
- package/msg/ia.mjs +65 -0
- package/msg/id.js +65 -0
- package/msg/id.mjs +65 -0
- package/msg/ig.js +65 -0
- package/msg/ig.mjs +65 -0
- package/msg/inh.js +65 -0
- package/msg/inh.mjs +65 -0
- package/msg/is.js +65 -0
- package/msg/is.mjs +65 -0
- package/msg/it.js +65 -0
- package/msg/it.mjs +65 -0
- package/msg/ja.js +65 -0
- package/msg/ja.mjs +65 -0
- package/msg/ka.js +65 -0
- package/msg/ka.mjs +65 -0
- package/msg/kab.js +65 -0
- package/msg/kab.mjs +65 -0
- package/msg/kbd-cyrl.js +65 -0
- package/msg/kbd-cyrl.mjs +65 -0
- package/msg/km.js +65 -0
- package/msg/km.mjs +65 -0
- package/msg/kn.js +65 -0
- package/msg/kn.mjs +65 -0
- package/msg/ko.js +65 -0
- package/msg/ko.mjs +65 -0
- package/msg/ksh.js +65 -0
- package/msg/ksh.mjs +65 -0
- package/msg/ku-latn.js +65 -0
- package/msg/ku-latn.mjs +65 -0
- package/msg/ky.js +65 -0
- package/msg/ky.mjs +65 -0
- package/msg/la.js +65 -0
- package/msg/la.mjs +65 -0
- package/msg/lb.js +65 -0
- package/msg/lb.mjs +65 -0
- package/msg/lki.js +65 -0
- package/msg/lki.mjs +65 -0
- package/msg/lo.js +65 -0
- package/msg/lo.mjs +65 -0
- package/msg/lrc.js +65 -0
- package/msg/lrc.mjs +65 -0
- package/msg/lt.js +65 -0
- package/msg/lt.mjs +65 -0
- package/msg/lv.js +65 -0
- package/msg/lv.mjs +65 -0
- package/msg/mg.js +65 -0
- package/msg/mg.mjs +65 -0
- package/msg/mk.js +65 -0
- package/msg/mk.mjs +65 -0
- package/msg/ml.js +65 -0
- package/msg/ml.mjs +65 -0
- package/msg/mnw.js +65 -0
- package/msg/mnw.mjs +65 -0
- package/msg/ms.js +65 -0
- package/msg/ms.mjs +65 -0
- package/msg/my.js +65 -0
- package/msg/my.mjs +65 -0
- package/msg/mzn.js +65 -0
- package/msg/mzn.mjs +65 -0
- package/msg/nb.js +65 -0
- package/msg/nb.mjs +65 -0
- package/msg/ne.js +65 -0
- package/msg/ne.mjs +65 -0
- package/msg/nl.js +65 -0
- package/msg/nl.mjs +65 -0
- package/msg/oc.js +65 -0
- package/msg/oc.mjs +65 -0
- package/msg/olo.js +65 -0
- package/msg/olo.mjs +65 -0
- package/msg/pa.js +65 -0
- package/msg/pa.mjs +65 -0
- package/msg/pl.js +65 -0
- package/msg/pl.mjs +65 -0
- package/msg/pms.js +65 -0
- package/msg/pms.mjs +65 -0
- package/msg/ps.js +65 -0
- package/msg/ps.mjs +65 -0
- package/msg/pt-br.js +65 -0
- package/msg/pt-br.mjs +65 -0
- package/msg/pt.js +65 -0
- package/msg/pt.mjs +65 -0
- package/msg/ro.js +65 -0
- package/msg/ro.mjs +65 -0
- package/msg/ru.js +65 -0
- package/msg/ru.mjs +65 -0
- package/msg/sc.js +65 -0
- package/msg/sc.mjs +65 -0
- package/msg/sco.js +65 -0
- package/msg/sco.mjs +65 -0
- package/msg/sd.js +65 -0
- package/msg/sd.mjs +65 -0
- package/msg/shn.js +65 -0
- package/msg/shn.mjs +65 -0
- package/msg/si.js +65 -0
- package/msg/si.mjs +65 -0
- package/msg/sk.js +65 -0
- package/msg/sk.mjs +65 -0
- package/msg/skr-arab.js +65 -0
- package/msg/skr-arab.mjs +65 -0
- package/msg/sl.js +65 -0
- package/msg/sl.mjs +65 -0
- package/msg/smn.js +65 -0
- package/msg/smn.mjs +65 -0
- package/msg/sq.js +65 -0
- package/msg/sq.mjs +65 -0
- package/msg/sr-latn.js +65 -0
- package/msg/sr-latn.mjs +65 -0
- package/msg/sr.js +65 -0
- package/msg/sr.mjs +65 -0
- package/msg/sv.js +65 -0
- package/msg/sv.mjs +65 -0
- package/msg/sw.js +65 -0
- package/msg/sw.mjs +65 -0
- package/msg/ta.js +65 -0
- package/msg/ta.mjs +65 -0
- package/msg/tcy.js +65 -0
- package/msg/tcy.mjs +65 -0
- package/msg/tdd.js +65 -0
- package/msg/tdd.mjs +65 -0
- package/msg/te.js +65 -0
- package/msg/te.mjs +65 -0
- package/msg/th.js +65 -0
- package/msg/th.mjs +65 -0
- package/msg/ti.js +65 -0
- package/msg/ti.mjs +65 -0
- package/msg/tl.js +65 -0
- package/msg/tl.mjs +65 -0
- package/msg/tlh.js +65 -0
- package/msg/tlh.mjs +65 -0
- package/msg/tr.js +65 -0
- package/msg/tr.mjs +65 -0
- package/msg/ug-arab.js +65 -0
- package/msg/ug-arab.mjs +65 -0
- package/msg/uk.js +65 -0
- package/msg/uk.mjs +65 -0
- package/msg/ur.js +65 -0
- package/msg/ur.mjs +65 -0
- package/msg/uz.js +65 -0
- package/msg/uz.mjs +65 -0
- package/msg/vi.js +65 -0
- package/msg/vi.mjs +65 -0
- package/msg/xmf.js +65 -0
- package/msg/xmf.mjs +65 -0
- package/msg/yo.js +65 -0
- package/msg/yo.mjs +65 -0
- package/msg/zgh.js +65 -0
- package/msg/zgh.mjs +65 -0
- package/msg/zh-hans.js +65 -0
- package/msg/zh-hans.mjs +65 -0
- package/msg/zh-hant.js +65 -0
- package/msg/zh-hant.mjs +65 -0
- package/package.json +11 -11
- package/php_compressed.js +2 -2
- package/php_compressed.js.map +1 -1
- package/python_compressed.js +2 -2
- package/python_compressed.js.map +1 -1
- package/core/flyout_navigator.d.ts +0 -11
- package/core/keyboard_nav/block_comment_navigation_policy.d.ts +0 -56
- package/core/keyboard_nav/flyout_navigation_policy.d.ts +0 -65
- package/core/keyboard_nav/line_cursor.d.ts +0 -187
- package/core/keyboard_nav/marker.d.ts +0 -53
- package/core/marker_manager.d.ts +0 -72
- package/core/navigator.d.ts +0 -65
- package/media/sprites.png +0 -0
package/msg/zh-hans.js
CHANGED
|
@@ -19,7 +19,29 @@ var Blockly = Blockly || { Msg: Object.create(null) };
|
|
|
19
19
|
|
|
20
20
|
Blockly.Msg["ADD_COMMENT"] = "添加注释";
|
|
21
21
|
Blockly.Msg["ALT_KEY"] = "Alt"; // untranslated
|
|
22
|
+
Blockly.Msg["ANNOUNCE_MOVE_AFTER"] = "moving %1 after %3"; // untranslated
|
|
23
|
+
Blockly.Msg["ANNOUNCE_MOVE_AROUND"] = "moving %1 %2 around %3"; // untranslated
|
|
24
|
+
Blockly.Msg["ANNOUNCE_MOVE_BEFORE"] = "moving %1 before %3"; // untranslated
|
|
25
|
+
Blockly.Msg["ANNOUNCE_MOVE_CANCELED"] = "Canceled movement"; // untranslated
|
|
26
|
+
Blockly.Msg["ANNOUNCE_MOVE_INSIDE"] = "moving %1 inside %3 %4"; // untranslated
|
|
27
|
+
Blockly.Msg["ANNOUNCE_MOVE_TO"] = "moving %1 %2 to %3 %4"; // untranslated
|
|
28
|
+
Blockly.Msg["ANNOUNCE_MOVE_WORKSPACE"] = "moving %1 on workspace"; // untranslated
|
|
29
|
+
Blockly.Msg["ARIA_TYPE_FIELD_INPUT"] = "input field"; // untranslated
|
|
30
|
+
Blockly.Msg["BACKSPACE_KEY"] = "Backspace"; // untranslated
|
|
31
|
+
Blockly.Msg["BLOCK_LABEL_BEGIN_PREFIX"] = "Begin %1"; // untranslated
|
|
32
|
+
Blockly.Msg["BLOCK_LABEL_BEGIN_STACK"] = "Begin stack"; // untranslated
|
|
33
|
+
Blockly.Msg["BLOCK_LABEL_COLLAPSED"] = "collapsed"; // untranslated
|
|
34
|
+
Blockly.Msg["BLOCK_LABEL_CONTAINER"] = "container"; // untranslated
|
|
35
|
+
Blockly.Msg["BLOCK_LABEL_DISABLED"] = "disabled"; // untranslated
|
|
36
|
+
Blockly.Msg["BLOCK_LABEL_HAS_INPUT"] = "has input"; // untranslated
|
|
37
|
+
Blockly.Msg["BLOCK_LABEL_HAS_INPUTS"] = "has inputs"; // untranslated
|
|
38
|
+
Blockly.Msg["BLOCK_LABEL_REPLACEABLE"] = "replaceable"; // untranslated
|
|
39
|
+
Blockly.Msg["BLOCK_LABEL_STACK_BLOCKS"] = "%1 stack blocks"; // untranslated
|
|
40
|
+
Blockly.Msg["BLOCK_LABEL_STATEMENT"] = "statement"; // untranslated
|
|
41
|
+
Blockly.Msg["BLOCK_LABEL_TOOLBOX_CATEGORY"] = "%1 category"; // untranslated
|
|
42
|
+
Blockly.Msg["BLOCK_LABEL_VALUE"] = "value"; // untranslated
|
|
22
43
|
Blockly.Msg["CANNOT_DELETE_VARIABLE_PROCEDURE"] = "不能删除变量“%1”,因为它是函数“%2”定义的一部分";
|
|
44
|
+
Blockly.Msg["CAPS_LOCK_KEY"] = "Caps Lock"; // untranslated
|
|
23
45
|
Blockly.Msg["CHANGE_VALUE_TITLE"] = "更改值:";
|
|
24
46
|
Blockly.Msg["CHROME_OS"] = "ChromeOS"; // untranslated
|
|
25
47
|
Blockly.Msg["CLEAN_UP"] = "整理块";
|
|
@@ -45,6 +67,7 @@ Blockly.Msg["COLOUR_RGB_RED"] = "红色";
|
|
|
45
67
|
Blockly.Msg["COLOUR_RGB_TITLE"] = "颜色";
|
|
46
68
|
Blockly.Msg["COLOUR_RGB_TOOLTIP"] = "通过指定红色、绿色和蓝色的量创建一种颜色。所有的值必须在0和100之间。";
|
|
47
69
|
Blockly.Msg["COMMAND_KEY"] = "⌘ Command"; // untranslated
|
|
70
|
+
Blockly.Msg["CONTEXT_MENU_KEY"] = "≣ Menu"; // untranslated
|
|
48
71
|
Blockly.Msg["CONTROLS_FLOW_STATEMENTS_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
|
|
49
72
|
Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK"] = "跳出循环";
|
|
50
73
|
Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE"] = "继续下一轮循环";
|
|
@@ -82,6 +105,7 @@ Blockly.Msg["COPY_SHORTCUT"] = "Copy"; // untranslated
|
|
|
82
105
|
Blockly.Msg["CUT_SHORTCUT"] = "Cut"; // untranslated
|
|
83
106
|
Blockly.Msg["DELETE_ALL_BLOCKS"] = "删除所有 %1 个块吗?";
|
|
84
107
|
Blockly.Msg["DELETE_BLOCK"] = "删除块";
|
|
108
|
+
Blockly.Msg["DELETE_KEY"] = "Delete"; // untranslated
|
|
85
109
|
Blockly.Msg["DELETE_VARIABLE"] = "删除变量“%1”";
|
|
86
110
|
Blockly.Msg["DELETE_VARIABLE_CONFIRMATION"] = "要删除对变量“%2”的%1个引用吗?";
|
|
87
111
|
Blockly.Msg["DELETE_X_BLOCKS"] = "删除 %1 个块";
|
|
@@ -92,16 +116,26 @@ Blockly.Msg["DUPLICATE_BLOCK"] = "复制";
|
|
|
92
116
|
Blockly.Msg["DUPLICATE_COMMENT"] = "复制注释";
|
|
93
117
|
Blockly.Msg["EDIT_BLOCK_CONTENTS"] = "Edit Block contents"; // untranslated
|
|
94
118
|
Blockly.Msg["ENABLE_BLOCK"] = "启用块";
|
|
119
|
+
Blockly.Msg["END_KEY"] = "End"; // untranslated
|
|
120
|
+
Blockly.Msg["ENTER_KEY"] = "Enter"; // untranslated
|
|
121
|
+
Blockly.Msg["ESCAPE"] = "Esc"; // untranslated
|
|
95
122
|
Blockly.Msg["EXPAND_ALL"] = "展开块";
|
|
96
123
|
Blockly.Msg["EXPAND_BLOCK"] = "展开块";
|
|
97
124
|
Blockly.Msg["EXTERNAL_INPUTS"] = "外部输入";
|
|
125
|
+
Blockly.Msg["FIELD_LABEL_EDIT_PREFIX"] = "Edit %1"; // untranslated
|
|
126
|
+
Blockly.Msg["FIELD_LABEL_EMPTY"] = "empty"; // untranslated
|
|
98
127
|
Blockly.Msg["HELP"] = "帮助";
|
|
99
128
|
Blockly.Msg["HELP_PROMPT"] = "Press %1 for help on keyboard controls"; // untranslated
|
|
129
|
+
Blockly.Msg["HOME_KEY"] = "Home"; // untranslated
|
|
100
130
|
Blockly.Msg["INLINE_INPUTS"] = "单行输入";
|
|
131
|
+
Blockly.Msg["INPUT_LABEL_INDEX"] = "input %1"; // untranslated
|
|
132
|
+
Blockly.Msg["INSERT_KEY"] = "Insert"; // untranslated
|
|
133
|
+
Blockly.Msg["KEYBOARD_NAV_BLOCK_NAVIGATION_HINT"] = "Use the right arrow key to navigate inside of blocks"; // untranslated
|
|
101
134
|
Blockly.Msg["KEYBOARD_NAV_CONSTRAINED_MOVE_HINT"] = "Use the arrow keys to move, then %1 to accept the position"; // untranslated
|
|
102
135
|
Blockly.Msg["KEYBOARD_NAV_COPIED_HINT"] = "Copied. Press %1 to paste."; // untranslated
|
|
103
136
|
Blockly.Msg["KEYBOARD_NAV_CUT_HINT"] = "Cut. Press %1 to paste."; // untranslated
|
|
104
137
|
Blockly.Msg["KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT"] = "Hold %1 and use arrow keys to move freely, then %2 to accept the position"; // untranslated
|
|
138
|
+
Blockly.Msg["KEYBOARD_NAV_WORKSPACE_NAVIGATION_HINT"] = "Use the arrow keys to navigate"; // untranslated
|
|
105
139
|
Blockly.Msg["LINUX"] = "Linux"; // untranslated
|
|
106
140
|
Blockly.Msg["LISTS_CREATE_EMPTY_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#create-empty-list"; // untranslated
|
|
107
141
|
Blockly.Msg["LISTS_CREATE_EMPTY_TITLE"] = "创建空列表";
|
|
@@ -311,7 +345,10 @@ Blockly.Msg["NEW_VARIABLE_TITLE"] = "新变量的名称:";
|
|
|
311
345
|
Blockly.Msg["NEW_VARIABLE_TYPE_TITLE"] = "新变量的类型:";
|
|
312
346
|
Blockly.Msg["OPTION_KEY"] = "⌥ Option"; // untranslated
|
|
313
347
|
Blockly.Msg["ORDINAL_NUMBER_SUFFIX"] = ""; // untranslated
|
|
348
|
+
Blockly.Msg["PAGE_DOWN_KEY"] = "Page Down"; // untranslated
|
|
349
|
+
Blockly.Msg["PAGE_UP_KEY"] = "Page Up"; // untranslated
|
|
314
350
|
Blockly.Msg["PASTE_SHORTCUT"] = "Paste"; // untranslated
|
|
351
|
+
Blockly.Msg["PAUSE_KEY"] = "Pause"; // untranslated
|
|
315
352
|
Blockly.Msg["PROCEDURES_ALLOW_STATEMENTS"] = "允许声明";
|
|
316
353
|
Blockly.Msg["PROCEDURES_BEFORE_PARAMS"] = "与:";
|
|
317
354
|
Blockly.Msg["PROCEDURES_CALLNORETURN_HELPURL"] = "https://zh.wikipedia.org/wiki/子程序";
|
|
@@ -343,9 +380,32 @@ Blockly.Msg["REDO"] = "重做";
|
|
|
343
380
|
Blockly.Msg["REMOVE_COMMENT"] = "删除注释";
|
|
344
381
|
Blockly.Msg["RENAME_VARIABLE"] = "重命名变量...";
|
|
345
382
|
Blockly.Msg["RENAME_VARIABLE_TITLE"] = "将所有“%1”变量重命名为:";
|
|
383
|
+
Blockly.Msg["SHIFT_KEY"] = "Shift"; // untranslated
|
|
384
|
+
Blockly.Msg["SHORTCUTS_ABORT_MOVE"] = "Abort move"; // untranslated
|
|
385
|
+
Blockly.Msg["SHORTCUTS_CLEANUP"] = "Clean up workspace"; // untranslated
|
|
346
386
|
Blockly.Msg["SHORTCUTS_CODE_NAVIGATION"] = "Code navigation"; // untranslated
|
|
387
|
+
Blockly.Msg["SHORTCUTS_DELETE"] = "Delete"; // untranslated
|
|
388
|
+
Blockly.Msg["SHORTCUTS_DISCONNECT"] = "Disconnect block"; // untranslated
|
|
389
|
+
Blockly.Msg["SHORTCUTS_DUPLICATE"] = "Duplicate"; // untranslated
|
|
347
390
|
Blockly.Msg["SHORTCUTS_EDITING"] = "Editing"; // untranslated
|
|
391
|
+
Blockly.Msg["SHORTCUTS_ESCAPE"] = "Exit"; // untranslated
|
|
392
|
+
Blockly.Msg["SHORTCUTS_FINISH_MOVE"] = "Finish move"; // untranslated
|
|
393
|
+
Blockly.Msg["SHORTCUTS_FOCUS_TOOLBOX"] = "Focus toolbox"; // untranslated
|
|
394
|
+
Blockly.Msg["SHORTCUTS_FOCUS_WORKSPACE"] = "Focus workspace"; // untranslated
|
|
348
395
|
Blockly.Msg["SHORTCUTS_GENERAL"] = "General"; // untranslated
|
|
396
|
+
Blockly.Msg["SHORTCUTS_INFORMATION"] = "Announce information"; // untranslated
|
|
397
|
+
Blockly.Msg["SHORTCUTS_MOVE_DOWN"] = "Move down"; // untranslated
|
|
398
|
+
Blockly.Msg["SHORTCUTS_MOVE_LEFT"] = "Move left"; // untranslated
|
|
399
|
+
Blockly.Msg["SHORTCUTS_MOVE_RIGHT"] = "Move right"; // untranslated
|
|
400
|
+
Blockly.Msg["SHORTCUTS_MOVE_UP"] = "Move up"; // untranslated
|
|
401
|
+
Blockly.Msg["SHORTCUTS_NEXT_STACK"] = "Next stack"; // untranslated
|
|
402
|
+
Blockly.Msg["SHORTCUTS_PERFORM_ACTION"] = "Edit or confirm"; // untranslated
|
|
403
|
+
Blockly.Msg["SHORTCUTS_PREVIOUS_STACK"] = "Previous stack"; // untranslated
|
|
404
|
+
Blockly.Msg["SHORTCUTS_SHOW_CONTEXT_MENU"] = "Show menu"; // untranslated
|
|
405
|
+
Blockly.Msg["SHORTCUTS_START_MOVE"] = "Start move"; // untranslated
|
|
406
|
+
Blockly.Msg["SHORTCUTS_START_MOVE_STACK"] = "Start move stack"; // untranslated
|
|
407
|
+
Blockly.Msg["SPACE_KEY"] = "Space"; // untranslated
|
|
408
|
+
Blockly.Msg["TAB_KEY"] = "Tab"; // untranslated
|
|
349
409
|
Blockly.Msg["TEXT_APPEND_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#text-modification"; // untranslated
|
|
350
410
|
Blockly.Msg["TEXT_APPEND_TITLE"] = "在%1之后加上文本%2";
|
|
351
411
|
Blockly.Msg["TEXT_APPEND_TOOLTIP"] = "将一些文本追加到变量“%1”里。";
|
|
@@ -432,6 +492,11 @@ Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_A_PARAMETER"] = "名为“%1”的变
|
|
|
432
492
|
Blockly.Msg["WINDOWS"] = "Windows"; // untranslated
|
|
433
493
|
Blockly.Msg["WORKSPACE_ARIA_LABEL"] = "Blockly工作区";
|
|
434
494
|
Blockly.Msg["WORKSPACE_COMMENT_DEFAULT_TEXT"] = "说点什么...";
|
|
495
|
+
Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_MANY"] = "%1 stacks of blocks%2 in workspace."; // untranslated
|
|
496
|
+
Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ONE"] = "One stack of blocks%2 in workspace."; // untranslated
|
|
497
|
+
Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ZERO"] = "No blocks%2 in workspace."; // untranslated
|
|
498
|
+
Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_MANY"] = " and %1 comments"; // untranslated
|
|
499
|
+
Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_ONE"] = " and one comment"; // untranslated
|
|
435
500
|
Blockly.Msg["CONTROLS_FOREACH_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
|
|
436
501
|
Blockly.Msg["CONTROLS_FOR_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
|
|
437
502
|
Blockly.Msg["CONTROLS_IF_ELSEIF_TITLE_ELSEIF"] = Blockly.Msg["CONTROLS_IF_MSG_ELSEIF"];
|
package/msg/zh-hans.mjs
CHANGED
|
@@ -432,6 +432,21 @@ export const {
|
|
|
432
432
|
COMMAND_KEY,
|
|
433
433
|
OPTION_KEY,
|
|
434
434
|
ALT_KEY,
|
|
435
|
+
ENTER_KEY,
|
|
436
|
+
BACKSPACE_KEY,
|
|
437
|
+
DELETE_KEY,
|
|
438
|
+
ESCAPE,
|
|
439
|
+
TAB_KEY,
|
|
440
|
+
SHIFT_KEY,
|
|
441
|
+
CAPS_LOCK_KEY,
|
|
442
|
+
SPACE_KEY,
|
|
443
|
+
PAGE_UP_KEY,
|
|
444
|
+
PAGE_DOWN_KEY,
|
|
445
|
+
END_KEY,
|
|
446
|
+
HOME_KEY,
|
|
447
|
+
INSERT_KEY,
|
|
448
|
+
PAUSE_KEY,
|
|
449
|
+
CONTEXT_MENU_KEY,
|
|
435
450
|
CUT_SHORTCUT,
|
|
436
451
|
COPY_SHORTCUT,
|
|
437
452
|
PASTE_SHORTCUT,
|
|
@@ -439,8 +454,58 @@ export const {
|
|
|
439
454
|
SHORTCUTS_GENERAL,
|
|
440
455
|
SHORTCUTS_EDITING,
|
|
441
456
|
SHORTCUTS_CODE_NAVIGATION,
|
|
457
|
+
SHORTCUTS_ESCAPE,
|
|
458
|
+
SHORTCUTS_DELETE,
|
|
459
|
+
SHORTCUTS_START_MOVE,
|
|
460
|
+
SHORTCUTS_START_MOVE_STACK,
|
|
461
|
+
SHORTCUTS_MOVE_LEFT,
|
|
462
|
+
SHORTCUTS_MOVE_RIGHT,
|
|
463
|
+
SHORTCUTS_MOVE_UP,
|
|
464
|
+
SHORTCUTS_MOVE_DOWN,
|
|
465
|
+
SHORTCUTS_FINISH_MOVE,
|
|
466
|
+
SHORTCUTS_ABORT_MOVE,
|
|
467
|
+
SHORTCUTS_SHOW_CONTEXT_MENU,
|
|
468
|
+
SHORTCUTS_FOCUS_WORKSPACE,
|
|
469
|
+
SHORTCUTS_FOCUS_TOOLBOX,
|
|
470
|
+
SHORTCUTS_INFORMATION,
|
|
471
|
+
SHORTCUTS_DISCONNECT,
|
|
472
|
+
SHORTCUTS_NEXT_STACK,
|
|
473
|
+
SHORTCUTS_PREVIOUS_STACK,
|
|
474
|
+
SHORTCUTS_PERFORM_ACTION,
|
|
475
|
+
SHORTCUTS_DUPLICATE,
|
|
476
|
+
SHORTCUTS_CLEANUP,
|
|
442
477
|
KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT,
|
|
443
478
|
KEYBOARD_NAV_CONSTRAINED_MOVE_HINT,
|
|
444
479
|
KEYBOARD_NAV_COPIED_HINT,
|
|
445
480
|
KEYBOARD_NAV_CUT_HINT,
|
|
481
|
+
WORKSPACE_CONTENTS_BLOCKS_MANY,
|
|
482
|
+
WORKSPACE_CONTENTS_BLOCKS_ONE,
|
|
483
|
+
WORKSPACE_CONTENTS_BLOCKS_ZERO,
|
|
484
|
+
WORKSPACE_CONTENTS_COMMENTS_MANY,
|
|
485
|
+
WORKSPACE_CONTENTS_COMMENTS_ONE,
|
|
486
|
+
KEYBOARD_NAV_BLOCK_NAVIGATION_HINT,
|
|
487
|
+
KEYBOARD_NAV_WORKSPACE_NAVIGATION_HINT,
|
|
488
|
+
BLOCK_LABEL_BEGIN_STACK,
|
|
489
|
+
BLOCK_LABEL_BEGIN_PREFIX,
|
|
490
|
+
BLOCK_LABEL_TOOLBOX_CATEGORY,
|
|
491
|
+
BLOCK_LABEL_DISABLED,
|
|
492
|
+
BLOCK_LABEL_COLLAPSED,
|
|
493
|
+
BLOCK_LABEL_REPLACEABLE,
|
|
494
|
+
BLOCK_LABEL_HAS_INPUT,
|
|
495
|
+
BLOCK_LABEL_HAS_INPUTS,
|
|
496
|
+
BLOCK_LABEL_STATEMENT,
|
|
497
|
+
BLOCK_LABEL_CONTAINER,
|
|
498
|
+
BLOCK_LABEL_VALUE,
|
|
499
|
+
BLOCK_LABEL_STACK_BLOCKS,
|
|
500
|
+
INPUT_LABEL_INDEX,
|
|
501
|
+
ANNOUNCE_MOVE_WORKSPACE,
|
|
502
|
+
ANNOUNCE_MOVE_BEFORE,
|
|
503
|
+
ANNOUNCE_MOVE_AFTER,
|
|
504
|
+
ANNOUNCE_MOVE_INSIDE,
|
|
505
|
+
ANNOUNCE_MOVE_AROUND,
|
|
506
|
+
ANNOUNCE_MOVE_TO,
|
|
507
|
+
ANNOUNCE_MOVE_CANCELED,
|
|
508
|
+
FIELD_LABEL_EMPTY,
|
|
509
|
+
ARIA_TYPE_FIELD_INPUT,
|
|
510
|
+
FIELD_LABEL_EDIT_PREFIX,
|
|
446
511
|
} = zh_hans;
|
package/msg/zh-hant.js
CHANGED
|
@@ -19,7 +19,29 @@ var Blockly = Blockly || { Msg: Object.create(null) };
|
|
|
19
19
|
|
|
20
20
|
Blockly.Msg["ADD_COMMENT"] = "添加評論";
|
|
21
21
|
Blockly.Msg["ALT_KEY"] = "Alt"; // untranslated
|
|
22
|
+
Blockly.Msg["ANNOUNCE_MOVE_AFTER"] = "moving %1 after %3"; // untranslated
|
|
23
|
+
Blockly.Msg["ANNOUNCE_MOVE_AROUND"] = "moving %1 %2 around %3"; // untranslated
|
|
24
|
+
Blockly.Msg["ANNOUNCE_MOVE_BEFORE"] = "moving %1 before %3"; // untranslated
|
|
25
|
+
Blockly.Msg["ANNOUNCE_MOVE_CANCELED"] = "Canceled movement"; // untranslated
|
|
26
|
+
Blockly.Msg["ANNOUNCE_MOVE_INSIDE"] = "moving %1 inside %3 %4"; // untranslated
|
|
27
|
+
Blockly.Msg["ANNOUNCE_MOVE_TO"] = "moving %1 %2 to %3 %4"; // untranslated
|
|
28
|
+
Blockly.Msg["ANNOUNCE_MOVE_WORKSPACE"] = "moving %1 on workspace"; // untranslated
|
|
29
|
+
Blockly.Msg["ARIA_TYPE_FIELD_INPUT"] = "input field"; // untranslated
|
|
30
|
+
Blockly.Msg["BACKSPACE_KEY"] = "Backspace"; // untranslated
|
|
31
|
+
Blockly.Msg["BLOCK_LABEL_BEGIN_PREFIX"] = "Begin %1"; // untranslated
|
|
32
|
+
Blockly.Msg["BLOCK_LABEL_BEGIN_STACK"] = "Begin stack"; // untranslated
|
|
33
|
+
Blockly.Msg["BLOCK_LABEL_COLLAPSED"] = "collapsed"; // untranslated
|
|
34
|
+
Blockly.Msg["BLOCK_LABEL_CONTAINER"] = "container"; // untranslated
|
|
35
|
+
Blockly.Msg["BLOCK_LABEL_DISABLED"] = "disabled"; // untranslated
|
|
36
|
+
Blockly.Msg["BLOCK_LABEL_HAS_INPUT"] = "has input"; // untranslated
|
|
37
|
+
Blockly.Msg["BLOCK_LABEL_HAS_INPUTS"] = "has inputs"; // untranslated
|
|
38
|
+
Blockly.Msg["BLOCK_LABEL_REPLACEABLE"] = "replaceable"; // untranslated
|
|
39
|
+
Blockly.Msg["BLOCK_LABEL_STACK_BLOCKS"] = "%1 stack blocks"; // untranslated
|
|
40
|
+
Blockly.Msg["BLOCK_LABEL_STATEMENT"] = "statement"; // untranslated
|
|
41
|
+
Blockly.Msg["BLOCK_LABEL_TOOLBOX_CATEGORY"] = "%1 category"; // untranslated
|
|
42
|
+
Blockly.Msg["BLOCK_LABEL_VALUE"] = "value"; // untranslated
|
|
22
43
|
Blockly.Msg["CANNOT_DELETE_VARIABLE_PROCEDURE"] = "無法刪除變數「%1」,因為這是功能「%2」定義的一部份內容";
|
|
44
|
+
Blockly.Msg["CAPS_LOCK_KEY"] = "Caps Lock"; // untranslated
|
|
23
45
|
Blockly.Msg["CHANGE_VALUE_TITLE"] = "修改值:";
|
|
24
46
|
Blockly.Msg["CHROME_OS"] = "ChromeOS"; // untranslated
|
|
25
47
|
Blockly.Msg["CLEAN_UP"] = "清理區塊";
|
|
@@ -45,6 +67,7 @@ Blockly.Msg["COLOUR_RGB_RED"] = "紅";
|
|
|
45
67
|
Blockly.Msg["COLOUR_RGB_TITLE"] = "顏色";
|
|
46
68
|
Blockly.Msg["COLOUR_RGB_TOOLTIP"] = "透過指定紅、綠、 藍色的值來建立一種顏色。所有的值必須介於 0 和 100 之間。";
|
|
47
69
|
Blockly.Msg["COMMAND_KEY"] = "⌘ Command"; // untranslated
|
|
70
|
+
Blockly.Msg["CONTEXT_MENU_KEY"] = "≣ Menu"; // untranslated
|
|
48
71
|
Blockly.Msg["CONTROLS_FLOW_STATEMENTS_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
|
|
49
72
|
Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK"] = "中斷循環";
|
|
50
73
|
Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE"] = "繼續下一個循環";
|
|
@@ -82,6 +105,7 @@ Blockly.Msg["COPY_SHORTCUT"] = "Copy"; // untranslated
|
|
|
82
105
|
Blockly.Msg["CUT_SHORTCUT"] = "Cut"; // untranslated
|
|
83
106
|
Blockly.Msg["DELETE_ALL_BLOCKS"] = "刪除全部 %1 個區塊?";
|
|
84
107
|
Blockly.Msg["DELETE_BLOCK"] = "刪除區塊";
|
|
108
|
+
Blockly.Msg["DELETE_KEY"] = "Delete"; // untranslated
|
|
85
109
|
Blockly.Msg["DELETE_VARIABLE"] = "刪除變數「%1」";
|
|
86
110
|
Blockly.Msg["DELETE_VARIABLE_CONFIRMATION"] = "刪除使用%1次的「%2」變數?";
|
|
87
111
|
Blockly.Msg["DELETE_X_BLOCKS"] = "刪除%1個區塊";
|
|
@@ -92,16 +116,26 @@ Blockly.Msg["DUPLICATE_BLOCK"] = "再製";
|
|
|
92
116
|
Blockly.Msg["DUPLICATE_COMMENT"] = "複製註解";
|
|
93
117
|
Blockly.Msg["EDIT_BLOCK_CONTENTS"] = "Edit Block contents"; // untranslated
|
|
94
118
|
Blockly.Msg["ENABLE_BLOCK"] = "啟用區塊";
|
|
119
|
+
Blockly.Msg["END_KEY"] = "End"; // untranslated
|
|
120
|
+
Blockly.Msg["ENTER_KEY"] = "Enter"; // untranslated
|
|
121
|
+
Blockly.Msg["ESCAPE"] = "Esc"; // untranslated
|
|
95
122
|
Blockly.Msg["EXPAND_ALL"] = "展開區塊";
|
|
96
123
|
Blockly.Msg["EXPAND_BLOCK"] = "展開區塊";
|
|
97
124
|
Blockly.Msg["EXTERNAL_INPUTS"] = "外部輸入";
|
|
125
|
+
Blockly.Msg["FIELD_LABEL_EDIT_PREFIX"] = "Edit %1"; // untranslated
|
|
126
|
+
Blockly.Msg["FIELD_LABEL_EMPTY"] = "empty"; // untranslated
|
|
98
127
|
Blockly.Msg["HELP"] = "說明";
|
|
99
128
|
Blockly.Msg["HELP_PROMPT"] = "Press %1 for help on keyboard controls"; // untranslated
|
|
129
|
+
Blockly.Msg["HOME_KEY"] = "Home"; // untranslated
|
|
100
130
|
Blockly.Msg["INLINE_INPUTS"] = "單行輸入";
|
|
131
|
+
Blockly.Msg["INPUT_LABEL_INDEX"] = "input %1"; // untranslated
|
|
132
|
+
Blockly.Msg["INSERT_KEY"] = "Insert"; // untranslated
|
|
133
|
+
Blockly.Msg["KEYBOARD_NAV_BLOCK_NAVIGATION_HINT"] = "Use the right arrow key to navigate inside of blocks"; // untranslated
|
|
101
134
|
Blockly.Msg["KEYBOARD_NAV_CONSTRAINED_MOVE_HINT"] = "Use the arrow keys to move, then %1 to accept the position"; // untranslated
|
|
102
135
|
Blockly.Msg["KEYBOARD_NAV_COPIED_HINT"] = "Copied. Press %1 to paste."; // untranslated
|
|
103
136
|
Blockly.Msg["KEYBOARD_NAV_CUT_HINT"] = "Cut. Press %1 to paste."; // untranslated
|
|
104
137
|
Blockly.Msg["KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT"] = "Hold %1 and use arrow keys to move freely, then %2 to accept the position"; // untranslated
|
|
138
|
+
Blockly.Msg["KEYBOARD_NAV_WORKSPACE_NAVIGATION_HINT"] = "Use the arrow keys to navigate"; // untranslated
|
|
105
139
|
Blockly.Msg["LINUX"] = "Linux"; // untranslated
|
|
106
140
|
Blockly.Msg["LISTS_CREATE_EMPTY_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#create-empty-list"; // untranslated
|
|
107
141
|
Blockly.Msg["LISTS_CREATE_EMPTY_TITLE"] = "建立空的清單";
|
|
@@ -311,7 +345,10 @@ Blockly.Msg["NEW_VARIABLE_TITLE"] = "新變數名稱:";
|
|
|
311
345
|
Blockly.Msg["NEW_VARIABLE_TYPE_TITLE"] = "新變數類型:";
|
|
312
346
|
Blockly.Msg["OPTION_KEY"] = "⌥ Option"; // untranslated
|
|
313
347
|
Blockly.Msg["ORDINAL_NUMBER_SUFFIX"] = ""; // untranslated
|
|
348
|
+
Blockly.Msg["PAGE_DOWN_KEY"] = "Page Down"; // untranslated
|
|
349
|
+
Blockly.Msg["PAGE_UP_KEY"] = "Page Up"; // untranslated
|
|
314
350
|
Blockly.Msg["PASTE_SHORTCUT"] = "Paste"; // untranslated
|
|
351
|
+
Blockly.Msg["PAUSE_KEY"] = "Pause"; // untranslated
|
|
315
352
|
Blockly.Msg["PROCEDURES_ALLOW_STATEMENTS"] = "允許陳述式";
|
|
316
353
|
Blockly.Msg["PROCEDURES_BEFORE_PARAMS"] = "與:";
|
|
317
354
|
Blockly.Msg["PROCEDURES_CALLNORETURN_HELPURL"] = "https://zh.wikipedia.org/wiki/子程式";
|
|
@@ -343,9 +380,32 @@ Blockly.Msg["REDO"] = "重做";
|
|
|
343
380
|
Blockly.Msg["REMOVE_COMMENT"] = "移除註解";
|
|
344
381
|
Blockly.Msg["RENAME_VARIABLE"] = "重新命名變數...";
|
|
345
382
|
Blockly.Msg["RENAME_VARIABLE_TITLE"] = "將所有「%1」變數重新命名為:";
|
|
383
|
+
Blockly.Msg["SHIFT_KEY"] = "Shift"; // untranslated
|
|
384
|
+
Blockly.Msg["SHORTCUTS_ABORT_MOVE"] = "Abort move"; // untranslated
|
|
385
|
+
Blockly.Msg["SHORTCUTS_CLEANUP"] = "Clean up workspace"; // untranslated
|
|
346
386
|
Blockly.Msg["SHORTCUTS_CODE_NAVIGATION"] = "Code navigation"; // untranslated
|
|
387
|
+
Blockly.Msg["SHORTCUTS_DELETE"] = "Delete"; // untranslated
|
|
388
|
+
Blockly.Msg["SHORTCUTS_DISCONNECT"] = "Disconnect block"; // untranslated
|
|
389
|
+
Blockly.Msg["SHORTCUTS_DUPLICATE"] = "Duplicate"; // untranslated
|
|
347
390
|
Blockly.Msg["SHORTCUTS_EDITING"] = "Editing"; // untranslated
|
|
391
|
+
Blockly.Msg["SHORTCUTS_ESCAPE"] = "Exit"; // untranslated
|
|
392
|
+
Blockly.Msg["SHORTCUTS_FINISH_MOVE"] = "Finish move"; // untranslated
|
|
393
|
+
Blockly.Msg["SHORTCUTS_FOCUS_TOOLBOX"] = "Focus toolbox"; // untranslated
|
|
394
|
+
Blockly.Msg["SHORTCUTS_FOCUS_WORKSPACE"] = "Focus workspace"; // untranslated
|
|
348
395
|
Blockly.Msg["SHORTCUTS_GENERAL"] = "General"; // untranslated
|
|
396
|
+
Blockly.Msg["SHORTCUTS_INFORMATION"] = "Announce information"; // untranslated
|
|
397
|
+
Blockly.Msg["SHORTCUTS_MOVE_DOWN"] = "Move down"; // untranslated
|
|
398
|
+
Blockly.Msg["SHORTCUTS_MOVE_LEFT"] = "Move left"; // untranslated
|
|
399
|
+
Blockly.Msg["SHORTCUTS_MOVE_RIGHT"] = "Move right"; // untranslated
|
|
400
|
+
Blockly.Msg["SHORTCUTS_MOVE_UP"] = "Move up"; // untranslated
|
|
401
|
+
Blockly.Msg["SHORTCUTS_NEXT_STACK"] = "Next stack"; // untranslated
|
|
402
|
+
Blockly.Msg["SHORTCUTS_PERFORM_ACTION"] = "Edit or confirm"; // untranslated
|
|
403
|
+
Blockly.Msg["SHORTCUTS_PREVIOUS_STACK"] = "Previous stack"; // untranslated
|
|
404
|
+
Blockly.Msg["SHORTCUTS_SHOW_CONTEXT_MENU"] = "Show menu"; // untranslated
|
|
405
|
+
Blockly.Msg["SHORTCUTS_START_MOVE"] = "Start move"; // untranslated
|
|
406
|
+
Blockly.Msg["SHORTCUTS_START_MOVE_STACK"] = "Start move stack"; // untranslated
|
|
407
|
+
Blockly.Msg["SPACE_KEY"] = "Space"; // untranslated
|
|
408
|
+
Blockly.Msg["TAB_KEY"] = "Tab"; // untranslated
|
|
349
409
|
Blockly.Msg["TEXT_APPEND_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#text-modification"; // untranslated
|
|
350
410
|
Blockly.Msg["TEXT_APPEND_TITLE"] = "至 %1 套用文字 %2";
|
|
351
411
|
Blockly.Msg["TEXT_APPEND_TOOLTIP"] = "添加一些文字到變數「%1」之後。";
|
|
@@ -432,6 +492,11 @@ Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_A_PARAMETER"] = "已存在名為「%1
|
|
|
432
492
|
Blockly.Msg["WINDOWS"] = "Windows"; // untranslated
|
|
433
493
|
Blockly.Msg["WORKSPACE_ARIA_LABEL"] = "Blockly工作區";
|
|
434
494
|
Blockly.Msg["WORKSPACE_COMMENT_DEFAULT_TEXT"] = "來說些事情...";
|
|
495
|
+
Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_MANY"] = "%1 stacks of blocks%2 in workspace."; // untranslated
|
|
496
|
+
Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ONE"] = "One stack of blocks%2 in workspace."; // untranslated
|
|
497
|
+
Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ZERO"] = "No blocks%2 in workspace."; // untranslated
|
|
498
|
+
Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_MANY"] = " and %1 comments"; // untranslated
|
|
499
|
+
Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_ONE"] = " and one comment"; // untranslated
|
|
435
500
|
Blockly.Msg["CONTROLS_FOREACH_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
|
|
436
501
|
Blockly.Msg["CONTROLS_FOR_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
|
|
437
502
|
Blockly.Msg["CONTROLS_IF_ELSEIF_TITLE_ELSEIF"] = Blockly.Msg["CONTROLS_IF_MSG_ELSEIF"];
|
package/msg/zh-hant.mjs
CHANGED
|
@@ -432,6 +432,21 @@ export const {
|
|
|
432
432
|
COMMAND_KEY,
|
|
433
433
|
OPTION_KEY,
|
|
434
434
|
ALT_KEY,
|
|
435
|
+
ENTER_KEY,
|
|
436
|
+
BACKSPACE_KEY,
|
|
437
|
+
DELETE_KEY,
|
|
438
|
+
ESCAPE,
|
|
439
|
+
TAB_KEY,
|
|
440
|
+
SHIFT_KEY,
|
|
441
|
+
CAPS_LOCK_KEY,
|
|
442
|
+
SPACE_KEY,
|
|
443
|
+
PAGE_UP_KEY,
|
|
444
|
+
PAGE_DOWN_KEY,
|
|
445
|
+
END_KEY,
|
|
446
|
+
HOME_KEY,
|
|
447
|
+
INSERT_KEY,
|
|
448
|
+
PAUSE_KEY,
|
|
449
|
+
CONTEXT_MENU_KEY,
|
|
435
450
|
CUT_SHORTCUT,
|
|
436
451
|
COPY_SHORTCUT,
|
|
437
452
|
PASTE_SHORTCUT,
|
|
@@ -439,8 +454,58 @@ export const {
|
|
|
439
454
|
SHORTCUTS_GENERAL,
|
|
440
455
|
SHORTCUTS_EDITING,
|
|
441
456
|
SHORTCUTS_CODE_NAVIGATION,
|
|
457
|
+
SHORTCUTS_ESCAPE,
|
|
458
|
+
SHORTCUTS_DELETE,
|
|
459
|
+
SHORTCUTS_START_MOVE,
|
|
460
|
+
SHORTCUTS_START_MOVE_STACK,
|
|
461
|
+
SHORTCUTS_MOVE_LEFT,
|
|
462
|
+
SHORTCUTS_MOVE_RIGHT,
|
|
463
|
+
SHORTCUTS_MOVE_UP,
|
|
464
|
+
SHORTCUTS_MOVE_DOWN,
|
|
465
|
+
SHORTCUTS_FINISH_MOVE,
|
|
466
|
+
SHORTCUTS_ABORT_MOVE,
|
|
467
|
+
SHORTCUTS_SHOW_CONTEXT_MENU,
|
|
468
|
+
SHORTCUTS_FOCUS_WORKSPACE,
|
|
469
|
+
SHORTCUTS_FOCUS_TOOLBOX,
|
|
470
|
+
SHORTCUTS_INFORMATION,
|
|
471
|
+
SHORTCUTS_DISCONNECT,
|
|
472
|
+
SHORTCUTS_NEXT_STACK,
|
|
473
|
+
SHORTCUTS_PREVIOUS_STACK,
|
|
474
|
+
SHORTCUTS_PERFORM_ACTION,
|
|
475
|
+
SHORTCUTS_DUPLICATE,
|
|
476
|
+
SHORTCUTS_CLEANUP,
|
|
442
477
|
KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT,
|
|
443
478
|
KEYBOARD_NAV_CONSTRAINED_MOVE_HINT,
|
|
444
479
|
KEYBOARD_NAV_COPIED_HINT,
|
|
445
480
|
KEYBOARD_NAV_CUT_HINT,
|
|
481
|
+
WORKSPACE_CONTENTS_BLOCKS_MANY,
|
|
482
|
+
WORKSPACE_CONTENTS_BLOCKS_ONE,
|
|
483
|
+
WORKSPACE_CONTENTS_BLOCKS_ZERO,
|
|
484
|
+
WORKSPACE_CONTENTS_COMMENTS_MANY,
|
|
485
|
+
WORKSPACE_CONTENTS_COMMENTS_ONE,
|
|
486
|
+
KEYBOARD_NAV_BLOCK_NAVIGATION_HINT,
|
|
487
|
+
KEYBOARD_NAV_WORKSPACE_NAVIGATION_HINT,
|
|
488
|
+
BLOCK_LABEL_BEGIN_STACK,
|
|
489
|
+
BLOCK_LABEL_BEGIN_PREFIX,
|
|
490
|
+
BLOCK_LABEL_TOOLBOX_CATEGORY,
|
|
491
|
+
BLOCK_LABEL_DISABLED,
|
|
492
|
+
BLOCK_LABEL_COLLAPSED,
|
|
493
|
+
BLOCK_LABEL_REPLACEABLE,
|
|
494
|
+
BLOCK_LABEL_HAS_INPUT,
|
|
495
|
+
BLOCK_LABEL_HAS_INPUTS,
|
|
496
|
+
BLOCK_LABEL_STATEMENT,
|
|
497
|
+
BLOCK_LABEL_CONTAINER,
|
|
498
|
+
BLOCK_LABEL_VALUE,
|
|
499
|
+
BLOCK_LABEL_STACK_BLOCKS,
|
|
500
|
+
INPUT_LABEL_INDEX,
|
|
501
|
+
ANNOUNCE_MOVE_WORKSPACE,
|
|
502
|
+
ANNOUNCE_MOVE_BEFORE,
|
|
503
|
+
ANNOUNCE_MOVE_AFTER,
|
|
504
|
+
ANNOUNCE_MOVE_INSIDE,
|
|
505
|
+
ANNOUNCE_MOVE_AROUND,
|
|
506
|
+
ANNOUNCE_MOVE_TO,
|
|
507
|
+
ANNOUNCE_MOVE_CANCELED,
|
|
508
|
+
FIELD_LABEL_EMPTY,
|
|
509
|
+
ARIA_TYPE_FIELD_INPUT,
|
|
510
|
+
FIELD_LABEL_EDIT_PREFIX,
|
|
446
511
|
} = zh_hant;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "blockly",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "13.0.0-beta.1",
|
|
4
4
|
"description": "Blockly is a library for building visual programming editors.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"blockly"
|
|
@@ -16,6 +16,9 @@
|
|
|
16
16
|
"author": {
|
|
17
17
|
"name": "Neil Fraser"
|
|
18
18
|
},
|
|
19
|
+
"browser": {
|
|
20
|
+
"jsdom": false
|
|
21
|
+
},
|
|
19
22
|
"exports": {
|
|
20
23
|
".": {
|
|
21
24
|
"types": "./index.d.ts",
|
|
@@ -69,7 +72,6 @@
|
|
|
69
72
|
"devDependencies": {
|
|
70
73
|
"@blockly/block-test": "^7.0.2",
|
|
71
74
|
"@blockly/dev-tools": "^9.0.2",
|
|
72
|
-
"@blockly/keyboard-navigation": "^3.0.1",
|
|
73
75
|
"@blockly/theme-modern": "^7.0.1",
|
|
74
76
|
"@hyperjump/browser": "^1.1.4",
|
|
75
77
|
"@hyperjump/json-schema": "^1.5.0",
|
|
@@ -89,19 +91,17 @@
|
|
|
89
91
|
"eslint-plugin-prettier": "^5.2.1",
|
|
90
92
|
"glob": "^11.0.1",
|
|
91
93
|
"globals": "^16.0.0",
|
|
92
|
-
"google-closure-compiler": "^
|
|
94
|
+
"google-closure-compiler": "^20260330.0.0",
|
|
93
95
|
"gulp": "^5.0.0",
|
|
94
96
|
"gulp-concat": "^2.6.1",
|
|
95
97
|
"gulp-gzip": "^1.4.2",
|
|
96
98
|
"gulp-header": "^2.0.9",
|
|
97
|
-
"gulp-insert": "^0.5.0",
|
|
98
99
|
"gulp-rename": "^2.0.0",
|
|
99
100
|
"gulp-replace": "^1.0.0",
|
|
100
|
-
"gulp-series": "^1.0.2",
|
|
101
|
-
"gulp-shell": "^0.8.0",
|
|
102
101
|
"gulp-sourcemaps": "^3.0.0",
|
|
103
102
|
"gulp-umd": "^2.0.0",
|
|
104
103
|
"http-server": "^14.0.0",
|
|
104
|
+
"jsdom": "27.4.0",
|
|
105
105
|
"json5": "^2.2.0",
|
|
106
106
|
"markdown-tables-to-json": "^0.1.7",
|
|
107
107
|
"mocha": "^11.3.0",
|
|
@@ -110,17 +110,17 @@
|
|
|
110
110
|
"prettier-plugin-organize-imports": "^4.0.0",
|
|
111
111
|
"puppeteer-core": "^24.17.0",
|
|
112
112
|
"readline-sync": "^1.4.10",
|
|
113
|
-
"rimraf": "^
|
|
113
|
+
"rimraf": "^6.1.2",
|
|
114
114
|
"typescript": "^5.3.3",
|
|
115
115
|
"typescript-eslint": "^8.16.0",
|
|
116
116
|
"webdriverio": "^9.0.7",
|
|
117
117
|
"yargs": "^17.2.1"
|
|
118
118
|
},
|
|
119
|
-
"dependencies": {
|
|
120
|
-
"jsdom": "26.1.0"
|
|
121
|
-
},
|
|
122
119
|
"engines": {
|
|
123
|
-
"node": ">=
|
|
120
|
+
"node": ">=22"
|
|
121
|
+
},
|
|
122
|
+
"peerDependencies": {
|
|
123
|
+
"jsdom": "^27.4.0"
|
|
124
124
|
},
|
|
125
125
|
"type": "commonjs"
|
|
126
126
|
}
|
package/php_compressed.js
CHANGED
|
@@ -200,9 +200,9 @@ function ${b.FUNCTION_NAME_PLACEHOLDER_}($a, $b) {
|
|
|
200
200
|
return rand($a, $b);
|
|
201
201
|
}
|
|
202
202
|
`)+"("+c+", "+a+")",Order$$module$build$src$generators$php$php_generator.FUNCTION_CALL]},math_random_float$$module$build$src$generators$php$math=function(a,b){return["(float)rand()/(float)getrandmax()",Order$$module$build$src$generators$php$php_generator.FUNCTION_CALL]},math_atan2$$module$build$src$generators$php$math=function(a,b){const c=b.valueToCode(a,"X",Order$$module$build$src$generators$php$php_generator.NONE)||"0";return["atan2("+(b.valueToCode(a,"Y",Order$$module$build$src$generators$php$php_generator.NONE)||
|
|
203
|
-
"0")+", "+c+") / pi() * 180",Order$$module$build$src$generators$php$php_generator.DIVISION]},procedures_defreturn$$module$build$src$generators$php$procedures=function(a,b){var c=[],d=a.workspace,e=$.allUsedVarModels$$module$build$src$core$variables(d)||[];for(var f of e)e=f.getName(),a.
|
|
203
|
+
"0")+", "+c+") / pi() * 180",Order$$module$build$src$generators$php$php_generator.DIVISION]},procedures_defreturn$$module$build$src$generators$php$procedures=function(a,b){var c=[],d=a.workspace,e=$.allUsedVarModels$$module$build$src$core$variables(d)||[];for(var f of e)e=f.getName(),a.getVarModels().includes(f)||c.push(b.getVariableName(e));d=$.allDeveloperVariables$$module$build$src$core$variables(d);for(f=0;f<d.length;f++)c.push(b.nameDB_.getName(d[f],$.NameType$$module$build$src$core$names.DEVELOPER_VARIABLE));
|
|
204
204
|
d=c.length?b.INDENT+"global "+c.join(", ")+";\n":"";c=b.getProcedureName(a.getFieldValue("NAME"));f="";b.STATEMENT_PREFIX&&(f+=b.injectId(b.STATEMENT_PREFIX,a));b.STATEMENT_SUFFIX&&(f+=b.injectId(b.STATEMENT_SUFFIX,a));f&&(f=b.prefixLines(f,b.INDENT));e="";b.INFINITE_LOOP_TRAP&&(e=b.prefixLines(b.injectId(b.INFINITE_LOOP_TRAP,a),b.INDENT));let g="";a.getInput("STACK")&&(g=b.statementToCode(a,"STACK"));let h="";a.getInput("RETURN")&&(h=b.valueToCode(a,"RETURN",Order$$module$build$src$generators$php$php_generator.NONE)||
|
|
205
|
-
"");let k="";g&&h&&(k=f);h&&(h=b.INDENT+"return "+h+";\n");const l=[],m=a.
|
|
205
|
+
"");let k="";g&&h&&(k=f);h&&(h=b.INDENT+"return "+h+";\n");const l=[],m=a.getVarModels();for(let n=0;n<m.length;n++)l[n]=b.getVariableName(m[n].getId());d="function "+c+"("+l.join(", ")+") {\n"+d+f+e+g+k+h+"}";d=b.scrub_(a,d);b.definitions_["%"+c]=d;return null},procedures_callreturn$$module$build$src$generators$php$procedures=function(a,b){const c=b.getProcedureName(a.getFieldValue("NAME")),d=[],e=a.getVarModels();for(let f=0;f<e.length;f++)d[f]=b.valueToCode(a,"ARG"+f,Order$$module$build$src$generators$php$php_generator.NONE)||
|
|
206
206
|
"null";return[c+"("+d.join(", ")+")",Order$$module$build$src$generators$php$php_generator.FUNCTION_CALL]},procedures_callnoreturn$$module$build$src$generators$php$procedures=function(a,b){return b.forBlock.procedures_callreturn(a,b)[0]+";\n"},procedures_ifreturn$$module$build$src$generators$php$procedures=function(a,b){let c="if ("+(b.valueToCode(a,"CONDITION",Order$$module$build$src$generators$php$php_generator.NONE)||"false")+") {\n";b.STATEMENT_SUFFIX&&(c+=b.prefixLines(b.injectId(b.STATEMENT_SUFFIX,
|
|
207
207
|
a),b.INDENT));a.hasReturnValue_?(a=b.valueToCode(a,"VALUE",Order$$module$build$src$generators$php$php_generator.NONE)||"null",c+=b.INDENT+"return "+a+";\n"):c+=b.INDENT+"return;\n";return c+"}\n"},text$$module$build$src$generators$php$text=function(a,b){return[b.quote_(a.getFieldValue("TEXT")),Order$$module$build$src$generators$php$php_generator.ATOMIC]},text_join$$module$build$src$generators$php$text=function(a,b){if(a.itemCount_===0)return["''",Order$$module$build$src$generators$php$php_generator.ATOMIC];
|
|
208
208
|
if(a.itemCount_===1)return[b.valueToCode(a,"ADD0",Order$$module$build$src$generators$php$php_generator.NONE)||"''",Order$$module$build$src$generators$php$php_generator.NONE];if(a.itemCount_===2){var c=b.valueToCode(a,"ADD0",Order$$module$build$src$generators$php$php_generator.STRING_CONCAT)||"''";a=b.valueToCode(a,"ADD1",Order$$module$build$src$generators$php$php_generator.STRING_CONCAT)||"''";return[c+" . "+a,Order$$module$build$src$generators$php$php_generator.STRING_CONCAT]}c=Array(a.itemCount_);
|