初學(xué)vim

vim 的基本概念

vim大致分可為這么幾種狀態(tài),分別是命令模式、插入模式、視圖模式、和底行模式,各模式的功能區(qū)分如下:

  1. 命令行模式

控制屏幕光標(biāo)的移動,字符、字或行的刪除,移動復(fù)制某區(qū)段

  1. 插入模式

按 i 進入插入模式,對文件的內(nèi)容進行編輯操作,按 ESC 鍵可回到命令行模式

  1. 視圖模式

按 v 或者 V 進入視圖模式,對文字區(qū)段進行選擇,然后進行相應(yīng)的操作(比如復(fù)制一段文字,刪除一段文字等等)

  1. 底行模式

按 : 或者 / 進入底行模式,其實底行模式也是命令模式的一種等

常使用底行模式對文件文件保存或退出vim,也可以設(shè)置編輯環(huán)境,如尋找字符串、列出行號……等

基本命令

1) 命令行模式

h 向左移動光標(biāo)

j 向下移動光標(biāo)

k 向上移動光標(biāo)

l 向右移動光標(biāo)

0 移到文件的開頭

G 移動到文件的最后

$ 移動到光標(biāo)所在行的“行尾”

^ 移動到光標(biāo)所在行的“行首”

w 光標(biāo)跳到下個字的開頭

e 光標(biāo)跳到下個字的字尾

b 光標(biāo)回到上個字的開頭

nl 光標(biāo)移到該行的第n的位置,其中n是數(shù)字 如:5l 將光標(biāo)移動到當(dāng)前行的第5個字符處

x 每按一次,刪除光標(biāo)所在位置的“后面”一個字符

nx 刪除光標(biāo)所在位置的“后面”n個字符,n是數(shù)字,比如 5x

X 刪除光標(biāo)所在位置的“前面”一個字符

nX 刪除光標(biāo)所在位置的“前面”n個字符,n是數(shù)字,比如 5X

dd 刪除光標(biāo)所在行

ndd 從光標(biāo)所在行開始刪除n行

yw 將光標(biāo)所在之處到字尾的字符復(fù)制到緩沖區(qū)中

nyw 復(fù)制n個字到緩沖區(qū)

yy 復(fù)制光標(biāo)所在行到緩沖區(qū)

nyy 例如,6yy表示拷貝從光標(biāo)所在的該行“往下數(shù)”6行文字

p 將緩沖區(qū)內(nèi)的字符貼到光標(biāo)所在位置注意:所有與“y”有關(guān)的復(fù)制命令都必須與“p”配合才能完成復(fù)制與粘貼功能

r 替換光標(biāo)所在處的字符

R 替換光標(biāo)所到之處的字符,直到按下「ESC」鍵為止

u 如果您誤執(zhí)行一個命令,可以馬上按下「u」,回到上一個操作按多次“u”可以執(zhí)行多次回復(fù)

cw 更改光標(biāo)所在處的字到字尾處

cnw 例如,c3w表示更改3個字,其中n是數(shù)字

nG(或者ngg)例如,15G表示移動光標(biāo)至文件的第15行的行首,其中n是數(shù)字

ctrl+g 列出光標(biāo)所在行的行號

ci”清除引號內(nèi)容

ci> 清除尖括號內(nèi)容

cit 清除標(biāo)簽內(nèi)的內(nèi)容

zc 折疊

zC 對所在范圍內(nèi)所有嵌套的折疊點進行折疊

zo 展開折疊

zO 對所在范圍內(nèi)所有嵌套的折疊點展開

[z 到當(dāng)前打開的折疊的開始處

]z 到當(dāng)前打開的折疊的末尾處

zj 向下移動,到達下一個折疊的開始處,關(guān)閉的折疊也被計入

zk 向上移動到前一折疊的結(jié)束處,關(guān)閉的折疊也被計入

xp 交換兩個字符的位置

ddp 上下兩行調(diào)換

移動屏幕

ctrl+g 列出光標(biāo)所在行的行

ctrl+b 屏幕往“后”移動一頁

ctrl+f 屏幕往“前”移動一頁

ctrl+u 屏幕往“后”移動半頁

ctrl+d 屏幕往“前”移動半頁

shift +3 選中并查找該詞組

跳轉(zhuǎn)位置

ctrl+o 回到更老的跳轉(zhuǎn)位置

ctrl+i 向前跳轉(zhuǎn)位置(兩個命令前面可以加數(shù)字來表示倍數(shù))

改變大小寫

~ 將光標(biāo)下的字母改變大小寫

3~ 將光標(biāo)位置開始的3個字母改變其大小寫

g~~ 改變當(dāng)前行字母的大小寫

U 將可視模式下選擇的字母全改成大寫字母

u 將可視模式下選擇的字母全改成小寫

gUU 將當(dāng)前行的字母改成大寫

3gUU 將從光標(biāo)開始到下面3行字母改成大寫

guu 將當(dāng)前行的字母全改成小寫

gUw 將光標(biāo)下的單詞改成大寫。

guw 將光標(biāo)下的單詞改成小寫。

2) 插入模式

i 在光標(biāo)的前面插入字符

I 在當(dāng)前行的第一個字符前插入字符

o 在當(dāng)前行的下一行插入新的一行,并在新的一行的第一個字符處插入字符

O 在當(dāng)前行的上一行插入新的一行,并在新的一行的第一個字符處插入字符

a 在光標(biāo)的后面插入字符

A 在當(dāng)前行的最后面插入字符

按[Esc]回到命令模式

3) 視圖模式

vi” 選擇引號內(nèi)容

vi> 選擇尖括號內(nèi)容

vit 選擇標(biāo)簽內(nèi)的內(nèi)容

va” 選擇包括引號在內(nèi)的內(nèi)容

va> 選擇包括尖括號在內(nèi)的內(nèi)容

vat 選擇整個標(biāo)簽

4) 底行模式

:w filename 將文件以指定的文件名filename保存

:wq 存盤并退出vim

:q! 不存盤強制退出vim

:set nu 顯示行號

:15 回車,跳到文件第15行

/關(guān)鍵字, 先按「/」鍵,再輸入您想尋找的字符,如果第一次找的關(guān)鍵字不是您想要的,可以一直按「n」會往后尋找到您要的關(guān)鍵字為止

?關(guān)鍵字, 先按「?」鍵,再輸入您想尋找的字符,如果第一次找的關(guān)鍵字???

:-n,+n d '-'表示當(dāng)前行的上n行,'+'表示當(dāng)前行的下n行,比如命令':-2,+2 d'的意思,就是說刪除但前行的上2行到當(dāng)前行的下2行

:n pu 將剪切板中的內(nèi)容粘貼到n行

:e filename 在當(dāng)前編輯的窗口中打開指定的“filename”的文件進行編輯操作

:p 文件操作,前一個文件

:n 文件操作,下一個文件

:last 文件操作,最后一個文件

:!cmd 執(zhí)行shell命令

:sh 進入shell

:exit 退出shell

按[Esc]回到命令模式

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容