📒

フォルダビュワーをVSで作った。

2025/01/25に公開

作ろうと思った経緯。

もともとは、全ファイル検索ソフトであるeverythingを自分で作ってみたいと思い制作を開始した。しかし、もうあるものを作ってもしょうがないと途中で思い、方針を変えた。「今ないもの」を作ろうと考えた。検索できるものは、すべてeverythingで解決なので、検索できないものを探す手段を考えることにした。一つ候補として挙がったのは、グループ化することによって、視認性を上げるという方法だ。
 これは、同一の種類のファイルが多くある場合に重宝する。適切にフォルダ分けされていれば問題ないが、フォルダの階層が増えすぎるのも使用感が悪くなる原因となる。


youtubeのエルデンリングの動画のタイトルを実際にグループ化した結果がこれである。
タイトル、ノーダメージのようなものの後に、武器種によるくくり、そのあと、敵の種類の区分などが出てきている。複数タイトルを突っ込むと、例えば、エルデンリング、ホロウナイトのように最初に並んでくれる。これは、朗読バージョンで試すと、作者ごとにいい感じに分かれてくれたのを確認している。

これをみて、「エルデンリ」のような区分のされ方がないことに注目してほしい。
 適当に作るとチグハグな名前のグループが量産される(-_-;)。グループ名もグループの中で一番文字列の少ない奴で全文字列作って、ひとつでも違うファイルがあったら、ほかを試すという方法で名前を決めてる。
処理時間は、50ms。高速化を詰めようとし、一番早いとされるアルゴリズムも使ってみたが、オブジェクトを作成する時間が問題になって、これくらいで頭打ちになる感じだった。

グループ化の利点は、ゲームのタイトルごとに明確に区分されやすいので、目的のファイルを見つけやすくなるところだ。100ファイル同じゲームのファイルだったら、結構スクロールする必要があるから、これは大きな改善といえるのではないか。

このやり方でも、不便だと感じたのはあまり重複しないようなファイルを探す場合と、場所はわかっているのだけれど、フォルダの階層が深すぎてアクセスしにくいファイルの場合である。

ショートカットを作ればいいのでは??と思ったことだろう。ショートカットは見失うことが多い。ショートカットファイルでは、フォルダを移動してしまうので、複数の場所を探すのが難しい。新しいタブで開く場合にも右クリックしてタブをクリックしてやらないといけないのでめんどくさいと感じていた。

作成したソフト

というわけで作った。

すべての要素が見えるのではなく、ファイルは見えないようになっている。グループを見たいのであって、各要素が見たいわけではないので、フォルダだけ見えるようにしている。AddFolderでフォルダを選択できる。vsでの開発は初めてなので、高速化はあまりしていない。読み込む階層を3階層までにしていて、それ以降は、そのフォルダを開いて、追加で登録する感じとしている。追加したフォルダは、履歴として残り、それを押すと、すぐに開ける。
単純に一つのフォルダを表示する感じにしなかったのは、できるだけ、登録するものを減らしたかった、という理由と、同一フォルダ内にあるフォルダ等にもアクセスできるようにし、エクスプローラ側での移動を最小限にし、使い終わったらエクスプローラを閉じるという風な形にしたかったためである。エクスプローラは重いファイルがあると開くのが遅いので、あまり好きではない。

結構気に入っている。ファイルを表示しないので、見やすい。フォントも見やすいのに変えている。
深めの階層のフォルダを設定して使っている。
スタートアップアプリとして設定もできるので、使い勝手もいいと思う。
左クリックで、より下の階層を見ることができ、フォルダを開く場合は、右クリック一発である。

感想だったり、配布希望などあれば言ってもらえたらうれしいです。

Discussion