nadesiko3 3.8.1 → 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 (185) hide show
  1. package/README.md +5 -3
  2. package/batch/analize-code-line.nako3 +39 -0
  3. package/batch/command.txt +1243 -460
  4. package/batch/doctest.mjs +43 -14
  5. package/batch/merge_gonako_commands.nako3 +98 -0
  6. package/batch/pickup_command.nako3 +4 -0
  7. package/batch/search_command.nako3 +2 -2
  8. package/core/package-lock.json +519 -0
  9. package/core/package.json +1 -1
  10. package/core/src/nako_ast.mts +6 -0
  11. package/core/src/nako_core_version.mjs +2 -2
  12. package/core/src/nako_core_version.mts +2 -2
  13. package/core/src/nako_csv.mjs +49 -27
  14. package/core/src/nako_csv.mts +49 -28
  15. package/core/src/nako_dncl_ensure_array.mjs +29 -0
  16. package/core/src/nako_dncl_ensure_array.mts +29 -0
  17. package/core/src/nako_from_dncl.mjs +944 -56
  18. package/core/src/nako_from_dncl.mts +738 -51
  19. package/core/src/nako_gen.mjs +226 -46
  20. package/core/src/nako_gen.mts +223 -50
  21. package/core/src/nako_global.mjs +7 -0
  22. package/core/src/nako_global.mts +12 -0
  23. package/core/src/nako_inc_value.mjs +30 -0
  24. package/core/src/nako_inc_value.mts +26 -0
  25. package/core/src/nako_josi_list.mjs +15 -0
  26. package/core/src/nako_josi_list.mts +16 -0
  27. package/core/src/nako_lex_rules.mjs +5 -17
  28. package/core/src/nako_lex_rules.mts +5 -13
  29. package/core/src/nako_lexer.mjs +8 -11
  30. package/core/src/nako_lexer.mts +8 -9
  31. package/core/src/nako_parser3.mjs +51 -20
  32. package/core/src/nako_parser3.mts +58 -24
  33. package/core/src/nako_parser_message.mjs +5 -0
  34. package/core/src/nako_parser_message.mts +5 -0
  35. package/core/src/nako_tokenizer.mjs +3 -2
  36. package/core/src/nako_tokenizer.mts +3 -2
  37. package/core/src/plugin_api.mts +2 -1
  38. package/core/src/plugin_promise.mjs +5 -0
  39. package/core/src/plugin_promise.mts +5 -0
  40. package/core/src/plugin_system.mjs +11 -6
  41. package/core/src/plugin_system.mts +11 -6
  42. package/core/src/plugin_system_array.mjs +48 -20
  43. package/core/src/plugin_system_array.mts +45 -16
  44. package/core/src/plugin_system_datetime.mjs +2 -7
  45. package/core/src/plugin_system_datetime.mts +2 -7
  46. package/core/src/plugin_system_debug.mjs +2 -6
  47. package/core/src/plugin_system_debug.mts +2 -4
  48. package/core/src/plugin_system_math.mjs +11 -5
  49. package/core/src/plugin_system_math.mts +11 -5
  50. package/core/src/plugin_system_string.mjs +64 -32
  51. package/core/src/plugin_system_string.mts +63 -26
  52. package/core/src/plugin_system_timer.mjs +2 -6
  53. package/core/src/plugin_system_timer.mts +2 -2
  54. package/core/src/plugin_system_url.mjs +12 -29
  55. package/core/src/plugin_system_url.mts +10 -24
  56. package/core/src/url_util.mjs +35 -0
  57. package/core/src/url_util.mts +35 -0
  58. package/core/test/array_hang_test.mjs +169 -0
  59. package/core/test/array_test.mjs +58 -0
  60. package/core/test/calc_test.mjs +63 -1
  61. package/core/test/compat_fixture_test.mjs +49 -0
  62. package/core/test/dncl2_test.mjs +5 -0
  63. package/core/test/dncl_test.mjs +696 -0
  64. package/core/test/fixtures/README.md +9 -0
  65. package/core/test/fixtures/compat/README.md +85 -0
  66. package/core/test/fixtures/compat/SPEC.md +133 -0
  67. package/core/test/fixtures/compat/cases/01_literal.json +44 -0
  68. package/core/test/fixtures/compat/cases/02_operator.json +174 -0
  69. package/core/test/fixtures/compat/cases/03_type_convert.json +177 -0
  70. package/core/test/fixtures/compat/cases/04_string.json +282 -0
  71. package/core/test/fixtures/compat/cases/05_array.json +188 -0
  72. package/core/test/fixtures/compat/cases/06_dict.json +93 -0
  73. package/core/test/fixtures/compat/cases/07_flow.json +24 -0
  74. package/core/test/fixtures/compat/cases/08_func.json +94 -0
  75. package/core/test/fixtures/compat/cases/09_error.json +16 -0
  76. package/core/test/fixtures/compat/cases/10_async.json +48 -0
  77. package/core/test/fixtures/compat/cases/11_regexp.json +78 -0
  78. package/core/test/fixtures/compat/check_compat.mjs +133 -0
  79. package/core/test/fixtures/compat/compat_case.mjs +171 -0
  80. package/core/test/fixtures/compat/expected/01_literal.json +377 -0
  81. package/core/test/fixtures/compat/expected/02_operator.json +195 -0
  82. package/core/test/fixtures/compat/expected/03_type_convert.json +263 -0
  83. package/core/test/fixtures/compat/expected/04_string.json +333 -0
  84. package/core/test/fixtures/compat/expected/05_array.json +665 -0
  85. package/core/test/fixtures/compat/expected/06_dict.json +279 -0
  86. package/core/test/fixtures/compat/expected/07_flow.json +125 -0
  87. package/core/test/fixtures/compat/expected/08_func.json +146 -0
  88. package/core/test/fixtures/compat/expected/09_error.json +87 -0
  89. package/core/test/fixtures/compat/expected/10_async.json +39 -0
  90. package/core/test/fixtures/compat/expected/11_regexp.json +85 -0
  91. package/core/test/fixtures/compat/make_compat_golden.mjs +39 -0
  92. package/core/test/fixtures/parser_ast_golden.json +9 -29
  93. package/core/test/func_call.mjs +40 -0
  94. package/core/test/func_test.mjs +12 -0
  95. package/core/test/lex_test.mjs +30 -0
  96. package/core/test/nako_basic_plugins_test.mjs +23 -0
  97. package/core/test/pad_hang_test.mjs +58 -0
  98. package/core/test/plugin_csv_test.mjs +129 -2
  99. package/core/test/plugin_system_test.mjs +713 -0
  100. package/core/test/refrain_hang_test.mjs +51 -0
  101. package/doc/command_list.json +7675 -465
  102. package/doc/doctest.md +28 -7
  103. package/doc/gonako.md +470 -0
  104. package/doc/plugins.md +9 -1
  105. package/doc/search_command.md +15 -1
  106. package/package.json +8 -6
  107. package/release/_hash.txt +48 -48
  108. package/release/_script-tags.txt +16 -16
  109. package/release/command.json +1 -1
  110. package/release/command.json.js +1 -1
  111. package/release/command_cnako3.json +1 -1
  112. package/release/command_list.json +1 -1
  113. package/release/edit_main.js +13 -13
  114. package/release/edit_main.js.map +3 -3
  115. package/release/editor.js +13 -13
  116. package/release/plugin_kansuji.js +1 -1
  117. package/release/plugin_kansuji.js.map +3 -3
  118. package/release/plugin_markup.js +26 -26
  119. package/release/plugin_markup.js.map +3 -3
  120. package/release/plugin_turtle.js +1 -1
  121. package/release/plugin_turtle.js.map +3 -3
  122. package/release/plugin_webworker.js +2 -2
  123. package/release/plugin_webworker.js.map +2 -2
  124. package/release/plugin_weykturtle3d.js +1 -1
  125. package/release/plugin_weykturtle3d.js.map +2 -2
  126. package/release/version.js +7 -7
  127. package/release/version_main.js +7 -7
  128. package/release/version_main.js.map +3 -3
  129. package/release/wnako3.js +231 -209
  130. package/release/wnako3.js.map +4 -4
  131. package/release/wnako3webworker.js +224 -202
  132. package/release/wnako3webworker.js.map +4 -4
  133. package/src/cnako3mod.mjs +2 -1
  134. package/src/cnako3mod.mts +2 -1
  135. package/src/nako_version.mjs +2 -2
  136. package/src/nako_version.mts +2 -2
  137. package/src/plugin_browser.mjs +19 -32
  138. package/src/plugin_browser.mts +18 -27
  139. package/src/plugin_browser_ajax.mjs +7 -2
  140. package/src/plugin_browser_ajax.mts +7 -2
  141. package/src/plugin_browser_api.mts +2 -2
  142. package/src/plugin_browser_canvas.mjs +1 -1
  143. package/src/plugin_browser_canvas.mts +1 -1
  144. package/src/plugin_browser_crypto.mjs +1 -1
  145. package/src/plugin_browser_crypto.mts +1 -1
  146. package/src/plugin_browser_dom_basic.mjs +1 -1
  147. package/src/plugin_browser_dom_basic.mts +1 -1
  148. package/src/plugin_browser_dom_event.mjs +23 -26
  149. package/src/plugin_browser_dom_event.mts +23 -24
  150. package/src/plugin_browser_geolocation.mjs +2 -8
  151. package/src/plugin_browser_geolocation.mts +2 -4
  152. package/src/plugin_browser_hotkey.mjs +1 -1
  153. package/src/plugin_browser_hotkey.mts +1 -1
  154. package/src/plugin_browser_html.mjs +1 -3
  155. package/src/plugin_browser_html.mts +1 -1
  156. package/src/plugin_browser_speech.mjs +1 -0
  157. package/src/plugin_browser_speech.mts +1 -0
  158. package/src/plugin_browser_websocket.mjs +3 -3
  159. package/src/plugin_browser_websocket.mts +3 -3
  160. package/src/plugin_httpserver.mjs +367 -50
  161. package/src/plugin_httpserver.mts +333 -50
  162. package/src/plugin_kansuji.mjs +59 -34
  163. package/src/plugin_node.mjs +109 -67
  164. package/src/plugin_node.mts +108 -66
  165. package/src/plugin_turtle.mjs +3 -7
  166. package/src/plugin_turtle.mts +3 -5
  167. package/src/plugin_webworker.mjs +3 -3
  168. package/src/plugin_weykturtle3d.mjs +2 -0
  169. package/src/plugin_weykturtle3d.mts +2 -0
  170. package/src/plugin_worker.mjs +2 -2
  171. package/test/doctest/cnako_basic.txt +12 -0
  172. package/test/doctest/wnako_canvas.txt +8 -0
  173. package/test/doctest/wnako_dom.txt +14 -0
  174. package/test/doctest/wnako_event.txt +10 -0
  175. package/test/node/ajax_content_test.mjs +43 -0
  176. package/test/node/analize_code_line_test.mjs +48 -0
  177. package/test/node/doctest_test.mjs +55 -14
  178. package/test/node/merge_gonako_commands_test.mjs +171 -0
  179. package/test/node/node_test.mjs +50 -17
  180. package/test/node/plugin_browser_test.mjs +64 -0
  181. package/test/node/plugin_httpserver_test.mjs +480 -15
  182. package/test/node/plugin_kansuji_test.mjs +142 -0
  183. package/test/node/plugin_node_test.mjs +355 -26
  184. package/test/node/plugin_worker_test.mjs +43 -0
  185. 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
+ 「----------------------------------------」を表示。