So-net無料ブログ作成

Fix SearchBoxをメンテ [Firefox]

長年愛用しつつもgoogleの仕様変更でたびたび使えなくなるGreasemonkey[Fix SearchBox]をメンテ。

記事投稿日を見ると歴史を感じます('-'*
Googleの検索ボックスをページ上方に固定するGreasemonkey


// ==UserScript==
// @name Fix SearchBox
// @description fix search box on google search
// @namespace http://d.hatena.ne.jp/hysa/
// @include http://www.google.co.jp/search*
// @include http://www.google.com/search*
// @include https://www.google.co.jp/search*
// @include https://www.google.com/search*
// ==/UserScript==
(function() {
  // Initialize
  var header = document.getElementById('tsf');
  header.style.top = '0';
  header.style.width = '100%';
  header.style.backgroundColor = '#f5f5f5';
  header.style.zIndex = '254';

  // Fix Header Element
  function fix() {
    header.style.position = 'fixed';
    header.style.borderBottom = '2px solid #6B90DA';
  }

  // Unfix Header Element
  function unfix() {
    header.style.position = 'static';
    header.style.borderBottom = '0';
  }
  var defaultValue = window.getComputedStyle(document.getElementById('tsf'), null).height.replace(/px/, '');
  var threshold = defaultValue || 34;
  var currentPosition = document.documentElement;

  document.addEventListener('scroll',
                            function() {
                              if (currentPosition.scrollTop > threshold) fix();
                              else unfix();
                            }, false);
})();


タグ:Greasemonkey

googleを便利に使うgreasemonkey script [javascript][greasemonkey] [Firefox]

googleの検索結果ページはシンプルで使いやすいですが、シンプル故に何か付加機能を付けようと、色々なアドオンやgreasemonkey scriptがリリースされています。
今回紹介するのは
Google++ for Greasemonkey
といって、検索結果を色づけしたり、2カラム化したり、色々出来るgreasemonkey scriptです。


Google++_20100517.jpg

他にも、検索結果の右側に関連したTwitterの発言やwikipediaなどが表示できたり
左側のサイドバーを非表示に出来たり
色々カスタマイズできるのが良いです。
ついでにautopagerizeにも対応してるのが嬉しいですね。


タグ:Greasemonkey

GoogleFloatingForm改造と、検索結果CSS変更 [javascript][greasemonkey] [Firefox]

google検索結果がリニューアルされました。
それにともなってGoogleFloatingFormがまた動かなくなったのでちょっと手直し。
GoogleFloatingForm_20100507.jpg
うちの環境では大丈夫だけど、他の環境は試してませんので動かなくても悪しからず。
Firefox/3.6.3 - Build ID: 20100401080539
Greasemonkey 0.8.20100408.6


修正箇所は3カ所。
行数は元ソースの「Greasemonkey by Otchy Lab」を参照で。

8行目:
var xpath = '//table[@class="tb"]';
↓
var xpath = 'id("sfcnt")';

16行目:
ele.id = 'query_form';
↓
ele.id = 'sfcnt';

18行目:
var form = document.getElementById('query_form');
↓
var form = document.getElementById('sfcnt');

これでフォームが動く機能は使えると思います。
分かりにくい書き方なのは重々承知してますが、人のものを全転載するのは気が引けるというか...


ついでに、検索結果左にあるサイドバーを右に移動させるCSS

div#leftnav {
right: 5px !important;
}
div#center_col {
border-left: none !important;
margin: 0em 1em !important;
}

Google imageをマウスオーバーで表示+AutoPagerize用改造 [greasemonkey] [Firefox]

google imageで画像検索をすると、大きい画像を表示するのに2回ほどクリックしないといけないのが面倒です。
これをマウスオーバーするだけで、ある程度の大きさの画像が表示できるようになるgreasemonkey scriptを見つけたので紹介。画面に収まりきらない大きさは縮小されるようです。
google imageの使用頻度はそんなに高くないですが、だからこそ便利にしておきたいですよね。
Google_Image_Relinker_wMo.jpg
Google Image Relinker with Mouseover - Nathan's Mod for Greasemonkey

私は↑を使っていますが、本家は↓
Google Image Relinker with Mouseover for Greasemonkey
こちらになります。


このscriptのままでも十分便利ですが、AutoPagerizeを使うと2ページ目以降機能しなくなるのでAutoPagerizeに対応できるように1行追加します。
追加する場所は16行目の「GM_addStyle~」と書かれた下辺りで良いでしょう。
17行目あたりにしましょうか。そこに以下の文を付け加えます。

window.addEventListener('AutoPagerize_DOMNodeInserted',function(){alterLinks()},false);

これで対応できると思います。
うちの環境ではちゃんと動いていますが、しっかり検証してるわけではないのでだめなときはダメってことで。


webデザイン編集に役立つブックマークレット4つ [javascript] [Firefox]

ピンポイントで要素を弄るときはDOM Inspector(→DOM Inspector - MDC)の方が便利だと思いますが、全体像を把握しながらとなると、以下のブックマークレットがお勧め。

ブックマークレット - Wikipedia
ブックマークレット (Bookmarklet) とはJavaScriptで記述された小さなプログラムである。たいていの場合、ウェブブラウザのブックマークに登録して利用することからこの名称となった。 登録したブックマークをクリックして使用する。

というわけで、ブックマークに登録してお使いください。

Firefoxでしか検証してないので、IEでは動くか分かりません><


firefox 3.6 メモ [Firefox]

MR Tech Toolkitで互換性チェックの無効化をしてもダメだったアドオンたち。

  • TabControl 0.5.2
    新しいタブが読み込めなくなる
  • AutoCopy 1.0
    install.rdfの書き換えと、manifestファイル追加で使えるように。
  • checkboxmate 0.2
  • custamizegoogle 0.76
  • アドオンじゃないけど、未読タブの扱いがまた変わったらしく、「#content tab:not([selected])」が使えない

うちの環境では今のところこれぐらい。
改善した点は

  • 動作が軽快に
    新品状態ならだいたい軽いので、今後どうなるか
  • AutoPagerize(gm scriptの方)で30ページを越えても、表示がおかしくならない。

移行の決め手になるほど、目を見張るアップデートはないけど、割と軽くはなるのでアップデートしてしまうのもありかと。
使ってるアドオンが対応してるかどうかが一番のポイントですけどね。
自分の使ってるアドオンが対応してるかどうかの確認は
アドオン互換性センター :: Add-ons for Firefox


今のところ大丈夫そうなアドオンたち。


Firefoxの選択文字列をIE View もどきを使ってEverything Search Engineに送る方法[userChrome.js] [Firefox]

  1. IE Viewもどきを用意します
  2. Everythingを登録し、コマンドラインオプションに
    -search %%SEL%%
    を追加します
  3. お好みでStylishなどを使ってコンテキストメニューを潰します。
    /*常に閲覧*/
    menuitem[id="ieviewModoki_pagealways○"],
    /*このリンクを閲覧*/
    menuitem[id="ieviewModoki_link○"],
    /*常にこのリンクを閲覧*/
    menuitem[id="ieviewModoki_linkalways○"],
    menuitem[label="このページを□で閲覧"],
    /*常にこのページを閲覧*/
    menuitem[id="ieviewModoki_pagealways○"],
    ○と□は適宜読み替えて下さい。

これで、Firefoxの選択文字列をEverythingに送ることが出来ます。
○○というファイルの△△を編集しますと言われてもすぐに検索できますね。