如何使用Vim命令复制花括号及其内部文本到寄存器'b'?
当然可以!Vim有好几种实用方法帮你把花括号及其内部内容复制到寄存器'b',我给你整理了最常用的几种:
方法1:利用文本对象(最快捷)
不管你的光标在花括号{/}上,还是在括号内部的任意位置,直接输入这条命令就行:
"bya{
拆解下各部分的作用:
"b:指定将内容存入寄存器b(Vim里用双引号+字母来指定目标寄存器,默认使用无名寄存器)ya{:y是复制操作,a代表「around(包含边界)」,{是花括号文本对象,组合起来就是复制包含括号本身在内的整个块内容。
要是你只想复制括号内部的内容(不含括号),把a换成i即可:"byi{。
方法2:可视模式配合括号匹配
如果你习惯用可视模式选中内容,也可以这么操作:
- 把光标放在任意一个花括号上
- 输入
v%:v进入可视模式,%会自动跳转到匹配的另一个括号,瞬间选中整个花括号块 - 输入
"by:把选中的内容复制到寄存器b
或者直接一步完成:
"bv%y
验证复制结果
想确认内容是否已经存入寄存器b,输入:reg b就能查看寄存器b的内容。之后要粘贴的话,用"bp就可以把寄存器b里的内容粘贴到光标位置。
内容的提问来源于stack exchange,提问作者Dennis Gill
相关产品推荐
相关产品推荐

