- ローカライズ文書は
locales配下で管理します。 - 翻訳には AI を利用しています。
- ローカライズ版は参考情報であり、不一致がある場合は日本語の正本を優先してください。
- 日本語(正本): README.md
- English (localized): locales/en/README.md
- 中文(本地化): locales/zh/README.md
- 한국어(로컬라이즈): locales/ko/README.md
EH のタグ情報を取得・整形し、配布しやすい JSON / JSONC 形式へ変換して出力する TypeScript 製の生成ツールです。
このツールは tag1 から tag4 までの段階的な処理を通じて、カテゴリ別のタグデータを作成し、最終的に統合データを生成します。
実行すると、タグの翻訳対応に使える統合済みの JSON / JSONC データを得られます。
前提:
- Node.js 20 以上を推奨
- npm
事前準備:
- このリポジトリ一式をダウンロード(または
git clone)して、ローカルPCに配置してください。 LICENSE等があるプロジェクトのルートフォルダで、以下のコマンドを実行してください(VS Code のターミナルでも、直接 PowerShell / コマンドプロンプトでも実行できます)。
セットアップ:
npm install生成処理を実行します。
npm run mainnpm run main は次を実行します。
- TypeScript をビルド (
tsc -b) - 生成スクリプトを実行 (
node dist/main.js)
node dist/main.js の処理の最後で、data/jsonc 配下にある全ての .jsonc ファイルを走査し、自動的に data/json 配下へ .json として変換出力します。
- 全体の実行フローを管理するエントリーポイント
Tag1からTag4を順番に実行- 最終統合データ
data/jsonc/data1.jsoncを生成 data/jsonc配下の.jsoncを一括で.jsonに変換
- ehwiki のカテゴリ API からタグ ID とタイトルを収集
- ページング (
cmcontinue) を辿って全件取得 - カテゴリごとの初期データ (
*_1.json) を作成
tag1の ID リストを元に、各ページの本文を API で取得- 50件単位で
pageidsをまとめて取得 - 取得成功データと失敗 ID を整理して
*_2.jsonを作成
- wiki本文から日本語名を抽出・正規化(HTMLエンティティ復号、全角括弧の正規化など)
tag3: 一般カテゴリ向けの抽出tag3Creator: Creator カテゴリ向けに artist / circle を判定して分離- 抽出結果を
*_3.jsonとして出力
- 元タイトルと翻訳結果を突合し、
title -> 日本語名の辞書を生成 - 失敗 ID を収集しつつ、キー順ソートした最終カテゴリデータ (
*_4.json) を作成
主な出力先は data 配下です。
data/*_1.jsonからdata/*_4.json: 各処理段階の中間成果物data/jsonc/data1.jsonc: 最終統合データ (JSONC)data/json/*.json:data/jsonc配下の全.jsoncから自動変換された JSON
実際の変換データは、公開用リポジトリ EH-tag-list で配布しています。
ビルドのみ実行する場合:
tsc -bMIT ライセンスです。詳細は LICENSE を参照してください。
- 既存の出力ファイルがある場合、同名の一部ファイルはスキップされます。
- 取得元データの仕様変更により、出力内容が変化する場合があります。