<

![endif]-->

fc2ブログ

mirrorMan - 拡張子なし表示対応してみた

folderOption.png
Macの漢字TALKからWindowsに移ったときは、ファイル名の拡張子というものに幻滅したものだった。アイコン画像もMacに比べれば小学生の落書きみたいなものだったし、OSが把握しておくべきファイルの種類をファイル名にくっつけて見にくくしてと、納得できる点なんか何一つなかった。

仕事を始めると、どのPCも押し並べて拡張子を表示し、エクスプローラはもっぱら詳細表示で使っているのを目にし、自分もそれになじんでいった。Macの方が優れているとそれでも思っていたけれど、いつのまにかファイル名を見るのと同時に拡張子も見るようになり、そのころにはアイコンなんて、なんとなく緑色ばっかりならエクセルファイルが並んでるんだな、くらいでしかなくなっていった。Windowsがいつから拡張子を表示しない設定をデフォルトにしたのか覚えてないが、それ以来、拡張子が表示されていないと脊髄反応で設定を切り替えるようになっていた。

いったんUNIX環境を旅して名前を変えられてWindowsに戻ってきたファイルはもう、UI上では何の種類のファイルか判別不可能だ。実際問題として、ファイルシステム上でファイルフォーマット管理がされて、グラフィカルなアイコンイメージのUIでユーザに示すことができていれば、拡張子は無用である。

nafudan.jpg
拡張子はまるで、小学校でみんなが胸に安全ピンでつけている名札のようなものだ。海外旅行でもして日本に戻ってくれば、それがローカルな文化にすぎないことがみえるが、その中の小学生にとってはあって当たり前になっていて、ないときにはその人が誰か分からないからでなく、ないことでその人でなくなっているような気になるようなものである。

とはいえ、ファイルを表形式に並べて管理するなら、アイコンイメージに許されるサイズはその目的には小さすぎる。拡張子がないよりはアイコンがないほうがまだましである。それにUNIXのシェル環境と日常的に行き来するなら拡張子はなくてはならない。

なんといっても、スクリプトからファイルにアクセスするには、GetFile()だろうがParseName()だろうが、拡張子がなければアクセスできない。エクスプローラを拡張子なしに設定しておくと、Shell.Application.NameSpace()で取得したItem().Nameプロパティは、
拡張子なしのファイル名を返すくせに!

そうはいったところで、拡張子が違う同じ名前のファイルをひとつのフォルダに置けるのだから、しょうがない。マイクロソフトは以前、拡張子を6ケタにしたいなどといっていたことがあったから、このダブルスタンダードはマイクロソフトが市場を支配している限り続きそうである。

noExtName1.png
というわけで、mirrorManは拡張子を表示しない設定でも動作するようにしてみた。
これまでは、一覧を表示したあとは、マウスやキーボードのフォーカス動作があって初めてフォルダやファイルのオブジェクトを取得しにいっていた。FFFTPと同様にファイルシステムと同期しているわけではないし、誰かが更新したりしているかもしれない動的な状態を保持したくなかったからである。
しかし、拡張子なしのファイル名ではそのオブジェクトにアクセスできない以上、一覧表示のタイミングでそれぞれのファイルやフォルダのオブジェクトへの参照を保持しておくしかない。

mirrorManで表示し、そのファイルをエクスプローラで削除した後でも、そのファイルを右クリック-プロパティで属性を確認できてしまう。ダブルクリックして初めてそのファイルがないことを知らされる。まるで亡霊のようで気味が悪い。ソースコードを書き換えるのも、ぱっとみシンプルにはなるものの非情で非常なストレス。おちょこ2杯開けて続ける。酒飲むとコーディングがはかどるの、知ってますか?実際の手の動きが速いわけではないけど、口でしゃべって書いてるみたいですよあはは↓。根っこがアイコンと拡張子のダブルスタンダードにあるせいか、どうすればいいのかわからない。




trackback


この記事にトラックバックする(FC2ブログユーザー)

mirrorMan - 拡張子なし対応で開き直る

前回からもぞもぞして決めた。 拡張子表示なし設定がされていても拡張子を表示してしまえ。 というわけで、 フルパスのPathプロパティをFil...

comment

Secret

while(aho.atEndofStream)

笹部 政宏
笹部 政宏
mail




フリーソフツ
Category
はてブ
Monthly Archive
New Entry
New Comment
New Trackback
RSS
Copyright © Kittens flewby me All Rights Reserved.