blockly 13.0.0-beta.0 → 13.0.0-beta.2

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.
Files changed (313) hide show
  1. package/blockly.min.js +2092 -1318
  2. package/blockly.mjs +1 -1
  3. package/blockly_compressed.js +1887 -1190
  4. package/blockly_compressed.js.map +1 -1
  5. package/blocks_compressed.js +71 -71
  6. package/blocks_compressed.js.map +1 -1
  7. package/core/block.d.ts +18 -0
  8. package/core/block_aria_composer.d.ts +119 -0
  9. package/core/block_svg.d.ts +21 -1
  10. package/core/blockly.d.ts +1 -1
  11. package/core/bubbles/bubble.d.ts +39 -0
  12. package/core/bubbles/mini_workspace_bubble.d.ts +4 -1
  13. package/core/bubbles/text_bubble.d.ts +4 -1
  14. package/core/dragging/block_drag_strategy.d.ts +45 -3
  15. package/core/field.d.ts +15 -17
  16. package/core/field_checkbox.d.ts +27 -0
  17. package/core/field_dropdown.d.ts +51 -1
  18. package/core/field_image.d.ts +24 -0
  19. package/core/field_input.d.ts +23 -0
  20. package/core/field_number.d.ts +10 -0
  21. package/core/field_textinput.d.ts +10 -0
  22. package/core/field_variable.d.ts +9 -0
  23. package/core/flyout_base.d.ts +10 -0
  24. package/core/focus_manager.d.ts +47 -2
  25. package/core/inputs/input.d.ts +15 -0
  26. package/core/interfaces/i_flyout_inflater.d.ts +9 -0
  27. package/core/interfaces/i_focusable_node.d.ts +3 -1
  28. package/core/interfaces/i_json_block_definition.d.ts +1 -0
  29. package/core/keyboard_nav/keyboard_mover.d.ts +16 -5
  30. package/core/keyboard_nav/navigation_policies/bubble_navigation_policy.d.ts +63 -0
  31. package/core/keyboard_nav/navigation_policies/icon_navigation_policy.d.ts +2 -2
  32. package/core/keyboard_nav/navigators/flyout_navigator.d.ts +1 -1
  33. package/core/menu.d.ts +3 -0
  34. package/core/menuitem.d.ts +8 -1
  35. package/core/shortcut_items.d.ts +16 -1
  36. package/core/shortcut_registry.d.ts +6 -0
  37. package/core/toolbox/toolbox.d.ts +5 -11
  38. package/core/tooltip.d.ts +10 -0
  39. package/core/trashcan.d.ts +23 -38
  40. package/core/utils/aria.d.ts +16 -62
  41. package/core/utils/dom.d.ts +1 -1
  42. package/core/utils/shortcut_formatting.d.ts +5 -7
  43. package/core/variables.d.ts +1 -1
  44. package/core/workspace.d.ts +5 -1
  45. package/core/workspace_svg.d.ts +8 -0
  46. package/core/zoom_controls.d.ts +43 -50
  47. package/dart_compressed.js +62 -62
  48. package/dart_compressed.js.map +1 -1
  49. package/index.mjs +1 -1
  50. package/javascript_compressed.js +55 -55
  51. package/javascript_compressed.js.map +1 -1
  52. package/lua_compressed.js +50 -50
  53. package/lua_compressed.js.map +1 -1
  54. package/media/drop.mp3 +0 -0
  55. package/msg/ab.js +78 -1
  56. package/msg/ab.mjs +78 -1
  57. package/msg/ace.js +79 -2
  58. package/msg/ace.mjs +78 -1
  59. package/msg/af.js +78 -1
  60. package/msg/af.mjs +78 -1
  61. package/msg/am.js +79 -2
  62. package/msg/am.mjs +78 -1
  63. package/msg/ar.js +101 -24
  64. package/msg/ar.mjs +78 -1
  65. package/msg/ast.js +79 -2
  66. package/msg/ast.mjs +78 -1
  67. package/msg/az.js +79 -2
  68. package/msg/az.mjs +78 -1
  69. package/msg/ba.js +78 -1
  70. package/msg/ba.mjs +78 -1
  71. package/msg/bcc.js +78 -1
  72. package/msg/bcc.mjs +78 -1
  73. package/msg/be-tarask.js +112 -35
  74. package/msg/be-tarask.mjs +78 -1
  75. package/msg/be.js +79 -2
  76. package/msg/be.mjs +78 -1
  77. package/msg/bg.js +78 -1
  78. package/msg/bg.mjs +78 -1
  79. package/msg/bn.js +79 -2
  80. package/msg/bn.mjs +78 -1
  81. package/msg/br.js +79 -2
  82. package/msg/br.mjs +78 -1
  83. package/msg/bs.js +78 -1
  84. package/msg/bs.mjs +78 -1
  85. package/msg/ca.js +78 -1
  86. package/msg/ca.mjs +78 -1
  87. package/msg/ce.js +78 -1
  88. package/msg/ce.mjs +78 -1
  89. package/msg/cs.js +86 -9
  90. package/msg/cs.mjs +78 -1
  91. package/msg/da.js +102 -25
  92. package/msg/da.mjs +78 -1
  93. package/msg/de.js +78 -1
  94. package/msg/de.mjs +78 -1
  95. package/msg/diq.js +80 -3
  96. package/msg/diq.mjs +78 -1
  97. package/msg/dtp.js +78 -1
  98. package/msg/dtp.mjs +78 -1
  99. package/msg/dty.js +78 -1
  100. package/msg/dty.mjs +78 -1
  101. package/msg/ee.js +78 -1
  102. package/msg/ee.mjs +78 -1
  103. package/msg/el.js +109 -32
  104. package/msg/el.mjs +78 -1
  105. package/msg/en-gb.js +78 -1
  106. package/msg/en-gb.mjs +78 -1
  107. package/msg/en.js +79 -2
  108. package/msg/en.mjs +78 -1
  109. package/msg/eo.js +78 -1
  110. package/msg/eo.mjs +78 -1
  111. package/msg/es.js +88 -11
  112. package/msg/es.mjs +78 -1
  113. package/msg/et.js +78 -1
  114. package/msg/et.mjs +78 -1
  115. package/msg/eu.js +78 -1
  116. package/msg/eu.mjs +78 -1
  117. package/msg/fa.js +79 -2
  118. package/msg/fa.mjs +78 -1
  119. package/msg/fi.js +97 -20
  120. package/msg/fi.mjs +78 -1
  121. package/msg/fo.js +78 -1
  122. package/msg/fo.mjs +78 -1
  123. package/msg/fr.js +101 -24
  124. package/msg/fr.mjs +78 -1
  125. package/msg/frr.js +79 -2
  126. package/msg/frr.mjs +78 -1
  127. package/msg/ga.js +550 -0
  128. package/msg/{cdo.mjs → ga.mjs} +80 -3
  129. package/msg/gl.js +101 -24
  130. package/msg/gl.mjs +78 -1
  131. package/msg/gn.js +79 -2
  132. package/msg/gn.mjs +78 -1
  133. package/msg/gor.js +78 -1
  134. package/msg/gor.mjs +78 -1
  135. package/msg/ha.js +78 -1
  136. package/msg/ha.mjs +78 -1
  137. package/msg/hak.js +79 -2
  138. package/msg/hak.mjs +78 -1
  139. package/msg/he.js +128 -51
  140. package/msg/he.mjs +78 -1
  141. package/msg/hi.js +78 -1
  142. package/msg/hi.mjs +78 -1
  143. package/msg/hr.js +78 -1
  144. package/msg/hr.mjs +78 -1
  145. package/msg/hrx.js +78 -1
  146. package/msg/hrx.mjs +78 -1
  147. package/msg/hsb.js +78 -1
  148. package/msg/hsb.mjs +78 -1
  149. package/msg/hu.js +80 -3
  150. package/msg/hu.mjs +78 -1
  151. package/msg/hy.js +78 -1
  152. package/msg/hy.mjs +78 -1
  153. package/msg/ia.js +101 -24
  154. package/msg/ia.mjs +78 -1
  155. package/msg/id.js +308 -231
  156. package/msg/id.mjs +78 -1
  157. package/msg/ig.js +86 -9
  158. package/msg/ig.mjs +78 -1
  159. package/msg/inh.js +78 -1
  160. package/msg/inh.mjs +78 -1
  161. package/msg/is.js +78 -1
  162. package/msg/is.mjs +78 -1
  163. package/msg/it.js +104 -27
  164. package/msg/it.mjs +78 -1
  165. package/msg/ja.js +101 -24
  166. package/msg/ja.mjs +78 -1
  167. package/msg/ka.js +80 -3
  168. package/msg/ka.mjs +78 -1
  169. package/msg/kab.js +87 -10
  170. package/msg/kab.mjs +78 -1
  171. package/msg/kbd-cyrl.js +79 -2
  172. package/msg/kbd-cyrl.mjs +78 -1
  173. package/msg/km.js +78 -1
  174. package/msg/km.mjs +78 -1
  175. package/msg/kn.js +78 -1
  176. package/msg/kn.mjs +78 -1
  177. package/msg/ko.js +103 -26
  178. package/msg/ko.mjs +78 -1
  179. package/msg/krc.js +550 -0
  180. package/msg/krc.mjs +531 -0
  181. package/msg/ksh.js +79 -2
  182. package/msg/ksh.mjs +78 -1
  183. package/msg/ku-latn.js +79 -2
  184. package/msg/ku-latn.mjs +78 -1
  185. package/msg/ky.js +80 -3
  186. package/msg/ky.mjs +78 -1
  187. package/msg/la.js +79 -2
  188. package/msg/la.mjs +78 -1
  189. package/msg/lb.js +89 -12
  190. package/msg/lb.mjs +78 -1
  191. package/msg/lki.js +78 -1
  192. package/msg/lki.mjs +78 -1
  193. package/msg/lo.js +78 -1
  194. package/msg/lo.mjs +78 -1
  195. package/msg/lrc.js +78 -1
  196. package/msg/lrc.mjs +78 -1
  197. package/msg/lt.js +79 -2
  198. package/msg/lt.mjs +78 -1
  199. package/msg/lv.js +89 -12
  200. package/msg/lv.mjs +78 -1
  201. package/msg/mg.js +78 -1
  202. package/msg/mg.mjs +78 -1
  203. package/msg/mk.js +78 -1
  204. package/msg/mk.mjs +78 -1
  205. package/msg/ml.js +78 -1
  206. package/msg/ml.mjs +78 -1
  207. package/msg/mnw.js +78 -1
  208. package/msg/mnw.mjs +78 -1
  209. package/msg/ms.js +87 -10
  210. package/msg/ms.mjs +78 -1
  211. package/msg/my.js +78 -1
  212. package/msg/my.mjs +78 -1
  213. package/msg/mzn.js +79 -2
  214. package/msg/mzn.mjs +78 -1
  215. package/msg/nb.js +78 -1
  216. package/msg/nb.mjs +78 -1
  217. package/msg/ne.js +87 -10
  218. package/msg/ne.mjs +78 -1
  219. package/msg/nl.js +101 -24
  220. package/msg/nl.mjs +78 -1
  221. package/msg/oc.js +78 -1
  222. package/msg/oc.mjs +78 -1
  223. package/msg/olo.js +79 -2
  224. package/msg/olo.mjs +78 -1
  225. package/msg/pa.js +87 -10
  226. package/msg/pa.mjs +78 -1
  227. package/msg/pl.js +101 -24
  228. package/msg/pl.mjs +78 -1
  229. package/msg/pms.js +101 -24
  230. package/msg/pms.mjs +78 -1
  231. package/msg/ps.js +96 -19
  232. package/msg/ps.mjs +78 -1
  233. package/msg/pt-br.js +101 -24
  234. package/msg/pt-br.mjs +78 -1
  235. package/msg/pt.js +101 -24
  236. package/msg/pt.mjs +78 -1
  237. package/msg/ro.js +110 -33
  238. package/msg/ro.mjs +78 -1
  239. package/msg/ru.js +101 -24
  240. package/msg/ru.mjs +78 -1
  241. package/msg/sc.js +78 -1
  242. package/msg/sc.mjs +78 -1
  243. package/msg/sco.js +79 -2
  244. package/msg/sco.mjs +78 -1
  245. package/msg/sd.js +78 -1
  246. package/msg/sd.mjs +78 -1
  247. package/msg/shn.js +78 -1
  248. package/msg/shn.mjs +78 -1
  249. package/msg/si.js +79 -2
  250. package/msg/si.mjs +78 -1
  251. package/msg/sk.js +79 -2
  252. package/msg/sk.mjs +78 -1
  253. package/msg/skr-arab.js +81 -4
  254. package/msg/skr-arab.mjs +78 -1
  255. package/msg/sl.js +102 -25
  256. package/msg/sl.mjs +78 -1
  257. package/msg/smn.js +80 -3
  258. package/msg/smn.mjs +78 -1
  259. package/msg/sq.js +87 -10
  260. package/msg/sq.mjs +78 -1
  261. package/msg/sr-latn.js +78 -1
  262. package/msg/sr-latn.mjs +78 -1
  263. package/msg/sr.js +78 -1
  264. package/msg/sr.mjs +78 -1
  265. package/msg/sv.js +101 -24
  266. package/msg/sv.mjs +78 -1
  267. package/msg/sw.js +79 -2
  268. package/msg/sw.mjs +78 -1
  269. package/msg/ta.js +97 -20
  270. package/msg/ta.mjs +78 -1
  271. package/msg/tcy.js +148 -71
  272. package/msg/tcy.mjs +78 -1
  273. package/msg/tdd.js +78 -1
  274. package/msg/tdd.mjs +78 -1
  275. package/msg/te.js +78 -1
  276. package/msg/te.mjs +78 -1
  277. package/msg/th.js +79 -2
  278. package/msg/th.mjs +78 -1
  279. package/msg/ti.js +78 -1
  280. package/msg/ti.mjs +78 -1
  281. package/msg/tl.js +78 -1
  282. package/msg/tl.mjs +78 -1
  283. package/msg/tlh.js +78 -1
  284. package/msg/tlh.mjs +78 -1
  285. package/msg/tr.js +101 -24
  286. package/msg/tr.mjs +78 -1
  287. package/msg/ug-arab.js +78 -1
  288. package/msg/ug-arab.mjs +78 -1
  289. package/msg/uk.js +78 -1
  290. package/msg/uk.mjs +78 -1
  291. package/msg/ur.js +78 -1
  292. package/msg/ur.mjs +78 -1
  293. package/msg/uz.js +93 -16
  294. package/msg/uz.mjs +78 -1
  295. package/msg/vi.js +102 -25
  296. package/msg/vi.mjs +78 -1
  297. package/msg/xmf.js +78 -1
  298. package/msg/xmf.mjs +78 -1
  299. package/msg/yo.js +78 -1
  300. package/msg/yo.mjs +78 -1
  301. package/msg/zgh.js +78 -1
  302. package/msg/zgh.mjs +78 -1
  303. package/msg/zh-hans.js +101 -24
  304. package/msg/zh-hans.mjs +78 -1
  305. package/msg/zh-hant.js +101 -24
  306. package/msg/zh-hant.mjs +78 -1
  307. package/package.json +4 -4
  308. package/php_compressed.js +54 -55
  309. package/php_compressed.js.map +1 -1
  310. package/python_compressed.js +57 -57
  311. package/python_compressed.js.map +1 -1
  312. package/core/keyboard_nav/navigation_policies/block_comment_navigation_policy.d.ts +0 -63
  313. package/msg/cdo.js +0 -473
package/msg/zgh.js CHANGED
@@ -19,7 +19,37 @@ 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_LABEL_BUTTON"] = "button"; // untranslated
30
+ Blockly.Msg["ARIA_LABEL_HEADING"] = "heading"; // untranslated
31
+ Blockly.Msg["ARIA_TYPE_FIELD_CHECKBOX"] = "checkbox"; // untranslated
32
+ Blockly.Msg["ARIA_TYPE_FIELD_DROPDOWN"] = "dropdown"; // untranslated
33
+ Blockly.Msg["ARIA_TYPE_FIELD_IMAGE"] = "image"; // untranslated
34
+ Blockly.Msg["ARIA_TYPE_FIELD_INPUT"] = "input"; // untranslated
35
+ Blockly.Msg["ARIA_TYPE_FIELD_NUMBER"] = "number"; // untranslated
36
+ Blockly.Msg["ARIA_TYPE_FIELD_TEXT_INPUT"] = "text"; // untranslated
37
+ Blockly.Msg["BACKSPACE_KEY"] = "Backspace"; // untranslated
38
+ Blockly.Msg["BLOCK_LABEL_BEGIN_PREFIX"] = "Begin %1"; // untranslated
39
+ Blockly.Msg["BLOCK_LABEL_BEGIN_STACK"] = "Begin stack"; // untranslated
40
+ Blockly.Msg["BLOCK_LABEL_COLLAPSED"] = "collapsed"; // untranslated
41
+ Blockly.Msg["BLOCK_LABEL_CONTAINER"] = "container"; // untranslated
42
+ Blockly.Msg["BLOCK_LABEL_DISABLED"] = "disabled"; // untranslated
43
+ Blockly.Msg["BLOCK_LABEL_HAS_INPUT"] = "has input"; // untranslated
44
+ Blockly.Msg["BLOCK_LABEL_HAS_INPUTS"] = "has inputs"; // untranslated
45
+ Blockly.Msg["BLOCK_LABEL_REPLACEABLE"] = "replaceable"; // untranslated
46
+ Blockly.Msg["BLOCK_LABEL_STACK_BLOCKS"] = "%1 stack blocks"; // untranslated
47
+ Blockly.Msg["BLOCK_LABEL_STATEMENT"] = "command"; // untranslated
48
+ Blockly.Msg["BLOCK_LABEL_TOOLBOX_CATEGORY"] = "%1 category"; // untranslated
49
+ Blockly.Msg["BLOCK_LABEL_VALUE"] = "value"; // untranslated
50
+ Blockly.Msg["BUBBLE_LABEL_DEFAULT"] = "Bubble"; // untranslated
22
51
  Blockly.Msg["CANNOT_DELETE_VARIABLE_PROCEDURE"] = "Can't delete the variable '%1' because it's part of the definition of the function '%2'"; // untranslated
52
+ Blockly.Msg["CAPS_LOCK_KEY"] = "Caps Lock"; // untranslated
23
53
  Blockly.Msg["CHANGE_VALUE_TITLE"] = "ⵙⵏⴼⵍ ⴰⵣⴰⵍ:";
24
54
  Blockly.Msg["CHROME_OS"] = "ChromeOS"; // untranslated
25
55
  Blockly.Msg["CLEAN_UP"] = "Clean up Blocks"; // untranslated
@@ -45,6 +75,7 @@ Blockly.Msg["COLOUR_RGB_RED"] = "ⴰⵣⴳⴳⵯⴰⵖ";
45
75
  Blockly.Msg["COLOUR_RGB_TITLE"] = "ⴽⵍⵓ ⵙ";
46
76
  Blockly.Msg["COLOUR_RGB_TOOLTIP"] = "ⴰⵣⴰⵍⵏ ⵉⴼⵓⴽⴽ ⴰⴷ ⵉⵍⵉⵏ ⴳⵔ 0 ⴷ 100.";
47
77
  Blockly.Msg["COMMAND_KEY"] = "⌘ Command"; // untranslated
78
+ Blockly.Msg["CONTEXT_MENU_KEY"] = "≣ Menu"; // untranslated
48
79
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
49
80
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK"] = "break out of loop"; // untranslated
50
81
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE"] = "continue with next iteration of loop"; // untranslated
@@ -82,6 +113,7 @@ Blockly.Msg["COPY_SHORTCUT"] = "Copy"; // untranslated
82
113
  Blockly.Msg["CUT_SHORTCUT"] = "Cut"; // untranslated
83
114
  Blockly.Msg["DELETE_ALL_BLOCKS"] = "ⴽⴽⵙ %1 ⵉⴱⵍⵓⴽⵏ ⵎⴰⵕⵕⴰ?";
84
115
  Blockly.Msg["DELETE_BLOCK"] = "ⴽⴽⵙ ⴰⴱⵍⵓⴽ";
116
+ Blockly.Msg["DELETE_KEY"] = "Delete"; // untranslated
85
117
  Blockly.Msg["DELETE_VARIABLE"] = "ⴽⴽⵙ ⴰⵎⵙⴽⵉⵍ '%1'";
86
118
  Blockly.Msg["DELETE_VARIABLE_CONFIRMATION"] = "Delete %1 uses of the '%2' variable?"; // untranslated
87
119
  Blockly.Msg["DELETE_X_BLOCKS"] = "ⴽⴽⵙ %1 ⵉⴱⵍⵓⴽⵏ";
@@ -92,13 +124,24 @@ Blockly.Msg["DUPLICATE_BLOCK"] = "Duplicate"; // untranslated
92
124
  Blockly.Msg["DUPLICATE_COMMENT"] = "Duplicate Comment"; // untranslated
93
125
  Blockly.Msg["EDIT_BLOCK_CONTENTS"] = "Edit Block contents"; // untranslated
94
126
  Blockly.Msg["ENABLE_BLOCK"] = "Enable Block"; // untranslated
127
+ Blockly.Msg["END_KEY"] = "End"; // untranslated
95
128
  Blockly.Msg["ENTER_KEY"] = "Enter"; // untranslated
129
+ Blockly.Msg["ESCAPE"] = "Esc"; // untranslated
96
130
  Blockly.Msg["EXPAND_ALL"] = "Expand Blocks"; // untranslated
97
131
  Blockly.Msg["EXPAND_BLOCK"] = "Expand Block"; // untranslated
98
132
  Blockly.Msg["EXTERNAL_INPUTS"] = "External Inputs"; // untranslated
133
+ Blockly.Msg["FIELD_LABEL_CHECKBOX_CHECKED"] = "Checked"; // untranslated
134
+ Blockly.Msg["FIELD_LABEL_CHECKBOX_UNCHECKED"] = "Not checked"; // untranslated
135
+ Blockly.Msg["FIELD_LABEL_EDIT_PREFIX"] = "Edit %1"; // untranslated
136
+ Blockly.Msg["FIELD_LABEL_EMPTY"] = "empty"; // untranslated
137
+ Blockly.Msg["FIELD_LABEL_OPTION_INDEX"] = "Option %1"; // untranslated
138
+ Blockly.Msg["FIELD_LABEL_VARIABLE"] = "Variable '%1'"; // untranslated
99
139
  Blockly.Msg["HELP"] = "ⵜⵉⵡⵉⵙⵉ";
100
140
  Blockly.Msg["HELP_PROMPT"] = "Press %1 for help on keyboard controls"; // untranslated
141
+ Blockly.Msg["HOME_KEY"] = "Home"; // untranslated
101
142
  Blockly.Msg["INLINE_INPUTS"] = "Inline Inputs"; // untranslated
143
+ Blockly.Msg["INPUT_LABEL_INDEX"] = "input %1"; // untranslated
144
+ Blockly.Msg["INSERT_KEY"] = "Insert"; // untranslated
102
145
  Blockly.Msg["KEYBOARD_NAV_BLOCK_NAVIGATION_HINT"] = "Use the right arrow key to navigate inside of blocks"; // untranslated
103
146
  Blockly.Msg["KEYBOARD_NAV_CONSTRAINED_MOVE_HINT"] = "Use the arrow keys to move, then %1 to accept the position"; // untranslated
104
147
  Blockly.Msg["KEYBOARD_NAV_COPIED_HINT"] = "Copied. Press %1 to paste."; // untranslated
@@ -312,9 +355,13 @@ Blockly.Msg["NEW_STRING_VARIABLE"] = "Create string variable..."; // untranslat
312
355
  Blockly.Msg["NEW_VARIABLE"] = "ⵙⴽⵔ ⴰⵎⵙⴽⵉⵍ...";
313
356
  Blockly.Msg["NEW_VARIABLE_TITLE"] = "ⵉⵙⵎ ⵏ ⵓⵎⵙⴽⵉⵍ ⴰⵎⴰⵢⵏⵓ:";
314
357
  Blockly.Msg["NEW_VARIABLE_TYPE_TITLE"] = "ⴰⵏⴰⵡ ⴰⵎⴰⵢⵏⵓ ⵏ ⵓⵎⵙⴽⵉⵍ:";
358
+ Blockly.Msg["OPEN_TRASH"] = "Open trash"; // untranslated
315
359
  Blockly.Msg["OPTION_KEY"] = "⌥ Option"; // untranslated
316
360
  Blockly.Msg["ORDINAL_NUMBER_SUFFIX"] = ""; // untranslated
361
+ Blockly.Msg["PAGE_DOWN_KEY"] = "Page Down"; // untranslated
362
+ Blockly.Msg["PAGE_UP_KEY"] = "Page Up"; // untranslated
317
363
  Blockly.Msg["PASTE_SHORTCUT"] = "Paste"; // untranslated
364
+ Blockly.Msg["PAUSE_KEY"] = "Pause"; // untranslated
318
365
  Blockly.Msg["PROCEDURES_ALLOW_STATEMENTS"] = "allow statements"; // untranslated
319
366
  Blockly.Msg["PROCEDURES_BEFORE_PARAMS"] = "ⵙ:";
320
367
  Blockly.Msg["PROCEDURES_CALLNORETURN_HELPURL"] = "https://en.wikipedia.org/wiki/Subroutine"; // untranslated
@@ -346,9 +393,34 @@ Blockly.Msg["REDO"] = "ⴰⵍⵙ";
346
393
  Blockly.Msg["REMOVE_COMMENT"] = "ⴽⴽⵙ ⴰⵅⴼⴰⵡⴰⵍ";
347
394
  Blockly.Msg["RENAME_VARIABLE"] = "ⵙⵏⴼⵍ ⵉⵙⵎ ⵏ ⵓⵎⵙⴽⵉⵍ...";
348
395
  Blockly.Msg["RENAME_VARIABLE_TITLE"] = "ⵙⵏⴼⵍ ⵉⵎⵙⴽⵉⵍⵏ ⴰⴽⴽ '%1' ⵖⵔ:";
396
+ Blockly.Msg["RESET_ZOOM"] = "Reset zoom"; // untranslated
397
+ Blockly.Msg["SHIFT_KEY"] = "Shift"; // untranslated
398
+ Blockly.Msg["SHORTCUTS_ABORT_MOVE"] = "Abort move"; // untranslated
399
+ Blockly.Msg["SHORTCUTS_CLEANUP"] = "Clean up workspace"; // untranslated
349
400
  Blockly.Msg["SHORTCUTS_CODE_NAVIGATION"] = "Code navigation"; // untranslated
401
+ Blockly.Msg["SHORTCUTS_DELETE"] = "Delete"; // untranslated
402
+ Blockly.Msg["SHORTCUTS_DISCONNECT"] = "Disconnect block"; // untranslated
403
+ Blockly.Msg["SHORTCUTS_DUPLICATE"] = "Duplicate"; // untranslated
350
404
  Blockly.Msg["SHORTCUTS_EDITING"] = "Editing"; // untranslated
405
+ Blockly.Msg["SHORTCUTS_ESCAPE"] = "Exit"; // untranslated
406
+ Blockly.Msg["SHORTCUTS_FINISH_MOVE"] = "Finish move"; // untranslated
407
+ Blockly.Msg["SHORTCUTS_FOCUS_TOOLBOX"] = "Focus toolbox"; // untranslated
408
+ Blockly.Msg["SHORTCUTS_FOCUS_WORKSPACE"] = "Focus workspace"; // untranslated
351
409
  Blockly.Msg["SHORTCUTS_GENERAL"] = "General"; // untranslated
410
+ Blockly.Msg["SHORTCUTS_INFORMATION"] = "Announce information"; // untranslated
411
+ Blockly.Msg["SHORTCUTS_MOVE_DOWN"] = "Move down"; // untranslated
412
+ Blockly.Msg["SHORTCUTS_MOVE_LEFT"] = "Move left"; // untranslated
413
+ Blockly.Msg["SHORTCUTS_MOVE_RIGHT"] = "Move right"; // untranslated
414
+ Blockly.Msg["SHORTCUTS_MOVE_UP"] = "Move up"; // untranslated
415
+ Blockly.Msg["SHORTCUTS_NEXT_STACK"] = "Next stack"; // untranslated
416
+ Blockly.Msg["SHORTCUTS_PERFORM_ACTION"] = "Edit or confirm"; // untranslated
417
+ Blockly.Msg["SHORTCUTS_PREVIOUS_STACK"] = "Previous stack"; // untranslated
418
+ Blockly.Msg["SHORTCUTS_SHOW_CONTEXT_MENU"] = "Show menu"; // untranslated
419
+ Blockly.Msg["SHORTCUTS_SHOW_TOOLTIP"] = "Show tooltip"; // untranslated
420
+ Blockly.Msg["SHORTCUTS_START_MOVE"] = "Start move"; // untranslated
421
+ Blockly.Msg["SHORTCUTS_START_MOVE_STACK"] = "Start move stack"; // untranslated
422
+ Blockly.Msg["SPACE_KEY"] = "Space"; // untranslated
423
+ Blockly.Msg["TAB_KEY"] = "Tab"; // untranslated
352
424
  Blockly.Msg["TEXT_APPEND_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#text-modification"; // untranslated
353
425
  Blockly.Msg["TEXT_APPEND_TITLE"] = "to %1 append text %2"; // untranslated
354
426
  Blockly.Msg["TEXT_APPEND_TOOLTIP"] = "Append some text to variable '%1'."; // untranslated
@@ -433,13 +505,18 @@ Blockly.Msg["VARIABLE_ALREADY_EXISTS"] = "A variable named '%1' already exists."
433
505
  Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_ANOTHER_TYPE"] = "A variable named '%1' already exists for another type: '%2'."; // untranslated
434
506
  Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_A_PARAMETER"] = "A variable named '%1' already exists as a parameter in the procedure '%2'."; // untranslated
435
507
  Blockly.Msg["WINDOWS"] = "Windows"; // untranslated
436
- Blockly.Msg["WORKSPACE_ARIA_LABEL"] = "Blockly Workspace"; // untranslated
437
508
  Blockly.Msg["WORKSPACE_COMMENT_DEFAULT_TEXT"] = "Say something..."; // untranslated
438
509
  Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_MANY"] = "%1 stacks of blocks%2 in workspace."; // untranslated
439
510
  Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ONE"] = "One stack of blocks%2 in workspace."; // untranslated
440
511
  Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ZERO"] = "No blocks%2 in workspace."; // untranslated
441
512
  Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_MANY"] = " and %1 comments"; // untranslated
442
513
  Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_ONE"] = " and one comment"; // untranslated
514
+ Blockly.Msg["WORKSPACE_LABEL_1_STACK"] = "Blocks workspace. 1 stack of blocks"; // untranslated
515
+ Blockly.Msg["WORKSPACE_LABEL_FLYOUT_WORKSPACE"] = "%1 blocks"; // untranslated
516
+ Blockly.Msg["WORKSPACE_LABEL_MANY_STACKS"] = "Blocks workspace. %1 stacks of blocks"; // untranslated
517
+ Blockly.Msg["WORKSPACE_LABEL_MUTATOR_WORKSPACE"] = "Block editor workspace"; // untranslated
518
+ Blockly.Msg["ZOOM_IN"] = "Zoom in"; // untranslated
519
+ Blockly.Msg["ZOOM_OUT"] = "Zoom out"; // untranslated
443
520
  Blockly.Msg["CONTROLS_FOREACH_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
444
521
  Blockly.Msg["CONTROLS_FOR_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
445
522
  Blockly.Msg["CONTROLS_IF_ELSEIF_TITLE_ELSEIF"] = Blockly.Msg["CONTROLS_IF_MSG_ELSEIF"];
package/msg/zgh.mjs CHANGED
@@ -417,7 +417,6 @@ export const {
417
417
  PROCEDURES_IFRETURN_HELPURL,
418
418
  PROCEDURES_IFRETURN_WARNING,
419
419
  WORKSPACE_COMMENT_DEFAULT_TEXT,
420
- WORKSPACE_ARIA_LABEL,
421
420
  COLLAPSED_WARNINGS_WARNING,
422
421
  DIALOG_OK,
423
422
  DIALOG_CANCEL,
@@ -433,6 +432,20 @@ export const {
433
432
  OPTION_KEY,
434
433
  ALT_KEY,
435
434
  ENTER_KEY,
435
+ BACKSPACE_KEY,
436
+ DELETE_KEY,
437
+ ESCAPE,
438
+ TAB_KEY,
439
+ SHIFT_KEY,
440
+ CAPS_LOCK_KEY,
441
+ SPACE_KEY,
442
+ PAGE_UP_KEY,
443
+ PAGE_DOWN_KEY,
444
+ END_KEY,
445
+ HOME_KEY,
446
+ INSERT_KEY,
447
+ PAUSE_KEY,
448
+ CONTEXT_MENU_KEY,
436
449
  CUT_SHORTCUT,
437
450
  COPY_SHORTCUT,
438
451
  PASTE_SHORTCUT,
@@ -440,10 +453,35 @@ export const {
440
453
  SHORTCUTS_GENERAL,
441
454
  SHORTCUTS_EDITING,
442
455
  SHORTCUTS_CODE_NAVIGATION,
456
+ SHORTCUTS_ESCAPE,
457
+ SHORTCUTS_DELETE,
458
+ SHORTCUTS_START_MOVE,
459
+ SHORTCUTS_START_MOVE_STACK,
460
+ SHORTCUTS_MOVE_LEFT,
461
+ SHORTCUTS_MOVE_RIGHT,
462
+ SHORTCUTS_MOVE_UP,
463
+ SHORTCUTS_MOVE_DOWN,
464
+ SHORTCUTS_FINISH_MOVE,
465
+ SHORTCUTS_ABORT_MOVE,
466
+ SHORTCUTS_SHOW_CONTEXT_MENU,
467
+ SHORTCUTS_FOCUS_WORKSPACE,
468
+ SHORTCUTS_FOCUS_TOOLBOX,
469
+ SHORTCUTS_INFORMATION,
470
+ SHORTCUTS_DISCONNECT,
471
+ SHORTCUTS_NEXT_STACK,
472
+ SHORTCUTS_PREVIOUS_STACK,
473
+ SHORTCUTS_PERFORM_ACTION,
474
+ SHORTCUTS_DUPLICATE,
475
+ SHORTCUTS_CLEANUP,
476
+ SHORTCUTS_SHOW_TOOLTIP,
443
477
  KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT,
444
478
  KEYBOARD_NAV_CONSTRAINED_MOVE_HINT,
445
479
  KEYBOARD_NAV_COPIED_HINT,
446
480
  KEYBOARD_NAV_CUT_HINT,
481
+ WORKSPACE_LABEL_1_STACK,
482
+ WORKSPACE_LABEL_MANY_STACKS,
483
+ WORKSPACE_LABEL_MUTATOR_WORKSPACE,
484
+ WORKSPACE_LABEL_FLYOUT_WORKSPACE,
447
485
  WORKSPACE_CONTENTS_BLOCKS_MANY,
448
486
  WORKSPACE_CONTENTS_BLOCKS_ONE,
449
487
  WORKSPACE_CONTENTS_BLOCKS_ZERO,
@@ -451,4 +489,43 @@ export const {
451
489
  WORKSPACE_CONTENTS_COMMENTS_ONE,
452
490
  KEYBOARD_NAV_BLOCK_NAVIGATION_HINT,
453
491
  KEYBOARD_NAV_WORKSPACE_NAVIGATION_HINT,
492
+ BLOCK_LABEL_BEGIN_STACK,
493
+ BLOCK_LABEL_BEGIN_PREFIX,
494
+ BLOCK_LABEL_TOOLBOX_CATEGORY,
495
+ BLOCK_LABEL_DISABLED,
496
+ BLOCK_LABEL_COLLAPSED,
497
+ BLOCK_LABEL_REPLACEABLE,
498
+ BLOCK_LABEL_HAS_INPUT,
499
+ BLOCK_LABEL_HAS_INPUTS,
500
+ BLOCK_LABEL_STATEMENT,
501
+ BLOCK_LABEL_CONTAINER,
502
+ BLOCK_LABEL_VALUE,
503
+ BLOCK_LABEL_STACK_BLOCKS,
504
+ INPUT_LABEL_INDEX,
505
+ ANNOUNCE_MOVE_WORKSPACE,
506
+ ANNOUNCE_MOVE_BEFORE,
507
+ ANNOUNCE_MOVE_AFTER,
508
+ ANNOUNCE_MOVE_INSIDE,
509
+ ANNOUNCE_MOVE_AROUND,
510
+ ANNOUNCE_MOVE_TO,
511
+ ANNOUNCE_MOVE_CANCELED,
512
+ FIELD_LABEL_EMPTY,
513
+ ARIA_TYPE_FIELD_INPUT,
514
+ ARIA_TYPE_FIELD_TEXT_INPUT,
515
+ ARIA_TYPE_FIELD_NUMBER,
516
+ ARIA_TYPE_FIELD_DROPDOWN,
517
+ ARIA_TYPE_FIELD_IMAGE,
518
+ ARIA_TYPE_FIELD_CHECKBOX,
519
+ FIELD_LABEL_EDIT_PREFIX,
520
+ OPEN_TRASH,
521
+ ZOOM_IN,
522
+ ZOOM_OUT,
523
+ RESET_ZOOM,
524
+ FIELD_LABEL_OPTION_INDEX,
525
+ FIELD_LABEL_CHECKBOX_CHECKED,
526
+ FIELD_LABEL_CHECKBOX_UNCHECKED,
527
+ FIELD_LABEL_VARIABLE,
528
+ ARIA_LABEL_BUTTON,
529
+ ARIA_LABEL_HEADING,
530
+ BUBBLE_LABEL_DEFAULT,
454
531
  } = zgh;
package/msg/zh-hans.js CHANGED
@@ -18,12 +18,42 @@
18
18
  var Blockly = Blockly || { Msg: Object.create(null) };
19
19
 
20
20
  Blockly.Msg["ADD_COMMENT"] = "添加注释";
21
- Blockly.Msg["ALT_KEY"] = "Alt"; // untranslated
21
+ Blockly.Msg["ALT_KEY"] = "Alt";
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_LABEL_BUTTON"] = "button"; // untranslated
30
+ Blockly.Msg["ARIA_LABEL_HEADING"] = "heading"; // untranslated
31
+ Blockly.Msg["ARIA_TYPE_FIELD_CHECKBOX"] = "checkbox"; // untranslated
32
+ Blockly.Msg["ARIA_TYPE_FIELD_DROPDOWN"] = "dropdown"; // untranslated
33
+ Blockly.Msg["ARIA_TYPE_FIELD_IMAGE"] = "image"; // untranslated
34
+ Blockly.Msg["ARIA_TYPE_FIELD_INPUT"] = "input"; // untranslated
35
+ Blockly.Msg["ARIA_TYPE_FIELD_NUMBER"] = "number"; // untranslated
36
+ Blockly.Msg["ARIA_TYPE_FIELD_TEXT_INPUT"] = "text"; // untranslated
37
+ Blockly.Msg["BACKSPACE_KEY"] = "Backspace"; // untranslated
38
+ Blockly.Msg["BLOCK_LABEL_BEGIN_PREFIX"] = "Begin %1"; // untranslated
39
+ Blockly.Msg["BLOCK_LABEL_BEGIN_STACK"] = "Begin stack"; // untranslated
40
+ Blockly.Msg["BLOCK_LABEL_COLLAPSED"] = "collapsed"; // untranslated
41
+ Blockly.Msg["BLOCK_LABEL_CONTAINER"] = "container"; // untranslated
42
+ Blockly.Msg["BLOCK_LABEL_DISABLED"] = "disabled"; // untranslated
43
+ Blockly.Msg["BLOCK_LABEL_HAS_INPUT"] = "has input"; // untranslated
44
+ Blockly.Msg["BLOCK_LABEL_HAS_INPUTS"] = "has inputs"; // untranslated
45
+ Blockly.Msg["BLOCK_LABEL_REPLACEABLE"] = "replaceable"; // untranslated
46
+ Blockly.Msg["BLOCK_LABEL_STACK_BLOCKS"] = "%1 stack blocks"; // untranslated
47
+ Blockly.Msg["BLOCK_LABEL_STATEMENT"] = "command"; // untranslated
48
+ Blockly.Msg["BLOCK_LABEL_TOOLBOX_CATEGORY"] = "%1 category"; // untranslated
49
+ Blockly.Msg["BLOCK_LABEL_VALUE"] = "value"; // untranslated
50
+ Blockly.Msg["BUBBLE_LABEL_DEFAULT"] = "Bubble"; // untranslated
22
51
  Blockly.Msg["CANNOT_DELETE_VARIABLE_PROCEDURE"] = "不能删除变量“%1”,因为它是函数“%2”定义的一部分";
52
+ Blockly.Msg["CAPS_LOCK_KEY"] = "Caps Lock"; // untranslated
23
53
  Blockly.Msg["CHANGE_VALUE_TITLE"] = "更改值:";
24
- Blockly.Msg["CHROME_OS"] = "ChromeOS"; // untranslated
54
+ Blockly.Msg["CHROME_OS"] = "ChromeOS";
25
55
  Blockly.Msg["CLEAN_UP"] = "整理块";
26
- Blockly.Msg["CLOSE"] = "Close"; // untranslated
56
+ Blockly.Msg["CLOSE"] = "关闭";
27
57
  Blockly.Msg["COLLAPSED_WARNINGS_WARNING"] = "已收起的信息块内包含警告。";
28
58
  Blockly.Msg["COLLAPSE_ALL"] = "折叠块";
29
59
  Blockly.Msg["COLLAPSE_BLOCK"] = "折叠块";
@@ -44,7 +74,8 @@ Blockly.Msg["COLOUR_RGB_HELPURL"] = "https://www.december.com/html/spec/colorper
44
74
  Blockly.Msg["COLOUR_RGB_RED"] = "红色";
45
75
  Blockly.Msg["COLOUR_RGB_TITLE"] = "颜色";
46
76
  Blockly.Msg["COLOUR_RGB_TOOLTIP"] = "通过指定红色、绿色和蓝色的量创建一种颜色。所有的值必须在0和100之间。";
47
- Blockly.Msg["COMMAND_KEY"] = "⌘ Command"; // untranslated
77
+ Blockly.Msg["COMMAND_KEY"] = "⌘ Command";
78
+ Blockly.Msg["CONTEXT_MENU_KEY"] = "≣ Menu"; // untranslated
48
79
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
49
80
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK"] = "跳出循环";
50
81
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE"] = "继续下一轮循环";
@@ -77,11 +108,12 @@ Blockly.Msg["CONTROLS_WHILEUNTIL_OPERATOR_UNTIL"] = "重复直到条件满足";
77
108
  Blockly.Msg["CONTROLS_WHILEUNTIL_OPERATOR_WHILE"] = "当条件满足时重复";
78
109
  Blockly.Msg["CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL"] = "只要值为假,就一直循环执行一些语句。";
79
110
  Blockly.Msg["CONTROLS_WHILEUNTIL_TOOLTIP_WHILE"] = "只要值为真,就一直循环执行一些语句。";
80
- Blockly.Msg["CONTROL_KEY"] = "Ctrl"; // untranslated
81
- Blockly.Msg["COPY_SHORTCUT"] = "Copy"; // untranslated
82
- Blockly.Msg["CUT_SHORTCUT"] = "Cut"; // untranslated
111
+ Blockly.Msg["CONTROL_KEY"] = "Ctrl";
112
+ Blockly.Msg["COPY_SHORTCUT"] = "复制";
113
+ Blockly.Msg["CUT_SHORTCUT"] = "剪切";
83
114
  Blockly.Msg["DELETE_ALL_BLOCKS"] = "删除所有 %1 个块吗?";
84
115
  Blockly.Msg["DELETE_BLOCK"] = "删除块";
116
+ Blockly.Msg["DELETE_KEY"] = "Delete"; // untranslated
85
117
  Blockly.Msg["DELETE_VARIABLE"] = "删除变量“%1”";
86
118
  Blockly.Msg["DELETE_VARIABLE_CONFIRMATION"] = "要删除对变量“%2”的%1个引用吗?";
87
119
  Blockly.Msg["DELETE_X_BLOCKS"] = "删除 %1 个块";
@@ -90,22 +122,33 @@ Blockly.Msg["DIALOG_OK"] = "确认";
90
122
  Blockly.Msg["DISABLE_BLOCK"] = "禁用块";
91
123
  Blockly.Msg["DUPLICATE_BLOCK"] = "复制";
92
124
  Blockly.Msg["DUPLICATE_COMMENT"] = "复制注释";
93
- Blockly.Msg["EDIT_BLOCK_CONTENTS"] = "Edit Block contents"; // untranslated
125
+ Blockly.Msg["EDIT_BLOCK_CONTENTS"] = "编辑块内容";
94
126
  Blockly.Msg["ENABLE_BLOCK"] = "启用块";
127
+ Blockly.Msg["END_KEY"] = "End"; // untranslated
95
128
  Blockly.Msg["ENTER_KEY"] = "Enter"; // untranslated
129
+ Blockly.Msg["ESCAPE"] = "Esc"; // untranslated
96
130
  Blockly.Msg["EXPAND_ALL"] = "展开块";
97
131
  Blockly.Msg["EXPAND_BLOCK"] = "展开块";
98
132
  Blockly.Msg["EXTERNAL_INPUTS"] = "外部输入";
133
+ Blockly.Msg["FIELD_LABEL_CHECKBOX_CHECKED"] = "Checked"; // untranslated
134
+ Blockly.Msg["FIELD_LABEL_CHECKBOX_UNCHECKED"] = "Not checked"; // untranslated
135
+ Blockly.Msg["FIELD_LABEL_EDIT_PREFIX"] = "Edit %1"; // untranslated
136
+ Blockly.Msg["FIELD_LABEL_EMPTY"] = "empty"; // untranslated
137
+ Blockly.Msg["FIELD_LABEL_OPTION_INDEX"] = "Option %1"; // untranslated
138
+ Blockly.Msg["FIELD_LABEL_VARIABLE"] = "Variable '%1'"; // untranslated
99
139
  Blockly.Msg["HELP"] = "帮助";
100
- Blockly.Msg["HELP_PROMPT"] = "Press %1 for help on keyboard controls"; // untranslated
140
+ Blockly.Msg["HELP_PROMPT"] = " %1 来获取有关键盘控制的帮助";
141
+ Blockly.Msg["HOME_KEY"] = "Home"; // untranslated
101
142
  Blockly.Msg["INLINE_INPUTS"] = "单行输入";
143
+ Blockly.Msg["INPUT_LABEL_INDEX"] = "input %1"; // untranslated
144
+ Blockly.Msg["INSERT_KEY"] = "Insert"; // untranslated
102
145
  Blockly.Msg["KEYBOARD_NAV_BLOCK_NAVIGATION_HINT"] = "Use the right arrow key to navigate inside of blocks"; // untranslated
103
- Blockly.Msg["KEYBOARD_NAV_CONSTRAINED_MOVE_HINT"] = "Use the arrow keys to move, then %1 to accept the position"; // untranslated
104
- Blockly.Msg["KEYBOARD_NAV_COPIED_HINT"] = "Copied. Press %1 to paste."; // untranslated
105
- Blockly.Msg["KEYBOARD_NAV_CUT_HINT"] = "Cut. Press %1 to paste."; // untranslated
106
- Blockly.Msg["KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT"] = "Hold %1 and use arrow keys to move freely, then %2 to accept the position"; // untranslated
146
+ Blockly.Msg["KEYBOARD_NAV_CONSTRAINED_MOVE_HINT"] = "使用箭头键移动,然后按%1接受位置";
147
+ Blockly.Msg["KEYBOARD_NAV_COPIED_HINT"] = "已拷貝。按下 %1 貼上。";
148
+ Blockly.Msg["KEYBOARD_NAV_CUT_HINT"] = "已剪下。按下 %1 貼上。";
149
+ Blockly.Msg["KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT"] = "壓住 %1 並使用箭頭鍵來自由移動,然後按下 %2 接受位置";
107
150
  Blockly.Msg["KEYBOARD_NAV_WORKSPACE_NAVIGATION_HINT"] = "Use the arrow keys to navigate"; // untranslated
108
- Blockly.Msg["LINUX"] = "Linux"; // untranslated
151
+ Blockly.Msg["LINUX"] = "Linux";
109
152
  Blockly.Msg["LISTS_CREATE_EMPTY_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#create-empty-list"; // untranslated
110
153
  Blockly.Msg["LISTS_CREATE_EMPTY_TITLE"] = "创建空列表";
111
154
  Blockly.Msg["LISTS_CREATE_EMPTY_TOOLTIP"] = "返回一个列表,长度为 0,不包含任何数据记录";
@@ -218,7 +261,7 @@ Blockly.Msg["LOGIC_TERNARY_HELPURL"] = "https://zh.wikipedia.org/wiki/条件运
218
261
  Blockly.Msg["LOGIC_TERNARY_IF_FALSE"] = "如果为 false";
219
262
  Blockly.Msg["LOGIC_TERNARY_IF_TRUE"] = "如果为 true";
220
263
  Blockly.Msg["LOGIC_TERNARY_TOOLTIP"] = "检查“断言”里的条件语句。如果条件为真,则返回“如果为真”的值,否则,则返回“如果为假”的值。";
221
- Blockly.Msg["MAC_OS"] = "macOS"; // untranslated
264
+ Blockly.Msg["MAC_OS"] = "macOS";
222
265
  Blockly.Msg["MATH_ADDITION_SYMBOL"] = "+"; // untranslated
223
266
  Blockly.Msg["MATH_ARITHMETIC_HELPURL"] = "https://zh.wikipedia.org/wiki/算术";
224
267
  Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_ADD"] = "返回两个数的和。";
@@ -305,16 +348,20 @@ Blockly.Msg["MATH_TRIG_TOOLTIP_ATAN"] = "返回一个数的反正切。";
305
348
  Blockly.Msg["MATH_TRIG_TOOLTIP_COS"] = "返回角度(非弧度)的余弦。";
306
349
  Blockly.Msg["MATH_TRIG_TOOLTIP_SIN"] = "返回角度(非弧度)的正弦。";
307
350
  Blockly.Msg["MATH_TRIG_TOOLTIP_TAN"] = "返回角度(非弧度)的正切。";
308
- Blockly.Msg["MOVE_BLOCK"] = "Move Block"; // untranslated
351
+ Blockly.Msg["MOVE_BLOCK"] = "移动块";
309
352
  Blockly.Msg["NEW_COLOUR_VARIABLE"] = "创建颜色变量...";
310
353
  Blockly.Msg["NEW_NUMBER_VARIABLE"] = "创建数变量...";
311
354
  Blockly.Msg["NEW_STRING_VARIABLE"] = "创建字符串变量...";
312
355
  Blockly.Msg["NEW_VARIABLE"] = "创建变量...";
313
356
  Blockly.Msg["NEW_VARIABLE_TITLE"] = "新变量的名称:";
314
357
  Blockly.Msg["NEW_VARIABLE_TYPE_TITLE"] = "新变量的类型:";
315
- Blockly.Msg["OPTION_KEY"] = " Option"; // untranslated
358
+ Blockly.Msg["OPEN_TRASH"] = "Open trash"; // untranslated
359
+ Blockly.Msg["OPTION_KEY"] = "⌥ Option";
316
360
  Blockly.Msg["ORDINAL_NUMBER_SUFFIX"] = ""; // untranslated
317
- Blockly.Msg["PASTE_SHORTCUT"] = "Paste"; // untranslated
361
+ Blockly.Msg["PAGE_DOWN_KEY"] = "Page Down"; // untranslated
362
+ Blockly.Msg["PAGE_UP_KEY"] = "Page Up"; // untranslated
363
+ Blockly.Msg["PASTE_SHORTCUT"] = "粘贴";
364
+ Blockly.Msg["PAUSE_KEY"] = "Pause"; // untranslated
318
365
  Blockly.Msg["PROCEDURES_ALLOW_STATEMENTS"] = "允许声明";
319
366
  Blockly.Msg["PROCEDURES_BEFORE_PARAMS"] = "与:";
320
367
  Blockly.Msg["PROCEDURES_CALLNORETURN_HELPURL"] = "https://zh.wikipedia.org/wiki/子程序";
@@ -346,9 +393,34 @@ Blockly.Msg["REDO"] = "重做";
346
393
  Blockly.Msg["REMOVE_COMMENT"] = "删除注释";
347
394
  Blockly.Msg["RENAME_VARIABLE"] = "重命名变量...";
348
395
  Blockly.Msg["RENAME_VARIABLE_TITLE"] = "将所有“%1”变量重命名为:";
349
- Blockly.Msg["SHORTCUTS_CODE_NAVIGATION"] = "Code navigation"; // untranslated
350
- Blockly.Msg["SHORTCUTS_EDITING"] = "Editing"; // untranslated
351
- Blockly.Msg["SHORTCUTS_GENERAL"] = "General"; // untranslated
396
+ Blockly.Msg["RESET_ZOOM"] = "Reset zoom"; // untranslated
397
+ Blockly.Msg["SHIFT_KEY"] = "Shift"; // untranslated
398
+ Blockly.Msg["SHORTCUTS_ABORT_MOVE"] = "Abort move"; // untranslated
399
+ Blockly.Msg["SHORTCUTS_CLEANUP"] = "Clean up workspace"; // untranslated
400
+ Blockly.Msg["SHORTCUTS_CODE_NAVIGATION"] = "代码导航";
401
+ Blockly.Msg["SHORTCUTS_DELETE"] = "Delete"; // untranslated
402
+ Blockly.Msg["SHORTCUTS_DISCONNECT"] = "Disconnect block"; // untranslated
403
+ Blockly.Msg["SHORTCUTS_DUPLICATE"] = "Duplicate"; // untranslated
404
+ Blockly.Msg["SHORTCUTS_EDITING"] = "编辑";
405
+ Blockly.Msg["SHORTCUTS_ESCAPE"] = "Exit"; // untranslated
406
+ Blockly.Msg["SHORTCUTS_FINISH_MOVE"] = "Finish move"; // untranslated
407
+ Blockly.Msg["SHORTCUTS_FOCUS_TOOLBOX"] = "Focus toolbox"; // untranslated
408
+ Blockly.Msg["SHORTCUTS_FOCUS_WORKSPACE"] = "Focus workspace"; // untranslated
409
+ Blockly.Msg["SHORTCUTS_GENERAL"] = "常规";
410
+ Blockly.Msg["SHORTCUTS_INFORMATION"] = "Announce information"; // untranslated
411
+ Blockly.Msg["SHORTCUTS_MOVE_DOWN"] = "Move down"; // untranslated
412
+ Blockly.Msg["SHORTCUTS_MOVE_LEFT"] = "Move left"; // untranslated
413
+ Blockly.Msg["SHORTCUTS_MOVE_RIGHT"] = "Move right"; // untranslated
414
+ Blockly.Msg["SHORTCUTS_MOVE_UP"] = "Move up"; // untranslated
415
+ Blockly.Msg["SHORTCUTS_NEXT_STACK"] = "Next stack"; // untranslated
416
+ Blockly.Msg["SHORTCUTS_PERFORM_ACTION"] = "Edit or confirm"; // untranslated
417
+ Blockly.Msg["SHORTCUTS_PREVIOUS_STACK"] = "Previous stack"; // untranslated
418
+ Blockly.Msg["SHORTCUTS_SHOW_CONTEXT_MENU"] = "Show menu"; // untranslated
419
+ Blockly.Msg["SHORTCUTS_SHOW_TOOLTIP"] = "Show tooltip"; // untranslated
420
+ Blockly.Msg["SHORTCUTS_START_MOVE"] = "Start move"; // untranslated
421
+ Blockly.Msg["SHORTCUTS_START_MOVE_STACK"] = "Start move stack"; // untranslated
422
+ Blockly.Msg["SPACE_KEY"] = "Space"; // untranslated
423
+ Blockly.Msg["TAB_KEY"] = "Tab"; // untranslated
352
424
  Blockly.Msg["TEXT_APPEND_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#text-modification"; // untranslated
353
425
  Blockly.Msg["TEXT_APPEND_TITLE"] = "在%1之后加上文本%2";
354
426
  Blockly.Msg["TEXT_APPEND_TOOLTIP"] = "将一些文本追加到变量“%1”里。";
@@ -419,7 +491,7 @@ Blockly.Msg["TEXT_TRIM_OPERATOR_RIGHT"] = "消除其右侧的空格";
419
491
  Blockly.Msg["TEXT_TRIM_TOOLTIP"] = "从某一端或同时从两端删除多余的空白,并返回这段文字的一个副本。";
420
492
  Blockly.Msg["TODAY"] = "今天";
421
493
  Blockly.Msg["UNDO"] = "撤销";
422
- Blockly.Msg["UNKNOWN"] = "Unknown"; // untranslated
494
+ Blockly.Msg["UNKNOWN"] = "未知";
423
495
  Blockly.Msg["UNNAMED_KEY"] = "未命名";
424
496
  Blockly.Msg["VARIABLES_DEFAULT_NAME"] = "项目";
425
497
  Blockly.Msg["VARIABLES_GET_CREATE_SET"] = "创建“设定%1”";
@@ -432,14 +504,19 @@ Blockly.Msg["VARIABLES_SET_TOOLTIP"] = "设置此变量,以使它和输入值
432
504
  Blockly.Msg["VARIABLE_ALREADY_EXISTS"] = "名字叫“%1”的变量已经存在了。";
433
505
  Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_ANOTHER_TYPE"] = "名字叫“%1”的变量已经有了另一个类型:“%2”。";
434
506
  Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_A_PARAMETER"] = "名为“%1”的变量已经作为参数存在于流程“%2”中。";
435
- Blockly.Msg["WINDOWS"] = "Windows"; // untranslated
436
- Blockly.Msg["WORKSPACE_ARIA_LABEL"] = "Blockly工作区";
507
+ Blockly.Msg["WINDOWS"] = "Windows";
437
508
  Blockly.Msg["WORKSPACE_COMMENT_DEFAULT_TEXT"] = "说点什么...";
438
509
  Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_MANY"] = "%1 stacks of blocks%2 in workspace."; // untranslated
439
510
  Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ONE"] = "One stack of blocks%2 in workspace."; // untranslated
440
511
  Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ZERO"] = "No blocks%2 in workspace."; // untranslated
441
512
  Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_MANY"] = " and %1 comments"; // untranslated
442
513
  Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_ONE"] = " and one comment"; // untranslated
514
+ Blockly.Msg["WORKSPACE_LABEL_1_STACK"] = "Blocks workspace. 1 stack of blocks"; // untranslated
515
+ Blockly.Msg["WORKSPACE_LABEL_FLYOUT_WORKSPACE"] = "%1 blocks"; // untranslated
516
+ Blockly.Msg["WORKSPACE_LABEL_MANY_STACKS"] = "Blocks workspace. %1 stacks of blocks"; // untranslated
517
+ Blockly.Msg["WORKSPACE_LABEL_MUTATOR_WORKSPACE"] = "Block editor workspace"; // untranslated
518
+ Blockly.Msg["ZOOM_IN"] = "Zoom in"; // untranslated
519
+ Blockly.Msg["ZOOM_OUT"] = "Zoom out"; // untranslated
443
520
  Blockly.Msg["CONTROLS_FOREACH_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
444
521
  Blockly.Msg["CONTROLS_FOR_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
445
522
  Blockly.Msg["CONTROLS_IF_ELSEIF_TITLE_ELSEIF"] = Blockly.Msg["CONTROLS_IF_MSG_ELSEIF"];
package/msg/zh-hans.mjs CHANGED
@@ -417,7 +417,6 @@ export const {
417
417
  PROCEDURES_IFRETURN_HELPURL,
418
418
  PROCEDURES_IFRETURN_WARNING,
419
419
  WORKSPACE_COMMENT_DEFAULT_TEXT,
420
- WORKSPACE_ARIA_LABEL,
421
420
  COLLAPSED_WARNINGS_WARNING,
422
421
  DIALOG_OK,
423
422
  DIALOG_CANCEL,
@@ -433,6 +432,20 @@ export const {
433
432
  OPTION_KEY,
434
433
  ALT_KEY,
435
434
  ENTER_KEY,
435
+ BACKSPACE_KEY,
436
+ DELETE_KEY,
437
+ ESCAPE,
438
+ TAB_KEY,
439
+ SHIFT_KEY,
440
+ CAPS_LOCK_KEY,
441
+ SPACE_KEY,
442
+ PAGE_UP_KEY,
443
+ PAGE_DOWN_KEY,
444
+ END_KEY,
445
+ HOME_KEY,
446
+ INSERT_KEY,
447
+ PAUSE_KEY,
448
+ CONTEXT_MENU_KEY,
436
449
  CUT_SHORTCUT,
437
450
  COPY_SHORTCUT,
438
451
  PASTE_SHORTCUT,
@@ -440,10 +453,35 @@ export const {
440
453
  SHORTCUTS_GENERAL,
441
454
  SHORTCUTS_EDITING,
442
455
  SHORTCUTS_CODE_NAVIGATION,
456
+ SHORTCUTS_ESCAPE,
457
+ SHORTCUTS_DELETE,
458
+ SHORTCUTS_START_MOVE,
459
+ SHORTCUTS_START_MOVE_STACK,
460
+ SHORTCUTS_MOVE_LEFT,
461
+ SHORTCUTS_MOVE_RIGHT,
462
+ SHORTCUTS_MOVE_UP,
463
+ SHORTCUTS_MOVE_DOWN,
464
+ SHORTCUTS_FINISH_MOVE,
465
+ SHORTCUTS_ABORT_MOVE,
466
+ SHORTCUTS_SHOW_CONTEXT_MENU,
467
+ SHORTCUTS_FOCUS_WORKSPACE,
468
+ SHORTCUTS_FOCUS_TOOLBOX,
469
+ SHORTCUTS_INFORMATION,
470
+ SHORTCUTS_DISCONNECT,
471
+ SHORTCUTS_NEXT_STACK,
472
+ SHORTCUTS_PREVIOUS_STACK,
473
+ SHORTCUTS_PERFORM_ACTION,
474
+ SHORTCUTS_DUPLICATE,
475
+ SHORTCUTS_CLEANUP,
476
+ SHORTCUTS_SHOW_TOOLTIP,
443
477
  KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT,
444
478
  KEYBOARD_NAV_CONSTRAINED_MOVE_HINT,
445
479
  KEYBOARD_NAV_COPIED_HINT,
446
480
  KEYBOARD_NAV_CUT_HINT,
481
+ WORKSPACE_LABEL_1_STACK,
482
+ WORKSPACE_LABEL_MANY_STACKS,
483
+ WORKSPACE_LABEL_MUTATOR_WORKSPACE,
484
+ WORKSPACE_LABEL_FLYOUT_WORKSPACE,
447
485
  WORKSPACE_CONTENTS_BLOCKS_MANY,
448
486
  WORKSPACE_CONTENTS_BLOCKS_ONE,
449
487
  WORKSPACE_CONTENTS_BLOCKS_ZERO,
@@ -451,4 +489,43 @@ export const {
451
489
  WORKSPACE_CONTENTS_COMMENTS_ONE,
452
490
  KEYBOARD_NAV_BLOCK_NAVIGATION_HINT,
453
491
  KEYBOARD_NAV_WORKSPACE_NAVIGATION_HINT,
492
+ BLOCK_LABEL_BEGIN_STACK,
493
+ BLOCK_LABEL_BEGIN_PREFIX,
494
+ BLOCK_LABEL_TOOLBOX_CATEGORY,
495
+ BLOCK_LABEL_DISABLED,
496
+ BLOCK_LABEL_COLLAPSED,
497
+ BLOCK_LABEL_REPLACEABLE,
498
+ BLOCK_LABEL_HAS_INPUT,
499
+ BLOCK_LABEL_HAS_INPUTS,
500
+ BLOCK_LABEL_STATEMENT,
501
+ BLOCK_LABEL_CONTAINER,
502
+ BLOCK_LABEL_VALUE,
503
+ BLOCK_LABEL_STACK_BLOCKS,
504
+ INPUT_LABEL_INDEX,
505
+ ANNOUNCE_MOVE_WORKSPACE,
506
+ ANNOUNCE_MOVE_BEFORE,
507
+ ANNOUNCE_MOVE_AFTER,
508
+ ANNOUNCE_MOVE_INSIDE,
509
+ ANNOUNCE_MOVE_AROUND,
510
+ ANNOUNCE_MOVE_TO,
511
+ ANNOUNCE_MOVE_CANCELED,
512
+ FIELD_LABEL_EMPTY,
513
+ ARIA_TYPE_FIELD_INPUT,
514
+ ARIA_TYPE_FIELD_TEXT_INPUT,
515
+ ARIA_TYPE_FIELD_NUMBER,
516
+ ARIA_TYPE_FIELD_DROPDOWN,
517
+ ARIA_TYPE_FIELD_IMAGE,
518
+ ARIA_TYPE_FIELD_CHECKBOX,
519
+ FIELD_LABEL_EDIT_PREFIX,
520
+ OPEN_TRASH,
521
+ ZOOM_IN,
522
+ ZOOM_OUT,
523
+ RESET_ZOOM,
524
+ FIELD_LABEL_OPTION_INDEX,
525
+ FIELD_LABEL_CHECKBOX_CHECKED,
526
+ FIELD_LABEL_CHECKBOX_UNCHECKED,
527
+ FIELD_LABEL_VARIABLE,
528
+ ARIA_LABEL_BUTTON,
529
+ ARIA_LABEL_HEADING,
530
+ BUBBLE_LABEL_DEFAULT,
454
531
  } = zh_hans;