我需要记录或代码一个 vim 宏,它将当前行捕获到寄存器中,然后调用外部命令(如 figlet)使其成为标题形式。
就像是:
qp
"add
因此,这里我将文本放在名为“a”的寄存器中。然后我需要调用它:
:r! figlet ^Ra
然后在 .vimrc 中将其设为宏:
let @q='"add:r! figlet <c-r>a'
但随后将其插入add:r! figlet
为字符串失败。
答案1
我可能误解了你想要做什么。你似乎想在缓冲区中选择文本,输入命令,然后让 figlet 用其版本替换所选文本。
如果是这种情况,您不必将选定的文本放入寄存器中。只需:!figlet
完成这项工作即可。(我刚刚尝试过。有点酷。)