Обратите внимание на следующий сценарий:
const child_process = require('child_process');
process.stdin.setRawMode(true);
process.stdin.on("data", (data) => {});
var child = child_process.spawn("vim", ["README.md"], {stdio: "inherit"});
child.on("exit", (e, code) => {
process.exit();
});
Он устанавливает исходный режим, а затем открывает README.md
на vim
. Через несколько секунд VIM полностью перестает отвечать. Нажатие клавиш ничего не делает, и единственный способ восстановить - закрыть вкладку. Эта проблема решается удалением обратного вызова on("data")
. Я использую iTerm на macOS Catalina, версия узла v13.10.1
. Это неправильный сценарий, или это ошибка Node.js, VIM или, возможно, iTerm?