在vim中,我可以结合使用":w"并一起运行当前脚本?

时间:2014-05-20 02:55:02

标签: vim

每次编辑我的python脚本时,都必须输入:w然后:!./myscript.py(运行当前脚本)。

我可以将这两个命令组合在一起吗?

3 个答案:

答案 0 :(得分:6)

将此内容写入.vimrc

function! SaveAndRun()
    w
    !%:p
endfunction

nmap <F2> :call SaveAndRun()<cr>

并在正常模式下按f2时执行当前文件。

答案 1 :(得分:5)

.vimrc中定义一个函数,然后定义一个命令来调用它。

function DoMyStuff()
    :w
    :!./myscript.py
endfunction

command W exec DoMyStuff()

然后,您可以使用:W调用它。

如果我按字面解释问题的标题,并且您只想执行上次执行的命令,则可以在命令模式下使用!!来执行最后一个外部命令。结合管道,如下所示。

:w | !!

答案 2 :(得分:4)

是的,您可以在命令之间使用管道符:

  

:w | !./ myscript.py