Vim 是 Linux 系統上的最著名的文本/代碼編輯器,也是早年的 Vi 編輯器的增強版,而 gVim 則是其 Windows 版。它的最大特點是徹底使用鍵盤命令進行編輯,脫離了鼠標操做雖然使得入門變得困難,但上手以後鍵盤流的各類巧妙組合操做卻能帶來極爲大幅的效率提高。如今咱們來總結一下Vim 的用法。linux
1.功能說明:加強型vi編輯器vim
2.語法格式編輯器
vim[必要參數][選擇參數]ide
必要參數
加密
-b 二進制模式
spa
-d 差別模式(同「vimdiff」)命令行
-m 只讀模式
圖片
-R 只讀模式
ip
-s 運行時不顯示處理信息
文檔
-V 運行時顯示詳細信的處理信息
選擇參數
+啓動後跳到文件末尾
+<行數> 從指定的行數開始顯示
-x 編輯加密文件
-C<命令> 設置編輯完成以後的命令
-o<數字> 指定同時打開的文件數
【進入Vi後的命令】
Esc:退出編輯
:: 輸入命令
回車:顯示模式
ZZ:保存退出
【顯示模式下】
Ctrl+d :向下翻半半頁
Ctrl+u :向上翻版半頁
Ctrl+f :向下翻一頁
Ctrl+b :向上翻一頁
:數字 :跳轉到指定行
:$ :跳轉到文件最後一行
x :刪除字符
X :刪除字符
dd:刪除行
ndd :刪除n行
yy :複製行
nyy :刪除n行
p :粘粘
/key :向光標以後查找字符
?key :向光標以前查找字符
a,b s/F/T :a行以後b行以前,用T字符串代替F字符串
[快速移動光標]
在 vi 中, 移動光標和編輯是兩件事, 正由於區分開來, 因此能夠很方便的進行光標定
位和編輯. 所以能更快一點移動光標是頗有用的.
w(e) 移動光標到下一個單詞.
b 移動光標到上一個單詞.
0 移動光標到本行最開頭.
^ 移動光標到本行最開頭的字符處.
$ 移動光標到本行結尾處.
H 移動光標到屏幕的首行.
M 移動光標到屏幕的中間一行.
L 移動光標到屏幕的尾行.
gg 移動光標到文檔首行.
G 移動光標到文檔尾行.
c-f (即 ctrl 鍵與 f 鍵一同按下) 本命令即 page down.
c-b (即 ctrl 鍵與 b 鍵一同按下, 後同) 本命令即 page up.
'' 此命令至關有用, 它移動光標到上一個標記處, 好比用 gd, * 等查
找到某個單詞後, 再輸入此命令則回到上次停留的位置.
'. 此命令至關好使, 它移動光標到上一次的修改行.
`. 此命令至關強大, 它移動光標到上一次的修改點.
【進入編輯模式】
a :從光標以後插入
A :從光標行的最後插入
i :從光標處插入
I :從光標後的非空字符插入
o :從光標下方新建行
O :從光標上方新建行
【命令模式下】
:w :保存
:q :退出
:x :保存退出
:!:強制執行
:n :編輯下個文件
:f :顯示當前信息
:e 文件名 :打開文件
:r 文件名 :讀入一個文件到當前文本
:tabe :新建一個標籤頁
:close :關閉當前標籤
:qa :關閉全部標籤退出
:set nu :顯示行數
:set all :列出全部參數配置狀況
:set ai 設置自動縮進
[替換]
替換是 vi 的強項, 由於能夠用正規表達式來匹配字符串.如下提供幾個例子.
:s/aa/bb/g 將光標所在行出現的全部包含 aa 的字符串中的 aa 替換爲 bb
:s/\<aa\>/bb/g 將光標所在行出現的全部 aa 替換爲 bb, 僅替換 aa 這個單詞
:%s/aa/bb/g 將文檔中出現的全部包含 aa 的字符串中的 aa 替換爲 bb
:12,23s/aa/bb/g 將從12行到23行中出現的全部包含 aa 的字符串中的 aa 替換爲 bb
:12,23s/^/#/ 將從12行到23行的行首加入 # 字符
:%s= *$== 將全部行尾多餘的空格刪除
:g/^\s*$/d 將全部不包含字符(空格也不包含)的空行刪除.
【模式切換】
1). 插入模式(文本編輯模式)
按「i」切換進入插入模式「insert mode」,按「i」進入插入模式後是從光標當前位置開始輸入文件;
按「a」進入插入模式後,是從目前光標所在位置的下一個位置開始輸入文字;
按「o」進入插入模式後,是插入新的一行,從行首開始輸入文字。
2). 從插入模式切換爲命令行模式
按「ESC」鍵。
3). 從命令行模式進入末行模式
在命令模式下輸入:(Shift+;)