Vim:从隐藏缓冲区打印行

Vim:从隐藏缓冲区打印行

我想在不移动光标的情况下从隐藏缓冲区回显行。如下所示:

:redir! > /tmp/myfile
:1,$print 3
:redir end

(我想检查隐藏的缓冲区而不改变窗口布局或光标位置。)

上述方法对于当前缓冲区非常有效,但:print不将缓冲区作为参数。

是否有一些 vim 命令可以打印缓冲区中的行?

(并且,恕我直言,我无法使用,:w因为这也会改变打开缓冲区的名称和编号。)

答案1

您可以通过该函数访问任意缓冲区的行getbufline()。例如:

for line in getbufline(3, 1, '$')
    echo line
endfor

相关内容