由於工作原因,使用vim次數越來越多,因此將工作中使用頻率較高的方法以及快捷鍵記錄並和大家分享。
適合讀者:vim已經入門,希望學習更多技巧
1.hjkl來進行方向移動
2.i/a/o進行插入
3.d/y/等拷貝粘貼
4.:wq保存
以上四個常用命令熟悉的情況下VIM的NOMRAL模式和INSERT模式隨便切換下則可以達到VIm入門的效果了
按照使用功能分別進行記錄,後續持續更新
一、插入
o:當前行下行插入 O:當前行上面一行插入 i:當前光標前 I:行首插入 A:行尾 a:光標後
cw:刪除當前字符,並進入插入模式
二、替換
r:替換一個字符
R:連續替換多個字符
cw:即刪除光標位置到字符結尾的字符並切換到插入模式,同理c2w即兩個單詞
單詞變大寫和小寫
gU:變大寫
gu:變小寫
~:可視下替換一個字符的大小寫
三、跳轉
ngg或者nG
n表示所在的行
0:行頭
^:本行第一個不是blank的字符位置(blank:空格、tab、回車等)
$:行尾
(用的少)g_:行尾不是blank的字符位置
• * 和 #: 匹配光標當前所在的單詞,移動光標到下一個(或上一個)匹配單詞(*是下一個,#是上一個)
Ctrl-U調到文本首行
f+m跳轉到本行中第一次出現m的位置(f爲跳轉命令)
在當前行上移動光標: 0 ^ $ f F t T , ;
0:移動到行首
^:移動到本行第一個非blank字符
f+字符:向前跳轉到對應字符,例如fa:即跳轉到下一個a的位置
F+字符:向後跳轉到對應字符
t類似於f,變爲字符的之前一個字符
T類似於F:變爲字符之前的一個字符
3fa → 在當前行查找第三個出現的a
組合:dt+字符,刪除遇到此字符之前的字符
margin-bottom:
如果光標在“-”這,此時輸入dtm則變成
margin-m:
四、複製粘貼
y:複製 p:粘貼(小寫p:行的下一行;P:當前行之前的行) yw則可以複製一個單詞 同理,可以複製多個單詞 高亮顯示:hls==hlsearch high light search 部分匹配:is==incsearch 不區分大小寫:set ic
五、撤銷和 恢復
u:撤銷
c-r:重做
六、重複上述動作
1. "."重複上個動作
N<command> 例如:2dd刪除兩行,3p粘貼3次文本等,100ihi [ESC](則能完成輸入100次的hi),3u(向前恢復三步)
七、區域選擇
區域選擇 <action>a<object> 或 <action>i<object> 一般用的比較多的即vi[對象] v+i+“"”即選中分號裏面內容 action:y、d、v或者其他任意命令 object:w、W、s(一個句子)、p(一個段落),也可以是一個特別的字符 :"、 '、 )、 }、 ]。 塊操作:c-v 典型的操作: 0 <C-v> <C-d> I-- [ESC] 當前行到最後一行行首添加“--”字符,例如 XeLaText XeLaText XeLaText --XeLaText --XeLaText --XeLaText 常用註釋使用
八、保存文件並退出
1.保存
:wq
:x
ZZ
(ZZ不需要冒號)