pygtkでファイルをクリップボードにコピー
微妙にこのまえの逆.
#!/usr/bin/python # -*- coding: utf8 -*- # vim: ff=unix fenc=utf-8 ts=4 sts=4 sw=4 ft=python autoindent import sys import gtk import gobject f = open(sys.argv[1], 'r') val = f.read() f.close() def copy_text(): cb = gtk.clipboard_get(gtk.gdk.SELECTION_CLIPBOARD) cb.set_text(val) gobject.source_remove(source_id) # 不要? gtk.main_quit() source_id = gobject.timeout_add(0, copy_text) gtk.main()
こういうときはtimeoutを使うしかないのかな?
でもこのsource_idまわりがなんかキモチワルイ.
こっちはstdinから読む.でも,sys.stdin.read()ってどうなんだろう.
#!/usr/bin/python # -*- coding: utf8 -*- # vim: ff=unix fenc=utf-8 ts=4 sts=4 sw=4 ft=python autoindent import sys import gtk import gobject def copy_text(): cb = gtk.clipboard_get(gtk.gdk.SELECTION_CLIPBOARD) val = sys.stdin.read() cb.set_text(val) gobject.source_remove(source_id) # 要るの? gtk.main_quit() source_id = gobject.timeout_add(0, copy_text) gtk.main()