diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml index 50891254a..d3fe4d819 100644 --- a/docs/mkdocs.yml +++ b/docs/mkdocs.yml @@ -27,6 +27,7 @@ plugins: heading_level: 2 members_order: source filters: [] + show_if_no_docstring: true docstring_style: null show_signature_annotations: true separate_signature: true diff --git a/docs/tools/build.py b/docs/tools/build.py index 6b4c42839..d57365d4a 100644 --- a/docs/tools/build.py +++ b/docs/tools/build.py @@ -5,7 +5,7 @@ <페이지>/index.md 개요 · 묶음 상자 · 묶음 사이 흐름 그림 · 손글(규칙 · 사용자 결정) <페이지>/<묶음>.md 손글 설명 · 묶음 안 흐름 그림 · 세션 칸 · 서버 주소 · 함수 칸 <페이지>/none.md 묶음 없음 - ts/ · py/ 함수 화면 — TypeDoc(markdown) · mkdocstrings(griffe)가 만듦 + ts/ · py/ 함수 화면 — TypeDoc(HTML) · mkdocstrings(griffe)가 만듦 .nav.json 왼쪽 메뉴(nav_hook.py 가 읽음) 함수 목록 지문이 손글 지문과 다른 묶음 = 「설명 확인 필요」 · 맞으면 --stamp. @@ -72,18 +72,17 @@ def stamp(path: Path, print_: str) -> None: def run_typedoc(ts_files: list[str], out: Path) -> dict[tuple[str, str], str]: - """TypeDoc 으로 ts/ 함수 화면 · (파일, 이름) → 원고 안 경로.""" + """TypeDoc HTML 로 ts/ 함수 화면 · (파일, 이름) → 원고 안 경로.""" if not ts_files: return {} opts = { "entryPoints": [(ROOT / f).as_posix() for f in ts_files], "tsconfig": (ROOT / "tsconfig.json").as_posix(), "skipErrorChecking": True, - "plugin": ["typedoc-plugin-markdown"], + "router": "structure", "out": (out / "src" / "ts").as_posix(), "json": (out / "typedoc.json").as_posix(), "readme": "none", - "entryFileName": "index.md", "logLevel": "Error", } opt_file = out / "typedoc.options.json" @@ -105,9 +104,8 @@ def typedoc_pages(out: Path) -> dict[tuple[str, str], str]: for mod in modules: base = f"ts/{mod['name']}/" if mod["name"] else "ts/" for c in mod.get("children", []): - folder = {64: "functions", 32: "variables"}.get(c["kind"]) - if folder and c.get("sources"): - rel = f"{base}{folder}/{c['name']}.md" + if c["kind"] in (64, 32) and c.get("sources"): + rel = f"{base}{c['name']}.html" if (out / "src" / rel).exists(): pages[(c["sources"][0]["fileName"], c["name"])] = rel return pages @@ -388,7 +386,9 @@ class Site: self.gid.update({f["id"]: gid for gid, fns in groups.items() for f in fns}) nav.append({page["title"]: self.write_page(page, groups)}) home.append(f"- [{page['title']}]({page['id']}/index.md)") - ts_nav = [{"TypeScript": "ts/index.md"}] if (self.src / "ts" / "index.md").exists() else [] + ts_nav = ( + [{"TypeScript": "ts/index.html"}] if (self.src / "ts" / "index.html").exists() else [] + ) nav.append({"함수 화면": [*ts_nav, {"파이썬": "py/index.md"}]}) (self.src / "index.md").write_text("\n".join(home) + "\n", encoding="utf-8") (self.src / ".nav.json").write_text(json.dumps(nav, ensure_ascii=False), encoding="utf-8") diff --git a/docs/tools/package-lock.json b/docs/tools/package-lock.json index 87aa3542a..30da25b1a 100644 --- a/docs/tools/package-lock.json +++ b/docs/tools/package-lock.json @@ -8,7 +8,6 @@ "dependencies": { "ts-morph": "^28.0.0", "typedoc": "^0.28.20", - "typedoc-plugin-markdown": "^4.14.0", "typescript": "6.0" } }, @@ -306,18 +305,6 @@ "typescript": "5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x || 5.7.x || 5.8.x || 5.9.x || 6.0.x" } }, - "node_modules/typedoc-plugin-markdown": { - "version": "4.14.0", - "resolved": "https://registry.npmjs.org/typedoc-plugin-markdown/-/typedoc-plugin-markdown-4.14.0.tgz", - "integrity": "sha512-Y2a3oDV9ekrbkk6RBSGH8GyNkh0xIdemIOOTr3tiRN/33nvFGStOs9nw+6Q84gF1XFkcVZrgM4Ckcsf6e/YpKQ==", - "license": "MIT", - "engines": { - "node": ">= 18" - }, - "peerDependencies": { - "typedoc": "0.28.x" - } - }, "node_modules/typescript": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", diff --git a/docs/tools/package.json b/docs/tools/package.json index cae706d00..038ad2f76 100644 --- a/docs/tools/package.json +++ b/docs/tools/package.json @@ -1 +1 @@ -{"name":"aislo-docs-tools","private":true,"type":"module","dependencies":{"ts-morph":"^28.0.0","typedoc":"^0.28.20","typedoc-plugin-markdown":"^4.14.0","typescript":"6.0"}} \ No newline at end of file +{"name":"aislo-docs-tools","private":true,"type":"module","dependencies":{"ts-morph":"^28.0.0","typedoc":"^0.28.20","typescript":"6.0"}} \ No newline at end of file