文本編輯器Vim的基本使用方法

文本編輯器Vim的基本使用方法

Vim簡介:
Vim(Vi IMproved)是從Vi(Visual interface)發展出來的一個文本編輯器,在Vi的基礎上改進和增加了很多特性,可以執行輸出、刪除、查找、替換和塊操作等衆多文本操作,而且用戶可以根據自己的需要對其進行定製,在程序員中被廣泛使用。

一、工作模式介紹

vim共分爲三種模式,包括命令模式(Command mode),輸入模式(Insert mode)和末行模式(Last line mode)。

1. 命令模式

當我們使用vim打開一個文件時,便進入了命令模式。在該模式下,用戶的鍵盤動作會被Vim識別爲命令,而非輸入字符,所輸入的命令並不會在屏幕上顯示出來。用戶輸入各種合法命令之後,Vim會完成相應的動作,例如刪除、複製和粘貼等的操作。

i  # 切換到輸入模式,以輸入字符
dd  # 刪除當前光標所在行
:  # 切換到末行模式,在最底行輸入命令

注:不管處於何種模式,只要按一下Esc鍵,即可使Vim進入命令模式。

2. 輸入模式

在命令模式中輸入iIoOaA等命令即可進入輸入模式,在該模式下,用戶輸入的任何字符都會被vim當做文件內容保存起來,並顯示在屏幕上。

Backspace  # 退格鍵,刪除光標前一個字符
Delete  # 刪除鍵,刪除光標後一個字符
上/下/左/右  # 移動光標
Home/End  # 移動光標到該行行首/行尾
PageUp/PageDown  # 屏幕向下/上移動一頁

3. 末行模式

末行模式也稱爲ex轉義模式,在命令模式下輸入:/?等命令即可進入末行模式,在該模式下,可以完成查找、替換、退出、存儲、顯示行號等操作。

:w  # 保存文件
:q  # 退出程序
:set nu  # 顯示行號

二、命令模式下的操作說明

1. 光標移動

h/j/k/l  # 光標向左/下/上/右移動一個字符,等於左/下/上/右鍵
Ctrl+f/Ctrl+b  # 屏幕向下/上移動一頁,等於PageDown/PageUp鍵
Ctrl+d/Ctrl+u  # 屏幕向下/上移動半頁
0  # 光標移動到該行行首,等於Home鍵
$  # 光標移動到該行行尾,等於End鍵
w  # 光標移動到下一個單詞的頭部,2w移動到下兩個單詞的頭部
e  # 光標移動到下一個單詞的尾部,3e移動到下三個單詞的尾部
G  # 光標移動到文本最後一行
nG  # 光標移動到檔案第n行
gg  # 光標移動到文本第一行,相當於1G

H  # 光標移動到屏幕最上方行的第一個字符
M  # 光標移動到屏幕最中間行的第一個字符
L  # 光標移動到屏幕最下方行的第一個字符
n<Space>  # 光標向右移動n個字符
n<Enter>  # 光標向下移動n行

2. 文本行移動

>>  # 光標所在行右移 
<<  # 光標所在行左移

3. 複製、粘貼和刪除

  • 複製
yy  # 複製光標所在行
nyy # 複製光標所在行向下n行
y1G # 複製光標所在行到第一行
yG  # 複製光標所在行到最後一行
y0  # 複製光標所在字符到該行行首
y$  # 複製光標所在字符到該行行尾
  • 粘貼
p  # 將複製的數據粘貼到光標下一行
P  # 將複製的數據粘貼到光標上一行
  • 刪除
x  # 刪除光標後一個字符,等於Delete鍵
X  # 刪除光標前一個字符,等於Backspace鍵
nx  # 連續向後刪除n個字符
dd  # 刪除光標所在行
ndd # 刪除光標所在行向下n行
d1G # 刪除光標所在行到第一行
dG  # 刪除光標所在行到最後一行
d0  # 刪除光標所在字符到該行行首
d$  # 刪除光標所在字符到該行行尾
  • 撤銷與重複
u  # 撤銷
Ctrl+r  # 反撤銷
.  # 重複上一次操作命令

4. 進入塊操作

使用vVCtrl+v進入可視模式可進行塊操作,通過移動光標選擇需要操作的內容,被選中的部分會反白顯示。

  • v啓用可視模式,能夠按單個字符選擇內容,移動光標可以進行選擇
  • V啓用可是模式,會立馬選擇光標所在行,移動光標可以進行選擇
  • Ctrl+V啓用可視模式中的塊模式,能夠在列方向上選擇單個字符,移動光標可以進行選擇(塊操作)

塊操作:

d  # 刪除選中內容
D  # 刪除選中內容及行後全部內容
I  # 在選中所有列的光標前插入內容,輸入完後按兩下Esc插入成功
y  # 複製選中內容
p  # 粘貼選中內容

三、命令模式進入輸入模式

i  # 在光標所在處輸入
I  # 在光標所在行第一個非空格符處開始輸入
a  # 在光標所在處下一個字符開始輸入
A  # 在光標所在行最後一個字符開始輸入
o  # 在光標所在下一行輸入新的一行
O  # 在光標所在上一行輸入新的一行

r  # 進入取代模式,取代光標所在字符一次
R  # 進入取代模式,一直取代光標所在字符,直到按下Esc爲止

四、命令模式進入末行模式

1. 基本操作

:w  # 保存文本
:q  # 退出文本
:wq  # 保存文本並退出,等於:x
:set nu  # 顯示行號
:setnonu  # 取消顯示行號

2. 查找

:set ic  # 忽略字母大小寫查找
:set noic  # 恢復字母大小寫查找(默認)
/str  # 向光標後面尋找名爲str的字符串
?str  # 向光標前面尋找名爲str的字符串

注:

n鍵可以重複前一個搜索動作。例如/str搜索後,n鍵可以繼續向下搜索下一個

N鍵可以反向進行前一個搜索動作。例如/str搜索後,N鍵可以反向向上搜索上一個

3. 替換

:s/str1/str2/g  # 將光標所在行的str1字符串替換爲str2
:%s/str1/str2/g  # 將整個文本中的str1字符串替換爲str2
:n1,n2s/str1/str2/g  # 將n1~n2行中的str1字符串替換爲str2

4. 執行shell命令

:! commond  # 執行shell命令基本格式
:! ls /home  # 查看/home目錄
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章