在Linux的vim中進行文本的操作時經常會用到複製與粘貼,但是Linux系統中的複製與粘貼方式與Windows系統中有很大的區別,同時,在進行復制與粘貼時也會用到其它一些對光標的基礎操作,現總結如下:
一、基礎操作
1、顯示行號
:set number 或 :set nu → 顯示行號
:set nonumber 或 :set nonu → 隱藏行號
2、文本的高亮選中
(1)在開始的地方按 v 進入可視模式,接着移動光標或使用“一、3”中的方法對光標進行操作即可;
(2)在開始行按 V 進入可視模式,接着移動光標或使用“一、3”中的方法對光標進行操作即可,使用大寫 V 可以對正行進行操作。
(3)在開始的地方按 v ,或在開始行按 V 進入可視模式,按G標亮從起始位置或起始行到最後一行所有的文本。
3、u →撤銷;Ctrl + r → 恢復撤銷
4、光標的移動
G | 移至最後一行首 |
gg | 移至第一行首 |
nG | 移至第n行首 |
n+ |
下移n行 |
n- |
上移n行 |
Home/0 |
移至當前行行首 |
^ | 移至當前行第一個字符前 |
End | 移至當前行行末 |
n$ | 移至當前行後的第n行行末 |
I | 將光標定位到當前行行首並插入 |
A | 將光標定位到當前行行末並插入 |
i/a | 直接插入 |
二、複製與粘貼最基本的操作
1、純鼠標操作:和Windows系統一樣,選中文本後按鼠標右鍵複製,鼠標移到要粘貼的地方再按鼠標右鍵粘貼。
2、鍵盤指令操作方法:
① 將光標移動到要複製的文本開始的地方,按v
進入可視模式;
② 將光標移動到要複製的文本的結束的地方,按y複製。此時vim會自動將光標定位到選中文本的開始的地方,並退出可視模式;
③ 移動光標到需要粘貼的地方,按p
粘貼。
3、鼠標與鍵盤快捷鍵結合的操作方法:
① 利用“一、2”中的方法複製文本,或者用鼠標選中需要複製的文本,按Ctrl+insert複製;
② 利用“一、2”中的方法粘貼文本,或者將光標移動到需要粘貼的地方,按shift+insert粘貼。
三、複製、剪切或刪除的多行操作
1、:n1,n2 copy n3 或 :n1,n2 co n3
將第n1行到第n2行的內容複製到第n3行(從第n3行的下一行開始粘貼)
:n1,n2 move n3 或 :n1,n2 mo n3
將第n1行到第n2行的內容剪切到第n3行(從第n3行的下一行開始粘貼)
2、光標移動到結束行(或起始行),ma
光標移動到起始行(或結束行),輸入y'a
光標移動到需要複製的行,輸入p,行前複製則輸入大寫P
3、光標移動到起始行,輸入ma
光標移動到結束行,輸入mb
光標移動到粘貼行,輸入mc
然後輸入:'a,'b, co 'c 把co換成m就是剪切
若要刪除多行,則輸入 :'a,'b de
4、光標移到起始行,輸入yG → 複製當前行開始直至最後一行的所有行
四、複製命令總結
y | 在使用v模式選定了某一塊的時候,複製選定塊到緩衝區用 |
yy | 複製整行(nyy或者yny ,複製n行,n爲數字) |
y^ | 複製當前到行頭的內容 |
y$ | 複製當前到行尾的內容 |
yw | 複製一個word (nyw或者ynw,複製n個word,n爲數字) |
yG | 複製至檔尾(nyG或者ynG,複製到第n行,例如1yG或者y1G) |
五、刪除命令總結(此處的刪除實際指的是剪切操作)
dd | 刪除一行 |
ndd | 刪除以當前行開始的第n行 |
dw | 刪除以當前字符開始的第一個字符 |
ndw | 刪除以當前字符開始的第n個字符 |
d$ 或 D | 刪除以當前字符開始的一行字符 |
d) | 刪除到下一句的開始 |
d} | 刪除到下一段的開始 |
d回車 | 刪除2行 |
dG | 刪除從當前行開始到最後一行 |
注:“四”、“五”的表格中複製和剪切的很多命令是通用的,並沒有列全,可以類比使用。
六、粘切板有關知識
1、vim有12個粘貼板,分別是0、1、2、...、9、a、“、+;用:reg命令可以查看各個粘貼板裏的內容。在vim中簡單用y只是複製到“(雙引號)粘貼板裏,同樣用p粘貼的也是這個粘貼板裏的內容;
2、要將vim的內容複製到某個粘貼板,需要退出編輯模式,進入正常模式後,選擇要複製的內容,然後按"Ny完成複製,其中N爲粘貼板號(注意是按一下雙引號然後按粘貼板號最後按y),例如要把內容複製到粘貼板a,選中內容後按"ay就可以了,有兩點需要說明一下:
3、“號粘貼板(臨時粘貼板)比較特殊,直接按y就複製到這個粘貼板中了,直接按p就粘貼這個粘貼板中的內容;
4、+號粘貼板是系統粘貼板,用"+y將內容複製到該粘貼板後可以使用Ctrl+V將其粘貼到其他文檔(如firefox、gedit)中,同理,要把在其他地方用Ctrl+C或右鍵複製的內容複製到vim中,需要在正常模式下按"+p;
5、要將vim某個粘貼板裏的內容粘貼進來,需要退出編輯模式,在正常模式按"Np,其中N爲粘貼板號,如上所述,可以按"5p將5號粘貼板裏的內容粘貼進來,也可以按"+p將系統全局粘貼板裏的內容粘貼進來。
七、參考資料
1、https://www.cnblogs.com/MMLoveMeMM/articles/3707287.html
2、https://www.cnblogs.com/GlassHour/p/5503973.html