其實sublime自身就有格式化命令,就不再安裝插件,位置在[Preferences]->[Key Bindings]->[User]中, 中文版的位置在 [首選項]->[按鍵綁定-用戶],彈出的頁面中
,添加如下代碼,為其設置快捷鍵:Ctrl+Shift+r
{ "keys": ["ctrl+shift+r"], "command": "reindent", "args": { "single_line": false } }
sublime是一款非常輕便,插件豐富,功能強大的編輯器。也正因為其通用性,所以很多功能需要安裝插件,通過插件來實現。
比如懸賞的代碼格式化功能,其實問題相當地不准確,因為不同語言的格式化功能是根據不同的插件來實現的。接下來,筆者就來講講sublime格式化代碼的處理方法。
首先聲明,筆者當前所用的sublime是最新的sublime text 3正式版,所以外觀上可能之前的版本稍有不同,但是sublime各版本功能基本一致,不影響使用。
方法/步驟
-
第一部分,我們來講sublime自帶的、基本的代碼格式化功能——“reindent”。
個人先建立了一個HTML頁面作為示例。多個元素的排列和縮進都被打亂。
-
為了使其排列整齊,我們對文本進行全選(當然,如果只想重新排列部分代碼也可以選擇部分),然后選擇sublime菜單欄的“edit”-“line”-“reindent”選項。reindent即重新縮進,顧名思義,即對當前的文本進行重新縮進處理。也可以看到,在其上方還有indent 和 unindent兩個選項,分別代表增加縮進和減少縮進功能,並在后方寫有其快捷鍵,各位網友可以自行嘗試。
-
在“reindent”后,可以看到,全部的代碼縮進都正常了。但是,sublime自帶的重新縮進功能較為單一,就像其名稱一樣,僅僅是保證縮進正常了而已。而對於代碼中寫法不規范的地方,無法進行處理,這不符合我們編碼的需求。接下來我們結合sublime插件,來講解更完善的格式化代碼功能。
-
第二部分,筆者將結合sublime插件來進行代碼的格式化處理。由於不同的代碼有不同的格式化要求,本部分僅使用sql format來進行演示,其它語言的格式化大家可以自行查找插件安裝。首先,筆者在網上找了一段SQL代碼,並特地打亂了其排布。
-
然后,使用快捷鍵Ctrl+Shift+P或者點擊sublime菜單欄的“Preferences”-“package control”, 打開命令面板。如果各位網友沒能打開,說明尚未安裝package control,可以看下方的注意事項。
-
選擇命令面板中的Install package,在新彈出的搜索欄中輸入“format”可以看到有大量的格式化插件可供選擇。當然,並不是所有的格式化插件都要有format字樣。重新搜索,筆者選擇了名為“SQL Beautifier”的SQL格式化插件。
-
安裝完成之后,該插件在Windows下提供了Ctrl+K 、Ctrl+F的格式化快捷鍵,從而提供格式化操作。注意,是先按Ctrl + K,再按下Ctrl + F,否則的話,單獨使用Ctrl+F是默認查找的快捷鍵。該格式化插件的GitHub主頁:https://github.com/zsong/SqlBeautifier 。格式化效果如下圖:
-
總結,sublime本身只提供基本的縮進重置功能,不同語言的格式化可以使用不同的插件來實現。開源社區的生命力是無與倫比的,各種層出不窮的插件為我們的開發工作提供了諸多便利。
END
注意事項
-
不同版本(sublime text2/3)的插件偶爾會不兼容,需要注意。
-
部分插件的運行偶爾需要先決程序,比如需要電腦上安裝了Python,Ruby, Nodejs等,大家在使用過程中多看文檔。
-
這里附上package control 的安裝經驗 http://jingyan.baidu.com/article/c14654134b8bde0bfcfc4c9a.html