forked from gooberinc/goober
33 lines
953 B
Python
33 lines
953 B
Python
import sys
|
|
import traceback
|
|
import os
|
|
from modules.settings import Settings as SettingsManager
|
|
import logging
|
|
from modules.globalvars import RED, RESET
|
|
import modules.keys as k
|
|
|
|
settings_manager = SettingsManager()
|
|
settings = settings_manager.settings
|
|
logger = logging.getLogger("goober")
|
|
|
|
def handle_exception(exc_type, exc_value, exc_traceback, *, context=None):
|
|
os.system('cls' if os.name == 'nt' else 'clear')
|
|
|
|
if issubclass(exc_type, KeyboardInterrupt):
|
|
sys.__excepthook__(exc_type, exc_value, exc_traceback)
|
|
return
|
|
|
|
with open(settings['splash_text_loc'], "r") as f:
|
|
print("".join(f.readlines()))
|
|
|
|
print(f"{RED}=====BEGINNING OF TRACEBACK====={RESET}")
|
|
traceback.print_exception(exc_type, exc_value, exc_traceback)
|
|
print(f"{RED}========END OF TRACEBACK========{RESET}")
|
|
print(f"{RED}{k.unhandled_exception()}{RESET}")
|
|
|
|
|
|
if context:
|
|
print(f"{RED}Context: {context}{RESET}")
|
|
|
|
|
|
|