通过外部命令替换行的输出

时间:2011-09-25 18:17:04

标签: shell vim pipe

假设我有几行python代码:

for i in range(10):
    print "item {}".format(i)

有没有办法可以直接在vim中获取行的输出,而不必将文本复制到解释器中并将输出复制回来?

这些行通常只是文件的一部分,而不是孔文件。

3 个答案:

答案 0 :(得分:5)

真正的答案(其他人都很接近)

进行视觉选择

:'<,'>!python -

(最快的方式: V j python - 输入

答案 1 :(得分:1)

您应该可以执行:read !python myscript.py并将输出粘贴到当前缓冲区中。这个vim wikia entry提供了更多信息。

答案 2 :(得分:1)

尝试:

:w !python -

这应该自己执行整个文件,或者如果你突出显示某些内容则只选择一个选择。