Vim的複製粘貼命令無疑是y (yank),p(paster),加上yy,Phtml
w 跳轉到下個word,W:跳轉到上個word f 某行正向查找並跳轉 F: 反向....
而後部分雙寫的字母有行操做:express
yy 複製一行 dd 刪除一行
因此,vim
p就是在當前光標後粘貼,P就是在當前光標前粘貼
另外,說完p,其實還有幾個命令有時也是頗有用的緩存
gp,和p的功能基本一致,只是粘貼完,它會把光標移動至粘貼內容以後;gP同理 :pu[t] ,注意,這個是在命令界面輸入的pu/put,它的意思是把x寄存器的內容粘貼到下一行
vim強大之處之一就是它自帶一堆寄存器,每一個寄存器獨立使用,你能夠在不一樣寄存器中存儲不一樣數據,命令,你能夠把這個想象成一個增強版的剪貼板,固然它的功能不止剪貼板這麼簡單。若是你想看vim的官方文檔有關部分:ui
:help registers
根據官方手冊:vim有9種寄存器spa
There are nine types of registers: registers E354
1. The unnamed register ""
2. 10 numbered registers "0 to "9
3. The small delete register "-
4. 26 named registers "a to "z or "A to "Z
5. four read-only registers ":, "., "% and "#
6. the expression register "=
7. The selection and drop registers "*, "+ and "~
8. The black hole register "_
9. Last search pattern register "/code
聊聊寄存器的基本操做把
orm
如今輸入命令,你就能夠查詢一下目前寄存器的狀況
htm
:reg
"ap 粘貼字母a寄存器內容 "1y 把選取內容複製到數字寄存器1
細心的人已經發現我重點標註的寄存器部分了,就是那個選擇及拖拽寄存器,這就是系統的剪貼板,咱們一般使用的ctrl+c ctrl+v 的內容就保存在這個寄存器中,因此你要把須要複製的內容放在+寄存器中,就能夠在gui界面中用粘貼或ctrl+v粘貼了,同理,粘貼在vim中也同樣ip
"+y 複製到系統剪貼板 "+p 粘貼 "+gp 粘貼而且移動光標到粘貼內容後
可是光是輸入命令"+p就已經讓人以爲很麻煩了,這時候,vim的map功能就又能夠大顯神通了,咱們只須要把「+y 和 」+gp map到你喜歡的快捷鍵上便可:
首先打開vimrc(若是沒有,請建立一個)
vim ~/.vimrc
nmap <c-v> "+gp nmap <c-c> "+y
因此,我通常修改爲:
nmap <leader>v "+gp nmap <leader>c "+y
至於<leader>是什麼按鍵,就能夠按照你的喜愛來拉,個人是','
let mapleader=","
ps.說一下,我用的是nmap,說明這個命令只有在normal狀況下才生效,在insert模式下是不生效的,爲何要這樣設置呢?由於有時候你確實須要輸入<leader>c/v的內容,好比,c ,v ,並且,vim主要操做我以爲仍是應該在normal模式下,這纔是vim的高效的緣由。