Mercurial > code > home > repos > light9
changeset 2048:53dd7eb024c9
relocate run_local.py
author | drewp@bigasterisk.com |
---|---|
date | Wed, 11 May 2022 00:03:44 -0700 |
parents | 9cfcb16f2c5a |
children | 1aa9a1293611 |
files | bin/run_local.py light9/run_local.py |
diffstat | 2 files changed, 72 insertions(+), 68 deletions(-) [+] |
line wrap: on
line diff
--- a/bin/run_local.py Tue May 10 23:10:54 2022 -0700 +++ b/bin/run_local.py Wed May 11 00:03:44 2022 -0700 @@ -1,72 +1,8 @@ -# allows bin/* to work without installation - -# this should be turned off when the programs are installed +# this file can go away when all the bin/* are just launchers and everyone uses light9/run_local -import sys, os, socket +import sys -from twisted.python.failure import Failure - -# to support 'import light9' until I rearrange things better: +# to support 'import light9' sys.path.append('.') -try: - import tkinter -except ImportError: - pass -else: - - def rce(self, exc, val, tb): - sys.stderr.write("Exception in Tkinter callback\n") - if True: - sys.excepthook(exc, val, tb) - else: - Failure(val, exc, tb).printDetailedTraceback() - - tkinter.Tk.report_callback_exception = rce - -import coloredlogs, logging, time -try: - import faulthandler - faulthandler.enable() -except ImportError: - pass - -if 0: - from IPython.core import ultratb - sys.excepthook = ultratb.FormattedTB(mode='Verbose', - color_scheme='Linux', - call_pdb=1) - -progName = sys.argv[0].split('/')[-1] -log = logging.getLogger() # this has to get the root logger -log.name = progName # but we can rename it for clarity - - -class FractionTimeFilter(logging.Filter): - - def filter(self, record): - record.fractionTime = ( - time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(record.created)) + - ("%.3f" % (record.created % 1)).lstrip('0')) - # Don't filter the record. - return 1 - - -coloredlogs.install( - level='DEBUG', - fmt='%(fractionTime)s %(name)s[%(process)d] %(levelname)s %(message)s') -logging.getLogger().handlers[0].addFilter(FractionTimeFilter()) - - -def setTerminalTitle(s): - if os.environ.get('TERM', '') in ['xterm', 'rxvt', 'rxvt-unicode-256color']: - print("\033]0;%s\007" % s) # not escaped/protected correctly - - -if 'listsongs' not in sys.argv[0] and 'homepageConfig' not in sys.argv[0]: - setTerminalTitle( - '[%s] %s' % - (socket.gethostname(), ' '.join(sys.argv).replace('bin/', ''))) - -# see http://www.youtube.com/watch?v=3cIOT9kM--g for commands that make -# profiles and set background images +from light9.run_local import log
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/light9/run_local.py Wed May 11 00:03:44 2022 -0700 @@ -0,0 +1,68 @@ +# bootstrap + +import sys, os, socket + +from twisted.python.failure import Failure + + +try: + import tkinter +except ImportError: + pass +else: + + def rce(self, exc, val, tb): + sys.stderr.write("Exception in Tkinter callback\n") + if True: + sys.excepthook(exc, val, tb) + else: + Failure(val, exc, tb).printDetailedTraceback() + + tkinter.Tk.report_callback_exception = rce + +import coloredlogs, logging, time +try: + import faulthandler + faulthandler.enable() +except ImportError: + pass + +if 0: + from IPython.core import ultratb + sys.excepthook = ultratb.FormattedTB(mode='Verbose', + color_scheme='Linux', + call_pdb=1) + +progName = sys.argv[0].split('/')[-1] +log = logging.getLogger() # this has to get the root logger +log.name = progName # but we can rename it for clarity + + +class FractionTimeFilter(logging.Filter): + + def filter(self, record): + record.fractionTime = ( + time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(record.created)) + + ("%.3f" % (record.created % 1)).lstrip('0')) + # Don't filter the record. + return 1 + + +coloredlogs.install( + level='DEBUG', + fmt='%(fractionTime)s %(name)s[%(process)d] %(levelname)s %(message)s') +logging.getLogger().handlers[0].addFilter(FractionTimeFilter()) + + +def setTerminalTitle(s): + if os.environ.get('TERM', '') in ['xterm', 'rxvt', 'rxvt-unicode-256color']: + print("\033]0;%s\007" % s) # not escaped/protected correctly + + +if 'listsongs' not in sys.argv[0] and 'homepageConfig' not in sys.argv[0]: + setTerminalTitle( + '[%s] %s' % + (socket.gethostname(), ' '.join(sys.argv).replace('bin/', ''))) + +# see http://www.youtube.com/watch?v=3cIOT9kM--g for commands that make +# profiles and set background images