Greasemonkeyでウェブの閲覧をカスタマイズする
例として小さなスクリプトを書いてみた。このスクリプトはページ上の特定の要素を隠すもので、具体的にはcontentDataをidとして持つ要素を表示しないというものだ。このスクリプトには、これがblogs.techrepublic.com以下のURLに適用されるという命令が含まれている。URLにはアスタリスクが使われているため、指定されたURLから始まるすべてのページでこのスクリプトが実行される。
// ==UserScript== // @namespace http://tonypatton.com // @name TR Test // @description Removes the author name from TR blog page // @include http://blogs.techrepublic.com.com* document.getElementById(\'contentData\').style.display = \'none\'; // ==/UserScript==
このスクリプトをテキストファイルに保存する。ファイルの名前はどんなものでもいいが、ファイル名の終わりは .user.js でなければならない。Greasemonkeyで利用するにはuserを付けなくてはならず、ファイル拡張子のjsはJavaScriptであることを示している。ファイルを保存したら、Firefoxのドロップダウンメニューの「ファイル」の「ファイルを開く」からこれを読み込める。読み込みに成功したら、ブラウザの右下にその旨が表示される。この例の場合、「'TR Test' インストールに成功しました」と表示されるはずだ。
スクリプトを読み込んだら、その機能をテストするためにウェブサイトを閲覧する。私は古い.NETプロジェクトをVisual Studio 2008に移行させることに関して書いた自分の記事で、このスクリプトの動作を確認してみた。実際に読み込んでみると、著者名の部分が表示されない。この単純な例は、Greasemonkeyの力と柔軟性を現している。
Greasemonkeyのメニューは、ツールメニューかブラウザウィンドウの右下の角に表示されているサルのアイコンを右クリックすることで表示できる。Greasemonkeyのメニューは「ユーザースクリプトの管理」から表示することができる。以下の図のようなウィンドウが表示される。

FirefoxにおけるGreasemonkeyのスクリプトの管理
FirefoxでGreasemonkeyのスクリプトを管理する
「ユーザースクリプトの管理」では、インストールされているスクリプトのinclude命令とexclude命令の追加や修正を行うことができる。また、「アンインストール」ボタンでスクリプトをアンインストールすることもできる。「有効にする」チェックボックスで、スクリプトを有効にしたり無効にしたりできるので、スクリプトを停止したい場合でもいちいちアンインストールする必要はない。
豊富なスクリプト
無料で配布されているGreesemonkeyのスクリプトは多い。その良い例がUserscripts.orgのサイトで、ここではスクリプトを検索できるようになっており、ユーザーのコメントも付いている。
私がインストールしているスクリプトに、ESPN4Factorsのものがある。これは、ESPNのサイトにあるNBAの成績スコアページに情報を追加するものだ。このスクリプトはNBAの成績スコアページから情報を取得し、計算を行ってそれを表にして表示するものだ。これは、既存のデータを拡張してより多くの情報を表示している素晴らしい例だ。
Greasemonkey Hacks
Mark Pilgrim氏の「Greasemonkey Hacks, First Edition: Tips & Tools for Remixing the Web with Firefox」(O'Reilly刊)のページから、素晴らしいヒントを得ることができる。
ウェブを活用する
Greasemonkeyを使えば、ページをアクセスしやすくしたり読みやすくすることもできれば、データを追加あるいは排除することもでき、その他にも必要に合わせてさまざまなことが可能だ。これは、ウェブに関するイノベーションの素晴らしい例の1つだ。
読者はGreasemonkeyやChickenFootなどのツールを使ってウェブの閲覧を便利にしたことがあるだろうか。読者の好みのブラウザアドオンは何だろうか。ウェブ開発コミュニティと意見を共有して欲しい。
この記事は海外CNET Networks発のニュースをシーネットネットワークスジャパン編集部が日本向けに編集したものです。海外CNET Networksの記事へ
- ホワイトペーパー



