将行范围分配给vimscript中的变量

dvi*_*lli 2 vim

我正在寻找一种更优雅的方式来做到这一点

function PasteBin() range
    let l:stdin = join(getline(a:firstline, a:lastline), "^M")
    let l:output = system("pb", l:stdin)
    echo l:output
endfunction
Run Code Online (Sandbox Code Playgroud)

具体来说,我如何避免使用getline()和join()?

jam*_*san 5

看起来你只是在重塑:w_c.如果您已经有视觉选择,则可以运行

:'<,'>w !pb
Run Code Online (Sandbox Code Playgroud)

使用视觉选择作为pb的标准输入.