cat-jekyll-config-generator
GitHub Pages用の_config.ymlファイルを複数のローカルリポジトリに対して一括生成するPython CLIツール
概要
このツールは、指定されたディレクトリ配下にある複数のリポジトリに対して、Jekyll(GitHub Pages)用の_config.ymlファイルを自動生成します。TOMLファイルによる設定テンプレートを使用して、統一された設定ファイルを効率的に作成できます。
主な機能
- 一括生成: 複数のリポジトリに対して
_config.ymlを一度に生成 - テンプレート形式: TOML設定ファイルでカスタマイズ可能な生成ルール
- 自動検出:
README.mdを含むディレクトリを自動でリポジトリとして認識 - 安全な処理: 設定の検証とエラーハンドリングを実装
インストール
依存関係
pip install tomli
取得方法
git clone https://github.com/cat2151/cat-jekyll-config-generator.git
cd cat-jekyll-config-generator
使用方法
1. 設定ファイルの準備
examples/config_example.tomlを参考に設定ファイルを作成します:
2. 実行
python -m src.cat_jekyll_config_generator --config-filename=path/to/your/config.toml
3. 出力例
実行すると以下のような_config.ymlが各リポジトリに生成されます:
title: "my-project"
description: "my-project"
theme: jekyll-theme-slate
github:
is_project_page: true
repository_url: https://github.com/username/my-project
設定ファイルの詳細
必須項目
github_username: GitHubのユーザー名base_dir: リポジトリが格納されている親ディレクトリのパスtheme: 使用するJekyllテーマdescription_template: 説明文のテンプレートconfig_template:_config.ymlの内容テンプレート
テンプレート変数
テンプレート内で使用できる変数:
{repo_name}: リポジトリ名(ディレクトリ名){description}:description_templateで生成された説明文{username}:github_usernameの値{theme}: 設定されたテーマ名
動作要件
- Python 3.9以上
- tomli パッケージ
- 対象ディレクトリに
README.mdファイルが存在すること
ディレクトリ構造
cat-jekyll-config-generator/
├── src/
│ └── cat_jekyll_config_generator.py # メインプログラム
├── examples/
│ └── config_example.toml # 設定ファイルのサンプル
├── ruff.toml # Ruffリンター設定
└── README.md # このファイル
開発者向け情報
コード品質
- Ruff: リンターとしてRuffを使用(設定:
ruff.toml) - 型ヒント: Python 3.9+の型ヒントを使用
- 日本語対応: エラーメッセージとコメントは日本語
ライセンス
MIT License - 詳細はLICENSEファイルを参照してください。