import os import json def handle_arguments(arguments, config, engine): for index, arg in enumerate(arguments[1:]): match arg: case '--wpm'|'-w': config['wpm'] = int(arguments[index+2]) case '--language'|'-l': config['language'] = arguments[index+2] case '--voice'|'-v': config['voice'] = arguments[index+2] case '--mode'|'-m': config['mode'] = arguments[index+2] case '--words'|'-o': config['words'] = int(arguments[index+2]) case '--time'|'-t': config['time'] = int(arguments[index+2]) case '--filename'|'-f': config['filename'] = arguments[index+2] case '--quote'|'-q': config['quoteid'] = int(arguments[index+2]) case '--list-languages'|'-i': languages = os.listdir('languages') for lang in languages: print(lang.replace('.json','')) exit() case '--list-quotes'|'-u': with open(f'quotes/{config['language']}.json') as file: quotes = json.load(file) for index,quote in enumerate(quotes): print(f'{index}: {quote['quote']} - {quote['author']}') exit() case '--list-voices'|'-c': voices = engine.getProperty('voices') for voice in voices: print(voice) exit() case _: continue return config