📄 apprun
字号:
#!/usr/bin/env pythonimport os, sysimport findrox; findrox.version(1, 9, 6)import roxfrom rox import g, processes, savingfrom cStringIO import StringIOdef try_interface(uri): errors = StringIO() launcher = processes.PipeThroughCommand( ["0launch", "-d", "--", uri], None, errors) try: launcher.wait() except processes.ChildError, ex: if '(256)' not in str(ex): rox.alert(str(ex)) except: rox.report_exception() else: return True return Falseif len(sys.argv) == 1: # By default, create a launcher for ourselves uri = 'http://rox.sourceforge.net/2005/interfaces/AddApp' if not try_interface(uri): sys.exit(1)elif sys.argv[1] == '--prompt': from chooser import Chooser m = Chooser() while True: m.show() resp = m.run() if resp != g.RESPONSE_OK: sys.exit(1) m.hide() uri = m.uri.get_text() if try_interface(uri): break m.destroy()elif sys.argv[1] == '--run-in-terminal': import terminal terminal.run_in_terminal(sys.argv[2:]) sys.exit(1)elif len(sys.argv) == 2: uri = sys.argv[1] if not try_interface(uri): sys.exit(1)elif len(sys.argv) == 3 and sys.argv[1] == '--show-help': import help help.show_help(sys.argv[2]) sys.exit(0)else: rox.alert("Multiple arguments to AddApp (%s)!" % `sys.argv[1:]`) sys.exit(1)from launcher import AppLauncher, NoMaintry: launcher = AppLauncher(uri) default_name = os.path.basename(uri) if default_name.endswith('.xml'): default_name = default_name[:-4] box = saving.SaveBox(launcher, default_name, 'inode/directory') box.show() g.gdk.flush() launcher.get_icon() if launcher.icon: image = g.Image() try: # Icon format must be PNG (to avoid attacks) loader = g.gdk.PixbufLoader('png') try: loader.write(file(launcher.icon).read()) finally: loader.close() icon_pixbuf = loader.get_pixbuf() except Exception, ex: print >>sys.stderr, "Failed to load cached PNG icon: %s" % ex else: image.set_from_pixbuf(icon_pixbuf) box.set_type('inode/directory', image) rox.mainloop() launcher.delete_icon()except NoMain, ex: rox.alert(str(ex))except: rox.report_exception()
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -