This week only. Pastebin PRO Accounts Christmas Special! Don't miss out!Want more features on Pastebin? Sign Up, it's FREE!
Guest

Untitled

By: a guest on Apr 12th, 2012  |  syntax: Python  |  size: 2.27 KB  |  views: 240  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. #!/usr/bin/env python2
  2. # -*- coding: utf-8 -*-
  3.  
  4. import argparse
  5. import os
  6. import time
  7.  
  8. def keyname(key):
  9.     if key==" ":
  10.         return "space"
  11.     if key=="\t":
  12.         return "Tab"
  13.     if key=="\n":
  14.         return "Return"
  15.     if key=="`":
  16.         return "grave"
  17.     if key=="~":
  18.         return "asciitilde"
  19.     if key=="@":
  20.         return "at"
  21.     if key=="#":
  22.         return "numbersign"
  23.     if key=="$":
  24.         return "dollar"
  25.     if key=="%":
  26.         return "percent"
  27.     if key=="^":
  28.         return "asciicircum"
  29.     if key=="&":
  30.         return "ampersand"
  31.     if key=="*":
  32.         return "asterisk"
  33.     if key=="(":
  34.         return "Shift_L+9"
  35.     if key==")":
  36.         return "Shift_L+0"
  37.     if key=="-":
  38.         return "minus"
  39.     if key=="_":
  40.         return "underscore"
  41.     if key=="=":
  42.         return "equal"
  43.     if key=="+":
  44.         return "plus"
  45.     if key=="[":
  46.         return "bracketleft"
  47.     if key=="]":
  48.         return "bracketright"
  49.     if key=="{":
  50.         return "braceleft"
  51.     if key=="}":
  52.         return "braceright"
  53.     if key=="!":
  54.         return "exclam"
  55.     if key=="/":
  56.         return "slash"
  57.     if key==":":
  58.         return "colon"
  59.     if key==";":
  60.         return "semicolon"
  61.     if key==".":
  62.         return "period"
  63.     if key==",":
  64.         return "comma"
  65.     if key=='"':
  66.         return "quotedbl"
  67.     if key=="'":
  68.         return "apostrophe"
  69.     if key=="<":
  70.         return "less"
  71.     if key==">":
  72.         return "greater"
  73.     if key=="?":
  74.         return "question"
  75.     if key=="\\":
  76.         return "backslash"
  77.     if key=="|":
  78.         return "bar"
  79.     return key
  80.  
  81. def main():
  82.     parser = argparse.ArgumentParser(description='Type file into the window.')
  83.  
  84.     parser.add_argument('-d', type=int, default=2, metavar="delay", help='delay')
  85.     parser.add_argument('-i', type=float, default=0, metavar="interval", help='interval between keystrokes')
  86.     parser.add_argument('filename')
  87.  
  88.     args = parser.parse_args()
  89.  
  90.     f = open(args.filename, 'r')
  91.     data = f.read()
  92.     f.close()
  93.  
  94.     time.sleep(args.d)
  95.    
  96.     for i in xrange(len(data)):
  97.         c = data[i]
  98.         k = keyname(c)
  99.         os.system("xdotool key "+k)
  100.         time.sleep(args.i)
  101.  
  102. if __name__=="__main__":
  103.     main()
clone this paste RAW Paste Data