今夏初めにリリースされたSafariの最新バージョンでは、Appleのウェブブラウザに新しい拡張機能が導入されました。拡張機能を使用すると、開発者がHTML、CSS、JavaScriptを使用して作成した小さなダウンロード可能なパッケージを通じて、Safariの動作を変更できます。
Safari 5で数ヶ月間ブラウジングしてきたので、いよいよこの機能について詳しく見ていきましょう。有効化方法(まだ有効化していない場合)、拡張機能のインストールと使用方法、拡張機能のアップデート方法、そして不具合のある拡張機能のトラブルシューティング方法などをご紹介します。Safari拡張機能の使い方に慣れたら、ぜひ私たちのお気に入りの拡張機能もご覧ください。
拡張機能を有効にする
Safari 5.0.1以降、Safari拡張機能はデフォルトで有効になっています。Safari 5.0.1を起動するだけで拡張機能が使えるようになります。ダウンロードとインストール方法については、次のセクションに進んでください。
何らかの理由でSafari 5.0をまだ使用していてアップデートできない場合、この機能を有効にするのは思ったほど簡単ではありません。実際、Appleはこの機能をSafariの「開発」メニューに隠しており、これもデフォルトで無効になっています。そのため、拡張機能を有効にするにはいくつかの手順が必要です。
- Safari の環境設定ウィンドウ (Safari -> 環境設定) で、詳細パネルに切り替えて、メニューバーに開発メニューを表示するボックスをオンにします。
- メニュー バーに表示される新しい [開発] メニュー (ブックマークとウィンドウの間) で、[拡張機能を有効にする] を選択します。
「拡張機能を有効にする」コマンドを使用したら、「メニュー バーに開発メニューを表示する」設定のチェックを外して、貴重なメニュー バーのスペースを取り戻すことができます。
拡張機能のインストール
拡張機能機能を有効にすると、Safariの環境設定ウィンドウに新しい「拡張機能」パネルが表示され、インストールされているすべての拡張機能が一覧表示され、それぞれの動作をカスタマイズできます。この画面では、拡張機能を個別に有効・無効にしたり、拡張機能機能全体をオフにしたりすることもできます。これはトラブルシューティングの際に便利です(詳細は後述)。
では、拡張機能はどうやって入手するのでしょうか?Safari 5.0.1のリリースに伴い、AppleはSafari Extensions Galleryを導入しました。これは、Appleが厳選したサードパーティ製拡張機能のコレクションで、Safariメニューから直接アクセスできます。ニュース、ソーシャルネットワーキング、セキュリティ、生産性などのカテゴリに分かれたこのギャラリーには、現在100以上の拡張機能が含まれており、それぞれに簡単な説明、開発者サイトへのリンク、そして「今すぐインストール」ボタンが付いています。(Safari 5.0.1にアップデートしていない場合は、「今すぐインストール」ボタンは表示されません。)拡張機能の「今すぐインストール」ボタンをクリックすると、1~2秒後にボタンが「インストール済み」のグラフィックに変わり、拡張機能がインストールされたことを示します。
しかし、公式ギャラリーに掲載されていないSafari拡張機能はまだまだたくさんあります。Webブラウジング中に見つかるものもあるでしょうが、今のところ拡張機能を探すのに最適な代替情報源は、Safari Extensionsブログでしょう。このブログでは、Safari 5.0のリリース以降、新しく利用可能になった拡張機能に関する情報を公開しています。便利な新しい拡張機能がリリースされるたびにチェックできるように、ブログのRSSフィードを購読することをお勧めします。
ただし、公式ギャラリー以外からダウンロードした機能拡張には別のインストール手順が必要で、自動的にはインストールされません。機能拡張をホストしているウェブサイトは標準のダウンロードリンクを提供し、それから Safari は機能拡張 ( .safariextzで終わるファイル (実際は Mac OS X パッケージ)) をダウンロードします。 (.safariextz ファイルをダウンロードする代わりに、Safari が醜いコードのウィンドウを表示する場合は、[戻る] ボタンをクリックし、ダウンロードリンクを Option キーを押しながらクリックするか、リンクを右クリック (または Control キーを押しながらクリック) して [リンクされたファイルをダウンロード] を選択します。) Safari がダウンロードしたファイルを処理するように構成する方法によっては、Safari は新しい機能拡張をインストールするかどうかを直ちに確認する場合があります。インストールしない場合は、Finder で新しくダウンロードしたファイルパッケージを見つけてダブルクリックし、同じ [インストールしないでください]/[インストール] ダイアログを表示します。公式の警告文を読んで [インストール] をクリックすると、機能拡張がインストールされます。
(サードパーティの拡張機能が Apple のギャラリーに含まれていない理由がわからない場合は、いくつかの理由が考えられます。1 つ目は、開発者が拡張機能を Apple に提出して、ギャラリーに追加できないことが原因です。2 つ目は、開発者が拡張機能を提出したが、Apple がまだ承認していないか、何らかの理由で拒否していることです。これは、Apple のギャラリーに表示されない拡張機能をインストールしてはいけないという意味ではありませんが、インストールする前に少し注意する必要があります。)

機能拡張のインストールに Apple のギャラリーを使用するか、手動でダウンロードしてインストールするかのどちらの方法を使用したとしても、インストールされた機能拡張は ~/Library/Safari/Extensions に保存され、Safari の環境設定ウィンドウの新しい機能拡張画面に表示されます。一部の機能拡張では、提供される新機能が直ちに利用可能になり、再起動などの操作は不要です。実際、機能拡張がツールバーボタンを使用する場合、そのボタンはユーザーが何も操作しなくても Safari のツールバーに自動的に追加されることがあります。(追加されない場合は、[表示] -> [ツールバーをカスタマイズ] を選択して、ツールバーボタンを手動で追加します。) ただし、ほとんどの機能拡張は、その機能拡張をインストールした後に開いた新規タブでのみ機能することがわかっています。既存のタブでは新機能は利用できません。(機能拡張が Safari にツールバーボタンを自動的に追加した場合でも、多くの場合このようになります。つまり、既存のタブを表示しているときにボタンは何も行いません。)
拡張機能の使用と管理
前述の通り、多くのSafari拡張機能はSafariのツールバーに新しいボタンとして機能します。例えば、Ars TechnicaとMacworldの寄稿者であるJohn Siracusa氏のReload Buttonは、Safari 3以前の「Reload」ボタンを復活させ、Clint Ecker氏のShort URLは、現在のタブのURLをis.gdまたはbit.lyを使って自動的に短縮する新しいボタンを追加します。これらのツールバーボタンの使い方は他のボタンと全く同じで、ボタンをクリックするだけでシンプルな機能にアクセスできます。
他の拡張機能は、Safariのコンテキストメニューに新しいコマンドを追加します。Webページ上の任意の場所を右クリックすると、新しいオプションが表示されます。例えば、「Shortenz Linkz」を使用すると、Webページ上の任意のURLリンクを右クリックすると、選択したURL短縮サービスを使用して短縮URLを生成できます。また、URLをTwitterメッセージで送信するオプションも提供しています。
しかし、多くのSafari拡張機能はバックグラウンドで動作し、ユーザーが何もしなくても動作します。例えば、YouTubeページやGoogle Readerのインターフェースを見やすく自動的にフォーマットし直したり、特定のWebページにオプションを追加したり、特定のサーバーでホストされているJavaScript要素を無効にしたりする拡張機能が既に存在します。
拡張機能の動作をカスタマイズするための設定がある場合、Safariの環境設定ウィンドウの「機能拡張」パネルでその設定を見つけることができます。左側のリストで拡張機能を選択すると、右側にその拡張機能のオプションが表示されます。
特定の拡張機能の機能が気に入らない場合は、無効にすることができます。インストール済み拡張機能の一覧から該当の拡張機能を選択し、「[拡張機能名] を有効にする」のチェックボックスをオフにしてください。または、以下で説明するように、アンインストールすることもできます。
拡張機能の更新
他のソフトウェアと同様に、Safariの拡張機能もバグ修正や新機能の追加のためにアップデートされます。開発者が拡張機能の作成方法や改良方法をまだ模索している今、これは特に重要です。ありがたいことに、Safariには拡張機能の新しいバージョンをチェックし、アップデートするための組み込みメカニズムが備わっています。
Safariの環境設定で「機能拡張」パネルを開き、左下にある「アップデート」をクリックします。右側に、新しいバージョンが利用可能な機能拡張のリストが表示されます。個々の「アップデート」ボタンをクリックすると、その機能拡張がアップデートされ、新しいバージョンがダウンロードされインストールされます。または、「すべてアップデート」をクリックすると、保留中のアップデートがすべてワンクリックでインストールされます。
利用可能なアップデートを手動で確認する必要がないように、「アップデートを自動的にインストール」のボックスにチェックを入れることができます。これにより、Safariはアップデートが利用可能になると自動的にダウンロードしてインストールするようになります。最近の拡張機能のアップデート頻度を考えると、これはありがたいオプションですが、Safariがインストール済みの拡張機能の新しいバージョンをどのくらいの頻度で確認するかはまだ明らかではありません。
拡張機能のトラブルシューティング
どの拡張機能をインストールするかによって、得られる便利な機能には代償が伴う場合があります。それは、Safari がクラッシュすることです。1年前のSafari 4のリリースから6月のSafari 5のリリースまでの間、Safariで問題に遭遇することはほとんどありませんでした。Safari 5.0をインストールして拡張機能をテストしてから最初の数週間で、文字通り数十回のクラッシュが発生し、そのほとんどが拡張機能の問題であることが分かりました。(残念ながら、Safari 4以降の機能では、Safariプラグインがクラッシュしてもブラウザ全体がダウンすることはありませんが、拡張機能の問題はSafariを完全にクラッシュさせることがよくあります。)
サイトの挙動を変える特定のJavaScriptホストをブロックすることを目的とした拡張機能は、個人的には最悪の結果に終わりました。例えば、ウェブページで単語にマウスオーバーした際にポップアップ表示される迷惑な広告を回避するために、intellitxt.comのJavaScriptをブロックする拡張機能がいくつかあります。しかし残念なことに、これらの拡張機能をインストールして有効にすると、Safariが頻繁にクラッシュしてしまいました。
また、Safariの環境設定の「機能拡張」画面で特定の拡張機能を無効にするだけで、Safariがクラッシュするという問題に時々遭遇します。これは、ツールバーボタンを使用する拡張機能を無効にする場合に特によく発生するようです。多くの場合、拡張機能のツールバーボタンを手動で削除し(Safariの「ツールバーをカスタマイズ」画面を使用)、その後拡張機能を無効にすることで、このようなクラッシュを回避できました。
ありがたいことに、ここ数ヶ月でSafariの拡張機能使用時の安定性が劇的に向上したことに気づきました。最大の理由は拡張機能開発者の拡張機能コーディングスキルの向上にあると考えていますが、Safari 5.0.1自体に拡張機能処理の改善がいくつか含まれている可能性もあります。いずれにせよ、拡張機能の使用は、ブラウザの安定性という点で、この機能が初めて導入された当時と比べて、今では著しく安全になっているようです。とはいえ、拡張機能はSafariで依然として問題を引き起こす可能性があるため、基本的なトラブルシューティング手順を知っておくことは重要です。
問題の原因となっている拡張機能がわかっている場合は、2つの選択肢があります。1つ目は、(上記のように)その拡張機能を無効にして、アップデートを待ち、新しいバージョンで問題が解決されているかどうかを確認することです。2つ目は、拡張機能を完全に削除することです。これを行うには、Safariの環境設定で拡張機能を選択し、右側に表示される「アンインストール」ボタンをクリックします。
どの拡張機能が問題を引き起こしているのかわからない場合はどうすればいいでしょうか?Mac OSの「典型的な」拡張機能の競合を覚えていますか?おかえりなさい、旧友。さあ、競合テストをしてみましょう。
最初のステップは、Safariの機能拡張を完全にオフにすることです。Safariの環境設定から「機能拡張」画面を開き、メインのスライダーを「オフ」の位置に移動します。次に、Safariがクラッシュしたり、その他の問題のある動作が発生したりした際に開いていたサイトを閲覧します。Safariの「履歴」メニューにある「最後のセッションからすべてのウインドウを再び開く」コマンドは、この操作に最適です。それでも問題が解決しない場合は、機能拡張が原因ではないことがわかります。
問題が解決した場合、少なくとも1つの拡張機能に問題があると考えられます。メインの拡張機能のスライダーをオンに戻し、Safariの環境設定でインストール済みの拡張機能のリストをスクロールして、現在有効になっている拡張機能を確認します。次に、1つを無効にして、最後のセッションを再読み込みします。問題が再発する場合は、無効にした拡張機能が原因ではない可能性があります。次に疑わしい拡張機能を無効にして、最後のセッションを再読み込みします。問題は解決しましたか?拡張機能を無効にして問題が解決するまで、このプロセスを繰り返します。その拡張機能が原因である可能性が高いです。
もちろん、典型的な Mac OS 拡張機能の競合と同様に、 Safari 拡張機能の組み合わせが実際の問題である可能性もありますが、私はまだそのような問題に遭遇していません (そして、そのような組み合わせを明らかにすることは別の記事のトピックです...)。
賢く使いましょう
AppleのギャラリーやWebで便利な機能拡張を探す際には、インストールする機能拡張の数が増えるほど、問題が発生する可能性が高くなることを覚えておいてください。しかし、それと同じくらい重要なのは、ブラウザ自体の複雑さも増すということです。ツールバーボタン、キーボードショートカット、コンテクストメニューコマンドが増え、Webサイトのコンテンツを調整したり、その他の方法で変更したりする方法が増えます。ですから、機能拡張は慎重に使いましょう。私は数多くの機能拡張をダウンロードしてテストしましたが、インストールしたままにしているのは数十個だけで、そのうち現在アクティブになっているのはほんの数個です。それでも、機能拡張はここ数年で私が気に入っているSafariの新機能の一つになりました。
Dan Frakes 氏は Macworld のシニア編集者です。