iobroker.javascript 10.0.0 → 10.1.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 (180) hide show
  1. package/README.md +48 -12
  2. package/admin/assets/AiChatPanel-C_WbKMGX.js +242 -0
  3. package/admin/assets/AiDiffView-BtXbDWZ8.js +1 -0
  4. package/admin/assets/Debugger-DAdJnEhw.js +15 -0
  5. package/admin/assets/Error-DQ1pzKcf.js +1 -0
  6. package/admin/assets/Import-BjMtH6Gk.js +1 -0
  7. package/admin/assets/RulesEditor-dDRPHw4X.js +1 -0
  8. package/admin/assets/RulesEditor-k-DMHotH.css +1 -0
  9. package/admin/assets/{ScriptEditor-BGIuoNei.js → ScriptEditor-CZSc7rwE.js} +2 -2
  10. package/admin/assets/ScriptEditorVanillaMonaco-DEKg14_A.js +3 -0
  11. package/admin/assets/_virtual_mf-localSharedImportMap___mfe_internal__iobroker_javascript__mf_owner__1-DPmwd_G2.js +1 -0
  12. package/admin/assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-C8inUeKt.js +1243 -0
  13. package/admin/assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__1__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-VcQjt7_9.js +9 -0
  14. package/admin/assets/aiPromptBuilder-D5FDo74i.js +1 -0
  15. package/admin/assets/blockly-DBw-ytY1.js +1047 -0
  16. package/admin/assets/blocks_action-BqfWEwpf.js +1 -0
  17. package/admin/assets/blocks_convert-CX0i-JfS.js +3 -0
  18. package/admin/assets/blocks_logic-D-QSzw95.js +1 -0
  19. package/admin/assets/blocks_number-D7JuNYsw.js +1 -0
  20. package/admin/assets/blocks_object-C9DzAlc7.js +1 -0
  21. package/admin/assets/blocks_procedures-BJMz6HWW.js +3 -0
  22. package/admin/assets/blocks_sendto-DRh7lk9o.js +5 -0
  23. package/admin/assets/blocks_switch-BfmboMex.js +2 -0
  24. package/admin/assets/blocks_system-B-78JfAc.js +1 -0
  25. package/admin/assets/blocks_text-CGbR0Ozw.js +1 -0
  26. package/admin/assets/blocks_time-5vS2geJg.js +1 -0
  27. package/admin/assets/blocks_timeout-BdaTywfN.js +1 -0
  28. package/admin/assets/blocks_trigger-D8kgHKbg.js +2 -0
  29. package/admin/assets/blocks_words-BhHIf_1o.js +1 -0
  30. package/admin/assets/{cronHoverProvider-pKJkSevo.js → cronHoverProvider-DpgESCox.js} +1 -1
  31. package/admin/assets/dist-CaOsN0XW.js +4 -0
  32. package/admin/assets/field_cron-B40zwSfJ.js +1 -0
  33. package/admin/assets/field_oid-KfoBnEM9.js +1 -0
  34. package/admin/assets/field_script-yXhe1iCp.js +1 -0
  35. package/admin/assets/helpers-B0ByElPJ.js +1 -0
  36. package/admin/assets/hostInit-9REPDUe7.js +1 -0
  37. package/admin/assets/index-07o_WKsX.js +726 -0
  38. package/admin/assets/index-Z8Hkv58g.css +1 -0
  39. package/admin/assets/{inlineChatWidget-ZaisTOLh.js → inlineChatWidget-B9y_gQcH.js} +2 -2
  40. package/admin/assets/{inlineDiffController-hTwHHqcc.js → inlineDiffController-C07CdIFo.js} +2 -2
  41. package/admin/assets/{mf-entry-bootstrap-0-d6052b31.js → mf-entry-bootstrap-0-efcb49d3.js} +7 -2
  42. package/admin/assets/stateHoverProvider-CqeoOjXs.js +9 -0
  43. package/admin/assets/{virtualExposes-Ed0lGq7k.js → virtualExposes-DgGB-18P.js} +1 -1
  44. package/admin/assets/virtual_mf-REMOTE_ENTRY_ID___mfe_internal__iobroker_javascript__remoteEntry_js-BwSvIKEV.js +1 -0
  45. package/admin/assets/virtual_mf-exposes___mfe_internal__iobroker_javascript__remoteEntry_js-ChiJXsfH.js +1 -0
  46. package/admin/custom/assets/Components-BCQTjBgm.js +1 -0
  47. package/admin/custom/assets/_virtual_mf-localSharedImportMap___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1-BuAc8OyX.js +1 -0
  48. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1__loadShare___mf_0_emotion_mf_1_react__loadShare__.js-BGJv4zZP.js +1 -0
  49. package/admin/custom/assets/{_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1__loadShare___mf_0_emotion_mf_1_styled__loadShare__.js-CGb5Cofy.js → _virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1__loadShare___mf_0_emotion_mf_1_styled__loadShare__.js-B4E6MFJ4.js} +1 -1
  50. package/admin/custom/assets/{_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BVCIAgbo.js → _virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-aRlxyEhq.js} +78 -78
  51. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_json_mf_2_config__loadShare__.js-DQwzYx75.js +1494 -0
  52. package/admin/custom/assets/{_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1__loadShare__leaflet__loadShare__.js-h-rCw3iz.js → _virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1__loadShare__leaflet__loadShare__.js-n2zIPi0L.js} +1 -1
  53. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-xxszBNje.js +9 -0
  54. package/admin/custom/assets/{_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1__prebuild__date_mf_2_fns__prebuild__-Cb5TR7FB.js → _virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1__prebuild__date_mf_2_fns__prebuild__-Tq7tesSS.js} +1 -1
  55. package/admin/custom/assets/{_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1__prebuild__leaflet__prebuild__-DARUoA03.js → _virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1__prebuild__leaflet__prebuild__-BeF0jEWM.js} +1 -1
  56. package/admin/custom/assets/hostInit-CHwrowP4.js +1 -0
  57. package/admin/custom/assets/{index-uEKAoVT7.js → index-Cm6xl9K4.js} +1 -1
  58. package/admin/custom/assets/{lib-Yj8cfN0A.js → lib-bhrFL6jR.js} +1 -1
  59. package/admin/custom/assets/{mf-entry-bootstrap-0-77793feb.js → mf-entry-bootstrap-0-f08941e2.js} +7 -2
  60. package/admin/custom/assets/{setYear-DJ9FbdkO.js → setYear-DzTZ2h9A.js} +1 -1
  61. package/admin/custom/assets/virtualExposes-B5LJmnfO.js +1 -0
  62. package/admin/custom/assets/virtual_mf-REMOTE_ENTRY_ID___mfe_internal__ConfigCustomJavascriptSet__customComponents_js-ML-chjs6.js +1 -0
  63. package/admin/custom/assets/virtual_mf-exposes___mfe_internal__ConfigCustomJavascriptSet__customComponents_js-C3ImybiM.js +2 -0
  64. package/admin/custom/customComponents.js +12 -1
  65. package/admin/custom/i18n/de.json +11 -1
  66. package/admin/custom/i18n/en.json +11 -1
  67. package/admin/custom/i18n/es.json +11 -1
  68. package/admin/custom/i18n/fr.json +11 -1
  69. package/admin/custom/i18n/it.json +11 -1
  70. package/admin/custom/i18n/nl.json +11 -1
  71. package/admin/custom/i18n/pl.json +11 -1
  72. package/admin/custom/i18n/pt.json +11 -1
  73. package/admin/custom/i18n/ru.json +11 -1
  74. package/admin/custom/i18n/uk.json +11 -1
  75. package/admin/custom/i18n/zh-cn.json +11 -1
  76. package/admin/google-blockly/VERSION +1 -0
  77. package/admin/google-blockly/media/drop.mp3 +0 -0
  78. package/admin/google-blockly/msg/js/de.js +332 -56
  79. package/admin/google-blockly/msg/js/en.js +319 -43
  80. package/admin/google-blockly/msg/js/es.js +319 -42
  81. package/admin/google-blockly/msg/js/fr.js +315 -39
  82. package/admin/google-blockly/msg/js/it.js +327 -51
  83. package/admin/google-blockly/msg/js/nl.js +376 -100
  84. package/admin/google-blockly/msg/js/pl.js +318 -42
  85. package/admin/google-blockly/msg/js/pt.js +318 -42
  86. package/admin/google-blockly/msg/js/ru.js +320 -44
  87. package/admin/google-blockly/msg/js/uk.js +326 -50
  88. package/admin/google-blockly/msg/js/zh-cn.js +322 -46
  89. package/admin/i18n/de.json +51 -26
  90. package/admin/i18n/en.json +50 -25
  91. package/admin/i18n/es.json +51 -18
  92. package/admin/i18n/fr.json +50 -17
  93. package/admin/i18n/it.json +50 -17
  94. package/admin/i18n/nl.json +50 -17
  95. package/admin/i18n/pl.json +51 -18
  96. package/admin/i18n/pt.json +50 -17
  97. package/admin/i18n/ru.json +50 -17
  98. package/admin/i18n/uk.json +50 -17
  99. package/admin/i18n/zh-cn.json +50 -17
  100. package/admin/jsonConfig.json +398 -0
  101. package/admin/mf-manifest.json +1 -1
  102. package/admin/mf-stats.json +1 -1
  103. package/admin/remoteEntry.js +12 -1
  104. package/admin/tab.html +6 -98
  105. package/build/lib/javascript.d.ts +48 -0
  106. package/build/lib/mirror.js +9 -0
  107. package/build/lib/mirror.js.map +1 -1
  108. package/build/lib/sandbox.js +37 -0
  109. package/build/lib/sandbox.js.map +1 -1
  110. package/build/lib/secrets.js +220 -0
  111. package/build/lib/secrets.js.map +1 -0
  112. package/build/lib/typescriptSettings.js +112 -2
  113. package/build/lib/typescriptSettings.js.map +1 -1
  114. package/build/lib/typescriptTools.js +168 -43
  115. package/build/lib/typescriptTools.js.map +1 -1
  116. package/build/main.js +61 -5
  117. package/build/main.js.map +1 -1
  118. package/build/types.d.ts +48 -0
  119. package/docs/en/blockly.md +29 -0
  120. package/docs/en/javascript.md +72 -0
  121. package/docs/en/upgrade-guide.md +3 -0
  122. package/io-package.json +59 -28
  123. package/package.json +8 -3
  124. package/admin/assets/AiChatPanel-p0KAg6Cs.js +0 -237
  125. package/admin/assets/AiDiffView-BPTLnNx1.js +0 -1
  126. package/admin/assets/AiScriptAnalyzer--BHML2rN.js +0 -9
  127. package/admin/assets/BlocklyEditor-CAjVMhYT.js +0 -81
  128. package/admin/assets/ContextWrapper-BVc8wTK_.css +0 -1
  129. package/admin/assets/ContextWrapper-D9CrnNKs.js +0 -127
  130. package/admin/assets/Debugger-SjROokFI.js +0 -15
  131. package/admin/assets/Error-DDfrxAt2.js +0 -1
  132. package/admin/assets/Import-DpTg1Jow.js +0 -1
  133. package/admin/assets/RulesEditor-BSRFWpEm.css +0 -1
  134. package/admin/assets/RulesEditor-D0hgrcBc.js +0 -1
  135. package/admin/assets/ScriptEditorVanillaMonaco-DyMQtoTQ.js +0 -3
  136. package/admin/assets/_virtual_mf-localSharedImportMap___mfe_internal__iobroker_javascript__mf_owner__1-DWJotR1B.js +0 -1
  137. package/admin/assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-CxICLr5Z.js +0 -1243
  138. package/admin/assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__1__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-BBAXJaqI.js +0 -9
  139. package/admin/assets/aiCodeLensProvider-hyAmut0e.js +0 -4
  140. package/admin/assets/aiPromptBuilder-Bs27qOHT.js +0 -7
  141. package/admin/assets/blocklyDarkTheme-DEiAX5DT.js +0 -1
  142. package/admin/assets/dist-uw5orDgd.js +0 -4
  143. package/admin/assets/hostInit-BFg5u9hY.js +0 -1
  144. package/admin/assets/index-B1gICjdq.js +0 -192
  145. package/admin/assets/index-BHhhebRG.css +0 -1
  146. package/admin/assets/mjs-DWqivHEk.js +0 -90
  147. package/admin/assets/stateHoverProvider-C7DawIs-.js +0 -9
  148. package/admin/assets/virtual_mf-REMOTE_ENTRY_ID___mfe_internal__iobroker_javascript__remoteEntry_js-BYs71IQF.js +0 -1
  149. package/admin/assets/virtual_mf-exposes___mfe_internal__iobroker_javascript__remoteEntry_js-DnnXQRkG.js +0 -1
  150. package/admin/custom/assets/Components-BrDyDHXh.js +0 -1
  151. package/admin/custom/assets/_virtual_mf-localSharedImportMap___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1-CyYJM2-v.js +0 -1
  152. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1__loadShare___mf_0_emotion_mf_1_react__loadShare__.js-BdzCssLn.js +0 -1
  153. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_json_mf_2_config__loadShare__.js-BkB0anQX.js +0 -1494
  154. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-BotqDuw-.js +0 -9
  155. package/admin/custom/assets/hostInit-DJx2uXXy.js +0 -1
  156. package/admin/custom/assets/virtualExposes-CxDjLoYu.js +0 -1
  157. package/admin/custom/assets/virtual_mf-REMOTE_ENTRY_ID___mfe_internal__ConfigCustomJavascriptSet__customComponents_js-BU-ugy_7.js +0 -1
  158. package/admin/custom/assets/virtual_mf-exposes-ssr___mfe_internal__ConfigCustomJavascriptSet__customComponents_js-BEfZbrf7.js +0 -2
  159. package/admin/custom/assets/virtual_mf-exposes___mfe_internal__ConfigCustomJavascriptSet__customComponents_js-CTeZ0Jpm.js +0 -2
  160. package/admin/google-blockly/blockly_compressed.js +0 -1679
  161. package/admin/google-blockly/blocks_compressed.js +0 -193
  162. package/admin/google-blockly/javascript_compressed.js +0 -264
  163. package/admin/google-blockly/msg/messages.js +0 -1630
  164. package/admin/google-blockly/own/blocks_action.js +0 -765
  165. package/admin/google-blockly/own/blocks_convert.js +0 -480
  166. package/admin/google-blockly/own/blocks_logic.js +0 -459
  167. package/admin/google-blockly/own/blocks_number.js +0 -30
  168. package/admin/google-blockly/own/blocks_object.js +0 -402
  169. package/admin/google-blockly/own/blocks_procedures.js +0 -688
  170. package/admin/google-blockly/own/blocks_sendto.js +0 -702
  171. package/admin/google-blockly/own/blocks_switch.js +0 -257
  172. package/admin/google-blockly/own/blocks_system.js +0 -1409
  173. package/admin/google-blockly/own/blocks_text.js +0 -104
  174. package/admin/google-blockly/own/blocks_time.js +0 -639
  175. package/admin/google-blockly/own/blocks_timeout.js +0 -551
  176. package/admin/google-blockly/own/blocks_trigger.js +0 -1791
  177. package/admin/google-blockly/own/blocks_words.js +0 -708
  178. package/admin/google-blockly/own/field_cron.js +0 -158
  179. package/admin/google-blockly/own/field_oid.js +0 -642
  180. package/admin/google-blockly/own/field_script.js +0 -159
@@ -1,11 +1,84 @@
1
+ /* eslint-disable */
2
+ ;(function(root, factory) {
3
+ if (typeof define === 'function' && define.amd) { // AMD
4
+ define([], factory);
5
+ } else if (typeof exports === 'object') { // Node.js
6
+ module.exports = factory();
7
+ } else { // Browser
8
+ var messages = factory();
9
+ for (var key in messages) {
10
+ root.Blockly.Msg[key] = messages[key];
11
+ }
12
+ }
13
+ }(this, function() {
14
+ // This file was automatically generated. Do not modify.
15
+
1
16
  'use strict';
2
17
 
3
18
  var Blockly = Blockly || { Msg: Object.create(null) };
4
19
 
5
20
  Blockly.Msg["ADD_COMMENT"] = "添加注释";
21
+ Blockly.Msg["ALT_KEY"] = "Alt";
22
+ Blockly.Msg["ANNOUNCE_MOVE_AFTER"] = "Moving %1 after %2."; // untranslated
23
+ Blockly.Msg["ANNOUNCE_MOVE_AROUND"] = "Moving %1 around %2."; // untranslated
24
+ Blockly.Msg["ANNOUNCE_MOVE_BEFORE"] = "Moving %1 before %2."; // untranslated
25
+ Blockly.Msg["ANNOUNCE_MOVE_CANCELED"] = "Canceled movement."; // untranslated
26
+ Blockly.Msg["ANNOUNCE_MOVE_INSIDE"] = "Moving %1 inside %2."; // untranslated
27
+ Blockly.Msg["ANNOUNCE_MOVE_OF"] = "%1 of %2"; // untranslated
28
+ Blockly.Msg["ANNOUNCE_MOVE_TO"] = "Moving %1 to %2."; // untranslated
29
+ Blockly.Msg["ANNOUNCE_MOVE_WORKSPACE"] = "Moving %1 on workspace."; // untranslated
30
+ Blockly.Msg["ARIA_LABEL_ADD_ELSE_IF"] = "添加否则如果";
31
+ Blockly.Msg["ARIA_LABEL_ADD_INPUT"] = "添加输入";
32
+ Blockly.Msg["ARIA_LABEL_ADD_LIST_ITEM"] = "添加列表项目";
33
+ Blockly.Msg["ARIA_LABEL_ADD_TEXT"] = "添加文字";
34
+ Blockly.Msg["ARIA_LABEL_BUTTON"] = "button"; // untranslated
35
+ Blockly.Msg["ARIA_LABEL_COMMENT"] = "注释";
36
+ Blockly.Msg["ARIA_LABEL_COMMENT_COLLAPSE"] = "收起注释";
37
+ Blockly.Msg["ARIA_LABEL_COMMENT_EXPAND"] = "展开注释";
38
+ Blockly.Msg["ARIA_LABEL_FIELD_ANGLE"] = "%1度";
39
+ Blockly.Msg["ARIA_LABEL_HEADING"] = "heading"; // untranslated
40
+ Blockly.Msg["ARIA_LABEL_REMOVE_ELSE_IF"] = "移除否则如果";
41
+ Blockly.Msg["ARIA_LABEL_REMOVE_INPUT"] = "删除输入";
42
+ Blockly.Msg["ARIA_LABEL_REMOVE_LIST_ITEM"] = "移除列表中的项目";
43
+ Blockly.Msg["ARIA_LABEL_REMOVE_TEXT"] = "删除文字";
44
+ Blockly.Msg["ARIA_LABEL_TRASH_EMPTY"] = "垃圾桶,当前为空";
45
+ Blockly.Msg["ARIA_TYPE_FIELD_ANGLE"] = "角度";
46
+ Blockly.Msg["ARIA_TYPE_FIELD_BITMAP"] = "位图";
47
+ Blockly.Msg["ARIA_TYPE_FIELD_CHECKBOX"] = "checkbox"; // untranslated
48
+ Blockly.Msg["ARIA_TYPE_FIELD_COLOUR"] = "颜色";
49
+ Blockly.Msg["ARIA_TYPE_FIELD_DATE"] = "日期";
50
+ Blockly.Msg["ARIA_TYPE_FIELD_DROPDOWN"] = "dropdown"; // untranslated
51
+ Blockly.Msg["ARIA_TYPE_FIELD_GRID"] = "方格下拉框";
52
+ Blockly.Msg["ARIA_TYPE_FIELD_IMAGE"] = "image"; // untranslated
53
+ Blockly.Msg["ARIA_TYPE_FIELD_INPUT"] = "input"; // untranslated
54
+ Blockly.Msg["ARIA_TYPE_FIELD_NUMBER"] = "number"; // untranslated
55
+ Blockly.Msg["ARIA_TYPE_FIELD_TEXT_INPUT"] = "text"; // untranslated
56
+ Blockly.Msg["ARIA_TYPE_FIELD_TEXT_INPUT_ARGUMENT"] = "input name"; // untranslated
57
+ Blockly.Msg["ARIA_TYPE_FIELD_TEXT_INPUT_PROCEDURE"] = "function name"; // untranslated
58
+ Blockly.Msg["BACKSPACE_KEY"] = "退格";
59
+ Blockly.Msg["BLOCK_LABEL_BEGIN_PREFIX"] = "%1开始";
60
+ Blockly.Msg["BLOCK_LABEL_BEGIN_STACK"] = "块堆开始";
61
+ Blockly.Msg["BLOCK_LABEL_COLLAPSED"] = "已折叠";
62
+ Blockly.Msg["BLOCK_LABEL_CONTAINER"] = "容器";
63
+ Blockly.Msg["BLOCK_LABEL_DISABLED"] = "已禁用";
64
+ Blockly.Msg["BLOCK_LABEL_HAS_BRANCHES"] = "有%1个分支";
65
+ Blockly.Msg["BLOCK_LABEL_HAS_INPUT"] = "有输入";
66
+ Blockly.Msg["BLOCK_LABEL_HAS_INPUTS"] = "有输入";
67
+ Blockly.Msg["BLOCK_LABEL_REPLACEABLE"] = "可替换";
68
+ Blockly.Msg["BLOCK_LABEL_STACK_BLOCKS"] = "%1块堆";
69
+ Blockly.Msg["BLOCK_LABEL_STATEMENT"] = "语句";
70
+ Blockly.Msg["BLOCK_LABEL_TOOLBOX_CATEGORY"] = "%1分类";
71
+ Blockly.Msg["BLOCK_LABEL_VALUE"] = "值";
72
+ Blockly.Msg["BUBBLE_LABEL_COMMENT"] = "注释:%1";
73
+ Blockly.Msg["BUBBLE_LABEL_DEFAULT"] = "Bubble"; // untranslated
74
+ Blockly.Msg["BUBBLE_LABEL_WARNING"] = "警告:%1";
6
75
  Blockly.Msg["CANNOT_DELETE_VARIABLE_PROCEDURE"] = "不能删除变量“%1”,因为它是函数“%2”定义的一部分";
76
+ Blockly.Msg["CAPS_LOCK_KEY"] = "Caps Lock"; // untranslated
7
77
  Blockly.Msg["CHANGE_VALUE_TITLE"] = "更改值:";
78
+ Blockly.Msg["CHROME_OS"] = "ChromeOS";
8
79
  Blockly.Msg["CLEAN_UP"] = "整理块";
80
+ Blockly.Msg["CLOSE"] = "关闭";
81
+ Blockly.Msg["CLOSE_BACKPACK"] = "关闭背包";
9
82
  Blockly.Msg["COLLAPSED_WARNINGS_WARNING"] = "已收起的信息块内包含警告。";
10
83
  Blockly.Msg["COLLAPSE_ALL"] = "折叠块";
11
84
  Blockly.Msg["COLLAPSE_BLOCK"] = "折叠块";
@@ -26,21 +99,23 @@ Blockly.Msg["COLOUR_RGB_HELPURL"] = "https://www.december.com/html/spec/colorper
26
99
  Blockly.Msg["COLOUR_RGB_RED"] = "红色";
27
100
  Blockly.Msg["COLOUR_RGB_TITLE"] = "颜色";
28
101
  Blockly.Msg["COLOUR_RGB_TOOLTIP"] = "通过指定红色、绿色和蓝色的量创建一种颜色。所有的值必须在0和100之间。";
29
- Blockly.Msg["CONTROLS_FLOW_STATEMENTS_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
102
+ Blockly.Msg["COMMAND_KEY"] = "Command键";
103
+ Blockly.Msg["CONTEXT_MENU_KEY"] = "≣ Menu"; // untranslated
104
+ Blockly.Msg["CONTROLS_FLOW_STATEMENTS_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
30
105
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK"] = "跳出循环";
31
106
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE"] = "继续下一轮循环";
32
107
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK"] = "跳出包含它的循环。";
33
108
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE"] = "跳过本轮循环的剩余部分,并继进行续下一轮循环。";
34
109
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_WARNING"] = "警告:这个块只能在循环内使用。";
35
- Blockly.Msg["CONTROLS_FOREACH_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
110
+ Blockly.Msg["CONTROLS_FOREACH_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Loops#for-each"; // untranslated
36
111
  Blockly.Msg["CONTROLS_FOREACH_TITLE"] = "遍历列表 %2 里的每一项 %1";
37
112
  Blockly.Msg["CONTROLS_FOREACH_TOOLTIP"] = "遍历列表中的每一项,将变量“%1”设为所选项,并执行一些语句。";
38
- Blockly.Msg["CONTROLS_FOR_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
113
+ Blockly.Msg["CONTROLS_FOR_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Loops#count-with"; // untranslated
39
114
  Blockly.Msg["CONTROLS_FOR_TITLE"] = "变量 %1 从 %2 数到 %3 每次增加 %4";
40
115
  Blockly.Msg["CONTROLS_FOR_TOOLTIP"] = "让变量“%1”记录开始数到结束数之间指定间隔的值,并执行指定的块。";
41
116
  Blockly.Msg["CONTROLS_IF_ELSEIF_TOOLTIP"] = "在这个if语句块中增加一个条件。";
42
117
  Blockly.Msg["CONTROLS_IF_ELSE_TOOLTIP"] = "在这个if语句块中添加一个最终的,包括所有其余情况的条件。";
43
- Blockly.Msg["CONTROLS_IF_HELPURL"] = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
118
+ Blockly.Msg["CONTROLS_IF_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/IfElse"; // untranslated
44
119
  Blockly.Msg["CONTROLS_IF_IF_TOOLTIP"] = "增加、删除或重新排列各节来重新配置这个if语句块。";
45
120
  Blockly.Msg["CONTROLS_IF_MSG_ELSE"] = "否则";
46
121
  Blockly.Msg["CONTROLS_IF_MSG_ELSEIF"] = "否则如果";
@@ -53,13 +128,20 @@ Blockly.Msg["CONTROLS_REPEAT_HELPURL"] = "https://zh.wikipedia.org/wiki/For循
53
128
  Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"] = "执行";
54
129
  Blockly.Msg["CONTROLS_REPEAT_TITLE"] = "重复 %1 次";
55
130
  Blockly.Msg["CONTROLS_REPEAT_TOOLTIP"] = "多次执行一些语句。";
56
- Blockly.Msg["CONTROLS_WHILEUNTIL_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
131
+ Blockly.Msg["CONTROLS_WHILEUNTIL_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Loops#repeat"; // untranslated
57
132
  Blockly.Msg["CONTROLS_WHILEUNTIL_OPERATOR_UNTIL"] = "重复直到条件满足";
58
133
  Blockly.Msg["CONTROLS_WHILEUNTIL_OPERATOR_WHILE"] = "当条件满足时重复";
59
134
  Blockly.Msg["CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL"] = "只要值为假,就一直循环执行一些语句。";
60
135
  Blockly.Msg["CONTROLS_WHILEUNTIL_TOOLTIP_WHILE"] = "只要值为真,就一直循环执行一些语句。";
136
+ Blockly.Msg["CONTROL_KEY"] = "Ctrl键";
137
+ Blockly.Msg["COPY_ALL_TO_BACKPACK"] = "将所有块复制到背包";
138
+ Blockly.Msg["COPY_SHORTCUT"] = "复制";
139
+ Blockly.Msg["COPY_TO_BACKPACK"] = "复制到背包";
140
+ Blockly.Msg["CURRENT_BLOCK_ANNOUNCEMENT"] = "当前块:%1";
141
+ Blockly.Msg["CUT_SHORTCUT"] = "剪切";
61
142
  Blockly.Msg["DELETE_ALL_BLOCKS"] = "删除所有 %1 个块吗?";
62
143
  Blockly.Msg["DELETE_BLOCK"] = "删除块";
144
+ Blockly.Msg["DELETE_KEY"] = "Delete"; // untranslated
63
145
  Blockly.Msg["DELETE_VARIABLE"] = "删除变量“%1”";
64
146
  Blockly.Msg["DELETE_VARIABLE_CONFIRMATION"] = "要删除对变量“%2”的%1个引用吗?";
65
147
  Blockly.Msg["DELETE_X_BLOCKS"] = "删除 %1 个块";
@@ -68,18 +150,106 @@ Blockly.Msg["DIALOG_OK"] = "确认";
68
150
  Blockly.Msg["DISABLE_BLOCK"] = "禁用块";
69
151
  Blockly.Msg["DUPLICATE_BLOCK"] = "复制";
70
152
  Blockly.Msg["DUPLICATE_COMMENT"] = "复制注释";
153
+ Blockly.Msg["EDIT_BLOCK_CONTENTS"] = "编辑块内容";
154
+ Blockly.Msg["EMPTY_BACKPACK"] = "清空背包";
71
155
  Blockly.Msg["ENABLE_BLOCK"] = "启用块";
156
+ Blockly.Msg["END_KEY"] = "End"; // untranslated
157
+ Blockly.Msg["ENTER_KEY"] = "Enter"; // untranslated
158
+ Blockly.Msg["ESCAPE"] = "Esc";
72
159
  Blockly.Msg["EXPAND_ALL"] = "展开块";
73
160
  Blockly.Msg["EXPAND_BLOCK"] = "展开块";
74
161
  Blockly.Msg["EXTERNAL_INPUTS"] = "外部输入";
162
+ Blockly.Msg["FIELD_BITMAP_ARIA_VALUE"] = "%1乘%2,%3 个像素开启";
163
+ Blockly.Msg["FIELD_BITMAP_BUTTON_LABEL_CLEAR"] = "清空";
164
+ Blockly.Msg["FIELD_BITMAP_BUTTON_LABEL_RANDOMIZE"] = "随机";
165
+ Blockly.Msg["FIELD_BITMAP_PIXEL_LABEL"] = "%1,第%2行,第%3列";
166
+ Blockly.Msg["FIELD_BITMAP_PIXEL_OFF"] = "关";
167
+ Blockly.Msg["FIELD_BITMAP_PIXEL_ON"] = "开";
168
+ Blockly.Msg["FIELD_LABEL_CHECKBOX_CHECKED"] = "Checked"; // untranslated
169
+ Blockly.Msg["FIELD_LABEL_CHECKBOX_UNCHECKED"] = "Not checked"; // untranslated
170
+ Blockly.Msg["FIELD_LABEL_EDIT_PREFIX"] = "Edit %1"; // untranslated
171
+ Blockly.Msg["FIELD_LABEL_EMPTY"] = "empty"; // untranslated
172
+ Blockly.Msg["FIELD_LABEL_OPTION_INDEX"] = "Option %1"; // untranslated
173
+ Blockly.Msg["FIELD_LABEL_VARIABLE"] = "Variable '%1'"; // untranslated
174
+ Blockly.Msg["FIELD_MULTILINEINPUT_FINISH_EDITING"] = "结束编辑";
175
+ Blockly.Msg["FIELD_MULTILINEINPUT_NEW_LINE"] = "换行";
75
176
  Blockly.Msg["HELP"] = "帮助";
177
+ Blockly.Msg["HELP_PROMPT"] = "按 %1 来获取有关键盘控制的帮助。";
178
+ Blockly.Msg["HOME_KEY"] = "Home"; // untranslated
179
+ Blockly.Msg["ICON_LABEL_COMMENT_CLOSED"] = "打开注释";
180
+ Blockly.Msg["ICON_LABEL_COMMENT_OPEN"] = "关闭注释";
181
+ Blockly.Msg["ICON_LABEL_DEFAULT"] = "图标";
182
+ Blockly.Msg["ICON_LABEL_MUTATOR_CLOSED"] = "编辑这个块";
183
+ Blockly.Msg["ICON_LABEL_MUTATOR_OPEN"] = "关闭块编辑器";
184
+ Blockly.Msg["ICON_LABEL_WARNING_CLOSED"] = "打开警告";
185
+ Blockly.Msg["ICON_LABEL_WARNING_OPEN"] = "关闭警告";
76
186
  Blockly.Msg["INLINE_INPUTS"] = "单行输入";
77
- Blockly.Msg["LISTS_CREATE_EMPTY_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
187
+ Blockly.Msg["INPUT_LABEL_CONDITION"] = "条件";
188
+ Blockly.Msg["INPUT_LABEL_CONDITION_A"] = "第一个条件";
189
+ Blockly.Msg["INPUT_LABEL_CONDITION_B"] = "第二个条件";
190
+ Blockly.Msg["INPUT_LABEL_EMPTY"] = "空";
191
+ Blockly.Msg["INPUT_LABEL_END_STATEMENT"] = "%1结束";
192
+ Blockly.Msg["INPUT_LABEL_INDEX"] = "第%1个输入";
193
+ Blockly.Msg["INPUT_LABEL_LISTS_CREATE_WITH_ITEM"] = "value %1"; // untranslated
194
+ Blockly.Msg["INPUT_LABEL_LISTS_DELIMITER"] = "delimiter"; // untranslated
195
+ Blockly.Msg["INPUT_LABEL_LISTS_END_POSITION"] = "end position"; // untranslated
196
+ Blockly.Msg["INPUT_LABEL_LISTS_LIST_FROM_TEXT"] = "text to split"; // untranslated
197
+ Blockly.Msg["INPUT_LABEL_LISTS_POSITION"] = "position within list"; // untranslated
198
+ Blockly.Msg["INPUT_LABEL_LISTS_REPEAT_ITEM"] = "value to repeat"; // untranslated
199
+ Blockly.Msg["INPUT_LABEL_LISTS_REPEAT_NUM"] = "number of times to repeat"; // untranslated
200
+ Blockly.Msg["INPUT_LABEL_LISTS_START_POSITION"] = "start position"; // untranslated
201
+ Blockly.Msg["INPUT_LABEL_LISTS_TEXT_FROM_LIST"] = "list to join"; // untranslated
202
+ Blockly.Msg["INPUT_LABEL_LISTS_TO_CHANGE"] = "list to change"; // untranslated
203
+ Blockly.Msg["INPUT_LABEL_LISTS_TO_CHECK"] = "list to check"; // untranslated
204
+ Blockly.Msg["INPUT_LABEL_LISTS_VALUE_TO_SET"] = "value to set"; // untranslated
205
+ Blockly.Msg["INPUT_LABEL_LOOP_BY"] = "increment"; // untranslated
206
+ Blockly.Msg["INPUT_LABEL_LOOP_FROM"] = "starting number"; // untranslated
207
+ Blockly.Msg["INPUT_LABEL_LOOP_LIST"] = "list to iterate over"; // untranslated
208
+ Blockly.Msg["INPUT_LABEL_LOOP_TIMES"] = "number of times to repeat"; // untranslated
209
+ Blockly.Msg["INPUT_LABEL_LOOP_TO"] = "ending number"; // untranslated
210
+ Blockly.Msg["INPUT_LABEL_MATH_CHANGE_BY"] = "更改量";
211
+ Blockly.Msg["INPUT_LABEL_MATH_CONSTRAIN_VALUE"] = "要约束的数字";
212
+ Blockly.Msg["INPUT_LABEL_MATH_DIVIDEND"] = "被除数";
213
+ Blockly.Msg["INPUT_LABEL_MATH_DIVISOR"] = "除数";
214
+ Blockly.Msg["INPUT_LABEL_NUMBER"] = "数字";
215
+ Blockly.Msg["INPUT_LABEL_NUMBER_A"] = "第一个数字";
216
+ Blockly.Msg["INPUT_LABEL_NUMBER_ATAN2_X"] = "X坐标";
217
+ Blockly.Msg["INPUT_LABEL_NUMBER_ATAN2_Y"] = "Y坐标";
218
+ Blockly.Msg["INPUT_LABEL_NUMBER_B"] = "第二个数字";
219
+ Blockly.Msg["INPUT_LABEL_NUMBER_LIST"] = "数字列表";
220
+ Blockly.Msg["INPUT_LABEL_NUMBER_MAX"] = "最大";
221
+ Blockly.Msg["INPUT_LABEL_NUMBER_MIN"] = "最小";
222
+ Blockly.Msg["INPUT_LABEL_NUMBER_TO_CHECK"] = "要检查的数字";
223
+ Blockly.Msg["INPUT_LABEL_STATEMENT"] = "语句位置";
224
+ Blockly.Msg["INPUT_LABEL_TEXT_APPEND"] = "value to append"; // untranslated
225
+ Blockly.Msg["INPUT_LABEL_TEXT_END_POSITION"] = "end position"; // untranslated
226
+ Blockly.Msg["INPUT_LABEL_TEXT_JOIN_ITEM"] = "value %1"; // untranslated
227
+ Blockly.Msg["INPUT_LABEL_TEXT_POSITION"] = "letter position"; // untranslated
228
+ Blockly.Msg["INPUT_LABEL_TEXT_PROMPT_MESSAGE"] = "message"; // untranslated
229
+ Blockly.Msg["INPUT_LABEL_TEXT_START_POSITION"] = "start position"; // untranslated
230
+ Blockly.Msg["INPUT_LABEL_TEXT_TO_CHANGE"] = "text to change"; // untranslated
231
+ Blockly.Msg["INPUT_LABEL_TEXT_TO_CHECK"] = "text to check"; // untranslated
232
+ Blockly.Msg["INPUT_LABEL_TEXT_TO_FIND"] = "text to find"; // untranslated
233
+ Blockly.Msg["INPUT_LABEL_TEXT_TO_REPLACE"] = "text to replace"; // untranslated
234
+ Blockly.Msg["INPUT_LABEL_VALUE"] = "值位置";
235
+ Blockly.Msg["INPUT_LABEL_VALUE_A"] = "第一个值";
236
+ Blockly.Msg["INPUT_LABEL_VALUE_B"] = "第二个值";
237
+ Blockly.Msg["INPUT_LABEL_VARIABLES_SET"] = "value to set"; // untranslated
238
+ Blockly.Msg["INSERT_KEY"] = "Insert"; // untranslated
239
+ Blockly.Msg["KEYBOARD_NAV_BLOCK_NAVIGATION_HINT"] = "使用%1导航到块内部。";
240
+ Blockly.Msg["KEYBOARD_NAV_CONSTRAINED_MOVE_HINT"] = "使用箭头键移动,然后按%1接受位置。";
241
+ Blockly.Msg["KEYBOARD_NAV_COPIED_HINT"] = "已拷貝。按下 %1 貼上。";
242
+ Blockly.Msg["KEYBOARD_NAV_CUT_HINT"] = "已剪下。按下 %1 貼上。";
243
+ Blockly.Msg["KEYBOARD_NAV_FLYOUT_LABEL_HINT"] = "使用方向键导航到一个块,或按%1跳转到下一个标题。";
244
+ Blockly.Msg["KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT"] = "按住 %1 并使用箭头键来自由一点,然后按下 %2 接受位置。";
245
+ Blockly.Msg["KEYBOARD_NAV_WORKSPACE_NAVIGATION_HINT"] = "使用方向键导航。";
246
+ Blockly.Msg["LINUX"] = "Linux";
247
+ Blockly.Msg["LISTS_CREATE_EMPTY_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#create-empty-list"; // untranslated
78
248
  Blockly.Msg["LISTS_CREATE_EMPTY_TITLE"] = "创建空列表";
79
249
  Blockly.Msg["LISTS_CREATE_EMPTY_TOOLTIP"] = "返回一个列表,长度为 0,不包含任何数据记录";
80
250
  Blockly.Msg["LISTS_CREATE_WITH_CONTAINER_TITLE_ADD"] = "列表";
81
251
  Blockly.Msg["LISTS_CREATE_WITH_CONTAINER_TOOLTIP"] = "增加、删除或重新排列各部分以此重新配置这个列表块。";
82
- Blockly.Msg["LISTS_CREATE_WITH_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
252
+ Blockly.Msg["LISTS_CREATE_WITH_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#create-list-with"; // untranslated
83
253
  Blockly.Msg["LISTS_CREATE_WITH_INPUT_WITH"] = "创建列表,内容:";
84
254
  Blockly.Msg["LISTS_CREATE_WITH_ITEM_TOOLTIP"] = "将一个项添加到列表中。";
85
255
  Blockly.Msg["LISTS_CREATE_WITH_TOOLTIP"] = "建立一个具有任意数量项目的列表。";
@@ -88,6 +258,7 @@ Blockly.Msg["LISTS_GET_INDEX_FROM_END"] = "倒数第#项";
88
258
  Blockly.Msg["LISTS_GET_INDEX_FROM_START"] = "#";
89
259
  Blockly.Msg["LISTS_GET_INDEX_GET"] = "取得";
90
260
  Blockly.Msg["LISTS_GET_INDEX_GET_REMOVE"] = "取得并移除";
261
+ Blockly.Msg["LISTS_GET_INDEX_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list";
91
262
  Blockly.Msg["LISTS_GET_INDEX_LAST"] = "最后一项";
92
263
  Blockly.Msg["LISTS_GET_INDEX_RANDOM"] = "随机的一项";
93
264
  Blockly.Msg["LISTS_GET_INDEX_REMOVE"] = "移除";
@@ -107,7 +278,7 @@ Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM"] = "删除列表中的随机
107
278
  Blockly.Msg["LISTS_GET_SUBLIST_END_FROM_END"] = "到倒数第#项";
108
279
  Blockly.Msg["LISTS_GET_SUBLIST_END_FROM_START"] = "到第#项";
109
280
  Blockly.Msg["LISTS_GET_SUBLIST_END_LAST"] = "到最后一项";
110
- Blockly.Msg["LISTS_GET_SUBLIST_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
281
+ Blockly.Msg["LISTS_GET_SUBLIST_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#getting-a-sublist"; // untranslated
111
282
  Blockly.Msg["LISTS_GET_SUBLIST_START_FIRST"] = "获取子列表,从第一项";
112
283
  Blockly.Msg["LISTS_GET_SUBLIST_START_FROM_END"] = "获取子列表,从倒数第#项";
113
284
  Blockly.Msg["LISTS_GET_SUBLIST_START_FROM_START"] = "获取子列表,从第#项";
@@ -116,23 +287,23 @@ Blockly.Msg["LISTS_GET_SUBLIST_TOOLTIP"] = "复制列表中指定的部分。";
116
287
  Blockly.Msg["LISTS_INDEX_FROM_END_TOOLTIP"] = "%1是最后一项。";
117
288
  Blockly.Msg["LISTS_INDEX_FROM_START_TOOLTIP"] = "%1是第一项。";
118
289
  Blockly.Msg["LISTS_INDEX_OF_FIRST"] = "寻找第一次出现的项";
119
- Blockly.Msg["LISTS_INDEX_OF_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
290
+ Blockly.Msg["LISTS_INDEX_OF_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#finding-items-in-a-list"; // untranslated
120
291
  Blockly.Msg["LISTS_INDEX_OF_LAST"] = "寻找最后一次出现的项";
121
292
  Blockly.Msg["LISTS_INDEX_OF_TOOLTIP"] = "返回在列表中的第一/最后一个匹配项的索引值。如果找不到项目则返回%1。";
122
293
  Blockly.Msg["LISTS_INLIST"] = "在列表中";
123
- Blockly.Msg["LISTS_ISEMPTY_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
294
+ Blockly.Msg["LISTS_ISEMPTY_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#is-empty"; // untranslated
124
295
  Blockly.Msg["LISTS_ISEMPTY_TITLE"] = "%1是空的";
125
296
  Blockly.Msg["LISTS_ISEMPTY_TOOLTIP"] = "如果改列表为空,则返回真。";
126
- Blockly.Msg["LISTS_LENGTH_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
297
+ Blockly.Msg["LISTS_LENGTH_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#length-of"; // untranslated
127
298
  Blockly.Msg["LISTS_LENGTH_TITLE"] = "%1的长度";
128
299
  Blockly.Msg["LISTS_LENGTH_TOOLTIP"] = "返回列表的长度。";
129
- Blockly.Msg["LISTS_REPEAT_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
300
+ Blockly.Msg["LISTS_REPEAT_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#create-list-with"; // untranslated
130
301
  Blockly.Msg["LISTS_REPEAT_TITLE"] = "建立列表使用项 %1 重复 %2 次";
131
302
  Blockly.Msg["LISTS_REPEAT_TOOLTIP"] = "建立包含指定重复次数的值的列表。";
132
- Blockly.Msg["LISTS_REVERSE_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#reversing-a-list"; // untranslated
303
+ Blockly.Msg["LISTS_REVERSE_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#reversing-a-list"; // untranslated
133
304
  Blockly.Msg["LISTS_REVERSE_MESSAGE0"] = "倒转%1";
134
305
  Blockly.Msg["LISTS_REVERSE_TOOLTIP"] = "倒转一个列表,返回副本。";
135
- Blockly.Msg["LISTS_SET_INDEX_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
306
+ Blockly.Msg["LISTS_SET_INDEX_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#in-list--set"; // untranslated
136
307
  Blockly.Msg["LISTS_SET_INDEX_INPUT_TO"] = "值为";
137
308
  Blockly.Msg["LISTS_SET_INDEX_INSERT"] = "插入在";
138
309
  Blockly.Msg["LISTS_SET_INDEX_SET"] = "设置";
@@ -144,7 +315,7 @@ Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_SET_FIRST"] = "设置列表中的第一项
144
315
  Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_SET_FROM"] = "设置在列表中指定位置的项。";
145
316
  Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_SET_LAST"] = "设置列表中的最后一项。";
146
317
  Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_SET_RANDOM"] = "设置列表中的随机一项。";
147
- Blockly.Msg["LISTS_SORT_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
318
+ Blockly.Msg["LISTS_SORT_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#sorting-a-list"; // untranslated
148
319
  Blockly.Msg["LISTS_SORT_ORDER_ASCENDING"] = "升序";
149
320
  Blockly.Msg["LISTS_SORT_ORDER_DESCENDING"] = "降序";
150
321
  Blockly.Msg["LISTS_SORT_TITLE"] = "排序%1 %2 %3";
@@ -152,40 +323,48 @@ Blockly.Msg["LISTS_SORT_TOOLTIP"] = "排序一个列表,返回副本。";
152
323
  Blockly.Msg["LISTS_SORT_TYPE_IGNORECASE"] = "按字母(忽略大小写)";
153
324
  Blockly.Msg["LISTS_SORT_TYPE_NUMERIC"] = "按数字";
154
325
  Blockly.Msg["LISTS_SORT_TYPE_TEXT"] = "按字母";
155
- Blockly.Msg["LISTS_SPLIT_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
326
+ Blockly.Msg["LISTS_SPLIT_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
156
327
  Blockly.Msg["LISTS_SPLIT_LIST_FROM_TEXT"] = "从文本制作列表";
157
328
  Blockly.Msg["LISTS_SPLIT_TEXT_FROM_LIST"] = "将列表合并为文本";
158
329
  Blockly.Msg["LISTS_SPLIT_TOOLTIP_JOIN"] = "加入文本列表至一个文本,由分隔符分隔。";
159
330
  Blockly.Msg["LISTS_SPLIT_TOOLTIP_SPLIT"] = "将文本按指定的分隔符拆分为文本组成的列表。";
160
331
  Blockly.Msg["LISTS_SPLIT_WITH_DELIMITER"] = "分隔符:";
161
332
  Blockly.Msg["LOGIC_BOOLEAN_FALSE"] = "false";
162
- Blockly.Msg["LOGIC_BOOLEAN_HELPURL"] = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
333
+ Blockly.Msg["LOGIC_BOOLEAN_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Logic#values"; // untranslated
163
334
  Blockly.Msg["LOGIC_BOOLEAN_TOOLTIP"] = "返回 true 或 false。";
164
335
  Blockly.Msg["LOGIC_BOOLEAN_TRUE"] = "true";
336
+ Blockly.Msg["LOGIC_COMPARE_EQ_ARIA"] = "等于";
337
+ Blockly.Msg["LOGIC_COMPARE_GTE_ARIA"] = "大于等于";
338
+ Blockly.Msg["LOGIC_COMPARE_GT_ARIA"] = "大于";
165
339
  Blockly.Msg["LOGIC_COMPARE_HELPURL"] = "https://zh.wikipedia.org/wiki/不等";
340
+ Blockly.Msg["LOGIC_COMPARE_LTE_ARIA"] = "小于等于";
341
+ Blockly.Msg["LOGIC_COMPARE_LT_ARIA"] = "小于";
342
+ Blockly.Msg["LOGIC_COMPARE_NEQ_ARIA"] = "不等于";
166
343
  Blockly.Msg["LOGIC_COMPARE_TOOLTIP_EQ"] = "如果两个输入结果相等,则返回真。";
167
344
  Blockly.Msg["LOGIC_COMPARE_TOOLTIP_GT"] = "如果第一个输入结果比第二个大,则返回真。";
168
345
  Blockly.Msg["LOGIC_COMPARE_TOOLTIP_GTE"] = "如果第一个输入结果大于或等于第二个输入结果,则返回真。";
169
346
  Blockly.Msg["LOGIC_COMPARE_TOOLTIP_LT"] = "如果第一个输入结果比第二个小,则返回真。";
170
347
  Blockly.Msg["LOGIC_COMPARE_TOOLTIP_LTE"] = "如果第一个输入结果小于或等于第二个输入结果,则返回真。";
171
348
  Blockly.Msg["LOGIC_COMPARE_TOOLTIP_NEQ"] = "如果两个输入结果不相等,则返回真。";
172
- Blockly.Msg["LOGIC_NEGATE_HELPURL"] = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
349
+ Blockly.Msg["LOGIC_NEGATE_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Logic#not"; // untranslated
173
350
  Blockly.Msg["LOGIC_NEGATE_TITLE"] = "非 %1";
174
351
  Blockly.Msg["LOGIC_NEGATE_TOOLTIP"] = "如果输入结果为false,则返回true;如果输入结果为true,则返回false。";
175
352
  Blockly.Msg["LOGIC_NULL"] = "空";
176
353
  Blockly.Msg["LOGIC_NULL_HELPURL"] = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
177
354
  Blockly.Msg["LOGIC_NULL_TOOLTIP"] = "返回空值。";
178
355
  Blockly.Msg["LOGIC_OPERATION_AND"] = "并且";
179
- Blockly.Msg["LOGIC_OPERATION_HELPURL"] = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
356
+ Blockly.Msg["LOGIC_OPERATION_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Logic#logical-operations"; // untranslated
180
357
  Blockly.Msg["LOGIC_OPERATION_OR"] = "或";
181
358
  Blockly.Msg["LOGIC_OPERATION_TOOLTIP_AND"] = "如果两个输入结果都为真,则返回真。";
182
359
  Blockly.Msg["LOGIC_OPERATION_TOOLTIP_OR"] = "如果至少有一个输入结果为真,则返回真。";
183
360
  Blockly.Msg["LOGIC_TERNARY_CONDITION"] = "断言";
184
- Blockly.Msg["LOGIC_TERNARY_HELPURL"] = "https://zh.wikipedia.org/wiki/条件运算符";
361
+ Blockly.Msg["LOGIC_TERNARY_HELPURL"] = "https://zh.wikipedia.org/wiki/条件运算符%3F:";
185
362
  Blockly.Msg["LOGIC_TERNARY_IF_FALSE"] = "如果为 false";
186
363
  Blockly.Msg["LOGIC_TERNARY_IF_TRUE"] = "如果为 true";
187
364
  Blockly.Msg["LOGIC_TERNARY_TOOLTIP"] = "检查“断言”里的条件语句。如果条件为真,则返回“如果为真”的值,否则,则返回“如果为假”的值。";
365
+ Blockly.Msg["MAC_OS"] = "macOS";
188
366
  Blockly.Msg["MATH_ADDITION_SYMBOL"] = "+"; // untranslated
367
+ Blockly.Msg["MATH_ADDITION_SYMBOL_ARIA"] = "加上";
189
368
  Blockly.Msg["MATH_ARITHMETIC_HELPURL"] = "https://zh.wikipedia.org/wiki/算术";
190
369
  Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_ADD"] = "返回两个数的和。";
191
370
  Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_DIVIDE"] = "返回两个数的商。";
@@ -198,12 +377,19 @@ Blockly.Msg["MATH_ATAN2_TOOLTIP"] = "返回点(X,Y)的反正切值,范
198
377
  Blockly.Msg["MATH_CHANGE_HELPURL"] = "https://zh.wikipedia.org/wiki/加法";
199
378
  Blockly.Msg["MATH_CHANGE_TITLE"] = "给 %1 加 %2";
200
379
  Blockly.Msg["MATH_CHANGE_TOOLTIP"] = "把数加到变量“%1”。";
380
+ Blockly.Msg["MATH_CONSTANT_E_ARIA"] = "e";
381
+ Blockly.Msg["MATH_CONSTANT_GOLDEN_RATIO_ARIA"] = "黄金比例";
201
382
  Blockly.Msg["MATH_CONSTANT_HELPURL"] = "https://zh.wikipedia.org/wiki/数学常数";
383
+ Blockly.Msg["MATH_CONSTANT_INFINITY_ARIA"] = "无限";
384
+ Blockly.Msg["MATH_CONSTANT_PI_ARIA"] = "派";
385
+ Blockly.Msg["MATH_CONSTANT_SQRT1_2_ARIA"] = "根号二分之一";
386
+ Blockly.Msg["MATH_CONSTANT_SQRT2_ARIA"] = "根号二";
202
387
  Blockly.Msg["MATH_CONSTANT_TOOLTIP"] = "返回一个以下常见常数:π (3.141…)、e (2.718…)、φ (1.618…)、根号2 (1.414…)、根号½ (0.707…)或∞ (无穷)。";
203
388
  Blockly.Msg["MATH_CONSTRAIN_HELPURL"] = "https://en.wikipedia.org/wiki/Clamping_(graphics)"; // untranslated
204
389
  Blockly.Msg["MATH_CONSTRAIN_TITLE"] = "将 %1 限制在 最低 %2 到最高 %3 之间";
205
390
  Blockly.Msg["MATH_CONSTRAIN_TOOLTIP"] = "把一个数限制在指定的极限(含)之间。";
206
391
  Blockly.Msg["MATH_DIVISION_SYMBOL"] = "÷"; // untranslated
392
+ Blockly.Msg["MATH_DIVISION_SYMBOL_ARIA"] = "除以";
207
393
  Blockly.Msg["MATH_IS_DIVISIBLE_BY"] = "可整除被";
208
394
  Blockly.Msg["MATH_IS_EVEN"] = "是偶数";
209
395
  Blockly.Msg["MATH_IS_NEGATIVE"] = "是负数";
@@ -216,13 +402,16 @@ Blockly.Msg["MATH_MODULO_HELPURL"] = "https://zh.wikipedia.org/wiki/模除";
216
402
  Blockly.Msg["MATH_MODULO_TITLE"] = "%1 ÷ %2 的余数";
217
403
  Blockly.Msg["MATH_MODULO_TOOLTIP"] = "返回两个数相除的余数。";
218
404
  Blockly.Msg["MATH_MULTIPLICATION_SYMBOL"] = "×"; // untranslated
405
+ Blockly.Msg["MATH_MULTIPLICATION_SYMBOL_ARIA"] = "乘以";
219
406
  Blockly.Msg["MATH_NUMBER_HELPURL"] = "https://zh.wikipedia.org/wiki/数";
220
407
  Blockly.Msg["MATH_NUMBER_TOOLTIP"] = "一个数。";
221
408
  Blockly.Msg["MATH_ONLIST_HELPURL"] = ""; // untranslated
222
409
  Blockly.Msg["MATH_ONLIST_OPERATOR_AVERAGE"] = "列表的平均";
223
410
  Blockly.Msg["MATH_ONLIST_OPERATOR_MAX"] = "列表的最大数";
411
+ Blockly.Msg["MATH_ONLIST_OPERATOR_MAX_ARIA"] = "最大";
224
412
  Blockly.Msg["MATH_ONLIST_OPERATOR_MEDIAN"] = "列表的中位数";
225
413
  Blockly.Msg["MATH_ONLIST_OPERATOR_MIN"] = "列表的最小数";
414
+ Blockly.Msg["MATH_ONLIST_OPERATOR_MIN_ARIA"] = "最小";
226
415
  Blockly.Msg["MATH_ONLIST_OPERATOR_MODE"] = "列表的众数";
227
416
  Blockly.Msg["MATH_ONLIST_OPERATOR_RANDOM"] = "列表的随机项";
228
417
  Blockly.Msg["MATH_ONLIST_OPERATOR_STD_DEV"] = "列表的标准差";
@@ -236,6 +425,7 @@ Blockly.Msg["MATH_ONLIST_TOOLTIP_RANDOM"] = "返回列表内的一个随机元
236
425
  Blockly.Msg["MATH_ONLIST_TOOLTIP_STD_DEV"] = "返回列表的标准差。";
237
426
  Blockly.Msg["MATH_ONLIST_TOOLTIP_SUM"] = "返回列表内的所有数的和。";
238
427
  Blockly.Msg["MATH_POWER_SYMBOL"] = "^"; // untranslated
428
+ Blockly.Msg["MATH_POWER_SYMBOL_ARIA"] = "次幂";
239
429
  Blockly.Msg["MATH_RANDOM_FLOAT_HELPURL"] = "https://zh.wikipedia.org/wiki/随机数生成器";
240
430
  Blockly.Msg["MATH_RANDOM_FLOAT_TITLE_RANDOM"] = "随机小数";
241
431
  Blockly.Msg["MATH_RANDOM_FLOAT_TOOLTIP"] = "返回一个从0.0(含)到1.0(不含)之间的随机数。";
@@ -249,6 +439,12 @@ Blockly.Msg["MATH_ROUND_OPERATOR_ROUNDUP"] = "向上舍入";
249
439
  Blockly.Msg["MATH_ROUND_TOOLTIP"] = "数向上或向下取整。";
250
440
  Blockly.Msg["MATH_SINGLE_HELPURL"] = "https://zh.wikipedia.org/wiki/平方根";
251
441
  Blockly.Msg["MATH_SINGLE_OP_ABSOLUTE"] = "绝对值";
442
+ Blockly.Msg["MATH_SINGLE_OP_ABSOLUTE_ARIA"] = "绝对值";
443
+ Blockly.Msg["MATH_SINGLE_OP_EXP_ARIA"] = "e次幂";
444
+ Blockly.Msg["MATH_SINGLE_OP_LN_ARIA"] = "自然对数";
445
+ Blockly.Msg["MATH_SINGLE_OP_LOG10_ARIA"] = "以10为底的对数";
446
+ Blockly.Msg["MATH_SINGLE_OP_NEG_ARIA"] = "负";
447
+ Blockly.Msg["MATH_SINGLE_OP_POW10_ARIA"] = "10次幂";
252
448
  Blockly.Msg["MATH_SINGLE_OP_ROOT"] = "平方根";
253
449
  Blockly.Msg["MATH_SINGLE_TOOLTIP_ABS"] = "返回一个数的绝对值。";
254
450
  Blockly.Msg["MATH_SINGLE_TOOLTIP_EXP"] = "返回e的一个数次幂。";
@@ -258,26 +454,45 @@ Blockly.Msg["MATH_SINGLE_TOOLTIP_NEG"] = "返回一个数的相反数。";
258
454
  Blockly.Msg["MATH_SINGLE_TOOLTIP_POW10"] = "返回10的一个数次幂。";
259
455
  Blockly.Msg["MATH_SINGLE_TOOLTIP_ROOT"] = "返回一个数的平方根。";
260
456
  Blockly.Msg["MATH_SUBTRACTION_SYMBOL"] = "-"; // untranslated
457
+ Blockly.Msg["MATH_SUBTRACTION_SYMBOL_ARIA"] = "减去";
261
458
  Blockly.Msg["MATH_TRIG_ACOS"] = "反余弦";
459
+ Blockly.Msg["MATH_TRIG_ACOS_ARIA"] = "反余弦";
262
460
  Blockly.Msg["MATH_TRIG_ASIN"] = "反正弦";
461
+ Blockly.Msg["MATH_TRIG_ASIN_ARIA"] = "反正弦";
263
462
  Blockly.Msg["MATH_TRIG_ATAN"] = "反正切";
463
+ Blockly.Msg["MATH_TRIG_ATAN_ARIA"] = "反正切";
264
464
  Blockly.Msg["MATH_TRIG_COS"] = "余弦";
465
+ Blockly.Msg["MATH_TRIG_COS_ARIA"] = "余弦";
265
466
  Blockly.Msg["MATH_TRIG_HELPURL"] = "https://zh.wikipedia.org/wiki/三角函数";
266
467
  Blockly.Msg["MATH_TRIG_SIN"] = "正弦";
468
+ Blockly.Msg["MATH_TRIG_SIN_ARIA"] = "正弦";
267
469
  Blockly.Msg["MATH_TRIG_TAN"] = "正切";
470
+ Blockly.Msg["MATH_TRIG_TAN_ARIA"] = "正切";
268
471
  Blockly.Msg["MATH_TRIG_TOOLTIP_ACOS"] = "返回一个数的反余弦。";
269
472
  Blockly.Msg["MATH_TRIG_TOOLTIP_ASIN"] = "返回一个数的反正弦。";
270
473
  Blockly.Msg["MATH_TRIG_TOOLTIP_ATAN"] = "返回一个数的反正切。";
271
474
  Blockly.Msg["MATH_TRIG_TOOLTIP_COS"] = "返回角度(非弧度)的余弦。";
272
475
  Blockly.Msg["MATH_TRIG_TOOLTIP_SIN"] = "返回角度(非弧度)的正弦。";
273
476
  Blockly.Msg["MATH_TRIG_TOOLTIP_TAN"] = "返回角度(非弧度)的正切。";
477
+ Blockly.Msg["MINIMAP_ARIA_LABEL"] = "工作区小地图,用方向键平移工作区。";
478
+ Blockly.Msg["MOVE_BLOCK"] = "移动块";
274
479
  Blockly.Msg["NEW_COLOUR_VARIABLE"] = "创建颜色变量...";
275
480
  Blockly.Msg["NEW_NUMBER_VARIABLE"] = "创建数变量...";
276
481
  Blockly.Msg["NEW_STRING_VARIABLE"] = "创建字符串变量...";
277
482
  Blockly.Msg["NEW_VARIABLE"] = "创建变量...";
278
483
  Blockly.Msg["NEW_VARIABLE_TITLE"] = "新变量的名称:";
279
484
  Blockly.Msg["NEW_VARIABLE_TYPE_TITLE"] = "新变量的类型:";
485
+ Blockly.Msg["NO_PARENT_ANNOUNCEMENT"] = "当前块没有父块";
486
+ Blockly.Msg["OPEN_BACKPACK"] = "打开背包";
487
+ Blockly.Msg["OPEN_TRASH"] = "Open trash"; // untranslated
488
+ Blockly.Msg["OPTION_KEY"] = "Option键";
280
489
  Blockly.Msg["ORDINAL_NUMBER_SUFFIX"] = ""; // untranslated
490
+ Blockly.Msg["PAGE_DOWN_KEY"] = "Page Down"; // untranslated
491
+ Blockly.Msg["PAGE_UP_KEY"] = "Page Up"; // untranslated
492
+ Blockly.Msg["PARENT_BLOCKS_ANNOUNCEMENT"] = "父块:%1";
493
+ Blockly.Msg["PASTE_ALL_FROM_BACKPACK"] = "从背包粘贴所有块";
494
+ Blockly.Msg["PASTE_SHORTCUT"] = "粘贴";
495
+ Blockly.Msg["PAUSE_KEY"] = "Pause"; // untranslated
281
496
  Blockly.Msg["PROCEDURES_ALLOW_STATEMENTS"] = "允许声明";
282
497
  Blockly.Msg["PROCEDURES_BEFORE_PARAMS"] = "与:";
283
498
  Blockly.Msg["PROCEDURES_CALLNORETURN_HELPURL"] = "https://zh.wikipedia.org/wiki/子程序";
@@ -285,16 +500,17 @@ Blockly.Msg["PROCEDURES_CALLNORETURN_TOOLTIP"] = "运行用户定义的函数“
285
500
  Blockly.Msg["PROCEDURES_CALLRETURN_HELPURL"] = "https://zh.wikipedia.org/wiki/子程序";
286
501
  Blockly.Msg["PROCEDURES_CALLRETURN_TOOLTIP"] = "运行用户定义的函数“%1”,并使用它的输出值。";
287
502
  Blockly.Msg["PROCEDURES_CALL_BEFORE_PARAMS"] = "与:";
503
+ Blockly.Msg["PROCEDURES_CALL_DISABLED_DEF_WARNING"] = "无法运行用户定义函数'%1',因为定义块已被禁用。";
288
504
  Blockly.Msg["PROCEDURES_CREATE_DO"] = "创建“%1”";
289
505
  Blockly.Msg["PROCEDURES_DEFNORETURN_COMMENT"] = "描述该功能...";
290
506
  Blockly.Msg["PROCEDURES_DEFNORETURN_DO"] = ""; // untranslated
291
507
  Blockly.Msg["PROCEDURES_DEFNORETURN_HELPURL"] = "https://zh.wikipedia.org/wiki/子程序";
292
508
  Blockly.Msg["PROCEDURES_DEFNORETURN_PROCEDURE"] = "做点什么";
293
509
  Blockly.Msg["PROCEDURES_DEFNORETURN_TITLE"] = "至";
294
- Blockly.Msg["PROCEDURES_DEFNORETURN_TOOLTIP"] = "创建一个不带输出值的函数。";
510
+ Blockly.Msg["PROCEDURES_DEFNORETURN_TOOLTIP"] = "创建没有输出值的函数。";
295
511
  Blockly.Msg["PROCEDURES_DEFRETURN_HELPURL"] = "https://zh.wikipedia.org/wiki/子程序";
296
512
  Blockly.Msg["PROCEDURES_DEFRETURN_RETURN"] = "返回";
297
- Blockly.Msg["PROCEDURES_DEFRETURN_TOOLTIP"] = "创建一个有输出值的函数。";
513
+ Blockly.Msg["PROCEDURES_DEFRETURN_TOOLTIP"] = "创建有输出值的函数。";
298
514
  Blockly.Msg["PROCEDURES_DEF_DUPLICATE_WARNING"] = "警告:此函数具有重复参数。";
299
515
  Blockly.Msg["PROCEDURES_HIGHLIGHT_DEF"] = "突出显示函数定义";
300
516
  Blockly.Msg["PROCEDURES_IFRETURN_HELPURL"] = "https://c2.com/cgi/wiki?GuardClause"; // untranslated
@@ -306,12 +522,54 @@ Blockly.Msg["PROCEDURES_MUTATORCONTAINER_TITLE"] = "输入";
306
522
  Blockly.Msg["PROCEDURES_MUTATORCONTAINER_TOOLTIP"] = "添加、移除或重新排此函数的输入。";
307
523
  Blockly.Msg["REDO"] = "重做";
308
524
  Blockly.Msg["REMOVE_COMMENT"] = "删除注释";
309
- Blockly.Msg["RENAME_VARIABLE"] = "重命名变量...";
525
+ Blockly.Msg["REMOVE_FROM_BACKPACK"] = "从背包移除";
526
+ Blockly.Msg["RENAME_VARIABLE"] = "重命名变量“%1”...";
310
527
  Blockly.Msg["RENAME_VARIABLE_TITLE"] = "将所有“%1”变量重命名为:";
311
- Blockly.Msg["TEXT_APPEND_HELPURL"] = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
528
+ Blockly.Msg["RESET_ZOOM"] = "Reset zoom"; // untranslated
529
+ Blockly.Msg["SCREENREADER_HINT"] = "使用方向键导航。按%1切换屏幕阅读器模式";
530
+ Blockly.Msg["SCREENREADER_MODE_DISABLED"] = "屏幕阅读器已关闭,按%1以启用";
531
+ Blockly.Msg["SCREENREADER_MODE_ENABLED"] = "屏幕阅读器已启用,按%1以关闭";
532
+ Blockly.Msg["SHIFT_KEY"] = "Shift"; // untranslated
533
+ Blockly.Msg["SHORTCUTS_ABORT_MOVE"] = "中止移动";
534
+ Blockly.Msg["SHORTCUTS_CLEANUP"] = "清空工作区";
535
+ Blockly.Msg["SHORTCUTS_CODE_NAVIGATION"] = "代码导航";
536
+ Blockly.Msg["SHORTCUTS_DELETE"] = "删除";
537
+ Blockly.Msg["SHORTCUTS_DISCONNECT"] = "断开块";
538
+ Blockly.Msg["SHORTCUTS_DUPLICATE"] = "复制";
539
+ Blockly.Msg["SHORTCUTS_EDITING"] = "编辑";
540
+ Blockly.Msg["SHORTCUTS_ESCAPE"] = "退出";
541
+ Blockly.Msg["SHORTCUTS_EXTENDED_INFORMATION"] = "朗读详细信息";
542
+ Blockly.Msg["SHORTCUTS_FINISH_MOVE"] = "完成移动";
543
+ Blockly.Msg["SHORTCUTS_FOCUS_TOOLBOX"] = "聚焦到工具箱";
544
+ Blockly.Msg["SHORTCUTS_FOCUS_WORKSPACE"] = "聚焦到工作区";
545
+ Blockly.Msg["SHORTCUTS_GENERAL"] = "常规";
546
+ Blockly.Msg["SHORTCUTS_INFORMATION"] = "朗读信息";
547
+ Blockly.Msg["SHORTCUTS_JUMP_BLOCK_END"] = "移动到块尾";
548
+ Blockly.Msg["SHORTCUTS_JUMP_BLOCK_START"] = "移动到块首";
549
+ Blockly.Msg["SHORTCUTS_JUMP_BOTTOM_STACK"] = "移动到块堆尾部";
550
+ Blockly.Msg["SHORTCUTS_JUMP_FIRST_BLOCK"] = "移动到第一个块";
551
+ Blockly.Msg["SHORTCUTS_JUMP_LAST_BLOCK"] = "移动到最后一个块";
552
+ Blockly.Msg["SHORTCUTS_JUMP_TOP_STACK"] = "移动到块堆开始";
553
+ Blockly.Msg["SHORTCUTS_MOVE_DOWN"] = "下移";
554
+ Blockly.Msg["SHORTCUTS_MOVE_LEFT"] = "左移";
555
+ Blockly.Msg["SHORTCUTS_MOVE_RIGHT"] = "右移";
556
+ Blockly.Msg["SHORTCUTS_MOVE_UP"] = "上移";
557
+ Blockly.Msg["SHORTCUTS_NEXT_HEADING"] = "下一个标题";
558
+ Blockly.Msg["SHORTCUTS_NEXT_STACK"] = "下一个块堆";
559
+ Blockly.Msg["SHORTCUTS_PERFORM_ACTION"] = "编辑或确认";
560
+ Blockly.Msg["SHORTCUTS_PREVIOUS_HEADING"] = "上一个标题";
561
+ Blockly.Msg["SHORTCUTS_PREVIOUS_STACK"] = "上一个块堆";
562
+ Blockly.Msg["SHORTCUTS_SHOW_CONTEXT_MENU"] = "显示菜单";
563
+ Blockly.Msg["SHORTCUTS_SHOW_TOOLTIP"] = "显示工具提示";
564
+ Blockly.Msg["SHORTCUTS_START_MOVE"] = "开始移动";
565
+ Blockly.Msg["SHORTCUTS_START_MOVE_STACK"] = "开始移动块堆";
566
+ Blockly.Msg["SHORTCUTS_TOGGLE_SCREENREADER_MODE"] = "切换屏幕阅读器模式";
567
+ Blockly.Msg["SPACE_KEY"] = "空格";
568
+ Blockly.Msg["TAB_KEY"] = "Tab"; // untranslated
569
+ Blockly.Msg["TEXT_APPEND_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#text-modification"; // untranslated
312
570
  Blockly.Msg["TEXT_APPEND_TITLE"] = "在%1之后加上文本%2";
313
571
  Blockly.Msg["TEXT_APPEND_TOOLTIP"] = "将一些文本追加到变量“%1”里。";
314
- Blockly.Msg["TEXT_CHANGECASE_HELPURL"] = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
572
+ Blockly.Msg["TEXT_CHANGECASE_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#adjusting-text-case"; // untranslated
315
573
  Blockly.Msg["TEXT_CHANGECASE_OPERATOR_LOWERCASE"] = "转为小写";
316
574
  Blockly.Msg["TEXT_CHANGECASE_OPERATOR_TITLECASE"] = "转为首字母大写";
317
575
  Blockly.Msg["TEXT_CHANGECASE_OPERATOR_UPPERCASE"] = "转为大写";
@@ -319,79 +577,96 @@ Blockly.Msg["TEXT_CHANGECASE_TOOLTIP"] = "用不同的大小写模式复制并
319
577
  Blockly.Msg["TEXT_CHARAT_FIRST"] = "获取第一个字符";
320
578
  Blockly.Msg["TEXT_CHARAT_FROM_END"] = "获取倒数第#个字符";
321
579
  Blockly.Msg["TEXT_CHARAT_FROM_START"] = "获取第#个字符";
322
- Blockly.Msg["TEXT_CHARAT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
580
+ Blockly.Msg["TEXT_CHARAT_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#extracting-text"; // untranslated
323
581
  Blockly.Msg["TEXT_CHARAT_LAST"] = "获取最后一个字符";
324
582
  Blockly.Msg["TEXT_CHARAT_RANDOM"] = "获取随机一个字符";
325
583
  Blockly.Msg["TEXT_CHARAT_TAIL"] = ""; // untranslated
326
584
  Blockly.Msg["TEXT_CHARAT_TITLE"] = "在文本%1 里 %2";
327
585
  Blockly.Msg["TEXT_CHARAT_TOOLTIP"] = "返回位于指定位置的字符。";
328
- Blockly.Msg["TEXT_COUNT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#counting-substrings"; // untranslated
586
+ Blockly.Msg["TEXT_COUNT_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#counting-substrings"; // untranslated
329
587
  Blockly.Msg["TEXT_COUNT_MESSAGE0"] = "计算%1在%2里出现的次数";
330
588
  Blockly.Msg["TEXT_COUNT_TOOLTIP"] = "计算在一段文本中,某个部分文本重复出现了多少次。";
331
589
  Blockly.Msg["TEXT_CREATE_JOIN_ITEM_TOOLTIP"] = "将一个项添加到文本中。";
332
590
  Blockly.Msg["TEXT_CREATE_JOIN_TITLE_JOIN"] = "拼接";
333
591
  Blockly.Msg["TEXT_CREATE_JOIN_TOOLTIP"] = "添加、移除或重新排列各节来重新配置这个文本块。";
592
+ Blockly.Msg["TEXT_FROM_END_ARIA"] = "倒数字符序号";
593
+ Blockly.Msg["TEXT_FROM_START_ARIA"] = "字符序号";
334
594
  Blockly.Msg["TEXT_GET_SUBSTRING_END_FROM_END"] = "到倒数第#个字符";
335
595
  Blockly.Msg["TEXT_GET_SUBSTRING_END_FROM_START"] = "到第#个字符";
336
596
  Blockly.Msg["TEXT_GET_SUBSTRING_END_LAST"] = "到最后一个字符";
337
- Blockly.Msg["TEXT_GET_SUBSTRING_HELPURL"] = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
597
+ Blockly.Msg["TEXT_GET_SUBSTRING_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
338
598
  Blockly.Msg["TEXT_GET_SUBSTRING_INPUT_IN_TEXT"] = "从文本";
339
599
  Blockly.Msg["TEXT_GET_SUBSTRING_START_FIRST"] = "获取子串,从第一个字符";
340
600
  Blockly.Msg["TEXT_GET_SUBSTRING_START_FROM_END"] = "获取子串,从倒数第#个字符";
341
601
  Blockly.Msg["TEXT_GET_SUBSTRING_START_FROM_START"] = "获取子串,从第#个字符";
342
602
  Blockly.Msg["TEXT_GET_SUBSTRING_TAIL"] = ""; // untranslated
343
603
  Blockly.Msg["TEXT_GET_SUBSTRING_TOOLTIP"] = "返回文本中指定的一部分。";
344
- Blockly.Msg["TEXT_INDEXOF_HELPURL"] = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
604
+ Blockly.Msg["TEXT_INDEXOF_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#finding-text"; // untranslated
345
605
  Blockly.Msg["TEXT_INDEXOF_OPERATOR_FIRST"] = "寻找第一次出现的文本";
346
606
  Blockly.Msg["TEXT_INDEXOF_OPERATOR_LAST"] = "寻找最后一次出现的文本";
347
607
  Blockly.Msg["TEXT_INDEXOF_TITLE"] = "在文本 %1 里 %2 %3";
348
608
  Blockly.Msg["TEXT_INDEXOF_TOOLTIP"] = "返回第一个文本段在第二个文本段中的第一/最后一个匹配项的起始位置。如果未找到,则返回%1。";
349
- Blockly.Msg["TEXT_ISEMPTY_HELPURL"] = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
609
+ Blockly.Msg["TEXT_ISEMPTY_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#checking-for-empty-text"; // untranslated
350
610
  Blockly.Msg["TEXT_ISEMPTY_TITLE"] = "%1是空的";
351
611
  Blockly.Msg["TEXT_ISEMPTY_TOOLTIP"] = "如果给定的文本为空,则返回真。";
352
- Blockly.Msg["TEXT_JOIN_HELPURL"] = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
612
+ Blockly.Msg["TEXT_JOIN_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#text-creation"; // untranslated
353
613
  Blockly.Msg["TEXT_JOIN_TITLE_CREATEWITH"] = "创建文本,内容:";
354
614
  Blockly.Msg["TEXT_JOIN_TOOLTIP"] = "通过串起任意数量的项以建立一段文本。";
355
- Blockly.Msg["TEXT_LENGTH_HELPURL"] = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
615
+ Blockly.Msg["TEXT_LENGTH_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#text-modification"; // untranslated
356
616
  Blockly.Msg["TEXT_LENGTH_TITLE"] = "%1的长度";
357
617
  Blockly.Msg["TEXT_LENGTH_TOOLTIP"] = "返回给定文本的字母数(包括空格)。";
358
- Blockly.Msg["TEXT_PRINT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
618
+ Blockly.Msg["TEXT_PRINT_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#printing-text"; // untranslated
359
619
  Blockly.Msg["TEXT_PRINT_TITLE"] = "输出%1";
360
620
  Blockly.Msg["TEXT_PRINT_TOOLTIP"] = "打印指定的文字、数或其他值。";
361
- Blockly.Msg["TEXT_PROMPT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
621
+ Blockly.Msg["TEXT_PROMPT_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
362
622
  Blockly.Msg["TEXT_PROMPT_TOOLTIP_NUMBER"] = "提示用户输入一个数。";
363
623
  Blockly.Msg["TEXT_PROMPT_TOOLTIP_TEXT"] = "要求用户输入一些文本。";
364
624
  Blockly.Msg["TEXT_PROMPT_TYPE_NUMBER"] = "提示输入数并显示消息";
365
625
  Blockly.Msg["TEXT_PROMPT_TYPE_TEXT"] = "要求输入文本,并显示提示消息";
366
- Blockly.Msg["TEXT_REPLACE_HELPURL"] = "https://github.com/google/blockly/wiki/Text#replacing-substrings"; // untranslated
626
+ Blockly.Msg["TEXT_REPLACE_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#replacing-substrings"; // untranslated
367
627
  Blockly.Msg["TEXT_REPLACE_MESSAGE0"] = "把%3中的%1替换为%2";
368
628
  Blockly.Msg["TEXT_REPLACE_TOOLTIP"] = "在一段文本中,将出现过的某部分文本都替换掉。";
369
- Blockly.Msg["TEXT_REVERSE_HELPURL"] = "https://github.com/google/blockly/wiki/Text#reversing-text"; // untranslated
629
+ Blockly.Msg["TEXT_REVERSE_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#reversing-text"; // untranslated
370
630
  Blockly.Msg["TEXT_REVERSE_MESSAGE0"] = "倒转文本%1";
371
631
  Blockly.Msg["TEXT_REVERSE_TOOLTIP"] = "将文本中各个字符的顺序倒转。";
372
632
  Blockly.Msg["TEXT_TEXT_HELPURL"] = "https://zh.wikipedia.org/wiki/字符串";
373
633
  Blockly.Msg["TEXT_TEXT_TOOLTIP"] = "一个字、词或一行文本。";
374
- Blockly.Msg["TEXT_TRIM_HELPURL"] = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
634
+ Blockly.Msg["TEXT_TRIM_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
375
635
  Blockly.Msg["TEXT_TRIM_OPERATOR_BOTH"] = "消除其两侧的空格";
376
636
  Blockly.Msg["TEXT_TRIM_OPERATOR_LEFT"] = "消除其左侧的空格";
377
637
  Blockly.Msg["TEXT_TRIM_OPERATOR_RIGHT"] = "消除其右侧的空格";
378
638
  Blockly.Msg["TEXT_TRIM_TOOLTIP"] = "从某一端或同时从两端删除多余的空白,并返回这段文字的一个副本。";
379
639
  Blockly.Msg["TODAY"] = "今天";
380
640
  Blockly.Msg["UNDO"] = "撤销";
641
+ Blockly.Msg["UNKNOWN"] = "未知";
381
642
  Blockly.Msg["UNNAMED_KEY"] = "未命名";
382
643
  Blockly.Msg["VARIABLES_DEFAULT_NAME"] = "项目";
383
644
  Blockly.Msg["VARIABLES_GET_CREATE_SET"] = "创建“设定%1”";
384
- Blockly.Msg["VARIABLES_GET_HELPURL"] = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
645
+ Blockly.Msg["VARIABLES_GET_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Variables#get"; // untranslated
385
646
  Blockly.Msg["VARIABLES_GET_TOOLTIP"] = "返回此变量的值。";
386
647
  Blockly.Msg["VARIABLES_SET"] = "赋值 %1 为 %2";
387
648
  Blockly.Msg["VARIABLES_SET_CREATE_GET"] = "创建“获得%1”";
388
- Blockly.Msg["VARIABLES_SET_HELPURL"] = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
649
+ Blockly.Msg["VARIABLES_SET_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Variables#set"; // untranslated
389
650
  Blockly.Msg["VARIABLES_SET_TOOLTIP"] = "设置此变量,以使它和输入值相等。";
390
651
  Blockly.Msg["VARIABLE_ALREADY_EXISTS"] = "名字叫“%1”的变量已经存在了。";
391
652
  Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_ANOTHER_TYPE"] = "名字叫“%1”的变量已经有了另一个类型:“%2”。";
392
653
  Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_A_PARAMETER"] = "名为“%1”的变量已经作为参数存在于流程“%2”中。";
393
- Blockly.Msg["WORKSPACE_ARIA_LABEL"] = "Blockly工作区";
654
+ Blockly.Msg["WINDOWS"] = "Windows";
394
655
  Blockly.Msg["WORKSPACE_COMMENT_DEFAULT_TEXT"] = "说点什么...";
656
+ Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_MANY"] = "%1个块堆%2在工作区中";
657
+ Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ONE"] = "1个块堆%2在工作区中";
658
+ Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ZERO"] = "没有块%2在工作区中";
659
+ Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_MANY"] = "和%1个注释";
660
+ Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_ONE"] = "和1个注释";
661
+ Blockly.Msg["WORKSPACE_LABEL_1_STACK"] = "1个块堆";
662
+ Blockly.Msg["WORKSPACE_LABEL_FLYOUT_WORKSPACE"] = "%1个块";
663
+ Blockly.Msg["WORKSPACE_LABEL_MANY_STACKS"] = "%1个块堆";
664
+ Blockly.Msg["WORKSPACE_LABEL_MUTATOR_WORKSPACE"] = "块编辑工作区";
665
+ Blockly.Msg["WORKSPACE_LABEL_PLAIN"] = "Blocks工作区。";
666
+ Blockly.Msg["WORKSPACE_ROLEDESCRIPTION"] = "工作区";
667
+ Blockly.Msg["ZOOM_IN"] = "Zoom in"; // untranslated
668
+ Blockly.Msg["ZOOM_OUT"] = "Zoom out"; // untranslated
669
+ Blockly.Msg["ZOOM_TO_FIT_ARIA_LABEL"] = "缩放到适合";
395
670
  Blockly.Msg["CONTROLS_FOREACH_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
396
671
  Blockly.Msg["CONTROLS_FOR_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
397
672
  Blockly.Msg["CONTROLS_IF_ELSEIF_TITLE_ELSEIF"] = Blockly.Msg["CONTROLS_IF_MSG_ELSEIF"];
@@ -400,7 +675,6 @@ Blockly.Msg["CONTROLS_IF_IF_TITLE_IF"] = Blockly.Msg["CONTROLS_IF_MSG_IF"];
400
675
  Blockly.Msg["CONTROLS_IF_MSG_THEN"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
401
676
  Blockly.Msg["CONTROLS_WHILEUNTIL_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
402
677
  Blockly.Msg["LISTS_CREATE_WITH_ITEM_TITLE"] = Blockly.Msg["VARIABLES_DEFAULT_NAME"];
403
- Blockly.Msg["LISTS_GET_INDEX_HELPURL"] = Blockly.Msg["LISTS_INDEX_OF_HELPURL"];
404
678
  Blockly.Msg["LISTS_GET_INDEX_INPUT_IN_LIST"] = Blockly.Msg["LISTS_INLIST"];
405
679
  Blockly.Msg["LISTS_GET_SUBLIST_INPUT_IN_LIST"] = Blockly.Msg["LISTS_INLIST"];
406
680
  Blockly.Msg["LISTS_INDEX_OF_INPUT_IN_LIST"] = Blockly.Msg["LISTS_INLIST"];
@@ -413,12 +687,14 @@ Blockly.Msg["PROCEDURES_DEFRETURN_TITLE"] = Blockly.Msg["PROCEDURES_DEFNORETURN_
413
687
  Blockly.Msg["TEXT_APPEND_VARIABLE"] = Blockly.Msg["VARIABLES_DEFAULT_NAME"];
414
688
  Blockly.Msg["TEXT_CREATE_JOIN_ITEM_TITLE_ITEM"] = Blockly.Msg["VARIABLES_DEFAULT_NAME"];
415
689
 
416
- Blockly.Msg["MATH_HUE"] = "230";
417
- Blockly.Msg["LOOPS_HUE"] = "120";
690
+ Blockly.Msg["COLOUR_HUE"] = "20";
418
691
  Blockly.Msg["LISTS_HUE"] = "260";
419
692
  Blockly.Msg["LOGIC_HUE"] = "210";
420
- Blockly.Msg["VARIABLES_HUE"] = "330";
421
- Blockly.Msg["TEXTS_HUE"] = "160";
693
+ Blockly.Msg["LOOPS_HUE"] = "120";
694
+ Blockly.Msg["MATH_HUE"] = "230";
422
695
  Blockly.Msg["PROCEDURES_HUE"] = "290";
423
- Blockly.Msg["COLOUR_HUE"] = "20";
696
+ Blockly.Msg["TEXTS_HUE"] = "160";
424
697
  Blockly.Msg["VARIABLES_DYNAMIC_HUE"] = "310";
698
+ Blockly.Msg["VARIABLES_HUE"] = "330";
699
+ return Blockly.Msg;
700
+ }));