1. 程式人生 > >【 正確使用vim編輯器的姿勢】

【 正確使用vim編輯器的姿勢】

vi:視覺化介面(Visual Interface)

vim:是vi的增強版(vi iMprove)

vi編輯器是所有Unix及Linux系統下標準的編輯器,他就相當於windows系統中的記事本一樣,它的強大不遜色於任何最新的文字編輯器。它是我們使用Linux系統不能缺少的工具。Unix及linux系統的任何版本下的vi編輯器是完全相同的,學會它後,您將在Linux的世界裡暢行無阻。

vim可以說的vi的升級版本,它可以用多種顏色的方式來顯示一些特殊的資訊。

vim具有程式編輯能力,可以以字型顏色辨別語法的正確性,方便程式設計。

vim會依據副檔名或者是檔案內的開頭訊息,來判斷該檔案的內容而自動的執行該程式的語法判斷式,再以顏色來區分顯示程式碼與註冊資訊。

vim加入了很多額外的功能,例如支援正則表示式的搜尋、多檔案編輯、快複製等等。這幫助我們在進行一些配置檔案的修改工作時提高了不少的效率。

vim有三種工作模式,如下圖:
在這裡插入圖片描述

vim編輯器的配置檔案:全域性/etc/vimrc 使用者~/.vimrc
修改配置檔案可使某項配置預設生效,比如在配置檔案內加入一行:set nu,那麼開啟檔案後將預設顯示行號。


開啟檔案

vim + file 開啟檔案並定位到最後一行
.
vim +n file 開啟檔案並定位到第n行
.
vim +/string file 開啟檔案並定位到第一次被'string'匹配到的行的行首
.
vim file1 file2 file3

開啟多個檔案
.
vim -o file1 file2 file3 水平分隔顯示多個檔案
.
vim -O file1 file2 file3 垂直分隔顯示多個檔案

命令模式

Shift + ZZ 儲存退出
.
0 跳轉至當前行行首,絕對行首
$ 跳轉至當前行行尾,絕對行尾
^ 跳轉至當前行行首第一個非空白字元
.
h ⬅️移
l ➡️移
j ⬇️移
k ⬆️移
.
w 移至下一個單詞的詞首
e 移至下一個單詞的詞尾
b 移至上一個單詞的詞首
?w 表示向後移動?個單詞
.
Ctrl + f 向下翻一屏
Ctrl + b

向上翻一屏
Ctrl + d 向下翻半屏
Ctrl + u 向上翻半屏
.
cc 刪除游標所在行,並進入編輯模式
?x 刪除游標所在字元及向後?個字元
dw 刪除游標所在位置到下一個單詞詞首所有字元
?dw 刪除當前游標所在處及向後第?個單詞詞首內所有字元
.
P 大寫P,貼上至游標所在行的上面(複製行)或前面(複製快)
.
yw 複製游標所在字元到下個單詞詞首內容
y?G 複製游標所在行到?行的所有內容
.
r? 單字元替換,將游標所在字元替換為?
R 替換模式,可以做字串替換
.
?u 撤銷?次操作
Ctrl + r 撤銷最近一次的撤銷操作
.
. 重複最近一次的操作
.
v 按字元選取,鍵盤控制游標劃過的區域被選取
V 按矩形選取,鍵盤控制游標劃過的行被選取
.

末行模式

set nu 顯示行號,nu是number的簡寫
set nonu 取消顯示行號
.
set ai 自動縮排,ai時autoindent的簡寫
set noai 取消自動縮排
.
set ic 忽略大小寫,ic時ignorecase的簡寫
set noignorecase 區分大小寫
.
syntax on 開啟語法高亮顯示
syntax off 關閉語法高亮顯示
.
+? 向上移動?行
-? 向下移動?行
.
5, 10d 刪除5至10行的所有內容
5, 10y 複製5至10行的所有內容
.
/string 從當前位置向後查詢
?string 從當前位置向前查詢
.
line1, line2s/old/new/gi 替換,比如1,$(或%)表示全文,g:全域性替換,i:忽略大小寫
.
開啟多個檔案時使用:
next 切換到下一個檔案
prev 切換到上一個檔案
last 切換到最後一個檔案
first 切換到第一個檔案
qa 退出所有檔案
wqa 儲存退出所有檔案
.
w filepath 將當前檔案另存到指定路徑的檔案
5, 10w filepath 將5至10行的內容儲存至指定路徑的檔案
.
r file 將file檔案內的所有內容附加到當前游標所在位置的後面
.
! command 執行作業系統命令


朋友,你要努力!