先日、修正しようと思っていた、自作ツールがなんとか動作するようになりました。

こんなツール

プログラムのドラッグ領域にファイルをドラッグ&ドロップすると、リストに追加されます(複数のファイルをまとめてドラッグすることもできる)。
フォルダ名を入力すると、一つ上位のフォルダ内に新しくフォルダを作って、リストのファイルをすべて移動します(このとき、すでにフォルダがあれば、そのフォルダ内に移動する)。
ツール設計の理由
OSのフォルダ作成の操作にやや不満があったからです。
通常は、ファイルを整理するときには、フォルダを作成してから、その中にファイルを移動します。
しかし、いつも先にフォルダを作成するのがベストとは限りません。
スクリーンショットや操作画面の写真ファイルをファイル一覧で見ていると、「このへんをひとまとまりにしたい」と思うことがあります。
「まとめたい」と思ったときには、まだフォルダがないので、いったんフォルダが作ってから、もう一度ファイルを探しに来る必要があります。これでは、流れるように操作できません。
また、コントロールキーなどでファイルを複数選択しても、間違えて普通のクリックをして、すべて選択が解除されてしまうことがあります。せっかく慎重に選んで解除されると、やる気が減退してしまいます。
ということで、ファイル一覧を保持しておいて、後からフォルダ名を決める、という作業ができるツールを必要としました。
あと、Macの場合は、同じ名前フォルダを統合すると、元のフォルダのファイルが消えてしまうことがあります。これも怖いので、同じ名前のフォルダなら、それを利用するようにしています。
修正箇所
バージョン1は、2020年5月ごろにできて、約1年半ほど重宝していました。
今回、プログラムを修正したのは、フォルダ作成の場所を変更するためです。
バージョン1では、一つ目のファイルのあるフォルダ内に、サブフォルダを作成していました。しかし、この方法だと、フォルダ内にファイルとフォルダが混在していきます。
そこで、一つ上のフォルダに、フォルダを作成することにしました。これなら、ファイルを整理すれば、ファイルを集めているフォルダはどんどんスッキリしていきます。
それにともなって、アプリ名をelecol(Electron File Collector)からcollup(Collect Files to Upper Folder)に変更しました。
また、フォルダ名にURLなどスラッシュを含む場合、自動的に最後の文字列をフォルダ名にするようにしました(これまではエラーになる)。
私の場合は、ブログで利用した画像を、ブログのURLスラッグで分類することが多く、URLをコピペでそのまま利用できるようにしたかったからです。
あと、アプリアイコンを作りました。
一年半ぶりの更新で、Electronのバージョンも大きく変わり(v9.0.0 → v16.0.5)、セキュリティの仕組みなども変わっていました。
そのままのコードでは、ビルドできなくて苦労しましたが、プロセスの仕組みを勉強して、修正箇所がわかりました。
ファイル管理ツールは、ファイルが消えてしまうと目も当てられないので、一般公開はできませんが、使い込んで行きたいと思います。

Electron Forgeとpreload.jsの使い方を知って、だいぶはかどりました。
こちらもどうぞ


