Photoshopのあんまり意味のないメニュー
そのまま。閉じて、Bridgeを起動する、だけ。
閉じたファイルをBridgeで選択してくれるような気の利いたことはしないらしい。
あとですね。伝統的に「…」のついてるメニューはダイアログ出すなりなんなりするものだと思っていたんですが。即閉じて「Bridgeを起動」しますね。即。
アクションに組み込む時はそれなりに使えたりするメニューなのですが、期待していた動作は
(閉じても閉じなくてもいいから)Bridgeで該当ファイルを選択
なのですよ。何がしたいのかと言うと…今Photoshopで開いているJPEGをCamera RAWで開きなおしたい、ということありませんか?
Photoshopにそれがあればいいんですが、どうにもCamera RAWで開き直すのをAppleScriptで見つけられなかったのもありこういう期待が。だって「閉じて」「開く」をファイルメニューに置くなんてちょっと無駄だと思いませんか…
Photoshop環境設定のCamera RAWでJPEGとTIFFを問答無用で開く設定にしたり、開くダイアログでJPEGの形式をCamera RAWにして開く、ことはできます。がめんどくさいじゃないですか…
そこでAppleScript
JavaScriptでもいいんですが。ASもろくに書けないので…
単純に、PSの最前面ドキュメントのパスを取得してBridgeに放り込むだけです。
- try (おためし。tryで囲まれた中身はエラーが出ても表示しない)
- tell application “Adobe Photoshop CS6″ (PsCS6に話しかける)
- set thisDoc to file path of current document(変数thisDocに、現在のドキュメントのファイルパスを入れる…PsCS6に話しかけているので、PsCS6が分かる言葉で話してOK:current documentやfile path)
- tell application “Adobe Bridge CS6”(おもむろにBridgeに話しかける)
- activate(前面においで)
- open thisDoc(変数thisDocに入っているファイルパスを表示:OPENしたまい)
- end tell(Bridgeさんさようなら)
- end tell(PsCs6さんさようなら)
- end try(おためしここまで)
これでいいのか…まぁ動いてるしファイル開いてなくても文句言わないし…AppleScript魔神が突っ込んでくれるでしょう…と思う…
ファイルはこちら。
BridgeREOpen.script
20130213追記。いろいろ突っ込みを受けて、書き直しました。
- (tryで全部挟んでいたのを止めて、条件式で「何かする」「しない」を分けるようにしましたよ)
- tell application “Adobe Photoshop CS6”
- if (count document) > 0 then (Photoshopドキュメントが一つ以上ある場合、end if までやるよ)
- set thisDoc to file path of current document as alias(alias(形式)でないとBridgeにドットのたくさん付いたファイル名が渡らないようなので追加している)
- tell application “Adobe Bridge CS6”
- activate
- open thisDoc
- end tell
- end if(ここまで、ドキュメントが一つ以上あるときは処理するよ。一個も無いときは次に飛ぶ…結果、何もしない)
- end tell
20130218追記・SystemEventでCmd+Rを送るように変更
@md5500 さんに教えてもらいました!
Bridgeで参照したのちCamera Rawで即開くので、前のScriptも一緒に使います… エラー処理等していないのでJPEG、TIFF以外を開くと警告音が出るだけで何もしません(できません)
ダイアログ出して処理を選ばせるのはうざったい…
20130218の版:OpenWithCameraRaw.script
- tell application “Adobe Photoshop CS6”
- if (count document) > 0 then
- set thisDoc to file path of current document as alias
- close current document(CameraRAWで開くから、とりあえず閉じておこうかと)
- tell application “Adobe Bridge CS6”
- activate
- open thisDoc
- end tell
- tell application “System Events” to tell process “Adobe Bridge CS6” to keystroke “r” using {command down}(SystemEventsアプリを使ってBridgeにコマンド+Rさせている:CameraRawで開くキーボードショートカットです)
- end if
- end tell
これを
~/Library/Scripts/Applications/Adobe Photoshop CS6/
以下に入れてください。
フォルダは無ければ作ってください…アプリケーション名のフォルダを作りその中にスクリプトを入れると、該当アプリでのみスクリプトがメニューで選べるようになります。
Application/ユーティリティー (FinderでコマンドシフトU)に入っているAppleScriptエディタ
を起動し、環境設定を見ると
スクリプトメニューをメニューバーに表示できるようになります。
こんないいかげんに作ってもとりあえず動いちゃうんで、楽しいですねw
ちょっとだけ書けるようになるとずいぶん面白くなります。
今回もTwitterでAppleScript魔神の方々に大変お世話になりました。
@md5500 さん、 @macneko_ayu さんありがとうございました。
Finderから選択フォルダをBridgeで開くスクリプト
@md5500 さんの書いたスクリプトにちょっと付け加えてみました。
Finderのツールバーにドラッグ&ドロップで登録し、画像の詰まったフォルダを開いてこれをクリックすると、そのフォルダをBridgeを開いて参照します。
BridgeOpen.app http://d.pr/f/rRco
アプリケーションになっていますのでそのまま登録してください。Bridgeのアイコンでも付けておくと分かりやすいかも。
@md5500 さんの作ったこのスクリプト、一部DTPerには必須アイテムとなっております。