操作スタイル2

※情報漏洩について考慮してない紹介記事がものすごく多いので、ご注意ください。
 エクスプローラーで実現している方式で「人の名前」「場所」「時刻」とか、管理上の「分類名」などのタグをセットした場合、他人に見られると要らぬトラブルを招くことが多々あります。
 この方式でタグを付与した場合、ファイルに書き込み、原版からは変更されているという認識を強く持つことをお勧めします。
※例えばExcelファイルのプロパティにある「作成者」「前回保存者」「会社」等の情報がトラブルなる事例が多いのは知られていると思いますが、タグも同様です。
※この記事は、うちのファイラーで実現している方式と、エクスプローラーで実現している方式のメリットとデメリットも論じています。

タグ(ラベル)によるファイル管理

 タグ(ラベル)に関する機能はVer.6頃から搭載されていましたが、この記事は正式機能となったVer.10以降が対象となります。

 タグ?ラベル?ファイラーにそんなもん要るわけないじゃん。
 いちいち、タグを手打ちで登録とかバカじゃね?

 ・・・そう思ってた時期がありました。ごめんなさい。
 Ver.5の後半から機能は載っていて、Ver.6からずっと隠し機能として日陰モノ&イロモノの扱いでしたが、いつの間にやら私自身の使用頻度がスゲェ高くなってることに気がつきました。
 今はもう、無いと生きていけません。


 どういうときに役に立つかと言うと、システム開発とかしていると、このような英数の羅列のディレクトリを扱うことがあります。

 プログラムIDだったり、機能IDだったり、画面IDだったり、色んなコードを使ってディレクトリ管理をする事が多いんですね。
 上図は、拙作のOFRってぇ、オフラインリーダーの管理ディレクトリですが、小説IDごとにディレクトリが切られて、その中に作品ごとのエピソードファイルが格納されていると言う構成になっています。
 これを、開発テストしている時に「フェアリーテイルクロニクル」の読み込み中にエラーが発生・・・えーと、ダウンロードしたファイルの格納場所が分からん!となるわけです。

 で、こちらがタグを付与して分かりやすくした実際の画面です。

 操作は、メインメニュー→編集→タグの配下に、タグ関連のコマンドが並んでます。
 よく使うのは、情報ダイアログと追加ダイアログですので、Ver.10からショートカットキーをそれぞれ Ctrl + I と、 Ctrl + O に割り振っています。

 確かに、タグ名を手打ちで入力しておくのが面倒なのですが、後から悩むことなく一発で探すことが可能になります。
 フォルダ開いて確認して、フォルダ開いて確認して、フォルダ開いて確認して・・・という無駄を省くことができると言うわけです。
 いやその、若い頃は覚えることもできてたんですが、歳取ってくるると物覚え悪くなりますし無理です。
 年々こういったディレクトリ構成も肥大化していますし、付いていけません。


 さて、こういったディレクトリ構成が特殊なものかと言うと、意外と多く出現します。
 開発関係だとMVCとか最近のフレームワークを使った開発プロジェクトでは、その種類は多岐にわたっており覚えるのが一苦労と言うことが多々あります。
 機能ごと、役割ごと、属性ごと、季節ごと、ユーザーIDごと、社員番号ごとなど、各種の「コード」で管理されたディレクトリは結構多いんですよね。
 まぁ先頭2文字で分類できるとか、枝番である程度判別できるとか、そういったルールが大抵あるんですが、たまにルールなしの無法地帯のプロジェクトに参加しちゃうこともあったりするわけですよ。
 あと、プログラム毎という表現だと、Program Files以下のディレクトリなんてものは、まさしくお仕着せの命名規則で作られています。
 せめて日本語で書いてあればもっとわかりやすいのに・・・と、みなさん1回くらいは考えたことがあるんじゃないかと思います。

 つまり、人間がぱっと見てすぐ理解できないディレクトリ名が大量に作られるシーンが多々あるわけで、そんな時にタグを付与&表示する機能が役に立ちます。
 効率の良いファイル名の付け方なんてものを学んでも、役に立たないケースが近年増えてきた訳です。

 というわけで、いくつかスクリーンショットで事例を紹介してみます。

 こちらはウチのホームページの編集中の画面ですが、作業の進捗状況とかメモ書きなどを残すことで、あれ?このファイル更新したっけ・・・というのを減らせます。
 作業メモみたいに使うイメージですね。


 他にも、SVNや共有ディレクトリに仕様書が大量にあって、自分の担当のファイルに目印を付けておくのも作業漏れを防ぐのに効果的です。
 忘れないように付箋でメモを貼っておく感覚です。


 オンラインソフトをダウンロードして、インストーラーを保存しておくとしましょう。
 10本くらいそんなことを繰り返して、1週間くらい経過後に格納されたファイルを見て、何のソフトのインストーラーか分からなくなっちゃうことってありますよね?
 ちょちょいとメモを残しておけば、記憶能力が残念であったとしても、後から悩む時間の無駄が省けるってモノです。


 もちろん、タグやファイル名や色分けで、検索して該当ファイルのあるフォルダーを開いたりすることが可能です。




As/Rでのタグの主たる用法

 As/Rでのタグの主たる用法は、大量にファイルがある状態に対して、その中に「メモ書き」を残すという目的です。
 例えば、自分で名付けたファイルじゃないもの、覚えきれないルールで作られた名称、似たような名前のファイルが沢山並んでいるところに、自分用の目印を付ける目的です。
 分類はあまり使えず、気軽にファイルにメモをつけたり、剥がしたりできると、元のディレクトリ構造のまま(速度を落とさないで)一覧で見せることに特化した考え方で作られています。
 極端な話ですが、100万ファイルあるフォルダーで、全部のファイルにタグを付けたとしてもAs/Rの性能劣化はほとんどありません。
 (むしろ、100万個のタグを登録する/読み込む/保存する方がしんどいです)

 これは各ファイルにペタペタ「付箋紙」を貼り付けるような使い方であり、厳密な意味の「タグ」とはニュアンスが異なります。
 他にあまり類を見ない概念であるため馴染みにくいかもしれませんが、慣れたら私のように無いとガチで困るようなことになるかもしれません。

 ちなみに、一般的なタグの用法は、「メモ書き」ではなく「分類」の方を主目的にしている場合が多いです。
 例えば「編集中」というタグを作って、編集中のファイルに「編集中」という属性を持たせることにより、編集中のファイルだけを一覧で並べるといった感じでしょう。
 As/Rではタグテキストがフリーフォーマットですから自由度が高すぎて、タグで分類とか、タグの構成のメンテナンスとか、PDM的な使い方を想像しちゃった方はガッカリするかも知れません。
 As/Rでは検索して絞込み、当該ファイルのあるフォルダーを開くというところまでしかできません。

 先に画像でも紹介していますが、特定のソフト名だけメモするという、1回しか使わないメモ書きをカテゴライズとか、再利用とか・・・無しですよね。
 タグのメンテナンスがめんどくさいですし・・・というわけで、めんどくさい部分をバッサリ省略して見た目の分かりやすさに重点を置いて作られた機能です。


As/Rのタグの欠点とよそ様の方式

 というわけで、タグの便利さを語りましたが、うちの「タグ」の方式は極めて残念な仕様が1個あります。
 リネームとかファイル移動とか、フルパスファイル名が変わった場合、タグはリンク切れという扱いになり、単なるメモリ上のゴミになります。
※レジストリ値を変えることで、Windowsでも大/小文字を別物と認識するモードがあるので厳密な一致を必要としています。
※リンク切れタグの削除や、上記の検索画面で抽出して削除することもできます。

 何でこんなしょっぱい仕様なのかというと、タグを付与するには3つ方法があります。
 こういうお奨め記事にありがちな、自分の得意なところを列挙した卑怯な比較表ですが、ざっくりまとめておきますので比較してみてください。
 (客観的に「こういう観点も忘れちゃいけねぇぜ!」とかありましたらご連絡ください)

 もちろん、As/Rでもファイルプロパティと詳細カラム表示でエクスプローラー方式のタグは扱えますし、ざっとみたところ副ストリームタイプのソフトも対応できないものは見当たりませんでした。
 画像とか音楽とか動画とか、ファイルフォーマットでタグが認められている場合なら、そちらに記載して管理するのもアリです。
 メリットとデメリットを把握した上で、使い分けて、便利に使い倒すことを推奨します。


1.エクスプローラー方式
 ファイルに直接書き込みますので、ファイルシステムを選ばず、移動してもコピーしても常に保持されます。
 ただし、タグを付けた時点で加工された別のファイルになりますし、タグを付与できるファイルの種類は極めて少ないです。
 (一部の画像、一部の動画、Microsoft社のOffice関連のファイル等です)
 気をつけて運用しないと、情報漏洩を引き起こしたり、電子署名をしていて改竄検知に引っかかったりと、予期せぬ所でトラブルを起こすことがあります。
 また検索するには、ドライブの暗号化やインデックスの作成といった、事前の準備が必要となります。

2.代替ストリームの利用
 NTFSの機能を使った、ファイルの代替ストリームというエリアに書き込む方式です。
 副ストリームとか、副次ストリームとか呼ばれることがあります。
 NTFS専用であるため、各種のファイル操作や経路によって失われることがあります。
 (FAT系、ReFS、SAMBAなど対応していませんし、メール送信、圧縮、USBメモリ経由で消えることもあります)
 意外なところでは、高速なファイルのコピーをうたっているソフトや、ファイルの上書き保存(EXCELなどのように別名保存→リネームするタイプ)などで情報が失われることがあります。
 代替ストリームを含めた同一性は失われますが、ファイルその表側へ書き込むのではないので復元可能な場合が多いです。
 ここで述べているのは複数のソフトのざっくりと共通的な特徴に過ぎませんので、個々の製品事情と異なる場合があります。
 余談ですが、エクスプローラーはこちらも併用しており、ファイルプロパティで編集できる場合があります。(テキストを入力してもバイナリになっちゃいますが・・・)

3.独自のデータベース方式
 アプリケーション自身で、パスとタグ情報を独立して管理する方式です。
 As/Rはここに分類され、先述べたとおりファイル移動の際にはリンク切れになります。
 元のファイル対しての書き込みはありません。

エクスプローラー方式代替ストリーム利用方式As/Rの方式
ファイル移動での保持○保持△条件付保持
コピー/移動ソフト依存
圧縮、ドライブ移動などで消失する場合あり
×消失
タグを付けたファイルの同一性×なし△条件付
タイムスタンプ喪失
○完全一致
付与できる対象×動画、画像など
タグの仕様を含んでいる種類のみ
○実体さえあれば可
ソフト依存
○実体さえあれば可
格納可能情報の数△ファイルの種類に依存
ファイルフォーマット仕様で決まっている
○何でもあり
ソフト依存
○何でもあり
(テキスト1個、色分け可)
Windowsのバージョンによる差異×強く依存
バージョン違いで表示されないことがある
△NTFS依存○無し
タグの付けられないフォルダー△要書き込み権限
要インデックス作成済み
要暗号化など
△NTFSのみ○実体さえあれば可
検索結果の抽出△要インデックス
要暗号化
やや遅い
×Grepと等価
かなり遅い
○オンメモリのため高速
1件あたりの読み取り速度△シェル経由で遅い
ミリ秒単位
×ファイル内容の読み込みと等価
数十ミリ秒単位
○速い
ナノ秒単位
情報漏洩リスク×日常茶飯事
良くある
△近年受け渡し方法が増加○皆無
扱えるタグの数○ほぼ無制限○ほぼ無制限△オンメモリのため10万件程度が推奨レベル
※表示は劣化しません
快適さはタグデータファイルの読み書き速度に依存します
タグの一覧性△詳細表示のカラムで一覧可×右クリックメニューなどからの専用ダイアログ○専用のオーバーレイ表示
エクスプローラー方式の詳細表示カラム


ファイラー界のタグ

 ぶっちゃけた話をすると、Windowsがファイルシステムとしてタグをサポートしてないので、Windowsでタグで管理をしようとすること自体がマイナーであり続けます。
 まだ覚えている方がいるか怪しいですが、Windows Vistaで搭載されそこねたWinFSというフォーマット、あれが放棄されたことで、その後の技術革新が起きませんでした。

 とはいえ、タグでファイルを管理するソフトは意外と多く存在しています。
 しかしその多くは「タグを付けることができる」「タグで検索できる」だけで終わってしまい、あまり便利に利用されているように見えません。
 数え上げるのも面倒なほど色んなことができるファイラーで、「タグ」を管理できると言うのは強力なストロングポイントといって良いと思います。
 As/Rを経由することによって、さまざまなソフトと連携していければ、かなり便利に省力化ができるのではないかと思ってます。

 さて現時点で、タグ関連はiOSが強いジャンルになっていますので、MacやiPadなどに馴染んでいる人ほどタグを使いたがるような気がします。
 ユーザーエリアやアプリ単位でサンドボックス化されているため、システムファイルが見えないように隔離されています。
 ユーザーが作成した、または取得したファイルのみが扱えれば良いのですから、タグという管理方法とは親和性が高いです。
 その流れで、最近の版では「色」のタグが貼れるようです。
 本稿執筆のためにちょろっと調べただけであまり詳しくないので偉そうな事は言えませんが、As/Rのようなタグ付け方も見せ方も、さほど目新しいモノではないようです。(涙)
 横串で検索できるかは、イマイチ分かりませんでした。
 ちなみにiPhone4(2011年購入)が未だに現役でして、そこで私のiOSに関する知識は止まってますので、あしからず。

 次に、Evernoteなどに代表されるクラウドストレージ系でしょうか。
 Evernoteを例にすると、「ノート」と呼ばれる個々の記事に対して、複数の「ノート」をまたぐことができる「タグ」、そして「タグ」は再利用可能なモノというのが、うまいこと整理するコツのような気がします。
 概念がモヤっとしていますが、きれいに整頓されている人の環境を見ると、なるほどーと納得できます。
 コツは記事よりも、タグの方が多くなるように管理するとか・・・真似して整理できる自信はありません。