1
0
mirror of https://github.com/gryf/pentadactyl-pm.git synced 2025-12-20 08:37:59 +01:00

Fix gb and friends.

This commit is contained in:
Kris Maglione
2011-02-08 17:08:23 -05:00
parent 20615a4021
commit d32ca13364
2 changed files with 21 additions and 9 deletions

View File

@@ -1600,13 +1600,21 @@ var Buffer = Module("buffer", {
});
context.pushProcessor(0, function (item, text, next) <>
<span highlight="Indicator" style="display: inline-block;">{item.item.indicator}</span>
<span highlight="Indicator" style="display: inline-block;">{item.indicator}</span>
{ next.call(this, item, text) }
</>);
context.process[1] = function (item, text) template.bookmarkDescription(item, template.highlightFilter(text, this.filter));
context.anchored = false;
context.keys = { text: "text", description: "url", icon: "icon", id: "id", command: function () "tabs.select" };
context.keys = {
text: "text",
description: "url",
indicator: function (item) item.tab === tabs.getTab() ? "%" :
item.tab === tabs.alternate ? "#" : " ",
icon: "icon",
id: "id",
command: function () "tabs.select"
};
context.compare = CompletionContext.Sort.number;
context.filters = [CompletionContext.Filter.textDescription];
@@ -1627,9 +1635,9 @@ var Buffer = Module("buffer", {
return {
text: [i + ": " + (tab.label || "(Untitled)"), i + ": " + url],
tab: tab,
id: i - 1,
url: url,
indicator: indicator,
icon: tab.image || DEFAULT_FAVICON
};
});

View File

@@ -456,8 +456,8 @@ var Tabs = Module("tabs", {
if (buffer == "#")
return tabs.selectAlternateTab();
count = Math.max(1, count || 1);
reverse = Boolean(reverse);
count = Math.max(1, count || 1) * (1 + -2 * reverse);
let matches = buffer.match(/^(\d+):?/);
if (matches)
@@ -467,17 +467,21 @@ var Tabs = Module("tabs", {
if (matches)
return tabs.select(matches, false);
matches = completion.runCompleter("buffer", buffer);
matches = completion.runCompleter("buffer", buffer).map(function (obj) obj.tab);
if (matches.length == 0)
dactyl.echoerr("E94: No matching buffer for " + buffer);
else if (matches.length > 1 && !allowNonUnique)
dactyl.echoerr("E93: More than one match for " + buffer);
else {
let index = (count - 1) % matches.length;
if (reverse)
index = matches.length - index - 1;
tabs.select(matches[index].id, false);
let start = matches.indexOf(tabs.getTab());
if (start == -1 && reverse)
start++;
let index = (start + count) % matches.length;
if (index < 0)
index = matches.length + index;
tabs.select(matches[index], false);
}
},