nadesiko3 3.4.5 → 3.4.9
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.
- package/README.md +5 -1
- package/batch/command.txt +109 -109
- package/core/core.code-workspace +8 -0
- package/core/deno/plugin_snako_deno.ts +109 -0
- package/core/deno/snako.ts +116 -0
- package/core/deno_build_ver.sh +4 -0
- package/core/deno_hello.sh +7 -0
- package/core/index.mjs +8 -2
- package/core/index.mts +8 -2
- package/core/package-lock.json +518 -2617
- package/core/package.json +3 -3
- package/core/sample/hello2.nako3 +2 -0
- package/core/src/nako_core_version.mjs +2 -2
- package/core/src/nako_core_version.mts +2 -2
- package/core/src/nako_gen.mjs +3 -2
- package/core/src/nako_gen.mts +3 -2
- package/core/src/nako_parser3.mjs +56 -36
- package/core/src/nako_parser3.mts +55 -39
- package/core/src/nako_parser_base.mjs +1 -0
- package/core/src/nako_parser_base.mts +2 -0
- package/core/src/nako_types.mts +4 -3
- package/core/src/plugin_system.mjs +2 -1
- package/core/src/plugin_system.mts +2 -1
- package/core/test/func_call.mjs +5 -2
- package/core/test/plugin_system_test.mjs +6 -0
- package/core/tsconfig.json +3 -2
- package/doc/SETUP.md +7 -5
- package/doc/about.md +1 -2
- package/doc/files.md +0 -1
- package/doc/plugins.md +0 -1
- package/doc/release.md +2 -2
- package/doc/textlint.md +4 -1
- package/package.json +1 -1
- package/release/_hash.txt +16 -16
- package/release/_script-tags.txt +14 -14
- package/release/nako_gen_async.js +1 -1
- package/release/nako_gen_async.js.map +1 -1
- package/release/stats.json +1 -1
- package/release/version.js +1 -1
- package/release/version.js.map +1 -1
- package/release/wnako3.js +1 -1
- package/release/wnako3.js.map +1 -1
- package/release/wnako3webworker.js +1 -1
- package/release/wnako3webworker.js.map +1 -1
- package/src/nako_version.mjs +2 -2
- package/src/nako_version.mts +2 -2
package/README.md
CHANGED
|
@@ -122,7 +122,8 @@ npm run test:all
|
|
|
122
122
|
|
|
123
123
|
## なでしこの開発履歴
|
|
124
124
|
|
|
125
|
-
「なでしこ3」の開発は2017
|
|
125
|
+
「なでしこ3」の開発は2017年に始まり、以後コツコツとバージョンアップを続けています。
|
|
126
|
+
「誰でも簡単プログラマー」の目標を実現するために、これからも頑張ります。
|
|
126
127
|
|
|
127
128
|
- (2022-05-19) v3.3.18でJavaScriptからTypeScriptへ変更。言語コアを別リポジトリに移動
|
|
128
129
|
- (2022-04-20) v3.3.2を公開(モジュール構造をCommonJS→ESModuleへ変更/asyncFnの実装)
|
|
@@ -158,6 +159,9 @@ npm run test:all
|
|
|
158
159
|
- [nadesiko3webkit - なでしこ3軽量配布キット(webkit版)](https://github.com/kujirahand/nadesiko3webkit)
|
|
159
160
|
- [nadesiko3electron - なでしこ3フル配布キット(electron版)](https://github.com/kujirahand/nadesiko3electron)
|
|
160
161
|
- [nadesiko3win32 - なでしこ3(コンソール版)のWindows配布パッケージ](https://github.com/kujirahand/nadesiko3win32/releases)
|
|
162
|
+
- サーバーサイドJavaScriptエンジン用の実装
|
|
163
|
+
- [nadesiko3(Node.js)](https://github.com/kujirahand/nadesiko3)
|
|
164
|
+
- [nadesiko3(Deno)](https://github.com/kujirahand/nadesiko3deno)
|
|
161
165
|
- 実験的に別言語で実装したなでしこ3
|
|
162
166
|
- [nadesiko3php - なでしこ3PHP](https://github.com/kujirahand/nadesiko3php)
|
|
163
167
|
- [nadesiko3rust - なでしこ3Rust](https://github.com/kujirahand/nadesiko3rust)
|
package/batch/command.txt
CHANGED
|
@@ -181,124 +181,124 @@
|
|
|
181
181
|
| 関数 | 数字判定 | Sを/Sが | 文字列Sの1文字目が数字か判定 | すうじかはんてい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1494
|
|
182
182
|
| 関数 | 数列判定 | Sを/Sが | 文字列S全部が数字か判定 | すうれつかはんてい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1503
|
|
183
183
|
●配列操作
|
|
184
|
-
| 関数 | 配列結合 | AをSで | 配列Aを文字列Sでつなげて文字列で返す | はいれつけつごう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
185
|
-
| 関数 | 配列検索 | AのSを/Aから | 配列Aから文字列Sを探してインデックス番号(0起点)を返す。見つからなければ-1を返す。 | はいれつけんさく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
186
|
-
| 関数 | 配列要素数 | Aの | 配列Aの要素数を返す | はいれつようそすう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
187
|
-
| 関数 | 要素数 | Aの | 配列Aの要素数を返す | ようそすう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
188
|
-
| 関数 | 配列挿入 | AのIにSを/Iへ | 配列AのI番目(0起点)に要素Sを追加して返す(v1非互換) | はいれつそうにゅう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
189
|
-
| 関数 | 配列一括挿入 | AのIにBを/Iへ | 配列AのI番目(0起点)に配列bを追加して返す(v1非互換) | はいれついっかつそうにゅう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
190
|
-
| 関数 | 配列ソート | Aの/Aを | 配列Aをソートして返す(A自体を変更) | はいれつそーと | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
191
|
-
| 関数 | 配列数値ソート | Aの/Aを | 配列Aをソートして返す(A自体を変更) | はいれつすうちそーと | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
192
|
-
| 関数 | 配列カスタムソート | FでAの/Aを | 関数Fで配列Aをソートして返す(引数A自体を変更) | はいれつかすたむそーと | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
193
|
-
| 関数 | 配列逆順 | Aの/Aを | 配列Aを逆にして返す。Aを書き換える(A自体を変更)。 | はいれつぎゃくじゅん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
194
|
-
| 関数 | 配列シャッフル | Aの/Aを | 配列Aをシャッフルして返す。Aを書き換える | はいれつしゃっふる | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
195
|
-
| 関数 | 配列削除 | AのIを/Aから | 配列AのI番目(0起点)の要素を削除して返す。Aの内容を書き換える。辞書型変数ならキーIを削除する。 | はいれつさくじょ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
196
|
-
| 関数 | 配列切取 | AのIを/Aから | 配列AのI番目(0起点)の要素を切り取って返す。Aの内容を書き換える。辞書型変数ならキーIを削除する。 | はいれつきりとる | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
197
|
-
| 関数 | 配列取出 | AのIからCNTを | 配列AのI番目(0起点)からCNT個の要素を取り出して返す。Aの内容を書き換える | はいれつとりだし | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
198
|
-
| 関数 | 配列ポップ | Aの/Aから | 配列Aの末尾を取り出して返す。Aの内容を書き換える。 | はいれつぽっぷ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
199
|
-
| 関数 | 配列プッシュ | AにBを/Aへ | 配列Aの末尾にNを追加。Aの内容を書き換える。(『配列追加』と同じ) | はいれつぷっしゅ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
200
|
-
| 関数 | 配列追加 | AにBを/Aへ | 配列Aの末尾にBを追加して返す。Aの内容を書き換える。 | はいれつついか | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
201
|
-
| 関数 | 配列複製 | Aを | 配列Aを複製して返す。 | はいれつふくせい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
202
|
-
| 関数 | 配列足 | AにBを/Aへ/Aと | 配列Aに配列Bを足し合わせて返す。 | はいれつたす | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
203
|
-
| 関数 | 配列最大値 | Aの | 配列Aの値の最大値を調べて返す。 | はいれつさいだいち | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
204
|
-
| 関数 | 配列最小値 | Aの | 配列Aの値の最小値を調べて返す。 | はいれつさいしょうち | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
205
|
-
| 関数 | 配列合計 | Aの | 配列Aの値を全て足して返す。配列の各要素を数値に変換して計算する。数値に変換できない文字列は0になる。 | はいれつごうけい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
206
|
-
| 関数 | 配列入替 | AのIとJを | 配列Aの(0から数えて)I番目とJ番目の要素を入れ替えて返す。Aの内容を書き換える。 | はいれついれかえ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
207
|
-
| 関数 | 配列連番作成 | AからBまでの/Bまで/Bの | AからBまでの連番配列を生成して返す。 | はいれつれんばんさくせい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
208
|
-
| 関数 | 配列要素作成 | AをBだけ | 値AをB個持つ配列を生成して返す。 | はいれつようそさくせい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
209
|
-
| 関数 | 配列関数適用 | FをAへ/Aに | 引数を1つ持つ関数Fを、配列Aの全要素に適用した、新しい配列を返す。 | はいれつかんすうてきよう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
210
|
-
| 関数 | 配列マップ | FをAへ/Aに | 引数を1つ持つ関数Fを、配列Aの全要素に適用した、新しい配列を返す。(『配列関数適用』と同じ) | はいれつまっぷ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
211
|
-
| 関数 | 配列フィルタ | FでAを/FのAについて | 引数を1つ持ち真偽を返す関数Fを利用して、配列Aの要素をフィルタして、新しい配列として返す。 | はいれつふぃるた | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
184
|
+
| 関数 | 配列結合 | AをSで | 配列Aを文字列Sでつなげて文字列で返す | はいれつけつごう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1514
|
|
185
|
+
| 関数 | 配列検索 | AのSを/Aから | 配列Aから文字列Sを探してインデックス番号(0起点)を返す。見つからなければ-1を返す。 | はいれつけんさく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1526
|
|
186
|
+
| 関数 | 配列要素数 | Aの | 配列Aの要素数を返す | はいれつようそすう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1536
|
|
187
|
+
| 関数 | 要素数 | Aの | 配列Aの要素数を返す | ようそすう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1548
|
|
188
|
+
| 関数 | 配列挿入 | AのIにSを/Iへ | 配列AのI番目(0起点)に要素Sを追加して返す(v1非互換) | はいれつそうにゅう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1556
|
|
189
|
+
| 関数 | 配列一括挿入 | AのIにBを/Iへ | 配列AのI番目(0起点)に配列bを追加して返す(v1非互換) | はいれついっかつそうにゅう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1566
|
|
190
|
+
| 関数 | 配列ソート | Aの/Aを | 配列Aをソートして返す(A自体を変更) | はいれつそーと | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1579
|
|
191
|
+
| 関数 | 配列数値ソート | Aの/Aを | 配列Aをソートして返す(A自体を変更) | はいれつすうちそーと | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1589
|
|
192
|
+
| 関数 | 配列カスタムソート | FでAの/Aを | 関数Fで配列Aをソートして返す(引数A自体を変更) | はいれつかすたむそーと | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1604
|
|
193
|
+
| 関数 | 配列逆順 | Aの/Aを | 配列Aを逆にして返す。Aを書き換える(A自体を変更)。 | はいれつぎゃくじゅん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1619
|
|
194
|
+
| 関数 | 配列シャッフル | Aの/Aを | 配列Aをシャッフルして返す。Aを書き換える | はいれつしゃっふる | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1628
|
|
195
|
+
| 関数 | 配列削除 | AのIを/Aから | 配列AのI番目(0起点)の要素を削除して返す。Aの内容を書き換える。辞書型変数ならキーIを削除する。 | はいれつさくじょ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1645
|
|
196
|
+
| 関数 | 配列切取 | AのIを/Aから | 配列AのI番目(0起点)の要素を切り取って返す。Aの内容を書き換える。辞書型変数ならキーIを削除する。 | はいれつきりとる | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1653
|
|
197
|
+
| 関数 | 配列取出 | AのIからCNTを | 配列AのI番目(0起点)からCNT個の要素を取り出して返す。Aの内容を書き換える | はいれつとりだし | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1676
|
|
198
|
+
| 関数 | 配列ポップ | Aの/Aから | 配列Aの末尾を取り出して返す。Aの内容を書き換える。 | はいれつぽっぷ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1685
|
|
199
|
+
| 関数 | 配列プッシュ | AにBを/Aへ | 配列Aの末尾にNを追加。Aの内容を書き換える。(『配列追加』と同じ) | はいれつぷっしゅ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1694
|
|
200
|
+
| 関数 | 配列追加 | AにBを/Aへ | 配列Aの末尾にBを追加して返す。Aの内容を書き換える。 | はいれつついか | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1702
|
|
201
|
+
| 関数 | 配列複製 | Aを | 配列Aを複製して返す。 | はいれつふくせい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1714
|
|
202
|
+
| 関数 | 配列足 | AにBを/Aへ/Aと | 配列Aに配列Bを足し合わせて返す。 | はいれつたす | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1722
|
|
203
|
+
| 関数 | 配列最大値 | Aの | 配列Aの値の最大値を調べて返す。 | はいれつさいだいち | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1733
|
|
204
|
+
| 関数 | 配列最小値 | Aの | 配列Aの値の最小値を調べて返す。 | はいれつさいしょうち | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1741
|
|
205
|
+
| 関数 | 配列合計 | Aの | 配列Aの値を全て足して返す。配列の各要素を数値に変換して計算する。数値に変換できない文字列は0になる。 | はいれつごうけい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1749
|
|
206
|
+
| 関数 | 配列入替 | AのIとJを | 配列Aの(0から数えて)I番目とJ番目の要素を入れ替えて返す。Aの内容を書き換える。 | はいれついれかえ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1766
|
|
207
|
+
| 関数 | 配列連番作成 | AからBまでの/Bまで/Bの | AからBまでの連番配列を生成して返す。 | はいれつれんばんさくせい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1780
|
|
208
|
+
| 関数 | 配列要素作成 | AをBだけ | 値AをB個持つ配列を生成して返す。 | はいれつようそさくせい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1792
|
|
209
|
+
| 関数 | 配列関数適用 | FをAへ/Aに | 引数を1つ持つ関数Fを、配列Aの全要素に適用した、新しい配列を返す。 | はいれつかんすうてきよう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1804
|
|
210
|
+
| 関数 | 配列マップ | FをAへ/Aに | 引数を1つ持つ関数Fを、配列Aの全要素に適用した、新しい配列を返す。(『配列関数適用』と同じ) | はいれつまっぷ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1818
|
|
211
|
+
| 関数 | 配列フィルタ | FでAを/FのAについて | 引数を1つ持ち真偽を返す関数Fを利用して、配列Aの要素をフィルタして、新しい配列として返す。 | はいれつふぃるた | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1826
|
|
212
212
|
●二次元配列処理
|
|
213
|
-
| 関数 | 表ソート | AのNOを | 二次元配列AでB列目(0起点)(あるいはキー名)をキーに文字列順にソートする。Aの内容を書き換える。 | ひょうそーと | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
214
|
-
| 関数 | 表数値ソート | AのNOを | 二次元配列AでB列目(0起点)(あるいはキー名)をキーに数値順にソートする。Aの内容を書き換える。 | ひょうすうちそーと | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
215
|
-
| 関数 | 表ピックアップ | AのNOからSを/Sで | 配列Aの列番号B(0起点)(あるいはキー名)で検索文字列Sを含む行を返す | ひょうぴっくあっぷ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
216
|
-
| 関数 | 表完全一致ピックアップ | AのNOからSを/Sで | 配列Aの列番号B(0起点)(あるいはキー名)で検索文字列Sと一致する行を返す | ひょうぴっくあっぷ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
217
|
-
| 関数 | 表検索 | AのCOLでROWからSを/COLに | 二次元配列AでCOL列目(0起点)からキーSを含む行をROW行目から検索して何行目にあるか返す。見つからなければ-1を返す。 | ひょうけんさく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
218
|
-
| 関数 | 表列数 | Aの | 二次元配列Aの列数を調べて返す。 | ひょうれつすう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
219
|
-
| 関数 | 表行数 | Aの | 二次元配列Aの行数を調べて返す。 | ひょうぎょうすう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
220
|
-
| 関数 | 表行列交換 | Aの/Aを | 二次元配列Aの行と列を交換して返す。 | ひょうぎょうれつこうかん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
221
|
-
| 関数 | 表右回転 | Aの/Aを | 二次元配列Aを90度回転して返す。 | ひょうみぎかいてん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
222
|
-
| 関数 | 表重複削除 | AのIを/Iで | 二次元配列AのI列目にある重複項目を削除して返す。 | ひょうじゅうふくさくじょ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
223
|
-
| 関数 | 表列取得 | AのIを | 二次元配列AのI列目を返す。 | ひょうれつしゅとく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
224
|
-
| 関数 | 表列挿入 | AのIにSを/Iへ | 二次元配列Aの(0から数えて)I列目に配列Sを挿入して返す | ひょうれつそうにゅう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
225
|
-
| 関数 | 表列削除 | AのIを | 二次元配列Aの(0から数えて)I列目削除して返す | ひょうれつそうにゅう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
226
|
-
| 関数 | 表列合計 | AのIを/Iで | 二次元配列Aの(0から数えて)I列目を合計して返す。 | ひょうれつごうけい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
227
|
-
| 関数 | 表曖昧検索 | AのROWからCOLでSを | 二次元配列AのROW行目からCOL列目(0起点)で正規表現Sにマッチする行を検索して何行目にあるか返す。見つからなければ-1を返す。(v1非互換) | ひょうれつあいまいけんさく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
228
|
-
| 関数 | 表正規表現ピックアップ | AのCOLからSを/Aで | 二次元配列AでI列目(0起点)から正規表現パターンSにマッチする行をピックアップして返す。 | ひょうせいきひょうげんぴっくあっぷ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
213
|
+
| 関数 | 表ソート | AのNOを | 二次元配列AでB列目(0起点)(あるいはキー名)をキーに文字列順にソートする。Aの内容を書き換える。 | ひょうそーと | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1841
|
|
214
|
+
| 関数 | 表数値ソート | AのNOを | 二次元配列AでB列目(0起点)(あるいはキー名)をキーに数値順にソートする。Aの内容を書き換える。 | ひょうすうちそーと | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1864
|
|
215
|
+
| 関数 | 表ピックアップ | AのNOからSを/Sで | 配列Aの列番号B(0起点)(あるいはキー名)で検索文字列Sを含む行を返す | ひょうぴっくあっぷ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1880
|
|
216
|
+
| 関数 | 表完全一致ピックアップ | AのNOからSを/Sで | 配列Aの列番号B(0起点)(あるいはキー名)で検索文字列Sと一致する行を返す | ひょうぴっくあっぷ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1889
|
|
217
|
+
| 関数 | 表検索 | AのCOLでROWからSを/COLに | 二次元配列AでCOL列目(0起点)からキーSを含む行をROW行目から検索して何行目にあるか返す。見つからなければ-1を返す。 | ひょうけんさく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1898
|
|
218
|
+
| 関数 | 表列数 | Aの | 二次元配列Aの列数を調べて返す。 | ひょうれつすう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1910
|
|
219
|
+
| 関数 | 表行数 | Aの | 二次元配列Aの行数を調べて返す。 | ひょうぎょうすう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1923
|
|
220
|
+
| 関数 | 表行列交換 | Aの/Aを | 二次元配列Aの行と列を交換して返す。 | ひょうぎょうれつこうかん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1932
|
|
221
|
+
| 関数 | 表右回転 | Aの/Aを | 二次元配列Aを90度回転して返す。 | ひょうみぎかいてん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1951
|
|
222
|
+
| 関数 | 表重複削除 | AのIを/Iで | 二次元配列AのI列目にある重複項目を削除して返す。 | ひょうじゅうふくさくじょ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1970
|
|
223
|
+
| 関数 | 表列取得 | AのIを | 二次元配列AのI列目を返す。 | ひょうれつしゅとく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1988
|
|
224
|
+
| 関数 | 表列挿入 | AのIにSを/Iへ | 二次元配列Aの(0から数えて)I列目に配列Sを挿入して返す | ひょうれつそうにゅう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L1998
|
|
225
|
+
| 関数 | 表列削除 | AのIを | 二次元配列Aの(0から数えて)I列目削除して返す | ひょうれつそうにゅう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2015
|
|
226
|
+
| 関数 | 表列合計 | AのIを/Iで | 二次元配列Aの(0から数えて)I列目を合計して返す。 | ひょうれつごうけい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2030
|
|
227
|
+
| 関数 | 表曖昧検索 | AのROWからCOLでSを | 二次元配列AのROW行目からCOL列目(0起点)で正規表現Sにマッチする行を検索して何行目にあるか返す。見つからなければ-1を返す。(v1非互換) | ひょうれつあいまいけんさく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2041
|
|
228
|
+
| 関数 | 表正規表現ピックアップ | AのCOLからSを/Aで | 二次元配列AでI列目(0起点)から正規表現パターンSにマッチする行をピックアップして返す。 | ひょうせいきひょうげんぴっくあっぷ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2055
|
|
229
229
|
●辞書型変数の操作
|
|
230
|
-
| 関数 | 辞書キー列挙 | Aの | 辞書型変数Aのキーの一覧を配列で返す。 | じしょきーれっきょ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
231
|
-
| 関数 | 辞書キー削除 | AからKEYを/Aの | 辞書型変数AからキーKEYを削除して返す(A自体を変更する)。 | じしょきーさくじょ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
232
|
-
| 関数 | 辞書キー存在 | AのKEYが/Aに | 辞書型変数AのキーKEYが存在するか確認 | じしょきーそんざい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
230
|
+
| 関数 | 辞書キー列挙 | Aの | 辞書型変数Aのキーの一覧を配列で返す。 | じしょきーれっきょ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2071
|
|
231
|
+
| 関数 | 辞書キー削除 | AからKEYを/Aの | 辞書型変数AからキーKEYを削除して返す(A自体を変更する)。 | じしょきーさくじょ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2088
|
|
232
|
+
| 関数 | 辞書キー存在 | AのKEYが/Aに | 辞書型変数AのキーKEYが存在するか確認 | じしょきーそんざい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2100
|
|
233
233
|
●ハッシュ
|
|
234
|
-
| 関数 | ハッシュキー列挙 | Aの | ハッシュAのキー一覧を配列で返す。 | はっしゅきーれっきょ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
235
|
-
| 関数 | ハッシュ内容列挙 | Aの | ハッシュAの内容一覧を配列で返す。 | はっしゅないようれっきょ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
236
|
-
| 関数 | ハッシュキー削除 | AからKEYを/Aの | ハッシュAからキーKEYを削除して返す。 | はっしゅきーさくじょ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
237
|
-
| 関数 | ハッシュキー存在 | AのKEYが/Aに | ハッシュAのキーKEYが存在するか確認 | はっしゅきーそんざい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
234
|
+
| 関数 | ハッシュキー列挙 | Aの | ハッシュAのキー一覧を配列で返す。 | はっしゅきーれっきょ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2109
|
|
235
|
+
| 関数 | ハッシュ内容列挙 | Aの | ハッシュAの内容一覧を配列で返す。 | はっしゅないようれっきょ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2117
|
|
236
|
+
| 関数 | ハッシュキー削除 | AからKEYを/Aの | ハッシュAからキーKEYを削除して返す。 | はっしゅきーさくじょ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2130
|
|
237
|
+
| 関数 | ハッシュキー存在 | AのKEYが/Aに | ハッシュAのキーKEYが存在するか確認 | はっしゅきーそんざい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2138
|
|
238
238
|
●タイマー
|
|
239
|
-
| 関数 | 秒待 | N | N秒の間待機する | びょうまつ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
240
|
-
| 関数 | 秒待機 | N | N秒の間待機する(『秒待』と同じ) | びょうたいき | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
241
|
-
| 関数 | 秒逐次待機 | N | (非推奨) 逐次実行構文にて、N秒の間待機する (廃止予定) | びょうちくじたいき | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
242
|
-
| 関数 | 秒後 | FをN | 無名関数(あるいは、文字列で関数名を指定)FをN秒後に実行する。変数『対象』にタイマーIDを代入する。 | びょうご | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
243
|
-
| 関数 | 秒毎 | FをN | 無名関数(あるいは、文字列で関数名を指定)FをN秒ごとに実行する(『タイマー停止』で停止できる)。変数『対象』にタイマーIDを代入する。 | びょうごと | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
244
|
-
| 関数 | 秒タイマー開始時 | FをN | 無名関数(あるいは、文字列で関数名を指定)FをN秒ごとに実行する(『秒毎』と同じ) | びょうたいまーかいししたとき | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
245
|
-
| 関数 | タイマー停止 | TIMERIDの/TIMERIDで | 『秒毎』『秒後』や『秒タイマー開始』で開始したタイマーを停止する | たいまーていし | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
246
|
-
| 関数 | 全タイマー停止 | | 『秒毎』『秒後』や『秒タイマー開始』で開始したタイマーを全部停止する | ぜんたいまーていし | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
239
|
+
| 関数 | 秒待 | N | N秒の間待機する | びょうまつ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2148
|
|
240
|
+
| 関数 | 秒待機 | N | N秒の間待機する(『秒待』と同じ) | びょうたいき | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2173
|
|
241
|
+
| 関数 | 秒逐次待機 | N | (非推奨) 逐次実行構文にて、N秒の間待機する (廃止予定) | びょうちくじたいき | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2184
|
|
242
|
+
| 関数 | 秒後 | FをN | 無名関数(あるいは、文字列で関数名を指定)FをN秒後に実行する。変数『対象』にタイマーIDを代入する。 | びょうご | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2194
|
|
243
|
+
| 関数 | 秒毎 | FをN | 無名関数(あるいは、文字列で関数名を指定)FをN秒ごとに実行する(『タイマー停止』で停止できる)。変数『対象』にタイマーIDを代入する。 | びょうごと | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2222
|
|
244
|
+
| 関数 | 秒タイマー開始時 | FをN | 無名関数(あるいは、文字列で関数名を指定)FをN秒ごとに実行する(『秒毎』と同じ) | びょうたいまーかいししたとき | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2240
|
|
245
|
+
| 関数 | タイマー停止 | TIMERIDの/TIMERIDで | 『秒毎』『秒後』や『秒タイマー開始』で開始したタイマーを停止する | たいまーていし | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2248
|
|
246
|
+
| 関数 | 全タイマー停止 | | 『秒毎』『秒後』や『秒タイマー開始』で開始したタイマーを全部停止する | ぜんたいまーていし | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2269
|
|
247
247
|
●日時処理(簡易)
|
|
248
|
-
| 定数 | 元号データ | | [{ '元号': '令和', '改元日': '2019/05/01' }, { '元号': '平成', '改元日': '1989/01/08' }, { '元号': '昭和', '改元日': '1926/12/25' }, { '元号': '大正', '改元日': '1912/07/30' }, { '元号': '明治', '改元日': '1868/10/23' }] | げんごうでーた | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
249
|
-
| 関数 | 今 | | 現在時刻を「HH:mm:ss」の形式で返す | いま | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
250
|
-
| 関数 | システム時間 | | 現在のUNIX時間 (UTC(1970/1/1)からの経過秒数) を返す | しすてむじかん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
251
|
-
| 関数 | システム時間ミリ秒 | | 現在のUNIX時間 (UTC(1970/1/1)からの経過秒数) をミリ秒で返す | しすてむじかんみりびょう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
252
|
-
| 関数 | 今日 | | 今日の日付を「YYYY/MM/DD」の形式で返す | きょう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
253
|
-
| 関数 | 明日 | | 明日の日付を「YYYY/MM/DD」の形式で返す | あした | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
254
|
-
| 関数 | 昨日 | | 昨日の日付を「YYYY/MM/DD」の形式で返す | きのう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
255
|
-
| 関数 | 今年 | | 今年が何年かを西暦で返す | ことし | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
256
|
-
| 関数 | 来年 | | 来年が何年かを西暦で返す | らいねん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
257
|
-
| 関数 | 去年 | | 去年が何年かを西暦で返す | きょねん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
258
|
-
| 関数 | 今月 | | 今月が何月かを返す | こんげつ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
259
|
-
| 関数 | 来月 | | 来月が何月かを返す | らいげつ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
260
|
-
| 関数 | 先月 | | 先月が何月かをかえす | せんげつ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
261
|
-
| 関数 | 曜日 | Sの | Sに指定した日付の曜日をで返す。不正な日付の場合は今日の曜日番号を返す。 | ようび | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
262
|
-
| 関数 | 曜日番号取得 | Sの | Sに指定した日付の曜日番号をで返す。不正な日付の場合は今日の曜日番号を返す。(0=日/1=月/2=火/3=水/4=木/5=金/6=土) | ようびばんごうしゅとく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
263
|
-
| 関数 | UNIXTIME変換 | Sの/Sを/Sから | 日時SをUNIX時間 (UTC(1970/1/1)からの経過秒数) に変換して返す(v1非互換) | UNIXTIMEへんかん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
264
|
-
| 関数 | UNIX時間変換 | Sの/Sを/Sから | 日時SをUNIX時間 (UTC(1970/1/1)からの経過秒数) に変換して返す(v1非互換) | UNIXじかんへんかん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
265
|
-
| 関数 | 日時変換 | TMを/TMから | UNIX時間 (UTC(1970/1/1)からの経過秒数) を「YYYY/MM/DD HH:mm:ss」の形式に変換 | にちじへんかん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
266
|
-
| 関数 | 日時書式変換 | TMをFMTで | UNIX時間TM(または日付文字列)を「YYYY/MM/DD HH:mm:ss」または「YY-M-D H:m:s」その他、W:曜日、WWW:曜日英、MMM:月英、ccc:ミリ秒の書式に変換 | にちじしょしきへんかん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
267
|
-
| 関数 | 和暦変換 | Sを | Sを和暦に変換する。Sは明治以降の日付が有効。 | われきへんかん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
268
|
-
| 関数 | 年数差 | AとBの/AからBまでの | 日付AとBの差を年数で求めて返す。A<Bなら正の数、そうでないなら負の数を返す (v1非互換)。 | ねんすうさ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
269
|
-
| 関数 | 月数差 | AとBの/AからBまでの | 日付AとBの差を月数で求めて返す。A<Bなら正の数、そうでないなら負の数を返す (v1非互換)。 | げっすうさ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
270
|
-
| 関数 | 日数差 | AとBの/AからBまでの | 日付AとBの差を日数で求めて返す。A<Bなら正の数、そうでないなら負の数を返す。 | にっすうさ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
271
|
-
| 関数 | 時間差 | AとBの/AからBまでの | 時間AとBの時間の差を求めて返す。A<Bなら正の数、そうでないなら負の数を返す。 | じかんさ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
272
|
-
| 関数 | 分差 | AとBの/AからBまでの | 時間AとBの分数の差を求めて返す。A<Bなら正の数、そうでないなら負の数を返す。 | ふんさ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
273
|
-
| 関数 | 秒差 | AとBの/AからBまでの | 時間AとBの差を秒差で求めて返す。A<Bなら正の数、そうでないなら負の数を返す。 | びょうさ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
274
|
-
| 関数 | 日時差 | AとBのUNITによる/AからBまでの | 日時AとBの差を種類unitで返す。A<Bなら正の数、そうでないなら負の数を返す (v1非互換)。 | にちじさ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
275
|
-
| 関数 | 時間加算 | SにAを | 時間SにAを加えて返す。Aには「(+|-)hh:nn:dd」で指定する。 | じかんかさん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
276
|
-
| 関数 | 日付加算 | SにAを | 日付SにAを加えて返す。Aには「(+|-)yyyy/mm/dd」で指定する。 | ひづけかさん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
277
|
-
| 関数 | 日時加算 | SにAを | 日時SにAを加えて返す。Aは「(+|-)1(年/ヶ月/日/週/時間/分/秒)」のように指定する (v1非互換)。 | にちじかさん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
278
|
-
| 関数 | 時間ミリ秒取得 | | ミリ秒単位の時間を数値で返す。結果は実装に依存する。 | じかんみりびょうしゅとく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
248
|
+
| 定数 | 元号データ | | [{ '元号': '令和', '改元日': '2019/05/01' }, { '元号': '平成', '改元日': '1989/01/08' }, { '元号': '昭和', '改元日': '1926/12/25' }, { '元号': '大正', '改元日': '1912/07/30' }, { '元号': '明治', '改元日': '1868/10/23' }] | げんごうでーた | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2286
|
|
249
|
+
| 関数 | 今 | | 現在時刻を「HH:mm:ss」の形式で返す | いま | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2291
|
|
250
|
+
| 関数 | システム時間 | | 現在のUNIX時間 (UTC(1970/1/1)からの経過秒数) を返す | しすてむじかん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2304
|
|
251
|
+
| 関数 | システム時間ミリ秒 | | 現在のUNIX時間 (UTC(1970/1/1)からの経過秒数) をミリ秒で返す | しすてむじかんみりびょう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2313
|
|
252
|
+
| 関数 | 今日 | | 今日の日付を「YYYY/MM/DD」の形式で返す | きょう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2322
|
|
253
|
+
| 関数 | 明日 | | 明日の日付を「YYYY/MM/DD」の形式で返す | あした | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2330
|
|
254
|
+
| 関数 | 昨日 | | 昨日の日付を「YYYY/MM/DD」の形式で返す | きのう | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2339
|
|
255
|
+
| 関数 | 今年 | | 今年が何年かを西暦で返す | ことし | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2348
|
|
256
|
+
| 関数 | 来年 | | 来年が何年かを西暦で返す | らいねん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2356
|
|
257
|
+
| 関数 | 去年 | | 去年が何年かを西暦で返す | きょねん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2364
|
|
258
|
+
| 関数 | 今月 | | 今月が何月かを返す | こんげつ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2372
|
|
259
|
+
| 関数 | 来月 | | 来月が何月かを返す | らいげつ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2380
|
|
260
|
+
| 関数 | 先月 | | 先月が何月かをかえす | せんげつ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2388
|
|
261
|
+
| 関数 | 曜日 | Sの | Sに指定した日付の曜日をで返す。不正な日付の場合は今日の曜日番号を返す。 | ようび | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2396
|
|
262
|
+
| 関数 | 曜日番号取得 | Sの | Sに指定した日付の曜日番号をで返す。不正な日付の場合は今日の曜日番号を返す。(0=日/1=月/2=火/3=水/4=木/5=金/6=土) | ようびばんごうしゅとく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2405
|
|
263
|
+
| 関数 | UNIXTIME変換 | Sの/Sを/Sから | 日時SをUNIX時間 (UTC(1970/1/1)からの経過秒数) に変換して返す(v1非互換) | UNIXTIMEへんかん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2415
|
|
264
|
+
| 関数 | UNIX時間変換 | Sの/Sを/Sから | 日時SをUNIX時間 (UTC(1970/1/1)からの経過秒数) に変換して返す(v1非互換) | UNIXじかんへんかん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2424
|
|
265
|
+
| 関数 | 日時変換 | TMを/TMから | UNIX時間 (UTC(1970/1/1)からの経過秒数) を「YYYY/MM/DD HH:mm:ss」の形式に変換 | にちじへんかん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2433
|
|
266
|
+
| 関数 | 日時書式変換 | TMをFMTで | UNIX時間TM(または日付文字列)を「YYYY/MM/DD HH:mm:ss」または「YY-M-D H:m:s」その他、W:曜日、WWW:曜日英、MMM:月英、ccc:ミリ秒の書式に変換 | にちじしょしきへんかん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2442
|
|
267
|
+
| 関数 | 和暦変換 | Sを | Sを和暦に変換する。Sは明治以降の日付が有効。 | われきへんかん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2472
|
|
268
|
+
| 関数 | 年数差 | AとBの/AからBまでの | 日付AとBの差を年数で求めて返す。A<Bなら正の数、そうでないなら負の数を返す (v1非互換)。 | ねんすうさ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2492
|
|
269
|
+
| 関数 | 月数差 | AとBの/AからBまでの | 日付AとBの差を月数で求めて返す。A<Bなら正の数、そうでないなら負の数を返す (v1非互換)。 | げっすうさ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2502
|
|
270
|
+
| 関数 | 日数差 | AとBの/AからBまでの | 日付AとBの差を日数で求めて返す。A<Bなら正の数、そうでないなら負の数を返す。 | にっすうさ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2513
|
|
271
|
+
| 関数 | 時間差 | AとBの/AからBまでの | 時間AとBの時間の差を求めて返す。A<Bなら正の数、そうでないなら負の数を返す。 | じかんさ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2524
|
|
272
|
+
| 関数 | 分差 | AとBの/AからBまでの | 時間AとBの分数の差を求めて返す。A<Bなら正の数、そうでないなら負の数を返す。 | ふんさ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2535
|
|
273
|
+
| 関数 | 秒差 | AとBの/AからBまでの | 時間AとBの差を秒差で求めて返す。A<Bなら正の数、そうでないなら負の数を返す。 | びょうさ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2546
|
|
274
|
+
| 関数 | 日時差 | AとBのUNITによる/AからBまでの | 日時AとBの差を種類unitで返す。A<Bなら正の数、そうでないなら負の数を返す (v1非互換)。 | にちじさ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2557
|
|
275
|
+
| 関数 | 時間加算 | SにAを | 時間SにAを加えて返す。Aには「(+|-)hh:nn:dd」で指定する。 | じかんかさん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2573
|
|
276
|
+
| 関数 | 日付加算 | SにAを | 日付SにAを加えて返す。Aには「(+|-)yyyy/mm/dd」で指定する。 | ひづけかさん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2592
|
|
277
|
+
| 関数 | 日時加算 | SにAを | 日時SにAを加えて返す。Aは「(+|-)1(年/ヶ月/日/週/時間/分/秒)」のように指定する (v1非互換)。 | にちじかさん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2614
|
|
278
|
+
| 関数 | 時間ミリ秒取得 | | ミリ秒単位の時間を数値で返す。結果は実装に依存する。 | じかんみりびょうしゅとく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2632
|
|
279
279
|
●デバッグ支援
|
|
280
|
-
| 関数 | エラー発生 | Sの/Sで | 故意にエラーSを発生させる | えらーはっせい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
281
|
-
| 関数 | __DEBUG | | デバッグモードにする | __DEBUG | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
282
|
-
| 関数 | グローバル関数一覧取得 | | グローバル変数にある関数一覧を取得 | ぐろーばるかんすういちらんしゅとく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
283
|
-
| 関数 | システム関数一覧取得 | | システム関数の一覧を取得 | しすてむかんすういちらんしゅとく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
284
|
-
| 関数 | システム関数存在 | FNAMEが/FNAMEの | 文字列で関数名を指定してシステム関数が存在するかを調べる | しすてむかんすうそんざい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
285
|
-
| 関数 | プラグイン一覧取得 | | 利用中のプラグイン一覧を得る | ぷらぐいんいちらんしゅとく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
286
|
-
| 関数 | モジュール一覧取得 | | 取り込んだモジュール一覧を得る | もじゅーるいちらんしゅとく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
287
|
-
| 関数 | 助詞一覧取得 | | 文法として定義されている助詞の一覧を取得する | じょしいちらんしゅとく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
288
|
-
| 関数 | 予約語一覧取得 | | 文法として定義されている予約語の一覧を取得する | よやくごいちらんしゅとく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
280
|
+
| 関数 | エラー発生 | Sの/Sで | 故意にエラーSを発生させる | えらーはっせい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2648
|
|
281
|
+
| 関数 | __DEBUG | | デバッグモードにする | __DEBUG | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2656
|
|
282
|
+
| 関数 | グローバル関数一覧取得 | | グローバル変数にある関数一覧を取得 | ぐろーばるかんすういちらんしゅとく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2665
|
|
283
|
+
| 関数 | システム関数一覧取得 | | システム関数の一覧を取得 | しすてむかんすういちらんしゅとく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2680
|
|
284
|
+
| 関数 | システム関数存在 | FNAMEが/FNAMEの | 文字列で関数名を指定してシステム関数が存在するかを調べる | しすてむかんすうそんざい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2695
|
|
285
|
+
| 関数 | プラグイン一覧取得 | | 利用中のプラグイン一覧を得る | ぷらぐいんいちらんしゅとく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2703
|
|
286
|
+
| 関数 | モジュール一覧取得 | | 取り込んだモジュール一覧を得る | もじゅーるいちらんしゅとく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2714
|
|
287
|
+
| 関数 | 助詞一覧取得 | | 文法として定義されている助詞の一覧を取得する | じょしいちらんしゅとく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2726
|
|
288
|
+
| 関数 | 予約語一覧取得 | | 文法として定義されている予約語の一覧を取得する | よやくごいちらんしゅとく | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2744
|
|
289
289
|
●プラグイン管理
|
|
290
|
-
| 定数 | プラグイン名 | | 'メイン' | ぷらぐいんめい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
291
|
-
| 関数 | プラグイン名設定 | Sに/Sへ | プラグイン名をSに変更する(システムにより自動的に「メイン」あるいはプラグインのファイル名が呼ばれる) | プラグインめいせってい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
292
|
-
| 定数 | 名前空間 | | '' | なまえくうかん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
293
|
-
| 関数 | 名前空間設定 | Sに/Sへ | 名前空間をSに設定する(システムにより自動的に変更される。ファイル名から拡張子を削ったもの) | なまえくうかんせってい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
294
|
-
| 関数 | 名前空間ポップ | | システム利用のため呼ぶべからず。(名前空間を一つ前の値に戻す) | なまえくうかんぽっぷ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
290
|
+
| 定数 | プラグイン名 | | 'メイン' | ぷらぐいんめい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2763
|
|
291
|
+
| 関数 | プラグイン名設定 | Sに/Sへ | プラグイン名をSに変更する(システムにより自動的に「メイン」あるいはプラグインのファイル名が呼ばれる) | プラグインめいせってい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2768
|
|
292
|
+
| 定数 | 名前空間 | | '' | なまえくうかん | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2773
|
|
293
|
+
| 関数 | 名前空間設定 | Sに/Sへ | 名前空間をSに設定する(システムにより自動的に変更される。ファイル名から拡張子を削ったもの) | なまえくうかんせってい | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2778
|
|
294
|
+
| 関数 | 名前空間ポップ | | システム利用のため呼ぶべからず。(名前空間を一つ前の値に戻す) | なまえくうかんぽっぷ | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2789
|
|
295
295
|
●URLエンコードとパラメータ
|
|
296
|
-
| 関数 | URLエンコード | TEXTを/TEXTから | URLエンコードして返す | URLえんこーど | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
297
|
-
| 関数 | URLデコード | TEXTを/TEXTへ/TEXTに | URLデコードして返す | URLでこーど | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
298
|
-
| 関数 | URLパラメータ解析 | URLを/URLの/URLから | URLパラメータを解析してハッシュで返す | URLぱらめーたかいせき | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
296
|
+
| 関数 | URLエンコード | TEXTを/TEXTから | URLエンコードして返す | URLえんこーど | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2805
|
|
297
|
+
| 関数 | URLデコード | TEXTを/TEXTへ/TEXTに | URLデコードして返す | URLでこーど | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2813
|
|
298
|
+
| 関数 | URLパラメータ解析 | URLを/URLの/URLから | URLパラメータを解析してハッシュで返す | URLぱらめーたかいせき | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2821
|
|
299
299
|
●BASE64
|
|
300
|
-
| 関数 | BASE64エンコード | TEXTを/TEXTから | BASE64エンコードして返す | BASE64えんこーど | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
301
|
-
| 関数 | BASE64デコード | TEXTを/TEXTへ/TEXTに | BASE64デコードして返す | BASE64でこーど | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#
|
|
300
|
+
| 関数 | BASE64エンコード | TEXTを/TEXTから | BASE64エンコードして返す | BASE64えんこーど | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2845
|
|
301
|
+
| 関数 | BASE64デコード | TEXTを/TEXTへ/TEXTに | BASE64デコードして返す | BASE64でこーど | https://github.com/kujirahand/nadesiko3core/blob/main/src/plugin_system.mts#L2863
|
|
302
302
|
|
|
303
303
|
|
|
304
304
|
■plugin_csv(基本プラグイン,wnako,cnako)
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* file: plugin_snako.js
|
|
3
|
+
* 簡単なファイル読み書きのプラグイン
|
|
4
|
+
*/
|
|
5
|
+
import path from 'node:path'
|
|
6
|
+
import { exec, OutputMode } from "https://deno.land/x/exec/mod.ts"
|
|
7
|
+
|
|
8
|
+
export default {
|
|
9
|
+
'初期化': {
|
|
10
|
+
type: 'func',
|
|
11
|
+
josi: [],
|
|
12
|
+
pure: true,
|
|
13
|
+
fn: function (sys: any) {
|
|
14
|
+
// command line
|
|
15
|
+
const args = [...Deno.args]
|
|
16
|
+
args.unshift(Deno.execPath())
|
|
17
|
+
// set path
|
|
18
|
+
sys.__getBokanPath = () => {
|
|
19
|
+
let nakofile
|
|
20
|
+
const cmd = path.basename(args[1])
|
|
21
|
+
if (cmd.indexOf('snako') < 0) { nakofile = args[1] } else { nakofile = args[2] }
|
|
22
|
+
return path.dirname(path.resolve(nakofile))
|
|
23
|
+
}
|
|
24
|
+
sys.__v0['コマンドライン'] = args
|
|
25
|
+
sys.__v0['ナデシコランタイムパス'] = args[0]
|
|
26
|
+
sys.__v0['ナデシコランタイム'] = path.basename(args[0])
|
|
27
|
+
sys.__v0['母艦パス'] = sys.__getBokanPath()
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
// @SNAKO
|
|
31
|
+
'コマンドライン': { type: 'const', value: '' },
|
|
32
|
+
'ナデシコランタイムパス': { type: 'const', value: '' },
|
|
33
|
+
'ナデシコランタイム': { type: 'const', value: '' },
|
|
34
|
+
'母艦パス': { type: 'const', value: '' },
|
|
35
|
+
'読': { // @ ファイルFの内容を読む // @よむ
|
|
36
|
+
type: 'func',
|
|
37
|
+
josi: [['を', 'から']],
|
|
38
|
+
pure: true,
|
|
39
|
+
asyncFn: true,
|
|
40
|
+
fn: async function (f: string): Promise<string> {
|
|
41
|
+
const text = await Deno.readTextFile(f)
|
|
42
|
+
return text
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
'開': { // @ ファイルFの内容を読む // @ひらく
|
|
46
|
+
type: 'func',
|
|
47
|
+
josi: [['を', 'から']],
|
|
48
|
+
pure: true,
|
|
49
|
+
asynfFn: true,
|
|
50
|
+
fn: async function (f: string): Promise<string> {
|
|
51
|
+
const text = await Deno.readTextFile(f)
|
|
52
|
+
return text
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
'保存': { // @ 文字列SをファイルFに保存 // @ほぞん
|
|
56
|
+
type: 'func',
|
|
57
|
+
josi: [['を'], ['に', 'へ']],
|
|
58
|
+
pure: true,
|
|
59
|
+
asyncFn: true,
|
|
60
|
+
fn: async function (s: string, f: string): Promise<void> {
|
|
61
|
+
await Deno.writeTextFile(f, s)
|
|
62
|
+
},
|
|
63
|
+
return_none: true
|
|
64
|
+
},
|
|
65
|
+
'起動待機': { // @シェルコマンドSを起動し実行終了まで待機する // @きどうたいき
|
|
66
|
+
type: 'func',
|
|
67
|
+
josi: [['を']],
|
|
68
|
+
pure: true,
|
|
69
|
+
asyncFn: true,
|
|
70
|
+
fn: async function (s: string): Promise<string> {
|
|
71
|
+
const options = { output: OutputMode.Capture, verbose: false }
|
|
72
|
+
const exeRes = await exec(s, options)
|
|
73
|
+
const result = exeRes.output
|
|
74
|
+
return result
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
'ファイル名抽出': { // @フルパスのファイル名Sからファイル名部分を抽出して返す // @ふぁいるめいちゅうしゅつ
|
|
78
|
+
type: 'func',
|
|
79
|
+
josi: [['から', 'の']],
|
|
80
|
+
pure: true,
|
|
81
|
+
fn: function (s: string) {
|
|
82
|
+
return path.basename(s)
|
|
83
|
+
}
|
|
84
|
+
},
|
|
85
|
+
'パス抽出': { // @ファイル名Sからパス部分を抽出して返す // @ぱすちゅうしゅつ
|
|
86
|
+
type: 'func',
|
|
87
|
+
josi: [['から', 'の']],
|
|
88
|
+
pure: true,
|
|
89
|
+
fn: function (s: string) {
|
|
90
|
+
return path.dirname(s)
|
|
91
|
+
}
|
|
92
|
+
},
|
|
93
|
+
'絶対パス変換': { // @相対パスから絶対パスに変換して返す // @ぜったいぱすへんかん
|
|
94
|
+
type: 'func',
|
|
95
|
+
josi: [['を', 'の']],
|
|
96
|
+
pure: true,
|
|
97
|
+
fn: function (a: string) {
|
|
98
|
+
return path.resolve(a)
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
'相対パス展開': { // @ファイル名AからパスBを展開して返す // @そうたいぱすてんかい
|
|
102
|
+
type: 'func',
|
|
103
|
+
josi: [['を'], ['で']],
|
|
104
|
+
pure: true,
|
|
105
|
+
fn: function (a: string, b: string) {
|
|
106
|
+
return path.resolve(path.join(a, b))
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
#!/usr/bin/env deno
|
|
2
|
+
import path from 'node:path'
|
|
3
|
+
import com from '../index.mjs'
|
|
4
|
+
import { NakoGlobal } from '../src/nako_global.mjs'
|
|
5
|
+
import fs from 'node:fs'
|
|
6
|
+
|
|
7
|
+
import * as url from 'node:url'
|
|
8
|
+
import { NakoGenOptions } from '../src/nako_gen.mjs'
|
|
9
|
+
import { NakoCompiler } from '../src/nako3.mjs'
|
|
10
|
+
import PluginSnako from './plugin_snako_deno.ts'
|
|
11
|
+
const __dirname = url.fileURLToPath(new URL('.', import.meta.url))
|
|
12
|
+
|
|
13
|
+
/** コマンドラインオプション */
|
|
14
|
+
class CommandOptions {
|
|
15
|
+
isDebug: boolean
|
|
16
|
+
filename: string
|
|
17
|
+
nodePath: string
|
|
18
|
+
scriptPath: string
|
|
19
|
+
evalStr: string
|
|
20
|
+
flagConvert: boolean
|
|
21
|
+
constructor () {
|
|
22
|
+
this.nodePath = '' // Node.jsではない
|
|
23
|
+
this.scriptPath = ''
|
|
24
|
+
this.filename = ''
|
|
25
|
+
this.evalStr = ''
|
|
26
|
+
this.isDebug = false
|
|
27
|
+
this.flagConvert = false
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/** メイン処理 */
|
|
32
|
+
async function main (argvOrg: string[]) {
|
|
33
|
+
// コマンドラインオプションを確認
|
|
34
|
+
const argv: string[] = [...argvOrg]
|
|
35
|
+
const opt: CommandOptions = new CommandOptions()
|
|
36
|
+
while (argv.length > 0) {
|
|
37
|
+
const arg = argv.shift() || ''
|
|
38
|
+
if (arg === '-d' || arg === '--debug') {
|
|
39
|
+
opt.isDebug = true
|
|
40
|
+
continue
|
|
41
|
+
}
|
|
42
|
+
if (arg === '-e' || arg === '--eval') {
|
|
43
|
+
opt.evalStr = argv.shift() || ''
|
|
44
|
+
continue
|
|
45
|
+
}
|
|
46
|
+
if (arg === '-c' || arg === '--convert') {
|
|
47
|
+
opt.flagConvert = true
|
|
48
|
+
continue
|
|
49
|
+
}
|
|
50
|
+
if (opt.filename === '') { opt.filename = arg }
|
|
51
|
+
}
|
|
52
|
+
// なでしこのコンパイラを生成
|
|
53
|
+
const nako = new com.NakoCompiler()
|
|
54
|
+
nako.addPluginObject('PluginSnako', PluginSnako)
|
|
55
|
+
// 実行前にイベントを挟みたいとき
|
|
56
|
+
nako.addListener('beforeRun', (g: NakoGlobal) => {
|
|
57
|
+
g.__varslist[0]['ナデシコ種類'] = 'snako'
|
|
58
|
+
})
|
|
59
|
+
// logger を設定 --- リスナーを登録することでデバッグレベルを指定
|
|
60
|
+
const logger = nako.getLogger()
|
|
61
|
+
if (opt.isDebug) {
|
|
62
|
+
logger.addListener('trace', (data: any) => { // --debug オプションを指定したとき
|
|
63
|
+
console.log(data.nodeConsole)
|
|
64
|
+
})
|
|
65
|
+
}
|
|
66
|
+
logger.addListener('stdout', (data: any) => { // 「表示」命令を実行したとき
|
|
67
|
+
console.log(data.noColor)
|
|
68
|
+
})
|
|
69
|
+
// -e オプションを実行したとき
|
|
70
|
+
if (opt.evalStr) {
|
|
71
|
+
await nako.runAsync(opt.evalStr, 'main.nako3')
|
|
72
|
+
return
|
|
73
|
+
}
|
|
74
|
+
// パラメータが空だったとき
|
|
75
|
+
if (opt.filename === '') {
|
|
76
|
+
showHelp()
|
|
77
|
+
return
|
|
78
|
+
}
|
|
79
|
+
// ソースコードをファイルから読み込む
|
|
80
|
+
const code: string = Deno.readTextFileSync(opt.filename)
|
|
81
|
+
// -c オプションが指定されたとき
|
|
82
|
+
if (opt.flagConvert) { convert(nako, code, opt) }
|
|
83
|
+
// 実行
|
|
84
|
+
await nako.runAsync(code, opt.filename)
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
// -c オプションを指定したとき
|
|
88
|
+
function convert (nako: NakoCompiler, code: string, opt: CommandOptions): void {
|
|
89
|
+
// オプションを指定
|
|
90
|
+
const genOpt = new NakoGenOptions(
|
|
91
|
+
false,
|
|
92
|
+
['nako_errors.mjs', 'nako_core_version.mjs', 'plugin_system.mjs'],
|
|
93
|
+
'self.__varslist[0][\'ナデシコ種類\'] = \'snako\'')
|
|
94
|
+
// スタンドアロンコードを生成
|
|
95
|
+
const js = nako.compileStandalone(code, opt.filename, genOpt)
|
|
96
|
+
const jsFilename = opt.filename + '.js'
|
|
97
|
+
fs.writeFileSync(jsFilename, js, { encoding: 'utf-8' })
|
|
98
|
+
// 必要なライブラリをコピー
|
|
99
|
+
const runtimeDir = path.join(path.dirname(jsFilename), 'nako3runtime')
|
|
100
|
+
const srcDir = path.join(__dirname, '..', 'src')
|
|
101
|
+
if (!fs.existsSync(runtimeDir)) { fs.mkdirSync(runtimeDir) }
|
|
102
|
+
for (const f of genOpt.importFiles) {
|
|
103
|
+
fs.copyFileSync(path.join(srcDir, f), path.join(runtimeDir, f))
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
/** 使い方を表示 */
|
|
108
|
+
function showHelp (): void {
|
|
109
|
+
console.log('●なでしこ(簡易版) # v.' + com.version.version)
|
|
110
|
+
console.log('[使い方] deno run snako_deno.mts [--debug|-d] (filename)')
|
|
111
|
+
console.log('[使い方] deno run snako_deno.mts [--eval|-e] (source)')
|
|
112
|
+
console.log('[使い方] deno run snako_deno.mts [-c] (source) ... convert')
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
/** メイン処理を実行 */
|
|
116
|
+
main(Deno.args)
|
package/core/index.mjs
CHANGED
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
import coreVersion from './src/nako_core_version.mjs';
|
|
2
|
-
import { NakoCompiler } from './src/nako3.mjs';
|
|
2
|
+
import { NakoCompiler, newCompilerOptions } from './src/nako3.mjs';
|
|
3
3
|
import { NakoLogger } from './src/nako_logger.mjs';
|
|
4
4
|
import { NakoError, NakoRuntimeError, NakoImportError } from './src/nako_errors.mjs';
|
|
5
5
|
import { NakoParser } from './src/nako_parser3.mjs';
|
|
6
6
|
import { NakoPrepare } from './src/nako_prepare.mjs';
|
|
7
|
+
import { NakoGen, NakoGenOptions } from './src/nako_gen.mjs';
|
|
8
|
+
import { NakoGlobal } from './src/nako_global.mjs';
|
|
7
9
|
export default {
|
|
8
10
|
// version
|
|
9
11
|
version: coreVersion,
|
|
10
12
|
// compiler
|
|
11
13
|
NakoCompiler,
|
|
14
|
+
newCompilerOptions,
|
|
12
15
|
// loggger
|
|
13
16
|
NakoLogger,
|
|
14
17
|
// error
|
|
@@ -17,5 +20,8 @@ export default {
|
|
|
17
20
|
NakoImportError,
|
|
18
21
|
// tools etc..
|
|
19
22
|
NakoParser,
|
|
20
|
-
NakoPrepare
|
|
23
|
+
NakoPrepare,
|
|
24
|
+
NakoGen,
|
|
25
|
+
NakoGenOptions,
|
|
26
|
+
NakoGlobal,
|
|
21
27
|
};
|