nadesiko3 3.7.25 → 3.8.7

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 (200) hide show
  1. package/README.md +5 -3
  2. package/batch/analize-code-line.nako3 +39 -0
  3. package/batch/build_nako_version.nako3 +2 -4
  4. package/batch/command.txt +1248 -477
  5. package/batch/doctest.mjs +43 -14
  6. package/batch/merge_gonako_commands.nako3 +98 -0
  7. package/batch/pickup_command.nako3 +11 -8
  8. package/batch/search_command.nako3 +2 -2
  9. package/core/batch/build_nako_version.nako3 +1 -2
  10. package/core/package-lock.json +6 -3
  11. package/core/package.json +1 -1
  12. package/core/src/nako_ast.mts +6 -0
  13. package/core/src/nako_core_version.mjs +3 -3
  14. package/core/src/nako_core_version.mts +3 -3
  15. package/core/src/nako_csv.mjs +49 -27
  16. package/core/src/nako_csv.mts +49 -28
  17. package/core/src/nako_dncl_ensure_array.mjs +29 -0
  18. package/core/src/nako_dncl_ensure_array.mts +29 -0
  19. package/core/src/nako_from_dncl.mjs +944 -56
  20. package/core/src/nako_from_dncl.mts +738 -51
  21. package/core/src/nako_gen.mjs +227 -47
  22. package/core/src/nako_gen.mts +224 -51
  23. package/core/src/nako_global.mjs +7 -0
  24. package/core/src/nako_global.mts +12 -0
  25. package/core/src/nako_inc_value.mjs +30 -0
  26. package/core/src/nako_inc_value.mts +26 -0
  27. package/core/src/nako_josi_list.mjs +15 -0
  28. package/core/src/nako_josi_list.mts +16 -0
  29. package/core/src/nako_lex_rules.mjs +5 -17
  30. package/core/src/nako_lex_rules.mts +5 -13
  31. package/core/src/nako_lexer.mjs +8 -11
  32. package/core/src/nako_lexer.mts +8 -9
  33. package/core/src/nako_parser3.mjs +136 -40
  34. package/core/src/nako_parser3.mts +139 -42
  35. package/core/src/nako_parser_message.mjs +5 -0
  36. package/core/src/nako_parser_message.mts +5 -0
  37. package/core/src/nako_tokenizer.mjs +3 -2
  38. package/core/src/nako_tokenizer.mts +3 -2
  39. package/core/src/plugin_api.mts +2 -1
  40. package/core/src/plugin_promise.mjs +5 -0
  41. package/core/src/plugin_promise.mts +5 -0
  42. package/core/src/plugin_system.mjs +12 -7
  43. package/core/src/plugin_system.mts +12 -7
  44. package/core/src/plugin_system_array.mjs +48 -20
  45. package/core/src/plugin_system_array.mts +45 -16
  46. package/core/src/plugin_system_datetime.mjs +2 -7
  47. package/core/src/plugin_system_datetime.mts +2 -7
  48. package/core/src/plugin_system_debug.mjs +2 -6
  49. package/core/src/plugin_system_debug.mts +2 -4
  50. package/core/src/plugin_system_json.mjs +0 -24
  51. package/core/src/plugin_system_json.mts +0 -24
  52. package/core/src/plugin_system_math.mjs +11 -5
  53. package/core/src/plugin_system_math.mts +11 -5
  54. package/core/src/plugin_system_string.mjs +64 -32
  55. package/core/src/plugin_system_string.mts +63 -26
  56. package/core/src/plugin_system_timer.mjs +2 -17
  57. package/core/src/plugin_system_timer.mts +2 -13
  58. package/core/src/plugin_system_url.mjs +12 -29
  59. package/core/src/plugin_system_url.mts +10 -24
  60. package/core/src/url_util.mjs +35 -0
  61. package/core/src/url_util.mts +35 -0
  62. package/core/test/array_hang_test.mjs +169 -0
  63. package/core/test/array_test.mjs +62 -0
  64. package/core/test/calc_test.mjs +75 -1
  65. package/core/test/compat_fixture_test.mjs +49 -0
  66. package/core/test/core_module_test.mjs +4 -0
  67. package/core/test/dncl2_test.mjs +5 -0
  68. package/core/test/dncl_test.mjs +696 -0
  69. package/core/test/error_message_test.mjs +13 -0
  70. package/core/test/fixtures/README.md +9 -0
  71. package/core/test/fixtures/compat/README.md +85 -0
  72. package/core/test/fixtures/compat/SPEC.md +133 -0
  73. package/core/test/fixtures/compat/cases/01_literal.json +44 -0
  74. package/core/test/fixtures/compat/cases/02_operator.json +174 -0
  75. package/core/test/fixtures/compat/cases/03_type_convert.json +177 -0
  76. package/core/test/fixtures/compat/cases/04_string.json +282 -0
  77. package/core/test/fixtures/compat/cases/05_array.json +188 -0
  78. package/core/test/fixtures/compat/cases/06_dict.json +93 -0
  79. package/core/test/fixtures/compat/cases/07_flow.json +24 -0
  80. package/core/test/fixtures/compat/cases/08_func.json +94 -0
  81. package/core/test/fixtures/compat/cases/09_error.json +16 -0
  82. package/core/test/fixtures/compat/cases/10_async.json +48 -0
  83. package/core/test/fixtures/compat/cases/11_regexp.json +78 -0
  84. package/core/test/fixtures/compat/check_compat.mjs +133 -0
  85. package/core/test/fixtures/compat/compat_case.mjs +171 -0
  86. package/core/test/fixtures/compat/expected/01_literal.json +377 -0
  87. package/core/test/fixtures/compat/expected/02_operator.json +195 -0
  88. package/core/test/fixtures/compat/expected/03_type_convert.json +263 -0
  89. package/core/test/fixtures/compat/expected/04_string.json +333 -0
  90. package/core/test/fixtures/compat/expected/05_array.json +665 -0
  91. package/core/test/fixtures/compat/expected/06_dict.json +279 -0
  92. package/core/test/fixtures/compat/expected/07_flow.json +125 -0
  93. package/core/test/fixtures/compat/expected/08_func.json +146 -0
  94. package/core/test/fixtures/compat/expected/09_error.json +87 -0
  95. package/core/test/fixtures/compat/expected/10_async.json +39 -0
  96. package/core/test/fixtures/compat/expected/11_regexp.json +85 -0
  97. package/core/test/fixtures/compat/make_compat_golden.mjs +39 -0
  98. package/core/test/fixtures/parser_ast_golden.json +9 -29
  99. package/core/test/func_call.mjs +40 -0
  100. package/core/test/func_test.mjs +12 -0
  101. package/core/test/lex_test.mjs +30 -0
  102. package/core/test/nako_basic_plugins_test.mjs +23 -0
  103. package/core/test/pad_hang_test.mjs +58 -0
  104. package/core/test/parser_hang_test.mjs +64 -0
  105. package/core/test/plugin_csv_test.mjs +129 -2
  106. package/core/test/plugin_system_debug_test.mjs +1 -1
  107. package/core/test/plugin_system_test.mjs +717 -4
  108. package/core/test/refrain_hang_test.mjs +51 -0
  109. package/doc/browser-tests.md +3 -5
  110. package/doc/command_list.json +7680 -620
  111. package/doc/doctest.md +28 -7
  112. package/doc/gonako.md +470 -0
  113. package/doc/plugins.md +9 -1
  114. package/doc/release.md +75 -38
  115. package/doc/search_command.md +15 -1
  116. package/package.json +8 -6
  117. package/release/_hash.txt +48 -48
  118. package/release/_script-tags.txt +16 -16
  119. package/release/command.json +1 -1
  120. package/release/command.json.js +1 -1
  121. package/release/command_cnako3.json +1 -1
  122. package/release/command_list.json +1 -1
  123. package/release/edit_main.js +13 -13
  124. package/release/edit_main.js.map +3 -3
  125. package/release/editor.js +13 -13
  126. package/release/plugin_kansuji.js +1 -1
  127. package/release/plugin_kansuji.js.map +3 -3
  128. package/release/plugin_markup.js +40 -39
  129. package/release/plugin_markup.js.map +3 -3
  130. package/release/plugin_turtle.js +1 -1
  131. package/release/plugin_turtle.js.map +3 -3
  132. package/release/plugin_webworker.js +2 -2
  133. package/release/plugin_webworker.js.map +2 -2
  134. package/release/plugin_weykturtle3d.js +1 -1
  135. package/release/plugin_weykturtle3d.js.map +2 -2
  136. package/release/version.js +7 -7
  137. package/release/version_main.js +7 -7
  138. package/release/version_main.js.map +3 -3
  139. package/release/wnako3.js +182 -160
  140. package/release/wnako3.js.map +4 -4
  141. package/release/wnako3webworker.js +225 -203
  142. package/release/wnako3webworker.js.map +4 -4
  143. package/src/cnako3mod.mjs +2 -1
  144. package/src/cnako3mod.mts +2 -1
  145. package/src/nako_version.mjs +3 -3
  146. package/src/nako_version.mts +3 -3
  147. package/src/plugin_browser.mjs +19 -32
  148. package/src/plugin_browser.mts +18 -27
  149. package/src/plugin_browser_ajax.mjs +7 -101
  150. package/src/plugin_browser_ajax.mts +7 -90
  151. package/src/plugin_browser_api.mts +2 -2
  152. package/src/plugin_browser_canvas.mjs +1 -1
  153. package/src/plugin_browser_canvas.mts +1 -1
  154. package/src/plugin_browser_crypto.mjs +1 -1
  155. package/src/plugin_browser_crypto.mts +1 -1
  156. package/src/plugin_browser_dom_basic.mjs +1 -1
  157. package/src/plugin_browser_dom_basic.mts +1 -1
  158. package/src/plugin_browser_dom_event.mjs +23 -26
  159. package/src/plugin_browser_dom_event.mts +23 -24
  160. package/src/plugin_browser_geolocation.mjs +2 -8
  161. package/src/plugin_browser_geolocation.mts +2 -4
  162. package/src/plugin_browser_hotkey.mjs +1 -1
  163. package/src/plugin_browser_hotkey.mts +1 -1
  164. package/src/plugin_browser_html.mjs +1 -3
  165. package/src/plugin_browser_html.mts +1 -1
  166. package/src/plugin_browser_speech.mjs +1 -0
  167. package/src/plugin_browser_speech.mts +1 -0
  168. package/src/plugin_browser_websocket.mjs +3 -3
  169. package/src/plugin_browser_websocket.mts +3 -3
  170. package/src/plugin_httpserver.mjs +419 -65
  171. package/src/plugin_httpserver.mts +379 -62
  172. package/src/plugin_kansuji.mjs +59 -34
  173. package/src/plugin_node.mjs +109 -84
  174. package/src/plugin_node.mts +108 -83
  175. package/src/plugin_turtle.mjs +3 -7
  176. package/src/plugin_turtle.mts +3 -5
  177. package/src/plugin_webworker.mjs +3 -3
  178. package/src/plugin_weykturtle3d.mjs +2 -0
  179. package/src/plugin_weykturtle3d.mts +2 -0
  180. package/src/plugin_worker.mjs +2 -2
  181. package/test/doctest/cnako_basic.txt +12 -0
  182. package/test/doctest/wnako_canvas.txt +8 -0
  183. package/test/doctest/wnako_dom.txt +14 -0
  184. package/test/doctest/wnako_event.txt +10 -0
  185. package/test/node/ajax_content_test.mjs +43 -0
  186. package/test/node/analize_code_line_test.mjs +48 -0
  187. package/test/node/build_command_test.mjs +65 -1
  188. package/test/node/doctest_test.mjs +55 -14
  189. package/test/node/error_message_test.mjs +52 -40
  190. package/test/node/merge_gonako_commands_test.mjs +171 -0
  191. package/test/node/node_test.mjs +50 -17
  192. package/test/node/plugin_browser_test.mjs +64 -0
  193. package/test/node/plugin_httpserver_test.mjs +531 -15
  194. package/test/node/plugin_kansuji_test.mjs +142 -0
  195. package/test/node/plugin_markup_test.mjs +11 -14
  196. package/test/node/plugin_node_test.mjs +356 -27
  197. package/test/node/plugin_test.mjs +40 -3
  198. package/test/node/plugin_worker_test.mjs +43 -0
  199. package/test/node/scope_assignment.nako3 +5 -0
  200. package/test/node/add_test.nako3 +0 -1
package/README.md CHANGED
@@ -36,12 +36,11 @@
36
36
 
37
37
  なでしこ3をインストールして動かす方法は下記にまとめています。
38
38
 
39
- - [なでしこマニュアル > FAQ/なでしこ3をインストールして使うには?](https://nadesi.com/v3/doc/go.php?3907)
39
+ - [なでしこマニュアル > FAQ/なでしこ3をインストールして使うには?](https://nadesi.com/v3/doc/index.php?FAQ%2F%E3%81%AA%E3%81%A7%E3%81%97%E3%81%933%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%97%E3%81%A6%E4%BD%BF%E3%81%86%E3%81%AB%E3%81%AF%EF%BC%9F&show)
40
40
 
41
41
  ## Node.jsでなでしこ3コマンドライン版をインストール
42
42
 
43
- 先にNode.js/npmをインストールします。
44
- 次いで、コマンドラインから次のコマンドを実行します。
43
+ 先にNode.js/npmをインストールします。次いで、コマンドラインから次のコマンドを実行します。
45
44
 
46
45
  ```sh
47
46
  npm install -g nadesiko3
@@ -162,6 +161,9 @@ Google Colabでなでしこのビルドテストできます。
162
161
  「なでしこ3」の開発は、2017年からコツコツと継続され、現在まで定期的にバージョンアップが続いています。
163
162
  2004年に掲げた「誰でも簡単プログラマー」の目標を実現するために開発を続けます。
164
163
 
164
+ - (2026-09-07) 現行TS版と互換性のある[なでしこ3(Go版)](https://github.com/kujirahand/nadesiko3go/)を公開
165
+ - (2026-09-01) v3.8.1で古い__getProp/__setPropによるプロパティアクセスを廃止
166
+ - (2026-04-05) v3.7.17より生成AIの活用を大々的に開始
165
167
  - (2024-07-22) v.3.6.11でcoreに分割した開発用リポジトリを再び本家に統合
166
168
  - (2024-07-04) v3.6.8で、バンドルツールを`webpack`から`esbuild`に変更(#1690)
167
169
  - (2024-05-02) v3.6.2で、プラグイン用APIを一新、なでしこの変数管理をObjectからMapに変更(#1638)
@@ -0,0 +1,39 @@
1
+ ROOT_DIR = 母艦パスを「../」で相対パス展開。
2
+
3
+ FILES = 「{ROOT_DIR}/*.mts」の全ファイル列挙。
4
+ TOTAL_FILES = 0
5
+ TOTAL_LINES = 0
6
+ TOTAL_CHARS = 0
7
+
8
+ FILESを反復
9
+ # node_modules を除外
10
+ 対象を『node_modules』で正規表現マッチ。
11
+ もし、そうならば、続ける。
12
+
13
+ F = 対象
14
+ S = Fを開く。
15
+ CHARS = Sの文字数。
16
+
17
+ # 行末の改行を取り除いてから改行で区切る
18
+ S_TRIM = Sの「/\r?\n$/」を「」に正規表現置換。
19
+ もし、S_TRIM == ""ならば
20
+ LINES = 0
21
+ 違えば
22
+ LINES = (S_TRIMを改行で区切る)の要素数
23
+ ここまで。
24
+
25
+ TOTAL_FILES = TOTAL_FILES + 1
26
+ TOTAL_LINES = TOTAL_LINES + LINES
27
+ TOTAL_CHARS = TOTAL_CHARS + CHARS
28
+
29
+ # 相対パス表示
30
+ REL_PATH = Fの「{ROOT_DIR}」を「」に置換。
31
+ REL_PATH = REL_PATHの「/^[\\\/]/」を「」に正規表現置換。
32
+ 「{REL_PATH}: {LINES}行, {CHARS}文字」を表示。
33
+ ここまで。
34
+
35
+ 「----------------------------------------」を表示。
36
+ 「対象ファイル数: {TOTAL_FILES}」を表示。
37
+ 「総行数: {TOTAL_LINES} 行」を表示。
38
+ 「総文字数: {TOTAL_CHARS} 文字」を表示。
39
+ 「----------------------------------------」を表示。
@@ -44,11 +44,10 @@ export default nakoVersion
44
44
    VSを保存先へ保存。
45
45
    「
46
46
  # ---------------------------------------------
47
- # ● なでしこのバージョン情報(src/nako_version.mts)を更新しました。
47
+ # ● なでしこのバージョン情報を更新しました。
48
48
  # version {VER}
49
49
  # file: {保存先}
50
- # ---------------------------------------------
51
- 」を表示。
50
+ 」をトリムして表示。
52
51
 
53
52
  ●コアバージョン更新とは:
54
53
    もし、メインバージョン=空ならば:
@@ -56,7 +55,6 @@ export default nakoVersion
56
55
    CORE_PACKAGE=「{基本パス}/core/package.json」
57
56
    CORE_PACKAGEを読んでJSONデコードして、Pに代入。
58
57
    VER=P@"version"
59
-   「★★コアバージョンを勝手に書き換えます!!」と表示。
60
58
    P@"version" = メインバージョン
61
59
    PをJSONエンコード整形してSに代入。
62
60
    CORE_PACKAGEにSを保存。