Skip to content

Commit 7976974

Browse files
committed
Fixed #925: Exiting by Ctrl-D throws EOFError
1 parent dbc5259 commit 7976974

File tree

1 file changed

+10
-5
lines changed

1 file changed

+10
-5
lines changed

interpreter/terminal_interface/terminal_interface.py

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -92,11 +92,16 @@ def terminal_interface(interpreter, message):
9292
interpreter.messages = interpreter.messages[:-1]
9393
else:
9494
### This is the primary input for Open Interpreter.
95-
message = (
96-
cli_input("> ").strip()
97-
if interpreter.multi_line
98-
else input("> ").strip()
99-
)
95+
try:
96+
message = (
97+
cli_input("> ").strip()
98+
if interpreter.multi_line
99+
else input("> ").strip()
100+
)
101+
except (KeyboardInterrupt, EOFError):
102+
# Treat Ctrl-D on an empty line the same as Ctrl-C by exiting gracefully
103+
interpreter.display_message("\n\n`Exiting...`")
104+
raise KeyboardInterrupt
100105

101106
try:
102107
# This lets users hit the up arrow key for past messages

0 commit comments

Comments
 (0)