Clean exit on Ctrl+C without traceback

This commit is contained in:
Dita Aji Pratama 2026-05-12 10:23:40 +07:00
parent 2c2927751a
commit 33c9b48106

View File

@ -34,7 +34,11 @@ class HendrikTUI:
self.h, self.w = 0, 0 self.h, self.w = 0, 0
def run(self): def run(self):
try:
curses.wrapper(self._main) curses.wrapper(self._main)
except KeyboardInterrupt:
pass
print("Exiting.")
def _main(self, stdscr): def _main(self, stdscr):
curses.use_default_colors() curses.use_default_colors()
@ -56,7 +60,10 @@ class HendrikTUI:
self._draw(stdscr) self._draw(stdscr)
curses.curs_set(0 if self.processing else 2) curses.curs_set(0 if self.processing else 2)
try:
key = stdscr.getch() key = stdscr.getch()
except KeyboardInterrupt:
break
if not self.processing: if not self.processing:
self._handle_key(stdscr, key) self._handle_key(stdscr, key)