Googleで検索して検索結果から良さそうなサイトへ飛ぶ。
納得しなければ、検索結果に戻り、他を当る。

たまに興味深いサイトだと、行った先のサイトに深入りしすぎて、
戻るより再検索の方が早いと判断する時もある。

2つ、3つ前の検索結果ページに戻りたい時もあるかもしれない。

Googleのページ毎の、戻る/進むの移動ができればなーと
今日ふと思った。

つまり、vimで言うと段落移動ていうイメージ。
[G]をGoogleページだとすると、G移動。
[G][p][G][p][p][p][G][p][p][p][p][p][p][G]


ひとまずvimperatorrcファイルにこう書いてみた。

js <<EOM
mappings.add([modes.NORMAL],['{'], 'Google backward',
 function(){gotoGooglePage(true);});
mappings.add([modes.NORMAL],['}'], 'Google forward',
 function(){gotoGooglePage(false);});
function gotoGooglePage(isback){
  var hidx=history.session.index,
    hlen=history.session.length-1,i,n;
  for(i=0; i<(isback?hidx:hlen-hidx); i++){
    n=isback?hidx-i-1:hidx+i+1;
    if(history.session[n].URI.asciiHost.indexOf('.google.')!=-1){
      gBrowser.gotoIndex(n); break;
    }
    isback && n==0 && gBrowser.gotoIndex(n);
    isback || n==hlen && gBrowser.gotoIndex(n);
  }
}
EOM


「{」で今表示しているより前のGoogleまで戻る。
最終的に最初のページ表示(google意外でも)

「}」で今表示しているより次のGoogleまで進む。
最終的に最後のページ表示(google意外でも)
としてある。

取り敢えず、Gmailとかも対象にしている。

まぁ、Googleじゃなくても
yahooとかgooでもいいと思う。

['{']や['}']を['<C-h>']や['<C-l>']と書き換えて
Ctrl+h、Ctrl+lとかで操作した方がいいかもしれない。