如何用缓冲区中的字符串替换引号中的字符串?

我正在执行以下操作来复制引号内的一些文本并将其粘贴到不同的位置(也在引号内):
di"
go-to-buffer-for-copy
copy-string (ex. yi")
then-go-to-prev-buffer
paste-to-string (p)
但我希望以更简单的方式实现,如下所示:
yi"
go-to-buffer-for-paste
replace-inner-quotes-to-yanked-text
    
已邀请:
对于“replace-inner-quotes-to-yanked-text”,你可以使用
vi"p
。     
(把我的评论拉到自己的答案中) 假设您使用
vim
与系统剪贴板,您可以执行以下操作:
"+yi"
将引号内的文本复制到系统剪贴板 将光标放在要放置该文本的引号内
ci"<Ctrl-V><Esc>
用剪贴板的内容替换引号内的内容 一个好处是,如果您想将原始文本放在多个位置,可以将光标放在下一个位置并按
.
。 由Randy Morris提出的
vi"p
有效,但它取代了默认寄存器的内容,并且不会在“再做”命令中捕获选择,只有粘贴。 您仍然可以使用
"0
寄存器来访问原始文本,但我没有找到一个可以在引号内更改的命令,并以重做维护的方式粘贴。     
此技术使您可以不使用插入模式,也不需要将未命名的剪贴板映射到系统剪贴板:
yi"
(在报价内猛拉
?'
后跟目前报价当前内容的前几个字母(搜索回来)
p
(粘贴)
dt"
(删除引号中已有的内容     

要回复问题请先登录注册