@cp949/phyx-blockly 12.5.1-p1 → 13.4.0-patch.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.
Files changed (462) hide show
  1. package/README.md +7 -2
  2. package/blockly.min.js +2280 -2126
  3. package/blockly.mjs +13 -5
  4. package/blockly_compressed.js +1767 -1794
  5. package/blockly_compressed.js.map +1 -1
  6. package/blocks_compressed.js +151 -177
  7. package/blocks_compressed.js.map +1 -1
  8. package/core/block.d.ts +41 -19
  9. package/core/block_aria_composer.d.ts +158 -0
  10. package/core/block_svg.d.ts +88 -35
  11. package/core/blockly.d.ts +22 -22
  12. package/core/bubbles/bubble.d.ts +59 -5
  13. package/core/bubbles/mini_workspace_bubble.d.ts +11 -3
  14. package/core/bubbles/text_bubble.d.ts +7 -4
  15. package/core/bubbles/textinput_bubble.d.ts +11 -1
  16. package/core/clipboard/block_paster.d.ts +5 -5
  17. package/core/clipboard/registry.d.ts +1 -1
  18. package/core/clipboard/workspace_comment_paster.d.ts +4 -4
  19. package/core/clipboard.d.ts +1 -1
  20. package/core/comments/collapse_comment_bar_button.d.ts +7 -4
  21. package/core/comments/comment_bar_button.d.ts +15 -1
  22. package/core/comments/comment_editor.d.ts +21 -6
  23. package/core/comments/comment_view.d.ts +5 -5
  24. package/core/comments/delete_comment_bar_button.d.ts +7 -4
  25. package/core/comments/rendered_workspace_comment.d.ts +17 -12
  26. package/core/comments/workspace_comment.d.ts +2 -2
  27. package/core/common.d.ts +10 -3
  28. package/core/component_manager.d.ts +2 -0
  29. package/core/config.d.ts +37 -11
  30. package/core/connection_db.d.ts +40 -0
  31. package/core/contextmenu_registry.d.ts +12 -2
  32. package/core/css.d.ts +2 -1
  33. package/core/dragging/block_drag_strategy.d.ts +196 -19
  34. package/core/dragging/bubble_drag_strategy.d.ts +5 -4
  35. package/core/dragging/comment_drag_strategy.d.ts +4 -4
  36. package/core/dragging/dragger.d.ts +14 -14
  37. package/core/events/events_block_base.d.ts +2 -1
  38. package/core/events/events_block_change.d.ts +3 -2
  39. package/core/events/events_block_create.d.ts +3 -5
  40. package/core/events/events_block_delete.d.ts +3 -5
  41. package/core/events/events_block_drag.d.ts +2 -2
  42. package/core/events/events_block_field_intermediate_change.d.ts +3 -2
  43. package/core/events/events_block_move.d.ts +2 -1
  44. package/core/events/events_click.d.ts +2 -2
  45. package/core/events/events_comment_base.d.ts +2 -1
  46. package/core/events/events_comment_change.d.ts +2 -1
  47. package/core/events/events_comment_collapse.d.ts +3 -2
  48. package/core/events/events_comment_create.d.ts +2 -4
  49. package/core/events/events_comment_delete.d.ts +2 -4
  50. package/core/events/events_comment_drag.d.ts +2 -2
  51. package/core/events/events_comment_move.d.ts +2 -1
  52. package/core/events/events_comment_resize.d.ts +2 -1
  53. package/core/events/events_selected.d.ts +1 -1
  54. package/core/events/events_theme_change.d.ts +1 -1
  55. package/core/events/events_toolbox_item_select.d.ts +1 -1
  56. package/core/events/events_trashcan_open.d.ts +1 -1
  57. package/core/events/events_var_base.d.ts +2 -1
  58. package/core/events/events_var_create.d.ts +2 -1
  59. package/core/events/events_var_delete.d.ts +2 -1
  60. package/core/events/events_var_rename.d.ts +2 -1
  61. package/core/events/events_var_type_change.d.ts +2 -1
  62. package/core/events/events_viewport.d.ts +1 -1
  63. package/core/field.d.ts +120 -13
  64. package/core/field_checkbox.d.ts +31 -4
  65. package/core/field_dropdown.d.ts +68 -4
  66. package/core/field_image.d.ts +54 -2
  67. package/core/field_input.d.ts +38 -13
  68. package/core/field_label.d.ts +31 -2
  69. package/core/field_label_serializable.d.ts +3 -2
  70. package/core/field_number.d.ts +14 -3
  71. package/core/field_textinput.d.ts +15 -5
  72. package/core/field_variable.d.ts +16 -6
  73. package/core/flyout_base.d.ts +12 -126
  74. package/core/flyout_button.d.ts +11 -0
  75. package/core/flyout_horizontal.d.ts +0 -11
  76. package/core/flyout_metrics_manager.d.ts +2 -1
  77. package/core/flyout_vertical.d.ts +0 -11
  78. package/core/focus_manager.d.ts +52 -2
  79. package/core/generator.d.ts +2 -2
  80. package/core/gesture.d.ts +2 -21
  81. package/core/grid.d.ts +2 -2
  82. package/core/hints.d.ts +78 -0
  83. package/core/icons/comment_icon.d.ts +8 -0
  84. package/core/icons/icon.d.ts +20 -0
  85. package/core/icons/icon_types.d.ts +4 -4
  86. package/core/icons/mutator_icon.d.ts +8 -0
  87. package/core/icons/registry.d.ts +1 -1
  88. package/core/icons/warning_icon.d.ts +8 -0
  89. package/core/inputs/input.d.ts +58 -2
  90. package/core/insertion_marker.d.ts +54 -0
  91. package/core/insertion_marker_previewer.d.ts +20 -4
  92. package/core/interfaces/i_bounded_element.d.ts +7 -0
  93. package/core/interfaces/i_bubble.d.ts +3 -2
  94. package/core/interfaces/i_collapsible_toolbox_item.d.ts +5 -1
  95. package/core/interfaces/i_comment_icon.d.ts +6 -6
  96. package/core/interfaces/i_drag_target.d.ts +2 -2
  97. package/core/interfaces/i_draggable.d.ts +22 -17
  98. package/core/interfaces/i_dragger.d.ts +19 -10
  99. package/core/interfaces/i_flyout.d.ts +1 -31
  100. package/core/interfaces/i_flyout_inflater.d.ts +9 -0
  101. package/core/interfaces/i_focusable_node.d.ts +8 -0
  102. package/core/interfaces/i_focusable_tree.d.ts +8 -0
  103. package/core/interfaces/i_icon.d.ts +1 -1
  104. package/core/interfaces/i_json_block_definition.d.ts +113 -0
  105. package/core/interfaces/i_keyboard_accessible.d.ts +1 -1
  106. package/core/interfaces/i_navigation_policy.d.ts +12 -0
  107. package/core/interfaces/i_parameter_model.d.ts +2 -2
  108. package/core/interfaces/i_paster.d.ts +3 -3
  109. package/core/interfaces/i_procedure_block.d.ts +1 -1
  110. package/core/interfaces/i_procedure_map.d.ts +1 -1
  111. package/core/interfaces/i_procedure_model.d.ts +2 -2
  112. package/core/interfaces/i_selectable.d.ts +3 -3
  113. package/core/interfaces/i_selectable_toolbox_item.d.ts +3 -3
  114. package/core/interfaces/i_toolbox.d.ts +4 -0
  115. package/core/interfaces/i_toolbox_item.d.ts +6 -0
  116. package/core/interfaces/i_variable_backed_parameter_model.d.ts +1 -1
  117. package/core/keyboard_nav/keyboard_mover.d.ts +151 -0
  118. package/core/keyboard_nav/move_indicator.d.ts +35 -0
  119. package/core/keyboard_nav/{block_navigation_policy.d.ts → navigation_policies/block_navigation_policy.d.ts} +17 -25
  120. package/core/keyboard_nav/navigation_policies/bubble_navigation_policy.d.ts +63 -0
  121. package/core/keyboard_nav/{comment_bar_button_navigation_policy.d.ts → navigation_policies/comment_bar_button_navigation_policy.d.ts} +10 -3
  122. package/core/keyboard_nav/{comment_editor_navigation_policy.d.ts → navigation_policies/comment_editor_navigation_policy.d.ts} +10 -3
  123. package/core/keyboard_nav/{connection_navigation_policy.d.ts → navigation_policies/connection_navigation_policy.d.ts} +11 -16
  124. package/core/keyboard_nav/{field_navigation_policy.d.ts → navigation_policies/field_navigation_policy.d.ts} +10 -3
  125. package/core/keyboard_nav/{flyout_button_navigation_policy.d.ts → navigation_policies/flyout_button_navigation_policy.d.ts} +10 -3
  126. package/core/keyboard_nav/{flyout_separator_navigation_policy.d.ts → navigation_policies/flyout_separator_navigation_policy.d.ts} +9 -3
  127. package/core/keyboard_nav/{icon_navigation_policy.d.ts → navigation_policies/icon_navigation_policy.d.ts} +12 -5
  128. package/core/keyboard_nav/navigation_policies/toolbox_item_navigation_policy.d.ts +64 -0
  129. package/core/keyboard_nav/{workspace_comment_navigation_policy.d.ts → navigation_policies/workspace_comment_navigation_policy.d.ts} +14 -9
  130. package/core/keyboard_nav/{workspace_navigation_policy.d.ts → navigation_policies/workspace_navigation_policy.d.ts} +10 -3
  131. package/core/keyboard_nav/navigators/flyout_navigator.d.ts +63 -0
  132. package/core/keyboard_nav/navigators/navigator.d.ts +237 -0
  133. package/core/keyboard_nav/navigators/toolbox_navigator.d.ts +70 -0
  134. package/core/keyboard_navigation_controller.d.ts +12 -0
  135. package/core/layer_manager.d.ts +3 -3
  136. package/core/menu.d.ts +3 -0
  137. package/core/menuitem.d.ts +8 -1
  138. package/core/observable_procedure_map.d.ts +1 -1
  139. package/core/options.d.ts +4 -4
  140. package/core/procedures.d.ts +5 -8
  141. package/core/registry.d.ts +0 -2
  142. package/core/render_management.d.ts +1 -1
  143. package/core/rendered_connection.d.ts +33 -6
  144. package/core/renderers/common/constants.d.ts +4 -7
  145. package/core/renderers/common/i_path_object.d.ts +8 -0
  146. package/core/renderers/common/info.d.ts +1 -1
  147. package/core/renderers/common/path_object.d.ts +7 -16
  148. package/core/renderers/common/renderer.d.ts +3 -3
  149. package/core/renderers/zelos/constants.d.ts +1 -14
  150. package/core/renderers/zelos/drawer.d.ts +1 -1
  151. package/core/renderers/zelos/info.d.ts +10 -1
  152. package/core/renderers/zelos/measurables/bottom_row.d.ts +1 -1
  153. package/core/renderers/zelos/measurables/top_row.d.ts +1 -1
  154. package/core/renderers/zelos/path_object.d.ts +0 -3
  155. package/core/renderers/zelos/renderer.d.ts +8 -0
  156. package/core/serialization/procedures.d.ts +2 -2
  157. package/core/serialization/workspace_comments.d.ts +2 -2
  158. package/core/shortcut_items.d.ts +167 -2
  159. package/core/shortcut_registry.d.ts +9 -3
  160. package/core/theme.d.ts +0 -2
  161. package/core/toast.d.ts +2 -11
  162. package/core/toolbox/category.d.ts +11 -0
  163. package/core/toolbox/collapsible_category.d.ts +2 -0
  164. package/core/toolbox/separator.d.ts +4 -0
  165. package/core/toolbox/toolbox.d.ts +17 -33
  166. package/core/toolbox/toolbox_item.d.ts +4 -0
  167. package/core/tooltip.d.ts +13 -2
  168. package/core/trashcan.d.ts +16 -38
  169. package/core/utils/aria.d.ts +259 -28
  170. package/core/utils/dom.d.ts +1 -1
  171. package/core/utils/focusable_tree_traverser.d.ts +2 -2
  172. package/core/utils/shortcut_formatting.d.ts +22 -0
  173. package/core/utils/style.d.ts +14 -0
  174. package/core/utils/toolbox.d.ts +0 -8
  175. package/core/utils/useragent.d.ts +1 -0
  176. package/core/variable_map.d.ts +1 -41
  177. package/core/variable_model.d.ts +1 -7
  178. package/core/variables.d.ts +7 -8
  179. package/core/variables_dynamic.d.ts +4 -6
  180. package/core/workspace.d.ts +7 -85
  181. package/core/workspace_audio.d.ts +36 -7
  182. package/core/workspace_focus_target.d.ts +51 -0
  183. package/core/workspace_svg.d.ts +79 -60
  184. package/core/xml.d.ts +1 -1
  185. package/core/zoom_controls.d.ts +6 -59
  186. package/dart_compressed.js +123 -164
  187. package/dart_compressed.js.map +1 -1
  188. package/index.mjs +13 -5
  189. package/javascript_compressed.js +96 -147
  190. package/javascript_compressed.js.map +1 -1
  191. package/lua_compressed.js +142 -178
  192. package/lua_compressed.js.map +1 -1
  193. package/media/drop.mp3 +0 -0
  194. package/msg/ab.js +265 -7
  195. package/msg/ab.mjs +259 -1
  196. package/msg/ace.js +266 -8
  197. package/msg/ace.mjs +259 -1
  198. package/msg/af.js +265 -7
  199. package/msg/af.mjs +259 -1
  200. package/msg/am.js +266 -8
  201. package/msg/am.mjs +259 -1
  202. package/msg/ar.js +283 -25
  203. package/msg/ar.mjs +259 -1
  204. package/msg/ast.js +266 -8
  205. package/msg/ast.mjs +259 -1
  206. package/msg/az.js +266 -8
  207. package/msg/az.mjs +259 -1
  208. package/msg/ba.js +265 -7
  209. package/msg/ba.mjs +259 -1
  210. package/msg/bcc.js +265 -7
  211. package/msg/bcc.mjs +259 -1
  212. package/msg/be-tarask.js +297 -39
  213. package/msg/be-tarask.mjs +259 -1
  214. package/msg/be.js +266 -8
  215. package/msg/be.mjs +259 -1
  216. package/msg/bg.js +282 -24
  217. package/msg/bg.mjs +259 -1
  218. package/msg/bn.js +266 -8
  219. package/msg/bn.mjs +259 -1
  220. package/msg/br.js +266 -8
  221. package/msg/br.mjs +259 -1
  222. package/msg/bs.js +265 -7
  223. package/msg/bs.mjs +259 -1
  224. package/msg/ca.js +265 -7
  225. package/msg/ca.mjs +259 -1
  226. package/msg/ce.js +265 -7
  227. package/msg/ce.mjs +259 -1
  228. package/msg/cs.js +290 -32
  229. package/msg/cs.mjs +259 -1
  230. package/msg/csb.js +723 -0
  231. package/msg/csb.mjs +704 -0
  232. package/msg/da.js +284 -26
  233. package/msg/da.mjs +259 -1
  234. package/msg/de.js +265 -7
  235. package/msg/de.mjs +259 -1
  236. package/msg/diq.js +267 -9
  237. package/msg/diq.mjs +259 -1
  238. package/msg/dtp.js +265 -7
  239. package/msg/dtp.mjs +259 -1
  240. package/msg/dty.js +265 -7
  241. package/msg/dty.mjs +259 -1
  242. package/msg/ee.js +265 -7
  243. package/msg/ee.mjs +259 -1
  244. package/msg/el.js +290 -32
  245. package/msg/el.mjs +259 -1
  246. package/msg/en-gb.js +266 -8
  247. package/msg/en-gb.mjs +259 -1
  248. package/msg/en.js +266 -8
  249. package/msg/en.mjs +259 -1
  250. package/msg/eo.js +265 -7
  251. package/msg/eo.mjs +259 -1
  252. package/msg/es.js +282 -24
  253. package/msg/es.mjs +259 -1
  254. package/msg/et.js +265 -7
  255. package/msg/et.mjs +259 -1
  256. package/msg/eu.js +265 -7
  257. package/msg/eu.mjs +259 -1
  258. package/msg/fa.js +266 -8
  259. package/msg/fa.mjs +259 -1
  260. package/msg/fi.js +284 -26
  261. package/msg/fi.mjs +259 -1
  262. package/msg/fo.js +265 -7
  263. package/msg/fo.mjs +259 -1
  264. package/msg/fr.js +283 -25
  265. package/msg/fr.mjs +259 -1
  266. package/msg/frr.js +266 -8
  267. package/msg/frr.mjs +259 -1
  268. package/msg/ga.js +723 -0
  269. package/msg/{cdo.mjs → ga.mjs} +261 -3
  270. package/msg/gl.js +290 -32
  271. package/msg/gl.mjs +259 -1
  272. package/msg/gn.js +266 -8
  273. package/msg/gn.mjs +259 -1
  274. package/msg/gor.js +265 -7
  275. package/msg/gor.mjs +259 -1
  276. package/msg/ha.js +265 -7
  277. package/msg/ha.mjs +259 -1
  278. package/msg/he.js +313 -55
  279. package/msg/he.mjs +259 -1
  280. package/msg/hi.js +265 -7
  281. package/msg/hi.mjs +259 -1
  282. package/msg/hr.js +265 -7
  283. package/msg/hr.mjs +259 -1
  284. package/msg/hrx.js +265 -7
  285. package/msg/hrx.mjs +259 -1
  286. package/msg/hsb.js +265 -7
  287. package/msg/hsb.mjs +259 -1
  288. package/msg/hu.js +270 -12
  289. package/msg/hu.mjs +259 -1
  290. package/msg/hy.js +265 -7
  291. package/msg/hy.mjs +259 -1
  292. package/msg/ia.js +304 -46
  293. package/msg/ia.mjs +259 -1
  294. package/msg/id.js +489 -231
  295. package/msg/id.mjs +259 -1
  296. package/msg/ig.js +270 -12
  297. package/msg/ig.mjs +259 -1
  298. package/msg/inh.js +265 -7
  299. package/msg/inh.mjs +259 -1
  300. package/msg/is.js +265 -7
  301. package/msg/is.mjs +259 -1
  302. package/msg/it.js +289 -31
  303. package/msg/it.mjs +259 -1
  304. package/msg/ja.js +314 -56
  305. package/msg/ja.mjs +259 -1
  306. package/msg/ka.js +267 -9
  307. package/msg/ka.mjs +259 -1
  308. package/msg/kab.js +273 -15
  309. package/msg/kab.mjs +259 -1
  310. package/msg/kbd-cyrl.js +266 -8
  311. package/msg/kbd-cyrl.mjs +259 -1
  312. package/msg/km.js +265 -7
  313. package/msg/km.mjs +259 -1
  314. package/msg/kn.js +273 -15
  315. package/msg/kn.mjs +259 -1
  316. package/msg/ko.js +398 -140
  317. package/msg/ko.mjs +259 -1
  318. package/msg/krc.js +723 -0
  319. package/msg/krc.mjs +704 -0
  320. package/msg/ksh.js +266 -8
  321. package/msg/ksh.mjs +259 -1
  322. package/msg/ku-latn.js +266 -8
  323. package/msg/ku-latn.mjs +259 -1
  324. package/msg/ky.js +325 -67
  325. package/msg/ky.mjs +259 -1
  326. package/msg/la.js +266 -8
  327. package/msg/la.mjs +259 -1
  328. package/msg/lb.js +279 -21
  329. package/msg/lb.mjs +259 -1
  330. package/msg/lki.js +265 -7
  331. package/msg/lki.mjs +259 -1
  332. package/msg/lo.js +265 -7
  333. package/msg/lo.mjs +259 -1
  334. package/msg/lrc.js +265 -7
  335. package/msg/lrc.mjs +259 -1
  336. package/msg/lt.js +266 -8
  337. package/msg/lt.mjs +259 -1
  338. package/msg/lv.js +276 -18
  339. package/msg/lv.mjs +259 -1
  340. package/msg/mg.js +265 -7
  341. package/msg/mg.mjs +259 -1
  342. package/msg/mk.js +265 -7
  343. package/msg/mk.mjs +259 -1
  344. package/msg/ml.js +265 -7
  345. package/msg/ml.mjs +259 -1
  346. package/msg/mnw.js +265 -7
  347. package/msg/mnw.mjs +259 -1
  348. package/msg/ms.js +274 -16
  349. package/msg/ms.mjs +259 -1
  350. package/msg/mt.js +723 -0
  351. package/msg/{hak.mjs → mt.mjs} +261 -3
  352. package/msg/my.js +265 -7
  353. package/msg/my.mjs +259 -1
  354. package/msg/mzn.js +266 -8
  355. package/msg/mzn.mjs +259 -1
  356. package/msg/nb.js +265 -7
  357. package/msg/nb.mjs +259 -1
  358. package/msg/ne.js +275 -17
  359. package/msg/ne.mjs +259 -1
  360. package/msg/nl.js +336 -78
  361. package/msg/nl.mjs +259 -1
  362. package/msg/oc.js +265 -7
  363. package/msg/oc.mjs +259 -1
  364. package/msg/olo.js +266 -8
  365. package/msg/olo.mjs +259 -1
  366. package/msg/pa.js +273 -15
  367. package/msg/pa.mjs +259 -1
  368. package/msg/pl.js +282 -24
  369. package/msg/pl.mjs +259 -1
  370. package/msg/pms.js +283 -25
  371. package/msg/pms.mjs +259 -1
  372. package/msg/ps.js +296 -38
  373. package/msg/ps.mjs +259 -1
  374. package/msg/pt-br.js +282 -24
  375. package/msg/pt-br.mjs +259 -1
  376. package/msg/pt.js +282 -24
  377. package/msg/pt.mjs +259 -1
  378. package/msg/ro.js +299 -41
  379. package/msg/ro.mjs +259 -1
  380. package/msg/ru.js +283 -25
  381. package/msg/ru.mjs +259 -1
  382. package/msg/sc.js +265 -7
  383. package/msg/sc.mjs +259 -1
  384. package/msg/sco.js +266 -8
  385. package/msg/sco.mjs +259 -1
  386. package/msg/sd.js +265 -7
  387. package/msg/sd.mjs +259 -1
  388. package/msg/shn.js +265 -7
  389. package/msg/shn.mjs +259 -1
  390. package/msg/si.js +266 -8
  391. package/msg/si.mjs +259 -1
  392. package/msg/sk.js +283 -25
  393. package/msg/sk.mjs +259 -1
  394. package/msg/skr-arab.js +268 -10
  395. package/msg/skr-arab.mjs +259 -1
  396. package/msg/sl.js +283 -25
  397. package/msg/sl.mjs +259 -1
  398. package/msg/smn.js +267 -9
  399. package/msg/smn.mjs +259 -1
  400. package/msg/sq.js +273 -15
  401. package/msg/sq.mjs +259 -1
  402. package/msg/sr-latn.js +265 -7
  403. package/msg/sr-latn.mjs +259 -1
  404. package/msg/sr.js +266 -8
  405. package/msg/sr.mjs +259 -1
  406. package/msg/sv.js +282 -24
  407. package/msg/sv.mjs +259 -1
  408. package/msg/sw.js +266 -8
  409. package/msg/sw.mjs +259 -1
  410. package/msg/ta.js +283 -25
  411. package/msg/ta.mjs +259 -1
  412. package/msg/tcy.js +328 -70
  413. package/msg/tcy.mjs +259 -1
  414. package/msg/tdd.js +265 -7
  415. package/msg/tdd.mjs +259 -1
  416. package/msg/te.js +265 -7
  417. package/msg/te.mjs +259 -1
  418. package/msg/th.js +266 -8
  419. package/msg/th.mjs +259 -1
  420. package/msg/ti.js +265 -7
  421. package/msg/ti.mjs +259 -1
  422. package/msg/tl.js +265 -7
  423. package/msg/tl.mjs +259 -1
  424. package/msg/tlh.js +265 -7
  425. package/msg/tlh.mjs +259 -1
  426. package/msg/tr.js +284 -26
  427. package/msg/tr.mjs +259 -1
  428. package/msg/ug-arab.js +265 -7
  429. package/msg/ug-arab.mjs +259 -1
  430. package/msg/uk.js +291 -33
  431. package/msg/uk.mjs +259 -1
  432. package/msg/ur.js +265 -7
  433. package/msg/ur.mjs +259 -1
  434. package/msg/uz.js +298 -40
  435. package/msg/uz.mjs +259 -1
  436. package/msg/vi.js +284 -26
  437. package/msg/vi.mjs +259 -1
  438. package/msg/xmf.js +265 -7
  439. package/msg/xmf.mjs +259 -1
  440. package/msg/yo.js +265 -7
  441. package/msg/yo.mjs +259 -1
  442. package/msg/zgh.js +265 -7
  443. package/msg/zgh.mjs +259 -1
  444. package/msg/zh-hans.js +283 -25
  445. package/msg/zh-hans.mjs +259 -1
  446. package/msg/zh-hant.js +283 -25
  447. package/msg/zh-hant.mjs +259 -1
  448. package/package.json +53 -57
  449. package/php_compressed.js +150 -192
  450. package/php_compressed.js.map +1 -1
  451. package/python_compressed.js +85 -126
  452. package/python_compressed.js.map +1 -1
  453. package/core/flyout_navigator.d.ts +0 -11
  454. package/core/keyboard_nav/block_comment_navigation_policy.d.ts +0 -56
  455. package/core/keyboard_nav/flyout_navigation_policy.d.ts +0 -65
  456. package/core/keyboard_nav/line_cursor.d.ts +0 -187
  457. package/core/keyboard_nav/marker.d.ts +0 -53
  458. package/core/marker_manager.d.ts +0 -72
  459. package/core/navigator.d.ts +0 -65
  460. package/media/sprites.png +0 -0
  461. package/msg/cdo.js +0 -465
  462. package/msg/hak.js +0 -465
package/msg/zh-hans.js CHANGED
@@ -18,12 +18,72 @@
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_CANT_SCROLL_FURTHER"] = "Can't scroll further."; // untranslated
23
+ Blockly.Msg["ANNOUNCE_MOVE_AFTER"] = "Moving %1 after %2."; // untranslated
24
+ Blockly.Msg["ANNOUNCE_MOVE_AROUND"] = "Moving %1 around %2."; // untranslated
25
+ Blockly.Msg["ANNOUNCE_MOVE_BEFORE"] = "Moving %1 before %2."; // untranslated
26
+ Blockly.Msg["ANNOUNCE_MOVE_CANCELED"] = "Canceled movement."; // untranslated
27
+ Blockly.Msg["ANNOUNCE_MOVE_INSIDE"] = "Moving %1 inside %2."; // untranslated
28
+ Blockly.Msg["ANNOUNCE_MOVE_OF"] = "%1 of %2"; // untranslated
29
+ Blockly.Msg["ANNOUNCE_MOVE_TO"] = "Moving %1 to %2."; // untranslated
30
+ Blockly.Msg["ANNOUNCE_MOVE_WORKSPACE"] = "Moving %1 on workspace."; // untranslated
31
+ Blockly.Msg["ANNOUNCE_SCROLLED_DOWN"] = "Scrolled down."; // untranslated
32
+ Blockly.Msg["ANNOUNCE_SCROLLED_LEFT"] = "Scrolled left."; // untranslated
33
+ Blockly.Msg["ANNOUNCE_SCROLLED_RIGHT"] = "Scrolled right."; // untranslated
34
+ Blockly.Msg["ANNOUNCE_SCROLLED_UP"] = "Scrolled up."; // untranslated
35
+ Blockly.Msg["ARIA_LABEL_ADD_ELSE_IF"] = "添加否则如果";
36
+ Blockly.Msg["ARIA_LABEL_ADD_INPUT"] = "添加输入";
37
+ Blockly.Msg["ARIA_LABEL_ADD_LIST_ITEM"] = "添加列表项目";
38
+ Blockly.Msg["ARIA_LABEL_ADD_TEXT"] = "添加文字";
39
+ Blockly.Msg["ARIA_LABEL_BUTTON"] = "button"; // untranslated
40
+ Blockly.Msg["ARIA_LABEL_COMMENT"] = "注释";
41
+ Blockly.Msg["ARIA_LABEL_COMMENT_COLLAPSE"] = "收起注释";
42
+ Blockly.Msg["ARIA_LABEL_COMMENT_EXPAND"] = "展开注释";
43
+ Blockly.Msg["ARIA_LABEL_FIELD_ANGLE"] = "%1度";
44
+ Blockly.Msg["ARIA_LABEL_HEADING"] = "heading"; // untranslated
45
+ Blockly.Msg["ARIA_LABEL_REMOVE_ELSE_IF"] = "移除否则如果";
46
+ Blockly.Msg["ARIA_LABEL_REMOVE_INPUT"] = "删除输入";
47
+ Blockly.Msg["ARIA_LABEL_REMOVE_LIST_ITEM"] = "移除列表中的项目";
48
+ Blockly.Msg["ARIA_LABEL_REMOVE_TEXT"] = "删除文字";
49
+ Blockly.Msg["ARIA_LABEL_TRASH_EMPTY"] = "垃圾桶,当前为空";
50
+ Blockly.Msg["ARIA_TYPE_FIELD_ANGLE"] = "角度";
51
+ Blockly.Msg["ARIA_TYPE_FIELD_BITMAP"] = "位图";
52
+ Blockly.Msg["ARIA_TYPE_FIELD_CHECKBOX"] = "checkbox"; // untranslated
53
+ Blockly.Msg["ARIA_TYPE_FIELD_COLOUR"] = "颜色";
54
+ Blockly.Msg["ARIA_TYPE_FIELD_DATE"] = "日期";
55
+ Blockly.Msg["ARIA_TYPE_FIELD_DROPDOWN"] = "dropdown"; // untranslated
56
+ Blockly.Msg["ARIA_TYPE_FIELD_GRID"] = "方格下拉框";
57
+ Blockly.Msg["ARIA_TYPE_FIELD_IMAGE"] = "image"; // untranslated
58
+ Blockly.Msg["ARIA_TYPE_FIELD_INPUT"] = "input"; // untranslated
59
+ Blockly.Msg["ARIA_TYPE_FIELD_NUMBER"] = "number"; // untranslated
60
+ Blockly.Msg["ARIA_TYPE_FIELD_TEXT_INPUT"] = "text"; // untranslated
61
+ Blockly.Msg["ARIA_TYPE_FIELD_TEXT_INPUT_ARGUMENT"] = "input name"; // untranslated
62
+ Blockly.Msg["ARIA_TYPE_FIELD_TEXT_INPUT_PROCEDURE"] = "function name"; // untranslated
63
+ Blockly.Msg["BACKSPACE_KEY"] = "退格";
64
+ Blockly.Msg["BLOCK_LABEL_BEGIN_PREFIX"] = "%1开始";
65
+ Blockly.Msg["BLOCK_LABEL_BEGIN_STACK"] = "块堆开始";
66
+ Blockly.Msg["BLOCK_LABEL_COLLAPSED"] = "已折叠";
67
+ Blockly.Msg["BLOCK_LABEL_CONTAINER"] = "容器";
68
+ Blockly.Msg["BLOCK_LABEL_DISABLED"] = "已禁用";
69
+ Blockly.Msg["BLOCK_LABEL_HAS_BRANCHES"] = "有%1个分支";
70
+ Blockly.Msg["BLOCK_LABEL_HAS_INPUT"] = "有输入";
71
+ Blockly.Msg["BLOCK_LABEL_HAS_INPUTS"] = "有输入";
72
+ Blockly.Msg["BLOCK_LABEL_REPLACEABLE"] = "可替换";
73
+ Blockly.Msg["BLOCK_LABEL_STACK_BLOCKS"] = "%1块堆";
74
+ Blockly.Msg["BLOCK_LABEL_STATEMENT"] = "语句";
75
+ Blockly.Msg["BLOCK_LABEL_TOOLBOX_CATEGORY"] = "%1分类";
76
+ Blockly.Msg["BLOCK_LABEL_VALUE"] = "值";
77
+ Blockly.Msg["BUBBLE_LABEL_COMMENT"] = "注释:%1";
78
+ Blockly.Msg["BUBBLE_LABEL_DEFAULT"] = "Bubble"; // untranslated
79
+ Blockly.Msg["BUBBLE_LABEL_WARNING"] = "警告:%1";
22
80
  Blockly.Msg["CANNOT_DELETE_VARIABLE_PROCEDURE"] = "不能删除变量“%1”,因为它是函数“%2”定义的一部分";
81
+ Blockly.Msg["CAPS_LOCK_KEY"] = "Caps Lock"; // untranslated
23
82
  Blockly.Msg["CHANGE_VALUE_TITLE"] = "更改值:";
24
- Blockly.Msg["CHROME_OS"] = "ChromeOS"; // untranslated
83
+ Blockly.Msg["CHROME_OS"] = "ChromeOS";
25
84
  Blockly.Msg["CLEAN_UP"] = "整理块";
26
- Blockly.Msg["CLOSE"] = "Close"; // untranslated
85
+ Blockly.Msg["CLOSE"] = "关闭";
86
+ Blockly.Msg["CLOSE_BACKPACK"] = "关闭背包";
27
87
  Blockly.Msg["COLLAPSED_WARNINGS_WARNING"] = "已收起的信息块内包含警告。";
28
88
  Blockly.Msg["COLLAPSE_ALL"] = "折叠块";
29
89
  Blockly.Msg["COLLAPSE_BLOCK"] = "折叠块";
@@ -44,7 +104,8 @@ Blockly.Msg["COLOUR_RGB_HELPURL"] = "https://www.december.com/html/spec/colorper
44
104
  Blockly.Msg["COLOUR_RGB_RED"] = "红色";
45
105
  Blockly.Msg["COLOUR_RGB_TITLE"] = "颜色";
46
106
  Blockly.Msg["COLOUR_RGB_TOOLTIP"] = "通过指定红色、绿色和蓝色的量创建一种颜色。所有的值必须在0和100之间。";
47
- Blockly.Msg["COMMAND_KEY"] = "⌘ Command"; // untranslated
107
+ Blockly.Msg["COMMAND_KEY"] = "Command键";
108
+ Blockly.Msg["CONTEXT_MENU_KEY"] = "≣ Menu"; // untranslated
48
109
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
49
110
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK"] = "跳出循环";
50
111
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE"] = "继续下一轮循环";
@@ -77,11 +138,15 @@ Blockly.Msg["CONTROLS_WHILEUNTIL_OPERATOR_UNTIL"] = "重复直到条件满足";
77
138
  Blockly.Msg["CONTROLS_WHILEUNTIL_OPERATOR_WHILE"] = "当条件满足时重复";
78
139
  Blockly.Msg["CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL"] = "只要值为假,就一直循环执行一些语句。";
79
140
  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
141
+ Blockly.Msg["CONTROL_KEY"] = "Ctrl键";
142
+ Blockly.Msg["COPY_ALL_TO_BACKPACK"] = "将所有块复制到背包";
143
+ Blockly.Msg["COPY_SHORTCUT"] = "复制";
144
+ Blockly.Msg["COPY_TO_BACKPACK"] = "复制到背包";
145
+ Blockly.Msg["CURRENT_BLOCK_ANNOUNCEMENT"] = "当前块:%1";
146
+ Blockly.Msg["CUT_SHORTCUT"] = "剪切";
83
147
  Blockly.Msg["DELETE_ALL_BLOCKS"] = "删除所有 %1 个块吗?";
84
148
  Blockly.Msg["DELETE_BLOCK"] = "删除块";
149
+ Blockly.Msg["DELETE_KEY"] = "Delete"; // untranslated
85
150
  Blockly.Msg["DELETE_VARIABLE"] = "删除变量“%1”";
86
151
  Blockly.Msg["DELETE_VARIABLE_CONFIRMATION"] = "要删除对变量“%2”的%1个引用吗?";
87
152
  Blockly.Msg["DELETE_X_BLOCKS"] = "删除 %1 个块";
@@ -90,19 +155,100 @@ Blockly.Msg["DIALOG_OK"] = "确认";
90
155
  Blockly.Msg["DISABLE_BLOCK"] = "禁用块";
91
156
  Blockly.Msg["DUPLICATE_BLOCK"] = "复制";
92
157
  Blockly.Msg["DUPLICATE_COMMENT"] = "复制注释";
93
- Blockly.Msg["EDIT_BLOCK_CONTENTS"] = "Edit Block contents"; // untranslated
158
+ Blockly.Msg["EDIT_BLOCK_CONTENTS"] = "编辑块内容";
159
+ Blockly.Msg["EMPTY_BACKPACK"] = "清空背包";
94
160
  Blockly.Msg["ENABLE_BLOCK"] = "启用块";
161
+ Blockly.Msg["END_KEY"] = "End"; // untranslated
162
+ Blockly.Msg["ENTER_KEY"] = "Enter"; // untranslated
163
+ Blockly.Msg["ESCAPE"] = "Esc";
95
164
  Blockly.Msg["EXPAND_ALL"] = "展开块";
96
165
  Blockly.Msg["EXPAND_BLOCK"] = "展开块";
97
166
  Blockly.Msg["EXTERNAL_INPUTS"] = "外部输入";
167
+ Blockly.Msg["FIELD_BITMAP_ARIA_VALUE"] = "%1乘%2,%3 个像素开启";
168
+ Blockly.Msg["FIELD_BITMAP_BUTTON_LABEL_CLEAR"] = "清空";
169
+ Blockly.Msg["FIELD_BITMAP_BUTTON_LABEL_RANDOMIZE"] = "随机";
170
+ Blockly.Msg["FIELD_BITMAP_PIXEL_LABEL"] = "%1,第%2行,第%3列";
171
+ Blockly.Msg["FIELD_BITMAP_PIXEL_OFF"] = "关";
172
+ Blockly.Msg["FIELD_BITMAP_PIXEL_ON"] = "开";
173
+ Blockly.Msg["FIELD_LABEL_CHECKBOX_CHECKED"] = "Checked"; // untranslated
174
+ Blockly.Msg["FIELD_LABEL_CHECKBOX_UNCHECKED"] = "Not checked"; // untranslated
175
+ Blockly.Msg["FIELD_LABEL_EDIT_PREFIX"] = "Edit %1"; // untranslated
176
+ Blockly.Msg["FIELD_LABEL_EMPTY"] = "empty"; // untranslated
177
+ Blockly.Msg["FIELD_LABEL_OPTION_INDEX"] = "Option %1"; // untranslated
178
+ Blockly.Msg["FIELD_LABEL_VARIABLE"] = "Variable '%1'"; // untranslated
179
+ Blockly.Msg["FIELD_MULTILINEINPUT_FINISH_EDITING"] = "结束编辑";
180
+ Blockly.Msg["FIELD_MULTILINEINPUT_NEW_LINE"] = "换行";
98
181
  Blockly.Msg["HELP"] = "帮助";
99
- Blockly.Msg["HELP_PROMPT"] = "Press %1 for help on keyboard controls"; // untranslated
182
+ Blockly.Msg["HELP_PROMPT"] = "按 %1 来获取有关键盘控制的帮助。";
183
+ Blockly.Msg["HOME_KEY"] = "Home"; // untranslated
184
+ Blockly.Msg["ICON_LABEL_COMMENT_CLOSED"] = "打开注释";
185
+ Blockly.Msg["ICON_LABEL_COMMENT_OPEN"] = "关闭注释";
186
+ Blockly.Msg["ICON_LABEL_DEFAULT"] = "图标";
187
+ Blockly.Msg["ICON_LABEL_MUTATOR_CLOSED"] = "编辑这个块";
188
+ Blockly.Msg["ICON_LABEL_MUTATOR_OPEN"] = "关闭块编辑器";
189
+ Blockly.Msg["ICON_LABEL_WARNING_CLOSED"] = "打开警告";
190
+ Blockly.Msg["ICON_LABEL_WARNING_OPEN"] = "关闭警告";
100
191
  Blockly.Msg["INLINE_INPUTS"] = "单行输入";
101
- Blockly.Msg["KEYBOARD_NAV_CONSTRAINED_MOVE_HINT"] = "Use the arrow keys to move, then %1 to accept the position"; // untranslated
102
- Blockly.Msg["KEYBOARD_NAV_COPIED_HINT"] = "Copied. Press %1 to paste."; // untranslated
103
- Blockly.Msg["KEYBOARD_NAV_CUT_HINT"] = "Cut. Press %1 to paste."; // untranslated
104
- Blockly.Msg["KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT"] = "Hold %1 and use arrow keys to move freely, then %2 to accept the position"; // untranslated
105
- Blockly.Msg["LINUX"] = "Linux"; // untranslated
192
+ Blockly.Msg["INPUT_LABEL_CONDITION"] = "条件";
193
+ Blockly.Msg["INPUT_LABEL_CONDITION_A"] = "第一个条件";
194
+ Blockly.Msg["INPUT_LABEL_CONDITION_B"] = "第二个条件";
195
+ Blockly.Msg["INPUT_LABEL_EMPTY"] = "空";
196
+ Blockly.Msg["INPUT_LABEL_END_STATEMENT"] = "%1结束";
197
+ Blockly.Msg["INPUT_LABEL_INDEX"] = "第%1个输入";
198
+ Blockly.Msg["INPUT_LABEL_LISTS_CREATE_WITH_ITEM"] = "value %1"; // untranslated
199
+ Blockly.Msg["INPUT_LABEL_LISTS_DELIMITER"] = "delimiter"; // untranslated
200
+ Blockly.Msg["INPUT_LABEL_LISTS_END_POSITION"] = "end position"; // untranslated
201
+ Blockly.Msg["INPUT_LABEL_LISTS_LIST_FROM_TEXT"] = "text to split"; // untranslated
202
+ Blockly.Msg["INPUT_LABEL_LISTS_POSITION"] = "position within list"; // untranslated
203
+ Blockly.Msg["INPUT_LABEL_LISTS_REPEAT_ITEM"] = "value to repeat"; // untranslated
204
+ Blockly.Msg["INPUT_LABEL_LISTS_REPEAT_NUM"] = "number of times to repeat"; // untranslated
205
+ Blockly.Msg["INPUT_LABEL_LISTS_START_POSITION"] = "start position"; // untranslated
206
+ Blockly.Msg["INPUT_LABEL_LISTS_TEXT_FROM_LIST"] = "list to join"; // untranslated
207
+ Blockly.Msg["INPUT_LABEL_LISTS_TO_CHANGE"] = "list to change"; // untranslated
208
+ Blockly.Msg["INPUT_LABEL_LISTS_TO_CHECK"] = "list to check"; // untranslated
209
+ Blockly.Msg["INPUT_LABEL_LISTS_VALUE_TO_SET"] = "value to set"; // untranslated
210
+ Blockly.Msg["INPUT_LABEL_LOOP_BY"] = "increment"; // untranslated
211
+ Blockly.Msg["INPUT_LABEL_LOOP_FROM"] = "starting number"; // untranslated
212
+ Blockly.Msg["INPUT_LABEL_LOOP_LIST"] = "list to iterate over"; // untranslated
213
+ Blockly.Msg["INPUT_LABEL_LOOP_TIMES"] = "number of times to repeat"; // untranslated
214
+ Blockly.Msg["INPUT_LABEL_LOOP_TO"] = "ending number"; // untranslated
215
+ Blockly.Msg["INPUT_LABEL_MATH_CHANGE_BY"] = "更改量";
216
+ Blockly.Msg["INPUT_LABEL_MATH_CONSTRAIN_VALUE"] = "要约束的数字";
217
+ Blockly.Msg["INPUT_LABEL_MATH_DIVIDEND"] = "被除数";
218
+ Blockly.Msg["INPUT_LABEL_MATH_DIVISOR"] = "除数";
219
+ Blockly.Msg["INPUT_LABEL_NUMBER"] = "数字";
220
+ Blockly.Msg["INPUT_LABEL_NUMBER_A"] = "第一个数字";
221
+ Blockly.Msg["INPUT_LABEL_NUMBER_ATAN2_X"] = "X坐标";
222
+ Blockly.Msg["INPUT_LABEL_NUMBER_ATAN2_Y"] = "Y坐标";
223
+ Blockly.Msg["INPUT_LABEL_NUMBER_B"] = "第二个数字";
224
+ Blockly.Msg["INPUT_LABEL_NUMBER_LIST"] = "数字列表";
225
+ Blockly.Msg["INPUT_LABEL_NUMBER_MAX"] = "最大";
226
+ Blockly.Msg["INPUT_LABEL_NUMBER_MIN"] = "最小";
227
+ Blockly.Msg["INPUT_LABEL_NUMBER_TO_CHECK"] = "要检查的数字";
228
+ Blockly.Msg["INPUT_LABEL_STATEMENT"] = "语句位置";
229
+ Blockly.Msg["INPUT_LABEL_TEXT_APPEND"] = "value to append"; // untranslated
230
+ Blockly.Msg["INPUT_LABEL_TEXT_END_POSITION"] = "end position"; // untranslated
231
+ Blockly.Msg["INPUT_LABEL_TEXT_JOIN_ITEM"] = "value %1"; // untranslated
232
+ Blockly.Msg["INPUT_LABEL_TEXT_POSITION"] = "letter position"; // untranslated
233
+ Blockly.Msg["INPUT_LABEL_TEXT_PROMPT_MESSAGE"] = "message"; // untranslated
234
+ Blockly.Msg["INPUT_LABEL_TEXT_START_POSITION"] = "start position"; // untranslated
235
+ Blockly.Msg["INPUT_LABEL_TEXT_TO_CHANGE"] = "text to change"; // untranslated
236
+ Blockly.Msg["INPUT_LABEL_TEXT_TO_CHECK"] = "text to check"; // untranslated
237
+ Blockly.Msg["INPUT_LABEL_TEXT_TO_FIND"] = "text to find"; // untranslated
238
+ Blockly.Msg["INPUT_LABEL_TEXT_TO_REPLACE"] = "text to replace"; // untranslated
239
+ Blockly.Msg["INPUT_LABEL_VALUE"] = "值位置";
240
+ Blockly.Msg["INPUT_LABEL_VALUE_A"] = "第一个值";
241
+ Blockly.Msg["INPUT_LABEL_VALUE_B"] = "第二个值";
242
+ Blockly.Msg["INPUT_LABEL_VARIABLES_SET"] = "value to set"; // untranslated
243
+ Blockly.Msg["INSERT_KEY"] = "Insert"; // untranslated
244
+ Blockly.Msg["KEYBOARD_NAV_BLOCK_NAVIGATION_HINT"] = "使用%1导航到块内部。";
245
+ Blockly.Msg["KEYBOARD_NAV_CONSTRAINED_MOVE_HINT"] = "使用箭头键移动,然后按%1接受位置。";
246
+ Blockly.Msg["KEYBOARD_NAV_COPIED_HINT"] = "已拷貝。按下 %1 貼上。";
247
+ Blockly.Msg["KEYBOARD_NAV_CUT_HINT"] = "已剪下。按下 %1 貼上。";
248
+ Blockly.Msg["KEYBOARD_NAV_FLYOUT_LABEL_HINT"] = "使用方向键导航到一个块,或按%1跳转到下一个标题。";
249
+ Blockly.Msg["KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT"] = "按住 %1 并使用箭头键来自由一点,然后按下 %2 接受位置。";
250
+ Blockly.Msg["KEYBOARD_NAV_WORKSPACE_NAVIGATION_HINT"] = "使用方向键导航。";
251
+ Blockly.Msg["LINUX"] = "Linux";
106
252
  Blockly.Msg["LISTS_CREATE_EMPTY_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#create-empty-list"; // untranslated
107
253
  Blockly.Msg["LISTS_CREATE_EMPTY_TITLE"] = "创建空列表";
108
254
  Blockly.Msg["LISTS_CREATE_EMPTY_TOOLTIP"] = "返回一个列表,长度为 0,不包含任何数据记录";
@@ -192,7 +338,13 @@ Blockly.Msg["LOGIC_BOOLEAN_FALSE"] = "false";
192
338
  Blockly.Msg["LOGIC_BOOLEAN_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Logic#values"; // untranslated
193
339
  Blockly.Msg["LOGIC_BOOLEAN_TOOLTIP"] = "返回 true 或 false。";
194
340
  Blockly.Msg["LOGIC_BOOLEAN_TRUE"] = "true";
341
+ Blockly.Msg["LOGIC_COMPARE_EQ_ARIA"] = "等于";
342
+ Blockly.Msg["LOGIC_COMPARE_GTE_ARIA"] = "大于等于";
343
+ Blockly.Msg["LOGIC_COMPARE_GT_ARIA"] = "大于";
195
344
  Blockly.Msg["LOGIC_COMPARE_HELPURL"] = "https://zh.wikipedia.org/wiki/不等";
345
+ Blockly.Msg["LOGIC_COMPARE_LTE_ARIA"] = "小于等于";
346
+ Blockly.Msg["LOGIC_COMPARE_LT_ARIA"] = "小于";
347
+ Blockly.Msg["LOGIC_COMPARE_NEQ_ARIA"] = "不等于";
196
348
  Blockly.Msg["LOGIC_COMPARE_TOOLTIP_EQ"] = "如果两个输入结果相等,则返回真。";
197
349
  Blockly.Msg["LOGIC_COMPARE_TOOLTIP_GT"] = "如果第一个输入结果比第二个大,则返回真。";
198
350
  Blockly.Msg["LOGIC_COMPARE_TOOLTIP_GTE"] = "如果第一个输入结果大于或等于第二个输入结果,则返回真。";
@@ -215,8 +367,9 @@ Blockly.Msg["LOGIC_TERNARY_HELPURL"] = "https://zh.wikipedia.org/wiki/条件运
215
367
  Blockly.Msg["LOGIC_TERNARY_IF_FALSE"] = "如果为 false";
216
368
  Blockly.Msg["LOGIC_TERNARY_IF_TRUE"] = "如果为 true";
217
369
  Blockly.Msg["LOGIC_TERNARY_TOOLTIP"] = "检查“断言”里的条件语句。如果条件为真,则返回“如果为真”的值,否则,则返回“如果为假”的值。";
218
- Blockly.Msg["MAC_OS"] = "macOS"; // untranslated
370
+ Blockly.Msg["MAC_OS"] = "macOS";
219
371
  Blockly.Msg["MATH_ADDITION_SYMBOL"] = "+"; // untranslated
372
+ Blockly.Msg["MATH_ADDITION_SYMBOL_ARIA"] = "加上";
220
373
  Blockly.Msg["MATH_ARITHMETIC_HELPURL"] = "https://zh.wikipedia.org/wiki/算术";
221
374
  Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_ADD"] = "返回两个数的和。";
222
375
  Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_DIVIDE"] = "返回两个数的商。";
@@ -229,12 +382,19 @@ Blockly.Msg["MATH_ATAN2_TOOLTIP"] = "返回点(X,Y)的反正切值,范
229
382
  Blockly.Msg["MATH_CHANGE_HELPURL"] = "https://zh.wikipedia.org/wiki/加法";
230
383
  Blockly.Msg["MATH_CHANGE_TITLE"] = "给 %1 加 %2";
231
384
  Blockly.Msg["MATH_CHANGE_TOOLTIP"] = "把数加到变量“%1”。";
385
+ Blockly.Msg["MATH_CONSTANT_E_ARIA"] = "e";
386
+ Blockly.Msg["MATH_CONSTANT_GOLDEN_RATIO_ARIA"] = "黄金比例";
232
387
  Blockly.Msg["MATH_CONSTANT_HELPURL"] = "https://zh.wikipedia.org/wiki/数学常数";
388
+ Blockly.Msg["MATH_CONSTANT_INFINITY_ARIA"] = "无限";
389
+ Blockly.Msg["MATH_CONSTANT_PI_ARIA"] = "派";
390
+ Blockly.Msg["MATH_CONSTANT_SQRT1_2_ARIA"] = "根号二分之一";
391
+ Blockly.Msg["MATH_CONSTANT_SQRT2_ARIA"] = "根号二";
233
392
  Blockly.Msg["MATH_CONSTANT_TOOLTIP"] = "返回一个以下常见常数:π (3.141…)、e (2.718…)、φ (1.618…)、根号2 (1.414…)、根号½ (0.707…)或∞ (无穷)。";
234
393
  Blockly.Msg["MATH_CONSTRAIN_HELPURL"] = "https://en.wikipedia.org/wiki/Clamping_(graphics)"; // untranslated
235
394
  Blockly.Msg["MATH_CONSTRAIN_TITLE"] = "将 %1 限制在 最低 %2 到最高 %3 之间";
236
395
  Blockly.Msg["MATH_CONSTRAIN_TOOLTIP"] = "把一个数限制在指定的极限(含)之间。";
237
396
  Blockly.Msg["MATH_DIVISION_SYMBOL"] = "÷"; // untranslated
397
+ Blockly.Msg["MATH_DIVISION_SYMBOL_ARIA"] = "除以";
238
398
  Blockly.Msg["MATH_IS_DIVISIBLE_BY"] = "可整除被";
239
399
  Blockly.Msg["MATH_IS_EVEN"] = "是偶数";
240
400
  Blockly.Msg["MATH_IS_NEGATIVE"] = "是负数";
@@ -247,13 +407,16 @@ Blockly.Msg["MATH_MODULO_HELPURL"] = "https://zh.wikipedia.org/wiki/模除";
247
407
  Blockly.Msg["MATH_MODULO_TITLE"] = "%1 ÷ %2 的余数";
248
408
  Blockly.Msg["MATH_MODULO_TOOLTIP"] = "返回两个数相除的余数。";
249
409
  Blockly.Msg["MATH_MULTIPLICATION_SYMBOL"] = "×"; // untranslated
410
+ Blockly.Msg["MATH_MULTIPLICATION_SYMBOL_ARIA"] = "乘以";
250
411
  Blockly.Msg["MATH_NUMBER_HELPURL"] = "https://zh.wikipedia.org/wiki/数";
251
412
  Blockly.Msg["MATH_NUMBER_TOOLTIP"] = "一个数。";
252
413
  Blockly.Msg["MATH_ONLIST_HELPURL"] = ""; // untranslated
253
414
  Blockly.Msg["MATH_ONLIST_OPERATOR_AVERAGE"] = "列表的平均";
254
415
  Blockly.Msg["MATH_ONLIST_OPERATOR_MAX"] = "列表的最大数";
416
+ Blockly.Msg["MATH_ONLIST_OPERATOR_MAX_ARIA"] = "最大";
255
417
  Blockly.Msg["MATH_ONLIST_OPERATOR_MEDIAN"] = "列表的中位数";
256
418
  Blockly.Msg["MATH_ONLIST_OPERATOR_MIN"] = "列表的最小数";
419
+ Blockly.Msg["MATH_ONLIST_OPERATOR_MIN_ARIA"] = "最小";
257
420
  Blockly.Msg["MATH_ONLIST_OPERATOR_MODE"] = "列表的众数";
258
421
  Blockly.Msg["MATH_ONLIST_OPERATOR_RANDOM"] = "列表的随机项";
259
422
  Blockly.Msg["MATH_ONLIST_OPERATOR_STD_DEV"] = "列表的标准差";
@@ -267,6 +430,7 @@ Blockly.Msg["MATH_ONLIST_TOOLTIP_RANDOM"] = "返回列表内的一个随机元
267
430
  Blockly.Msg["MATH_ONLIST_TOOLTIP_STD_DEV"] = "返回列表的标准差。";
268
431
  Blockly.Msg["MATH_ONLIST_TOOLTIP_SUM"] = "返回列表内的所有数的和。";
269
432
  Blockly.Msg["MATH_POWER_SYMBOL"] = "^"; // untranslated
433
+ Blockly.Msg["MATH_POWER_SYMBOL_ARIA"] = "次幂";
270
434
  Blockly.Msg["MATH_RANDOM_FLOAT_HELPURL"] = "https://zh.wikipedia.org/wiki/随机数生成器";
271
435
  Blockly.Msg["MATH_RANDOM_FLOAT_TITLE_RANDOM"] = "随机小数";
272
436
  Blockly.Msg["MATH_RANDOM_FLOAT_TOOLTIP"] = "返回一个从0.0(含)到1.0(不含)之间的随机数。";
@@ -280,6 +444,12 @@ Blockly.Msg["MATH_ROUND_OPERATOR_ROUNDUP"] = "向上舍入";
280
444
  Blockly.Msg["MATH_ROUND_TOOLTIP"] = "数向上或向下取整。";
281
445
  Blockly.Msg["MATH_SINGLE_HELPURL"] = "https://zh.wikipedia.org/wiki/平方根";
282
446
  Blockly.Msg["MATH_SINGLE_OP_ABSOLUTE"] = "绝对值";
447
+ Blockly.Msg["MATH_SINGLE_OP_ABSOLUTE_ARIA"] = "绝对值";
448
+ Blockly.Msg["MATH_SINGLE_OP_EXP_ARIA"] = "e次幂";
449
+ Blockly.Msg["MATH_SINGLE_OP_LN_ARIA"] = "自然对数";
450
+ Blockly.Msg["MATH_SINGLE_OP_LOG10_ARIA"] = "以10为底的对数";
451
+ Blockly.Msg["MATH_SINGLE_OP_NEG_ARIA"] = "负";
452
+ Blockly.Msg["MATH_SINGLE_OP_POW10_ARIA"] = "10次幂";
283
453
  Blockly.Msg["MATH_SINGLE_OP_ROOT"] = "平方根";
284
454
  Blockly.Msg["MATH_SINGLE_TOOLTIP_ABS"] = "返回一个数的绝对值。";
285
455
  Blockly.Msg["MATH_SINGLE_TOOLTIP_EXP"] = "返回e的一个数次幂。";
@@ -289,29 +459,45 @@ Blockly.Msg["MATH_SINGLE_TOOLTIP_NEG"] = "返回一个数的相反数。";
289
459
  Blockly.Msg["MATH_SINGLE_TOOLTIP_POW10"] = "返回10的一个数次幂。";
290
460
  Blockly.Msg["MATH_SINGLE_TOOLTIP_ROOT"] = "返回一个数的平方根。";
291
461
  Blockly.Msg["MATH_SUBTRACTION_SYMBOL"] = "-"; // untranslated
462
+ Blockly.Msg["MATH_SUBTRACTION_SYMBOL_ARIA"] = "减去";
292
463
  Blockly.Msg["MATH_TRIG_ACOS"] = "反余弦";
464
+ Blockly.Msg["MATH_TRIG_ACOS_ARIA"] = "反余弦";
293
465
  Blockly.Msg["MATH_TRIG_ASIN"] = "反正弦";
466
+ Blockly.Msg["MATH_TRIG_ASIN_ARIA"] = "反正弦";
294
467
  Blockly.Msg["MATH_TRIG_ATAN"] = "反正切";
468
+ Blockly.Msg["MATH_TRIG_ATAN_ARIA"] = "反正切";
295
469
  Blockly.Msg["MATH_TRIG_COS"] = "余弦";
470
+ Blockly.Msg["MATH_TRIG_COS_ARIA"] = "余弦";
296
471
  Blockly.Msg["MATH_TRIG_HELPURL"] = "https://zh.wikipedia.org/wiki/三角函数";
297
472
  Blockly.Msg["MATH_TRIG_SIN"] = "正弦";
473
+ Blockly.Msg["MATH_TRIG_SIN_ARIA"] = "正弦";
298
474
  Blockly.Msg["MATH_TRIG_TAN"] = "正切";
475
+ Blockly.Msg["MATH_TRIG_TAN_ARIA"] = "正切";
299
476
  Blockly.Msg["MATH_TRIG_TOOLTIP_ACOS"] = "返回一个数的反余弦。";
300
477
  Blockly.Msg["MATH_TRIG_TOOLTIP_ASIN"] = "返回一个数的反正弦。";
301
478
  Blockly.Msg["MATH_TRIG_TOOLTIP_ATAN"] = "返回一个数的反正切。";
302
479
  Blockly.Msg["MATH_TRIG_TOOLTIP_COS"] = "返回角度(非弧度)的余弦。";
303
480
  Blockly.Msg["MATH_TRIG_TOOLTIP_SIN"] = "返回角度(非弧度)的正弦。";
304
481
  Blockly.Msg["MATH_TRIG_TOOLTIP_TAN"] = "返回角度(非弧度)的正切。";
305
- Blockly.Msg["MOVE_BLOCK"] = "Move Block"; // untranslated
482
+ Blockly.Msg["MINIMAP_ARIA_LABEL"] = "工作区小地图,用方向键平移工作区。";
483
+ Blockly.Msg["MOVE_BLOCK"] = "移动块";
306
484
  Blockly.Msg["NEW_COLOUR_VARIABLE"] = "创建颜色变量...";
307
485
  Blockly.Msg["NEW_NUMBER_VARIABLE"] = "创建数变量...";
308
486
  Blockly.Msg["NEW_STRING_VARIABLE"] = "创建字符串变量...";
309
487
  Blockly.Msg["NEW_VARIABLE"] = "创建变量...";
310
488
  Blockly.Msg["NEW_VARIABLE_TITLE"] = "新变量的名称:";
311
489
  Blockly.Msg["NEW_VARIABLE_TYPE_TITLE"] = "新变量的类型:";
312
- Blockly.Msg["OPTION_KEY"] = "⌥ Option"; // untranslated
490
+ Blockly.Msg["NO_PARENT_ANNOUNCEMENT"] = "当前块没有父块";
491
+ Blockly.Msg["OPEN_BACKPACK"] = "打开背包";
492
+ Blockly.Msg["OPEN_TRASH"] = "Open trash"; // untranslated
493
+ Blockly.Msg["OPTION_KEY"] = "Option键";
313
494
  Blockly.Msg["ORDINAL_NUMBER_SUFFIX"] = ""; // untranslated
314
- Blockly.Msg["PASTE_SHORTCUT"] = "Paste"; // untranslated
495
+ Blockly.Msg["PAGE_DOWN_KEY"] = "Page Down"; // untranslated
496
+ Blockly.Msg["PAGE_UP_KEY"] = "Page Up"; // untranslated
497
+ Blockly.Msg["PARENT_BLOCKS_ANNOUNCEMENT"] = "父块:%1";
498
+ Blockly.Msg["PASTE_ALL_FROM_BACKPACK"] = "从背包粘贴所有块";
499
+ Blockly.Msg["PASTE_SHORTCUT"] = "粘贴";
500
+ Blockly.Msg["PAUSE_KEY"] = "Pause"; // untranslated
315
501
  Blockly.Msg["PROCEDURES_ALLOW_STATEMENTS"] = "允许声明";
316
502
  Blockly.Msg["PROCEDURES_BEFORE_PARAMS"] = "与:";
317
503
  Blockly.Msg["PROCEDURES_CALLNORETURN_HELPURL"] = "https://zh.wikipedia.org/wiki/子程序";
@@ -341,11 +527,56 @@ Blockly.Msg["PROCEDURES_MUTATORCONTAINER_TITLE"] = "输入";
341
527
  Blockly.Msg["PROCEDURES_MUTATORCONTAINER_TOOLTIP"] = "添加、移除或重新排此函数的输入。";
342
528
  Blockly.Msg["REDO"] = "重做";
343
529
  Blockly.Msg["REMOVE_COMMENT"] = "删除注释";
344
- Blockly.Msg["RENAME_VARIABLE"] = "重命名变量...";
530
+ Blockly.Msg["REMOVE_FROM_BACKPACK"] = "从背包移除";
531
+ Blockly.Msg["RENAME_VARIABLE"] = "重命名变量“%1”...";
345
532
  Blockly.Msg["RENAME_VARIABLE_TITLE"] = "将所有“%1”变量重命名为:";
346
- Blockly.Msg["SHORTCUTS_CODE_NAVIGATION"] = "Code navigation"; // untranslated
347
- Blockly.Msg["SHORTCUTS_EDITING"] = "Editing"; // untranslated
348
- Blockly.Msg["SHORTCUTS_GENERAL"] = "General"; // untranslated
533
+ Blockly.Msg["RESET_ZOOM"] = "Reset zoom"; // untranslated
534
+ Blockly.Msg["SCREENREADER_HINT"] = "使用方向键导航。按%1切换屏幕阅读器模式";
535
+ Blockly.Msg["SCREENREADER_MODE_DISABLED"] = "屏幕阅读器已关闭,按%1以启用";
536
+ Blockly.Msg["SCREENREADER_MODE_ENABLED"] = "屏幕阅读器已启用,按%1以关闭";
537
+ Blockly.Msg["SHIFT_KEY"] = "Shift"; // untranslated
538
+ Blockly.Msg["SHORTCUTS_ABORT_MOVE"] = "中止移动";
539
+ Blockly.Msg["SHORTCUTS_CLEANUP"] = "清空工作区";
540
+ Blockly.Msg["SHORTCUTS_CODE_NAVIGATION"] = "代码导航";
541
+ Blockly.Msg["SHORTCUTS_DELETE"] = "删除";
542
+ Blockly.Msg["SHORTCUTS_DISCONNECT"] = "断开块";
543
+ Blockly.Msg["SHORTCUTS_DUPLICATE"] = "复制";
544
+ Blockly.Msg["SHORTCUTS_EDITING"] = "编辑";
545
+ Blockly.Msg["SHORTCUTS_ESCAPE"] = "退出";
546
+ Blockly.Msg["SHORTCUTS_EXTENDED_INFORMATION"] = "朗读详细信息";
547
+ Blockly.Msg["SHORTCUTS_FINISH_MOVE"] = "完成移动";
548
+ Blockly.Msg["SHORTCUTS_FOCUS_TOOLBOX"] = "聚焦到工具箱";
549
+ Blockly.Msg["SHORTCUTS_FOCUS_WORKSPACE"] = "聚焦到工作区";
550
+ Blockly.Msg["SHORTCUTS_GENERAL"] = "常规";
551
+ Blockly.Msg["SHORTCUTS_INFORMATION"] = "朗读信息";
552
+ Blockly.Msg["SHORTCUTS_JUMP_BLOCK_END"] = "移动到块尾";
553
+ Blockly.Msg["SHORTCUTS_JUMP_BLOCK_START"] = "移动到块首";
554
+ Blockly.Msg["SHORTCUTS_JUMP_BOTTOM_STACK"] = "移动到块堆尾部";
555
+ Blockly.Msg["SHORTCUTS_JUMP_FIRST_BLOCK"] = "移动到第一个块";
556
+ Blockly.Msg["SHORTCUTS_JUMP_LAST_BLOCK"] = "移动到最后一个块";
557
+ Blockly.Msg["SHORTCUTS_JUMP_NEXT_PAGE"] = "Jump to next page"; // untranslated
558
+ Blockly.Msg["SHORTCUTS_JUMP_PREVIOUS_PAGE"] = "Jump to previous page"; // untranslated
559
+ Blockly.Msg["SHORTCUTS_JUMP_TOP_STACK"] = "移动到块堆开始";
560
+ Blockly.Msg["SHORTCUTS_MOVE_DOWN"] = "下移";
561
+ Blockly.Msg["SHORTCUTS_MOVE_LEFT"] = "左移";
562
+ Blockly.Msg["SHORTCUTS_MOVE_RIGHT"] = "右移";
563
+ Blockly.Msg["SHORTCUTS_MOVE_UP"] = "上移";
564
+ Blockly.Msg["SHORTCUTS_NEXT_HEADING"] = "下一个标题";
565
+ Blockly.Msg["SHORTCUTS_NEXT_STACK"] = "下一个块堆";
566
+ Blockly.Msg["SHORTCUTS_PERFORM_ACTION"] = "编辑或确认";
567
+ Blockly.Msg["SHORTCUTS_PREVIOUS_HEADING"] = "上一个标题";
568
+ Blockly.Msg["SHORTCUTS_PREVIOUS_STACK"] = "上一个块堆";
569
+ Blockly.Msg["SHORTCUTS_SCROLL_DOWN"] = "Scroll down"; // untranslated
570
+ Blockly.Msg["SHORTCUTS_SCROLL_LEFT"] = "Scroll left"; // untranslated
571
+ Blockly.Msg["SHORTCUTS_SCROLL_RIGHT"] = "Scroll right"; // untranslated
572
+ Blockly.Msg["SHORTCUTS_SCROLL_UP"] = "Scroll up"; // untranslated
573
+ Blockly.Msg["SHORTCUTS_SHOW_CONTEXT_MENU"] = "显示菜单";
574
+ Blockly.Msg["SHORTCUTS_SHOW_TOOLTIP"] = "显示工具提示";
575
+ Blockly.Msg["SHORTCUTS_START_MOVE"] = "开始移动";
576
+ Blockly.Msg["SHORTCUTS_START_MOVE_STACK"] = "开始移动块堆";
577
+ Blockly.Msg["SHORTCUTS_TOGGLE_SCREENREADER_MODE"] = "切换屏幕阅读器模式";
578
+ Blockly.Msg["SPACE_KEY"] = "空格";
579
+ Blockly.Msg["TAB_KEY"] = "Tab"; // untranslated
349
580
  Blockly.Msg["TEXT_APPEND_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#text-modification"; // untranslated
350
581
  Blockly.Msg["TEXT_APPEND_TITLE"] = "在%1之后加上文本%2";
351
582
  Blockly.Msg["TEXT_APPEND_TOOLTIP"] = "将一些文本追加到变量“%1”里。";
@@ -369,6 +600,8 @@ Blockly.Msg["TEXT_COUNT_TOOLTIP"] = "计算在一段文本中,某个部分文
369
600
  Blockly.Msg["TEXT_CREATE_JOIN_ITEM_TOOLTIP"] = "将一个项添加到文本中。";
370
601
  Blockly.Msg["TEXT_CREATE_JOIN_TITLE_JOIN"] = "拼接";
371
602
  Blockly.Msg["TEXT_CREATE_JOIN_TOOLTIP"] = "添加、移除或重新排列各节来重新配置这个文本块。";
603
+ Blockly.Msg["TEXT_FROM_END_ARIA"] = "倒数字符序号";
604
+ Blockly.Msg["TEXT_FROM_START_ARIA"] = "字符序号";
372
605
  Blockly.Msg["TEXT_GET_SUBSTRING_END_FROM_END"] = "到倒数第#个字符";
373
606
  Blockly.Msg["TEXT_GET_SUBSTRING_END_FROM_START"] = "到第#个字符";
374
607
  Blockly.Msg["TEXT_GET_SUBSTRING_END_LAST"] = "到最后一个字符";
@@ -415,8 +648,13 @@ Blockly.Msg["TEXT_TRIM_OPERATOR_LEFT"] = "消除其左侧的空格";
415
648
  Blockly.Msg["TEXT_TRIM_OPERATOR_RIGHT"] = "消除其右侧的空格";
416
649
  Blockly.Msg["TEXT_TRIM_TOOLTIP"] = "从某一端或同时从两端删除多余的空白,并返回这段文字的一个副本。";
417
650
  Blockly.Msg["TODAY"] = "今天";
651
+ Blockly.Msg["TOOLBOX_SEARCH_NO_RESULTS"] = "No matching blocks found"; // untranslated
652
+ Blockly.Msg["TOOLBOX_SEARCH_PLACEHOLDER"] = "Search for blocks"; // untranslated
653
+ Blockly.Msg["TOOLBOX_SEARCH_PROMPT"] = "Type to search for blocks"; // untranslated
654
+ Blockly.Msg["TOOLBOX_SEARCH_RESULT_COUNT"] = "%1 matching blocks"; // untranslated
655
+ Blockly.Msg["TOOLBOX_SEARCH_RESULT_COUNT_ONE"] = "1 matching block"; // untranslated
418
656
  Blockly.Msg["UNDO"] = "撤销";
419
- Blockly.Msg["UNKNOWN"] = "Unknown"; // untranslated
657
+ Blockly.Msg["UNKNOWN"] = "未知";
420
658
  Blockly.Msg["UNNAMED_KEY"] = "未命名";
421
659
  Blockly.Msg["VARIABLES_DEFAULT_NAME"] = "项目";
422
660
  Blockly.Msg["VARIABLES_GET_CREATE_SET"] = "创建“设定%1”";
@@ -429,9 +667,29 @@ Blockly.Msg["VARIABLES_SET_TOOLTIP"] = "设置此变量,以使它和输入值
429
667
  Blockly.Msg["VARIABLE_ALREADY_EXISTS"] = "名字叫“%1”的变量已经存在了。";
430
668
  Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_ANOTHER_TYPE"] = "名字叫“%1”的变量已经有了另一个类型:“%2”。";
431
669
  Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_A_PARAMETER"] = "名为“%1”的变量已经作为参数存在于流程“%2”中。";
432
- Blockly.Msg["WINDOWS"] = "Windows"; // untranslated
433
- Blockly.Msg["WORKSPACE_ARIA_LABEL"] = "Blockly工作区";
670
+ Blockly.Msg["WINDOWS"] = "Windows";
434
671
  Blockly.Msg["WORKSPACE_COMMENT_DEFAULT_TEXT"] = "说点什么...";
672
+ Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_MANY"] = "%1个块堆%2在工作区中";
673
+ Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ONE"] = "1个块堆%2在工作区中";
674
+ Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ZERO"] = "没有块%2在工作区中";
675
+ Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_MANY"] = "和%1个注释";
676
+ Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_ONE"] = "和1个注释";
677
+ Blockly.Msg["WORKSPACE_LABEL_1_STACK"] = "1个块堆";
678
+ Blockly.Msg["WORKSPACE_LABEL_FLYOUT_WORKSPACE"] = "%1个块";
679
+ Blockly.Msg["WORKSPACE_LABEL_MANY_STACKS"] = "%1个块堆";
680
+ Blockly.Msg["WORKSPACE_LABEL_MUTATOR_WORKSPACE"] = "块编辑工作区";
681
+ Blockly.Msg["WORKSPACE_LABEL_PLAIN"] = "Blocks工作区。";
682
+ Blockly.Msg["WORKSPACE_ROLEDESCRIPTION"] = "工作区";
683
+ Blockly.Msg["WORKSPACE_SEARCH_CLOSE"] = "Close search bar"; // untranslated
684
+ Blockly.Msg["WORKSPACE_SEARCH_FIND_NEXT"] = "Find next"; // untranslated
685
+ Blockly.Msg["WORKSPACE_SEARCH_FIND_PREVIOUS"] = "Find previous"; // untranslated
686
+ Blockly.Msg["WORKSPACE_SEARCH_INPUT_LABEL"] = "Search workspace. Press Enter for the next match, Shift+Enter for the previous match. Press Escape to close search and focus the current match."; // untranslated
687
+ Blockly.Msg["WORKSPACE_SEARCH_MATCH"] = "Match %1 of %2: %3"; // untranslated
688
+ Blockly.Msg["WORKSPACE_SEARCH_NO_MATCHES"] = "No matching blocks"; // untranslated
689
+ Blockly.Msg["WORKSPACE_SEARCH_PLACEHOLDER"] = "Search"; // untranslated
690
+ Blockly.Msg["ZOOM_IN"] = "Zoom in"; // untranslated
691
+ Blockly.Msg["ZOOM_OUT"] = "Zoom out"; // untranslated
692
+ Blockly.Msg["ZOOM_TO_FIT_ARIA_LABEL"] = "缩放到适合";
435
693
  Blockly.Msg["CONTROLS_FOREACH_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
436
694
  Blockly.Msg["CONTROLS_FOR_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
437
695
  Blockly.Msg["CONTROLS_IF_ELSEIF_TITLE_ELSEIF"] = Blockly.Msg["CONTROLS_IF_MSG_ELSEIF"];