blockly 12.5.1 → 13.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (363) hide show
  1. package/blockly.min.js +1541 -700
  2. package/blockly.mjs +13 -5
  3. package/blockly_compressed.js +1449 -674
  4. package/blockly_compressed.js.map +1 -1
  5. package/blocks_compressed.js +16 -16
  6. package/blocks_compressed.js.map +1 -1
  7. package/core/block.d.ts +1 -1
  8. package/core/block_aria_composer.d.ts +119 -0
  9. package/core/block_svg.d.ts +59 -16
  10. package/core/blockly.d.ts +21 -16
  11. package/core/bubbles/bubble.d.ts +17 -2
  12. package/core/bubbles/mini_workspace_bubble.d.ts +9 -1
  13. package/core/bubbles/text_bubble.d.ts +4 -1
  14. package/core/bubbles/textinput_bubble.d.ts +5 -0
  15. package/core/comments/comment_editor.d.ts +2 -2
  16. package/core/comments/rendered_workspace_comment.d.ts +6 -1
  17. package/core/common.d.ts +1 -1
  18. package/core/css.d.ts +2 -1
  19. package/core/dragging/block_drag_strategy.d.ts +126 -14
  20. package/core/dragging/bubble_drag_strategy.d.ts +5 -4
  21. package/core/dragging/comment_drag_strategy.d.ts +4 -4
  22. package/core/dragging/dragger.d.ts +13 -14
  23. package/core/events/events_block_create.d.ts +0 -3
  24. package/core/events/events_block_delete.d.ts +0 -3
  25. package/core/events/events_comment_create.d.ts +0 -3
  26. package/core/events/events_comment_delete.d.ts +0 -3
  27. package/core/field.d.ts +69 -2
  28. package/core/field_input.d.ts +23 -0
  29. package/core/flyout_base.d.ts +1 -125
  30. package/core/flyout_button.d.ts +9 -0
  31. package/core/flyout_horizontal.d.ts +0 -11
  32. package/core/flyout_vertical.d.ts +0 -11
  33. package/core/focus_manager.d.ts +47 -2
  34. package/core/gesture.d.ts +0 -12
  35. package/core/hints.d.ts +44 -0
  36. package/core/icons/icon.d.ts +6 -0
  37. package/core/inputs/input.d.ts +22 -1
  38. package/core/interfaces/i_bounded_element.d.ts +7 -0
  39. package/core/interfaces/i_bubble.d.ts +3 -2
  40. package/core/interfaces/i_collapsible_toolbox_item.d.ts +5 -1
  41. package/core/interfaces/i_draggable.d.ts +22 -17
  42. package/core/interfaces/i_dragger.d.ts +19 -10
  43. package/core/interfaces/i_flyout.d.ts +1 -31
  44. package/core/interfaces/i_focusable_node.d.ts +8 -0
  45. package/core/interfaces/i_focusable_tree.d.ts +8 -0
  46. package/core/interfaces/i_json_block_definition.d.ts +102 -0
  47. package/core/interfaces/i_navigation_policy.d.ts +12 -0
  48. package/core/interfaces/i_selectable.d.ts +2 -2
  49. package/core/interfaces/i_selectable_toolbox_item.d.ts +3 -3
  50. package/core/interfaces/i_toolbox.d.ts +4 -0
  51. package/core/interfaces/i_toolbox_item.d.ts +6 -0
  52. package/core/keyboard_nav/keyboard_mover.d.ts +149 -0
  53. package/core/keyboard_nav/move_indicator.d.ts +35 -0
  54. package/core/keyboard_nav/{block_navigation_policy.d.ts → navigation_policies/block_navigation_policy.d.ts} +17 -25
  55. package/core/keyboard_nav/navigation_policies/bubble_navigation_policy.d.ts +63 -0
  56. package/core/keyboard_nav/{comment_bar_button_navigation_policy.d.ts → navigation_policies/comment_bar_button_navigation_policy.d.ts} +10 -3
  57. package/core/keyboard_nav/{comment_editor_navigation_policy.d.ts → navigation_policies/comment_editor_navigation_policy.d.ts} +10 -3
  58. package/core/keyboard_nav/{connection_navigation_policy.d.ts → navigation_policies/connection_navigation_policy.d.ts} +11 -16
  59. package/core/keyboard_nav/{field_navigation_policy.d.ts → navigation_policies/field_navigation_policy.d.ts} +10 -3
  60. package/core/keyboard_nav/{flyout_button_navigation_policy.d.ts → navigation_policies/flyout_button_navigation_policy.d.ts} +10 -3
  61. package/core/keyboard_nav/{flyout_separator_navigation_policy.d.ts → navigation_policies/flyout_separator_navigation_policy.d.ts} +9 -3
  62. package/core/keyboard_nav/{icon_navigation_policy.d.ts → navigation_policies/icon_navigation_policy.d.ts} +12 -5
  63. package/core/keyboard_nav/navigation_policies/toolbox_item_navigation_policy.d.ts +64 -0
  64. package/core/keyboard_nav/{workspace_comment_navigation_policy.d.ts → navigation_policies/workspace_comment_navigation_policy.d.ts} +14 -9
  65. package/core/keyboard_nav/{workspace_navigation_policy.d.ts → navigation_policies/workspace_navigation_policy.d.ts} +10 -3
  66. package/core/keyboard_nav/navigators/flyout_navigator.d.ts +63 -0
  67. package/core/keyboard_nav/navigators/navigator.d.ts +225 -0
  68. package/core/keyboard_nav/navigators/toolbox_navigator.d.ts +70 -0
  69. package/core/registry.d.ts +0 -2
  70. package/core/renderers/common/constants.d.ts +4 -7
  71. package/core/renderers/common/i_path_object.d.ts +8 -0
  72. package/core/renderers/common/path_object.d.ts +5 -14
  73. package/core/renderers/common/renderer.d.ts +3 -3
  74. package/core/renderers/zelos/constants.d.ts +1 -14
  75. package/core/renderers/zelos/measurables/bottom_row.d.ts +1 -1
  76. package/core/renderers/zelos/measurables/top_row.d.ts +1 -1
  77. package/core/renderers/zelos/path_object.d.ts +0 -3
  78. package/core/renderers/zelos/renderer.d.ts +8 -0
  79. package/core/shortcut_items.d.ts +73 -1
  80. package/core/shortcut_registry.d.ts +6 -0
  81. package/core/theme.d.ts +0 -2
  82. package/core/toast.d.ts +2 -11
  83. package/core/toolbox/category.d.ts +5 -0
  84. package/core/toolbox/separator.d.ts +4 -0
  85. package/core/toolbox/toolbox.d.ts +17 -33
  86. package/core/toolbox/toolbox_item.d.ts +4 -0
  87. package/core/utils/aria.d.ts +245 -28
  88. package/core/utils/dom.d.ts +1 -1
  89. package/core/utils/shortcut_formatting.d.ts +22 -0
  90. package/core/utils/useragent.d.ts +1 -0
  91. package/core/variables.d.ts +1 -1
  92. package/core/workspace_audio.d.ts +23 -0
  93. package/core/workspace_svg.d.ts +8 -50
  94. package/dart_compressed.js +9 -9
  95. package/dart_compressed.js.map +1 -1
  96. package/index.mjs +13 -5
  97. package/javascript_compressed.js +11 -10
  98. package/javascript_compressed.js.map +1 -1
  99. package/lua_compressed.js +7 -7
  100. package/lua_compressed.js.map +1 -1
  101. package/msg/ab.js +65 -0
  102. package/msg/ab.mjs +65 -0
  103. package/msg/ace.js +65 -0
  104. package/msg/ace.mjs +65 -0
  105. package/msg/af.js +65 -0
  106. package/msg/af.mjs +65 -0
  107. package/msg/am.js +65 -0
  108. package/msg/am.mjs +65 -0
  109. package/msg/ar.js +65 -0
  110. package/msg/ar.mjs +65 -0
  111. package/msg/ast.js +65 -0
  112. package/msg/ast.mjs +65 -0
  113. package/msg/az.js +65 -0
  114. package/msg/az.mjs +65 -0
  115. package/msg/ba.js +65 -0
  116. package/msg/ba.mjs +65 -0
  117. package/msg/bcc.js +65 -0
  118. package/msg/bcc.mjs +65 -0
  119. package/msg/be-tarask.js +65 -0
  120. package/msg/be-tarask.mjs +65 -0
  121. package/msg/be.js +65 -0
  122. package/msg/be.mjs +65 -0
  123. package/msg/bg.js +65 -0
  124. package/msg/bg.mjs +65 -0
  125. package/msg/bn.js +65 -0
  126. package/msg/bn.mjs +65 -0
  127. package/msg/br.js +65 -0
  128. package/msg/br.mjs +65 -0
  129. package/msg/bs.js +65 -0
  130. package/msg/bs.mjs +65 -0
  131. package/msg/ca.js +65 -0
  132. package/msg/ca.mjs +65 -0
  133. package/msg/cdo.js +65 -0
  134. package/msg/cdo.mjs +65 -0
  135. package/msg/ce.js +65 -0
  136. package/msg/ce.mjs +65 -0
  137. package/msg/cs.js +65 -0
  138. package/msg/cs.mjs +65 -0
  139. package/msg/da.js +65 -0
  140. package/msg/da.mjs +65 -0
  141. package/msg/de.js +65 -0
  142. package/msg/de.mjs +65 -0
  143. package/msg/diq.js +65 -0
  144. package/msg/diq.mjs +65 -0
  145. package/msg/dtp.js +65 -0
  146. package/msg/dtp.mjs +65 -0
  147. package/msg/dty.js +65 -0
  148. package/msg/dty.mjs +65 -0
  149. package/msg/ee.js +65 -0
  150. package/msg/ee.mjs +65 -0
  151. package/msg/el.js +65 -0
  152. package/msg/el.mjs +65 -0
  153. package/msg/en-gb.js +65 -0
  154. package/msg/en-gb.mjs +65 -0
  155. package/msg/en.js +65 -0
  156. package/msg/en.mjs +65 -0
  157. package/msg/eo.js +65 -0
  158. package/msg/eo.mjs +65 -0
  159. package/msg/es.js +65 -0
  160. package/msg/es.mjs +65 -0
  161. package/msg/et.js +65 -0
  162. package/msg/et.mjs +65 -0
  163. package/msg/eu.js +65 -0
  164. package/msg/eu.mjs +65 -0
  165. package/msg/fa.js +65 -0
  166. package/msg/fa.mjs +65 -0
  167. package/msg/fi.js +65 -0
  168. package/msg/fi.mjs +65 -0
  169. package/msg/fo.js +65 -0
  170. package/msg/fo.mjs +65 -0
  171. package/msg/fr.js +65 -0
  172. package/msg/fr.mjs +65 -0
  173. package/msg/frr.js +65 -0
  174. package/msg/frr.mjs +65 -0
  175. package/msg/gl.js +65 -0
  176. package/msg/gl.mjs +65 -0
  177. package/msg/gn.js +65 -0
  178. package/msg/gn.mjs +65 -0
  179. package/msg/gor.js +65 -0
  180. package/msg/gor.mjs +65 -0
  181. package/msg/ha.js +65 -0
  182. package/msg/ha.mjs +65 -0
  183. package/msg/hak.js +65 -0
  184. package/msg/hak.mjs +65 -0
  185. package/msg/he.js +65 -0
  186. package/msg/he.mjs +65 -0
  187. package/msg/hi.js +65 -0
  188. package/msg/hi.mjs +65 -0
  189. package/msg/hr.js +65 -0
  190. package/msg/hr.mjs +65 -0
  191. package/msg/hrx.js +65 -0
  192. package/msg/hrx.mjs +65 -0
  193. package/msg/hsb.js +65 -0
  194. package/msg/hsb.mjs +65 -0
  195. package/msg/hu.js +65 -0
  196. package/msg/hu.mjs +65 -0
  197. package/msg/hy.js +65 -0
  198. package/msg/hy.mjs +65 -0
  199. package/msg/ia.js +65 -0
  200. package/msg/ia.mjs +65 -0
  201. package/msg/id.js +65 -0
  202. package/msg/id.mjs +65 -0
  203. package/msg/ig.js +65 -0
  204. package/msg/ig.mjs +65 -0
  205. package/msg/inh.js +65 -0
  206. package/msg/inh.mjs +65 -0
  207. package/msg/is.js +65 -0
  208. package/msg/is.mjs +65 -0
  209. package/msg/it.js +65 -0
  210. package/msg/it.mjs +65 -0
  211. package/msg/ja.js +65 -0
  212. package/msg/ja.mjs +65 -0
  213. package/msg/ka.js +65 -0
  214. package/msg/ka.mjs +65 -0
  215. package/msg/kab.js +65 -0
  216. package/msg/kab.mjs +65 -0
  217. package/msg/kbd-cyrl.js +65 -0
  218. package/msg/kbd-cyrl.mjs +65 -0
  219. package/msg/km.js +65 -0
  220. package/msg/km.mjs +65 -0
  221. package/msg/kn.js +65 -0
  222. package/msg/kn.mjs +65 -0
  223. package/msg/ko.js +65 -0
  224. package/msg/ko.mjs +65 -0
  225. package/msg/ksh.js +65 -0
  226. package/msg/ksh.mjs +65 -0
  227. package/msg/ku-latn.js +65 -0
  228. package/msg/ku-latn.mjs +65 -0
  229. package/msg/ky.js +65 -0
  230. package/msg/ky.mjs +65 -0
  231. package/msg/la.js +65 -0
  232. package/msg/la.mjs +65 -0
  233. package/msg/lb.js +65 -0
  234. package/msg/lb.mjs +65 -0
  235. package/msg/lki.js +65 -0
  236. package/msg/lki.mjs +65 -0
  237. package/msg/lo.js +65 -0
  238. package/msg/lo.mjs +65 -0
  239. package/msg/lrc.js +65 -0
  240. package/msg/lrc.mjs +65 -0
  241. package/msg/lt.js +65 -0
  242. package/msg/lt.mjs +65 -0
  243. package/msg/lv.js +65 -0
  244. package/msg/lv.mjs +65 -0
  245. package/msg/mg.js +65 -0
  246. package/msg/mg.mjs +65 -0
  247. package/msg/mk.js +65 -0
  248. package/msg/mk.mjs +65 -0
  249. package/msg/ml.js +65 -0
  250. package/msg/ml.mjs +65 -0
  251. package/msg/mnw.js +65 -0
  252. package/msg/mnw.mjs +65 -0
  253. package/msg/ms.js +65 -0
  254. package/msg/ms.mjs +65 -0
  255. package/msg/my.js +65 -0
  256. package/msg/my.mjs +65 -0
  257. package/msg/mzn.js +65 -0
  258. package/msg/mzn.mjs +65 -0
  259. package/msg/nb.js +65 -0
  260. package/msg/nb.mjs +65 -0
  261. package/msg/ne.js +65 -0
  262. package/msg/ne.mjs +65 -0
  263. package/msg/nl.js +65 -0
  264. package/msg/nl.mjs +65 -0
  265. package/msg/oc.js +65 -0
  266. package/msg/oc.mjs +65 -0
  267. package/msg/olo.js +65 -0
  268. package/msg/olo.mjs +65 -0
  269. package/msg/pa.js +65 -0
  270. package/msg/pa.mjs +65 -0
  271. package/msg/pl.js +65 -0
  272. package/msg/pl.mjs +65 -0
  273. package/msg/pms.js +65 -0
  274. package/msg/pms.mjs +65 -0
  275. package/msg/ps.js +65 -0
  276. package/msg/ps.mjs +65 -0
  277. package/msg/pt-br.js +65 -0
  278. package/msg/pt-br.mjs +65 -0
  279. package/msg/pt.js +65 -0
  280. package/msg/pt.mjs +65 -0
  281. package/msg/ro.js +65 -0
  282. package/msg/ro.mjs +65 -0
  283. package/msg/ru.js +65 -0
  284. package/msg/ru.mjs +65 -0
  285. package/msg/sc.js +65 -0
  286. package/msg/sc.mjs +65 -0
  287. package/msg/sco.js +65 -0
  288. package/msg/sco.mjs +65 -0
  289. package/msg/sd.js +65 -0
  290. package/msg/sd.mjs +65 -0
  291. package/msg/shn.js +65 -0
  292. package/msg/shn.mjs +65 -0
  293. package/msg/si.js +65 -0
  294. package/msg/si.mjs +65 -0
  295. package/msg/sk.js +65 -0
  296. package/msg/sk.mjs +65 -0
  297. package/msg/skr-arab.js +65 -0
  298. package/msg/skr-arab.mjs +65 -0
  299. package/msg/sl.js +65 -0
  300. package/msg/sl.mjs +65 -0
  301. package/msg/smn.js +65 -0
  302. package/msg/smn.mjs +65 -0
  303. package/msg/sq.js +65 -0
  304. package/msg/sq.mjs +65 -0
  305. package/msg/sr-latn.js +65 -0
  306. package/msg/sr-latn.mjs +65 -0
  307. package/msg/sr.js +65 -0
  308. package/msg/sr.mjs +65 -0
  309. package/msg/sv.js +65 -0
  310. package/msg/sv.mjs +65 -0
  311. package/msg/sw.js +65 -0
  312. package/msg/sw.mjs +65 -0
  313. package/msg/ta.js +65 -0
  314. package/msg/ta.mjs +65 -0
  315. package/msg/tcy.js +65 -0
  316. package/msg/tcy.mjs +65 -0
  317. package/msg/tdd.js +65 -0
  318. package/msg/tdd.mjs +65 -0
  319. package/msg/te.js +65 -0
  320. package/msg/te.mjs +65 -0
  321. package/msg/th.js +65 -0
  322. package/msg/th.mjs +65 -0
  323. package/msg/ti.js +65 -0
  324. package/msg/ti.mjs +65 -0
  325. package/msg/tl.js +65 -0
  326. package/msg/tl.mjs +65 -0
  327. package/msg/tlh.js +65 -0
  328. package/msg/tlh.mjs +65 -0
  329. package/msg/tr.js +65 -0
  330. package/msg/tr.mjs +65 -0
  331. package/msg/ug-arab.js +65 -0
  332. package/msg/ug-arab.mjs +65 -0
  333. package/msg/uk.js +65 -0
  334. package/msg/uk.mjs +65 -0
  335. package/msg/ur.js +65 -0
  336. package/msg/ur.mjs +65 -0
  337. package/msg/uz.js +65 -0
  338. package/msg/uz.mjs +65 -0
  339. package/msg/vi.js +65 -0
  340. package/msg/vi.mjs +65 -0
  341. package/msg/xmf.js +65 -0
  342. package/msg/xmf.mjs +65 -0
  343. package/msg/yo.js +65 -0
  344. package/msg/yo.mjs +65 -0
  345. package/msg/zgh.js +65 -0
  346. package/msg/zgh.mjs +65 -0
  347. package/msg/zh-hans.js +65 -0
  348. package/msg/zh-hans.mjs +65 -0
  349. package/msg/zh-hant.js +65 -0
  350. package/msg/zh-hant.mjs +65 -0
  351. package/package.json +11 -11
  352. package/php_compressed.js +2 -2
  353. package/php_compressed.js.map +1 -1
  354. package/python_compressed.js +2 -2
  355. package/python_compressed.js.map +1 -1
  356. package/core/flyout_navigator.d.ts +0 -11
  357. package/core/keyboard_nav/block_comment_navigation_policy.d.ts +0 -56
  358. package/core/keyboard_nav/flyout_navigation_policy.d.ts +0 -65
  359. package/core/keyboard_nav/line_cursor.d.ts +0 -187
  360. package/core/keyboard_nav/marker.d.ts +0 -53
  361. package/core/marker_manager.d.ts +0 -72
  362. package/core/navigator.d.ts +0 -65
  363. package/media/sprites.png +0 -0
package/msg/kab.js CHANGED
@@ -19,7 +19,29 @@ var Blockly = Blockly || { Msg: Object.create(null) };
19
19
 
20
20
  Blockly.Msg["ADD_COMMENT"] = "Rnu awennit";
21
21
  Blockly.Msg["ALT_KEY"] = "Alt"; // untranslated
22
+ Blockly.Msg["ANNOUNCE_MOVE_AFTER"] = "moving %1 after %3"; // untranslated
23
+ Blockly.Msg["ANNOUNCE_MOVE_AROUND"] = "moving %1 %2 around %3"; // untranslated
24
+ Blockly.Msg["ANNOUNCE_MOVE_BEFORE"] = "moving %1 before %3"; // untranslated
25
+ Blockly.Msg["ANNOUNCE_MOVE_CANCELED"] = "Canceled movement"; // untranslated
26
+ Blockly.Msg["ANNOUNCE_MOVE_INSIDE"] = "moving %1 inside %3 %4"; // untranslated
27
+ Blockly.Msg["ANNOUNCE_MOVE_TO"] = "moving %1 %2 to %3 %4"; // untranslated
28
+ Blockly.Msg["ANNOUNCE_MOVE_WORKSPACE"] = "moving %1 on workspace"; // untranslated
29
+ Blockly.Msg["ARIA_TYPE_FIELD_INPUT"] = "input field"; // untranslated
30
+ Blockly.Msg["BACKSPACE_KEY"] = "Backspace"; // untranslated
31
+ Blockly.Msg["BLOCK_LABEL_BEGIN_PREFIX"] = "Begin %1"; // untranslated
32
+ Blockly.Msg["BLOCK_LABEL_BEGIN_STACK"] = "Begin stack"; // untranslated
33
+ Blockly.Msg["BLOCK_LABEL_COLLAPSED"] = "collapsed"; // untranslated
34
+ Blockly.Msg["BLOCK_LABEL_CONTAINER"] = "container"; // untranslated
35
+ Blockly.Msg["BLOCK_LABEL_DISABLED"] = "disabled"; // untranslated
36
+ Blockly.Msg["BLOCK_LABEL_HAS_INPUT"] = "has input"; // untranslated
37
+ Blockly.Msg["BLOCK_LABEL_HAS_INPUTS"] = "has inputs"; // untranslated
38
+ Blockly.Msg["BLOCK_LABEL_REPLACEABLE"] = "replaceable"; // untranslated
39
+ Blockly.Msg["BLOCK_LABEL_STACK_BLOCKS"] = "%1 stack blocks"; // untranslated
40
+ Blockly.Msg["BLOCK_LABEL_STATEMENT"] = "statement"; // untranslated
41
+ Blockly.Msg["BLOCK_LABEL_TOOLBOX_CATEGORY"] = "%1 category"; // untranslated
42
+ Blockly.Msg["BLOCK_LABEL_VALUE"] = "value"; // untranslated
22
43
  Blockly.Msg["CANNOT_DELETE_VARIABLE_PROCEDURE"] = "Ur izmir ara ad yekkes amutti '%1' acku yedda di tbadut n twuri '%2'";
44
+ Blockly.Msg["CAPS_LOCK_KEY"] = "Caps Lock"; // untranslated
23
45
  Blockly.Msg["CHANGE_VALUE_TITLE"] = "Beddel azal:";
24
46
  Blockly.Msg["CHROME_OS"] = "ChromeOS"; // untranslated
25
47
  Blockly.Msg["CLEAN_UP"] = "Sfeḍ iḥedran";
@@ -45,6 +67,7 @@ Blockly.Msg["COLOUR_RGB_RED"] = "azeggaɣ";
45
67
  Blockly.Msg["COLOUR_RGB_TITLE"] = "ini s";
46
68
  Blockly.Msg["COLOUR_RGB_TOOLTIP"] = "Rnu ini s tnecta yettunefk s tesmekta n uzeggaɣ, azegzaw, akked unili. Yessefk akk azalen ad ilin gar 0 akked 100.";
47
69
  Blockly.Msg["COMMAND_KEY"] = "⌘ Command"; // untranslated
70
+ Blockly.Msg["CONTEXT_MENU_KEY"] = "≣ Menu"; // untranslated
48
71
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
49
72
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK"] = "ffeɣ seg tneddict";
50
73
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE"] = "kemmel s wallus d tneddict d-iteddun";
@@ -82,6 +105,7 @@ Blockly.Msg["COPY_SHORTCUT"] = "Copy"; // untranslated
82
105
  Blockly.Msg["CUT_SHORTCUT"] = "Cut"; // untranslated
83
106
  Blockly.Msg["DELETE_ALL_BLOCKS"] = "Kkes akk %1 n yiḥedran?";
84
107
  Blockly.Msg["DELETE_BLOCK"] = "Kkes iḥder";
108
+ Blockly.Msg["DELETE_KEY"] = "Delete"; // untranslated
85
109
  Blockly.Msg["DELETE_VARIABLE"] = "Kkes amutti '%1'";
86
110
  Blockly.Msg["DELETE_VARIABLE_CONFIRMATION"] = "Kkes %1 n useqdec n umutti '%2'?";
87
111
  Blockly.Msg["DELETE_X_BLOCKS"] = "Kkes %1 n yiḥedran";
@@ -92,16 +116,26 @@ Blockly.Msg["DUPLICATE_BLOCK"] = "Sleg";
92
116
  Blockly.Msg["DUPLICATE_COMMENT"] = "Sleg awennit";
93
117
  Blockly.Msg["EDIT_BLOCK_CONTENTS"] = "Edit Block contents"; // untranslated
94
118
  Blockly.Msg["ENABLE_BLOCK"] = "Sens iḥedran";
119
+ Blockly.Msg["END_KEY"] = "End"; // untranslated
120
+ Blockly.Msg["ENTER_KEY"] = "Enter"; // untranslated
121
+ Blockly.Msg["ESCAPE"] = "Esc"; // untranslated
95
122
  Blockly.Msg["EXPAND_ALL"] = "Snefli iḥedran";
96
123
  Blockly.Msg["EXPAND_BLOCK"] = "Snefli iḥder";
97
124
  Blockly.Msg["EXTERNAL_INPUTS"] = "Inekcam izɣarayen";
125
+ Blockly.Msg["FIELD_LABEL_EDIT_PREFIX"] = "Edit %1"; // untranslated
126
+ Blockly.Msg["FIELD_LABEL_EMPTY"] = "empty"; // untranslated
98
127
  Blockly.Msg["HELP"] = "Tallelt";
99
128
  Blockly.Msg["HELP_PROMPT"] = "Press %1 for help on keyboard controls"; // untranslated
129
+ Blockly.Msg["HOME_KEY"] = "Home"; // untranslated
100
130
  Blockly.Msg["INLINE_INPUTS"] = "Inekcam srid";
131
+ Blockly.Msg["INPUT_LABEL_INDEX"] = "input %1"; // untranslated
132
+ Blockly.Msg["INSERT_KEY"] = "Insert"; // untranslated
133
+ Blockly.Msg["KEYBOARD_NAV_BLOCK_NAVIGATION_HINT"] = "Use the right arrow key to navigate inside of blocks"; // untranslated
101
134
  Blockly.Msg["KEYBOARD_NAV_CONSTRAINED_MOVE_HINT"] = "Use the arrow keys to move, then %1 to accept the position"; // untranslated
102
135
  Blockly.Msg["KEYBOARD_NAV_COPIED_HINT"] = "Copied. Press %1 to paste."; // untranslated
103
136
  Blockly.Msg["KEYBOARD_NAV_CUT_HINT"] = "Cut. Press %1 to paste."; // untranslated
104
137
  Blockly.Msg["KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT"] = "Hold %1 and use arrow keys to move freely, then %2 to accept the position"; // untranslated
138
+ Blockly.Msg["KEYBOARD_NAV_WORKSPACE_NAVIGATION_HINT"] = "Use the arrow keys to navigate"; // untranslated
105
139
  Blockly.Msg["LINUX"] = "Linux"; // untranslated
106
140
  Blockly.Msg["LISTS_CREATE_EMPTY_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#create-empty-list"; // untranslated
107
141
  Blockly.Msg["LISTS_CREATE_EMPTY_TITLE"] = "rnu tabdart tilemt";
@@ -311,7 +345,10 @@ Blockly.Msg["NEW_VARIABLE_TITLE"] = "Isem amaynut n wazal:";
311
345
  Blockly.Msg["NEW_VARIABLE_TYPE_TITLE"] = "Anaw amaynut n umutti:";
312
346
  Blockly.Msg["OPTION_KEY"] = "⌥ Option"; // untranslated
313
347
  Blockly.Msg["ORDINAL_NUMBER_SUFFIX"] = ""; // untranslated
348
+ Blockly.Msg["PAGE_DOWN_KEY"] = "Page Down"; // untranslated
349
+ Blockly.Msg["PAGE_UP_KEY"] = "Page Up"; // untranslated
314
350
  Blockly.Msg["PASTE_SHORTCUT"] = "Paste"; // untranslated
351
+ Blockly.Msg["PAUSE_KEY"] = "Pause"; // untranslated
315
352
  Blockly.Msg["PROCEDURES_ALLOW_STATEMENTS"] = "Sireg asmizzwer";
316
353
  Blockly.Msg["PROCEDURES_BEFORE_PARAMS"] = "s:";
317
354
  Blockly.Msg["PROCEDURES_CALLNORETURN_HELPURL"] = "https://en.wikipedia.org/wiki/Subroutine"; // untranslated
@@ -343,9 +380,32 @@ Blockly.Msg["REDO"] = "Uɣal";
343
380
  Blockly.Msg["REMOVE_COMMENT"] = "Kkes awennit";
344
381
  Blockly.Msg["RENAME_VARIABLE"] = "Beddel isem n umutti...";
345
382
  Blockly.Msg["RENAME_VARIABLE_TITLE"] = "Beddel akk isem n yimuttiyen '%1' ar:";
383
+ Blockly.Msg["SHIFT_KEY"] = "Shift"; // untranslated
384
+ Blockly.Msg["SHORTCUTS_ABORT_MOVE"] = "Abort move"; // untranslated
385
+ Blockly.Msg["SHORTCUTS_CLEANUP"] = "Clean up workspace"; // untranslated
346
386
  Blockly.Msg["SHORTCUTS_CODE_NAVIGATION"] = "Code navigation"; // untranslated
387
+ Blockly.Msg["SHORTCUTS_DELETE"] = "Delete"; // untranslated
388
+ Blockly.Msg["SHORTCUTS_DISCONNECT"] = "Disconnect block"; // untranslated
389
+ Blockly.Msg["SHORTCUTS_DUPLICATE"] = "Duplicate"; // untranslated
347
390
  Blockly.Msg["SHORTCUTS_EDITING"] = "Editing"; // untranslated
391
+ Blockly.Msg["SHORTCUTS_ESCAPE"] = "Exit"; // untranslated
392
+ Blockly.Msg["SHORTCUTS_FINISH_MOVE"] = "Finish move"; // untranslated
393
+ Blockly.Msg["SHORTCUTS_FOCUS_TOOLBOX"] = "Focus toolbox"; // untranslated
394
+ Blockly.Msg["SHORTCUTS_FOCUS_WORKSPACE"] = "Focus workspace"; // untranslated
348
395
  Blockly.Msg["SHORTCUTS_GENERAL"] = "General"; // untranslated
396
+ Blockly.Msg["SHORTCUTS_INFORMATION"] = "Announce information"; // untranslated
397
+ Blockly.Msg["SHORTCUTS_MOVE_DOWN"] = "Move down"; // untranslated
398
+ Blockly.Msg["SHORTCUTS_MOVE_LEFT"] = "Move left"; // untranslated
399
+ Blockly.Msg["SHORTCUTS_MOVE_RIGHT"] = "Move right"; // untranslated
400
+ Blockly.Msg["SHORTCUTS_MOVE_UP"] = "Move up"; // untranslated
401
+ Blockly.Msg["SHORTCUTS_NEXT_STACK"] = "Next stack"; // untranslated
402
+ Blockly.Msg["SHORTCUTS_PERFORM_ACTION"] = "Edit or confirm"; // untranslated
403
+ Blockly.Msg["SHORTCUTS_PREVIOUS_STACK"] = "Previous stack"; // untranslated
404
+ Blockly.Msg["SHORTCUTS_SHOW_CONTEXT_MENU"] = "Show menu"; // untranslated
405
+ Blockly.Msg["SHORTCUTS_START_MOVE"] = "Start move"; // untranslated
406
+ Blockly.Msg["SHORTCUTS_START_MOVE_STACK"] = "Start move stack"; // untranslated
407
+ Blockly.Msg["SPACE_KEY"] = "Space"; // untranslated
408
+ Blockly.Msg["TAB_KEY"] = "Tab"; // untranslated
349
409
  Blockly.Msg["TEXT_APPEND_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#text-modification"; // untranslated
350
410
  Blockly.Msg["TEXT_APPEND_TITLE"] = "Rnu aḍris %2 ɣer %1";
351
411
  Blockly.Msg["TEXT_APPEND_TOOLTIP"] = "Rnu aḍris ɣer umutti '%1'.";
@@ -432,6 +492,11 @@ Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_A_PARAMETER"] = "A variable named '%1'
432
492
  Blockly.Msg["WINDOWS"] = "Windows"; // untranslated
433
493
  Blockly.Msg["WORKSPACE_ARIA_LABEL"] = "Tallunt n umahel Blockly";
434
494
  Blockly.Msg["WORKSPACE_COMMENT_DEFAULT_TEXT"] = "Ini kra...";
495
+ Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_MANY"] = "%1 stacks of blocks%2 in workspace."; // untranslated
496
+ Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ONE"] = "One stack of blocks%2 in workspace."; // untranslated
497
+ Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ZERO"] = "No blocks%2 in workspace."; // untranslated
498
+ Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_MANY"] = " and %1 comments"; // untranslated
499
+ Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_ONE"] = " and one comment"; // untranslated
435
500
  Blockly.Msg["CONTROLS_FOREACH_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
436
501
  Blockly.Msg["CONTROLS_FOR_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
437
502
  Blockly.Msg["CONTROLS_IF_ELSEIF_TITLE_ELSEIF"] = Blockly.Msg["CONTROLS_IF_MSG_ELSEIF"];
package/msg/kab.mjs CHANGED
@@ -432,6 +432,21 @@ export const {
432
432
  COMMAND_KEY,
433
433
  OPTION_KEY,
434
434
  ALT_KEY,
435
+ ENTER_KEY,
436
+ BACKSPACE_KEY,
437
+ DELETE_KEY,
438
+ ESCAPE,
439
+ TAB_KEY,
440
+ SHIFT_KEY,
441
+ CAPS_LOCK_KEY,
442
+ SPACE_KEY,
443
+ PAGE_UP_KEY,
444
+ PAGE_DOWN_KEY,
445
+ END_KEY,
446
+ HOME_KEY,
447
+ INSERT_KEY,
448
+ PAUSE_KEY,
449
+ CONTEXT_MENU_KEY,
435
450
  CUT_SHORTCUT,
436
451
  COPY_SHORTCUT,
437
452
  PASTE_SHORTCUT,
@@ -439,8 +454,58 @@ export const {
439
454
  SHORTCUTS_GENERAL,
440
455
  SHORTCUTS_EDITING,
441
456
  SHORTCUTS_CODE_NAVIGATION,
457
+ SHORTCUTS_ESCAPE,
458
+ SHORTCUTS_DELETE,
459
+ SHORTCUTS_START_MOVE,
460
+ SHORTCUTS_START_MOVE_STACK,
461
+ SHORTCUTS_MOVE_LEFT,
462
+ SHORTCUTS_MOVE_RIGHT,
463
+ SHORTCUTS_MOVE_UP,
464
+ SHORTCUTS_MOVE_DOWN,
465
+ SHORTCUTS_FINISH_MOVE,
466
+ SHORTCUTS_ABORT_MOVE,
467
+ SHORTCUTS_SHOW_CONTEXT_MENU,
468
+ SHORTCUTS_FOCUS_WORKSPACE,
469
+ SHORTCUTS_FOCUS_TOOLBOX,
470
+ SHORTCUTS_INFORMATION,
471
+ SHORTCUTS_DISCONNECT,
472
+ SHORTCUTS_NEXT_STACK,
473
+ SHORTCUTS_PREVIOUS_STACK,
474
+ SHORTCUTS_PERFORM_ACTION,
475
+ SHORTCUTS_DUPLICATE,
476
+ SHORTCUTS_CLEANUP,
442
477
  KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT,
443
478
  KEYBOARD_NAV_CONSTRAINED_MOVE_HINT,
444
479
  KEYBOARD_NAV_COPIED_HINT,
445
480
  KEYBOARD_NAV_CUT_HINT,
481
+ WORKSPACE_CONTENTS_BLOCKS_MANY,
482
+ WORKSPACE_CONTENTS_BLOCKS_ONE,
483
+ WORKSPACE_CONTENTS_BLOCKS_ZERO,
484
+ WORKSPACE_CONTENTS_COMMENTS_MANY,
485
+ WORKSPACE_CONTENTS_COMMENTS_ONE,
486
+ KEYBOARD_NAV_BLOCK_NAVIGATION_HINT,
487
+ KEYBOARD_NAV_WORKSPACE_NAVIGATION_HINT,
488
+ BLOCK_LABEL_BEGIN_STACK,
489
+ BLOCK_LABEL_BEGIN_PREFIX,
490
+ BLOCK_LABEL_TOOLBOX_CATEGORY,
491
+ BLOCK_LABEL_DISABLED,
492
+ BLOCK_LABEL_COLLAPSED,
493
+ BLOCK_LABEL_REPLACEABLE,
494
+ BLOCK_LABEL_HAS_INPUT,
495
+ BLOCK_LABEL_HAS_INPUTS,
496
+ BLOCK_LABEL_STATEMENT,
497
+ BLOCK_LABEL_CONTAINER,
498
+ BLOCK_LABEL_VALUE,
499
+ BLOCK_LABEL_STACK_BLOCKS,
500
+ INPUT_LABEL_INDEX,
501
+ ANNOUNCE_MOVE_WORKSPACE,
502
+ ANNOUNCE_MOVE_BEFORE,
503
+ ANNOUNCE_MOVE_AFTER,
504
+ ANNOUNCE_MOVE_INSIDE,
505
+ ANNOUNCE_MOVE_AROUND,
506
+ ANNOUNCE_MOVE_TO,
507
+ ANNOUNCE_MOVE_CANCELED,
508
+ FIELD_LABEL_EMPTY,
509
+ ARIA_TYPE_FIELD_INPUT,
510
+ FIELD_LABEL_EDIT_PREFIX,
446
511
  } = kab;
package/msg/kbd-cyrl.js CHANGED
@@ -19,7 +19,29 @@ var Blockly = Blockly || { Msg: Object.create(null) };
19
19
 
20
20
  Blockly.Msg["ADD_COMMENT"] = "КIэщIэтхэн";
21
21
  Blockly.Msg["ALT_KEY"] = "Alt"; // untranslated
22
+ Blockly.Msg["ANNOUNCE_MOVE_AFTER"] = "moving %1 after %3"; // untranslated
23
+ Blockly.Msg["ANNOUNCE_MOVE_AROUND"] = "moving %1 %2 around %3"; // untranslated
24
+ Blockly.Msg["ANNOUNCE_MOVE_BEFORE"] = "moving %1 before %3"; // untranslated
25
+ Blockly.Msg["ANNOUNCE_MOVE_CANCELED"] = "Canceled movement"; // untranslated
26
+ Blockly.Msg["ANNOUNCE_MOVE_INSIDE"] = "moving %1 inside %3 %4"; // untranslated
27
+ Blockly.Msg["ANNOUNCE_MOVE_TO"] = "moving %1 %2 to %3 %4"; // untranslated
28
+ Blockly.Msg["ANNOUNCE_MOVE_WORKSPACE"] = "moving %1 on workspace"; // untranslated
29
+ Blockly.Msg["ARIA_TYPE_FIELD_INPUT"] = "input field"; // untranslated
30
+ Blockly.Msg["BACKSPACE_KEY"] = "Backspace"; // untranslated
31
+ Blockly.Msg["BLOCK_LABEL_BEGIN_PREFIX"] = "Begin %1"; // untranslated
32
+ Blockly.Msg["BLOCK_LABEL_BEGIN_STACK"] = "Begin stack"; // untranslated
33
+ Blockly.Msg["BLOCK_LABEL_COLLAPSED"] = "collapsed"; // untranslated
34
+ Blockly.Msg["BLOCK_LABEL_CONTAINER"] = "container"; // untranslated
35
+ Blockly.Msg["BLOCK_LABEL_DISABLED"] = "disabled"; // untranslated
36
+ Blockly.Msg["BLOCK_LABEL_HAS_INPUT"] = "has input"; // untranslated
37
+ Blockly.Msg["BLOCK_LABEL_HAS_INPUTS"] = "has inputs"; // untranslated
38
+ Blockly.Msg["BLOCK_LABEL_REPLACEABLE"] = "replaceable"; // untranslated
39
+ Blockly.Msg["BLOCK_LABEL_STACK_BLOCKS"] = "%1 stack blocks"; // untranslated
40
+ Blockly.Msg["BLOCK_LABEL_STATEMENT"] = "statement"; // untranslated
41
+ Blockly.Msg["BLOCK_LABEL_TOOLBOX_CATEGORY"] = "%1 category"; // untranslated
42
+ Blockly.Msg["BLOCK_LABEL_VALUE"] = "value"; // untranslated
22
43
  Blockly.Msg["CANNOT_DELETE_VARIABLE_PROCEDURE"] = "Can't delete the variable '%1' because it's part of the definition of the function '%2'"; // untranslated
44
+ Blockly.Msg["CAPS_LOCK_KEY"] = "Caps Lock"; // untranslated
23
45
  Blockly.Msg["CHANGE_VALUE_TITLE"] = "Change value:"; // untranslated
24
46
  Blockly.Msg["CHROME_OS"] = "ChromeOS"; // untranslated
25
47
  Blockly.Msg["CLEAN_UP"] = "Clean up Blocks"; // untranslated
@@ -45,6 +67,7 @@ Blockly.Msg["COLOUR_RGB_RED"] = "плъыжьу";
45
67
  Blockly.Msg["COLOUR_RGB_TITLE"] = "плъыфэхэм щыщ";
46
68
  Blockly.Msg["COLOUR_RGB_TOOLTIP"] = "Create a colour with the specified amount of red, green, and blue. All values must be between 0 and 100."; // untranslated
47
69
  Blockly.Msg["COMMAND_KEY"] = "⌘ Command"; // untranslated
70
+ Blockly.Msg["CONTEXT_MENU_KEY"] = "≣ Menu"; // untranslated
48
71
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
49
72
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK"] = "break out of loop"; // untranslated
50
73
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE"] = "continue with next iteration of loop"; // untranslated
@@ -82,6 +105,7 @@ Blockly.Msg["COPY_SHORTCUT"] = "Copy"; // untranslated
82
105
  Blockly.Msg["CUT_SHORTCUT"] = "Cut"; // untranslated
83
106
  Blockly.Msg["DELETE_ALL_BLOCKS"] = "Delete all %1 blocks?"; // untranslated
84
107
  Blockly.Msg["DELETE_BLOCK"] = "Блокыр тегъэкIын";
108
+ Blockly.Msg["DELETE_KEY"] = "Delete"; // untranslated
85
109
  Blockly.Msg["DELETE_VARIABLE"] = "Delete the '%1' variable"; // untranslated
86
110
  Blockly.Msg["DELETE_VARIABLE_CONFIRMATION"] = "Delete %1 uses of the '%2' variable?"; // untranslated
87
111
  Blockly.Msg["DELETE_X_BLOCKS"] = "Блоку %1 тегъэкIын";
@@ -92,16 +116,26 @@ Blockly.Msg["DUPLICATE_BLOCK"] = "ЩIэтхыкIын";
92
116
  Blockly.Msg["DUPLICATE_COMMENT"] = "Duplicate Comment"; // untranslated
93
117
  Blockly.Msg["EDIT_BLOCK_CONTENTS"] = "Edit Block contents"; // untranslated
94
118
  Blockly.Msg["ENABLE_BLOCK"] = "Блокыр щIэгъэнэн";
119
+ Blockly.Msg["END_KEY"] = "End"; // untranslated
120
+ Blockly.Msg["ENTER_KEY"] = "Enter"; // untranslated
121
+ Blockly.Msg["ESCAPE"] = "Esc"; // untranslated
95
122
  Blockly.Msg["EXPAND_ALL"] = "Блокхэр зэкIуэц1ыхын";
96
123
  Blockly.Msg["EXPAND_BLOCK"] = "Блокыр зэкIуэц1ыхын";
97
124
  Blockly.Msg["EXTERNAL_INPUTS"] = "External Inputs"; // untranslated
125
+ Blockly.Msg["FIELD_LABEL_EDIT_PREFIX"] = "Edit %1"; // untranslated
126
+ Blockly.Msg["FIELD_LABEL_EMPTY"] = "empty"; // untranslated
98
127
  Blockly.Msg["HELP"] = "ДэӀэпыкъуэгъуэ";
99
128
  Blockly.Msg["HELP_PROMPT"] = "Press %1 for help on keyboard controls"; // untranslated
129
+ Blockly.Msg["HOME_KEY"] = "Home"; // untranslated
100
130
  Blockly.Msg["INLINE_INPUTS"] = "Inline Inputs"; // untranslated
131
+ Blockly.Msg["INPUT_LABEL_INDEX"] = "input %1"; // untranslated
132
+ Blockly.Msg["INSERT_KEY"] = "Insert"; // untranslated
133
+ Blockly.Msg["KEYBOARD_NAV_BLOCK_NAVIGATION_HINT"] = "Use the right arrow key to navigate inside of blocks"; // untranslated
101
134
  Blockly.Msg["KEYBOARD_NAV_CONSTRAINED_MOVE_HINT"] = "Use the arrow keys to move, then %1 to accept the position"; // untranslated
102
135
  Blockly.Msg["KEYBOARD_NAV_COPIED_HINT"] = "Copied. Press %1 to paste."; // untranslated
103
136
  Blockly.Msg["KEYBOARD_NAV_CUT_HINT"] = "Cut. Press %1 to paste."; // untranslated
104
137
  Blockly.Msg["KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT"] = "Hold %1 and use arrow keys to move freely, then %2 to accept the position"; // untranslated
138
+ Blockly.Msg["KEYBOARD_NAV_WORKSPACE_NAVIGATION_HINT"] = "Use the arrow keys to navigate"; // untranslated
105
139
  Blockly.Msg["LINUX"] = "Linux"; // untranslated
106
140
  Blockly.Msg["LISTS_CREATE_EMPTY_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#create-empty-list"; // untranslated
107
141
  Blockly.Msg["LISTS_CREATE_EMPTY_TITLE"] = "create empty list"; // untranslated
@@ -311,7 +345,10 @@ Blockly.Msg["NEW_VARIABLE_TITLE"] = "New variable name:"; // untranslated
311
345
  Blockly.Msg["NEW_VARIABLE_TYPE_TITLE"] = "New variable type:"; // untranslated
312
346
  Blockly.Msg["OPTION_KEY"] = "⌥ Option"; // untranslated
313
347
  Blockly.Msg["ORDINAL_NUMBER_SUFFIX"] = ""; // untranslated
348
+ Blockly.Msg["PAGE_DOWN_KEY"] = "Page Down"; // untranslated
349
+ Blockly.Msg["PAGE_UP_KEY"] = "Page Up"; // untranslated
314
350
  Blockly.Msg["PASTE_SHORTCUT"] = "Paste"; // untranslated
351
+ Blockly.Msg["PAUSE_KEY"] = "Pause"; // untranslated
315
352
  Blockly.Msg["PROCEDURES_ALLOW_STATEMENTS"] = "allow statements"; // untranslated
316
353
  Blockly.Msg["PROCEDURES_BEFORE_PARAMS"] = "игъусэр:";
317
354
  Blockly.Msg["PROCEDURES_CALLNORETURN_HELPURL"] = "https://en.wikipedia.org/wiki/Subroutine"; // untranslated
@@ -343,9 +380,32 @@ Blockly.Msg["REDO"] = "Redo"; // untranslated
343
380
  Blockly.Msg["REMOVE_COMMENT"] = "КIэщIэтхэр тегъэкIыжын";
344
381
  Blockly.Msg["RENAME_VARIABLE"] = "Rename variable..."; // untranslated
345
382
  Blockly.Msg["RENAME_VARIABLE_TITLE"] = "Rename all '%1' variables to:"; // untranslated
383
+ Blockly.Msg["SHIFT_KEY"] = "Shift"; // untranslated
384
+ Blockly.Msg["SHORTCUTS_ABORT_MOVE"] = "Abort move"; // untranslated
385
+ Blockly.Msg["SHORTCUTS_CLEANUP"] = "Clean up workspace"; // untranslated
346
386
  Blockly.Msg["SHORTCUTS_CODE_NAVIGATION"] = "Code navigation"; // untranslated
387
+ Blockly.Msg["SHORTCUTS_DELETE"] = "Delete"; // untranslated
388
+ Blockly.Msg["SHORTCUTS_DISCONNECT"] = "Disconnect block"; // untranslated
389
+ Blockly.Msg["SHORTCUTS_DUPLICATE"] = "Duplicate"; // untranslated
347
390
  Blockly.Msg["SHORTCUTS_EDITING"] = "Editing"; // untranslated
391
+ Blockly.Msg["SHORTCUTS_ESCAPE"] = "Exit"; // untranslated
392
+ Blockly.Msg["SHORTCUTS_FINISH_MOVE"] = "Finish move"; // untranslated
393
+ Blockly.Msg["SHORTCUTS_FOCUS_TOOLBOX"] = "Focus toolbox"; // untranslated
394
+ Blockly.Msg["SHORTCUTS_FOCUS_WORKSPACE"] = "Focus workspace"; // untranslated
348
395
  Blockly.Msg["SHORTCUTS_GENERAL"] = "General"; // untranslated
396
+ Blockly.Msg["SHORTCUTS_INFORMATION"] = "Announce information"; // untranslated
397
+ Blockly.Msg["SHORTCUTS_MOVE_DOWN"] = "Move down"; // untranslated
398
+ Blockly.Msg["SHORTCUTS_MOVE_LEFT"] = "Move left"; // untranslated
399
+ Blockly.Msg["SHORTCUTS_MOVE_RIGHT"] = "Move right"; // untranslated
400
+ Blockly.Msg["SHORTCUTS_MOVE_UP"] = "Move up"; // untranslated
401
+ Blockly.Msg["SHORTCUTS_NEXT_STACK"] = "Next stack"; // untranslated
402
+ Blockly.Msg["SHORTCUTS_PERFORM_ACTION"] = "Edit or confirm"; // untranslated
403
+ Blockly.Msg["SHORTCUTS_PREVIOUS_STACK"] = "Previous stack"; // untranslated
404
+ Blockly.Msg["SHORTCUTS_SHOW_CONTEXT_MENU"] = "Show menu"; // untranslated
405
+ Blockly.Msg["SHORTCUTS_START_MOVE"] = "Start move"; // untranslated
406
+ Blockly.Msg["SHORTCUTS_START_MOVE_STACK"] = "Start move stack"; // untranslated
407
+ Blockly.Msg["SPACE_KEY"] = "Space"; // untranslated
408
+ Blockly.Msg["TAB_KEY"] = "Tab"; // untranslated
349
409
  Blockly.Msg["TEXT_APPEND_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#text-modification"; // untranslated
350
410
  Blockly.Msg["TEXT_APPEND_TITLE"] = "to %1 append text %2"; // untranslated
351
411
  Blockly.Msg["TEXT_APPEND_TOOLTIP"] = "Append some text to variable '%1'."; // untranslated
@@ -432,6 +492,11 @@ Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_A_PARAMETER"] = "A variable named '%1'
432
492
  Blockly.Msg["WINDOWS"] = "Windows"; // untranslated
433
493
  Blockly.Msg["WORKSPACE_ARIA_LABEL"] = "Blockly Workspace"; // untranslated
434
494
  Blockly.Msg["WORKSPACE_COMMENT_DEFAULT_TEXT"] = "Say something..."; // untranslated
495
+ Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_MANY"] = "%1 stacks of blocks%2 in workspace."; // untranslated
496
+ Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ONE"] = "One stack of blocks%2 in workspace."; // untranslated
497
+ Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ZERO"] = "No blocks%2 in workspace."; // untranslated
498
+ Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_MANY"] = " and %1 comments"; // untranslated
499
+ Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_ONE"] = " and one comment"; // untranslated
435
500
  Blockly.Msg["CONTROLS_FOREACH_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
436
501
  Blockly.Msg["CONTROLS_FOR_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
437
502
  Blockly.Msg["CONTROLS_IF_ELSEIF_TITLE_ELSEIF"] = Blockly.Msg["CONTROLS_IF_MSG_ELSEIF"];
package/msg/kbd-cyrl.mjs CHANGED
@@ -432,6 +432,21 @@ export const {
432
432
  COMMAND_KEY,
433
433
  OPTION_KEY,
434
434
  ALT_KEY,
435
+ ENTER_KEY,
436
+ BACKSPACE_KEY,
437
+ DELETE_KEY,
438
+ ESCAPE,
439
+ TAB_KEY,
440
+ SHIFT_KEY,
441
+ CAPS_LOCK_KEY,
442
+ SPACE_KEY,
443
+ PAGE_UP_KEY,
444
+ PAGE_DOWN_KEY,
445
+ END_KEY,
446
+ HOME_KEY,
447
+ INSERT_KEY,
448
+ PAUSE_KEY,
449
+ CONTEXT_MENU_KEY,
435
450
  CUT_SHORTCUT,
436
451
  COPY_SHORTCUT,
437
452
  PASTE_SHORTCUT,
@@ -439,8 +454,58 @@ export const {
439
454
  SHORTCUTS_GENERAL,
440
455
  SHORTCUTS_EDITING,
441
456
  SHORTCUTS_CODE_NAVIGATION,
457
+ SHORTCUTS_ESCAPE,
458
+ SHORTCUTS_DELETE,
459
+ SHORTCUTS_START_MOVE,
460
+ SHORTCUTS_START_MOVE_STACK,
461
+ SHORTCUTS_MOVE_LEFT,
462
+ SHORTCUTS_MOVE_RIGHT,
463
+ SHORTCUTS_MOVE_UP,
464
+ SHORTCUTS_MOVE_DOWN,
465
+ SHORTCUTS_FINISH_MOVE,
466
+ SHORTCUTS_ABORT_MOVE,
467
+ SHORTCUTS_SHOW_CONTEXT_MENU,
468
+ SHORTCUTS_FOCUS_WORKSPACE,
469
+ SHORTCUTS_FOCUS_TOOLBOX,
470
+ SHORTCUTS_INFORMATION,
471
+ SHORTCUTS_DISCONNECT,
472
+ SHORTCUTS_NEXT_STACK,
473
+ SHORTCUTS_PREVIOUS_STACK,
474
+ SHORTCUTS_PERFORM_ACTION,
475
+ SHORTCUTS_DUPLICATE,
476
+ SHORTCUTS_CLEANUP,
442
477
  KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT,
443
478
  KEYBOARD_NAV_CONSTRAINED_MOVE_HINT,
444
479
  KEYBOARD_NAV_COPIED_HINT,
445
480
  KEYBOARD_NAV_CUT_HINT,
481
+ WORKSPACE_CONTENTS_BLOCKS_MANY,
482
+ WORKSPACE_CONTENTS_BLOCKS_ONE,
483
+ WORKSPACE_CONTENTS_BLOCKS_ZERO,
484
+ WORKSPACE_CONTENTS_COMMENTS_MANY,
485
+ WORKSPACE_CONTENTS_COMMENTS_ONE,
486
+ KEYBOARD_NAV_BLOCK_NAVIGATION_HINT,
487
+ KEYBOARD_NAV_WORKSPACE_NAVIGATION_HINT,
488
+ BLOCK_LABEL_BEGIN_STACK,
489
+ BLOCK_LABEL_BEGIN_PREFIX,
490
+ BLOCK_LABEL_TOOLBOX_CATEGORY,
491
+ BLOCK_LABEL_DISABLED,
492
+ BLOCK_LABEL_COLLAPSED,
493
+ BLOCK_LABEL_REPLACEABLE,
494
+ BLOCK_LABEL_HAS_INPUT,
495
+ BLOCK_LABEL_HAS_INPUTS,
496
+ BLOCK_LABEL_STATEMENT,
497
+ BLOCK_LABEL_CONTAINER,
498
+ BLOCK_LABEL_VALUE,
499
+ BLOCK_LABEL_STACK_BLOCKS,
500
+ INPUT_LABEL_INDEX,
501
+ ANNOUNCE_MOVE_WORKSPACE,
502
+ ANNOUNCE_MOVE_BEFORE,
503
+ ANNOUNCE_MOVE_AFTER,
504
+ ANNOUNCE_MOVE_INSIDE,
505
+ ANNOUNCE_MOVE_AROUND,
506
+ ANNOUNCE_MOVE_TO,
507
+ ANNOUNCE_MOVE_CANCELED,
508
+ FIELD_LABEL_EMPTY,
509
+ ARIA_TYPE_FIELD_INPUT,
510
+ FIELD_LABEL_EDIT_PREFIX,
446
511
  } = kbd_cyrl;
package/msg/km.js CHANGED
@@ -19,7 +19,29 @@ var Blockly = Blockly || { Msg: Object.create(null) };
19
19
 
20
20
  Blockly.Msg["ADD_COMMENT"] = "បន្ថែមមតិ";
21
21
  Blockly.Msg["ALT_KEY"] = "Alt"; // untranslated
22
+ Blockly.Msg["ANNOUNCE_MOVE_AFTER"] = "moving %1 after %3"; // untranslated
23
+ Blockly.Msg["ANNOUNCE_MOVE_AROUND"] = "moving %1 %2 around %3"; // untranslated
24
+ Blockly.Msg["ANNOUNCE_MOVE_BEFORE"] = "moving %1 before %3"; // untranslated
25
+ Blockly.Msg["ANNOUNCE_MOVE_CANCELED"] = "Canceled movement"; // untranslated
26
+ Blockly.Msg["ANNOUNCE_MOVE_INSIDE"] = "moving %1 inside %3 %4"; // untranslated
27
+ Blockly.Msg["ANNOUNCE_MOVE_TO"] = "moving %1 %2 to %3 %4"; // untranslated
28
+ Blockly.Msg["ANNOUNCE_MOVE_WORKSPACE"] = "moving %1 on workspace"; // untranslated
29
+ Blockly.Msg["ARIA_TYPE_FIELD_INPUT"] = "input field"; // untranslated
30
+ Blockly.Msg["BACKSPACE_KEY"] = "Backspace"; // untranslated
31
+ Blockly.Msg["BLOCK_LABEL_BEGIN_PREFIX"] = "Begin %1"; // untranslated
32
+ Blockly.Msg["BLOCK_LABEL_BEGIN_STACK"] = "Begin stack"; // untranslated
33
+ Blockly.Msg["BLOCK_LABEL_COLLAPSED"] = "collapsed"; // untranslated
34
+ Blockly.Msg["BLOCK_LABEL_CONTAINER"] = "container"; // untranslated
35
+ Blockly.Msg["BLOCK_LABEL_DISABLED"] = "disabled"; // untranslated
36
+ Blockly.Msg["BLOCK_LABEL_HAS_INPUT"] = "has input"; // untranslated
37
+ Blockly.Msg["BLOCK_LABEL_HAS_INPUTS"] = "has inputs"; // untranslated
38
+ Blockly.Msg["BLOCK_LABEL_REPLACEABLE"] = "replaceable"; // untranslated
39
+ Blockly.Msg["BLOCK_LABEL_STACK_BLOCKS"] = "%1 stack blocks"; // untranslated
40
+ Blockly.Msg["BLOCK_LABEL_STATEMENT"] = "statement"; // untranslated
41
+ Blockly.Msg["BLOCK_LABEL_TOOLBOX_CATEGORY"] = "%1 category"; // untranslated
42
+ Blockly.Msg["BLOCK_LABEL_VALUE"] = "value"; // untranslated
22
43
  Blockly.Msg["CANNOT_DELETE_VARIABLE_PROCEDURE"] = "Can't delete the variable '%1' because it's part of the definition of the function '%2'"; // untranslated
44
+ Blockly.Msg["CAPS_LOCK_KEY"] = "Caps Lock"; // untranslated
23
45
  Blockly.Msg["CHANGE_VALUE_TITLE"] = "ប្ដូរតម្លៃ៖";
24
46
  Blockly.Msg["CHROME_OS"] = "ChromeOS"; // untranslated
25
47
  Blockly.Msg["CLEAN_UP"] = "Clean up Blocks"; // untranslated
@@ -45,6 +67,7 @@ Blockly.Msg["COLOUR_RGB_RED"] = "red"; // untranslated
45
67
  Blockly.Msg["COLOUR_RGB_TITLE"] = "colour with"; // untranslated
46
68
  Blockly.Msg["COLOUR_RGB_TOOLTIP"] = "Create a colour with the specified amount of red, green, and blue. All values must be between 0 and 100."; // untranslated
47
69
  Blockly.Msg["COMMAND_KEY"] = "⌘ Command"; // untranslated
70
+ Blockly.Msg["CONTEXT_MENU_KEY"] = "≣ Menu"; // untranslated
48
71
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
49
72
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK"] = "break out of loop"; // untranslated
50
73
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE"] = "continue with next iteration of loop"; // untranslated
@@ -82,6 +105,7 @@ Blockly.Msg["COPY_SHORTCUT"] = "Copy"; // untranslated
82
105
  Blockly.Msg["CUT_SHORTCUT"] = "Cut"; // untranslated
83
106
  Blockly.Msg["DELETE_ALL_BLOCKS"] = "លុបប្លុក %1 ទាំងអស់?";
84
107
  Blockly.Msg["DELETE_BLOCK"] = "លុបប្លុក";
108
+ Blockly.Msg["DELETE_KEY"] = "Delete"; // untranslated
85
109
  Blockly.Msg["DELETE_VARIABLE"] = "Delete the '%1' variable"; // untranslated
86
110
  Blockly.Msg["DELETE_VARIABLE_CONFIRMATION"] = "Delete %1 uses of the '%2' variable?"; // untranslated
87
111
  Blockly.Msg["DELETE_X_BLOCKS"] = "លុបប្លុក %1";
@@ -92,16 +116,26 @@ Blockly.Msg["DUPLICATE_BLOCK"] = "ធ្វើស្ទួន";
92
116
  Blockly.Msg["DUPLICATE_COMMENT"] = "Duplicate Comment"; // untranslated
93
117
  Blockly.Msg["EDIT_BLOCK_CONTENTS"] = "Edit Block contents"; // untranslated
94
118
  Blockly.Msg["ENABLE_BLOCK"] = "បើកប្លុក";
119
+ Blockly.Msg["END_KEY"] = "End"; // untranslated
120
+ Blockly.Msg["ENTER_KEY"] = "Enter"; // untranslated
121
+ Blockly.Msg["ESCAPE"] = "Esc"; // untranslated
95
122
  Blockly.Msg["EXPAND_ALL"] = "Expand Blocks"; // untranslated
96
123
  Blockly.Msg["EXPAND_BLOCK"] = "Expand Block"; // untranslated
97
124
  Blockly.Msg["EXTERNAL_INPUTS"] = "ធាតុបញ្ចូលខាងក្រៅ";
125
+ Blockly.Msg["FIELD_LABEL_EDIT_PREFIX"] = "Edit %1"; // untranslated
126
+ Blockly.Msg["FIELD_LABEL_EMPTY"] = "empty"; // untranslated
98
127
  Blockly.Msg["HELP"] = "ជំនួយ";
99
128
  Blockly.Msg["HELP_PROMPT"] = "Press %1 for help on keyboard controls"; // untranslated
129
+ Blockly.Msg["HOME_KEY"] = "Home"; // untranslated
100
130
  Blockly.Msg["INLINE_INPUTS"] = "Inline Inputs"; // untranslated
131
+ Blockly.Msg["INPUT_LABEL_INDEX"] = "input %1"; // untranslated
132
+ Blockly.Msg["INSERT_KEY"] = "Insert"; // untranslated
133
+ Blockly.Msg["KEYBOARD_NAV_BLOCK_NAVIGATION_HINT"] = "Use the right arrow key to navigate inside of blocks"; // untranslated
101
134
  Blockly.Msg["KEYBOARD_NAV_CONSTRAINED_MOVE_HINT"] = "Use the arrow keys to move, then %1 to accept the position"; // untranslated
102
135
  Blockly.Msg["KEYBOARD_NAV_COPIED_HINT"] = "Copied. Press %1 to paste."; // untranslated
103
136
  Blockly.Msg["KEYBOARD_NAV_CUT_HINT"] = "Cut. Press %1 to paste."; // untranslated
104
137
  Blockly.Msg["KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT"] = "Hold %1 and use arrow keys to move freely, then %2 to accept the position"; // untranslated
138
+ Blockly.Msg["KEYBOARD_NAV_WORKSPACE_NAVIGATION_HINT"] = "Use the arrow keys to navigate"; // untranslated
105
139
  Blockly.Msg["LINUX"] = "Linux"; // untranslated
106
140
  Blockly.Msg["LISTS_CREATE_EMPTY_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#create-empty-list"; // untranslated
107
141
  Blockly.Msg["LISTS_CREATE_EMPTY_TITLE"] = "create empty list"; // untranslated
@@ -311,7 +345,10 @@ Blockly.Msg["NEW_VARIABLE_TITLE"] = "ឈ្មោះអថេរថ្មី៖"
311
345
  Blockly.Msg["NEW_VARIABLE_TYPE_TITLE"] = "New variable type:"; // untranslated
312
346
  Blockly.Msg["OPTION_KEY"] = "⌥ Option"; // untranslated
313
347
  Blockly.Msg["ORDINAL_NUMBER_SUFFIX"] = ""; // untranslated
348
+ Blockly.Msg["PAGE_DOWN_KEY"] = "Page Down"; // untranslated
349
+ Blockly.Msg["PAGE_UP_KEY"] = "Page Up"; // untranslated
314
350
  Blockly.Msg["PASTE_SHORTCUT"] = "Paste"; // untranslated
351
+ Blockly.Msg["PAUSE_KEY"] = "Pause"; // untranslated
315
352
  Blockly.Msg["PROCEDURES_ALLOW_STATEMENTS"] = "allow statements"; // untranslated
316
353
  Blockly.Msg["PROCEDURES_BEFORE_PARAMS"] = "with:"; // untranslated
317
354
  Blockly.Msg["PROCEDURES_CALLNORETURN_HELPURL"] = "https://en.wikipedia.org/wiki/Subroutine"; // untranslated
@@ -343,9 +380,32 @@ Blockly.Msg["REDO"] = "ធ្វើវិញ";
343
380
  Blockly.Msg["REMOVE_COMMENT"] = "ដកមតិចេញ";
344
381
  Blockly.Msg["RENAME_VARIABLE"] = "ដកអថេរចេញ...";
345
382
  Blockly.Msg["RENAME_VARIABLE_TITLE"] = "ប្ដូរឈ្មោះអថេរទាំង '%1' ទៅជា៖";
383
+ Blockly.Msg["SHIFT_KEY"] = "Shift"; // untranslated
384
+ Blockly.Msg["SHORTCUTS_ABORT_MOVE"] = "Abort move"; // untranslated
385
+ Blockly.Msg["SHORTCUTS_CLEANUP"] = "Clean up workspace"; // untranslated
346
386
  Blockly.Msg["SHORTCUTS_CODE_NAVIGATION"] = "Code navigation"; // untranslated
387
+ Blockly.Msg["SHORTCUTS_DELETE"] = "Delete"; // untranslated
388
+ Blockly.Msg["SHORTCUTS_DISCONNECT"] = "Disconnect block"; // untranslated
389
+ Blockly.Msg["SHORTCUTS_DUPLICATE"] = "Duplicate"; // untranslated
347
390
  Blockly.Msg["SHORTCUTS_EDITING"] = "Editing"; // untranslated
391
+ Blockly.Msg["SHORTCUTS_ESCAPE"] = "Exit"; // untranslated
392
+ Blockly.Msg["SHORTCUTS_FINISH_MOVE"] = "Finish move"; // untranslated
393
+ Blockly.Msg["SHORTCUTS_FOCUS_TOOLBOX"] = "Focus toolbox"; // untranslated
394
+ Blockly.Msg["SHORTCUTS_FOCUS_WORKSPACE"] = "Focus workspace"; // untranslated
348
395
  Blockly.Msg["SHORTCUTS_GENERAL"] = "General"; // untranslated
396
+ Blockly.Msg["SHORTCUTS_INFORMATION"] = "Announce information"; // untranslated
397
+ Blockly.Msg["SHORTCUTS_MOVE_DOWN"] = "Move down"; // untranslated
398
+ Blockly.Msg["SHORTCUTS_MOVE_LEFT"] = "Move left"; // untranslated
399
+ Blockly.Msg["SHORTCUTS_MOVE_RIGHT"] = "Move right"; // untranslated
400
+ Blockly.Msg["SHORTCUTS_MOVE_UP"] = "Move up"; // untranslated
401
+ Blockly.Msg["SHORTCUTS_NEXT_STACK"] = "Next stack"; // untranslated
402
+ Blockly.Msg["SHORTCUTS_PERFORM_ACTION"] = "Edit or confirm"; // untranslated
403
+ Blockly.Msg["SHORTCUTS_PREVIOUS_STACK"] = "Previous stack"; // untranslated
404
+ Blockly.Msg["SHORTCUTS_SHOW_CONTEXT_MENU"] = "Show menu"; // untranslated
405
+ Blockly.Msg["SHORTCUTS_START_MOVE"] = "Start move"; // untranslated
406
+ Blockly.Msg["SHORTCUTS_START_MOVE_STACK"] = "Start move stack"; // untranslated
407
+ Blockly.Msg["SPACE_KEY"] = "Space"; // untranslated
408
+ Blockly.Msg["TAB_KEY"] = "Tab"; // untranslated
349
409
  Blockly.Msg["TEXT_APPEND_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#text-modification"; // untranslated
350
410
  Blockly.Msg["TEXT_APPEND_TITLE"] = "to %1 append text %2"; // untranslated
351
411
  Blockly.Msg["TEXT_APPEND_TOOLTIP"] = "Append some text to variable '%1'."; // untranslated
@@ -432,6 +492,11 @@ Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_A_PARAMETER"] = "A variable named '%1'
432
492
  Blockly.Msg["WINDOWS"] = "Windows"; // untranslated
433
493
  Blockly.Msg["WORKSPACE_ARIA_LABEL"] = "Blockly Workspace"; // untranslated
434
494
  Blockly.Msg["WORKSPACE_COMMENT_DEFAULT_TEXT"] = "Say something..."; // untranslated
495
+ Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_MANY"] = "%1 stacks of blocks%2 in workspace."; // untranslated
496
+ Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ONE"] = "One stack of blocks%2 in workspace."; // untranslated
497
+ Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ZERO"] = "No blocks%2 in workspace."; // untranslated
498
+ Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_MANY"] = " and %1 comments"; // untranslated
499
+ Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_ONE"] = " and one comment"; // untranslated
435
500
  Blockly.Msg["CONTROLS_FOREACH_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
436
501
  Blockly.Msg["CONTROLS_FOR_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
437
502
  Blockly.Msg["CONTROLS_IF_ELSEIF_TITLE_ELSEIF"] = Blockly.Msg["CONTROLS_IF_MSG_ELSEIF"];
package/msg/km.mjs CHANGED
@@ -432,6 +432,21 @@ export const {
432
432
  COMMAND_KEY,
433
433
  OPTION_KEY,
434
434
  ALT_KEY,
435
+ ENTER_KEY,
436
+ BACKSPACE_KEY,
437
+ DELETE_KEY,
438
+ ESCAPE,
439
+ TAB_KEY,
440
+ SHIFT_KEY,
441
+ CAPS_LOCK_KEY,
442
+ SPACE_KEY,
443
+ PAGE_UP_KEY,
444
+ PAGE_DOWN_KEY,
445
+ END_KEY,
446
+ HOME_KEY,
447
+ INSERT_KEY,
448
+ PAUSE_KEY,
449
+ CONTEXT_MENU_KEY,
435
450
  CUT_SHORTCUT,
436
451
  COPY_SHORTCUT,
437
452
  PASTE_SHORTCUT,
@@ -439,8 +454,58 @@ export const {
439
454
  SHORTCUTS_GENERAL,
440
455
  SHORTCUTS_EDITING,
441
456
  SHORTCUTS_CODE_NAVIGATION,
457
+ SHORTCUTS_ESCAPE,
458
+ SHORTCUTS_DELETE,
459
+ SHORTCUTS_START_MOVE,
460
+ SHORTCUTS_START_MOVE_STACK,
461
+ SHORTCUTS_MOVE_LEFT,
462
+ SHORTCUTS_MOVE_RIGHT,
463
+ SHORTCUTS_MOVE_UP,
464
+ SHORTCUTS_MOVE_DOWN,
465
+ SHORTCUTS_FINISH_MOVE,
466
+ SHORTCUTS_ABORT_MOVE,
467
+ SHORTCUTS_SHOW_CONTEXT_MENU,
468
+ SHORTCUTS_FOCUS_WORKSPACE,
469
+ SHORTCUTS_FOCUS_TOOLBOX,
470
+ SHORTCUTS_INFORMATION,
471
+ SHORTCUTS_DISCONNECT,
472
+ SHORTCUTS_NEXT_STACK,
473
+ SHORTCUTS_PREVIOUS_STACK,
474
+ SHORTCUTS_PERFORM_ACTION,
475
+ SHORTCUTS_DUPLICATE,
476
+ SHORTCUTS_CLEANUP,
442
477
  KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT,
443
478
  KEYBOARD_NAV_CONSTRAINED_MOVE_HINT,
444
479
  KEYBOARD_NAV_COPIED_HINT,
445
480
  KEYBOARD_NAV_CUT_HINT,
481
+ WORKSPACE_CONTENTS_BLOCKS_MANY,
482
+ WORKSPACE_CONTENTS_BLOCKS_ONE,
483
+ WORKSPACE_CONTENTS_BLOCKS_ZERO,
484
+ WORKSPACE_CONTENTS_COMMENTS_MANY,
485
+ WORKSPACE_CONTENTS_COMMENTS_ONE,
486
+ KEYBOARD_NAV_BLOCK_NAVIGATION_HINT,
487
+ KEYBOARD_NAV_WORKSPACE_NAVIGATION_HINT,
488
+ BLOCK_LABEL_BEGIN_STACK,
489
+ BLOCK_LABEL_BEGIN_PREFIX,
490
+ BLOCK_LABEL_TOOLBOX_CATEGORY,
491
+ BLOCK_LABEL_DISABLED,
492
+ BLOCK_LABEL_COLLAPSED,
493
+ BLOCK_LABEL_REPLACEABLE,
494
+ BLOCK_LABEL_HAS_INPUT,
495
+ BLOCK_LABEL_HAS_INPUTS,
496
+ BLOCK_LABEL_STATEMENT,
497
+ BLOCK_LABEL_CONTAINER,
498
+ BLOCK_LABEL_VALUE,
499
+ BLOCK_LABEL_STACK_BLOCKS,
500
+ INPUT_LABEL_INDEX,
501
+ ANNOUNCE_MOVE_WORKSPACE,
502
+ ANNOUNCE_MOVE_BEFORE,
503
+ ANNOUNCE_MOVE_AFTER,
504
+ ANNOUNCE_MOVE_INSIDE,
505
+ ANNOUNCE_MOVE_AROUND,
506
+ ANNOUNCE_MOVE_TO,
507
+ ANNOUNCE_MOVE_CANCELED,
508
+ FIELD_LABEL_EMPTY,
509
+ ARIA_TYPE_FIELD_INPUT,
510
+ FIELD_LABEL_EDIT_PREFIX,
446
511
  } = km;