vim學(xué)習(xí)總結(jié)

1.vim簡介

vim是一種有模式的文本編輯器,如:普通模式、插入模式、可視模式等。初入門最常用的是普通模式和插入模式。
Git Bash下輸入“vim a.md”進(jìn)入vim編輯頁面。
編輯頁面下“i”命令進(jìn)入插入模式;插入模式下“ESC”鍵進(jìn)入編輯模式。
編輯模式下有很多命令,這些命令可以通過組合輸入來快速高效的完成對文本的編輯,例如:“dd”表示刪除光標(biāo)所在行,而輸入“2dd”(“dd”重復(fù)兩次)則表示刪除光標(biāo)后兩行。

2.編輯模式

編輯模式的主要功能是移動光標(biāo),然后對文本進(jìn)行剪切、刪除、復(fù)制、插入、替換等
tips:

  • 編輯模式下光標(biāo)指向它右側(cè)的字符,與windows下的word不同。例如要刪除字符“M”,在word中要先把光標(biāo)移到“M”的右側(cè),然后刪除。而vim的編輯模式下使用<code>x</code>命令時。要先把光標(biāo)移動到“M”的左側(cè),然后使用。
  • Vim 編輯器經(jīng)常以一對大、小寫字母(如 p 和
    P)來提供一對相似的功能。通常,小寫命令在光標(biāo)的后面進(jìn)行操作,大寫命令在光標(biāo)的前面進(jìn)行操作。
  • 普通模式下有很多命令,這些命令可以通過組合輸入來快速高效的完成對文本的編輯,例如:“dd”表示刪除光標(biāo)所在行,而輸入“2dd”(“dd”重復(fù)兩次)則表示刪除光標(biāo)所在行及下一行。

2.1打開、保存、退出文本
<pre>
:e path_to_file/filename 打開path_to_file/filename文本
:w 保存當(dāng)前修改,不退出
:w file_temp 文件另存為file_temp
:q 在未作修改的情況下退出(修改后不保存直接退出會提示)
:q! 放棄所有修改,退出編輯程序。
:wq 先保存后退出的組合命令
</pre>
<p> </p>
2.2移動光標(biāo)
移動一個字符:
<pre>
k 上移
j 下移
h 左移
l 右移
</pre>
tips:在命令前加上數(shù)字代表命令執(zhí)行次數(shù),如:5k,表示上移5行。
<pre>
H 移動到屏幕頂端的行
M 移動到屏幕中央的行
L 移動到屏幕底端的行

nH 移動到屏幕頂端往下的第n行
nL 移動到屏幕頂端往上的第n行
</pre>
tips:這些命令(全都是大寫)不會滾屏,只是對當(dāng)前頁面進(jìn)行操作。(感覺用5k這樣的方式也可以很快的實現(xiàn)啊。)
按單詞移動(ew大小寫啥的沒整明白)
<p> </p>
整行移動
<pre>
0 移動到行首
$ 移動到行末

  •        移動到下一行開頭
    
  •        移動到上一行開頭
    

</pre>
tips:“+”“-”不管你的光標(biāo)在當(dāng)前行何處,總是移動到下一行或上一行的行首。假如現(xiàn)光標(biāo)在第二行的第二個字符,按“k”/“j”就會移動到上一行或下一行的第二個字符處。
<p> </p>
滾屏
<pre>
Ctrl+f 往前滾動一整屏
Ctrl+b 往后滾動一整屏
Ctrl+d 往前滾動半屏
Ctrl+u 往后滾動半屏

zEnter 將光標(biāo)所在行移動到屏幕頂端
z. 將光標(biāo)所在行移動到屏幕中間
z- 將光標(biāo)所在行移動到屏幕低端

Ctrl+g 顯示當(dāng)前行信息
nG 轉(zhuǎn)至第n行
G 轉(zhuǎn)至文本末尾
gg         移至文本開頭
</pre>
tips:10zEnter,是把第10行移 滾動到屏幕頂端。
<p> </p>
根據(jù)文本塊移動
<pre>
( 移動到當(dāng)前句子開頭
) 移動到下一個句子開頭

{ 移動到當(dāng)前這一段開頭
} 移動到下一段開頭

[[ 移動到當(dāng)前這一節(jié)的開頭
]] 移動到下一節(jié)的開頭
</pre>
疑問:什么是區(qū)分段落、句子、節(jié)的區(qū)別???
<p> </p>
2.2刪除和替換
<pre>
rc 用 c 替換光標(biāo)所指向的當(dāng)前字符;
x 刪當(dāng)前光標(biāo)所在的一個字符。
dd 刪除當(dāng)前行,并把刪除的行存到剪貼板里(去除空隙)
d$ 從當(dāng)前光標(biāo)起刪除字符直到行的結(jié)束
d0 從當(dāng)前光標(biāo)起刪除字符直到行的開始
J 刪除本行的回車符(CR),并和下一行合并
p 粘貼剪貼板
</pre>
tips:

  • "3dd”表示刪除光標(biāo)所在行和下兩行。“3p”表示復(fù)制三次
  • “3x”表示刪除光標(biāo)所指向的前 3 個字符;“3rA”用 A 替換光標(biāo)所指向的前 5 個字符
    “光標(biāo)指向的前”是光標(biāo)指向的字符以及它右邊的文本。(等我學(xué)會怎么整圖片后用圖片表示更清楚些)
    ?替換的命令沒搞明白,后續(xù)整明白了再寫。
    <p> </p>
    2.4復(fù)制粘貼
    <pre>
    yy 復(fù)制當(dāng)前行到內(nèi)存緩沖區(qū)
    nyy 復(fù)制 n 行內(nèi)容到內(nèi)存緩沖區(qū)
    5yy 復(fù)制 5 行內(nèi)容到內(nèi)存緩沖區(qū)
    “+y 復(fù)制 1 行到操作系統(tǒng)的粘貼板
    “+nyy 復(fù)制 n 行到操作系統(tǒng)的粘貼板
    </pre>
    tips:緩沖區(qū)與粘貼板是什么區(qū)別?是什么?
    <pre>
    p 小寫字母 p,將剪切板的內(nèi)容粘貼到光標(biāo)的后面
    P 大寫字母 P,將剪切板區(qū)的內(nèi)容粘貼到光標(biāo)的前面
    </pre>
    tips:
  • 如果剪切板的內(nèi)容是字符或字,直接粘貼在光標(biāo)的前面或后面;如果緩沖區(qū)的內(nèi)容為整行正文,執(zhí)行上述粘貼命令將會粘貼在當(dāng)前光標(biāo)所在行的上一行或下一行
  • 這里光標(biāo)前就是光標(biāo)的左邊,光標(biāo)后就是光標(biāo)的右邊(注意區(qū)分“光標(biāo)指向前”與“光標(biāo)前”的不同)
  • 注意上述兩個命令中字母的大小寫。
    <p> </p>
    2.5字符串搜索
    <pre>
    :/str/ 正向搜索,將光標(biāo)移到下一個包含字符串 str 的行
    :?str? 反向搜索,將光標(biāo)移到上一個包含字符串 str 的行
    </pre>
    <p> </p>
    新人初學(xué),有很多地方難免有錯,懇請各位指正,在此感謝。其中沒搞明白的問題,在學(xué)習(xí)后再做更新。
最后編輯于
?著作權(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)容