nadesiko3 3.3.49 → 3.3.50

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 (342) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +143 -143
  3. package/batch/.DS_Store +0 -0
  4. package/batch/browsers.template.md +3 -3
  5. package/batch/build_browsers.nako3 +72 -72
  6. package/batch/build_command.nako3 +44 -44
  7. package/batch/build_nako_version.nako3 +42 -42
  8. package/batch/calc_hash.nako3 +29 -29
  9. package/batch/cmd_txt2json.nako3 +74 -74
  10. package/batch/command.txt +79 -0
  11. package/batch/command_nakopad.txt +69 -0
  12. package/batch/download-extlib.nako3 +43 -43
  13. package/batch/gen_command_nakopad.nako3 +57 -57
  14. package/batch/jsplugin2text.nako3 +285 -285
  15. package/batch/pickup_command.nako3 +110 -110
  16. package/batch/pickup_reserved_words.nako3 +11 -11
  17. package/batch/publish_version.nako3 +46 -46
  18. package/batch/show_agents.js +14 -14
  19. package/batch/turtle2js.nako3 +21 -21
  20. package/bin/cnako3 +10 -10
  21. package/core/LICENSE +21 -21
  22. package/core/README.md +66 -66
  23. package/core/batch/build_nako_version.nako3 +42 -42
  24. package/core/command/snako.mjs +105 -105
  25. package/core/command/snako.mts +116 -116
  26. package/core/index.mjs +21 -21
  27. package/core/package.json +47 -47
  28. package/core/sample/hello.nako3 +7 -7
  29. package/core/sample/hoge.mjs +4 -4
  30. package/core/sample/hoge.mts +6 -6
  31. package/core/src/nako3.mjs +864 -858
  32. package/core/src/nako3.mts +976 -967
  33. package/core/src/nako_colors.mjs +78 -78
  34. package/core/src/nako_colors.mts +86 -86
  35. package/core/src/nako_core_version.mjs +8 -8
  36. package/core/src/nako_core_version.mts +19 -19
  37. package/core/src/nako_csv.mjs +185 -185
  38. package/core/src/nako_csv.mts +188 -188
  39. package/core/src/nako_errors.mjs +173 -173
  40. package/core/src/nako_errors.mts +197 -197
  41. package/core/src/nako_from_dncl.mjs +255 -255
  42. package/core/src/nako_from_dncl.mts +250 -250
  43. package/core/src/nako_gen.mjs +1647 -1648
  44. package/core/src/nako_gen.mts +1718 -1719
  45. package/core/src/nako_gen_async.mjs +1659 -1659
  46. package/core/src/nako_gen_async.mts +1732 -1732
  47. package/core/src/nako_global.mjs +107 -107
  48. package/core/src/nako_global.mts +138 -138
  49. package/core/src/nako_indent.mjs +445 -445
  50. package/core/src/nako_indent.mts +492 -492
  51. package/core/src/nako_josi_list.mjs +38 -38
  52. package/core/src/nako_josi_list.mts +45 -45
  53. package/core/src/nako_lex_rules.mjs +253 -253
  54. package/core/src/nako_lex_rules.mts +260 -260
  55. package/core/src/nako_lexer.mjs +609 -609
  56. package/core/src/nako_lexer.mts +612 -612
  57. package/core/src/nako_logger.mjs +199 -199
  58. package/core/src/nako_logger.mts +232 -232
  59. package/core/src/nako_parser3.mjs +2439 -2439
  60. package/core/src/nako_parser3.mts +2195 -2195
  61. package/core/src/nako_parser_base.mjs +370 -370
  62. package/core/src/nako_parser_base.mts +370 -370
  63. package/core/src/nako_parser_const.mjs +37 -37
  64. package/core/src/nako_parser_const.mts +37 -37
  65. package/core/src/nako_prepare.mjs +304 -304
  66. package/core/src/nako_prepare.mts +315 -315
  67. package/core/src/nako_reserved_words.mjs +38 -38
  68. package/core/src/nako_reserved_words.mts +38 -38
  69. package/core/src/nako_source_mapping.mjs +207 -207
  70. package/core/src/nako_source_mapping.mts +262 -262
  71. package/core/src/nako_test.mjs +37 -37
  72. package/core/src/nako_types.mjs +25 -25
  73. package/core/src/nako_types.mts +151 -151
  74. package/core/src/plugin_csv.mjs +49 -49
  75. package/core/src/plugin_csv.mts +50 -50
  76. package/core/src/plugin_math.mjs +328 -328
  77. package/core/src/plugin_math.mts +326 -326
  78. package/core/src/plugin_promise.mjs +91 -91
  79. package/core/src/plugin_promise.mts +91 -91
  80. package/core/src/plugin_system.mjs +2832 -2832
  81. package/core/src/plugin_system.mts +2690 -2690
  82. package/core/src/plugin_test.mjs +34 -34
  83. package/core/src/plugin_test.mts +34 -34
  84. package/demo/.DS_Store +0 -0
  85. package/demo/ace_editor.html +89 -89
  86. package/demo/ace_editor_tabs.html +161 -161
  87. package/demo/basic.html +71 -71
  88. package/demo/browsers.html +10 -9
  89. package/demo/css/basic.css +3 -3
  90. package/demo/css/common.css +157 -157
  91. package/demo/css/editor.css +8 -8
  92. package/demo/css/flow.css +3 -3
  93. package/demo/css/index.css +3 -3
  94. package/demo/extlib/.DS_Store +0 -0
  95. package/demo/flow.html +98 -98
  96. package/demo/graph.html +53 -53
  97. package/demo/image/nakopad-icon256.png +0 -0
  98. package/demo/index.html +133 -133
  99. package/demo/js/common.js +17 -17
  100. package/demo/js/turtle3d_test.js +44 -44
  101. package/demo/js/turtle_test.js +45 -45
  102. package/demo/nako3/calc.nako3 +4 -4
  103. package/demo/runscript.html +47 -47
  104. package/demo/runscript2.html +33 -33
  105. package/demo/runscript3.html +35 -35
  106. package/demo/runscript4.html +33 -33
  107. package/demo/turtle.html +58 -58
  108. package/demo/turtle2.html +141 -141
  109. package/demo/turtle3.html +279 -279
  110. package/demo/turtle3d.html +58 -58
  111. package/demo/turtle3d2.html +107 -107
  112. package/demo/version.html +24 -24
  113. package/doc/SETUP.md +157 -157
  114. package/doc/about.md +17 -17
  115. package/doc/browsers.md +26 -26
  116. package/doc/docgen.md +21 -21
  117. package/doc/editor.md +44 -44
  118. package/doc/files.md +39 -39
  119. package/doc/plugins.md +234 -234
  120. package/doc/release.md +79 -79
  121. package/doc/textlint.md +43 -43
  122. package/doc/win32.md +57 -57
  123. package/package.json +195 -195
  124. package/release/_hash.txt +28 -28
  125. package/release/_script-tags.txt +14 -14
  126. package/release/command.json +1 -1
  127. package/release/command.json.js +1 -1
  128. package/release/command_cnako3.json +1 -1
  129. package/release/command_list.json +1 -1
  130. package/release/editor.js +1 -1
  131. package/release/nako_gen_async.js +1 -1
  132. package/release/nako_gen_async.js.LICENSE.txt +35 -0
  133. package/release/plugin_caniuse.js.LICENSE.txt +11 -0
  134. package/release/plugin_csv.js +1 -1
  135. package/release/plugin_csv.js.LICENSE.txt +15 -0
  136. package/release/plugin_datetime.js.LICENSE.txt +15 -0
  137. package/release/plugin_kansuji.js.LICENSE.txt +3 -0
  138. package/release/plugin_markup.js.LICENSE.txt +11 -0
  139. package/release/plugin_turtle.js.LICENSE.txt +15 -0
  140. package/release/plugin_webworker.js.LICENSE.txt +3 -0
  141. package/release/plugin_weykturtle3d.js.LICENSE.txt +3 -0
  142. package/release/stats.json +1 -1
  143. package/release/version.js +1 -1
  144. package/release/wnako3.js +1 -1
  145. package/release/wnako3webworker.js +1 -1
  146. package/release/wnako3webworker.js.LICENSE.txt +131 -0
  147. package/src/.DS_Store +0 -0
  148. package/src/browsers.txt +12 -11
  149. package/src/browsers_agents.json +2 -2
  150. package/src/browsers_agents.mjs +1 -1
  151. package/src/cnako3.mjs +17 -17
  152. package/src/cnako3.mts +18 -18
  153. package/src/cnako3mod.mjs +707 -707
  154. package/src/cnako3mod.mts +712 -712
  155. package/src/commander_ja.mjs +164 -164
  156. package/src/commander_ja.mts +161 -161
  157. package/src/enako3.mjs +68 -68
  158. package/src/era.mjs +22 -22
  159. package/src/image_turtle-elephant.mjs +2 -2
  160. package/src/image_turtle-panda.mjs +2 -2
  161. package/src/image_turtle64.mjs +2 -2
  162. package/src/index.mjs +9 -9
  163. package/src/index.mts +10 -10
  164. package/src/nako3editorfix.sfd +106 -106
  165. package/src/nako_version.mjs +8 -8
  166. package/src/nako_version.mts +2 -2
  167. package/src/plugin_browser.mjs +213 -213
  168. package/src/plugin_browser.mts +206 -206
  169. package/src/plugin_browser_ajax.mjs +399 -399
  170. package/src/plugin_browser_audio.mjs +109 -109
  171. package/src/plugin_browser_canvas.mjs +449 -449
  172. package/src/plugin_browser_chart.mjs +294 -294
  173. package/src/plugin_browser_color.mjs +49 -49
  174. package/src/plugin_browser_crypto.mjs +26 -26
  175. package/src/plugin_browser_dialog.mjs +53 -53
  176. package/src/plugin_browser_dom_basic.mjs +336 -336
  177. package/src/plugin_browser_dom_event.mjs +193 -193
  178. package/src/plugin_browser_dom_parts.mjs +396 -396
  179. package/src/plugin_browser_geolocation.mjs +51 -51
  180. package/src/plugin_browser_hotkey.mjs +25 -25
  181. package/src/plugin_browser_html.mjs +59 -59
  182. package/src/plugin_browser_in_worker.mjs +45 -45
  183. package/src/plugin_browser_location.mjs +21 -21
  184. package/src/plugin_browser_speech.mjs +111 -111
  185. package/src/plugin_browser_storage.mjs +121 -121
  186. package/src/plugin_browser_system.mjs +31 -31
  187. package/src/plugin_browser_websocket.mjs +73 -73
  188. package/src/plugin_caniuse.mjs +29 -29
  189. package/src/plugin_datetime.mjs +394 -394
  190. package/src/plugin_httpserver.mjs +277 -277
  191. package/src/plugin_httpserver.mts +286 -286
  192. package/src/plugin_kansuji.mjs +224 -224
  193. package/src/plugin_keigo.mjs +55 -55
  194. package/src/plugin_markup.mjs +32 -32
  195. package/src/plugin_node.mjs +1047 -1047
  196. package/src/plugin_node.mts +980 -980
  197. package/src/plugin_turtle.mjs +647 -647
  198. package/src/plugin_webworker.mjs +334 -334
  199. package/src/plugin_weykturtle3d.mjs +1214 -1214
  200. package/src/plugin_worker.mjs +95 -95
  201. package/src/repl.nako3 +63 -63
  202. package/src/wnako3.mjs +12 -12
  203. package/src/wnako3.mts +11 -11
  204. package/src/wnako3_editor.css +215 -215
  205. package/src/wnako3_editor.mjs +1542 -1542
  206. package/src/wnako3_editor.mts +1658 -1657
  207. package/src/wnako3mod.mjs +213 -213
  208. package/src/wnako3mod.mts +214 -214
  209. package/src/wnako3webworker.mjs +69 -69
  210. package/test/.DS_Store +0 -0
  211. package/test/ace_editor/karma.config.js +94 -94
  212. package/test/ace_editor/test/.babelrc.json +3 -3
  213. package/test/ace_editor/test/ace_editor_test.js +178 -178
  214. package/test/ace_editor/test/html/custom_context.html +139 -139
  215. package/test/async/async_basic_test.mjs +122 -122
  216. package/test/browser/.DS_Store +0 -0
  217. package/test/browser/karma.config.js +221 -221
  218. package/test/browser/test/.babelrc.json +3 -3
  219. package/test/browser/test/compare_util.js +50 -50
  220. package/test/browser/test/html/div_basic.html +2 -2
  221. package/test/browser/test/html/event_dom_form.html +4 -4
  222. package/test/browser/test/html/event_dom_scrolldiv.html +5 -5
  223. package/test/browser/test/import_plugin_checker.js +24 -24
  224. package/test/browser/test/plugin_browser_test.js +51 -51
  225. package/test/browser/test/plugin_browser_test_ajax.js +123 -123
  226. package/test/browser/test/plugin_browser_test_color.js +18 -18
  227. package/test/browser/test/plugin_browser_test_dialog.js +72 -72
  228. package/test/browser/test/plugin_browser_test_dom_event.js +598 -598
  229. package/test/browser/test/plugin_browser_test_dom_parts.js +125 -125
  230. package/test/browser/test/plugin_browser_test_system.js +9 -9
  231. package/test/browser/test/plugin_turtle_test.js +817 -817
  232. package/test/browser/test/plugin_webworker_test.js +86 -86
  233. package/test/browser/test/require_test.js +68 -68
  234. package/test/bundled/.DS_Store +0 -0
  235. package/test/bundled/karma.config.base.js +117 -117
  236. package/test/bundled/karma.config.js +86 -86
  237. package/test/bundled/test/.babelrc.json +3 -3
  238. package/test/bundled/test/bundled_test.js +69 -69
  239. package/test/bundled/test/html/custom_context.html +65 -65
  240. package/test/bundled/test/html/custom_debug.html +66 -66
  241. package/test/bundled/test4b.cmd +52 -52
  242. package/test/bundled/test_base/.DS_Store +0 -0
  243. package/test/bundled/test_base/.babelrc.json +3 -3
  244. package/test/bundled/test_base/_checktool_test.js +25 -25
  245. package/test/bundled/test_base/basic_ajax_test.js +56 -56
  246. package/test/bundled/test_base/basic_async_test.js +18 -18
  247. package/test/bundled/test_base/basic_test.js +153 -153
  248. package/test/bundled/test_base/calc_test.js +132 -132
  249. package/test/bundled/test_base/css/browsers_box.css +114 -114
  250. package/test/bundled/test_base/html/custom_context.html +69 -69
  251. package/test/bundled/test_base/html/custom_debug.html +71 -71
  252. package/test/bundled/test_base/js/browsers_box.js +72 -72
  253. package/test/bundled/test_base/plugin_csv_test.js +37 -37
  254. package/test/bundled/test_base/plugin_datetime_test.js +115 -115
  255. package/test/bundled/test_base/plugin_kansuji_test.js +49 -49
  256. package/test/bundled/test_base/plugin_system_test.js +410 -410
  257. package/test/bundled/test_base/plugin_webworker_test.js +53 -53
  258. package/test/bundled/test_base/test_utils.js +191 -191
  259. package/test/common/.DS_Store +0 -0
  260. package/test/common/plugin_browser_test.mjs +22 -22
  261. package/test/common/plugin_browser_ut_audio_test.mjs +108 -108
  262. package/test/common/plugin_browser_ut_color_test.mjs +21 -21
  263. package/test/common/plugin_browser_ut_dialog_test.mjs +100 -100
  264. package/test/common/plugin_browser_ut_html_test.mjs +13 -13
  265. package/test/common/plugin_browser_ut_system_test.mjs +10 -10
  266. package/test/common/plugin_markup_test.mjs +23 -23
  267. package/test/jsconfig.json +19 -19
  268. package/test/karma.config.js +91 -91
  269. package/test/node/.DS_Store +0 -0
  270. package/test/node/async_test.mjs +96 -96
  271. package/test/node/commander_ja_test.mjs +89 -89
  272. package/test/node/error_message_test.mjs +243 -243
  273. package/test/node/kai_test.nako3 +6 -6
  274. package/test/node/node_test.mjs +60 -60
  275. package/test/node/plugin_broken.js.txt +3 -3
  276. package/test/node/plugin_browser_ut_ajax_test.mjs.todo +357 -357
  277. package/test/node/plugin_browser_ut_location_test.mjs +42 -42
  278. package/test/node/plugin_markup_test.mjs +47 -47
  279. package/test/node/plugin_math_test.mjs +45 -45
  280. package/test/node/plugin_node_test.mjs +98 -98
  281. package/test/node/plugin_test.mjs +44 -44
  282. package/test/node/relative_import_test_1.nako3 +1 -1
  283. package/test/node/relative_import_test_2.nako3 +2 -2
  284. package/test/node/require_nako3_test.mjs +67 -67
  285. package/test/node/requiretest.nako3 +4 -4
  286. package/test/node/requiretest_indirect.nako3 +1 -1
  287. package/test/node/requiretest_name.nako3 +5 -5
  288. package/test/node/runtime_error.nako3 +2 -2
  289. package/test/node/scope1.nako3 +10 -10
  290. package/test/node/scope2.nako3 +12 -12
  291. package/test/node/side_effects_test.mjs +39 -39
  292. package/test/node/sjis.txt +5 -5
  293. package/test/node/syntax_error.nako3 +1 -1
  294. package/test/node/wnako3_editor_test.mjs +384 -384
  295. package/tools/.DS_Store +0 -0
  296. package/tools/README.md +12 -12
  297. package/tools/check_new_version.nako3 +25 -25
  298. package/tools/nako3edit/.DS_Store +0 -0
  299. package/tools/nako3edit/a.sqlite3 +0 -0
  300. package/tools/nako3edit/html/.DS_Store +0 -0
  301. package/tools/nako3edit/html/daisyui/LICENSE +22 -22
  302. package/tools/nako3edit/html/daisyui/version_2.14.1 +1 -1
  303. package/tools/nako3edit/html/edit.html +170 -170
  304. package/tools/nako3edit/html/edit_plugin.js +6 -6
  305. package/tools/nako3edit/html/files.html +125 -125
  306. package/tools/nako3edit/html/nako3edit.css +65 -65
  307. package/tools/nako3edit/index.mjs +248 -248
  308. package/tools/nako3server/index.html +10 -10
  309. package/tools/nako3server/index.mjs +116 -116
  310. package/tools/nako3server/index.nako3 +34 -34
  311. package/core/.editorconfig +0 -6
  312. package/core/.eslintrc.cjs +0 -33
  313. package/core/.github/dependabot.yml +0 -7
  314. package/core/.github/workflows/nodejs.yml +0 -37
  315. package/core/.github/workflows/super-linter.yml +0 -61
  316. package/core/.github/workflows/textlint.yml +0 -199
  317. package/core/index.mts +0 -21
  318. package/core/test/array_test.mjs +0 -34
  319. package/core/test/basic_test.mjs +0 -344
  320. package/core/test/calc_test.mjs +0 -140
  321. package/core/test/core_module_test.mjs +0 -23
  322. package/core/test/debug_test.mjs +0 -16
  323. package/core/test/dncl_test.mjs +0 -94
  324. package/core/test/error_message_test.mjs +0 -210
  325. package/core/test/error_test.mjs +0 -16
  326. package/core/test/flow_test.mjs +0 -373
  327. package/core/test/func_call.mjs +0 -160
  328. package/core/test/func_test.mjs +0 -149
  329. package/core/test/indent_test.mjs +0 -364
  330. package/core/test/lex_test.mjs +0 -168
  331. package/core/test/literal_test.mjs +0 -73
  332. package/core/test/nako_lexer_test.mjs +0 -35
  333. package/core/test/nako_logger_test.mjs +0 -76
  334. package/core/test/nako_logger_test.mts +0 -78
  335. package/core/test/plugin_csv_test.mjs +0 -38
  336. package/core/test/plugin_promise_test.mjs +0 -18
  337. package/core/test/plugin_system_test.mjs +0 -630
  338. package/core/test/prepare_test.mjs +0 -96
  339. package/core/test/re_test.mjs +0 -22
  340. package/core/test/side_effects_test.mjs +0 -92
  341. package/core/test/variable_scope_test.mjs +0 -149
  342. package/core/tsconfig.json +0 -101
@@ -1,110 +1,110 @@
1
- # -----------------------------------------------------
2
- # なでしこのソースコードから命令一覧テキストを作成する
3
- #-------------------------------------------------
4
- # 入力: src/plugin_xxx.js
5
- # 出力: command.txt
6
- # -----------------------------------------------------
7
- !「jsplugin2text.nako3」を取り込む。
8
-
9
- # 基本パスを取得
10
- 母艦パス取得してパス抽出して基本パスに代入。
11
- REPOSパス=基本パスを「../」で相対パス展開。
12
- CORE="core/src"
13
-
14
- コアプラグイン一覧は[
15
- ["plugin_system.mts", 'wnako,cnako,phpnako'],
16
- ["plugin_csv.mts", 'wnako,cnako'],
17
- ["plugin_math.mts", 'wnako,cnako'],
18
- ["plugin_promise.mts", 'wnako']
19
- ]
20
-
21
- 基本プラグイン一覧は[
22
- ['src/plugin_browser.mjs','wnako'],
23
- ['src/plugin_turtle.mjs', 'wnako'],
24
- ['src/plugin_node.mts', 'cnako,phpnako'],
25
- ['src/plugin_httpserver.mts', 'cnako'],
26
- ['src/plugin_markup.mjs', 'wnako,cnako'],
27
- ['src/plugin_datetime.mjs', 'wnako,cnako'],
28
- ['src/plugin_caniuse.mjs', 'wnako,cnako'],
29
- ['src/plugin_kansuji.mjs', 'wnako,cnako'],
30
- ['src/plugin_weykturtle3d.mjs', 'wnako'],
31
- ['src/plugin_webworker.mjs', 'wnako'],
32
- ]
33
- 拡張プラグイン一覧は[
34
- ['nadesiko3-tools/nadesiko3-tools.mjs', 'cnako'],
35
- ['nadesiko3-server/nadesiko3-server.mjs', 'cnako'],
36
- ['nadesiko3-sqlite3/nadesiko3-sqlite3.js', 'cnako'],
37
- ['nadesiko3-htmlparser/nadesiko3-htmlparser.js', 'cnako'],
38
- ['nadesiko3-websocket/nadesiko3-websocket.js', 'cnako'],
39
- ['nadesiko3-ml/nadesiko3-ml.js', 'cnako'],
40
- ['nadesiko3-mecab/nadesiko3-mecab.js', 'cnako'],
41
- ['nadesiko3-office/nadesiko3-office.js', 'cnako'],
42
- ['nadesiko3-odbc/src/plugin_odbc.js', 'cnako'],
43
- ['nadesiko3-mssql/src/plugin_mssql.js', 'cnako'],
44
- ['nadesiko3-mysql/src/plugin_mysql.js', 'cnako'],
45
- ['nadesiko3-postgresql/src/plugin_postgresql.js', 'cnako'],
46
- ['nadesiko3php/src/plugin_php.php', 'phpnako'],
47
- ]
48
- # サポートしない
49
- # 'nadesiko3-firebase/plugin_firebase.js',
50
- # 'nadesiko3-googlehome/plugin_googlehome.js',
51
- # 'nadesiko3-sqlite3sync/nadesiko3-sqlite3sync.js', # 利用は非推奨に
52
- # 'nadesiko3-drone/nadesiko3-drone.js', 'cnako', # ドローン
53
-
54
- #------------------------
55
- 結果データ=「」
56
- SRC_URL=""
57
- FILE_PATH=""
58
- #------------------------
59
- コアプラグイン一覧を反復
60
-   PNAME=対象@0
61
-   カレントプラグイン="{CORE}/{PNAME}"
62
-   FILE_PATH="{基本パス}/{CORE}/{PNAME}"
63
-   # https://github.com/kujirahand/nadesiko3core/blob/main/src/{PNAME}#L119
64
-   SRC_URL="https://github.com/kujirahand/nadesiko3core/blob/main/src/{PNAME}"
65
-   ナコタイプ=対象@1
66
-   パスは「{基本パス}/{カレントプラグイン}」
67
-   パスを「(基本プラグイン,{ナコタイプ})」でプラグイン要約作成
68
-   結果データ=結果データ&それ&改行&改行。
69
- ここまで
70
- #------------------------
71
- 基本プラグイン一覧を反復
72
-   PNAME=対象@0
73
-   カレントプラグイン=対象@0
74
-   ナコタイプ=対象@1
75
-   FILE_PATH="{基本パス}/{PNAME}"
76
-   SRC_URL="https://github.com/kujirahand/nadesiko3/tree/master/{PNAME}"
77
-   パスは「{基本パス}/{カレントプラグイン}」
78
-   パスを「(基本プラグイン,{ナコタイプ})」でプラグイン要約作成
79
-   結果データ=結果データ&それ&改行&改行。
80
- ここまで
81
- #------------------------
82
- 拡張プラグイン一覧を反復
83
-   カレントプラグイン=それ@0
84
-   ナコタイプ=それ@1
85
-   パスは「{REPOSパス}/{カレントプラグイン}」
86
-   FILE_PATH="{REPOSパス}/{カレントプラグイン}"
87
-   SRC_URL="https://github.com/kujirahand/{カレントプラグイン}"
88
-   パスが存在
89
-   もし、そうならば
90
-      # パスを表示。
91
-     EX=「拡張プラグイン」
92
-     もし、ナコタイプ=「phpnako」ならば
93
-      EX=「基本プラグイン」
94
-     ここまで
95
-     パスを「({EX},{ナコタイプ})」でプラグイン要約作成。
96
-     結果データ=結果データ&それ&改行&改行。
97
-   違えば
98
-     「REPORT_ERR」の環境変数取得
99
-     もしそうならば
100
-       OS=OS取得
101
-       もし、OS="darwin"ならば
102
-         「[エラー]ファイルが存在しない: {パス}」を表示。
103
-         「ファイルが存在しない:{パス}」のエラー発生。
104
-       ここまで。
105
-     ここまで。
106
-   ここまで。
107
- ここまで。
108
- #------------------------
109
- 結果データを「{基本パス}/batch/command.txt」に保存。
110
-
1
+ # -----------------------------------------------------
2
+ # なでしこのソースコードから命令一覧テキストを作成する
3
+ #-------------------------------------------------
4
+ # 入力: src/plugin_xxx.js
5
+ # 出力: command.txt
6
+ # -----------------------------------------------------
7
+ !「jsplugin2text.nako3」を取り込む。
8
+
9
+ # 基本パスを取得
10
+ 母艦パス取得してパス抽出して基本パスに代入。
11
+ REPOSパス=基本パスを「../」で相対パス展開。
12
+ CORE="core/src"
13
+
14
+ コアプラグイン一覧は[
15
+ ["plugin_system.mts", 'wnako,cnako,phpnako'],
16
+ ["plugin_csv.mts", 'wnako,cnako'],
17
+ ["plugin_math.mts", 'wnako,cnako'],
18
+ ["plugin_promise.mts", 'wnako']
19
+ ]
20
+
21
+ 基本プラグイン一覧は[
22
+ ['src/plugin_browser.mjs','wnako'],
23
+ ['src/plugin_turtle.mjs', 'wnako'],
24
+ ['src/plugin_node.mts', 'cnako,phpnako'],
25
+ ['src/plugin_httpserver.mts', 'cnako'],
26
+ ['src/plugin_markup.mjs', 'wnako,cnako'],
27
+ ['src/plugin_datetime.mjs', 'wnako,cnako'],
28
+ ['src/plugin_caniuse.mjs', 'wnako,cnako'],
29
+ ['src/plugin_kansuji.mjs', 'wnako,cnako'],
30
+ ['src/plugin_weykturtle3d.mjs', 'wnako'],
31
+ ['src/plugin_webworker.mjs', 'wnako'],
32
+ ]
33
+ 拡張プラグイン一覧は[
34
+ ['nadesiko3-tools/nadesiko3-tools.mjs', 'cnako'],
35
+ ['nadesiko3-server/nadesiko3-server.mjs', 'cnako'],
36
+ ['nadesiko3-sqlite3/nadesiko3-sqlite3.js', 'cnako'],
37
+ ['nadesiko3-htmlparser/nadesiko3-htmlparser.js', 'cnako'],
38
+ ['nadesiko3-websocket/nadesiko3-websocket.js', 'cnako'],
39
+ ['nadesiko3-ml/nadesiko3-ml.js', 'cnako'],
40
+ ['nadesiko3-mecab/nadesiko3-mecab.js', 'cnako'],
41
+ ['nadesiko3-office/nadesiko3-office.js', 'cnako'],
42
+ ['nadesiko3-odbc/src/plugin_odbc.js', 'cnako'],
43
+ ['nadesiko3-mssql/src/plugin_mssql.js', 'cnako'],
44
+ ['nadesiko3-mysql/src/plugin_mysql.js', 'cnako'],
45
+ ['nadesiko3-postgresql/src/plugin_postgresql.js', 'cnako'],
46
+ ['nadesiko3php/src/plugin_php.php', 'phpnako'],
47
+ ]
48
+ # サポートしない
49
+ # 'nadesiko3-firebase/plugin_firebase.js',
50
+ # 'nadesiko3-googlehome/plugin_googlehome.js',
51
+ # 'nadesiko3-sqlite3sync/nadesiko3-sqlite3sync.js', # 利用は非推奨に
52
+ # 'nadesiko3-drone/nadesiko3-drone.js', 'cnako', # ドローン
53
+
54
+ #------------------------
55
+ 結果データ=「」
56
+ SRC_URL=""
57
+ FILE_PATH=""
58
+ #------------------------
59
+ コアプラグイン一覧を反復
60
+   PNAME=対象@0
61
+   カレントプラグイン="{CORE}/{PNAME}"
62
+   FILE_PATH="{基本パス}/{CORE}/{PNAME}"
63
+   # https://github.com/kujirahand/nadesiko3core/blob/main/src/{PNAME}#L119
64
+   SRC_URL="https://github.com/kujirahand/nadesiko3core/blob/main/src/{PNAME}"
65
+   ナコタイプ=対象@1
66
+   パスは「{基本パス}/{カレントプラグイン}」
67
+   パスを「(基本プラグイン,{ナコタイプ})」でプラグイン要約作成
68
+   結果データ=結果データ&それ&改行&改行。
69
+ ここまで
70
+ #------------------------
71
+ 基本プラグイン一覧を反復
72
+   PNAME=対象@0
73
+   カレントプラグイン=対象@0
74
+   ナコタイプ=対象@1
75
+   FILE_PATH="{基本パス}/{PNAME}"
76
+   SRC_URL="https://github.com/kujirahand/nadesiko3/tree/master/{PNAME}"
77
+   パスは「{基本パス}/{カレントプラグイン}」
78
+   パスを「(基本プラグイン,{ナコタイプ})」でプラグイン要約作成
79
+   結果データ=結果データ&それ&改行&改行。
80
+ ここまで
81
+ #------------------------
82
+ 拡張プラグイン一覧を反復
83
+   カレントプラグイン=それ@0
84
+   ナコタイプ=それ@1
85
+   パスは「{REPOSパス}/{カレントプラグイン}」
86
+   FILE_PATH="{REPOSパス}/{カレントプラグイン}"
87
+   SRC_URL="https://github.com/kujirahand/{カレントプラグイン}"
88
+   パスが存在
89
+   もし、そうならば
90
+      # パスを表示。
91
+     EX=「拡張プラグイン」
92
+     もし、ナコタイプ=「phpnako」ならば
93
+      EX=「基本プラグイン」
94
+     ここまで
95
+     パスを「({EX},{ナコタイプ})」でプラグイン要約作成。
96
+     結果データ=結果データ&それ&改行&改行。
97
+   違えば
98
+     「REPORT_ERR」の環境変数取得
99
+     もしそうならば
100
+       OS=OS取得
101
+       もし、OS="darwin"ならば
102
+         「[エラー]ファイルが存在しない: {パス}」を表示。
103
+         「ファイルが存在しない:{パス}」のエラー発生。
104
+       ここまで。
105
+     ここまで。
106
+   ここまで。
107
+ ここまで。
108
+ #------------------------
109
+ 結果データを「{基本パス}/batch/command.txt」に保存。
110
+
@@ -1,11 +1,11 @@
1
- # 予約語の定義
2
- PATH=母艦パスを「../src/nako_reserved_words.mjs」で相対パス展開。
3
- A=[]
4
- PATHを開いて、改行で区切る。
5
- 反復
6
-   対象を『/^\s+\'(.+?)\'\s*\:/』で正規表現マッチ。
7
-   もし、そうでなければ、続ける。
8
-   N=抽出文字列[0]
9
-   AにNを配列追加。
10
- ここまで。
11
- Aを「, 」で配列結合して表示。
1
+ # 予約語の定義
2
+ PATH=母艦パスを「../src/nako_reserved_words.mjs」で相対パス展開。
3
+ A=[]
4
+ PATHを開いて、改行で区切る。
5
+ 反復
6
+   対象を『/^\s+\'(.+?)\'\s*\:/』で正規表現マッチ。
7
+   もし、そうでなければ、続ける。
8
+   N=抽出文字列[0]
9
+   AにNを配列追加。
10
+ ここまで。
11
+ Aを「, 」で配列結合して表示。
@@ -1,46 +1,46 @@
1
- # ---------------------------------------------------------
2
- # なでしこ3のバージョンをkonawiki2/3/nako3storageに反映
3
- # ---------------------------------------------------------
4
- 前提条件=「Gitリポジトリを以下のように設定してください。
5
- # /path/to/nadesiko3
6
- # /path/to/konawiki2
7
- # /path/to/konawiki3
8
- # /path/to/nako3storage
9
- 」。
10
- # ---------------------------------------------------------
11
- 母艦パス取得してパス抽出して基本パスに代入。
12
- DIR_REPO = (基本パスからパス抽出)
13
- VER=ナデシコバージョン。
14
- VER_PHP=「<?php
15
- define('NAKO_DEFAULT_VERSION', '{VER}');
16
-
17
-
18
- # ---------------------------------------------------------
19
- # リポジトリごとに処理
20
- ファイル一覧=[
21
- "/nako3storage/nako_version.inc.php",
22
- "/konawiki2/kona-engine/plugins/nako_version.inc.php",
23
- "/konawiki3/kona3engine/plugins/nako3/nako_version.inc.php"
24
- ]
25
- ファイル一覧を反復
26
- パス=DIR_REPO&対象
27
- 確認パス=(パスからパス抽出)。
28
- もし、確認パスが存在しなければ
29
-   「[ERROR] レポジトリ: {対象}」を表示。
30
-   前提条件を表示。終わり。
31
- ここまで。
32
- # コピー
33
- VER_PHPをパスに保存。
34
- 「=== === === ===」を表示;
35
- 「[OK] {パス}」を表示。
36
- # コミットする
37
- MSG="updated nako3 ver."&ナデシコバージョン;
38
- CMD=「cd "{確認パス}" && git commit -a -m "{MSG}" && git push」
39
- エラー監視
40
-    CMDを起動待機。
41
-  エラーならば
42
-    「コミットできません: {確認パス}」を表示。
43
-  ここまで。
44
- ここまで。
45
-
46
-
1
+ # ---------------------------------------------------------
2
+ # なでしこ3のバージョンをkonawiki2/3/nako3storageに反映
3
+ # ---------------------------------------------------------
4
+ 前提条件=「Gitリポジトリを以下のように設定してください。
5
+ # /path/to/nadesiko3
6
+ # /path/to/konawiki2
7
+ # /path/to/konawiki3
8
+ # /path/to/nako3storage
9
+ 」。
10
+ # ---------------------------------------------------------
11
+ 母艦パス取得してパス抽出して基本パスに代入。
12
+ DIR_REPO = (基本パスからパス抽出)
13
+ VER=ナデシコバージョン。
14
+ VER_PHP=「<?php
15
+ define('NAKO_DEFAULT_VERSION', '{VER}');
16
+
17
+
18
+ # ---------------------------------------------------------
19
+ # リポジトリごとに処理
20
+ ファイル一覧=[
21
+ "/nako3storage/nako_version.inc.php",
22
+ "/konawiki2/kona-engine/plugins/nako_version.inc.php",
23
+ "/konawiki3/kona3engine/plugins/nako3/nako_version.inc.php"
24
+ ]
25
+ ファイル一覧を反復
26
+ パス=DIR_REPO&対象
27
+ 確認パス=(パスからパス抽出)。
28
+ もし、確認パスが存在しなければ
29
+   「[ERROR] レポジトリ: {対象}」を表示。
30
+   前提条件を表示。終わり。
31
+ ここまで。
32
+ # コピー
33
+ VER_PHPをパスに保存。
34
+ 「=== === === ===」を表示;
35
+ 「[OK] {パス}」を表示。
36
+ # コミットする
37
+ MSG="updated nako3 ver."&ナデシコバージョン;
38
+ CMD=「cd "{確認パス}" && git commit -a -m "{MSG}" && git push」
39
+ エラー監視
40
+    CMDを起動待機。
41
+  エラーならば
42
+    「コミットできません: {確認パス}」を表示。
43
+  ここまで。
44
+ ここまで。
45
+
46
+
@@ -1,14 +1,14 @@
1
- const a = require('caniuse-db/data.json').agents
2
- const e = {}
3
- const t = {}
4
- for (let key in a) {
5
- e[key] = a[key]['browser'];
6
- let type = a[key]['type'];
7
- if (t[type] === undefined) {
8
- t[type] = [];
9
- }
10
- t[type].push(key)
11
- }
12
- console.log(JSON.stringify(e))
13
- // console.log(JSON.stringify(t))
14
- // console.log(JSON.stringify(a))
1
+ const a = require('caniuse-db/data.json').agents
2
+ const e = {}
3
+ const t = {}
4
+ for (let key in a) {
5
+ e[key] = a[key]['browser'];
6
+ let type = a[key]['type'];
7
+ if (t[type] === undefined) {
8
+ t[type] = [];
9
+ }
10
+ t[type].push(key)
11
+ }
12
+ console.log(JSON.stringify(e))
13
+ // console.log(JSON.stringify(t))
14
+ // console.log(JSON.stringify(a))
@@ -1,21 +1,21 @@
1
- # src/turtle64.png を src/image_turtle64.mjs に変換する
2
-
3
- SRC_DIR = 母艦パスを「../src」で相対パス展開。
4
- SRC_DIRを表示。
5
-
6
- 「turtle64.png」をJS変換処理
7
- 「turtle-panda.png」をJS変換処理
8
- 「turtle-elephant.png」をJS変換処理
9
-
10
- ●(Fを)JS変換処理
11
-   BIN =「{SRC_DIR}/{F}」をバイナリ読む。
12
-   B64 = BINをBASE64エンコード
13
-   FNAME=Fの「.png」を「.mjs」に置換。
14
-   FULLNAME=「{SRC_DIR}/image_{FNAME}」
15
-   「
16
- // file:{F}
17
- export default 'data:image/png;base64,{B64}'
18
- //
19
- 」をFULLNAMEへ保存。
20
- FULLNAMEを表示。
21
- ここまで。
1
+ # src/turtle64.png を src/image_turtle64.mjs に変換する
2
+
3
+ SRC_DIR = 母艦パスを「../src」で相対パス展開。
4
+ SRC_DIRを表示。
5
+
6
+ 「turtle64.png」をJS変換処理
7
+ 「turtle-panda.png」をJS変換処理
8
+ 「turtle-elephant.png」をJS変換処理
9
+
10
+ ●(Fを)JS変換処理
11
+   BIN =「{SRC_DIR}/{F}」をバイナリ読む。
12
+   B64 = BINをBASE64エンコード
13
+   FNAME=Fの「.png」を「.mjs」に置換。
14
+   FULLNAME=「{SRC_DIR}/image_{FNAME}」
15
+   「
16
+ // file:{F}
17
+ export default 'data:image/png;base64,{B64}'
18
+ //
19
+ 」をFULLNAMEへ保存。
20
+ FULLNAMEを表示。
21
+ ここまで。
package/bin/cnako3 CHANGED
@@ -1,10 +1,10 @@
1
- #!/bin/bash
2
- ROOT_DIR=$(
3
- cd $(dirname "$0")
4
- cd ..
5
- pwd
6
- )
7
- SRC_DIR=$ROOT_DIR/src
8
- NAKO_JS=$SRC_DIR/cnako3.mjs
9
-
10
- /usr/bin/env node "$NAKO_JS" $*
1
+ #!/bin/bash
2
+ ROOT_DIR=$(
3
+ cd $(dirname "$0")
4
+ cd ..
5
+ pwd
6
+ )
7
+ SRC_DIR=$ROOT_DIR/src
8
+ NAKO_JS=$SRC_DIR/cnako3.mjs
9
+
10
+ /usr/bin/env node "$NAKO_JS" $*
package/core/LICENSE CHANGED
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2022 kujirahand
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2022 kujirahand
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/core/README.md CHANGED
@@ -1,66 +1,66 @@
1
- # 日本語プログラミング言語「なでしこ3」言語エンジン
2
-
3
- [![MIT License](https://img.shields.io/badge/license-MIT-blue.svg?style=flat)](LICENSE)
4
- [![npm version](https://badge.fury.io/js/nadesiko3core.svg)](https://www.npmjs.com/package/nadesiko3core)
5
-
6
- ## 「なでしこ3」とは
7
-
8
- 「なでしこ3」とは、日本語のプログラミング言語です。HTML5/JavaScript(TypeScript)をベースとしているので、PC/スマホ/タブレットなど、さまざまな環境で動作させることができます。日本語プログラミング言語は、読みやすく理解しやすいのが特徴で、初めてでも楽しくプログラミングを覚えることができます。
9
-
10
- - [なでしこ3開発リポジトリ - nadesiko3](https://github.com/kujirahand/nadesiko3)
11
- - [なでしこのWebサイト](https://nadesi.com/top/)
12
-
13
- ## 本リポジトリについて
14
-
15
- 本リポジトリは、なでしこ3の言語エンジンのみを取り出したものです。最小限の構成となっています。
16
- 言語機能と最小限のプラグインのみを備えています。
17
-
18
- - [なでしこの基本文法(外部サイト)](https://nadesi.com/v3/doc/index.php?%E6%96%87%E6%B3%95)
19
-
20
- 最小限のプラグイン構成
21
-
22
- - [plugin_system](./src/plugin_system.mts) --- 言語機能の補助など基本的な関数群
23
- - [plugin_math](./src/plugin_math.mts) --- 数学関数群
24
- - [plugin_csv](./src/plugin_csv.mts)--- CSV処理のための関数群
25
- - [plugin_promise](./src/plugin_promise.mts) --- プロミス機能を実現するための関数群
26
- - [plugin_test](./src/plugin_test.mts) --- テストを記述するための関数群
27
-
28
- # 本ライブラリの使い方
29
-
30
- 例えば、`npm install nadesiko3core`でなでしこ3言語エンジンをインストールしたら、以下のプログラムを記述します。
31
- `hoge.mjs`という名前で保存します。そして、以下のようなプログラムを記述します。
32
-
33
- ```js
34
- import core from 'nadesiko3core'
35
- const com = new core.NakoCompiler()
36
- const g = com.run('1 + 2 * 3を表示') // ← ここになでしこのプログラム
37
- console.log(g.log) // ← 「表示」した内容がlogに入っている
38
- ```
39
-
40
- プログラムを実行するには、`node hoge.mjs`と記述すれば実行できます。
41
-
42
- ## コマンドラインから実行したい場合
43
-
44
- コマンドラインからなでしこのプログラムを実行したい場合には、[nadesiko3](https://github.com/kujirahand/nadesiko3)リポジトリを利用してください。nadesiko3リポジトリには、コマンドライン版のなでしこ(cnako3)が含まれています。
45
-
46
- なお、本リポジトリにも、[簡易版のコマンドラインツール(snako)](/command/snako.mts)を収録しています。以下は簡単な使い方です。
47
-
48
- ```
49
- # ファイル sample/hello.nako3 を実行
50
- $ node command/snako.mjs sample/hello.nako3
51
-
52
- # その場でコードを実行
53
- $ node command/snako.mjs -e "1+2を表示"
54
- ```
55
-
56
- ### 簡易コマンドラインをグローバルインストールして使う場合
57
-
58
- 簡易コマンドライン(snako)を手軽に利用したい場合は、次のように実行します。
59
-
60
- ```
61
- $ npm install -g nadesiko3core
62
- $ snako -e "1+2を表示"
63
- $ snako nadesiko3core/sample/hello.nako3
64
- ```
65
-
66
-
1
+ # 日本語プログラミング言語「なでしこ3」言語エンジン
2
+
3
+ [![MIT License](https://img.shields.io/badge/license-MIT-blue.svg?style=flat)](LICENSE)
4
+ [![npm version](https://badge.fury.io/js/nadesiko3core.svg)](https://www.npmjs.com/package/nadesiko3core)
5
+
6
+ ## 「なでしこ3」とは
7
+
8
+ 「なでしこ3」とは、日本語のプログラミング言語です。HTML5/JavaScript(TypeScript)をベースとしているので、PC/スマホ/タブレットなど、さまざまな環境で動作させることができます。日本語プログラミング言語は、読みやすく理解しやすいのが特徴で、初めてでも楽しくプログラミングを覚えることができます。
9
+
10
+ - [なでしこ3開発リポジトリ - nadesiko3](https://github.com/kujirahand/nadesiko3)
11
+ - [なでしこのWebサイト](https://nadesi.com/top/)
12
+
13
+ ## 本リポジトリについて
14
+
15
+ 本リポジトリは、なでしこ3の言語エンジンのみを取り出したものです。最小限の構成となっています。
16
+ 言語機能と最小限のプラグインのみを備えています。
17
+
18
+ - [なでしこの基本文法(外部サイト)](https://nadesi.com/v3/doc/index.php?%E6%96%87%E6%B3%95)
19
+
20
+ 最小限のプラグイン構成
21
+
22
+ - [plugin_system](./src/plugin_system.mts) --- 言語機能の補助など基本的な関数群
23
+ - [plugin_math](./src/plugin_math.mts) --- 数学関数群
24
+ - [plugin_csv](./src/plugin_csv.mts)--- CSV処理のための関数群
25
+ - [plugin_promise](./src/plugin_promise.mts) --- プロミス機能を実現するための関数群
26
+ - [plugin_test](./src/plugin_test.mts) --- テストを記述するための関数群
27
+
28
+ # 本ライブラリの使い方
29
+
30
+ 例えば、`npm install nadesiko3core`でなでしこ3言語エンジンをインストールしたら、以下のプログラムを記述します。
31
+ `hoge.mjs`という名前で保存します。そして、以下のようなプログラムを記述します。
32
+
33
+ ```js
34
+ import core from 'nadesiko3core'
35
+ const com = new core.NakoCompiler()
36
+ const g = com.run('1 + 2 * 3を表示') // ← ここになでしこのプログラム
37
+ console.log(g.log) // ← 「表示」した内容がlogに入っている
38
+ ```
39
+
40
+ プログラムを実行するには、`node hoge.mjs`と記述すれば実行できます。
41
+
42
+ ## コマンドラインから実行したい場合
43
+
44
+ コマンドラインからなでしこのプログラムを実行したい場合には、[nadesiko3](https://github.com/kujirahand/nadesiko3)リポジトリを利用してください。nadesiko3リポジトリには、コマンドライン版のなでしこ(cnako3)が含まれています。
45
+
46
+ なお、本リポジトリにも、[簡易版のコマンドラインツール(snako)](/command/snako.mts)を収録しています。以下は簡単な使い方です。
47
+
48
+ ```
49
+ # ファイル sample/hello.nako3 を実行
50
+ $ node command/snako.mjs sample/hello.nako3
51
+
52
+ # その場でコードを実行
53
+ $ node command/snako.mjs -e "1+2を表示"
54
+ ```
55
+
56
+ ### 簡易コマンドラインをグローバルインストールして使う場合
57
+
58
+ 簡易コマンドライン(snako)を手軽に利用したい場合は、次のように実行します。
59
+
60
+ ```
61
+ $ npm install -g nadesiko3core
62
+ $ snako -e "1+2を表示"
63
+ $ snako nadesiko3core/sample/hello.nako3
64
+ ```
65
+
66
+