2008年2月28日木曜日

K-Meleon で Greasemonkey を利用する

K-Meleon 1.1.4

Greasify 0.7.9.3.3

 

インストール

Greasify User-Script Macro For K-Meleon - Greasemonkey Equivalent に従ってインストールした。

 

右クリックして、「名前を付けてリンク先を保存...」。

080228-010

 

C:\Program Files\K-Meleon\macros にダウンロードした○○.kmm ファイルを置いた。

 

K-Meleon を再起動すると、メニューの Tools Greasify があることがわかる。

20080228-005

 

設定

次に、スクリプトのための 「Userscripts ディレクトリ」を作成する。場所はどこもでもよいようなので、K-Meleon をインストールしたディレクトリに gm フォルダを作成した。

Tools > Greasify > Set Userscripts Directory で 上記の「gm フォルダ」を指定する。

 

スクリプトを試す

2.1. Hello World [Dive Into Greasemonkey]helloworld.user.js を試してみた。スクリプトをダウンロードし、gm フォルダに置いた。

Tools > Greasify > Add User Script To Repository でスクリプトをインストールする。ただし、インストールする前に、以下のような変更をした。

Greasify User-Script Macro For K-Meleon - Greasemonkey Equivalent によると、

For a script to apply on all pages you must use http://*, https://* or ftp://* rather than just *. If you are having trouble getting a script to apply, try changing the include URL to a simple http://*.whatever.com/*

上記のサンプルスクリプトである helloworld.user.js では、ヘッダが以下のようになっていた。

// @include       *
これを次のように変更した。
// @include        http://*

このスクリプトをインストールしたら、動作した。

 

スクリプトのヘッダについて

Greasify User-Script Macro For K-Meleon - Greasemonkey Equivalent によると、

Userscript headers that don't conform to the "official" standard may prevent the script from being applied (see the greasemonkey XPI in subdir chrome/chromeFiles/content/template.user.js)

template.user.js を見ると、以下のようになっている。この書式に添ったヘッダでないと動作しないようだ。

// ==UserScript==
// @name           User script template
// @namespace      http://mywebsite.com/myscripts
// @description    A template for creating new user scripts from
// @include        http://*
// ==/UserScript==