diff --git a/README.md b/README.md index cdf3107..d3fdba0 100644 --- a/README.md +++ b/README.md @@ -74,7 +74,8 @@ If you want to reinstall or update piduck, please rerun the script. `./install.sh` ## Usage -Syntax of [Ducky-Script-v1][Ducky-Script-v1-Syntax] +Syntax of [Ducky-Script-v1][Ducky-Script-v1-Syntax] with additions: +CHAR: Uses key with the specified hid keyboard id as argument Root is needed (again) ### Using Script File `piduck -i inject.txt` diff --git a/pd_key_maps/keymap_de.py b/pd_key_maps/keymap_de.py new file mode 100644 index 0000000..01dc1fd --- /dev/null +++ b/pd_key_maps/keymap_de.py @@ -0,0 +1,210 @@ +#!/usr/bin/env python3 +commap = { + "LCTRL": 1, + "LSHIFT": 2, + "LALT": 4, + "LMETA": 8, + "RCTRL": 16, + "RSHIFT": 32, + "RALT": 64, + "RMETA": 128, +} +c1map = { + "a": 4, + "b": 5, + "c": 6, + "d": 7, + "e": 8, + "f": 9, + "g": 10, + "h": 11, + "i": 12, + "j": 13, + "k": 14, + "l": 15, + "m": 16, + "n": 17, + "o": 18, + "p": 19, + "q": 20, + "r": 21, + "s": 22, + "t": 23, + "u": 24, + "v": 25, + "w": 26, + "x": 27, + "z": 28, + "y": 29, + "1": 30, + "2": 31, + "3": 32, + "4": 33, + "5": 34, + "6": 35, + "7": 36, + "8": 37, + "9": 38, + "0": 39, + "RETURN": 40, + "ESC": 41, + "BACKSPACE": 42, + "TAB": 43, + "SPACE": 44, + "ß": 45, + "´": 46, + "ü": 47, + "+": 48, + "#": 49, + # "#": 50, # Non us only + "ö": 51, + "ä": 52, + "^": 53, + ",": 54, + ".": 55, + "-": 56, + "CAPSLOCK": 57, + "F1": 58, + "F2": 59, + "F3": 60, + "F4": 61, + "F5": 62, + "F6": 63, + "F7": 64, + "F8": 65, + "F9": 66, + "F10": 67, + "F11": 68, + "F12": 69, + "PRINT": 70, + "SCROLLLOCK": 71, + "PAUSE": 72, + "INSERT": 73, + "HOME": 74, + "PAGEUP": 75, + "DELETE": 76, + "END": 77, + "PAGEDOWN": 78, + "RIGHT": 79, + "LEFT": 80, + "DOWN": 81, + "UP": 82, + "NUMLOCK": 83, + # kp-divide:"54", + # kp-multiply:"55", + # kp-minus:"56", + # kp-plus:"57", + # kp-return:"58", + # kp-1:"59", + # kp-2:"5a", + # kp-3:"5b", + # kp-4:"5c", + # kp-5:"5d", + # kp-6:"5e", + # kp-7:"5f", + # kp-8:"60", + # kp-9:"61", + # kp-0:"62", + # kp-period:"63", + "<": 100, + # application:"65", + # power:"66", + # kp-equal:"67", + "F13": 104, + "F14": 105, + "F15": 106, + "F16": 107, + "F17": 108, + "F18": 109, + "F19": 110, + "F20": 111, + "F21": 112, + "F22": 113, + "F23": 114, + "F24": 115, + # execute:116, + # help:117, + # menu:118, + # select:119, + # cancel:120, + # redo:121, + # undo:122, + # cut:123, + # copy:124, + # paste:125, + # find:126, + # mute:127, + # volume-up:128, + # volume-down:129, +} +c2map = { + "°": "SHIFT ^", + "′": "RALT ^", + "″": "SHIFT RALT ^", + "!": "SHIFT 1", + "¹": "RALT 1", + "¡": "SHIFT RALT 1", + '"': "SHIFT 2", + "²": "RALT 2", + "⅛": "SHIFT RALT 2", + "§": "SHIFT 3", + "³": "RALT 3", + "£": "SHIFT RALT 3", + "$": "SHIFT 4", + "¼": "RALT 4", + "¤": "SHIFT RALT 4", + "%": "SHIFT 5", + "½": "RALT 5", + "⅜": "SHIFT RALT 5", + "&": "SHIFT 6", + "¬": "RALT 6", + "⅝": "SHIFT RALT 6", + "/": "SHIFT 7", + "{": "RALT 7", + "⅞": "SHIFT RALT 7", + "(": "SHIFT 8", + "[": "RALT 8", + "™": "SHIFT RALT 9", + ")": "SHIFT 9", + "]": "RALT 9", + "±": "SHIFT RALT 9", + "=": "SHIFT 0", + "}": "RALT 0", + # "°": "SHIFT RALT 0", Duplicate + ">": "SHIFT <", + "|": "RALT <", + "?": "SHIFT ß", + "\\": "RALT ß", + "¿": "SHIFT RALT ß", + "`": "SHIFT ´", + "¸": "RALT ´", + "˛": "SHIFT RALT ´", + "*": "SHIFT +", + "~": "RALT +", + "¯": "SHIFT RALT +", + "'": "SHIFT #", + "’": "RALT #", + "˘": "SHIFT RALT #", + "_": "SHIFT -", + "–": "RALT -", + "—": "SHIFT RALT -", + ";": "SHIFT ,", + "·": "RALT ,", + "×": "SHIFT RALT ,", + ":": "SHIFT .", + "…": "RALT .", + "÷": "SHIFT RALT .", + ">": "SHIFT <", + "|": "RALT <", + "Ü": "SHIFT ü", + "¨": "RALT ü", + "Ö": "SHIFT ö", + "˝": "RALT ö", + "Ä": "SHIFT ä", + "^": "RALT ä", + "µ": "RALT m", + "@": "RALT q", + "€": "RALT e", +} +for i in range(65, 91): + c2map[chr(i)] = "SHIFT " + chr(i).lower() diff --git a/pd_key_maps/keymap_us.py b/pd_key_maps/keymap_us.py index 73d8125..52623e7 100644 --- a/pd_key_maps/keymap_us.py +++ b/pd_key_maps/keymap_us.py @@ -1,4 +1,4 @@ -#!/bin/python3 +#!/usr/bin/env python3 commap = { "LCTRL": 1, "LSHIFT": 2, diff --git a/piduck.py b/piduck.py index 3c2859f..519e88e 100755 --- a/piduck.py +++ b/piduck.py @@ -83,6 +83,14 @@ def pharse_p2(line, known, deltrue): elif command[0] in aliasmap: pharse_p2(aliasmap[command[0]] + " " + " ".join(command[1:]), known, True) return + elif command[0] == "CHAR": + if command[1].isdigit(): + known[1].append(int(command[1])) + if len(command) > 2: + pharse_p2(" ".join(command[2:]), known, True) + else: + out(known) + return else: eprint('Could not find "' + command[0] + '"') exit(2)