本ブログの更新は停止しています。更新は新しいサイトの Travellers Tales で行なっています。

Safari から URL & ページタイトル&テキストを取得 その2



先ほどのスクリプトでも便利にはなったのですが、スクリプトを呼び出した後に、Safari が最前面になってしまいます。最初から Safari が最前面ならいいのですが、iBlog やメーラを全面に出しておいて、背面にある Safari のウインドウのデータを取得した後に、再び元の最前面のアプリケーションに戻る場合には、もうひとひねり必要です。

実は、スクリプトメニューからスクリプトを呼び出した際に、最前面のアプリケーションを得るスマートな方法をうまく書けなかったので、なかなかこれが実現できなかったのですが、kaoru arimura さんが見事解決してくれました。(参照:dark side of the moon:最前面のプロセスを得る)

最前面のアプリケーションを得るには、
tell application "System Events
	set theFrontApp to name of (path to frontmost application)
end tell

として、最前面のアプリケーションの名前を取得しておき、
tell application theFrontApp to activate

としてやればよいのです。

そのように改造したスクリプトもアップロードしておきます。[ダウンロード:Text from Safari.scpt

Safari からデータを取得するだけでなく、最前面のアプリケーションでペーストまでしてほしいという場合は、スクリプトの最後に、以下のように付け加えてやればよいです。
tell application "System Events"
	keystroke "v" using command down
end tell

※ スクリプトメニューから最前面のアプリケーションを得る方法については、Web Scripter's Meeting 内の「文字列の取得 by AppleScript」にある栗田哲郎さんの発言から得たアイデアによるところが大です。素晴らしい方法を示して下さった栗田さんに感謝です。

Posted: 日 - 11月 7, 2004 at 11:44 PM               Hatena Bookmark



©