From 02e0a0aa10959c3dcc1f44bcdac6cac67b65092e Mon Sep 17 00:00:00 2001 From: Fedor Indutny Date: Sun, 25 Sep 2011 18:10:21 +0700 Subject: [PATCH] debugger docs Fixes #1767 --- doc/api/debugger.markdown | 71 ++++++++++++++++++++++----------------- 1 file changed, 41 insertions(+), 30 deletions(-) diff --git a/doc/api/debugger.markdown b/doc/api/debugger.markdown index 0bbfeab216..59bba7d3a9 100644 --- a/doc/api/debugger.markdown +++ b/doc/api/debugger.markdown @@ -6,17 +6,14 @@ Node has a built-in client for this debugger. To use this, start Node with the `debug` argument; a prompt will appear: % node debug myscript.js + < debugger listening on port 5858 + connecting... ok + break in /home/indutny/Code/git/indutny/myscript.js:1 + 1 x = 5; + 2 setTimeout(function () { + 3 debugger; debug> -At this point `myscript.js` is not yet running. To start the script, enter -the command `run`. If everything works okay, the output should look like -this: - - % node debug myscript.js - debug> run - debugger listening on port 5858 - connecting...ok - Node's debugger client doesn't support the full range of commands, but simple step and inspection is possible. By putting the statement `debugger;` into the source code of your script, you will enable a breakpoint. @@ -33,35 +30,49 @@ For example, suppose `myscript.js` looked like this: Then once the debugger is run, it will break on line 4. - % ./node debug myscript.js - debug> run - debugger listening on port 5858 - connecting...ok - hello - break in #._onTimeout(), myscript.js:4 - debugger; - ^ + % node debug myscript.js + < debugger listening on port 5858 + connecting... ok + break in /home/indutny/Code/git/indutny/myscript.js:1 + 1 x = 5; + 2 setTimeout(function () { + 3 debugger; + debug> cont + < hello + break in /home/indutny/Code/git/indutny/myscript.js:3 + 1 x = 5; + 2 setTimeout(function () { + 3 debugger; + 4 console.log("world"); + 5 }, 1000); debug> next - break in #._onTimeout(), myscript.js:5 - console.log("world"); - ^ - debug> print x + break in /home/indutny/Code/git/indutny/myscript.js:4 + 2 setTimeout(function () { + 3 debugger; + 4 console.log("world"); + 5 }, 1000); + 6 console.log("hello"); + debug> repl + Press Ctrl + C to leave debug repl + > x 5 - debug> print 2+2 + > 2+2 4 debug> next - world - break in #._onTimeout() returning undefined, myscript.js:6 - }, 1000); - ^ + < world + break in /home/indutny/Code/git/indutny/myscript.js:5 + 3 debugger; + 4 console.log("world"); + 5 }, 1000); + 6 console.log("hello"); + 7 debug> quit - A debugging session is active. Quit anyway? (y or n) y % -The `print` command allows you to evaluate variables. The `next` command steps -over to the next line. There are a few other commands available and more to -come type `help` to see others. +The `repl` command allows you to evaluate code remotely. The `next` command +steps over to the next line. There are a few other commands available and more +to come type `help` to see others. ### Advanced Usage