2014-06-26 22 views
4

我想保存格式良好的Clojure代碼。每次保存文件時,Eclipse都可以格式化代碼。在Light Table中有相同的內容會很好。手動,我可以通過選擇所有(CTRL +一個),然後運行(CTRL +空間Editor: Smart indent line(s)做到這一點。每次保存文件時是否有自動執行的方法?如何智能縮進文件自動保存在光表

回答

6

您可以覆蓋鍵綁定保存在Settings: User keymap,如:

{:+ {:editor {"ctrl-s" [:editor.select-all 
         :smart-indent-selection 
         :editor.selection.clear 
         :save]}}} 

但你會失去光標位置(將跳轉至文件末尾)。這可以使用Marks插件來處理。安裝插件並將命令:lt.plugins.marks/jump-to-large-move-mark添加到命令向量的最後位置。

+2

謝謝,@Aleš!最後,我決定使用單獨的鍵綁定進行重新縮進,因爲如果您不需要這個解決方案(並保存文件),則無法撤消格式化。在Eclipse中,當使用保存自動格式時,如果按下ctrl + s,則代碼將被格式化並保存。如果在此之後按ctrl + z,格式化將被撤消並且文件將被再次保存。另一種方法是先將':save'放在命令列表中:這會保存並格式化後,然後再次按ctrl + s保存格式化版本或ctrl + z撤銷格式化(文件將被保存)。 –

3

新的鍵映射風格在實際Lighttable(0.7.2)

按(CTRL +空間) - >輸入 「鍵盤映射」,選擇 「用戶鍵盤映射」

[:editor "ctrl-s" :editor.select-all :smart-indent-selection :editor.selection.clear :save] 

或帶標記插件

[:editor "ctrl-s" :editor.select-all :smart-indent-selection 
:editor.selection.clear :save :lt.plugins.marks/jump-to-large-move-mark]