From c5c73ae602366419a7f2862867032c85db278578 Mon Sep 17 00:00:00 2001 From: greysoh Date: Tue, 7 May 2024 12:01:46 -0400 Subject: [PATCH] feature: Adds ctrl + c support. --- lom/src/libs/readFromKeyboard.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lom/src/libs/readFromKeyboard.ts b/lom/src/libs/readFromKeyboard.ts index 4eb107f..7e2cdb4 100644 --- a/lom/src/libs/readFromKeyboard.ts +++ b/lom/src/libs/readFromKeyboard.ts @@ -21,7 +21,10 @@ export async function readFromKeyboard( const readStreamData = stream.read(); if (readStreamData == null) return setTimeout(eventLoop, pullRate); - if (readStreamData.includes("\r") || readStreamData.includes("\n")) { + if (readStreamData.includes("\x03")) { + stream.write("^C"); + return promise(""); + } else if (readStreamData.includes("\r") || readStreamData.includes("\n")) { return promise(line.replace("\r", "")); } else if (readStreamData.includes(clientBackspace)) { if (line.length == 0) return setTimeout(eventLoop, pullRate); // Here because if we do it in the parent if statement, shit breaks