terminal-devtools
v1.0.5-rc1
Published
Terminal based Devtools for Node
Downloads
30
Readme
Terminal Devtools
Terminal based Devtools for Node
Status: Pre-release
Install
$ npm i -g terminal-devtools
Usage
$ devtools [--port <port>] [--host <host>]
By default devtools
will connect to the default debugger port (5858)
$ devtools <pid>
When a valid node
Process ID is passed, devtools
will send a SIGUSR2
signal to the process, putting it into debug mode then connect to port
5858.
Navigating
? - help and settings
c - continue, resume if paused, pause if resumed
n - step next
i - step iinto
o - step out of
b - set breakpoint (must be in code text panel)
tab - move forward between panels
shift+tab - move backward between panels
ctrl+n - navigator
ctrl+t - code text
ctrl+s - callstack
ctrl+p - breakpoints
ctrl+o - scope
ctrl+k - console panel
2 - select Console tab
arrow keys and vi keys (hjkl) control selections in panels
the mouse can also be used to select tabs, panels and items
Examples
Zero-config
Put a service into debug mode, break on first line
$ node --debug-brk examples/simple
Connect to default debug port
$ devtools
Multi-process
If we need to use more than debug port we can specify
Expose debug port as 5859
$ node --debug-brk=5859 examples/debugger-single-tick
Connect to custom debug port
$ devtools --port 5859
Debug a running process
Start a process as normal, debug mode is completely off
$ node examples/debugger
3879
Process handily outputs PID, pass it to devtools
$ devtools 3879
devtools
puts process into debug mode and connects to debugger.
Layouts
There are two supported layouts, Normal and Minimal.
The layout can be changed in Settings (?
or click the ⚙ icon).
In minimal layout, hidden panels can be revealed as dialogs using the
ctrl
based shortcuts (Navigator: ctrl+n
, Scope: ctrl+o
). To exit a
Scope or Navigator dialog press the esc
key.
Contributing
More than welcome
See devnotes
Any questions, twitter: @davidmarkclem
License
MIT