diff --git a/common/content/dactyl.js b/common/content/dactyl.js index 461e5a8d..b89b4d9c 100644 --- a/common/content/dactyl.js +++ b/common/content/dactyl.js @@ -728,8 +728,8 @@ var Dactyl = Module("dactyl", XPCOM(Ci.nsISupportsWeakReference, ModuleBase), { } list = null; - if (level == 0 && /^.*:\n$/.test()) - var elem =

{template.linkifyHelp(par.slice(0, -1), true)}

; + if (level == 0 && /^.*:\n$/.test(match.par)) + res +=

{template.linkifyHelp(par.slice(0, -1), true)}

; else { let [, a, b] = /^(IMPORTANT:?)?([^]*)/.exec(par); res +=

{ @@ -759,7 +759,7 @@ var Dactyl = Module("dactyl", XPCOM(Ci.nsISupportsWeakReference, ModuleBase), { unescape(encodeURI( // UTF-8 handling hack. -

{config.appName} Versions

+

{config.appName} Versions

{rec(NEWS, 0)} diff --git a/common/content/tabs.js b/common/content/tabs.js index 1b9a2869..c69aead5 100644 --- a/common/content/tabs.js +++ b/common/content/tabs.js @@ -40,9 +40,11 @@ var Tabs = Module("tabs", { ]]>, /tab-./g, function (m) util.OS.isMacOSX ? "tab-mac" : m), false, true); - for (let { linkedBrowser: { contentDocument } } in values(this.allTabs)) - if (contentDocument.readyState === "complete") - dactyl.initDocument(contentDocument); + this.timeout(function () { + for (let { linkedBrowser: { contentDocument } } in values(this.allTabs)) + if (contentDocument.readyState === "complete") + dactyl.initDocument(contentDocument); + }); }, cleanup: function cleanup() { diff --git a/common/modules/util.jsm b/common/modules/util.jsm index de87279a..8022e7e8 100644 --- a/common/modules/util.jsm +++ b/common/modules/util.jsm @@ -125,7 +125,10 @@ var Util = Module("Util", XPCOM([Ci.nsIObserver, Ci.nsISupportsWeakReference]), obj.observers[target].call(obj, subject, data); } catch (e) { - util.reportError(e); + if (typeof util === "undefined") + dump("dactyl: error: " + e + "\n" + (e.stack || Error().stack).replace(/^/gm, "dactyl: ")); + else + util.reportError(e); } }); @@ -1039,7 +1042,8 @@ var Util = Module("Util", XPCOM([Ci.nsIObserver, Ci.nsISupportsWeakReference]), JSMLoader.cleanup(); - services.observer.addObserver(this, "dactyl-rehash", true); + if (!this.rehashing) + services.observer.addObserver(this, "dactyl-rehash", true); }, "dactyl-rehash": function () { services.observer.removeObserver(this, "dactyl-rehash"); diff --git a/pentadactyl/NEWS b/pentadactyl/NEWS index c813a3af..4c6f2f5b 100644 --- a/pentadactyl/NEWS +++ b/pentadactyl/NEWS @@ -8,6 +8,16 @@ - Only visible tabs are considered in tab numbering, gt/gn/gN, etc. [b1] * Improved startup time by a factor of 7. [b1] + * Further improved startup time. [b6] + * Added site-local and script-local groups: + - Added the :group command to define and select groups. + - Added the -group flag to :autocmd, :command, :map, :style, + and friends. + - Mappings and commands can now be bound to groups which + execute only for certain websites. + - Autocommands, commands, mappings, and styles are now + automatically added to per-script groups so that most traces + of a script can be easily purged. * Significant completion speed improvements, especially for JavaScript. [b1] * Greatly improved private mode support and :sanitize command. @@ -76,8 +86,6 @@ and linking to source code locations). [b4] - :downloads now opens a download list in the multi-line output buffer. [b6] - - Added :mapgroup command and -group flag to :map, :unmap, and - :mapclear. [b6] - Added -arg flag to :map. [b6] - :extensions has been replaced with a more powerful :addons. - Added -literal flag to :command. [b6]