[Opera]Operaで「絞り込み検索」…プラスもマイナスも

『Xippee』はIE,Firefox、Safari、Operaに対応した検索拡張プラグインです。
検索キーワードを追加したり、マイナス検索をするときにとても便利です!

秒速で「絞り込み検索」できるプラグイン『Xippee』:Google、ヤフーに対応!

…これを見て、これならOperaでもJavaScriptだけで実装できるんじゃないかなーと思ってやってみた。JavaScriptと正規表現の勉強を兼ねてね。

結果は大成功。こうしてまた1つ、Operaが使いやすくなったと。すぐ使いたい人は下のコードをすっ飛ばしてもらえればいいと思うよ。

JavaScriptコード

プラス検索もマイナス検索もJavaScriptのコードはほとんどおんなじ。…というかちゃうのは1文字だけ。

キーワードのプラス検索

javascript:(function(){
  var site={'google':'(^http:\\/\\/www\\.google\\.(?:co\\.jp|com)\\/search.*?(?:[\\?&]q=).+?)(&.+|$)','yahoo':'(^http:\\/\\/search\\.yahoo\\.(?:co\\.jp|com)\\/search.*?(?:[\\?&]p=).+?)(&.+|$)'}
  var d=window.document,u=d.URL,s=d.getSelection();
  if(!/\w+/i.test(s)){
    s=encodeURIComponent(s);
  }
  for(i in site){
    var re=new RegExp(site[i],'i');
    if(re.test(u)){
      d.location.href=RegExp.$1+'+\%22'+s+'\%22'+RegExp.$2;
    }
  }
})()

キーワードのマイナス検索

javascript:(function(){
  var site={'google':'(^http:\\/\\/www\\.google\\.(?:co\\.jp|com)\\/search.*?(?:[\\?&]q=).+?)(&.+|$)','yahoo':'(^http:\\/\\/search\\.yahoo\\.(?:co\\.jp|com)\\/search.*?(?:[\\?&]p=).+?)(&.+|$)'}
  var d=window.document,u=d.URL,s=d.getSelection();
  if(!/\w+/i.test(s)){
    s=encodeURIComponent(s);
  }
  for(i in site){
    var re=new RegExp(site[i],'i');
    if(re.test(u)){
      d.location.href=RegExp.$1+'+-\%22'+s+'\%22'+RegExp.$2;
    }
  }
})()

動作の説明

動作だけ言うととっても単純。

表示中のページのURLがgoogleかyahooの検索結果ページだったら、選択した文字列をプラス検索かマイナス検索する。

ちなみにgoogleでもyahooでもないページではただのgoogle検索として働く。つまり、Operaの右クリックメニューの「検索」を置き換えられるということ。

若干の修正を加えた。googleでもyahooでもないページでプラス検索をすると今開いているページで選択文字列のgoogle検索を、マイナス検索をすると新しいウィンドウで選択文字列のgoogle検索を行う。

他のページを見ててこの文字を除外してマイナス検索したい!って思うことはまずないからね。こういう実装にした。

やっぱりただの単純なプラス検索、マイナス検索だけを行うだけにした。シンプルが一番。

また、他の検索サイトも正規表現を考えるだけで対応できるので、この検索サイトを是非増やしてくれってのがあればコメントにでも書いてちょ。正規表現の練習できるからねw

Operaのmenu.ini組み込み用コード

以下の2つをOperaのmenu.iniにかけばいい。
[Hotclick Popup Menu]と[Link Selection Popup Menu]にどうぞ。

検索(+)

Item, "検索(+)" = Go to page, "javascript:(function(){var site={'google':'(^http:\\/\\/www\\.google\\.(?:co\\.jp|com)\\/search.*?(?:[\\?&]q=).+?)(&.+|$)','yahoo':'(^http:\\/\\/search\\.yahoo\\.(?:co\\.jp|com)\\/search.*?(?:[\\?&]p=).+?)(&.+|$)'}var d=window.document,u=d.URL,s=d.getSelection();if(!/\w+/i.test(s)){s=encodeURIComponent(s);}for(i in site){var re=new RegExp(site[i],'i');if(re.test(u)){d.location.href=RegExp.$1+'+\%22'+s+'\%22'+RegExp.$2;}}})()", , , "Search Web"

検索(−)

Item, "検索(−)" = Go to page, "javascript:(function(){var site={'google':'(^http:\\/\\/www\\.google\\.(?:co\\.jp|com)\\/search.*?(?:[\\?&]q=).+?)(&.+|$)','yahoo':'(^http:\\/\\/search\\.yahoo\\.(?:co\\.jp|com)\\/search.*?(?:[\\?&]p=).+?)(&.+|$)'}var d=window.document,u=d.URL,s=d.getSelection();if(!/\w+/i.test(s)){s=encodeURIComponent(s);}for(i in site){var re=new RegExp(site[i],'i');if(re.test(u)){d.location.href=RegExp.$1+'+-\%22'+s+'\%22'+RegExp.$2;}}})()", , , "Search Web"

…あぁ〜、JavaScriptの話題を書くとスキルがないのがもろバレになって恥ずかしいなぁ〜。

Operaで「絞り込み検索」…プラスもマイナスもへのコメントを書く

コメント : 0件

Operaで「絞り込み検索」…プラスもマイナスもへの言及をする

埋め込みリンクタグ
<a target="_blank" href="http://f-u.seesaa.net/article/107046130.html">Operaで「絞り込み検索」…プラスもマイナスも : full of universe</a>

トラックバック : 0件

プロフィール

sima

ガジェット大好き。おもしろアイテム大好き。いろいろとまぁ物欲を刺激するモノが多いけど、なかなか手に入れることができないでいる。いつかは自分の部屋を、自分が気に入ったモノだけで埋め尽くしたいものだなぁ。…あっ、これ将来の夢ね。

Twitter はフォロー大歓迎なのでよろしく。よく蚊と戦ってるよ。

最新記事

  1. OpeTumblr の Opera Extensions (拡張機能) 版を密かに公開 (05月25日)
  2. シカ成分を補充したら幸せになった (04月24日)
  3. ブログを(内部的にガッツリと)リニューアルしてみた (12月10日)
  4. 補完モードを開始するマッピングを書く (10月25日)
  5. アボカドを育ててみた…かった (07月23日)
  6. 正規表現クロスワードを完全クリアしてみた (07月19日)
  7. Gmail バックアップソフトの Gmvault が動かないときの解決法 (07月14日)
  8. Google アカウントが消える前に! Gmail フルバックアップのススメ (06月30日)
  9. 厳選して使っているポイントサイト2つ (03月27日)
  10. Tumblr で画像を Lightbox 表示!(しかも何も導入せずに) (03月21日)

カテゴリ

アーカイブ

コメント

Gmail バックアップソフトの Gmvault が動かないときの解決法
dsfds (03月31日)
OpeTumblr の Opera Extensions (拡張機能) 版を密かに公開
sima (06月26日)
you (11月30日)
you (11月30日)
sima (10月28日)
HTML ソースの改行を半角スペースにしない方法
ok (06月21日)
sima (05月28日)
edvakf (05月28日)
英数字・記号を並べてみる
ふぁ (11月25日)
コメハチ (11月02日)
OperaでもっとTumblrる!(OpeTumblrをまたまた改良)
you (05月09日)
sima (05月07日)
you (05月04日)
chikuwa (12月12日)

トラックバック

20代で知っておくべき週番号のこと
full of universe (05月16日)
UKTenkiを自動巡回させてみる(MortScript)
なんとなくすばらしい日々の戯れ言 (01月31日)
新着メールを一気に開くMortScriptを改良!
PDAと私生活 (11月07日)
PDAと私生活 (11月02日)
コイツはすごい!Windows Live Writerでブログ投稿をラクラクに
シーサーイーサー (10月31日)
Willcom03で新着メールを一気に開く!(MortScript)
PDAと私生活 (10月10日)

のカレンダー