2012-02-22 76 views
5

我發現ECB模式有時因其強大的Speedbar和漂亮的代碼瀏覽功能而相當有用。不幸的是,我也非常依賴贏家模式,這與歐洲央行不相容。即使在我做了M-x ecb-deactivate之後,所有ECB defuns都顯示爲加載狀態,並且優勝者命令仍會拋出關於ECB /贏者不兼容的錯誤。有沒有辦法刪除歐洲央行的定義,以便贏家可以像以前一樣工作,在重新啓動Emacs之後不久?如何卸載一個模式(例如卸載ECB以恢復winner.el功能)

+0

什麼是錯誤信息?你正在使用哪個版本的ECB? – 2012-02-22 13:32:15

+0

這是在Emacs 24.0.93上運行的ECB 2.40 錯誤是'let:ECB 2.40 - 錯誤:無法在ecb-frame中使用贏家模式功能.'我應該指出它是/在/ docs贏家模式不能用於歐洲央行。不過,如果我關閉歐洲央行,我預計贏家模式功能會得到恢復。 – 2012-02-22 15:06:24

回答

8

問題似乎是,ECB使用建議來顯示錯誤消息(「不能在ecb-frame中使用贏家模式功能」),並且在調用ecb-deactivate時,此建議未激活。

我能夠通過禁用建議在ecb-deactivate-hook來解決此問題:

 
(add-hook 'ecb-deactivate-hook 
     (lambda() 
     (ecb-disable-advices 'ecb-winman-not-supported-function-advices t))) 

然而,你或許應該報告爲歐洲央行的維護者的錯誤。