mirror of
https://github.com/gryf/pentadactyl-pm.git
synced 2026-01-07 22:54:12 +01:00
Provide util.regexpSource to avoid escaping slash when not necessary.
This commit is contained in:
@@ -86,7 +86,7 @@ const AutoCommands = Module("autocommands", {
|
||||
+
|
||||
template.map(items, function (item)
|
||||
<tr>
|
||||
<td> {item.pattern.source}</td>
|
||||
<td> {util.regexpSource(item.pattern)}</td>
|
||||
<td>{item.command}</td>
|
||||
</tr>))
|
||||
}
|
||||
@@ -114,7 +114,7 @@ const AutoCommands = Module("autocommands", {
|
||||
for (let [, autoCmd] in Iterator(autoCmds)) {
|
||||
if (autoCmd.pattern.test(url) ^ !autoCmd.pattern.result) {
|
||||
if (!lastPattern || lastPattern.source != autoCmd.pattern.source)
|
||||
dactyl.echomsg("Executing " + event + " Auto commands for " + autoCmd.pattern.source.quote(), 8);
|
||||
dactyl.echomsg("Executing " + event + " Auto commands for " + util.regexpSource(autoCmd.pattern).quote(), 8);
|
||||
|
||||
lastPattern = autoCmd.pattern;
|
||||
dactyl.echomsg("autocommand " + autoCmd.command, 9);
|
||||
|
||||
@@ -391,7 +391,7 @@ const Option = Class("Option", {
|
||||
re.toString = function () Option.unparseRegexp(this);
|
||||
return re;
|
||||
},
|
||||
unparseRegexp: function (re) re.bang + Option.quote(re.source.replace(/\\(.)/g, function (m, n1) n1 == "/" ? n1 : m), /^!|:/) +
|
||||
unparseRegexp: function (re) re.bang + Option.quote(util.regexpSource(re), /^!|:/) +
|
||||
(typeof re.result === "boolean" ? "" : ":" + Option.quote(re.result)),
|
||||
|
||||
getKey: {
|
||||
|
||||
@@ -836,6 +836,14 @@ const Util = Module("Util", XPCOM([Ci.nsIObserver, Ci.nsISupportsWeakReference])
|
||||
return RegExp(expr, flags);
|
||||
},
|
||||
|
||||
/**
|
||||
* Given a RegExp, returns its source in the form showable to the user.
|
||||
*
|
||||
* @param {RegExp} re The regexp showable source of which is to be returned.
|
||||
* @returns {string}
|
||||
*/
|
||||
regexpSource: function regexpSource(re) re.source.replace(/\\(.)/g, function (m0, m1) m1 === "/" ? "/" : m0),
|
||||
|
||||
maxErrors: 15,
|
||||
errors: Class.memoize(function () []),
|
||||
reportError: function (error) {
|
||||
|
||||
Reference in New Issue
Block a user