【Vim】学习笔记(11) 寄存器

寄存器

引用寄存器

bash 复制代码
"ayiw // 复制选中内容到寄存器a
"ap // 粘贴寄存器a的内容

寄存器类型

bash 复制代码
"" // 默认寄存器
"a - "z // 命名寄存器
"A - "Z // 在对应的命名寄存器上追加内容
"0 // 存储最近一次复制的内容
"1 - "9 // 存储最近9次删除或修改的文本,"1 最新,依次向后推移。
"_ // 黑洞寄存器
"+ // 系统剪贴板寄存器
// 一般我习惯在 .vimrc 中设置set clipboard=unnamed
// 即将vim的默认寄存器和系统剪切板寄存器绑定
"= // 表达式寄存器,一个简易的计算器
"% // 当前文件名
"# // 轮换文件名
". // 上次插入的文本
": // 上次执行的Ex命令
"/ // 上次查找的模式
"- // 小删除寄存器,当删除的内容少于一行(如单个字符)时,存入此寄存器,不覆盖数字寄存器。

寄存器命令

bash 复制代码
:reg[ister] [寄存器] // 查看寄存器内容

给宏追加操作

宏是录制在寄存器的,使用对应寄存的追加方式即可

bash 复制代码
// 先录制一段宏
qr
A;<Esc>
q
// 追加
qR
j
q

编辑宏内容

bash 复制代码
// 先在下一行插入宏内容
:put r
// 修改宏内容后
// 保存宏的内容
"rdd // 这种方式会在宏的多一个^J,大部分情况下这个不影响
// 更精确的做法
0"ry$
dd

使用迭代求值方式给列表编号

bash 复制代码
// 原始内容
tom
jack
rose
// 需要变成
1) tom
2) jack
3) rose
// 录制宏
:let i=1
qq
I<C-r>=i<Enter>) <Esc>
:let i+=1
q
// 播放宏
jVG
:'<,'>norm @q
vim中插件不支持表达式寄存器"=的使用,下面这版可以不使用"=
bash 复制代码
:let i=0 // 初始化变量i
qq // 开启录制
:let i+=1
:let @a=i // 将变量i的值赋值给寄存器a
0"aP // 读取寄存器a内容(即为变量i的值)
i) <Esc> j
q
// 播放宏
....
相关推荐
LinXunFeng7 天前
Obsidian - 使用 Share Note 分享笔记并自部署
前端·笔记·github
通信小呆呆11 天前
当算法有了“五感”:多模态数据融合如何向人体感官协同学习?
人工智能·学习·算法·机器学习·机器人
H__Rick11 天前
自动对焦学习-3
人工智能·学习·计算机视觉
Daisy Lee11 天前
量化学习-第1章-什么是量化金融
学习·金融·datawhale
Alsn8611 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
YM52e11 天前
买菜计算器小应用 - HarmonyOS ArkUI 开发实战-PC版本
学习·华为·harmonyos·鸿蒙·鸿蒙系统
小雨下雨的雨11 天前
HarmonyOS ArkUI训练营入门-组件掌握系列-Animation 动画效果实现-PC版本
学习·华为·harmonyos·鸿蒙
闪闪发亮的小星星11 天前
高斯光以及高斯光公式解释
笔记
cqbzcsq11 天前
CellFlow虚拟细胞论文阅读
论文阅读·人工智能·笔记·学习·生物信息
YangYang9YangYan11 天前
2026初入职场学习数据分析的价值
学习·数据挖掘·数据分析