#!/usr/bin/env python2
# -*- coding: utf-8 -*-
import argparse
import os
import time
def keyname(key):
if key==" ":
return "space"
if key=="\t":
return "Tab"
if key=="\n":
return "Return"
if key=="`":
return "grave"
if key=="~":
return "asciitilde"
if key=="@":
return "at"
if key=="#":
return "numbersign"
if key=="$":
return "dollar"
if key=="%":
return "percent"
if key=="^":
return "asciicircum"
if key=="&":
return "ampersand"
if key=="*":
return "asterisk"
if key=="(":
return "Shift_L+9"
if key==")":
return "Shift_L+0"
if key=="-":
return "minus"
if key=="_":
return "underscore"
if key=="=":
return "equal"
if key=="+":
return "plus"
if key=="[":
return "bracketleft"
if key=="]":
return "bracketright"
if key=="{":
return "braceleft"
if key=="}":
return "braceright"
if key=="!":
return "exclam"
if key=="/":
return "slash"
if key==":":
return "colon"
if key==";":
return "semicolon"
if key==".":
return "period"
if key==",":
return "comma"
if key=='"':
return "quotedbl"
if key=="'":
return "apostrophe"
if key=="<":
return "less"
if key==">":
return "greater"
if key=="?":
return "question"
if key=="\\":
return "backslash"
if key=="|":
return "bar"
return key
def main():
parser = argparse.ArgumentParser(description='Type file into the window.')
parser.add_argument('-d', type=int, default=2, metavar="delay", help='delay')
parser.add_argument('-i', type=float, default=0, metavar="interval", help='interval between keystrokes')
parser.add_argument('filename')
args = parser.parse_args()
f = open(args.filename, 'r')
data = f.read()
f.close()
time.sleep(args.d)
for i in xrange(len(data)):
c = data[i]
k = keyname(c)
os.system("xdotool key "+k)
time.sleep(args.i)
if __name__=="__main__":
main()