VIM:预览高度
我刚开始学习使用vim,所以我在尝试编辑一个已有的vimrc文件的脚本。这个脚本会把当前窗口的内容复制到一个新窗口里,然后运行Python。这个脚本是可以工作的,但预览窗口的高度总是占当前窗口的50%。
这是脚本:
" Preview window for python
fu! DoRunPyBuffer2()
pclose! " force preview window closed
setlocal ft=python
" copy the buffer into a new window, then run that buffer through python
sil %y a | below new | sil put a | sil %!python -
" indicate the output window as the current previewwindow
setlocal previewwindow ro nomodifiable nomodified
" back into the original window
winc p
endfu
command! RunPyBuffer call DoRunPyBuffer2()
map <f5> :RunPyBuffer<CR>
我试过设置行数、设置预览高度、设置pvh、winc 10 -等等,但似乎都没有效果。有没有人知道我该怎么改变预览窗口的高度呢?
1 个回答
4
你可以尝试在将窗口设置为'previewwindow'之前,先改变窗口的高度:
" copy the buffer into a new window, then run that buffer through python
sil %y a | below new | sil put a | sil %!python -
" indicate the output window as the current previewwindow
setlocal winheight 20
setlocal previewwindow ro nomodifiable nomodified
更新:
我觉得问题在于,当你更改设置时,窗口的高度已经被设置好了。设置'windowheight'并不会改变窗口的高度,它只是设定了窗口允许的最小高度。
一个更好的解决办法是在创建窗口时就指定它的高度,使用:new
:
:below 10 new "create a window of height 10