加載GTK程序你好,我想寫一個Python程序,以節省窗口焦點的損失Emacs的文件。如何Pymacs
對於我寫的,創建一個完整的GTK應用程序,並使用wnck模塊一個Python PROGRAMM:
from Pymacs import lisp
import wnck
import gtk
class AutoSaver(object):
"""This class watches if Emacs looses focus and if Emacs looses
focus saves all buffers with files
"""
def __init__(self):
"""
"""
self.screen = wnck.screen_get_default()
self.screen.force_update()
self.screen.connect("active_window_changed", self.watch_for_emacs)
def watch_for_emacs(self, screen, data=None):
screen.force_update()
win_list = screen.get_windows()
for win in win_list:
if win.get_application().get_name().startswith("emacs"):
self.save_all_buffers()
def save_all_buffers(self):
lisp.save_some_buffers(True, None)
def main(self):
"""
Starts GTK's main loop.
"""
gtk.main()
def start():
autosaver = AutoSaver()
autosaver.main()
start.interaction = ''
不幸的是Python的PROGRAMM凍結Emacs的;可能是因爲Emacs等待程序完成。有沒有辦法讓程序在後臺運行?
任何幫助非常感激。
非常感謝,我會嘗試您的建議。 – Rockiger 2012-08-12 09:39:24