#!/usr/bin/env python3 # this script translates bad usb ducky scripts to german keyboard layout # all props go to u/felice-el-chillo, just removed the hardcoded filename to argument import sys de_lang = '''1234567890qwertzuiopasdfghjklYXCVBNM;:_[]|{}\\+#!$%&/()=?`*" ''' ducky_lang = '''1234567890qwertyuiopasdfghjkl;zxcvbnm,.ßQWERTYUIOPASDFGHJKL:ZXCVBNMöÖ?ü+’Ü*#`§!$%/-)=´_<(@ ''' file_name = sys.argv[1] file = open(file_name, "r") lines = [] for line in file: if line[0:6] == "STRING": line_string = "STRING " for line_character in line[7:]: if line_character == "\"": line_string+="@" else: line_string += de_lang[ducky_lang.find(line_character)] lines.append(line_string) else: lines.append(line) with open((file_name[0:len(file_name)-4]+"_DE.txt"), 'w') as f: f.write('\n'.join(lines))