Tips (Japanese) - keysnail - GitHub
ん。Firegestures からのパクリだけど tab 毎の history (session history) を prompt.selector で。上を %PRESERVE% 内 に、下を Key Binding エリアにext.add("list-tab-history", function () { const fav = "chrome://mozapps/skin/places/defaultFavicon.png"; var tabHistory = []; var sessionHistory = gBrowser.webNavigation.sessionHistory; if (sessionHistory.count < 1) return void display.echoStatusBar("Tab history not exist", 2000); var curIdx = sessionHistory.index; for (var i = 0; i < sessionHistory.count; i++) { var entry = sessionHistory.getEntryAtIndex(i, false); if (!entry) continue; try { var iconURL = Cc["@mozilla.org/browser/favicon-service;1"] .getService(Ci.nsIFaviconService) .getFaviconForPage(entry.URI).spec; } catch (ex) {} tabHistory.push([iconURL || fav, entry.title, entry.URI.spec, i]); } for (var thIdx = 0; thIdx < tabHistory.length; thIdx++) { if (tabHistory[thIdx][3] == curIdx) break; } prompt.selector( { message : "select history in tab", collection : tabHistory, flags : [ICON | IGNORE, 0, 0, IGNORE | HIDDEN], header : ["Title", "URL"], initialIndex : thIdx; callback : function(i) { if (i >= 0) gBrowser.webNavigation.gotoIndex(tabHistory[i][3]); } }); }, 'List tab history');key.setViewKey(['u', 'h'], function (aEvent, arg) { ext.exec("list-tab-history", arg); }, 'list tab history', true);ところで、prompt.selector 開かれるときに選択行をインデックス指定するのって KeySnail 本体 Hack しないと無理?
上だと現在のWebページじゃなくて最上行=session history の最初が選択されるのがちと使いにくい。
どうもそれらしき公開 API が見当たらないんだが…
追記1: 速やかにお返事いただいた
prompt.selector 内で initialIndex 使えばいいとのことなので上を書き換えておく。
追記2: 参照コード のまま tabHistory.length - 1 だと history 移動したあとがまずいので curIdx, thIdx 変数周り追加…わざわざ構築した tabHistory のインデックス探すのにループするの嫌なんだが、こうしないと動かなかった。後で試行錯誤。

(Source: addelburgh, via nashi-kyo)

come! join us in http://eatmycake.tumblr.com
(via otsune)

(Source: almost-lost, via otsune)
(Instagramから)
(via yooooooosuke)
(via お土産の使い方 #shiba)
(via nashi-kyo)
渡辺麻友
(via hideto)