2015-09-28 24 views
1

在窗口關閉之前,Sublime Text中是否有檢測到添加自定義命令的方法?在關閉窗口之前崇高文本

我運行該快捷方式自定義命令:

[ 
{ "keys": ["ctrl+shift+w"], "command": "custom_command"}, 
{ "keys": ["alt+f4"], "command": "custom_command"} 
] 

但也有其他辦法接近崇高文字和有意義的一個前關閉窗口事件應涵蓋所有。

回答

1

有一個事件處理函數在視圖關閉之前被調用。我認爲你需要的功能的名稱是

on_pre_close(view) 

所有事件處理函數都列在Sublime Text 3 API中。當窗口關閉時,我沒有找到它,但我認爲當窗口關閉時,它應該先關閉每個視圖,所以使用上述函數應該可以解決您的問題。這裏是API的Event Listeners部分的鏈接。它應該幫助你。

https://www.sublimetext.com/docs/3/api_reference.html#sublime_plugin.EventListener

櫃面你是新來構建插件, 注意,使用事件監聽器功能,您將需要具備一個有一類這樣的

class your_class_name(sublime_plugin.EventListener): 
    def on_pre_close(self,view): 
     #Your code here 
+0

其實我試圖更新這個插件:https://github.com/tuvistavie /SublimeHotProjectExit/blob/master/hot_project_exit.py我確實是新手。所以現在我必須用運行命令hot_project_exit來替換#你的代碼。我是怎麼做到的?我懷疑它並不重要,因爲在插件中它看起來像使用單詞視圖。所以當on_pre_close(view)會運行命令會遲到。我可能完全是因爲我實際上並不知道有關構建Sublime Text插件的任何信息。 – Alqin

+0

從我可以看到,該插件基本上檢查是否有任何未保存的緩衝區更改,然後保存這些更改並關閉。 您可能在這裏遇到的一個小問題是該插件正在實現一個Window Command;不知道這是否會成爲問題。您可以嘗試的第一件事是粘貼run函數中的代碼,並用該代碼替換#YourCodeHere。 –

相關問題