I'm working on a command line tool using Node and I'd like to prevent it from exiting when using the
readline module when the user inputs the "Return" key or something that indicates a new line. I saw that readline has an event handler for
line but can't figure out how to prevent it from exiting. Meaning I'd like to allow for the user to be able to use the return and it adds a carriage return to the input for readline instead of exiting it.
I'd like to exit readline only when the user uses
Top comments (4)
It sounds like you want something like this?
Si! Thanks so much for helping with your answer! I was able to solve my problem based on your solution. Is
SIGINTwhat is triggered by default when a new line event occurs? So handling the
SIGINTevent did the trick?
No worries mate - glad it was helpful. I've never actually used
readline, so it was a good opportunity to give it a spin 😁.
SIGINTis the interrupt signal. The terminal sends it to the foreground process when the user presses
ctrl-c. We handle this signal so we can gracefully shut down
lineis the event that is triggered when a new line occurs. I would assume that the default behaviour of a new line is to call
rl.pause()but we're capturing the event instead and doing our own thing.