2011年8月21日日曜日

[AppleScript] とてもユニークな命令、最前面のアプリ名を取得

こんなのあるんですねぇ。妄想心を駆られます。
ちょっと忘れたけどWebで見かけた、最前面のアプリ名を取得する命令。


tell application "System Events"
set front_app to name of (path to frontmost application)
end tell

最前面のアプリ次第で分岐する、といった使いかたが主でしょうか。
または、全てのアプリが共通で行えるような動作を「最前面のアプリ」で実行するとか。
「tell application front_app」といった使いかたも出来るのがミソ。
ちょっとすぐには実装したい用途が思いつきませんが、なかなか面白いですよね。


今、言った先から思いつきました。
どのブラウザからでもURLをコピーする命令。
まさか前回苦い思い出を作ったFirefoxが参考になるとは・・・
実装例はこんな感じ。


tell application "System Events"
set front_app to name of (path to frontmost application)
set NUM to number of front_app
set NUM to NUM - 4
set front_app to characters 1 thru NUM of front_app as text
tell application front_app
keystroke "l" using {command down}
keystroke "c" using {command down}
end tell
end tell

「どんな需要だよ」って感じは否めませんが、こういう使いかたも出来る、と。
command + lでロケーションバーアクティブは、大抵のブラウザで共通ですし。
コピペが使えるということは、テキストエディタなどでも用途があるかもしれません。
そのほかに使えるコマンドと言えば、検索、設定、ヘルプ、アプリ終了とかでしょうか。


あ、またまた思いつきました。
ブラウザで表示している記事を全選択 → コピー → Evernoteにペーストとかは面白そう。
ゴテゴテしたブログではビューが崩れるでしょうが、うちみたいにシンプルなら可能。
今試してみて、Yahooの個別ニュースはいけますね。
シンプルなページをクリップするには、間違いなく最速でしょう。
・・・が、実際にペーストする必要があるので、一度Evernoteをアクティブにする必要があるのが難点かな。。。
最後に「front_app」をアクティブにすればいいことですけど。気になる人は気になるかも。(僕は気になる)
なんにせよ、frontmost、ユニークですね。

0 件のコメント:

コメントを投稿