当我用 vim 的寄存器记录操作时,我发现寄存器内容中有一个控制字符(例如寄存器'q'):
o^[iabc^[
当然,当我在 vim 中"@q"时,我可以打开一个新行,插入"abc",然后返回正常模式。但是,如果我想将"abc"替换为"def"或在"abc"之后添加"def",我该怎么办?
宏保存在寄存器中,您可以从寄存器中拉入和放入:
"qp
(edit the line)
"qy$
与其按照 romainl 的答案粘贴和剪切(这需要在缓冲区中留出一些暂存空间),通常还可以直接在命令行中进行编辑:
:let @q = <C-r><C-r>=string(@q)<CR>
此行也适用于您的需求:
:let @q=substitute(@q, 'abc', 'abcdef','')