vim中快速復制粘貼多行
用vim寫代碼時,經常遇到這樣的場景,復制多行,然后粘貼。
這樣做:
1. 將光標移動到要復制的文本開始的地方,按v
進入可視模式。
2. 將光標移動到要復制的文本的結束的地方,按y復制。此時vim會自動將光標定位到選中文本的開始的地方,並退出可視模式。
3. 我移動光標到文本結束的地方,按p
粘貼。
一、刪除
dd
刪除一行
ndd
刪除以當前行開始的n行
dw
刪除以當前字符開始的一個字符
ndw
刪除以當前字符開始的n個字符
d$、D
刪除以當前字符開始的一行字符
d)
刪除到下一句的開始
d}
刪除到下一段的開始
d回車
刪除2行
任務:將第9行至第15行的數據,復制到第16行
刪除一行
ndd
刪除以當前行開始的n行
dw
刪除以當前字符開始的一個字符
ndw
刪除以當前字符開始的n個字符
d$、D
刪除以當前字符開始的一行字符
d)
刪除到下一句的開始
d}
刪除到下一段的開始
d回車
刪除2行
二、復制
任務:將第9行至第15行的數據,復制到第16行
方法1:(強烈推薦)
:9,15 copy 16 或 :9,15 co 16
由此可有:
:9,15 move 16 或 :9,15 m 16 將第9行到第15行的文本內容到第16行的后面
方法2:
光標移動到結束行,ma
光標移動到起始行,輸入y'a
光標移動到需要復制的行,輸入p,行前復制則輸入大寫P
方法3:
把光標移到第9行 shift + v
再把光標移動到第15行 ctrl + c
再把光標死去到第16行 p mysql
方法4:
光標移動到起始行,輸入ma
光標移動到結束行,輸入mb
光標移動到粘貼行,輸入mc
然后輸入:'a,'b, co 'c 把co換成m就是剪切
若要刪除多行,則輸入:'a,'b de
vi設置自動縮進:set smartindent
vi設置顯示行號:set number 或 set nu
全部刪除:按esc后,然后dG
全部復制:按esc后,然后ggyG
由此可有:
:9,15 move 16 或 :9,15 m 16 將第9行到第15行的文本內容到第16行的后面
方法2:
光標移動到結束行,ma
光標移動到起始行,輸入y'a
光標移動到需要復制的行,輸入p,行前復制則輸入大寫P
方法3:
把光標移到第9行 shift + v
再把光標移動到第15行 ctrl + c
再把光標死去到第16行 p mysql
方法4:
光標移動到起始行,輸入ma
光標移動到結束行,輸入mb
光標移動到粘貼行,輸入mc
然后輸入:'a,'b, co 'c 把co換成m就是剪切
若要刪除多行,則輸入:'a,'b de
vi設置自動縮進:set smartindent
vi設置顯示行號:set number 或 set nu
三、Vim中如何全選並復制
全部復制:按esc后,然后ggyG
全選高亮顯示:按esc后,然后ggvG或者ggVG
四、vim如何與剪貼板交互(將vim的內容復制出來)
推薦使用ctrl+insert復制,shift+insert粘貼