tab completion for commands in debugger
This commit is contained in:
parent
fc634cd92c
commit
1b63bd16ed
@ -351,7 +351,10 @@ function SourceInfo(body) {
|
||||
// "node debug"
|
||||
function Interface() {
|
||||
var self = this;
|
||||
var term = this.term = readline.createInterface(process.stdout);
|
||||
var term = this.term =
|
||||
readline.createInterface(process.stdout, function (line) {
|
||||
return self.complete(line);
|
||||
});
|
||||
var child;
|
||||
var client;
|
||||
var term;
|
||||
@ -396,6 +399,39 @@ function Interface() {
|
||||
}
|
||||
|
||||
|
||||
var commands = [
|
||||
'backtrace',
|
||||
'continue',
|
||||
'help',
|
||||
'info breakpoints',
|
||||
'kill',
|
||||
'list',
|
||||
'next',
|
||||
'print',
|
||||
'quit',
|
||||
'run',
|
||||
'scripts',
|
||||
'step',
|
||||
'version',
|
||||
];
|
||||
|
||||
|
||||
Interface.prototype.complete = function(line) {
|
||||
// Match me with a command.
|
||||
var matches = [];
|
||||
// Remove leading whitespace
|
||||
line = line.replace(/^\s*/, '');
|
||||
|
||||
for (var i = 0; i < commands.length; i++) {
|
||||
if (commands[i].indexOf(line) >= 0) {
|
||||
matches.push(commands[i]);
|
||||
}
|
||||
}
|
||||
|
||||
return [matches, line];
|
||||
};
|
||||
|
||||
|
||||
Interface.prototype.handleSIGINT = function() {
|
||||
if (this.paused) {
|
||||
this.child.kill('SIGINT');
|
||||
|
Loading…
x
Reference in New Issue
Block a user