def main(args): filenames = [] is_sys_present = False path = os.path.abspath(args[1]) if os.path.isdir(path): additional, is_sys_present = parse_dir(path) filenames.extend(additional) output = os.path.join(path, f"{os.path.basename(path)}.asm") else: filenames.append(path) output = path[:-3] + ".asm" if os.path.basename(path) == 'Sys.vm': is_sys_present = True translator = Translator("") with open(output, 'w') as output_file: if is_sys_present: output_file.write(translator.bootstrap()) for filename in filenames: translator.filename = os.path.basename(filename[:-3]) with open(os.path.join(path, filename)) as input_file: for line in input_file: translated = translator.interpret(line[:-1]) output_file.write(translated) output_file.write(translator.finish())
def main(): file_name = "".join(sys.argv[1].split(".")[:-1]) ext = ".asm" with open(file_name + ext, "w") as write_file: with open(sys.argv[1], encoding="UTF-8") as read_file: translator = Translator(file_name.split("\\")[-1].split("/")[-1]) for line in read_file: print(f'Line {line}') value = translator.interpret(line[:-1]) print(value) write_file.write(value) write_file.write(translator.finish())