如何在寄存器重用中捕获 vim 宏

如何在寄存器重用中捕获 vim 宏

我需要记录或代码一个 vim 宏,它将当前行捕获到寄存器中,然后调用外部命令(如 figlet)使其成为标题形式。

就像是:

qp
"add

因此,这里我将文本放在名为“a”的寄存器中。然后我需要调用它:

:r! figlet ^Ra

然后在 .vimrc 中将其设为宏:

let @q='"add:r! figlet <c-r>a'

但随后将其插入add:r! figlet为字符串失败。

答案1

我可能误解了你想要做什么。你似乎想在缓冲区中选择文本,输入命令,然后让 figlet 用其版本替换所选文本。

如果是这种情况,您不必将选定的文本放入寄存器中。只需:!figlet完成这项工作即可。(我刚刚尝试过。有点酷。)

相关内容