files2md_tags プログラム仕様

画像ファイルからサムネイルを生成し、Markdown形式の画像タグやファイルリンクを生成するスクリプト。

詳細説明:

位置引数で複数のワイルドカードを受け取り、指定されたファイルを処理します。 画像ファイルに対してはサムネイルを生成し、Markdownの画像一覧として出力します。 画像以外のファイルはデータファイルとして扱い、Markdownリンク一覧を出力します。 出力形式はSphinx / Markdownでそのまま利用しやすい構成になっています。

関連リンク: images2md_tags_usage

converter.files2md_tags.expand_patterns(patterns: Iterable[str]) list[Path][ソース]

複数のワイルドカードパターンを展開し、重複を除いたファイルパスのリストを返します。

指定された各パターンにマッチするファイルを検索し、重複を排除してソートされたPathオブジェクトのリストとして返します。

パラメータ:

patterns (Iterable[str]) -- 展開するワイルドカードパターンのリスト。

戻り値:

重複を除いたPathオブジェクトのリスト。

戻り値の型:

list[Path]

converter.files2md_tags.format_data_section(files: list[Path]) str[ソース]

データファイルのリストからMarkdown形式のセクションを生成します。

各ファイルへのリンクを含む「## 生成されたデータファイル」セクションを作成します。

パラメータ:

files (list[Path]) -- データファイルのPathオブジェクトのリスト。

戻り値:

生成されたMarkdown文字列。ファイルがない場合は空文字列。

戻り値の型:

str

converter.files2md_tags.format_image_section(files: list[Path]) str[ソース]

画像ファイルのリストからMarkdown形式のセクションを生成します。

各画像に対するサムネイル付きのリンクと、元の画像へのリンクを含む 「## 生成された画像一覧」セクションを作成します。

パラメータ:

files (list[Path]) -- 画像ファイルのPathオブジェクトのリスト。

戻り値:

生成されたMarkdown文字列。ファイルがない場合は空文字列。

戻り値の型:

str

converter.files2md_tags.is_image_file(path: Path) bool[ソース]

指定されたパスが画像ファイルであるかを判定します。

ファイルの拡張子が定義済みの画像拡張子セットに含まれるかをチェックします。

パラメータ:

path (Path) -- チェック対象のファイルパス。

戻り値:

画像ファイルであればTrue、そうでなければFalse。

戻り値の型:

bool

converter.files2md_tags.is_thumbnail_file(path: Path) bool[ソース]

指定されたパスがサムネイルファイルであるかを判定します。

ファイル名が "-s" で終わるかをチェックします。

パラメータ:

path (Path) -- チェック対象のファイルパス。

戻り値:

サムネイルファイルであればTrue、そうでなければFalse。

戻り値の型:

bool

converter.files2md_tags.main() None[ソース]

スクリプトのメイン処理を実行します。

コマンドライン引数を解析し、指定されたファイルパターンに基づいて、 画像ファイルのサムネイル生成およびMarkdown形式のデータファイル/画像一覧の出力を実行します。

converter.files2md_tags.make_thumbnail(src: Path, thumb: Path, width: int, overwrite: bool, update: bool) bool[ソース]

指定されたソース画像ファイルからサムネイル画像を生成します。

サムネイルが既に存在する場合、overwriteまたはupdateフラグに基づいて処理を決定します。 updateがTrueの場合、ソース画像が新しい場合にのみサムネイルを更新します。

パラメータ:
  • src (Path) -- 元となる画像ファイルのパス。

  • thumb (Path) -- 生成するサムネイルファイルのパス。

  • width (int) -- サムネイルの幅(ピクセル単位)。高さはアスペクト比を維持して自動計算されます。

  • overwrite (bool) -- 既存のサムネイルを強制的に上書きするかどうか。Trueの場合、既存ファイルは無条件に上書きされます。

  • update (bool) -- 元画像がサムネイルよりも新しい場合にのみサムネイルを更新するかどうか。Trueの場合、更新日時を比較します。

戻り値:

サムネイルが新しく生成または更新された場合はTrue、それ以外はFalse。

戻り値の型:

bool

例外:

ValueError -- ソース画像のサイズが無効な場合(幅または高さが0以下)。