在vim中执行python命令并获取输出

Chi*_*chi 5 python vim

当使用Python支持编译Vim时,您可以使用该:python命令使用Python脚本编写Vim脚本.我如何使用它来执行命令并在光标下插入结果?例如,如果我要执行:python import os; os.listdir('aDirectory')[0],我希望返回的第一个文件名插入光标下.

编辑:为了澄清,我想要与去往终端,执行命令,复制结果和执行相同的效果"+p.

mg.*_*mg. 5

:,!python -c "import os; print os.listdir('aDirectory')[0]"
Run Code Online (Sandbox Code Playgroud)


ske*_*ept 3

以下对我来说效果很好:在你想要的行中编写你想要执行的Python代码。

import os
print(os.listdir('.'))
Run Code Online (Sandbox Code Playgroud)

之后,直观地选择要在 python 中执行的行

:'<,'>!python
Run Code Online (Sandbox Code Playgroud)

之后 python 代码将被 python 输出替换。

  • 这就最直接的达到了*与进入终端、执行命令、复制结果、执行OP所表达的“+p*”相同效果的愿望。 (2认同)