A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

传统软件的复制(copy),剪切(cut),粘贴(paste),在Vim中对应的是yank,delete和put。

在Vim中的复制,删除,替换等操作的临时内容,都会存储在寄存器中。

下面分享下Vim中的寄存器和相关的基本的操作。

方法/步骤
无名寄存器("")

两个双引号,Vim中叫做无名寄存器。x,s,d,c,y等操作,如果不指定寄存器,都是将临时内容放到这个寄存器中,也就是相当于一个默认寄存器。

可以通过 :reg 来查看当前寄存器的值,操作一下,然后查寄存器内容,就明白了。

例如:

复制当前行(yy),并粘贴(p)。

这里y命令会将当前行内容放入寄存器"",按p时,会到寄存器""中取内容。

复制专用寄存器("0)

通过y命令复制的内容,会保存到寄存器0中。

寄存器的使用是通过"后面跟寄存器名字。

例如:

复制当前行(yy),

又做了几次删除单词操作(dw)

但是只想粘贴刚才复制的行,那么就不能用无名寄存器""去粘贴了,不能直接p进行粘贴,需要用"0p,指定使用寄存器0,因为"0里只存放y命令存入的内容。

删除专用寄存器("1-"9)

通过d或c命令,删掉的内容,会保存打"1-"9这9个寄存器中。

最新删除的内容,会在"1中,其他顺延。

例如:

删除当前行(yy)

删除当前行(yy)

想复制第一次删除的行,"2p

命名寄存器("a-"z)

可以将重要内容放到命名寄存器"a-"z中,一共26个。

例如:

把当前行放入寄存器"j里,"jyy

复制寄存器"j的内容, "jp

黑洞寄存器("_d)

放到这个寄存器的内容,将不会放到任何其他寄存器中,相当于彻底删除内容。

例如:

彻底删除当前行,不放入任何寄存器,"_dd

系统剪贴板("+)

通过"+寄存器可以把内容复制到系统剪贴板,也可以从系统剪贴板粘贴内容但Vim中。

例如:

复制当前行到系统剪贴板中,"+yy

复制系统剪贴板到vim中,"+p

2 个回复

倒序浏览
回复 使用道具 举报
棒棒哒
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马