UhiyamaLAB個人開発者の創作備忘録

ドラッグ&ドロップで一括ファイル名変更!素材管理をラクにする「MultiFile Rename」を作ってみた

2024/12/092024/12/11Web開発ツール開発

ゲーム開発やWeb制作など、日々の作業では画像・動画・音声ファイルといった多様な素材を扱うことが増えます。これらを管理しやすいファイル名へ素早く変更するため、「MultiFile Rename」という簡易ツールを作成しました。

このツールは、ファイルをウィンドウへドラッグ&ドロップするだけで、連番付与、元ファイル名再利用、日付挿入、カスタムテンプレートによるリネーム処理を一括で行います。整理作業を省力化し、開発記録や素材管理の効率化を図りたい方にオススメです。

Githubリポジトリでソースコードを公開しています。環境に合わせた拡張や修正も容易なので、必要に応じてご活用ください。

主な特徴

  • ドラッグ&ドロップ対応:操作が直感的で、複数ファイルを一度に取り込めます。
  • 多彩なリネーム規則:連番のみ、連番+元名、元名+連番、自由度の高いカスタムテンプレートなど。
  • プレースホルダ対応{filename}, {date}, {num}を組み合わせて柔軟な命名が可能。
  • 重複・存在チェック:リネーム前に同名ファイルや既存ファイルを検出し、エラーで通知します。
  • ソート機能:元ファイル名や変換後名で並べ替えができ、想定した並び順で処理を行えます。
  • 拡張子カスタマイズ:非対応拡張子を利用したい場合は、コード内のリストへ追加するだけです。

  1. 開発の背景
  2. 導入方法
  3. 基本的な使い方
  4. 活用例
  5. ソースコードと拡張
  6. 免責事項

開発の背景

日々増加する素材ファイルを適切な名前で管理しておかないと、後々の整理で後悔することになります。特に記録用のスクリーンショットや試作品動画などが増えると、ファイル名が乱雑になり、目的のファイルを探すのに手間取りがちです。

「MultiFileRename」は、ドラッグ&ドロップによる簡便さと、カスタムテンプレートでの柔軟な命名規則設定を組み合わせることで、日々発生する素材整理作業をスムーズにする意図で作成しました。


導入方法

1. 必要な環境

Python 3.7以上で動作し、ttkbootstrapおよびtkinterdnd2を利用します。標準ライブラリtkinterは通常Pythonに同梱されていますが、環境によっては別途セットアップが必要な場合があります。

  • Python 3.7以上
  • pip install ttkbootstrap tkinterdnd2

基本的な使い方

  1. コマンドラインからpython MultiFileRename.pyを実行します。
  2. 開いたウィンドウへ対応拡張子(画像、動画、音声ファイルなど)のファイルをドラッグ&ドロップします。
  3. リストが更新され、変換後のファイル名がプレビュー表示されます。
  4. リネームモード(連番のみ、連番+元名、元名+連番、カスタム)を選択します。カスタムでは{filename}, {num}, {date}などを組み合わせた任意の命名規則を定義できます。
  5. プレビューを確認し、問題なければ「実行」ボタンで一括リネームを行います。
  6. 重複や既存ファイルがある場合はエラーが表示されるため、設定を修正できます。

対応拡張子例

  • 画像:.jpg, .jpeg, .png, .gif, .bmp, .tga, .tif, .tiff, .psd, .webp, .svg
  • 動画:.mp4, .mov, .avi, .mkv, .webm, .wmv, .flv, .f4v, .m4v
  • 音声:.ogg, .mp3, .wav

※非対応拡張子を扱いたい場合は、self.supported_extsに該当する拡張子を追加してください。


活用例

例えば、日付と連番を組み合わせた命名規則を用いれば、日毎の作業成果を容易に整理できます。また、元々のファイル名を維持しつつ連番を付けることで、似た形式の素材群を一括で判別しやすい名前へ統一することも可能です。

制作記録の整頓、レビュー用素材の準備、Web公開前のファイル名整理など、様々なシナリオで役立つと考えています。


ソースコード

ソースコードは以下のリポジトリで公開しています。ご自由にカスタマイズしてご利用ください。

GitHubリポジトリ


免責事項

本ツールの使用によるいかなる損害やデータ消失、トラブルについて、作者は一切の責任を負いません。自己責任でご利用ください。リネーム重複時に処理を停止するなど最低限のエラーハンドリングは実装済みですが、詳しくはソースコードを見つつご自身で調整してください。


まとめ

「MultiFileRename」は、日々の素材管理を少しでも効率化するための補助的なツールとして作成しました。ドラッグ&ドロップでの直感的な操作、豊富な命名規則選択肢、重複・存在チェックによる安全性向上など、素材整理に求める基本機能を備えています。

現場の運用に合わせてカスタマイズしながら、より円滑な作業フロー構築にお役立てください。

この記事をシェアする