Bridge CS3/CS4/CS5はキーワードやレーティングなどを使ってファイルや画像を選択することができます。画像ビューアなので当然検索機能も備えています。が、検索機能がいまいち使いにくい(サイドバーに検索バーでもあった方が楽)感じがします。また、検索した結果に応じてヒットしたファイルだけを選択する、といったこともできません。
ということで、仕方ないのでそこらへんはスクリプトで解決。まず、最初のスクリプトは特定のフォルダを開いて、その中にある全てのファイルを選択するものです。以下のサンプルではMacOS Xでのパスになっています。ユーザー名がdgcrでデスクトップフォルダ内にあるImageフォルダを開きます。そのImageフォルダ内にある全てのファイルを選択します。
var doc = new Document("/users/dgcr/Desktop/Image/");
doc.selectAll();
次のスクリプトは名前が決まっているファイルを選択するものです。以下のサンプルではユーザー名dgcrのデスクトップのImageフォルダ内にあるsample-1.jpgとsample-2.jpgを選択状態にしてウィンドウを開きます。
var doc = new Document("/users/dgcr/Desktop/Image/");
var selObj = new Thumbnail("/users/dgcr/Desktop/Image/sample-1.jpg");
doc.select(selObj);
selObj = new Thumbnail("/users/dgcr/Desktop/Image/sample-2.jpg");
doc.select(selObj);
次のスクリプトは特定の文字列が含まれるファイルを選択状態にするものです。
var path = "/users/dgcr/Desktop/Image";
var findText = "sample";
var doc = new Document(path);
var fileList = doc.thumbnail.children;
for(var i=0; i<fileList.length; i++){
var fName = fileList[i].name;
if (fName.indexOf(findText) > -1){
doc.select(doc.thumbnail.children[i]);
}
}
新たにウィンドウを開くのではなく現在アクティブになっているウィンドウ内で選択したい場合には以下のようになります。
var findText = "sample";
var doc = app.document;
var fileList = doc.thumbnail.children;
for(var i=0; i<fileList.length; i++){
var fName = fileList[i].name;
if (fName.indexOf(findText) > -1){
doc.select(doc.thumbnail.children[i]);
}
}
検索するファイル名は
var findText = "sample";
のsampleを変更してください。部分一致なのでsample2やtoday_sampleなどのファイル名が選択対象になります。
[
サンプルをダウンロード]