From 032ba5fa503aaf062a359f699b812542d26624a3 Mon Sep 17 00:00:00 2001 From: Kris Maglione Date: Fri, 28 Jan 2011 04:58:56 -0500 Subject: [PATCH] Beep at failed key chains. --HG-- branch : key-processing --- common/content/commands.js | 1 + common/content/events.js | 3 ++- common/modules/base.jsm | 3 +++ 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/common/content/commands.js b/common/content/commands.js index b6438e7d..c07711f5 100644 --- a/common/content/commands.js +++ b/common/content/commands.js @@ -1334,6 +1334,7 @@ var Commands = Module("commands", { bang: args["-bang"], count: args["-count"], completer: completerFunc, + literal: args["-count"] == "*" ? 0 : null, persist: !args["-nopersist"], replacementText: args.literalArg, sourcing: io.sourcing && update({}, io.sourcing) diff --git a/common/content/events.js b/common/content/events.js index 7b6a084f..89c7ff3a 100644 --- a/common/content/events.js +++ b/common/content/events.js @@ -61,7 +61,8 @@ var ProcessorStack = Class("ProcessorStack", { result = res === Events.PASS ? Events.PASS : Events.KILL; } else if (result !== Events.KILL && !this.actions.length && - this.processors.some(function (p) !p.main.passUnknown)) { + (this.events.length > 1 || + this.processors.some(function (p) !p.main.passUnknown))) { result = Events.KILL; dactyl.beep(); events.feedingKeys = false; diff --git a/common/modules/base.jsm b/common/modules/base.jsm index efdbd106..233b2f6f 100644 --- a/common/modules/base.jsm +++ b/common/modules/base.jsm @@ -1246,6 +1246,9 @@ update(iter, { * given predicate. */ nth: function nth(iter, pred, n, self) { + if (typeof pred === "number") + [pred, n] = [function () true, pred]; // Hack. + for (let elem in iter) if (pred.call(self, elem) && n-- === 0) return elem;