【问题标题】:replace output of lines through external command通过外部命令替换行的输出
【发布时间】:2023-03-12 20:48:04
【问题描述】:

假设我有几行python代码:

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

有没有一种方法可以直接在 vim 中获取行的输出,而无需将文本复制到解释器中并将输出复制回来?

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

【问题讨论】:

    标签: shell vim pipe


    【解决方案1】:

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

    然后进行视觉选择

    :'<,'>!python -
    

    (最快的方法:Vj!python -Enter

    【讨论】:

      【解决方案2】:

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

      【讨论】:

      • 谢谢,但这意味着保存文件,我想知道是否可以只用文件的一部分来做到这一点
      • 这个问题中使用的技术可能会有所帮助 - stackoverflow.com/questions/230266/… ?
      【解决方案3】:

      试试:

      :w !python -

      它应该单独执行整个文件,或者如果您有突出显示的内容,则只执行一个选择。

      【讨论】:

        猜你喜欢
        • 2013-10-13
        • 2013-09-28
        • 2021-11-07
        • 2016-01-12
        • 1970-01-01
        • 2019-05-05
        • 2019-03-17
        • 1970-01-01
        相关资源
        最近更新 更多