def create_app_interactive(): print_out( "Choose an instance [<green>{}</green>]: ".format(DEFAULT_INSTANCE), end="") instance = input() if not instance: instance = DEFAULT_INSTANCE return config.load_app(instance) or register_app(instance)
def run_command(command, args): app = load_app() user = load_user() # Commands which can run when not logged in if command == 'login': return cmd_login(args) if command == 'auth': return cmd_auth(app, user, args) # Commands which require user to be logged in if not app or not user: print_error("You are not logged in.") print_error("Please run `toot login` first.") return if command == 'logout': return cmd_logout(app, user, args) if command == 'post': return cmd_post_status(app, user, args) if command == 'timeline': return cmd_timeline(app, user, args) if command == 'upload': return cmd_upload(app, user, args) if command == 'search': return cmd_search(app, user, args) if command == 'follow': return cmd_follow(app, user, args) if command == 'unfollow': return cmd_unfollow(app, user, args) print_error("Unknown command '{}'\n".format(command)) print_usage()
def main(): if os.getenv('TOOT_DEBUG'): logging.basicConfig(level=logging.DEBUG) # If something is piped in, append it to commandline arguments if not sys.stdin.isatty(): sys.argv.append(sys.stdin.read()) command_name = sys.argv[1] if len(sys.argv) > 1 else None args = sys.argv[2:] if not command_name: return print_usage() user = config.load_user() app = config.load_app(user.instance) if user else None try: run_command(app, user, command_name, args) except ConsoleError as e: print_error(str(e)) except api.ApiError as e: print_error(str(e))
def create_app_interactive(): instance = input("Choose an instance [%s]: " % green(DEFAULT_INSTANCE)) if not instance: instance = DEFAULT_INSTANCE return config.load_app(instance) or register_app(instance)