Last update: 2008-09-09
この AppleScript は Firefox とプロファイルを関連付けて、通常またはセーフモード起動を選択して起動するラウンチャースクリプトです。
Terminal.app から実行する必要のある Firefox の起動オプションを AppleScript によって簡単に行うことができます。また、Terminal からのコマンドでは複数や同時起動時のセーフモード起動は不可能ですが、AppleScript Launcher 3.1 では実現できます。
これは異なるバージョンの Firefox をインストールしている場合や目的別のプロファイルを用意して使い分けているようなケースでお役に立つでしょう。
スクリプトを呼び出せるように、別ページ「AppleScript の使い方」を参照して、メニューバーに AppleScript を表示させます。
ユーザ・スクリプト・フォルダを用意して、その中に「Firefox Launsher」のようなフォルダを作り、スクリプトの保存先とします。既に設定済みの方は プロファイルを追加する へ進んでください。
Firefox のパスとは Firefox 本体のインストール場所のことで、通常 Applications (日本語名称だとアプリケーション)の直下にインストールしていると思います(確認してください)。その場合、パスは次のように記述されます。
/Applications/Firefox.app
もしフォルダ作ってインストールしている場合は
/Applications/フォルダ名/Firefox.app
のように記述します。フォルダを作っている場合、スクリプト利用でトラブルを避けるためにも、必ず 英数でスペースを使用しないフォルダ名称 をつけてください。
プロファイル名は、あなたが使用している Firefox の設定を保存しているフォルダの名称です。
この名称が分からない場合は、Firefox のプロファイルマネージャを起動すると確認できます。
枠内に表示されているリストが登録しているプロファイル名称で、ご自分でプロファイルを作っていない場合は「Default」という名前が使用されます。
ここで、今後スクリプト経由で起動するなら、ウィンドウ内の「今後このプロファイルを使用する」のチェックを外しておきます。こうすることで、うっかり Firefox を起動してしまった場合にプロファイルを上書きしてしまうことを防ぎます。
名前を確認したら Firefox を一度起動して、すぐに終了してください。これで次回からはプロファイルマネージャを経由して起動するようになります。
名前の確認は Profiles を直接開いてもできます。こちらを参考に Profiles フォルダを Finder に表示してみてください。
Firefox 3.0 と Firefox 2.x を同居して使い分けるとか、テスト用のプロファイルを用意して使い分けたいといった場合は、それぞれ専用のプロファイルを追加します。
これは通常 Firefox のプロファイルマネージャで行ないます。上の画像を参考に「新規プロファイルを作成...」ボタンをクリックして新しいプロファイルを追加してください。
スクリプトをダウンロードして Firefox_Launcher3.1.scpt をスクリプトエディタで開く(ダブルクリックして起動しないように)か、スクリプトエディタの新規ウィンドウに、下のスクリプトをペーストします。
--Firefox Launcher 3.1
--ユーザ設定パート
--1.起動するFirefoxを指定します。ダブルクォート内のパスを使用するFirefox.appのパスに変更してください。(""は消さないように注意)
-- 例1:Applications の直下の Firefox3 フォルダ中のFirefox.app: パス=Firefox3/Firefox.app
-- 例2:Applications の直下の Firefox.app: パス=Firefox.app
property usersPref1 : "パス"
--2.プロファイル名を使用するプロファイル名称に変更してください。(""は消さないように注意)
property usersPref2 : "プロファイル名"
--3.二つの設定が完了したら、ツールの「コンパイル」をクリックし、コンパイルが正常に完了したらユーザ・スクリプト・フォルダの中に保存します。
--ここまでがユーザ設定パート
--Run Fx Launcher script
tell application "Finder"
activate
set controlWindow to (display dialog "Firefox Launcher 3.1" & return & return & "選択した方法で Firefox を起動します。" & return & return & "[キャンセル] をクリックするとラウンチャーを終了します。" buttons {" キャンセル ", "通常起動", "セーフモード"} default button 2 with icon 1)
if button returned of controlWindow = "通常起動" then
try
set cmdStr to "cd /Applications/'" & usersPref1 & "'/Contents/MacOS/; ./firefox-bin -p '" & usersPref2 & "'> file_path 2>&1 &"
do shell script cmdStr
on error error_message
activate
display dialog error_message
end try
else if button returned of controlWindow = "セーフモード" then
try
set cmdStr to "cd /Applications/'" & usersPref1 & "'/Contents/MacOS/; ./firefox-bin -p '" & usersPref2 & "' -safe-mode> file_path 2>&1 &"
do shell script cmdStr
on error error_message
activate
display dialog error_message
end try
else if button returned of controlWindow = " キャンセル " then
return
end if
end tell
スクリプト内の「ユーザ設定パート」にある、property usersPref1 と property usersPref2 が設定ヶ所です。ここでは大文字・小文字が区別されるので、注意して入力します。
--ユーザ設定パート
--1.起動するFirefoxを指定します。ダブルクォート内のパスを使用するFirefox.appのパスに変更してください。(""は消さないように注意)
-- 例1:Applications の直下の Firefox3 フォルダ中のFirefox.app: パス=Firefox3/Firefox.app
-- 例2:Applications の直下の Firefox.app: パス=Firefox.app property usersPref1 : "パス"
--2.プロファイル名を使用するプロファイル名称に変更してください。(""は消さないように注意) property usersPref2 : "プロファイル名"
--3.二つの設定が完了したら、ツールの「コンパイル」をクリックし、コンパイルが正常に完了したらユーザ・スクリプト・フォルダの中に保存します。
--ここまでがユーザ設定パート
Applications 直下に Firefox.app をインストールしている場合のパスは
Firefox.app
Firefox3 というフォルダにインストールした場合は
Firefox3/Firefox.app
が記載パスとなります。
プロファイル名は、上で確認した使用するプロファイルの名称を入力します。
例1:Applications の直下の Firefox3 フォルダ中のFirefox.app
property usersPref1 : "Firefox3/Firefox.app"
property usersPref2 : "Firefox3-Default(仮名)"
例2:Applications の直下の Firefox.app
property usersPref1 : "Firefox.app"
property usersPref2 : "Firefox2-Default(仮名)"
以上で設定は終了です。コンパイルをクリックしてテキストをスクリプトに変換してください。問題がなければ下のような結果になりますが、記述ミスがあればアラートが表示されます。
完成したスクリプトはユーザ・スクリプト・フォルダの中に保存します。ユーザ・スクリプト・フォルダの場所が分からない場合は、メニューバーの AppleScript をプルダウンして「スクリプトフォルダを開く」を選ぶとユーザ・スクリプト・フォルダを表示するメニューが表示されます。
以上でスクリプトの準備が整いました。
メニューバーの AppleScript メニューより起動スクリプトを選択します。
スクリプトが起動するとラウンチャーウィンドウが表示され、[通常起動]または[セーフモード起動]の何れか選択した方法で Firefox とスクリプトを関連付けて起動します。[キャンセル]をクリックするとラウンチャーは終了し、Firefox は起動しません。
なお、新しいスクリプトでは[標準起動]をデフォルトボタンに指定しています。
ユーザが記入するのはユーザ設定パートのみですが、Run Fx Launcher script の中の"選択した方法で Firefox を起動します。"の部分を"選択した方法で Firefox 3.0.2 を起動します。"のように書き換えておけば、下のスクリプト起動画面のように、どの Firefox が起動するスクリプトかをラウンチャーウィンドウで確認できるようになります。
また、デフォルトボタンは[通常起動]に設定していますが、“default button 2” の値を「1」にすればキャンセルがデフォルトボタンとなり、default button の記述全体を消してしまえばデフォルト設定を無効にできます。
一つだけ注意事項を。
一度書き換えを行なったスクリプトを自分以外のユーザに譲渡することはやめてください。他の方のアカウントでは正常に動作しない可能性があります。
Firefox Launsher 3.1 は、使い勝手と品質の向上、それと思いつきで予告無く変更する場合があります。←ようするに気まぐれで
変更を行なった場合はサイト内でトピックを掲載します。
私の環境ではクリティカルな問題は起きていないが、お気付きの点があればお知らせいただけると幸いです。
連絡先:Hide Kei yattemortors@gmail.com(半角英数に変換ください)
Firefox Luncher 3.1 はこちらからダウンロードすることもできます。
firefox_Launcher3.1.dmg