| 次のページ >>

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Firefox のアドオン Operator は何をやってくれるの? を適当に説明してみる

※ マイクロフォーマットについては割愛
※ オレオレ理解なので間違ってる部分があるかもしれません


Operator がやってくれるのは、

  • (1) ウェブページ中にある各種マイクロフォーマットのデータを抽出
  • (2) 抽出したデータを使って処理を行う(他のウェブサービスの API に渡すなど)

基本的にこの 2つです。

上記の (1) (2) は分離されてモジュール化されています。 そのため、最小限の手間(個別のモジュールを用意するだけ)で さまざまなマイクロフォーマット、 さまざまな処理の組み合わせに対応させることができます。

たとえばウェブページから hCalendarデータ(イベントの日時などの情報)を抽出し、 Google カレンダーの API に渡して予定を登録したいが

  • hCalendarデータ抽出用のモジュールはある
  • Google カレンダーの API に渡すモジュールはない

という場合、 hCalendarデータ抽出用のプログラムを再発明する必要はなく、 Google カレンダーの API に渡すモジュールだけ用意すれば良いわけです。

実際のところは 「hCalendarデータ抽出用のモジュール」も 「Google カレンダーの API に渡すモジュール」も デフォルトで用意されているので、 hCalendarデータを抽出して Google カレンダーの API に渡したいなら 単に Operator を使ってマウスをポチポチするだけで済みます。 Greasemonkey スクリプトなどを自分で書いて対応する必要はありません。

関連記事

参考(外部リンク)

スポンサーサイト

入力したXPathにマッチした要素をハイライトし要素数を表示するブックマークレット

HighlightXPath

ブックマークレットを実行すると出てくる画面左上のボックスに XPath を入力すると、 上の画像のように赤い枠で強調表示されます。 入力用のボックスのすぐ右側に出ている数字は XPath にマッチした要素の数です。

Firefox 3.6.10、Google Chrome 7.0.517.24 beta で動作確認しました。

参考(外部リンク)

Jamendo のアルバムページに torrent ファイルのリンクを表示するブックマークレット

Firefox 向けです。 他のブラウザでは動作確認していません。

Jamendo: insert torrent link

ブックマークレットを実行すると次の画像のようにリンクが表示されます。

参考(外部リンク)

AutoPagerize で「次に読み込むページのURL」を加工する

とりあえずコードだけメモ。 Firefox 3.6.3 + AutoPagerize 0.0.43 で確認。 以下を autopagerize.user.js の末尾に追加する。


function absoluteURL(path){
  var e = document.createElement('span');
  e.innerHTML = '<a href="' + path + '" />';
  return e.firstChild.href;
}

function modifyURL(url){
  url = absoluteURL(url);
  // ここでURLをいじる
  return url;
}

// 既存のメソッドを上書き
AutoPager.prototype.getNextURL = function(xpath, doc, url){
  var nextLink = getFirstElementByXPath(xpath, doc);
  if (nextLink) {
    var nextValue = nextLink.getAttribute('href')
      || nextLink.getAttribute('action')
      || nextLink.value;
    nextValue = modifyURL(nextValue);
    if (nextValue.match(/^http(s)?:/)) {
      return nextValue;
    }
    else {
      var base = getFirstElementByXPath('//base[@href]', doc);
      return resolvePath(nextValue, (base ? base.href : url));
    }
  }
};

パスワード入力欄の脇にホスト名を目立つように表示する Greasemonkey

パスワードなどを入力するときはアドレスバーで URL を確認しましょう」 という注意をセキュリティ関係の記事などでよく見かけます。

アドレスバーをちらっと見れば良いだけなんですが、これが意外とめんどくさい。 大きく視線移動しなければいけないし、 Firefox ではアドレスバーの文字がサイズの小さいプロポーショナルフォントなので見にくいです。

…といった点が不便なので Greasemonkey を書いてみました。

location.href からホスト名を抜き出して type="password" な input 要素の前に目立つように表示します。

サイズや色を変えたい場合はスクリプトのスタイルシート指定部分をいじってください。

ダウンロード+インストール

github のページ からだとインストールしにくいので以下のリンクからどうぞ。

http://github.com/sonota/emphasize-hostname/raw/master/emphasize-hostname.user.js

留意点など

思いつきで作ってみたんですが、 表示されているのは「アドレスバーそのもの」ではなく 「location.href の値を Greasemonkey で加工した文字列」です。 ですから、Greasemonkey の動作に割り込んで改竄されたりするとまずいことになります。 (そういう事ができるのかどうかちょっと分かりませんが……)

そういう心配も含めて、 デフォルトでブラウザ側で用意してほしい機能かなと。

参考(外部リンク)



** ホームに戻る

| 次のページ >>
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。