#!/usr/bin/python
import popen2, os

def isprint(c):
    return ord(c) > 31

def get_key(c):
    if c == "\n":
        return "Return"
    if c == "\t":
        return "Tab"
    return False

def main():
    o, i = popen2.popen2("xclip -selection clipboard -o")
    output = o.read()
    i.close()
    o.close()
    #print(repr(output))
    argv = ["xte"]
    str = ""
    for c in output:
        if isprint(c):
            str += c
        else:
            key = get_key(c)
            if key:
                if str != "":
                    argv += ["str %s" % str]
                argv += ["key %s" % key]
                str = ""
            else:
                str += "0x%02x" % ord(c)
    if str != "":
        argv += ["str %s" % str]
    print(("\" \"").join(argv))
    os.execv("/usr/bin/xte", argv)

main()
