1. 程式人生 > >【工具巧用】用vim ab/iab定製化個人輸入習慣,簡化命令,快速輸入

【工具巧用】用vim ab/iab定製化個人輸入習慣,簡化命令,快速輸入

先插曲一下:

       這是我惦記時間最長思念次數最多的一個技術點了,能讓我佩服的事很少,這個夠讓我佩服一下。

       2010年,聽一個講座,知道了vi/vim可以配置自動輸入一些常用,當時的例子是輸入nm替換為using namespace std;

       然後自己配置了一下,一直用到2011年畢業,切到公司新配置的環境,配置一直也沒同步過去,後來裝windows系統覆蓋了(非虛擬機器,主機就是linux)

       自此之後,每每輸入一些常用重複的程式碼,都會想起配置一下但又忘了怎麼配置了,想研究又太忙了,思考的時間都寫完了,不忙時又顧不上這茬

       於是,在反覆思念之中,近7年過去了,7年,所以佩服自己,平均一個月也能想一次吧,該七年之癢了

       2017年,最近研究點新技術,寫測試程式頻率偏高,一遍一遍的寫標頭檔案和main函式,於是終於控制自己停下來,配置一上,但是,發現這個挺小眾,太難以搜尋到自己想要的東西了,地毯式的搜尋了一下別人的vim配置, 終於搞定了,分享出來

正文

       ab 有點像linux 的alias,指定命令的縮小/代名詞

       語法: ab 縮小  命令

       這裡的命令是任意輸入,連續沒問題

       例如:

              ab sn set nonu
              ab sp set paste

       在vim裡,冒號輸入sn就等價於set nonu,去除行號。sp等價於set paste,進入貼上模式

       iab和ab相近,只是iab作用於編輯模式,從而實現替換

      例如:

             iab  nm using namespace std;

             iab main( #include<iostream><cr>using namespace std;<cr><cr>int main(int argc, char* argv[], char* env[])<cr>{<cr>return 0;<cr>}

            在輸入完nm之後,回車,就將nm替換為了using namespace std;。輸入main(回車,就構建了一個空的main檔案

      <cr>表示換行

      這個用起來非常節省時間,時間一點一點攢起來,就多了。初期不太適應,會在不想替換時替換,2個辦法:

      1、命名時避免名稱容易出現在行尾

      2、記住自己的命名,輸入之後,ctrl+V可以放棄替換