219 lines
6.8 KiB
Python
Executable File
219 lines
6.8 KiB
Python
Executable File
#!/usr/bin/env python3
|
||
import argparse
|
||
|
||
# TODO: add rest + check if all are there
|
||
# dict of codes
|
||
# ingored:
|
||
#- unnecessary?: 128-255 and 0202-0255
|
||
#- duplicates: 0160, 0173, 0130
|
||
code_table = {
|
||
'☺' : '1',
|
||
'☻' : '2',
|
||
'♥' : '3',
|
||
'♦' : '4',
|
||
'♣' : '5',
|
||
'♠' : '6',
|
||
'•' : '7' ,
|
||
'◘' : '8' ,
|
||
'○' : '9' ,
|
||
'◙' : '10',
|
||
'♂' : '11',
|
||
'♀' : '12',
|
||
'♪' : '13',
|
||
'♫' : '14',
|
||
'☼' : '15',
|
||
'►' : '16',
|
||
'◄' : '17',
|
||
'↕' : '18',
|
||
'‼' : '19',
|
||
'¶' : '20',
|
||
'§' : '21',
|
||
'▬' : '22',
|
||
'↨' : '23',
|
||
'↑' : '24',
|
||
'↓' : '25',
|
||
'→' : '26',
|
||
'←' : '27',
|
||
'∟' : '28',
|
||
'↔' : '29',
|
||
'▲' : '30',
|
||
'▼' : '31',
|
||
' ' : '32',
|
||
'!' : '33',
|
||
'"' : '34',
|
||
'#' : '35',
|
||
'$' : '36',
|
||
'%' : '37',
|
||
'&' : '38',
|
||
'\'' : '39',
|
||
'(' : '40',
|
||
')' : '41',
|
||
'*' : '42',
|
||
'+' : '43',
|
||
',' : '44',
|
||
'-' : '45',
|
||
'.' : '46',
|
||
'/' : '47',
|
||
'0' : '48',
|
||
'1' : '49',
|
||
'2' : '50',
|
||
'3' : '51',
|
||
'4' : '52',
|
||
'5' : '53',
|
||
'6' : '54',
|
||
'7' : '55',
|
||
'8' : '56',
|
||
'9' : '57',
|
||
':' : '58',
|
||
';' : '59',
|
||
'<' : '60',
|
||
'=' : '61',
|
||
'>' : '62',
|
||
'?' : '63',
|
||
'@' : '64',
|
||
'A' : '65',
|
||
'B' : '66',
|
||
'C' : '67',
|
||
'D' : '68',
|
||
'E' : '69',
|
||
'F' : '70',
|
||
'G' : '71',
|
||
'H' : '72',
|
||
'I' : '73',
|
||
'J' : '74',
|
||
'K' : '75',
|
||
'L' : '76',
|
||
'M' : '77',
|
||
'N' : '78',
|
||
'O' : '79',
|
||
'P' : '80',
|
||
'Q' : '81',
|
||
'R' : '82',
|
||
'S' : '83',
|
||
'T' : '84',
|
||
'U' : '85',
|
||
'V' : '86',
|
||
'W' : '87',
|
||
'X' : '88',
|
||
'Y' : '89',
|
||
'Z' : '90',
|
||
'[' : '91',
|
||
'\\': '92',
|
||
']' : '93',
|
||
'^' : '94',
|
||
'_' : '95',
|
||
'`' : '96',
|
||
'a' : '97',
|
||
'b' : '98',
|
||
'c' : '99',
|
||
'd' : '100',
|
||
'e' : '101',
|
||
'f' : '102',
|
||
'g' : '103',
|
||
'h' : '104',
|
||
'i' : '105',
|
||
'j' : '106',
|
||
'k' : '107',
|
||
'l' : '108',
|
||
'm' : '109',
|
||
'n' : '110',
|
||
'o' : '111',
|
||
'p' : '112',
|
||
'q' : '113',
|
||
'r' : '114',
|
||
's' : '115',
|
||
't' : '116',
|
||
'u' : '117',
|
||
'v' : '118',
|
||
'w' : '119',
|
||
'x' : '120',
|
||
'y' : '121',
|
||
'z' : '122',
|
||
'{' : '123',
|
||
'|' : '124',
|
||
'}' : '125',
|
||
'~' : '126',
|
||
'Δ' : '127',
|
||
'€' : '0128',
|
||
'ƒ' : '0131',
|
||
'„' : '0132',
|
||
'…' : '0133',
|
||
'†' : '0134',
|
||
'‡' : '0135',
|
||
'ˆ' : '0136',
|
||
'‰' : '0137',
|
||
'Š' : '0138',
|
||
'‹' : '0139',
|
||
'Œ' : '0140',
|
||
'Ž' : '0142',
|
||
'‘' : '0145',
|
||
'’' : '0146',
|
||
'“' : '0147',
|
||
'”' : '0148',
|
||
'•' : '0149',
|
||
'–' : '0150',
|
||
'—' : '0151',
|
||
'˜' : '0152',
|
||
'™' : '0153',
|
||
'š' : '0154',
|
||
'›' : '0155',
|
||
'œ' : '0156',
|
||
'ž' : '0158',
|
||
'Ÿ' : '0159',
|
||
'¡' : '0161',
|
||
'¢' : '0162',
|
||
'£' : '0163',
|
||
'¤' : '0164',
|
||
'¥' : '0165',
|
||
'¦' : '0166',
|
||
'§' : '0167',
|
||
'¨' : '0168',
|
||
'©' : '0169',
|
||
'ª' : '0170',
|
||
'«' : '0171',
|
||
'¬' : '0172',
|
||
'®' : '0174',
|
||
'¯' : '0175',
|
||
'°' : '0176',
|
||
'±' : '0177',
|
||
'²' : '0178',
|
||
'³' : '0179',
|
||
'´' : '0180',
|
||
'µ' : '0181',
|
||
'¶' : '0182',
|
||
'·' : '0183',
|
||
'¸' : '0184',
|
||
'¹' : '0185',
|
||
'º' : '0186',
|
||
'»' : '0187',
|
||
'¼' : '0188',
|
||
'½' : '0189',
|
||
'¾' : '0190',
|
||
'¿' : '0191',
|
||
'À' : '0192',
|
||
'Á' : '0193',
|
||
'Â' : '0194',
|
||
'Ã' : '0195',
|
||
'Ä' : '0196',
|
||
'Å' : '0197',
|
||
'Æ' : '0198',
|
||
'Ç' : '0199',
|
||
'È' : '0200',
|
||
'É' : '0201',
|
||
'Ê' : '0202',
|
||
}
|
||
|
||
parser = argparse.ArgumentParser(prog='altcon', description='Convert a string to a sequence of altcodes')
|
||
parser.add_argument("string", help="convert the string to alt codes and return codes as list")
|
||
parser.add_argument("-d", "--ducky", help="export alt codes to Ducky Script 2.0 compatible commands", action="store_true")
|
||
args = parser.parse_args()
|
||
|
||
print("Input:", args.string)
|
||
codes = [code_table[char] for char in args.string]
|
||
print("Alt codes:", codes)
|
||
|
||
if args.ducky:
|
||
print("\n** Copy from here for Ducky Script **")
|
||
for code in codes:
|
||
print("QUACK ALTCODE", code)
|