これも昨日作った Automator のワークフローの一部。
Safari を起動したとき、いつも同じ URL を開く。それが一つならホームページとして設定しておけば良い。けど複数あったらどうすれば良い? Firefox なら、複数のページをホームページに設定できる。起動時に各ページが別のタブで開かれる。残念ながら Safari ではこれができない。タブを開きながらブックマークや Top Sites からページを開く。そういう作業こそ自動化したいもの。
1 行目、そして 18 〜 19 行目は、Autometor のアクションとして使うときのオマジナイ。この AppleScript 単独で(AppleScriptエディタから)実行する場合は、この 2 行は取り除くこと。4 〜 16 行が本体部分。AppleScript について書かれたページを、ググって探し、いくつかのサンプルを切って貼ってできあがったものだ。
- 4 行: 開きたい URL のリストを変数(urlList)にセット
- 5 行: リスト内の URL の個数を変数(numURLs)にセット
- 6 行: Safari に対して以下の Apple イベントを送る
- 7 行: Safari ウィンドウの位置とサイズを指定
- 9 行: まず、1つめの URL を開く
- 10 〜 15 行: 新しいタブを作りながら、与えられた URL を開いていく
(safari_init.scpt)
1: on run {input, parameters}
2:
3: (* Your script goes here *)
4: set urlList to {"http://logrepo.blogspot.com", "http://www.google.com/", "http://www.google.com/reader/view/", "http://twitter.com/"}
5: set numURLs to (count urlList)
6: tell application "Safari"
7: set bounds of window 1 to {0, 22, 1024, 1350}
8: activate
9: set URL of document 1 to (item 1 of urlList)
10: tell window 1
11: repeat with i from 2 to (numURLs)
12: set current tab to (make new tab)
13: set URL of document 1 to (item i of urlList)
14: end repeat
15: end tell
16: end tell
17:
18: return input
19: end run
この程度のことならググって試行錯誤を繰り返せばなんとかなる。AppleScript のことをほとんど知らなくても大丈夫。これ以上になると、AppleScript のことを勉強した方が良いだろう。Mac Dev Center の Mac OS X Reference Library に AppleScript の資料がある。
関連リンク
- AppleScript Overview (Mac OS X Reference Library)
- AppleScript Language Guide (同上)
0 件のコメント:
コメントを投稿