打印到迷你缓冲区而不需要用户输入vim

时间:2014-07-29 16:34:28

标签: python vim

以此代码段为例:

function! Myecho()
python <<EOF
print("hi there")
EOF
endfunction

如果我:w | so % | call Myecho(),迷你缓冲区中会出现一行文字:

Alt text http://p.im9.eu/host1406651429-809311.jpg

等待用户按回车键。我想知道如何在不需要用户输入的情况下将行打印到迷你缓冲区?

1 个答案:

答案 0 :(得分:3)

出现该消息是因为命令的输出超出了命令行的高度(而不是&#34; minibuffer&#34;)。根据命令行的内容判断,您没有:so % | call Myecho():w | so % | call Myecho()或某些变体。

您可以扩充命令行的大小:

:set cmdheight=2

或分别进行两项操作:

:w
:so % | call MyEcho()

请参阅:help press-enter,可能还有:help 'shortmess'您似乎已经阅读过。