如何重复使用相同的Vim窗口/缓冲区进行命令输出,例如:help窗口?

前端之家收集整理的这篇文章主要介绍了如何重复使用相同的Vim窗口/缓冲区进行命令输出,例如:help窗口?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
虽然我不是Vim的专家,但我一直在努力研究 a rough Vim equivalent的TextMate的⌘R功能,从缓冲区运行Ruby代码显示输出.

该脚本当前只是打开一个新窗口(拆分):new并将输出放在那里.如果多次运行它,它会打开多个窗口.理想情况下,我希望它在每个标签页中重复使用相同的窗口,就像:帮助一样.

我看了,但还没有找到实现这个目标的方法.有什么指针吗?

您可以使用名称创建临时缓冲区,以便在后续调用中可以检查该缓冲区是否已打开(如果已重用),或者您需要一个新缓冲区.像这样的东西:
function! Output()
    let winnr = bufwinnr('^_output$')
    if ( winnr >= 0 )
        execute winnr . 'wincmd w'
        execute 'normal ggdG'
    else
        new _output
        setlocal buftype=nofile bufhidden=wipe nobuflisted noswapfile nowrap
    endif
    silent! r! ls
endfunction

猜你在找的Bash相关文章