-q is still executing as a regexp when replacing
Closed this issue · 3 comments
So using 'on("tabs' as a replacement string will work, but put \ as a literal in the replaced result.
Then I tried searching for 'on("tab' and got this error:
4["onData",16,"\n/home/ubuntu/.nvm/v0.10.13/lib/node_modules/nak/lib/nak.js:151\n options.query = new RegExp(query, flags);\n ^\nSyntaxError: Invalid regular expression: /tabs.on\(/: Unterminated group\n at new RegExp ()\n at makeQuery (/home/ubuntu/.nvm/v0.10.13/lib/node_modules/nak/lib/nak.js:151:19)\n at main (/home/ubuntu/.nvm/v0.10.13/lib/node_modules/nak/lib/nak.js:82:3)\n at Object.exports.run (/home/ubuntu/.nvm/v0.10.13/lib/node_modules/nak/lib/nak.js:8:5)\n at Object. (/home/ubuntu/.nvm/v0.10.13/lib/node_modules/nak/bin/nak:2:23)\n at Module._compile (module.js:456:26)\n at Object.Module._extensions..js (module.js:474:10)\n at Module.load (module.js:356:32)\n at Function.Module._load (module.js:312:12)\n at Function.Module.runMain (module.js:497:10)\n",107]
Here's a proper stack trace:
ubuntu@ruben-ca-dev:~/newclient/plugins/c9.ide.editors$ nak -i -q 'emit("page' -q 'emit("tab' .
/home/ubuntu/.nvm/v0.10.13/lib/node_modules/nak/lib/nak.js:158
options.replacementRe = new RegExp(replacement);
^
SyntaxError: Invalid regular expression: /emit("tab/: Unterminated group
at new RegExp (<anonymous>)
at makeQuery (/home/ubuntu/.nvm/v0.10.13/lib/node_modules/nak/lib/nak.js:158:29)
at main (/home/ubuntu/.nvm/v0.10.13/lib/node_modules/nak/lib/nak.js:82:3)
at Object.exports.run (/home/ubuntu/.nvm/v0.10.13/lib/node_modules/nak/lib/nak.js:8:5)
at Object.<anonymous> (/home/ubuntu/.nvm/v0.10.13/lib/node_modules/nak/bin/nak:2:23)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
Fixed, will be released on 0.2.20 soon.