Skip to content

Commit 3f033c0

Browse files
committed
🔨 code.mdの生成を完全自動化
1 parent f178c70 commit 3f033c0

21 files changed

+730
-392
lines changed

README.md

Lines changed: 2 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -23,38 +23,6 @@ https://cdn.jsdelivr.net/gh/hi2ma-bu4/JavaLibraryScript/dist/JavaLibraryScript.m
2323

2424
## 実装機能
2525

26-
### base
27-
28-
#### Enum
29-
30-
JavaのenumをJavaScriptにそれっぽく似せて作ったやつ
31-
32-
#### Interface
33-
34-
JavaのInterfaceをJavaScriptにそれっぽく似せて作ったやつ
35-
36-
37-
### util
38-
39-
#### BaseMap
40-
41-
JavaのMapをJavaScriptにそれっぽく似せて作ったやつ
42-
43-
Mapが予約語だったので変更
44-
45-
#### HashMap
46-
47-
JavaのHashMapをJavaScriptにそれっぽく似せて作ったやつ
48-
49-
使い道なし
50-
51-
#### TreeMap
52-
53-
JavaのTreeMapをJavaScriptにそれっぽく似せて作ったやつ
54-
55-
使い道なし
56-
57-
#### LinkedHashMap
58-
59-
JavaのLinkedHashMapをJavaScriptにそれっぽく似せて作ったやつ
26+
[code.mdを参照](./docs/code.md)
6027

28+
※自動生成です

dev/build.js

Lines changed: 6 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,9 @@ const { execSync } = require("node:child_process");
1010

1111
const generateIndex = require("./build/generateIndex");
1212
const createEntryEndpoint = require("./build/createEntryEndpoint");
13+
const fixDtsOutputFlexible = require("./build/fixDtsOutputFlexible");
1314
const checkIllegalStrings = require("./build/checkIllegalStrings");
14-
const generateMdClass = require("./build/generateMdClass");
15+
const GenerateJsdocMd = require("./build/GenerateJsdocMd");
1516
const CL = require("./libs/ColorLogger");
1617

1718
const script_name = "JavaLibraryScript";
@@ -127,46 +128,10 @@ async function buildRollup() {
127128
});
128129
}
129130

130-
function fixDtsOutputFlexible(filePath, log = false) {
131-
let code = fs.readFileSync(filePath, "utf8");
132-
133-
const regList = [
134-
// 修正をここに追加
135-
[
136-
`declare\\s+namespace\\s+(__(?:[a-z]+_)+[A-Za-z]+_js)\\s+{\\s+export\\s+{[\\s\\S]*?\\s+};\\s+}\\s+`,
137-
(a, b) => {
138-
if (log) console.log(`┃┃ namespace ${b} : ${CL.cyan("削除")}`);
139-
return "";
140-
},
141-
],
142-
[
143-
`(\\s+)(__(?:[a-z]+_)+([A-Za-z]+)_js)`,
144-
(a, b, c, d) => {
145-
if (log) console.log(`┃┃ ${c} -> ${d} : ${CL.cyan("統合")}`);
146-
return `${b}${d}`;
147-
},
148-
],
149-
[
150-
`([A-Za-z][A-Za-z0-9]*)_forceRep`,
151-
(a, b) => {
152-
if (log) console.log(`┃┃ ${b} : ${CL.cyan("強制変更")}`);
153-
return b;
154-
},
155-
],
156-
];
157-
158-
for (const [reg, rep] of regList) {
159-
const re = new RegExp(reg, "gm");
160-
code = code.replace(re, rep);
161-
}
162-
163-
fs.writeFileSync(filePath, code);
164-
}
165-
166131
(async () => {
167132
const debug = true;
168133
// 動作確認用 ログ表示
169-
const logView = true;
134+
const logView = false;
170135
//
171136
const start = performance.now();
172137
try {
@@ -219,7 +184,9 @@ function fixDtsOutputFlexible(filePath, log = false) {
219184
}
220185

221186
console.log(`┣ℹ️ ${CL.brightWhite("mdのコンテンツ生成中...")}`);
222-
generateMdClass(entryDir, mdCodeDocsPath);
187+
GenerateJsdocMd.isDebug = logView;
188+
GenerateJsdocMd.endPointName = script_name;
189+
GenerateJsdocMd.generate(entryDir, mdCodeDocsPath);
223190
console.log(`┃┗✅ ${CL.brightWhite("mdのコンテンツ生成完了")}: ${mdCodeDocsPath}`);
224191

225192
const end = performance.now() - start;

0 commit comments

Comments
 (0)