在我的 .vimrc
和我的 vim 插件 UltiSnips 中,我有很多看起来像那样的代码
:py << EOF
print("Hi")
EOF
现在,我想检查 python3 是否通过 has("python3")
编译到 Vim 中,然后使用 :py3
而不是 :py
。保持 python 代码在 python 2 和 3 之间兼容不是问题 - 问题是告诉 vim 使用 :py3 如果可用,否则使用 :py。
有人有好主意吗?
最佳答案
您可以利用 vim 中用户定义的命令只是简单的 place-in-patter-and-eval 语句这一事实,并编写:
if has("python3")
command! -nargs=1 Py py3 <args>
else
command! -nargs=1 Py py <args>
endif
然后您可以使用 :Py
以与您经常使用 :py
或 :py3
相同的方式运行 python 命令。
关于python - 使用 :py OR :py3 in vim? 的兼容方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8805247/