要在Vim中运行当前的Python脚本/文件,我使用以下命令:
:!python %
问题是这会锁定Vim,因此在关闭cmd窗口之前,我无法查看或编辑Vim中的文件。
这适用于Windows。
如何在不将当前脚本/文件锁定在Vim中的情况下运行Python脚本?
答案 0 :(得分:2)
在Unix上,您可以将&
附加到命令(shell功能); Windows Vim具有特殊的:!start
命令。
:!start python %
答案 1 :(得分:1)
尝试此操作,如果您的脚本没有输出,或者将输出流输出到文件
:!python % &
按Enter键应该返回vim
答案 2 :(得分:1)
Vim在异步运行时遇到问题,有几种方法可以解决这个问题,但最简单的方法就是获取一个可以为你完成的插件。
尝试使用tpope的调度:https://github.com/tpope/vim-dispatch
然后您可以运行:Start! python %
在后台运行它。
答案 3 :(得分:0)
或者只是执行pyf %
或将其映射到某个键,例如map <F8> pyf %<CR>
答案 4 :(得分:0)
答案 5 :(得分:0)
我通常在tmux窗口中使用vim,为此将其水平分成两部分,并使用以下映射,假设我想在下部窗格中运行python脚本(1号窗格),
nnoremap ,s :execute '!tmux send-keys -t 1 ''python ' . expand('%:p') .' '' Enter '<cr>
如果您现在按,s
,这将在窗格1中执行脚本