sigint
Cleaner process interrupt signal handling.
Hooks standard input in raw mode to enable interupts in Windows as well as to
hide the "^C" echoed to the terminal.
Installation
npm install sigint --save
Example
var sigint = require('sigint').create();
sigint.on('signal', function(source, count) {
if (source === 'keyboard' && count === 1) {
console.log('press Ctrl+C again to quit');
} else {
process.exit();
}
});
You can bind to only keyboard or kill interrupts.
var sigint = require('sigint').create();
sigint.on('keyboard', function(count) {
if (count === 1) {
console.log('press Ctrl+C again to quit');
} else {
process.exit();
}
});
sigint.on('kill', function(count) {
process.exit();
});
You can also use the process "SIGINT" event directly.
var sigint = require('sigint').create();
process.on('sigint', function() {
if (sigint.source() === 'keyboard' && sigint.count() === 1) {
console.log('press Ctrl+C again to quit');
} else {
process.exit();
}
});