作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
虽然我不是 Vim 专家,但我一直在为 a rough Vim equivalent 工作而烦恼。 TextMate 的 ⌘R 功能,用于从缓冲区运行 Ruby 代码并显示输出。
该脚本当前只是打开一个带有 :new
的新窗口(拆分)并将输出放在那里。如果您多次运行它,它会打开多个窗口。理想情况下,我希望它在每个标签页中重用相同的窗口,就像 :help
一样。做。
我已经看过了,但还没有找到实现这一目标的方法。任何指针?
最佳答案
您可以创建一个带有名称的暂存缓冲区,以便在后续调用中可以检查该缓冲区是否已经打开(如果已打开,则重新使用它)或者您需要一个新缓冲区。像这样的东西:
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
关于vim - 如何将相同的 Vim 窗口/缓冲区重用于命令输出,例如 :help window?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5303417/
我是一名优秀的程序员,十分优秀!