blockly 8.0.3-beta.1 → 8.0.4-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 (125) hide show
  1. package/blockly.min.js +421 -419
  2. package/blockly_compressed.js +1 -1
  3. package/msg/ab.js +429 -425
  4. package/msg/ace.js +429 -425
  5. package/msg/af.js +429 -425
  6. package/msg/am.js +429 -425
  7. package/msg/ar.js +429 -425
  8. package/msg/ast.js +429 -425
  9. package/msg/az.js +429 -425
  10. package/msg/ba.js +429 -425
  11. package/msg/bcc.js +429 -425
  12. package/msg/be-tarask.js +429 -425
  13. package/msg/be.js +429 -425
  14. package/msg/bg.js +429 -425
  15. package/msg/bn.js +429 -425
  16. package/msg/br.js +429 -425
  17. package/msg/bs.js +429 -425
  18. package/msg/ca.js +429 -425
  19. package/msg/cdo.js +429 -425
  20. package/msg/cs.js +429 -425
  21. package/msg/da.js +429 -425
  22. package/msg/de.js +429 -425
  23. package/msg/diq.js +429 -425
  24. package/msg/dty.js +429 -425
  25. package/msg/ee.js +429 -425
  26. package/msg/el.js +429 -425
  27. package/msg/en-gb.js +429 -425
  28. package/msg/en.js +429 -425
  29. package/msg/eo.js +429 -425
  30. package/msg/es.js +429 -425
  31. package/msg/et.js +429 -425
  32. package/msg/eu.js +429 -425
  33. package/msg/fa.js +429 -425
  34. package/msg/fi.js +429 -425
  35. package/msg/fo.js +429 -425
  36. package/msg/fr.js +429 -425
  37. package/msg/frr.js +429 -425
  38. package/msg/gl.js +429 -425
  39. package/msg/gn.js +429 -425
  40. package/msg/gor.js +429 -425
  41. package/msg/ha.js +429 -425
  42. package/msg/hak.js +429 -425
  43. package/msg/he.js +429 -425
  44. package/msg/hi.js +429 -425
  45. package/msg/hr.js +429 -425
  46. package/msg/hrx.js +429 -425
  47. package/msg/hu.js +429 -425
  48. package/msg/hy.js +429 -425
  49. package/msg/ia.js +429 -425
  50. package/msg/id.js +429 -425
  51. package/msg/ig.js +429 -425
  52. package/msg/inh.js +429 -425
  53. package/msg/is.js +429 -425
  54. package/msg/it.js +429 -425
  55. package/msg/ja.js +429 -425
  56. package/msg/ka.js +429 -425
  57. package/msg/kab.js +429 -425
  58. package/msg/kbd-cyrl.js +429 -425
  59. package/msg/km.js +429 -425
  60. package/msg/kn.js +429 -425
  61. package/msg/ko.js +429 -425
  62. package/msg/ksh.js +429 -425
  63. package/msg/ku-latn.js +429 -425
  64. package/msg/ky.js +429 -425
  65. package/msg/la.js +429 -425
  66. package/msg/lb.js +429 -425
  67. package/msg/lki.js +429 -425
  68. package/msg/lo.js +429 -425
  69. package/msg/lrc.js +429 -425
  70. package/msg/lt.js +429 -425
  71. package/msg/lv.js +429 -425
  72. package/msg/mg.js +429 -425
  73. package/msg/mk.js +429 -425
  74. package/msg/ml.js +429 -425
  75. package/msg/mnw.js +429 -425
  76. package/msg/ms.js +429 -425
  77. package/msg/my.js +429 -425
  78. package/msg/mzn.js +429 -425
  79. package/msg/nb.js +429 -425
  80. package/msg/ne.js +429 -425
  81. package/msg/nl.js +429 -425
  82. package/msg/oc.js +429 -425
  83. package/msg/olo.js +429 -425
  84. package/msg/pa.js +429 -425
  85. package/msg/pl.js +429 -425
  86. package/msg/pms.js +429 -425
  87. package/msg/ps.js +429 -425
  88. package/msg/pt-br.js +429 -425
  89. package/msg/pt.js +429 -425
  90. package/msg/ro.js +429 -425
  91. package/msg/ru.js +429 -425
  92. package/msg/sc.js +429 -425
  93. package/msg/sco.js +429 -425
  94. package/msg/sd.js +429 -425
  95. package/msg/shn.js +429 -425
  96. package/msg/si.js +429 -425
  97. package/msg/sk.js +429 -425
  98. package/msg/skr-arab.js +429 -425
  99. package/msg/sl.js +429 -425
  100. package/msg/smn.js +429 -425
  101. package/msg/sq.js +429 -425
  102. package/msg/sr-latn.js +429 -425
  103. package/msg/sr.js +429 -425
  104. package/msg/sv.js +429 -425
  105. package/msg/sw.js +429 -425
  106. package/msg/ta.js +429 -425
  107. package/msg/tcy.js +429 -425
  108. package/msg/te.js +429 -425
  109. package/msg/th.js +429 -425
  110. package/msg/ti.js +429 -425
  111. package/msg/tl.js +429 -425
  112. package/msg/tlh.js +429 -425
  113. package/msg/tr.js +429 -425
  114. package/msg/ug-arab.js +429 -425
  115. package/msg/uk.js +429 -425
  116. package/msg/ur.js +429 -425
  117. package/msg/uz.js +429 -425
  118. package/msg/vi.js +429 -425
  119. package/msg/xmf.js +429 -425
  120. package/msg/yo.js +429 -425
  121. package/msg/yue.js +429 -425
  122. package/msg/zgh.js +429 -425
  123. package/msg/zh-hans.js +429 -425
  124. package/msg/zh-hant.js +429 -425
  125. package/package.json +1 -1
package/msg/vi.js CHANGED
@@ -1,436 +1,440 @@
1
1
  /* eslint-disable */
2
2
  ;(function(root, factory) {
3
3
  if (typeof define === 'function' && define.amd) { // AMD
4
- define(['../core'], factory);
4
+ define([], factory);
5
5
  } else if (typeof exports === 'object') { // Node.js
6
- module.exports = factory(require('../core'));
6
+ module.exports = factory();
7
7
  } else { // Browser
8
- root.Blockly.Msg = factory(root.Blockly);
8
+ var messages = factory();
9
+ for (var key in messages) {
10
+ root.Blockly.Msg[key] = messages[key];
11
+ }
9
12
  }
10
- }(this, function(Blockly) {
11
-
12
- var Blockly = {};Blockly.Msg={};// This file was automatically generated. Do not modify.
13
+ }(this, function() {
14
+ // This file was automatically generated. Do not modify.
13
15
 
14
16
  'use strict';
15
17
 
16
- Blockly.Msg["ADD_COMMENT"] = "Thêm Chú Giải";
17
- Blockly.Msg["CANNOT_DELETE_VARIABLE_PROCEDURE"] = "Không thể xóa giá trị '%1' vì nó được bao gồm trong định nghĩa của chức năng '%2'";
18
- Blockly.Msg["CHANGE_VALUE_TITLE"] = "Thay giá trị thành:";
19
- Blockly.Msg["CLEAN_UP"] = "Sắp xếp lại các khối";
20
- Blockly.Msg["COLLAPSED_WARNINGS_WARNING"] = "Các khối bị sập có chứa cảnh báo.";
21
- Blockly.Msg["COLLAPSE_ALL"] = "Thu Nhỏ Mọi Mảnh";
22
- Blockly.Msg["COLLAPSE_BLOCK"] = "Thu Nhỏ Mảnh";
23
- Blockly.Msg["COLOUR_BLEND_COLOUR1"] = "màu 1";
24
- Blockly.Msg["COLOUR_BLEND_COLOUR2"] = "màu 2";
25
- Blockly.Msg["COLOUR_BLEND_HELPURL"] = "https://meyerweb.com/eric/tools/color-blend/#:::rgbp"; // untranslated
26
- Blockly.Msg["COLOUR_BLEND_RATIO"] = "tỉ lệ";
27
- Blockly.Msg["COLOUR_BLEND_TITLE"] = "pha";
28
- Blockly.Msg["COLOUR_BLEND_TOOLTIP"] = "Pha hai màu với nhau theo tỉ lệ (0 - 100).";
29
- Blockly.Msg["COLOUR_PICKER_HELPURL"] = "https://vi.wikipedia.org/wiki/M%C3%A0u_s%E1%BA%AFc";
30
- Blockly.Msg["COLOUR_PICKER_TOOLTIP"] = "Chọn một màu từ bảng màu.";
31
- Blockly.Msg["COLOUR_RANDOM_HELPURL"] = "http://randomcolour.com"; // untranslated
32
- Blockly.Msg["COLOUR_RANDOM_TITLE"] = "màu bất kỳ";
33
- Blockly.Msg["COLOUR_RANDOM_TOOLTIP"] = "chọn một màu bất kỳ.";
34
- Blockly.Msg["COLOUR_RGB_BLUE"] = "màu xanh dương";
35
- Blockly.Msg["COLOUR_RGB_GREEN"] = "màu xanh lá cây";
36
- Blockly.Msg["COLOUR_RGB_HELPURL"] = "https://www.december.com/html/spec/colorpercompact.html"; // untranslated
37
- Blockly.Msg["COLOUR_RGB_RED"] = "màu đỏ";
38
- Blockly.Msg["COLOUR_RGB_TITLE"] = "tạo màu từ";
39
- Blockly.Msg["COLOUR_RGB_TOOLTIP"] = "Tạo màu từ ba màu: đỏ, xanh lá cây, xanh dương với số lượng cụ thể. Mỗi số phải có giá trị từ 0 đến 100.";
40
- Blockly.Msg["CONTROLS_FLOW_STATEMENTS_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
41
- Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK"] = "thoát";
42
- Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE"] = "sang lần lặp tiếp theo";
43
- Blockly.Msg["CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK"] = "Thoát khỏi vòng lặp hiện tại.";
44
- Blockly.Msg["CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE"] = "Bỏ qua phần còn lại trong vòng lặp này, và sang lần lặp tiếp theo.";
45
- Blockly.Msg["CONTROLS_FLOW_STATEMENTS_WARNING"] = "Chú ý: Mảnh này chỉ có thế dùng trong các vòng lặp.";
46
- Blockly.Msg["CONTROLS_FOREACH_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
47
- Blockly.Msg["CONTROLS_FOREACH_TITLE"] = "với mỗi thành phần %1 trong danh sách %2";
48
- Blockly.Msg["CONTROLS_FOREACH_TOOLTIP"] = "Trong một danh sách, lấy từng thành phần, gán vào biến \"%1\", rồi thực hiện một số lệnh.";
49
- Blockly.Msg["CONTROLS_FOR_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
50
- Blockly.Msg["CONTROLS_FOR_TITLE"] = "đếm theo %1 từ %2 đến %3 mỗi lần thêm %4";
51
- Blockly.Msg["CONTROLS_FOR_TOOLTIP"] = "Cho biến '%1' lấy các giá trị từ số bắt đầu đến số kết thúc, đếm theo khoảng thời gian đã chỉ định và thực hiện các khối được chỉ định.";
52
- Blockly.Msg["CONTROLS_IF_ELSEIF_TOOLTIP"] = "Thêm một điều kiện vào mảnh nếu.";
53
- Blockly.Msg["CONTROLS_IF_ELSE_TOOLTIP"] = "Cuối cùng, khi không điều kiện nào đúng.";
54
- Blockly.Msg["CONTROLS_IF_HELPURL"] = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
55
- Blockly.Msg["CONTROLS_IF_IF_TOOLTIP"] = "Thêm, bỏ, hoặc đổi thứ tự các mảnh con để tạo cấu trúc mới cho mảnh nếu.";
56
- Blockly.Msg["CONTROLS_IF_MSG_ELSE"] = "nếu không";
57
- Blockly.Msg["CONTROLS_IF_MSG_ELSEIF"] = "nếu không nếu";
58
- Blockly.Msg["CONTROLS_IF_MSG_IF"] = "nếu";
59
- Blockly.Msg["CONTROLS_IF_TOOLTIP_1"] = "Nếu điều kiện đúng, thực hiện các lệnh.";
60
- Blockly.Msg["CONTROLS_IF_TOOLTIP_2"] = "Nếu điều kiện đúng, thực hiện các lệnh đầu. Nếu sai, thực hiện các lệnh sau.";
61
- Blockly.Msg["CONTROLS_IF_TOOLTIP_3"] = "Nếu điều kiện đúng, thực hiện các lệnh đầu. Nếu không, nếu điều kiện thứ hai đúng, thực hiện các lệnh thứ hai.";
62
- Blockly.Msg["CONTROLS_IF_TOOLTIP_4"] = "Nếu điều kiện đúng, thực hiện các lệnh đầu. Nếu không, nếu điều kiện thứ hai đúng, thực hiện các lệnh thứ hai. Nếu không điều kiện nào đúng, thực hiện các lệnh cuối cùng.";
63
- Blockly.Msg["CONTROLS_REPEAT_HELPURL"] = "https://en.wikipedia.org/wiki/For_loop";
64
- Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"] = "thực hiện";
65
- Blockly.Msg["CONTROLS_REPEAT_TITLE"] = "lặp lại %1 lần";
66
- Blockly.Msg["CONTROLS_REPEAT_TOOLTIP"] = "Thực hiện các lệnh vài lần.";
67
- Blockly.Msg["CONTROLS_WHILEUNTIL_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
68
- Blockly.Msg["CONTROLS_WHILEUNTIL_OPERATOR_UNTIL"] = "lặp lại cho đến khi";
69
- Blockly.Msg["CONTROLS_WHILEUNTIL_OPERATOR_WHILE"] = "lặp lại trong khi";
70
- Blockly.Msg["CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL"] = "Miễn điều kiện còn sai, thì thực hiện các lệnh. Khi điều kiện đúng thì ngưng.";
71
- Blockly.Msg["CONTROLS_WHILEUNTIL_TOOLTIP_WHILE"] = "Miễn điều kiện còn đúng, thì thực hiện các lệnh.";
72
- Blockly.Msg["DELETE_ALL_BLOCKS"] = "Xóa hết %1 mảnh?";
73
- Blockly.Msg["DELETE_BLOCK"] = "Xóa Mảnh Này";
74
- Blockly.Msg["DELETE_VARIABLE"] = "Xóa giá trị '%1'";
75
- Blockly.Msg["DELETE_VARIABLE_CONFIRMATION"] = "Xóa %1 lần dùng của giá trị '%2'?";
76
- Blockly.Msg["DELETE_X_BLOCKS"] = "Xóa %1 Mảnh";
77
- Blockly.Msg["DIALOG_CANCEL"] = "Hủy";
78
- Blockly.Msg["DIALOG_OK"] = "OK";
79
- Blockly.Msg["DISABLE_BLOCK"] = "Ngưng Tác Dụng";
80
- Blockly.Msg["DUPLICATE_BLOCK"] = "Tạo Bản Sao";
81
- Blockly.Msg["DUPLICATE_COMMENT"] = "Bình luận trùng";
82
- Blockly.Msg["ENABLE_BLOCK"] = "Phục Hồi Tác Dụng";
83
- Blockly.Msg["EXPAND_ALL"] = "Mở Lớn Mọi Mảnh";
84
- Blockly.Msg["EXPAND_BLOCK"] = "Mở Lớn Mảnh";
85
- Blockly.Msg["EXTERNAL_INPUTS"] = "Chỗ Gắn Bên Ngoài";
86
- Blockly.Msg["HELP"] = "Trợ Giúp";
87
- Blockly.Msg["INLINE_INPUTS"] = "Chỗ Gắn Cùng Dòng";
88
- Blockly.Msg["LISTS_CREATE_EMPTY_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
89
- Blockly.Msg["LISTS_CREATE_EMPTY_TITLE"] = "tạo danh sách trống";
90
- Blockly.Msg["LISTS_CREATE_EMPTY_TOOLTIP"] = "Hoàn trả một danh sách, với độ dài 0, không có thành tố nào cả";
91
- Blockly.Msg["LISTS_CREATE_WITH_CONTAINER_TITLE_ADD"] = "danh sách";
92
- Blockly.Msg["LISTS_CREATE_WITH_CONTAINER_TOOLTIP"] = "Thêm, bỏ, hoặc sắp xếp lại các thành phần để tạo dựng mảnh danh sách này.";
93
- Blockly.Msg["LISTS_CREATE_WITH_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
94
- Blockly.Msg["LISTS_CREATE_WITH_INPUT_WITH"] = "tạo danh sách gồm";
95
- Blockly.Msg["LISTS_CREATE_WITH_ITEM_TOOLTIP"] = "Thêm vật vào danh sách.";
96
- Blockly.Msg["LISTS_CREATE_WITH_TOOLTIP"] = "Tạo một danh sách bao gồm nhiều vậts, với một số lượng bất kỳ.";
97
- Blockly.Msg["LISTS_GET_INDEX_FIRST"] = "đầu tiên";
98
- Blockly.Msg["LISTS_GET_INDEX_FROM_END"] = "(đếm từ cuối) thứ";
99
- Blockly.Msg["LISTS_GET_INDEX_FROM_START"] = "thứ";
100
- Blockly.Msg["LISTS_GET_INDEX_GET"] = "lấy thành tố";
101
- Blockly.Msg["LISTS_GET_INDEX_GET_REMOVE"] = "lấy và xóa thành tố";
102
- Blockly.Msg["LISTS_GET_INDEX_LAST"] = "cuối cùng";
103
- Blockly.Msg["LISTS_GET_INDEX_RANDOM"] = "bất kỳ";
104
- Blockly.Msg["LISTS_GET_INDEX_REMOVE"] = "xóa thành tố";
105
- Blockly.Msg["LISTS_GET_INDEX_TAIL"] = ""; // untranslated
106
- Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_GET_FIRST"] = "Hoàn trả thành tố đầu tiên trong danh sách.";
107
- Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_GET_FROM"] = "Hoàn trả thành tố trong danh sách ở vị trí ấn định.";
108
- Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_GET_LAST"] = "Hoàn trả thành tố cuối cùng trong danh sách.";
109
- Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_GET_RANDOM"] = "Hoàn trả một thành tố bất kỳ trong danh sách.";
110
- Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST"] = "Hoàn trả và xóa thành tố đầu tiên trong danh sách.";
111
- Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM"] = "Hoàn trả xóa thành tố trong danh sách ở vị trí ấn định.";
112
- Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST"] = "Hoàn trả và xóa thành tố cuối cùng trong danh sách.";
113
- Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM"] = "Hoàn trả và xóa mộtthành tố bất kỳ trong danh sách.";
114
- Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST"] = "Xóa thành tố đầu tiên trong danh sách.";
115
- Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM"] = "Xóa thành tố trong danh sách vị trí ấn định.";
116
- Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST"] = "Xóa thành tố cuối cùng trong danh sách.";
117
- Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM"] = "Xóa thành tố bất kỳ trong danh sách.";
118
- Blockly.Msg["LISTS_GET_SUBLIST_END_FROM_END"] = "đến (đếm từ cuối) thứ";
119
- Blockly.Msg["LISTS_GET_SUBLIST_END_FROM_START"] = "đến thứ";
120
- Blockly.Msg["LISTS_GET_SUBLIST_END_LAST"] = "đến cuối cùng";
121
- Blockly.Msg["LISTS_GET_SUBLIST_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
122
- Blockly.Msg["LISTS_GET_SUBLIST_START_FIRST"] = "lấy một danh sách con từ đầu tiên";
123
- Blockly.Msg["LISTS_GET_SUBLIST_START_FROM_END"] = "lấy một danh sách con từ (đếm từ cuối) từ vị trí thứ";
124
- Blockly.Msg["LISTS_GET_SUBLIST_START_FROM_START"] = "lấy một danh sách con từ vị trí thứ";
125
- Blockly.Msg["LISTS_GET_SUBLIST_TAIL"] = ""; // untranslated
126
- Blockly.Msg["LISTS_GET_SUBLIST_TOOLTIP"] = "Lấy một mảng của danh sách này để tạo danh sách con.";
127
- Blockly.Msg["LISTS_INDEX_FROM_END_TOOLTIP"] = "%1 là thành tố cuối cùng.";
128
- Blockly.Msg["LISTS_INDEX_FROM_START_TOOLTIP"] = "%1 thành tố đầu tiên.";
129
- Blockly.Msg["LISTS_INDEX_OF_FIRST"] = "tìm sự mặt đầu tiên của vật";
130
- Blockly.Msg["LISTS_INDEX_OF_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
131
- Blockly.Msg["LISTS_INDEX_OF_LAST"] = "tìm sự có mặt cuối cùng của vật";
132
- Blockly.Msg["LISTS_INDEX_OF_TOOLTIP"] = "Hoàn trả vị trí xuất hiện đầu tiên/cuối cùng của vật trong danh sách. Nếu không tìm thấy thì hoàn trả số %1.";
133
- Blockly.Msg["LISTS_INLIST"] = "trong dánh sách";
134
- Blockly.Msg["LISTS_ISEMPTY_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
135
- Blockly.Msg["LISTS_ISEMPTY_TITLE"] = "%1 trống rỗng";
136
- Blockly.Msg["LISTS_ISEMPTY_TOOLTIP"] = "Hoàn trả “đúng\" nếu danh sách không có thành tử nào.";
137
- Blockly.Msg["LISTS_LENGTH_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
138
- Blockly.Msg["LISTS_LENGTH_TITLE"] = "độ dài của %1";
139
- Blockly.Msg["LISTS_LENGTH_TOOLTIP"] = "Hoàn trả độ dài của một danh sách.";
140
- Blockly.Msg["LISTS_REPEAT_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
141
- Blockly.Msg["LISTS_REPEAT_TITLE"] = "tạo danh sách gồm một vật %1 lặp lại %2 lần";
142
- Blockly.Msg["LISTS_REPEAT_TOOLTIP"] = "Tạo danh sách gồm một số lượng vật nhất định với mỗi vật đều giống nhau.";
143
- Blockly.Msg["LISTS_REVERSE_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#reversing-a-list"; // untranslated
144
- Blockly.Msg["LISTS_REVERSE_MESSAGE0"] = "đảo ngược %1";
145
- Blockly.Msg["LISTS_REVERSE_TOOLTIP"] = "Đảo ngược bản sao chép của một danh sách.";
146
- Blockly.Msg["LISTS_SET_INDEX_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
147
- Blockly.Msg["LISTS_SET_INDEX_INPUT_TO"] = "giá trị";
148
- Blockly.Msg["LISTS_SET_INDEX_INSERT"] = "chèn vào vị trí";
149
- Blockly.Msg["LISTS_SET_INDEX_SET"] = "đặt";
150
- Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST"] = "Chèn vật vào đầu danh sách.";
151
- Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_INSERT_FROM"] = "Chèn vật vào danh sách theo vị trí ấn định.";
152
- Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_INSERT_LAST"] = "Gắn thêm vật vào cuối danh sách.";
153
- Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM"] = "Gắn chèn vật vào danh sách vị trí ngẫu nhiên.";
154
- Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_SET_FIRST"] = "Đặt giá trị của thành tố đầu tiên trong danh sách.";
155
- Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_SET_FROM"] = "Đặt giá trị của thành tố ở vị trí ấn định trong một danh sách.";
156
- Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_SET_LAST"] = "Đặt giá trị của thành tố cuối cùng trong danh sách.";
157
- Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_SET_RANDOM"] = "Đặt giá trị của thành tố ngẫu nhiên trong danh sách.";
158
- Blockly.Msg["LISTS_SORT_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
159
- Blockly.Msg["LISTS_SORT_ORDER_ASCENDING"] = "tăng dần";
160
- Blockly.Msg["LISTS_SORT_ORDER_DESCENDING"] = "giảm dần";
161
- Blockly.Msg["LISTS_SORT_TITLE"] = "sắp xếp %1 %2 %3";
162
- Blockly.Msg["LISTS_SORT_TOOLTIP"] = "Sắp xếp một bản sao của một danh sách.";
163
- Blockly.Msg["LISTS_SORT_TYPE_IGNORECASE"] = "chữ cái, không phân biệt hoa/thường";
164
- Blockly.Msg["LISTS_SORT_TYPE_NUMERIC"] = "số";
165
- Blockly.Msg["LISTS_SORT_TYPE_TEXT"] = "chữ cái";
166
- Blockly.Msg["LISTS_SPLIT_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
167
- Blockly.Msg["LISTS_SPLIT_LIST_FROM_TEXT"] = "tạo danh sách từ văn bản";
168
- Blockly.Msg["LISTS_SPLIT_TEXT_FROM_LIST"] = "tạo văn bản từ danh sách";
169
- Blockly.Msg["LISTS_SPLIT_TOOLTIP_JOIN"] = "Liên kết một danh sách các văn bản vào một văn bản, cách nhau bằng dấu phân cách.";
170
- Blockly.Msg["LISTS_SPLIT_TOOLTIP_SPLIT"] = "Tách văn bản thành một danh sách các văn bản nhỏ, ngắt bởi các ký tự phân cách.";
171
- Blockly.Msg["LISTS_SPLIT_WITH_DELIMITER"] = "với tự phân cách";
172
- Blockly.Msg["LOGIC_BOOLEAN_FALSE"] = "sai";
173
- Blockly.Msg["LOGIC_BOOLEAN_HELPURL"] = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
174
- Blockly.Msg["LOGIC_BOOLEAN_TOOLTIP"] = "Hoàn trả \"đúng\" hoặc \"sai\".";
175
- Blockly.Msg["LOGIC_BOOLEAN_TRUE"] = "đúng";
176
- Blockly.Msg["LOGIC_COMPARE_HELPURL"] = "https://vi.wikipedia.org/wiki/B%E1%BA%A5t_%C4%91%E1%BA%B3ng_th%E1%BB%A9c";
177
- Blockly.Msg["LOGIC_COMPARE_TOOLTIP_EQ"] = "Hoàn trả giá trị \"đúng\" (true) nếu giá trị hai đầu vào bằng nhau.";
178
- Blockly.Msg["LOGIC_COMPARE_TOOLTIP_GT"] = "Hoàn trả giá trị \"đúng\" (true) nếu đầu vào thứ nhất lớn hơn đầu vào thứ hai.";
179
- Blockly.Msg["LOGIC_COMPARE_TOOLTIP_GTE"] = "Hoàn trả giá trị \"đúng\" (true) nếu đầu vào thứ nhất lớn hơn hoặc bằng đầu vào thứ hai.";
180
- Blockly.Msg["LOGIC_COMPARE_TOOLTIP_LT"] = "Hoàn trả giá trị \"đúng\" (true) nếu đầu vào thứ nhất nhỏ hơn đầu vào thứ hai.";
181
- Blockly.Msg["LOGIC_COMPARE_TOOLTIP_LTE"] = "Hoàn trả giá trị \"đúng\" (true) nếu đầu vào thứ nhất nhỏ hơn hoặc bằng đầu vào thứ hai.";
182
- Blockly.Msg["LOGIC_COMPARE_TOOLTIP_NEQ"] = "Hoàn trả giá trị \"đúng\" (true) nếu giá trị hai đầu vào không bằng nhau.";
183
- Blockly.Msg["LOGIC_NEGATE_HELPURL"] = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
184
- Blockly.Msg["LOGIC_NEGATE_TITLE"] = "không %1";
185
- Blockly.Msg["LOGIC_NEGATE_TOOLTIP"] = "Hoàn trả \"đúng\" (true) nếu đầu vào sai. Hoàn trả \"sai\" (false) nếu đầu vào đúng.";
186
- Blockly.Msg["LOGIC_NULL"] = "trống không";
187
- Blockly.Msg["LOGIC_NULL_HELPURL"] = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
188
- Blockly.Msg["LOGIC_NULL_TOOLTIP"] = "Hoàn trả trống không.";
189
- Blockly.Msg["LOGIC_OPERATION_AND"] = "";
190
- Blockly.Msg["LOGIC_OPERATION_HELPURL"] = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
191
- Blockly.Msg["LOGIC_OPERATION_OR"] = "hoặc";
192
- Blockly.Msg["LOGIC_OPERATION_TOOLTIP_AND"] = "Hoàn trả \"đúng\" (true) nếu cả hai đầu vào đều đúng.";
193
- Blockly.Msg["LOGIC_OPERATION_TOOLTIP_OR"] = "Hoàn trả \"đúng\" (true) nếu ít nhất một trong hai đầu vào đúng.";
194
- Blockly.Msg["LOGIC_TERNARY_CONDITION"] = "kiểm tra";
195
- Blockly.Msg["LOGIC_TERNARY_HELPURL"] = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
196
- Blockly.Msg["LOGIC_TERNARY_IF_FALSE"] = "nếu sai";
197
- Blockly.Msg["LOGIC_TERNARY_IF_TRUE"] = "nếu đúng";
198
- Blockly.Msg["LOGIC_TERNARY_TOOLTIP"] = "Kiểm tra điều kiện. Nếu điều kiện đúng, hoàn trả giá trị từ mệnh đề \"nếu đúng\" nếu không đúng, hoàn trả giá trị từ mệnh đề \"nếu sai\".";
199
- Blockly.Msg["MATH_ADDITION_SYMBOL"] = "+"; // untranslated
200
- Blockly.Msg["MATH_ARITHMETIC_HELPURL"] = "https://vi.wikipedia.org/wiki/S%E1%BB%91_h%E1%BB%8Dc";
201
- Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_ADD"] = "Hoàn trả tổng của hai con số.";
202
- Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_DIVIDE"] = "Hoàn trả thương của hai con số.";
203
- Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_MINUS"] = "Hoàn trả hiệu của hai con số.";
204
- Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_MULTIPLY"] = "Hoàn trả tích của hai con số.";
205
- Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_POWER"] = "Hoàn trả số lũy thừa với số thứ nhất là cơ số và số thứ hai số mũ.";
206
- Blockly.Msg["MATH_ATAN2_HELPURL"] = "https://en.wikipedia.org/wiki/Atan2";
207
- Blockly.Msg["MATH_ATAN2_TITLE"] = "atan2 của X:%1 Y:%2";
208
- Blockly.Msg["MATH_ATAN2_TOOLTIP"] = "Trả về arctangent của điểm (X, Y) trong khoảng từ -180 độ đến 180 độ.";
209
- Blockly.Msg["MATH_CHANGE_HELPURL"] = "https://vi.wikipedia.org/wiki/Ph%C3%A9p_c%E1%BB%99ng";
210
- Blockly.Msg["MATH_CHANGE_TITLE"] = "cộng vào %1 giá trị %2";
211
- Blockly.Msg["MATH_CHANGE_TOOLTIP"] = "Cộng số đầu vào vào biến \"%1\".";
212
- Blockly.Msg["MATH_CONSTANT_HELPURL"] = "https://en.wikipedia.org/wiki/Mathematical_constant";
213
- Blockly.Msg["MATH_CONSTANT_TOOLTIP"] = "Hoàn trả các đẳng số thường gặp: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (vô cực).";
214
- Blockly.Msg["MATH_CONSTRAIN_HELPURL"] = "https://en.wikipedia.org/wiki/Clamping_(graphics)"; // untranslated
215
- Blockly.Msg["MATH_CONSTRAIN_TITLE"] = "giới hạn %1 không dưới %2 không hơn %3";
216
- Blockly.Msg["MATH_CONSTRAIN_TOOLTIP"] = "Giới hạn số đầu vào để không dưới số thứ nhất và không hơn số thứ hai.";
217
- Blockly.Msg["MATH_DIVISION_SYMBOL"] = "÷"; // untranslated
218
- Blockly.Msg["MATH_IS_DIVISIBLE_BY"] = "chia hết cho";
219
- Blockly.Msg["MATH_IS_EVEN"] = "là số chẵn";
220
- Blockly.Msg["MATH_IS_NEGATIVE"] = " số âm";
221
- Blockly.Msg["MATH_IS_ODD"] = "là số lẻ";
222
- Blockly.Msg["MATH_IS_POSITIVE"] = "là số dương";
223
- Blockly.Msg["MATH_IS_PRIME"] = "là số nguyên tố";
224
- Blockly.Msg["MATH_IS_TOOLTIP"] = "Kiểm tra con số xem nó có phải là số chẵn, lẻ, nguyên tố, nguyên, dương, âm, hay xem nó có chia hết cho số đầu vào hay không. Hoàn trả đúng hay sai.";
225
- Blockly.Msg["MATH_IS_WHOLE"] = "là số nguyên";
226
- Blockly.Msg["MATH_MODULO_HELPURL"] = "https://en.wikipedia.org/wiki/Modulo_operation";
227
- Blockly.Msg["MATH_MODULO_TITLE"] = "số dư của %1 ÷ %2";
228
- Blockly.Msg["MATH_MODULO_TOOLTIP"] = "Chia số thứ nhất cho số thứ hai rồi hoàn trả số dư từ.";
229
- Blockly.Msg["MATH_MULTIPLICATION_SYMBOL"] = "×"; // untranslated
230
- Blockly.Msg["MATH_NUMBER_HELPURL"] = "https://vi.wikipedia.org/wiki/S%E1%BB%91";
231
- Blockly.Msg["MATH_NUMBER_TOOLTIP"] = "Một con số.";
232
- Blockly.Msg["MATH_ONLIST_HELPURL"] = "";
233
- Blockly.Msg["MATH_ONLIST_OPERATOR_AVERAGE"] = "giá trị trung bình của một danh sách";
234
- Blockly.Msg["MATH_ONLIST_OPERATOR_MAX"] = "số lớn nhât của một danh sách";
235
- Blockly.Msg["MATH_ONLIST_OPERATOR_MEDIAN"] = "số trung vị của một danh sách";
236
- Blockly.Msg["MATH_ONLIST_OPERATOR_MIN"] = "số nhỏ nhất của một danh sách";
237
- Blockly.Msg["MATH_ONLIST_OPERATOR_MODE"] = "các mode của một danh sách";
238
- Blockly.Msg["MATH_ONLIST_OPERATOR_RANDOM"] = "một số bất kỳ của một danh sách";
239
- Blockly.Msg["MATH_ONLIST_OPERATOR_STD_DEV"] = "độ lệch chuẩn của một danh sách";
240
- Blockly.Msg["MATH_ONLIST_OPERATOR_SUM"] = "tổng của một danh sách";
241
- Blockly.Msg["MATH_ONLIST_TOOLTIP_AVERAGE"] = "Hoàn trả giá trị trung bình từ của danh sách số.";
242
- Blockly.Msg["MATH_ONLIST_TOOLTIP_MAX"] = "Hoàn trả số lớn nhất trong tất cả các số trong danh sách.";
243
- Blockly.Msg["MATH_ONLIST_TOOLTIP_MEDIAN"] = "Hoàn trả số trung vị của danh sách số.";
244
- Blockly.Msg["MATH_ONLIST_TOOLTIP_MIN"] = "Hoàn trả số nhỏ nhất trong tất cả các số trong danh sách.";
245
- Blockly.Msg["MATH_ONLIST_TOOLTIP_MODE"] = "Hoàn trả các số mặt nhiều nhất trong danh sách.";
246
- Blockly.Msg["MATH_ONLIST_TOOLTIP_RANDOM"] = "Hoàn trả một số bất kỳ từ các số trong danh sách.";
247
- Blockly.Msg["MATH_ONLIST_TOOLTIP_STD_DEV"] = "Hoàn trả độ lệch chuẩn của danh sách số.";
248
- Blockly.Msg["MATH_ONLIST_TOOLTIP_SUM"] = "Hoàn trả tổng số của tất cả các số trong danh sách.";
249
- Blockly.Msg["MATH_POWER_SYMBOL"] = "^"; // untranslated
250
- Blockly.Msg["MATH_RANDOM_FLOAT_HELPURL"] = "https://en.wikipedia.org/wiki/Random_number_generation";
251
- Blockly.Msg["MATH_RANDOM_FLOAT_TITLE_RANDOM"] = "phân số bất kỳ";
252
- Blockly.Msg["MATH_RANDOM_FLOAT_TOOLTIP"] = "Hoàn trả một phân số bất kỳ không nhỏ hơn 0.0 và không lớn hơn 1.0.";
253
- Blockly.Msg["MATH_RANDOM_INT_HELPURL"] = "https://en.wikipedia.org/wiki/Random_number_generation";
254
- Blockly.Msg["MATH_RANDOM_INT_TITLE"] = "Một số nguyên bất kỳ từ %1 đến %2";
255
- Blockly.Msg["MATH_RANDOM_INT_TOOLTIP"] = "Hoàn trả một số nguyên bất kỳ lớn hơn hoặc bằng số đầu và nhỏ hơn hoặc bằng số sau.";
256
- Blockly.Msg["MATH_ROUND_HELPURL"] = "https://en.wikipedia.org/wiki/Rounding";
257
- Blockly.Msg["MATH_ROUND_OPERATOR_ROUND"] = "làm tròn";
258
- Blockly.Msg["MATH_ROUND_OPERATOR_ROUNDDOWN"] = "làm tròn xuống";
259
- Blockly.Msg["MATH_ROUND_OPERATOR_ROUNDUP"] = "làm tròn lên";
260
- Blockly.Msg["MATH_ROUND_TOOLTIP"] = "Làm tròn lên hoặc tròn xuống số đầu vào.";
261
- Blockly.Msg["MATH_SINGLE_HELPURL"] = "https://vi.wikipedia.org/wiki/C%C4%83n_b%E1%BA%ADc_hai";
262
- Blockly.Msg["MATH_SINGLE_OP_ABSOLUTE"] = "giá trị tuyệt đối";
263
- Blockly.Msg["MATH_SINGLE_OP_ROOT"] = "căn bật hai";
264
- Blockly.Msg["MATH_SINGLE_TOOLTIP_ABS"] = "Hoàn trả giá trị tuyệt đối của số đầu vào.";
265
- Blockly.Msg["MATH_SINGLE_TOOLTIP_EXP"] = "Hoàn trả lũy thừa của số e với số mũ đầu vào.";
266
- Blockly.Msg["MATH_SINGLE_TOOLTIP_LN"] = "Hoàn trả lôgarit tự nhiên của số đầu vào.";
267
- Blockly.Msg["MATH_SINGLE_TOOLTIP_LOG10"] = "Hoàn trả lôgarit số 10 của số đầu vào.";
268
- Blockly.Msg["MATH_SINGLE_TOOLTIP_NEG"] = "Đổi dấu của số đầu vào: âm thành dương và dương thành âm, và hoàn trả số mới.";
269
- Blockly.Msg["MATH_SINGLE_TOOLTIP_POW10"] = "Hoàn trả lũy thừa của số 10 với số đầu vào.";
270
- Blockly.Msg["MATH_SINGLE_TOOLTIP_ROOT"] = "Hoàn trả căn bật hai của số đầu vào.";
271
- Blockly.Msg["MATH_SUBTRACTION_SYMBOL"] = "-"; // untranslated
272
- Blockly.Msg["MATH_TRIG_ACOS"] = "acos"; // untranslated
273
- Blockly.Msg["MATH_TRIG_ASIN"] = "asin"; // untranslated
274
- Blockly.Msg["MATH_TRIG_ATAN"] = "atan"; // untranslated
275
- Blockly.Msg["MATH_TRIG_COS"] = "cos"; // untranslated
276
- Blockly.Msg["MATH_TRIG_HELPURL"] = "https://vi.wikipedia.org/wiki/H%C3%A0m_l%C6%B0%E1%BB%A3ng_gi%C3%A1c";
277
- Blockly.Msg["MATH_TRIG_SIN"] = "sin"; // untranslated
278
- Blockly.Msg["MATH_TRIG_TAN"] = "tan"; // untranslated
279
- Blockly.Msg["MATH_TRIG_TOOLTIP_ACOS"] = "Hoàn trả Arccos của một góc (theo độ).";
280
- Blockly.Msg["MATH_TRIG_TOOLTIP_ASIN"] = "Hoàn trả Arcsin của một góc (theo độ).";
281
- Blockly.Msg["MATH_TRIG_TOOLTIP_ATAN"] = "Hoàn trả Arctang của một góc (theo độ).";
282
- Blockly.Msg["MATH_TRIG_TOOLTIP_COS"] = "Hoàn trả Cos của một góc (theo độ).";
283
- Blockly.Msg["MATH_TRIG_TOOLTIP_SIN"] = "Hoàn trả Sin của một góc (theo độ).";
284
- Blockly.Msg["MATH_TRIG_TOOLTIP_TAN"] = "Hoàn trả Tang của một góc (theo độ).";
285
- Blockly.Msg["NEW_COLOUR_VARIABLE"] = "Tạo một giá trị màu sắc...";
286
- Blockly.Msg["NEW_NUMBER_VARIABLE"] = "Tạo một giá trị số...";
287
- Blockly.Msg["NEW_STRING_VARIABLE"] = "Tạo một giá trị dạng chuỗi...";
288
- Blockly.Msg["NEW_VARIABLE"] = "Tạo biến...";
289
- Blockly.Msg["NEW_VARIABLE_TITLE"] = "Tên của biến mới:";
290
- Blockly.Msg["NEW_VARIABLE_TYPE_TITLE"] = "Kiểu giá trị mới:";
291
- Blockly.Msg["ORDINAL_NUMBER_SUFFIX"] = ""; // untranslated
292
- Blockly.Msg["PROCEDURES_ALLOW_STATEMENTS"] = "cho phép báo cáo";
293
- Blockly.Msg["PROCEDURES_BEFORE_PARAMS"] = "với:";
294
- Blockly.Msg["PROCEDURES_CALLNORETURN_HELPURL"] = "https://vi.wikipedia.org/wiki/Ch%C6%B0%C6%A1ng_tr%C3%ACnh_con";
295
- Blockly.Msg["PROCEDURES_CALLNORETURN_TOOLTIP"] = "Chạy một thủ tục không có giá trị hoàn trả.";
296
- Blockly.Msg["PROCEDURES_CALLRETURN_HELPURL"] = "https://vi.wikipedia.org/wiki/Ch%C6%B0%C6%A1ng_tr%C3%ACnh_con";
297
- Blockly.Msg["PROCEDURES_CALLRETURN_TOOLTIP"] = "Chạy một thủ tục có giá trị hoàn trả.";
298
- Blockly.Msg["PROCEDURES_CALL_BEFORE_PARAMS"] = "với:";
299
- Blockly.Msg["PROCEDURES_CREATE_DO"] = "Tạo mảnh \"thực hiện %1\"";
300
- Blockly.Msg["PROCEDURES_DEFNORETURN_COMMENT"] = "Mô tả hàm này...";
301
- Blockly.Msg["PROCEDURES_DEFNORETURN_DO"] = "";
302
- Blockly.Msg["PROCEDURES_DEFNORETURN_HELPURL"] = "https://en.wikipedia.org/wiki/Subroutine"; // untranslated
303
- Blockly.Msg["PROCEDURES_DEFNORETURN_PROCEDURE"] = "làm gì đó";
304
- Blockly.Msg["PROCEDURES_DEFNORETURN_TITLE"] = "thủ tục để";
305
- Blockly.Msg["PROCEDURES_DEFNORETURN_TOOLTIP"] = "Một thủ tục không có giá trị hoàn trả.";
306
- Blockly.Msg["PROCEDURES_DEFRETURN_HELPURL"] = "https://en.wikipedia.org/wiki/Subroutine"; // untranslated
307
- Blockly.Msg["PROCEDURES_DEFRETURN_RETURN"] = "hoàn trả";
308
- Blockly.Msg["PROCEDURES_DEFRETURN_TOOLTIP"] = "Một thủ tục có giá trị hoàn trả.";
309
- Blockly.Msg["PROCEDURES_DEF_DUPLICATE_WARNING"] = "Chú ý: Thủ tục này có lặp lại tên các tham số.";
310
- Blockly.Msg["PROCEDURES_HIGHLIGHT_DEF"] = "Làm nổi bật thủ tục";
311
- Blockly.Msg["PROCEDURES_IFRETURN_HELPURL"] = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
312
- Blockly.Msg["PROCEDURES_IFRETURN_TOOLTIP"] = "Khi điều kiện đúng thì hoàn trả một giá trị.";
313
- Blockly.Msg["PROCEDURES_IFRETURN_WARNING"] = "Chú ý: Mảnh này chỉ có thể dùng trong một thủ tục.";
314
- Blockly.Msg["PROCEDURES_MUTATORARG_TITLE"] = "biến:";
315
- Blockly.Msg["PROCEDURES_MUTATORARG_TOOLTIP"] = "Thêm một đầu vào cho hàm.";
316
- Blockly.Msg["PROCEDURES_MUTATORCONTAINER_TITLE"] = "các tham số";
317
- Blockly.Msg["PROCEDURES_MUTATORCONTAINER_TOOLTIP"] = "Thêm, xóa hoặc sắp xếp lại các đầu vào cho hàm này.";
318
- Blockly.Msg["REDO"] = "Làm lại";
319
- Blockly.Msg["REMOVE_COMMENT"] = "Xóa Chú Giải";
320
- Blockly.Msg["RENAME_VARIABLE"] = "Thay tên biến...";
321
- Blockly.Msg["RENAME_VARIABLE_TITLE"] = "Thay tên tất cả các biến \"%1\" thành:";
322
- Blockly.Msg["TEXT_APPEND_HELPURL"] = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
323
- Blockly.Msg["TEXT_APPEND_TITLE"] = " cuối %1 thêm văn bản %2";
324
- Blockly.Msg["TEXT_APPEND_TOOLTIP"] = "Thêm một mảng văn bản vào biến \"%1\".";
325
- Blockly.Msg["TEXT_CHANGECASE_HELPURL"] = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
326
- Blockly.Msg["TEXT_CHANGECASE_OPERATOR_LOWERCASE"] = "thành chữ thường";
327
- Blockly.Msg["TEXT_CHANGECASE_OPERATOR_TITLECASE"] = "thành Chữ In Đầu Mỗi Từ";
328
- Blockly.Msg["TEXT_CHANGECASE_OPERATOR_UPPERCASE"] = "thành CHỮ IN HOA";
329
- Blockly.Msg["TEXT_CHANGECASE_TOOLTIP"] = "Hoàn trả văn bản sau khi chuyển đổi chữ in hoa hay thường.";
330
- Blockly.Msg["TEXT_CHARAT_FIRST"] = "lấy tự đầu tiên";
331
- Blockly.Msg["TEXT_CHARAT_FROM_END"] = "lấy từ phía cuối, tự thứ";
332
- Blockly.Msg["TEXT_CHARAT_FROM_START"] = "lấy ký tự thứ";
333
- Blockly.Msg["TEXT_CHARAT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
334
- Blockly.Msg["TEXT_CHARAT_LAST"] = "lấy ký tự cuối cùng";
335
- Blockly.Msg["TEXT_CHARAT_RANDOM"] = "lấy ký tự bất kỳ";
336
- Blockly.Msg["TEXT_CHARAT_TAIL"] = ""; // untranslated
337
- Blockly.Msg["TEXT_CHARAT_TITLE"] = "trong văn bản %1 %2";
338
- Blockly.Msg["TEXT_CHARAT_TOOLTIP"] = "Hoàn trả ký tự ở vị trí đặt ra.";
339
- Blockly.Msg["TEXT_COUNT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#counting-substrings"; // untranslated
340
- Blockly.Msg["TEXT_COUNT_MESSAGE0"] = "đến %1 trong %2";
341
- Blockly.Msg["TEXT_COUNT_TOOLTIP"] = "Đếm số lần một đoạn văn bản xuất hiện trong một đoạn văn bản khác.";
342
- Blockly.Msg["TEXT_CREATE_JOIN_ITEM_TOOLTIP"] = "thêm vật mới vào văn bản.";
343
- Blockly.Msg["TEXT_CREATE_JOIN_TITLE_JOIN"] = "kết nối";
344
- Blockly.Msg["TEXT_CREATE_JOIN_TOOLTIP"] = "Thêm, bỏ, hoặc sắp xếp lại các thành phần để tạo dựng mảnh văn bản này.";
345
- Blockly.Msg["TEXT_GET_SUBSTRING_END_FROM_END"] = "đến từ phía cuối, ký tự thứ";
346
- Blockly.Msg["TEXT_GET_SUBSTRING_END_FROM_START"] = "đến tự thứ";
347
- Blockly.Msg["TEXT_GET_SUBSTRING_END_LAST"] = "đến ký tự cuối cùng";
348
- Blockly.Msg["TEXT_GET_SUBSTRING_HELPURL"] = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
349
- Blockly.Msg["TEXT_GET_SUBSTRING_INPUT_IN_TEXT"] = "trong văn bản";
350
- Blockly.Msg["TEXT_GET_SUBSTRING_START_FIRST"] = "lấy từ ký tự đầu tiên";
351
- Blockly.Msg["TEXT_GET_SUBSTRING_START_FROM_END"] = "lấy từ phía cuối, ký tự thứ";
352
- Blockly.Msg["TEXT_GET_SUBSTRING_START_FROM_START"] = "lấy từ ký tự thứ";
353
- Blockly.Msg["TEXT_GET_SUBSTRING_TAIL"] = ""; // untranslated
354
- Blockly.Msg["TEXT_GET_SUBSTRING_TOOLTIP"] = "Hoàn trả một mảng ký tự ấn định từ trong văn bản.";
355
- Blockly.Msg["TEXT_INDEXOF_HELPURL"] = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
356
- Blockly.Msg["TEXT_INDEXOF_OPERATOR_FIRST"] = "tìm sự mặt đầu tiên của";
357
- Blockly.Msg["TEXT_INDEXOF_OPERATOR_LAST"] = "tìm sự có mặt cuối cùng của";
358
- Blockly.Msg["TEXT_INDEXOF_TITLE"] = "trong văn bản %1 %2 %3";
359
- Blockly.Msg["TEXT_INDEXOF_TOOLTIP"] = "Hoàn trả vị trí xuất hiện đầu/cuối của văn bản thứ nhất trong văn bản thứ hai. Nếu không tìm thấy thì hoàn trả số %1.";
360
- Blockly.Msg["TEXT_ISEMPTY_HELPURL"] = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
361
- Blockly.Msg["TEXT_ISEMPTY_TITLE"] = "%1 trống không";
362
- Blockly.Msg["TEXT_ISEMPTY_TOOLTIP"] = "Hoàn trả “đúng nếu văn bản không có ký tự nào.";
363
- Blockly.Msg["TEXT_JOIN_HELPURL"] = "";
364
- Blockly.Msg["TEXT_JOIN_TITLE_CREATEWITH"] = "tạo văn bản từ";
365
- Blockly.Msg["TEXT_JOIN_TOOLTIP"] = "Tạo một văn bản từ các thành phần.";
366
- Blockly.Msg["TEXT_LENGTH_HELPURL"] = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
367
- Blockly.Msg["TEXT_LENGTH_TITLE"] = "độ dài của %1";
368
- Blockly.Msg["TEXT_LENGTH_TOOLTIP"] = "Hoàn trả số lượng ký tự (kể cả khoảng trắng) trong văn bản đầu vào.";
369
- Blockly.Msg["TEXT_PRINT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
370
- Blockly.Msg["TEXT_PRINT_TITLE"] = "in lên màng hình %1";
371
- Blockly.Msg["TEXT_PRINT_TOOLTIP"] = "In ra màng hình một văn bản, con số, hay một giá trị đầu vào khác.";
372
- Blockly.Msg["TEXT_PROMPT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
373
- Blockly.Msg["TEXT_PROMPT_TOOLTIP_NUMBER"] = "Xin người dùng nhập vào một con số.";
374
- Blockly.Msg["TEXT_PROMPT_TOOLTIP_TEXT"] = "Xin người dùng nhập vào một văn bản.";
375
- Blockly.Msg["TEXT_PROMPT_TYPE_NUMBER"] = "Xin người dùng nhập vào con số với dòng hướng dẫn";
376
- Blockly.Msg["TEXT_PROMPT_TYPE_TEXT"] = "Xin người dùng nhập vào văn bản với dòng hướng dẫn";
377
- Blockly.Msg["TEXT_REPLACE_HELPURL"] = "https://github.com/google/blockly/wiki/Text#replacing-substrings"; // untranslated
378
- Blockly.Msg["TEXT_REPLACE_MESSAGE0"] = "thay thế %1 bằng %2 trong %3";
379
- Blockly.Msg["TEXT_REPLACE_TOOLTIP"] = "Thay thế tất cả các lần xuất hiện của văn bản bằng văn bản khác.";
380
- Blockly.Msg["TEXT_REVERSE_HELPURL"] = "https://github.com/google/blockly/wiki/Text#reversing-text"; // untranslated
381
- Blockly.Msg["TEXT_REVERSE_MESSAGE0"] = "đảo ngược %1";
382
- Blockly.Msg["TEXT_REVERSE_TOOLTIP"] = "Đảo ngược thứ tự của các chữ cái trong văn bản.";
383
- Blockly.Msg["TEXT_TEXT_HELPURL"] = "https://en.wikipedia.org/wiki/string_(computer_science)";
384
- Blockly.Msg["TEXT_TEXT_TOOLTIP"] = "Một tự, một từ, hay một dòng.";
385
- Blockly.Msg["TEXT_TRIM_HELPURL"] = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
386
- Blockly.Msg["TEXT_TRIM_OPERATOR_BOTH"] = "cắt các không gian từ cả hai mặt của";
387
- Blockly.Msg["TEXT_TRIM_OPERATOR_LEFT"] = "cắt các không gian từ bên trái của";
388
- Blockly.Msg["TEXT_TRIM_OPERATOR_RIGHT"] = "cắt các không gian từ bên phải của";
389
- Blockly.Msg["TEXT_TRIM_TOOLTIP"] = "Hoàn trả bản sao của văn bản sau khi xóa khoảng trắng từ một hoặc hai bên.";
390
- Blockly.Msg["TODAY"] = "Hôm nay";
391
- Blockly.Msg["UNDO"] = "Hoàn tác";
392
- Blockly.Msg["UNNAMED_KEY"] = "không tên";
393
- Blockly.Msg["VARIABLES_DEFAULT_NAME"] = "vật";
394
- Blockly.Msg["VARIABLES_GET_CREATE_SET"] = "Tạo mảnh \"đặt vào %1\"";
395
- Blockly.Msg["VARIABLES_GET_HELPURL"] = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
396
- Blockly.Msg["VARIABLES_GET_TOOLTIP"] = "Hoàn trả giá trị của.";
397
- Blockly.Msg["VARIABLES_SET"] = "cho %1 bằng %2";
398
- Blockly.Msg["VARIABLES_SET_CREATE_GET"] = "Tạo mảnh \"lấy %1\"";
399
- Blockly.Msg["VARIABLES_SET_HELPURL"] = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
400
- Blockly.Msg["VARIABLES_SET_TOOLTIP"] = "Đặt giá trị của biến này thành...";
401
- Blockly.Msg["VARIABLE_ALREADY_EXISTS"] = "Một biến có tên '%1' đã tồn tại.";
402
- Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_ANOTHER_TYPE"] = "Giá trị '%1' đã tồn tại dưới dạng: '%2'.";
403
- Blockly.Msg["WORKSPACE_ARIA_LABEL"] = "Không gian làm việc Blockly";
404
- Blockly.Msg["WORKSPACE_COMMENT_DEFAULT_TEXT"] = "Hãy nói đó...";
405
- Blockly.Msg["CONTROLS_FOREACH_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
406
- Blockly.Msg["CONTROLS_FOR_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
407
- Blockly.Msg["CONTROLS_IF_ELSEIF_TITLE_ELSEIF"] = Blockly.Msg["CONTROLS_IF_MSG_ELSEIF"];
408
- Blockly.Msg["CONTROLS_IF_ELSE_TITLE_ELSE"] = Blockly.Msg["CONTROLS_IF_MSG_ELSE"];
409
- Blockly.Msg["CONTROLS_IF_IF_TITLE_IF"] = Blockly.Msg["CONTROLS_IF_MSG_IF"];
410
- Blockly.Msg["CONTROLS_IF_MSG_THEN"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
411
- Blockly.Msg["CONTROLS_WHILEUNTIL_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
412
- Blockly.Msg["LISTS_CREATE_WITH_ITEM_TITLE"] = Blockly.Msg["VARIABLES_DEFAULT_NAME"];
413
- Blockly.Msg["LISTS_GET_INDEX_HELPURL"] = Blockly.Msg["LISTS_INDEX_OF_HELPURL"];
414
- Blockly.Msg["LISTS_GET_INDEX_INPUT_IN_LIST"] = Blockly.Msg["LISTS_INLIST"];
415
- Blockly.Msg["LISTS_GET_SUBLIST_INPUT_IN_LIST"] = Blockly.Msg["LISTS_INLIST"];
416
- Blockly.Msg["LISTS_INDEX_OF_INPUT_IN_LIST"] = Blockly.Msg["LISTS_INLIST"];
417
- Blockly.Msg["LISTS_SET_INDEX_INPUT_IN_LIST"] = Blockly.Msg["LISTS_INLIST"];
418
- Blockly.Msg["MATH_CHANGE_TITLE_ITEM"] = Blockly.Msg["VARIABLES_DEFAULT_NAME"];
419
- Blockly.Msg["PROCEDURES_DEFRETURN_COMMENT"] = Blockly.Msg["PROCEDURES_DEFNORETURN_COMMENT"];
420
- Blockly.Msg["PROCEDURES_DEFRETURN_DO"] = Blockly.Msg["PROCEDURES_DEFNORETURN_DO"];
421
- Blockly.Msg["PROCEDURES_DEFRETURN_PROCEDURE"] = Blockly.Msg["PROCEDURES_DEFNORETURN_PROCEDURE"];
422
- Blockly.Msg["PROCEDURES_DEFRETURN_TITLE"] = Blockly.Msg["PROCEDURES_DEFNORETURN_TITLE"];
423
- Blockly.Msg["TEXT_APPEND_VARIABLE"] = Blockly.Msg["VARIABLES_DEFAULT_NAME"];
424
- Blockly.Msg["TEXT_CREATE_JOIN_ITEM_TITLE_ITEM"] = Blockly.Msg["VARIABLES_DEFAULT_NAME"];
18
+ const messages = Object.create(null);
19
+
20
+ messages["ADD_COMMENT"] = "Thêm Chú Giải";
21
+ messages["CANNOT_DELETE_VARIABLE_PROCEDURE"] = "Không thể xóa giá trị '%1' vì nó được bao gồm trong định nghĩa của chức năng '%2'";
22
+ messages["CHANGE_VALUE_TITLE"] = "Thay giá trị thành:";
23
+ messages["CLEAN_UP"] = "Sắp xếp lại các khối";
24
+ messages["COLLAPSED_WARNINGS_WARNING"] = "Các khối bị sập có chứa cảnh báo.";
25
+ messages["COLLAPSE_ALL"] = "Thu Nhỏ Mọi Mảnh";
26
+ messages["COLLAPSE_BLOCK"] = "Thu Nhỏ Mảnh";
27
+ messages["COLOUR_BLEND_COLOUR1"] = "màu 1";
28
+ messages["COLOUR_BLEND_COLOUR2"] = "màu 2";
29
+ messages["COLOUR_BLEND_HELPURL"] = "https://meyerweb.com/eric/tools/color-blend/#:::rgbp"; // untranslated
30
+ messages["COLOUR_BLEND_RATIO"] = "tỉ lệ";
31
+ messages["COLOUR_BLEND_TITLE"] = "pha";
32
+ messages["COLOUR_BLEND_TOOLTIP"] = "Pha hai màu với nhau theo tỉ lệ (0 - 100).";
33
+ messages["COLOUR_PICKER_HELPURL"] = "https://vi.wikipedia.org/wiki/M%C3%A0u_s%E1%BA%AFc";
34
+ messages["COLOUR_PICKER_TOOLTIP"] = "Chọn một màu từ bảng màu.";
35
+ messages["COLOUR_RANDOM_HELPURL"] = "http://randomcolour.com"; // untranslated
36
+ messages["COLOUR_RANDOM_TITLE"] = "màu bất kỳ";
37
+ messages["COLOUR_RANDOM_TOOLTIP"] = "chọn một màu bất kỳ.";
38
+ messages["COLOUR_RGB_BLUE"] = "màu xanh dương";
39
+ messages["COLOUR_RGB_GREEN"] = "màu xanh lá cây";
40
+ messages["COLOUR_RGB_HELPURL"] = "https://www.december.com/html/spec/colorpercompact.html"; // untranslated
41
+ messages["COLOUR_RGB_RED"] = "màu đỏ";
42
+ messages["COLOUR_RGB_TITLE"] = "tạo màu từ";
43
+ messages["COLOUR_RGB_TOOLTIP"] = "Tạo màu từ ba màu: đỏ, xanh lá cây, xanh dương với số lượng cụ thể. Mỗi số phải có giá trị từ 0 đến 100.";
44
+ messages["CONTROLS_FLOW_STATEMENTS_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
45
+ messages["CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK"] = "thoát";
46
+ messages["CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE"] = "sang lần lặp tiếp theo";
47
+ messages["CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK"] = "Thoát khỏi vòng lặp hiện tại.";
48
+ messages["CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE"] = "Bỏ qua phần còn lại trong vòng lặp này, và sang lần lặp tiếp theo.";
49
+ messages["CONTROLS_FLOW_STATEMENTS_WARNING"] = "Chú ý: Mảnh này chỉ có thế dùng trong các vòng lặp.";
50
+ messages["CONTROLS_FOREACH_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
51
+ messages["CONTROLS_FOREACH_TITLE"] = "với mỗi thành phần %1 trong danh sách %2";
52
+ messages["CONTROLS_FOREACH_TOOLTIP"] = "Trong một danh sách, lấy từng thành phần, gán vào biến \"%1\", rồi thực hiện một số lệnh.";
53
+ messages["CONTROLS_FOR_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
54
+ messages["CONTROLS_FOR_TITLE"] = "đếm theo %1 từ %2 đến %3 mỗi lần thêm %4";
55
+ messages["CONTROLS_FOR_TOOLTIP"] = "Cho biến '%1' lấy các giá trị từ số bắt đầu đến số kết thúc, đếm theo khoảng thời gian đã chỉ định và thực hiện các khối được chỉ định.";
56
+ messages["CONTROLS_IF_ELSEIF_TOOLTIP"] = "Thêm một điều kiện vào mảnh nếu.";
57
+ messages["CONTROLS_IF_ELSE_TOOLTIP"] = "Cuối cùng, khi không điều kiện nào đúng.";
58
+ messages["CONTROLS_IF_HELPURL"] = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
59
+ messages["CONTROLS_IF_IF_TOOLTIP"] = "Thêm, bỏ, hoặc đổi thứ tự các mảnh con để tạo cấu trúc mới cho mảnh nếu.";
60
+ messages["CONTROLS_IF_MSG_ELSE"] = "nếu không";
61
+ messages["CONTROLS_IF_MSG_ELSEIF"] = "nếu không nếu";
62
+ messages["CONTROLS_IF_MSG_IF"] = "nếu";
63
+ messages["CONTROLS_IF_TOOLTIP_1"] = "Nếu điều kiện đúng, thực hiện các lệnh.";
64
+ messages["CONTROLS_IF_TOOLTIP_2"] = "Nếu điều kiện đúng, thực hiện các lệnh đầu. Nếu sai, thực hiện các lệnh sau.";
65
+ messages["CONTROLS_IF_TOOLTIP_3"] = "Nếu điều kiện đúng, thực hiện các lệnh đầu. Nếu không, nếu điều kiện thứ hai đúng, thực hiện các lệnh thứ hai.";
66
+ messages["CONTROLS_IF_TOOLTIP_4"] = "Nếu điều kiện đúng, thực hiện các lệnh đầu. Nếu không, nếu điều kiện thứ hai đúng, thực hiện các lệnh thứ hai. Nếu không điều kiện nào đúng, thực hiện các lệnh cuối cùng.";
67
+ messages["CONTROLS_REPEAT_HELPURL"] = "https://en.wikipedia.org/wiki/For_loop";
68
+ messages["CONTROLS_REPEAT_INPUT_DO"] = "thực hiện";
69
+ messages["CONTROLS_REPEAT_TITLE"] = "lặp lại %1 lần";
70
+ messages["CONTROLS_REPEAT_TOOLTIP"] = "Thực hiện các lệnh vài lần.";
71
+ messages["CONTROLS_WHILEUNTIL_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
72
+ messages["CONTROLS_WHILEUNTIL_OPERATOR_UNTIL"] = "lặp lại cho đến khi";
73
+ messages["CONTROLS_WHILEUNTIL_OPERATOR_WHILE"] = "lặp lại trong khi";
74
+ messages["CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL"] = "Miễn điều kiện còn sai, thì thực hiện các lệnh. Khi điều kiện đúng thì ngưng.";
75
+ messages["CONTROLS_WHILEUNTIL_TOOLTIP_WHILE"] = "Miễn điều kiện còn đúng, thì thực hiện các lệnh.";
76
+ messages["DELETE_ALL_BLOCKS"] = "Xóa hết %1 mảnh?";
77
+ messages["DELETE_BLOCK"] = "Xóa Mảnh Này";
78
+ messages["DELETE_VARIABLE"] = "Xóa giá trị '%1'";
79
+ messages["DELETE_VARIABLE_CONFIRMATION"] = "Xóa %1 lần dùng của giá trị '%2'?";
80
+ messages["DELETE_X_BLOCKS"] = "Xóa %1 Mảnh";
81
+ messages["DIALOG_CANCEL"] = "Hủy";
82
+ messages["DIALOG_OK"] = "OK";
83
+ messages["DISABLE_BLOCK"] = "Ngưng Tác Dụng";
84
+ messages["DUPLICATE_BLOCK"] = "Tạo Bản Sao";
85
+ messages["DUPLICATE_COMMENT"] = "Bình luận trùng";
86
+ messages["ENABLE_BLOCK"] = "Phục Hồi Tác Dụng";
87
+ messages["EXPAND_ALL"] = "Mở Lớn Mọi Mảnh";
88
+ messages["EXPAND_BLOCK"] = "Mở Lớn Mảnh";
89
+ messages["EXTERNAL_INPUTS"] = "Chỗ Gắn Bên Ngoài";
90
+ messages["HELP"] = "Trợ Giúp";
91
+ messages["INLINE_INPUTS"] = "Chỗ Gắn Cùng Dòng";
92
+ messages["LISTS_CREATE_EMPTY_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
93
+ messages["LISTS_CREATE_EMPTY_TITLE"] = "tạo danh sách trống";
94
+ messages["LISTS_CREATE_EMPTY_TOOLTIP"] = "Hoàn trả một danh sách, với độ dài 0, không thành tố nào cả";
95
+ messages["LISTS_CREATE_WITH_CONTAINER_TITLE_ADD"] = "danh sách";
96
+ messages["LISTS_CREATE_WITH_CONTAINER_TOOLTIP"] = "Thêm, bỏ, hoặc sắp xếp lại các thành phần để tạo dựng mảnh danh sách này.";
97
+ messages["LISTS_CREATE_WITH_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
98
+ messages["LISTS_CREATE_WITH_INPUT_WITH"] = "tạo danh sách gồm";
99
+ messages["LISTS_CREATE_WITH_ITEM_TOOLTIP"] = "Thêm vật vào danh sách.";
100
+ messages["LISTS_CREATE_WITH_TOOLTIP"] = "Tạo một danh sách bao gồm nhiều vậts, với một số lượng bất kỳ.";
101
+ messages["LISTS_GET_INDEX_FIRST"] = "đầu tiên";
102
+ messages["LISTS_GET_INDEX_FROM_END"] = "(đếm từ cuối) thứ";
103
+ messages["LISTS_GET_INDEX_FROM_START"] = "thứ";
104
+ messages["LISTS_GET_INDEX_GET"] = "lấy thành tố";
105
+ messages["LISTS_GET_INDEX_GET_REMOVE"] = "lấy và xóa thành tố";
106
+ messages["LISTS_GET_INDEX_LAST"] = "cuối cùng";
107
+ messages["LISTS_GET_INDEX_RANDOM"] = "bất kỳ";
108
+ messages["LISTS_GET_INDEX_REMOVE"] = "xóa thành tố";
109
+ messages["LISTS_GET_INDEX_TAIL"] = ""; // untranslated
110
+ messages["LISTS_GET_INDEX_TOOLTIP_GET_FIRST"] = "Hoàn trả thành tố đầu tiên trong danh sách.";
111
+ messages["LISTS_GET_INDEX_TOOLTIP_GET_FROM"] = "Hoàn trả thành tố trong danh sách ở vị trí ấn định.";
112
+ messages["LISTS_GET_INDEX_TOOLTIP_GET_LAST"] = "Hoàn trả thành tố cuối cùng trong danh sách.";
113
+ messages["LISTS_GET_INDEX_TOOLTIP_GET_RANDOM"] = "Hoàn trả một thành tố bất kỳ trong danh sách.";
114
+ messages["LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST"] = "Hoàn trả và xóa thành tố đầu tiên trong danh sách.";
115
+ messages["LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM"] = "Hoàn trả và xóa thành tố trong danh sách ở vị trí ấn định.";
116
+ messages["LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST"] = "Hoàn trả và xóa thành tố cuối cùng trong danh sách.";
117
+ messages["LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM"] = "Hoàn trả xóa mộtthành tố bất kỳ trong danh sách.";
118
+ messages["LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST"] = "Xóa thành tố đầu tiên trong danh sách.";
119
+ messages["LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM"] = "Xóa thành tố trong danh sách ở vị trí ấn định.";
120
+ messages["LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST"] = "Xóa thành tố cuối cùng trong danh sách.";
121
+ messages["LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM"] = "Xóa thành tố bất kỳ trong danh sách.";
122
+ messages["LISTS_GET_SUBLIST_END_FROM_END"] = "đến (đếm từ cuối) thứ";
123
+ messages["LISTS_GET_SUBLIST_END_FROM_START"] = "đến thứ";
124
+ messages["LISTS_GET_SUBLIST_END_LAST"] = "đến cuối cùng";
125
+ messages["LISTS_GET_SUBLIST_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
126
+ messages["LISTS_GET_SUBLIST_START_FIRST"] = "lấy một danh sách con từ đầu tiên";
127
+ messages["LISTS_GET_SUBLIST_START_FROM_END"] = "lấy một danh sách con từ (đếm từ cuối) từ vị trí thứ";
128
+ messages["LISTS_GET_SUBLIST_START_FROM_START"] = "lấy một danh sách con từ vị trí thứ";
129
+ messages["LISTS_GET_SUBLIST_TAIL"] = ""; // untranslated
130
+ messages["LISTS_GET_SUBLIST_TOOLTIP"] = "Lấy một mảng của danh sách này để tạo danh sách con.";
131
+ messages["LISTS_INDEX_FROM_END_TOOLTIP"] = "%1 thành tố cuối cùng.";
132
+ messages["LISTS_INDEX_FROM_START_TOOLTIP"] = "%1 là thành tố đầu tiên.";
133
+ messages["LISTS_INDEX_OF_FIRST"] = "tìm sự có mặt đầu tiên của vật";
134
+ messages["LISTS_INDEX_OF_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
135
+ messages["LISTS_INDEX_OF_LAST"] = "tìm sự có mặt cuối cùng của vật";
136
+ messages["LISTS_INDEX_OF_TOOLTIP"] = "Hoàn trả vị trí xuất hiện đầu tiên/cuối cùng của vật trong danh sách. Nếu không tìm thấy thì hoàn trả số %1.";
137
+ messages["LISTS_INLIST"] = "trong dánh sách";
138
+ messages["LISTS_ISEMPTY_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
139
+ messages["LISTS_ISEMPTY_TITLE"] = "%1 trống rỗng";
140
+ messages["LISTS_ISEMPTY_TOOLTIP"] = "Hoàn trả “đúng\" nếu danh sách không có thành tử nào.";
141
+ messages["LISTS_LENGTH_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
142
+ messages["LISTS_LENGTH_TITLE"] = "độ dài của %1";
143
+ messages["LISTS_LENGTH_TOOLTIP"] = "Hoàn trả độ dài của một danh sách.";
144
+ messages["LISTS_REPEAT_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
145
+ messages["LISTS_REPEAT_TITLE"] = "tạo danh sách gồm một vật %1 lặp lại %2 lần";
146
+ messages["LISTS_REPEAT_TOOLTIP"] = "Tạo danh sách gồm một số lượng vật nhất định với mỗi vật đều giống nhau.";
147
+ messages["LISTS_REVERSE_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#reversing-a-list"; // untranslated
148
+ messages["LISTS_REVERSE_MESSAGE0"] = "đảo ngược %1";
149
+ messages["LISTS_REVERSE_TOOLTIP"] = "Đảo ngược bản sao chép của một danh sách.";
150
+ messages["LISTS_SET_INDEX_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
151
+ messages["LISTS_SET_INDEX_INPUT_TO"] = "giá trị";
152
+ messages["LISTS_SET_INDEX_INSERT"] = "chèn vào vị trí";
153
+ messages["LISTS_SET_INDEX_SET"] = "đặt";
154
+ messages["LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST"] = "Chèn vật vào đầu danh sách.";
155
+ messages["LISTS_SET_INDEX_TOOLTIP_INSERT_FROM"] = "Chèn vật vào danh sách theo vị trí ấn định.";
156
+ messages["LISTS_SET_INDEX_TOOLTIP_INSERT_LAST"] = "Gắn thêm vật vào cuối danh sách.";
157
+ messages["LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM"] = "Gắn chèn vật vào danh sách ở vị trí ngẫu nhiên.";
158
+ messages["LISTS_SET_INDEX_TOOLTIP_SET_FIRST"] = "Đặt giá trị của thành tố đầu tiên trong danh sách.";
159
+ messages["LISTS_SET_INDEX_TOOLTIP_SET_FROM"] = "Đặt giá trị của thành tố vị trí ấn định trong một danh sách.";
160
+ messages["LISTS_SET_INDEX_TOOLTIP_SET_LAST"] = "Đặt giá trị của thành tố cuối cùng trong danh sách.";
161
+ messages["LISTS_SET_INDEX_TOOLTIP_SET_RANDOM"] = "Đặt giá trị của thành tố ngẫu nhiên trong danh sách.";
162
+ messages["LISTS_SORT_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
163
+ messages["LISTS_SORT_ORDER_ASCENDING"] = "tăng dần";
164
+ messages["LISTS_SORT_ORDER_DESCENDING"] = "giảm dần";
165
+ messages["LISTS_SORT_TITLE"] = "sắp xếp %1 %2 %3";
166
+ messages["LISTS_SORT_TOOLTIP"] = "Sắp xếp một bản sao của một danh sách.";
167
+ messages["LISTS_SORT_TYPE_IGNORECASE"] = "chữ cái, không phân biệt hoa/thường";
168
+ messages["LISTS_SORT_TYPE_NUMERIC"] = "số";
169
+ messages["LISTS_SORT_TYPE_TEXT"] = "chữ cái";
170
+ messages["LISTS_SPLIT_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
171
+ messages["LISTS_SPLIT_LIST_FROM_TEXT"] = "tạo danh sách từ văn bản";
172
+ messages["LISTS_SPLIT_TEXT_FROM_LIST"] = "tạo văn bản từ danh sách";
173
+ messages["LISTS_SPLIT_TOOLTIP_JOIN"] = "Liên kết một danh sách các văn bản vào một văn bản, cách nhau bằng dấu phân cách.";
174
+ messages["LISTS_SPLIT_TOOLTIP_SPLIT"] = "Tách văn bản thành một danh sách các văn bản nhỏ, ngắt bởi các ký tự phân cách.";
175
+ messages["LISTS_SPLIT_WITH_DELIMITER"] = "với ký tự phân cách";
176
+ messages["LOGIC_BOOLEAN_FALSE"] = "sai";
177
+ messages["LOGIC_BOOLEAN_HELPURL"] = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
178
+ messages["LOGIC_BOOLEAN_TOOLTIP"] = "Hoàn trả \"đúng\" hoặc \"sai\".";
179
+ messages["LOGIC_BOOLEAN_TRUE"] = "đúng";
180
+ messages["LOGIC_COMPARE_HELPURL"] = "https://vi.wikipedia.org/wiki/B%E1%BA%A5t_%C4%91%E1%BA%B3ng_th%E1%BB%A9c";
181
+ messages["LOGIC_COMPARE_TOOLTIP_EQ"] = "Hoàn trả giá trị \"đúng\" (true) nếu giá trị hai đầu vào bằng nhau.";
182
+ messages["LOGIC_COMPARE_TOOLTIP_GT"] = "Hoàn trả giá trị \"đúng\" (true) nếu đầu vào thứ nhất lớn hơn đầu vào thứ hai.";
183
+ messages["LOGIC_COMPARE_TOOLTIP_GTE"] = "Hoàn trả giá trị \"đúng\" (true) nếu đầu vào thứ nhất lớn hơn hoặc bằng đầu vào thứ hai.";
184
+ messages["LOGIC_COMPARE_TOOLTIP_LT"] = "Hoàn trả giá trị \"đúng\" (true) nếu đầu vào thứ nhất nhỏ hơn đầu vào thứ hai.";
185
+ messages["LOGIC_COMPARE_TOOLTIP_LTE"] = "Hoàn trả giá trị \"đúng\" (true) nếu đầu vào thứ nhất nhỏ hơn hoặc bằng đầu vào thứ hai.";
186
+ messages["LOGIC_COMPARE_TOOLTIP_NEQ"] = "Hoàn trả giá trị \"đúng\" (true) nếu giá trị hai đầu vào không bằng nhau.";
187
+ messages["LOGIC_NEGATE_HELPURL"] = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
188
+ messages["LOGIC_NEGATE_TITLE"] = "không %1";
189
+ messages["LOGIC_NEGATE_TOOLTIP"] = "Hoàn trả \"đúng\" (true) nếu đầu vào sai. Hoàn trả \"sai\" (false) nếu đầu vào đúng.";
190
+ messages["LOGIC_NULL"] = "trống không";
191
+ messages["LOGIC_NULL_HELPURL"] = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
192
+ messages["LOGIC_NULL_TOOLTIP"] = "Hoàn trả trống không.";
193
+ messages["LOGIC_OPERATION_AND"] = "";
194
+ messages["LOGIC_OPERATION_HELPURL"] = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
195
+ messages["LOGIC_OPERATION_OR"] = "hoặc";
196
+ messages["LOGIC_OPERATION_TOOLTIP_AND"] = "Hoàn trả \"đúng\" (true) nếu cả hai đầu vào đều đúng.";
197
+ messages["LOGIC_OPERATION_TOOLTIP_OR"] = "Hoàn trả \"đúng\" (true) nếu ít nhất một trong hai đầu vào đúng.";
198
+ messages["LOGIC_TERNARY_CONDITION"] = "kiểm tra";
199
+ messages["LOGIC_TERNARY_HELPURL"] = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
200
+ messages["LOGIC_TERNARY_IF_FALSE"] = "nếu sai";
201
+ messages["LOGIC_TERNARY_IF_TRUE"] = "nếu đúng";
202
+ messages["LOGIC_TERNARY_TOOLTIP"] = "Kiểm tra điều kiện. Nếu điều kiện đúng, hoàn trả giá trị từ mệnh đề \"nếu đúng\" nếu không đúng, hoàn trả giá trị từ mệnh đề \"nếu sai\".";
203
+ messages["MATH_ADDITION_SYMBOL"] = "+"; // untranslated
204
+ messages["MATH_ARITHMETIC_HELPURL"] = "https://vi.wikipedia.org/wiki/S%E1%BB%91_h%E1%BB%8Dc";
205
+ messages["MATH_ARITHMETIC_TOOLTIP_ADD"] = "Hoàn trả tổng của hai con số.";
206
+ messages["MATH_ARITHMETIC_TOOLTIP_DIVIDE"] = "Hoàn trả thương của hai con số.";
207
+ messages["MATH_ARITHMETIC_TOOLTIP_MINUS"] = "Hoàn trả hiệu của hai con số.";
208
+ messages["MATH_ARITHMETIC_TOOLTIP_MULTIPLY"] = "Hoàn trả tích của hai con số.";
209
+ messages["MATH_ARITHMETIC_TOOLTIP_POWER"] = "Hoàn trả số lũy thừa với số thứ nhất là cơ số và số thứ hai là số mũ.";
210
+ messages["MATH_ATAN2_HELPURL"] = "https://en.wikipedia.org/wiki/Atan2";
211
+ messages["MATH_ATAN2_TITLE"] = "atan2 của X:%1 Y:%2";
212
+ messages["MATH_ATAN2_TOOLTIP"] = "Trả về arctangent của điểm (X, Y) trong khoảng từ -180 độ đến 180 độ.";
213
+ messages["MATH_CHANGE_HELPURL"] = "https://vi.wikipedia.org/wiki/Ph%C3%A9p_c%E1%BB%99ng";
214
+ messages["MATH_CHANGE_TITLE"] = "cộng vào %1 giá trị %2";
215
+ messages["MATH_CHANGE_TOOLTIP"] = "Cộng số đầu vào vào biến \"%1\".";
216
+ messages["MATH_CONSTANT_HELPURL"] = "https://en.wikipedia.org/wiki/Mathematical_constant";
217
+ messages["MATH_CONSTANT_TOOLTIP"] = "Hoàn trả các đẳng số thường gặp: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (vô cực).";
218
+ messages["MATH_CONSTRAIN_HELPURL"] = "https://en.wikipedia.org/wiki/Clamping_(graphics)"; // untranslated
219
+ messages["MATH_CONSTRAIN_TITLE"] = "giới hạn %1 không dưới %2 không hơn %3";
220
+ messages["MATH_CONSTRAIN_TOOLTIP"] = "Giới hạn số đầu vào để không dưới số thứ nhất và không hơn số thứ hai.";
221
+ messages["MATH_DIVISION_SYMBOL"] = "÷"; // untranslated
222
+ messages["MATH_IS_DIVISIBLE_BY"] = "chia hết cho";
223
+ messages["MATH_IS_EVEN"] = "là số chẵn";
224
+ messages["MATH_IS_NEGATIVE"] = "là số âm";
225
+ messages["MATH_IS_ODD"] = "là số lẻ";
226
+ messages["MATH_IS_POSITIVE"] = "là số dương";
227
+ messages["MATH_IS_PRIME"] = "là số nguyên tố";
228
+ messages["MATH_IS_TOOLTIP"] = "Kiểm tra con số xem nó có phải là số chẵn, lẻ, nguyên tố, nguyên, dương, âm, hay xem nó có chia hết cho số đầu vào hay không. Hoàn trả đúng hay sai.";
229
+ messages["MATH_IS_WHOLE"] = "số nguyên";
230
+ messages["MATH_MODULO_HELPURL"] = "https://en.wikipedia.org/wiki/Modulo_operation";
231
+ messages["MATH_MODULO_TITLE"] = "số dư của %1 ÷ %2";
232
+ messages["MATH_MODULO_TOOLTIP"] = "Chia số thứ nhất cho số thứ hai rồi hoàn trả số dư từ.";
233
+ messages["MATH_MULTIPLICATION_SYMBOL"] = "×"; // untranslated
234
+ messages["MATH_NUMBER_HELPURL"] = "https://vi.wikipedia.org/wiki/S%E1%BB%91";
235
+ messages["MATH_NUMBER_TOOLTIP"] = "Một con số.";
236
+ messages["MATH_ONLIST_HELPURL"] = "";
237
+ messages["MATH_ONLIST_OPERATOR_AVERAGE"] = "giá trị trung bình của một danh sách";
238
+ messages["MATH_ONLIST_OPERATOR_MAX"] = "số lớn nhât của một danh sách";
239
+ messages["MATH_ONLIST_OPERATOR_MEDIAN"] = "số trung vị của một danh sách";
240
+ messages["MATH_ONLIST_OPERATOR_MIN"] = "số nhỏ nhất của một danh sách";
241
+ messages["MATH_ONLIST_OPERATOR_MODE"] = "các mode của một danh sách";
242
+ messages["MATH_ONLIST_OPERATOR_RANDOM"] = "một số bất kỳ của một danh sách";
243
+ messages["MATH_ONLIST_OPERATOR_STD_DEV"] = "độ lệch chuẩn của một danh sách";
244
+ messages["MATH_ONLIST_OPERATOR_SUM"] = "tổng của một danh sách";
245
+ messages["MATH_ONLIST_TOOLTIP_AVERAGE"] = "Hoàn trả giá trị trung bình từ của danh sách số.";
246
+ messages["MATH_ONLIST_TOOLTIP_MAX"] = "Hoàn trả số lớn nhất trong tất cả các số trong danh sách.";
247
+ messages["MATH_ONLIST_TOOLTIP_MEDIAN"] = "Hoàn trả số trung vị của danh sách số.";
248
+ messages["MATH_ONLIST_TOOLTIP_MIN"] = "Hoàn trả số nhỏ nhất trong tất cả các số trong danh sách.";
249
+ messages["MATH_ONLIST_TOOLTIP_MODE"] = "Hoàn trả các số mặt nhiều nhất trong danh sách.";
250
+ messages["MATH_ONLIST_TOOLTIP_RANDOM"] = "Hoàn trả một số bất kỳ từ các số trong danh sách.";
251
+ messages["MATH_ONLIST_TOOLTIP_STD_DEV"] = "Hoàn trả độ lệch chuẩn của danh sách số.";
252
+ messages["MATH_ONLIST_TOOLTIP_SUM"] = "Hoàn trả tổng số của tất cả các số trong danh sách.";
253
+ messages["MATH_POWER_SYMBOL"] = "^"; // untranslated
254
+ messages["MATH_RANDOM_FLOAT_HELPURL"] = "https://en.wikipedia.org/wiki/Random_number_generation";
255
+ messages["MATH_RANDOM_FLOAT_TITLE_RANDOM"] = "phân số bất kỳ";
256
+ messages["MATH_RANDOM_FLOAT_TOOLTIP"] = "Hoàn trả một phân số bất kỳ không nhỏ hơn 0.0 và không lớn hơn 1.0.";
257
+ messages["MATH_RANDOM_INT_HELPURL"] = "https://en.wikipedia.org/wiki/Random_number_generation";
258
+ messages["MATH_RANDOM_INT_TITLE"] = "Một số nguyên bất kỳ từ %1 đến %2";
259
+ messages["MATH_RANDOM_INT_TOOLTIP"] = "Hoàn trả một số nguyên bất kỳ lớn hơn hoặc bằng số đầu và nhỏ hơn hoặc bằng số sau.";
260
+ messages["MATH_ROUND_HELPURL"] = "https://en.wikipedia.org/wiki/Rounding";
261
+ messages["MATH_ROUND_OPERATOR_ROUND"] = "làm tròn";
262
+ messages["MATH_ROUND_OPERATOR_ROUNDDOWN"] = "làm tròn xuống";
263
+ messages["MATH_ROUND_OPERATOR_ROUNDUP"] = "làm tròn lên";
264
+ messages["MATH_ROUND_TOOLTIP"] = "Làm tròn lên hoặc tròn xuống số đầu vào.";
265
+ messages["MATH_SINGLE_HELPURL"] = "https://vi.wikipedia.org/wiki/C%C4%83n_b%E1%BA%ADc_hai";
266
+ messages["MATH_SINGLE_OP_ABSOLUTE"] = "giá trị tuyệt đối";
267
+ messages["MATH_SINGLE_OP_ROOT"] = "căn bật hai";
268
+ messages["MATH_SINGLE_TOOLTIP_ABS"] = "Hoàn trả giá trị tuyệt đối của số đầu vào.";
269
+ messages["MATH_SINGLE_TOOLTIP_EXP"] = "Hoàn trả lũy thừa của số e với số đầu vào.";
270
+ messages["MATH_SINGLE_TOOLTIP_LN"] = "Hoàn trả lôgarit tự nhiên của số đầu vào.";
271
+ messages["MATH_SINGLE_TOOLTIP_LOG10"] = "Hoàn trả lôgarit số 10 của số đầu vào.";
272
+ messages["MATH_SINGLE_TOOLTIP_NEG"] = "Đổi dấu của số đầu vào: âm thành dương và dương thành âm, và hoàn trả số mới.";
273
+ messages["MATH_SINGLE_TOOLTIP_POW10"] = "Hoàn trả lũy thừa của số 10 với số mũ đầu vào.";
274
+ messages["MATH_SINGLE_TOOLTIP_ROOT"] = "Hoàn trả căn bật hai của số đầu vào.";
275
+ messages["MATH_SUBTRACTION_SYMBOL"] = "-"; // untranslated
276
+ messages["MATH_TRIG_ACOS"] = "acos"; // untranslated
277
+ messages["MATH_TRIG_ASIN"] = "asin"; // untranslated
278
+ messages["MATH_TRIG_ATAN"] = "atan"; // untranslated
279
+ messages["MATH_TRIG_COS"] = "cos"; // untranslated
280
+ messages["MATH_TRIG_HELPURL"] = "https://vi.wikipedia.org/wiki/H%C3%A0m_l%C6%B0%E1%BB%A3ng_gi%C3%A1c";
281
+ messages["MATH_TRIG_SIN"] = "sin"; // untranslated
282
+ messages["MATH_TRIG_TAN"] = "tan"; // untranslated
283
+ messages["MATH_TRIG_TOOLTIP_ACOS"] = "Hoàn trả Arccos của một góc (theo độ).";
284
+ messages["MATH_TRIG_TOOLTIP_ASIN"] = "Hoàn trả Arcsin của một góc (theo độ).";
285
+ messages["MATH_TRIG_TOOLTIP_ATAN"] = "Hoàn trả Arctang của một góc (theo độ).";
286
+ messages["MATH_TRIG_TOOLTIP_COS"] = "Hoàn trả Cos của một góc (theo độ).";
287
+ messages["MATH_TRIG_TOOLTIP_SIN"] = "Hoàn trả Sin của một góc (theo độ).";
288
+ messages["MATH_TRIG_TOOLTIP_TAN"] = "Hoàn trả Tang của một góc (theo độ).";
289
+ messages["NEW_COLOUR_VARIABLE"] = "Tạo một giá trị màu sắc...";
290
+ messages["NEW_NUMBER_VARIABLE"] = "Tạo một giá trị số...";
291
+ messages["NEW_STRING_VARIABLE"] = "Tạo một giá trị dạng chuỗi...";
292
+ messages["NEW_VARIABLE"] = "Tạo biến...";
293
+ messages["NEW_VARIABLE_TITLE"] = "Tên của biến mới:";
294
+ messages["NEW_VARIABLE_TYPE_TITLE"] = "Kiểu giá trị mới:";
295
+ messages["ORDINAL_NUMBER_SUFFIX"] = ""; // untranslated
296
+ messages["PROCEDURES_ALLOW_STATEMENTS"] = "cho phép báo cáo";
297
+ messages["PROCEDURES_BEFORE_PARAMS"] = "với:";
298
+ messages["PROCEDURES_CALLNORETURN_HELPURL"] = "https://vi.wikipedia.org/wiki/Ch%C6%B0%C6%A1ng_tr%C3%ACnh_con";
299
+ messages["PROCEDURES_CALLNORETURN_TOOLTIP"] = "Chạy một thủ tục không có giá trị hoàn trả.";
300
+ messages["PROCEDURES_CALLRETURN_HELPURL"] = "https://vi.wikipedia.org/wiki/Ch%C6%B0%C6%A1ng_tr%C3%ACnh_con";
301
+ messages["PROCEDURES_CALLRETURN_TOOLTIP"] = "Chạy một thủ tục có giá trị hoàn trả.";
302
+ messages["PROCEDURES_CALL_BEFORE_PARAMS"] = "với:";
303
+ messages["PROCEDURES_CREATE_DO"] = "Tạo mảnh \"thực hiện %1\"";
304
+ messages["PROCEDURES_DEFNORETURN_COMMENT"] = "Mô tả hàm này...";
305
+ messages["PROCEDURES_DEFNORETURN_DO"] = "";
306
+ messages["PROCEDURES_DEFNORETURN_HELPURL"] = "https://en.wikipedia.org/wiki/Subroutine"; // untranslated
307
+ messages["PROCEDURES_DEFNORETURN_PROCEDURE"] = "làm đó";
308
+ messages["PROCEDURES_DEFNORETURN_TITLE"] = "thủ tục để";
309
+ messages["PROCEDURES_DEFNORETURN_TOOLTIP"] = "Một thủ tục không có giá trị hoàn trả.";
310
+ messages["PROCEDURES_DEFRETURN_HELPURL"] = "https://en.wikipedia.org/wiki/Subroutine"; // untranslated
311
+ messages["PROCEDURES_DEFRETURN_RETURN"] = "hoàn trả";
312
+ messages["PROCEDURES_DEFRETURN_TOOLTIP"] = "Một thủ tục giá trị hoàn trả.";
313
+ messages["PROCEDURES_DEF_DUPLICATE_WARNING"] = "Chú ý: Thủ tục này có lặp lại tên các tham số.";
314
+ messages["PROCEDURES_HIGHLIGHT_DEF"] = "Làm nổi bật thủ tục";
315
+ messages["PROCEDURES_IFRETURN_HELPURL"] = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
316
+ messages["PROCEDURES_IFRETURN_TOOLTIP"] = "Khi điều kiện đúng thì hoàn trả một giá trị.";
317
+ messages["PROCEDURES_IFRETURN_WARNING"] = "Chú ý: Mảnh này chỉ có thể dùng trong một thủ tục.";
318
+ messages["PROCEDURES_MUTATORARG_TITLE"] = "biến:";
319
+ messages["PROCEDURES_MUTATORARG_TOOLTIP"] = "Thêm một đầu vào cho hàm.";
320
+ messages["PROCEDURES_MUTATORCONTAINER_TITLE"] = "các tham số";
321
+ messages["PROCEDURES_MUTATORCONTAINER_TOOLTIP"] = "Thêm, xóa hoặc sắp xếp lại các đầu vào cho hàm này.";
322
+ messages["REDO"] = "Làm lại";
323
+ messages["REMOVE_COMMENT"] = "Xóa Chú Giải";
324
+ messages["RENAME_VARIABLE"] = "Thay tên biến...";
325
+ messages["RENAME_VARIABLE_TITLE"] = "Thay tên tất cả các biến \"%1\" thành:";
326
+ messages["TEXT_APPEND_HELPURL"] = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
327
+ messages["TEXT_APPEND_TITLE"] = "ở cuối %1 thêm văn bản %2";
328
+ messages["TEXT_APPEND_TOOLTIP"] = "Thêm một mảng văn bản vào biến \"%1\".";
329
+ messages["TEXT_CHANGECASE_HELPURL"] = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
330
+ messages["TEXT_CHANGECASE_OPERATOR_LOWERCASE"] = "thành chữ thường";
331
+ messages["TEXT_CHANGECASE_OPERATOR_TITLECASE"] = "thành Chữ In Đầu Mỗi Từ";
332
+ messages["TEXT_CHANGECASE_OPERATOR_UPPERCASE"] = "thành CHỮ IN HOA";
333
+ messages["TEXT_CHANGECASE_TOOLTIP"] = "Hoàn trả văn bản sau khi chuyển đổi chữ in hoa hay thường.";
334
+ messages["TEXT_CHARAT_FIRST"] = "lấy ký tự đầu tiên";
335
+ messages["TEXT_CHARAT_FROM_END"] = "lấy từ phía cuối, ký tự thứ";
336
+ messages["TEXT_CHARAT_FROM_START"] = "lấy ký tự thứ";
337
+ messages["TEXT_CHARAT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
338
+ messages["TEXT_CHARAT_LAST"] = "lấy ký tự cuối cùng";
339
+ messages["TEXT_CHARAT_RANDOM"] = "lấy tự bất kỳ";
340
+ messages["TEXT_CHARAT_TAIL"] = ""; // untranslated
341
+ messages["TEXT_CHARAT_TITLE"] = "trong văn bản %1 %2";
342
+ messages["TEXT_CHARAT_TOOLTIP"] = "Hoàn trả tự ở vị trí đặt ra.";
343
+ messages["TEXT_COUNT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#counting-substrings"; // untranslated
344
+ messages["TEXT_COUNT_MESSAGE0"] = "đến %1 trong %2";
345
+ messages["TEXT_COUNT_TOOLTIP"] = "Đếm số lần một đoạn văn bản xuất hiện trong một đoạn văn bản khác.";
346
+ messages["TEXT_CREATE_JOIN_ITEM_TOOLTIP"] = "thêm vật mới vào văn bản.";
347
+ messages["TEXT_CREATE_JOIN_TITLE_JOIN"] = "kết nối";
348
+ messages["TEXT_CREATE_JOIN_TOOLTIP"] = "Thêm, bỏ, hoặc sắp xếp lại các thành phần để tạo dựng mảnh văn bản này.";
349
+ messages["TEXT_GET_SUBSTRING_END_FROM_END"] = "đến từ phía cuối, ký tự thứ";
350
+ messages["TEXT_GET_SUBSTRING_END_FROM_START"] = "đến ký tự thứ";
351
+ messages["TEXT_GET_SUBSTRING_END_LAST"] = "đến tự cuối cùng";
352
+ messages["TEXT_GET_SUBSTRING_HELPURL"] = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
353
+ messages["TEXT_GET_SUBSTRING_INPUT_IN_TEXT"] = "trong văn bản";
354
+ messages["TEXT_GET_SUBSTRING_START_FIRST"] = "lấy từ ký tự đầu tiên";
355
+ messages["TEXT_GET_SUBSTRING_START_FROM_END"] = "lấy từ phía cuối, ký tự thứ";
356
+ messages["TEXT_GET_SUBSTRING_START_FROM_START"] = "lấy từ ký tự thứ";
357
+ messages["TEXT_GET_SUBSTRING_TAIL"] = ""; // untranslated
358
+ messages["TEXT_GET_SUBSTRING_TOOLTIP"] = "Hoàn trả một mảng tự ấn định từ trong văn bản.";
359
+ messages["TEXT_INDEXOF_HELPURL"] = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
360
+ messages["TEXT_INDEXOF_OPERATOR_FIRST"] = "tìm sự mặt đầu tiên của";
361
+ messages["TEXT_INDEXOF_OPERATOR_LAST"] = "tìm sự mặt cuối cùng của";
362
+ messages["TEXT_INDEXOF_TITLE"] = "trong văn bản %1 %2 %3";
363
+ messages["TEXT_INDEXOF_TOOLTIP"] = "Hoàn trả vị trí xuất hiện đầu/cuối của văn bản thứ nhất trong văn bản thứ hai. Nếu không tìm thấy thì hoàn trả số %1.";
364
+ messages["TEXT_ISEMPTY_HELPURL"] = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
365
+ messages["TEXT_ISEMPTY_TITLE"] = "%1 trống không";
366
+ messages["TEXT_ISEMPTY_TOOLTIP"] = "Hoàn trả “đúng nếu văn bản không có ký tự nào.";
367
+ messages["TEXT_JOIN_HELPURL"] = "";
368
+ messages["TEXT_JOIN_TITLE_CREATEWITH"] = "tạo văn bản từ";
369
+ messages["TEXT_JOIN_TOOLTIP"] = "Tạo một văn bản từ các thành phần.";
370
+ messages["TEXT_LENGTH_HELPURL"] = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
371
+ messages["TEXT_LENGTH_TITLE"] = "độ dài của %1";
372
+ messages["TEXT_LENGTH_TOOLTIP"] = "Hoàn trả số lượng ký tự (kể cả khoảng trắng) trong văn bản đầu vào.";
373
+ messages["TEXT_PRINT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
374
+ messages["TEXT_PRINT_TITLE"] = "in lên màng hình %1";
375
+ messages["TEXT_PRINT_TOOLTIP"] = "In ra màng hình một văn bản, con số, hay một giá trị đầu vào khác.";
376
+ messages["TEXT_PROMPT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
377
+ messages["TEXT_PROMPT_TOOLTIP_NUMBER"] = "Xin người dùng nhập vào một con số.";
378
+ messages["TEXT_PROMPT_TOOLTIP_TEXT"] = "Xin người dùng nhập vào một văn bản.";
379
+ messages["TEXT_PROMPT_TYPE_NUMBER"] = "Xin người dùng nhập vào con số với dòng hướng dẫn";
380
+ messages["TEXT_PROMPT_TYPE_TEXT"] = "Xin người dùng nhập vào văn bản với dòng hướng dẫn";
381
+ messages["TEXT_REPLACE_HELPURL"] = "https://github.com/google/blockly/wiki/Text#replacing-substrings"; // untranslated
382
+ messages["TEXT_REPLACE_MESSAGE0"] = "thay thế %1 bằng %2 trong %3";
383
+ messages["TEXT_REPLACE_TOOLTIP"] = "Thay thế tất cả các lần xuất hiện của văn bản bằng văn bản khác.";
384
+ messages["TEXT_REVERSE_HELPURL"] = "https://github.com/google/blockly/wiki/Text#reversing-text"; // untranslated
385
+ messages["TEXT_REVERSE_MESSAGE0"] = "đảo ngược %1";
386
+ messages["TEXT_REVERSE_TOOLTIP"] = "Đảo ngược thứ tự của các chữ cái trong văn bản.";
387
+ messages["TEXT_TEXT_HELPURL"] = "https://en.wikipedia.org/wiki/string_(computer_science)";
388
+ messages["TEXT_TEXT_TOOLTIP"] = "Một tự, một từ, hay một dòng.";
389
+ messages["TEXT_TRIM_HELPURL"] = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
390
+ messages["TEXT_TRIM_OPERATOR_BOTH"] = "cắt các không gian từ cả hai mặt của";
391
+ messages["TEXT_TRIM_OPERATOR_LEFT"] = "cắt các không gian từ bên trái của";
392
+ messages["TEXT_TRIM_OPERATOR_RIGHT"] = "cắt các không gian từ bên phải của";
393
+ messages["TEXT_TRIM_TOOLTIP"] = "Hoàn trả bản sao của văn bản sau khi xóa khoảng trắng từ một hoặc hai bên.";
394
+ messages["TODAY"] = "Hôm nay";
395
+ messages["UNDO"] = "Hoàn tác";
396
+ messages["UNNAMED_KEY"] = "không tên";
397
+ messages["VARIABLES_DEFAULT_NAME"] = "vật";
398
+ messages["VARIABLES_GET_CREATE_SET"] = "Tạo mảnh \"đặt vào %1\"";
399
+ messages["VARIABLES_GET_HELPURL"] = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
400
+ messages["VARIABLES_GET_TOOLTIP"] = "Hoàn trả giá trị của.";
401
+ messages["VARIABLES_SET"] = "cho %1 bằng %2";
402
+ messages["VARIABLES_SET_CREATE_GET"] = "Tạo mảnh \"lấy %1\"";
403
+ messages["VARIABLES_SET_HELPURL"] = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
404
+ messages["VARIABLES_SET_TOOLTIP"] = "Đặt giá trị của biến này thành...";
405
+ messages["VARIABLE_ALREADY_EXISTS"] = "Một biến tên '%1' đã tồn tại.";
406
+ messages["VARIABLE_ALREADY_EXISTS_FOR_ANOTHER_TYPE"] = "Giá trị '%1' đã tồn tại dưới dạng: '%2'.";
407
+ messages["WORKSPACE_ARIA_LABEL"] = "Không gian làm việc Blockly";
408
+ messages["WORKSPACE_COMMENT_DEFAULT_TEXT"] = "Hãy nói gì đó...";
409
+ messages["CONTROLS_FOREACH_INPUT_DO"] = messages["CONTROLS_REPEAT_INPUT_DO"];
410
+ messages["CONTROLS_FOR_INPUT_DO"] = messages["CONTROLS_REPEAT_INPUT_DO"];
411
+ messages["CONTROLS_IF_ELSEIF_TITLE_ELSEIF"] = messages["CONTROLS_IF_MSG_ELSEIF"];
412
+ messages["CONTROLS_IF_ELSE_TITLE_ELSE"] = messages["CONTROLS_IF_MSG_ELSE"];
413
+ messages["CONTROLS_IF_IF_TITLE_IF"] = messages["CONTROLS_IF_MSG_IF"];
414
+ messages["CONTROLS_IF_MSG_THEN"] = messages["CONTROLS_REPEAT_INPUT_DO"];
415
+ messages["CONTROLS_WHILEUNTIL_INPUT_DO"] = messages["CONTROLS_REPEAT_INPUT_DO"];
416
+ messages["LISTS_CREATE_WITH_ITEM_TITLE"] = messages["VARIABLES_DEFAULT_NAME"];
417
+ messages["LISTS_GET_INDEX_HELPURL"] = messages["LISTS_INDEX_OF_HELPURL"];
418
+ messages["LISTS_GET_INDEX_INPUT_IN_LIST"] = messages["LISTS_INLIST"];
419
+ messages["LISTS_GET_SUBLIST_INPUT_IN_LIST"] = messages["LISTS_INLIST"];
420
+ messages["LISTS_INDEX_OF_INPUT_IN_LIST"] = messages["LISTS_INLIST"];
421
+ messages["LISTS_SET_INDEX_INPUT_IN_LIST"] = messages["LISTS_INLIST"];
422
+ messages["MATH_CHANGE_TITLE_ITEM"] = messages["VARIABLES_DEFAULT_NAME"];
423
+ messages["PROCEDURES_DEFRETURN_COMMENT"] = messages["PROCEDURES_DEFNORETURN_COMMENT"];
424
+ messages["PROCEDURES_DEFRETURN_DO"] = messages["PROCEDURES_DEFNORETURN_DO"];
425
+ messages["PROCEDURES_DEFRETURN_PROCEDURE"] = messages["PROCEDURES_DEFNORETURN_PROCEDURE"];
426
+ messages["PROCEDURES_DEFRETURN_TITLE"] = messages["PROCEDURES_DEFNORETURN_TITLE"];
427
+ messages["TEXT_APPEND_VARIABLE"] = messages["VARIABLES_DEFAULT_NAME"];
428
+ messages["TEXT_CREATE_JOIN_ITEM_TITLE_ITEM"] = messages["VARIABLES_DEFAULT_NAME"];
425
429
 
426
- Blockly.Msg["MATH_HUE"] = "230";
427
- Blockly.Msg["LOOPS_HUE"] = "120";
428
- Blockly.Msg["LISTS_HUE"] = "260";
429
- Blockly.Msg["LOGIC_HUE"] = "210";
430
- Blockly.Msg["VARIABLES_HUE"] = "330";
431
- Blockly.Msg["TEXTS_HUE"] = "160";
432
- Blockly.Msg["PROCEDURES_HUE"] = "290";
433
- Blockly.Msg["COLOUR_HUE"] = "20";
434
- Blockly.Msg["VARIABLES_DYNAMIC_HUE"] = "310";
435
- return Blockly.Msg;
430
+ messages["MATH_HUE"] = "230";
431
+ messages["LOOPS_HUE"] = "120";
432
+ messages["LISTS_HUE"] = "260";
433
+ messages["LOGIC_HUE"] = "210";
434
+ messages["VARIABLES_HUE"] = "330";
435
+ messages["TEXTS_HUE"] = "160";
436
+ messages["PROCEDURES_HUE"] = "290";
437
+ messages["COLOUR_HUE"] = "20";
438
+ messages["VARIABLES_DYNAMIC_HUE"] = "310";
439
+ return messages;
436
440
  }));