vimscript缓冲区获取perl脚本的输出

Her*_*son 5 vim perl buffer

我正在尝试编辑复制粘贴缓冲区:

我有以下命令:

nmap gfb :let .shellescape(getreg('0'))=1<br>
Run Code Online (Sandbox Code Playgroud)

应该将数字1放入缓冲区,这不会发生.

如何将perl脚本的输出放入vimscript缓冲区?

Nav*_*eed 2

将 1 存储在寄存器 0 中:

:let @0 = 1
Run Code Online (Sandbox Code Playgroud)

要通过 perl 在 vi​​mscript 中执行此操作:

function! Foo()
perl << EOF
    my $foo = 1;
    VIM::DoCommand(':let @0 = ' . $foo);
EOF
endfunction
Run Code Online (Sandbox Code Playgroud)

然后你可以调用该函数:

:call Foo()
Run Code Online (Sandbox Code Playgroud)