2013-04-14 37 views
3

我想讓VIM成爲我的ruby/rails編輯器。所以,胖我真的與它的功能 留下深刻的印象,我能夠安裝以下插件給我一個更好的IDE體驗VIM格式化/對齊

  • 自動對
  • 好snipmate-片段
  • nerdcommenter
  • nerdtree
  • 片狀
  • VIM-末端朝前
  • VIM-nerdtree袢
  • VIM護欄
  • VIM環繞

不過我還在尋找一種方式來格式化/對準我的代碼困難。作爲一個例子,我有時可能會複製和粘貼來自其他地方的代碼,然後整個代碼就會分散。

例:items.css.scss

.throw { 
    float:left; width: 100%; 
        margin-bottom: 2px; 
         border: solid gray 1px; 
           border-radius: 10px; 
              .cell { 
                  float: left; 
                      padding-left: 6px; 
                          padding-right: 6px; 
                             } 
                              } 

我想這是

.throw { 
    float:left; width: 100%; 
    margin-bottom: 2px; 
    border: solid gray 1px; 
    border-radius: 10px; 
    .cell { 
     float: left; 
     padding-left: 6px; 
     padding-right: 6px; 
                           } 
                          } 

什麼是最好的插件/法在VIM對齊/格式代碼

回答

4

嘗試在粘貼之前粘貼]p或發佈:set paste,然後在粘貼代碼時將:set nopaste粘貼到粘貼模式。您也可以將其映射到您選擇的某個關鍵組合,這樣您就不必每次都鍵入它。你可以從vim的幫助中獲得更多關於這兩種方法的信息(:h ]p:h paste)。

+0

感謝您的回答,這就是我一直在尋找:d – sameera207

5

有兩件事情,應該可以幫助您:

  • ==命令,重新縮進當前選擇(例如嘗試V選擇線條在視覺上任何東西 - 一個有用的組合是{V}=將縮進當前「段落')

  • :set paste命令。在將代碼粘貼到文件之前將其打開(並在完成時使用:set nopaste重新將其關閉)。

+0

感謝您的回答,對不起我不得不選擇'guessimtoolate'答案,因爲它早幾秒鐘:D – sameera207