天天看點

Sublime 插件自定義學習

用了sublime很長時間了,感覺這個ide确實不錯,簡約而不簡單

記的之前用webstorm的時候,每當建立html頁的時候,系統總會自動的填充一些骨架代碼,但是用sublime的時候,建立html檔案的時候,系統不會自動填充,是以 我想用sublime插件機制,自動填充骨架代碼.

sublime提供了靈活的插件擴充機制,下面提供一個完整的自動填充html骨架代碼的小插件,純當練手:)

點選<code>tools</code>菜單下的<code>new plugin..</code>,系統會自動生成一個插件的基本模闆,代碼如下

系統預設的插件名字為<code>example</code>,因為是插入文本,是以插件繼承的是<code>sublime_plugin.textcommand</code>文本指令

<code>self.view.insert</code>是插入方法,有三個參數,第一個代碼目前可用狀态的輸入框,第三個參數是插入的内容,此處應該換成我們要插入的html骨架代碼,我們把指令換成<code>autohtmlcommand</code>,代碼如下

另存為autohtml.py,儲存在<code>packages</code>中建立一個以插件命名的檔案夾裡,這裡以autohtml命名,完成之後,可以在sublime指令行中輸入以下指令

你會發現html骨架代碼會出現在目前編輯視窗内,下面我們來為這個插件設定一個快捷鍵.

通常sublime插件的快捷鍵需要三個檔案

default (linux).sublime-keymap

default (osx).sublime-keymap

default (windows).sublime-keymap

一般來說,<code>linux</code>與<code>windows</code>的檔案相同,現在我們向<code>windows</code>的<code>default (windows).sublime-keymap</code>檔案中插入以下代碼

一般sublime的配置檔案格式都是json,注意那個快捷鍵,要保證沒有被系統暫用,你需要在系統快捷鍵設定裡檢視一下,點選<code>preferences &gt; key bindings – default</code>這裡會顯示所有的已經設定的快捷鍵.

設定完之後,我們随便打開個檔案,按下<code>ctrl+alt+x</code>,好玩的東西出現了:),當然,除了可以設定快捷鍵,我們還可以把指令加到系統菜單中.

首先,系統菜單配置檔案在<code>packages\default</code>的<code>main.sublime-menu</code>檔案中,找到編輯菜單的配置檔案,加下如下配置代碼

最後,你會發現在<code>edit</code>菜單裡面有一個<code>autohtml</code>項,點選之後,目前視窗就會出現html骨架代碼,是不是很有成就感:)

繼續閱讀