前言
在代碼的世界里,效率是永恒的追求。無(wú)論是新手開(kāi)發(fā)者還是資深工程師,都渴望擁有一款能讓自己如虎添翼的編輯器。而在Linux生態(tài)中,有一款被無(wú)數(shù)程序員奉為神器、被譽(yù)為“效率之王”的編輯器——Vim。它以26個(gè)字母鍵為核心,用極簡(jiǎn)的操作重構(gòu)了代碼編輯的宇宙。今天,就讓我們一同走進(jìn)Vim的世界,探索它如何以獨(dú)特的方式提升你的編程效率。
一、Vim是什么?
Vim(Vi IMproved)是一款高度可配置的文本編輯器,最初作為Vi編輯器的改進(jìn)版發(fā)布。它運(yùn)行在大多數(shù)類Unix系統(tǒng)(如Linux、macOS)上,同時(shí)也支持Windows平臺(tái)。Vim的設(shè)計(jì)哲學(xué)是“模式化編輯”,通過(guò)不同的操作模式(如普通模式、插入模式、可視模式等)來(lái)高效地完成文本編輯任務(wù)。
二、為什么選擇Vim?
1.極致效率:Vim的操作幾乎完全基于鍵盤,無(wú)需頻繁切換鼠標(biāo),讓雙手始終保持在鍵盤上,極大地提高了編輯速度。
2.高度可定制:Vim提供了豐富的配置選項(xiàng)和插件生態(tài),用戶可以根據(jù)自己的需求定制專屬的編輯環(huán)境。
3.跨平臺(tái)兼容:無(wú)論是Linux、macOS還是Windows,Vim都能提供一致的使用體驗(yàn)。
4.學(xué)習(xí)曲線陡峭但回報(bào)豐厚:雖然Vim的學(xué)習(xí)曲線相對(duì)較陡,但一旦掌握,你將發(fā)現(xiàn)它帶來(lái)的效率提升是任何其他編輯器都無(wú)法比擬的。
三、Vim的核心模式
Vim的精髓在于其模式化設(shè)計(jì),下面給大家介紹一下Vim在使用時(shí)幾種常用的模式:
3.1 命令模式(Normal Mode)
默認(rèn)模式,所有移動(dòng)和編輯命令都基于此模式。
3.2 插入模式(Insert Mode)
插入模式顧名思義,是用來(lái)插入文字的。我們?cè)阪I盤上找到a、i、o鍵就能進(jìn)入插入模式。
3.3 底行模式(Command-line Mode)
通過(guò)**:**進(jìn)入,用于執(zhí)行Vim命令,如保存文件(:w)、退出Vim(:q)等。
四、Vim的基本操作
4.1 進(jìn)入vim
首先我們輸入vim 文件名,就可以打開(kāi)vim。
語(yǔ)法:vim 文件名
功能:用vim打開(kāi)文件。
剛進(jìn)入vim默認(rèn)的模式就是命令模式,如下圖:
4.2 模式切換
【命令模式】【插入模式】
命令模式→插入模式:
1、按“ a ”鍵:進(jìn)入插入模式后,在光標(biāo)當(dāng)前位置的下一個(gè)位置開(kāi)始插入文字。
2、按“ i ”鍵:進(jìn)入插入模式后,在光標(biāo)當(dāng)前位置開(kāi)始插入文字。
3、按“ o ”鍵:進(jìn)入插入模式后,插入新一行開(kāi)始插入。
插入模式→命令模式:按 “Esc” 鍵。
【命令模式】【底行模式】
命令模式→底行模式:shift+ ';'(也就是輸入':')
底行模式→命令模式:按 “Esc” 鍵。
插入模式和底行模式不能直接切換,只能通過(guò)命令模式來(lái)切換,所以命令模式是使用最頻繁的模式。
4.3退出vim
退出vim一共有兩種方法:
? 在命令模式下,輸入大寫的“ZZ”。
? 在底行模式下,輸入w保存當(dāng)前文件,輸入q退出vim。
wq:保存并且退出。
q?。翰槐4?,強(qiáng)制退出。(加個(gè)感嘆號(hào)就是強(qiáng)制的意思)
五、命令模式的命令集
5.1 移動(dòng)光標(biāo)
?基礎(chǔ)移動(dòng)
? 「h」:光標(biāo)左移一格。(在鍵盤最左,所以是左)
? 「j」:光標(biāo)下移一格。(jump,向下跳,所以是下)
? 「k」:光標(biāo)上移一格。(king,國(guó)王高高在上,所以是上)
? 「l」:光標(biāo)右移一格。(在鍵盤最右,所以是右)
?特定位置移動(dòng)
? 「G」:移動(dòng)到文本最后。(shift + ‘ g ’)
? 「$」:移動(dòng)到光標(biāo)所在行的行尾。(shift + ‘ 4 ’)
? 「^」:移動(dòng)到光標(biāo)所在行的行首。(shift + ‘ 6 ’)
? 「w」:光標(biāo)跳到下個(gè)單詞的開(kāi)頭。
? 「e」:光標(biāo)跳到下個(gè)單詞的字尾。
? 「b」:光標(biāo)回到上個(gè)單詞的開(kāi)頭。
? 「nl」:光標(biāo)移到該行的第n個(gè)位置,如:5l, 56l。
? 「gg」:進(jìn)入到文本開(kāi)始。
?屏幕移動(dòng)
? 「Ctrl + b」:屏幕往后移動(dòng)一頁(yè)。
? 「Ctrl + f」:屏幕往前移動(dòng)一頁(yè)。
? 「Ctrl + u」:屏幕往后移動(dòng)半頁(yè)。
? 「Ctrl + d」:屏幕往前移動(dòng)半頁(yè)。
5.2 刪除文字
?單個(gè)字符刪除
? 「x」:刪除光標(biāo)所在位置的一個(gè)字符。
? 「#x」:例如,「6x」表示刪除光標(biāo)所在位置后面(包含自己在內(nèi))6個(gè)字符。
? 「X」:每按一次,刪除光標(biāo)所在位置的前面一個(gè)字符。(shift + ‘ x ’)
? 「#X」:例如,「20X」表示刪除光標(biāo)所在位置的前面20個(gè)字符。
?整行刪除
? 「dd」:刪除光標(biāo)所在行。
? 「#dd」:從光標(biāo)所在行開(kāi)始刪除#行。
5.3 復(fù)制
?字符復(fù)制
? 「yw」:將光標(biāo)所在之處到字尾的字符復(fù)制到緩沖區(qū)中。
? 「#yw」:復(fù)制#個(gè)字到緩沖區(qū)。
?整行復(fù)制
? 「yy」:復(fù)制光標(biāo)所在行到緩沖區(qū)。
? 「cyy」:c代表c行,例如,「6yy」表示拷貝從光標(biāo)所在的該行往下數(shù)6行文字。
?粘貼
? 「p」:將緩沖區(qū)內(nèi)的字符貼到光標(biāo)所在位置。注意:所有與“y”有關(guān)的復(fù)制命令都必須與“p”配合才能完成復(fù)制與粘貼功能。
?剪切
? 「dd」:剪切光標(biāo)所在行到緩沖區(qū)。
5.4 替換
?單個(gè)字符替換
? 「r」:替換光標(biāo)所在處的字符。
? 「R」:替換光標(biāo)所到之處的字符,直到按下「ESC」鍵為止。(shift + ‘ r ’)(實(shí)際上是從命令模式進(jìn)入到替換模式,而按ESC是退出替換模式到命令模式)
? 「~」:將光標(biāo)所到之處的字符進(jìn)行大小寫變換,如果是大寫字母就變成小寫,如果是小寫字母就變成大寫。(shift + ‘ · ’)
5.5 撤銷與恢復(fù)
?撤銷上一次操作
? 「u」:撤銷,回到上一個(gè)操作。按多次“u”可以執(zhí)行多次撤銷。
?撤銷的恢復(fù)
? 「Ctrl + r」:恢復(fù),回到撤銷前的操作(反撤銷)。按多次可以執(zhí)行多次恢復(fù)。
5.6 更改
? 「cw」:更改光標(biāo)所在處的字到字尾處。
? 「c#w」:例如,「c3w」表示更改3個(gè)字。
5.7 跳至指定的行
? 「Ctrl + g」:列出光標(biāo)所在行的行號(hào)。
? 「#G」:例如,「15G」,表示移動(dòng)光標(biāo)至文章的第15行行首。
六、底行模式的命令集
6.1 保存文件
? 「w」:在冒號(hào)后輸入字母「w」,保存文件。
6.2 退出
?退出
? 「q」:按「q」退出vim。如果無(wú)法離開(kāi),可以在「q」后跟一個(gè)「!」強(qiáng)制離開(kāi)。
?保存并退出
? 「wq」:建議離開(kāi)時(shí)搭配「w」一起使用,這樣在退出時(shí)還可以保存文件。
6.3 強(qiáng)制執(zhí)行
?強(qiáng)制退出
? 「!q」:強(qiáng)制退出,不保存任何修改。
?強(qiáng)制保存
? 「!w」:強(qiáng)制保存文件,覆蓋原有的只讀限制(前提是有權(quán)限)。
6.4 設(shè)置行號(hào)
? 「set nu」:列出光標(biāo)所在行的行號(hào)。
? 「set nonu」:撤銷光標(biāo)所在行的行號(hào)。
6.5 多文本操作
在底行模式中我們可以利用vs 文件名來(lái)實(shí)現(xiàn)多文件同屏。
我們還可以通過(guò)「Ctrl + w + w」來(lái)讓光標(biāo)跳轉(zhuǎn)到下一個(gè)文件。
七、Vim的配置
我們?cè)诓迦肽J街校捎谖唇?jīng)配置,vim不像其它編譯器那樣有自動(dòng)補(bǔ)全或者顯示行號(hào)高亮等功能,導(dǎo)致我們?cè)谑褂玫臅r(shí)候會(huì)感到用起來(lái)并不是那么絲滑,這個(gè)時(shí)候我們就需要對(duì)vim進(jìn)行配置。
7.1Vim 配置文件的位置
配置項(xiàng)一般都放在家目錄的.vimrc文件中,這個(gè) .vimrc 就叫做配置文件。如果用戶當(dāng)前沒(méi)有配置文件,則可以自己touch一個(gè)。
之后我們可以通過(guò)vim .vimrc來(lái)打開(kāi)配置文件并且進(jìn)行配置項(xiàng)的編輯。
7.2 常用配置項(xiàng)
syntax on " 自動(dòng)語(yǔ)法高亮 set nu "顯示行號(hào) settabstop=4 " 設(shè)定 tab 長(zhǎng)度為 4 set cursorline "突出顯示當(dāng)前行 ......
網(wǎng)上還有更多的配置項(xiàng),大家可根據(jù)需要自己搜索進(jìn)行配置。
7.3 自動(dòng)化一鍵配置
這里分享一個(gè)可以自動(dòng)化配置的方案:
VimForCpp: 快速將vim打造成c++ IDE
只需要輸入這行代碼即可完成一鍵配置:
curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh
但是要注意兩點(diǎn),首先強(qiáng)烈不建議使用root賬戶操作,其次該插件只支持 Centos7 x86_64.,也就是說(shuō)Ubuntu不支持該插件,但是也可以自行搜索進(jìn)行配置。
鏈接:https://blog.csdn.net/Miracle_86
-
Linux
+關(guān)注
關(guān)注
87文章
11425瀏覽量
212408 -
VIM
+關(guān)注
關(guān)注
0文章
136瀏覽量
15597 -
代碼
+關(guān)注
關(guān)注
30文章
4882瀏覽量
70061 -
編輯器
+關(guān)注
關(guān)注
1文章
813瀏覽量
31649
原文標(biāo)題:【Linux】效率革命:Vim-用26個(gè)字母鍵重構(gòu)你的代碼宇宙
文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
常用編輯器之Vim編輯器
嵌入式學(xué)習(xí)-常用編輯器之Vim編輯器
Vim編輯器之Vim常用操作命令

Linux下怎么使用vim編輯器?
vim Linux文本編輯器
VIM編輯器使用教程
VIM編輯器學(xué)習(xí)
vim編輯器操作指令大全
vim編輯器超實(shí)用指南

vim編輯器如何使用
vim編輯器命令模式使用方法
Linux下Vim編輯器的使用技巧

評(píng)論