diff --git a/common/content/dactyl.js b/common/content/dactyl.js index f5824435..1bb6a68a 100644 --- a/common/content/dactyl.js +++ b/common/content/dactyl.js @@ -605,6 +605,10 @@ var Dactyl = Module("dactyl", XPCOM(Ci.nsISupportsWeakReference, ModuleBase), { * Initialize the help system. */ initHelp: function (force) { + // Waits for the add-on to become available, if necessary. + config.addon; + config.version; + if (force || !this.helpInitialized) { if ("noscriptOverlay" in window) { noscriptOverlay.safeAllow("chrome-data:", true, false); diff --git a/common/content/modes.js b/common/content/modes.js index 2840ea6c..4976db15 100644 --- a/common/content/modes.js +++ b/common/content/modes.js @@ -207,6 +207,51 @@ var Modes = Module("modes", { } }); + + function makeTree() { + let list = modes.all.filter(function (m) m.name !== m.description); + + let tree = {}; + + for (let mode in values(list)) + tree[mode.name] = {}; + + for (let mode in values(list)) + for (let base in values(mode.bases)) + tree[base.name][mode.name] = tree[mode.name]; + + let roots = iter([m.name, tree[m.name]] for (m in values(list)) if (!m.bases.length)).toObject(); + + default xml namespace = NS; + function rec(obj) { + XML.ignoreWhitespace = XML.prettyPrinting = false; + + let res =
+ The following tree represents all of the modes understood by + dactyl. Mappings for a mode also apply to its children and + descendants. So a mapping in the BASE mode, for instance, is + also active in NORMAL and EX mode. +
+ +&modes.tree; +
+ Pass unknown keys through to &dactyl.host; in these
+
Show the current mode in the command line if it matches this expression.
+
+ Show the current mode in the command line if it or any
+ of its parent
@@ -396,7 +396,7 @@
diff --git a/common/modules/commands.jsm b/common/modules/commands.jsm index 7f40a961..3c60ad87 100644 --- a/common/modules/commands.jsm +++ b/common/modules/commands.jsm @@ -1573,7 +1573,7 @@ var Commands = Module("commands", { ] })), iterateIndex: function (args) let (tags = services["dactyl:"].HELP_TAGS) - this.iterate(args).filter(function (cmd) cmd.hive === commands.builtin || set.has(cmd.helpTag)), + this.iterate(args).filter(function (cmd) cmd.hive === commands.builtin || set.has(tags, cmd.helpTag)), format: { headings: ["Command", "Group", "Description"], description: function (cmd) template.linkifyHelp(cmd.description + (cmd.replacementText ? ": " + cmd.action : "")), diff --git a/common/modules/config.jsm b/common/modules/config.jsm index cb18251f..bc67e657 100644 --- a/common/modules/config.jsm +++ b/common/modules/config.jsm @@ -206,7 +206,7 @@ var ConfigBase = Class("ConfigBase", { "version" ], - helpStyles: /^(Help|StatusLine|REPL)|^(Boolean|Indicator|MoreMsg|Number|Object|Logo|Key(word)?|String)$/, + helpStyles: /^(Help|StatusLine|REPL)|^(Boolean|Dense|Indicator|MoreMsg|Number|Object|Logo|Key(word)?|String)$/, styleHelp: function styleHelp() { if (!this.helpStyled) { const { highlight } = require("highlight"); @@ -457,6 +457,9 @@ var ConfigBase = Class("ConfigBase", { CompMore::after content: "⌄"; + Dense margin-top: 0; margin-bottom: 0; + + EditorEditing;;* background: #bbb !important; -moz-user-input: none !important; -moz-user-modify: read-only !important; EditorError;;* background: red !important; EditorBlink1;;* background: yellow !important; diff --git a/pentadactyl/NEWS b/pentadactyl/NEWS index f852b61b..79321c2d 100644 --- a/pentadactyl/NEWS +++ b/pentadactyl/NEWS @@ -181,8 +181,10 @@ triggers when the URL begins as above. [b1] - Added 's' flag to 'pageinfo' and changed default value. [b7] - Added 'passkeys' option. [b3] + - Added 'passunknown' option. [b7] - Changed 'urlseparator' default value to "|". [b3] - Added "passwords" and "venkman" dialogs to :dialog. [b2] + - Make 'showmode' a stringlist option. [b7] - Added 'wildanchor' option. [b2] - Added 'cookies', 'cookieaccept', and 'cookielifetime' options. [b3] • Added BookmarkChange, BookmarkRemove autocommands. [b2]