diff --git a/common/content/dactyl.js b/common/content/dactyl.js index b7e1cca2..dd8d9040 100644 --- a/common/content/dactyl.js +++ b/common/content/dactyl.js @@ -189,9 +189,9 @@ var Dactyl = Module("dactyl", XPCOM(Ci.nsISupportsWeakReference, ModuleBase), { let results = array(params.iterate(args)) .sort(function (a, b) String.localeCompare(a.name, b.name)); - let filters = args.map(function (arg) RegExp("\\b" + util.regexp.escape(arg) + "\\b", "i")); + let filters = args.map(function (arg) util.regexp("\\b" + util.regexp.escape(arg) + "\\b", "i")); if (filters.length) - results = results.filter(function (item) filters.every(function (re) re.test(item.name + " " + item.description))); + results = results.filter(function (item) filters.every(function (re) [item.name, item.description].concat(item.columns || []).some(re.closure.test))); commandline.commandOutput( template.usage(results, params.format)); diff --git a/common/modules/services.jsm b/common/modules/services.jsm index bceb265a..c8c9a9a1 100644 --- a/common/modules/services.jsm +++ b/common/modules/services.jsm @@ -84,6 +84,7 @@ var Services = Module("Services", { this.addClass("Timer", "@mozilla.org/timer;1", "nsITimer", "initWithCallback"); this.addClass("Xmlhttp", "@mozilla.org/xmlextras/xmlhttprequest;1", "nsIXMLHttpRequest"); this.addClass("XPathEvaluator", "@mozilla.org/dom/xpath-evaluator;1", "nsIDOMXPathEvaluator"); + this.addClass("XMLDocument", "@mozilla.org/xml/xml-document;1", ["nsIDOMXMLDocument", "nsIDOMNodeSelector"]); this.addClass("ZipReader", "@mozilla.org/libjar/zip-reader;1", "nsIZipReader", "open"); this.addClass("ZipWriter", "@mozilla.org/zipwriter;1", "nsIZipWriter"); }, diff --git a/common/modules/util.jsm b/common/modules/util.jsm index 6a1a8ea6..10743df4 100644 --- a/common/modules/util.jsm +++ b/common/modules/util.jsm @@ -430,7 +430,7 @@ var Util = Module("Util", XPCOM([Ci.nsIObserver, Ci.nsISupportsWeakReference]), validateMatcher: function validateMatcher(values) { let evaluator = services.XPathEvaluator(); - let node = util.xmlToDom(
, document); + let node = services.XMLDocument(); return this.testValues(values, function (value) { if (/^xpath:/.test(value)) evaluator.createExpression(value.substr(6), util.evaluateXPath.resolver);