Commit Graph
31 Commits
Author SHA1 Message Date
isaacs 28e851c169 Warn about running npm in the repl 2012-06-05 12:35:49 -07:00
Nathan Rajlich aab7cb7dfe test: fix failing test-repl.js 2012-04-06 16:13:40 -07:00
Fedor Indutny ae5e23310e repl: remove double calls where possible
Repl is doing double evaluation of code: wrapped in parens and without
them. That's needed to allow users typing multiline chunks of code by
handling syntax errors on repl side. However if function declaration is
wrapped in parens (`(function a() {})`) calling it will be impossible,
so we're evaluating functions twice. That works fine for declaration,
but if entered code chunk returns function - it should not be called
twice.

fix #2773
2012-02-18 00:30:52 +06:00
seebees 3421f43351 .load, .save and local scope tab completion
Fixes #2063.

REPLServer.prototype.resetContext:
Reset the line cache

REPLServer.prototype.memory (don't know if I like that name, called from finish)
pushes what cmd's have been executed against it into this.lines
pushes the "tab depth" for bufferedCommands, in this.lines.level

REPLServer.prototype.displayPrompt:
Uses "tab depth" from this.lines.level to adjust the prompt to visually
denote this depth e.g.
> asdf = function () {
… var inner = {
….. one:1

REPLServer.prototype.complete:
Now notices if there is a bufferedCommand and attempts determine locally
scoped variables by removing any functions from this.lines and evaling these
lines in a nested REPL e.g.
> asdf = function () {
… var inner = { one: 1};
… inn\t
will complete to 'inner' and inner.o\t will complete to 'inner.one'
If the nested REPL still has a bufferedCommand it will falls back to the
default.

ArrayStream is a helper class for the nested REPL to get commands pushed to it.
new REPLServer('', new ArrayStream());

Finally added two new REPL commands .save and .load, each takes 1 parameter,
a file and attempts to save or load the file to or from the REPL
respectively.
2011-11-12 11:34:55 -08:00
Ben Noordhuis 018e110cd1 test: replace .addListener() calls with .on() 2011-10-15 01:08:36 +02:00
Colton Baker 87286cc737 Fixed a lot of jslint errors.
Fixes #1831
2011-10-05 18:51:06 -07:00
Ryan Dahl 665a4e4a1d Fix test/simple/test-repl 2011-08-09 16:38:48 -07:00
Ryan Dahl 03a119eb70 Improve win compat of test-repl 2011-08-09 16:07:16 -07:00
koichik 8faf941109 Fixes #1267.
Error message of JSON.parse() was changed.
2011-07-08 17:18:31 -07:00
Ryan Dahl 8b2f5af2a0 Revert "Fixes #1267."
Revert due to V8 downgrade.

This reverts commit 04c9169892.
2011-07-05 16:40:13 -07:00
koichik 04c9169892 Fixes #1267.
Error message of JSON.parse() was changed.
2011-07-05 04:15:51 +09:00
Ryan Dahl 55048cdf79 Update copyright headers 2011-03-14 17:37:05 -07:00
Ryan Dahl 129217a4e9 Increase timeout on test-repl to 5 seconds
Hopefully wont get failures on buildbot slaves.
2011-01-25 17:35:08 -08:00
Ryan Dahl feb77eab65 Fix REPL for named functions
add some tests.
2011-01-02 18:27:14 -08:00
Ryan Dahl 8b352bdc5d Add '{a:1}' to REPL tests 2011-01-01 21:14:06 -08:00
Oleg Efimov 0665f0271e GJSLint all simple tests exclude http-*, url, path 2010-12-05 15:41:58 -08:00
Oleg Efimov 0ce9cbab29 GJSLint continue 2010-12-05 09:28:18 -08:00
Ryan Dahl 02cc39f221 Check for global leaks in all tests 2010-12-04 16:36:21 -08:00
Ryan Dahl a0159b4b29 Fix global leaks 2010-12-04 15:58:50 -08:00
Ryan Dahl 08d8116f6b style 2010-12-01 13:43:05 -08:00
Ryan Dahl cd48649c61 Require without .js in test-repl 2010-12-01 13:40:28 -08:00
Marco Rogers 118b88e44f update repl to distinguish JSON.parse SyntaxErrors from the rest 2010-11-20 20:36:14 -08:00
Micheil Smith e38eb0c5a4 Soft migration of sys -> util, Removal of deprecated utils module. 2010-10-11 15:21:36 -07:00
Ryan Dahl 4962702e4a Revert requireNative changes: 4e6b9b0, d429033, 6abbfa0, bcad540
The REPL needs the full require(); add test for that behavior.
2010-09-19 11:22:15 -07:00
Ryan Dahl 4fe5e86a7e Don't refer to private API in test-repl 2010-09-07 17:16:24 -07:00
Ryan Dahl 9fd5e3c89c Update tests to work with module contexts 2010-07-15 14:21:31 -07:00
Ruben Rodriguez 242161bef2 Added new API to Script, and implemented it in the REPL 2010-06-28 15:16:26 -07:00
Ryan Dahl 14414f81f3 Soft deprecation of 'listening' event.
Add callback param to listen() instead
2010-06-15 12:38:25 -07:00
Ryan Dahl a6942b345d Fix test-repl 2010-06-07 17:39:52 -07:00
Matt Ranney afe3c1cdea Buffer partial reads before doing expect match. 2010-04-12 14:38:16 -07:00
Matt Ranney b7441040f8 REPL can be run from multiple different streams.
e.g. from UNIX sockets with socat.
2010-04-12 00:31:51 -07:00