我在〜/ Documents中编辑文件。但是,我的工作目录在其他地方,比如〜/ Desktop。
我正在编辑的文件是一个Python脚本。我有兴趣做一个像...这样的命令。
:!python
无需执行
:!python~ / Documents / script.py
这可能吗?如果是这样,命令会是什么?
谢谢。
答案 0 :(得分:9)
尝试:!python%
答案 1 :(得分:6)
我经常映射一把钥匙给我这样做。我通常使用F5键,因为在vim中默认没有与之关联的命令。
我喜欢使用的映射是:
:map <F5> :w<CR>:!python % 2>&1 \| tee /var/tmp/robertw/results<CR>
这也将确保您在运行脚本之前已经写完了脚本。在将stderr复制到stdout之后,它还会在临时文件中捕获任何输出。
如果你做了:
:set autoread
和a:
:sb /var/tmp/robertw/results
您将完成显示两个缓冲区。一个包含脚本,另一个包含输出,包括你的脚本中的错误。通过设置自动注册,按下v键后,将自动加载显示输出的窗口。
要记住的一个技巧是使用cntl-ww在窗口和映射之间切换,因为它引用%(当前文件)仅在光标位于包含Python脚本的窗口中时才起作用。
我发现这确实减少了我的代码,测试,调试周期时间。