本文章原創首發於公衆號:編程三分鐘編程
上一次咱們掌握了移動、跳轉、定位、操做(刪除、複製、粘貼),基本使用vim脫離鼠標徹底是能夠作到的了。速記以下:vim
移動: h,l,j,k,w,b
bash
跳轉:G
nG
f/F+字母
編輯器
定位:G
表明盡頭, $
表明行尾,^
表明行首,w
表明下一個單詞,b
上一個單詞,e
當前單詞末尾學習
操做:y
d
p
命令行
查找和替換是編輯器中最經常使用的功能之一,在普通編輯器當中查找替換時,你可能須要先移動鼠標在菜單中點擊查找的功能,輸入查找內容,再點擊確認查找。而在vim中,全部的操做只須要敲擊幾下鍵盤就好了,手不用離開鍵盤區域,速度天然會快不少不少。3d
替換和Undo命令都是針對普通模式下的操做,此次用到三個字母,r/R
,c/C
,u/U
code
r+<待替換字母>
將遊標所在的一個字母替換爲其餘字母(以下#替換成i) blog
固然了,一個一個替換甚是麻煩,不妨使用R連續替換文檔
R
連續替換,直到按下Esc
cw
刪除一個單詞,並進入插入模式
C
刪除從遊標處開始到當前行尾,並進入插入模式
u
撤銷一次操做(以下,粘貼了Internet單詞三次,按u三次,撤銷粘貼操做)
U
(大寫) 不管當前行修改了多少次,撤銷當前行的全部修改
Ctrl+r
redo,即撤銷undo的操做(以下,刪除一個單詞,寫入123,以後交替u和Ctrl+r,能夠觀察到重複撤銷123輸入,再恢復123輸入)
快速縮進在編輯代碼時極其有用,快速調整代碼縮進很是的爽,縮進操做均在普通模式下有效
>>
整行將向右縮進
<<
整行向左回退
命令行模式下對shiftwidth
值進行設置能夠控制縮進和回退的字符數 (能夠簡寫成sw
,下面我都用簡寫)
獲取目前的設定值
:set shiftwidth?
設置縮進爲n個字符
:set shiftwidth=n
輸入 ESC 回到普通模式,再次嘗試 >> 看縮進量是否變化
命令行模式下輸入:le
(left)命令使本行內容靠左
:le
命令行模式下輸入:ce
(center)命令使本行內容居中
:ce
命令行模式下輸入:ri
(right)命令使本行文本靠右
:ri
普通模式下輸入 /
而後鍵入須要查找的字符串 按回車後就會進行查找。 輸入n
和 N
能夠繼續查找。 n
是查找下一個內容,N
查找上一個內容。
?
與/
功能相同,只不過?
是向上而 /
是向下查找。 :noh
退出查找模式
普通模式下輸入\*
尋找遊標所在處的單詞 普通模式下輸入\#
同上,但 \#
是向前(上)找,\*
則是向後(下)找
以上查找n
,N
的繼續查找命令依然能夠用
這一節學習了替換,撤銷操做及快速查找,其中替換和文檔內快速查找的功能十分實用,但願可以熟練掌握。
速記以下:
替換:r+<待替換字母>
,R
刪除並插入:cw
、C
撤銷:u
、U
、ctrl+r
調整文本位置::le
、:ce
、:ri
查找:\文本
、?文本
、n
、N