#!/usr/bin/env python3 # -*- coding: utf-8 -*- """Interactive BaconScript shell.""" import logging import sys from .bacon import comment, LISTENER, HogNet, load_servers logging.basicConfig(level=logging.INFO) log = logging.getLogger(__name__) LISTENER.osc = HogNet(load_servers('server.cfg')) # handle user input if run directly if __name__ == '__main__': if len(sys.argv) > 1: # look for macros passed as arguments logging.debug("found macro at argv[1]") comment(sys.argv[1]) else: # be an interactive shell while True: # get user input try: TEXT = input("comment# ") except (KeyboardInterrupt, EOFError): TEXT = 'exit' print(TEXT) # catch exit keyword if TEXT.lower() == 'exit': break # exec user input comment(TEXT)