Я получил этот код из другого вопроса SO, но узел пожаловался на использование process.stdin.setRawMode вместо tty, поэтому я изменил его.
Перед:
var tty = require("tty");
process.openStdin().on("keypress", function(chunk, key) {
if(key && key.name === "c" && key.ctrl) {
console.log("bye bye");
process.exit();
}
});
tty.setRawMode(true);
После:
process.stdin.setRawMode(true);
process.stdin.on("keypress", function(chunk, key) {
if(key && key.name === "c" && key.ctrl) {
console.log("bye bye");
process.exit();
}
});
В любом случае, он просто создает полностью неотзывчивый процесс узла, который ничего не делает, причем первый жалуется tty
, затем выдает ошибку, а второй просто ничего не делает и отключает собственный обработчик CTRL+ Node C, поэтому он даже не выходит из узла, когда я нажми. Как я могу успешно обрабатывать Ctrl+ Cв Windows ?
node.js
event-handling
copy-paste
user3025492
источник
источник
Для тех, кому нужен функционал, я нашел смерть (npm nodule, ха!) .
Автор также утверждает, что он работает с окнами:
Могу подтвердить CTRL+ Cработает на win32 (да, удивлен).
источник