假设我记录了一个有很多命令和特殊字符的长宏。可能性是我在某处发生了错误:)如何编辑宏,更正错误并再次保存?VIM宏编辑
例如:
我想复制行,然后由一个增加它的数字。
宏这是
yyp/\d<C-A>
,但它被保存为
yyp/\d^M^A
,我不能看到这个特殊字符,当我粘贴寄存器。当我想复制一个寄存器时,我也必须使用'let'来播放,因为标准粘贴屏幕和复制到另一个寄存器不起作用。我如何有效地编辑注册特殊字符?
谢谢
假设我记录了一个有很多命令和特殊字符的长宏。可能性是我在某处发生了错误:)如何编辑宏,更正错误并再次保存?VIM宏编辑
例如:
我想复制行,然后由一个增加它的数字。
宏这是
yyp/\d<C-A>
,但它被保存为
yyp/\d^M^A
,我不能看到这个特殊字符,当我粘贴寄存器。当我想复制一个寄存器时,我也必须使用'let'来播放,因为标准粘贴屏幕和复制到另一个寄存器不起作用。我如何有效地编辑注册特殊字符?
谢谢
你是什么意思,当你说你“看不见特殊字符”?什么特殊字符?您应该可以看到^A
和^M
的罚款,分别代表<C-A>
和<carriage return>
。这就是你需要的。
所以,只要将寄存器粘贴到缓冲区。然后编辑并返回到一个寄存器并执行一个普通的宏。如果你想编辑<C-A>
作为别的东西,比如说<C-E>
,那么只需要删除出现在粘贴上的^A
,然后按<C-V><C-E>
(或<C-Q><C-E>
,如果你在windows上兼容windows的兼容性)就可以加入<C-E>
。它会显示为^E
,但这就是应该如此。
在插入模式下按<C-r><C-r>q
(这里q是寄存器名称)。执行:h ctrl-r_ctrl-r
查看详情。
哦,我的,谢谢你。问题是我在插入模式时粘贴了注册表,所以我看不到这个^ M和^ A。 – shime