nadesiko3 3.3.55 → 3.3.56
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/batch/command.txt +1 -1
- package/core/package.json +1 -1
- 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 -1
- package/core/src/nako_gen.mts +3 -1
- package/demo/nako3/rpn.mjs +39 -0
- package/demo/nako3/test.mjs +29 -0
- package/package.json +4 -4
- package/release/_hash.txt +16 -16
- package/release/_script-tags.txt +14 -14
- package/release/nako_gen_async.js +1 -1
- package/release/stats.json +1 -1
- package/release/version.js +1 -1
- package/release/wnako3.js +1 -1
- package/release/wnako3webworker.js +1 -1
- package/src/cnako3mod.mjs +1 -1
- package/src/cnako3mod.mts +1 -1
- package/src/nako_version.mjs +2 -2
- package/src/nako_version.mts +2 -2
- package/src/plugin_browser_hotkey.mjs +2 -1
package/batch/command.txt
CHANGED
|
@@ -579,7 +579,7 @@
|
|
|
579
579
|
| 関数 | オーディオ再生位置設定 | OBJをVに/Vへ | AudioオブジェクトOBJを指定してオーディの位置を数値Vで設定する | おーでぃおさいせい | https://github.com/kujirahand/nadesiko3/blob/master/src/plugin_browser_audio.mjs#L103
|
|
580
580
|
●ホットキー
|
|
581
581
|
| 関数 | ホットキー登録 | KEYにFNAMEを/KEYで | ホットキーKEYにEVENTを登録する | ほっときーとうろく | https://github.com/kujirahand/nadesiko3/blob/master/src/plugin_browser_hotkey.mjs#L10
|
|
582
|
-
| 関数 | ホットキー解除 | KEYを/KEYの | ホットキーKEYを解除する | ほっときーかいじょ | https://github.com/kujirahand/nadesiko3/blob/master/src/plugin_browser_hotkey.mjs#
|
|
582
|
+
| 関数 | ホットキー解除 | KEYを/KEYの | ホットキーKEYを解除する | ほっときーかいじょ | https://github.com/kujirahand/nadesiko3/blob/master/src/plugin_browser_hotkey.mjs#L22
|
|
583
583
|
●グラフ描画_CHARTJS
|
|
584
584
|
| 関数 | グラフ描画 | DATAを/DATAで/DATAの | Chart.jsを利用して、DATAのグラフを描画 | ぐらふびょうが | https://github.com/kujirahand/nadesiko3/blob/master/src/plugin_browser_chart.mjs#L8
|
|
585
585
|
| 定数 | グラフオプション | | {} | ぐらふおぷしょん | https://github.com/kujirahand/nadesiko3/blob/master/src/plugin_browser_chart.mjs#L30
|
package/core/package.json
CHANGED
package/core/src/nako_gen.mjs
CHANGED
|
@@ -1198,6 +1198,8 @@ export class NakoGen {
|
|
|
1198
1198
|
}
|
|
1199
1199
|
return result;
|
|
1200
1200
|
};
|
|
1201
|
+
// 引数チェックの例外 #1260
|
|
1202
|
+
const noCheckFuncs = { 'TYPEOF': true, '変数型確認': true };
|
|
1201
1203
|
// 関数呼び出しコードの構築
|
|
1202
1204
|
let argsCode;
|
|
1203
1205
|
if ((this.warnUndefinedCallingUserFunc === 0 && res.i !== 0) || (this.warnUndefinedCallingSystemFunc === 0 && res.i === 0)) {
|
|
@@ -1206,7 +1208,7 @@ export class NakoGen {
|
|
|
1206
1208
|
else {
|
|
1207
1209
|
argsCode = '';
|
|
1208
1210
|
args.forEach((arg) => {
|
|
1209
|
-
if (arg === '__self') {
|
|
1211
|
+
if (arg === '__self' || noCheckFuncs[funcName] === true) { // #1260
|
|
1210
1212
|
argsCode += `,${arg}`;
|
|
1211
1213
|
}
|
|
1212
1214
|
else {
|
package/core/src/nako_gen.mts
CHANGED
|
@@ -1270,6 +1270,8 @@ export class NakoGen {
|
|
|
1270
1270
|
return result
|
|
1271
1271
|
}
|
|
1272
1272
|
|
|
1273
|
+
// 引数チェックの例外 #1260
|
|
1274
|
+
const noCheckFuncs: {[key: string]: boolean} = { 'TYPEOF': true, '変数型確認': true }
|
|
1273
1275
|
// 関数呼び出しコードの構築
|
|
1274
1276
|
let argsCode: string
|
|
1275
1277
|
if ((this.warnUndefinedCallingUserFunc === 0 && res.i !== 0) || (this.warnUndefinedCallingSystemFunc === 0 && res.i === 0)) {
|
|
@@ -1277,7 +1279,7 @@ export class NakoGen {
|
|
|
1277
1279
|
} else {
|
|
1278
1280
|
argsCode = ''
|
|
1279
1281
|
args.forEach((arg: string) => {
|
|
1280
|
-
if (arg === '__self') {
|
|
1282
|
+
if (arg === '__self' || noCheckFuncs[funcName] === true) { // #1260
|
|
1281
1283
|
argsCode += `,${arg}`
|
|
1282
1284
|
} else {
|
|
1283
1285
|
if (res.i === 0) {
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
default export {
|
|
2
|
+
//
|
|
3
|
+
//
|
|
4
|
+
// ...
|
|
5
|
+
//
|
|
6
|
+
'RPN計算': {
|
|
7
|
+
type: 'func',
|
|
8
|
+
josi: [['を']],
|
|
9
|
+
fn: function (src) {
|
|
10
|
+
return calcRPN(src)
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
function calcRPN(src) {
|
|
16
|
+
// 字句解析 + 構文解析を行う
|
|
17
|
+
const tokens = src.split(/\s+/)
|
|
18
|
+
// スタック操作のためのラッパー関数を定義
|
|
19
|
+
const stack = []
|
|
20
|
+
const pop = () => {
|
|
21
|
+
const v = stack.pop()
|
|
22
|
+
console.log('pop=', v)
|
|
23
|
+
return parseFloat(v)
|
|
24
|
+
}
|
|
25
|
+
const push = (v) => {
|
|
26
|
+
console.log('push=', v)
|
|
27
|
+
stack.push(v)
|
|
28
|
+
}
|
|
29
|
+
// トークンを順に評価する
|
|
30
|
+
for (const t of tokens) {
|
|
31
|
+
if (t === '*') { stack.push(pop() * pop()) }
|
|
32
|
+
else if (t === '/') { stack.push(pop() / pop()) }
|
|
33
|
+
else if (t === '+') { stack.push(pop() + pop()) }
|
|
34
|
+
else if (t === '-') { stack.push(pop() - pop()) }
|
|
35
|
+
else { push(t) }
|
|
36
|
+
}
|
|
37
|
+
// 答えを表示
|
|
38
|
+
return pop()
|
|
39
|
+
}
|
package/demo/nako3/test.mjs
CHANGED
|
@@ -14,3 +14,32 @@ default export {
|
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
|
+
|
|
18
|
+
function calcRPN() {
|
|
19
|
+
// ソースコードを得る
|
|
20
|
+
const src = document.getElementById("src").value
|
|
21
|
+
.replace(/\s+$/, '')
|
|
22
|
+
// 字句解析 + 構文解析を行う
|
|
23
|
+
const tokens = src.split(/\s+/)
|
|
24
|
+
// スタック操作のためのラッパー関数を定義
|
|
25
|
+
const stack = []
|
|
26
|
+
const pop = () => {
|
|
27
|
+
const v = stack.pop()
|
|
28
|
+
console.log('pop=', v)
|
|
29
|
+
return parseFloat(v)
|
|
30
|
+
}
|
|
31
|
+
const push = (v) => {
|
|
32
|
+
console.log('push=', v)
|
|
33
|
+
stack.push(v)
|
|
34
|
+
}
|
|
35
|
+
// トークンを順に評価する
|
|
36
|
+
for (const t of tokens) {
|
|
37
|
+
if (t === '*') { stack.push(pop() * pop()) }
|
|
38
|
+
else if (t === '/') { stack.push(pop() / pop()) }
|
|
39
|
+
else if (t === '+') { stack.push(pop() + pop()) }
|
|
40
|
+
else if (t === '-') { stack.push(pop() - pop()) }
|
|
41
|
+
else { push(t) }
|
|
42
|
+
}
|
|
43
|
+
// 答えを表示
|
|
44
|
+
return pop()
|
|
45
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nadesiko3",
|
|
3
|
-
"version": "3.3.
|
|
3
|
+
"version": "3.3.56",
|
|
4
4
|
"description": "Japanese Programming Language",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "src/index.mjs",
|
|
@@ -156,7 +156,8 @@
|
|
|
156
156
|
"mocha": "^10.0.0",
|
|
157
157
|
"mocha-css": "^1.0.1",
|
|
158
158
|
"module-alias": "^2.2.2",
|
|
159
|
-
"
|
|
159
|
+
"multer": "^1.4.5-lts.1",
|
|
160
|
+
"npm-check-updates": "^2.2.3",
|
|
160
161
|
"os-browserify": "^0.3.0",
|
|
161
162
|
"path-browserify": "^1.0.1",
|
|
162
163
|
"prettier": "^2.6.2",
|
|
@@ -181,8 +182,7 @@
|
|
|
181
182
|
"uuid": "^8.3.2",
|
|
182
183
|
"webpack": "^5.72.1",
|
|
183
184
|
"webpack-bundle-analyzer": "^4.5.0",
|
|
184
|
-
"webpack-cli": "^4.9.2"
|
|
185
|
-
"multer": "^1.4.5-lts.1"
|
|
185
|
+
"webpack-cli": "^4.9.2"
|
|
186
186
|
},
|
|
187
187
|
"dependencies": {
|
|
188
188
|
"dayjs": "^1.11.2",
|
package/release/_hash.txt
CHANGED
|
@@ -9,10 +9,10 @@ editor.js:
|
|
|
9
9
|
sha256(base64): mWPVpxYoegeIn6u0PanyI4Z8eRx41UD/kBYns489U04=
|
|
10
10
|
sha512(base64): q9aYWdo2RiNlmsa4gSoQL70F4RkvG/lAUxOYew1tXdyJre4KSm7EWQp9m9+CgexV+sLcOg3DJ3+0/FW8Uu2DIg==
|
|
11
11
|
nako_gen_async.js:
|
|
12
|
-
md5(hex):
|
|
13
|
-
sha256(hex):
|
|
14
|
-
sha256(base64):
|
|
15
|
-
sha512(base64):
|
|
12
|
+
md5(hex): c9d168b7212850daa66d3ac177aaa3ce
|
|
13
|
+
sha256(hex): cbf762c87b11f421e1e3dc24cd05e5c018faf5ecc04948b9aab8d0db4086d20b
|
|
14
|
+
sha256(base64): y/diyHsR9CHh49wkzQXlwBj69ezASUi5qrjQ20CG0gs=
|
|
15
|
+
sha512(base64): 1/T3C+jBzt5ILfY3vVcnDzJGeFVA8tWHi+prbLgBWZd6CBD34RP9jundCJkMRKdXB3UnCYio4QHYPkGnAzGebw==
|
|
16
16
|
plugin_caniuse.js:
|
|
17
17
|
md5(hex): 95a7a5c98a92a46b6435e577daba3241
|
|
18
18
|
sha256(hex): 57638b3979be70b45ab8085861f6b2ece43200bd6aa92765d73caf76b9e6fea9
|
|
@@ -54,17 +54,17 @@ plugin_weykturtle3d.js:
|
|
|
54
54
|
sha256(base64): ND/1JqYrFVGTIPYsbBk+tScnF8RVzgYPM0/E2aE8GRw=
|
|
55
55
|
sha512(base64): T4B8Cvhn9j5YdMGk4rwPInfqmcXtGEjD2g6X6wSqXvYyIXuSy+t1RVf1viZ2zljHlk3wN6pwKvvg/NIJvfMAzw==
|
|
56
56
|
version.js:
|
|
57
|
-
md5(hex):
|
|
58
|
-
sha256(hex):
|
|
59
|
-
sha256(base64):
|
|
60
|
-
sha512(base64):
|
|
57
|
+
md5(hex): b679e7197ed35355de9ef7b6a01cd4b5
|
|
58
|
+
sha256(hex): 1a99bb254ebbedea7eb4b9b3497eb30fc1482c1f8c4a85ff6b9311ddcbfa037d
|
|
59
|
+
sha256(base64): Gpm7JU677ep+tLmzSX6zD8FILB+MSoX/a5MR3cv6A30=
|
|
60
|
+
sha512(base64): XrVL0Y966jzgGP6RTcGcfFayY9km0zhJZumkeAeOdNqHxVL3zZhNE+/qUn8AGF2IfyCUOL/ukaFeZpQNFGlT6A==
|
|
61
61
|
wnako3.js:
|
|
62
|
-
md5(hex):
|
|
63
|
-
sha256(hex):
|
|
64
|
-
sha256(base64):
|
|
65
|
-
sha512(base64):
|
|
62
|
+
md5(hex): 6109855d92b67506017ee3a45bb2b4d9
|
|
63
|
+
sha256(hex): b5c74d76e9b167f45445e4eaf97d72a917fa4d606d61a8dc2a9d2b5a695e67e4
|
|
64
|
+
sha256(base64): tcdNdumxZ/RUReTq+X1yqRf6TWBtYajcKp0rWmleZ+Q=
|
|
65
|
+
sha512(base64): unHPxfskh9sDF8qM8SYUw6q5NJBOBMD20qVNSRqLfR5rOG7BUOrSu+sT7ap6pQ8EEQCxhxesSqmt2xJZiPjHQw==
|
|
66
66
|
wnako3webworker.js:
|
|
67
|
-
md5(hex):
|
|
68
|
-
sha256(hex):
|
|
69
|
-
sha256(base64):
|
|
70
|
-
sha512(base64):
|
|
67
|
+
md5(hex): b58632bdc0ac75f4adabe7aa32c6b7f6
|
|
68
|
+
sha256(hex): e7eee0e81e0452cd868d0f2db8d915f69d81de426b2238fdffca84e62282fe10
|
|
69
|
+
sha256(base64): 5+7g6B4EUs2GjQ8tuNkV9p2B3kJrIjj9/8qE5iKC/hA=
|
|
70
|
+
sha512(base64): 7N+L05OJnnuFTeB0pYqRnEcSzBuLrhB3d44WPs5OMvnUIoYjY+Hv/YvokHdMfk7KYJXAZHnQ2u1mYWfWTr1tgA==
|
package/release/_script-tags.txt
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.
|
|
2
|
-
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.
|
|
3
|
-
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.
|
|
4
|
-
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.
|
|
5
|
-
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.
|
|
6
|
-
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.
|
|
7
|
-
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.
|
|
8
|
-
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.
|
|
9
|
-
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.
|
|
10
|
-
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.
|
|
11
|
-
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.
|
|
12
|
-
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.
|
|
13
|
-
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.
|
|
14
|
-
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.
|
|
1
|
+
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.56&f=release/command.json.js" integrity="sha512-3PHGfRGcyV9VPBflXtm5cP2qT4kGyPgTpCyrFhjUXMHQKRf6+2yGK6VCcAV6KCOkjWIzKVCGeoDo4Pzp+YtckQ==" crossorigin="anonymous"></script>
|
|
2
|
+
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.56&f=release/editor.js" integrity="sha512-q9aYWdo2RiNlmsa4gSoQL70F4RkvG/lAUxOYew1tXdyJre4KSm7EWQp9m9+CgexV+sLcOg3DJ3+0/FW8Uu2DIg==" crossorigin="anonymous"></script>
|
|
3
|
+
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.56&f=release/nako_gen_async.js" integrity="sha512-1/T3C+jBzt5ILfY3vVcnDzJGeFVA8tWHi+prbLgBWZd6CBD34RP9jundCJkMRKdXB3UnCYio4QHYPkGnAzGebw==" crossorigin="anonymous"></script>
|
|
4
|
+
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.56&f=release/plugin_caniuse.js" integrity="sha512-NbX6BKUNq1J8xwtv5CThQC54Lb/KxaPlimRpsF745nxqjYeuGD7S70j4yOgNm4Uwd7AN5FgezS6NDyhlvoJF2w==" crossorigin="anonymous"></script>
|
|
5
|
+
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.56&f=release/plugin_csv.js" integrity="sha512-mQvmj25L2Nc2L7gN1rTjayHVMMPhc7TCSiBsuKS4JKOQqN+91uj9qpLAOejzR1ib5jIOBdtrhN+secNTU9BJtw==" crossorigin="anonymous"></script>
|
|
6
|
+
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.56&f=release/plugin_datetime.js" integrity="sha512-1ADTZFkcfU6vpEEJZEYmIbqS6G2XViooDFD4198P61n7VKZ0PhEVj9l8ULFGrW7woSbDqfSPZmkZ7yvcRqPKYA==" crossorigin="anonymous"></script>
|
|
7
|
+
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.56&f=release/plugin_kansuji.js" integrity="sha512-tXC9Q6LejwYG+HUbXcwBHFmhwTsqiMHOBohLNcSx8b02hxk3waPUEQRWeNP7QxAFMv5BOAY+Grruf+XKmmU26g==" crossorigin="anonymous"></script>
|
|
8
|
+
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.56&f=release/plugin_markup.js" integrity="sha512-pvb+QYO9LMUH055nPJJ5QaWyEYR3wDkHHilV5LLNyxObs7enlHGiF7Jt3Csd93JTdJ3n9hxFbTqWa1QuzVmTfQ==" crossorigin="anonymous"></script>
|
|
9
|
+
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.56&f=release/plugin_turtle.js" integrity="sha512-3/BlAe3uVDBgJrgFWzLJa3bvNQVhAQuL343Icict5hI3LndcPjV6mAD8KoWRlxmF8A8S6n8eKnmrh6NFWTjyEw==" crossorigin="anonymous"></script>
|
|
10
|
+
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.56&f=release/plugin_webworker.js" integrity="sha512-JLlIg9cW9UgM2AT+qMgEuKvea3t8R+1jihhlN/QGDQe7iCaGEfXfKG5gpvRb0IUyisNfzncUN8AfLn9wyxGGiw==" crossorigin="anonymous"></script>
|
|
11
|
+
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.56&f=release/plugin_weykturtle3d.js" integrity="sha512-T4B8Cvhn9j5YdMGk4rwPInfqmcXtGEjD2g6X6wSqXvYyIXuSy+t1RVf1viZ2zljHlk3wN6pwKvvg/NIJvfMAzw==" crossorigin="anonymous"></script>
|
|
12
|
+
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.56&f=release/version.js" integrity="sha512-XrVL0Y966jzgGP6RTcGcfFayY9km0zhJZumkeAeOdNqHxVL3zZhNE+/qUn8AGF2IfyCUOL/ukaFeZpQNFGlT6A==" crossorigin="anonymous"></script>
|
|
13
|
+
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.56&f=release/wnako3.js" integrity="sha512-unHPxfskh9sDF8qM8SYUw6q5NJBOBMD20qVNSRqLfR5rOG7BUOrSu+sT7ap6pQ8EEQCxhxesSqmt2xJZiPjHQw==" crossorigin="anonymous"></script>
|
|
14
|
+
<script defer src="https://nadesi.com/v3/cdn.php?v=3.3.56&f=release/wnako3webworker.js" integrity="sha512-7N+L05OJnnuFTeB0pYqRnEcSzBuLrhB3d44WPs5OMvnUIoYjY+Hv/YvokHdMfk7KYJXAZHnQ2u1mYWfWTr1tgA==" crossorigin="anonymous"></script>
|