diff options
-rw-r--r-- | common/content/bookmarks.js | 14 | ||||
-rw-r--r-- | common/content/buffer.js | 60 | ||||
-rw-r--r-- | common/content/commands.js | 2 | ||||
-rw-r--r-- | common/content/editor.js | 24 | ||||
-rw-r--r-- | common/content/events.js | 12 | ||||
-rw-r--r-- | common/content/hints.js | 2 | ||||
-rw-r--r-- | common/content/mappings.js | 40 | ||||
-rw-r--r-- | common/content/tabs.js | 20 | ||||
-rw-r--r-- | common/content/ui.js | 2 | ||||
-rw-r--r-- | muttator/content/mail.js | 54 | ||||
-rw-r--r-- | vimperator/NEWS | 13 | ||||
-rw-r--r-- | vimperator/content/config.js | 6 | ||||
-rw-r--r-- | xulmus/content/config.js | 6 | ||||
-rw-r--r-- | xulmus/content/player.js | 8 |
14 files changed, 139 insertions, 124 deletions
diff --git a/common/content/bookmarks.js b/common/content/bookmarks.js index fdfcbfb0..d284984b 100644 --- a/common/content/bookmarks.js +++ b/common/content/bookmarks.js @@ -811,22 +811,22 @@ function History() //{{{ mappings.add(myModes, ["<C-o>"], "Go to an older position in the jump list", function (count) { history.stepTo(-Math.max(count, 1)); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["<C-i>"], "Go to a newer position in the jump list", function (count) { history.stepTo(Math.max(count, 1)); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["H", "<A-Left>", "<M-Left>"], "Go back in the browser history", function (count) { history.stepTo(-Math.max(count, 1)); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["L", "<A-Right>", "<M-Right>"], "Go forward in the browser history", function (count) { history.stepTo(Math.max(count, 1)); }, - { flags: Mappings.flags.COUNT }); + { count: true }); /////////////////////////////////////////////////////////////////////////////}}} ////////////////////// COMMANDS //////////////////////////////////////////////// @@ -1064,7 +1064,7 @@ function QuickMarks() //{{{ mappings.add(myModes, ["go"], "Jump to a QuickMark", function (arg) { quickmarks.jumpTo(arg, liberator.CURRENT_TAB); }, - { flags: Mappings.flags.ARGUMENT }); + { arg: true }); mappings.add(myModes, ["gn"], "Jump to a QuickMark in a new tab", @@ -1074,7 +1074,7 @@ function QuickMarks() //{{{ /\bquickmark\b/.test(options["activate"]) ? liberator.NEW_TAB : liberator.NEW_BACKGROUND_TAB); }, - { flags: Mappings.flags.ARGUMENT }); + { arg: true }); mappings.add(myModes, ["M"], "Add new QuickMark for current URL", @@ -1085,7 +1085,7 @@ function QuickMarks() //{{{ quickmarks.add(arg, buffer.URL); }, - { flags: Mappings.flags.ARGUMENT }); + { arg: true }); /////////////////////////////////////////////////////////////////////////////}}} ////////////////////// COMMANDS //////////////////////////////////////////////// diff --git a/common/content/buffer.js b/common/content/buffer.js index a762fa06..a1bb0913 100644 --- a/common/content/buffer.js +++ b/common/content/buffer.js @@ -204,7 +204,7 @@ function Buffer() //{{{ mappings.repeat(); } }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["i", "<Insert>"], "Start caret mode", @@ -223,22 +223,22 @@ function Buffer() //{{{ mappings.add(myModes, ["j", "<Down>", "<C-e>"], "Scroll document down", function (count) { buffer.scrollLines(Math.max(count, 1)); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["k", "<Up>", "<C-y>"], "Scroll document up", function (count) { buffer.scrollLines(-Math.max(count, 1)); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, liberator.has("mail") ? ["h"] : ["h", "<Left>"], "Scroll document to the left", function (count) { buffer.scrollColumns(-Math.max(count, 1)); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, liberator.has("mail") ? ["l"] : ["l", "<Right>"], "Scroll document to the right", function (count) { buffer.scrollColumns(Math.max(count, 1)); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["0", "^"], "Scroll to the absolute left of the document", @@ -251,12 +251,12 @@ function Buffer() //{{{ mappings.add(myModes, ["gg", "<Home>"], "Go to the top of the document", function (count) { buffer.scrollToPercentiles(buffer.scrollXPercent, Math.max(count, 0)); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["G", "<End>"], "Go to the end of the document", function (count) { buffer.scrollToPercentiles(buffer.scrollXPercent, count >= 0 ? count : 100); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["%"], "Scroll to {count} percent of the document", @@ -267,7 +267,7 @@ function Buffer() //{{{ else liberator.beep(); }, - { flags: Mappings.flags.COUNT }); + { count: true }); function scrollByScrollSize(count, direction) { @@ -279,42 +279,42 @@ function Buffer() //{{{ mappings.add(myModes, ["<C-d>"], "Scroll window downwards in the buffer", function (count) { scrollByScrollSize(count, true); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["<C-u>"], "Scroll window upwards in the buffer", function (count) { scrollByScrollSize(count, false); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["<C-b>", "<PageUp>", "<S-Space>"], "Scroll up a full page", function (count) { buffer.scrollPages(-Math.max(count, 1)); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["<C-f>", "<PageDown>", "<Space>"], "Scroll down a full page", function (count) { buffer.scrollPages(Math.max(count, 1)); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["]f"], "Focus next frame", function (count) { buffer.shiftFrameFocus(Math.max(count, 1), true); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["[f"], "Focus previous frame", function (count) { buffer.shiftFrameFocus(Math.max(count, 1), false); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["]]"], "Follow the link labeled 'next' or '>' if it exists", function (count) { buffer.followDocumentRelationship("next"); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["[["], "Follow the link labeled 'prev', 'previous' or '<' if it exists", function (count) { buffer.followDocumentRelationship("previous"); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["gf"], "View source", @@ -366,7 +366,7 @@ function Buffer() //{{{ liberator.beep(); } }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["gP"], "Open (put) a URL based on the current clipboard contents in a new buffer", @@ -424,58 +424,58 @@ function Buffer() //{{{ mappings.add(myModes, ["zi", "+"], "Enlarge text zoom of current web page", function (count) { buffer.zoomIn(Math.max(count, 1), false); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["zm"], "Enlarge text zoom of current web page by a larger amount", function (count) { buffer.zoomIn(Math.max(count, 1) * 3, false); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["zo", "-"], "Reduce text zoom of current web page", function (count) { buffer.zoomOut(Math.max(count, 1), false); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["zr"], "Reduce text zoom of current web page by a larger amount", function (count) { buffer.zoomOut(Math.max(count, 1) * 3, false); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["zz"], "Set text zoom value of current web page", function (count) { buffer.textZoom = count > 1 ? count : 100; }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["zI"], "Enlarge full zoom of current web page", function (count) { buffer.zoomIn(Math.max(count, 1), true); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["zM"], "Enlarge full zoom of current web page by a larger amount", function (count) { buffer.zoomIn(Math.max(count, 1) * 3, true); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["zO"], "Reduce full zoom of current web page", function (count) { buffer.zoomOut(Math.max(count, 1), true); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["zR"], "Reduce full zoom of current web page by a larger amount", function (count) { buffer.zoomOut(Math.max(count, 1) * 3, true); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["zZ"], "Set full zoom value of current web page", function (count) { buffer.fullZoom = count > 1 ? count : 100; }, - { flags: Mappings.flags.COUNT }); + { count: true }); // page info mappings.add(myModes, ["<C-g>"], "Print the current file name", function (count) { buffer.showPageInfo(false); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["g<C-g>"], "Print file information", @@ -1732,12 +1732,12 @@ function Marks() //{{{ marks.add(arg); }, - { flags: Mappings.flags.ARGUMENT }); + { arg: true }); mappings.add(myModes, ["'", "`"], "Jump to the mark in the current buffer", function (arg) { marks.jumpTo(arg); }, - { flags: Mappings.flags.ARGUMENT }); + { arg: true }); /////////////////////////////////////////////////////////////////////////////}}} ////////////////////// COMMANDS //////////////////////////////////////////////// diff --git a/common/content/commands.js b/common/content/commands.js index 10554283..e201619f 100644 --- a/common/content/commands.js +++ b/common/content/commands.js @@ -970,7 +970,7 @@ function Commands() //{{{ else liberator.echoerr("E30: No previous command line"); }, - { flags: Mappings.flags.COUNT }); + { count: true }); }); /////////////////////////////////////////////////////////////////////////////}}} diff --git a/common/content/editor.js b/common/content/editor.js index bccf70eb..968f5178 100644 --- a/common/content/editor.js +++ b/common/content/editor.js @@ -114,7 +114,7 @@ function Editor() //{{{ { let extraInfo = {}; if (hasCount) - extraInfo.flags = Mappings.flags.COUNT; + extraInfo.count = true; mappings.add([modes.CARET], keys, "", function (count) @@ -178,7 +178,7 @@ function Editor() //{{{ mappings.add([modes.TEXTAREA], [key], "Motion command", function (motion, count) { editor.executeCommandWithMotion(key, motion, count); }, - { flags: Mappings.flags.MOTION | Mappings.flags.COUNT }); + { count: true, motion: true }); } // For the record, some of this code I've just finished throwing @@ -350,7 +350,7 @@ function Editor() //{{{ mappings.add([modes.INSERT], ["<Space>", "<Return>"], "Expand insert mode abbreviation", function () { editor.expandAbbreviation("i"); }, - { flags: Mappings.flags.ALLOW_EVENT_ROUTING }); + { route: true }); mappings.add([modes.INSERT], ["<Tab>"], "Expand insert mode abbreviation", @@ -368,7 +368,7 @@ function Editor() //{{{ editor.executeCommand("cmd_undo", count); liberator.mode = modes.TEXTAREA; }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.TEXTAREA], ["<C-r>"], "Redo", @@ -377,7 +377,7 @@ function Editor() //{{{ editor.executeCommand("cmd_redo", count); liberator.mode = modes.TEXTAREA; }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.TEXTAREA], ["D"], "Delete the characters under the cursor until the end of the line", @@ -405,12 +405,12 @@ function Editor() //{{{ mappings.add([modes.TEXTAREA], ["X"], "Delete character to the left", function (count) { editor.executeCommand("cmd_deleteCharBackward", count); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.TEXTAREA], ["x"], "Delete character to the right", function (count) { editor.executeCommand("cmd_deleteCharForward", count); }, - { flags: Mappings.flags.COUNT }); + { count: true }); // visual mode mappings.add([modes.CARET, modes.TEXTAREA], @@ -499,7 +499,7 @@ function Editor() //{{{ if (pos >= 0) editor.moveToPosition(pos, true, liberator.mode == modes.VISUAL); }, - { flags: Mappings.flags.ARGUMENT | Mappings.flags.COUNT }); + { arg: true, count: true }); mappings.add([modes.TEXTAREA, modes.VISUAL], ["F"], "Move to a charater on the current line before the cursor", @@ -509,7 +509,7 @@ function Editor() //{{{ if (pos >= 0) editor.moveToPosition(pos, false, liberator.mode == modes.VISUAL); }, - { flags: Mappings.flags.ARGUMENT | Mappings.flags.COUNT }); + { arg: true, count: true }); mappings.add([modes.TEXTAREA, modes.VISUAL], ["t"], "Move before a character on the current line", @@ -519,7 +519,7 @@ function Editor() //{{{ if (pos >= 0) editor.moveToPosition(pos - 1, true, liberator.mode == modes.VISUAL); }, - { flags: Mappings.flags.ARGUMENT | Mappings.flags.COUNT }); + { arg: true, count: true }); mappings.add([modes.TEXTAREA, modes.VISUAL], ["T"], "Move before a character on the current line, backwards", @@ -529,7 +529,7 @@ function Editor() //{{{ if (pos >= 0) editor.moveToPosition(pos + 1, false, liberator.mode == modes.VISUAL); }, - { flags: Mappings.flags.ARGUMENT | Mappings.flags.COUNT }); + { arg: true, count: true }); // textarea and visual mode mappings.add([modes.TEXTAREA, modes.VISUAL], @@ -555,7 +555,7 @@ function Editor() //{{{ } modes.set(modes.TEXTAREA); }, - { flags: Mappings.flags.COUNT }); + { count: true }); /////////////////////////////////////////////////////////////////////////////}}} ////////////////////// COMMANDS //////////////////////////////////////////////// diff --git a/common/content/events.js b/common/content/events.js index f170d3ca..0af8a507 100644 --- a/common/content/events.js +++ b/common/content/events.js @@ -639,7 +639,7 @@ function Events() //{{{ mappings.add([modes.NORMAL, modes.PLAYER, modes.MESSAGE], ["q"], "Record a key sequence into a macro", function (arg) { events.startRecording(arg); }, - { flags: Mappings.flags.ARGUMENT }); + { arg: true }); mappings.add([modes.NORMAL, modes.PLAYER, modes.MESSAGE], ["@"], "Play a macro", @@ -649,7 +649,7 @@ function Events() //{{{ while (count-- && events.playMacro(arg)) ; }, - { flags: Mappings.flags.ARGUMENT | Mappings.flags.COUNT }); + { arg: true, count: true }); }); /////////////////////////////////////////////////////////////////////////////}}} @@ -1548,7 +1548,7 @@ function Events() //{{{ { map = input.pendingMap; input.pendingMap = null; - if (map && map.flags & Mappings.flags.ARGUMENT) + if (map && map.arg) input.pendingArgMap = map; } @@ -1583,7 +1583,7 @@ function Events() //{{{ if (isNaN(input.count)) input.count = -1; input.buffer = ""; - if (map.flags & Mappings.flags.ARGUMENT) + if (map.arg) { input.buffer = inputStr; input.pendingArgMap = map; @@ -1595,7 +1595,7 @@ function Events() //{{{ input.pendingMotionMap = null; } // no count support for these commands yet - else if (map.flags & Mappings.flags.MOTION) + else if (map.motion) { input.pendingMotionMap = map; } @@ -1605,7 +1605,7 @@ function Events() //{{{ return void killEvent(); let ret = map.execute(null, input.count); - if (map.flags & Mappings.flags.ALLOW_EVENT_ROUTING && ret) + if (map.route && ret) stop = false; } } diff --git a/common/content/hints.js b/common/content/hints.js index b821e0d7..dd9f542f 100644 --- a/common/content/hints.js +++ b/common/content/hints.js @@ -879,7 +879,7 @@ function Hints() //{{{ onChange: function () { modes.pop(); }, onCancel: function (arg) { arg && setTimeout(function () hints.show(arg), 0); } }); - }, { flags: Mappings.flags.COUNT }); + }, { count: true }); /////////////////////////////////////////////////////////////////////////////}}} ////////////////////// PUBLIC SECTION ////////////////////////////////////////// diff --git a/common/content/mappings.js b/common/content/mappings.js index 1db6f5f3..6108edd3 100644 --- a/common/content/mappings.js +++ b/common/content/mappings.js @@ -59,18 +59,30 @@ function Map(modes, keys, description, action, extraInfo) //{{{ this.names = keys.map(events.canonicalKeys); /** @property {function (number)} The function called to execute this mapping. */ this.action = action; - - /** @property {number} @see Mappings#flags */ - // FIXME: flags is incongruent with the other properties - this.flags = extraInfo.flags || 0; /** @property {string} This mapping's description, as shown in :viusage. */ this.description = description || ""; - /** @property {string} The literal RHS expansion of this mapping. */ - this.rhs = extraInfo.rhs || null; + + /** @property {boolean} Whether this mapping accepts an argument. */ + this.arg = extraInfo.arg || false; + /** @property {boolean} Whether this mapping accepts a count. */ + this.count = extraInfo.count || false; + /** + * @property {boolean} Whether the mapping accepts a motion mapping + * as an argument. + */ + this.motion = extraInfo.motion || false; + /** + * @property {boolean} Whether the mapping's key events should be + * propagated to the host application. + */ + // TODO: I'm not sure this is the best name but it reflects that which it replaced. --djk + this.route = extraInfo.route || false; /** @property {boolean} Whether the RHS of the mapping should expand mappings recursively. */ this.noremap = extraInfo.noremap || false; /** @property {boolean} Whether any output from the mapping should be echoed on the command line. */ this.silent = extraInfo.silent || false; + /** @property {string} The literal RHS expansion of this mapping. */ + this.rhs = extraInfo.rhs || null; } Map.prototype = { @@ -98,11 +110,11 @@ Map.prototype = { { let args = []; - if (this.flags & Mappings.flags.MOTION) + if (this.motion) args.push(motion); - if (this.flags & Mappings.flags.COUNT) + if (this.count) args.push(count); - if (this.flags & Mappings.flags.ARGUMENT) + if (this.arg) args.push(argument); let self = this; @@ -213,7 +225,7 @@ function Mappings() //{{{ "User defined mapping", function (count) { events.feedkeys((count > -1 ? count : "") + this.rhs, this.noremap, this.silent); }, { - flags: Mappings.flags.COUNT, + count: true, rhs: events.canonicalKeys(rhs), noremap: !!noremap, silent: "<silent>" in args @@ -334,14 +346,6 @@ function Mappings() //{{{ ]); }); - // FIXME: - Mappings.flags = { - ALLOW_EVENT_ROUTING: 1 << 0, // if set, return true inside the map command to pass the event further to Firefox - MOTION: 1 << 1, - COUNT: 1 << 2, - ARGUMENT: 1 << 3 - }; - return { // NOTE: just normal mode for now diff --git a/common/content/tabs.js b/common/content/tabs.js index f868ed9a..92cda04e 100644 --- a/common/content/tabs.js +++ b/common/content/tabs.js @@ -233,17 +233,17 @@ function Tabs() //{{{ else tabs.select("+1", true); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.NORMAL], ["<C-n>", "<C-Tab>", "<C-PageDown>"], "Go to the next tab", function (count) { tabs.select("+" + (count < 1 ? 1 : count), true); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.NORMAL], ["gT", "<C-p>", "<C-S-Tab>", "<C-PageUp>"], "Go to previous tab", function (count) { tabs.select("-" + (count < 1 ? 1 : count), true); }, - { flags: Mappings.flags.COUNT }); + { count: true }); if (config.hasTabbrowser) { @@ -256,7 +256,7 @@ function Tabs() //{{{ else commandline.open(":", "buffer! ", modes.EX); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.NORMAL], ["B"], "Show buffer list", @@ -265,22 +265,22 @@ function Tabs() //{{{ mappings.add([modes.NORMAL], ["d"], "Delete current buffer", function (count) { tabs.remove(tabs.getTab(), count, false, 0); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.NORMAL], ["D"], "Delete current buffer, focus tab to the left", function (count) { tabs.remove(tabs.getTab(), count, true, 0); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.NORMAL], ["gb"], "Repeat last :buffer[!] command", function (count) { tabs.switchTo(null, null, count, false); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.NORMAL], ["gB"], "Repeat last :buffer[!] command in reverse direction", function (count) { tabs.switchTo(null, null, count, true); }, - { flags: Mappings.flags.COUNT }); + { count: true }); // TODO: feature dependencies - implies "session"? if (liberator.has("tabUndo")) @@ -288,7 +288,7 @@ function Tabs() //{{{ mappings.add([modes.NORMAL], ["u"], "Undo closing of a tab", function (count) { commands.get("undo").execute("", false, count); }, - { flags: Mappings.flags.COUNT }); + { count: true }); } mappings.add([modes.NORMAL], ["<C-^>", "<C-6>"], @@ -300,7 +300,7 @@ function Tabs() //{{{ else tabs.switchTo(count.toString(), false); }, - { flags: Mappings.flags.COUNT }); + { count: true }); } /////////////////////////////////////////////////////////////////////////////}}} diff --git a/common/content/ui.js b/common/content/ui.js index 671351e5..61b1ce82 100644 --- a/common/content/ui.js +++ b/common/content/ui.js @@ -911,7 +911,7 @@ function CommandLine() //{{{ commandline.resetCompletions(); return editor.expandAbbreviation("c"); }, - { flags: Mappings.flags.ALLOW_EVENT_ROUTING }); + { route: true }); mappings.add(myModes, ["<C-]>", "<C-5>"], "Expand command line abbreviation", diff --git a/muttator/content/mail.js b/muttator/content/mail.js index 2aee8b69..53589536 100644 --- a/muttator/content/mail.js +++ b/muttator/content/mail.js @@ -273,7 +273,7 @@ function Mail() //{{{ mappings.add(myModes, ["<Space>"], "Scroll message or select next unread one", function () true, - { flags: Mappings.flags.ALLOW_EVENT_ROUTING }); + { route: true }); mappings.add(myModes, ["t"], "Select thread", @@ -286,32 +286,32 @@ function Mail() //{{{ mappings.add(myModes, ["j", "<Right>"], "Select next message", function (count) { mail.selectMessage(function (msg) true, false, false, false, count); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["gj"], "Select next message, including closed threads", function (count) { mail.selectMessage(function (msg) true, false, true, false, count); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["J", "<Tab>"], "Select next unread message", function (count) { mail.selectMessage(function (msg) !msg.isRead, true, true, false, count); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["k", "<Left>"], "Select previous message", function (count) { mail.selectMessage(function (msg) true, false, false, true, count); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["gk"], "Select previous message", function (count) { mail.selectMessage(function (msg) true, false, true, true, count); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["K"], "Select previous unread message", function (count) { mail.selectMessage(function (msg) !msg.isRead, true, true, true, count); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["*"], "Select next message from the same sender", @@ -324,7 +324,7 @@ function Mail() //{{{ } catch (e) { liberator.beep(); } }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["#"], "Select previous message from the same sender", @@ -337,7 +337,7 @@ function Mail() //{{{ } catch (e) { liberator.beep(); } }, - { flags: Mappings.flags.COUNT }); + { count: true }); // SENDING MESSAGES mappings.add(myModes, ["m"], @@ -379,22 +379,22 @@ function Mail() //{{{ mappings.add(myModes, ["<Down>"], "Scroll message down", function (count) { buffer.scrollLines(Math.max(count, 1)); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["<Up>"], "Scroll message up", function (count) { buffer.scrollLines(-Math.max(count, 1)); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.MESSAGE], ["<Left>"], "Select previous message", function (count) { mail.selectMessage(function (msg) true, false, false, true, count); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.MESSAGE], ["<Right>"], "Select next message", function (count) { mail.selectMessage(function (msg) true, false, false, false, count); }, - { flags: Mappings.flags.COUNT }); + { count: true }); // UNDO/REDO mappings.add(myModes, ["u"], @@ -445,22 +445,22 @@ function Mail() //{{{ mappings.add(myModes, ["]s"], "Select next starred message", function (count) { mail.selectMessage(function (msg) msg.isFlagged, true, true, false, count); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["[s"], "Select previous starred message", function (count) { mail.selectMessage(function (msg) msg.isFlagged, true, true, true, count); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["]a"], "Select next message with an attachment", function (count) { mail.selectMessage(function (msg) gDBView.db.HasAttachments(msg.messageKey), true, true, false, count); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["[a"], "Select previous message with an attachment", function (count) { mail.selectMessage(function (msg) gDBView.db.HasAttachments(msg.messageKey), true, true, true, count); }, - { flags: Mappings.flags.COUNT }); + { count: true }); // FOLDER SWITCHING mappings.add(myModes, ["gi"], @@ -473,7 +473,7 @@ function Mail() //{{{ else liberator.beep(); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["<C-n>"], "Select next folder", @@ -488,7 +488,7 @@ function Mail() //{{{ } gFolderTreeView.selection.timedSelect(newPos, 500); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["<C-N>"], "Go to next mailbox with unread messages", @@ -496,7 +496,7 @@ function Mail() //{{{ { selectUnreadFolder(false, count); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["<C-p>"], "Select previous folder", @@ -511,7 +511,7 @@ function Mail() //{{{ } gFolderTreeView.selection.timedSelect(newPos, 500); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["<C-P>"], "Go to previous mailbox with unread messages", @@ -519,7 +519,7 @@ function Mail() //{{{ { selectUnreadFolder(true, count); }, - { flags: Mappings.flags.COUNT }); + { count: true }); // THREADING mappings.add(myModes, ["za"], @@ -545,22 +545,22 @@ function Mail() //{{{ mappings.add(myModes, ["<C-i>"], "Go forward", function (count) { if (count < 1) count = 1; while (count--) GoNextMessage(nsMsgNavigationType.forward, true); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["<C-o>"], "Go back", function (count) { if (count < 1) count = 1; while (count--) GoNextMessage(nsMsgNavigationType.back, true); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["gg"], "Select first message", function (count) { if (count < 1) count = 1; while (count--) GoNextMessage(nsMsgNavigationType.firstMessage, true); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add(myModes, ["G"], "Select last message", function (count) { if (count < 1) count = 1; while (count--) GoNextMessage(nsMsgNavigationType.lastMessage, false); }, - { flags: Mappings.flags.COUNT }); + { count: true }); // tagging messages mappings.add(myModes, ["l"], @@ -583,7 +583,7 @@ function Mail() //{{{ } }, { - flags: Mappings.flags.ARGUMENT + arg: true }); // TODO: change binding? diff --git a/vimperator/NEWS b/vimperator/NEWS index 59d4c063..6061826e 100644 --- a/vimperator/NEWS +++ b/vimperator/NEWS @@ -1,7 +1,18 @@ 2009-XX-XX: * version 2.2a1pre + * IMPORTANT: Map.flags has been replaced with individual properties. + Mappings defined in plugins with mappings.add will need to be updated. + E.g. + mappings.add(..., + { flags: Mappings.flags.ARGUMENT | + Mappings.flags.COUNT | + Mappings.flags.MOTION | + Mappings.flags.ALLOW_EVENT_ROUTING }); + is now + mappings.add(..., + { arg: true, count: true, motion: true, route: true }); * IMPORTANT: shifted key notation now matches Vim's behaviour. E.g. <C-a> - and <C-A> are equivalent, to map the uppercase character use <C-S-A>. + and <C-A> are equivalent, to map the uppercase character use <C-S-A>. - Is this still true, or going to be true? --djk * add -description option to :command * command-line options are now supported via the host application's -liberator option diff --git a/vimperator/content/config.js b/vimperator/content/config.js index 9213d508..18d3ab8d 100644 --- a/vimperator/content/config.js +++ b/vimperator/content/config.js @@ -233,12 +233,12 @@ const config = { //{{{ mappings.add([modes.NORMAL], ["<C-a>"], "Increment last number in URL", function (count) { incrementURL(Math.max(count, 1)); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.NORMAL], ["<C-x>"], "Decrement last number in URL", function (count) { incrementURL(-Math.max(count, 1)); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.NORMAL], ["~"], "Open home directory", @@ -294,7 +294,7 @@ const config = { //{{{ else liberator.open(url); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.NORMAL], ["gU"], "Go to the root of the website", diff --git a/xulmus/content/config.js b/xulmus/content/config.js index 8c915a75..1924421e 100644 --- a/xulmus/content/config.js +++ b/xulmus/content/config.js @@ -335,12 +335,12 @@ const config = { //{{{ mappings.add([modes.NORMAL], ["<C-a>"], "Increment last number in URL", function (count) { incrementURL(Math.max(count, 1)); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.NORMAL], ["<C-x>"], "Decrement last number in URL", function (count) { incrementURL(-Math.max(count, 1)); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.NORMAL], ["~"], "Open home directory", @@ -396,7 +396,7 @@ const config = { //{{{ else liberator.open(url); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.NORMAL], ["gU"], "Go to the root of the website", diff --git a/xulmus/content/player.js b/xulmus/content/player.js index 5a986693..2a770caf 100644 --- a/xulmus/content/player.js +++ b/xulmus/content/player.js @@ -150,22 +150,22 @@ function Player() // {{{ mappings.add([modes.PLAYER], ["h", "<Left>"], "Seek -10s", function (count) { player.seekBackward(Math.max(1, count) * 10000); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.PLAYER], ["l", "<Right>"], "Seek +10s", function (count) { player.seekForward(Math.max(1, count) * 10000); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.PLAYER], ["H", "<S-Left>"], "Seek -1m", function (count) { player.seekBackward(Math.max(1, count) * 60000); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.PLAYER], ["L", "<S-Right>"], "Seek +1m", function (count) { player.seekForward(Math.max(1, count) * 60000); }, - { flags: Mappings.flags.COUNT }); + { count: true }); mappings.add([modes.PLAYER], ["=", "+"], "Increase volume by 10%", |