最初は遊びだったんだ

ってことで本体の検索バーにサジェスト機能つけるのは無理なら検索バー自体を作ることにした。構造上致命的な欠陥*1があって、本体の検索バーの完全な代替にできないことが作る前からわかってるから、適当にちゃっちゃと作るつもりだったんだけど、作る端から手を入れたいとこが出てきて大分前から作ってるのに終わらないorz
GoogleNoteに長すぎて保存できないって怒られるのでラボにおけないけど、今できてるとこのスクショ。

サジェスト結果を表示したところ。スクリプトにそんなに詳しくなくてもhttp://www.google.com/complete/search?hl=ja&js=true&ie=utf8&qu=hogeを見てみると処理しやすそうなのはわかると思う。

サジェストの結果を処理する関数を利用して履歴を表示。プニルは終了時に設定を保存するから、本体の履歴とは別に保存せざるをえなかった。

オプション設定はこんな感じ。実はボタンに組み込みスクリプトの実行を割り当てたり専用の拡張スクリプトを使ったりできるけど、この辺はまだ仕様が固まってない。ボタンの順番はドラッグで変えられる。
検索するエンジンを切り替えたり、shiftやctrlで新規ウィンドウで開くかとかアクティブにするかとか切り替えたりはできるけど、拡張アイテムやメタ検索ができてない。自分じゃ使わないからドロップするかも。
検索エンジン切り替える時のメニューも階層を2つ以上たどると表示位置がおかしいのとselect要素がウィンドウコントロールなせいでz-indexが効かない問題は対処したいけど難しいかもしれない。てかかなり飽きてきたからもう仕様でいいかな?とか思う。

*1:フレーム使ってるときにどのフレームに表示するかとか読み込み終わるまで使えないとか表示位置とか